@grafana/sql 13.1.0-25858739282 → 13.1.0-26657291204

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/cjs/components/configuration/TLSSecretsConfig.cjs.map +1 -1
  2. package/dist/cjs/components/visual-query-builder/AwesomeQueryBuilder.cjs +0 -2
  3. package/dist/cjs/components/visual-query-builder/AwesomeQueryBuilder.cjs.map +1 -1
  4. package/dist/cjs/expressions.cjs.map +1 -1
  5. package/dist/cjs/locales/cs-CZ/grafana-sql.json.cjs +0 -5
  6. package/dist/cjs/locales/cs-CZ/grafana-sql.json.cjs.map +1 -1
  7. package/dist/cjs/locales/de-DE/grafana-sql.json.cjs +0 -5
  8. package/dist/cjs/locales/de-DE/grafana-sql.json.cjs.map +1 -1
  9. package/dist/cjs/locales/en-US/grafana-sql.json.cjs +0 -5
  10. package/dist/cjs/locales/en-US/grafana-sql.json.cjs.map +1 -1
  11. package/dist/cjs/locales/es-ES/grafana-sql.json.cjs +0 -5
  12. package/dist/cjs/locales/es-ES/grafana-sql.json.cjs.map +1 -1
  13. package/dist/cjs/locales/fr-FR/grafana-sql.json.cjs +0 -5
  14. package/dist/cjs/locales/fr-FR/grafana-sql.json.cjs.map +1 -1
  15. package/dist/cjs/locales/hu-HU/grafana-sql.json.cjs +0 -5
  16. package/dist/cjs/locales/hu-HU/grafana-sql.json.cjs.map +1 -1
  17. package/dist/cjs/locales/id-ID/grafana-sql.json.cjs +0 -5
  18. package/dist/cjs/locales/id-ID/grafana-sql.json.cjs.map +1 -1
  19. package/dist/cjs/locales/it-IT/grafana-sql.json.cjs +0 -5
  20. package/dist/cjs/locales/it-IT/grafana-sql.json.cjs.map +1 -1
  21. package/dist/cjs/locales/ja-JP/grafana-sql.json.cjs +0 -5
  22. package/dist/cjs/locales/ja-JP/grafana-sql.json.cjs.map +1 -1
  23. package/dist/cjs/locales/ko-KR/grafana-sql.json.cjs +0 -5
  24. package/dist/cjs/locales/ko-KR/grafana-sql.json.cjs.map +1 -1
  25. package/dist/cjs/locales/nl-NL/grafana-sql.json.cjs +0 -5
  26. package/dist/cjs/locales/nl-NL/grafana-sql.json.cjs.map +1 -1
  27. package/dist/cjs/locales/pl-PL/grafana-sql.json.cjs +0 -5
  28. package/dist/cjs/locales/pl-PL/grafana-sql.json.cjs.map +1 -1
  29. package/dist/cjs/locales/pt-BR/grafana-sql.json.cjs +0 -5
  30. package/dist/cjs/locales/pt-BR/grafana-sql.json.cjs.map +1 -1
  31. package/dist/cjs/locales/pt-PT/grafana-sql.json.cjs +0 -5
  32. package/dist/cjs/locales/pt-PT/grafana-sql.json.cjs.map +1 -1
  33. package/dist/cjs/locales/ru-RU/grafana-sql.json.cjs +0 -5
  34. package/dist/cjs/locales/ru-RU/grafana-sql.json.cjs.map +1 -1
  35. package/dist/cjs/locales/sv-SE/grafana-sql.json.cjs +0 -5
  36. package/dist/cjs/locales/sv-SE/grafana-sql.json.cjs.map +1 -1
  37. package/dist/cjs/locales/tr-TR/grafana-sql.json.cjs +0 -5
  38. package/dist/cjs/locales/tr-TR/grafana-sql.json.cjs.map +1 -1
  39. package/dist/cjs/locales/zh-Hans/grafana-sql.json.cjs +0 -5
  40. package/dist/cjs/locales/zh-Hans/grafana-sql.json.cjs.map +1 -1
  41. package/dist/cjs/locales/zh-Hant/grafana-sql.json.cjs +0 -5
  42. package/dist/cjs/locales/zh-Hant/grafana-sql.json.cjs.map +1 -1
  43. package/dist/cjs/types.cjs.map +1 -1
  44. package/dist/esm/components/configuration/TLSSecretsConfig.mjs.map +1 -1
  45. package/dist/esm/components/visual-query-builder/AwesomeQueryBuilder.mjs +1 -1
  46. package/dist/esm/components/visual-query-builder/AwesomeQueryBuilder.mjs.map +1 -1
  47. package/dist/esm/expressions.mjs.map +1 -1
  48. package/dist/esm/locales/cs-CZ/grafana-sql.json.mjs +0 -5
  49. package/dist/esm/locales/cs-CZ/grafana-sql.json.mjs.map +1 -1
  50. package/dist/esm/locales/de-DE/grafana-sql.json.mjs +0 -5
  51. package/dist/esm/locales/de-DE/grafana-sql.json.mjs.map +1 -1
  52. package/dist/esm/locales/en-US/grafana-sql.json.mjs +0 -5
  53. package/dist/esm/locales/en-US/grafana-sql.json.mjs.map +1 -1
  54. package/dist/esm/locales/es-ES/grafana-sql.json.mjs +0 -5
  55. package/dist/esm/locales/es-ES/grafana-sql.json.mjs.map +1 -1
  56. package/dist/esm/locales/fr-FR/grafana-sql.json.mjs +0 -5
  57. package/dist/esm/locales/fr-FR/grafana-sql.json.mjs.map +1 -1
  58. package/dist/esm/locales/hu-HU/grafana-sql.json.mjs +0 -5
  59. package/dist/esm/locales/hu-HU/grafana-sql.json.mjs.map +1 -1
  60. package/dist/esm/locales/id-ID/grafana-sql.json.mjs +0 -5
  61. package/dist/esm/locales/id-ID/grafana-sql.json.mjs.map +1 -1
  62. package/dist/esm/locales/it-IT/grafana-sql.json.mjs +0 -5
  63. package/dist/esm/locales/it-IT/grafana-sql.json.mjs.map +1 -1
  64. package/dist/esm/locales/ja-JP/grafana-sql.json.mjs +0 -5
  65. package/dist/esm/locales/ja-JP/grafana-sql.json.mjs.map +1 -1
  66. package/dist/esm/locales/ko-KR/grafana-sql.json.mjs +0 -5
  67. package/dist/esm/locales/ko-KR/grafana-sql.json.mjs.map +1 -1
  68. package/dist/esm/locales/nl-NL/grafana-sql.json.mjs +0 -5
  69. package/dist/esm/locales/nl-NL/grafana-sql.json.mjs.map +1 -1
  70. package/dist/esm/locales/pl-PL/grafana-sql.json.mjs +0 -5
  71. package/dist/esm/locales/pl-PL/grafana-sql.json.mjs.map +1 -1
  72. package/dist/esm/locales/pt-BR/grafana-sql.json.mjs +0 -5
  73. package/dist/esm/locales/pt-BR/grafana-sql.json.mjs.map +1 -1
  74. package/dist/esm/locales/pt-PT/grafana-sql.json.mjs +0 -5
  75. package/dist/esm/locales/pt-PT/grafana-sql.json.mjs.map +1 -1
  76. package/dist/esm/locales/ru-RU/grafana-sql.json.mjs +0 -5
  77. package/dist/esm/locales/ru-RU/grafana-sql.json.mjs.map +1 -1
  78. package/dist/esm/locales/sv-SE/grafana-sql.json.mjs +0 -5
  79. package/dist/esm/locales/sv-SE/grafana-sql.json.mjs.map +1 -1
  80. package/dist/esm/locales/tr-TR/grafana-sql.json.mjs +0 -5
  81. package/dist/esm/locales/tr-TR/grafana-sql.json.mjs.map +1 -1
  82. package/dist/esm/locales/zh-Hans/grafana-sql.json.mjs +0 -5
  83. package/dist/esm/locales/zh-Hans/grafana-sql.json.mjs.map +1 -1
  84. package/dist/esm/locales/zh-Hant/grafana-sql.json.mjs +0 -5
  85. package/dist/esm/locales/zh-Hant/grafana-sql.json.mjs.map +1 -1
  86. package/dist/esm/types.mjs.map +1 -1
  87. package/dist/types/components/SqlComponents.testHelpers.d.ts +0 -59
  88. package/dist/types/components/configuration/TLSSecretsConfig.d.ts +2 -1
  89. package/dist/types/components/visual-query-builder/AwesomeQueryBuilder.d.ts +1 -3
  90. package/dist/types/expressions.d.ts +1 -17
  91. package/dist/types/types.d.ts +4 -27
  92. package/package.json +4 -12
  93. package/dist/types/components/ErrorBoundary.d.ts +0 -12
  94. package/dist/types/components/index.d.ts +0 -1
  95. package/dist/types/components/visual-query-builder/index.d.ts +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"TLSSecretsConfig.cjs","sources":["../../../../src/components/configuration/TLSSecretsConfig.tsx"],"sourcesContent":["import {\n type DataSourceJsonData,\n type DataSourcePluginOptionsEditorProps,\n type KeyValue,\n onUpdateDatasourceSecureJsonDataOption,\n updateDatasourcePluginResetOption,\n} from '@grafana/data';\nimport { Trans } from '@grafana/i18n';\nimport { Field, Icon, Label, SecretTextArea, Tooltip, Stack } from '@grafana/ui';\n\nexport interface Props<T extends DataSourceJsonData, S> {\n editorProps: DataSourcePluginOptionsEditorProps<T, S>;\n showCACert?: boolean;\n showKeyPair?: boolean;\n secureJsonFields?: KeyValue<Boolean>;\n labelWidth?: number;\n}\n\nexport const TLSSecretsConfig = <T extends DataSourceJsonData, S extends {} = {}>(props: Props<T, S>) => {\n const { editorProps, showCACert, showKeyPair = true } = props;\n const { secureJsonFields } = editorProps.options;\n return (\n <>\n {showKeyPair ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-client-certificate\">\n TLS/SSL Client Certificate\n </Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-client-certificate\">\n To authenticate with an TLS/SSL client certificate, provide the client certificate here.\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN CERTIFICATE-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsClientCert}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsClientCert')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsClientCert');\n }}\n />\n </Field>\n ) : null}\n {showCACert ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-root-certificate\">\n TLS/SSL Root Certificate\n </Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-root-certificate\">\n If the selected TLS/SSL mode requires a server root certificate, provide it here\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN CERTIFICATE-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsCACert}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsCACert')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsCACert');\n }}\n />\n </Field>\n ) : null}\n {showKeyPair ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-client-key\">TLS/SSL Client Key</Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-client-key\">\n To authenticate with a client TLS/SSL certificate, provide the key here.\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN RSA PRIVATE KEY-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsClientKey}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsClientKey')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsClientKey');\n }}\n />\n </Field>\n ) : null}\n </>\n );\n};\n"],"names":["jsxs","Fragment","jsx","Field","Label","Stack","Trans","Tooltip","Icon","SecretTextArea","onUpdateDatasourceSecureJsonDataOption","updateDatasourcePluginResetOption"],"mappings":"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"}
