@grafana/plugin-ui 0.13.1 → 0.14.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/dist/cjs/index.cjs +199 -200
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/cjs/index.d.cts +1 -1
  4. package/dist/cjs/test-utils.cjs +2 -2
  5. package/dist/cjs/test-utils.cjs.map +1 -1
  6. package/dist/cjs/test-utils.d.cts +1 -1
  7. package/dist/esm/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.js.map +1 -1
  8. package/dist/esm/components/ConfigEditor/Auth/Auth.js.map +1 -1
  9. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js +4 -4
  10. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js.map +1 -1
  11. package/dist/esm/components/ConfigEditor/Auth/auth-method/BasicAuth.js.map +1 -1
  12. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeader.js.map +1 -1
  13. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js +1 -1
  14. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js.map +1 -1
  15. package/dist/esm/components/ConfigEditor/Auth/styles.js.map +1 -1
  16. package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js +1 -1
  17. package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js.map +1 -1
  18. package/dist/esm/components/ConfigEditor/Auth/tls/SkipTLSVerification.js.map +1 -1
  19. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js +3 -3
  20. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js.map +1 -1
  21. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettings.js.map +1 -1
  22. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettingsSection.js.map +1 -1
  23. package/dist/esm/components/ConfigEditor/Auth/types.js.map +1 -1
  24. package/dist/esm/components/ConfigEditor/Auth/utils.js +3 -3
  25. package/dist/esm/components/ConfigEditor/Auth/utils.js.map +1 -1
  26. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js +2 -2
  27. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js.map +1 -1
  28. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSection.js.map +1 -1
  29. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSubSection.js.map +1 -1
  30. package/dist/esm/components/ConfigEditor/ConfigSection/GenericConfigSection.js.map +1 -1
  31. package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js +1 -1
  32. package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js.map +1 -1
  33. package/dist/esm/components/ConfigEditor/DataSourceDescription.js.map +1 -1
  34. package/dist/esm/components/ConfigEditor/SecureSocksProxyToggle.js.map +1 -1
  35. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js +11 -11
  36. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js.map +1 -1
  37. package/dist/esm/components/DataLinks/DataLink.js +4 -4
  38. package/dist/esm/components/DataLinks/DataLink.js.map +1 -1
  39. package/dist/esm/components/DataLinks/DataLinks.js +3 -3
  40. package/dist/esm/components/DataLinks/DataLinks.js.map +1 -1
  41. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js +8 -8
  42. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js.map +1 -1
  43. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  44. package/dist/esm/components/DatePicker/styles.js +2 -2
  45. package/dist/esm/components/DatePicker/styles.js.map +1 -1
  46. package/dist/esm/components/DatePickerWithInput/DatePickerWithInput.js.map +1 -1
  47. package/dist/esm/components/DatePickerWithInput/styles.js +2 -2
  48. package/dist/esm/components/DatePickerWithInput/styles.js.map +1 -1
  49. package/dist/esm/components/DebounceInput/DebounceInput.js.map +1 -1
  50. package/dist/esm/components/Plugins/PluginSignatureBadge.js.map +1 -1
  51. package/dist/esm/components/QueryEditor/AccessoryButton.js.map +1 -1
  52. package/dist/esm/components/QueryEditor/CatalogSelector.js +1 -1
  53. package/dist/esm/components/QueryEditor/CatalogSelector.js.map +1 -1
  54. package/dist/esm/components/QueryEditor/ConfirmModal.js +1 -1
  55. package/dist/esm/components/QueryEditor/ConfirmModal.js.map +1 -1
  56. package/dist/esm/components/QueryEditor/DatasetSelector.js +1 -1
  57. package/dist/esm/components/QueryEditor/DatasetSelector.js.map +1 -1
  58. package/dist/esm/components/QueryEditor/EditorField.js +5 -5
  59. package/dist/esm/components/QueryEditor/EditorField.js.map +1 -1
  60. package/dist/esm/components/QueryEditor/EditorFieldGroup.js.map +1 -1
  61. package/dist/esm/components/QueryEditor/EditorHeader.js +2 -2
  62. package/dist/esm/components/QueryEditor/EditorHeader.js.map +1 -1
  63. package/dist/esm/components/QueryEditor/EditorList.js.map +1 -1
  64. package/dist/esm/components/QueryEditor/EditorRow.js +4 -4
  65. package/dist/esm/components/QueryEditor/EditorRow.js.map +1 -1
  66. package/dist/esm/components/QueryEditor/EditorRows.js +2 -2
  67. package/dist/esm/components/QueryEditor/EditorRows.js.map +1 -1
  68. package/dist/esm/components/QueryEditor/EditorStack.js +1 -1
  69. package/dist/esm/components/QueryEditor/EditorStack.js.map +1 -1
  70. package/dist/esm/components/QueryEditor/EditorSwitch.js +2 -2
  71. package/dist/esm/components/QueryEditor/EditorSwitch.js.map +1 -1
  72. package/dist/esm/components/QueryEditor/FlexItem.js.map +1 -1
  73. package/dist/esm/components/QueryEditor/InlineSelect.js.map +1 -1
  74. package/dist/esm/components/QueryEditor/InputGroup.js +2 -2
  75. package/dist/esm/components/QueryEditor/InputGroup.js.map +1 -1
  76. package/dist/esm/components/QueryEditor/QueryEditor.js +7 -7
  77. package/dist/esm/components/QueryEditor/QueryEditor.js.map +1 -1
  78. package/dist/esm/components/QueryEditor/QueryHeader.js +18 -18
  79. package/dist/esm/components/QueryEditor/QueryHeader.js.map +1 -1
  80. package/dist/esm/components/QueryEditor/RunQueryButton.js +1 -1
  81. package/dist/esm/components/QueryEditor/RunQueryButton.js.map +1 -1
  82. package/dist/esm/components/QueryEditor/Space.js +2 -2
  83. package/dist/esm/components/QueryEditor/Space.js.map +1 -1
  84. package/dist/esm/components/QueryEditor/TableSelector.js.map +1 -1
  85. package/dist/esm/components/QueryEditor/defaults.js +7 -7
  86. package/dist/esm/components/QueryEditor/defaults.js.map +1 -1
  87. package/dist/esm/components/QueryEditor/expressions.js.map +1 -1
  88. package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js.map +1 -1
  89. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js +1 -1
  90. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js.map +1 -1
  91. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js +4 -4
  92. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js.map +1 -1
  93. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js +3 -3
  94. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js.map +1 -1
  95. package/dist/esm/components/QueryEditor/types.js.map +1 -1
  96. package/dist/esm/components/QueryEditor/utils/formatSQL.js.map +1 -1
  97. package/dist/esm/components/QueryEditor/utils/sql.utils.js +8 -8
  98. package/dist/esm/components/QueryEditor/utils/sql.utils.js.map +1 -1
  99. package/dist/esm/components/QueryEditor/utils/useSqlChange.js.map +1 -1
  100. package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js +26 -27
  101. package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js.map +1 -1
  102. package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js +3 -3
  103. package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js.map +1 -1
  104. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js +2 -2
  105. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js.map +1 -1
  106. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRows.js.map +1 -1
  107. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js +2 -2
  108. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js.map +1 -1
  109. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js +4 -4
  110. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js.map +1 -1
  111. package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js +2 -2
  112. package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js.map +1 -1
  113. package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js.map +1 -1
  114. package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js +2 -2
  115. package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js.map +1 -1
  116. package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js.map +1 -1
  117. package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js.map +1 -1
  118. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js +9 -9
  119. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js.map +1 -1
  120. package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js.map +1 -1
  121. package/dist/esm/components/QueryEditor/visual-query-builder/WhereRow.js.map +1 -1
  122. package/dist/esm/components/QueryEditorRow/QueryEditorRow.js.map +1 -1
  123. package/dist/esm/components/SQLEditor/components/SQLEditor.js +13 -13
  124. package/dist/esm/components/SQLEditor/components/SQLEditor.js.map +1 -1
  125. package/dist/esm/components/SQLEditor/hooks/useLatestCallback.js +1 -1
  126. package/dist/esm/components/SQLEditor/hooks/useLatestCallback.js.map +1 -1
  127. package/dist/esm/components/SQLEditor/mocks/Monaco.js.map +1 -1
  128. package/dist/esm/components/SQLEditor/mocks/TextModel.js.map +1 -1
  129. package/dist/esm/components/SQLEditor/mocks/queries/multiLineFullQuery.js.map +1 -1
  130. package/dist/esm/components/SQLEditor/mocks/queries/multiLineFullQueryWithAggregation.js.map +1 -1
  131. package/dist/esm/components/SQLEditor/mocks/queries/multiLineMultipleColumns.js.map +1 -1
  132. package/dist/esm/components/SQLEditor/mocks/queries/singleLineEmptyQuery.js.map +1 -1
  133. package/dist/esm/components/SQLEditor/mocks/queries/singleLineFullQuery.js.map +1 -1
  134. package/dist/esm/components/SQLEditor/mocks/queries/singleLineFullQueryWithAggregation.js.map +1 -1
  135. package/dist/esm/components/SQLEditor/mocks/queries/singleLineMultipleColumns.js.map +1 -1
  136. package/dist/esm/components/SQLEditor/mocks/queries/singleLineTwoQueries.js.map +1 -1
  137. package/dist/esm/components/SQLEditor/mocks/queries/singleLineTwoQueriesWithAggregation.js.map +1 -1
  138. package/dist/esm/components/SQLEditor/standardSql/definition.js.map +1 -1
  139. package/dist/esm/components/SQLEditor/standardSql/getStandardSuggestions.js +2 -2
  140. package/dist/esm/components/SQLEditor/standardSql/getStandardSuggestions.js.map +1 -1
  141. package/dist/esm/components/SQLEditor/standardSql/getStatementPosition.js +3 -3
  142. package/dist/esm/components/SQLEditor/standardSql/getStatementPosition.js.map +1 -1
  143. package/dist/esm/components/SQLEditor/standardSql/language.js.map +1 -1
  144. package/dist/esm/components/SQLEditor/standardSql/macros.js.map +1 -1
  145. package/dist/esm/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js +2 -2
  146. package/dist/esm/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js.map +1 -1
  147. package/dist/esm/components/SQLEditor/standardSql/standardSuggestionsRegistry.js +1 -1
  148. package/dist/esm/components/SQLEditor/standardSql/standardSuggestionsRegistry.js.map +1 -1
  149. package/dist/esm/components/SQLEditor/standardSql/statementPositionResolversRegistry.js +25 -25
  150. package/dist/esm/components/SQLEditor/standardSql/statementPositionResolversRegistry.js.map +1 -1
  151. package/dist/esm/components/SQLEditor/standardSql/suggestionsKindRegistry.js +1 -1
  152. package/dist/esm/components/SQLEditor/standardSql/suggestionsKindRegistry.js.map +1 -1
  153. package/dist/esm/components/SQLEditor/test-utils/index.js.map +1 -1
  154. package/dist/esm/components/SQLEditor/test-utils/statementPosition.js.map +1 -1
  155. package/dist/esm/components/SQLEditor/types.js.map +1 -1
  156. package/dist/esm/components/SQLEditor/utils/LinkedToken.js +7 -7
  157. package/dist/esm/components/SQLEditor/utils/LinkedToken.js.map +1 -1
  158. package/dist/esm/components/SQLEditor/utils/commands.js.map +1 -1
  159. package/dist/esm/components/SQLEditor/utils/debugger.js +1 -1
  160. package/dist/esm/components/SQLEditor/utils/debugger.js.map +1 -1
  161. package/dist/esm/components/SQLEditor/utils/getSuggestionKind.js.map +1 -1
  162. package/dist/esm/components/SQLEditor/utils/linkedTokenBuilder.js +1 -1
  163. package/dist/esm/components/SQLEditor/utils/linkedTokenBuilder.js.map +1 -1
  164. package/dist/esm/components/SQLEditor/utils/toCompletionItem.js +1 -1
  165. package/dist/esm/components/SQLEditor/utils/toCompletionItem.js.map +1 -1
  166. package/dist/esm/components/SQLEditor/utils/tokenUtils.js +9 -9
  167. package/dist/esm/components/SQLEditor/utils/tokenUtils.js.map +1 -1
  168. package/dist/esm/components/Segment/Segment.js.map +1 -1
  169. package/dist/esm/components/VisualQueryBuilder/QueryModellerBase.js +2 -2
  170. package/dist/esm/components/VisualQueryBuilder/QueryModellerBase.js.map +1 -1
  171. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js +11 -11
  172. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js.map +1 -1
  173. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js +1 -1
  174. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js.map +1 -1
  175. package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js +4 -4
  176. package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js.map +1 -1
  177. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js +2 -2
  178. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js.map +1 -1
  179. package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js +3 -3
  180. package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js.map +1 -1
  181. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js +2 -2
  182. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js.map +1 -1
  183. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js +2 -2
  184. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js.map +1 -1
  185. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js +3 -3
  186. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js.map +1 -1
  187. package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js +2 -2
  188. package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js.map +1 -1
  189. package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js +5 -5
  190. package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js.map +1 -1
  191. package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js +2 -2
  192. package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js.map +1 -1
  193. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js +8 -8
  194. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js.map +1 -1
  195. package/dist/esm/components/VisualQueryBuilder/components/QueryEditorModeToggle.js.map +1 -1
  196. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js +2 -2
  197. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js.map +1 -1
  198. package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js.map +1 -1
  199. package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js +2 -2
  200. package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js.map +1 -1
  201. package/dist/esm/components/VisualQueryBuilder/types.js.map +1 -1
  202. package/dist/esm/datasource/SqlDatasource.js +14 -14
  203. package/dist/esm/datasource/SqlDatasource.js.map +1 -1
  204. package/dist/esm/datasource/constants.js.map +1 -1
  205. package/dist/esm/hooks/useDebounce.js.map +1 -1
  206. package/dist/esm/index.d.ts +1 -1
  207. package/dist/esm/test/mocks/DataQuery.js.map +1 -1
  208. package/dist/esm/test/mocks/Datasource.js +1 -1
  209. package/dist/esm/test/mocks/Datasource.js.map +1 -1
  210. package/dist/esm/test/mocks/Plugin.js +1 -1
  211. package/dist/esm/test/mocks/Plugin.js.map +1 -1
  212. package/dist/esm/test/mocks/QueryEditorProps.js.map +1 -1
  213. package/dist/esm/test/mocks/utils.js +2 -2
  214. package/dist/esm/test/mocks/utils.js.map +1 -1
  215. package/dist/esm/test-utils.d.ts +1 -1
  216. package/package.json +10 -26
