@grafana/plugin-ui 0.14.1-dsconfig.f7c437a → 0.15.0

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 (520) hide show
  1. package/README.md +9 -3
  2. package/dist/cjs/index.cjs +10566 -6099
  3. package/dist/cjs/index.cjs.map +1 -1
  4. package/dist/cjs/index.d.cts +56 -507
  5. package/dist/cjs/test-utils.cjs +7881 -62
  6. package/dist/cjs/test-utils.cjs.map +1 -1
  7. package/dist/cjs/test-utils.d.cts +24 -24
  8. package/dist/esm/_virtual/_commonjsHelpers.js +6 -0
  9. package/dist/esm/_virtual/_commonjsHelpers.js.map +1 -0
  10. package/dist/esm/_virtual/chance.js +6 -0
  11. package/dist/esm/_virtual/chance.js.map +1 -0
  12. package/dist/esm/_virtual/chance2.js +4 -0
  13. package/dist/esm/_virtual/chance2.js.map +1 -0
  14. package/dist/esm/_virtual/index.js +8 -0
  15. package/dist/esm/_virtual/index.js.map +1 -0
  16. package/dist/esm/_virtual/index2.js +6 -0
  17. package/dist/esm/_virtual/index2.js.map +1 -0
  18. package/dist/esm/_virtual/index3.js +4 -0
  19. package/dist/esm/_virtual/index3.js.map +1 -0
  20. package/dist/esm/_virtual/re.js +4 -0
  21. package/dist/esm/_virtual/re.js.map +1 -0
  22. package/dist/esm/_virtual/react.development.js +4 -0
  23. package/dist/esm/_virtual/react.development.js.map +1 -0
  24. package/dist/esm/_virtual/react.production.min.js +4 -0
  25. package/dist/esm/_virtual/react.production.min.js.map +1 -0
  26. package/dist/esm/async-query-data/DatasourceWithAsyncBackend.js +157 -0
  27. package/dist/esm/async-query-data/DatasourceWithAsyncBackend.js.map +1 -0
  28. package/dist/esm/async-query-data/RunQueryButtons.js +52 -0
  29. package/dist/esm/async-query-data/RunQueryButtons.js.map +1 -0
  30. package/dist/esm/async-query-data/requestLooper.js +74 -0
  31. package/dist/esm/async-query-data/requestLooper.js.map +1 -0
  32. package/dist/esm/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.js +1 -1
  33. package/dist/esm/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.js.map +1 -1
  34. package/dist/esm/components/ConfigEditor/Auth/Auth.js +1 -1
  35. package/dist/esm/components/ConfigEditor/Auth/Auth.js.map +1 -1
  36. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js +8 -8
  37. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js.map +1 -1
  38. package/dist/esm/components/ConfigEditor/Auth/auth-method/BasicAuth.js +1 -1
  39. package/dist/esm/components/ConfigEditor/Auth/auth-method/BasicAuth.js.map +1 -1
  40. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeader.js +1 -1
  41. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeader.js.map +1 -1
  42. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js +4 -4
  43. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js.map +1 -1
  44. package/dist/esm/components/ConfigEditor/Auth/styles.js.map +1 -1
  45. package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js +2 -2
  46. package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js.map +1 -1
  47. package/dist/esm/components/ConfigEditor/Auth/tls/SkipTLSVerification.js +1 -1
  48. package/dist/esm/components/ConfigEditor/Auth/tls/SkipTLSVerification.js.map +1 -1
  49. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js +4 -4
  50. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js.map +1 -1
  51. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettings.js +1 -1
  52. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettings.js.map +1 -1
  53. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettingsSection.js +1 -1
  54. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettingsSection.js.map +1 -1
  55. package/dist/esm/components/ConfigEditor/Auth/types.js +1 -1
  56. package/dist/esm/components/ConfigEditor/Auth/types.js.map +1 -1
  57. package/dist/esm/components/ConfigEditor/Auth/utils.js +4 -4
  58. package/dist/esm/components/ConfigEditor/Auth/utils.js.map +1 -1
  59. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js +3 -3
  60. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js.map +1 -1
  61. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSection.js +1 -1
  62. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSection.js.map +1 -1
  63. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSubSection.js +1 -1
  64. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSubSection.js.map +1 -1
  65. package/dist/esm/components/ConfigEditor/ConfigSection/GenericConfigSection.js +2 -2
  66. package/dist/esm/components/ConfigEditor/ConfigSection/GenericConfigSection.js.map +1 -1
  67. package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js +2 -2
  68. package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js.map +1 -1
  69. package/dist/esm/components/ConfigEditor/DataSourceDescription.js +1 -1
  70. package/dist/esm/components/ConfigEditor/DataSourceDescription.js.map +1 -1
  71. package/dist/esm/components/ConfigEditor/SecureSocksProxyToggle.js +1 -1
  72. package/dist/esm/components/ConfigEditor/SecureSocksProxyToggle.js.map +1 -1
  73. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js +13 -13
  74. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js.map +1 -1
  75. package/dist/esm/components/DataLinks/DataLink.js +7 -7
  76. package/dist/esm/components/DataLinks/DataLink.js.map +1 -1
  77. package/dist/esm/components/DataLinks/DataLinks.js +4 -4
  78. package/dist/esm/components/DataLinks/DataLinks.js.map +1 -1
  79. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js +10 -10
  80. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js.map +1 -1
  81. package/dist/esm/components/DatePicker/DatePicker.js +3 -3
  82. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  83. package/dist/esm/components/DatePicker/styles.js +2 -2
  84. package/dist/esm/components/DatePicker/styles.js.map +1 -1
  85. package/dist/esm/components/DatePickerWithInput/DatePickerWithInput.js +2 -2
  86. package/dist/esm/components/DatePickerWithInput/DatePickerWithInput.js.map +1 -1
  87. package/dist/esm/components/DatePickerWithInput/styles.js +2 -2
  88. package/dist/esm/components/DatePickerWithInput/styles.js.map +1 -1
  89. package/dist/esm/components/DebounceInput/DebounceInput.js +4 -4
  90. package/dist/esm/components/DebounceInput/DebounceInput.js.map +1 -1
  91. package/dist/esm/components/Plugins/PluginSignatureBadge.js +1 -1
  92. package/dist/esm/components/Plugins/PluginSignatureBadge.js.map +1 -1
  93. package/dist/esm/components/QueryEditor/AccessoryButton.js +1 -1
  94. package/dist/esm/components/QueryEditor/AccessoryButton.js.map +1 -1
  95. package/dist/esm/components/QueryEditor/CatalogSelector.js +6 -6
  96. package/dist/esm/components/QueryEditor/CatalogSelector.js.map +1 -1
  97. package/dist/esm/components/QueryEditor/ConfirmModal.js +4 -4
  98. package/dist/esm/components/QueryEditor/ConfirmModal.js.map +1 -1
  99. package/dist/esm/components/QueryEditor/DatasetSelector.js +3 -3
  100. package/dist/esm/components/QueryEditor/DatasetSelector.js.map +1 -1
  101. package/dist/esm/components/QueryEditor/EditorField.js +6 -6
  102. package/dist/esm/components/QueryEditor/EditorField.js.map +1 -1
  103. package/dist/esm/components/QueryEditor/EditorFieldGroup.js +1 -1
  104. package/dist/esm/components/QueryEditor/EditorFieldGroup.js.map +1 -1
  105. package/dist/esm/components/QueryEditor/EditorHeader.js +3 -3
  106. package/dist/esm/components/QueryEditor/EditorHeader.js.map +1 -1
  107. package/dist/esm/components/QueryEditor/EditorList.js +2 -2
  108. package/dist/esm/components/QueryEditor/EditorList.js.map +1 -1
  109. package/dist/esm/components/QueryEditor/EditorRow.js +5 -5
  110. package/dist/esm/components/QueryEditor/EditorRow.js.map +1 -1
  111. package/dist/esm/components/QueryEditor/EditorRows.js +3 -3
  112. package/dist/esm/components/QueryEditor/EditorRows.js.map +1 -1
  113. package/dist/esm/components/QueryEditor/EditorStack.js +2 -2
  114. package/dist/esm/components/QueryEditor/EditorStack.js.map +1 -1
  115. package/dist/esm/components/QueryEditor/EditorSwitch.js +3 -3
  116. package/dist/esm/components/QueryEditor/EditorSwitch.js.map +1 -1
  117. package/dist/esm/components/QueryEditor/FlexItem.js +1 -1
  118. package/dist/esm/components/QueryEditor/FlexItem.js.map +1 -1
  119. package/dist/esm/components/QueryEditor/InlineSelect.js +2 -2
  120. package/dist/esm/components/QueryEditor/InlineSelect.js.map +1 -1
  121. package/dist/esm/components/QueryEditor/InputGroup.js +6 -6
  122. package/dist/esm/components/QueryEditor/InputGroup.js.map +1 -1
  123. package/dist/esm/components/QueryEditor/QueryEditor.js +13 -15
  124. package/dist/esm/components/QueryEditor/QueryEditor.js.map +1 -1
  125. package/dist/esm/components/QueryEditor/QueryHeader.js +22 -22
  126. package/dist/esm/components/QueryEditor/QueryHeader.js.map +1 -1
  127. package/dist/esm/components/QueryEditor/RunQueryButton.js +2 -2
  128. package/dist/esm/components/QueryEditor/RunQueryButton.js.map +1 -1
  129. package/dist/esm/components/QueryEditor/Space.js +3 -3
  130. package/dist/esm/components/QueryEditor/Space.js.map +1 -1
  131. package/dist/esm/components/QueryEditor/TableSelector.js +1 -1
  132. package/dist/esm/components/QueryEditor/TableSelector.js.map +1 -1
  133. package/dist/esm/components/QueryEditor/defaults.js +7 -7
  134. package/dist/esm/components/QueryEditor/defaults.js.map +1 -1
  135. package/dist/esm/components/QueryEditor/expressions.js.map +1 -1
  136. package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js +4 -4
  137. package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js.map +1 -1
  138. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js +5 -5
  139. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js.map +1 -1
  140. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js +9 -9
  141. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js.map +1 -1
  142. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js +6 -6
  143. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js.map +1 -1
  144. package/dist/esm/components/QueryEditor/types.js +1 -1
  145. package/dist/esm/components/QueryEditor/types.js.map +1 -1
  146. package/dist/esm/components/QueryEditor/utils/formatSQL.js.map +1 -1
  147. package/dist/esm/components/QueryEditor/utils/sql.utils.js +8 -8
  148. package/dist/esm/components/QueryEditor/utils/sql.utils.js.map +1 -1
  149. package/dist/esm/components/QueryEditor/utils/useSqlChange.js +2 -2
  150. package/dist/esm/components/QueryEditor/utils/useSqlChange.js.map +1 -1
  151. package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js +28 -27
  152. package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js.map +1 -1
  153. package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js +4 -4
  154. package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js.map +1 -1
  155. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js +3 -3
  156. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js.map +1 -1
  157. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRows.js +1 -1
  158. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRows.js.map +1 -1
  159. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js +4 -4
  160. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js.map +1 -1
  161. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js +9 -9
  162. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js.map +1 -1
  163. package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js +3 -3
  164. package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js.map +1 -1
  165. package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js +1 -1
  166. package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js.map +1 -1
  167. package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js +3 -3
  168. package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js.map +1 -1
  169. package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js +1 -1
  170. package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js.map +1 -1
  171. package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js +1 -1
  172. package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js.map +1 -1
  173. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js +14 -14
  174. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js.map +1 -1
  175. package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js +1 -1
  176. package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js.map +1 -1
  177. package/dist/esm/components/QueryEditor/visual-query-builder/WhereRow.js +6 -6
  178. package/dist/esm/components/QueryEditor/visual-query-builder/WhereRow.js.map +1 -1
  179. package/dist/esm/components/QueryEditorRow/QueryEditorRow.js +1 -1
  180. package/dist/esm/components/QueryEditorRow/QueryEditorRow.js.map +1 -1
  181. package/dist/esm/components/SQLEditor/components/SQLEditor.js +19 -19
  182. package/dist/esm/components/SQLEditor/components/SQLEditor.js.map +1 -1
  183. package/dist/esm/components/SQLEditor/hooks/useLatestCallback.js +5 -5
  184. package/dist/esm/components/SQLEditor/hooks/useLatestCallback.js.map +1 -1
  185. package/dist/esm/components/SQLEditor/mocks/Monaco.js.map +1 -1
  186. package/dist/esm/components/SQLEditor/mocks/TextModel.js.map +1 -1
  187. package/dist/esm/components/SQLEditor/mocks/queries/multiLineFullQuery.js.map +1 -1
  188. package/dist/esm/components/SQLEditor/mocks/queries/multiLineFullQueryWithAggregation.js.map +1 -1
  189. package/dist/esm/components/SQLEditor/mocks/queries/multiLineMultipleColumns.js.map +1 -1
  190. package/dist/esm/components/SQLEditor/mocks/queries/singleLineEmptyQuery.js.map +1 -1
  191. package/dist/esm/components/SQLEditor/mocks/queries/singleLineFullQuery.js.map +1 -1
  192. package/dist/esm/components/SQLEditor/mocks/queries/singleLineFullQueryWithAggregation.js.map +1 -1
  193. package/dist/esm/components/SQLEditor/mocks/queries/singleLineMultipleColumns.js.map +1 -1
  194. package/dist/esm/components/SQLEditor/mocks/queries/singleLineTwoQueries.js.map +1 -1
  195. package/dist/esm/components/SQLEditor/mocks/queries/singleLineTwoQueriesWithAggregation.js.map +1 -1
  196. package/dist/esm/components/SQLEditor/standardSql/definition.js.map +1 -1
  197. package/dist/esm/components/SQLEditor/standardSql/getStandardSuggestions.js +2 -2
  198. package/dist/esm/components/SQLEditor/standardSql/getStandardSuggestions.js.map +1 -1
  199. package/dist/esm/components/SQLEditor/standardSql/getStatementPosition.js +3 -3
  200. package/dist/esm/components/SQLEditor/standardSql/getStatementPosition.js.map +1 -1
  201. package/dist/esm/components/SQLEditor/standardSql/language.js.map +1 -1
  202. package/dist/esm/components/SQLEditor/standardSql/macros.js.map +1 -1
  203. package/dist/esm/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js +2 -2
  204. package/dist/esm/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js.map +1 -1
  205. package/dist/esm/components/SQLEditor/standardSql/standardSuggestionsRegistry.js +1 -1
  206. package/dist/esm/components/SQLEditor/standardSql/standardSuggestionsRegistry.js.map +1 -1
  207. package/dist/esm/components/SQLEditor/standardSql/statementPositionResolversRegistry.js +25 -25
  208. package/dist/esm/components/SQLEditor/standardSql/statementPositionResolversRegistry.js.map +1 -1
  209. package/dist/esm/components/SQLEditor/standardSql/suggestionsKindRegistry.js +1 -1
  210. package/dist/esm/components/SQLEditor/standardSql/suggestionsKindRegistry.js.map +1 -1
  211. package/dist/esm/components/SQLEditor/test-utils/index.js.map +1 -1
  212. package/dist/esm/components/SQLEditor/test-utils/statementPosition.js.map +1 -1
  213. package/dist/esm/components/SQLEditor/types.js.map +1 -1
  214. package/dist/esm/components/SQLEditor/utils/LinkedToken.js +7 -7
  215. package/dist/esm/components/SQLEditor/utils/LinkedToken.js.map +1 -1
  216. package/dist/esm/components/SQLEditor/utils/commands.js.map +1 -1
  217. package/dist/esm/components/SQLEditor/utils/debugger.js +1 -1
  218. package/dist/esm/components/SQLEditor/utils/debugger.js.map +1 -1
  219. package/dist/esm/components/SQLEditor/utils/getSuggestionKind.js.map +1 -1
  220. package/dist/esm/components/SQLEditor/utils/linkedTokenBuilder.js +1 -1
  221. package/dist/esm/components/SQLEditor/utils/linkedTokenBuilder.js.map +1 -1
  222. package/dist/esm/components/SQLEditor/utils/toCompletionItem.js +1 -1
  223. package/dist/esm/components/SQLEditor/utils/toCompletionItem.js.map +1 -1
  224. package/dist/esm/components/SQLEditor/utils/tokenType.js.map +1 -1
  225. package/dist/esm/components/SQLEditor/utils/tokenUtils.js +9 -9
  226. package/dist/esm/components/SQLEditor/utils/tokenUtils.js.map +1 -1
  227. package/dist/esm/components/Segment/Segment.js +4 -4
  228. package/dist/esm/components/Segment/Segment.js.map +1 -1
  229. package/dist/esm/components/VisualQueryBuilder/QueryModellerBase.js +2 -2
  230. package/dist/esm/components/VisualQueryBuilder/QueryModellerBase.js.map +1 -1
  231. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js +16 -16
  232. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js.map +1 -1
  233. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js +4 -4
  234. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js.map +1 -1
  235. package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js +5 -5
  236. package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js.map +1 -1
  237. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js +6 -8
  238. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js.map +1 -1
  239. package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js +4 -4
  240. package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js.map +1 -1
  241. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js +5 -5
  242. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js.map +1 -1
  243. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js +5 -5
  244. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js.map +1 -1
  245. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js +5 -7
  246. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js.map +1 -1
  247. package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js +3 -3
  248. package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js.map +1 -1
  249. package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js +6 -8
  250. package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js.map +1 -1
  251. package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js +3 -5
  252. package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js.map +1 -1
  253. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js +10 -10
  254. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js.map +1 -1
  255. package/dist/esm/components/VisualQueryBuilder/components/QueryEditorModeToggle.js +1 -1
  256. package/dist/esm/components/VisualQueryBuilder/components/QueryEditorModeToggle.js.map +1 -1
  257. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js +4 -6
  258. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js.map +1 -1
  259. package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js +1 -3
  260. package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js.map +1 -1
  261. package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js +3 -3
  262. package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js.map +1 -1
  263. package/dist/esm/components/VisualQueryBuilder/types.js +1 -1
  264. package/dist/esm/components/VisualQueryBuilder/types.js.map +1 -1
  265. package/dist/esm/datasource/SqlDatasource.js +18 -16
  266. package/dist/esm/datasource/SqlDatasource.js.map +1 -1
  267. package/dist/esm/datasource/constants.js.map +1 -1
  268. package/dist/esm/hooks/useDebounce.js +3 -3
  269. package/dist/esm/hooks/useDebounce.js.map +1 -1
  270. package/dist/esm/index.d.ts +56 -507
  271. package/dist/esm/index.js +3 -5
  272. package/dist/esm/index.js.map +1 -1
  273. package/dist/esm/node_modules/chance/chance.js +7820 -0
  274. package/dist/esm/node_modules/chance/chance.js.map +1 -0
  275. package/dist/esm/node_modules/react/cjs/react.development.js +2752 -0
  276. package/dist/esm/node_modules/react/cjs/react.development.js.map +1 -0
  277. package/dist/esm/node_modules/react/cjs/react.production.min.js +39 -0
  278. package/dist/esm/node_modules/react/cjs/react.production.min.js.map +1 -0
  279. package/dist/esm/node_modules/react/index.js +20 -0
  280. package/dist/esm/node_modules/react/index.js.map +1 -0
  281. package/dist/esm/node_modules/rxjs/dist/esm5/internal/Observable.js +104 -0
  282. package/dist/esm/node_modules/rxjs/dist/esm5/internal/Observable.js.map +1 -0
  283. package/dist/esm/node_modules/rxjs/dist/esm5/internal/Subscriber.js +154 -0
  284. package/dist/esm/node_modules/rxjs/dist/esm5/internal/Subscriber.js.map +1 -0
  285. package/dist/esm/node_modules/rxjs/dist/esm5/internal/Subscription.js +145 -0
  286. package/dist/esm/node_modules/rxjs/dist/esm5/internal/Subscription.js.map +1 -0
  287. package/dist/esm/node_modules/rxjs/dist/esm5/internal/config.js +10 -0
  288. package/dist/esm/node_modules/rxjs/dist/esm5/internal/config.js.map +1 -0
  289. package/dist/esm/node_modules/rxjs/dist/esm5/internal/lastValueFrom.js +26 -0
  290. package/dist/esm/node_modules/rxjs/dist/esm5/internal/lastValueFrom.js.map +1 -0
  291. package/dist/esm/node_modules/rxjs/dist/esm5/internal/observable/empty.js +6 -0
  292. package/dist/esm/node_modules/rxjs/dist/esm5/internal/observable/empty.js.map +1 -0
  293. package/dist/esm/node_modules/rxjs/dist/esm5/internal/observable/from.js +9 -0
  294. package/dist/esm/node_modules/rxjs/dist/esm5/internal/observable/from.js.map +1 -0
  295. package/dist/esm/node_modules/rxjs/dist/esm5/internal/observable/innerFrom.js +146 -0
  296. package/dist/esm/node_modules/rxjs/dist/esm5/internal/observable/innerFrom.js.map +1 -0
  297. package/dist/esm/node_modules/rxjs/dist/esm5/internal/observable/merge.js +26 -0
  298. package/dist/esm/node_modules/rxjs/dist/esm5/internal/observable/merge.js.map +1 -0
  299. package/dist/esm/node_modules/rxjs/dist/esm5/internal/observable/of.js +14 -0
  300. package/dist/esm/node_modules/rxjs/dist/esm5/internal/observable/of.js.map +1 -0
  301. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js +63 -0
  302. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js.map +1 -0
  303. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/catchError.js +30 -0
  304. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/catchError.js.map +1 -0
  305. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/map.js +14 -0
  306. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/map.js.map +1 -0
  307. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/mergeAll.js +10 -0
  308. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/mergeAll.js.map +1 -0
  309. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/mergeInternals.js +56 -0
  310. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/mergeInternals.js.map +1 -0
  311. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/mergeMap.js +19 -0
  312. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/mergeMap.js.map +1 -0
  313. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/observeOn.js +13 -0
  314. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/observeOn.js.map +1 -0
  315. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/subscribeOn.js +11 -0
  316. package/dist/esm/node_modules/rxjs/dist/esm5/internal/operators/subscribeOn.js.map +1 -0
  317. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduleArray.js +21 -0
  318. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduleArray.js.map +1 -0
  319. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduleAsyncIterable.js +26 -0
  320. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduleAsyncIterable.js.map +1 -0
  321. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduleIterable.js +35 -0
  322. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduleIterable.js.map +1 -0
  323. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduleObservable.js +10 -0
  324. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduleObservable.js.map +1 -0
  325. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/schedulePromise.js +10 -0
  326. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/schedulePromise.js.map +1 -0
  327. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduleReadableStreamLike.js +9 -0
  328. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduleReadableStreamLike.js.map +1 -0
  329. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduled.js +40 -0
  330. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduled/scheduled.js.map +1 -0
  331. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js +18 -0
  332. package/dist/esm/node_modules/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js.map +1 -0
  333. package/dist/esm/node_modules/rxjs/dist/esm5/internal/symbol/iterator.js +10 -0
  334. package/dist/esm/node_modules/rxjs/dist/esm5/internal/symbol/iterator.js.map +1 -0
  335. package/dist/esm/node_modules/rxjs/dist/esm5/internal/symbol/observable.js +4 -0
  336. package/dist/esm/node_modules/rxjs/dist/esm5/internal/symbol/observable.js.map +1 -0
  337. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/EmptyError.js +10 -0
  338. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/EmptyError.js.map +1 -0
  339. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/UnsubscriptionError.js +15 -0
  340. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/UnsubscriptionError.js.map +1 -0
  341. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/args.js +14 -0
  342. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/args.js.map +1 -0
  343. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/arrRemove.js +9 -0
  344. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/arrRemove.js.map +1 -0
  345. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/createErrorClass.js +13 -0
  346. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/createErrorClass.js.map +1 -0
  347. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/errorContext.js +8 -0
  348. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/errorContext.js.map +1 -0
  349. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/executeSchedule.js +20 -0
  350. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/executeSchedule.js.map +1 -0
  351. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/identity.js +6 -0
  352. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/identity.js.map +1 -0
  353. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isArrayLike.js +4 -0
  354. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isArrayLike.js.map +1 -0
  355. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isAsyncIterable.js +8 -0
  356. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isAsyncIterable.js.map +1 -0
  357. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isFunction.js +6 -0
  358. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isFunction.js.map +1 -0
  359. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isInteropObservable.js +9 -0
  360. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isInteropObservable.js.map +1 -0
  361. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isIterable.js +9 -0
  362. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isIterable.js.map +1 -0
  363. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isPromise.js +8 -0
  364. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isPromise.js.map +1 -0
  365. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isReadableStreamLike.js +41 -0
  366. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isReadableStreamLike.js.map +1 -0
  367. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isScheduler.js +8 -0
  368. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/isScheduler.js.map +1 -0
  369. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/lift.js +23 -0
  370. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/lift.js.map +1 -0
  371. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/noop.js +4 -0
  372. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/noop.js.map +1 -0
  373. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/pipe.js +16 -0
  374. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/pipe.js.map +1 -0
  375. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/reportUnhandledError.js +12 -0
  376. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/reportUnhandledError.js.map +1 -0
  377. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/throwUnobservableError.js +6 -0
  378. package/dist/esm/node_modules/rxjs/dist/esm5/internal/util/throwUnobservableError.js.map +1 -0
  379. package/dist/esm/node_modules/semver/classes/comparator.js +160 -0
  380. package/dist/esm/node_modules/semver/classes/comparator.js.map +1 -0
  381. package/dist/esm/node_modules/semver/classes/range.js +575 -0
  382. package/dist/esm/node_modules/semver/classes/range.js.map +1 -0
  383. package/dist/esm/node_modules/semver/classes/semver.js +349 -0
  384. package/dist/esm/node_modules/semver/classes/semver.js.map +1 -0
  385. package/dist/esm/node_modules/semver/functions/clean.js +20 -0
  386. package/dist/esm/node_modules/semver/functions/clean.js.map +1 -0
  387. package/dist/esm/node_modules/semver/functions/cmp.js +71 -0
  388. package/dist/esm/node_modules/semver/functions/cmp.js.map +1 -0
  389. package/dist/esm/node_modules/semver/functions/coerce.js +76 -0
  390. package/dist/esm/node_modules/semver/functions/coerce.js.map +1 -0
  391. package/dist/esm/node_modules/semver/functions/compare-build.js +21 -0
  392. package/dist/esm/node_modules/semver/functions/compare-build.js.map +1 -0
  393. package/dist/esm/node_modules/semver/functions/compare-loose.js +17 -0
  394. package/dist/esm/node_modules/semver/functions/compare-loose.js.map +1 -0
  395. package/dist/esm/node_modules/semver/functions/compare.js +19 -0
  396. package/dist/esm/node_modules/semver/functions/compare.js.map +1 -0
  397. package/dist/esm/node_modules/semver/functions/diff.js +72 -0
  398. package/dist/esm/node_modules/semver/functions/diff.js.map +1 -0
  399. package/dist/esm/node_modules/semver/functions/eq.js +17 -0
  400. package/dist/esm/node_modules/semver/functions/eq.js.map +1 -0
  401. package/dist/esm/node_modules/semver/functions/gt.js +17 -0
  402. package/dist/esm/node_modules/semver/functions/gt.js.map +1 -0
  403. package/dist/esm/node_modules/semver/functions/gte.js +17 -0
  404. package/dist/esm/node_modules/semver/functions/gte.js.map +1 -0
  405. package/dist/esm/node_modules/semver/functions/inc.js +33 -0
  406. package/dist/esm/node_modules/semver/functions/inc.js.map +1 -0
  407. package/dist/esm/node_modules/semver/functions/lt.js +17 -0
  408. package/dist/esm/node_modules/semver/functions/lt.js.map +1 -0
  409. package/dist/esm/node_modules/semver/functions/lte.js +17 -0
  410. package/dist/esm/node_modules/semver/functions/lte.js.map +1 -0
  411. package/dist/esm/node_modules/semver/functions/major.js +17 -0
  412. package/dist/esm/node_modules/semver/functions/major.js.map +1 -0
  413. package/dist/esm/node_modules/semver/functions/minor.js +17 -0
  414. package/dist/esm/node_modules/semver/functions/minor.js.map +1 -0
  415. package/dist/esm/node_modules/semver/functions/neq.js +17 -0
  416. package/dist/esm/node_modules/semver/functions/neq.js.map +1 -0
  417. package/dist/esm/node_modules/semver/functions/parse.js +30 -0
  418. package/dist/esm/node_modules/semver/functions/parse.js.map +1 -0
  419. package/dist/esm/node_modules/semver/functions/patch.js +17 -0
  420. package/dist/esm/node_modules/semver/functions/patch.js.map +1 -0
  421. package/dist/esm/node_modules/semver/functions/prerelease.js +20 -0
  422. package/dist/esm/node_modules/semver/functions/prerelease.js.map +1 -0
  423. package/dist/esm/node_modules/semver/functions/rcompare.js +17 -0
  424. package/dist/esm/node_modules/semver/functions/rcompare.js.map +1 -0
  425. package/dist/esm/node_modules/semver/functions/rsort.js +17 -0
  426. package/dist/esm/node_modules/semver/functions/rsort.js.map +1 -0
  427. package/dist/esm/node_modules/semver/functions/satisfies.js +24 -0
  428. package/dist/esm/node_modules/semver/functions/satisfies.js.map +1 -0
  429. package/dist/esm/node_modules/semver/functions/sort.js +17 -0
  430. package/dist/esm/node_modules/semver/functions/sort.js.map +1 -0
  431. package/dist/esm/node_modules/semver/functions/valid.js +20 -0
  432. package/dist/esm/node_modules/semver/functions/valid.js.map +1 -0
  433. package/dist/esm/node_modules/semver/index.js +143 -0
  434. package/dist/esm/node_modules/semver/index.js.map +1 -0
  435. package/dist/esm/node_modules/semver/internal/constants.js +47 -0
  436. package/dist/esm/node_modules/semver/internal/constants.js.map +1 -0
  437. package/dist/esm/node_modules/semver/internal/debug.js +21 -0
  438. package/dist/esm/node_modules/semver/internal/debug.js.map +1 -0
  439. package/dist/esm/node_modules/semver/internal/identifiers.js +39 -0
  440. package/dist/esm/node_modules/semver/internal/identifiers.js.map +1 -0
  441. package/dist/esm/node_modules/semver/internal/lrucache.js +52 -0
  442. package/dist/esm/node_modules/semver/internal/lrucache.js.map +1 -0
  443. package/dist/esm/node_modules/semver/internal/parse-options.js +27 -0
  444. package/dist/esm/node_modules/semver/internal/parse-options.js.map +1 -0
  445. package/dist/esm/node_modules/semver/internal/re.js +238 -0
  446. package/dist/esm/node_modules/semver/internal/re.js.map +1 -0
  447. package/dist/esm/node_modules/semver/ranges/gtr.js +18 -0
  448. package/dist/esm/node_modules/semver/ranges/gtr.js.map +1 -0
  449. package/dist/esm/node_modules/semver/ranges/intersects.js +21 -0
  450. package/dist/esm/node_modules/semver/ranges/intersects.js.map +1 -0
  451. package/dist/esm/node_modules/semver/ranges/ltr.js +18 -0
  452. package/dist/esm/node_modules/semver/ranges/ltr.js.map +1 -0
  453. package/dist/esm/node_modules/semver/ranges/max-satisfying.js +40 -0
  454. package/dist/esm/node_modules/semver/ranges/max-satisfying.js.map +1 -0
  455. package/dist/esm/node_modules/semver/ranges/min-satisfying.js +39 -0
  456. package/dist/esm/node_modules/semver/ranges/min-satisfying.js.map +1 -0
  457. package/dist/esm/node_modules/semver/ranges/min-version.js +77 -0
  458. package/dist/esm/node_modules/semver/ranges/min-version.js.map +1 -0
  459. package/dist/esm/node_modules/semver/ranges/outside.js +101 -0
  460. package/dist/esm/node_modules/semver/ranges/outside.js.map +1 -0
  461. package/dist/esm/node_modules/semver/ranges/simplify.js +62 -0
  462. package/dist/esm/node_modules/semver/ranges/simplify.js.map +1 -0
  463. package/dist/esm/node_modules/semver/ranges/subset.js +264 -0
  464. package/dist/esm/node_modules/semver/ranges/subset.js.map +1 -0
  465. package/dist/esm/node_modules/semver/ranges/to-comparators.js +22 -0
  466. package/dist/esm/node_modules/semver/ranges/to-comparators.js.map +1 -0
  467. package/dist/esm/node_modules/semver/ranges/valid.js +25 -0
  468. package/dist/esm/node_modules/semver/ranges/valid.js.map +1 -0
  469. package/dist/esm/node_modules/tslib/tslib.es6.js +140 -0
  470. package/dist/esm/node_modules/tslib/tslib.es6.js.map +1 -0
  471. package/dist/esm/test/mocks/DataQuery.js +5 -5
  472. package/dist/esm/test/mocks/DataQuery.js.map +1 -1
  473. package/dist/esm/test/mocks/Datasource.js +22 -22
  474. package/dist/esm/test/mocks/Datasource.js.map +1 -1
  475. package/dist/esm/test/mocks/Plugin.js +30 -30
  476. package/dist/esm/test/mocks/Plugin.js.map +1 -1
  477. package/dist/esm/test/mocks/QueryEditorProps.js +6 -6
  478. package/dist/esm/test/mocks/QueryEditorProps.js.map +1 -1
  479. package/dist/esm/test/mocks/utils.js +5 -5
  480. package/dist/esm/test/mocks/utils.js.map +1 -1
  481. package/dist/esm/test-utils.d.ts +24 -24
  482. package/package.json +69 -82
  483. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/AuthorizationHeaderField.js +0 -53
  484. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/AuthorizationHeaderField.js.map +0 -1
  485. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/ComplexFieldNote.js +0 -24
  486. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/ComplexFieldNote.js.map +0 -1
  487. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js +0 -229
  488. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js.map +0 -1
  489. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/IndexedPairEditor.js +0 -124
  490. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/IndexedPairEditor.js.map +0 -1
  491. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/PdcFieldNote.js +0 -34
  492. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/PdcFieldNote.js.map +0 -1
  493. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js +0 -60
  494. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js.map +0 -1
  495. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SecureFieldInput.js +0 -61
  496. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SecureFieldInput.js.map +0 -1
  497. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js +0 -54
  498. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js.map +0 -1
  499. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/StringArrayInput.js +0 -84
  500. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/StringArrayInput.js.map +0 -1
  501. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js +0 -176
  502. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js.map +0 -1
  503. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js +0 -88
  504. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js.map +0 -1
  505. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/renderFieldInput.js +0 -106
  506. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/renderFieldInput.js.map +0 -1
  507. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/tabStyles.js +0 -241
  508. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/tabStyles.js.map +0 -1
  509. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/useDatasourceConfigForm.js +0 -284
  510. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/useDatasourceConfigForm.js.map +0 -1
  511. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/wizardStyles.js +0 -124
  512. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/wizardStyles.js.map +0 -1
  513. package/dist/esm/datasource/schema/config.js +0 -235
  514. package/dist/esm/datasource/schema/config.js.map +0 -1
  515. package/dist/esm/datasource/schema/datasource.js +0 -228
  516. package/dist/esm/datasource/schema/datasource.js.map +0 -1
  517. package/dist/esm/datasource/schema/llmHints.js +0 -54
  518. package/dist/esm/datasource/schema/llmHints.js.map +0 -1
  519. package/dist/esm/datasource/schema/provisioningYaml.js +0 -358
  520. package/dist/esm/datasource/schema/provisioningYaml.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AwesomeQueryBuilder.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.tsx"],"sourcesContent":["import React from 'react';\nimport { type List } from 'immutable';\nimport { isString } from 'lodash';\nimport {\n BasicConfig,\n Utils,\n type Config,\n type JsonItem,\n type JsonTree,\n type Operator,\n type Settings,\n type Field,\n type ValueSource,\n type WidgetProps,\n type Widgets,\n type OperatorOptionsI,\n} from '@react-awesome-query-builder/ui';\nimport { dateTime, toOption } from '@grafana/data';\nimport { Button, DateTimePicker, Input, Select } from '@grafana/ui';\n\nconst buttonLabels = {\n add: 'Add',\n remove: 'Remove',\n};\n\nexport const emptyInitValue: JsonItem = {\n id: Utils.uuid(),\n type: 'group' as const,\n children1: [\n {\n id: Utils.uuid(),\n type: 'rule',\n properties: {\n field: null,\n operator: null,\n value: [],\n valueSrc: [],\n },\n },\n ],\n};\n\nexport const emptyInitTree: JsonTree = {\n id: Utils.uuid(),\n type: 'group' as const,\n children1: [\n {\n id: Utils.uuid(),\n type: 'rule',\n properties: {\n field: null,\n operator: null,\n value: [],\n valueSrc: [],\n },\n },\n ],\n};\n\nexport const widgets: Widgets = {\n ...BasicConfig.widgets,\n text: {\n ...BasicConfig.widgets.text,\n factory: function TextInput(props: WidgetProps) {\n return (\n <Input\n value={props?.value || ''}\n placeholder={props?.placeholder}\n onChange={(e) => props?.setValue(e.currentTarget.value)}\n />\n );\n },\n },\n number: {\n ...BasicConfig.widgets.number,\n factory: function NumberInput(props: WidgetProps) {\n return (\n <Input\n value={props?.value}\n placeholder={props?.placeholder}\n type=\"number\"\n onChange={(e) => props?.setValue(Number.parseInt(e.currentTarget.value, 10))}\n />\n );\n },\n },\n datetime: {\n ...BasicConfig.widgets.datetime,\n factory: function DateTimeInput(props: WidgetProps) {\n return (\n <DateTimePicker\n onChange={(e) => {\n props?.setValue(e?.format(BasicConfig.widgets.datetime.valueFormat));\n }}\n date={dateTime(props?.value).utc()}\n />\n );\n },\n },\n};\n\nexport const settings: Settings = {\n ...BasicConfig.settings,\n canRegroup: false,\n maxNesting: 1,\n canReorder: false,\n showNot: false,\n addRuleLabel: buttonLabels.add,\n deleteLabel: buttonLabels.remove,\n renderConjs: function Conjunctions(conjProps) {\n return (\n <Select\n id={conjProps?.id}\n aria-label=\"Conjunction\"\n menuShouldPortal\n options={conjProps?.conjunctionOptions ? Object.keys(conjProps?.conjunctionOptions).map(toOption) : undefined}\n value={conjProps?.selectedConjunction}\n onChange={(val) => conjProps?.setConjunction(val.value!)}\n />\n );\n },\n renderField: function Field(fieldProps) {\n const fields = fieldProps?.config?.fields || {};\n return (\n <Select\n id={fieldProps?.id}\n width={25}\n aria-label=\"Field\"\n menuShouldPortal\n options={fieldProps?.items.map((f) => {\n // @ts-ignore\n const icon = fields[f.key].mainWidgetProps?.customProps?.icon;\n return {\n label: f.label,\n value: f.key,\n icon,\n };\n })}\n value={fieldProps?.selectedKey}\n onChange={(val) => {\n fieldProps?.setField(val.label!);\n }}\n />\n );\n },\n renderButton: function RAQBButton(buttonProps) {\n return (\n <Button\n type=\"button\"\n title={`${buttonProps?.label} filter`}\n onClick={buttonProps?.onClick}\n variant=\"secondary\"\n size=\"md\"\n icon={buttonProps?.label === buttonLabels.add ? 'plus' : 'times'}\n />\n );\n },\n renderOperator: function Operator(operatorProps) {\n return (\n <Select\n options={operatorProps?.items.map((op) => ({ label: op.label, value: op.key }))}\n aria-label=\"Operator\"\n menuShouldPortal\n value={operatorProps?.selectedKey}\n onChange={(val) => {\n operatorProps?.setField(val.value || '');\n }}\n />\n );\n },\n};\n\n// add IN / NOT IN operators to text to support multi-value variables\nconst enum Op {\n IN = 'select_any_in',\n NOT_IN = 'select_not_any_in',\n}\n\nconst customOperators = getCustomOperators(BasicConfig);\nconst textWidget = BasicConfig.types.text.widgets.text;\nconst opers = [...(textWidget.operators || []), Op.IN, Op.NOT_IN];\nconst customTextWidget = {\n ...textWidget,\n operators: opers,\n};\n\nconst customTypes = {\n ...BasicConfig.types,\n text: {\n ...BasicConfig.types.text,\n widgets: {\n ...BasicConfig.types.text.widgets,\n text: customTextWidget,\n },\n },\n};\n\nexport const raqbConfig: Config = {\n ...BasicConfig,\n widgets,\n settings,\n operators: customOperators as typeof BasicConfig.operators,\n types: customTypes,\n};\n\nexport type { Config };\n\nfunction getCustomOperators(config: BasicConfig) {\n const { ...supportedOperators } = config.operators;\n const noop = () => '';\n // IN operator expects array, override IN formatter for multi-value variables\n\n const sqlFormatInOp = supportedOperators[Op.IN].sqlFormatOp || noop;\n const customSqlInFormatter = (\n field: string,\n op: string,\n value: string | List<string>,\n valueSrc: ValueSource,\n valueType: string,\n opDef: Operator,\n operatorOptions: OperatorOptionsI,\n fieldDef: Field\n ) =>\n sqlFormatInOp.call(\n config.ctx,\n field,\n op,\n splitIfString(value),\n valueSrc,\n valueType,\n opDef,\n operatorOptions,\n fieldDef\n );\n // NOT IN operator expects array, override NOT IN formatter for multi-value variables\n const sqlFormatNotInOp = supportedOperators[Op.NOT_IN].sqlFormatOp || noop;\n const customSqlNotInFormatter = (\n field: string,\n op: string,\n value: string | List<string>,\n valueSrc: ValueSource,\n valueType: string,\n opDef: Operator,\n operatorOptions: OperatorOptionsI,\n fieldDef: Field\n ) =>\n sqlFormatNotInOp.call(\n config.ctx,\n field,\n op,\n splitIfString(value),\n valueSrc,\n valueType,\n opDef,\n operatorOptions,\n fieldDef\n );\n\n const customOperators = {\n ...supportedOperators,\n [Op.IN]: {\n ...supportedOperators[Op.IN],\n sqlFormatOp: customSqlInFormatter,\n },\n [Op.NOT_IN]: {\n ...supportedOperators[Op.NOT_IN],\n sqlFormatOp: customSqlNotInFormatter,\n },\n };\n\n return customOperators;\n}\n\n// value: string | List<string> but AQB uses a different version of Immutable\n// eslint-ignore\nfunction splitIfString(value: any) {\n if (isString(value)) {\n return value.split(',');\n }\n return value;\n}\n"],"names":["_a","customOperators"],"mappings":"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"}
1
+ {"version":3,"file":"AwesomeQueryBuilder.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.tsx"],"sourcesContent":["import React from 'react';\nimport { type List } from 'immutable';\nimport { isString } from 'lodash';\nimport {\n BasicConfig,\n Utils,\n type Config,\n type JsonItem,\n type JsonTree,\n type Operator,\n type Settings,\n type Field,\n type ValueSource,\n type WidgetProps,\n type Widgets,\n type OperatorOptionsI,\n} from '@react-awesome-query-builder/ui';\nimport { dateTime, toOption } from '@grafana/data';\nimport { Button, DateTimePicker, Input, Select } from '@grafana/ui';\n\nconst buttonLabels = {\n add: 'Add',\n remove: 'Remove',\n};\n\nexport const emptyInitValue: JsonItem = {\n id: Utils.uuid(),\n type: 'group' as const,\n children1: [\n {\n id: Utils.uuid(),\n type: 'rule',\n properties: {\n field: null,\n operator: null,\n value: [],\n valueSrc: [],\n },\n },\n ],\n};\n\nexport const emptyInitTree: JsonTree = {\n id: Utils.uuid(),\n type: 'group' as const,\n children1: [\n {\n id: Utils.uuid(),\n type: 'rule',\n properties: {\n field: null,\n operator: null,\n value: [],\n valueSrc: [],\n },\n },\n ],\n};\n\nexport const widgets: Widgets = {\n ...BasicConfig.widgets,\n text: {\n ...BasicConfig.widgets.text,\n factory: function TextInput(props: WidgetProps) {\n return (\n <Input\n value={props?.value || ''}\n placeholder={props?.placeholder}\n onChange={(e) => props?.setValue(e.currentTarget.value)}\n />\n );\n },\n },\n number: {\n ...BasicConfig.widgets.number,\n factory: function NumberInput(props: WidgetProps) {\n return (\n <Input\n value={props?.value}\n placeholder={props?.placeholder}\n type=\"number\"\n onChange={(e) => props?.setValue(Number.parseInt(e.currentTarget.value, 10))}\n />\n );\n },\n },\n datetime: {\n ...BasicConfig.widgets.datetime,\n factory: function DateTimeInput(props: WidgetProps) {\n return (\n <DateTimePicker\n onChange={(e) => {\n props?.setValue(e?.format(BasicConfig.widgets.datetime.valueFormat));\n }}\n date={dateTime(props?.value).utc()}\n />\n );\n },\n },\n};\n\nexport const settings: Settings = {\n ...BasicConfig.settings,\n canRegroup: false,\n maxNesting: 1,\n canReorder: false,\n showNot: false,\n addRuleLabel: buttonLabels.add,\n deleteLabel: buttonLabels.remove,\n renderConjs: function Conjunctions(conjProps) {\n return (\n <Select\n id={conjProps?.id}\n aria-label=\"Conjunction\"\n menuShouldPortal\n options={conjProps?.conjunctionOptions ? Object.keys(conjProps?.conjunctionOptions).map(toOption) : undefined}\n value={conjProps?.selectedConjunction}\n onChange={(val) => conjProps?.setConjunction(val.value!)}\n />\n );\n },\n renderField: function Field(fieldProps) {\n const fields = fieldProps?.config?.fields || {};\n return (\n <Select\n id={fieldProps?.id}\n width={25}\n aria-label=\"Field\"\n menuShouldPortal\n options={fieldProps?.items.map((f) => {\n // @ts-ignore\n const icon = fields[f.key].mainWidgetProps?.customProps?.icon;\n return {\n label: f.label,\n value: f.key,\n icon,\n };\n })}\n value={fieldProps?.selectedKey}\n onChange={(val) => {\n fieldProps?.setField(val.label!);\n }}\n />\n );\n },\n renderButton: function RAQBButton(buttonProps) {\n return (\n <Button\n type=\"button\"\n title={`${buttonProps?.label} filter`}\n onClick={buttonProps?.onClick}\n variant=\"secondary\"\n size=\"md\"\n icon={buttonProps?.label === buttonLabels.add ? 'plus' : 'times'}\n />\n );\n },\n renderOperator: function Operator(operatorProps) {\n return (\n <Select\n options={operatorProps?.items.map((op) => ({ label: op.label, value: op.key }))}\n aria-label=\"Operator\"\n menuShouldPortal\n value={operatorProps?.selectedKey}\n onChange={(val) => {\n operatorProps?.setField(val.value || '');\n }}\n />\n );\n },\n};\n\n// add IN / NOT IN operators to text to support multi-value variables\nconst enum Op {\n IN = 'select_any_in',\n NOT_IN = 'select_not_any_in',\n}\n\nconst customOperators = getCustomOperators(BasicConfig);\nconst textWidget = BasicConfig.types.text.widgets.text;\nconst opers = [...(textWidget.operators || []), Op.IN, Op.NOT_IN];\nconst customTextWidget = {\n ...textWidget,\n operators: opers,\n};\n\nconst customTypes = {\n ...BasicConfig.types,\n text: {\n ...BasicConfig.types.text,\n widgets: {\n ...BasicConfig.types.text.widgets,\n text: customTextWidget,\n },\n },\n};\n\nexport const raqbConfig: Config = {\n ...BasicConfig,\n widgets,\n settings,\n operators: customOperators as typeof BasicConfig.operators,\n types: customTypes,\n};\n\nexport type { Config };\n\nfunction getCustomOperators(config: BasicConfig) {\n const { ...supportedOperators } = config.operators;\n const noop = () => '';\n // IN operator expects array, override IN formatter for multi-value variables\n\n const sqlFormatInOp = supportedOperators[Op.IN].sqlFormatOp || noop;\n const customSqlInFormatter = (\n field: string,\n op: string,\n value: string | List<string>,\n valueSrc: ValueSource,\n valueType: string,\n opDef: Operator,\n operatorOptions: OperatorOptionsI,\n fieldDef: Field\n ) =>\n sqlFormatInOp.call(\n config.ctx,\n field,\n op,\n splitIfString(value),\n valueSrc,\n valueType,\n opDef,\n operatorOptions,\n fieldDef\n );\n // NOT IN operator expects array, override NOT IN formatter for multi-value variables\n const sqlFormatNotInOp = supportedOperators[Op.NOT_IN].sqlFormatOp || noop;\n const customSqlNotInFormatter = (\n field: string,\n op: string,\n value: string | List<string>,\n valueSrc: ValueSource,\n valueType: string,\n opDef: Operator,\n operatorOptions: OperatorOptionsI,\n fieldDef: Field\n ) =>\n sqlFormatNotInOp.call(\n config.ctx,\n field,\n op,\n splitIfString(value),\n valueSrc,\n valueType,\n opDef,\n operatorOptions,\n fieldDef\n );\n\n const customOperators = {\n ...supportedOperators,\n [Op.IN]: {\n ...supportedOperators[Op.IN],\n sqlFormatOp: customSqlInFormatter,\n },\n [Op.NOT_IN]: {\n ...supportedOperators[Op.NOT_IN],\n sqlFormatOp: customSqlNotInFormatter,\n },\n };\n\n return customOperators;\n}\n\n// value: string | List<string> but AQB uses a different version of Immutable\n// eslint-ignore\nfunction splitIfString(value: any) {\n if (isString(value)) {\n return value.split(',');\n }\n return value;\n}\n"],"names":["_a","customOperators"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { css } from '@emotion/css';
2
- import React from 'react';
2
+ import React from '../../../_virtual/index.js';
3
3
  import '@grafana/data';
4
4
  import { stylesFactory, useTheme2, ReactUtils, Tooltip, Icon, Field } from '@grafana/ui';
5
5
  import { Space } from '../Space.js';
@@ -8,12 +8,12 @@ const EditorField = (props) => {
8
8
  var _a;
9
9
  const { label, optional, tooltip, children, width, ...fieldProps } = props;
10
10
  const theme = useTheme2();
11
- const styles = getStyles$h(theme, width);
12
- const childInputId = (fieldProps == null ? void 0 : fieldProps.htmlFor) || ((_a = ReactUtils) == null ? void 0 : _a.getChildId(children));
11
+ const styles = getStyles(theme, width);
12
+ const childInputId = (fieldProps == null ? undefined : fieldProps.htmlFor) || ((_a = ReactUtils) == null ? undefined : _a.getChildId(children));
13
13
  const labelEl = /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("label", { className: styles.label, htmlFor: childInputId }, label, optional && /* @__PURE__ */ React.createElement("span", { className: styles.optional }, " - optional"), tooltip && /* @__PURE__ */ React.createElement(Tooltip, { placement: "top", content: tooltip, theme: "info" }, /* @__PURE__ */ React.createElement(Icon, { name: "info-circle", size: "sm", className: styles.icon }))), /* @__PURE__ */ React.createElement(Space, { v: 0.5 }));
14
14
  return /* @__PURE__ */ React.createElement("div", { className: styles.root }, /* @__PURE__ */ React.createElement(Field, { className: styles.field, label: labelEl, ...fieldProps }, children));
15
15
  };
16
- const getStyles$h = stylesFactory((theme, width) => {
16
+ const getStyles = stylesFactory((theme, width) => {
17
17
  return {
18
18
  root: css({
19
19
  minWidth: theme.spacing(width != null ? width : 0)
@@ -1 +1 @@
1
- {"version":3,"file":"EditorField.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/EditorField.tsx"],"sourcesContent":["import { css } from '@emotion/css';\nimport React, { type ComponentProps } from 'react';\nimport { type GrafanaTheme2 } from '@grafana/data';\nimport { Field, type PopoverContent, useTheme2, ReactUtils, Tooltip, Icon, stylesFactory } from '@grafana/ui';\nimport { Space } from '../Space';\n\ninterface EditorFieldProps extends ComponentProps<typeof Field> {\n label: string;\n children: React.ReactElement;\n width?: number | string;\n optional?: boolean;\n tooltip?: PopoverContent;\n}\n\nexport const EditorField = (props: EditorFieldProps) => {\n const { label, optional, tooltip, children, width, ...fieldProps } = props;\n\n const theme = useTheme2();\n const styles = getStyles(theme, width);\n\n // Null check for backward compatibility\n const childInputId = fieldProps?.htmlFor || ReactUtils?.getChildId(children);\n\n const labelEl = (\n <>\n <label className={styles.label} htmlFor={childInputId}>\n {label}\n {optional && <span className={styles.optional}> - optional</span>}\n {tooltip && (\n <Tooltip placement=\"top\" content={tooltip} theme=\"info\">\n <Icon name=\"info-circle\" size=\"sm\" className={styles.icon} />\n </Tooltip>\n )}\n </label>\n <Space v={0.5} />\n </>\n );\n\n return (\n <div className={styles.root}>\n <Field className={styles.field} label={labelEl} {...fieldProps}>\n {children}\n </Field>\n </div>\n );\n};\n\nconst getStyles = stylesFactory((theme: GrafanaTheme2, width?: number | string) => {\n return {\n root: css({\n minWidth: theme.spacing(width ?? 0),\n }),\n label: css({\n fontSize: 12,\n fontWeight: theme.typography.fontWeightMedium,\n }),\n optional: css({\n fontStyle: 'italic',\n color: theme.colors.text.secondary,\n }),\n field: css({\n marginBottom: 0, // GrafanaUI/Field has a bottom margin which we must remove\n }),\n icon: css({\n color: theme.colors.text.secondary,\n marginLeft: theme.spacing(1),\n ':hover': {\n color: theme.colors.text.primary,\n },\n }),\n };\n});\n"],"names":["getStyles"],"mappings":";;;;;;AAcO,MAAM,WAAA,GAAc,CAAC,KAAA,KAA4B;AAdxD,EAAA,IAAA,EAAA;AAeE,EAAA,MAAM,EAAE,OAAO,QAAA,EAAU,OAAA,EAAS,UAAU,KAAA,EAAO,GAAG,YAAW,GAAI,KAAA;AAErE,EAAA,MAAM,QAAQ,SAAA,EAAU;AACxB,EAAA,MAAM,MAAA,GAASA,WAAA,CAAU,KAAA,EAAO,KAAK,CAAA;AAGrC,EAAA,MAAM,YAAA,GAAA,CAAe,UAAA,IAAA,IAAA,GAAA,MAAA,GAAA,UAAA,CAAY,OAAA,MAAA,CAAW,EAAA,GAAA,UAAA,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAY,UAAA,CAAW,QAAA,CAAA,CAAA;AAEnE,EAAA,MAAM,0BACJ,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,kBACE,KAAA,CAAA,aAAA,CAAC,WAAM,SAAA,EAAW,MAAA,CAAO,OAAO,OAAA,EAAS,YAAA,EAAA,EACtC,OACA,QAAA,oBAAY,KAAA,CAAA,aAAA,CAAC,UAAK,SAAA,EAAW,MAAA,CAAO,YAAU,aAAW,CAAA,EACzD,2BACC,KAAA,CAAA,aAAA,CAAC,OAAA,EAAA,EAAQ,WAAU,KAAA,EAAM,OAAA,EAAS,SAAS,KAAA,EAAM,MAAA,EAAA,sCAC9C,IAAA,EAAA,EAAK,IAAA,EAAK,eAAc,IAAA,EAAK,IAAA,EAAK,WAAW,MAAA,CAAO,IAAA,EAAM,CAC7D,CAEJ,CAAA,sCACC,KAAA,EAAA,EAAM,CAAA,EAAG,KAAK,CACjB,CAAA;AAGF,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,wBACrB,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAM,SAAA,EAAW,MAAA,CAAO,OAAO,KAAA,EAAO,OAAA,EAAU,GAAG,UAAA,EAAA,EACjD,QACH,CACF,CAAA;AAEJ;AAEA,MAAMA,WAAA,GAAY,aAAA,CAAc,CAAC,KAAA,EAAsB,KAAA,KAA4B;AACjF,EAAA,OAAO;AAAA,IACL,MAAM,GAAA,CAAI;AAAA,MACR,QAAA,EAAU,KAAA,CAAM,OAAA,CAAQ,KAAA,IAAA,IAAA,GAAA,KAAA,GAAS,CAAC;AAAA,KACnC,CAAA;AAAA,IACD,OAAO,GAAA,CAAI;AAAA,MACT,QAAA,EAAU,EAAA;AAAA,MACV,UAAA,EAAY,MAAM,UAAA,CAAW;AAAA,KAC9B,CAAA;AAAA,IACD,UAAU,GAAA,CAAI;AAAA,MACZ,SAAA,EAAW,QAAA;AAAA,MACX,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK;AAAA,KAC1B,CAAA;AAAA,IACD,OAAO,GAAA,CAAI;AAAA,MACT,YAAA,EAAc;AAAA;AAAA,KACf,CAAA;AAAA,IACD,MAAM,GAAA,CAAI;AAAA,MACR,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK,SAAA;AAAA,MACzB,UAAA,EAAY,KAAA,CAAM,OAAA,CAAQ,CAAC,CAAA;AAAA,MAC3B,QAAA,EAAU;AAAA,QACR,KAAA,EAAO,KAAA,CAAM,MAAA,CAAO,IAAA,CAAK;AAAA;AAC3B,KACD;AAAA,GACH;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"EditorField.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/EditorField.tsx"],"sourcesContent":["import { css } from '@emotion/css';\nimport React, { type ComponentProps } from 'react';\nimport { type GrafanaTheme2 } from '@grafana/data';\nimport { Field, type PopoverContent, useTheme2, ReactUtils, Tooltip, Icon, stylesFactory } from '@grafana/ui';\nimport { Space } from '../Space';\n\ninterface EditorFieldProps extends ComponentProps<typeof Field> {\n label: string;\n children: React.ReactElement;\n width?: number | string;\n optional?: boolean;\n tooltip?: PopoverContent;\n}\n\nexport const EditorField = (props: EditorFieldProps) => {\n const { label, optional, tooltip, children, width, ...fieldProps } = props;\n\n const theme = useTheme2();\n const styles = getStyles(theme, width);\n\n // Null check for backward compatibility\n const childInputId = fieldProps?.htmlFor || ReactUtils?.getChildId(children);\n\n const labelEl = (\n <>\n <label className={styles.label} htmlFor={childInputId}>\n {label}\n {optional && <span className={styles.optional}> - optional</span>}\n {tooltip && (\n <Tooltip placement=\"top\" content={tooltip} theme=\"info\">\n <Icon name=\"info-circle\" size=\"sm\" className={styles.icon} />\n </Tooltip>\n )}\n </label>\n <Space v={0.5} />\n </>\n );\n\n return (\n <div className={styles.root}>\n <Field className={styles.field} label={labelEl} {...fieldProps}>\n {children}\n </Field>\n </div>\n );\n};\n\nconst getStyles = stylesFactory((theme: GrafanaTheme2, width?: number | string) => {\n return {\n root: css({\n minWidth: theme.spacing(width ?? 0),\n }),\n label: css({\n fontSize: 12,\n fontWeight: theme.typography.fontWeightMedium,\n }),\n optional: css({\n fontStyle: 'italic',\n color: theme.colors.text.secondary,\n }),\n field: css({\n marginBottom: 0, // GrafanaUI/Field has a bottom margin which we must remove\n }),\n icon: css({\n color: theme.colors.text.secondary,\n marginLeft: theme.spacing(1),\n ':hover': {\n color: theme.colors.text.primary,\n },\n }),\n };\n});\n"],"names":[],"mappings":";;;;;;AAca,MAAA,WAAA,GAAc,CAAC,KAA4B,KAAA;AAdxD,EAAA,IAAA,EAAA;AAeE,EAAM,MAAA,EAAE,OAAO,QAAU,EAAA,OAAA,EAAS,UAAU,KAAO,EAAA,GAAG,YAAe,GAAA,KAAA;AAErE,EAAA,MAAM,QAAQ,SAAU,EAAA;AACxB,EAAM,MAAA,MAAA,GAAS,SAAU,CAAA,KAAA,EAAO,KAAK,CAAA;AAGrC,EAAA,MAAM,YAAe,GAAA,CAAA,UAAA,IAAA,IAAA,GAAA,SAAA,GAAA,UAAA,CAAY,OAAW,MAAA,CAAA,EAAA,GAAA,UAAA,KAAA,IAAA,GAAA,SAAA,GAAA,EAAA,CAAY,UAAW,CAAA,QAAA,CAAA,CAAA;AAEnE,EAAA,MAAM,0BAEF,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,WAAM,SAAW,EAAA,MAAA,CAAO,OAAO,OAAS,EAAA,YAAA,EAAA,EACtC,OACA,QAAY,oBAAA,KAAA,CAAA,aAAA,CAAC,UAAK,SAAW,EAAA,MAAA,CAAO,YAAU,aAAW,CAAA,EACzD,2BACE,KAAA,CAAA,aAAA,CAAA,OAAA,EAAA,EAAQ,WAAU,KAAM,EAAA,OAAA,EAAS,SAAS,KAAM,EAAA,MAAA,EAAA,sCAC9C,IAAK,EAAA,EAAA,IAAA,EAAK,eAAc,IAAK,EAAA,IAAA,EAAK,WAAW,MAAO,CAAA,IAAA,EAAM,CAC7D,CAEJ,CAAA,sCACC,KAAM,EAAA,EAAA,CAAA,EAAG,KAAK,CACjB,CAAA;AAGF,EAAA,uBACG,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAI,SAAW,EAAA,MAAA,CAAO,wBACpB,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAM,SAAW,EAAA,MAAA,CAAO,OAAO,KAAO,EAAA,OAAA,EAAU,GAAG,UAAA,EAAA,EACjD,QACH,CACF,CAAA;AAEJ;AAEA,MAAM,SAAY,GAAA,aAAA,CAAc,CAAC,KAAA,EAAsB,KAA4B,KAAA;AACjF,EAAO,OAAA;AAAA,IACL,MAAM,GAAI,CAAA;AAAA,MACR,QAAU,EAAA,KAAA,CAAM,OAAQ,CAAA,KAAA,IAAA,IAAA,GAAA,KAAA,GAAS,CAAC;AAAA,KACnC,CAAA;AAAA,IACD,OAAO,GAAI,CAAA;AAAA,MACT,QAAU,EAAA,EAAA;AAAA,MACV,UAAA,EAAY,MAAM,UAAW,CAAA;AAAA,KAC9B,CAAA;AAAA,IACD,UAAU,GAAI,CAAA;AAAA,MACZ,SAAW,EAAA,QAAA;AAAA,MACX,KAAA,EAAO,KAAM,CAAA,MAAA,CAAO,IAAK,CAAA;AAAA,KAC1B,CAAA;AAAA,IACD,OAAO,GAAI,CAAA;AAAA,MACT,YAAc,EAAA;AAAA;AAAA,KACf,CAAA;AAAA,IACD,MAAM,GAAI,CAAA;AAAA,MACR,KAAA,EAAO,KAAM,CAAA,MAAA,CAAO,IAAK,CAAA,SAAA;AAAA,MACzB,UAAA,EAAY,KAAM,CAAA,OAAA,CAAQ,CAAC,CAAA;AAAA,MAC3B,QAAU,EAAA;AAAA,QACR,KAAA,EAAO,KAAM,CAAA,MAAA,CAAO,IAAK,CAAA;AAAA;AAC3B,KACD;AAAA,GACH;AACF,CAAC,CAAA;;;;"}
@@ -1,14 +1,14 @@
1
- import React from 'react';
1
+ import React from '../../../_virtual/index.js';
2
2
  import { css } from '@emotion/css';
3
3
  import '@grafana/data';
4
4
  import { useStyles2 } from '@grafana/ui';
5
5
  import { EditorStack } from '../EditorStack.js';
6
6
 
7
7
  const EditorRow = ({ children }) => {
8
- const styles = useStyles2(getStyles$i);
8
+ const styles = useStyles2(getStyles);
9
9
  return /* @__PURE__ */ React.createElement("div", { className: styles.root }, /* @__PURE__ */ React.createElement(EditorStack, { gap: 2 }, children));
10
10
  };
11
- const getStyles$i = (theme) => {
11
+ const getStyles = (theme) => {
12
12
  return {
13
13
  root: css({
14
14
  padding: theme.spacing(1),
@@ -1 +1 @@
1
- {"version":3,"file":"EditorRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/EditorRow.tsx"],"sourcesContent":["import React from 'react';\nimport { css } from '@emotion/css';\nimport { type GrafanaTheme2 } from '@grafana/data';\nimport { useStyles2 } from '@grafana/ui';\nimport { EditorStack } from '../EditorStack';\n\ninterface EditorRowProps {\n children?: React.ReactNode;\n}\n\nexport const EditorRow = ({ children }: EditorRowProps) => {\n const styles = useStyles2(getStyles);\n\n return (\n <div className={styles.root}>\n <EditorStack gap={2}>{children}</EditorStack>\n </div>\n );\n};\n\nconst getStyles = (theme: GrafanaTheme2) => {\n return {\n root: css({\n padding: theme.spacing(1),\n backgroundColor: theme.colors.background.secondary,\n borderRadius: theme.shape.borderRadius(1),\n }),\n };\n};\n"],"names":["getStyles"],"mappings":";;;;;;AAUO,MAAM,SAAA,GAAY,CAAC,EAAE,QAAA,EAAS,KAAsB;AACzD,EAAA,MAAM,MAAA,GAAS,WAAWA,WAAS,CAAA;AAEnC,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,IAAA,EAAA,sCACpB,WAAA,EAAA,EAAY,GAAA,EAAK,CAAA,EAAA,EAAI,QAAS,CACjC,CAAA;AAEJ;AAEA,MAAMA,WAAA,GAAY,CAAC,KAAA,KAAyB;AAC1C,EAAA,OAAO;AAAA,IACL,MAAM,GAAA,CAAI;AAAA,MACR,OAAA,EAAS,KAAA,CAAM,OAAA,CAAQ,CAAC,CAAA;AAAA,MACxB,eAAA,EAAiB,KAAA,CAAM,MAAA,CAAO,UAAA,CAAW,SAAA;AAAA,MACzC,YAAA,EAAc,KAAA,CAAM,KAAA,CAAM,YAAA,CAAa,CAAC;AAAA,KACzC;AAAA,GACH;AACF,CAAA;;;;"}
1
+ {"version":3,"file":"EditorRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/EditorRow.tsx"],"sourcesContent":["import React from 'react';\nimport { css } from '@emotion/css';\nimport { type GrafanaTheme2 } from '@grafana/data';\nimport { useStyles2 } from '@grafana/ui';\nimport { EditorStack } from '../EditorStack';\n\ninterface EditorRowProps {\n children?: React.ReactNode;\n}\n\nexport const EditorRow = ({ children }: EditorRowProps) => {\n const styles = useStyles2(getStyles);\n\n return (\n <div className={styles.root}>\n <EditorStack gap={2}>{children}</EditorStack>\n </div>\n );\n};\n\nconst getStyles = (theme: GrafanaTheme2) => {\n return {\n root: css({\n padding: theme.spacing(1),\n backgroundColor: theme.colors.background.secondary,\n borderRadius: theme.shape.borderRadius(1),\n }),\n };\n};\n"],"names":[],"mappings":";;;;;;AAUO,MAAM,SAAY,GAAA,CAAC,EAAE,QAAA,EAA+B,KAAA;AACzD,EAAM,MAAA,MAAA,GAAS,WAAW,SAAS,CAAA;AAEnC,EACE,uBAAA,KAAA,CAAA,aAAA,CAAC,KAAI,EAAA,EAAA,SAAA,EAAW,MAAO,CAAA,IAAA,EAAA,sCACpB,WAAY,EAAA,EAAA,GAAA,EAAK,CAAI,EAAA,EAAA,QAAS,CACjC,CAAA;AAEJ;AAEA,MAAM,SAAA,GAAY,CAAC,KAAyB,KAAA;AAC1C,EAAO,OAAA;AAAA,IACL,MAAM,GAAI,CAAA;AAAA,MACR,OAAA,EAAS,KAAM,CAAA,OAAA,CAAQ,CAAC,CAAA;AAAA,MACxB,eAAA,EAAiB,KAAM,CAAA,MAAA,CAAO,UAAW,CAAA,SAAA;AAAA,MACzC,YAAc,EAAA,KAAA,CAAM,KAAM,CAAA,YAAA,CAAa,CAAC;AAAA,KACzC;AAAA,GACH;AACF,CAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React from '../../../_virtual/index.js';
2
2
  import { EditorStack } from '../EditorStack.js';
3
3
 
4
4
  const EditorRows = ({ children }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"EditorRows.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/EditorRows.tsx"],"sourcesContent":["import React from 'react';\nimport { EditorStack } from '../EditorStack';\n\ninterface EditorRowsProps {\n children?: React.ReactNode;\n}\n\nexport const EditorRows = ({ children }: EditorRowsProps) => {\n return (\n <EditorStack gap={0.5} direction=\"column\">\n {children}\n </EditorStack>\n );\n};\n"],"names":[],"mappings":";;;AAOO,MAAM,UAAA,GAAa,CAAC,EAAE,QAAA,EAAS,KAAuB;AAC3D,EAAA,2CACG,WAAA,EAAA,EAAY,GAAA,EAAK,GAAA,EAAK,SAAA,EAAU,YAC9B,QACH,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"EditorRows.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/EditorRows.tsx"],"sourcesContent":["import React from 'react';\nimport { EditorStack } from '../EditorStack';\n\ninterface EditorRowsProps {\n children?: React.ReactNode;\n}\n\nexport const EditorRows = ({ children }: EditorRowsProps) => {\n return (\n <EditorStack gap={0.5} direction=\"column\">\n {children}\n </EditorStack>\n );\n};\n"],"names":[],"mappings":";;;AAOO,MAAM,UAAa,GAAA,CAAC,EAAE,QAAA,EAAgC,KAAA;AAC3D,EAAA,2CACG,WAAY,EAAA,EAAA,GAAA,EAAK,GAAK,EAAA,SAAA,EAAU,YAC9B,QACH,CAAA;AAEJ;;;;"}
@@ -1,4 +1,4 @@
1
- import React, { useCallback } from 'react';
1
+ import React, { r as reactExports } from '../../../_virtual/index.js';
2
2
  import { toOption } from '@grafana/data';
3
3
  import '../types.js';
4
4
  import { setGroupByField } from '../utils/sql.utils.js';
@@ -8,11 +8,11 @@ import { AccessoryButton } from '../AccessoryButton.js';
8
8
  import { InputGroup } from '../InputGroup.js';
9
9
 
10
10
  function GroupByRow({ sql, columns, onSqlChange }) {
11
- const onGroupByChange = useCallback(
11
+ const onGroupByChange = reactExports.useCallback(
12
12
  (item) => {
13
13
  const cleaned = item.map((v) => {
14
14
  var _a;
15
- return setGroupByField((_a = v.property) == null ? void 0 : _a.name);
15
+ return setGroupByField((_a = v.property) == null ? undefined : _a.name);
16
16
  });
17
17
  const newSql = { ...sql, groupBy: cleaned };
18
18
  onSqlChange(newSql);
@@ -36,7 +36,7 @@ function makeRenderColumn({ options }) {
36
36
  return /* @__PURE__ */ React.createElement(InputGroup, null, /* @__PURE__ */ React.createElement(
37
37
  Select,
38
38
  {
39
- value: ((_a = item.property) == null ? void 0 : _a.name) ? toOption(item.property.name) : null,
39
+ value: ((_a = item.property) == null ? undefined : _a.name) ? toOption(item.property.name) : null,
40
40
  "aria-label": "Group by",
41
41
  options,
42
42
  menuShouldPortal: true,
@@ -1 +1 @@
1
- {"version":3,"file":"GroupByRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/GroupByRow.tsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport { type SelectableValue, toOption } from '@grafana/data';\nimport { type SQLExpression } from '../types';\nimport { type QueryEditorGroupByExpression } from '../expressions';\nimport { setGroupByField } from '../utils/sql.utils';\nimport { EditorList } from '../EditorList';\nimport { Select } from '@grafana/ui';\nimport { AccessoryButton } from '../AccessoryButton';\nimport { InputGroup } from '../InputGroup';\n\ninterface GroupByRowProps {\n sql: SQLExpression;\n onSqlChange: (sql: SQLExpression) => void;\n columns?: Array<SelectableValue<string>>;\n}\n\nexport function GroupByRow({ sql, columns, onSqlChange }: GroupByRowProps) {\n const onGroupByChange = useCallback(\n (item: Array<Partial<QueryEditorGroupByExpression>>) => {\n // As new (empty object) items come in, we need to make sure they have the correct type\n const cleaned = item.map((v) => setGroupByField(v.property?.name));\n const newSql = { ...sql, groupBy: cleaned };\n onSqlChange(newSql);\n },\n [onSqlChange, sql]\n );\n\n return (\n <EditorList\n items={sql.groupBy!}\n onChange={onGroupByChange}\n renderItem={makeRenderColumn({\n options: columns,\n })}\n />\n );\n}\n\nfunction makeRenderColumn({ options }: { options?: Array<SelectableValue<string>> }) {\n const renderColumn = function (\n item: Partial<QueryEditorGroupByExpression>,\n onChangeItem: (item: QueryEditorGroupByExpression) => void,\n onDeleteItem: () => void\n ) {\n return (\n <InputGroup>\n <Select\n value={item.property?.name ? toOption(item.property.name) : null}\n aria-label=\"Group by\"\n options={options}\n menuShouldPortal\n onChange={({ value }) => value && onChangeItem(setGroupByField(value))}\n />\n <AccessoryButton aria-label=\"Remove group by column\" icon=\"times\" variant=\"secondary\" onClick={onDeleteItem} />\n </InputGroup>\n );\n };\n return renderColumn;\n}\n"],"names":[],"mappings":";;;;;;;;;AAgBO,SAAS,UAAA,CAAW,EAAE,GAAA,EAAK,OAAA,EAAS,aAAY,EAAoB;AACzE,EAAA,MAAM,eAAA,GAAkB,WAAA;AAAA,IACtB,CAAC,IAAA,KAAuD;AAEtD,MAAA,MAAM,OAAA,GAAU,IAAA,CAAK,GAAA,CAAI,CAAC,CAAA,KAAG;AApBnC,QAAA,IAAA,EAAA;AAoBsC,QAAA,OAAA,eAAA,CAAA,CAAgB,EAAA,GAAA,CAAA,CAAE,QAAA,KAAF,IAAA,GAAA,MAAA,GAAA,EAAA,CAAY,IAAI,CAAA;AAAA,MAAA,CAAC,CAAA;AACjE,MAAA,MAAM,MAAA,GAAS,EAAE,GAAG,GAAA,EAAK,SAAS,OAAA,EAAQ;AAC1C,MAAA,WAAA,CAAY,MAAM,CAAA;AAAA,IACpB,CAAA;AAAA,IACA,CAAC,aAAa,GAAG;AAAA,GACnB;AAEA,EAAA,uBACE,KAAA,CAAA,aAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,OAAO,GAAA,CAAI,OAAA;AAAA,MACX,QAAA,EAAU,eAAA;AAAA,MACV,YAAY,gBAAA,CAAiB;AAAA,QAC3B,OAAA,EAAS;AAAA,OACV;AAAA;AAAA,GACH;AAEJ;AAEA,SAAS,gBAAA,CAAiB,EAAE,OAAA,EAAQ,EAAiD;AACnF,EAAA,MAAM,YAAA,GAAe,SACnB,IAAA,EACA,YAAA,EACA,YAAA,EACA;AA3CJ,IAAA,IAAA,EAAA;AA4CI,IAAA,2CACG,UAAA,EAAA,IAAA,kBACC,KAAA,CAAA,aAAA;AAAA,MAAC,MAAA;AAAA,MAAA;AAAA,QACC,KAAA,EAAA,CAAA,CAAO,UAAK,QAAA,KAAL,IAAA,GAAA,MAAA,GAAA,EAAA,CAAe,QAAO,QAAA,CAAS,IAAA,CAAK,QAAA,CAAS,IAAI,CAAA,GAAI,IAAA;AAAA,QAC5D,YAAA,EAAW,UAAA;AAAA,QACX,OAAA;AAAA,QACA,gBAAA,EAAgB,IAAA;AAAA,QAChB,QAAA,EAAU,CAAC,EAAE,KAAA,OAAY,KAAA,IAAS,YAAA,CAAa,eAAA,CAAgB,KAAK,CAAC;AAAA;AAAA,KACvE,kBACA,KAAA,CAAA,aAAA,CAAC,eAAA,EAAA,EAAgB,YAAA,EAAW,wBAAA,EAAyB,IAAA,EAAK,OAAA,EAAQ,OAAA,EAAQ,WAAA,EAAY,OAAA,EAAS,YAAA,EAAc,CAC/G,CAAA;AAAA,EAEJ,CAAA;AACA,EAAA,OAAO,YAAA;AACT;;;;"}
1
+ {"version":3,"file":"GroupByRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/GroupByRow.tsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport { type SelectableValue, toOption } from '@grafana/data';\nimport { type SQLExpression } from '../types';\nimport { type QueryEditorGroupByExpression } from '../expressions';\nimport { setGroupByField } from '../utils/sql.utils';\nimport { EditorList } from '../EditorList';\nimport { Select } from '@grafana/ui';\nimport { AccessoryButton } from '../AccessoryButton';\nimport { InputGroup } from '../InputGroup';\n\ninterface GroupByRowProps {\n sql: SQLExpression;\n onSqlChange: (sql: SQLExpression) => void;\n columns?: Array<SelectableValue<string>>;\n}\n\nexport function GroupByRow({ sql, columns, onSqlChange }: GroupByRowProps) {\n const onGroupByChange = useCallback(\n (item: Array<Partial<QueryEditorGroupByExpression>>) => {\n // As new (empty object) items come in, we need to make sure they have the correct type\n const cleaned = item.map((v) => setGroupByField(v.property?.name));\n const newSql = { ...sql, groupBy: cleaned };\n onSqlChange(newSql);\n },\n [onSqlChange, sql]\n );\n\n return (\n <EditorList\n items={sql.groupBy!}\n onChange={onGroupByChange}\n renderItem={makeRenderColumn({\n options: columns,\n })}\n />\n );\n}\n\nfunction makeRenderColumn({ options }: { options?: Array<SelectableValue<string>> }) {\n const renderColumn = function (\n item: Partial<QueryEditorGroupByExpression>,\n onChangeItem: (item: QueryEditorGroupByExpression) => void,\n onDeleteItem: () => void\n ) {\n return (\n <InputGroup>\n <Select\n value={item.property?.name ? toOption(item.property.name) : null}\n aria-label=\"Group by\"\n options={options}\n menuShouldPortal\n onChange={({ value }) => value && onChangeItem(setGroupByField(value))}\n />\n <AccessoryButton aria-label=\"Remove group by column\" icon=\"times\" variant=\"secondary\" onClick={onDeleteItem} />\n </InputGroup>\n );\n };\n return renderColumn;\n}\n"],"names":["useCallback"],"mappings":";;;;;;;;;AAgBO,SAAS,UAAW,CAAA,EAAE,GAAK,EAAA,OAAA,EAAS,aAAgC,EAAA;AACzE,EAAA,MAAM,eAAkB,GAAAA,wBAAA;AAAA,IACtB,CAAC,IAAuD,KAAA;AAEtD,MAAA,MAAM,OAAU,GAAA,IAAA,CAAK,GAAI,CAAA,CAAC,CAAG,KAAA;AApBnC,QAAA,IAAA,EAAA;AAoBsC,QAAgB,OAAA,eAAA,CAAA,CAAA,EAAA,GAAA,CAAA,CAAE,QAAF,KAAA,IAAA,GAAA,SAAA,GAAA,EAAA,CAAY,IAAI,CAAA;AAAA,OAAC,CAAA;AACjE,MAAA,MAAM,MAAS,GAAA,EAAE,GAAG,GAAA,EAAK,SAAS,OAAQ,EAAA;AAC1C,MAAA,WAAA,CAAY,MAAM,CAAA;AAAA,KACpB;AAAA,IACA,CAAC,aAAa,GAAG;AAAA,GACnB;AAEA,EACE,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,OAAO,GAAI,CAAA,OAAA;AAAA,MACX,QAAU,EAAA,eAAA;AAAA,MACV,YAAY,gBAAiB,CAAA;AAAA,QAC3B,OAAS,EAAA;AAAA,OACV;AAAA;AAAA,GACH;AAEJ;AAEA,SAAS,gBAAA,CAAiB,EAAE,OAAA,EAAyD,EAAA;AACnF,EAAA,MAAM,YAAe,GAAA,SACnB,IACA,EAAA,YAAA,EACA,YACA,EAAA;AA3CJ,IAAA,IAAA,EAAA;AA4CI,IAAA,2CACG,UACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA;AAAA,MAAC,MAAA;AAAA,MAAA;AAAA,QACC,KAAA,EAAA,CAAA,CAAO,UAAK,QAAL,KAAA,IAAA,GAAA,SAAA,GAAA,EAAA,CAAe,QAAO,QAAS,CAAA,IAAA,CAAK,QAAS,CAAA,IAAI,CAAI,GAAA,IAAA;AAAA,QAC5D,YAAW,EAAA,UAAA;AAAA,QACX,OAAA;AAAA,QACA,gBAAgB,EAAA,IAAA;AAAA,QAChB,QAAA,EAAU,CAAC,EAAE,KAAA,OAAY,KAAS,IAAA,YAAA,CAAa,eAAgB,CAAA,KAAK,CAAC;AAAA;AAAA,KACvE,kBACC,KAAA,CAAA,aAAA,CAAA,eAAA,EAAA,EAAgB,YAAW,EAAA,wBAAA,EAAyB,IAAK,EAAA,OAAA,EAAQ,OAAQ,EAAA,WAAA,EAAY,OAAS,EAAA,YAAA,EAAc,CAC/G,CAAA;AAAA,GAEJ;AACA,EAAO,OAAA,YAAA;AACT;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { uniqueId } from 'lodash';
2
- import React, { useCallback } from 'react';
2
+ import React, { r as reactExports } from '../../../_virtual/index.js';
3
3
  import { toOption } from '@grafana/data';
4
4
  import { Select, RadioButtonGroup, Input } from '@grafana/ui';
5
5
  import '../types.js';
@@ -14,32 +14,32 @@ const sortOrderOptions = [
14
14
  ];
15
15
  function OrderByRow({ sql, onSqlChange, columns, showOffset }) {
16
16
  var _a, _b;
17
- const onSortOrderChange = useCallback(
17
+ const onSortOrderChange = reactExports.useCallback(
18
18
  (item) => {
19
19
  const newSql = { ...sql, orderByDirection: item };
20
20
  onSqlChange(newSql);
21
21
  },
22
22
  [onSqlChange, sql]
23
23
  );
24
- const onLimitChange = useCallback(
24
+ const onLimitChange = reactExports.useCallback(
25
25
  (event) => {
26
26
  const newSql = { ...sql, limit: Number.parseInt(event.currentTarget.value, 10) };
27
27
  onSqlChange(newSql);
28
28
  },
29
29
  [onSqlChange, sql]
30
30
  );
31
- const onOffsetChange = useCallback(
31
+ const onOffsetChange = reactExports.useCallback(
32
32
  (event) => {
33
33
  const newSql = { ...sql, offset: Number.parseInt(event.currentTarget.value, 10) };
34
34
  onSqlChange(newSql);
35
35
  },
36
36
  [onSqlChange, sql]
37
37
  );
38
- const onOrderByChange = useCallback(
38
+ const onOrderByChange = reactExports.useCallback(
39
39
  (item) => {
40
- const newSql = { ...sql, orderBy: setPropertyField(item == null ? void 0 : item.value) };
40
+ const newSql = { ...sql, orderBy: setPropertyField(item == null ? undefined : item.value) };
41
41
  if (item === null) {
42
- newSql.orderByDirection = void 0;
42
+ newSql.orderByDirection = undefined;
43
43
  }
44
44
  onSqlChange(newSql);
45
45
  },
@@ -50,7 +50,7 @@ function OrderByRow({ sql, onSqlChange, columns, showOffset }) {
50
50
  {
51
51
  "aria-label": "Order by",
52
52
  options: columns,
53
- value: ((_a = sql.orderBy) == null ? void 0 : _a.property.name) ? toOption(sql.orderBy.property.name) : null,
53
+ value: ((_a = sql.orderBy) == null ? undefined : _a.property.name) ? toOption(sql.orderBy.property.name) : null,
54
54
  isClearable: true,
55
55
  menuShouldPortal: true,
56
56
  onChange: onOrderByChange
@@ -59,7 +59,7 @@ function OrderByRow({ sql, onSqlChange, columns, showOffset }) {
59
59
  RadioButtonGroup,
60
60
  {
61
61
  options: sortOrderOptions,
62
- disabled: !((_b = sql == null ? void 0 : sql.orderBy) == null ? void 0 : _b.property.name),
62
+ disabled: !((_b = sql == null ? undefined : sql.orderBy) == null ? undefined : _b.property.name),
63
63
  value: sql.orderByDirection,
64
64
  onChange: onSortOrderChange
65
65
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OrderByRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/OrderByRow.tsx"],"sourcesContent":["import { uniqueId } from 'lodash';\nimport React, { useCallback } from 'react';\nimport { type SelectableValue, toOption } from '@grafana/data';\nimport { Input, RadioButtonGroup, Select } from '@grafana/ui';\nimport { type SQLExpression } from '../types';\nimport { setPropertyField } from '../utils/sql.utils';\nimport { Space } from '../Space';\nimport { EditorField } from '../EditorField';\nimport { InputGroup } from '../InputGroup';\n\ntype OrderByRowProps = {\n sql: SQLExpression;\n onSqlChange: (sql: SQLExpression) => void;\n columns?: Array<SelectableValue<string>>;\n showOffset?: boolean;\n};\n\nconst sortOrderOptions = [\n { description: 'Sort by ascending', value: 'ASC', icon: 'sort-amount-up' } as const,\n { description: 'Sort by descending', value: 'DESC', icon: 'sort-amount-down' } as const,\n];\n\nexport function OrderByRow({ sql, onSqlChange, columns, showOffset }: OrderByRowProps) {\n const onSortOrderChange = useCallback(\n (item: 'ASC' | 'DESC') => {\n const newSql: SQLExpression = { ...sql, orderByDirection: item };\n onSqlChange(newSql);\n },\n [onSqlChange, sql]\n );\n\n const onLimitChange = useCallback(\n (event: React.FormEvent<HTMLInputElement>) => {\n const newSql: SQLExpression = { ...sql, limit: Number.parseInt(event.currentTarget.value, 10) };\n onSqlChange(newSql);\n },\n [onSqlChange, sql]\n );\n\n const onOffsetChange = useCallback(\n (event: React.FormEvent<HTMLInputElement>) => {\n const newSql: SQLExpression = { ...sql, offset: Number.parseInt(event.currentTarget.value, 10) };\n onSqlChange(newSql);\n },\n [onSqlChange, sql]\n );\n\n const onOrderByChange = useCallback(\n (item: SelectableValue<string>) => {\n const newSql: SQLExpression = { ...sql, orderBy: setPropertyField(item?.value) };\n if (item === null) {\n newSql.orderByDirection = undefined;\n }\n onSqlChange(newSql);\n },\n [onSqlChange, sql]\n );\n\n return (\n <>\n <EditorField label=\"Order by\" width={25}>\n <InputGroup>\n <Select\n aria-label=\"Order by\"\n options={columns}\n value={sql.orderBy?.property.name ? toOption(sql.orderBy.property.name) : null}\n isClearable\n menuShouldPortal\n onChange={onOrderByChange}\n />\n\n <Space h={1.5} />\n\n <RadioButtonGroup\n options={sortOrderOptions}\n disabled={!sql?.orderBy?.property.name}\n value={sql.orderByDirection}\n onChange={onSortOrderChange}\n />\n </InputGroup>\n </EditorField>\n <EditorField label=\"Limit\" optional width={25}>\n <Input type=\"number\" min={0} id={uniqueId('limit-')} value={sql.limit || ''} onChange={onLimitChange} />\n </EditorField>\n {showOffset && (\n <EditorField label=\"Offset\" optional width={25}>\n <Input type=\"number\" id={uniqueId('offset-')} value={sql.offset || ''} onChange={onOffsetChange} />\n </EditorField>\n )}\n </>\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OrderByRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/OrderByRow.tsx"],"sourcesContent":["import { uniqueId } from 'lodash';\nimport React, { useCallback } from 'react';\nimport { type SelectableValue, toOption } from '@grafana/data';\nimport { Input, RadioButtonGroup, Select } from '@grafana/ui';\nimport { type SQLExpression } from '../types';\nimport { setPropertyField } from '../utils/sql.utils';\nimport { Space } from '../Space';\nimport { EditorField } from '../EditorField';\nimport { InputGroup } from '../InputGroup';\n\ntype OrderByRowProps = {\n sql: SQLExpression;\n onSqlChange: (sql: SQLExpression) => void;\n columns?: Array<SelectableValue<string>>;\n showOffset?: boolean;\n};\n\nconst sortOrderOptions = [\n { description: 'Sort by ascending', value: 'ASC', icon: 'sort-amount-up' } as const,\n { description: 'Sort by descending', value: 'DESC', icon: 'sort-amount-down' } as const,\n];\n\nexport function OrderByRow({ sql, onSqlChange, columns, showOffset }: OrderByRowProps) {\n const onSortOrderChange = useCallback(\n (item: 'ASC' | 'DESC') => {\n const newSql: SQLExpression = { ...sql, orderByDirection: item };\n onSqlChange(newSql);\n },\n [onSqlChange, sql]\n );\n\n const onLimitChange = useCallback(\n (event: React.FormEvent<HTMLInputElement>) => {\n const newSql: SQLExpression = { ...sql, limit: Number.parseInt(event.currentTarget.value, 10) };\n onSqlChange(newSql);\n },\n [onSqlChange, sql]\n );\n\n const onOffsetChange = useCallback(\n (event: React.FormEvent<HTMLInputElement>) => {\n const newSql: SQLExpression = { ...sql, offset: Number.parseInt(event.currentTarget.value, 10) };\n onSqlChange(newSql);\n },\n [onSqlChange, sql]\n );\n\n const onOrderByChange = useCallback(\n (item: SelectableValue<string>) => {\n const newSql: SQLExpression = { ...sql, orderBy: setPropertyField(item?.value) };\n if (item === null) {\n newSql.orderByDirection = undefined;\n }\n onSqlChange(newSql);\n },\n [onSqlChange, sql]\n );\n\n return (\n <>\n <EditorField label=\"Order by\" width={25}>\n <InputGroup>\n <Select\n aria-label=\"Order by\"\n options={columns}\n value={sql.orderBy?.property.name ? toOption(sql.orderBy.property.name) : null}\n isClearable\n menuShouldPortal\n onChange={onOrderByChange}\n />\n\n <Space h={1.5} />\n\n <RadioButtonGroup\n options={sortOrderOptions}\n disabled={!sql?.orderBy?.property.name}\n value={sql.orderByDirection}\n onChange={onSortOrderChange}\n />\n </InputGroup>\n </EditorField>\n <EditorField label=\"Limit\" optional width={25}>\n <Input type=\"number\" min={0} id={uniqueId('limit-')} value={sql.limit || ''} onChange={onLimitChange} />\n </EditorField>\n {showOffset && (\n <EditorField label=\"Offset\" optional width={25}>\n <Input type=\"number\" id={uniqueId('offset-')} value={sql.offset || ''} onChange={onOffsetChange} />\n </EditorField>\n )}\n </>\n );\n}\n"],"names":["useCallback"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React from '../../../_virtual/index.js';
2
2
  import { css } from '@emotion/css';
3
3
  import { useCopyToClipboard } from 'react-use';
4
4
  import '@grafana/data';
@@ -7,7 +7,7 @@ import { formatSQL } from '../utils/formatSQL.js';
7
7
 
8
8
  function Preview({ rawSql, language = "sql" }) {
9
9
  const [_, copyToClipboard] = useCopyToClipboard();
10
- const styles = useStyles2(getStyles$k);
10
+ const styles = useStyles2(getStyles);
11
11
  const labelElement = /* @__PURE__ */ React.createElement("div", { className: styles.labelWrapper }, /* @__PURE__ */ React.createElement("label", { className: styles.label }, "Preview"), /* @__PURE__ */ React.createElement(IconButton, { tooltip: "Copy to clipboard", onClick: () => copyToClipboard(rawSql), name: "copy" }));
12
12
  return /* @__PURE__ */ React.createElement(Field, { label: labelElement, className: styles.grow }, /* @__PURE__ */ React.createElement(
13
13
  CodeEditor,
@@ -21,7 +21,7 @@ function Preview({ rawSql, language = "sql" }) {
21
21
  }
22
22
  ));
23
23
  }
24
- function getStyles$k(theme) {
24
+ function getStyles(theme) {
25
25
  return {
26
26
  grow: css({ flexGrow: 1 }),
27
27
  label: css({ fontSize: 12, fontWeight: theme.typography.fontWeightMedium }),
@@ -1 +1 @@
1
- {"version":3,"file":"Preview.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/Preview.tsx"],"sourcesContent":["import React from 'react';\nimport { css } from '@emotion/css';\nimport { useCopyToClipboard } from 'react-use';\n\nimport { type GrafanaTheme2 } from '@grafana/data';\nimport { CodeEditor, Field, IconButton, useStyles2 } from '@grafana/ui';\n\nimport { formatSQL } from '../utils/formatSQL';\nimport type { SqlLanguage } from 'sql-formatter';\n\ntype PreviewProps = {\n rawSql: string;\n language?: SqlLanguage;\n};\n\nexport function Preview({ rawSql, language = 'sql' }: PreviewProps) {\n // TODO: use zero index to give feedback about copy success\n const [_, copyToClipboard] = useCopyToClipboard();\n const styles = useStyles2(getStyles);\n\n const labelElement = (\n <div className={styles.labelWrapper}>\n <label className={styles.label}>Preview</label>\n <IconButton tooltip=\"Copy to clipboard\" onClick={() => copyToClipboard(rawSql)} name=\"copy\" />\n </div>\n );\n\n return (\n <Field label={labelElement} className={styles.grow}>\n <CodeEditor\n language=\"sql\"\n height={80}\n value={formatSQL(rawSql, language)}\n monacoOptions={{ scrollbar: { vertical: 'hidden' }, scrollBeyondLastLine: false }}\n readOnly={true}\n showMiniMap={false}\n />\n </Field>\n );\n}\n\nfunction getStyles(theme: GrafanaTheme2) {\n return {\n grow: css({ flexGrow: 1 }),\n label: css({ fontSize: 12, fontWeight: theme.typography.fontWeightMedium }),\n labelWrapper: css({ display: 'flex', justifyContent: 'space-between', paddingBottom: theme.spacing(0.5) }),\n };\n}\n"],"names":["getStyles"],"mappings":";;;;;;;AAeO,SAAS,OAAA,CAAQ,EAAE,MAAA,EAAQ,QAAA,GAAW,OAAM,EAAiB;AAElE,EAAA,MAAM,CAAC,CAAA,EAAG,eAAe,CAAA,GAAI,kBAAA,EAAmB;AAChD,EAAA,MAAM,MAAA,GAAS,WAAWA,WAAS,CAAA;AAEnC,EAAA,MAAM,YAAA,mBACJ,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,gCACrB,KAAA,CAAA,aAAA,CAAC,OAAA,EAAA,EAAM,SAAA,EAAW,MAAA,CAAO,KAAA,EAAA,EAAO,SAAO,mBACvC,KAAA,CAAA,aAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,mBAAA,EAAoB,OAAA,EAAS,MAAM,gBAAgB,MAAM,CAAA,EAAG,IAAA,EAAK,MAAA,EAAO,CAC9F,CAAA;AAGF,EAAA,2CACG,KAAA,EAAA,EAAM,KAAA,EAAO,YAAA,EAAc,SAAA,EAAW,OAAO,IAAA,EAAA,kBAC5C,KAAA,CAAA,aAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,QAAA,EAAS,KAAA;AAAA,MACT,MAAA,EAAQ,EAAA;AAAA,MACR,KAAA,EAAO,SAAA,CAAU,MAAA,EAAQ,QAAQ,CAAA;AAAA,MACjC,aAAA,EAAe,EAAE,SAAA,EAAW,EAAE,UAAU,QAAA,EAAS,EAAG,sBAAsB,KAAA,EAAM;AAAA,MAChF,QAAA,EAAU,IAAA;AAAA,MACV,WAAA,EAAa;AAAA;AAAA,GAEjB,CAAA;AAEJ;AAEA,SAASA,YAAU,KAAA,EAAsB;AACvC,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,GAAA,CAAI,EAAE,QAAA,EAAU,GAAG,CAAA;AAAA,IACzB,KAAA,EAAO,IAAI,EAAE,QAAA,EAAU,IAAI,UAAA,EAAY,KAAA,CAAM,UAAA,CAAW,gBAAA,EAAkB,CAAA;AAAA,IAC1E,YAAA,EAAc,GAAA,CAAI,EAAE,OAAA,EAAS,MAAA,EAAQ,cAAA,EAAgB,eAAA,EAAiB,aAAA,EAAe,KAAA,CAAM,OAAA,CAAQ,GAAG,CAAA,EAAG;AAAA,GAC3G;AACF;;;;"}
1
+ {"version":3,"file":"Preview.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/Preview.tsx"],"sourcesContent":["import React from 'react';\nimport { css } from '@emotion/css';\nimport { useCopyToClipboard } from 'react-use';\n\nimport { type GrafanaTheme2 } from '@grafana/data';\nimport { CodeEditor, Field, IconButton, useStyles2 } from '@grafana/ui';\n\nimport { formatSQL } from '../utils/formatSQL';\nimport type { SqlLanguage } from 'sql-formatter';\n\ntype PreviewProps = {\n rawSql: string;\n language?: SqlLanguage;\n};\n\nexport function Preview({ rawSql, language = 'sql' }: PreviewProps) {\n // TODO: use zero index to give feedback about copy success\n const [_, copyToClipboard] = useCopyToClipboard();\n const styles = useStyles2(getStyles);\n\n const labelElement = (\n <div className={styles.labelWrapper}>\n <label className={styles.label}>Preview</label>\n <IconButton tooltip=\"Copy to clipboard\" onClick={() => copyToClipboard(rawSql)} name=\"copy\" />\n </div>\n );\n\n return (\n <Field label={labelElement} className={styles.grow}>\n <CodeEditor\n language=\"sql\"\n height={80}\n value={formatSQL(rawSql, language)}\n monacoOptions={{ scrollbar: { vertical: 'hidden' }, scrollBeyondLastLine: false }}\n readOnly={true}\n showMiniMap={false}\n />\n </Field>\n );\n}\n\nfunction getStyles(theme: GrafanaTheme2) {\n return {\n grow: css({ flexGrow: 1 }),\n label: css({ fontSize: 12, fontWeight: theme.typography.fontWeightMedium }),\n labelWrapper: css({ display: 'flex', justifyContent: 'space-between', paddingBottom: theme.spacing(0.5) }),\n };\n}\n"],"names":[],"mappings":";;;;;;;AAeO,SAAS,OAAQ,CAAA,EAAE,MAAQ,EAAA,QAAA,GAAW,OAAuB,EAAA;AAElE,EAAA,MAAM,CAAC,CAAA,EAAG,eAAe,CAAA,GAAI,kBAAmB,EAAA;AAChD,EAAM,MAAA,MAAA,GAAS,WAAW,SAAS,CAAA;AAEnC,EAAM,MAAA,YAAA,mBACH,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAI,SAAW,EAAA,MAAA,CAAO,gCACpB,KAAA,CAAA,aAAA,CAAA,OAAA,EAAA,EAAM,SAAW,EAAA,MAAA,CAAO,KAAO,EAAA,EAAA,SAAO,mBACtC,KAAA,CAAA,aAAA,CAAA,UAAA,EAAA,EAAW,OAAQ,EAAA,mBAAA,EAAoB,OAAS,EAAA,MAAM,gBAAgB,MAAM,CAAA,EAAG,IAAK,EAAA,MAAA,EAAO,CAC9F,CAAA;AAGF,EAAA,2CACG,KAAM,EAAA,EAAA,KAAA,EAAO,YAAc,EAAA,SAAA,EAAW,OAAO,IAC5C,EAAA,kBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,QAAS,EAAA,KAAA;AAAA,MACT,MAAQ,EAAA,EAAA;AAAA,MACR,KAAA,EAAO,SAAU,CAAA,MAAA,EAAQ,QAAQ,CAAA;AAAA,MACjC,aAAA,EAAe,EAAE,SAAW,EAAA,EAAE,UAAU,QAAS,EAAA,EAAG,sBAAsB,KAAM,EAAA;AAAA,MAChF,QAAU,EAAA,IAAA;AAAA,MACV,WAAa,EAAA;AAAA;AAAA,GAEjB,CAAA;AAEJ;AAEA,SAAS,UAAU,KAAsB,EAAA;AACvC,EAAO,OAAA;AAAA,IACL,IAAM,EAAA,GAAA,CAAI,EAAE,QAAA,EAAU,GAAG,CAAA;AAAA,IACzB,KAAA,EAAO,IAAI,EAAE,QAAA,EAAU,IAAI,UAAY,EAAA,KAAA,CAAM,UAAW,CAAA,gBAAA,EAAkB,CAAA;AAAA,IAC1E,YAAc,EAAA,GAAA,CAAI,EAAE,OAAA,EAAS,MAAQ,EAAA,cAAA,EAAgB,eAAiB,EAAA,aAAA,EAAe,KAAM,CAAA,OAAA,CAAQ,GAAG,CAAA,EAAG;AAAA,GAC3G;AACF;;;;"}
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React from '../../../_virtual/index.js';
2
2
  import '@grafana/data';
3
3
  import { GroupByRow } from './GroupByRow.js';
4
4
  import '../types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"SQLGroupByRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/SQLGroupByRow.tsx"],"sourcesContent":["import React from 'react';\nimport { type SelectableValue } from '@grafana/data';\n\nimport { GroupByRow } from './GroupByRow';\nimport { type SQLQuery, type DB, type QueryWithDefaults } from '../types';\nimport { useSqlChange } from '../utils/useSqlChange';\n\ninterface SQLGroupByRowProps {\n fields: SelectableValue[];\n query: QueryWithDefaults;\n onQueryChange: (query: SQLQuery) => void;\n db: DB;\n}\n\nexport function SQLGroupByRow({ fields, query, onQueryChange, db }: SQLGroupByRowProps) {\n const { onSqlChange } = useSqlChange({ query, onQueryChange, db });\n\n return <GroupByRow columns={fields} sql={query.sql!} onSqlChange={onSqlChange} />;\n}\n"],"names":[],"mappings":";;;;;;AAcO,SAAS,cAAc,EAAE,MAAA,EAAQ,KAAA,EAAO,aAAA,EAAe,IAAG,EAAuB;AACtF,EAAA,MAAM,EAAE,aAAY,GAAI,YAAA,CAAa,EAAE,KAAA,EAAO,aAAA,EAAe,IAAI,CAAA;AAEjE,EAAA,2CAAQ,UAAA,EAAA,EAAW,OAAA,EAAS,QAAQ,GAAA,EAAK,KAAA,CAAM,KAAM,WAAA,EAA0B,CAAA;AACjF;;;;"}
1
+ {"version":3,"file":"SQLGroupByRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/SQLGroupByRow.tsx"],"sourcesContent":["import React from 'react';\nimport { type SelectableValue } from '@grafana/data';\n\nimport { GroupByRow } from './GroupByRow';\nimport { type SQLQuery, type DB, type QueryWithDefaults } from '../types';\nimport { useSqlChange } from '../utils/useSqlChange';\n\ninterface SQLGroupByRowProps {\n fields: SelectableValue[];\n query: QueryWithDefaults;\n onQueryChange: (query: SQLQuery) => void;\n db: DB;\n}\n\nexport function SQLGroupByRow({ fields, query, onQueryChange, db }: SQLGroupByRowProps) {\n const { onSqlChange } = useSqlChange({ query, onQueryChange, db });\n\n return <GroupByRow columns={fields} sql={query.sql!} onSqlChange={onSqlChange} />;\n}\n"],"names":[],"mappings":";;;;;;AAcO,SAAS,cAAc,EAAE,MAAA,EAAQ,KAAO,EAAA,aAAA,EAAe,IAA0B,EAAA;AACtF,EAAM,MAAA,EAAE,aAAgB,GAAA,YAAA,CAAa,EAAE,KAAO,EAAA,aAAA,EAAe,IAAI,CAAA;AAEjE,EAAA,2CAAQ,UAAW,EAAA,EAAA,OAAA,EAAS,QAAQ,GAAK,EAAA,KAAA,CAAM,KAAM,WAA0B,EAAA,CAAA;AACjF;;;;"}
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React from '../../../_virtual/index.js';
2
2
  import '@grafana/data';
3
3
  import { OrderByRow } from './OrderByRow.js';
4
4
  import '../types.js';
@@ -9,9 +9,9 @@ function SQLOrderByRow({ fields, query, onQueryChange, db }) {
9
9
  const { onSqlChange } = useSqlChange({ query, onQueryChange, db });
10
10
  let columnsWithIndices = [];
11
11
  if (fields) {
12
- const options = (_b = (_a = query.sql) == null ? void 0 : _a.columns) == null ? void 0 : _b.map((c, i) => {
12
+ const options = (_b = (_a = query.sql) == null ? undefined : _a.columns) == null ? undefined : _b.map((c, i) => {
13
13
  var _a2, _b2;
14
- const value = c.name ? `${c.name}(${(_a2 = c.parameters) == null ? void 0 : _a2.map((p) => p.name)})` : (_b2 = c.parameters) == null ? void 0 : _b2.map((p) => p.name);
14
+ const value = c.name ? `${c.name}(${(_a2 = c.parameters) == null ? undefined : _a2.map((p) => p.name)})` : (_b2 = c.parameters) == null ? undefined : _b2.map((p) => p.name);
15
15
  return {
16
16
  value,
17
17
  label: `${i + 1} - ${value}`
@@ -1 +1 @@
1
- {"version":3,"file":"SQLOrderByRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/SQLOrderByRow.tsx"],"sourcesContent":["import React from 'react';\nimport { type SelectableValue } from '@grafana/data';\nimport { OrderByRow } from './OrderByRow';\nimport { type SQLQuery, type DB, type QueryWithDefaults } from '../types';\nimport { useSqlChange } from '../utils/useSqlChange';\n\ntype SQLOrderByRowProps = {\n fields: SelectableValue[];\n query: QueryWithDefaults;\n onQueryChange: (query: SQLQuery) => void;\n db: DB;\n};\n\nexport function SQLOrderByRow({ fields, query, onQueryChange, db }: SQLOrderByRowProps) {\n const { onSqlChange } = useSqlChange({ query, onQueryChange, db });\n let columnsWithIndices: SelectableValue[] = [];\n\n if (fields) {\n const options = query.sql?.columns?.map((c, i) => {\n const value = c.name ? `${c.name}(${c.parameters?.map((p) => p.name)})` : c.parameters?.map((p) => p.name);\n return {\n value,\n label: `${i + 1} - ${value}`,\n };\n });\n columnsWithIndices = [\n {\n value: '',\n label: 'Selected columns',\n options,\n expanded: true,\n },\n ...fields,\n ];\n }\n\n return <OrderByRow sql={query.sql!} onSqlChange={onSqlChange} columns={columnsWithIndices} />;\n}\n"],"names":["_a","_b"],"mappings":";;;;;;AAaO,SAAS,cAAc,EAAE,MAAA,EAAQ,KAAA,EAAO,aAAA,EAAe,IAAG,EAAuB;AAbxF,EAAA,IAAA,EAAA,EAAA,EAAA;AAcE,EAAA,MAAM,EAAE,aAAY,GAAI,YAAA,CAAa,EAAE,KAAA,EAAO,aAAA,EAAe,IAAI,CAAA;AACjE,EAAA,IAAI,qBAAwC,EAAC;AAE7C,EAAA,IAAI,MAAA,EAAQ;AACV,IAAA,MAAM,OAAA,GAAA,CAAU,iBAAM,GAAA,KAAN,IAAA,GAAA,MAAA,GAAA,EAAA,CAAW,YAAX,IAAA,GAAA,MAAA,GAAA,EAAA,CAAoB,GAAA,CAAI,CAAC,CAAA,EAAG,CAAA,KAAM;AAlBtD,MAAA,IAAAA,GAAAA,EAAAC,GAAAA;AAmBM,MAAA,MAAM,KAAA,GAAQ,CAAA,CAAE,IAAA,GAAO,CAAA,EAAG,CAAA,CAAE,IAAI,CAAA,CAAA,EAAA,CAAID,GAAAA,GAAA,CAAA,CAAE,UAAA,KAAF,IAAA,GAAA,MAAA,GAAAA,GAAAA,CAAc,GAAA,CAAI,CAAC,CAAA,KAAM,CAAA,CAAE,IAAA,CAAK,CAAA,CAAA,CAAA,GAAA,CAAMC,GAAAA,GAAA,CAAA,CAAE,UAAA,KAAF,IAAA,GAAA,MAAA,GAAAA,GAAAA,CAAc,GAAA,CAAI,CAAC,CAAA,KAAM,CAAA,CAAE,IAAA,CAAA;AACrG,MAAA,OAAO;AAAA,QACL,KAAA;AAAA,QACA,KAAA,EAAO,CAAA,EAAG,CAAA,GAAI,CAAC,MAAM,KAAK,CAAA;AAAA,OAC5B;AAAA,IACF,CAAA,CAAA;AACA,IAAA,kBAAA,GAAqB;AAAA,MACnB;AAAA,QACE,KAAA,EAAO,EAAA;AAAA,QACP,KAAA,EAAO,kBAAA;AAAA,QACP,OAAA;AAAA,QACA,QAAA,EAAU;AAAA,OACZ;AAAA,MACA,GAAG;AAAA,KACL;AAAA,EACF;AAEA,EAAA,2CAAQ,UAAA,EAAA,EAAW,GAAA,EAAK,MAAM,GAAA,EAAM,WAAA,EAA0B,SAAS,kBAAA,EAAoB,CAAA;AAC7F;;;;"}
1
+ {"version":3,"file":"SQLOrderByRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/SQLOrderByRow.tsx"],"sourcesContent":["import React from 'react';\nimport { type SelectableValue } from '@grafana/data';\nimport { OrderByRow } from './OrderByRow';\nimport { type SQLQuery, type DB, type QueryWithDefaults } from '../types';\nimport { useSqlChange } from '../utils/useSqlChange';\n\ntype SQLOrderByRowProps = {\n fields: SelectableValue[];\n query: QueryWithDefaults;\n onQueryChange: (query: SQLQuery) => void;\n db: DB;\n};\n\nexport function SQLOrderByRow({ fields, query, onQueryChange, db }: SQLOrderByRowProps) {\n const { onSqlChange } = useSqlChange({ query, onQueryChange, db });\n let columnsWithIndices: SelectableValue[] = [];\n\n if (fields) {\n const options = query.sql?.columns?.map((c, i) => {\n const value = c.name ? `${c.name}(${c.parameters?.map((p) => p.name)})` : c.parameters?.map((p) => p.name);\n return {\n value,\n label: `${i + 1} - ${value}`,\n };\n });\n columnsWithIndices = [\n {\n value: '',\n label: 'Selected columns',\n options,\n expanded: true,\n },\n ...fields,\n ];\n }\n\n return <OrderByRow sql={query.sql!} onSqlChange={onSqlChange} columns={columnsWithIndices} />;\n}\n"],"names":["_a","_b"],"mappings":";;;;;;AAaO,SAAS,cAAc,EAAE,MAAA,EAAQ,KAAO,EAAA,aAAA,EAAe,IAA0B,EAAA;AAbxF,EAAA,IAAA,EAAA,EAAA,EAAA;AAcE,EAAM,MAAA,EAAE,aAAgB,GAAA,YAAA,CAAa,EAAE,KAAO,EAAA,aAAA,EAAe,IAAI,CAAA;AACjE,EAAA,IAAI,qBAAwC,EAAC;AAE7C,EAAA,IAAI,MAAQ,EAAA;AACV,IAAM,MAAA,OAAA,GAAA,CAAU,iBAAM,GAAN,KAAA,IAAA,GAAA,SAAA,GAAA,EAAA,CAAW,YAAX,IAAoB,GAAA,SAAA,GAAA,EAAA,CAAA,GAAA,CAAI,CAAC,CAAA,EAAG,CAAM,KAAA;AAlBtD,MAAA,IAAAA,GAAAC,EAAAA,GAAAA;AAmBM,MAAM,MAAA,KAAA,GAAQ,CAAE,CAAA,IAAA,GAAO,CAAG,EAAA,CAAA,CAAE,IAAI,CAAA,CAAA,EAAA,CAAID,GAAA,GAAA,CAAA,CAAE,UAAF,KAAA,IAAA,GAAA,SAAA,GAAAA,GAAc,CAAA,GAAA,CAAI,CAAC,CAAM,KAAA,CAAA,CAAE,IAAK,CAAA,CAAA,CAAA,CAAA,GAAA,CAAMC,GAAA,GAAA,CAAA,CAAE,UAAF,KAAA,IAAA,GAAA,SAAA,GAAAA,GAAc,CAAA,GAAA,CAAI,CAAC,CAAA,KAAM,CAAE,CAAA,IAAA,CAAA;AACrG,MAAO,OAAA;AAAA,QACL,KAAA;AAAA,QACA,KAAO,EAAA,CAAA,EAAG,CAAI,GAAA,CAAC,MAAM,KAAK,CAAA;AAAA,OAC5B;AAAA,KACF,CAAA;AACA,IAAqB,kBAAA,GAAA;AAAA,MACnB;AAAA,QACE,KAAO,EAAA,EAAA;AAAA,QACP,KAAO,EAAA,kBAAA;AAAA,QACP,OAAA;AAAA,QACA,QAAU,EAAA;AAAA,OACZ;AAAA,MACA,GAAG;AAAA,KACL;AAAA;AAGF,EAAA,2CAAQ,UAAW,EAAA,EAAA,GAAA,EAAK,MAAM,GAAM,EAAA,WAAA,EAA0B,SAAS,kBAAoB,EAAA,CAAA;AAC7F;;;;"}
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React from '../../../_virtual/index.js';
2
2
  import { useAsync } from 'react-use';
3
3
  import { toOption } from '@grafana/data';
4
4
  import { SelectRow } from './SelectRow.js';
@@ -1 +1 @@
1
- {"version":3,"file":"SQLSelectRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/SQLSelectRow.tsx"],"sourcesContent":["import React from 'react';\nimport { useAsync } from 'react-use';\nimport { type SelectableValue, toOption } from '@grafana/data';\nimport { SelectRow } from './SelectRow';\nimport { type SQLQuery, type DB, type QueryWithDefaults } from '../types';\nimport { useSqlChange } from '../utils/useSqlChange';\n\ninterface SQLSelectRowProps {\n fields: SelectableValue[];\n query: QueryWithDefaults;\n onQueryChange: (query: SQLQuery) => void;\n db: DB;\n}\n\nexport function SQLSelectRow({ fields, query, onQueryChange, db }: SQLSelectRowProps) {\n const { onSqlChange } = useSqlChange({ query, onQueryChange, db });\n\n const state = useAsync(async () => {\n const functions = await db.functions();\n return functions.map((f) => toOption(f.name));\n }, [db]);\n\n return <SelectRow columns={fields} sql={query.sql!} functions={state.value} onSqlChange={onSqlChange} />;\n}\n"],"names":[],"mappings":";;;;;;;AAcO,SAAS,aAAa,EAAE,MAAA,EAAQ,KAAA,EAAO,aAAA,EAAe,IAAG,EAAsB;AACpF,EAAA,MAAM,EAAE,aAAY,GAAI,YAAA,CAAa,EAAE,KAAA,EAAO,aAAA,EAAe,IAAI,CAAA;AAEjE,EAAA,MAAM,KAAA,GAAQ,SAAS,YAAY;AACjC,IAAA,MAAM,SAAA,GAAY,MAAM,EAAA,CAAG,SAAA,EAAU;AACrC,IAAA,OAAO,UAAU,GAAA,CAAI,CAAC,MAAM,QAAA,CAAS,CAAA,CAAE,IAAI,CAAC,CAAA;AAAA,EAC9C,CAAA,EAAG,CAAC,EAAE,CAAC,CAAA;AAEP,EAAA,uBAAO,KAAA,CAAA,aAAA,CAAC,SAAA,EAAA,EAAU,OAAA,EAAS,MAAA,EAAQ,GAAA,EAAK,MAAM,GAAA,EAAM,SAAA,EAAW,KAAA,CAAM,KAAA,EAAO,WAAA,EAA0B,CAAA;AACxG;;;;"}
1
+ {"version":3,"file":"SQLSelectRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/SQLSelectRow.tsx"],"sourcesContent":["import React from 'react';\nimport { useAsync } from 'react-use';\nimport { type SelectableValue, toOption } from '@grafana/data';\nimport { SelectRow } from './SelectRow';\nimport { type SQLQuery, type DB, type QueryWithDefaults } from '../types';\nimport { useSqlChange } from '../utils/useSqlChange';\n\ninterface SQLSelectRowProps {\n fields: SelectableValue[];\n query: QueryWithDefaults;\n onQueryChange: (query: SQLQuery) => void;\n db: DB;\n}\n\nexport function SQLSelectRow({ fields, query, onQueryChange, db }: SQLSelectRowProps) {\n const { onSqlChange } = useSqlChange({ query, onQueryChange, db });\n\n const state = useAsync(async () => {\n const functions = await db.functions();\n return functions.map((f) => toOption(f.name));\n }, [db]);\n\n return <SelectRow columns={fields} sql={query.sql!} functions={state.value} onSqlChange={onSqlChange} />;\n}\n"],"names":[],"mappings":";;;;;;;AAcO,SAAS,aAAa,EAAE,MAAA,EAAQ,KAAO,EAAA,aAAA,EAAe,IAAyB,EAAA;AACpF,EAAM,MAAA,EAAE,aAAgB,GAAA,YAAA,CAAa,EAAE,KAAO,EAAA,aAAA,EAAe,IAAI,CAAA;AAEjE,EAAM,MAAA,KAAA,GAAQ,SAAS,YAAY;AACjC,IAAM,MAAA,SAAA,GAAY,MAAM,EAAA,CAAG,SAAU,EAAA;AACrC,IAAA,OAAO,UAAU,GAAI,CAAA,CAAC,MAAM,QAAS,CAAA,CAAA,CAAE,IAAI,CAAC,CAAA;AAAA,GAC9C,EAAG,CAAC,EAAE,CAAC,CAAA;AAEP,EAAO,uBAAA,KAAA,CAAA,aAAA,CAAC,SAAU,EAAA,EAAA,OAAA,EAAS,MAAQ,EAAA,GAAA,EAAK,MAAM,GAAM,EAAA,SAAA,EAAW,KAAM,CAAA,KAAA,EAAO,WAA0B,EAAA,CAAA;AACxG;;;;"}
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React from '../../../_virtual/index.js';
2
2
  import { useAsync } from 'react-use';
3
3
  import '@grafana/data';
4
4
  import './AwesomeQueryBuilder.js';
@@ -1 +1 @@
1
- {"version":3,"file":"SQLWhereRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/SQLWhereRow.tsx"],"sourcesContent":["import React from 'react';\nimport { useAsync } from 'react-use';\nimport { type SelectableValue } from '@grafana/data';\nimport { type Config } from './AwesomeQueryBuilder';\nimport { WhereRow } from './WhereRow';\nimport { type SQLQuery, type DB, type SQLExpression, type SQLSelectableValue, type QueryWithDefaults } from '../types';\nimport { useSqlChange } from '../utils/useSqlChange';\n\ninterface WhereRowProps {\n query: QueryWithDefaults;\n fields: SelectableValue[];\n onQueryChange: (query: SQLQuery) => void;\n db: DB;\n}\n\nexport function SQLWhereRow({ query, fields, onQueryChange, db }: WhereRowProps) {\n const state = useAsync(async () => {\n return mapFieldsToTypes(fields);\n }, [fields]);\n\n const { onSqlChange } = useSqlChange({ query, onQueryChange, db });\n\n return (\n <WhereRow\n // TODO: fix key that's used to force clean render or SQLWhereRow - otherwise it doesn't render operators correctly\n key={JSON.stringify(state.value)}\n config={{ fields: state.value || {} }}\n sql={query.sql!}\n onSqlChange={(val: SQLExpression) => {\n onSqlChange(val);\n }}\n />\n );\n}\n\n// needed for awesome query builder\nfunction mapFieldsToTypes(columns: SQLSelectableValue[]) {\n const fields: Config['fields'] = {};\n for (const col of columns) {\n fields[col.value] = {\n type: col.raqbFieldType || 'text',\n valueSources: ['value'],\n mainWidgetProps: { customProps: { icon: col.icon } },\n };\n }\n return fields;\n}\n"],"names":[],"mappings":";;;;;;;;AAeO,SAAS,YAAY,EAAE,KAAA,EAAO,MAAA,EAAQ,aAAA,EAAe,IAAG,EAAkB;AAC/E,EAAA,MAAM,KAAA,GAAQ,SAAS,YAAY;AACjC,IAAA,OAAO,iBAAiB,MAAM,CAAA;AAAA,EAChC,CAAA,EAAG,CAAC,MAAM,CAAC,CAAA;AAEX,EAAA,MAAM,EAAE,aAAY,GAAI,YAAA,CAAa,EAAE,KAAA,EAAO,aAAA,EAAe,IAAI,CAAA;AAEjE,EAAA,uBACE,KAAA,CAAA,aAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MAEC,GAAA,EAAK,IAAA,CAAK,SAAA,CAAU,KAAA,CAAM,KAAK,CAAA;AAAA,MAC/B,QAAQ,EAAE,MAAA,EAAQ,KAAA,CAAM,KAAA,IAAS,EAAC,EAAE;AAAA,MACpC,KAAK,KAAA,CAAM,GAAA;AAAA,MACX,WAAA,EAAa,CAAC,GAAA,KAAuB;AACnC,QAAA,WAAA,CAAY,GAAG,CAAA;AAAA,MACjB;AAAA;AAAA,GACF;AAEJ;AAGA,SAAS,iBAAiB,OAAA,EAA+B;AACvD,EAAA,MAAM,SAA2B,EAAC;AAClC,EAAA,KAAA,MAAW,OAAO,OAAA,EAAS;AACzB,IAAA,MAAA,CAAO,GAAA,CAAI,KAAK,CAAA,GAAI;AAAA,MAClB,IAAA,EAAM,IAAI,aAAA,IAAiB,MAAA;AAAA,MAC3B,YAAA,EAAc,CAAC,OAAO,CAAA;AAAA,MACtB,iBAAiB,EAAE,WAAA,EAAa,EAAE,IAAA,EAAM,GAAA,CAAI,MAAK;AAAE,KACrD;AAAA,EACF;AACA,EAAA,OAAO,MAAA;AACT;;;;"}
1
+ {"version":3,"file":"SQLWhereRow.js","sources":["../../../../../src/components/QueryEditor/visual-query-builder/SQLWhereRow.tsx"],"sourcesContent":["import React from 'react';\nimport { useAsync } from 'react-use';\nimport { type SelectableValue } from '@grafana/data';\nimport { type Config } from './AwesomeQueryBuilder';\nimport { WhereRow } from './WhereRow';\nimport { type SQLQuery, type DB, type SQLExpression, type SQLSelectableValue, type QueryWithDefaults } from '../types';\nimport { useSqlChange } from '../utils/useSqlChange';\n\ninterface WhereRowProps {\n query: QueryWithDefaults;\n fields: SelectableValue[];\n onQueryChange: (query: SQLQuery) => void;\n db: DB;\n}\n\nexport function SQLWhereRow({ query, fields, onQueryChange, db }: WhereRowProps) {\n const state = useAsync(async () => {\n return mapFieldsToTypes(fields);\n }, [fields]);\n\n const { onSqlChange } = useSqlChange({ query, onQueryChange, db });\n\n return (\n <WhereRow\n // TODO: fix key that's used to force clean render or SQLWhereRow - otherwise it doesn't render operators correctly\n key={JSON.stringify(state.value)}\n config={{ fields: state.value || {} }}\n sql={query.sql!}\n onSqlChange={(val: SQLExpression) => {\n onSqlChange(val);\n }}\n />\n );\n}\n\n// needed for awesome query builder\nfunction mapFieldsToTypes(columns: SQLSelectableValue[]) {\n const fields: Config['fields'] = {};\n for (const col of columns) {\n fields[col.value] = {\n type: col.raqbFieldType || 'text',\n valueSources: ['value'],\n mainWidgetProps: { customProps: { icon: col.icon } },\n };\n }\n return fields;\n}\n"],"names":[],"mappings":";;;;;;;;AAeO,SAAS,YAAY,EAAE,KAAA,EAAO,MAAQ,EAAA,aAAA,EAAe,IAAqB,EAAA;AAC/E,EAAM,MAAA,KAAA,GAAQ,SAAS,YAAY;AACjC,IAAA,OAAO,iBAAiB,MAAM,CAAA;AAAA,GAChC,EAAG,CAAC,MAAM,CAAC,CAAA;AAEX,EAAM,MAAA,EAAE,aAAgB,GAAA,YAAA,CAAa,EAAE,KAAO,EAAA,aAAA,EAAe,IAAI,CAAA;AAEjE,EACE,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MAEC,GAAK,EAAA,IAAA,CAAK,SAAU,CAAA,KAAA,CAAM,KAAK,CAAA;AAAA,MAC/B,QAAQ,EAAE,MAAA,EAAQ,KAAM,CAAA,KAAA,IAAS,EAAG,EAAA;AAAA,MACpC,KAAK,KAAM,CAAA,GAAA;AAAA,MACX,WAAA,EAAa,CAAC,GAAuB,KAAA;AACnC,QAAA,WAAA,CAAY,GAAG,CAAA;AAAA;AACjB;AAAA,GACF;AAEJ;AAGA,SAAS,iBAAiB,OAA+B,EAAA;AACvD,EAAA,MAAM,SAA2B,EAAC;AAClC,EAAA,KAAA,MAAW,OAAO,OAAS,EAAA;AACzB,IAAO,MAAA,CAAA,GAAA,CAAI,KAAK,CAAI,GAAA;AAAA,MAClB,IAAA,EAAM,IAAI,aAAiB,IAAA,MAAA;AAAA,MAC3B,YAAA,EAAc,CAAC,OAAO,CAAA;AAAA,MACtB,iBAAiB,EAAE,WAAA,EAAa,EAAE,IAAM,EAAA,GAAA,CAAI,MAAO;AAAA,KACrD;AAAA;AAEF,EAAO,OAAA,MAAA;AACT;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { css } from '@emotion/css';
2
2
  import { uniqueId } from 'lodash';
3
- import React, { useCallback } from 'react';
3
+ import React, { r as reactExports } from '../../../_virtual/index.js';
4
4
  import { toOption } from '@grafana/data';
5
5
  import { useStyles2, Select, Button } from '@grafana/ui';
6
6
  import { EditorField } from '../EditorField.js';
@@ -12,13 +12,13 @@ import { EditorStack } from '../EditorStack.js';
12
12
  const asteriskValue = { label: "*", value: "*" };
13
13
  function SelectRow({ sql, columns, onSqlChange, functions }) {
14
14
  var _a;
15
- const styles = useStyles2(getStyles$j);
15
+ const styles = useStyles2(getStyles);
16
16
  const columnsWithAsterisk = [asteriskValue, ...columns || []];
17
- const onColumnChange = useCallback(
17
+ const onColumnChange = reactExports.useCallback(
18
18
  (item, index) => (column) => {
19
19
  var _a2, _b;
20
20
  let modifiedItem = { ...item };
21
- if (!((_a2 = item.parameters) == null ? void 0 : _a2.length)) {
21
+ if (!((_a2 = item.parameters) == null ? undefined : _a2.length)) {
22
22
  modifiedItem.parameters = [{ type: QueryEditorExpressionType.FunctionParameter, name: column.value }];
23
23
  } else {
24
24
  modifiedItem.parameters = item.parameters.map(
@@ -27,28 +27,28 @@ function SelectRow({ sql, columns, onSqlChange, functions }) {
27
27
  }
28
28
  const newSql = {
29
29
  ...sql,
30
- columns: (_b = sql.columns) == null ? void 0 : _b.map((c, i) => i === index ? modifiedItem : c)
30
+ columns: (_b = sql.columns) == null ? undefined : _b.map((c, i) => i === index ? modifiedItem : c)
31
31
  };
32
32
  onSqlChange(newSql);
33
33
  },
34
34
  [onSqlChange, sql]
35
35
  );
36
- const onAggregationChange = useCallback(
36
+ const onAggregationChange = reactExports.useCallback(
37
37
  (item, index) => (aggregation) => {
38
38
  var _a2;
39
39
  const newItem = {
40
40
  ...item,
41
- name: aggregation == null ? void 0 : aggregation.value
41
+ name: aggregation == null ? undefined : aggregation.value
42
42
  };
43
43
  const newSql = {
44
44
  ...sql,
45
- columns: (_a2 = sql.columns) == null ? void 0 : _a2.map((c, i) => i === index ? newItem : c)
45
+ columns: (_a2 = sql.columns) == null ? undefined : _a2.map((c, i) => i === index ? newItem : c)
46
46
  };
47
47
  onSqlChange(newSql);
48
48
  },
49
49
  [onSqlChange, sql]
50
50
  );
51
- const removeColumn = useCallback(
51
+ const removeColumn = reactExports.useCallback(
52
52
  (index) => () => {
53
53
  const clone = [...sql.columns];
54
54
  clone.splice(index, 1);
@@ -60,11 +60,11 @@ function SelectRow({ sql, columns, onSqlChange, functions }) {
60
60
  },
61
61
  [onSqlChange, sql]
62
62
  );
63
- const addColumn = useCallback(() => {
63
+ const addColumn = reactExports.useCallback(() => {
64
64
  const newSql = { ...sql, columns: [...sql.columns, createFunctionField()] };
65
65
  onSqlChange(newSql);
66
66
  }, [onSqlChange, sql]);
67
- return /* @__PURE__ */ React.createElement(EditorStack, { gap: 2, alignItems: "end", direction: "column" }, (_a = sql.columns) == null ? void 0 : _a.map((item, index) => /* @__PURE__ */ React.createElement("div", { key: index }, /* @__PURE__ */ React.createElement(EditorStack, { gap: 2, alignItems: "end" }, /* @__PURE__ */ React.createElement(EditorField, { label: "Column", width: 25 }, /* @__PURE__ */ React.createElement(
67
+ return /* @__PURE__ */ React.createElement(EditorStack, { gap: 2, alignItems: "end", direction: "column" }, (_a = sql.columns) == null ? undefined : _a.map((item, index) => /* @__PURE__ */ React.createElement("div", { key: index }, /* @__PURE__ */ React.createElement(EditorStack, { gap: 2, alignItems: "end" }, /* @__PURE__ */ React.createElement(EditorField, { label: "Column", width: 25 }, /* @__PURE__ */ React.createElement(
68
68
  Select,
69
69
  {
70
70
  value: getColumnValue(item),
@@ -108,12 +108,12 @@ function SelectRow({ sql, columns, onSqlChange, functions }) {
108
108
  }
109
109
  ));
110
110
  }
111
- const getStyles$j = () => {
111
+ const getStyles = () => {
112
112
  return { addButton: css({ alignSelf: "flex-start" }) };
113
113
  };
114
114
  function getColumnValue({ parameters }) {
115
- const column = parameters == null ? void 0 : parameters.find((p) => p.type === QueryEditorExpressionType.FunctionParameter);
116
- if (column == null ? void 0 : column.name) {
115
+ const column = parameters == null ? undefined : parameters.find((p) => p.type === QueryEditorExpressionType.FunctionParameter);
116
+ if (column == null ? undefined : column.name) {
117
117
  return toOption(column.name);
118
118
  }
119
119
  return null;