1import { OptionsWithTextFormatting } from '@grafana/schema';
2import { PanelOptionsEditorBuilder } from '@grafana/data';
3
4/**
5 * Adds common text control options to a visualization options
6 * @param builder
7 * @param withTitle
8 * @public
9 */
10export function addTextSizeOptions<T extends OptionsWithTextFormatting>(
11  builder: PanelOptionsEditorBuilder<T>,
12  withTitle = true
13) {
14  if (withTitle) {
15    builder.addNumberInput({
16      path: 'text.titleSize',
17      category: ['Text size'],
18      name: 'Title',
19      settings: {
20        placeholder: 'Auto',
21        integer: false,
22        min: 1,
23        max: 200,
24      },
25      defaultValue: undefined,
26    });
27  }
28
29  builder.addNumberInput({
30    path: 'text.valueSize',
31    category: ['Text size'],
32    name: 'Value',
33    settings: {
34      placeholder: 'Auto',
35      integer: false,
36      min: 1,
37      max: 200,
38    },
39    defaultValue: undefined,
40  });
41}
42