@@ -9,7 +9,7 @@ function initStatementPositionResolvers() {
9
9
  id: StatementPosition.SelectKeyword,
10
10
  name: StatementPosition.SelectKeyword,
11
11
  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 ? undefined : currentToken.previous) === null) || currentToken.isIdentifier() && SELECT.startsWith(currentToken.value.toLowerCase())
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 ? void 0 : currentToken.previous) === null) || currentToken.isIdentifier() && SELECT.startsWith(currentToken.value.toLowerCase())
13
13
  )
14
14
  },
15
15
  {
@@ -22,13 +22,13 @@ function initStatementPositionResolvers() {
22
22
  {
23
23
  id: StatementPosition.AfterSelectKeyword,
24
24
  name: StatementPosition.AfterSelectKeyword,
25
- resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean((previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.value.toLowerCase()) === SELECT)
25
+ resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value.toLowerCase()) === SELECT)
26
26
  },
27
27
  {
28
28
  id: StatementPosition.AfterSelectArguments,
29
29
  name: StatementPosition.AfterSelectArguments,
30
30
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
31
- return Boolean((previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === SELECT && (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.value) === ",");
31
+ return Boolean((previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === SELECT && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value) === ",");
32
32
  }
33
33
  },
34
34
  {
@@ -36,7 +36,7 @@ function initStatementPositionResolvers() {
36
36
  name: StatementPosition.AfterSelectFuncFirstArgument,
37
37
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
38
38
  return Boolean(
39
- ((previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === SELECT || (previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === AS) && ((previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Parenthesis, "(")) || (currentToken == null ? undefined : currentToken.is(TokenType.Parenthesis, "()")))
39
+ ((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
40
  );
41
41
  }
42
42
  },
@@ -45,7 +45,7 @@ function initStatementPositionResolvers() {
45
45
  name: StatementPosition.AfterWhereFunctionArgument,
46
46
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
47
47
  return Boolean(
48
- (previousKeyword == null ? undefined : previousKeyword.is(TokenType.Keyword, WHERE)) && ((previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Parenthesis, "(")) || (currentToken == null ? undefined : currentToken.is(TokenType.Parenthesis, "()")))
48
+ (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
49
  );
50
50
  }
51
51
  },
@@ -55,7 +55,7 @@ function initStatementPositionResolvers() {
55
55
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
56
56
  var _a;
57
57
  return Boolean(
58
- (previousKeyword == null ? undefined : previousKeyword.is(TokenType.Keyword, BY)) && ((_a = previousKeyword == null ? undefined : previousKeyword.getPreviousKeyword()) == null ? undefined : _a.is(TokenType.Keyword, GROUP)) && ((previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isIdentifier()) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isDoubleQuotedString()) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Parenthesis, ")")) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Parenthesis, "()")))
58
+ (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
59
  );
60
60
  }
61
61
  },
@@ -63,7 +63,7 @@ function initStatementPositionResolvers() {
63
63
  id: StatementPosition.SelectAlias,
64
64
  name: StatementPosition.SelectAlias,
65
65
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
66
- if ((previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.value) === "," && (previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === AS) {
66
+ if ((previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value) === "," && (previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === AS) {
67
67
  return true;
68
68
  }
69
69
  return false;
@@ -74,25 +74,25 @@ function initStatementPositionResolvers() {
74
74
  name: StatementPosition.FromKeyword,
75
75
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
76
76
  return Boolean(
77
- (previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === SELECT && (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.value) !== "," || ((currentToken == null ? undefined : currentToken.isKeyword()) || (currentToken == null ? undefined : currentToken.isIdentifier())) && FROM.toLowerCase().startsWith(currentToken.value.toLowerCase())
77
+ (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
78
  );
79
79
  }
80
80
  },
81
81
  {
82
82
  id: StatementPosition.AfterFromKeyword,
83
83
  name: StatementPosition.AfterFromKeyword,
84
- resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean(!(currentToken == null ? undefined : currentToken.value.includes(".")) && (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.value.toLowerCase()) === FROM)
84
+ resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean(!(currentToken == null ? void 0 : currentToken.value.includes(".")) && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value.toLowerCase()) === FROM)
85
85
  },
86
86
  {
87
87
  id: StatementPosition.AfterSchema,
88
88
  name: StatementPosition.AfterSchema,
89
89
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
90
- if ((currentToken == null ? undefined : currentToken.isWhiteSpace()) && (currentToken == null ? undefined : currentToken.next)) {
91
- currentToken = currentToken == null ? undefined : currentToken.previous;
90
+ if ((currentToken == null ? void 0 : currentToken.isWhiteSpace()) && (currentToken == null ? void 0 : currentToken.next)) {
91
+ currentToken = currentToken == null ? void 0 : currentToken.previous;
92
92
  previousNonWhiteSpace = currentToken.getPreviousNonWhiteSpaceToken();
93
93
  }
94
94
  return Boolean(
95
- (currentToken == null ? undefined : currentToken.isIdentifier()) && (currentToken == null ? undefined : currentToken.value.endsWith(".")) && (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.value.toLowerCase()) === FROM
95
+ (currentToken == null ? void 0 : currentToken.isIdentifier()) && (currentToken == null ? void 0 : currentToken.value.endsWith(".")) && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.value.toLowerCase()) === FROM
96
96
  );
97
97
  }
98
98
  },
@@ -100,7 +100,7 @@ function initStatementPositionResolvers() {
100
100
  id: StatementPosition.AfterFrom,
101
101
  name: StatementPosition.AfterFrom,
102
102
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean(
103
- (previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === FROM && (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isDoubleQuotedString()) || (previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === FROM && (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isIdentifier()) || (previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === FROM && (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isVariable())
103
+ (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
104
  // cloudwatch specific
105
105
  // (previousKeyword?.value === SCHEMA && previousNonWhiteSpace?.is(TokenType.Parenthesis, ')'))
106
106
  )
@@ -110,7 +110,7 @@ function initStatementPositionResolvers() {
110
110
  name: StatementPosition.AfterTable,
111
111
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
112
112
  return Boolean(
113
- (previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === FROM && ((previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isVariable()) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.value) !== "" && (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.value.toLowerCase()) !== FROM)
113
+ (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
114
  );
115
115
  }
116
116
  },
@@ -118,7 +118,7 @@ function initStatementPositionResolvers() {
118
118
  id: StatementPosition.WhereKeyword,
119
119
  name: StatementPosition.WhereKeyword,
120
120
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean(
121
- (previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === WHERE && ((previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isKeyword()) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Parenthesis, "(")) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Operator, AND)))
121
+ (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
122
  )
123
123
  },
124
124
  {
@@ -127,14 +127,14 @@ function initStatementPositionResolvers() {
127
127
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
128
128
  var _a;
129
129
  return Boolean(
130
- (previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === WHERE && !((_a = previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()) == null ? undefined : _a.isOperator()) && !(currentToken == null ? undefined : currentToken.is(TokenType.Delimiter, ".")) && !(currentToken == null ? undefined : currentToken.isParenthesis()) && ((previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isIdentifier()) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isDoubleQuotedString()))
130
+ (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
131
  );
132
132
  }
133
133
  },
134
134
  {
135
135
  id: StatementPosition.WhereValue,
136
136
  name: StatementPosition.WhereValue,
137
- resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean((previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === WHERE && (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isOperator()))
137
+ resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean((previousKeyword == null ? void 0 : previousKeyword.value.toLowerCase()) === WHERE && (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.isOperator()))
138
138
  },
139
139
  {
140
140
  id: StatementPosition.AfterWhereValue,
@@ -142,7 +142,7 @@ function initStatementPositionResolvers() {
142
142
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
143
143
  var _a, _b, _c;
144
144
  return Boolean(
145
- (previousKeyword == null ? undefined : previousKeyword.value.toLowerCase()) === WHERE && ((previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Operator, "and")) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Operator, "or")) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isString()) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isNumber()) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Parenthesis, ")")) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Parenthesis, "()")) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.isTemplateVariable()) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.IdentifierQuote)) && ((_a = previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()) == null ? undefined : _a.is(TokenType.Identifier)) && ((_c = (_b = previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()) == null ? undefined : _b.getPreviousNonWhiteSpaceToken()) == null ? undefined : _c.is(TokenType.IdentifierQuote)))
145
+ (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
146
  );
