@grafana/ui
Version:
Grafana Components Library
1 lines • 4.73 kB
Source Map (JSON)
{"version":3,"file":"legend.mjs","sources":["../../../../src/options/builder/legend.tsx"],"sourcesContent":["import { PanelOptionsEditorBuilder, standardEditorsRegistry, StatsPickerConfigSettings } from '@grafana/data';\nimport { t } from '@grafana/i18n';\nimport { LegendDisplayMode, OptionsWithLegend } from '@grafana/schema';\n\n/**\n * @alpha\n */\nexport function addLegendOptions<T extends OptionsWithLegend>(\n builder: PanelOptionsEditorBuilder<T>,\n includeLegendCalcs = true,\n showLegend = true\n) {\n const category = [t('grafana-ui.builder.legend.category', 'Legend')];\n builder\n .addBooleanSwitch({\n path: 'legend.showLegend',\n name: t('grafana-ui.builder.legend.name-visibility', 'Visibility'),\n category,\n description: '',\n defaultValue: showLegend,\n })\n .addRadio({\n path: 'legend.displayMode',\n name: t('grafana-ui.builder.legend.name-mode', 'Mode'),\n category,\n description: '',\n defaultValue: LegendDisplayMode.List,\n settings: {\n options: [\n { value: LegendDisplayMode.List, label: t('grafana-ui.builder.legend.mode-options.label-list', 'List') },\n { value: LegendDisplayMode.Table, label: t('grafana-ui.builder.legend.mode-options.label-table', 'Table') },\n ],\n },\n showIf: (c) => c.legend.showLegend,\n })\n .addRadio({\n path: 'legend.placement',\n name: t('grafana-ui.builder.legend.name-placement', 'Placement'),\n category,\n description: '',\n defaultValue: 'bottom',\n settings: {\n options: [\n { value: 'bottom', label: t('grafana-ui.builder.legend.placement-options.label-bottom', 'Bottom') },\n { value: 'right', label: t('grafana-ui.builder.legend.placement-options.label-right', 'Right') },\n ],\n },\n showIf: (c) => c.legend.showLegend,\n })\n .addNumberInput({\n path: 'legend.width',\n name: t('grafana-ui.builder.legend.name-width', 'Width'),\n category,\n settings: {\n placeholder: 'Auto',\n },\n showIf: (c) => c.legend.showLegend && c.legend.placement === 'right',\n });\n\n if (includeLegendCalcs) {\n builder.addCustomEditor<StatsPickerConfigSettings, string[]>({\n id: 'legend.calcs',\n path: 'legend.calcs',\n name: t('grafana-ui.builder.legend.name-values', 'Values'),\n category,\n description: t('grafana-ui.builder.legend.description-values', 'Select values or calculations to show in legend'),\n editor: standardEditorsRegistry.get('stats-picker').editor,\n defaultValue: [],\n settings: {\n allowMultiple: true,\n },\n showIf: (currentConfig) => currentConfig.legend.showLegend !== false,\n });\n }\n}\n"],"names":[],"mappings":";;;;AAOO,SAAS,gBACd,CAAA,OAAA,EACA,kBAAqB,GAAA,IAAA,EACrB,aAAa,IACb,EAAA;AACA,EAAA,MAAM,QAAW,GAAA,CAAC,CAAE,CAAA,oCAAA,EAAsC,QAAQ,CAAC,CAAA;AACnE,EAAA,OAAA,CACG,gBAAiB,CAAA;AAAA,IAChB,IAAM,EAAA,mBAAA;AAAA,IACN,IAAA,EAAM,CAAE,CAAA,2CAAA,EAA6C,YAAY,CAAA;AAAA,IACjE,QAAA;AAAA,IACA,WAAa,EAAA,EAAA;AAAA,IACb,YAAc,EAAA;AAAA,GACf,EACA,QAAS,CAAA;AAAA,IACR,IAAM,EAAA,oBAAA;AAAA,IACN,IAAA,EAAM,CAAE,CAAA,qCAAA,EAAuC,MAAM,CAAA;AAAA,IACrD,QAAA;AAAA,IACA,WAAa,EAAA,EAAA;AAAA,IACb,cAAc,iBAAkB,CAAA,IAAA;AAAA,IAChC,QAAU,EAAA;AAAA,MACR,OAAS,EAAA;AAAA,QACP,EAAE,OAAO,iBAAkB,CAAA,IAAA,EAAM,OAAO,CAAE,CAAA,mDAAA,EAAqD,MAAM,CAAE,EAAA;AAAA,QACvG,EAAE,OAAO,iBAAkB,CAAA,KAAA,EAAO,OAAO,CAAE,CAAA,oDAAA,EAAsD,OAAO,CAAE;AAAA;AAC5G,KACF;AAAA,IACA,MAAQ,EAAA,CAAC,CAAM,KAAA,CAAA,CAAE,MAAO,CAAA;AAAA,GACzB,EACA,QAAS,CAAA;AAAA,IACR,IAAM,EAAA,kBAAA;AAAA,IACN,IAAA,EAAM,CAAE,CAAA,0CAAA,EAA4C,WAAW,CAAA;AAAA,IAC/D,QAAA;AAAA,IACA,WAAa,EAAA,EAAA;AAAA,IACb,YAAc,EAAA,QAAA;AAAA,IACd,QAAU,EAAA;AAAA,MACR,OAAS,EAAA;AAAA,QACP,EAAE,KAAO,EAAA,QAAA,EAAU,OAAO,CAAE,CAAA,0DAAA,EAA4D,QAAQ,CAAE,EAAA;AAAA,QAClG,EAAE,KAAO,EAAA,OAAA,EAAS,OAAO,CAAE,CAAA,yDAAA,EAA2D,OAAO,CAAE;AAAA;AACjG,KACF;AAAA,IACA,MAAQ,EAAA,CAAC,CAAM,KAAA,CAAA,CAAE,MAAO,CAAA;AAAA,GACzB,EACA,cAAe,CAAA;AAAA,IACd,IAAM,EAAA,cAAA;AAAA,IACN,IAAA,EAAM,CAAE,CAAA,sCAAA,EAAwC,OAAO,CAAA;AAAA,IACvD,QAAA;AAAA,IACA,QAAU,EAAA;AAAA,MACR,WAAa,EAAA;AAAA,KACf;AAAA,IACA,MAAA,EAAQ,CAAC,CAAM,KAAA,CAAA,CAAE,OAAO,UAAc,IAAA,CAAA,CAAE,OAAO,SAAc,KAAA;AAAA,GAC9D,CAAA;AAEH,EAAA,IAAI,kBAAoB,EAAA;AACtB,IAAA,OAAA,CAAQ,eAAqD,CAAA;AAAA,MAC3D,EAAI,EAAA,cAAA;AAAA,MACJ,IAAM,EAAA,cAAA;AAAA,MACN,IAAA,EAAM,CAAE,CAAA,uCAAA,EAAyC,QAAQ,CAAA;AAAA,MACzD,QAAA;AAAA,MACA,WAAA,EAAa,CAAE,CAAA,8CAAA,EAAgD,iDAAiD,CAAA;AAAA,MAChH,MAAQ,EAAA,uBAAA,CAAwB,GAAI,CAAA,cAAc,CAAE,CAAA,MAAA;AAAA,MACpD,cAAc,EAAC;AAAA,MACf,QAAU,EAAA;AAAA,QACR,aAAe,EAAA;AAAA,OACjB;AAAA,MACA,MAAQ,EAAA,CAAC,aAAkB,KAAA,aAAA,CAAc,OAAO,UAAe,KAAA;AAAA,KAChE,CAAA;AAAA;AAEL;;;;"}