@grafana/plugin-ui 0.14.1-dsconfig.f952c80 → 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 (672) hide show
  1. package/README.md +9 -3
  2. package/dist/cjs/index.cjs +11546 -7142
  3. package/dist/cjs/index.cjs.map +1 -1
  4. package/dist/cjs/index.d.cts +61 -653
  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 +1 -1
  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 +61 -653
  271. package/dist/esm/index.js +3 -11
  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 +1 -1
  482. package/package.json +73 -103
  483. package/dist/cjs/schemas.cjs +0 -25
  484. package/dist/cjs/schemas.cjs.map +0 -1
  485. package/dist/cjs/schemas.d.cts +0 -448
  486. package/dist/cjs/useDatasourceSchema-BWcU0Gkw.js +0 -16623
  487. package/dist/cjs/useDatasourceSchema-BWcU0Gkw.js.map +0 -1
  488. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js +0 -234
  489. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js.map +0 -1
  490. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceErrorBoundary.js +0 -27
  491. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceErrorBoundary.js.map +0 -1
  492. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js +0 -71
  493. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js.map +0 -1
  494. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js +0 -54
  495. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js.map +0 -1
  496. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js +0 -181
  497. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js.map +0 -1
  498. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/cel.js +0 -75
  499. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/cel.js.map +0 -1
  500. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/config.js +0 -258
  501. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/config.js.map +0 -1
  502. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/datasource.js +0 -354
  503. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/datasource.js.map +0 -1
  504. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js +0 -138
  505. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js.map +0 -1
  506. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useDatasourceConfigForm.js +0 -326
  507. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useDatasourceConfigForm.js.map +0 -1
  508. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useHealthChecks.js +0 -106
  509. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useHealthChecks.js.map +0 -1
  510. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/AuthorizationHeaderField.js +0 -51
  511. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/AuthorizationHeaderField.js.map +0 -1
  512. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ComplexFieldNote.js +0 -26
  513. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ComplexFieldNote.js.map +0 -1
  514. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/FileUploadField.js +0 -106
  515. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/FileUploadField.js.map +0 -1
  516. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/IndexedPairEditor.js +0 -124
  517. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/IndexedPairEditor.js.map +0 -1
  518. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ObjectArrayEditor.js +0 -190
  519. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ObjectArrayEditor.js.map +0 -1
  520. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/PdcFieldNote.js +0 -31
  521. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/PdcFieldNote.js.map +0 -1
  522. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/SecureFieldInput.js +0 -59
  523. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/SecureFieldInput.js.map +0 -1
  524. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/StringArrayInput.js +0 -80
  525. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/StringArrayInput.js.map +0 -1
  526. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/renderFieldInput.js +0 -141
  527. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/renderFieldInput.js.map +0 -1
  528. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/resolvePluginName.js +0 -30
  529. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/resolvePluginName.js.map +0 -1
  530. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/styles.js +0 -360
  531. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/styles.js.map +0 -1
  532. package/dist/esm/schema/registry/alertmanager.schema.json.js +0 -77
  533. package/dist/esm/schema/registry/alertmanager.schema.json.js.map +0 -1
  534. package/dist/esm/schema/registry/cloudwatch.schema.json.js +0 -384
  535. package/dist/esm/schema/registry/cloudwatch.schema.json.js.map +0 -1
  536. package/dist/esm/schema/registry/elasticsearch.schema.json.js +0 -597
  537. package/dist/esm/schema/registry/elasticsearch.schema.json.js.map +0 -1
  538. package/dist/esm/schema/registry/grafana-adobeanalytics-datasource.schema.json.js +0 -95
  539. package/dist/esm/schema/registry/grafana-adobeanalytics-datasource.schema.json.js.map +0 -1
  540. package/dist/esm/schema/registry/grafana-amazonprometheus-datasource.schema.json.js +0 -166
  541. package/dist/esm/schema/registry/grafana-amazonprometheus-datasource.schema.json.js.map +0 -1
  542. package/dist/esm/schema/registry/grafana-appdynamics-datasource.schema.json.js +0 -145
  543. package/dist/esm/schema/registry/grafana-appdynamics-datasource.schema.json.js.map +0 -1
  544. package/dist/esm/schema/registry/grafana-astradb-datasource.schema.json.js +0 -123
  545. package/dist/esm/schema/registry/grafana-astradb-datasource.schema.json.js.map +0 -1
  546. package/dist/esm/schema/registry/grafana-athena-datasource.schema.json.js +0 -158
  547. package/dist/esm/schema/registry/grafana-athena-datasource.schema.json.js.map +0 -1
  548. package/dist/esm/schema/registry/grafana-azure-data-explorer-datasource.schema.json.js +0 -204
  549. package/dist/esm/schema/registry/grafana-azure-data-explorer-datasource.schema.json.js.map +0 -1
  550. package/dist/esm/schema/registry/grafana-azure-monitor-datasource.schema.json.js +0 -300
  551. package/dist/esm/schema/registry/grafana-azure-monitor-datasource.schema.json.js.map +0 -1
  552. package/dist/esm/schema/registry/grafana-azuredevops-datasource.schema.json.js +0 -101
  553. package/dist/esm/schema/registry/grafana-azuredevops-datasource.schema.json.js.map +0 -1
  554. package/dist/esm/schema/registry/grafana-azureprometheus-datasource.schema.json.js +0 -125
  555. package/dist/esm/schema/registry/grafana-azureprometheus-datasource.schema.json.js.map +0 -1
  556. package/dist/esm/schema/registry/grafana-bigquery-datasource.schema.json.js +0 -508
  557. package/dist/esm/schema/registry/grafana-bigquery-datasource.schema.json.js.map +0 -1
  558. package/dist/esm/schema/registry/grafana-clickhouse-datasource.schema.json.js +0 -1400
  559. package/dist/esm/schema/registry/grafana-clickhouse-datasource.schema.json.js.map +0 -1
  560. package/dist/esm/schema/registry/grafana-cockroachdb-datasource.schema.json.js +0 -302
  561. package/dist/esm/schema/registry/grafana-cockroachdb-datasource.schema.json.js.map +0 -1
  562. package/dist/esm/schema/registry/grafana-databricks-datasource.schema.json.js +0 -291
  563. package/dist/esm/schema/registry/grafana-databricks-datasource.schema.json.js.map +0 -1
  564. package/dist/esm/schema/registry/grafana-datadog-datasource.schema.json.js +0 -155
  565. package/dist/esm/schema/registry/grafana-datadog-datasource.schema.json.js.map +0 -1
  566. package/dist/esm/schema/registry/grafana-dynatrace-datasource.schema.json.js +0 -179
  567. package/dist/esm/schema/registry/grafana-dynatrace-datasource.schema.json.js.map +0 -1
  568. package/dist/esm/schema/registry/grafana-falconlogscale-datasource.schema.json.js +0 -134
  569. package/dist/esm/schema/registry/grafana-falconlogscale-datasource.schema.json.js.map +0 -1
  570. package/dist/esm/schema/registry/grafana-github-datasource.schema.json.js +0 -156
  571. package/dist/esm/schema/registry/grafana-github-datasource.schema.json.js.map +0 -1
  572. package/dist/esm/schema/registry/grafana-gitlab-datasource.schema.json.js +0 -84
  573. package/dist/esm/schema/registry/grafana-gitlab-datasource.schema.json.js.map +0 -1
  574. package/dist/esm/schema/registry/grafana-googlesheets-datasource.schema.json.js +0 -231
  575. package/dist/esm/schema/registry/grafana-googlesheets-datasource.schema.json.js.map +0 -1
  576. package/dist/esm/schema/registry/grafana-honeycomb-datasource.schema.json.js +0 -87
  577. package/dist/esm/schema/registry/grafana-honeycomb-datasource.schema.json.js.map +0 -1
  578. package/dist/esm/schema/registry/grafana-iot-sitewise-datasource.schema.json.js +0 -159
  579. package/dist/esm/schema/registry/grafana-iot-sitewise-datasource.schema.json.js.map +0 -1
  580. package/dist/esm/schema/registry/grafana-jira-datasource.schema.json.js +0 -188
  581. package/dist/esm/schema/registry/grafana-jira-datasource.schema.json.js.map +0 -1
  582. package/dist/esm/schema/registry/grafana-looker-datasource.schema.json.js +0 -82
  583. package/dist/esm/schema/registry/grafana-looker-datasource.schema.json.js.map +0 -1
  584. package/dist/esm/schema/registry/grafana-mongodb-datasource.schema.json.js +0 -278
  585. package/dist/esm/schema/registry/grafana-mongodb-datasource.schema.json.js.map +0 -1
  586. package/dist/esm/schema/registry/grafana-mqtt-datasource.schema.json.js +0 -168
  587. package/dist/esm/schema/registry/grafana-mqtt-datasource.schema.json.js.map +0 -1
  588. package/dist/esm/schema/registry/grafana-newrelic-datasource.schema.json.js +0 -129
  589. package/dist/esm/schema/registry/grafana-newrelic-datasource.schema.json.js.map +0 -1
  590. package/dist/esm/schema/registry/grafana-odbc-datasource.schema.json.js +0 -56
  591. package/dist/esm/schema/registry/grafana-odbc-datasource.schema.json.js.map +0 -1
  592. package/dist/esm/schema/registry/grafana-opensearch-datasource.schema.json.js +0 -212
  593. package/dist/esm/schema/registry/grafana-opensearch-datasource.schema.json.js.map +0 -1
  594. package/dist/esm/schema/registry/grafana-oracle-datasource.schema.json.js +0 -186
  595. package/dist/esm/schema/registry/grafana-oracle-datasource.schema.json.js.map +0 -1
  596. package/dist/esm/schema/registry/grafana-pagerduty-datasource.schema.json.js +0 -85
  597. package/dist/esm/schema/registry/grafana-pagerduty-datasource.schema.json.js.map +0 -1
  598. package/dist/esm/schema/registry/grafana-postgresql-datasource.schema.json.js +0 -411
  599. package/dist/esm/schema/registry/grafana-postgresql-datasource.schema.json.js.map +0 -1
  600. package/dist/esm/schema/registry/grafana-pyroscope-datasource.schema.json.js +0 -41
  601. package/dist/esm/schema/registry/grafana-pyroscope-datasource.schema.json.js.map +0 -1
  602. package/dist/esm/schema/registry/grafana-redshift-datasource.schema.json.js +0 -201
  603. package/dist/esm/schema/registry/grafana-redshift-datasource.schema.json.js.map +0 -1
  604. package/dist/esm/schema/registry/grafana-salesforce-datasource.schema.json.js +0 -248
  605. package/dist/esm/schema/registry/grafana-salesforce-datasource.schema.json.js.map +0 -1
  606. package/dist/esm/schema/registry/grafana-saphana-datasource.schema.json.js +0 -208
  607. package/dist/esm/schema/registry/grafana-saphana-datasource.schema.json.js.map +0 -1
  608. package/dist/esm/schema/registry/grafana-sentry-datasource.schema.json.js +0 -94
  609. package/dist/esm/schema/registry/grafana-sentry-datasource.schema.json.js.map +0 -1
  610. package/dist/esm/schema/registry/grafana-servicenow-datasource.schema.json.js +0 -179
  611. package/dist/esm/schema/registry/grafana-servicenow-datasource.schema.json.js.map +0 -1
  612. package/dist/esm/schema/registry/grafana-snowflake-datasource.schema.json.js +0 -304
  613. package/dist/esm/schema/registry/grafana-snowflake-datasource.schema.json.js.map +0 -1
  614. package/dist/esm/schema/registry/grafana-splunk-datasource.schema.json.js +0 -690
  615. package/dist/esm/schema/registry/grafana-splunk-datasource.schema.json.js.map +0 -1
  616. package/dist/esm/schema/registry/grafana-splunkobservability-datasource.schema.json.js +0 -90
  617. package/dist/esm/schema/registry/grafana-splunkobservability-datasource.schema.json.js.map +0 -1
  618. package/dist/esm/schema/registry/grafana-strava-datasource.schema.json.js +0 -74
  619. package/dist/esm/schema/registry/grafana-strava-datasource.schema.json.js.map +0 -1
  620. package/dist/esm/schema/registry/grafana-sumologic-datasource.schema.json.js +0 -102
  621. package/dist/esm/schema/registry/grafana-sumologic-datasource.schema.json.js.map +0 -1
  622. package/dist/esm/schema/registry/grafana-surrealdb-datasource.schema.json.js +0 -92
  623. package/dist/esm/schema/registry/grafana-surrealdb-datasource.schema.json.js.map +0 -1
  624. package/dist/esm/schema/registry/grafana-timestream-datasource.schema.json.js +0 -145
  625. package/dist/esm/schema/registry/grafana-timestream-datasource.schema.json.js.map +0 -1
  626. package/dist/esm/schema/registry/grafana-wavefront-datasource.schema.json.js +0 -80
  627. package/dist/esm/schema/registry/grafana-wavefront-datasource.schema.json.js.map +0 -1
  628. package/dist/esm/schema/registry/grafana-x-ray-datasource.schema.json.js +0 -112
  629. package/dist/esm/schema/registry/grafana-x-ray-datasource.schema.json.js.map +0 -1
  630. package/dist/esm/schema/registry/grafana-yugabyte-datasource.schema.json.js +0 -114
  631. package/dist/esm/schema/registry/grafana-yugabyte-datasource.schema.json.js.map +0 -1
  632. package/dist/esm/schema/registry/graphite.schema.json.js +0 -104
  633. package/dist/esm/schema/registry/graphite.schema.json.js.map +0 -1
  634. package/dist/esm/schema/registry/index.js +0 -139
  635. package/dist/esm/schema/registry/index.js.map +0 -1
  636. package/dist/esm/schema/registry/influxdb.schema.json.js +0 -717
  637. package/dist/esm/schema/registry/influxdb.schema.json.js.map +0 -1
  638. package/dist/esm/schema/registry/jaeger.schema.json.js +0 -59
  639. package/dist/esm/schema/registry/jaeger.schema.json.js.map +0 -1
  640. package/dist/esm/schema/registry/loki.schema.json.js +0 -545
  641. package/dist/esm/schema/registry/loki.schema.json.js.map +0 -1
  642. package/dist/esm/schema/registry/marcusolsson-csv-datasource.schema.json.js +0 -45
  643. package/dist/esm/schema/registry/marcusolsson-csv-datasource.schema.json.js.map +0 -1
  644. package/dist/esm/schema/registry/marcusolsson-json-datasource.schema.json.js +0 -36
  645. package/dist/esm/schema/registry/marcusolsson-json-datasource.schema.json.js.map +0 -1
  646. package/dist/esm/schema/registry/mssql.schema.json.js +0 -292
  647. package/dist/esm/schema/registry/mssql.schema.json.js.map +0 -1
  648. package/dist/esm/schema/registry/mysql.schema.json.js +0 -304
  649. package/dist/esm/schema/registry/mysql.schema.json.js.map +0 -1
  650. package/dist/esm/schema/registry/opentsdb.schema.json.js +0 -113
  651. package/dist/esm/schema/registry/opentsdb.schema.json.js.map +0 -1
  652. package/dist/esm/schema/registry/prometheus.schema.json.js +0 -783
  653. package/dist/esm/schema/registry/prometheus.schema.json.js.map +0 -1
  654. package/dist/esm/schema/registry/stackdriver.schema.json.js +0 -224
  655. package/dist/esm/schema/registry/stackdriver.schema.json.js.map +0 -1
  656. package/dist/esm/schema/registry/tempo.schema.json.js +0 -664
  657. package/dist/esm/schema/registry/tempo.schema.json.js.map +0 -1
  658. package/dist/esm/schema/registry/yesoreyeram-infinity-datasource.schema.json.js +0 -1073
  659. package/dist/esm/schema/registry/yesoreyeram-infinity-datasource.schema.json.js.map +0 -1
  660. package/dist/esm/schema/registry/zipkin.schema.json.js +0 -40
  661. package/dist/esm/schema/registry/zipkin.schema.json.js.map +0 -1
  662. package/dist/esm/schema/utils/dsconfig.js +0 -97
  663. package/dist/esm/schema/utils/dsconfig.js.map +0 -1
  664. package/dist/esm/schema/utils/llm.js +0 -54
  665. package/dist/esm/schema/utils/llm.js.map +0 -1
  666. package/dist/esm/schema/utils/provisioning.js +0 -434
  667. package/dist/esm/schema/utils/provisioning.js.map +0 -1
  668. package/dist/esm/schema/utils/useDatasourceSchema.js +0 -16
  669. package/dist/esm/schema/utils/useDatasourceSchema.js.map +0 -1
  670. package/dist/esm/schemas.d.ts +0 -448
  671. package/dist/esm/schemas.js +0 -6
  672. package/dist/esm/schemas.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"provisioning.js","sources":["../../../../src/schema/utils/provisioning.ts"],"sourcesContent":["// @ts-expect-error — js-yaml has no bundled type declarations; used only for scalar serialization\nimport yaml from 'js-yaml';\nimport { resolveGroups } from '../../components/ConfigEditor/DatasourceConfigWizard/config';\nimport { ROOT_CONFIG_FIELDS } from './dsconfig';\nimport type { AllowedValuesValidationRule, ConfigField, ConfigGroup, DatasourceConfigSchema } from '../schema';\n\ntype YamlRenderOptions = { jsonDataKeys?: string[]; secureKeys?: string[] };\n\n// ============================================================\n// Provisioning YAML generation\n// ============================================================\n\n/** Indent each line by `depth * 2` spaces. */\nfunction yamlIndent(depth: number): string {\n return ' '.repeat(depth);\n}\n\n/** Serialize a scalar value as a safe YAML string using js-yaml. */\nfunction yamlString(value: unknown): string {\n if (value === null || value === undefined) {\n return '\"\"';\n }\n const s = String(value);\n if (s === '') {\n return '\"\"';\n }\n return yaml.dump(s, { lineWidth: -1 }).trimEnd();\n}\n\n/** Format a value as YAML inline. */\nfunction yamlValue(value: unknown, depth: number): string {\n if (value === null || value === undefined) {\n return '\"\"';\n }\n if (typeof value === 'boolean') {\n return value ? 'true' : 'false';\n }\n if (typeof value === 'number') {\n return String(value);\n }\n if (typeof value === 'string') {\n return yamlString(value);\n }\n if (Array.isArray(value)) {\n if (value.length === 0) {\n return '[]';\n }\n const lines = value.map((item) => {\n if (typeof item === 'object' && item !== null && !Array.isArray(item)) {\n const entries = Object.entries(item as Record<string, unknown>);\n if (entries.length === 0) {\n return `${yamlIndent(depth)}- {}`;\n }\n const [firstKey, firstVal] = entries[0];\n const firstLine = `${yamlIndent(depth)}- ${yamlString(firstKey)}: ${yamlValue(firstVal, depth + 2)}`;\n const rest = entries\n .slice(1)\n .map(([k, v]) => `${yamlIndent(depth + 1)}${yamlString(k)}: ${yamlValue(v, depth + 2)}`);\n return [firstLine, ...rest].join('\\n');\n }\n return `${yamlIndent(depth)}- ${yamlValue(item, depth + 1)}`;\n });\n return '\\n' + lines.join('\\n');\n }\n if (typeof value === 'object') {\n const entries = Object.entries(value as Record<string, unknown>);\n if (entries.length === 0) {\n return '{}';\n }\n const lines = entries.map(([k, v]) => `${yamlIndent(depth)}${yamlString(k)}: ${yamlValue(v, depth + 1)}`);\n return '\\n' + lines.join('\\n');\n }\n return yamlString(value);\n}\n\n/** True if the field is a certificate or key (multiline secret). */\nfunction isCertField(field: ConfigField): boolean {\n const k = field.key.toLowerCase();\n return (\n field.target === 'secureJsonData' && (k.includes('cert') || k.includes('key') || field.ui?.component === 'textarea')\n );\n}\n\n/** True if the field should be excluded from provisioning YAML output. */\nfunction isExcludedFromProvisioning(field: ConfigField): boolean {\n if (field.kind === 'virtual') {\n return true;\n }\n if (field.isItemField) {\n return true;\n }\n // Fields tagged \"managed-by:*\" are auto-set by the wizard UI via effects.\n // Root fields like basicAuth still need to appear in provisioning YAML\n // because they are real storage fields. Only exclude managed jsonData fields.\n if (field.tags?.some((t) => t.startsWith('managed-by:')) && field.target !== 'root') {\n return true;\n }\n // Skip indexedPair storage — these are handled separately (e.g. httpHeaders)\n if (field.storage?.type === 'indexedPair') {\n return true;\n }\n return false;\n}\n\n/** Format a secureJsonData placeholder value. */\nfunction secretPlaceholder(field: ConfigField): string {\n if (isCertField(field)) {\n return '|\\n xxxxxx';\n }\n return 'xxxxxx';\n}\n\n/** Default YAML value for a field in template mode. */\nfunction templateValue(field: ConfigField): unknown {\n if (field.defaultValue !== undefined) {\n return field.defaultValue;\n }\n // Use first option value as a sensible default\n if (field.ui?.options && field.ui.options.length > 0) {\n return field.ui.options[0].value;\n }\n switch (field.valueType) {\n case 'string':\n return '';\n case 'number':\n return 0;\n case 'boolean':\n return false;\n case 'array':\n return [];\n case 'object':\n case 'map':\n return {};\n default:\n return '';\n }\n}\n\n/**\n * Format a YAML comment for a field in template mode.\n * Includes label, description, allowed values, and default.\n */\nfunction fieldComment(field: ConfigField, indent: string): string {\n const parts: string[] = [];\n const label = field.label ?? field.key;\n let line = label;\n if (field.required) {\n line += ' (REQUIRED)';\n }\n if (field.description) {\n line += ` — ${field.description}`;\n }\n parts.push(`${indent}# ${line}`);\n\n const options = field.ui?.options;\n if (options && options.length > 0) {\n const vals = options.map((o) => String(o.value)).join(', ');\n parts.push(`${indent}# Allowed values: ${vals}`);\n }\n\n const allowedValuesRule = field.validations?.find(\n (v): v is AllowedValuesValidationRule => v.type === 'allowedValues'\n );\n if (allowedValuesRule && !options) {\n const vals = allowedValuesRule.values.map((v) => String(v)).join(', ');\n parts.push(`${indent}# Allowed values: ${vals}`);\n }\n\n if (field.dependsOn) {\n parts.push(`${indent}# Only when: ${field.dependsOn}`);\n }\n\n return parts.join('\\n');\n}\n\nexport type ProvisioningYamlOptions = {\n /** Include comments with field descriptions. Default: true for template, false for export. */\n comments?: boolean;\n /** Name override (used in template mode). */\n name?: string;\n};\n\n/**\n * Generate a Grafana provisioning YAML from a dsconfig schema.\n * In template mode (no values), emits all fields with defaults and comments.\n * When values are provided, emits actual values — used for existing datasource export.\n */\nexport function toProvisioningYaml(\n schema: DatasourceConfigSchema,\n values?: Record<string, unknown>,\n options?: ProvisioningYamlOptions\n): string {\n const isTemplate = !values;\n const showComments = options?.comments ?? isTemplate;\n const indent2 = ' ';\n const indent3 = ' ';\n\n // Use schema groups to order fields logically (connection → auth → network → etc.)\n const groups = resolveGroups(schema);\n const rootFields: ConfigField[] = [];\n const jsonDataFieldsByGroup: Array<{ group: ConfigGroup; fields: ConfigField[] }> = [];\n const secureJsonDataFieldsByGroup: Array<{ group: ConfigGroup; fields: ConfigField[] }> = [];\n const virtualFieldsWithOptions: ConfigField[] = [];\n\n for (const { group, fields } of groups) {\n const jd: ConfigField[] = [];\n const sd: ConfigField[] = [];\n for (const field of fields) {\n // Collect virtual fields with UI options (e.g. auth.method) for comment-only output\n if (field.kind === 'virtual' && field.ui?.options && field.ui.options.length > 0) {\n virtualFieldsWithOptions.push(field);\n continue;\n }\n if (isExcludedFromProvisioning(field)) {\n continue;\n }\n switch (field.target) {\n case 'root':\n rootFields.push(field);\n break;\n case 'jsonData':\n jd.push(field);\n break;\n case 'secureJsonData':\n sd.push(field);\n break;\n }\n }\n if (jd.length > 0) {\n jsonDataFieldsByGroup.push({ group, fields: jd });\n }\n if (sd.length > 0) {\n secureJsonDataFieldsByGroup.push({ group, fields: sd });\n }\n }\n\n const allSecureJsonDataFields = secureJsonDataFieldsByGroup.flatMap((g) => g.fields);\n\n // Pick up root fields not referenced in any group (e.g. root.basicAuth is managed\n // by auth.method effects and not listed in the auth group's fieldRefs).\n const groupedFieldIds = new Set(groups.flatMap(({ group }) => group.fieldRefs));\n for (const field of schema.fields) {\n if (field.target === 'root' && !groupedFieldIds.has(field.id) && !isExcludedFromProvisioning(field)) {\n rootFields.push(field);\n }\n }\n\n const lines: string[] = [];\n lines.push('apiVersion: 1');\n lines.push('');\n lines.push('datasources:');\n lines.push(`${indent2.slice(2)}- name: ${yamlString(options?.name ?? values?.name ?? `my-${schema.pluginType}`)}`);\n lines.push(`${indent2}type: ${schema.pluginType}`);\n\n // In export mode, emit uid so the provisioning YAML can be used for idempotent upserts.\n if (!isTemplate && values?.uid) {\n lines.push(`${indent2}uid: ${yamlString(values.uid)}`);\n }\n\n // Root fields (url, basicAuth, basicAuthUser, database, etc.)\n const ALREADY_EMITTED_ROOT = new Set(['name', 'type', 'uid']);\n for (const field of rootFields) {\n if (ALREADY_EMITTED_ROOT.has(field.key)) {\n continue;\n }\n const val = values ? values[field.key] : templateValue(field);\n if (val === undefined || val === null) {\n continue;\n }\n // Skip false booleans in export mode to keep YAML clean\n if (!isTemplate && val === false) {\n continue;\n }\n if (showComments) {\n lines.push(fieldComment(field, indent2));\n }\n lines.push(`${indent2}${field.key}: ${yamlValue(val, 3)}`);\n }\n\n // Emit virtual fields with UI options as comments (e.g. auth.method selector)\n // These explain configuration choices even though they aren't stored directly.\n if (showComments) {\n for (const vf of virtualFieldsWithOptions) {\n const label = vf.label ?? vf.key;\n const opts = vf.ui!.options!.map((o) => `${String(o.value)} (${o.label})`).join(', ');\n lines.push(`${indent2}# ${label}: ${opts}`);\n if (vf.description) {\n lines.push(`${indent2}# ${vf.description}`);\n }\n }\n }\n\n // Collect jsonData keys emitted by schema fields so we can detect extra keys in export mode.\n const emittedJsonDataKeys = new Set<string>();\n const emittedSecureJsonDataKeys = new Set<string>();\n\n // jsonData section — ordered by schema groups\n const jsonDataValues = values?.jsonData as Record<string, unknown> | undefined;\n const hasJsonDataFromSchema = jsonDataFieldsByGroup.length > 0;\n const hasJsonDataFromValues = !isTemplate && jsonDataValues && Object.keys(jsonDataValues).length > 0;\n\n if (hasJsonDataFromSchema || hasJsonDataFromValues) {\n lines.push(`${indent2}jsonData:`);\n\n // Schema-declared fields, grouped by section\n for (const { group, fields: groupFields } of jsonDataFieldsByGroup) {\n if (showComments && jsonDataFieldsByGroup.length > 1) {\n lines.push(`${indent3}# --- ${group.title} ---`);\n }\n for (const field of groupFields) {\n const val = values ? getNestedValue(values, 'jsonData', field) : templateValue(field);\n if (val === undefined || val === null) {\n continue;\n }\n // In export mode, skip default-value fields to keep YAML minimal\n if (!isTemplate && field.defaultValue !== undefined && val === field.defaultValue) {\n continue;\n }\n emittedJsonDataKeys.add(field.key);\n if (showComments) {\n lines.push(fieldComment(field, indent3));\n }\n const rendered = yamlValue(val, 4);\n if (rendered.startsWith('\\n')) {\n lines.push(`${indent3}${field.key}:${rendered}`);\n } else {\n lines.push(`${indent3}${field.key}: ${rendered}`);\n }\n }\n }\n\n // In export mode, emit extra jsonData keys not declared in the schema\n // (e.g. httpHeaderName1 from indexedPair storage, or plugin-specific keys)\n if (!isTemplate && jsonDataValues) {\n for (const [key, val] of Object.entries(jsonDataValues)) {\n if (emittedJsonDataKeys.has(key)) {\n continue;\n }\n if (val === undefined || val === null) {\n continue;\n }\n const rendered = yamlValue(val, 4);\n if (rendered.startsWith('\\n')) {\n lines.push(`${indent3}${key}:${rendered}`);\n } else {\n lines.push(`${indent3}${key}: ${rendered}`);\n }\n }\n }\n }\n\n // secureJsonData section\n // In export mode, the Grafana API returns `secureJsonFields: { key: true }` indicating which\n // secure fields are actually configured. Only emit those — not all schema-declared secure fields.\n // In template mode, emit all schema-declared secure fields with placeholders.\n const secureJsonFields = (values?.secureJsonFields ?? {}) as Record<string, boolean>;\n const inferredSecureKeys = !isTemplate ? inferSecureJsonDataKeys(jsonDataValues) : [];\n\n // Filter secure fields: in export mode, only emit fields that are actually set on the datasource\n const activeSecureFields = isTemplate\n ? allSecureJsonDataFields\n : allSecureJsonDataFields.filter((f) => secureJsonFields[f.key] === true);\n\n if (activeSecureFields.length > 0 || inferredSecureKeys.length > 0) {\n lines.push(`${indent2}secureJsonData:`);\n for (const field of activeSecureFields) {\n emittedSecureJsonDataKeys.add(field.key);\n if (showComments) {\n lines.push(fieldComment(field, indent3));\n }\n lines.push(`${indent3}${field.key}: ${secretPlaceholder(field)}`);\n }\n // Inferred secure keys (e.g. httpHeaderValue1 matching httpHeaderName1)\n for (const key of inferredSecureKeys) {\n if (emittedSecureJsonDataKeys.has(key)) {\n continue;\n }\n lines.push(`${indent3}${key}: xxxxxx`);\n }\n }\n\n return lines.join('\\n');\n}\n\n/**\n * Infer secureJsonData keys from jsonData keys.\n * For example, httpHeaderName1 → httpHeaderValue1 (Grafana's indexedPair convention).\n */\nfunction inferSecureJsonDataKeys(jsonData: Record<string, unknown> | undefined): string[] {\n if (!jsonData) {\n return [];\n }\n const keys: string[] = [];\n for (const key of Object.keys(jsonData)) {\n const match = key.match(/^httpHeaderName(\\d+)$/);\n if (match) {\n keys.push(`httpHeaderValue${match[1]}`);\n }\n }\n return keys;\n}\n\n/** Retrieve a nested value for a jsonData/secureJsonData field from a flat or nested values object. */\nfunction getNestedValue(values: Record<string, unknown>, target: string, field: ConfigField): unknown {\n const nested = values[target];\n if (nested && typeof nested === 'object') {\n return (nested as Record<string, unknown>)[field.key];\n }\n return undefined;\n}\n\n/**\n * Generate provisioning YAML from an existing Grafana datasource API response.\n * If a dsconfig schema is available, uses it for field ordering and comments.\n * If not, generates basic YAML from the raw API response.\n */\nexport function datasourceToProvisioningYaml(\n ds: Record<string, unknown>,\n schema: DatasourceConfigSchema | null\n): string {\n if (schema) {\n return toProvisioningYaml(schema, ds, { comments: false });\n }\n\n // No schema — generate basic YAML from the raw API response\n const lines: string[] = [];\n lines.push('apiVersion: 1');\n lines.push('');\n lines.push('datasources:');\n lines.push(` - name: ${yamlString(ds.name)}`);\n if (ds.uid) {\n lines.push(` uid: ${yamlString(ds.uid)}`);\n }\n lines.push(` type: ${yamlString(ds.type)}`);\n if (ds.url) {\n lines.push(` url: ${yamlString(ds.url)}`);\n }\n if (ds.database) {\n lines.push(` database: ${yamlString(ds.database)}`);\n }\n if (ds.isDefault) {\n lines.push(' isDefault: true');\n }\n if (ds.basicAuth) {\n lines.push(' basicAuth: true');\n if (ds.basicAuthUser) {\n lines.push(` basicAuthUser: ${yamlString(ds.basicAuthUser)}`);\n }\n }\n\n const jsonData = ds.jsonData as Record<string, unknown> | undefined;\n if (jsonData && Object.keys(jsonData).length > 0) {\n lines.push(' jsonData:');\n for (const [key, val] of Object.entries(jsonData)) {\n const rendered = yamlValue(val, 4);\n if (rendered.startsWith('\\n')) {\n lines.push(` ${key}:${rendered}`);\n } else {\n lines.push(` ${key}: ${rendered}`);\n }\n }\n }\n\n // secureJsonData is never returned by the API — emit placeholder comment\n lines.push(' # secureJsonData: (secrets are not exported — add manually)');\n lines.push(' # mySecret: xxxxxx');\n\n return lines.join('\\n');\n}\n\nfunction getYamlRenderOptions(ds: Record<string, unknown>): Required<YamlRenderOptions> {\n return {\n jsonDataKeys: Object.keys((ds.jsonData ?? {}) as Record<string, unknown>).sort(),\n secureKeys: [\n ...new Set([\n ...Object.keys((ds.secureJsonData ?? {}) as Record<string, unknown>),\n ...Object.keys((ds.secureJsonFields ?? {}) as Record<string, boolean>),\n ]),\n ].sort(),\n };\n}\n\nexport const configToYaml = (ds: Record<string, unknown>, options: YamlRenderOptions = {}): string => {\n const { jsonDataKeys, secureKeys } = {\n ...getYamlRenderOptions(ds),\n ...options,\n };\n const root: Record<string, unknown> = {};\n\n for (const key of ROOT_CONFIG_FIELDS) {\n root[key] = ds[key] ?? '';\n }\n\n const jsonData = (ds.jsonData ?? {}) as Record<string, unknown>;\n if (jsonDataKeys.length > 0) {\n const jsonDataYaml: Record<string, unknown> = {};\n for (const key of jsonDataKeys) {\n jsonDataYaml[key] = jsonData[key] ?? '';\n }\n root.jsonData = jsonDataYaml;\n }\n\n if (secureKeys.length > 0) {\n const secureJsonData: Record<string, string> = {};\n for (const key of secureKeys) {\n secureJsonData[key] = '********';\n }\n root.secureJsonData = secureJsonData;\n }\n\n return yaml.dump(root, { lineWidth: -1, sortKeys: false, noRefs: true }).trimEnd();\n};\n\nexport const formatYamlDiff = (existing: Record<string, unknown>, body: Record<string, unknown>): string => {\n const updated = { ...existing, ...body };\n\n const existingJD = (existing.jsonData ?? {}) as Record<string, unknown>;\n const updatedJD = (updated.jsonData ?? {}) as Record<string, unknown>;\n const jsonDataKeys = [...new Set([...Object.keys(existingJD), ...Object.keys(updatedJD)])].sort();\n\n const secureKeys = [\n ...new Set([\n ...Object.keys((existing.secureJsonData ?? {}) as Record<string, unknown>),\n ...Object.keys((existing.secureJsonFields ?? {}) as Record<string, boolean>),\n ...Object.keys((updated.secureJsonData ?? {}) as Record<string, unknown>),\n ...Object.keys((updated.secureJsonFields ?? {}) as Record<string, boolean>),\n ]),\n ].sort();\n\n const currentYaml = configToYaml(existing, { jsonDataKeys, secureKeys });\n const updatedYaml = configToYaml(updated, { jsonDataKeys, secureKeys });\n\n const oldLines = currentYaml.split('\\n');\n const newLines = updatedYaml.split('\\n');\n const maxLen = Math.max(oldLines.length, newLines.length);\n const diffLines: string[] = [];\n\n for (let i = 0; i < maxLen; i++) {\n const oldLine = oldLines[i];\n const newLine = newLines[i];\n if (oldLine === newLine) {\n diffLines.push(` ${oldLine}`);\n continue;\n }\n if (oldLine !== undefined) {\n diffLines.push(`-${oldLine}`);\n }\n if (newLine !== undefined) {\n diffLines.push(`+${newLine}`);\n }\n }\n\n return '```diff\\n' + diffLines.join('\\n') + '\\n```';\n};\n"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- import { useMemo } from 'react';
2
- import { getConfigSchema } from '../registry/index.js';
3
-
4
- function useDatasourceSchema(pluginType) {
5
- const schema = useMemo(() => fetchConfigSchema(pluginType), [pluginType]);
6
- return { schema, loading: false, error: null };
7
- }
8
- function fetchConfigSchema(pluginType) {
9
- if (!pluginType) {
10
- return null;
11
- }
12
- return getConfigSchema(pluginType);
13
- }
14
-
15
- export { fetchConfigSchema, useDatasourceSchema };
16
- //# sourceMappingURL=useDatasourceSchema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDatasourceSchema.js","sources":["../../../../src/schema/utils/useDatasourceSchema.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { getConfigSchema } from '../registry';\nimport type { DatasourceConfigSchema } from '../schema';\n\ntype UseDatasourceSchemaResult = { schema: DatasourceConfigSchema | null; loading: boolean; error: string | null };\n\nexport function useDatasourceSchema(pluginType: string): UseDatasourceSchemaResult {\n const schema = useMemo(() => fetchConfigSchema(pluginType), [pluginType]);\n return { schema, loading: false, error: null };\n}\n\nexport function fetchConfigSchema(pluginType: string): DatasourceConfigSchema | null {\n if (!pluginType) {\n return null;\n }\n return getConfigSchema(pluginType);\n}\n"],"names":[],"mappings":";;;AAMO,SAAS,oBAAoB,UAAA,EAA+C;AACjF,EAAA,MAAM,MAAA,GAAS,QAAQ,MAAM,iBAAA,CAAkB,UAAU,CAAA,EAAG,CAAC,UAAU,CAAC,CAAA;AACxE,EAAA,OAAO,EAAE,MAAA,EAAQ,OAAA,EAAS,KAAA,EAAO,OAAO,IAAA,EAAK;AAC/C;AAEO,SAAS,kBAAkB,UAAA,EAAmD;AACnF,EAAA,IAAI,CAAC,UAAA,EAAY;AACf,IAAA,OAAO,IAAA;AAAA,EACT;AACA,EAAA,OAAO,gBAAgB,UAAU,CAAA;AACnC;;;;"}
@@ -1,448 +0,0 @@
1
- interface DatasourceConfigSchema {
2
- /**
3
- * Schema version (required)
4
- * Used for compatibility and migrations
5
- *
6
- * Example: "v2"
7
- */
8
- schemaVersion: string;
9
- /**
10
- * Unique datasource plugin identifier
11
- * Example: "prometheus"
12
- */
13
- pluginType: string;
14
- /**
15
- * Human-readable name
16
- */
17
- pluginName: string;
18
- /**
19
- * Optional documentation URL
20
- */
21
- docURL?: string;
22
- /**
23
- * Source of truth for configuration
24
- */
25
- fields: ConfigField[];
26
- /**
27
- * Optional UI grouping
28
- */
29
- groups?: ConfigGroup[];
30
- /**
31
- * Relationships between fields
32
- */
33
- relationships?: FieldRelationship[];
34
- }
35
- interface ConfigField {
36
- /**
37
- * Globally unique identifier
38
- * Recommended format: dot-separated path
39
- * Example: "auth.method", "httpHeaders.item.key"
40
- */
41
- id: string;
42
- /**
43
- * Local key used in storage or object
44
- */
45
- key: string;
46
- /**
47
- * UI metadata
48
- */
49
- label?: string;
50
- description?: string;
51
- docURL?: string;
52
- /**
53
- * Core type of the field
54
- */
55
- valueType: ValueType;
56
- /**
57
- * Semantic meaning (optional)
58
- */
59
- semanticType?: SemanticType;
60
- /**
61
- * Storage location (required for storage fields)
62
- */
63
- target?: TargetLocation;
64
- /**
65
- * Dotted path prefix within the target for nested objects.
66
- * Example: for jsonData.tracesToLogs.datasourceUid,
67
- * target="jsonData", section="tracesToLogs", key="datasourceUid".
68
- */
69
- section?: string;
70
- /**
71
- * Field kind.
72
- * @default "storage"
73
- */
74
- kind?: FieldKind;
75
- /**
76
- * True if field belongs to array item schema
77
- */
78
- isItemField?: boolean;
79
- /**
80
- * Lifecycle state
81
- */
82
- lifecycle?: Lifecycle;
83
- /**
84
- * UI rendering hints
85
- */
86
- ui?: FieldUI;
87
- /**
88
- * Validations rules
89
- */
90
- validations?: FieldValidationRule[];
91
- /**
92
- * Visibility condition (CEL expression)
93
- */
94
- dependsOn?: Expression;
95
- /**
96
- * Always required
97
- */
98
- required?: boolean;
99
- /**
100
- * Conditionally required
101
- */
102
- requiredWhen?: Expression;
103
- /**
104
- * Disabled condition
105
- */
106
- disabledWhen?: Expression;
107
- /**
108
- * Dynamic overrides
109
- */
110
- overrides?: FieldOverride[];
111
- /**
112
- * Declarative multi-field write side-effects.
113
- * When this field's value matches a condition, the listed target
114
- * fields are set to specified values. Typically used on virtual
115
- * selector fields (e.g. auth method dropdown).
116
- */
117
- effects?: FieldEffect[];
118
- /**
119
- * Item schema for array elements or map values.
120
- * Required if valueType === "array" or "map".
121
- */
122
- item?: FieldItemSchema;
123
- /**
124
- * Legacy indexed fields (deprecated)
125
- */
126
- repeatable?: boolean;
127
- pattern?: string;
128
- /**
129
- * Storage mapping
130
- */
131
- storage?: StorageMapping;
132
- /**
133
- * Metadata
134
- */
135
- tags?: string[];
136
- examples?: unknown[];
137
- defaultValue?: unknown;
138
- }
139
- interface FieldItemSchema {
140
- /**
141
- * Type of array items or map values.
142
- * For arrays, describes each element.
143
- * For maps, describes each value (keys are always strings).
144
- */
145
- valueType: ValueType;
146
- /**
147
- * Sub-fields for object items. Optional even when valueType = "object"
148
- * (omitting allows an unconstrained object).
149
- */
150
- fields?: ConfigField[];
151
- }
152
- /**
153
- * CEL expression string
154
- */
155
- type Expression = string;
156
- type ValueType = 'string' | 'number' | 'boolean' | 'array' | 'object' | 'map' | 'any';
157
- type SemanticType = 'url' | 'password' | 'token' | 'hostname' | 'duration' | 'datasourceUid' | 'query';
158
- type FieldKind = 'storage' | 'virtual';
159
- type Lifecycle = 'stable' | 'deprecated' | 'experimental';
160
- type TargetLocation = 'root' | 'jsonData' | 'secureJsonData';
161
- type UIComponent = 'input' | 'textarea' | 'select' | 'multiselect' | 'radio' | 'checkbox' | 'switch' | 'code' | 'keyvalue' | 'list' | 'fileUpload';
162
- type UIWidth = 'full' | 'half';
163
- /**
164
- * UI configuration
165
- */
166
- interface FieldUI {
167
- component: UIComponent;
168
- multiline?: boolean;
169
- rows?: number;
170
- options?: FieldOption[];
171
- allowCustom?: boolean;
172
- width?: UIWidth;
173
- placeholder?: string;
174
- /**
175
- * Language hint for code editor components.
176
- * Example: "promql", "logql", "traceql", "sql", "json"
177
- */
178
- language?: string;
179
- /**
180
- * Layout row index for item fields inside object arrays.
181
- * Fields with the same row number are rendered horizontally.
182
- * Fields without a row number use auto-layout:
183
- * - ≤3 fields: all on one row
184
- * - >3 fields: each on its own row
185
- */
186
- row?: number;
187
- /**
188
- * Accepted file types for fileUpload component.
189
- * Uses HTML accept attribute format with leading dot.
190
- * Example: [".json"]
191
- */
192
- accept?: string[];
193
- /**
194
- * Maps keys in an uploaded JSON file to target field IDs.
195
- * Used by fileUpload to distribute parsed values to other form fields.
196
- * Example: { "private_key": "secureJsonData.privateKey", "client_email": "jsonData.clientEmail" }
197
- */
198
- fileMapping?: Record<string, string>;
199
- }
200
- type FieldValidationRule = PatternValidationRule | RangeValidationRule | LengthValidationRule | ItemCountValidationRule | AllowedValuesValidationRule | CustomValidationRule;
201
- interface BaseValidationRule {
202
- /**
203
- * Optional stable ID for the validation rule.
204
- * Useful for docs, localization, and test snapshots.
205
- */
206
- id?: string;
207
- /**
208
- * Human-readable validation error message.
209
- */
210
- message?: string;
211
- }
212
- interface PatternValidationRule extends BaseValidationRule {
213
- type: 'pattern';
214
- pattern: string;
215
- }
216
- interface RangeValidationRule extends BaseValidationRule {
217
- type: 'range';
218
- min?: number;
219
- max?: number;
220
- }
221
- interface LengthValidationRule extends BaseValidationRule {
222
- type: 'length';
223
- min?: number;
224
- max?: number;
225
- }
226
- interface ItemCountValidationRule extends BaseValidationRule {
227
- type: 'itemCount';
228
- min?: number;
229
- max?: number;
230
- }
231
- interface AllowedValuesValidationRule extends BaseValidationRule {
232
- type: 'allowedValues';
233
- values: unknown[];
234
- }
235
- interface CustomValidationRule extends BaseValidationRule {
236
- type: 'custom';
237
- /**
238
- * CEL expression.
239
- *
240
- * Should evaluate to true when the field value is valid.
241
- */
242
- expression: Expression;
243
- }
244
- interface FieldOverride {
245
- /**
246
- * CEL condition
247
- */
248
- when: Expression;
249
- defaultValue?: unknown;
250
- /**
251
- * When true, the field is disabled/read-only while this override is active.
252
- */
253
- readOnly?: boolean;
254
- description?: string;
255
- placeholder?: string;
256
- tooltip?: string;
257
- validations?: FieldValidationRule[];
258
- options?: FieldOption[];
259
- /**
260
- * When present on an `isItemField` field, the value is routed to
261
- * `secureJsonData` under the resolved key instead of being stored
262
- * inline in the parent array.
263
- *
264
- * The template string supports placeholders:
265
- * - `{index}` — 0-based array position
266
- * - `{index1}` — 1-based array position
267
- * - `{item.KEY}` — value of sibling item field `KEY`
268
- *
269
- * Examples:
270
- * - `"secureHttpHeaders.{item.name}"` (ClickHouse)
271
- * - `"httpHeaderValue{index1}"` (Grafana core headers)
272
- */
273
- secureKey?: string;
274
- }
275
- /**
276
- * Declares that when a field's value matches a condition,
277
- * listed target fields should be set to specified values.
278
- *
279
- * Use "value" in the `when` expression to refer to the field's value.
280
- */
281
- interface FieldEffect {
282
- /**
283
- * CEL expression. Example: "value == 'basic-auth'"
284
- */
285
- when: Expression;
286
- /**
287
- * Maps field IDs to the values they should be set to.
288
- * Must contain at least one entry.
289
- */
290
- set: Record<string, unknown> & {
291
- [k: string]: unknown;
292
- };
293
- }
294
- type StorageMapping = DirectMapping | IndexedPairMapping | ComputedMapping;
295
- /**
296
- * Direct mapping
297
- */
298
- interface DirectMapping {
299
- type: 'direct';
300
- }
301
- /**
302
- * Indexed pair mapping (headers)
303
- */
304
- interface IndexedPairMapping {
305
- type: 'indexedPair';
306
- key: MappingField;
307
- value: MappingField;
308
- startIndex?: number;
309
- }
310
- /**
311
- * Computed mapping (virtual fields).
312
- * At least one of `read` or `write` must be provided.
313
- */
314
- type ComputedMapping = {
315
- type: 'computed';
316
- read: Expression;
317
- write?: Expression;
318
- } | {
319
- type: 'computed';
320
- read?: Expression;
321
- write: Expression;
322
- };
323
- /**
324
- * Mapping field
325
- */
326
- interface MappingField {
327
- target: TargetLocation;
328
- pattern: string;
329
- }
330
- interface FieldOption {
331
- label: string;
332
- /**
333
- * Must match parent field valueType.
334
- * Must not be null.
335
- */
336
- value: NonNullable<unknown>;
337
- /**
338
- * Optional human-readable description of the option.
339
- */
340
- description?: string;
341
- }
342
- interface ConfigGroup {
343
- id: string;
344
- title: string;
345
- description?: string;
346
- order?: number;
347
- /**
348
- * When true, the group is optional and can be collapsed/hidden by default.
349
- */
350
- optional?: boolean;
351
- /**
352
- * References field IDs (not keys)
353
- */
354
- fieldRefs: string[];
355
- }
356
- type RelationshipType = 'pair' | 'group' | 'datasourceReference';
357
- interface FieldRelationship {
358
- type: RelationshipType;
359
- /**
360
- * References field IDs
361
- */
362
- fields: string[];
363
- description?: string;
364
- /**
365
- * Constrains the datasource UID to a specific plugin type.
366
- * Only applicable when type is "datasourceReference".
367
- */
368
- targetPluginType?: string;
369
- }
370
- type SecureFieldState = {
371
- type: 'unset';
372
- } | {
373
- type: 'configured';
374
- } | {
375
- type: 'updated';
376
- value: string;
377
- };
378
- interface FormState {
379
- values: Record<string, unknown>;
380
- secure: Record<string, SecureFieldState>;
381
- }
382
-
383
- declare function getConfigSchema(pluginType: string): DatasourceConfigSchema | null;
384
-
385
- /**
386
- * Generate LLM hints for select fields (used when creating datasources).
387
- */
388
- declare function generateLLMHint(schema: DatasourceConfigSchema): string;
389
- /**
390
- * Generate comprehensive structured field data for troubleshooting context.
391
- * Returns an array of field descriptors the LLM can use to render rich tables.
392
- */
393
- declare function generateTroubleshootingFields(schema: DatasourceConfigSchema): Array<{
394
- label: string;
395
- key: string;
396
- target: string;
397
- type: string;
398
- required: boolean;
399
- description?: string;
400
- defaultValue?: unknown;
401
- options?: string[];
402
- section?: string;
403
- dependsOn?: string;
404
- }>;
405
-
406
- type YamlRenderOptions = {
407
- jsonDataKeys?: string[];
408
- secureKeys?: string[];
409
- };
410
- type ProvisioningYamlOptions = {
411
- /** Include comments with field descriptions. Default: true for template, false for export. */
412
- comments?: boolean;
413
- /** Name override (used in template mode). */
414
- name?: string;
415
- };
416
- /**
417
- * Generate a Grafana provisioning YAML from a dsconfig schema.
418
- * In template mode (no values), emits all fields with defaults and comments.
419
- * When values are provided, emits actual values — used for existing datasource export.
420
- */
421
- declare function toProvisioningYaml(schema: DatasourceConfigSchema, values?: Record<string, unknown>, options?: ProvisioningYamlOptions): string;
422
- /**
423
- * Generate provisioning YAML from an existing Grafana datasource API response.
424
- * If a dsconfig schema is available, uses it for field ordering and comments.
425
- * If not, generates basic YAML from the raw API response.
426
- */
427
- declare function datasourceToProvisioningYaml(ds: Record<string, unknown>, schema: DatasourceConfigSchema | null): string;
428
- declare const configToYaml: (ds: Record<string, unknown>, options?: YamlRenderOptions) => string;
429
- declare const formatYamlDiff: (existing: Record<string, unknown>, body: Record<string, unknown>) => string;
430
-
431
- type UseDatasourceSchemaResult = {
432
- schema: DatasourceConfigSchema | null;
433
- loading: boolean;
434
- error: string | null;
435
- };
436
- declare function useDatasourceSchema(pluginType: string): UseDatasourceSchemaResult;
437
- declare function fetchConfigSchema(pluginType: string): DatasourceConfigSchema | null;
438
-
439
- declare const ROOT_CONFIG_FIELDS: readonly ["name", "type", "id", "uid", "access", "url", "basicAuth", "basicAuthUser", "user", "isDefault", "database", "withCredentials"];
440
- type DatasourceConfig = Record<any, any>;
441
- declare const buildCreateDatasourcePayload: (input: DatasourceConfig) => DatasourceConfig;
442
- declare const buildCloneDatasourcePayload: (source: DatasourceConfig, name: string) => DatasourceConfig;
443
- declare const buildUpdateDatasourcePayload: (existing: DatasourceConfig, input: DatasourceConfig) => {
444
- body: DatasourceConfig;
445
- hasChanges: boolean;
446
- };
447
-
448
- export { type AllowedValuesValidationRule, type BaseValidationRule, type ComputedMapping, type ConfigField, type ConfigGroup, type CustomValidationRule, type DatasourceConfigSchema, type DirectMapping, type Expression, type FieldEffect, type FieldItemSchema, type FieldKind, type FieldOption, type FieldOverride, type FieldRelationship, type FieldUI, type FieldValidationRule, type FormState, type IndexedPairMapping, type ItemCountValidationRule, type LengthValidationRule, type Lifecycle, type MappingField, type PatternValidationRule, type ProvisioningYamlOptions, ROOT_CONFIG_FIELDS, type RangeValidationRule, type RelationshipType, type SecureFieldState, type SemanticType, type StorageMapping, type TargetLocation, type UIComponent, type UIWidth, type ValueType, buildCloneDatasourcePayload, buildCreateDatasourcePayload, buildUpdateDatasourcePayload, configToYaml, datasourceToProvisioningYaml, fetchConfigSchema, formatYamlDiff, generateLLMHint, generateTroubleshootingFields, getConfigSchema, toProvisioningYaml, useDatasourceSchema };
@@ -1,6 +0,0 @@
1
- export { getConfigSchema } from './schema/registry/index.js';
2
- export { generateLLMHint, generateTroubleshootingFields } from './schema/utils/llm.js';
3
- export { configToYaml, datasourceToProvisioningYaml, formatYamlDiff, toProvisioningYaml } from './schema/utils/provisioning.js';
4
- export { fetchConfigSchema, useDatasourceSchema } from './schema/utils/useDatasourceSchema.js';
5
- export { ROOT_CONFIG_FIELDS, buildCloneDatasourcePayload, buildCreateDatasourcePayload, buildUpdateDatasourcePayload } from './schema/utils/dsconfig.js';
6
- //# sourceMappingURL=schemas.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schemas.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}