147
147
  }
148
148
  },
@@ -152,7 +152,7 @@ function initStatementPositionResolvers() {
152
152
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
153
153
  var _a;
154
154
  return Boolean(
155
- (previousKeyword == null ? undefined : previousKeyword.is(TokenType.Keyword, BY)) && ((_a = previousKeyword == null ? undefined : previousKeyword.getPreviousKeyword()) == null ? undefined : _a.is(TokenType.Keyword, GROUP)) && ((previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Keyword, BY)) || (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Delimiter, ",")))
155
+ (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
156
  );
157
157
  }
158
158
  },
@@ -162,7 +162,7 @@ function initStatementPositionResolvers() {
162
162
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
163
163
  var _a;
164
164
  return Boolean(
165
- (previousKeyword == null ? undefined : previousKeyword.is(TokenType.Keyword, BY)) && ((_a = previousKeyword == null ? undefined : previousKeyword.getPreviousKeyword()) == null ? undefined : _a.is(TokenType.Keyword, GROUP)) && ((previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Parenthesis, "(")) || (currentToken == null ? undefined : currentToken.is(TokenType.Parenthesis, "()")))
165
+ (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
166
  );
167
167
  }
168
168
  },
@@ -172,7 +172,7 @@ function initStatementPositionResolvers() {
172
172
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
173
173
  var _a;
174
174
  return Boolean(
175
- (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Keyword, BY)) && ((_a = previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.getPreviousKeyword()) == null ? undefined : _a.is(TokenType.Keyword, ORDER))
175
+ (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
176
  );
177
177
  }
178
178
  },
@@ -182,20 +182,20 @@ function initStatementPositionResolvers() {
182
182
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
183
183
  var _a, _b;
184
184
  return Boolean(
185
- (previousKeyword == null ? undefined : previousKeyword.is(TokenType.Keyword, BY)) && ((_a = previousKeyword == null ? undefined : previousKeyword.getPreviousKeyword()) == null ? undefined : _a.is(TokenType.Keyword, ORDER)) && (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Parenthesis)) && ((_b = previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()) == null ? undefined : _b.is(TokenType.Function))
185
+ (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
186
  );
187
187
  }
188
188
  },
189
189
  {
190
190
  id: StatementPosition.AfterOrderByDirection,
191
191
  name: StatementPosition.AfterOrderByDirection,
192
- resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => Boolean((previousKeyword == null ? undefined : previousKeyword.is(TokenType.Keyword, DESC)) || (previousKeyword == null ? undefined : previousKeyword.is(TokenType.Keyword, ASC)))
192
+ 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
193
  },
194
194
  {
195
195
  id: StatementPosition.AfterIsOperator,
196
196
  name: StatementPosition.AfterIsOperator,
197
197
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
198
- return Boolean(previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Operator, "IS"));
198
+ return Boolean(previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Operator, "IS"));
199
199
  }
200
200
  },
