@grafana/plugin-ui 0.13.1 → 0.14.1-dsconfig.b962e11

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 (270) hide show
  1. package/dist/cjs/index.cjs +2918 -364
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/cjs/index.d.cts +553 -39
  4. package/dist/cjs/test-utils.cjs +2 -2
  5. package/dist/cjs/test-utils.cjs.map +1 -1
  6. package/dist/cjs/test-utils.d.cts +1 -1
  7. package/dist/esm/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.js.map +1 -1
  8. package/dist/esm/components/ConfigEditor/Auth/Auth.js.map +1 -1
  9. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js +4 -4
  10. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js.map +1 -1
  11. package/dist/esm/components/ConfigEditor/Auth/auth-method/BasicAuth.js.map +1 -1
  12. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeader.js.map +1 -1
  13. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js +1 -1
  14. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js.map +1 -1
  15. package/dist/esm/components/ConfigEditor/Auth/styles.js.map +1 -1
  16. package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js +1 -1
  17. package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js.map +1 -1
  18. package/dist/esm/components/ConfigEditor/Auth/tls/SkipTLSVerification.js.map +1 -1
  19. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js +3 -3
  20. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js.map +1 -1
  21. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettings.js.map +1 -1
  22. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettingsSection.js.map +1 -1
  23. package/dist/esm/components/ConfigEditor/Auth/types.js.map +1 -1
  24. package/dist/esm/components/ConfigEditor/Auth/utils.js +3 -3
  25. package/dist/esm/components/ConfigEditor/Auth/utils.js.map +1 -1
  26. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js +2 -2
  27. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js.map +1 -1
  28. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSection.js.map +1 -1
  29. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSubSection.js.map +1 -1
  30. package/dist/esm/components/ConfigEditor/ConfigSection/GenericConfigSection.js.map +1 -1
  31. package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js +1 -1
  32. package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js.map +1 -1
  33. package/dist/esm/components/ConfigEditor/DataSourceDescription.js.map +1 -1
  34. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/AuthorizationHeaderField.js +53 -0
  35. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/AuthorizationHeaderField.js.map +1 -0
  36. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/ComplexFieldNote.js +24 -0
  37. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/ComplexFieldNote.js.map +1 -0
  38. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js +229 -0
  39. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js.map +1 -0
  40. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/IndexedPairEditor.js +124 -0
  41. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/IndexedPairEditor.js.map +1 -0
  42. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/PdcFieldNote.js +34 -0
  43. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/PdcFieldNote.js.map +1 -0
  44. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js +60 -0
  45. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js.map +1 -0
  46. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SecureFieldInput.js +61 -0
  47. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SecureFieldInput.js.map +1 -0
  48. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js +54 -0
  49. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js.map +1 -0
  50. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/StringArrayInput.js +84 -0
  51. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/StringArrayInput.js.map +1 -0
  52. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js +176 -0
  53. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js.map +1 -0
  54. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js +88 -0
  55. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js.map +1 -0
  56. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/renderFieldInput.js +106 -0
  57. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/renderFieldInput.js.map +1 -0
  58. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/tabStyles.js +241 -0
  59. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/tabStyles.js.map +1 -0
  60. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/useDatasourceConfigForm.js +284 -0
  61. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/useDatasourceConfigForm.js.map +1 -0
  62. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/wizardStyles.js +124 -0
  63. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/wizardStyles.js.map +1 -0
  64. package/dist/esm/components/ConfigEditor/SecureSocksProxyToggle.js.map +1 -1
  65. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js +11 -11
  66. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js.map +1 -1
  67. package/dist/esm/components/DataLinks/DataLink.js +4 -4
  68. package/dist/esm/components/DataLinks/DataLink.js.map +1 -1
  69. package/dist/esm/components/DataLinks/DataLinks.js +3 -3
  70. package/dist/esm/components/DataLinks/DataLinks.js.map +1 -1
  71. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js +8 -8
  72. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js.map +1 -1
  73. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  74. package/dist/esm/components/DatePicker/styles.js +2 -2
  75. package/dist/esm/components/DatePicker/styles.js.map +1 -1
  76. package/dist/esm/components/DatePickerWithInput/DatePickerWithInput.js.map +1 -1
  77. package/dist/esm/components/DatePickerWithInput/styles.js +2 -2
  78. package/dist/esm/components/DatePickerWithInput/styles.js.map +1 -1
  79. package/dist/esm/components/DebounceInput/DebounceInput.js.map +1 -1
  80. package/dist/esm/components/Plugins/PluginSignatureBadge.js.map +1 -1
  81. package/dist/esm/components/QueryEditor/AccessoryButton.js.map +1 -1
  82. package/dist/esm/components/QueryEditor/CatalogSelector.js +1 -1
  83. package/dist/esm/components/QueryEditor/CatalogSelector.js.map +1 -1
  84. package/dist/esm/components/QueryEditor/ConfirmModal.js +1 -1
  85. package/dist/esm/components/QueryEditor/ConfirmModal.js.map +1 -1
  86. package/dist/esm/components/QueryEditor/DatasetSelector.js +1 -1
  87. package/dist/esm/components/QueryEditor/DatasetSelector.js.map +1 -1
  88. package/dist/esm/components/QueryEditor/EditorField.js +5 -5
  89. package/dist/esm/components/QueryEditor/EditorField.js.map +1 -1
  90. package/dist/esm/components/QueryEditor/EditorFieldGroup.js.map +1 -1
  91. package/dist/esm/components/QueryEditor/EditorHeader.js +2 -2
  92. package/dist/esm/components/QueryEditor/EditorHeader.js.map +1 -1
  93. package/dist/esm/components/QueryEditor/EditorList.js.map +1 -1
  94. package/dist/esm/components/QueryEditor/EditorRow.js +4 -4
  95. package/dist/esm/components/QueryEditor/EditorRow.js.map +1 -1
  96. package/dist/esm/components/QueryEditor/EditorRows.js +2 -2
  97. package/dist/esm/components/QueryEditor/EditorRows.js.map +1 -1
  98. package/dist/esm/components/QueryEditor/EditorStack.js +1 -1
  99. package/dist/esm/components/QueryEditor/EditorStack.js.map +1 -1
  100. package/dist/esm/components/QueryEditor/EditorSwitch.js +2 -2
  101. package/dist/esm/components/QueryEditor/EditorSwitch.js.map +1 -1
  102. package/dist/esm/components/QueryEditor/FlexItem.js.map +1 -1
  103. package/dist/esm/components/QueryEditor/InlineSelect.js +1 -1
  104. package/dist/esm/components/QueryEditor/InlineSelect.js.map +1 -1
  105. package/dist/esm/components/QueryEditor/InputGroup.js +2 -2
  106. package/dist/esm/components/QueryEditor/InputGroup.js.map +1 -1
  107. package/dist/esm/components/QueryEditor/QueryEditor.js +10 -8
  108. package/dist/esm/components/QueryEditor/QueryEditor.js.map +1 -1
  109. package/dist/esm/components/QueryEditor/QueryHeader.js +20 -20
  110. package/dist/esm/components/QueryEditor/QueryHeader.js.map +1 -1
  111. package/dist/esm/components/QueryEditor/RunQueryButton.js +1 -1
  112. package/dist/esm/components/QueryEditor/RunQueryButton.js.map +1 -1
  113. package/dist/esm/components/QueryEditor/Space.js +2 -2
  114. package/dist/esm/components/QueryEditor/Space.js.map +1 -1
  115. package/dist/esm/components/QueryEditor/TableSelector.js +0 -1
  116. package/dist/esm/components/QueryEditor/TableSelector.js.map +1 -1
  117. package/dist/esm/components/QueryEditor/defaults.js +7 -7
  118. package/dist/esm/components/QueryEditor/defaults.js.map +1 -1
  119. package/dist/esm/components/QueryEditor/expressions.js.map +1 -1
  120. package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js +10 -2
  121. package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js.map +1 -1
  122. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js +7 -2
  123. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js.map +1 -1
  124. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js +4 -4
  125. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js.map +1 -1
  126. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js +14 -4
  127. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js.map +1 -1
  128. package/dist/esm/components/QueryEditor/types.js +0 -1
  129. package/dist/esm/components/QueryEditor/types.js.map +1 -1
  130. package/dist/esm/components/QueryEditor/utils/formatSQL.js +15 -4
  131. package/dist/esm/components/QueryEditor/utils/formatSQL.js.map +1 -1
  132. package/dist/esm/components/QueryEditor/utils/sql.utils.js +8 -8
  133. package/dist/esm/components/QueryEditor/utils/sql.utils.js.map +1 -1
  134. package/dist/esm/components/QueryEditor/utils/useSqlChange.js.map +1 -1
  135. package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js +26 -27
  136. package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js.map +1 -1
  137. package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js +3 -3
  138. package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js.map +1 -1
  139. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js +2 -2
  140. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js.map +1 -1
  141. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRows.js.map +1 -1
  142. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js +2 -2
  143. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js.map +1 -1
  144. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js +4 -4
  145. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js.map +1 -1
  146. package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js +4 -4
  147. package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js.map +1 -1
  148. package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js +0 -1
  149. package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js.map +1 -1
  150. package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js +2 -3
  151. package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js.map +1 -1
  152. package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js +0 -1
  153. package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js.map +1 -1
  154. package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js +0 -1
  155. package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js.map +1 -1
  156. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js +9 -9
  157. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js.map +1 -1
  158. package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js +10 -2
  159. package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js.map +1 -1
  160. package/dist/esm/components/QueryEditor/visual-query-builder/WhereRow.js.map +1 -1
  161. package/dist/esm/components/QueryEditorRow/QueryEditorRow.js.map +1 -1
  162. package/dist/esm/components/SQLEditor/components/SQLEditor.js +13 -13
  163. package/dist/esm/components/SQLEditor/components/SQLEditor.js.map +1 -1
  164. package/dist/esm/components/SQLEditor/hooks/useLatestCallback.js +1 -1
  165. package/dist/esm/components/SQLEditor/hooks/useLatestCallback.js.map +1 -1
  166. package/dist/esm/components/SQLEditor/mocks/Monaco.js.map +1 -1
  167. package/dist/esm/components/SQLEditor/mocks/TextModel.js.map +1 -1
  168. package/dist/esm/components/SQLEditor/mocks/queries/multiLineFullQuery.js.map +1 -1
  169. package/dist/esm/components/SQLEditor/mocks/queries/multiLineFullQueryWithAggregation.js.map +1 -1
  170. package/dist/esm/components/SQLEditor/mocks/queries/multiLineMultipleColumns.js.map +1 -1
  171. package/dist/esm/components/SQLEditor/mocks/queries/singleLineEmptyQuery.js.map +1 -1
  172. package/dist/esm/components/SQLEditor/mocks/queries/singleLineFullQuery.js.map +1 -1
  173. package/dist/esm/components/SQLEditor/mocks/queries/singleLineFullQueryWithAggregation.js.map +1 -1
  174. package/dist/esm/components/SQLEditor/mocks/queries/singleLineMultipleColumns.js.map +1 -1
  175. package/dist/esm/components/SQLEditor/mocks/queries/singleLineTwoQueries.js.map +1 -1
  176. package/dist/esm/components/SQLEditor/mocks/queries/singleLineTwoQueriesWithAggregation.js.map +1 -1
  177. package/dist/esm/components/SQLEditor/standardSql/definition.js +0 -6
  178. package/dist/esm/components/SQLEditor/standardSql/definition.js.map +1 -1
  179. package/dist/esm/components/SQLEditor/standardSql/getStandardSuggestions.js +2 -2
  180. package/dist/esm/components/SQLEditor/standardSql/getStandardSuggestions.js.map +1 -1
  181. package/dist/esm/components/SQLEditor/standardSql/getStatementPosition.js +5 -4
  182. package/dist/esm/components/SQLEditor/standardSql/getStatementPosition.js.map +1 -1
  183. package/dist/esm/components/SQLEditor/standardSql/language.js.map +1 -1
  184. package/dist/esm/components/SQLEditor/standardSql/macros.js.map +1 -1
  185. package/dist/esm/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js +2 -2
  186. package/dist/esm/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js.map +1 -1
  187. package/dist/esm/components/SQLEditor/standardSql/standardSuggestionsRegistry.js +1 -1
  188. package/dist/esm/components/SQLEditor/standardSql/standardSuggestionsRegistry.js.map +1 -1
  189. package/dist/esm/components/SQLEditor/standardSql/statementPositionResolversRegistry.js +27 -26
  190. package/dist/esm/components/SQLEditor/standardSql/statementPositionResolversRegistry.js.map +1 -1
  191. package/dist/esm/components/SQLEditor/standardSql/suggestionsKindRegistry.js +1 -1
  192. package/dist/esm/components/SQLEditor/standardSql/suggestionsKindRegistry.js.map +1 -1
  193. package/dist/esm/components/SQLEditor/test-utils/index.js.map +1 -1
  194. package/dist/esm/components/SQLEditor/test-utils/statementPosition.js.map +1 -1
  195. package/dist/esm/components/SQLEditor/types.js +1 -17
  196. package/dist/esm/components/SQLEditor/types.js.map +1 -1
  197. package/dist/esm/components/SQLEditor/utils/LinkedToken.js +8 -8
  198. package/dist/esm/components/SQLEditor/utils/LinkedToken.js.map +1 -1
  199. package/dist/esm/components/SQLEditor/utils/commands.js.map +1 -1
  200. package/dist/esm/components/SQLEditor/utils/debugger.js +1 -1
  201. package/dist/esm/components/SQLEditor/utils/debugger.js.map +1 -1
  202. package/dist/esm/components/SQLEditor/utils/getSuggestionKind.js.map +1 -1
  203. package/dist/esm/components/SQLEditor/utils/linkedTokenBuilder.js +3 -3
  204. package/dist/esm/components/SQLEditor/utils/linkedTokenBuilder.js.map +1 -1
  205. package/dist/esm/components/SQLEditor/utils/toCompletionItem.js +1 -1
  206. package/dist/esm/components/SQLEditor/utils/toCompletionItem.js.map +1 -1
  207. package/dist/esm/components/SQLEditor/utils/tokenType.js +18 -0
  208. package/dist/esm/components/SQLEditor/utils/tokenType.js.map +1 -0
  209. package/dist/esm/components/SQLEditor/utils/tokenUtils.js +10 -10
  210. package/dist/esm/components/SQLEditor/utils/tokenUtils.js.map +1 -1
  211. package/dist/esm/components/Segment/Segment.js.map +1 -1
  212. package/dist/esm/components/VisualQueryBuilder/QueryModellerBase.js +2 -2
  213. package/dist/esm/components/VisualQueryBuilder/QueryModellerBase.js.map +1 -1
  214. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js +11 -11
  215. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js.map +1 -1
  216. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js +1 -1
  217. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js.map +1 -1
  218. package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js +4 -4
  219. package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js.map +1 -1
  220. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js +3 -3
  221. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js.map +1 -1
  222. package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js +3 -3
  223. package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js.map +1 -1
  224. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js +2 -2
  225. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js.map +1 -1
  226. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js +2 -2
  227. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js.map +1 -1
  228. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js +4 -4
  229. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js.map +1 -1
  230. package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js +2 -2
  231. package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js.map +1 -1
  232. package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js +6 -6
  233. package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js.map +1 -1
  234. package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js +3 -3
  235. package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js.map +1 -1
  236. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js +8 -8
  237. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js.map +1 -1
  238. package/dist/esm/components/VisualQueryBuilder/components/QueryEditorModeToggle.js.map +1 -1
  239. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js +3 -3
  240. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js.map +1 -1
  241. package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js +1 -1
  242. package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js.map +1 -1
  243. package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js +2 -2
  244. package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js.map +1 -1
  245. package/dist/esm/components/VisualQueryBuilder/types.js.map +1 -1
  246. package/dist/esm/datasource/SqlDatasource.js +14 -14
  247. package/dist/esm/datasource/SqlDatasource.js.map +1 -1
  248. package/dist/esm/datasource/constants.js.map +1 -1
  249. package/dist/esm/datasource/schema/config.js +235 -0
  250. package/dist/esm/datasource/schema/config.js.map +1 -0
  251. package/dist/esm/datasource/schema/datasource.js +228 -0
  252. package/dist/esm/datasource/schema/datasource.js.map +1 -0
  253. package/dist/esm/datasource/schema/llmHints.js +54 -0
  254. package/dist/esm/datasource/schema/llmHints.js.map +1 -0
  255. package/dist/esm/datasource/schema/provisioningYaml.js +358 -0
  256. package/dist/esm/datasource/schema/provisioningYaml.js.map +1 -0
  257. package/dist/esm/hooks/useDebounce.js.map +1 -1
  258. package/dist/esm/index.d.ts +553 -39
  259. package/dist/esm/index.js +7 -1
  260. package/dist/esm/index.js.map +1 -1
  261. package/dist/esm/test/mocks/DataQuery.js.map +1 -1
  262. package/dist/esm/test/mocks/Datasource.js +1 -1
  263. package/dist/esm/test/mocks/Datasource.js.map +1 -1
  264. package/dist/esm/test/mocks/Plugin.js +1 -1
  265. package/dist/esm/test/mocks/Plugin.js.map +1 -1
  266. package/dist/esm/test/mocks/QueryEditorProps.js.map +1 -1
  267. package/dist/esm/test/mocks/utils.js +2 -2
  268. package/dist/esm/test/mocks/utils.js.map +1 -1
  269. package/dist/esm/test-utils.d.ts +1 -1
  270. package/package.json +23 -20
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"DataQuery.js","sources":["../../../../src/test/mocks/DataQuery.ts"],"sourcesContent":["import { type DataQuery } from '@grafana/data';\nimport { Chance } from 'chance';\nimport { undefinedOr } from './utils';\n\nexport const mockDataQuery = (): DataQuery => ({\n refId: Chance().word(),\n hide: false,\n key: Chance().guid(),\n queryType: Chance().word(),\n datasource: undefinedOr(() => Chance().word()),\n});\n"],"names":[],"mappings":";;;;AAIO,MAAM,gBAAgB,OAAkB;AAAA,EAC7C,KAAA,EAAO,MAAO,EAAA,CAAE,IAAK,EAAA;AAAA,EACrB,IAAM,EAAA,KAAA;AAAA,EACN,GAAA,EAAK,MAAO,EAAA,CAAE,IAAK,EAAA;AAAA,EACnB,SAAA,EAAW,MAAO,EAAA,CAAE,IAAK,EAAA;AAAA,EACzB,YAAY,WAAY,CAAA,MAAM,MAAO,EAAA,CAAE,MAAM;AAC/C,CAAA;;;;"}
1
+ {"version":3,"file":"DataQuery.js","sources":["../../../../src/test/mocks/DataQuery.ts"],"sourcesContent":["import { type DataQuery } from '@grafana/data';\nimport { Chance } from 'chance';\nimport { undefinedOr } from './utils';\n\nexport const mockDataQuery = (): DataQuery => ({\n refId: Chance().word(),\n hide: false,\n key: Chance().guid(),\n queryType: Chance().word(),\n datasource: undefinedOr(() => Chance().word()),\n});\n"],"names":[],"mappings":";;;;AAIO,MAAM,gBAAgB,OAAkB;AAAA,EAC7C,KAAA,EAAO,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,EACrB,IAAA,EAAM,KAAA;AAAA,EACN,GAAA,EAAK,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,EACnB,SAAA,EAAW,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,EACzB,YAAY,WAAA,CAAY,MAAM,MAAA,EAAO,CAAE,MAAM;AAC/C,CAAA;;;;"}
@@ -2,7 +2,7 @@ import '@grafana/data';
2
2
  import { DataSourceWithBackend } from '@grafana/runtime';
