@grafana/plugin-ui 0.13.1 → 0.14.1-dsconfig.032cfc4
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.
- package/dist/cjs/index.cjs +2989 -372
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.d.cts +695 -40
- package/dist/cjs/schemas.cjs +25 -0
- package/dist/cjs/schemas.cjs.map +1 -0
- package/dist/cjs/schemas.d.cts +448 -0
- package/dist/cjs/test-utils.cjs +2 -2
- package/dist/cjs/test-utils.cjs.map +1 -1
- package/dist/cjs/test-utils.d.cts +24 -24
- package/dist/cjs/useDatasourceSchema-CxPGD2-b.js +17125 -0
- package/dist/cjs/useDatasourceSchema-CxPGD2-b.js.map +1 -0
- package/dist/esm/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/Auth.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js +4 -4
- package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/auth-method/BasicAuth.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeader.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js +1 -1
- package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/styles.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js +1 -1
- package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/tls/SkipTLSVerification.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js +3 -3
- package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettings.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettingsSection.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/types.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Auth/utils.js +3 -3
- package/dist/esm/components/ConfigEditor/Auth/utils.js.map +1 -1
- package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js +2 -2
- package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js.map +1 -1
- package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSection.js.map +1 -1
- package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSubSection.js.map +1 -1
- package/dist/esm/components/ConfigEditor/ConfigSection/GenericConfigSection.js.map +1 -1
- package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js +1 -1
- package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js.map +1 -1
- package/dist/esm/components/ConfigEditor/DataSourceDescription.js.map +1 -1
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js +234 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceErrorBoundary.js +27 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceErrorBoundary.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js +71 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js +54 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js +181 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/cel.js +75 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/cel.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/config.js +258 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/config.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/datasource.js +354 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/datasource.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js +138 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useDatasourceConfigForm.js +326 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useDatasourceConfigForm.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useHealthChecks.js +106 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useHealthChecks.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/AuthorizationHeaderField.js +51 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/AuthorizationHeaderField.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ComplexFieldNote.js +26 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ComplexFieldNote.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/FileUploadField.js +106 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/FileUploadField.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/IndexedPairEditor.js +124 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/IndexedPairEditor.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ObjectArrayEditor.js +190 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ObjectArrayEditor.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/PdcFieldNote.js +31 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/PdcFieldNote.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/SecureFieldInput.js +59 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/SecureFieldInput.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/StringArrayInput.js +80 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/StringArrayInput.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/renderFieldInput.js +141 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/renderFieldInput.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/resolvePluginName.js +30 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/resolvePluginName.js.map +1 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/styles.js +360 -0
- package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/styles.js.map +1 -0
- package/dist/esm/components/ConfigEditor/SecureSocksProxyToggle.js.map +1 -1
- package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js +11 -11
- package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js.map +1 -1
- package/dist/esm/components/DataLinks/DataLink.js +4 -4
- package/dist/esm/components/DataLinks/DataLink.js.map +1 -1
- package/dist/esm/components/DataLinks/DataLinks.js +3 -3
- package/dist/esm/components/DataLinks/DataLinks.js.map +1 -1
- package/dist/esm/components/DataSourcePicker/DataSourcePicker.js +8 -8
- package/dist/esm/components/DataSourcePicker/DataSourcePicker.js.map +1 -1
- package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/esm/components/DatePicker/styles.js +2 -2
- package/dist/esm/components/DatePicker/styles.js.map +1 -1
- package/dist/esm/components/DatePickerWithInput/DatePickerWithInput.js.map +1 -1
- package/dist/esm/components/DatePickerWithInput/styles.js +2 -2
- package/dist/esm/components/DatePickerWithInput/styles.js.map +1 -1
- package/dist/esm/components/DebounceInput/DebounceInput.js.map +1 -1
- package/dist/esm/components/Plugins/PluginSignatureBadge.js.map +1 -1
- package/dist/esm/components/QueryEditor/AccessoryButton.js.map +1 -1
- package/dist/esm/components/QueryEditor/CatalogSelector.js +1 -1
- package/dist/esm/components/QueryEditor/CatalogSelector.js.map +1 -1
- package/dist/esm/components/QueryEditor/ConfirmModal.js +1 -1
- package/dist/esm/components/QueryEditor/ConfirmModal.js.map +1 -1
- package/dist/esm/components/QueryEditor/DatasetSelector.js +1 -1
- package/dist/esm/components/QueryEditor/DatasetSelector.js.map +1 -1
- package/dist/esm/components/QueryEditor/EditorField.js +5 -5
- package/dist/esm/components/QueryEditor/EditorField.js.map +1 -1
- package/dist/esm/components/QueryEditor/EditorFieldGroup.js.map +1 -1
- package/dist/esm/components/QueryEditor/EditorHeader.js +2 -2
- package/dist/esm/components/QueryEditor/EditorHeader.js.map +1 -1
- package/dist/esm/components/QueryEditor/EditorList.js.map +1 -1
- package/dist/esm/components/QueryEditor/EditorRow.js +4 -4
- package/dist/esm/components/QueryEditor/EditorRow.js.map +1 -1
- package/dist/esm/components/QueryEditor/EditorRows.js +2 -2
- package/dist/esm/components/QueryEditor/EditorRows.js.map +1 -1
- package/dist/esm/components/QueryEditor/EditorStack.js +1 -1
- package/dist/esm/components/QueryEditor/EditorStack.js.map +1 -1
- package/dist/esm/components/QueryEditor/EditorSwitch.js +2 -2
- package/dist/esm/components/QueryEditor/EditorSwitch.js.map +1 -1
- package/dist/esm/components/QueryEditor/FlexItem.js.map +1 -1
- package/dist/esm/components/QueryEditor/InlineSelect.js +1 -1
- package/dist/esm/components/QueryEditor/InlineSelect.js.map +1 -1
- package/dist/esm/components/QueryEditor/InputGroup.js +2 -2
- package/dist/esm/components/QueryEditor/InputGroup.js.map +1 -1
- package/dist/esm/components/QueryEditor/QueryEditor.js +10 -8
- package/dist/esm/components/QueryEditor/QueryEditor.js.map +1 -1
- package/dist/esm/components/QueryEditor/QueryHeader.js +20 -20
- package/dist/esm/components/QueryEditor/QueryHeader.js.map +1 -1
- package/dist/esm/components/QueryEditor/RunQueryButton.js +1 -1
- package/dist/esm/components/QueryEditor/RunQueryButton.js.map +1 -1
- package/dist/esm/components/QueryEditor/Space.js +2 -2
- package/dist/esm/components/QueryEditor/Space.js.map +1 -1
- package/dist/esm/components/QueryEditor/TableSelector.js +0 -1
- package/dist/esm/components/QueryEditor/TableSelector.js.map +1 -1
- package/dist/esm/components/QueryEditor/defaults.js +7 -7
- package/dist/esm/components/QueryEditor/defaults.js.map +1 -1
- package/dist/esm/components/QueryEditor/expressions.js.map +1 -1
- package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js +10 -2
- package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js.map +1 -1
- package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js +7 -2
- package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js.map +1 -1
- package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js +4 -4
- package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js.map +1 -1
- package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js +14 -4
- package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js.map +1 -1
- package/dist/esm/components/QueryEditor/types.js +0 -1
- package/dist/esm/components/QueryEditor/types.js.map +1 -1
- package/dist/esm/components/QueryEditor/utils/formatSQL.js +15 -4
- package/dist/esm/components/QueryEditor/utils/formatSQL.js.map +1 -1
- package/dist/esm/components/QueryEditor/utils/sql.utils.js +8 -8
- package/dist/esm/components/QueryEditor/utils/sql.utils.js.map +1 -1
- package/dist/esm/components/QueryEditor/utils/useSqlChange.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js +26 -27
- package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js +3 -3
- package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js +2 -2
- package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/EditorRows.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js +2 -2
- package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js +4 -4
- package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js +4 -4
- package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js +0 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js +2 -3
- package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js +0 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js +0 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js +9 -9
- package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js +10 -2
- package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js.map +1 -1
- package/dist/esm/components/QueryEditor/visual-query-builder/WhereRow.js.map +1 -1
- package/dist/esm/components/QueryEditorRow/QueryEditorRow.js.map +1 -1
- package/dist/esm/components/SQLEditor/components/SQLEditor.js +13 -13
- package/dist/esm/components/SQLEditor/components/SQLEditor.js.map +1 -1
- package/dist/esm/components/SQLEditor/hooks/useLatestCallback.js +1 -1
- package/dist/esm/components/SQLEditor/hooks/useLatestCallback.js.map +1 -1
- package/dist/esm/components/SQLEditor/mocks/Monaco.js.map +1 -1
- package/dist/esm/components/SQLEditor/mocks/TextModel.js.map +1 -1
- package/dist/esm/components/SQLEditor/mocks/queries/multiLineFullQuery.js.map +1 -1
- package/dist/esm/components/SQLEditor/mocks/queries/multiLineFullQueryWithAggregation.js.map +1 -1
- package/dist/esm/components/SQLEditor/mocks/queries/multiLineMultipleColumns.js.map +1 -1
- package/dist/esm/components/SQLEditor/mocks/queries/singleLineEmptyQuery.js.map +1 -1
- package/dist/esm/components/SQLEditor/mocks/queries/singleLineFullQuery.js.map +1 -1
- package/dist/esm/components/SQLEditor/mocks/queries/singleLineFullQueryWithAggregation.js.map +1 -1
- package/dist/esm/components/SQLEditor/mocks/queries/singleLineMultipleColumns.js.map +1 -1
- package/dist/esm/components/SQLEditor/mocks/queries/singleLineTwoQueries.js.map +1 -1
- package/dist/esm/components/SQLEditor/mocks/queries/singleLineTwoQueriesWithAggregation.js.map +1 -1
- package/dist/esm/components/SQLEditor/standardSql/definition.js +0 -6
- package/dist/esm/components/SQLEditor/standardSql/definition.js.map +1 -1
- package/dist/esm/components/SQLEditor/standardSql/getStandardSuggestions.js +2 -2
- package/dist/esm/components/SQLEditor/standardSql/getStandardSuggestions.js.map +1 -1
- package/dist/esm/components/SQLEditor/standardSql/getStatementPosition.js +5 -4
- package/dist/esm/components/SQLEditor/standardSql/getStatementPosition.js.map +1 -1
- package/dist/esm/components/SQLEditor/standardSql/language.js.map +1 -1
- package/dist/esm/components/SQLEditor/standardSql/macros.js.map +1 -1
- package/dist/esm/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js +2 -2
- package/dist/esm/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js.map +1 -1
- package/dist/esm/components/SQLEditor/standardSql/standardSuggestionsRegistry.js +1 -1
- package/dist/esm/components/SQLEditor/standardSql/standardSuggestionsRegistry.js.map +1 -1
- package/dist/esm/components/SQLEditor/standardSql/statementPositionResolversRegistry.js +27 -26
- package/dist/esm/components/SQLEditor/standardSql/statementPositionResolversRegistry.js.map +1 -1
- package/dist/esm/components/SQLEditor/standardSql/suggestionsKindRegistry.js +1 -1
- package/dist/esm/components/SQLEditor/standardSql/suggestionsKindRegistry.js.map +1 -1
- package/dist/esm/components/SQLEditor/test-utils/index.js.map +1 -1
- package/dist/esm/components/SQLEditor/test-utils/statementPosition.js.map +1 -1
- package/dist/esm/components/SQLEditor/types.js +1 -17
- package/dist/esm/components/SQLEditor/types.js.map +1 -1
- package/dist/esm/components/SQLEditor/utils/LinkedToken.js +8 -8
- package/dist/esm/components/SQLEditor/utils/LinkedToken.js.map +1 -1
- package/dist/esm/components/SQLEditor/utils/commands.js.map +1 -1
- package/dist/esm/components/SQLEditor/utils/debugger.js +1 -1
- package/dist/esm/components/SQLEditor/utils/debugger.js.map +1 -1
- package/dist/esm/components/SQLEditor/utils/getSuggestionKind.js.map +1 -1
- package/dist/esm/components/SQLEditor/utils/linkedTokenBuilder.js +3 -3
- package/dist/esm/components/SQLEditor/utils/linkedTokenBuilder.js.map +1 -1
- package/dist/esm/components/SQLEditor/utils/toCompletionItem.js +1 -1
- package/dist/esm/components/SQLEditor/utils/toCompletionItem.js.map +1 -1
- package/dist/esm/components/SQLEditor/utils/tokenType.js +18 -0
- package/dist/esm/components/SQLEditor/utils/tokenType.js.map +1 -0
- package/dist/esm/components/SQLEditor/utils/tokenUtils.js +10 -10
- package/dist/esm/components/SQLEditor/utils/tokenUtils.js.map +1 -1
- package/dist/esm/components/Segment/Segment.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/QueryModellerBase.js +2 -2
- package/dist/esm/components/VisualQueryBuilder/QueryModellerBase.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js +11 -11
- package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js +4 -4
- package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js +3 -3
- package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js +3 -3
- package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js +2 -2
- package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js +2 -2
- package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/OperationList.js +4 -4
- package/dist/esm/components/VisualQueryBuilder/components/OperationList.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js +2 -2
- package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js +6 -6
- package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js +3 -3
- package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js +8 -8
- package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/QueryEditorModeToggle.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js +3 -3
- package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js +2 -2
- package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js.map +1 -1
- package/dist/esm/components/VisualQueryBuilder/types.js.map +1 -1
- package/dist/esm/datasource/SqlDatasource.js +14 -14
- package/dist/esm/datasource/SqlDatasource.js.map +1 -1
- package/dist/esm/datasource/constants.js.map +1 -1
- package/dist/esm/hooks/useDebounce.js.map +1 -1
- package/dist/esm/index.d.ts +695 -40
- package/dist/esm/index.js +13 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/schema/registry/alertmanager.schema.json.js +77 -0
- package/dist/esm/schema/registry/alertmanager.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/cloudwatch.schema.json.js +384 -0
- package/dist/esm/schema/registry/cloudwatch.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/elasticsearch.schema.json.js +597 -0
- package/dist/esm/schema/registry/elasticsearch.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-adobeanalytics-datasource.schema.json.js +95 -0
- package/dist/esm/schema/registry/grafana-adobeanalytics-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-amazonprometheus-datasource.schema.json.js +166 -0
- package/dist/esm/schema/registry/grafana-amazonprometheus-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-appdynamics-datasource.schema.json.js +145 -0
- package/dist/esm/schema/registry/grafana-appdynamics-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-astradb-datasource.schema.json.js +123 -0
- package/dist/esm/schema/registry/grafana-astradb-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-athena-datasource.schema.json.js +158 -0
- package/dist/esm/schema/registry/grafana-athena-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-atlassianstatuspage-datasource.schema.json.js +43 -0
- package/dist/esm/schema/registry/grafana-atlassianstatuspage-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-azure-data-explorer-datasource.schema.json.js +204 -0
- package/dist/esm/schema/registry/grafana-azure-data-explorer-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-azure-monitor-datasource.schema.json.js +300 -0
- package/dist/esm/schema/registry/grafana-azure-monitor-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-azuredevops-datasource.schema.json.js +101 -0
- package/dist/esm/schema/registry/grafana-azuredevops-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-azureprometheus-datasource.schema.json.js +125 -0
- package/dist/esm/schema/registry/grafana-azureprometheus-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-bigquery-datasource.schema.json.js +508 -0
- package/dist/esm/schema/registry/grafana-bigquery-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-catchpoint-datasource.schema.json.js +42 -0
- package/dist/esm/schema/registry/grafana-catchpoint-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-clickhouse-datasource.schema.json.js +1400 -0
- package/dist/esm/schema/registry/grafana-clickhouse-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-cloudflare-datasource.schema.json.js +42 -0
- package/dist/esm/schema/registry/grafana-cloudflare-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-cockroachdb-datasource.schema.json.js +302 -0
- package/dist/esm/schema/registry/grafana-cockroachdb-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-databricks-datasource.schema.json.js +291 -0
- package/dist/esm/schema/registry/grafana-databricks-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-datadog-datasource.schema.json.js +155 -0
- package/dist/esm/schema/registry/grafana-datadog-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-drone-datasource.schema.json.js +64 -0
- package/dist/esm/schema/registry/grafana-drone-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-dynatrace-datasource.schema.json.js +179 -0
- package/dist/esm/schema/registry/grafana-dynatrace-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-falconlogscale-datasource.schema.json.js +134 -0
- package/dist/esm/schema/registry/grafana-falconlogscale-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-github-datasource.schema.json.js +156 -0
- package/dist/esm/schema/registry/grafana-github-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-gitlab-datasource.schema.json.js +84 -0
- package/dist/esm/schema/registry/grafana-gitlab-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-googlesheets-datasource.schema.json.js +231 -0
- package/dist/esm/schema/registry/grafana-googlesheets-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-honeycomb-datasource.schema.json.js +87 -0
- package/dist/esm/schema/registry/grafana-honeycomb-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-iot-sitewise-datasource.schema.json.js +159 -0
- package/dist/esm/schema/registry/grafana-iot-sitewise-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-jira-datasource.schema.json.js +188 -0
- package/dist/esm/schema/registry/grafana-jira-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-logicmonitor-datasource.schema.json.js +63 -0
- package/dist/esm/schema/registry/grafana-logicmonitor-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-looker-datasource.schema.json.js +82 -0
- package/dist/esm/schema/registry/grafana-looker-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-mongodb-datasource.schema.json.js +278 -0
- package/dist/esm/schema/registry/grafana-mongodb-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-mqtt-datasource.schema.json.js +168 -0
- package/dist/esm/schema/registry/grafana-mqtt-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-netlify-datasource.schema.json.js +42 -0
- package/dist/esm/schema/registry/grafana-netlify-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-newrelic-datasource.schema.json.js +129 -0
- package/dist/esm/schema/registry/grafana-newrelic-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-odbc-datasource.schema.json.js +56 -0
- package/dist/esm/schema/registry/grafana-odbc-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-opensearch-datasource.schema.json.js +212 -0
- package/dist/esm/schema/registry/grafana-opensearch-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-oracle-datasource.schema.json.js +186 -0
- package/dist/esm/schema/registry/grafana-oracle-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-pagerduty-datasource.schema.json.js +85 -0
- package/dist/esm/schema/registry/grafana-pagerduty-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-postgresql-datasource.schema.json.js +411 -0
- package/dist/esm/schema/registry/grafana-postgresql-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-pyroscope-datasource.schema.json.js +41 -0
- package/dist/esm/schema/registry/grafana-pyroscope-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-redshift-datasource.schema.json.js +201 -0
- package/dist/esm/schema/registry/grafana-redshift-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-salesforce-datasource.schema.json.js +248 -0
- package/dist/esm/schema/registry/grafana-salesforce-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-saphana-datasource.schema.json.js +208 -0
- package/dist/esm/schema/registry/grafana-saphana-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-sentry-datasource.schema.json.js +94 -0
- package/dist/esm/schema/registry/grafana-sentry-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-servicenow-datasource.schema.json.js +179 -0
- package/dist/esm/schema/registry/grafana-servicenow-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-snowflake-datasource.schema.json.js +304 -0
- package/dist/esm/schema/registry/grafana-snowflake-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-solarwinds-datasource.schema.json.js +77 -0
- package/dist/esm/schema/registry/grafana-solarwinds-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-splunk-datasource.schema.json.js +690 -0
- package/dist/esm/schema/registry/grafana-splunk-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-splunkobservability-datasource.schema.json.js +90 -0
- package/dist/esm/schema/registry/grafana-splunkobservability-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-strava-datasource.schema.json.js +74 -0
- package/dist/esm/schema/registry/grafana-strava-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-sumologic-datasource.schema.json.js +102 -0
- package/dist/esm/schema/registry/grafana-sumologic-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-surrealdb-datasource.schema.json.js +92 -0
- package/dist/esm/schema/registry/grafana-surrealdb-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-timestream-datasource.schema.json.js +145 -0
- package/dist/esm/schema/registry/grafana-timestream-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-vercel-datasource.schema.json.js +62 -0
- package/dist/esm/schema/registry/grafana-vercel-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-wavefront-datasource.schema.json.js +80 -0
- package/dist/esm/schema/registry/grafana-wavefront-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-x-ray-datasource.schema.json.js +112 -0
- package/dist/esm/schema/registry/grafana-x-ray-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-yugabyte-datasource.schema.json.js +114 -0
- package/dist/esm/schema/registry/grafana-yugabyte-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/grafana-zendesk-datasource.schema.json.js +76 -0
- package/dist/esm/schema/registry/grafana-zendesk-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/graphite.schema.json.js +104 -0
- package/dist/esm/schema/registry/graphite.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/index.js +157 -0
- package/dist/esm/schema/registry/index.js.map +1 -0
- package/dist/esm/schema/registry/influxdb.schema.json.js +717 -0
- package/dist/esm/schema/registry/influxdb.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/jaeger.schema.json.js +59 -0
- package/dist/esm/schema/registry/jaeger.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/loki.schema.json.js +545 -0
- package/dist/esm/schema/registry/loki.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/marcusolsson-csv-datasource.schema.json.js +45 -0
- package/dist/esm/schema/registry/marcusolsson-csv-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/marcusolsson-json-datasource.schema.json.js +36 -0
- package/dist/esm/schema/registry/marcusolsson-json-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/mssql.schema.json.js +292 -0
- package/dist/esm/schema/registry/mssql.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/mysql.schema.json.js +304 -0
- package/dist/esm/schema/registry/mysql.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/opentsdb.schema.json.js +113 -0
- package/dist/esm/schema/registry/opentsdb.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/prometheus.schema.json.js +783 -0
- package/dist/esm/schema/registry/prometheus.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/stackdriver.schema.json.js +224 -0
- package/dist/esm/schema/registry/stackdriver.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/tempo.schema.json.js +664 -0
- package/dist/esm/schema/registry/tempo.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/yesoreyeram-infinity-datasource.schema.json.js +1073 -0
- package/dist/esm/schema/registry/yesoreyeram-infinity-datasource.schema.json.js.map +1 -0
- package/dist/esm/schema/registry/zipkin.schema.json.js +40 -0
- package/dist/esm/schema/registry/zipkin.schema.json.js.map +1 -0
- package/dist/esm/schema/utils/dsconfig.js +97 -0
- package/dist/esm/schema/utils/dsconfig.js.map +1 -0
- package/dist/esm/schema/utils/llm.js +54 -0
- package/dist/esm/schema/utils/llm.js.map +1 -0
- package/dist/esm/schema/utils/provisioning.js +434 -0
- package/dist/esm/schema/utils/provisioning.js.map +1 -0
- package/dist/esm/schema/utils/useDatasourceSchema.js +16 -0
- package/dist/esm/schema/utils/useDatasourceSchema.js.map +1 -0
- package/dist/esm/schemas.d.ts +448 -0
- package/dist/esm/schemas.js +6 -0
- package/dist/esm/schemas.js.map +1 -0
- package/dist/esm/test/mocks/DataQuery.js.map +1 -1
- package/dist/esm/test/mocks/Datasource.js +1 -1
- package/dist/esm/test/mocks/Datasource.js.map +1 -1
- package/dist/esm/test/mocks/Plugin.js +1 -1
- package/dist/esm/test/mocks/Plugin.js.map +1 -1
- package/dist/esm/test/mocks/QueryEditorProps.js.map +1 -1
- package/dist/esm/test/mocks/utils.js +2 -2
- package/dist/esm/test/mocks/utils.js.map +1 -1
- package/dist/esm/test-utils.d.ts +24 -24
- package/package.json +40 -20
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"macros.js","sources":["../../../../../src/components/SQLEditor/standardSql/macros.ts"],"sourcesContent":["import { MacroType } from '../types';\nimport { type MacrosRegistryItem } from './types';\n\nconst COLUMN = 'column',\n RELATIVE_TIME_STRING = \"'5m'\";\n\nexport const MACROS: MacrosRegistryItem[] = [\n {\n id: '$__timeFilter(dateColumn)',\n name: '$__timeFilter(dateColumn)',\n text: '$__timeFilter',\n args: [COLUMN],\n type: MacroType.Filter,\n description:\n 'Will be replaced by a time range filter using the specified column name. For example, dateColumn BETWEEN FROM_UNIXTIME(1494410783) AND FROM_UNIXTIME(1494410983)',\n },\n {\n id: '$__timeFrom()',\n name: '$__timeFrom()',\n text: '$__timeFrom',\n args: [],\n type: MacroType.Filter,\n description:\n 'Will be replaced by the start of the currently active time selection. For example, FROM_UNIXTIME(1494410783)',\n },\n {\n id: '$__timeTo()',\n name: '$__timeTo()',\n text: '$__timeTo',\n args: [],\n type: MacroType.Filter,\n description:\n 'Will be replaced by the end of the currently active time selection. For example, FROM_UNIXTIME(1494410983)',\n },\n {\n id: \"$__timeGroup(dateColumn, '5m')\",\n name: \"$__timeGroup(dateColumn, '5m')\",\n text: '$__timeGroup',\n args: [COLUMN, RELATIVE_TIME_STRING],\n type: MacroType.Value,\n description:\n 'Will be replaced by an expression usable in GROUP BY clause. For example, *cast(cast(UNIX_TIMESTAMP(dateColumn)/(300) as signed)*300 as signed),*',\n },\n {\n id: '$__table',\n name: '$__table',\n text: '$__table',\n args: [],\n type: MacroType.Table,\n description: 'Will be replaced by the query table.',\n },\n {\n id: '$__column',\n name: '$__column',\n text: '$__column',\n args: [],\n type: MacroType.Column,\n description: 'Will be replaced by the query column.',\n },\n];\n\n/*\n {\n id: \"$__timeGroupAlias(dateColumn, '5m', fill)\",\n name: \"$__timeGroupAlias(dateColumn, '5m', fill)\",\n text: \"$__timeGroup\",\n args: [COLUMN, RELATIVE_TIME_STRING , FILL_TYPE],\n type: MacroType.Group,\n description:\n \"Will be replaced by an expression usable in GROUP BY clause. For example, *cast(cast(UNIX_TIMESTAMP(dateColumn)/(300) as signed)*300 as signed),* with an added column alias\",\n },\n {\n id: \"$__unixEpochFilter(dateColumn)\",\n name: \"$__unixEpochFilter(dateColumn)\",\n text: \"$__unixEpochFilter\",\n args: [COLUMN],\n type: MacroType.Filter,\n description:\n \"Will be replaced by a time range filter using the specified column name with times represented as Unix timestamp. For example, dateColumn > 1494410783 AND dateColumn < 1494497183\",\n },\n {\n id: \"$__unixEpochFrom()\",\n name: \"$__unixEpochFrom()\",\n text: \"$__unixEpochFrom\",\n args: [],\n type: MacroType.Value,\n description:\n \"Will be replaced by the start of the currently active time selection as Unix timestamp. For example, 1494410783\",\n },\n {\n id: \"$__unixEpochTo()\",\n name: \"$__unixEpochTo()\",\n text: \"$__unixEpochTo\",\n args: [],\n type: MacroType.Value,\n description:\n \"Will be replaced by the end of the currently active time selection as Unix timestamp. For example, 1494410783\",\n },\n {\n id: \"$__unixEpochNanoFilter(dateColumn)\",\n name: \"$__unixEpochNanoFilter(dateColumn)\",\n text: \"$__unixEpochNanoFilter\",\n args: [COLUMN],\n type: MacroType.Filter,\n description:\n \"Will be replaced by a time range filter using the specified column name with times represented as nanosecond timestamp. For example, dateColumn > 1494410783152415214 AND dateColumn < 1494497183142514872\",\n },\n {\n id: \"$__unixEpochNanoFrom()\",\n name: \"$__unixEpochNanoFrom()\",\n text: \"$__unixEpochNanoFrom\",\n args: [],\n type: MacroType.Value,\n description:\n \"Will be replaced by the start of the currently active time selection as nanosecond timestamp. For example, 1494410783152415214\",\n },\n {\n id: \"$__unixEpochNanoTo()\",\n name: \"$__unixEpochNanoTo()\",\n text: \"$__unixEpochNanoTo\",\n args: [],\n type: MacroType.Value,\n description:\n \"Will be replaced by the end of the currently active time selection as nanosecond timestamp. For example, 1494410783152415214\",\n },\n {\n id: \"$__unixEpochGroup(dateColumn, '5m')\",\n name: \"$__unixEpochGroup(dateColumn, '5m')\",\n text: \"$__unixEpochGroup\",\n args: [COLUMN, RELATIVE_TIME_STRING],\n type: MacroType.Group,\n description:\n \"Will be replaced by an expression usable in GROUP BY clause. For values stored as unix timestamp.\",\n },\n {\n id: \"$__unixEpochGroup(dateColumn, '5m', fill)\",\n name: \"$__unixEpochGroup(dateColumn, '5m', fill)\",\n text: \"$__unixEpochGroup\",\n args: [COLUMN, RELATIVE_TIME_STRING, FILL_TYPE],\n type: MacroType.Group,\n description:\n \"Will be replaced by an expression usable in GROUP BY clause. For values stored as unix timestamp. Missing values can be filled with 0, NULL or previous\",\n },\n {\n id: \"$__timeEpoch(dateColumn, )\",\n name: \"$__timeEpoch(dateColumn)\",\n text: \"$__timeEpoch\",\n args: [COLUMN],\n type: MacroType.Value,\n description:\n \"Will be replaced by an expression to convert to a UNIX timestamp and rename the column to time_sec. For example, UNIX_TIMESTAMP(dateColumn) as time_sec\",\n },\n {\n id: \"$__time(dateColumn)\",\n name: \"$__time(dateColumn)\",\n text: \"$__time\",\n args: [COLUMN],\n type: MacroType.Value,\n description:\n \"Will be replaced by an expression to convert to a UNIX timestamp and rename the column to time_sec. For example, UNIX_TIMESTAMP(dateColumn) as time_sec\",\n },\n {\n id: \"$__timeGroup(dateColumn, '5m', fill)\",\n name: \"$__timeGroup(dateColumn, '5m', fill)\",\n text: \"$__timeGroup\",\n args: [COLUMN, RELATIVE_TIME_STRING, FILL_TYPE],\n type: MacroType.Value,\n description:\n \"Will be replaced by an expression usable in GROUP BY clause. For example, *cast(cast(UNIX_TIMESTAMP(dateColumn)/(300) as signed)*300 as signed),* missing values can be filled with 0, NULL or previous\",\n },\n */\n"],"names":[],"mappings":";;;;AAGA,MAAM,MAAA,GAAS,UACb,
|
|
1
|
+
{"version":3,"file":"macros.js","sources":["../../../../../src/components/SQLEditor/standardSql/macros.ts"],"sourcesContent":["import { MacroType } from '../types';\nimport { type MacrosRegistryItem } from './types';\n\nconst COLUMN = 'column',\n RELATIVE_TIME_STRING = \"'5m'\";\n\nexport const MACROS: MacrosRegistryItem[] = [\n {\n id: '$__timeFilter(dateColumn)',\n name: '$__timeFilter(dateColumn)',\n text: '$__timeFilter',\n args: [COLUMN],\n type: MacroType.Filter,\n description:\n 'Will be replaced by a time range filter using the specified column name. For example, dateColumn BETWEEN FROM_UNIXTIME(1494410783) AND FROM_UNIXTIME(1494410983)',\n },\n {\n id: '$__timeFrom()',\n name: '$__timeFrom()',\n text: '$__timeFrom',\n args: [],\n type: MacroType.Filter,\n description:\n 'Will be replaced by the start of the currently active time selection. For example, FROM_UNIXTIME(1494410783)',\n },\n {\n id: '$__timeTo()',\n name: '$__timeTo()',\n text: '$__timeTo',\n args: [],\n type: MacroType.Filter,\n description:\n 'Will be replaced by the end of the currently active time selection. For example, FROM_UNIXTIME(1494410983)',\n },\n {\n id: \"$__timeGroup(dateColumn, '5m')\",\n name: \"$__timeGroup(dateColumn, '5m')\",\n text: '$__timeGroup',\n args: [COLUMN, RELATIVE_TIME_STRING],\n type: MacroType.Value,\n description:\n 'Will be replaced by an expression usable in GROUP BY clause. For example, *cast(cast(UNIX_TIMESTAMP(dateColumn)/(300) as signed)*300 as signed),*',\n },\n {\n id: '$__table',\n name: '$__table',\n text: '$__table',\n args: [],\n type: MacroType.Table,\n description: 'Will be replaced by the query table.',\n },\n {\n id: '$__column',\n name: '$__column',\n text: '$__column',\n args: [],\n type: MacroType.Column,\n description: 'Will be replaced by the query column.',\n },\n];\n\n/*\n {\n id: \"$__timeGroupAlias(dateColumn, '5m', fill)\",\n name: \"$__timeGroupAlias(dateColumn, '5m', fill)\",\n text: \"$__timeGroup\",\n args: [COLUMN, RELATIVE_TIME_STRING , FILL_TYPE],\n type: MacroType.Group,\n description:\n \"Will be replaced by an expression usable in GROUP BY clause. For example, *cast(cast(UNIX_TIMESTAMP(dateColumn)/(300) as signed)*300 as signed),* with an added column alias\",\n },\n {\n id: \"$__unixEpochFilter(dateColumn)\",\n name: \"$__unixEpochFilter(dateColumn)\",\n text: \"$__unixEpochFilter\",\n args: [COLUMN],\n type: MacroType.Filter,\n description:\n \"Will be replaced by a time range filter using the specified column name with times represented as Unix timestamp. For example, dateColumn > 1494410783 AND dateColumn < 1494497183\",\n },\n {\n id: \"$__unixEpochFrom()\",\n name: \"$__unixEpochFrom()\",\n text: \"$__unixEpochFrom\",\n args: [],\n type: MacroType.Value,\n description:\n \"Will be replaced by the start of the currently active time selection as Unix timestamp. For example, 1494410783\",\n },\n {\n id: \"$__unixEpochTo()\",\n name: \"$__unixEpochTo()\",\n text: \"$__unixEpochTo\",\n args: [],\n type: MacroType.Value,\n description:\n \"Will be replaced by the end of the currently active time selection as Unix timestamp. For example, 1494410783\",\n },\n {\n id: \"$__unixEpochNanoFilter(dateColumn)\",\n name: \"$__unixEpochNanoFilter(dateColumn)\",\n text: \"$__unixEpochNanoFilter\",\n args: [COLUMN],\n type: MacroType.Filter,\n description:\n \"Will be replaced by a time range filter using the specified column name with times represented as nanosecond timestamp. For example, dateColumn > 1494410783152415214 AND dateColumn < 1494497183142514872\",\n },\n {\n id: \"$__unixEpochNanoFrom()\",\n name: \"$__unixEpochNanoFrom()\",\n text: \"$__unixEpochNanoFrom\",\n args: [],\n type: MacroType.Value,\n description:\n \"Will be replaced by the start of the currently active time selection as nanosecond timestamp. For example, 1494410783152415214\",\n },\n {\n id: \"$__unixEpochNanoTo()\",\n name: \"$__unixEpochNanoTo()\",\n text: \"$__unixEpochNanoTo\",\n args: [],\n type: MacroType.Value,\n description:\n \"Will be replaced by the end of the currently active time selection as nanosecond timestamp. For example, 1494410783152415214\",\n },\n {\n id: \"$__unixEpochGroup(dateColumn, '5m')\",\n name: \"$__unixEpochGroup(dateColumn, '5m')\",\n text: \"$__unixEpochGroup\",\n args: [COLUMN, RELATIVE_TIME_STRING],\n type: MacroType.Group,\n description:\n \"Will be replaced by an expression usable in GROUP BY clause. For values stored as unix timestamp.\",\n },\n {\n id: \"$__unixEpochGroup(dateColumn, '5m', fill)\",\n name: \"$__unixEpochGroup(dateColumn, '5m', fill)\",\n text: \"$__unixEpochGroup\",\n args: [COLUMN, RELATIVE_TIME_STRING, FILL_TYPE],\n type: MacroType.Group,\n description:\n \"Will be replaced by an expression usable in GROUP BY clause. For values stored as unix timestamp. Missing values can be filled with 0, NULL or previous\",\n },\n {\n id: \"$__timeEpoch(dateColumn, )\",\n name: \"$__timeEpoch(dateColumn)\",\n text: \"$__timeEpoch\",\n args: [COLUMN],\n type: MacroType.Value,\n description:\n \"Will be replaced by an expression to convert to a UNIX timestamp and rename the column to time_sec. For example, UNIX_TIMESTAMP(dateColumn) as time_sec\",\n },\n {\n id: \"$__time(dateColumn)\",\n name: \"$__time(dateColumn)\",\n text: \"$__time\",\n args: [COLUMN],\n type: MacroType.Value,\n description:\n \"Will be replaced by an expression to convert to a UNIX timestamp and rename the column to time_sec. For example, UNIX_TIMESTAMP(dateColumn) as time_sec\",\n },\n {\n id: \"$__timeGroup(dateColumn, '5m', fill)\",\n name: \"$__timeGroup(dateColumn, '5m', fill)\",\n text: \"$__timeGroup\",\n args: [COLUMN, RELATIVE_TIME_STRING, FILL_TYPE],\n type: MacroType.Value,\n description:\n \"Will be replaced by an expression usable in GROUP BY clause. For example, *cast(cast(UNIX_TIMESTAMP(dateColumn)/(300) as signed)*300 as signed),* missing values can be filled with 0, NULL or previous\",\n },\n */\n"],"names":[],"mappings":";;;;AAGA,MAAM,MAAA,GAAS,UACb,oBAAA,GAAuB,MAAA;AAElB,MAAM,MAAA,GAA+B;AAAA,EAC1C;AAAA,IACE,EAAA,EAAI,2BAAA;AAAA,IACJ,IAAA,EAAM,2BAAA;AAAA,IACN,IAAA,EAAM,eAAA;AAAA,IACN,IAAA,EAAM,CAAC,MAAM,CAAA;AAAA,IACb,MAAM,SAAA,CAAU,MAAA;AAAA,IAChB,WAAA,EACE;AAAA,GACJ;AAAA,EACA;AAAA,IACE,EAAA,EAAI,eAAA;AAAA,IACJ,IAAA,EAAM,eAAA;AAAA,IACN,IAAA,EAAM,aAAA;AAAA,IACN,MAAM,EAAC;AAAA,IACP,MAAM,SAAA,CAAU,MAAA;AAAA,IAChB,WAAA,EACE;AAAA,GACJ;AAAA,EACA;AAAA,IACE,EAAA,EAAI,aAAA;AAAA,IACJ,IAAA,EAAM,aAAA;AAAA,IACN,IAAA,EAAM,WAAA;AAAA,IACN,MAAM,EAAC;AAAA,IACP,MAAM,SAAA,CAAU,MAAA;AAAA,IAChB,WAAA,EACE;AAAA,GACJ;AAAA,EACA;AAAA,IACE,EAAA,EAAI,gCAAA;AAAA,IACJ,IAAA,EAAM,gCAAA;AAAA,IACN,IAAA,EAAM,cAAA;AAAA,IACN,IAAA,EAAM,CAAC,MAAA,EAAQ,oBAAoB,CAAA;AAAA,IACnC,MAAM,SAAA,CAAU,KAAA;AAAA,IAChB,WAAA,EACE;AAAA,GACJ;AAAA,EACA;AAAA,IACE,EAAA,EAAI,UAAA;AAAA,IACJ,IAAA,EAAM,UAAA;AAAA,IACN,IAAA,EAAM,UAAA;AAAA,IACN,MAAM,EAAC;AAAA,IACP,MAAM,SAAA,CAAU,KAAA;AAAA,IAChB,WAAA,EAAa;AAAA,GACf;AAAA,EACA;AAAA,IACE,EAAA,EAAI,WAAA;AAAA,IACJ,IAAA,EAAM,WAAA;AAAA,IACN,IAAA,EAAM,WAAA;AAAA,IACN,MAAM,EAAC;AAAA,IACP,MAAM,SAAA,CAAU,MAAA;AAAA,IAChB,WAAA,EAAa;AAAA;AAEjB;;;;"}
|
|
@@ -10,7 +10,7 @@ function getStandardSQLCompletionProvider(monaco, language) {
|
|
|
10
10
|
provider.supportedFunctions = () => language.builtinFunctions.map((f) => ({ id: f, name: f }));
|
|
11
11
|
}
|
|
12
12
|
const operators = [];
|
|
13
|
-
if ((_a = language == null ?
|
|
13
|
+
if ((_a = language == null ? void 0 : language.comparisonOperators) == null ? void 0 : _a.length) {
|
|
14
14
|
operators.push(
|
|
15
15
|
...language.comparisonOperators.map((f) => ({
|
|
16
16
|
id: f.toLocaleLowerCase(),
|
|
@@ -20,7 +20,7 @@ function getStandardSQLCompletionProvider(monaco, language) {
|
|
|
20
20
|
);
|
|
21
21
|
}
|
|
22
22
|
language.logicalOperators = (_b = language.logicalOperators) != null ? _b : language.operators;
|
|
23
|
-
if ((_c = language == null ?
|
|
23
|
+
if ((_c = language == null ? void 0 : language.logicalOperators) == null ? void 0 : _c.length) {
|
|
24
24
|
operators.push(
|
|
25
25
|
...language.logicalOperators.map((f) => ({ id: f.toLocaleLowerCase(), operator: f, type: OperatorType.Logical }))
|
|
26
26
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standardSQLCompletionItemProvider.js","sources":["../../../../../src/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.ts"],"sourcesContent":["import { type Monaco } from '@grafana/ui';\nimport { type Operator, OperatorType, type SQLCompletionItemProvider } from '../types';\nimport { MACROS } from './macros';\nimport { type SQLMonarchLanguage } from './types';\n\nexport function getStandardSQLCompletionProvider(\n monaco: Monaco,\n language: SQLMonarchLanguage\n): SQLCompletionItemProvider {\n const provider: SQLCompletionItemProvider = { triggerCharacters: ['.', ' ', '$', ',', '(', \"'\"] };\n if (language && Array.isArray(language.builtinFunctions)) {\n provider.supportedFunctions = () => language.builtinFunctions!.map((f) => ({ id: f, name: f }));\n }\n\n const operators: Operator[] = [];\n if (language?.comparisonOperators?.length) {\n operators.push(\n ...language.comparisonOperators.map((f) => ({\n id: f.toLocaleLowerCase(),\n operator: f,\n type: OperatorType.Comparison,\n }))\n );\n }\n\n // some languages in the monaco language registry don't specify logical operators, only operators. if so, suggest them instead\n language.logicalOperators = language.logicalOperators ?? language.operators;\n if (language?.logicalOperators?.length) {\n operators.push(\n ...language.logicalOperators.map((f) => ({ id: f.toLocaleLowerCase(), operator: f, type: OperatorType.Logical }))\n );\n }\n\n provider.supportedOperators = () => operators;\n\n provider.supportedMacros = () => MACROS;\n\n return provider;\n}\n"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"standardSQLCompletionItemProvider.js","sources":["../../../../../src/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.ts"],"sourcesContent":["import { type Monaco } from '@grafana/ui';\nimport { type Operator, OperatorType, type SQLCompletionItemProvider } from '../types';\nimport { MACROS } from './macros';\nimport { type SQLMonarchLanguage } from './types';\n\nexport function getStandardSQLCompletionProvider(\n monaco: Monaco,\n language: SQLMonarchLanguage\n): SQLCompletionItemProvider {\n const provider: SQLCompletionItemProvider = { triggerCharacters: ['.', ' ', '$', ',', '(', \"'\"] };\n if (language && Array.isArray(language.builtinFunctions)) {\n provider.supportedFunctions = () => language.builtinFunctions!.map((f) => ({ id: f, name: f }));\n }\n\n const operators: Operator[] = [];\n if (language?.comparisonOperators?.length) {\n operators.push(\n ...language.comparisonOperators.map((f) => ({\n id: f.toLocaleLowerCase(),\n operator: f,\n type: OperatorType.Comparison,\n }))\n );\n }\n\n // some languages in the monaco language registry don't specify logical operators, only operators. if so, suggest them instead\n language.logicalOperators = language.logicalOperators ?? language.operators;\n if (language?.logicalOperators?.length) {\n operators.push(\n ...language.logicalOperators.map((f) => ({ id: f.toLocaleLowerCase(), operator: f, type: OperatorType.Logical }))\n );\n }\n\n provider.supportedOperators = () => operators;\n\n provider.supportedMacros = () => MACROS;\n\n return provider;\n}\n"],"names":[],"mappings":";;;;;AAKO,SAAS,gCAAA,CACd,QACA,QAAA,EAC2B;AAR7B,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AASE,EAAA,MAAM,QAAA,GAAsC,EAAE,iBAAA,EAAmB,CAAC,GAAA,EAAK,KAAK,GAAA,EAAK,GAAA,EAAK,GAAA,EAAK,GAAG,CAAA,EAAE;AAChG,EAAA,IAAI,QAAA,IAAY,KAAA,CAAM,OAAA,CAAQ,QAAA,CAAS,gBAAgB,CAAA,EAAG;AACxD,IAAA,QAAA,CAAS,kBAAA,GAAqB,MAAM,QAAA,CAAS,gBAAA,CAAkB,GAAA,CAAI,CAAC,CAAA,MAAO,EAAE,EAAA,EAAI,CAAA,EAAG,IAAA,EAAM,CAAA,EAAE,CAAE,CAAA;AAAA,EAChG;AAEA,EAAA,MAAM,YAAwB,EAAC;AAC/B,EAAA,IAAA,CAAI,EAAA,GAAA,QAAA,IAAA,IAAA,GAAA,MAAA,GAAA,QAAA,CAAU,mBAAA,KAAV,IAAA,GAAA,MAAA,GAAA,EAAA,CAA+B,MAAA,EAAQ;AACzC,IAAA,SAAA,CAAU,IAAA;AAAA,MACR,GAAG,QAAA,CAAS,mBAAA,CAAoB,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,QAC1C,EAAA,EAAI,EAAE,iBAAA,EAAkB;AAAA,QACxB,QAAA,EAAU,CAAA;AAAA,QACV,MAAM,YAAA,CAAa;AAAA,OACrB,CAAE;AAAA,KACJ;AAAA,EACF;AAGA,EAAA,QAAA,CAAS,gBAAA,GAAA,CAAmB,EAAA,GAAA,QAAA,CAAS,gBAAA,KAAT,IAAA,GAAA,EAAA,GAA6B,QAAA,CAAS,SAAA;AAClE,EAAA,IAAA,CAAI,EAAA,GAAA,QAAA,IAAA,IAAA,GAAA,MAAA,GAAA,QAAA,CAAU,gBAAA,KAAV,IAAA,GAAA,MAAA,GAAA,EAAA,CAA4B,MAAA,EAAQ;AACtC,IAAA,SAAA,CAAU,IAAA;AAAA,MACR,GAAG,QAAA,CAAS,gBAAA,CAAiB,GAAA,CAAI,CAAC,OAAO,EAAE,EAAA,EAAI,CAAA,CAAE,iBAAA,IAAqB,QAAA,EAAU,CAAA,EAAG,IAAA,EAAM,YAAA,CAAa,SAAQ,CAAE;AAAA,KAClH;AAAA,EACF;AAEA,EAAA,QAAA,CAAS,qBAAqB,MAAM,SAAA;AAEpC,EAAA,QAAA,CAAS,kBAAkB,MAAM,MAAA;AAEjC,EAAA,OAAO,QAAA;AACT;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import '@grafana/data';
|
|
2
2
|
import { getTemplateSrv } from '@grafana/runtime';
|
|
3
3
|
import { TRIGGER_SUGGEST } from '../utils/commands.js';
|
|
4
|
-
import { SuggestionKind,
|
|
4
|
+
import { SuggestionKind, CompletionItemPriority, CompletionItemKind, CompletionItemInsertTextRule, MacroType, OperatorType } from '../types.js';
|
|
5
5
|
import { ASC, DESC } from './language.js';
|
|
6
6
|
import '@grafana/ui';
|
|
7
7
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standardSuggestionsRegistry.js","sources":["../../../../../src/components/SQLEditor/standardSql/standardSuggestionsRegistry.ts"],"sourcesContent":["import { type Registry } from '@grafana/data';\nimport { getTemplateSrv } from '@grafana/runtime';\nimport { TRIGGER_SUGGEST } from '../utils/commands';\nimport {\n CompletionItemInsertTextRule,\n CompletionItemKind,\n CompletionItemPriority,\n MacroType,\n OperatorType,\n SuggestionKind,\n} from '../types';\nimport { ASC, DESC } from './language';\nimport {\n type FunctionsRegistryItem,\n type MacrosRegistryItem,\n type OperatorsRegistryItem,\n type SuggestionsRegistryItem,\n} from './types';\n\n/**\n * This registry glues particular SuggestionKind with an async function that provides completion items for it.\n * To add a new suggestion kind, SQLEditor should be configured with a provider that implements customSuggestionKinds.\n */\n\nexport const initStandardSuggestions =\n (\n functions: Registry<FunctionsRegistryItem>,\n operators: Registry<OperatorsRegistryItem>,\n macros: Registry<MacrosRegistryItem>\n ) =>\n (): SuggestionsRegistryItem[] => [\n {\n id: SuggestionKind.SelectKeyword,\n name: SuggestionKind.SelectKeyword,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: `SELECT <column>`,\n insertText: `SELECT $0`,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Snippet,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n },\n {\n label: `SELECT <column> FROM <table>`,\n insertText: `SELECT $2 FROM $1`,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Snippet,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n },\n ]),\n },\n {\n id: SuggestionKind.TemplateVariables,\n name: SuggestionKind.TemplateVariables,\n suggestions: (_, m) => {\n const templateSrv = getTemplateSrv();\n if (!templateSrv) {\n return Promise.resolve([]);\n }\n\n return Promise.resolve(\n templateSrv.getVariables().map((variable) => {\n const label = `\\$${variable.name}`;\n const val = templateSrv.replace(label);\n return {\n label,\n detail: `(Template Variable) ${val}`,\n kind: CompletionItemKind.Snippet,\n documentation: `(Template Variable) ${val}`,\n insertText: `\\\\$${variable.name} `,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Low,\n };\n })\n );\n },\n },\n {\n id: SuggestionKind.SelectMacro,\n name: SuggestionKind.SelectMacro,\n suggestions: (_, m) =>\n Promise.resolve([\n ...macros\n .list()\n .filter((m) => m.type === MacroType.Value || m.type === MacroType.Column)\n .map(createMacroSuggestionItem),\n ]),\n },\n {\n id: SuggestionKind.TableMacro,\n name: SuggestionKind.TableMacro,\n suggestions: (_, m) =>\n Promise.resolve([\n ...macros\n .list()\n .filter((m) => m.type === MacroType.Table)\n .map(createMacroSuggestionItem),\n ]),\n },\n {\n id: SuggestionKind.GroupMacro,\n name: SuggestionKind.GroupMacro,\n suggestions: (_, m) =>\n Promise.resolve([\n ...macros\n .list()\n .filter((m) => m.type === MacroType.Group)\n .map(createMacroSuggestionItem),\n ]),\n },\n {\n id: SuggestionKind.FilterMacro,\n name: SuggestionKind.FilterMacro,\n suggestions: (_, m) =>\n Promise.resolve([\n ...macros\n .list()\n .filter((m) => m.type === MacroType.Filter)\n .map(createMacroSuggestionItem),\n ]),\n },\n {\n id: SuggestionKind.WithKeyword,\n name: SuggestionKind.WithKeyword,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: `WITH <alias> AS ( ... )`,\n insertText: `WITH $1 AS ( $2 )`,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Snippet,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n },\n ]),\n },\n {\n id: SuggestionKind.StarWildCard,\n name: SuggestionKind.StarWildCard,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: '*',\n insertText: `* $0`,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Field,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.High,\n },\n ]),\n },\n {\n id: SuggestionKind.FunctionsWithArguments,\n name: SuggestionKind.FunctionsWithArguments,\n suggestions: (_, m) =>\n Promise.resolve([\n ...functions.list().map((f) => ({\n label: f.name,\n insertText: `${f.name}($0)`,\n documentation: f.description,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Function,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumLow,\n })),\n ]),\n },\n {\n id: SuggestionKind.FunctionsWithoutArguments,\n name: SuggestionKind.FunctionsWithoutArguments,\n suggestions: (_, m) =>\n Promise.resolve([\n ...functions.list().map((f) => ({\n label: f.name,\n insertText: `${f.name}()`,\n documentation: f.description,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Function,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumHigh,\n })),\n ]),\n },\n {\n id: SuggestionKind.FromKeyword,\n name: SuggestionKind.FromKeyword,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: 'FROM',\n insertText: `FROM $0`,\n command: TRIGGER_SUGGEST,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Keyword,\n },\n ]),\n },\n {\n id: SuggestionKind.Schemas,\n name: SuggestionKind.Schemas,\n suggestions: (_, m) => Promise.resolve([]),\n },\n {\n id: SuggestionKind.Tables,\n name: SuggestionKind.Tables,\n suggestions: (_, m) => Promise.resolve([]),\n },\n {\n id: SuggestionKind.Columns,\n name: SuggestionKind.Columns,\n suggestions: (_, m) => Promise.resolve([]),\n },\n {\n id: SuggestionKind.LogicalOperators,\n name: SuggestionKind.LogicalOperators,\n suggestions: (_, m) =>\n Promise.resolve(\n operators\n .list()\n .filter((o) => o.type === OperatorType.Logical)\n .map((o) => ({\n label: o.operator,\n insertText: `${o.operator} `,\n documentation: o.description,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumHigh,\n kind: CompletionItemKind.Operator,\n }))\n ),\n },\n {\n id: SuggestionKind.WhereKeyword,\n name: SuggestionKind.WhereKeyword,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: 'WHERE',\n insertText: `WHERE `,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumHigh,\n kind: CompletionItemKind.Keyword,\n },\n ]),\n },\n {\n id: SuggestionKind.ComparisonOperators,\n name: SuggestionKind.ComparisonOperators,\n suggestions: (_, m) =>\n Promise.resolve([\n ...operators\n .list()\n .filter((o) => o.type === OperatorType.Comparison)\n .map((o) => ({\n label: o.operator,\n insertText: `${o.operator} `,\n documentation: o.description,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumHigh,\n kind: CompletionItemKind.Operator,\n })),\n {\n label: 'IN (...)',\n insertText: `IN ( $0 )`,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n kind: CompletionItemKind.Operator,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n },\n {\n label: 'NOT IN (...)',\n insertText: `NOT IN ( $0 )`,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n kind: CompletionItemKind.Operator,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n },\n {\n label: 'IS',\n insertText: `IS`,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n kind: CompletionItemKind.Operator,\n },\n {\n label: 'IS NOT',\n insertText: `IS NOT`,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n kind: CompletionItemKind.Operator,\n },\n ]),\n },\n {\n id: SuggestionKind.GroupByKeywords,\n name: SuggestionKind.GroupByKeywords,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: 'GROUP BY',\n insertText: `GROUP BY `,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumHigh,\n kind: CompletionItemKind.Keyword,\n },\n ]),\n },\n {\n id: SuggestionKind.OrderByKeywords,\n name: SuggestionKind.OrderByKeywords,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: 'ORDER BY',\n insertText: `ORDER BY `,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n kind: CompletionItemKind.Keyword,\n },\n {\n label: 'ORDER BY(ascending)',\n insertText: `ORDER BY $1 ASC `,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumLow,\n kind: CompletionItemKind.Snippet,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n },\n {\n label: 'ORDER BY(descending)',\n insertText: `ORDER BY $1 DESC`,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumLow,\n kind: CompletionItemKind.Snippet,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n },\n ]),\n },\n {\n id: SuggestionKind.LimitKeyword,\n name: SuggestionKind.LimitKeyword,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: 'LIMIT',\n insertText: `LIMIT `,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumLow,\n kind: CompletionItemKind.Keyword,\n },\n ]),\n },\n {\n id: SuggestionKind.SortOrderDirectionKeyword,\n name: SuggestionKind.SortOrderDirectionKeyword,\n suggestions: (_, m) =>\n Promise.resolve(\n [ASC, DESC].map((o) => ({\n label: o,\n insertText: `${o} `,\n command: TRIGGER_SUGGEST,\n kind: CompletionItemKind.Keyword,\n }))\n ),\n },\n {\n id: SuggestionKind.NotKeyword,\n name: SuggestionKind.NotKeyword,\n suggestions: () =>\n Promise.resolve([\n {\n label: 'NOT',\n insertText: 'NOT',\n command: TRIGGER_SUGGEST,\n kind: CompletionItemKind.Keyword,\n sortText: CompletionItemPriority.High,\n },\n ]),\n },\n {\n id: SuggestionKind.BoolValues,\n name: SuggestionKind.BoolValues,\n suggestions: () =>\n Promise.resolve(\n ['TRUE', 'FALSE'].map((o) => ({\n label: o,\n insertText: `${o}`,\n command: TRIGGER_SUGGEST,\n kind: CompletionItemKind.Keyword,\n sortText: CompletionItemPriority.Medium,\n }))\n ),\n },\n {\n id: SuggestionKind.NullValue,\n name: SuggestionKind.NullValue,\n suggestions: () =>\n Promise.resolve(\n ['NULL'].map((o) => ({\n label: o,\n insertText: `${o}`,\n command: TRIGGER_SUGGEST,\n kind: CompletionItemKind.Keyword,\n sortText: CompletionItemPriority.Low,\n }))\n ),\n },\n ];\n\nfunction createMacroSuggestionItem(m: MacrosRegistryItem) {\n return {\n label: m.name,\n insertText: `${'\\\\' + m.text}${argsString(m.args)} `,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Snippet,\n documentation: m.description,\n command: TRIGGER_SUGGEST,\n };\n}\n\nfunction argsString(args?: string[]): string {\n if (!args) {\n return '()';\n }\n return '('.concat(args.map((t, i) => `\\${${i}:${t}}`).join(', ')).concat(')');\n}\n"],"names":["m"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"standardSuggestionsRegistry.js","sources":["../../../../../src/components/SQLEditor/standardSql/standardSuggestionsRegistry.ts"],"sourcesContent":["import { type Registry } from '@grafana/data';\nimport { getTemplateSrv } from '@grafana/runtime';\nimport { TRIGGER_SUGGEST } from '../utils/commands';\nimport {\n CompletionItemInsertTextRule,\n CompletionItemKind,\n CompletionItemPriority,\n MacroType,\n OperatorType,\n SuggestionKind,\n} from '../types';\nimport { ASC, DESC } from './language';\nimport {\n type FunctionsRegistryItem,\n type MacrosRegistryItem,\n type OperatorsRegistryItem,\n type SuggestionsRegistryItem,\n} from './types';\n\n/**\n * This registry glues particular SuggestionKind with an async function that provides completion items for it.\n * To add a new suggestion kind, SQLEditor should be configured with a provider that implements customSuggestionKinds.\n */\n\nexport const initStandardSuggestions =\n (\n functions: Registry<FunctionsRegistryItem>,\n operators: Registry<OperatorsRegistryItem>,\n macros: Registry<MacrosRegistryItem>\n ) =>\n (): SuggestionsRegistryItem[] => [\n {\n id: SuggestionKind.SelectKeyword,\n name: SuggestionKind.SelectKeyword,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: `SELECT <column>`,\n insertText: `SELECT $0`,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Snippet,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n },\n {\n label: `SELECT <column> FROM <table>`,\n insertText: `SELECT $2 FROM $1`,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Snippet,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n },\n ]),\n },\n {\n id: SuggestionKind.TemplateVariables,\n name: SuggestionKind.TemplateVariables,\n suggestions: (_, m) => {\n const templateSrv = getTemplateSrv();\n if (!templateSrv) {\n return Promise.resolve([]);\n }\n\n return Promise.resolve(\n templateSrv.getVariables().map((variable) => {\n const label = `\\$${variable.name}`;\n const val = templateSrv.replace(label);\n return {\n label,\n detail: `(Template Variable) ${val}`,\n kind: CompletionItemKind.Snippet,\n documentation: `(Template Variable) ${val}`,\n insertText: `\\\\$${variable.name} `,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Low,\n };\n })\n );\n },\n },\n {\n id: SuggestionKind.SelectMacro,\n name: SuggestionKind.SelectMacro,\n suggestions: (_, m) =>\n Promise.resolve([\n ...macros\n .list()\n .filter((m) => m.type === MacroType.Value || m.type === MacroType.Column)\n .map(createMacroSuggestionItem),\n ]),\n },\n {\n id: SuggestionKind.TableMacro,\n name: SuggestionKind.TableMacro,\n suggestions: (_, m) =>\n Promise.resolve([\n ...macros\n .list()\n .filter((m) => m.type === MacroType.Table)\n .map(createMacroSuggestionItem),\n ]),\n },\n {\n id: SuggestionKind.GroupMacro,\n name: SuggestionKind.GroupMacro,\n suggestions: (_, m) =>\n Promise.resolve([\n ...macros\n .list()\n .filter((m) => m.type === MacroType.Group)\n .map(createMacroSuggestionItem),\n ]),\n },\n {\n id: SuggestionKind.FilterMacro,\n name: SuggestionKind.FilterMacro,\n suggestions: (_, m) =>\n Promise.resolve([\n ...macros\n .list()\n .filter((m) => m.type === MacroType.Filter)\n .map(createMacroSuggestionItem),\n ]),\n },\n {\n id: SuggestionKind.WithKeyword,\n name: SuggestionKind.WithKeyword,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: `WITH <alias> AS ( ... )`,\n insertText: `WITH $1 AS ( $2 )`,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Snippet,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n },\n ]),\n },\n {\n id: SuggestionKind.StarWildCard,\n name: SuggestionKind.StarWildCard,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: '*',\n insertText: `* $0`,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Field,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.High,\n },\n ]),\n },\n {\n id: SuggestionKind.FunctionsWithArguments,\n name: SuggestionKind.FunctionsWithArguments,\n suggestions: (_, m) =>\n Promise.resolve([\n ...functions.list().map((f) => ({\n label: f.name,\n insertText: `${f.name}($0)`,\n documentation: f.description,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Function,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumLow,\n })),\n ]),\n },\n {\n id: SuggestionKind.FunctionsWithoutArguments,\n name: SuggestionKind.FunctionsWithoutArguments,\n suggestions: (_, m) =>\n Promise.resolve([\n ...functions.list().map((f) => ({\n label: f.name,\n insertText: `${f.name}()`,\n documentation: f.description,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Function,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumHigh,\n })),\n ]),\n },\n {\n id: SuggestionKind.FromKeyword,\n name: SuggestionKind.FromKeyword,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: 'FROM',\n insertText: `FROM $0`,\n command: TRIGGER_SUGGEST,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Keyword,\n },\n ]),\n },\n {\n id: SuggestionKind.Schemas,\n name: SuggestionKind.Schemas,\n suggestions: (_, m) => Promise.resolve([]),\n },\n {\n id: SuggestionKind.Tables,\n name: SuggestionKind.Tables,\n suggestions: (_, m) => Promise.resolve([]),\n },\n {\n id: SuggestionKind.Columns,\n name: SuggestionKind.Columns,\n suggestions: (_, m) => Promise.resolve([]),\n },\n {\n id: SuggestionKind.LogicalOperators,\n name: SuggestionKind.LogicalOperators,\n suggestions: (_, m) =>\n Promise.resolve(\n operators\n .list()\n .filter((o) => o.type === OperatorType.Logical)\n .map((o) => ({\n label: o.operator,\n insertText: `${o.operator} `,\n documentation: o.description,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumHigh,\n kind: CompletionItemKind.Operator,\n }))\n ),\n },\n {\n id: SuggestionKind.WhereKeyword,\n name: SuggestionKind.WhereKeyword,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: 'WHERE',\n insertText: `WHERE `,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumHigh,\n kind: CompletionItemKind.Keyword,\n },\n ]),\n },\n {\n id: SuggestionKind.ComparisonOperators,\n name: SuggestionKind.ComparisonOperators,\n suggestions: (_, m) =>\n Promise.resolve([\n ...operators\n .list()\n .filter((o) => o.type === OperatorType.Comparison)\n .map((o) => ({\n label: o.operator,\n insertText: `${o.operator} `,\n documentation: o.description,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumHigh,\n kind: CompletionItemKind.Operator,\n })),\n {\n label: 'IN (...)',\n insertText: `IN ( $0 )`,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n kind: CompletionItemKind.Operator,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n },\n {\n label: 'NOT IN (...)',\n insertText: `NOT IN ( $0 )`,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n kind: CompletionItemKind.Operator,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n },\n {\n label: 'IS',\n insertText: `IS`,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n kind: CompletionItemKind.Operator,\n },\n {\n label: 'IS NOT',\n insertText: `IS NOT`,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n kind: CompletionItemKind.Operator,\n },\n ]),\n },\n {\n id: SuggestionKind.GroupByKeywords,\n name: SuggestionKind.GroupByKeywords,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: 'GROUP BY',\n insertText: `GROUP BY `,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumHigh,\n kind: CompletionItemKind.Keyword,\n },\n ]),\n },\n {\n id: SuggestionKind.OrderByKeywords,\n name: SuggestionKind.OrderByKeywords,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: 'ORDER BY',\n insertText: `ORDER BY `,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.Medium,\n kind: CompletionItemKind.Keyword,\n },\n {\n label: 'ORDER BY(ascending)',\n insertText: `ORDER BY $1 ASC `,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumLow,\n kind: CompletionItemKind.Snippet,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n },\n {\n label: 'ORDER BY(descending)',\n insertText: `ORDER BY $1 DESC`,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumLow,\n kind: CompletionItemKind.Snippet,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n },\n ]),\n },\n {\n id: SuggestionKind.LimitKeyword,\n name: SuggestionKind.LimitKeyword,\n suggestions: (_, m) =>\n Promise.resolve([\n {\n label: 'LIMIT',\n insertText: `LIMIT `,\n command: TRIGGER_SUGGEST,\n sortText: CompletionItemPriority.MediumLow,\n kind: CompletionItemKind.Keyword,\n },\n ]),\n },\n {\n id: SuggestionKind.SortOrderDirectionKeyword,\n name: SuggestionKind.SortOrderDirectionKeyword,\n suggestions: (_, m) =>\n Promise.resolve(\n [ASC, DESC].map((o) => ({\n label: o,\n insertText: `${o} `,\n command: TRIGGER_SUGGEST,\n kind: CompletionItemKind.Keyword,\n }))\n ),\n },\n {\n id: SuggestionKind.NotKeyword,\n name: SuggestionKind.NotKeyword,\n suggestions: () =>\n Promise.resolve([\n {\n label: 'NOT',\n insertText: 'NOT',\n command: TRIGGER_SUGGEST,\n kind: CompletionItemKind.Keyword,\n sortText: CompletionItemPriority.High,\n },\n ]),\n },\n {\n id: SuggestionKind.BoolValues,\n name: SuggestionKind.BoolValues,\n suggestions: () =>\n Promise.resolve(\n ['TRUE', 'FALSE'].map((o) => ({\n label: o,\n insertText: `${o}`,\n command: TRIGGER_SUGGEST,\n kind: CompletionItemKind.Keyword,\n sortText: CompletionItemPriority.Medium,\n }))\n ),\n },\n {\n id: SuggestionKind.NullValue,\n name: SuggestionKind.NullValue,\n suggestions: () =>\n Promise.resolve(\n ['NULL'].map((o) => ({\n label: o,\n insertText: `${o}`,\n command: TRIGGER_SUGGEST,\n kind: CompletionItemKind.Keyword,\n sortText: CompletionItemPriority.Low,\n }))\n ),\n },\n ];\n\nfunction createMacroSuggestionItem(m: MacrosRegistryItem) {\n return {\n label: m.name,\n insertText: `${'\\\\' + m.text}${argsString(m.args)} `,\n insertTextRules: CompletionItemInsertTextRule.InsertAsSnippet,\n kind: CompletionItemKind.Snippet,\n documentation: m.description,\n command: TRIGGER_SUGGEST,\n };\n}\n\nfunction argsString(args?: string[]): string {\n if (!args) {\n return '()';\n }\n return '('.concat(args.map((t, i) => `\\${${i}:${t}}`).join(', ')).concat(')');\n}\n"],"names":["m"],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { StatementPosition
|
|
1
|
+
import { StatementPosition } from '../types.js';
|
|
2
2
|
import { SELECT, WITH, AS, WHERE, BY, GROUP, FROM, AND, ORDER, DESC, ASC } from './language.js';
|
|
3
3
|
import '@grafana/data';
|
|
4
4
|
import '@grafana/ui';
|
|
5
|
+
import { TokenType } from '../utils/tokenType.js';
|
|
5
6
|
|
|
6
7
|
function initStatementPositionResolvers() {
|
|
7
8
|
return [
|
|
@@ -9,7 +10,7 @@ function initStatementPositionResolvers() {
|
|
|
9
10
|
id: StatementPosition.SelectKeyword,
|
|
10
11
|
name: StatementPosition.SelectKeyword,
|
|
11
12
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean(
|
|
12
|
-
currentToken === null || currentToken.isWhiteSpace() && currentToken.previous === null || currentToken.is(TokenType.Keyword, SELECT) || currentToken.is(TokenType.Keyword, SELECT) && currentToken.previous === null || previousIsSlash || currentToken.isIdentifier() && (previousIsSlash || (currentToken == null ?
|
|
13
|
+
currentToken === null || currentToken.isWhiteSpace() && currentToken.previous === null || currentToken.is(TokenType.Keyword, SELECT) || currentToken.is(TokenType.Keyword, SELECT) && currentToken.previous === null || previousIsSlash || currentToken.isIdentifier() && (previousIsSlash || (currentToken == null ? void 0 : currentToken.previous) === null) || currentToken.isIdentifier() && SELECT.startsWith(currentToken.value.toLowerCase())
|
|
13
14
|
)
|
|
14
15
|
},
|
|
15
16
|
{
|
|
@@ -22,13 +23,13 @@ function initStatementPositionResolvers() {
|
|
|
22
23
|
{
|
|
23
24
|
id: StatementPosition.AfterSelectKeyword,
|
|
24
25
|
name: StatementPosition.AfterSelectKeyword,
|
|
25
|
-
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean((previousNonWhiteSpace == null ?
|
|
26
|
+
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value.toLowerCase()) === SELECT)
|
|
26
27
|
},
|
|
27
28
|
{
|
|
28
29
|
id: StatementPosition.AfterSelectArguments,
|
|
29
30
|
name: StatementPosition.AfterSelectArguments,
|
|
30
31
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
31
|
-
return Boolean((previousKeyword == null ?
|
|
32
|
+
return Boolean((previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === SELECT && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value) === ",");
|
|
32
33
|
}
|
|
33
34
|
},
|
|
34
35
|
{
|
|
@@ -36,7 +37,7 @@ function initStatementPositionResolvers() {
|
|
|
36
37
|
name: StatementPosition.AfterSelectFuncFirstArgument,
|
|
37
38
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
38
39
|
return Boolean(
|
|
39
|
-
((previousKeyword == null ?
|
|
40
|
+
((previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === SELECT || (previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === AS) && ((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Parenthesis, "(")) || (currentToken == null ? void 0 : currentToken.is(TokenType.Parenthesis, "()")))
|
|
40
41
|
);
|
|
41
42
|
}
|
|
42
43
|
},
|
|
@@ -45,7 +46,7 @@ function initStatementPositionResolvers() {
|
|
|
45
46
|
name: StatementPosition.AfterWhereFunctionArgument,
|
|
46
47
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
47
48
|
return Boolean(
|
|
48
|
-
(previousKeyword == null ?
|
|
49
|
+
(previousKeyword == null ? void 0 : previousKeyword.is(TokenType.Keyword, WHERE)) && ((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Parenthesis, "(")) || (currentToken == null ? void 0 : currentToken.is(TokenType.Parenthesis, "()")))
|
|
49
50
|
);
|
|
50
51
|
}
|
|
51
52
|
},
|
|
@@ -55,7 +56,7 @@ function initStatementPositionResolvers() {
|
|
|
55
56
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
56
57
|
var _a;
|
|
57
58
|
return Boolean(
|
|
58
|
-
(previousKeyword == null ?
|
|
59
|
+
(previousKeyword == null ? void 0 : previousKeyword.is(TokenType.Keyword, BY)) && ((_a = previousKeyword == null ? void 0 : previousKeyword.getPreviousKeyword()) == null ? void 0 : _a.is(TokenType.Keyword, GROUP)) && ((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isIdentifier()) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isDoubleQuotedString()) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Parenthesis, ")")) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Parenthesis, "()")))
|
|
59
60
|
);
|
|
60
61
|
}
|
|
61
62
|
},
|
|
@@ -63,7 +64,7 @@ function initStatementPositionResolvers() {
|
|
|
63
64
|
id: StatementPosition.SelectAlias,
|
|
64
65
|
name: StatementPosition.SelectAlias,
|
|
65
66
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
66
|
-
if ((previousNonWhiteSpace == null ?
|
|
67
|
+
if ((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value) === "," && (previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === AS) {
|
|
67
68
|
return true;
|
|
68
69
|
}
|
|
69
70
|
return false;
|
|
@@ -74,25 +75,25 @@ function initStatementPositionResolvers() {
|
|
|
74
75
|
name: StatementPosition.FromKeyword,
|
|
75
76
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
76
77
|
return Boolean(
|
|
77
|
-
(previousKeyword == null ?
|
|
78
|
+
(previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === SELECT && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value) !== "," || ((currentToken == null ? void 0 : currentToken.isKeyword()) || (currentToken == null ? void 0 : currentToken.isIdentifier())) && FROM.toLowerCase().startsWith(currentToken.value.toLowerCase())
|
|
78
79
|
);
|
|
79
80
|
}
|
|
80
81
|
},
|
|
81
82
|
{
|
|
82
83
|
id: StatementPosition.AfterFromKeyword,
|
|
83
84
|
name: StatementPosition.AfterFromKeyword,
|
|
84
|
-
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean(!(currentToken == null ?
|
|
85
|
+
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean(!(currentToken == null ? void 0 : currentToken.value.includes(".")) && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value.toLowerCase()) === FROM)
|
|
85
86
|
},
|
|
86
87
|
{
|
|
87
88
|
id: StatementPosition.AfterSchema,
|
|
88
89
|
name: StatementPosition.AfterSchema,
|
|
89
90
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
90
|
-
if ((currentToken == null ?
|
|
91
|
-
currentToken = currentToken == null ?
|
|
91
|
+
if ((currentToken == null ? void 0 : currentToken.isWhiteSpace()) && (currentToken == null ? void 0 : currentToken.next)) {
|
|
92
|
+
currentToken = currentToken == null ? void 0 : currentToken.previous;
|
|
92
93
|
previousNonWhiteSpace = currentToken.getPreviousNonWhiteSpaceToken();
|
|
93
94
|
}
|
|
94
95
|
return Boolean(
|
|
95
|
-
(currentToken == null ?
|
|
96
|
+
(currentToken == null ? void 0 : currentToken.isIdentifier()) && (currentToken == null ? void 0 : currentToken.value.endsWith(".")) && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value.toLowerCase()) === FROM
|
|
96
97
|
);
|
|
97
98
|
}
|
|
98
99
|
},
|
|
@@ -100,7 +101,7 @@ function initStatementPositionResolvers() {
|
|
|
100
101
|
id: StatementPosition.AfterFrom,
|
|
101
102
|
name: StatementPosition.AfterFrom,
|
|
102
103
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean(
|
|
103
|
-
(previousKeyword == null ?
|
|
104
|
+
(previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === FROM && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isDoubleQuotedString()) || (previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === FROM && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isIdentifier()) || (previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === FROM && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isVariable())
|
|
104
105
|
// cloudwatch specific
|
|
105
106
|
// (previousKeyword?.value === SCHEMA && previousNonWhiteSpace?.is(TokenType.Parenthesis, ')'))
|
|
106
107
|
)
|
|
@@ -110,7 +111,7 @@ function initStatementPositionResolvers() {
|
|
|
110
111
|
name: StatementPosition.AfterTable,
|
|
111
112
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
112
113
|
return Boolean(
|
|
113
|
-
(previousKeyword == null ?
|
|
114
|
+
(previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === FROM && ((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isVariable()) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value) !== "" && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value.toLowerCase()) !== FROM)
|
|
114
115
|
);
|
|
115
116
|
}
|
|
116
117
|
},
|
|
@@ -118,7 +119,7 @@ function initStatementPositionResolvers() {
|
|
|
118
119
|
id: StatementPosition.WhereKeyword,
|
|
119
120
|
name: StatementPosition.WhereKeyword,
|
|
120
121
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean(
|
|
121
|
-
(previousKeyword == null ?
|
|
122
|
+
(previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === WHERE && ((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isKeyword()) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Parenthesis, "(")) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Operator, AND)))
|
|
122
123
|
)
|
|
123
124
|
},
|
|
124
125
|
{
|
|
@@ -127,14 +128,14 @@ function initStatementPositionResolvers() {
|
|
|
127
128
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
128
129
|
var _a;
|
|
129
130
|
return Boolean(
|
|
130
|
-
(previousKeyword == null ?
|
|
131
|
+
(previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === WHERE && !((_a = previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()) == null ? void 0 : _a.isOperator()) && !(currentToken == null ? void 0 : currentToken.is(TokenType.Delimiter, ".")) && !(currentToken == null ? void 0 : currentToken.isParenthesis()) && ((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isIdentifier()) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isDoubleQuotedString()))
|
|
131
132
|
);
|
|
132
133
|
}
|
|
133
134
|
},
|
|
134
135
|
{
|
|
135
136
|
id: StatementPosition.WhereValue,
|
|
136
137
|
name: StatementPosition.WhereValue,
|
|
137
|
-
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean((previousKeyword == null ?
|
|
138
|
+
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean((previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === WHERE && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isOperator()))
|
|
138
139
|
},
|
|
139
140
|
{
|
|
140
141
|
id: StatementPosition.AfterWhereValue,
|
|
@@ -142,7 +143,7 @@ function initStatementPositionResolvers() {
|
|
|
142
143
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
143
144
|
var _a, _b, _c;
|
|
144
145
|
return Boolean(
|
|
145
|
-
(previousKeyword == null ?
|
|
146
|
+
(previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === WHERE && ((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Operator, "and")) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Operator, "or")) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isString()) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isNumber()) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Parenthesis, ")")) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Parenthesis, "()")) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isTemplateVariable()) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.IdentifierQuote)) && ((_a = previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()) == null ? void 0 : _a.is(TokenType.Identifier)) && ((_c = (_b = previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()) == null ? void 0 : _b.getPreviousNonWhiteSpaceToken()) == null ? void 0 : _c.is(TokenType.IdentifierQuote)))
|
|
146
147
|
);
|
|
147
148
|
}
|
|
148
149
|
},
|
|
@@ -152,7 +153,7 @@ function initStatementPositionResolvers() {
|
|
|
152
153
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
153
154
|
var _a;
|
|
154
155
|
return Boolean(
|
|
155
|
-
(previousKeyword == null ?
|
|
156
|
+
(previousKeyword == null ? void 0 : previousKeyword.is(TokenType.Keyword, BY)) && ((_a = previousKeyword == null ? void 0 : previousKeyword.getPreviousKeyword()) == null ? void 0 : _a.is(TokenType.Keyword, GROUP)) && ((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Keyword, BY)) || (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Delimiter, ",")))
|
|
156
157
|
);
|
|
157
158
|
}
|
|
158
159
|
},
|
|
@@ -162,7 +163,7 @@ function initStatementPositionResolvers() {
|
|
|
162
163
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
163
164
|
var _a;
|
|
164
165
|
return Boolean(
|
|
165
|
-
(previousKeyword == null ?
|
|
166
|
+
(previousKeyword == null ? void 0 : previousKeyword.is(TokenType.Keyword, BY)) && ((_a = previousKeyword == null ? void 0 : previousKeyword.getPreviousKeyword()) == null ? void 0 : _a.is(TokenType.Keyword, GROUP)) && ((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Parenthesis, "(")) || (currentToken == null ? void 0 : currentToken.is(TokenType.Parenthesis, "()")))
|
|
166
167
|
);
|
|
167
168
|
}
|
|
168
169
|
},
|
|
@@ -172,7 +173,7 @@ function initStatementPositionResolvers() {
|
|
|
172
173
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
173
174
|
var _a;
|
|
174
175
|
return Boolean(
|
|
175
|
-
(previousNonWhiteSpace == null ?
|
|
176
|
+
(previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Keyword, BY)) && ((_a = previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.getPreviousKeyword()) == null ? void 0 : _a.is(TokenType.Keyword, ORDER))
|
|
176
177
|
);
|
|
177
178
|
}
|
|
178
179
|
},
|
|
@@ -182,20 +183,20 @@ function initStatementPositionResolvers() {
|
|
|
182
183
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
183
184
|
var _a, _b;
|
|
184
185
|
return Boolean(
|
|
185
|
-
(previousKeyword == null ?
|
|
186
|
+
(previousKeyword == null ? void 0 : previousKeyword.is(TokenType.Keyword, BY)) && ((_a = previousKeyword == null ? void 0 : previousKeyword.getPreviousKeyword()) == null ? void 0 : _a.is(TokenType.Keyword, ORDER)) && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Parenthesis)) && ((_b = previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()) == null ? void 0 : _b.is(TokenType.Function))
|
|
186
187
|
);
|
|
187
188
|
}
|
|
188
189
|
},
|
|
189
190
|
{
|
|
190
191
|
id: StatementPosition.AfterOrderByDirection,
|
|
191
192
|
name: StatementPosition.AfterOrderByDirection,
|
|
192
|
-
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean((previousKeyword == null ?
|
|
193
|
+
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean((previousKeyword == null ? void 0 : previousKeyword.is(TokenType.Keyword, DESC)) || (previousKeyword == null ? void 0 : previousKeyword.is(TokenType.Keyword, ASC)))
|
|
193
194
|
},
|
|
194
195
|
{
|
|
195
196
|
id: StatementPosition.AfterIsOperator,
|
|
196
197
|
name: StatementPosition.AfterIsOperator,
|
|
197
198
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
198
|
-
return Boolean(previousNonWhiteSpace == null ?
|
|
199
|
+
return Boolean(previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Operator, "IS"));
|
|
199
200
|
}
|
|
200
201
|
},
|
|
201
202
|
{
|
|
@@ -204,7 +205,7 @@ function initStatementPositionResolvers() {
|
|
|
204
205
|
resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
|
|
205
206
|
var _a;
|
|
206
207
|
return Boolean(
|
|
207
|
-
(previousNonWhiteSpace == null ?
|
|
208
|
+
(previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Operator, "NOT")) && ((_a = previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()) == null ? void 0 : _a.is(TokenType.Operator, "IS"))
|
|
208
209
|
);
|
|
209
210
|
}
|
|
210
211
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statementPositionResolversRegistry.js","sources":["../../../../../src/components/SQLEditor/standardSql/statementPositionResolversRegistry.ts"],"sourcesContent":["import { StatementPosition, TokenType } from '../types';\nimport { AND, AS, ASC, BY, DESC, FROM, GROUP, ORDER, SELECT, WHERE, WITH } from './language';\nimport { type StatementPositionResolversRegistryItem } from './types';\n\nexport function initStatementPositionResolvers(): StatementPositionResolversRegistryItem[] {\n return [\n {\n id: StatementPosition.SelectKeyword,\n name: StatementPosition.SelectKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n currentToken === null ||\n (currentToken.isWhiteSpace() && currentToken.previous === null) ||\n currentToken.is(TokenType.Keyword, SELECT) ||\n (currentToken.is(TokenType.Keyword, SELECT) && currentToken.previous === null) ||\n previousIsSlash ||\n (currentToken.isIdentifier() && (previousIsSlash || currentToken?.previous === null)) ||\n (currentToken.isIdentifier() && SELECT.startsWith(currentToken.value.toLowerCase()))\n ),\n },\n {\n id: StatementPosition.WithKeyword,\n name: StatementPosition.WithKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n currentToken === null ||\n (currentToken.isWhiteSpace() && currentToken.previous === null) ||\n (currentToken.is(TokenType.Keyword, WITH) && currentToken.previous === null) ||\n (currentToken.isIdentifier() && WITH.toLowerCase().startsWith(currentToken.value.toLowerCase()))\n ),\n },\n {\n id: StatementPosition.AfterSelectKeyword,\n name: StatementPosition.AfterSelectKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(previousNonWhiteSpace?.value.toLowerCase() === SELECT),\n },\n {\n id: StatementPosition.AfterSelectArguments,\n name: StatementPosition.AfterSelectArguments,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(previousKeyword?.value.toLowerCase() === SELECT && previousNonWhiteSpace?.value === ',');\n },\n },\n {\n id: StatementPosition.AfterSelectFuncFirstArgument,\n name: StatementPosition.AfterSelectFuncFirstArgument,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n (previousKeyword?.value.toLowerCase() === SELECT || previousKeyword?.value.toLowerCase() === AS) &&\n (previousNonWhiteSpace?.is(TokenType.Parenthesis, '(') || currentToken?.is(TokenType.Parenthesis, '()'))\n );\n },\n },\n {\n id: StatementPosition.AfterWhereFunctionArgument,\n name: StatementPosition.AfterWhereFunctionArgument,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n previousKeyword?.is(TokenType.Keyword, WHERE) &&\n (previousNonWhiteSpace?.is(TokenType.Parenthesis, '(') || currentToken?.is(TokenType.Parenthesis, '()'))\n );\n },\n },\n {\n id: StatementPosition.AfterGroupBy,\n name: StatementPosition.AfterGroupBy,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousKeyword?.is(TokenType.Keyword, BY) &&\n previousKeyword?.getPreviousKeyword()?.is(TokenType.Keyword, GROUP) &&\n (previousNonWhiteSpace?.isIdentifier() ||\n previousNonWhiteSpace?.isDoubleQuotedString() ||\n previousNonWhiteSpace?.is(TokenType.Parenthesis, ')') ||\n previousNonWhiteSpace?.is(TokenType.Parenthesis, '()'))\n ),\n },\n {\n id: StatementPosition.SelectAlias,\n name: StatementPosition.SelectAlias,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n if (previousNonWhiteSpace?.value === ',' && previousKeyword?.value.toLowerCase() === AS) {\n return true;\n }\n\n return false;\n },\n },\n\n {\n id: StatementPosition.FromKeyword,\n name: StatementPosition.FromKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n // cloudwatch specific commented out\n // Boolean(previousKeyword?.value === SELECT && previousNonWhiteSpace?.isParenthesis()),\n return Boolean(\n (previousKeyword?.value.toLowerCase() === SELECT && previousNonWhiteSpace?.value !== ',') ||\n ((currentToken?.isKeyword() || currentToken?.isIdentifier()) &&\n FROM.toLowerCase().startsWith(currentToken.value.toLowerCase()))\n );\n },\n },\n {\n id: StatementPosition.AfterFromKeyword,\n name: StatementPosition.AfterFromKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(!currentToken?.value.includes('.') && previousNonWhiteSpace?.value.toLowerCase() === FROM),\n },\n {\n id: StatementPosition.AfterSchema,\n name: StatementPosition.AfterSchema,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n // depending on whether the schema was the last token in the query or not, current token might be whitespace or dot. if whitespace, just use the previous token\n if (currentToken?.isWhiteSpace() && currentToken?.next) {\n currentToken = currentToken?.previous;\n previousNonWhiteSpace = currentToken!.getPreviousNonWhiteSpaceToken();\n }\n return Boolean(\n currentToken?.isIdentifier() &&\n currentToken?.value.endsWith('.') &&\n previousNonWhiteSpace?.value.toLowerCase() === FROM\n );\n },\n },\n {\n id: StatementPosition.AfterFrom,\n name: StatementPosition.AfterFrom,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n (previousKeyword?.value.toLowerCase() === FROM && previousNonWhiteSpace?.isDoubleQuotedString()) ||\n (previousKeyword?.value.toLowerCase() === FROM && previousNonWhiteSpace?.isIdentifier()) ||\n (previousKeyword?.value.toLowerCase() === FROM && previousNonWhiteSpace?.isVariable())\n // cloudwatch specific\n // (previousKeyword?.value === SCHEMA && previousNonWhiteSpace?.is(TokenType.Parenthesis, ')'))\n ),\n },\n {\n id: StatementPosition.AfterTable,\n name: StatementPosition.AfterTable,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n previousKeyword?.value.toLowerCase() === FROM &&\n (previousNonWhiteSpace?.isVariable() ||\n (previousNonWhiteSpace?.value !== '' && previousNonWhiteSpace?.value.toLowerCase() !== FROM))\n );\n },\n },\n {\n id: StatementPosition.WhereKeyword,\n name: StatementPosition.WhereKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousKeyword?.value.toLowerCase() === WHERE &&\n (previousNonWhiteSpace?.isKeyword() ||\n previousNonWhiteSpace?.is(TokenType.Parenthesis, '(') ||\n previousNonWhiteSpace?.is(TokenType.Operator, AND))\n ),\n },\n {\n id: StatementPosition.WhereComparisonOperator,\n name: StatementPosition.WhereComparisonOperator,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousKeyword?.value.toLowerCase() === WHERE &&\n !previousNonWhiteSpace?.getPreviousNonWhiteSpaceToken()?.isOperator() &&\n !currentToken?.is(TokenType.Delimiter, '.') &&\n !currentToken?.isParenthesis() &&\n (previousNonWhiteSpace?.isIdentifier() || previousNonWhiteSpace?.isDoubleQuotedString())\n ),\n },\n {\n id: StatementPosition.WhereValue,\n name: StatementPosition.WhereValue,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(previousKeyword?.value.toLowerCase() === WHERE && previousNonWhiteSpace?.isOperator()),\n },\n {\n id: StatementPosition.AfterWhereValue,\n name: StatementPosition.AfterWhereValue,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n previousKeyword?.value.toLowerCase() === WHERE &&\n (previousNonWhiteSpace?.is(TokenType.Operator, 'and') ||\n previousNonWhiteSpace?.is(TokenType.Operator, 'or') ||\n previousNonWhiteSpace?.isString() ||\n previousNonWhiteSpace?.isNumber() ||\n previousNonWhiteSpace?.is(TokenType.Parenthesis, ')') ||\n previousNonWhiteSpace?.is(TokenType.Parenthesis, '()') ||\n previousNonWhiteSpace?.isTemplateVariable() ||\n (previousNonWhiteSpace?.is(TokenType.IdentifierQuote) &&\n previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()?.is(TokenType.Identifier) &&\n previousNonWhiteSpace\n ?.getPreviousNonWhiteSpaceToken()\n ?.getPreviousNonWhiteSpaceToken()\n ?.is(TokenType.IdentifierQuote)))\n );\n },\n },\n {\n id: StatementPosition.AfterGroupByKeywords,\n name: StatementPosition.AfterGroupByKeywords,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousKeyword?.is(TokenType.Keyword, BY) &&\n previousKeyword?.getPreviousKeyword()?.is(TokenType.Keyword, GROUP) &&\n (previousNonWhiteSpace?.is(TokenType.Keyword, BY) || previousNonWhiteSpace?.is(TokenType.Delimiter, ','))\n ),\n },\n {\n id: StatementPosition.AfterGroupByFunctionArgument,\n name: StatementPosition.AfterGroupByFunctionArgument,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n previousKeyword?.is(TokenType.Keyword, BY) &&\n previousKeyword?.getPreviousKeyword()?.is(TokenType.Keyword, GROUP) &&\n (previousNonWhiteSpace?.is(TokenType.Parenthesis, '(') || currentToken?.is(TokenType.Parenthesis, '()'))\n );\n },\n },\n {\n id: StatementPosition.AfterOrderByKeywords,\n name: StatementPosition.AfterOrderByKeywords,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousNonWhiteSpace?.is(TokenType.Keyword, BY) &&\n previousNonWhiteSpace?.getPreviousKeyword()?.is(TokenType.Keyword, ORDER)\n ),\n },\n {\n id: StatementPosition.AfterOrderByFunction,\n name: StatementPosition.AfterOrderByFunction,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousKeyword?.is(TokenType.Keyword, BY) &&\n previousKeyword?.getPreviousKeyword()?.is(TokenType.Keyword, ORDER) &&\n previousNonWhiteSpace?.is(TokenType.Parenthesis) &&\n previousNonWhiteSpace?.getPreviousNonWhiteSpaceToken()?.is(TokenType.Function)\n ),\n },\n {\n id: StatementPosition.AfterOrderByDirection,\n name: StatementPosition.AfterOrderByDirection,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(previousKeyword?.is(TokenType.Keyword, DESC) || previousKeyword?.is(TokenType.Keyword, ASC)),\n },\n {\n id: StatementPosition.AfterIsOperator,\n name: StatementPosition.AfterIsOperator,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(previousNonWhiteSpace?.is(TokenType.Operator, 'IS'));\n },\n },\n {\n id: StatementPosition.AfterIsNotOperator,\n name: StatementPosition.AfterIsNotOperator,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n previousNonWhiteSpace?.is(TokenType.Operator, 'NOT') &&\n previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()?.is(TokenType.Operator, 'IS')\n );\n },\n },\n ];\n}\n"],"names":[],"mappings":";;;;;AAIO,SAAS,8BAA2E,GAAA;AACzF,EAAO,OAAA;AAAA,IACL;AAAA,MACE,IAAI,iBAAkB,CAAA,aAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,aAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAC9D,KAAA,OAAA;AAAA,QACE,iBAAiB,IACd,IAAA,YAAA,CAAa,YAAa,EAAA,IAAK,aAAa,QAAa,KAAA,IAAA,IAC1D,YAAa,CAAA,EAAA,CAAG,UAAU,OAAS,EAAA,MAAM,KACxC,YAAa,CAAA,EAAA,CAAG,UAAU,OAAS,EAAA,MAAM,CAAK,IAAA,YAAA,CAAa,aAAa,IACzE,IAAA,eAAA,IACC,aAAa,YAAa,EAAA,KAAM,oBAAmB,YAAc,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAA,QAAA,MAAa,IAC9E,CAAA,IAAA,YAAA,CAAa,cAAkB,IAAA,MAAA,CAAO,WAAW,YAAa,CAAA,KAAA,CAAM,aAAa;AAAA;AACtF,KACJ;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,WAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,WAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAC9D,KAAA,OAAA;AAAA,QACE,YAAA,KAAiB,IACd,IAAA,YAAA,CAAa,YAAa,EAAA,IAAK,YAAa,CAAA,QAAA,KAAa,IACzD,IAAA,YAAA,CAAa,EAAG,CAAA,SAAA,CAAU,OAAS,EAAA,IAAI,CAAK,IAAA,YAAA,CAAa,QAAa,KAAA,IAAA,IACtE,YAAa,CAAA,YAAA,EAAkB,IAAA,IAAA,CAAK,WAAY,EAAA,CAAE,UAAW,CAAA,YAAA,CAAa,KAAM,CAAA,WAAA,EAAa;AAAA;AAClG,KACJ;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,kBAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,kBAAA;AAAA,MACxB,OAAA,EAAS,CAAC,YAAA,EAAc,eAAiB,EAAA,qBAAA,EAAuB,oBAC9D,OAAQ,CAAA,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,KAAM,CAAA,WAAA,EAAA,MAAkB,MAAM;AAAA,KACjE;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,oBAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,oBAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAoB,KAAA;AAClF,QAAA,OAAO,SAAQ,eAAiB,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAA,KAAA,CAAM,mBAAkB,MAAU,IAAA,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,WAAU,GAAG,CAAA;AAAA;AACxG,KACF;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,4BAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,4BAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAoB,KAAA;AAClF,QAAO,OAAA,OAAA;AAAA,UAAA,CAAA,CACJ,sDAAiB,KAAM,CAAA,WAAA,EAAA,MAAkB,MAAU,IAAA,CAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,MAAM,WAAkB,EAAA,MAAA,EAAA,MAAA,CAC1F,qBAAuB,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAA,EAAA,CAAG,UAAU,WAAa,EAAA,GAAA,CAAA,MAAQ,YAAc,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAA,EAAA,CAAG,UAAU,WAAa,EAAA,IAAA,CAAA,CAAA;AAAA,SACtG;AAAA;AACF,KACF;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,0BAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,0BAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAoB,KAAA;AAClF,QAAO,OAAA,OAAA;AAAA,UAAA,CACL,eAAiB,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAA,EAAA,CAAG,SAAU,CAAA,OAAA,EAAS,KACpC,CAAA,MAAA,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,EAAG,CAAA,SAAA,CAAU,WAAa,EAAA,GAAA,CAAA,MAAQ,YAAc,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAA,EAAA,CAAG,UAAU,WAAa,EAAA,IAAA,CAAA,CAAA;AAAA,SACtG;AAAA;AACF,KACF;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,YAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,YAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAiB,KAAA;AAnEvF,QAAA,IAAA,EAAA;AAoEQ,QAAA,OAAA,OAAA;AAAA,UACE,CAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,EAAG,CAAA,SAAA,CAAU,OAAS,EAAA,EAAA,CAAA,MAAA,CACrC,2DAAiB,kBAAjB,EAAA,KAAA,IAAA,GAAA,SAAA,GAAA,EAAA,CAAuC,EAAG,CAAA,SAAA,CAAU,OAAS,EAAA,KAAA,CAAA,CAAA,KAAA,CAC5D,kEAAuB,YACtB,EAAA,MAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,oBACvB,EAAA,CAAA,KAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,EAAG,CAAA,SAAA,CAAU,aAAa,GACjD,CAAA,CAAA,KAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,EAAG,CAAA,SAAA,CAAU,WAAa,EAAA,IAAA,CAAA,CAAA;AAAA,SACvD;AAAA;AAAA,KACJ;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,WAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,WAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAoB,KAAA;AAClF,QAAA,IAAA,CAAI,kEAAuB,KAAU,MAAA,GAAA,IAAA,CAAO,eAAiB,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAA,KAAA,CAAM,mBAAkB,EAAI,EAAA;AACvF,UAAO,OAAA,IAAA;AAAA;AAGT,QAAO,OAAA,KAAA;AAAA;AACT,KACF;AAAA,IAEA;AAAA,MACE,IAAI,iBAAkB,CAAA,WAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,WAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAoB,KAAA;AAGlF,QAAO,OAAA,OAAA;AAAA,UAAA,CACJ,sDAAiB,KAAM,CAAA,WAAA,EAAA,MAAkB,WAAU,qBAAuB,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAA,KAAA,MAAU,SACjF,YAAc,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAA,SAAA,EAAA,MAAe,YAAc,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAA,YAAA,EAAA,CAAA,KAC3C,KAAK,WAAY,EAAA,CAAE,WAAW,YAAa,CAAA,KAAA,CAAM,aAAa;AAAA,SACpE;AAAA;AACF,KACF;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,gBAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,gBAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAC9D,KAAA,OAAA,CAAQ,EAAC,YAAA,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAc,MAAM,QAAS,CAAA,GAAA,CAAA,CAAA,IAAA,CAAQ,qBAAuB,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAA,KAAA,CAAM,mBAAkB,IAAI;AAAA,KACrG;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,WAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,WAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAoB,KAAA;AAElF,QAAI,IAAA,CAAA,YAAA,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAc,YAAkB,EAAA,MAAA,YAAA,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAc,IAAM,CAAA,EAAA;AACtD,UAAA,YAAA,GAAe,YAAc,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAA,QAAA;AAC7B,UAAA,qBAAA,GAAwB,aAAc,6BAA8B,EAAA;AAAA;AAEtE,QAAO,OAAA,OAAA;AAAA,UACL,CAAA,YAAA,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAc,oBACZ,YAAc,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAA,KAAA,CAAM,SAAS,GAC7B,CAAA,CAAA,IAAA,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,MAAM,WAAkB,EAAA,MAAA;AAAA,SACnD;AAAA;AACF,KACF;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,SAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,SAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAC9D,KAAA,OAAA;AAAA,QAAA,CACG,sDAAiB,KAAM,CAAA,WAAA,EAAA,MAAkB,IAAQ,KAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,4BACtE,eAAiB,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAA,KAAA,CAAM,WAAkB,EAAA,MAAA,IAAA,KAAQ,kEAAuB,YACxE,EAAA,CAAA,IAAA,CAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,KAAM,CAAA,WAAA,EAAA,MAAkB,SAAQ,qBAAuB,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAA,UAAA,EAAA;AAAA;AAAA;AAAA;AAG7E,KACJ;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,UAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,UAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAoB,KAAA;AAClF,QAAO,OAAA,OAAA;AAAA,UACL,CAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,KAAM,CAAA,WAAA,EAAA,MAAkB,IACtC,KAAA,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,UACrB,EAAA,KAAA,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,KAAU,MAAA,EAAA,IAAA,CAAM,qBAAuB,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAA,KAAA,CAAM,WAAkB,EAAA,MAAA,IAAA;AAAA,SAC7F;AAAA;AACF,KACF;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,YAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,YAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAC9D,KAAA,OAAA;AAAA,QAAA,CACE,eAAiB,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAA,KAAA,CAAM,WAAkB,EAAA,MAAA,KAAA,KAAA,CACtC,kEAAuB,SACtB,EAAA,MAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,EAAG,CAAA,SAAA,CAAU,WAAa,EAAA,GAAA,CAAA,CAAA,KACjD,qBAAuB,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAA,EAAA,CAAG,UAAU,QAAU,EAAA,GAAA,CAAA,CAAA;AAAA;AACpD,KACJ;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,uBAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,uBAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAiB,KAAA;AAjKvF,QAAA,IAAA,EAAA;AAkKQ,QAAA,OAAA,OAAA;AAAA,UACE,CAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,MAAM,WAAkB,EAAA,MAAA,KAAA,IACvC,GAAC,EAAuB,GAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAA,6BAAA,EAAA,KAAvB,sBAAwD,UACzD,EAAA,CAAA,IAAA,EAAC,gDAAc,EAAG,CAAA,SAAA,CAAU,WAAW,GACvC,CAAA,CAAA,IAAA,EAAC,gDAAc,aACd,EAAA,CAAA,KAAA,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,oBAAkB,qBAAuB,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAA,oBAAA,EAAA,CAAA;AAAA,SACrE;AAAA;AAAA,KACJ;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,UAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,UAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,qBAAuB,EAAA,eAAA,KAC9D,OAAQ,CAAA,CAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,KAAM,CAAA,WAAA,EAAA,MAAkB,KAAS,KAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,UAAY,EAAA,CAAA;AAAA,KACjG;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,eAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,eAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAoB,KAAA;AAnL1F,QAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAoLQ,QAAO,OAAA,OAAA;AAAA,UACL,CAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,MAAM,WAAkB,EAAA,MAAA,KAAA,KAAA,CACtC,kEAAuB,EAAG,CAAA,SAAA,CAAU,UAAU,KAC7C,CAAA,MAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,GAAG,SAAU,CAAA,QAAA,EAAU,WAC9C,qBAAuB,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAA,QAAA,EAAA,CAAA,KACvB,kEAAuB,QACvB,EAAA,CAAA,KAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,EAAG,CAAA,SAAA,CAAU,WAAa,EAAA,GAAA,CAAA,CAAA,KACjD,kEAAuB,EAAG,CAAA,SAAA,CAAU,aAAa,IACjD,CAAA,CAAA,KAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,0BACtB,qBAAuB,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAA,EAAA,CAAG,SAAU,CAAA,eAAA,CAAA,MAAA,CACnC,EAAsB,GAAA,qBAAA,CAAA,6BAAA,OAAtB,IAAuD,GAAA,SAAA,GAAA,EAAA,CAAA,EAAA,CAAG,UAAU,UACpE,CAAA,CAAA,KAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CACI,oCADJ,IAEI,GAAA,SAAA,GAAA,EAAA,CAAA,6BAAA,EAAA,KAFJ,IAGI,GAAA,SAAA,GAAA,EAAA,CAAA,EAAA,CAAG,SAAU,CAAA,eAAA,CAAA,CAAA;AAAA,SACzB;AAAA;AACF,KACF;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,oBAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,oBAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAiB,KAAA;AAzMvF,QAAA,IAAA,EAAA;AA0MQ,QAAA,OAAA,OAAA;AAAA,UACE,CAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,GAAG,SAAU,CAAA,OAAA,EAAS,UACrC,EAAiB,GAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAA,kBAAA,EAAA,KAAjB,sBAAuC,EAAG,CAAA,SAAA,CAAU,SAAS,KAC5D,CAAA,CAAA,KAAA,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,GAAG,SAAU,CAAA,OAAA,EAAS,SAAO,qBAAuB,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAA,EAAA,CAAG,UAAU,SAAW,EAAA,GAAA,CAAA,CAAA;AAAA,SACxG;AAAA;AAAA,KACJ;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,4BAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,4BAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAoB,KAAA;AAnN1F,QAAA,IAAA,EAAA;AAoNQ,QAAO,OAAA,OAAA;AAAA,UACL,CAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,GAAG,SAAU,CAAA,OAAA,EAAS,UACrC,EAAiB,GAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAA,kBAAA,EAAA,KAAjB,sBAAuC,EAAG,CAAA,SAAA,CAAU,SAAS,KAC5D,CAAA,CAAA,KAAA,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,GAAG,SAAU,CAAA,WAAA,EAAa,UAAQ,YAAc,IAAA,IAAA,GAAA,SAAA,GAAA,YAAA,CAAA,EAAA,CAAG,UAAU,WAAa,EAAA,IAAA,CAAA,CAAA;AAAA,SACtG;AAAA;AACF,KACF;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,oBAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,oBAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAiB,KAAA;AA9NvF,QAAA,IAAA,EAAA;AA+NQ,QAAA,OAAA,OAAA;AAAA,UACE,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,EAAG,CAAA,SAAA,CAAU,OAAS,EAAA,EAAA,CAAA,MAAA,CAC3C,uEAAuB,kBAAvB,EAAA,KAAA,IAAA,GAAA,SAAA,GAAA,EAAA,CAA6C,EAAG,CAAA,SAAA,CAAU,OAAS,EAAA,KAAA,CAAA;AAAA,SACvE;AAAA;AAAA,KACJ;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,oBAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,oBAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAiB,KAAA;AAvOvF,QAAA,IAAA,EAAA,EAAA,EAAA;AAwOQ,QAAA,OAAA,OAAA;AAAA,UACE,CAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,GAAG,SAAU,CAAA,OAAA,EAAS,UACrC,EAAiB,GAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAA,kBAAA,EAAA,KAAjB,sBAAuC,EAAG,CAAA,SAAA,CAAU,SAAS,KAC7D,CAAA,CAAA,KAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,GAAG,SAAU,CAAA,WAAA,CAAA,CAAA,KAAA,CACpC,uEAAuB,6BAAvB,EAAA,KAAA,IAAA,GAAA,SAAA,GAAA,EAAA,CAAwD,GAAG,SAAU,CAAA,QAAA,CAAA;AAAA,SACzE;AAAA;AAAA,KACJ;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,qBAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,qBAAA;AAAA,MACxB,SAAS,CAAC,YAAA,EAAc,eAAiB,EAAA,qBAAA,EAAuB,oBAC9D,OAAQ,CAAA,CAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,EAAG,CAAA,SAAA,CAAU,SAAS,IAAS,CAAA,MAAA,eAAA,IAAA,IAAA,GAAA,SAAA,GAAA,eAAA,CAAiB,EAAG,CAAA,SAAA,CAAU,SAAS,GAAI,CAAA,CAAA;AAAA,KACvG;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,eAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,eAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAoB,KAAA;AAClF,QAAA,OAAO,OAAQ,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,EAAG,CAAA,SAAA,CAAU,UAAU,IAAK,CAAA,CAAA;AAAA;AACpE,KACF;AAAA,IACA;AAAA,MACE,IAAI,iBAAkB,CAAA,kBAAA;AAAA,MACtB,MAAM,iBAAkB,CAAA,kBAAA;AAAA,MACxB,OAAS,EAAA,CAAC,YAAc,EAAA,eAAA,EAAiB,uBAAuB,eAAoB,KAAA;AA/P1F,QAAA,IAAA,EAAA;AAgQQ,QAAO,OAAA,OAAA;AAAA,UACL,CAAA,qBAAA,IAAA,IAAA,GAAA,SAAA,GAAA,qBAAA,CAAuB,EAAG,CAAA,SAAA,CAAU,QAAU,EAAA,KAAA,CAAA,MAAA,CAC5C,EAAsB,GAAA,qBAAA,CAAA,6BAAA,EAAtB,KAAA,IAAA,GAAA,SAAA,GAAA,EAAA,CAAuD,EAAG,CAAA,SAAA,CAAU,QAAU,EAAA,IAAA,CAAA;AAAA,SAClF;AAAA;AACF;AACF,GACF;AACF;;;;"}
|
|
1
|
+
{"version":3,"file":"statementPositionResolversRegistry.js","sources":["../../../../../src/components/SQLEditor/standardSql/statementPositionResolversRegistry.ts"],"sourcesContent":["import { StatementPosition, TokenType } from '../types';\nimport { AND, AS, ASC, BY, DESC, FROM, GROUP, ORDER, SELECT, WHERE, WITH } from './language';\nimport { type StatementPositionResolversRegistryItem } from './types';\n\nexport function initStatementPositionResolvers(): StatementPositionResolversRegistryItem[] {\n return [\n {\n id: StatementPosition.SelectKeyword,\n name: StatementPosition.SelectKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n currentToken === null ||\n (currentToken.isWhiteSpace() && currentToken.previous === null) ||\n currentToken.is(TokenType.Keyword, SELECT) ||\n (currentToken.is(TokenType.Keyword, SELECT) && currentToken.previous === null) ||\n previousIsSlash ||\n (currentToken.isIdentifier() && (previousIsSlash || currentToken?.previous === null)) ||\n (currentToken.isIdentifier() && SELECT.startsWith(currentToken.value.toLowerCase()))\n ),\n },\n {\n id: StatementPosition.WithKeyword,\n name: StatementPosition.WithKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n currentToken === null ||\n (currentToken.isWhiteSpace() && currentToken.previous === null) ||\n (currentToken.is(TokenType.Keyword, WITH) && currentToken.previous === null) ||\n (currentToken.isIdentifier() && WITH.toLowerCase().startsWith(currentToken.value.toLowerCase()))\n ),\n },\n {\n id: StatementPosition.AfterSelectKeyword,\n name: StatementPosition.AfterSelectKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(previousNonWhiteSpace?.value.toLowerCase() === SELECT),\n },\n {\n id: StatementPosition.AfterSelectArguments,\n name: StatementPosition.AfterSelectArguments,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(previousKeyword?.value.toLowerCase() === SELECT && previousNonWhiteSpace?.value === ',');\n },\n },\n {\n id: StatementPosition.AfterSelectFuncFirstArgument,\n name: StatementPosition.AfterSelectFuncFirstArgument,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n (previousKeyword?.value.toLowerCase() === SELECT || previousKeyword?.value.toLowerCase() === AS) &&\n (previousNonWhiteSpace?.is(TokenType.Parenthesis, '(') || currentToken?.is(TokenType.Parenthesis, '()'))\n );\n },\n },\n {\n id: StatementPosition.AfterWhereFunctionArgument,\n name: StatementPosition.AfterWhereFunctionArgument,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n previousKeyword?.is(TokenType.Keyword, WHERE) &&\n (previousNonWhiteSpace?.is(TokenType.Parenthesis, '(') || currentToken?.is(TokenType.Parenthesis, '()'))\n );\n },\n },\n {\n id: StatementPosition.AfterGroupBy,\n name: StatementPosition.AfterGroupBy,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousKeyword?.is(TokenType.Keyword, BY) &&\n previousKeyword?.getPreviousKeyword()?.is(TokenType.Keyword, GROUP) &&\n (previousNonWhiteSpace?.isIdentifier() ||\n previousNonWhiteSpace?.isDoubleQuotedString() ||\n previousNonWhiteSpace?.is(TokenType.Parenthesis, ')') ||\n previousNonWhiteSpace?.is(TokenType.Parenthesis, '()'))\n ),\n },\n {\n id: StatementPosition.SelectAlias,\n name: StatementPosition.SelectAlias,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n if (previousNonWhiteSpace?.value === ',' && previousKeyword?.value.toLowerCase() === AS) {\n return true;\n }\n\n return false;\n },\n },\n\n {\n id: StatementPosition.FromKeyword,\n name: StatementPosition.FromKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n // cloudwatch specific commented out\n // Boolean(previousKeyword?.value === SELECT && previousNonWhiteSpace?.isParenthesis()),\n return Boolean(\n (previousKeyword?.value.toLowerCase() === SELECT && previousNonWhiteSpace?.value !== ',') ||\n ((currentToken?.isKeyword() || currentToken?.isIdentifier()) &&\n FROM.toLowerCase().startsWith(currentToken.value.toLowerCase()))\n );\n },\n },\n {\n id: StatementPosition.AfterFromKeyword,\n name: StatementPosition.AfterFromKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(!currentToken?.value.includes('.') && previousNonWhiteSpace?.value.toLowerCase() === FROM),\n },\n {\n id: StatementPosition.AfterSchema,\n name: StatementPosition.AfterSchema,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n // depending on whether the schema was the last token in the query or not, current token might be whitespace or dot. if whitespace, just use the previous token\n if (currentToken?.isWhiteSpace() && currentToken?.next) {\n currentToken = currentToken?.previous;\n previousNonWhiteSpace = currentToken!.getPreviousNonWhiteSpaceToken();\n }\n return Boolean(\n currentToken?.isIdentifier() &&\n currentToken?.value.endsWith('.') &&\n previousNonWhiteSpace?.value.toLowerCase() === FROM\n );\n },\n },\n {\n id: StatementPosition.AfterFrom,\n name: StatementPosition.AfterFrom,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n (previousKeyword?.value.toLowerCase() === FROM && previousNonWhiteSpace?.isDoubleQuotedString()) ||\n (previousKeyword?.value.toLowerCase() === FROM && previousNonWhiteSpace?.isIdentifier()) ||\n (previousKeyword?.value.toLowerCase() === FROM && previousNonWhiteSpace?.isVariable())\n // cloudwatch specific\n // (previousKeyword?.value === SCHEMA && previousNonWhiteSpace?.is(TokenType.Parenthesis, ')'))\n ),\n },\n {\n id: StatementPosition.AfterTable,\n name: StatementPosition.AfterTable,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n previousKeyword?.value.toLowerCase() === FROM &&\n (previousNonWhiteSpace?.isVariable() ||\n (previousNonWhiteSpace?.value !== '' && previousNonWhiteSpace?.value.toLowerCase() !== FROM))\n );\n },\n },\n {\n id: StatementPosition.WhereKeyword,\n name: StatementPosition.WhereKeyword,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousKeyword?.value.toLowerCase() === WHERE &&\n (previousNonWhiteSpace?.isKeyword() ||\n previousNonWhiteSpace?.is(TokenType.Parenthesis, '(') ||\n previousNonWhiteSpace?.is(TokenType.Operator, AND))\n ),\n },\n {\n id: StatementPosition.WhereComparisonOperator,\n name: StatementPosition.WhereComparisonOperator,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousKeyword?.value.toLowerCase() === WHERE &&\n !previousNonWhiteSpace?.getPreviousNonWhiteSpaceToken()?.isOperator() &&\n !currentToken?.is(TokenType.Delimiter, '.') &&\n !currentToken?.isParenthesis() &&\n (previousNonWhiteSpace?.isIdentifier() || previousNonWhiteSpace?.isDoubleQuotedString())\n ),\n },\n {\n id: StatementPosition.WhereValue,\n name: StatementPosition.WhereValue,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(previousKeyword?.value.toLowerCase() === WHERE && previousNonWhiteSpace?.isOperator()),\n },\n {\n id: StatementPosition.AfterWhereValue,\n name: StatementPosition.AfterWhereValue,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n previousKeyword?.value.toLowerCase() === WHERE &&\n (previousNonWhiteSpace?.is(TokenType.Operator, 'and') ||\n previousNonWhiteSpace?.is(TokenType.Operator, 'or') ||\n previousNonWhiteSpace?.isString() ||\n previousNonWhiteSpace?.isNumber() ||\n previousNonWhiteSpace?.is(TokenType.Parenthesis, ')') ||\n previousNonWhiteSpace?.is(TokenType.Parenthesis, '()') ||\n previousNonWhiteSpace?.isTemplateVariable() ||\n (previousNonWhiteSpace?.is(TokenType.IdentifierQuote) &&\n previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()?.is(TokenType.Identifier) &&\n previousNonWhiteSpace\n ?.getPreviousNonWhiteSpaceToken()\n ?.getPreviousNonWhiteSpaceToken()\n ?.is(TokenType.IdentifierQuote)))\n );\n },\n },\n {\n id: StatementPosition.AfterGroupByKeywords,\n name: StatementPosition.AfterGroupByKeywords,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousKeyword?.is(TokenType.Keyword, BY) &&\n previousKeyword?.getPreviousKeyword()?.is(TokenType.Keyword, GROUP) &&\n (previousNonWhiteSpace?.is(TokenType.Keyword, BY) || previousNonWhiteSpace?.is(TokenType.Delimiter, ','))\n ),\n },\n {\n id: StatementPosition.AfterGroupByFunctionArgument,\n name: StatementPosition.AfterGroupByFunctionArgument,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n previousKeyword?.is(TokenType.Keyword, BY) &&\n previousKeyword?.getPreviousKeyword()?.is(TokenType.Keyword, GROUP) &&\n (previousNonWhiteSpace?.is(TokenType.Parenthesis, '(') || currentToken?.is(TokenType.Parenthesis, '()'))\n );\n },\n },\n {\n id: StatementPosition.AfterOrderByKeywords,\n name: StatementPosition.AfterOrderByKeywords,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousNonWhiteSpace?.is(TokenType.Keyword, BY) &&\n previousNonWhiteSpace?.getPreviousKeyword()?.is(TokenType.Keyword, ORDER)\n ),\n },\n {\n id: StatementPosition.AfterOrderByFunction,\n name: StatementPosition.AfterOrderByFunction,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(\n previousKeyword?.is(TokenType.Keyword, BY) &&\n previousKeyword?.getPreviousKeyword()?.is(TokenType.Keyword, ORDER) &&\n previousNonWhiteSpace?.is(TokenType.Parenthesis) &&\n previousNonWhiteSpace?.getPreviousNonWhiteSpaceToken()?.is(TokenType.Function)\n ),\n },\n {\n id: StatementPosition.AfterOrderByDirection,\n name: StatementPosition.AfterOrderByDirection,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) =>\n Boolean(previousKeyword?.is(TokenType.Keyword, DESC) || previousKeyword?.is(TokenType.Keyword, ASC)),\n },\n {\n id: StatementPosition.AfterIsOperator,\n name: StatementPosition.AfterIsOperator,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(previousNonWhiteSpace?.is(TokenType.Operator, 'IS'));\n },\n },\n {\n id: StatementPosition.AfterIsNotOperator,\n name: StatementPosition.AfterIsNotOperator,\n resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {\n return Boolean(\n previousNonWhiteSpace?.is(TokenType.Operator, 'NOT') &&\n previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()?.is(TokenType.Operator, 'IS')\n );\n },\n },\n ];\n}\n"],"names":[],"mappings":"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"}
|