1
+ {"version":3,"file":"TLSSecretsConfig.cjs","sources":["../../../../src/components/configuration/TLSSecretsConfig.tsx"],"sourcesContent":["import {\n type DataSourceJsonData,\n type DataSourcePluginOptionsEditorProps,\n type KeyValue,\n onUpdateDatasourceSecureJsonDataOption,\n updateDatasourcePluginResetOption,\n} from '@grafana/data';\nimport { Trans } from '@grafana/i18n';\nimport { Field, Icon, Label, SecretTextArea, Tooltip, Stack } from '@grafana/ui';\n\ninterface Props<T extends DataSourceJsonData, S> {\n editorProps: DataSourcePluginOptionsEditorProps<T, S>;\n showCACert?: boolean;\n showKeyPair?: boolean;\n secureJsonFields?: KeyValue<Boolean>;\n labelWidth?: number;\n}\n\nexport const TLSSecretsConfig = <T extends DataSourceJsonData, S extends {} = {}>(props: Props<T, S>) => {\n const { editorProps, showCACert, showKeyPair = true } = props;\n const { secureJsonFields } = editorProps.options;\n return (\n <>\n {showKeyPair ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-client-certificate\">\n TLS/SSL Client Certificate\n </Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-client-certificate\">\n To authenticate with an TLS/SSL client certificate, provide the client certificate here.\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN CERTIFICATE-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsClientCert}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsClientCert')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsClientCert');\n }}\n />\n </Field>\n ) : null}\n {showCACert ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-root-certificate\">\n TLS/SSL Root Certificate\n </Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-root-certificate\">\n If the selected TLS/SSL mode requires a server root certificate, provide it here\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN CERTIFICATE-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsCACert}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsCACert')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsCACert');\n }}\n />\n </Field>\n ) : null}\n {showKeyPair ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-client-key\">TLS/SSL Client Key</Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-client-key\">\n To authenticate with a client TLS/SSL certificate, provide the key here.\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN RSA PRIVATE KEY-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsClientKey}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsClientKey')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsClientKey');\n }}\n />\n </Field>\n ) : null}\n </>\n );\n};\n"],"names":["jsxs","Fragment","jsx","Field","Label","Stack","Trans","Tooltip","Icon","SecretTextArea","onUpdateDatasourceSecureJsonDataOption","updateDatasourcePluginResetOption"],"mappings":"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"}
@@ -268,6 +268,4 @@ function splitIfString(value) {
268
268
 
269
269
  exports.emptyInitTree = emptyInitTree;
270
270
  exports.raqbConfig = raqbConfig;
271
- exports.settings = settings;
272
- exports.widgets = widgets;
273
271
  //# sourceMappingURL=AwesomeQueryBuilder.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"AwesomeQueryBuilder.cjs","sources":["../../../../src/components/visual-query-builder/AwesomeQueryBuilder.tsx"],"sourcesContent":["import {\n type BaseOperator,\n BasicConfig,\n type Config,\n type Field,\n type ImmutableList,\n type JsonTree,\n type Operator,\n type OperatorOptionsI,\n type Settings,\n Utils,\n type ValueSource,\n type WidgetProps,\n type Widgets,\n} from '@react-awesome-query-builder/ui';\nimport { isString } from 'lodash';\n\nimport { dateTime, toOption } from '@grafana/data';\nimport { selectors } from '@grafana/e2e-selectors';\nimport { t } from '@grafana/i18n';\nimport { Button, DateTimePicker, Input, Select } from '@grafana/ui';\n\nconst buttonLabels = {\n add: 'Add',\n remove: 'Remove',\n};\n\nexport const emptyInitTree: JsonTree = {\n id: Utils.uuid(),\n type: 'group',\n};\n\nconst TIME_FILTER = 'timeFilter';\nconst macros = [TIME_FILTER];\n\n// Widgets are the components rendered for each field type see the docs for more info\n// https://github.com/ukrbublik/react-awesome-query-builder/blob/master/CONFIG.adoc#configwidgets\nexport const widgets: Widgets = {\n ...BasicConfig.widgets,\n text: {\n ...BasicConfig.widgets.text,\n factory: function TextInput(props: WidgetProps) {\n return (\n <Input\n value={props?.value || ''}\n placeholder={props?.placeholder}\n onChange={(e) => props?.setValue(e.currentTarget.value)}\n />\n );\n },\n },\n number: {\n ...BasicConfig.widgets.number,\n factory: function NumberInput(props: WidgetProps) {\n return (\n <Input\n value={props?.value}\n placeholder={props?.placeholder}\n type=\"number\"\n onChange={(e) => props?.setValue(Number.parseInt(e.currentTarget.value, 10))}\n />\n );\n },\n },\n datetime: {\n ...BasicConfig.widgets.datetime,\n factory: function DateTimeInput(props: WidgetProps) {\n if (props?.operator === Op.MACROS) {\n return (\n <Select\n id={props.id}\n aria-label={t('grafana-sql.components.widgets.aria-label-macros-value-selector', 'Macros value selector')}\n menuShouldPortal\n options={macros.map(toOption)}\n value={props?.value}\n onChange={(val) => props.setValue(val.value)}\n />\n );\n }\n const dateValue = dateTime(props?.value).isValid() ? dateTime(props?.value).utc() : undefined;\n return (\n <DateTimePicker\n onChange={(e) => {\n props?.setValue(e?.format(BasicConfig.widgets.datetime.valueFormat));\n }}\n date={dateValue}\n />\n );\n },\n // Function for formatting widget’s value in SQL WHERE query.\n sqlFormatValue: (val, field, widget, operator, operatorDefinition, rightFieldDef) => {\n if (operator === Op.MACROS) {\n if (macros.includes(val)) {\n return val;\n }\n return undefined;\n }\n\n // This is just satisfying the type checker, this should never happen\n if (\n typeof BasicConfig.widgets.datetime.sqlFormatValue === 'string' ||\n typeof BasicConfig.widgets.datetime.sqlFormatValue === 'object'\n ) {\n return undefined;\n }\n const func = BasicConfig.widgets.datetime.sqlFormatValue;\n // We need to pass the ctx to this function this way so *this* is correct\n return func?.call(BasicConfig.ctx, val, field, widget, operator, operatorDefinition, rightFieldDef) || '';\n },\n },\n};\n\n// Settings are the configuration options for the query builder see the docs for more info\n// https://github.com/ukrbublik/react-awesome-query-builder/blob/master/CONFIG.adoc#configsettings\nexport const settings: Settings = {\n ...BasicConfig.settings,\n canRegroup: false,\n maxNesting: 1,\n canReorder: false,\n showNot: false,\n addRuleLabel: buttonLabels.add,\n deleteLabel: buttonLabels.remove,\n // This is the component that renders conjunctions (logical operators)\n renderConjs: function Conjunctions(conjProps) {\n return (\n <Select\n id={conjProps?.id}\n aria-label={t('grafana-sql.components.settings.aria-label-conjunction', 'Conjunction')}\n data-testid={selectors.components.SQLQueryEditor.filterConjunction}\n menuShouldPortal\n options={conjProps?.conjunctionOptions ? Object.keys(conjProps?.conjunctionOptions).map(toOption) : undefined}\n value={conjProps?.selectedConjunction}\n onChange={(val) => conjProps?.setConjunction(val.value!)}\n />\n );\n },\n // This is the component that renders fields\n renderField: function Field(fieldProps) {\n const fields = fieldProps?.config?.fields || {};\n return (\n <Select\n id={fieldProps?.id}\n width={25}\n aria-label={t('grafana-sql.components.settings.aria-label-field', 'Field')}\n data-testid={selectors.components.SQLQueryEditor.filterField}\n menuShouldPortal\n options={fieldProps?.items.map((f) => {\n // @ts-ignore\n const icon = fields[f.key].mainWidgetProps?.customProps?.icon;\n return {\n label: f.label,\n value: f.key,\n icon,\n };\n })}\n value={fieldProps?.selectedKey}\n onChange={(val) => {\n fieldProps?.setField(val.label!);\n }}\n />\n );\n },\n // This is the component used for the Add/Remove buttons\n renderButton: function RAQBButton(buttonProps) {\n return (\n <Button\n type=\"button\"\n aria-label={t('grafana-sql.components.settings.title-button-filter', '{{ buttonLabel }} filter', {\n buttonLabel: buttonProps?.label,\n })}\n onClick={buttonProps?.onClick}\n variant=\"secondary\"\n size=\"md\"\n icon={buttonProps?.label === buttonLabels.add ? 'plus' : 'times'}\n />\n );\n },\n // This is the component used for the fields operator selector\n renderOperator: function Operator(operatorProps) {\n return (\n <Select\n options={operatorProps?.items.map((op) => ({ label: op.label, value: op.key }))}\n aria-label={t('grafana-sql.components.settings.aria-label-operator', 'Operator')}\n data-testid={selectors.components.SQLQueryEditor.filterOperator}\n menuShouldPortal\n value={operatorProps?.selectedKey}\n onChange={(val) => {\n operatorProps?.setField(val.value || '');\n }}\n />\n );\n },\n};\n\n// add IN / NOT IN operators to text to support multi-value variables\nconst enum Op {\n IN = 'select_any_in',\n NOT_IN = 'select_not_any_in',\n MACROS = 'macros',\n}\nconst customOperators = getCustomOperators(BasicConfig);\nconst textWidget = BasicConfig.types.text.widgets.text;\nconst opers = [...(textWidget.operators || []), Op.IN, Op.NOT_IN];\nconst customTextWidget = {\n ...textWidget,\n operators: opers,\n};\n\nconst customTypes = {\n ...BasicConfig.types,\n text: {\n ...BasicConfig.types.text,\n widgets: {\n ...BasicConfig.types.text.widgets,\n text: customTextWidget,\n },\n },\n datetime: {\n ...BasicConfig.types.datetime,\n widgets: {\n ...BasicConfig.types.datetime.widgets,\n datetime: {\n ...BasicConfig.types.datetime.widgets.datetime,\n operators: [Op.MACROS, ...(BasicConfig.types.datetime.widgets.datetime.operators || [])],\n },\n },\n },\n};\n\n// This is the configuration for the query builder that doesn't include the fields but all the other configuration for the UI\n// Fields should be added dynamically based on returned data\n// See the doc for more info https://github.com/ukrbublik/react-awesome-query-builder/blob/master/CONFIG.adoc\nexport const raqbConfig: Config = {\n ...BasicConfig,\n widgets,\n settings,\n operators: customOperators,\n types: customTypes,\n};\n\nexport type { Config };\n\nconst noop = () => '';\n\nfunction getCustomOperators(config: BasicConfig) {\n const { ...supportedOperators } = config.operators;\n\n // IN operator expects array, override IN formatter for multi-value variables\n const sqlFormatInOp = supportedOperators[Op.IN].sqlFormatOp?.bind(config.ctx) || noop;\n const formatInOp = supportedOperators[Op.IN].formatOp?.bind(config.ctx) || noop;\n const customSqlInFormatter = (\n field: string,\n op: string,\n value: string | string[] | ImmutableList<string>,\n valueSrc: ValueSource | undefined,\n valueType: string | undefined,\n opDef: Operator | undefined,\n operatorOptions: OperatorOptionsI | undefined,\n fieldDef: Field | undefined\n ) => {\n return sqlFormatInOp(field, op, splitIfString(value), valueSrc, valueType, opDef, operatorOptions, fieldDef);\n };\n\n // NOT IN operator expects array, override NOT IN formatter for multi-value variables\n const sqlFormatNotInOp = supportedOperators[Op.NOT_IN].sqlFormatOp?.bind(config.ctx) || noop;\n const formatNotInOp = supportedOperators[Op.NOT_IN].formatOp?.bind(config.ctx) || noop;\n const customSqlNotInFormatter = (\n field: string,\n op: string,\n value: string | string[] | ImmutableList<string>,\n valueSrc: ValueSource | undefined,\n valueType: string | undefined,\n opDef: Operator | undefined,\n operatorOptions: OperatorOptionsI | undefined,\n fieldDef: Field | undefined\n ) => {\n return sqlFormatNotInOp(field, op, splitIfString(value), valueSrc, valueType, opDef, operatorOptions, fieldDef);\n };\n\n const customOperators: Record<string, BaseOperator> = {\n ...supportedOperators,\n [Op.IN]: {\n ...supportedOperators[Op.IN],\n formatOp: (\n field: string,\n op: string,\n value: string | string[] | ImmutableList<string>,\n valueSrc?: ValueSource\n ) => {\n return formatInOp(field, op, splitIfString(value), valueSrc);\n },\n sqlFormatOp: customSqlInFormatter,\n },\n [Op.NOT_IN]: {\n ...supportedOperators[Op.NOT_IN],\n formatOp: (\n field: string,\n op: string,\n value: string | string[] | ImmutableList<string>,\n valueSrc?: ValueSource\n ) => {\n return formatNotInOp(field, op, splitIfString(value), valueSrc);\n },\n sqlFormatOp: customSqlNotInFormatter,\n },\n [Op.MACROS]: {\n label: t('grafana-sql.components.get-custom-operators.custom-operators.label.macros', 'Macros'),\n sqlFormatOp: (field: string, _operator: string, value: string | string[] | ImmutableList<string>) => {\n if (value === TIME_FILTER) {\n return `$__timeFilter(${field})`;\n }\n throw new Error('Invalid macro');\n },\n },\n };\n\n return customOperators;\n}\n\n// value: string | List<string> but AQB uses a different version of Immutable\nfunction splitIfString(value: string | string[] | ImmutableList<string>) {\n if (isString(value)) {\n return value.split(',');\n }\n return value;\n}\n"],"names":["Utils","BasicConfig","jsx","Input","Select","t","toOption","dateTime","DateTimePicker","selectors","_a","Button","Op","customOperators","isString"],"mappings":"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"}
1
+ {"version":3,"file":"AwesomeQueryBuilder.cjs","sources":["../../../../src/components/visual-query-builder/AwesomeQueryBuilder.tsx"],"sourcesContent":["import {\n type BaseOperator,\n BasicConfig,\n type Config,\n type Field,\n type ImmutableList,\n type JsonTree,\n type Operator,\n type OperatorOptionsI,\n type Settings,\n Utils,\n type ValueSource,\n type WidgetProps,\n type Widgets,\n} from '@react-awesome-query-builder/ui';\nimport { isString } from 'lodash';\n\nimport { dateTime, toOption } from '@grafana/data';\nimport { selectors } from '@grafana/e2e-selectors';\nimport { t } from '@grafana/i18n';\nimport { Button, DateTimePicker, Input, Select } from '@grafana/ui';\n\nconst buttonLabels = {\n add: 'Add',\n remove: 'Remove',\n};\n\nexport const emptyInitTree: JsonTree = {\n id: Utils.uuid(),\n type: 'group',\n};\n\nconst TIME_FILTER = 'timeFilter';\nconst macros = [TIME_FILTER];\n\n// Widgets are the components rendered for each field type see the docs for more info\n// https://github.com/ukrbublik/react-awesome-query-builder/blob/master/CONFIG.adoc#configwidgets\nconst widgets: Widgets = {\n ...BasicConfig.widgets,\n text: {\n ...BasicConfig.widgets.text,\n factory: function TextInput(props: WidgetProps) {\n return (\n <Input\n value={props?.value || ''}\n placeholder={props?.placeholder}\n onChange={(e) => props?.setValue(e.currentTarget.value)}\n />\n );\n },\n },\n number: {\n ...BasicConfig.widgets.number,\n factory: function NumberInput(props: WidgetProps) {\n return (\n <Input\n value={props?.value}\n placeholder={props?.placeholder}\n type=\"number\"\n onChange={(e) => props?.setValue(Number.parseInt(e.currentTarget.value, 10))}\n />\n );\n },\n },\n datetime: {\n ...BasicConfig.widgets.datetime,\n factory: function DateTimeInput(props: WidgetProps) {\n if (props?.operator === Op.MACROS) {\n return (\n <Select\n id={props.id}\n aria-label={t('grafana-sql.components.widgets.aria-label-macros-value-selector', 'Macros value selector')}\n menuShouldPortal\n options={macros.map(toOption)}\n value={props?.value}\n onChange={(val) => props.setValue(val.value)}\n />\n );\n }\n const dateValue = dateTime(props?.value).isValid() ? dateTime(props?.value).utc() : undefined;\n return (\n <DateTimePicker\n onChange={(e) => {\n props?.setValue(e?.format(BasicConfig.widgets.datetime.valueFormat));\n }}\n date={dateValue}\n />\n );\n },\n // Function for formatting widget’s value in SQL WHERE query.\n sqlFormatValue: (val, field, widget, operator, operatorDefinition, rightFieldDef) => {\n if (operator === Op.MACROS) {\n if (macros.includes(val)) {\n return val;\n }\n return undefined;\n }\n\n // This is just satisfying the type checker, this should never happen\n if (\n typeof BasicConfig.widgets.datetime.sqlFormatValue === 'string' ||\n typeof BasicConfig.widgets.datetime.sqlFormatValue === 'object'\n ) {\n return undefined;\n }\n const func = BasicConfig.widgets.datetime.sqlFormatValue;\n // We need to pass the ctx to this function this way so *this* is correct\n return func?.call(BasicConfig.ctx, val, field, widget, operator, operatorDefinition, rightFieldDef) || '';\n },\n },\n};\n\n// Settings are the configuration options for the query builder see the docs for more info\n// https://github.com/ukrbublik/react-awesome-query-builder/blob/master/CONFIG.adoc#configsettings\nconst settings: Settings = {\n ...BasicConfig.settings,\n canRegroup: false,\n maxNesting: 1,\n canReorder: false,\n showNot: false,\n addRuleLabel: buttonLabels.add,\n deleteLabel: buttonLabels.remove,\n // This is the component that renders conjunctions (logical operators)\n renderConjs: function Conjunctions(conjProps) {\n return (\n <Select\n id={conjProps?.id}\n aria-label={t('grafana-sql.components.settings.aria-label-conjunction', 'Conjunction')}\n data-testid={selectors.components.SQLQueryEditor.filterConjunction}\n menuShouldPortal\n options={conjProps?.conjunctionOptions ? Object.keys(conjProps?.conjunctionOptions).map(toOption) : undefined}\n value={conjProps?.selectedConjunction}\n onChange={(val) => conjProps?.setConjunction(val.value!)}\n />\n );\n },\n // This is the component that renders fields\n renderField: function Field(fieldProps) {\n const fields = fieldProps?.config?.fields || {};\n return (\n <Select\n id={fieldProps?.id}\n width={25}\n aria-label={t('grafana-sql.components.settings.aria-label-field', 'Field')}\n data-testid={selectors.components.SQLQueryEditor.filterField}\n menuShouldPortal\n options={fieldProps?.items.map((f) => {\n // @ts-ignore\n const icon = fields[f.key].mainWidgetProps?.customProps?.icon;\n return {\n label: f.label,\n value: f.key,\n icon,\n };\n })}\n value={fieldProps?.selectedKey}\n onChange={(val) => {\n fieldProps?.setField(val.label!);\n }}\n />\n );\n },\n // This is the component used for the Add/Remove buttons\n renderButton: function RAQBButton(buttonProps) {\n return (\n <Button\n type=\"button\"\n aria-label={t('grafana-sql.components.settings.title-button-filter', '{{ buttonLabel }} filter', {\n buttonLabel: buttonProps?.label,\n })}\n onClick={buttonProps?.onClick}\n variant=\"secondary\"\n size=\"md\"\n icon={buttonProps?.label === buttonLabels.add ? 'plus' : 'times'}\n />\n );\n },\n // This is the component used for the fields operator selector\n renderOperator: function Operator(operatorProps) {\n return (\n <Select\n options={operatorProps?.items.map((op) => ({ label: op.label, value: op.key }))}\n aria-label={t('grafana-sql.components.settings.aria-label-operator', 'Operator')}\n data-testid={selectors.components.SQLQueryEditor.filterOperator}\n menuShouldPortal\n value={operatorProps?.selectedKey}\n onChange={(val) => {\n operatorProps?.setField(val.value || '');\n }}\n />\n );\n },\n};\n\n// add IN / NOT IN operators to text to support multi-value variables\nconst enum Op {\n IN = 'select_any_in',\n NOT_IN = 'select_not_any_in',\n MACROS = 'macros',\n}\nconst customOperators = getCustomOperators(BasicConfig);\nconst textWidget = BasicConfig.types.text.widgets.text;\nconst opers = [...(textWidget.operators || []), Op.IN, Op.NOT_IN];\nconst customTextWidget = {\n ...textWidget,\n operators: opers,\n};\n\nconst customTypes = {\n ...BasicConfig.types,\n text: {\n ...BasicConfig.types.text,\n widgets: {\n ...BasicConfig.types.text.widgets,\n text: customTextWidget,\n },\n },\n datetime: {\n ...BasicConfig.types.datetime,\n widgets: {\n ...BasicConfig.types.datetime.widgets,\n datetime: {\n ...BasicConfig.types.datetime.widgets.datetime,\n operators: [Op.MACROS, ...(BasicConfig.types.datetime.widgets.datetime.operators || [])],\n },\n },\n },\n};\n\n// This is the configuration for the query builder that doesn't include the fields but all the other configuration for the UI\n// Fields should be added dynamically based on returned data\n// See the doc for more info https://github.com/ukrbublik/react-awesome-query-builder/blob/master/CONFIG.adoc\nexport const raqbConfig: Config = {\n ...BasicConfig,\n widgets,\n settings,\n operators: customOperators,\n types: customTypes,\n};\n\nexport type { Config };\n\nconst noop = () => '';\n\nfunction getCustomOperators(config: BasicConfig) {\n const { ...supportedOperators } = config.operators;\n\n // IN operator expects array, override IN formatter for multi-value variables\n const sqlFormatInOp = supportedOperators[Op.IN].sqlFormatOp?.bind(config.ctx) || noop;\n const formatInOp = supportedOperators[Op.IN].formatOp?.bind(config.ctx) || noop;\n const customSqlInFormatter = (\n field: string,\n op: string,\n value: string | string[] | ImmutableList<string>,\n valueSrc: ValueSource | undefined,\n valueType: string | undefined,\n opDef: Operator | undefined,\n operatorOptions: OperatorOptionsI | undefined,\n fieldDef: Field | undefined\n ) => {\n return sqlFormatInOp(field, op, splitIfString(value), valueSrc, valueType, opDef, operatorOptions, fieldDef);\n };\n\n // NOT IN operator expects array, override NOT IN formatter for multi-value variables\n const sqlFormatNotInOp = supportedOperators[Op.NOT_IN].sqlFormatOp?.bind(config.ctx) || noop;\n const formatNotInOp = supportedOperators[Op.NOT_IN].formatOp?.bind(config.ctx) || noop;\n const customSqlNotInFormatter = (\n field: string,\n op: string,\n value: string | string[] | ImmutableList<string>,\n valueSrc: ValueSource | undefined,\n valueType: string | undefined,\n opDef: Operator | undefined,\n operatorOptions: OperatorOptionsI | undefined,\n fieldDef: Field | undefined\n ) => {\n return sqlFormatNotInOp(field, op, splitIfString(value), valueSrc, valueType, opDef, operatorOptions, fieldDef);\n };\n\n const customOperators: Record<string, BaseOperator> = {\n ...supportedOperators,\n [Op.IN]: {\n ...supportedOperators[Op.IN],\n formatOp: (\n field: string,\n op: string,\n value: string | string[] | ImmutableList<string>,\n valueSrc?: ValueSource\n ) => {\n return formatInOp(field, op, splitIfString(value), valueSrc);\n },\n sqlFormatOp: customSqlInFormatter,\n },\n [Op.NOT_IN]: {\n ...supportedOperators[Op.NOT_IN],\n formatOp: (\n field: string,\n op: string,\n value: string | string[] | ImmutableList<string>,\n valueSrc?: ValueSource\n ) => {\n return formatNotInOp(field, op, splitIfString(value), valueSrc);\n },\n sqlFormatOp: customSqlNotInFormatter,\n },\n [Op.MACROS]: {\n label: t('grafana-sql.components.get-custom-operators.custom-operators.label.macros', 'Macros'),\n sqlFormatOp: (field: string, _operator: string, value: string | string[] | ImmutableList<string>) => {\n if (value === TIME_FILTER) {\n return `$__timeFilter(${field})`;\n }\n throw new Error('Invalid macro');\n },\n },\n };\n\n return customOperators;\n}\n\n// value: string | List<string> but AQB uses a different version of Immutable\nfunction splitIfString(value: string | string[] | ImmutableList<string>) {\n if (isString(value)) {\n return value.split(',');\n }\n return value;\n}\n"],"names":["Utils","BasicConfig","jsx","Input","Select","t","toOption","dateTime","DateTimePicker","selectors","_a","Button","Op","customOperators","isString"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"expressions.cjs","sources":["../../src/expressions.ts"],"sourcesContent":["export enum QueryEditorPropertyType {\n String = 'string',\n}\n\nexport interface QueryEditorProperty {\n type: QueryEditorPropertyType;\n name?: string;\n}\n\nexport type QueryEditorOperatorType = string | boolean | number;\ntype QueryEditorOperatorValueType = QueryEditorOperatorType | QueryEditorOperatorType[];\n\nexport interface QueryEditorOperator<T extends QueryEditorOperatorValueType> {\n name?: string;\n value?: T;\n}\n\nexport interface QueryEditorOperatorExpression {\n type: QueryEditorExpressionType.Operator;\n property: QueryEditorProperty;\n operator: QueryEditorOperator<QueryEditorOperatorValueType>;\n}\n\nexport interface QueryEditorArrayExpression {\n type: QueryEditorExpressionType.And | QueryEditorExpressionType.Or;\n expressions: QueryEditorExpression[] | QueryEditorArrayExpression[];\n}\n\nexport interface QueryEditorPropertyExpression {\n type: QueryEditorExpressionType.Property;\n property: QueryEditorProperty;\n}\n\nexport enum QueryEditorExpressionType {\n Property = 'property',\n Operator = 'operator',\n Or = 'or',\n And = 'and',\n GroupBy = 'groupBy',\n Function = 'function',\n FunctionParameter = 'functionParameter',\n}\n\nexport type QueryEditorExpression =\n | QueryEditorArrayExpression\n | QueryEditorPropertyExpression\n | QueryEditorGroupByExpression\n | QueryEditorFunctionExpression\n | QueryEditorFunctionParameterExpression\n | QueryEditorOperatorExpression;\n\nexport interface QueryEditorGroupByExpression {\n type: QueryEditorExpressionType.GroupBy;\n property: QueryEditorProperty;\n}\n\nexport interface QueryEditorFunctionExpression {\n type: QueryEditorExpressionType.Function;\n name?: string;\n alias?: string;\n parameters?: QueryEditorFunctionParameterExpression[];\n}\n\nexport interface QueryEditorFunctionParameterExpression {\n type: QueryEditorExpressionType.FunctionParameter;\n name?: string;\n}\n"],"names":["QueryEditorPropertyType","QueryEditorExpressionType"],"mappings":";;;;;AAAO,IAAK,uBAAA,qBAAAA,wBAAAA,KAAL;AACL,EAAAA,yBAAA,QAAA,CAAA,GAAS,QAAA;AADC,EAAA,OAAAA,wBAAAA;AAAA,CAAA,EAAA,uBAAA,IAAA,EAAA;AAiCL,IAAK,yBAAA,qBAAAC,0BAAAA,KAAL;AACL,EAAAA,2BAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,2BAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,2BAAA,IAAA,CAAA,GAAK,IAAA;AACL,EAAAA,2BAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,2BAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,2BAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,2BAAA,mBAAA,CAAA,GAAoB,mBAAA;AAPV,EAAA,OAAAA,0BAAAA;AAAA,CAAA,EAAA,yBAAA,IAAA,EAAA;;;;;"}
1
+ {"version":3,"file":"expressions.cjs","sources":["../../src/expressions.ts"],"sourcesContent":["export enum QueryEditorPropertyType {\n String = 'string',\n}\n\ninterface QueryEditorProperty {\n type: QueryEditorPropertyType;\n name?: string;\n}\n\ntype QueryEditorOperatorType = string | boolean | number;\ntype QueryEditorOperatorValueType = QueryEditorOperatorType | QueryEditorOperatorType[];\n\ninterface QueryEditorOperator<T extends QueryEditorOperatorValueType> {\n name?: string;\n value?: T;\n}\n\ninterface QueryEditorOperatorExpression {\n type: QueryEditorExpressionType.Operator;\n property: QueryEditorProperty;\n operator: QueryEditorOperator<QueryEditorOperatorValueType>;\n}\n\ninterface QueryEditorArrayExpression {\n type: QueryEditorExpressionType.And | QueryEditorExpressionType.Or;\n expressions: QueryEditorExpression[] | QueryEditorArrayExpression[];\n}\n\nexport interface QueryEditorPropertyExpression {\n type: QueryEditorExpressionType.Property;\n property: QueryEditorProperty;\n}\n\nexport enum QueryEditorExpressionType {\n Property = 'property',\n Operator = 'operator',\n Or = 'or',\n And = 'and',\n GroupBy = 'groupBy',\n Function = 'function',\n FunctionParameter = 'functionParameter',\n}\n\ntype QueryEditorExpression =\n | QueryEditorArrayExpression\n | QueryEditorPropertyExpression\n | QueryEditorGroupByExpression\n | QueryEditorFunctionExpression\n | QueryEditorFunctionParameterExpression\n | QueryEditorOperatorExpression;\n\nexport interface QueryEditorGroupByExpression {\n type: QueryEditorExpressionType.GroupBy;\n property: QueryEditorProperty;\n}\n\nexport interface QueryEditorFunctionExpression {\n type: QueryEditorExpressionType.Function;\n name?: string;\n alias?: string;\n parameters?: QueryEditorFunctionParameterExpression[];\n}\n\nexport interface QueryEditorFunctionParameterExpression {\n type: QueryEditorExpressionType.FunctionParameter;\n name?: string;\n}\n"],"names":["QueryEditorPropertyType","QueryEditorExpressionType"],"mappings":";;;;;AAAO,IAAK,uBAAA,qBAAAA,wBAAAA,KAAL;AACL,EAAAA,yBAAA,QAAA,CAAA,GAAS,QAAA;AADC,EAAA,OAAAA,wBAAAA;AAAA,CAAA,EAAA,uBAAA,IAAA,EAAA;AAiCL,IAAK,yBAAA,qBAAAC,0BAAAA,KAAL;AACL,EAAAA,2BAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,2BAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,2BAAA,IAAA,CAAA,GAAK,IAAA;AACL,EAAAA,2BAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,2BAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,2BAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,2BAAA,mBAAA,CAAA,GAAoB,mBAAA;AAPV,EAAA,OAAAA,0BAAAA;AAAA,CAAA,EAAA,yBAAA,IAAA,EAAA;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Volič datové sady"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Chyba"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Datensatz-Selektor"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Fehler"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Dataset selector"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Error"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Selector de conjuntos de datos"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Error"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Sélecteur d’ensemble de données"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Erreur"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Adatkészlet-választó"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Hiba"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Selektor kumpulan data"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Kesalahan"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Selettore set di dati"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Errore"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "データセットセレクター"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "エラー"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "데이터 집합 선택기"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "오류"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Gegevenssetkiezer"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Fout"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Selektor zbioru danych"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Błąd"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Seletor de conjunto de dados"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Erro"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Seletor de conjunto de dados"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Erro"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Селектор наборов данных"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Ошибка"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Datauppsättningsväljare"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Fel"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "Veri kümesi seçici"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "Hata"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "数据集选择器"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "错误"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -25,11 +25,6 @@ var grafanaSql = {
25
25
  "dataset-selector": {
26
26
  "aria-label-dataset-selector": "資料集選擇器"
27
27
  },
28
- "error-boundary": {
29
- "fall-back": {
30
- error: "錯誤"
31
- }
32
- },
33
28
  "get-custom-operators": {
34
29
  "custom-operators": {
35
30
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"grafana-sql.json.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.cjs","sources":["../../src/types.ts"],"sourcesContent":["import type { JsonTree } from '@react-awesome-query-builder/ui';\n\nimport {\n type DataFrame,\n type DataQuery,\n type DataSourceJsonData,\n type MetricFindValue,\n type SelectableValue,\n type TimeRange,\n toOption as toOptionFromData,\n} from '@grafana/data';\nimport { type CompletionItemKind, type EditorMode, type LanguageDefinition } from '@grafana/plugin-ui';\n\nimport { type QueryWithDefaults } from './defaults';\nimport {\n type QueryEditorFunctionExpression,\n type QueryEditorGroupByExpression,\n type QueryEditorPropertyExpression,\n} from './expressions';\n\nexport interface SqlQueryForInterpolation {\n dataset?: string;\n alias?: string;\n format?: QueryFormat;\n rawSql?: string;\n refId: string;\n hide?: boolean;\n}\n\nexport interface SQLConnectionLimits {\n maxOpenConns: number;\n maxIdleConns: number;\n maxIdleConnsAuto: boolean;\n connMaxLifetime: number;\n}\n\nexport interface SQLOptions extends SQLConnectionLimits, DataSourceJsonData {\n tlsAuth: boolean;\n tlsAuthWithCACert: boolean;\n timezone: string;\n tlsSkipVerify: boolean;\n user: string;\n database: string;\n url: string;\n timeInterval: string;\n}\n\nexport enum QueryFormat {\n Timeseries = 'time_series',\n Table = 'table',\n}\n\nexport type SQLQueryMeta = { valueField?: string; textField?: string };\n\nexport interface SQLQuery extends DataQuery {\n alias?: string;\n format?: QueryFormat;\n rawSql?: string;\n dataset?: string;\n table?: string;\n sql?: SQLExpression;\n editorMode?: EditorMode;\n rawQuery?: boolean;\n meta?: SQLQueryMeta;\n}\n\nexport type SQLVariableQuery = { query: string } & SQLQuery;\n\nexport interface NameValue {\n name: string;\n value: string;\n}\n\nexport type SQLFilters = NameValue[];\n\nexport interface SQLExpression {\n columns?: QueryEditorFunctionExpression[];\n whereJsonTree?: JsonTree;\n whereString?: string;\n filters?: SQLFilters;\n groupBy?: QueryEditorGroupByExpression[];\n orderBy?: QueryEditorPropertyExpression;\n orderByDirection?: 'ASC' | 'DESC';\n limit?: number;\n offset?: number;\n}\n\nexport interface TableSchema {\n name?: string;\n schema?: TableFieldSchema[];\n}\n\nexport interface TableFieldSchema {\n name: string;\n description?: string;\n type: string;\n repeated: boolean;\n schema: TableFieldSchema[];\n}\n\nexport interface QueryRowFilter {\n filter: boolean;\n group: boolean;\n order: boolean;\n preview: boolean;\n}\n\nexport const QUERY_FORMAT_OPTIONS = [\n { label: 'Time series', value: QueryFormat.Timeseries },\n { label: 'Table', value: QueryFormat.Table },\n];\n\nconst backWardToOption = (value: string) => ({ label: value, value });\n\nexport const toOption = toOptionFromData ?? backWardToOption;\n\nexport interface ResourceSelectorProps {\n disabled?: boolean;\n className?: string;\n applyDefault?: boolean;\n}\n// React Awesome Query builder field types.\n// These are responsible for rendering the correct UI for the field.\nexport type RAQBFieldTypes = 'text' | 'number' | 'boolean' | 'datetime' | 'date' | 'time';\n\nexport interface SQLSelectableValue extends SelectableValue {\n type?: string;\n raqbFieldType?: RAQBFieldTypes;\n}\n\nexport interface DB {\n init?: (datasourceId?: string) => Promise<boolean>;\n datasets: () => Promise<string[]>;\n tables: (dataset?: string) => Promise<string[]>;\n fields: (query: SQLQuery, order?: boolean) => Promise<SQLSelectableValue[]>;\n validateQuery: (query: SQLQuery, range?: TimeRange) => Promise<ValidationResults>;\n dispose?: (dsID?: string) => void;\n lookup?: (path?: string) => Promise<Array<{ name: string; completion: string }>>;\n getEditorLanguageDefinition: () => LanguageDefinition;\n toRawSql: (query: SQLQuery) => string;\n functions: () => Func[];\n}\n\nexport interface FuncParameter {\n name: string;\n required?: boolean;\n options?: (query: SQLQuery) => Promise<SelectableValue[]>;\n}\nexport interface Func {\n name: string;\n parameters?: FuncParameter[];\n description?: string;\n}\n\nexport interface QueryEditorProps {\n db: DB;\n query: QueryWithDefaults;\n onChange: (query: SQLQuery) => void;\n range?: TimeRange;\n}\n\nexport interface ValidationResults {\n query: SQLQuery;\n rawSql?: string;\n error: string;\n isError: boolean;\n isValid: boolean;\n statistics?: {\n TotalBytesProcessed: number;\n } | null;\n}\n\nexport interface SqlQueryModel {\n quoteLiteral: (v: string) => string;\n}\n\nexport interface ResponseParser {\n transformMetricFindResponse: (frame: DataFrame) => MetricFindValue[];\n}\n\nexport interface MetaDefinition {\n name: string;\n completion?: string;\n kind: CompletionItemKind;\n}\n\nexport type SQLDialect = 'postgres' | 'influx' | 'other';\n"],"names":["QueryFormat","toOptionFromData"],"mappings":";;;;;;;AAAA,IAAA,EAAA;AA+CO,IAAK,WAAA,qBAAAA,YAAAA,KAAL;AACL,EAAAA,aAAA,YAAA,CAAA,GAAa,aAAA;AACb,EAAAA,aAAA,OAAA,CAAA,GAAQ,OAAA;AAFE,EAAA,OAAAA,YAAAA;AAAA,CAAA,EAAA,WAAA,IAAA,EAAA;AA4DL,MAAM,oBAAA,GAAuB;AAAA,EAClC,EAAE,KAAA,EAAO,aAAA,EAAe,KAAA,EAAO,aAAA,mBAAuB;AAAA,EACtD,EAAE,KAAA,EAAO,OAAA,EAAS,KAAA,EAAO,OAAA;AAC3B;AAEA,MAAM,mBAAmB,CAAC,KAAA,MAAmB,EAAE,KAAA,EAAO,OAAO,KAAA,EAAM,CAAA;AAE5D,MAAM,YAAW,EAAA,GAAAC,aAAA,KAAA,IAAA,GAAA,EAAA,GAAoB;;;;;;"}
1
+ {"version":3,"file":"types.cjs","sources":["../../src/types.ts"],"sourcesContent":["import type { JsonTree } from '@react-awesome-query-builder/ui';\n\nimport {\n type DataFrame,\n type DataQuery,\n type DataSourceJsonData,\n type MetricFindValue,\n type SelectableValue,\n type TimeRange,\n toOption as toOptionFromData,\n} from '@grafana/data';\nimport { type EditorMode, type LanguageDefinition } from '@grafana/plugin-ui';\n\nimport { type QueryWithDefaults } from './defaults';\nimport {\n type QueryEditorFunctionExpression,\n type QueryEditorGroupByExpression,\n type QueryEditorPropertyExpression,\n} from './expressions';\n\nexport interface SQLConnectionLimits {\n maxOpenConns: number;\n maxIdleConns: number;\n maxIdleConnsAuto: boolean;\n connMaxLifetime: number;\n}\n\nexport interface SQLOptions extends SQLConnectionLimits, DataSourceJsonData {\n tlsAuth: boolean;\n tlsAuthWithCACert: boolean;\n timezone: string;\n tlsSkipVerify: boolean;\n user: string;\n database: string;\n url: string;\n timeInterval: string;\n}\n\nexport enum QueryFormat {\n Timeseries = 'time_series',\n Table = 'table',\n}\n\nexport type SQLQueryMeta = { valueField?: string; textField?: string };\n\nexport interface SQLQuery extends DataQuery {\n alias?: string;\n format?: QueryFormat;\n rawSql?: string;\n dataset?: string;\n table?: string;\n sql?: SQLExpression;\n editorMode?: EditorMode;\n rawQuery?: boolean;\n meta?: SQLQueryMeta;\n}\n\nexport type SQLVariableQuery = { query: string } & SQLQuery;\n\ninterface NameValue {\n name: string;\n value: string;\n}\n\ntype SQLFilters = NameValue[];\n\nexport interface SQLExpression {\n columns?: QueryEditorFunctionExpression[];\n whereJsonTree?: JsonTree;\n whereString?: string;\n filters?: SQLFilters;\n groupBy?: QueryEditorGroupByExpression[];\n orderBy?: QueryEditorPropertyExpression;\n orderByDirection?: 'ASC' | 'DESC';\n limit?: number;\n offset?: number;\n}\n\nexport interface QueryRowFilter {\n filter: boolean;\n group: boolean;\n order: boolean;\n preview: boolean;\n}\n\nexport const QUERY_FORMAT_OPTIONS = [\n { label: 'Time series', value: QueryFormat.Timeseries },\n { label: 'Table', value: QueryFormat.Table },\n];\n\nconst backWardToOption = (value: string) => ({ label: value, value });\n\nexport const toOption = toOptionFromData ?? backWardToOption;\n\nexport interface ResourceSelectorProps {\n disabled?: boolean;\n className?: string;\n applyDefault?: boolean;\n}\n// React Awesome Query builder field types.\n// These are responsible for rendering the correct UI for the field.\nexport type RAQBFieldTypes = 'text' | 'number' | 'boolean' | 'datetime' | 'date' | 'time';\n\nexport interface SQLSelectableValue extends SelectableValue {\n type?: string;\n raqbFieldType?: RAQBFieldTypes;\n}\n\nexport interface DB {\n init?: (datasourceId?: string) => Promise<boolean>;\n datasets: () => Promise<string[]>;\n tables: (dataset?: string) => Promise<string[]>;\n fields: (query: SQLQuery, order?: boolean) => Promise<SQLSelectableValue[]>;\n validateQuery: (query: SQLQuery, range?: TimeRange) => Promise<ValidationResults>;\n dispose?: (dsID?: string) => void;\n lookup?: (path?: string) => Promise<Array<{ name: string; completion: string }>>;\n getEditorLanguageDefinition: () => LanguageDefinition;\n toRawSql: (query: SQLQuery) => string;\n functions: () => Func[];\n}\n\nexport interface FuncParameter {\n name: string;\n required?: boolean;\n options?: (query: SQLQuery) => Promise<SelectableValue[]>;\n}\nexport interface Func {\n name: string;\n parameters?: FuncParameter[];\n description?: string;\n}\n\nexport interface QueryEditorProps {\n db: DB;\n query: QueryWithDefaults;\n onChange: (query: SQLQuery) => void;\n range?: TimeRange;\n}\n\nexport interface ValidationResults {\n query: SQLQuery;\n rawSql?: string;\n error: string;\n isError: boolean;\n isValid: boolean;\n statistics?: {\n TotalBytesProcessed: number;\n } | null;\n}\n\nexport interface SqlQueryModel {\n quoteLiteral: (v: string) => string;\n}\n\nexport interface ResponseParser {\n transformMetricFindResponse: (frame: DataFrame) => MetricFindValue[];\n}\n\nexport type SQLDialect = 'postgres' | 'influx' | 'other';\n"],"names":["QueryFormat","toOptionFromData"],"mappings":";;;;;;;AAAA,IAAA,EAAA;AAsCO,IAAK,WAAA,qBAAAA,YAAAA,KAAL;AACL,EAAAA,aAAA,YAAA,CAAA,GAAa,aAAA;AACb,EAAAA,aAAA,OAAA,CAAA,GAAQ,OAAA;AAFE,EAAA,OAAAA,YAAAA;AAAA,CAAA,EAAA,WAAA,IAAA,EAAA;AA+CL,MAAM,oBAAA,GAAuB;AAAA,EAClC,EAAE,KAAA,EAAO,aAAA,EAAe,KAAA,EAAO,aAAA,mBAAuB;AAAA,EACtD,EAAE,KAAA,EAAO,OAAA,EAAS,KAAA,EAAO,OAAA;AAC3B;AAEA,MAAM,mBAAmB,CAAC,KAAA,MAAmB,EAAE,KAAA,EAAO,OAAO,KAAA,EAAM,CAAA;AAE5D,MAAM,YAAW,EAAA,GAAAC,aAAA,KAAA,IAAA,GAAA,EAAA,GAAoB;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"TLSSecretsConfig.mjs","sources":["../../../../src/components/configuration/TLSSecretsConfig.tsx"],"sourcesContent":["import {\n type DataSourceJsonData,\n type DataSourcePluginOptionsEditorProps,\n type KeyValue,\n onUpdateDatasourceSecureJsonDataOption,\n updateDatasourcePluginResetOption,\n} from '@grafana/data';\nimport { Trans } from '@grafana/i18n';\nimport { Field, Icon, Label, SecretTextArea, Tooltip, Stack } from '@grafana/ui';\n\nexport interface Props<T extends DataSourceJsonData, S> {\n editorProps: DataSourcePluginOptionsEditorProps<T, S>;\n showCACert?: boolean;\n showKeyPair?: boolean;\n secureJsonFields?: KeyValue<Boolean>;\n labelWidth?: number;\n}\n\nexport const TLSSecretsConfig = <T extends DataSourceJsonData, S extends {} = {}>(props: Props<T, S>) => {\n const { editorProps, showCACert, showKeyPair = true } = props;\n const { secureJsonFields } = editorProps.options;\n return (\n <>\n {showKeyPair ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-client-certificate\">\n TLS/SSL Client Certificate\n </Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-client-certificate\">\n To authenticate with an TLS/SSL client certificate, provide the client certificate here.\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN CERTIFICATE-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsClientCert}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsClientCert')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsClientCert');\n }}\n />\n </Field>\n ) : null}\n {showCACert ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-root-certificate\">\n TLS/SSL Root Certificate\n </Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-root-certificate\">\n If the selected TLS/SSL mode requires a server root certificate, provide it here\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN CERTIFICATE-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsCACert}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsCACert')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsCACert');\n }}\n />\n </Field>\n ) : null}\n {showKeyPair ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-client-key\">TLS/SSL Client Key</Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-client-key\">\n To authenticate with a client TLS/SSL certificate, provide the key here.\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN RSA PRIVATE KEY-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsClientKey}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsClientKey')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsClientKey');\n }}\n />\n </Field>\n ) : null}\n </>\n );\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TLSSecretsConfig.mjs","sources":["../../../../src/components/configuration/TLSSecretsConfig.tsx"],"sourcesContent":["import {\n type DataSourceJsonData,\n type DataSourcePluginOptionsEditorProps,\n type KeyValue,\n onUpdateDatasourceSecureJsonDataOption,\n updateDatasourcePluginResetOption,\n} from '@grafana/data';\nimport { Trans } from '@grafana/i18n';\nimport { Field, Icon, Label, SecretTextArea, Tooltip, Stack } from '@grafana/ui';\n\ninterface Props<T extends DataSourceJsonData, S> {\n editorProps: DataSourcePluginOptionsEditorProps<T, S>;\n showCACert?: boolean;\n showKeyPair?: boolean;\n secureJsonFields?: KeyValue<Boolean>;\n labelWidth?: number;\n}\n\nexport const TLSSecretsConfig = <T extends DataSourceJsonData, S extends {} = {}>(props: Props<T, S>) => {\n const { editorProps, showCACert, showKeyPair = true } = props;\n const { secureJsonFields } = editorProps.options;\n return (\n <>\n {showKeyPair ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-client-certificate\">\n TLS/SSL Client Certificate\n </Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-client-certificate\">\n To authenticate with an TLS/SSL client certificate, provide the client certificate here.\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN CERTIFICATE-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsClientCert}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsClientCert')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsClientCert');\n }}\n />\n </Field>\n ) : null}\n {showCACert ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-root-certificate\">\n TLS/SSL Root Certificate\n </Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-root-certificate\">\n If the selected TLS/SSL mode requires a server root certificate, provide it here\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN CERTIFICATE-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsCACert}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsCACert')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsCACert');\n }}\n />\n </Field>\n ) : null}\n {showKeyPair ? (\n <Field\n noMargin\n label={\n <Label>\n <Stack gap={0.5}>\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.tlsssl-client-key\">TLS/SSL Client Key</Trans>\n </span>\n <Tooltip\n content={\n <span>\n <Trans i18nKey=\"grafana-sql.components.tlssecrets-config.content-tlsssl-client-key\">\n To authenticate with a client TLS/SSL certificate, provide the key here.\n </Trans>\n </span>\n }\n >\n <Icon name=\"info-circle\" size=\"sm\" />\n </Tooltip>\n </Stack>\n </Label>\n }\n >\n <SecretTextArea\n // eslint-disable-next-line @grafana/i18n/no-untranslated-strings\n placeholder=\"-----BEGIN RSA PRIVATE KEY-----\"\n cols={45}\n rows={7}\n isConfigured={secureJsonFields && secureJsonFields.tlsClientKey}\n onChange={onUpdateDatasourceSecureJsonDataOption(editorProps, 'tlsClientKey')}\n onReset={() => {\n updateDatasourcePluginResetOption(editorProps, 'tlsClientKey');\n }}\n />\n </Field>\n ) : null}\n </>\n );\n};\n"],"names":[],"mappings":"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"}
@@ -262,5 +262,5 @@ function splitIfString(value) {
262
262
  return value;
263
263
  }
264
264
 
265
- export { emptyInitTree, raqbConfig, settings, widgets };
265
+ export { emptyInitTree, raqbConfig };
266
266
  //# sourceMappingURL=AwesomeQueryBuilder.mjs.map