3
3
  import { Chance } from 'chance';
4
4
  import { mockDataSourcePluginMeta } from './Plugin.js';
5
- import { generateBoolean, undefinedOr } from './utils.js';
5
+ import { undefinedOr, generateBoolean } from './utils.js';
6
6
 
7
7
  var __defProp = Object.defineProperty;
8
8
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
@@ -1 +1 @@
1
- {"version":3,"file":"Datasource.js","sources":["../../../../src/test/mocks/Datasource.ts"],"sourcesContent":["import { type DataSourceInstanceSettings, type QueryHint } from '@grafana/data';\nimport { DataSourceWithBackend } from '@grafana/runtime';\nimport { Chance } from 'chance';\nimport { mockDataSourcePluginMeta } from './Plugin';\nimport { generateBoolean, undefinedOr } from './utils';\n\nclass DatasourceMock extends DataSourceWithBackend {\n // DataSourceWithBackend\n query = jest.fn();\n filterQuery = undefinedOr(generateBoolean);\n applyTemplateVariables = jest.fn();\n getResource = jest.fn();\n postResource = jest.fn();\n callHealthCheck = jest.fn();\n testDatasource = jest.fn();\n // DataSourceApi\n uid = Chance().guid();\n name = Chance().word();\n id = 1;\n type = Chance().word();\n interval = Chance().word();\n importQueries = jest.fn();\n init = jest.fn();\n getQueryHints = jest.fn().mockReturnValue([mockQueryHint()]);\n getQueryDisplayText = jest.fn().mockReturnValue(Chance().word());\n metricFindQuery = jest.fn();\n getTagKeys = jest.fn();\n getTagValues = jest.fn();\n components = {};\n meta = mockDataSourcePluginMeta();\n targetContainsTemplate = jest.fn();\n modifyQuery = jest.fn();\n getHighlighterExpression = jest.fn();\n languageProvider = jest.fn();\n getVersion = jest.fn();\n interpolateVariablesInQueries = jest.fn();\n annotations = {};\n annotationQuery = jest.fn();\n streamOptionsProvider = jest.fn();\n getRef = jest.fn();\n protected getRequestHeaders = jest.fn();\n}\n\nexport const mockDatasource = () => new DatasourceMock(mockDatasourceInstanceSettings());\n\nconst mockQueryHint = (): QueryHint => ({\n type: Chance().word(),\n label: Chance().word(),\n fix: {\n label: Chance().word(),\n action: {\n type: Chance().word(),\n query: Chance().word(),\n preventSubmit: generateBoolean(),\n },\n },\n});\n\nexport const mockDatasourceInstanceSettings = (): DataSourceInstanceSettings => ({\n id: Chance().integer(),\n uid: Chance().word(),\n type: Chance().word(),\n name: Chance().word(),\n meta: mockDataSourcePluginMeta(),\n url: Chance().word(),\n jsonData: {},\n username: Chance().word(),\n password: Chance().word(),\n database: Chance().word(),\n basicAuth: Chance().word(),\n withCredentials: generateBoolean(),\n access: Chance().pickone(['direct', 'proxy']),\n readOnly: false,\n});\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Datasource.js","sources":["../../../../src/test/mocks/Datasource.ts"],"sourcesContent":["import { type DataSourceInstanceSettings, type QueryHint } from '@grafana/data';\nimport { DataSourceWithBackend } from '@grafana/runtime';\nimport { Chance } from 'chance';\nimport { mockDataSourcePluginMeta } from './Plugin';\nimport { generateBoolean, undefinedOr } from './utils';\n\nclass DatasourceMock extends DataSourceWithBackend {\n // DataSourceWithBackend\n query = jest.fn();\n filterQuery = undefinedOr(generateBoolean);\n applyTemplateVariables = jest.fn();\n getResource = jest.fn();\n postResource = jest.fn();\n callHealthCheck = jest.fn();\n testDatasource = jest.fn();\n // DataSourceApi\n uid = Chance().guid();\n name = Chance().word();\n id = 1;\n type = Chance().word();\n interval = Chance().word();\n importQueries = jest.fn();\n init = jest.fn();\n getQueryHints = jest.fn().mockReturnValue([mockQueryHint()]);\n getQueryDisplayText = jest.fn().mockReturnValue(Chance().word());\n metricFindQuery = jest.fn();\n getTagKeys = jest.fn();\n getTagValues = jest.fn();\n components = {};\n meta = mockDataSourcePluginMeta();\n targetContainsTemplate = jest.fn();\n modifyQuery = jest.fn();\n getHighlighterExpression = jest.fn();\n languageProvider = jest.fn();\n getVersion = jest.fn();\n interpolateVariablesInQueries = jest.fn();\n annotations = {};\n annotationQuery = jest.fn();\n streamOptionsProvider = jest.fn();\n getRef = jest.fn();\n protected getRequestHeaders = jest.fn();\n}\n\nexport const mockDatasource = () => new DatasourceMock(mockDatasourceInstanceSettings());\n\nconst mockQueryHint = (): QueryHint => ({\n type: Chance().word(),\n label: Chance().word(),\n fix: {\n label: Chance().word(),\n action: {\n type: Chance().word(),\n query: Chance().word(),\n preventSubmit: generateBoolean(),\n },\n },\n});\n\nexport const mockDatasourceInstanceSettings = (): DataSourceInstanceSettings => ({\n id: Chance().integer(),\n uid: Chance().word(),\n type: Chance().word(),\n name: Chance().word(),\n meta: mockDataSourcePluginMeta(),\n url: Chance().word(),\n jsonData: {},\n username: Chance().word(),\n password: Chance().word(),\n database: Chance().word(),\n basicAuth: Chance().word(),\n withCredentials: generateBoolean(),\n access: Chance().pickone(['direct', 'proxy']),\n readOnly: false,\n});\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Chance } from 'chance';
2
- import { PluginType, PluginIncludeType, PluginState, PluginSignatureStatus } from '@grafana/data';
2
+ import { PluginIncludeType, PluginSignatureStatus, PluginState, PluginType } from '@grafana/data';
3
3
  import { generateBoolean } from './utils.js';
4
4
 
5
5
  const mockDataSourcePluginMeta = () => ({
@@ -1 +1 @@
1
- {"version":3,"file":"Plugin.js","sources":["../../../../src/test/mocks/Plugin.ts"],"sourcesContent":["import { Chance } from 'chance';\nimport {\n type DataSourcePluginMeta,\n type PluginMetaInfo,\n type PluginMeta,\n PluginState,\n PluginSignatureStatus,\n type PluginInclude,\n PluginIncludeType,\n type PluginDependencies,\n PluginType,\n} from '@grafana/data';\nimport { generateBoolean } from './utils';\n\nexport const mockDataSourcePluginMeta = (): DataSourcePluginMeta => ({\n builtIn: generateBoolean(),\n metrics: generateBoolean(),\n logs: generateBoolean(),\n annotations: generateBoolean(),\n alerting: generateBoolean(),\n tracing: generateBoolean(),\n mixed: generateBoolean(),\n hasQueryHelp: generateBoolean(),\n category: Chance().word(),\n queryOptions: {\n cacheTimeout: generateBoolean(),\n maxDataPoints: generateBoolean(),\n minInterval: generateBoolean(),\n },\n sort: 1,\n streaming: generateBoolean(),\n unlicensed: generateBoolean(),\n id: Chance().word(),\n name: Chance().word(),\n type: mockPluginType(),\n info: mockPluginMetaInfo(),\n module: Chance().word(),\n baseUrl: Chance().word(),\n});\n\nexport const mockPluginMetaInfo = (): PluginMetaInfo => ({\n author: {\n name: Chance().word(),\n url: Chance().word(),\n },\n description: Chance().word(),\n links: [],\n logos: {\n large: Chance().word(),\n small: Chance().word(),\n },\n screenshots: [],\n updated: Chance().word(),\n version: Chance().word(),\n});\n\nexport const mockPluginMeta = (): PluginMeta => ({\n id: Chance().word(),\n name: Chance().word(),\n type: mockPluginType(),\n info: mockPluginMetaInfo(),\n includes: [mockPluginInclude()],\n state: mockPluginState(),\n module: Chance().word(),\n baseUrl: Chance().word(),\n dependencies: mockPluginDependencies(),\n jsonData: {},\n secureJsonData: {},\n enabled: generateBoolean(),\n defaultNavUrl: Chance().word(),\n hasUpdate: generateBoolean(),\n enterprise: generateBoolean(),\n latestVersion: Chance().word(),\n pinned: generateBoolean(),\n signature: mockPluginSignatureStatus(),\n live: generateBoolean(),\n});\n\nexport const mockPluginInclude = (): PluginInclude => ({\n type: mockPluginIncludeType(),\n name: Chance().word(),\n path: Chance().word(),\n icon: Chance().word(),\n role: Chance().word(),\n addToNav: generateBoolean(),\n component: Chance().word(),\n});\n\nexport const mockPluginType = (): PluginType =>\n Chance().pickone([PluginType.panel, PluginType.datasource, PluginType.app, PluginType.renderer]);\n\nexport const mockPluginIncludeType = (): PluginIncludeType =>\n Chance().pickone([\n PluginIncludeType.dashboard,\n PluginIncludeType.page,\n PluginIncludeType.panel,\n PluginIncludeType.datasource,\n ]);\n\nexport const mockPluginState = (): PluginState =>\n Chance().pickone([PluginState.alpha, PluginState.beta, PluginState.deprecated]);\n\nexport const mockPluginDependencies = (): PluginDependencies => ({\n grafanaVersion: Chance().word(),\n plugins: [],\n});\n\nexport const mockPluginSignatureStatus = (): PluginSignatureStatus =>\n Chance().pickone([\n PluginSignatureStatus.internal,\n PluginSignatureStatus.valid,\n PluginSignatureStatus.invalid,\n PluginSignatureStatus.modified,\n PluginSignatureStatus.missing,\n ]);\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Plugin.js","sources":["../../../../src/test/mocks/Plugin.ts"],"sourcesContent":["import { Chance } from 'chance';\nimport {\n type DataSourcePluginMeta,\n type PluginMetaInfo,\n type PluginMeta,\n PluginState,\n PluginSignatureStatus,\n type PluginInclude,\n PluginIncludeType,\n type PluginDependencies,\n PluginType,\n} from '@grafana/data';\nimport { generateBoolean } from './utils';\n\nexport const mockDataSourcePluginMeta = (): DataSourcePluginMeta => ({\n builtIn: generateBoolean(),\n metrics: generateBoolean(),\n logs: generateBoolean(),\n annotations: generateBoolean(),\n alerting: generateBoolean(),\n tracing: generateBoolean(),\n mixed: generateBoolean(),\n hasQueryHelp: generateBoolean(),\n category: Chance().word(),\n queryOptions: {\n cacheTimeout: generateBoolean(),\n maxDataPoints: generateBoolean(),\n minInterval: generateBoolean(),\n },\n sort: 1,\n streaming: generateBoolean(),\n unlicensed: generateBoolean(),\n id: Chance().word(),\n name: Chance().word(),\n type: mockPluginType(),\n info: mockPluginMetaInfo(),\n module: Chance().word(),\n baseUrl: Chance().word(),\n});\n\nexport const mockPluginMetaInfo = (): PluginMetaInfo => ({\n author: {\n name: Chance().word(),\n url: Chance().word(),\n },\n description: Chance().word(),\n links: [],\n logos: {\n large: Chance().word(),\n small: Chance().word(),\n },\n screenshots: [],\n updated: Chance().word(),\n version: Chance().word(),\n});\n\nexport const mockPluginMeta = (): PluginMeta => ({\n id: Chance().word(),\n name: Chance().word(),\n type: mockPluginType(),\n info: mockPluginMetaInfo(),\n includes: [mockPluginInclude()],\n state: mockPluginState(),\n module: Chance().word(),\n baseUrl: Chance().word(),\n dependencies: mockPluginDependencies(),\n jsonData: {},\n secureJsonData: {},\n enabled: generateBoolean(),\n defaultNavUrl: Chance().word(),\n hasUpdate: generateBoolean(),\n enterprise: generateBoolean(),\n latestVersion: Chance().word(),\n pinned: generateBoolean(),\n signature: mockPluginSignatureStatus(),\n live: generateBoolean(),\n});\n\nexport const mockPluginInclude = (): PluginInclude => ({\n type: mockPluginIncludeType(),\n name: Chance().word(),\n path: Chance().word(),\n icon: Chance().word(),\n role: Chance().word(),\n addToNav: generateBoolean(),\n component: Chance().word(),\n});\n\nexport const mockPluginType = (): PluginType =>\n Chance().pickone([PluginType.panel, PluginType.datasource, PluginType.app, PluginType.renderer]);\n\nexport const mockPluginIncludeType = (): PluginIncludeType =>\n Chance().pickone([\n PluginIncludeType.dashboard,\n PluginIncludeType.page,\n PluginIncludeType.panel,\n PluginIncludeType.datasource,\n ]);\n\nexport const mockPluginState = (): PluginState =>\n Chance().pickone([PluginState.alpha, PluginState.beta, PluginState.deprecated]);\n\nexport const mockPluginDependencies = (): PluginDependencies => ({\n grafanaVersion: Chance().word(),\n plugins: [],\n});\n\nexport const mockPluginSignatureStatus = (): PluginSignatureStatus =>\n Chance().pickone([\n PluginSignatureStatus.internal,\n PluginSignatureStatus.valid,\n PluginSignatureStatus.invalid,\n PluginSignatureStatus.modified,\n PluginSignatureStatus.missing,\n ]);\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"QueryEditorProps.js","sources":["../../../../src/test/mocks/QueryEditorProps.ts"],"sourcesContent":["import { type QueryEditorProps, DataTopic, dateTime, LoadingState, type TimeRange } from '@grafana/data';\nimport { Chance } from 'chance';\n\nexport const mockQueryEditorProps = (): QueryEditorProps<any, any, any> => ({\n datasource: {},\n query: {\n refId: Chance().word(),\n hide: false,\n key: Chance().word(),\n queryType: Chance().word(),\n dataTopic: DataTopic.Annotations,\n datasource: Chance().pickone([Chance().word(), null]),\n },\n onRunQuery: jest.fn(),\n onChange: jest.fn(),\n onBlur: jest.fn(),\n data: {\n state: mockLoadingState(),\n series: [],\n annotations: [],\n timeRange: mockTimeRange(),\n },\n range: mockTimeRange(),\n history: [],\n});\n\nexport const mockLoadingState = (): LoadingState =>\n Chance().pickone([\n LoadingState.NotStarted,\n LoadingState.Loading,\n LoadingState.Streaming,\n LoadingState.Done,\n LoadingState.Error,\n ]);\n\nexport const mockTimeRange = (): TimeRange => ({\n from: dateTime(),\n to: dateTime(),\n raw: {\n from: dateTime(),\n to: dateTime(),\n },\n});\n"],"names":[],"mappings":";;;AAGO,MAAM,uBAAuB,OAAwC;AAAA,EAC1E,YAAY,EAAC;AAAA,EACb,KAAO,EAAA;AAAA,IACL,KAAA,EAAO,MAAO,EAAA,CAAE,IAAK,EAAA;AAAA,IACrB,IAAM,EAAA,KAAA;AAAA,IACN,GAAA,EAAK,MAAO,EAAA,CAAE,IAAK,EAAA;AAAA,IACnB,SAAA,EAAW,MAAO,EAAA,CAAE,IAAK,EAAA;AAAA,IACzB,WAAW,SAAU,CAAA,WAAA;AAAA,IACrB,UAAA,EAAY,MAAO,EAAA,CAAE,OAAQ,CAAA,CAAC,QAAS,CAAA,IAAA,EAAQ,EAAA,IAAI,CAAC;AAAA,GACtD;AAAA,EACA,UAAA,EAAY,KAAK,EAAG,EAAA;AAAA,EACpB,QAAA,EAAU,KAAK,EAAG,EAAA;AAAA,EAClB,MAAA,EAAQ,KAAK,EAAG,EAAA;AAAA,EAChB,IAAM,EAAA;AAAA,IACJ,OAAO,gBAAiB,EAAA;AAAA,IACxB,QAAQ,EAAC;AAAA,IACT,aAAa,EAAC;AAAA,IACd,WAAW,aAAc;AAAA,GAC3B;AAAA,EACA,OAAO,aAAc,EAAA;AAAA,EACrB,SAAS;AACX,CAAA;AAEO,MAAM,gBAAmB,GAAA,MAC9B,MAAO,EAAA,CAAE,OAAQ,CAAA;AAAA,EACf,YAAa,CAAA,UAAA;AAAA,EACb,YAAa,CAAA,OAAA;AAAA,EACb,YAAa,CAAA,SAAA;AAAA,EACb,YAAa,CAAA,IAAA;AAAA,EACb,YAAa,CAAA;AACf,CAAC;AAEI,MAAM,gBAAgB,OAAkB;AAAA,EAC7C,MAAM,QAAS,EAAA;AAAA,EACf,IAAI,QAAS,EAAA;AAAA,EACb,GAAK,EAAA;AAAA,IACH,MAAM,QAAS,EAAA;AAAA,IACf,IAAI,QAAS;AAAA;AAEjB,CAAA;;;;"}
1
+ {"version":3,"file":"QueryEditorProps.js","sources":["../../../../src/test/mocks/QueryEditorProps.ts"],"sourcesContent":["import { type QueryEditorProps, DataTopic, dateTime, LoadingState, type TimeRange } from '@grafana/data';\nimport { Chance } from 'chance';\n\nexport const mockQueryEditorProps = (): QueryEditorProps<any, any, any> => ({\n datasource: {},\n query: {\n refId: Chance().word(),\n hide: false,\n key: Chance().word(),\n queryType: Chance().word(),\n dataTopic: DataTopic.Annotations,\n datasource: Chance().pickone([Chance().word(), null]),\n },\n onRunQuery: jest.fn(),\n onChange: jest.fn(),\n onBlur: jest.fn(),\n data: {\n state: mockLoadingState(),\n series: [],\n annotations: [],\n timeRange: mockTimeRange(),\n },\n range: mockTimeRange(),\n history: [],\n});\n\nexport const mockLoadingState = (): LoadingState =>\n Chance().pickone([\n LoadingState.NotStarted,\n LoadingState.Loading,\n LoadingState.Streaming,\n LoadingState.Done,\n LoadingState.Error,\n ]);\n\nexport const mockTimeRange = (): TimeRange => ({\n from: dateTime(),\n to: dateTime(),\n raw: {\n from: dateTime(),\n to: dateTime(),\n },\n});\n"],"names":[],"mappings":";;;AAGO,MAAM,uBAAuB,OAAwC;AAAA,EAC1E,YAAY,EAAC;AAAA,EACb,KAAA,EAAO;AAAA,IACL,KAAA,EAAO,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,IACrB,IAAA,EAAM,KAAA;AAAA,IACN,GAAA,EAAK,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,IACnB,SAAA,EAAW,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,IACzB,WAAW,SAAA,CAAU,WAAA;AAAA,IACrB,UAAA,EAAY,MAAA,EAAO,CAAE,OAAA,CAAQ,CAAC,QAAO,CAAE,IAAA,EAAK,EAAG,IAAI,CAAC;AAAA,GACtD;AAAA,EACA,UAAA,EAAY,KAAK,EAAA,EAAG;AAAA,EACpB,QAAA,EAAU,KAAK,EAAA,EAAG;AAAA,EAClB,MAAA,EAAQ,KAAK,EAAA,EAAG;AAAA,EAChB,IAAA,EAAM;AAAA,IACJ,OAAO,gBAAA,EAAiB;AAAA,IACxB,QAAQ,EAAC;AAAA,IACT,aAAa,EAAC;AAAA,IACd,WAAW,aAAA;AAAc,GAC3B;AAAA,EACA,OAAO,aAAA,EAAc;AAAA,EACrB,SAAS;AACX,CAAA;AAEO,MAAM,gBAAA,GAAmB,MAC9B,MAAA,EAAO,CAAE,OAAA,CAAQ;AAAA,EACf,YAAA,CAAa,UAAA;AAAA,EACb,YAAA,CAAa,OAAA;AAAA,EACb,YAAA,CAAa,SAAA;AAAA,EACb,YAAA,CAAa,IAAA;AAAA,EACb,YAAA,CAAa;AACf,CAAC;AAEI,MAAM,gBAAgB,OAAkB;AAAA,EAC7C,MAAM,QAAA,EAAS;AAAA,EACf,IAAI,QAAA,EAAS;AAAA,EACb,GAAA,EAAK;AAAA,IACH,MAAM,QAAA,EAAS;AAAA,IACf,IAAI,QAAA;AAAS;AAEjB,CAAA;;;;"}
@@ -5,7 +5,7 @@ import userEvent from '@testing-library/user-event';
5
5
  import { kebabCase } from 'lodash';
6
6
 
7
7
  const generateBoolean = () => Chance().pickone([true, false]);
8
- const undefinedOr = (fn) => Chance().pickone([undefined, fn()]);
8
+ const undefinedOr = (fn) => Chance().pickone([void 0, fn()]);
9
9
  const generateArrayOf = (fn, numberOf = 3) => Array.from(new Array(numberOf), () => fn());
10
10
  const openSelect = (container, optionLabel) => {
11
11
  const selectInput = within(container).getByRole("textbox");
@@ -13,7 +13,7 @@ const openSelect = (container, optionLabel) => {
13
13
  userEvent.type(selectInput, optionLabel != null ? optionLabel : "{arrowdown}");
14
14
  };
15
15
  const selectOption = async (container, optionLabel, typeOptionLabel) => {
16
- openSelect(container, typeOptionLabel ? optionLabel : undefined);
16
+ openSelect(container, typeOptionLabel ? optionLabel : void 0);
17
17
  const option = await waitFor(() => within(container).getByText(optionLabel));
18
18
  userEvent.click(option);
19
19
  };
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../src/test/mocks/utils.ts"],"sourcesContent":["import { type SelectableValue } from '@grafana/data';\nimport { Chance } from 'chance';\nimport { within, fireEvent, waitFor } from '@testing-library/react';\nimport userEvent from '@testing-library/user-event';\nimport { kebabCase } from 'lodash';\n\nexport const generateBoolean = () => Chance().pickone([true, false]);\n\nexport const undefinedOr = (fn: Function) => Chance().pickone([undefined, fn()]);\n\nexport const generateArrayOf = (fn: Function, numberOf = 3) => Array.from(new Array(numberOf), () => fn());\n\n// react-select (used by @grafana/ui) renders very differently from the native Select HTML element\n// and because they are not accessible and do not pass data-testid or aria-labels down,\n// it is difficult to grab the correct element and simulate selecting different options\n// the helper functions below can be used instead\n\n/**\n * Opens a Select or MultiSelect dropdown\n *\n * @param {HTMLElement} container The container wrapping the Select or MultiSelect component\n * @param {string} optionLabel The option text we want to type or search\n */\nexport const openSelect = (container: HTMLElement, optionLabel?: string) => {\n const selectInput = within(container).getByRole('textbox');\n\n // this needs to be here to support autoFocus=true prop\n fireEvent.blur(selectInput);\n\n // if we have an async Select, we want to type the option label to make the option available\n // otherwise, just press down to open the dropdown\n userEvent.type(selectInput, optionLabel ?? '{arrowdown}');\n};\n\n/**\n * Selects an option from the Select or MultiSelect component\n *\n * @param {HTMLElement} container The container wrapping the Select or MultiSelect component\n * @param {string} optionLabel The option we want to select\n * @param {boolean} [typeOptionLabel=false] If we should type the optional label after opening - this is useful for AsyncSelect\n */\nexport const selectOption = async (container: HTMLElement, optionLabel: string, typeOptionLabel?: boolean) => {\n openSelect(container, typeOptionLabel ? optionLabel : undefined);\n\n // wait for the list to show\n const option = await waitFor(() => within(container).getByText(optionLabel));\n\n // select the option\n userEvent.click(option);\n};\n\nexport const generateOptions = (): Array<SelectableValue<string>> => {\n const numberOfOptions = 5;\n\n return Array.from(new Array(numberOfOptions), () => {\n const name = Chance().name();\n\n return {\n label: name,\n value: kebabCase(name),\n };\n });\n};\n"],"names":[],"mappings":";;;;;;AAMa,MAAA,eAAA,GAAkB,MAAM,MAAO,EAAA,CAAE,QAAQ,CAAC,IAAA,EAAM,KAAK,CAAC;AAEtD,MAAA,WAAA,GAAc,CAAC,EAAA,KAAiB,MAAO,EAAA,CAAE,QAAQ,CAAC,SAAA,EAAW,EAAG,EAAC,CAAC;AAExE,MAAM,eAAkB,GAAA,CAAC,EAAc,EAAA,QAAA,GAAW,CAAM,KAAA,KAAA,CAAM,IAAK,CAAA,IAAI,KAAM,CAAA,QAAQ,CAAG,EAAA,MAAM,IAAI;AAa5F,MAAA,UAAA,GAAa,CAAC,SAAA,EAAwB,WAAyB,KAAA;AAC1E,EAAA,MAAM,WAAc,GAAA,MAAA,CAAO,SAAS,CAAA,CAAE,UAAU,SAAS,CAAA;AAGzD,EAAA,SAAA,CAAU,KAAK,WAAW,CAAA;AAI1B,EAAU,SAAA,CAAA,IAAA,CAAK,WAAa,EAAA,WAAA,IAAA,IAAA,GAAA,WAAA,GAAe,aAAa,CAAA;AAC1D;AASO,MAAM,YAAe,GAAA,OAAO,SAAwB,EAAA,WAAA,EAAqB,eAA8B,KAAA;AAC5G,EAAW,UAAA,CAAA,SAAA,EAAW,eAAkB,GAAA,WAAA,GAAc,SAAS,CAAA;AAG/D,EAAM,MAAA,MAAA,GAAS,MAAM,OAAQ,CAAA,MAAM,OAAO,SAAS,CAAA,CAAE,SAAU,CAAA,WAAW,CAAC,CAAA;AAG3E,EAAA,SAAA,CAAU,MAAM,MAAM,CAAA;AACxB;AAEO,MAAM,kBAAkB,MAAsC;AACnE,EAAA,MAAM,eAAkB,GAAA,CAAA;AAExB,EAAA,OAAO,MAAM,IAAK,CAAA,IAAI,KAAM,CAAA,eAAe,GAAG,MAAM;AAClD,IAAM,MAAA,IAAA,GAAO,MAAO,EAAA,CAAE,IAAK,EAAA;AAE3B,IAAO,OAAA;AAAA,MACL,KAAO,EAAA,IAAA;AAAA,MACP,KAAA,EAAO,UAAU,IAAI;AAAA,KACvB;AAAA,GACD,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../src/test/mocks/utils.ts"],"sourcesContent":["import { type SelectableValue } from '@grafana/data';\nimport { Chance } from 'chance';\nimport { within, fireEvent, waitFor } from '@testing-library/react';\nimport userEvent from '@testing-library/user-event';\nimport { kebabCase } from 'lodash';\n\nexport const generateBoolean = () => Chance().pickone([true, false]);\n\nexport const undefinedOr = (fn: Function) => Chance().pickone([undefined, fn()]);\n\nexport const generateArrayOf = (fn: Function, numberOf = 3) => Array.from(new Array(numberOf), () => fn());\n\n// react-select (used by @grafana/ui) renders very differently from the native Select HTML element\n// and because they are not accessible and do not pass data-testid or aria-labels down,\n// it is difficult to grab the correct element and simulate selecting different options\n// the helper functions below can be used instead\n\n/**\n * Opens a Select or MultiSelect dropdown\n *\n * @param {HTMLElement} container The container wrapping the Select or MultiSelect component\n * @param {string} optionLabel The option text we want to type or search\n */\nexport const openSelect = (container: HTMLElement, optionLabel?: string) => {\n const selectInput = within(container).getByRole('textbox');\n\n // this needs to be here to support autoFocus=true prop\n fireEvent.blur(selectInput);\n\n // if we have an async Select, we want to type the option label to make the option available\n // otherwise, just press down to open the dropdown\n userEvent.type(selectInput, optionLabel ?? '{arrowdown}');\n};\n\n/**\n * Selects an option from the Select or MultiSelect component\n *\n * @param {HTMLElement} container The container wrapping the Select or MultiSelect component\n * @param {string} optionLabel The option we want to select\n * @param {boolean} [typeOptionLabel=false] If we should type the optional label after opening - this is useful for AsyncSelect\n */\nexport const selectOption = async (container: HTMLElement, optionLabel: string, typeOptionLabel?: boolean) => {\n openSelect(container, typeOptionLabel ? optionLabel : undefined);\n\n // wait for the list to show\n const option = await waitFor(() => within(container).getByText(optionLabel));\n\n // select the option\n userEvent.click(option);\n};\n\nexport const generateOptions = (): Array<SelectableValue<string>> => {\n const numberOfOptions = 5;\n\n return Array.from(new Array(numberOfOptions), () => {\n const name = Chance().name();\n\n return {\n label: name,\n value: kebabCase(name),\n };\n });\n};\n"],"names":[],"mappings":";;;;;;AAMO,MAAM,eAAA,GAAkB,MAAM,MAAA,EAAO,CAAE,QAAQ,CAAC,IAAA,EAAM,KAAK,CAAC;AAE5D,MAAM,WAAA,GAAc,CAAC,EAAA,KAAiB,MAAA,EAAO,CAAE,QAAQ,CAAC,MAAA,EAAW,EAAA,EAAI,CAAC;AAExE,MAAM,eAAA,GAAkB,CAAC,EAAA,EAAc,QAAA,GAAW,CAAA,KAAM,KAAA,CAAM,IAAA,CAAK,IAAI,KAAA,CAAM,QAAQ,CAAA,EAAG,MAAM,IAAI;AAalG,MAAM,UAAA,GAAa,CAAC,SAAA,EAAwB,WAAA,KAAyB;AAC1E,EAAA,MAAM,WAAA,GAAc,MAAA,CAAO,SAAS,CAAA,CAAE,UAAU,SAAS,CAAA;AAGzD,EAAA,SAAA,CAAU,KAAK,WAAW,CAAA;AAI1B,EAAA,SAAA,CAAU,IAAA,CAAK,WAAA,EAAa,WAAA,IAAA,IAAA,GAAA,WAAA,GAAe,aAAa,CAAA;AAC1D;AASO,MAAM,YAAA,GAAe,OAAO,SAAA,EAAwB,WAAA,EAAqB,eAAA,KAA8B;AAC5G,EAAA,UAAA,CAAW,SAAA,EAAW,eAAA,GAAkB,WAAA,GAAc,MAAS,CAAA;AAG/D,EAAA,MAAM,MAAA,GAAS,MAAM,OAAA,CAAQ,MAAM,OAAO,SAAS,CAAA,CAAE,SAAA,CAAU,WAAW,CAAC,CAAA;AAG3E,EAAA,SAAA,CAAU,MAAM,MAAM,CAAA;AACxB;AAEO,MAAM,kBAAkB,MAAsC;AACnE,EAAA,MAAM,eAAA,GAAkB,CAAA;AAExB,EAAA,OAAO,MAAM,IAAA,CAAK,IAAI,KAAA,CAAM,eAAe,GAAG,MAAM;AAClD,IAAA,MAAM,IAAA,GAAO,MAAA,EAAO,CAAE,IAAA,EAAK;AAE3B,IAAA,OAAO;AAAA,MACL,KAAA,EAAO,IAAA;AAAA,MACP,KAAA,EAAO,UAAU,IAAI;AAAA,KACvB;AAAA,EACF,CAAC,CAAA;AACH;;;;"}
@@ -1,5 +1,5 @@
1
1
  import * as _grafana_data from '@grafana/data';
2
- import { DataSourceInstanceSettings, DataQuery, DataSourcePluginMeta, PluginMetaInfo, PluginMeta, PluginInclude, PluginType, PluginIncludeType, PluginState, PluginDependencies, PluginSignatureStatus, QueryEditorProps, LoadingState, TimeRange, SelectableValue } from '@grafana/data';
2
+ import { DataSourceInstanceSettings, DataQuery, DataSourcePluginMeta, PluginDependencies, PluginInclude, PluginIncludeType, PluginMeta, PluginMetaInfo, PluginSignatureStatus, PluginState, PluginType, LoadingState, QueryEditorProps, TimeRange, SelectableValue } from '@grafana/data';
3
3
  import { DataSourceWithBackend } from '@grafana/runtime';
4
4
 
5
5
  declare class DatasourceMock extends DataSourceWithBackend {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grafana/plugin-ui",
3
- "version": "0.13.1",
3
+ "version": "0.14.1-dsconfig.b962e11",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+ssh://git@github.com/grafana/plugin-ui.git"
@@ -62,13 +62,15 @@
62
62
  "@react-awesome-query-builder/ui": "^6.6.4",
63
63
  "@types/prismjs": "^1.26.4",
64
64
  "chance": "^1.1.7",
65
- "lodash": "^4.17.21",
65
+ "js-yaml": "^4.1.0",
66
+ "lodash": "^4.18.1",
66
67
  "prismjs": "^1.30.0",
67
68
  "react-calendar": "^4.8.0",
69
+ "react-hook-form": "^7.52.0",
68
70
  "react-popper-tooltip": "^4.4.2",
69
71
  "react-use": "^17.3.1",
70
72
  "react-virtualized-auto-sizer": "^1.0.6",
71
- "sql-formatter-plus": "^1.3.6",
73
+ "sql-formatter": "^15.7.0",
72
74
  "uuid": "^11.0.0"
73
75
  },
74
76
  "devDependencies": {
@@ -77,20 +79,16 @@
77
79
  "@grafana/e2e-selectors": "^10.4.0",
78
80
  "@grafana/eslint-config": "^8.0.0",
79
81
  "@grafana/runtime": "^10.4.0",
80
- "@grafana/tsconfig": "^1.3.0-rc1",
82
+ "@grafana/tsconfig": "^2.0.0",
81
83
  "@grafana/ui": "^10.4.0",
82
- "@rollup/plugin-commonjs": "^28.0.2",
84
+ "@rollup/plugin-commonjs": "^29.0.0",
83
85
  "@rollup/plugin-node-resolve": "^16.0.0",
84
- "@storybook/addon-actions": "^8.5.2",
85
- "@storybook/addon-essentials": "^8.5.2",
86
- "@storybook/addon-links": "^8.5.2",
87
- "@storybook/addon-mdx-gfm": "^8.5.2",
88
- "@storybook/addon-webpack5-compiler-swc": "^2.0.0",
89
- "@storybook/addons": "^6.5.16",
90
- "@storybook/react": "^8.5.2",
91
- "@storybook/react-webpack5": "^8.5.2",
92
- "@storybook/theming": "^8.5.2",
86
+ "@storybook/addon-docs": "10.2.5",
87
+ "@storybook/addon-links": "10.2.5",
88
+ "@storybook/addon-webpack5-compiler-swc": "4.0.2",
89
+ "@storybook/react-webpack5": "10.2.5",
93
90
  "@stylistic/eslint-plugin-ts": "^2.9.0",
91
+ "@swc/core": "1.15.11",
94
92
  "@swc/jest": "^0.2.37",
95
93
  "@testing-library/jest-dom": "5.16.5",
96
94
  "@testing-library/react": "15.0.2",
@@ -128,15 +126,15 @@
128
126
  "rollup-plugin-esbuild": "^6.1.1",
129
127
  "rollup-plugin-node-externals": "^8.0.0",
130
128
  "rxjs": "^7.8.1",
131
- "storybook": "^8.5.2",
129
+ "storybook": "10.2.10",
132
130
  "ts-node": "^10.9.1",
133
131
  "typescript": "^5.7.3"
134
132
  },
135
133
  "peerDependencies": {
136
- "@grafana/data": ">=10.4.0",
137
- "@grafana/e2e-selectors": ">=10.4.0",
138
- "@grafana/runtime": ">=10.4.0",
139
- "@grafana/ui": ">=10.4.0",
134
+ "@grafana/data": ">=10.4.0-0",
135
+ "@grafana/e2e-selectors": ">=10.4.0-0",
136
+ "@grafana/runtime": ">=10.4.0-0",
137
+ "@grafana/ui": ">=10.4.0-0",
140
138
  "@testing-library/jest-dom": ">=5.16.5",
141
139
  "@testing-library/react": ">=15.0.2",
142
140
  "@testing-library/user-event": ">=14.5.2",
@@ -155,7 +153,12 @@
155
153
  "@babel/helpers": "^7.26.10",
156
154
  "brace-expansion": "^2.0.2",
157
155
  "diff": "^4.0.4",
158
- "js-yaml": "^4.1.1"
156
+ "js-yaml": "^4.1.1",
157
+ "immutable": "^4.3.8",
158
+ "minimatch@^3.0.0": "^3.1.3",
159
+ "lodash": "^4.18.1",
160
+ "dompurify": "^3.3.2",
161
+ "@tootallnate/once": "^3.0.1"
159
162
  },
160
163
  "packageManager": "yarn@4.6.0"
161
164
  }