201
201
  {
@@ -204,7 +204,7 @@ function initStatementPositionResolvers() {
204
204
  resolve: (currentToken, previousKeyword, previousNonWhiteSpace, previousIsSlash) => {
205
205
  var _a;
206
206
  return Boolean(
207
- (previousNonWhiteSpace == null ? undefined : previousNonWhiteSpace.is(TokenType.Operator, "NOT")) && ((_a = previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()) == null ? undefined : _a.is(TokenType.Operator, "IS"))
207
+ (previousNonWhiteSpace == null ? void 0 : previousNonWhiteSpace.is(TokenType.Operator, "NOT")) && ((_a = previousNonWhiteSpace.getPreviousNonWhiteSpaceToken()) == null ? void 0 : _a.is(TokenType.Operator, "IS"))
208
208
  );
209
209
  }
210
210
  }
@@ -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":"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"}
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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"}
@@ -1,5 +1,5 @@
1
1
  import '@grafana/data';
2
- import { StatementPosition, SuggestionKind } from '../types.js';
2
+ import { SuggestionKind, StatementPosition } from '../types.js';
3
3
 
4
4
  const initSuggestionsKindRegistry = () => {
5
5
  return [
@@ -1 +1 @@
1
- {"version":3,"file":"suggestionsKindRegistry.js","sources":["../../../../../src/components/SQLEditor/standardSql/suggestionsKindRegistry.ts"],"sourcesContent":["import { type RegistryItem } from '@grafana/data';\nimport { StatementPosition, SuggestionKind } from '../types';\n\nexport interface SuggestionKindRegistryItem extends RegistryItem {\n id: StatementPosition;\n kind: SuggestionKind[];\n}\n\n// Registry of possible suggestions for the given statement position\nexport const initSuggestionsKindRegistry = (): SuggestionKindRegistryItem[] => {\n return [\n {\n id: StatementPosition.SelectKeyword,\n name: StatementPosition.SelectKeyword,\n kind: [SuggestionKind.SelectKeyword],\n },\n {\n id: StatementPosition.WithKeyword,\n name: StatementPosition.WithKeyword,\n kind: [SuggestionKind.WithKeyword],\n },\n {\n id: StatementPosition.AfterSelectKeyword,\n name: StatementPosition.AfterSelectKeyword,\n kind: [\n SuggestionKind.StarWildCard,\n SuggestionKind.FunctionsWithArguments,\n SuggestionKind.Columns,\n SuggestionKind.SelectMacro,\n ],\n },\n {\n id: StatementPosition.AfterSelectFuncFirstArgument,\n name: StatementPosition.AfterSelectFuncFirstArgument,\n kind: [SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterGroupByFunctionArgument,\n name: StatementPosition.AfterGroupByFunctionArgument,\n kind: [SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterWhereFunctionArgument,\n name: StatementPosition.AfterWhereFunctionArgument,\n kind: [SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterSelectArguments,\n name: StatementPosition.AfterSelectArguments,\n kind: [SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterFromKeyword,\n name: StatementPosition.AfterFromKeyword,\n kind: [SuggestionKind.Schemas, SuggestionKind.Tables, SuggestionKind.TableMacro],\n },\n {\n id: StatementPosition.AfterSchema,\n name: StatementPosition.AfterSchema,\n kind: [SuggestionKind.Tables, SuggestionKind.TableMacro],\n },\n {\n id: StatementPosition.SelectAlias,\n name: StatementPosition.SelectAlias,\n kind: [SuggestionKind.Columns, SuggestionKind.FunctionsWithArguments],\n },\n {\n id: StatementPosition.FromKeyword,\n name: StatementPosition.FromKeyword,\n kind: [SuggestionKind.FromKeyword],\n },\n {\n id: StatementPosition.AfterFrom,\n name: StatementPosition.AfterFrom,\n kind: [\n SuggestionKind.WhereKeyword,\n SuggestionKind.GroupByKeywords,\n SuggestionKind.OrderByKeywords,\n SuggestionKind.LimitKeyword,\n ],\n },\n {\n id: StatementPosition.AfterTable,\n name: StatementPosition.AfterTable,\n kind: [\n SuggestionKind.WhereKeyword,\n SuggestionKind.GroupByKeywords,\n SuggestionKind.OrderByKeywords,\n SuggestionKind.LimitKeyword,\n ],\n },\n {\n id: StatementPosition.WhereKeyword,\n name: StatementPosition.WhereKeyword,\n kind: [SuggestionKind.Columns, SuggestionKind.FilterMacro, SuggestionKind.TemplateVariables],\n },\n {\n id: StatementPosition.WhereComparisonOperator,\n name: StatementPosition.WhereComparisonOperator,\n kind: [SuggestionKind.ComparisonOperators],\n },\n {\n id: StatementPosition.WhereValue,\n name: StatementPosition.WhereValue,\n kind: [SuggestionKind.FilterMacro, SuggestionKind.TemplateVariables],\n },\n {\n id: StatementPosition.AfterWhereValue,\n name: StatementPosition.AfterWhereValue,\n kind: [\n SuggestionKind.LogicalOperators,\n SuggestionKind.GroupByKeywords,\n SuggestionKind.OrderByKeywords,\n SuggestionKind.LimitKeyword,\n SuggestionKind.Columns,\n SuggestionKind.TemplateVariables,\n ],\n },\n {\n id: StatementPosition.AfterGroupByKeywords,\n name: StatementPosition.AfterGroupByKeywords,\n kind: [SuggestionKind.GroupMacro, SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterGroupBy,\n name: StatementPosition.AfterGroupBy,\n kind: [SuggestionKind.OrderByKeywords, SuggestionKind.LimitKeyword],\n },\n {\n id: StatementPosition.AfterOrderByKeywords,\n name: StatementPosition.AfterOrderByKeywords,\n kind: [SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterOrderByFunction,\n name: StatementPosition.AfterOrderByFunction,\n kind: [SuggestionKind.SortOrderDirectionKeyword, SuggestionKind.LimitKeyword],\n },\n {\n id: StatementPosition.AfterOrderByDirection,\n name: StatementPosition.AfterOrderByDirection,\n kind: [SuggestionKind.LimitKeyword],\n },\n {\n id: StatementPosition.AfterIsOperator,\n name: StatementPosition.AfterOrderByDirection,\n kind: [SuggestionKind.NotKeyword, SuggestionKind.NullValue, SuggestionKind.BoolValues],\n },\n {\n id: StatementPosition.AfterIsNotOperator,\n name: StatementPosition.AfterOrderByDirection,\n kind: [SuggestionKind.NullValue, SuggestionKind.BoolValues],\n },\n ];\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"suggestionsKindRegistry.js","sources":["../../../../../src/components/SQLEditor/standardSql/suggestionsKindRegistry.ts"],"sourcesContent":["import { type RegistryItem } from '@grafana/data';\nimport { StatementPosition, SuggestionKind } from '../types';\n\nexport interface SuggestionKindRegistryItem extends RegistryItem {\n id: StatementPosition;\n kind: SuggestionKind[];\n}\n\n// Registry of possible suggestions for the given statement position\nexport const initSuggestionsKindRegistry = (): SuggestionKindRegistryItem[] => {\n return [\n {\n id: StatementPosition.SelectKeyword,\n name: StatementPosition.SelectKeyword,\n kind: [SuggestionKind.SelectKeyword],\n },\n {\n id: StatementPosition.WithKeyword,\n name: StatementPosition.WithKeyword,\n kind: [SuggestionKind.WithKeyword],\n },\n {\n id: StatementPosition.AfterSelectKeyword,\n name: StatementPosition.AfterSelectKeyword,\n kind: [\n SuggestionKind.StarWildCard,\n SuggestionKind.FunctionsWithArguments,\n SuggestionKind.Columns,\n SuggestionKind.SelectMacro,\n ],\n },\n {\n id: StatementPosition.AfterSelectFuncFirstArgument,\n name: StatementPosition.AfterSelectFuncFirstArgument,\n kind: [SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterGroupByFunctionArgument,\n name: StatementPosition.AfterGroupByFunctionArgument,\n kind: [SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterWhereFunctionArgument,\n name: StatementPosition.AfterWhereFunctionArgument,\n kind: [SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterSelectArguments,\n name: StatementPosition.AfterSelectArguments,\n kind: [SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterFromKeyword,\n name: StatementPosition.AfterFromKeyword,\n kind: [SuggestionKind.Schemas, SuggestionKind.Tables, SuggestionKind.TableMacro],\n },\n {\n id: StatementPosition.AfterSchema,\n name: StatementPosition.AfterSchema,\n kind: [SuggestionKind.Tables, SuggestionKind.TableMacro],\n },\n {\n id: StatementPosition.SelectAlias,\n name: StatementPosition.SelectAlias,\n kind: [SuggestionKind.Columns, SuggestionKind.FunctionsWithArguments],\n },\n {\n id: StatementPosition.FromKeyword,\n name: StatementPosition.FromKeyword,\n kind: [SuggestionKind.FromKeyword],\n },\n {\n id: StatementPosition.AfterFrom,\n name: StatementPosition.AfterFrom,\n kind: [\n SuggestionKind.WhereKeyword,\n SuggestionKind.GroupByKeywords,\n SuggestionKind.OrderByKeywords,\n SuggestionKind.LimitKeyword,\n ],\n },\n {\n id: StatementPosition.AfterTable,\n name: StatementPosition.AfterTable,\n kind: [\n SuggestionKind.WhereKeyword,\n SuggestionKind.GroupByKeywords,\n SuggestionKind.OrderByKeywords,\n SuggestionKind.LimitKeyword,\n ],\n },\n {\n id: StatementPosition.WhereKeyword,\n name: StatementPosition.WhereKeyword,\n kind: [SuggestionKind.Columns, SuggestionKind.FilterMacro, SuggestionKind.TemplateVariables],\n },\n {\n id: StatementPosition.WhereComparisonOperator,\n name: StatementPosition.WhereComparisonOperator,\n kind: [SuggestionKind.ComparisonOperators],\n },\n {\n id: StatementPosition.WhereValue,\n name: StatementPosition.WhereValue,\n kind: [SuggestionKind.FilterMacro, SuggestionKind.TemplateVariables],\n },\n {\n id: StatementPosition.AfterWhereValue,\n name: StatementPosition.AfterWhereValue,\n kind: [\n SuggestionKind.LogicalOperators,\n SuggestionKind.GroupByKeywords,\n SuggestionKind.OrderByKeywords,\n SuggestionKind.LimitKeyword,\n SuggestionKind.Columns,\n SuggestionKind.TemplateVariables,\n ],\n },\n {\n id: StatementPosition.AfterGroupByKeywords,\n name: StatementPosition.AfterGroupByKeywords,\n kind: [SuggestionKind.GroupMacro, SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterGroupBy,\n name: StatementPosition.AfterGroupBy,\n kind: [SuggestionKind.OrderByKeywords, SuggestionKind.LimitKeyword],\n },\n {\n id: StatementPosition.AfterOrderByKeywords,\n name: StatementPosition.AfterOrderByKeywords,\n kind: [SuggestionKind.Columns],\n },\n {\n id: StatementPosition.AfterOrderByFunction,\n name: StatementPosition.AfterOrderByFunction,\n kind: [SuggestionKind.SortOrderDirectionKeyword, SuggestionKind.LimitKeyword],\n },\n {\n id: StatementPosition.AfterOrderByDirection,\n name: StatementPosition.AfterOrderByDirection,\n kind: [SuggestionKind.LimitKeyword],\n },\n {\n id: StatementPosition.AfterIsOperator,\n name: StatementPosition.AfterOrderByDirection,\n kind: [SuggestionKind.NotKeyword, SuggestionKind.NullValue, SuggestionKind.BoolValues],\n },\n {\n id: StatementPosition.AfterIsNotOperator,\n name: StatementPosition.AfterOrderByDirection,\n kind: [SuggestionKind.NullValue, SuggestionKind.BoolValues],\n },\n ];\n};\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/SQLEditor/test-utils/index.ts"],"sourcesContent":["import * as testData from '../mocks/testData';\nimport { testStatementPosition } from './statementPosition';\nimport { type TestQueryModel } from './types';\n\nexport const SQLEditorTestUtils = {\n testData,\n testStatementPosition,\n};\n\nexport type { TestQueryModel };\n"],"names":[],"mappings":";;;;AAIO,MAAM,kBAAqB,GAAA;AAAA,EAChC,QAAA;AAAA,EACA;AACF;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/SQLEditor/test-utils/index.ts"],"sourcesContent":["import * as testData from '../mocks/testData';\nimport { testStatementPosition } from './statementPosition';\nimport { type TestQueryModel } from './types';\n\nexport const SQLEditorTestUtils = {\n testData,\n testStatementPosition,\n};\n\nexport type { TestQueryModel };\n"],"names":[],"mappings":";;;;AAIO,MAAM,kBAAA,GAAqB;AAAA,EAChC,QAAA;AAAA,EACA;AACF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"statementPosition.js","sources":["../../../../../src/components/SQLEditor/test-utils/statementPosition.ts"],"sourcesContent":["import { Registry } from '@grafana/data';\nimport { type monacoTypes } from '@grafana/ui';\nimport { getMonacoMock } from '../mocks/Monaco';\nimport { TextModel } from '../mocks/TextModel';\nimport { getStatementPosition } from '../standardSql/getStatementPosition';\nimport { type StatementPositionResolversRegistryItem } from '../standardSql/types';\nimport { type CustomStatementPlacement, type StatementPosition } from '../types';\nimport { linkedTokenBuilder } from '../utils/linkedTokenBuilder';\nimport { type StatementPositionResolverTestCase } from './types';\n\nfunction assertPosition(\n query: string,\n position: monacoTypes.IPosition,\n expected: StatementPosition | string,\n monacoMock: any,\n resolversRegistry: Registry<StatementPositionResolversRegistryItem>\n) {\n const testModel = TextModel(query);\n const current = linkedTokenBuilder(monacoMock, testModel as monacoTypes.editor.ITextModel, position);\n const statementPosition = getStatementPosition(current, resolversRegistry);\n\n expect(statementPosition).toContain(expected);\n}\n\nexport const testStatementPosition = (\n expected: StatementPosition | string,\n cases: StatementPositionResolverTestCase[],\n resolvers: () => CustomStatementPlacement[]\n) => {\n describe(`${expected}`, () => {\n let MonacoMock: any;\n let statementPositionResolversRegistry: Registry<StatementPositionResolversRegistryItem>;\n\n beforeEach(() => {\n const mockQueries = new Map<string, Array<Array<Pick<monacoTypes.Token, 'language' | 'offset' | 'type'>>>>();\n cases.forEach((c) => mockQueries.set(c.query.query, c.query.tokens));\n\n MonacoMock = getMonacoMock(mockQueries);\n statementPositionResolversRegistry = new Registry(() => {\n return resolvers().map((r) => ({\n id: r.id as StatementPosition,\n name: r.name || r.id,\n resolve: r.resolve,\n }));\n });\n });\n\n // using forEach here rather than test.each as been struggling to get the arguments interpolated in test name string\n cases.forEach((c) => {\n test(`${c.query.query}`, () => {\n assertPosition(\n c.query.query,\n { lineNumber: c.position.line, column: c.position.column },\n expected,\n MonacoMock,\n statementPositionResolversRegistry\n );\n });\n });\n });\n};\n"],"names":[],"mappings":";;;;;;;AAUA,SAAS,cACP,CAAA,KAAA,EACA,QACA,EAAA,QAAA,EACA,YACA,iBACA,EAAA;AACA,EAAM,MAAA,SAAA,GAAY,UAAU,KAAK,CAAA;AACjC,EAAA,MAAM,OAAU,GAAA,kBAAA,CAAmB,UAAY,EAAA,SAAA,EAA4C,QAAQ,CAAA;AACnG,EAAM,MAAA,iBAAA,GAAoB,oBAAqB,CAAA,OAAA,EAAS,iBAAiB,CAAA;AAEzE,EAAO,MAAA,CAAA,iBAAiB,CAAE,CAAA,SAAA,CAAU,QAAQ,CAAA;AAC9C;AAEO,MAAM,qBAAwB,GAAA,CACnC,QACA,EAAA,KAAA,EACA,SACG,KAAA;AACH,EAAS,QAAA,CAAA,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,MAAM;AAC5B,IAAI,IAAA,UAAA;AACJ,IAAI,IAAA,kCAAA;AAEJ,IAAA,UAAA,CAAW,MAAM;AACf,MAAM,MAAA,WAAA,uBAAkB,GAAmF,EAAA;AAC3G,MAAM,KAAA,CAAA,OAAA,CAAQ,CAAC,CAAA,KAAM,WAAY,CAAA,GAAA,CAAI,CAAE,CAAA,KAAA,CAAM,KAAO,EAAA,CAAA,CAAE,KAAM,CAAA,MAAM,CAAC,CAAA;AAEnE,MAAA,UAAA,GAAa,cAAc,WAAW,CAAA;AACtC,MAAqC,kCAAA,GAAA,IAAI,SAAS,MAAM;AACtD,QAAA,OAAO,SAAU,EAAA,CAAE,GAAI,CAAA,CAAC,CAAO,MAAA;AAAA,UAC7B,IAAI,CAAE,CAAA,EAAA;AAAA,UACN,IAAA,EAAM,CAAE,CAAA,IAAA,IAAQ,CAAE,CAAA,EAAA;AAAA,UAClB,SAAS,CAAE,CAAA;AAAA,SACX,CAAA,CAAA;AAAA,OACH,CAAA;AAAA,KACF,CAAA;AAGD,IAAM,KAAA,CAAA,OAAA,CAAQ,CAAC,CAAM,KAAA;AACnB,MAAA,IAAA,CAAK,CAAG,EAAA,CAAA,CAAE,KAAM,CAAA,KAAK,IAAI,MAAM;AAC7B,QAAA,cAAA;AAAA,UACE,EAAE,KAAM,CAAA,KAAA;AAAA,UACR,EAAE,YAAY,CAAE,CAAA,QAAA,CAAS,MAAM,MAAQ,EAAA,CAAA,CAAE,SAAS,MAAO,EAAA;AAAA,UACzD,QAAA;AAAA,UACA,UAAA;AAAA,UACA;AAAA,SACF;AAAA,OACD,CAAA;AAAA,KACF,CAAA;AAAA,GACF,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"statementPosition.js","sources":["../../../../../src/components/SQLEditor/test-utils/statementPosition.ts"],"sourcesContent":["import { Registry } from '@grafana/data';\nimport { type monacoTypes } from '@grafana/ui';\nimport { getMonacoMock } from '../mocks/Monaco';\nimport { TextModel } from '../mocks/TextModel';\nimport { getStatementPosition } from '../standardSql/getStatementPosition';\nimport { type StatementPositionResolversRegistryItem } from '../standardSql/types';\nimport { type CustomStatementPlacement, type StatementPosition } from '../types';\nimport { linkedTokenBuilder } from '../utils/linkedTokenBuilder';\nimport { type StatementPositionResolverTestCase } from './types';\n\nfunction assertPosition(\n query: string,\n position: monacoTypes.IPosition,\n expected: StatementPosition | string,\n monacoMock: any,\n resolversRegistry: Registry<StatementPositionResolversRegistryItem>\n) {\n const testModel = TextModel(query);\n const current = linkedTokenBuilder(monacoMock, testModel as monacoTypes.editor.ITextModel, position);\n const statementPosition = getStatementPosition(current, resolversRegistry);\n\n expect(statementPosition).toContain(expected);\n}\n\nexport const testStatementPosition = (\n expected: StatementPosition | string,\n cases: StatementPositionResolverTestCase[],\n resolvers: () => CustomStatementPlacement[]\n) => {\n describe(`${expected}`, () => {\n let MonacoMock: any;\n let statementPositionResolversRegistry: Registry<StatementPositionResolversRegistryItem>;\n\n beforeEach(() => {\n const mockQueries = new Map<string, Array<Array<Pick<monacoTypes.Token, 'language' | 'offset' | 'type'>>>>();\n cases.forEach((c) => mockQueries.set(c.query.query, c.query.tokens));\n\n MonacoMock = getMonacoMock(mockQueries);\n statementPositionResolversRegistry = new Registry(() => {\n return resolvers().map((r) => ({\n id: r.id as StatementPosition,\n name: r.name || r.id,\n resolve: r.resolve,\n }));\n });\n });\n\n // using forEach here rather than test.each as been struggling to get the arguments interpolated in test name string\n cases.forEach((c) => {\n test(`${c.query.query}`, () => {\n assertPosition(\n c.query.query,\n { lineNumber: c.position.line, column: c.position.column },\n expected,\n MonacoMock,\n statementPositionResolversRegistry\n );\n });\n });\n });\n};\n"],"names":[],"mappings":";;;;;;;AAUA,SAAS,cAAA,CACP,KAAA,EACA,QAAA,EACA,QAAA,EACA,YACA,iBAAA,EACA;AACA,EAAA,MAAM,SAAA,GAAY,UAAU,KAAK,CAAA;AACjC,EAAA,MAAM,OAAA,GAAU,kBAAA,CAAmB,UAAA,EAAY,SAAA,EAA4C,QAAQ,CAAA;AACnG,EAAA,MAAM,iBAAA,GAAoB,oBAAA,CAAqB,OAAA,EAAS,iBAAiB,CAAA;AAEzE,EAAA,MAAA,CAAO,iBAAiB,CAAA,CAAE,SAAA,CAAU,QAAQ,CAAA;AAC9C;AAEO,MAAM,qBAAA,GAAwB,CACnC,QAAA,EACA,KAAA,EACA,SAAA,KACG;AACH,EAAA,QAAA,CAAS,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,MAAM;AAC5B,IAAA,IAAI,UAAA;AACJ,IAAA,IAAI,kCAAA;AAEJ,IAAA,UAAA,CAAW,MAAM;AACf,MAAA,MAAM,WAAA,uBAAkB,GAAA,EAAmF;AAC3G,MAAA,KAAA,CAAM,OAAA,CAAQ,CAAC,CAAA,KAAM,WAAA,CAAY,GAAA,CAAI,CAAA,CAAE,KAAA,CAAM,KAAA,EAAO,CAAA,CAAE,KAAA,CAAM,MAAM,CAAC,CAAA;AAEnE,MAAA,UAAA,GAAa,cAAc,WAAW,CAAA;AACtC,MAAA,kCAAA,GAAqC,IAAI,SAAS,MAAM;AACtD,QAAA,OAAO,SAAA,EAAU,CAAE,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,UAC7B,IAAI,CAAA,CAAE,EAAA;AAAA,UACN,IAAA,EAAM,CAAA,CAAE,IAAA,IAAQ,CAAA,CAAE,EAAA;AAAA,UAClB,SAAS,CAAA,CAAE;AAAA,SACb,CAAE,CAAA;AAAA,MACJ,CAAC,CAAA;AAAA,IACH,CAAC,CAAA;AAGD,IAAA,KAAA,CAAM,OAAA,CAAQ,CAAC,CAAA,KAAM;AACnB,MAAA,IAAA,CAAK,CAAA,EAAG,CAAA,CAAE,KAAA,CAAM,KAAK,IAAI,MAAM;AAC7B,QAAA,cAAA;AAAA,UACE,EAAE,KAAA,CAAM,KAAA;AAAA,UACR,EAAE,YAAY,CAAA,CAAE,QAAA,CAAS,MAAM,MAAA,EAAQ,CAAA,CAAE,SAAS,MAAA,EAAO;AAAA,UACzD,QAAA;AAAA,UACA,UAAA;AAAA,UACA;AAAA,SACF;AAAA,MACF,CAAC,CAAA;AAAA,IACH,CAAC,CAAA;AAAA,EACH,CAAC,CAAA;AACH;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../src/components/SQLEditor/types.ts"],"sourcesContent":["import { type Monaco, type monacoTypes } from '@grafana/ui';\nimport { type SQLMonarchLanguage, type StatementPositionResolver, type SuggestionsResolver } from './standardSql/types';\nimport { type LinkedToken } from './utils/LinkedToken';\n\n/**\n * Provides a context for suggestions resolver\n * @alpha\n */\nexport interface PositionContext {\n position: monacoTypes.IPosition;\n kind: SuggestionKind[];\n statementPosition: StatementPosition[];\n currentToken: LinkedToken | null;\n range: monacoTypes.IRange;\n}\n\nexport type CustomSuggestion = Partial<monacoTypes.languages.CompletionItem> & { label: string };\n\nexport interface CustomSuggestionKind {\n id: string;\n suggestionsResolver: SuggestionsResolver;\n applyTo?: Array<StatementPosition | string>;\n overrideDefault?: boolean;\n}\n\nexport interface CustomStatementPlacement {\n id: string;\n name?: string;\n resolve: StatementPositionResolver;\n overrideDefault?: boolean;\n}\nexport type StatementPlacementProvider = () => CustomStatementPlacement[];\nexport type SuggestionKindProvider = () => CustomSuggestionKind[];\n\nexport interface ColumnDefinition {\n name: string;\n type?: string;\n description?: string;\n // Text used for autocomplete. If not provided name is used.\n completion?: string;\n}\n\nexport interface SchemaDefinition {\n name: string;\n // Text used for autocomplete. If not provided name is used.\n completion?: string;\n}\n\nexport interface TableDefinition {\n name: string;\n // Text used for autocomplete. If not provided name is used.\n completion?: string;\n}\n\nexport interface Operator {\n id: string;\n operator: string;\n type: OperatorType;\n description?: string;\n}\n\nexport interface TableIdentifier {\n table?: string;\n schema?: string;\n catalog?: string;\n}\n\nexport interface SQLCompletionItemProvider\n extends Omit<monacoTypes.languages.CompletionItemProvider, 'provideCompletionItems'> {\n /**\n * Allows dialect specific functions to be added to the completion list.\n * @alpha\n */\n supportedFunctions?: () => Array<{\n id: string;\n name: string;\n description?: string;\n }>;\n\n /**\n * Allows dialect specific operators to be added to the completion list.\n * @alpha\n */\n supportedOperators?: () => Array<{\n id: string;\n operator: string;\n type: OperatorType;\n description?: string;\n }>;\n\n supportedMacros?: () => Array<{\n id: string;\n text: string;\n type: MacroType;\n args: string[];\n description?: string;\n }>;\n\n /**\n * Allows custom suggestion kinds to be defined and correlate them with <Custom>StatementPosition.\n * @alpha\n */\n customSuggestionKinds?: SuggestionKindProvider;\n\n /**\n * Allows custom statement placement definition.\n * @alpha\n */\n customStatementPlacement?: StatementPlacementProvider;\n\n /**\n * Allows providing a custom function for resolving schemas.\n * It's up to the consumer to decide whether the schemas are resolved via API calls or preloaded in the query editor(i.e. full db schema is preloaded).\n * @alpha\n */\n schemas?: {\n resolve: () => Promise<SchemaDefinition[]>;\n };\n\n /**\n * Allows providing a custom function for resolving db tables.\n * It's up to the consumer to decide whether the columns are resolved via API calls or preloaded in the query editor(i.e. full db schema is preloaded).\n * @alpha\n */\n tables?: {\n resolve: (TableIdentifier: TableIdentifier | null) => Promise<TableDefinition[]>;\n // Allows providing a custom function for calculating the table name from the query. If not specified a default implementation is used.\n parseName?: (token: LinkedToken | null | undefined) => TableIdentifier;\n };\n /**\n * Allows providing a custom function for resolving table.\n * It's up to the consumer to decide whether the columns are resolved via API calls or preloaded in the query editor(i.e. full db schema is preloaded).\n * @alpha\n */\n columns?: {\n resolve: (identifier?: TableIdentifier) => Promise<ColumnDefinition[]>;\n };\n\n /**\n * TODO: Not sure whether or not we need this. Would like to avoid this kind of flexibility.\n * @alpha\n */\n provideCompletionItems?: (\n model: monacoTypes.editor.ITextModel,\n position: monacoTypes.Position,\n context: monacoTypes.languages.CompletionContext,\n token: monacoTypes.CancellationToken,\n positionContext: PositionContext // Decorates original provideCompletionItems function with our custom statement position context\n ) => monacoTypes.languages.CompletionList;\n}\n\nexport type LanguageCompletionProvider = (m: Monaco, l?: SQLMonarchLanguage) => SQLCompletionItemProvider;\n\nexport enum OperatorType {\n Comparison,\n Logical,\n}\n\nexport enum MacroType {\n Value,\n Filter,\n Group,\n Column,\n Table,\n}\n\nexport enum TokenType {\n Parenthesis = 'delimiter.parenthesis.sql',\n Whitespace = 'white.sql',\n Keyword = 'keyword.sql',\n Delimiter = 'delimiter.sql',\n Operator = 'operator.sql',\n Identifier = 'identifier.sql',\n IdentifierQuote = 'identifier.quote.sql',\n Type = 'type.sql',\n Function = 'predefined.sql',\n Number = 'number.sql',\n String = 'string.sql',\n Variable = 'variable.sql',\n}\n\nexport enum StatementPosition {\n Unknown = 'unknown',\n SelectKeyword = 'selectKeyword',\n WithKeyword = 'withKeyword',\n AfterSelectKeyword = 'afterSelectKeyword',\n AfterSelectArguments = 'afterSelectArguments',\n AfterSelectFuncFirstArgument = 'afterSelectFuncFirstArgument',\n SelectAlias = 'selectAlias',\n AfterFromKeyword = 'afterFromKeyword',\n AfterTable = 'afterTable',\n SchemaFuncFirstArgument = 'schemaFuncFirstArgument',\n SchemaFuncExtraArgument = 'schemaFuncExtraArgument',\n FromKeyword = 'fromKeyword',\n AfterFrom = 'afterFrom',\n WhereKeyword = 'whereKeyword',\n WhereComparisonOperator = 'whereComparisonOperator',\n WhereValue = 'whereValue',\n AfterWhereFunctionArgument = 'afterWhereFunctionArgument',\n AfterGroupByFunctionArgument = 'afterGroupByFunctionArgument',\n AfterWhereValue = 'afterWhereValue',\n AfterGroupByKeywords = 'afterGroupByKeywords',\n AfterGroupBy = 'afterGroupBy',\n AfterOrderByKeywords = 'afterOrderByKeywords',\n AfterOrderByFunction = 'afterOrderByFunction',\n AfterOrderByDirection = 'afterOrderByDirection',\n AfterIsOperator = 'afterIsOperator',\n AfterIsNotOperator = 'afterIsNotOperator',\n AfterSchema = 'afterSchema',\n}\n\nexport enum SuggestionKind {\n Schemas = 'schemas',\n Tables = 'tables',\n Columns = 'columns',\n SelectKeyword = 'selectKeyword',\n WithKeyword = 'withKeyword',\n FunctionsWithArguments = 'functionsWithArguments',\n FromKeyword = 'fromKeyword',\n WhereKeyword = 'whereKeyword',\n GroupByKeywords = 'groupByKeywords',\n OrderByKeywords = 'orderByKeywords',\n FunctionsWithoutArguments = 'functionsWithoutArguments',\n LimitKeyword = 'limitKeyword',\n SortOrderDirectionKeyword = 'sortOrderDirectionKeyword',\n ComparisonOperators = 'comparisonOperators',\n LogicalOperators = 'logicalOperators',\n SelectMacro = 'selectMacro',\n TableMacro = 'tableMacro',\n FilterMacro = 'filterMacro',\n GroupMacro = 'groupMacro',\n BoolValues = 'boolValues',\n NullValue = 'nullValue',\n NotKeyword = 'notKeyword',\n TemplateVariables = 'templateVariables',\n StarWildCard = 'starWildCard',\n}\n\n// TODO: export from grafana/ui\nexport enum CompletionItemPriority {\n High = 'a',\n MediumHigh = 'd',\n Medium = 'g',\n MediumLow = 'k',\n Low = 'q',\n}\n\nexport enum CompletionItemKind {\n Method = 0,\n Function = 1,\n Constructor = 2,\n Field = 3,\n Variable = 4,\n Class = 5,\n Struct = 6,\n Interface = 7,\n Module = 8,\n Property = 9,\n Event = 10,\n Operator = 11,\n Unit = 12,\n Value = 13,\n Constant = 14,\n Enum = 15,\n EnumMember = 16,\n Keyword = 17,\n Text = 18,\n Color = 19,\n File = 20,\n Reference = 21,\n Customcolor = 22,\n Folder = 23,\n TypeParameter = 24,\n User = 25,\n Issue = 26,\n Snippet = 27,\n}\n\nexport enum CompletionItemInsertTextRule {\n KeepWhitespace = 1,\n InsertAsSnippet = 4,\n}\n\nexport enum SQLEditorMode {\n Builder = 'builder',\n Code = 'code',\n}\n"],"names":["OperatorType","MacroType","TokenType","StatementPosition","SuggestionKind","CompletionItemPriority","CompletionItemKind","CompletionItemInsertTextRule","SQLEditorMode"],"mappings":";;;AAyJY,IAAA,YAAA,qBAAAA,aAAL,KAAA;AACL,EAAAA,aAAA,CAAA,aAAA,CAAA,YAAA,CAAA,GAAA,CAAA,CAAA,GAAA,YAAA;AACA,EAAAA,aAAA,CAAA,aAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAA;AAFU,EAAAA,OAAAA,aAAAA;AAAA,CAAA,EAAA,YAAA,IAAA,EAAA;AAKA,IAAA,SAAA,qBAAAC,UAAL,KAAA;AACL,EAAAA,UAAA,CAAA,UAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA;AACA,EAAAA,UAAA,CAAA,UAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAA;AACA,EAAAA,UAAA,CAAA,UAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA;AACA,EAAAA,UAAA,CAAA,UAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAA;AACA,EAAAA,UAAA,CAAA,UAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA;AALU,EAAAA,OAAAA,UAAAA;AAAA,CAAA,EAAA,SAAA,IAAA,EAAA;AAQA,IAAA,SAAA,qBAAAC,UAAL,KAAA;AACL,EAAAA,WAAA,aAAc,CAAA,GAAA,2BAAA;AACd,EAAAA,WAAA,YAAa,CAAA,GAAA,WAAA;AACb,EAAAA,WAAA,SAAU,CAAA,GAAA,aAAA;AACV,EAAAA,WAAA,WAAY,CAAA,GAAA,eAAA;AACZ,EAAAA,WAAA,UAAW,CAAA,GAAA,cAAA;AACX,EAAAA,WAAA,YAAa,CAAA,GAAA,gBAAA;AACb,EAAAA,WAAA,iBAAkB,CAAA,GAAA,sBAAA;AAClB,EAAAA,WAAA,MAAO,CAAA,GAAA,UAAA;AACP,EAAAA,WAAA,UAAW,CAAA,GAAA,gBAAA;AACX,EAAAA,WAAA,QAAS,CAAA,GAAA,YAAA;AACT,EAAAA,WAAA,QAAS,CAAA,GAAA,YAAA;AACT,EAAAA,WAAA,UAAW,CAAA,GAAA,cAAA;AAZD,EAAAA,OAAAA,UAAAA;AAAA,CAAA,EAAA,SAAA,IAAA,EAAA;AAeA,IAAA,iBAAA,qBAAAC,kBAAL,KAAA;AACL,EAAAA,mBAAA,SAAU,CAAA,GAAA,SAAA;AACV,EAAAA,mBAAA,eAAgB,CAAA,GAAA,eAAA;AAChB,EAAAA,mBAAA,aAAc,CAAA,GAAA,aAAA;AACd,EAAAA,mBAAA,oBAAqB,CAAA,GAAA,oBAAA;AACrB,EAAAA,mBAAA,sBAAuB,CAAA,GAAA,sBAAA;AACvB,EAAAA,mBAAA,8BAA+B,CAAA,GAAA,8BAAA;AAC/B,EAAAA,mBAAA,aAAc,CAAA,GAAA,aAAA;AACd,EAAAA,mBAAA,kBAAmB,CAAA,GAAA,kBAAA;AACnB,EAAAA,mBAAA,YAAa,CAAA,GAAA,YAAA;AACb,EAAAA,mBAAA,yBAA0B,CAAA,GAAA,yBAAA;AAC1B,EAAAA,mBAAA,yBAA0B,CAAA,GAAA,yBAAA;AAC1B,EAAAA,mBAAA,aAAc,CAAA,GAAA,aAAA;AACd,EAAAA,mBAAA,WAAY,CAAA,GAAA,WAAA;AACZ,EAAAA,mBAAA,cAAe,CAAA,GAAA,cAAA;AACf,EAAAA,mBAAA,yBAA0B,CAAA,GAAA,yBAAA;AAC1B,EAAAA,mBAAA,YAAa,CAAA,GAAA,YAAA;AACb,EAAAA,mBAAA,4BAA6B,CAAA,GAAA,4BAAA;AAC7B,EAAAA,mBAAA,8BAA+B,CAAA,GAAA,8BAAA;AAC/B,EAAAA,mBAAA,iBAAkB,CAAA,GAAA,iBAAA;AAClB,EAAAA,mBAAA,sBAAuB,CAAA,GAAA,sBAAA;AACvB,EAAAA,mBAAA,cAAe,CAAA,GAAA,cAAA;AACf,EAAAA,mBAAA,sBAAuB,CAAA,GAAA,sBAAA;AACvB,EAAAA,mBAAA,sBAAuB,CAAA,GAAA,sBAAA;AACvB,EAAAA,mBAAA,uBAAwB,CAAA,GAAA,uBAAA;AACxB,EAAAA,mBAAA,iBAAkB,CAAA,GAAA,iBAAA;AAClB,EAAAA,mBAAA,oBAAqB,CAAA,GAAA,oBAAA;AACrB,EAAAA,mBAAA,aAAc,CAAA,GAAA,aAAA;AA3BJ,EAAAA,OAAAA,kBAAAA;AAAA,CAAA,EAAA,iBAAA,IAAA,EAAA;AA8BA,IAAA,cAAA,qBAAAC,eAAL,KAAA;AACL,EAAAA,gBAAA,SAAU,CAAA,GAAA,SAAA;AACV,EAAAA,gBAAA,QAAS,CAAA,GAAA,QAAA;AACT,EAAAA,gBAAA,SAAU,CAAA,GAAA,SAAA;AACV,EAAAA,gBAAA,eAAgB,CAAA,GAAA,eAAA;AAChB,EAAAA,gBAAA,aAAc,CAAA,GAAA,aAAA;AACd,EAAAA,gBAAA,wBAAyB,CAAA,GAAA,wBAAA;AACzB,EAAAA,gBAAA,aAAc,CAAA,GAAA,aAAA;AACd,EAAAA,gBAAA,cAAe,CAAA,GAAA,cAAA;AACf,EAAAA,gBAAA,iBAAkB,CAAA,GAAA,iBAAA;AAClB,EAAAA,gBAAA,iBAAkB,CAAA,GAAA,iBAAA;AAClB,EAAAA,gBAAA,2BAA4B,CAAA,GAAA,2BAAA;AAC5B,EAAAA,gBAAA,cAAe,CAAA,GAAA,cAAA;AACf,EAAAA,gBAAA,2BAA4B,CAAA,GAAA,2BAAA;AAC5B,EAAAA,gBAAA,qBAAsB,CAAA,GAAA,qBAAA;AACtB,EAAAA,gBAAA,kBAAmB,CAAA,GAAA,kBAAA;AACnB,EAAAA,gBAAA,aAAc,CAAA,GAAA,aAAA;AACd,EAAAA,gBAAA,YAAa,CAAA,GAAA,YAAA;AACb,EAAAA,gBAAA,aAAc,CAAA,GAAA,aAAA;AACd,EAAAA,gBAAA,YAAa,CAAA,GAAA,YAAA;AACb,EAAAA,gBAAA,YAAa,CAAA,GAAA,YAAA;AACb,EAAAA,gBAAA,WAAY,CAAA,GAAA,WAAA;AACZ,EAAAA,gBAAA,YAAa,CAAA,GAAA,YAAA;AACb,EAAAA,gBAAA,mBAAoB,CAAA,GAAA,mBAAA;AACpB,EAAAA,gBAAA,cAAe,CAAA,GAAA,cAAA;AAxBL,EAAAA,OAAAA,eAAAA;AAAA,CAAA,EAAA,cAAA,IAAA,EAAA;AA4BA,IAAA,sBAAA,qBAAAC,uBAAL,KAAA;AACL,EAAAA,wBAAA,MAAO,CAAA,GAAA,GAAA;AACP,EAAAA,wBAAA,YAAa,CAAA,GAAA,GAAA;AACb,EAAAA,wBAAA,QAAS,CAAA,GAAA,GAAA;AACT,EAAAA,wBAAA,WAAY,CAAA,GAAA,GAAA;AACZ,EAAAA,wBAAA,KAAM,CAAA,GAAA,GAAA;AALI,EAAAA,OAAAA,uBAAAA;AAAA,CAAA,EAAA,sBAAA,IAAA,EAAA;AAQA,IAAA,kBAAA,qBAAAC,mBAAL,KAAA;AACL,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,YAAS,CAAT,CAAA,GAAA,QAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,cAAW,CAAX,CAAA,GAAA,UAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,iBAAc,CAAd,CAAA,GAAA,aAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,WAAQ,CAAR,CAAA,GAAA,OAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,cAAW,CAAX,CAAA,GAAA,UAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,WAAQ,CAAR,CAAA,GAAA,OAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,YAAS,CAAT,CAAA,GAAA,QAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,eAAY,CAAZ,CAAA,GAAA,WAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,YAAS,CAAT,CAAA,GAAA,QAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,cAAW,CAAX,CAAA,GAAA,UAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,WAAQ,EAAR,CAAA,GAAA,OAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,cAAW,EAAX,CAAA,GAAA,UAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,UAAO,EAAP,CAAA,GAAA,MAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,WAAQ,EAAR,CAAA,GAAA,OAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,cAAW,EAAX,CAAA,GAAA,UAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,UAAO,EAAP,CAAA,GAAA,MAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,gBAAa,EAAb,CAAA,GAAA,YAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,aAAU,EAAV,CAAA,GAAA,SAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,UAAO,EAAP,CAAA,GAAA,MAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,WAAQ,EAAR,CAAA,GAAA,OAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,UAAO,EAAP,CAAA,GAAA,MAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,eAAY,EAAZ,CAAA,GAAA,WAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,iBAAc,EAAd,CAAA,GAAA,aAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,YAAS,EAAT,CAAA,GAAA,QAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,mBAAgB,EAAhB,CAAA,GAAA,eAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,UAAO,EAAP,CAAA,GAAA,MAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,WAAQ,EAAR,CAAA,GAAA,OAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,aAAU,EAAV,CAAA,GAAA,SAAA;AA5BU,EAAAA,OAAAA,mBAAAA;AAAA,CAAA,EAAA,kBAAA,IAAA,EAAA;AA+BA,IAAA,4BAAA,qBAAAC,6BAAL,KAAA;AACL,EAAAA,6BAAAA,CAAAA,6BAAAA,CAAA,oBAAiB,CAAjB,CAAA,GAAA,gBAAA;AACA,EAAAA,6BAAAA,CAAAA,6BAAAA,CAAA,qBAAkB,CAAlB,CAAA,GAAA,iBAAA;AAFU,EAAAA,OAAAA,6BAAAA;AAAA,CAAA,EAAA,4BAAA,IAAA,EAAA;AAKA,IAAA,aAAA,qBAAAC,cAAL,KAAA;AACL,EAAAA,eAAA,SAAU,CAAA,GAAA,SAAA;AACV,EAAAA,eAAA,MAAO,CAAA,GAAA,MAAA;AAFG,EAAAA,OAAAA,cAAAA;AAAA,CAAA,EAAA,aAAA,IAAA,EAAA;;;;"}
1
+ {"version":3,"file":"types.js","sources":["../../../../src/components/SQLEditor/types.ts"],"sourcesContent":["import { type Monaco, type monacoTypes } from '@grafana/ui';\nimport { type SQLMonarchLanguage, type StatementPositionResolver, type SuggestionsResolver } from './standardSql/types';\nimport { type LinkedToken } from './utils/LinkedToken';\n\n/**\n * Provides a context for suggestions resolver\n * @alpha\n */\nexport interface PositionContext {\n position: monacoTypes.IPosition;\n kind: SuggestionKind[];\n statementPosition: StatementPosition[];\n currentToken: LinkedToken | null;\n range: monacoTypes.IRange;\n}\n\nexport type CustomSuggestion = Partial<monacoTypes.languages.CompletionItem> & { label: string };\n\nexport interface CustomSuggestionKind {\n id: string;\n suggestionsResolver: SuggestionsResolver;\n applyTo?: Array<StatementPosition | string>;\n overrideDefault?: boolean;\n}\n\nexport interface CustomStatementPlacement {\n id: string;\n name?: string;\n resolve: StatementPositionResolver;\n overrideDefault?: boolean;\n}\nexport type StatementPlacementProvider = () => CustomStatementPlacement[];\nexport type SuggestionKindProvider = () => CustomSuggestionKind[];\n\nexport interface ColumnDefinition {\n name: string;\n type?: string;\n description?: string;\n // Text used for autocomplete. If not provided name is used.\n completion?: string;\n}\n\nexport interface SchemaDefinition {\n name: string;\n // Text used for autocomplete. If not provided name is used.\n completion?: string;\n}\n\nexport interface TableDefinition {\n name: string;\n // Text used for autocomplete. If not provided name is used.\n completion?: string;\n}\n\nexport interface Operator {\n id: string;\n operator: string;\n type: OperatorType;\n description?: string;\n}\n\nexport interface TableIdentifier {\n table?: string;\n schema?: string;\n catalog?: string;\n}\n\nexport interface SQLCompletionItemProvider\n extends Omit<monacoTypes.languages.CompletionItemProvider, 'provideCompletionItems'> {\n /**\n * Allows dialect specific functions to be added to the completion list.\n * @alpha\n */\n supportedFunctions?: () => Array<{\n id: string;\n name: string;\n description?: string;\n }>;\n\n /**\n * Allows dialect specific operators to be added to the completion list.\n * @alpha\n */\n supportedOperators?: () => Array<{\n id: string;\n operator: string;\n type: OperatorType;\n description?: string;\n }>;\n\n supportedMacros?: () => Array<{\n id: string;\n text: string;\n type: MacroType;\n args: string[];\n description?: string;\n }>;\n\n /**\n * Allows custom suggestion kinds to be defined and correlate them with <Custom>StatementPosition.\n * @alpha\n */\n customSuggestionKinds?: SuggestionKindProvider;\n\n /**\n * Allows custom statement placement definition.\n * @alpha\n */\n customStatementPlacement?: StatementPlacementProvider;\n\n /**\n * Allows providing a custom function for resolving schemas.\n * It's up to the consumer to decide whether the schemas are resolved via API calls or preloaded in the query editor(i.e. full db schema is preloaded).\n * @alpha\n */\n schemas?: {\n resolve: () => Promise<SchemaDefinition[]>;\n };\n\n /**\n * Allows providing a custom function for resolving db tables.\n * It's up to the consumer to decide whether the columns are resolved via API calls or preloaded in the query editor(i.e. full db schema is preloaded).\n * @alpha\n */\n tables?: {\n resolve: (TableIdentifier: TableIdentifier | null) => Promise<TableDefinition[]>;\n // Allows providing a custom function for calculating the table name from the query. If not specified a default implementation is used.\n parseName?: (token: LinkedToken | null | undefined) => TableIdentifier;\n };\n /**\n * Allows providing a custom function for resolving table.\n * It's up to the consumer to decide whether the columns are resolved via API calls or preloaded in the query editor(i.e. full db schema is preloaded).\n * @alpha\n */\n columns?: {\n resolve: (identifier?: TableIdentifier) => Promise<ColumnDefinition[]>;\n };\n\n /**\n * TODO: Not sure whether or not we need this. Would like to avoid this kind of flexibility.\n * @alpha\n */\n provideCompletionItems?: (\n model: monacoTypes.editor.ITextModel,\n position: monacoTypes.Position,\n context: monacoTypes.languages.CompletionContext,\n token: monacoTypes.CancellationToken,\n positionContext: PositionContext // Decorates original provideCompletionItems function with our custom statement position context\n ) => monacoTypes.languages.CompletionList;\n}\n\nexport type LanguageCompletionProvider = (m: Monaco, l?: SQLMonarchLanguage) => SQLCompletionItemProvider;\n\nexport enum OperatorType {\n Comparison,\n Logical,\n}\n\nexport enum MacroType {\n Value,\n Filter,\n Group,\n Column,\n Table,\n}\n\nexport enum TokenType {\n Parenthesis = 'delimiter.parenthesis.sql',\n Whitespace = 'white.sql',\n Keyword = 'keyword.sql',\n Delimiter = 'delimiter.sql',\n Operator = 'operator.sql',\n Identifier = 'identifier.sql',\n IdentifierQuote = 'identifier.quote.sql',\n Type = 'type.sql',\n Function = 'predefined.sql',\n Number = 'number.sql',\n String = 'string.sql',\n Variable = 'variable.sql',\n}\n\nexport enum StatementPosition {\n Unknown = 'unknown',\n SelectKeyword = 'selectKeyword',\n WithKeyword = 'withKeyword',\n AfterSelectKeyword = 'afterSelectKeyword',\n AfterSelectArguments = 'afterSelectArguments',\n AfterSelectFuncFirstArgument = 'afterSelectFuncFirstArgument',\n SelectAlias = 'selectAlias',\n AfterFromKeyword = 'afterFromKeyword',\n AfterTable = 'afterTable',\n SchemaFuncFirstArgument = 'schemaFuncFirstArgument',\n SchemaFuncExtraArgument = 'schemaFuncExtraArgument',\n FromKeyword = 'fromKeyword',\n AfterFrom = 'afterFrom',\n WhereKeyword = 'whereKeyword',\n WhereComparisonOperator = 'whereComparisonOperator',\n WhereValue = 'whereValue',\n AfterWhereFunctionArgument = 'afterWhereFunctionArgument',\n AfterGroupByFunctionArgument = 'afterGroupByFunctionArgument',\n AfterWhereValue = 'afterWhereValue',\n AfterGroupByKeywords = 'afterGroupByKeywords',\n AfterGroupBy = 'afterGroupBy',\n AfterOrderByKeywords = 'afterOrderByKeywords',\n AfterOrderByFunction = 'afterOrderByFunction',\n AfterOrderByDirection = 'afterOrderByDirection',\n AfterIsOperator = 'afterIsOperator',\n AfterIsNotOperator = 'afterIsNotOperator',\n AfterSchema = 'afterSchema',\n}\n\nexport enum SuggestionKind {\n Schemas = 'schemas',\n Tables = 'tables',\n Columns = 'columns',\n SelectKeyword = 'selectKeyword',\n WithKeyword = 'withKeyword',\n FunctionsWithArguments = 'functionsWithArguments',\n FromKeyword = 'fromKeyword',\n WhereKeyword = 'whereKeyword',\n GroupByKeywords = 'groupByKeywords',\n OrderByKeywords = 'orderByKeywords',\n FunctionsWithoutArguments = 'functionsWithoutArguments',\n LimitKeyword = 'limitKeyword',\n SortOrderDirectionKeyword = 'sortOrderDirectionKeyword',\n ComparisonOperators = 'comparisonOperators',\n LogicalOperators = 'logicalOperators',\n SelectMacro = 'selectMacro',\n TableMacro = 'tableMacro',\n FilterMacro = 'filterMacro',\n GroupMacro = 'groupMacro',\n BoolValues = 'boolValues',\n NullValue = 'nullValue',\n NotKeyword = 'notKeyword',\n TemplateVariables = 'templateVariables',\n StarWildCard = 'starWildCard',\n}\n\n// TODO: export from grafana/ui\nexport enum CompletionItemPriority {\n High = 'a',\n MediumHigh = 'd',\n Medium = 'g',\n MediumLow = 'k',\n Low = 'q',\n}\n\nexport enum CompletionItemKind {\n Method = 0,\n Function = 1,\n Constructor = 2,\n Field = 3,\n Variable = 4,\n Class = 5,\n Struct = 6,\n Interface = 7,\n Module = 8,\n Property = 9,\n Event = 10,\n Operator = 11,\n Unit = 12,\n Value = 13,\n Constant = 14,\n Enum = 15,\n EnumMember = 16,\n Keyword = 17,\n Text = 18,\n Color = 19,\n File = 20,\n Reference = 21,\n Customcolor = 22,\n Folder = 23,\n TypeParameter = 24,\n User = 25,\n Issue = 26,\n Snippet = 27,\n}\n\nexport enum CompletionItemInsertTextRule {\n KeepWhitespace = 1,\n InsertAsSnippet = 4,\n}\n\nexport enum SQLEditorMode {\n Builder = 'builder',\n Code = 'code',\n}\n"],"names":["OperatorType","MacroType","TokenType","StatementPosition","SuggestionKind","CompletionItemPriority","CompletionItemKind","CompletionItemInsertTextRule","SQLEditorMode"],"mappings":"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"}
@@ -44,7 +44,7 @@ class LinkedToken {
44
44
  }
45
45
  is(type, value) {
46
46
  const isType = this.type === type;
47
- return value !== undefined ? isType && compareTokenWithValue(type, this, value) : isType;
47
+ return value !== void 0 ? isType && compareTokenWithValue(type, this, value) : isType;
48
48
  }
49
49
  getPreviousNonWhiteSpaceToken() {
50
50
  let curr = this.previous;
@@ -60,7 +60,7 @@ class LinkedToken {
60
60
  let curr = this.previous;
61
61
  while (curr != null) {
62
62
  const isType = curr.type === type;
63
- if (value !== undefined ? isType && compareTokenWithValue(type, curr, value) : isType) {
63
+ if (value !== void 0 ? isType && compareTokenWithValue(type, curr, value) : isType) {
64
64
  return curr;
65
65
  }
66
66
  curr = curr.previous;
@@ -71,12 +71,12 @@ class LinkedToken {
71
71
  let tokens = [];
72
72
  let curr = this.previous;
73
73
  while (curr != null) {
74
- if (ignoreTypes.some((t) => t === (curr == null ? undefined : curr.type))) {
74
+ if (ignoreTypes.some((t) => t === (curr == null ? void 0 : curr.type))) {
75
75
  curr = curr.previous;
76
76
  continue;
77
77
  }
78
78
  const isType = curr.type === type;
79
- if (value !== undefined ? isType && compareTokenWithValue(type, curr, value) : isType) {
79
+ if (value !== void 0 ? isType && compareTokenWithValue(type, curr, value) : isType) {
80
80
  return tokens;
81
81
  }
82
82
  if (!curr.isWhiteSpace()) {
@@ -90,12 +90,12 @@ class LinkedToken {
90
90
  let tokens = [];
91
91
  let curr = this.next;
92
92
  while (curr != null) {
93
- if (ignoreTypes.some((t) => t === (curr == null ? undefined : curr.type))) {
93
+ if (ignoreTypes.some((t) => t === (curr == null ? void 0 : curr.type))) {
94
94
  curr = curr.next;
95
95
  continue;
96
96
  }
97
97
  const isType = curr.type === type;
98
- if (value !== undefined ? isType && compareTokenWithValue(type, curr, value) : isType) {
98
+ if (value !== void 0 ? isType && compareTokenWithValue(type, curr, value) : isType) {
99
99
  return tokens;
100
100
  }
101
101
  if (!curr.isWhiteSpace()) {
@@ -129,7 +129,7 @@ class LinkedToken {
129
129
  let curr = this.next;
130
130
  while (curr != null) {
131
131
  const isType = curr.type === type;
132
- if (value !== undefined ? isType && compareTokenWithValue(type, curr, value) : isType) {
132
+ if (value !== void 0 ? isType && compareTokenWithValue(type, curr, value) : isType) {
133
133
  return curr;
134
134
  }
135
135
  curr = curr.next;