@mantine/core
Version:
React components library focused on usability, accessibility and developer experience
1 lines • 1.25 kB
Source Map (JSON)
{"version":3,"file":"validate-options.cjs","names":["isOptionsGroup"],"sources":["../../../../src/components/Combobox/OptionsDropdown/validate-options.ts"],"sourcesContent":["import { isOptionsGroup } from './is-options-group';\n\nexport function validateOptions(options: any[], valuesSet = new Set()) {\n if (!Array.isArray(options)) {\n return;\n }\n\n for (const option of options) {\n if (isOptionsGroup(option)) {\n validateOptions(option.items, valuesSet);\n } else {\n if (typeof option.value === 'undefined') {\n throw new Error('[@mantine/core] Each option must have value property');\n }\n\n if (valuesSet.has(option.value)) {\n throw new Error(\n `[@mantine/core] Duplicate options are not supported. Option with value \"${option.value}\" was provided more than once`\n );\n }\n\n valuesSet.add(option.value);\n }\n }\n}\n"],"mappings":";;;AAEA,SAAgB,gBAAgB,SAAgB,4BAAY,IAAI,KAAK,EAAE;AACrE,KAAI,CAAC,MAAM,QAAQ,QAAQ,CACzB;AAGF,MAAK,MAAM,UAAU,QACnB,KAAIA,yBAAAA,eAAe,OAAO,CACxB,iBAAgB,OAAO,OAAO,UAAU;MACnC;AACL,MAAI,OAAO,OAAO,UAAU,YAC1B,OAAM,IAAI,MAAM,uDAAuD;AAGzE,MAAI,UAAU,IAAI,OAAO,MAAM,CAC7B,OAAM,IAAI,MACR,2EAA2E,OAAO,MAAM,+BACzF;AAGH,YAAU,IAAI,OAAO,MAAM"}