@grafana/ui
Version:
Grafana Components Library
1 lines • 2.34 kB
Source Map (JSON)
{"version":3,"file":"utils.mjs","sources":["../../../../src/components/Combobox/utils.ts"],"sourcesContent":["import { isIconName, type SelectableValue } from '@grafana/data';\n\nimport { type ComboboxOption } from './types';\n\nexport const isNewGroup = <T extends string | number>(option: ComboboxOption<T>, prevOption?: ComboboxOption<T>) => {\n const currentGroup = option.group;\n\n if (!currentGroup) {\n return prevOption?.group ? true : false;\n }\n\n if (!prevOption) {\n return true;\n }\n\n return prevOption.group !== currentGroup;\n};\n\n/**\n * returns a ComboboxOption from a SelectableValue, or undefined if it could not be converted.\n * @param v - The SelectableValue to convert.\n * @returns The ComboboxOption, or undefined if it could not be converted.\n */\nexport const selectableValueToComboboxOption = <T extends string | number>(\n v: SelectableValue<T>\n): ComboboxOption<T> | undefined => {\n if (v == null || v.value == null) {\n console.warn('selectableValueToComboboxOption: value is null or undefined', v);\n return undefined;\n }\n if (v.icon != null && !isIconName(v.icon)) {\n console.warn('selectableValueToComboboxOption: icon is not a valid icon name', v.icon);\n return undefined;\n }\n return {\n label: v.label,\n value: v.value,\n description: v.description,\n group: v.group,\n infoOption: v.infoOption,\n icon: v.icon,\n };\n};\n"],"names":[],"mappings":";;;AAIO,MAAM,UAAA,GAAa,CAA4B,MAAA,EAA2B,UAAA,KAAmC;AAClH,EAAA,MAAM,eAAe,MAAA,CAAO,KAAA;AAE5B,EAAA,IAAI,CAAC,YAAA,EAAc;AACjB,IAAA,OAAA,CAAO,UAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,UAAA,CAAY,SAAQ,IAAA,GAAO,KAAA;AAAA,EACpC;AAEA,EAAA,IAAI,CAAC,UAAA,EAAY;AACf,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,OAAO,WAAW,KAAA,KAAU,YAAA;AAC9B;AAOO,MAAM,+BAAA,GAAkC,CAC7C,CAAA,KACkC;AAClC,EAAA,IAAI,CAAA,IAAK,IAAA,IAAQ,CAAA,CAAE,KAAA,IAAS,IAAA,EAAM;AAChC,IAAA,OAAA,CAAQ,IAAA,CAAK,+DAA+D,CAAC,CAAA;AAC7E,IAAA,OAAO,KAAA,CAAA;AAAA,EACT;AACA,EAAA,IAAI,EAAE,IAAA,IAAQ,IAAA,IAAQ,CAAC,UAAA,CAAW,CAAA,CAAE,IAAI,CAAA,EAAG;AACzC,IAAA,OAAA,CAAQ,IAAA,CAAK,gEAAA,EAAkE,CAAA,CAAE,IAAI,CAAA;AACrF,IAAA,OAAO,KAAA,CAAA;AAAA,EACT;AACA,EAAA,OAAO;AAAA,IACL,OAAO,CAAA,CAAE,KAAA;AAAA,IACT,OAAO,CAAA,CAAE,KAAA;AAAA,IACT,aAAa,CAAA,CAAE,WAAA;AAAA,IACf,OAAO,CAAA,CAAE,KAAA;AAAA,IACT,YAAY,CAAA,CAAE,UAAA;AAAA,IACd,MAAM,CAAA,CAAE;AAAA,GACV;AACF;;;;"}