@grafana/plugin-ui 0.13.1 → 0.14.1-dsconfig.032cfc4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (440) hide show
  1. package/dist/cjs/index.cjs +2989 -372
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/cjs/index.d.cts +695 -40
  4. package/dist/cjs/schemas.cjs +25 -0
  5. package/dist/cjs/schemas.cjs.map +1 -0
  6. package/dist/cjs/schemas.d.cts +448 -0
  7. package/dist/cjs/test-utils.cjs +2 -2
  8. package/dist/cjs/test-utils.cjs.map +1 -1
  9. package/dist/cjs/test-utils.d.cts +24 -24
  10. package/dist/cjs/useDatasourceSchema-CxPGD2-b.js +17125 -0
  11. package/dist/cjs/useDatasourceSchema-CxPGD2-b.js.map +1 -0
  12. package/dist/esm/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.js.map +1 -1
  13. package/dist/esm/components/ConfigEditor/Auth/Auth.js.map +1 -1
  14. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js +4 -4
  15. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js.map +1 -1
  16. package/dist/esm/components/ConfigEditor/Auth/auth-method/BasicAuth.js.map +1 -1
  17. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeader.js.map +1 -1
  18. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js +1 -1
  19. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js.map +1 -1
  20. package/dist/esm/components/ConfigEditor/Auth/styles.js.map +1 -1
  21. package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js +1 -1
  22. package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js.map +1 -1
  23. package/dist/esm/components/ConfigEditor/Auth/tls/SkipTLSVerification.js.map +1 -1
  24. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js +3 -3
  25. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js.map +1 -1
  26. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettings.js.map +1 -1
  27. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettingsSection.js.map +1 -1
  28. package/dist/esm/components/ConfigEditor/Auth/types.js.map +1 -1
  29. package/dist/esm/components/ConfigEditor/Auth/utils.js +3 -3
  30. package/dist/esm/components/ConfigEditor/Auth/utils.js.map +1 -1
  31. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js +2 -2
  32. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js.map +1 -1
  33. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSection.js.map +1 -1
  34. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSubSection.js.map +1 -1
  35. package/dist/esm/components/ConfigEditor/ConfigSection/GenericConfigSection.js.map +1 -1
  36. package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js +1 -1
  37. package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js.map +1 -1
  38. package/dist/esm/components/ConfigEditor/DataSourceDescription.js.map +1 -1
  39. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js +234 -0
  40. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js.map +1 -0
  41. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceErrorBoundary.js +27 -0
  42. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceErrorBoundary.js.map +1 -0
  43. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js +71 -0
  44. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js.map +1 -0
  45. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js +54 -0
  46. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js.map +1 -0
  47. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js +181 -0
  48. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js.map +1 -0
  49. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/cel.js +75 -0
  50. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/cel.js.map +1 -0
  51. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/config.js +258 -0
  52. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/config.js.map +1 -0
  53. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/datasource.js +354 -0
  54. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/datasource.js.map +1 -0
  55. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js +138 -0
  56. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js.map +1 -0
  57. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useDatasourceConfigForm.js +326 -0
  58. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useDatasourceConfigForm.js.map +1 -0
  59. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useHealthChecks.js +106 -0
  60. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useHealthChecks.js.map +1 -0
  61. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/AuthorizationHeaderField.js +51 -0
  62. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/AuthorizationHeaderField.js.map +1 -0
  63. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ComplexFieldNote.js +26 -0
  64. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ComplexFieldNote.js.map +1 -0
  65. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/FileUploadField.js +106 -0
  66. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/FileUploadField.js.map +1 -0
  67. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/IndexedPairEditor.js +124 -0
  68. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/IndexedPairEditor.js.map +1 -0
  69. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ObjectArrayEditor.js +190 -0
  70. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ObjectArrayEditor.js.map +1 -0
  71. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/PdcFieldNote.js +31 -0
  72. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/PdcFieldNote.js.map +1 -0
  73. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/SecureFieldInput.js +59 -0
  74. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/SecureFieldInput.js.map +1 -0
  75. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/StringArrayInput.js +80 -0
  76. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/StringArrayInput.js.map +1 -0
  77. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/renderFieldInput.js +141 -0
  78. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/renderFieldInput.js.map +1 -0
  79. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/resolvePluginName.js +30 -0
  80. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/resolvePluginName.js.map +1 -0
  81. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/styles.js +360 -0
  82. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/styles.js.map +1 -0
  83. package/dist/esm/components/ConfigEditor/SecureSocksProxyToggle.js.map +1 -1
  84. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js +11 -11
  85. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js.map +1 -1
  86. package/dist/esm/components/DataLinks/DataLink.js +4 -4
  87. package/dist/esm/components/DataLinks/DataLink.js.map +1 -1
  88. package/dist/esm/components/DataLinks/DataLinks.js +3 -3
  89. package/dist/esm/components/DataLinks/DataLinks.js.map +1 -1
  90. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js +8 -8
  91. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js.map +1 -1
  92. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  93. package/dist/esm/components/DatePicker/styles.js +2 -2
  94. package/dist/esm/components/DatePicker/styles.js.map +1 -1
  95. package/dist/esm/components/DatePickerWithInput/DatePickerWithInput.js.map +1 -1
  96. package/dist/esm/components/DatePickerWithInput/styles.js +2 -2
  97. package/dist/esm/components/DatePickerWithInput/styles.js.map +1 -1
  98. package/dist/esm/components/DebounceInput/DebounceInput.js.map +1 -1
  99. package/dist/esm/components/Plugins/PluginSignatureBadge.js.map +1 -1
  100. package/dist/esm/components/QueryEditor/AccessoryButton.js.map +1 -1
  101. package/dist/esm/components/QueryEditor/CatalogSelector.js +1 -1
  102. package/dist/esm/components/QueryEditor/CatalogSelector.js.map +1 -1
  103. package/dist/esm/components/QueryEditor/ConfirmModal.js +1 -1
  104. package/dist/esm/components/QueryEditor/ConfirmModal.js.map +1 -1
  105. package/dist/esm/components/QueryEditor/DatasetSelector.js +1 -1
  106. package/dist/esm/components/QueryEditor/DatasetSelector.js.map +1 -1
  107. package/dist/esm/components/QueryEditor/EditorField.js +5 -5
  108. package/dist/esm/components/QueryEditor/EditorField.js.map +1 -1
  109. package/dist/esm/components/QueryEditor/EditorFieldGroup.js.map +1 -1
  110. package/dist/esm/components/QueryEditor/EditorHeader.js +2 -2
  111. package/dist/esm/components/QueryEditor/EditorHeader.js.map +1 -1
  112. package/dist/esm/components/QueryEditor/EditorList.js.map +1 -1
  113. package/dist/esm/components/QueryEditor/EditorRow.js +4 -4
  114. package/dist/esm/components/QueryEditor/EditorRow.js.map +1 -1
  115. package/dist/esm/components/QueryEditor/EditorRows.js +2 -2
  116. package/dist/esm/components/QueryEditor/EditorRows.js.map +1 -1
  117. package/dist/esm/components/QueryEditor/EditorStack.js +1 -1
  118. package/dist/esm/components/QueryEditor/EditorStack.js.map +1 -1
  119. package/dist/esm/components/QueryEditor/EditorSwitch.js +2 -2
  120. package/dist/esm/components/QueryEditor/EditorSwitch.js.map +1 -1
  121. package/dist/esm/components/QueryEditor/FlexItem.js.map +1 -1
  122. package/dist/esm/components/QueryEditor/InlineSelect.js +1 -1
  123. package/dist/esm/components/QueryEditor/InlineSelect.js.map +1 -1
  124. package/dist/esm/components/QueryEditor/InputGroup.js +2 -2
  125. package/dist/esm/components/QueryEditor/InputGroup.js.map +1 -1
  126. package/dist/esm/components/QueryEditor/QueryEditor.js +10 -8
  127. package/dist/esm/components/QueryEditor/QueryEditor.js.map +1 -1
  128. package/dist/esm/components/QueryEditor/QueryHeader.js +20 -20
  129. package/dist/esm/components/QueryEditor/QueryHeader.js.map +1 -1
  130. package/dist/esm/components/QueryEditor/RunQueryButton.js +1 -1
  131. package/dist/esm/components/QueryEditor/RunQueryButton.js.map +1 -1
  132. package/dist/esm/components/QueryEditor/Space.js +2 -2
  133. package/dist/esm/components/QueryEditor/Space.js.map +1 -1
  134. package/dist/esm/components/QueryEditor/TableSelector.js +0 -1
  135. package/dist/esm/components/QueryEditor/TableSelector.js.map +1 -1
  136. package/dist/esm/components/QueryEditor/defaults.js +7 -7
  137. package/dist/esm/components/QueryEditor/defaults.js.map +1 -1
  138. package/dist/esm/components/QueryEditor/expressions.js.map +1 -1
  139. package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js +10 -2
  140. package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js.map +1 -1
  141. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js +7 -2
  142. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js.map +1 -1
  143. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js +4 -4
  144. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js.map +1 -1
  145. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js +14 -4
  146. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js.map +1 -1
  147. package/dist/esm/components/QueryEditor/types.js +0 -1
  148. package/dist/esm/components/QueryEditor/types.js.map +1 -1
  149. package/dist/esm/components/QueryEditor/utils/formatSQL.js +15 -4
  150. package/dist/esm/components/QueryEditor/utils/formatSQL.js.map +1 -1
  151. package/dist/esm/components/QueryEditor/utils/sql.utils.js +8 -8
  152. package/dist/esm/components/QueryEditor/utils/sql.utils.js.map +1 -1
  153. package/dist/esm/components/QueryEditor/utils/useSqlChange.js.map +1 -1
  154. package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js +26 -27
  155. package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js.map +1 -1
  156. package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js +3 -3
  157. package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js.map +1 -1
  158. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js +2 -2
  159. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js.map +1 -1
  160. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRows.js.map +1 -1
  161. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js +2 -2
  162. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js.map +1 -1
  163. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js +4 -4
  164. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js.map +1 -1
  165. package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js +4 -4
  166. package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js.map +1 -1
  167. package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js +0 -1
  168. package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js.map +1 -1
  169. package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js +2 -3
  170. package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js.map +1 -1
  171. package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js +0 -1
  172. package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js.map +1 -1
  173. package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js +0 -1
  174. package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js.map +1 -1
  175. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js +9 -9
  176. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js.map +1 -1
  177. package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js +10 -2
  178. package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js.map +1 -1
  179. package/dist/esm/components/QueryEditor/visual-query-builder/WhereRow.js.map +1 -1
  180. package/dist/esm/components/QueryEditorRow/QueryEditorRow.js.map +1 -1
  181. package/dist/esm/components/SQLEditor/components/SQLEditor.js +13 -13
  182. package/dist/esm/components/SQLEditor/components/SQLEditor.js.map +1 -1
  183. package/dist/esm/components/SQLEditor/hooks/useLatestCallback.js +1 -1
  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 +0 -6
  197. package/dist/esm/components/SQLEditor/standardSql/definition.js.map +1 -1
  198. package/dist/esm/components/SQLEditor/standardSql/getStandardSuggestions.js +2 -2
  199. package/dist/esm/components/SQLEditor/standardSql/getStandardSuggestions.js.map +1 -1
  200. package/dist/esm/components/SQLEditor/standardSql/getStatementPosition.js +5 -4
  201. package/dist/esm/components/SQLEditor/standardSql/getStatementPosition.js.map +1 -1
  202. package/dist/esm/components/SQLEditor/standardSql/language.js.map +1 -1
  203. package/dist/esm/components/SQLEditor/standardSql/macros.js.map +1 -1
  204. package/dist/esm/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js +2 -2
  205. package/dist/esm/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js.map +1 -1
  206. package/dist/esm/components/SQLEditor/standardSql/standardSuggestionsRegistry.js +1 -1
  207. package/dist/esm/components/SQLEditor/standardSql/standardSuggestionsRegistry.js.map +1 -1
  208. package/dist/esm/components/SQLEditor/standardSql/statementPositionResolversRegistry.js +27 -26
  209. package/dist/esm/components/SQLEditor/standardSql/statementPositionResolversRegistry.js.map +1 -1
  210. package/dist/esm/components/SQLEditor/standardSql/suggestionsKindRegistry.js +1 -1
  211. package/dist/esm/components/SQLEditor/standardSql/suggestionsKindRegistry.js.map +1 -1
  212. package/dist/esm/components/SQLEditor/test-utils/index.js.map +1 -1
  213. package/dist/esm/components/SQLEditor/test-utils/statementPosition.js.map +1 -1
  214. package/dist/esm/components/SQLEditor/types.js +1 -17
  215. package/dist/esm/components/SQLEditor/types.js.map +1 -1
  216. package/dist/esm/components/SQLEditor/utils/LinkedToken.js +8 -8
  217. package/dist/esm/components/SQLEditor/utils/LinkedToken.js.map +1 -1
  218. package/dist/esm/components/SQLEditor/utils/commands.js.map +1 -1
  219. package/dist/esm/components/SQLEditor/utils/debugger.js +1 -1
  220. package/dist/esm/components/SQLEditor/utils/debugger.js.map +1 -1
  221. package/dist/esm/components/SQLEditor/utils/getSuggestionKind.js.map +1 -1
  222. package/dist/esm/components/SQLEditor/utils/linkedTokenBuilder.js +3 -3
  223. package/dist/esm/components/SQLEditor/utils/linkedTokenBuilder.js.map +1 -1
  224. package/dist/esm/components/SQLEditor/utils/toCompletionItem.js +1 -1
  225. package/dist/esm/components/SQLEditor/utils/toCompletionItem.js.map +1 -1
  226. package/dist/esm/components/SQLEditor/utils/tokenType.js +18 -0
  227. package/dist/esm/components/SQLEditor/utils/tokenType.js.map +1 -0
  228. package/dist/esm/components/SQLEditor/utils/tokenUtils.js +10 -10
  229. package/dist/esm/components/SQLEditor/utils/tokenUtils.js.map +1 -1
  230. package/dist/esm/components/Segment/Segment.js.map +1 -1
  231. package/dist/esm/components/VisualQueryBuilder/QueryModellerBase.js +2 -2
  232. package/dist/esm/components/VisualQueryBuilder/QueryModellerBase.js.map +1 -1
  233. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js +11 -11
  234. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js.map +1 -1
  235. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js +1 -1
  236. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js.map +1 -1
  237. package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js +4 -4
  238. package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js.map +1 -1
  239. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js +3 -3
  240. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js.map +1 -1
  241. package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js +3 -3
  242. package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js.map +1 -1
  243. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js +2 -2
  244. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js.map +1 -1
  245. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js +2 -2
  246. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js.map +1 -1
  247. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js +4 -4
  248. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js.map +1 -1
  249. package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js +2 -2
  250. package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js.map +1 -1
  251. package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js +6 -6
  252. package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js.map +1 -1
  253. package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js +3 -3
  254. package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js.map +1 -1
  255. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js +8 -8
  256. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js.map +1 -1
  257. package/dist/esm/components/VisualQueryBuilder/components/QueryEditorModeToggle.js.map +1 -1
  258. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js +3 -3
  259. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js.map +1 -1
  260. package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js +1 -1
  261. package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js.map +1 -1
  262. package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js +2 -2
  263. package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js.map +1 -1
  264. package/dist/esm/components/VisualQueryBuilder/types.js.map +1 -1
  265. package/dist/esm/datasource/SqlDatasource.js +14 -14
  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.map +1 -1
  269. package/dist/esm/index.d.ts +695 -40
  270. package/dist/esm/index.js +13 -1
  271. package/dist/esm/index.js.map +1 -1
  272. package/dist/esm/schema/registry/alertmanager.schema.json.js +77 -0
  273. package/dist/esm/schema/registry/alertmanager.schema.json.js.map +1 -0
  274. package/dist/esm/schema/registry/cloudwatch.schema.json.js +384 -0
  275. package/dist/esm/schema/registry/cloudwatch.schema.json.js.map +1 -0
  276. package/dist/esm/schema/registry/elasticsearch.schema.json.js +597 -0
  277. package/dist/esm/schema/registry/elasticsearch.schema.json.js.map +1 -0
  278. package/dist/esm/schema/registry/grafana-adobeanalytics-datasource.schema.json.js +95 -0
  279. package/dist/esm/schema/registry/grafana-adobeanalytics-datasource.schema.json.js.map +1 -0
  280. package/dist/esm/schema/registry/grafana-amazonprometheus-datasource.schema.json.js +166 -0
  281. package/dist/esm/schema/registry/grafana-amazonprometheus-datasource.schema.json.js.map +1 -0
  282. package/dist/esm/schema/registry/grafana-appdynamics-datasource.schema.json.js +145 -0
  283. package/dist/esm/schema/registry/grafana-appdynamics-datasource.schema.json.js.map +1 -0
  284. package/dist/esm/schema/registry/grafana-astradb-datasource.schema.json.js +123 -0
  285. package/dist/esm/schema/registry/grafana-astradb-datasource.schema.json.js.map +1 -0
  286. package/dist/esm/schema/registry/grafana-athena-datasource.schema.json.js +158 -0
  287. package/dist/esm/schema/registry/grafana-athena-datasource.schema.json.js.map +1 -0
  288. package/dist/esm/schema/registry/grafana-atlassianstatuspage-datasource.schema.json.js +43 -0
  289. package/dist/esm/schema/registry/grafana-atlassianstatuspage-datasource.schema.json.js.map +1 -0
  290. package/dist/esm/schema/registry/grafana-azure-data-explorer-datasource.schema.json.js +204 -0
  291. package/dist/esm/schema/registry/grafana-azure-data-explorer-datasource.schema.json.js.map +1 -0
  292. package/dist/esm/schema/registry/grafana-azure-monitor-datasource.schema.json.js +300 -0
  293. package/dist/esm/schema/registry/grafana-azure-monitor-datasource.schema.json.js.map +1 -0
  294. package/dist/esm/schema/registry/grafana-azuredevops-datasource.schema.json.js +101 -0
  295. package/dist/esm/schema/registry/grafana-azuredevops-datasource.schema.json.js.map +1 -0
  296. package/dist/esm/schema/registry/grafana-azureprometheus-datasource.schema.json.js +125 -0
  297. package/dist/esm/schema/registry/grafana-azureprometheus-datasource.schema.json.js.map +1 -0
  298. package/dist/esm/schema/registry/grafana-bigquery-datasource.schema.json.js +508 -0
  299. package/dist/esm/schema/registry/grafana-bigquery-datasource.schema.json.js.map +1 -0
  300. package/dist/esm/schema/registry/grafana-catchpoint-datasource.schema.json.js +42 -0
  301. package/dist/esm/schema/registry/grafana-catchpoint-datasource.schema.json.js.map +1 -0
  302. package/dist/esm/schema/registry/grafana-clickhouse-datasource.schema.json.js +1400 -0
  303. package/dist/esm/schema/registry/grafana-clickhouse-datasource.schema.json.js.map +1 -0
  304. package/dist/esm/schema/registry/grafana-cloudflare-datasource.schema.json.js +42 -0
  305. package/dist/esm/schema/registry/grafana-cloudflare-datasource.schema.json.js.map +1 -0
  306. package/dist/esm/schema/registry/grafana-cockroachdb-datasource.schema.json.js +302 -0
  307. package/dist/esm/schema/registry/grafana-cockroachdb-datasource.schema.json.js.map +1 -0
  308. package/dist/esm/schema/registry/grafana-databricks-datasource.schema.json.js +291 -0
  309. package/dist/esm/schema/registry/grafana-databricks-datasource.schema.json.js.map +1 -0
  310. package/dist/esm/schema/registry/grafana-datadog-datasource.schema.json.js +155 -0
  311. package/dist/esm/schema/registry/grafana-datadog-datasource.schema.json.js.map +1 -0
  312. package/dist/esm/schema/registry/grafana-drone-datasource.schema.json.js +64 -0
  313. package/dist/esm/schema/registry/grafana-drone-datasource.schema.json.js.map +1 -0
  314. package/dist/esm/schema/registry/grafana-dynatrace-datasource.schema.json.js +179 -0
  315. package/dist/esm/schema/registry/grafana-dynatrace-datasource.schema.json.js.map +1 -0
  316. package/dist/esm/schema/registry/grafana-falconlogscale-datasource.schema.json.js +134 -0
  317. package/dist/esm/schema/registry/grafana-falconlogscale-datasource.schema.json.js.map +1 -0
  318. package/dist/esm/schema/registry/grafana-github-datasource.schema.json.js +156 -0
  319. package/dist/esm/schema/registry/grafana-github-datasource.schema.json.js.map +1 -0
  320. package/dist/esm/schema/registry/grafana-gitlab-datasource.schema.json.js +84 -0
  321. package/dist/esm/schema/registry/grafana-gitlab-datasource.schema.json.js.map +1 -0
  322. package/dist/esm/schema/registry/grafana-googlesheets-datasource.schema.json.js +231 -0
  323. package/dist/esm/schema/registry/grafana-googlesheets-datasource.schema.json.js.map +1 -0
  324. package/dist/esm/schema/registry/grafana-honeycomb-datasource.schema.json.js +87 -0
  325. package/dist/esm/schema/registry/grafana-honeycomb-datasource.schema.json.js.map +1 -0
  326. package/dist/esm/schema/registry/grafana-iot-sitewise-datasource.schema.json.js +159 -0
  327. package/dist/esm/schema/registry/grafana-iot-sitewise-datasource.schema.json.js.map +1 -0
  328. package/dist/esm/schema/registry/grafana-jira-datasource.schema.json.js +188 -0
  329. package/dist/esm/schema/registry/grafana-jira-datasource.schema.json.js.map +1 -0
  330. package/dist/esm/schema/registry/grafana-logicmonitor-datasource.schema.json.js +63 -0
  331. package/dist/esm/schema/registry/grafana-logicmonitor-datasource.schema.json.js.map +1 -0
  332. package/dist/esm/schema/registry/grafana-looker-datasource.schema.json.js +82 -0
  333. package/dist/esm/schema/registry/grafana-looker-datasource.schema.json.js.map +1 -0
  334. package/dist/esm/schema/registry/grafana-mongodb-datasource.schema.json.js +278 -0
  335. package/dist/esm/schema/registry/grafana-mongodb-datasource.schema.json.js.map +1 -0
  336. package/dist/esm/schema/registry/grafana-mqtt-datasource.schema.json.js +168 -0
  337. package/dist/esm/schema/registry/grafana-mqtt-datasource.schema.json.js.map +1 -0
  338. package/dist/esm/schema/registry/grafana-netlify-datasource.schema.json.js +42 -0
  339. package/dist/esm/schema/registry/grafana-netlify-datasource.schema.json.js.map +1 -0
  340. package/dist/esm/schema/registry/grafana-newrelic-datasource.schema.json.js +129 -0
  341. package/dist/esm/schema/registry/grafana-newrelic-datasource.schema.json.js.map +1 -0
  342. package/dist/esm/schema/registry/grafana-odbc-datasource.schema.json.js +56 -0
  343. package/dist/esm/schema/registry/grafana-odbc-datasource.schema.json.js.map +1 -0
  344. package/dist/esm/schema/registry/grafana-opensearch-datasource.schema.json.js +212 -0
  345. package/dist/esm/schema/registry/grafana-opensearch-datasource.schema.json.js.map +1 -0
  346. package/dist/esm/schema/registry/grafana-oracle-datasource.schema.json.js +186 -0
  347. package/dist/esm/schema/registry/grafana-oracle-datasource.schema.json.js.map +1 -0
  348. package/dist/esm/schema/registry/grafana-pagerduty-datasource.schema.json.js +85 -0
  349. package/dist/esm/schema/registry/grafana-pagerduty-datasource.schema.json.js.map +1 -0
  350. package/dist/esm/schema/registry/grafana-postgresql-datasource.schema.json.js +411 -0
  351. package/dist/esm/schema/registry/grafana-postgresql-datasource.schema.json.js.map +1 -0
  352. package/dist/esm/schema/registry/grafana-pyroscope-datasource.schema.json.js +41 -0
  353. package/dist/esm/schema/registry/grafana-pyroscope-datasource.schema.json.js.map +1 -0
  354. package/dist/esm/schema/registry/grafana-redshift-datasource.schema.json.js +201 -0
  355. package/dist/esm/schema/registry/grafana-redshift-datasource.schema.json.js.map +1 -0
  356. package/dist/esm/schema/registry/grafana-salesforce-datasource.schema.json.js +248 -0
  357. package/dist/esm/schema/registry/grafana-salesforce-datasource.schema.json.js.map +1 -0
  358. package/dist/esm/schema/registry/grafana-saphana-datasource.schema.json.js +208 -0
  359. package/dist/esm/schema/registry/grafana-saphana-datasource.schema.json.js.map +1 -0
  360. package/dist/esm/schema/registry/grafana-sentry-datasource.schema.json.js +94 -0
  361. package/dist/esm/schema/registry/grafana-sentry-datasource.schema.json.js.map +1 -0
  362. package/dist/esm/schema/registry/grafana-servicenow-datasource.schema.json.js +179 -0
  363. package/dist/esm/schema/registry/grafana-servicenow-datasource.schema.json.js.map +1 -0
  364. package/dist/esm/schema/registry/grafana-snowflake-datasource.schema.json.js +304 -0
  365. package/dist/esm/schema/registry/grafana-snowflake-datasource.schema.json.js.map +1 -0
  366. package/dist/esm/schema/registry/grafana-solarwinds-datasource.schema.json.js +77 -0
  367. package/dist/esm/schema/registry/grafana-solarwinds-datasource.schema.json.js.map +1 -0
  368. package/dist/esm/schema/registry/grafana-splunk-datasource.schema.json.js +690 -0
  369. package/dist/esm/schema/registry/grafana-splunk-datasource.schema.json.js.map +1 -0
  370. package/dist/esm/schema/registry/grafana-splunkobservability-datasource.schema.json.js +90 -0
  371. package/dist/esm/schema/registry/grafana-splunkobservability-datasource.schema.json.js.map +1 -0
  372. package/dist/esm/schema/registry/grafana-strava-datasource.schema.json.js +74 -0
  373. package/dist/esm/schema/registry/grafana-strava-datasource.schema.json.js.map +1 -0
  374. package/dist/esm/schema/registry/grafana-sumologic-datasource.schema.json.js +102 -0
  375. package/dist/esm/schema/registry/grafana-sumologic-datasource.schema.json.js.map +1 -0
  376. package/dist/esm/schema/registry/grafana-surrealdb-datasource.schema.json.js +92 -0
  377. package/dist/esm/schema/registry/grafana-surrealdb-datasource.schema.json.js.map +1 -0
  378. package/dist/esm/schema/registry/grafana-timestream-datasource.schema.json.js +145 -0
  379. package/dist/esm/schema/registry/grafana-timestream-datasource.schema.json.js.map +1 -0
  380. package/dist/esm/schema/registry/grafana-vercel-datasource.schema.json.js +62 -0
  381. package/dist/esm/schema/registry/grafana-vercel-datasource.schema.json.js.map +1 -0
  382. package/dist/esm/schema/registry/grafana-wavefront-datasource.schema.json.js +80 -0
  383. package/dist/esm/schema/registry/grafana-wavefront-datasource.schema.json.js.map +1 -0
  384. package/dist/esm/schema/registry/grafana-x-ray-datasource.schema.json.js +112 -0
  385. package/dist/esm/schema/registry/grafana-x-ray-datasource.schema.json.js.map +1 -0
  386. package/dist/esm/schema/registry/grafana-yugabyte-datasource.schema.json.js +114 -0
  387. package/dist/esm/schema/registry/grafana-yugabyte-datasource.schema.json.js.map +1 -0
  388. package/dist/esm/schema/registry/grafana-zendesk-datasource.schema.json.js +76 -0
  389. package/dist/esm/schema/registry/grafana-zendesk-datasource.schema.json.js.map +1 -0
  390. package/dist/esm/schema/registry/graphite.schema.json.js +104 -0
  391. package/dist/esm/schema/registry/graphite.schema.json.js.map +1 -0
  392. package/dist/esm/schema/registry/index.js +157 -0
  393. package/dist/esm/schema/registry/index.js.map +1 -0
  394. package/dist/esm/schema/registry/influxdb.schema.json.js +717 -0
  395. package/dist/esm/schema/registry/influxdb.schema.json.js.map +1 -0
  396. package/dist/esm/schema/registry/jaeger.schema.json.js +59 -0
  397. package/dist/esm/schema/registry/jaeger.schema.json.js.map +1 -0
  398. package/dist/esm/schema/registry/loki.schema.json.js +545 -0
  399. package/dist/esm/schema/registry/loki.schema.json.js.map +1 -0
  400. package/dist/esm/schema/registry/marcusolsson-csv-datasource.schema.json.js +45 -0
  401. package/dist/esm/schema/registry/marcusolsson-csv-datasource.schema.json.js.map +1 -0
  402. package/dist/esm/schema/registry/marcusolsson-json-datasource.schema.json.js +36 -0
  403. package/dist/esm/schema/registry/marcusolsson-json-datasource.schema.json.js.map +1 -0
  404. package/dist/esm/schema/registry/mssql.schema.json.js +292 -0
  405. package/dist/esm/schema/registry/mssql.schema.json.js.map +1 -0
  406. package/dist/esm/schema/registry/mysql.schema.json.js +304 -0
  407. package/dist/esm/schema/registry/mysql.schema.json.js.map +1 -0
  408. package/dist/esm/schema/registry/opentsdb.schema.json.js +113 -0
  409. package/dist/esm/schema/registry/opentsdb.schema.json.js.map +1 -0
  410. package/dist/esm/schema/registry/prometheus.schema.json.js +783 -0
  411. package/dist/esm/schema/registry/prometheus.schema.json.js.map +1 -0
  412. package/dist/esm/schema/registry/stackdriver.schema.json.js +224 -0
  413. package/dist/esm/schema/registry/stackdriver.schema.json.js.map +1 -0
  414. package/dist/esm/schema/registry/tempo.schema.json.js +664 -0
  415. package/dist/esm/schema/registry/tempo.schema.json.js.map +1 -0
  416. package/dist/esm/schema/registry/yesoreyeram-infinity-datasource.schema.json.js +1073 -0
  417. package/dist/esm/schema/registry/yesoreyeram-infinity-datasource.schema.json.js.map +1 -0
  418. package/dist/esm/schema/registry/zipkin.schema.json.js +40 -0
  419. package/dist/esm/schema/registry/zipkin.schema.json.js.map +1 -0
  420. package/dist/esm/schema/utils/dsconfig.js +97 -0
  421. package/dist/esm/schema/utils/dsconfig.js.map +1 -0
  422. package/dist/esm/schema/utils/llm.js +54 -0
  423. package/dist/esm/schema/utils/llm.js.map +1 -0
  424. package/dist/esm/schema/utils/provisioning.js +434 -0
  425. package/dist/esm/schema/utils/provisioning.js.map +1 -0
  426. package/dist/esm/schema/utils/useDatasourceSchema.js +16 -0
  427. package/dist/esm/schema/utils/useDatasourceSchema.js.map +1 -0
  428. package/dist/esm/schemas.d.ts +448 -0
  429. package/dist/esm/schemas.js +6 -0
  430. package/dist/esm/schemas.js.map +1 -0
  431. package/dist/esm/test/mocks/DataQuery.js.map +1 -1
  432. package/dist/esm/test/mocks/Datasource.js +1 -1
  433. package/dist/esm/test/mocks/Datasource.js.map +1 -1
  434. package/dist/esm/test/mocks/Plugin.js +1 -1
  435. package/dist/esm/test/mocks/Plugin.js.map +1 -1
  436. package/dist/esm/test/mocks/QueryEditorProps.js.map +1 -1
  437. package/dist/esm/test/mocks/utils.js +2 -2
  438. package/dist/esm/test/mocks/utils.js.map +1 -1
  439. package/dist/esm/test-utils.d.ts +24 -24
  440. package/package.json +40 -20
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yesoreyeram-infinity-datasource.schema.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,40 @@
1
+ var $schema = "../schema.json";
2
+ var schemaVersion = "v1";
3
+ var pluginType = "zipkin";
4
+ var pluginName = "Zipkin";
5
+ var docURL = "https://grafana.com/docs/grafana/latest/datasources/zipkin/";
6
+ var fields = [
7
+ {
8
+ id: "jsonData.nodeGraph.enabled",
9
+ key: "enabled",
10
+ label: "Enable node graph",
11
+ description: "Shows the node graph visualization above the trace view.",
12
+ valueType: "boolean",
13
+ target: "jsonData",
14
+ section: "nodeGraph",
15
+ ui: {
16
+ component: "switch"
17
+ }
18
+ }
19
+ ];
20
+ var groups = [
21
+ {
22
+ id: "node-graph",
23
+ title: "Node graph",
24
+ fieldRefs: [
25
+ "jsonData.nodeGraph.enabled"
26
+ ]
27
+ }
28
+ ];
29
+ var zipkinSchema = {
30
+ $schema: $schema,
31
+ schemaVersion: schemaVersion,
32
+ pluginType: pluginType,
33
+ pluginName: pluginName,
34
+ docURL: docURL,
35
+ fields: fields,
36
+ groups: groups
37
+ };
38
+
39
+ export { $schema, zipkinSchema as default, docURL, fields, groups, pluginName, pluginType, schemaVersion };
40
+ //# sourceMappingURL=zipkin.schema.json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zipkin.schema.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,97 @@
1
+ const ROOT_CONFIG_FIELDS = [
2
+ "name",
3
+ "type",
4
+ "id",
5
+ "uid",
6
+ "access",
7
+ "url",
8
+ "basicAuth",
9
+ "basicAuthUser",
10
+ "user",
11
+ "isDefault",
12
+ "database",
13
+ "withCredentials"
14
+ ];
15
+ const buildCreateDatasourcePayload = (input) => {
16
+ const body = { name: input.name, type: input.type, access: "proxy" };
17
+ if (input.jsonData !== void 0) {
18
+ body.jsonData = { ...input.jsonData };
19
+ }
20
+ normalizeDatasourceConfig(body, input, { inferAuthMethod: true });
21
+ return body;
22
+ };
23
+ const buildCloneDatasourcePayload = (source, name) => {
24
+ var _a;
25
+ return { ...source, name, access: (_a = source.access) != null ? _a : "proxy", isDefault: false };
26
+ };
27
+ const buildUpdateDatasourcePayload = (existing, input) => {
28
+ var _a;
29
+ const body = {
30
+ name: existing.name,
31
+ type: existing.type,
32
+ access: existing.access,
33
+ url: existing.url,
34
+ database: existing.database,
35
+ basicAuth: existing.basicAuth,
36
+ basicAuthUser: existing.basicAuthUser,
37
+ isDefault: existing.isDefault,
38
+ user: existing.user,
39
+ withCredentials: existing.withCredentials,
40
+ jsonData: existing.jsonData
41
+ };
42
+ let hasChanges = false;
43
+ const UPDATE_COMPARABLE_FIELDS = ["name", "url", "database", "isDefault", "basicAuth"];
44
+ for (const key of UPDATE_COMPARABLE_FIELDS) {
45
+ if (input[key] !== void 0 && input[key] !== existing[key]) {
46
+ body[key] = input[key];
47
+ hasChanges = true;
48
+ }
49
+ }
50
+ if (input.jsonData !== void 0) {
51
+ body.jsonData = { ...(_a = existing.jsonData) != null ? _a : {}, ...input.jsonData };
52
+ hasChanges = true;
53
+ hasChanges = normalizeDatasourceConfig(body, input) || hasChanges;
54
+ }
55
+ return { body, hasChanges };
56
+ };
57
+ const normalizeDatasourceConfig = (body, input, options = {}) => {
58
+ const changed = hoistRootConfigFields(body, input);
59
+ if (options.inferAuthMethod) {
60
+ applyInferredAuthMethod(body, input);
61
+ }
62
+ return changed;
63
+ };
64
+ const hoistRootConfigFields = (body, input) => {
65
+ var _a;
66
+ const jsonData = (_a = body.jsonData) != null ? _a : {};
67
+ let changed = false;
68
+ for (const key of ROOT_CONFIG_FIELDS) {
69
+ if (jsonData[key] === void 0) {
70
+ continue;
71
+ }
72
+ if (input[key] === void 0) {
73
+ body[key] = jsonData[key];
74
+ changed = true;
75
+ }
76
+ delete jsonData[key];
77
+ }
78
+ body.jsonData = jsonData;
79
+ return changed;
80
+ };
81
+ const applyInferredAuthMethod = (body, input) => {
82
+ var _a;
83
+ const jsonData = (_a = body.jsonData) != null ? _a : {};
84
+ if (jsonData.authMethod !== void 0) {
85
+ body.jsonData = jsonData;
86
+ return;
87
+ }
88
+ if (jsonData.oauthPassThru === true) {
89
+ jsonData.authMethod = "forward_oauth";
90
+ } else if (body.basicAuth === true || input.basicAuth === true) {
91
+ jsonData.authMethod = "basic";
92
+ }
93
+ body.jsonData = jsonData;
94
+ };
95
+
96
+ export { ROOT_CONFIG_FIELDS, buildCloneDatasourcePayload, buildCreateDatasourcePayload, buildUpdateDatasourcePayload };
97
+ //# sourceMappingURL=dsconfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dsconfig.js","sources":["../../../../src/schema/utils/dsconfig.ts"],"sourcesContent":["export const ROOT_CONFIG_FIELDS = [\n 'name',\n 'type',\n 'id',\n 'uid',\n 'access',\n 'url',\n 'basicAuth',\n 'basicAuthUser',\n 'user',\n 'isDefault',\n 'database',\n 'withCredentials',\n] as const;\n\ntype DatasourceConfig = Record<any, any>;\n\nexport const buildCreateDatasourcePayload = (input: DatasourceConfig): DatasourceConfig => {\n const body: DatasourceConfig = { name: input.name, type: input.type, access: 'proxy' };\n if (input.jsonData !== undefined) {\n body.jsonData = { ...(input.jsonData as DatasourceConfig) };\n }\n normalizeDatasourceConfig(body, input, { inferAuthMethod: true });\n return body;\n};\n\nexport const buildCloneDatasourcePayload = (source: DatasourceConfig, name: string): DatasourceConfig => {\n return { ...source, name, access: source.access ?? 'proxy', isDefault: false };\n};\n\nexport const buildUpdateDatasourcePayload = (\n existing: DatasourceConfig,\n input: DatasourceConfig\n): { body: DatasourceConfig; hasChanges: boolean } => {\n const body: DatasourceConfig = {\n name: existing.name,\n type: existing.type,\n access: existing.access,\n url: existing.url,\n database: existing.database,\n basicAuth: existing.basicAuth,\n basicAuthUser: existing.basicAuthUser,\n isDefault: existing.isDefault,\n user: existing.user,\n withCredentials: existing.withCredentials,\n jsonData: existing.jsonData,\n };\n let hasChanges = false;\n const UPDATE_COMPARABLE_FIELDS = ['name', 'url', 'database', 'isDefault', 'basicAuth'] as const;\n for (const key of UPDATE_COMPARABLE_FIELDS) {\n if (input[key] !== undefined && input[key] !== existing[key]) {\n body[key] = input[key];\n hasChanges = true;\n }\n }\n\n if (input.jsonData !== undefined) {\n body.jsonData = { ...((existing.jsonData ?? {}) as DatasourceConfig), ...(input.jsonData as DatasourceConfig) };\n hasChanges = true;\n hasChanges = normalizeDatasourceConfig(body, input) || hasChanges;\n }\n\n return { body, hasChanges };\n};\n\nconst normalizeDatasourceConfig = (\n body: DatasourceConfig,\n input: DatasourceConfig,\n options: { inferAuthMethod?: boolean } = {}\n): boolean => {\n const changed = hoistRootConfigFields(body, input);\n if (options.inferAuthMethod) {\n applyInferredAuthMethod(body, input);\n }\n return changed;\n};\n\nconst hoistRootConfigFields = (body: DatasourceConfig, input: DatasourceConfig): boolean => {\n const jsonData = (body.jsonData as DatasourceConfig | undefined) ?? {};\n let changed = false;\n\n for (const key of ROOT_CONFIG_FIELDS) {\n if (jsonData[key] === undefined) {\n continue;\n }\n\n if (input[key] === undefined) {\n body[key] = jsonData[key];\n changed = true;\n }\n\n delete jsonData[key];\n }\n\n body.jsonData = jsonData;\n return changed;\n};\n\nconst applyInferredAuthMethod = (body: DatasourceConfig, input: DatasourceConfig): void => {\n const jsonData = (body.jsonData as DatasourceConfig | undefined) ?? {};\n\n if (jsonData.authMethod !== undefined) {\n body.jsonData = jsonData;\n return;\n }\n\n if (jsonData.oauthPassThru === true) {\n jsonData.authMethod = 'forward_oauth';\n } else if (body.basicAuth === true || input.basicAuth === true) {\n jsonData.authMethod = 'basic';\n }\n\n body.jsonData = jsonData;\n};\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ function generateLLMHint(schema) {
2
+ var _a, _b, _c, _d;
3
+ const hints = [];
4
+ for (const field of schema.fields) {
5
+ if (((_a = field.ui) == null ? void 0 : _a.component) !== "select" || field.target !== "jsonData" || field.kind === "virtual") {
6
+ continue;
7
+ }
8
+ const options = (_c = (_b = field.ui) == null ? void 0 : _b.options) != null ? _c : [];
9
+ const values = options.map((opt) => {
10
+ const isDefault = field.defaultValue != null && String(opt.value) === String(field.defaultValue);
11
+ return isDefault ? `"${opt.value}" (default)` : `"${opt.value}"`;
12
+ }).join(", ");
13
+ if (values) {
14
+ hints.push(`- ${(_d = field.label) != null ? _d : field.key}: jsonData.${field.key} \u2014 values: ${values}`);
15
+ }
16
+ }
17
+ return hints.join("\n");
18
+ }
19
+ function generateTroubleshootingFields(schema) {
20
+ var _a, _b, _c;
21
+ const result = [];
22
+ for (const field of schema.fields) {
23
+ if (field.kind === "virtual" || field.isItemField) {
24
+ continue;
25
+ }
26
+ const entry = {
27
+ label: (_a = field.label) != null ? _a : field.key,
28
+ key: field.target === "root" ? field.key : `${field.target}.${field.key}`,
29
+ target: (_b = field.target) != null ? _b : "jsonData",
30
+ type: field.valueType,
31
+ required: !!field.required
32
+ };
33
+ if (field.description) {
34
+ entry.description = field.description;
35
+ }
36
+ if (field.defaultValue != null) {
37
+ entry.defaultValue = field.defaultValue;
38
+ }
39
+ if (((_c = field.ui) == null ? void 0 : _c.options) && field.ui.options.length > 0) {
40
+ entry.options = field.ui.options.map((o) => String(o.value));
41
+ }
42
+ if (field.section) {
43
+ entry.section = field.section;
44
+ }
45
+ if (field.dependsOn) {
46
+ entry.dependsOn = field.dependsOn;
47
+ }
48
+ result.push(entry);
49
+ }
50
+ return result;
51
+ }
52
+
53
+ export { generateLLMHint, generateTroubleshootingFields };
54
+ //# sourceMappingURL=llm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm.js","sources":["../../../../src/schema/utils/llm.ts"],"sourcesContent":["import type { DatasourceConfigSchema } from '../schema';\n\n/**\n * Generate LLM hints for select fields (used when creating datasources).\n */\nexport function generateLLMHint(schema: DatasourceConfigSchema): string {\n const hints: string[] = [];\n for (const field of schema.fields) {\n if (field.ui?.component !== 'select' || field.target !== 'jsonData' || field.kind === 'virtual') {\n continue;\n }\n const options = field.ui?.options ?? [];\n const values = options\n .map((opt) => {\n const isDefault = field.defaultValue != null && String(opt.value) === String(field.defaultValue);\n return isDefault ? `\"${opt.value}\" (default)` : `\"${opt.value}\"`;\n })\n .join(', ');\n if (values) {\n hints.push(`- ${field.label ?? field.key}: jsonData.${field.key} — values: ${values}`);\n }\n }\n return hints.join('\\n');\n}\n\n/**\n * Generate comprehensive structured field data for troubleshooting context.\n * Returns an array of field descriptors the LLM can use to render rich tables.\n */\nexport function generateTroubleshootingFields(schema: DatasourceConfigSchema): Array<{\n label: string;\n key: string;\n target: string;\n type: string;\n required: boolean;\n description?: string;\n defaultValue?: unknown;\n options?: string[];\n section?: string;\n dependsOn?: string;\n}> {\n const result: Array<{\n label: string;\n key: string;\n target: string;\n type: string;\n required: boolean;\n description?: string;\n defaultValue?: unknown;\n options?: string[];\n section?: string;\n dependsOn?: string;\n }> = [];\n for (const field of schema.fields) {\n if (field.kind === 'virtual' || field.isItemField) {\n continue;\n }\n const entry: (typeof result)[0] = {\n label: field.label ?? field.key,\n key: field.target === 'root' ? field.key : `${field.target}.${field.key}`,\n target: field.target ?? 'jsonData',\n type: field.valueType,\n required: !!field.required,\n };\n if (field.description) {\n entry.description = field.description;\n }\n if (field.defaultValue != null) {\n entry.defaultValue = field.defaultValue;\n }\n if (field.ui?.options && field.ui.options.length > 0) {\n entry.options = field.ui.options.map((o) => String(o.value));\n }\n if (field.section) {\n entry.section = field.section;\n }\n if (field.dependsOn) {\n entry.dependsOn = field.dependsOn;\n }\n result.push(entry);\n }\n return result;\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,434 @@
1
+ import yaml from 'js-yaml';
2
+ import { resolveGroups } from '../../components/ConfigEditor/DatasourceConfigWizard/config.js';
3
+ import { ROOT_CONFIG_FIELDS } from './dsconfig.js';
4
+
5
+ function yamlIndent(depth) {
6
+ return " ".repeat(depth);
7
+ }
8
+ function yamlString(value) {
9
+ if (value === null || value === void 0) {
10
+ return '""';
11
+ }
12
+ const s = String(value);
13
+ if (s === "") {
14
+ return '""';
15
+ }
16
+ return yaml.dump(s, { lineWidth: -1 }).trimEnd();
17
+ }
18
+ function yamlValue(value, depth) {
19
+ if (value === null || value === void 0) {
20
+ return '""';
21
+ }
22
+ if (typeof value === "boolean") {
23
+ return value ? "true" : "false";
24
+ }
25
+ if (typeof value === "number") {
26
+ return String(value);
27
+ }
28
+ if (typeof value === "string") {
29
+ return yamlString(value);
30
+ }
31
+ if (Array.isArray(value)) {
32
+ if (value.length === 0) {
33
+ return "[]";
34
+ }
35
+ const lines = value.map((item) => {
36
+ if (typeof item === "object" && item !== null && !Array.isArray(item)) {
37
+ const entries = Object.entries(item);
38
+ if (entries.length === 0) {
39
+ return `${yamlIndent(depth)}- {}`;
40
+ }
41
+ const [firstKey, firstVal] = entries[0];
42
+ const firstLine = `${yamlIndent(depth)}- ${yamlString(firstKey)}: ${yamlValue(firstVal, depth + 2)}`;
43
+ const rest = entries.slice(1).map(([k, v]) => `${yamlIndent(depth + 1)}${yamlString(k)}: ${yamlValue(v, depth + 2)}`);
44
+ return [firstLine, ...rest].join("\n");
45
+ }
46
+ return `${yamlIndent(depth)}- ${yamlValue(item, depth + 1)}`;
47
+ });
48
+ return "\n" + lines.join("\n");
49
+ }
50
+ if (typeof value === "object") {
51
+ const entries = Object.entries(value);
52
+ if (entries.length === 0) {
53
+ return "{}";
54
+ }
55
+ const lines = entries.map(([k, v]) => `${yamlIndent(depth)}${yamlString(k)}: ${yamlValue(v, depth + 1)}`);
56
+ return "\n" + lines.join("\n");
57
+ }
58
+ return yamlString(value);
59
+ }
60
+ function isCertField(field) {
61
+ var _a;
62
+ const k = field.key.toLowerCase();
63
+ return field.target === "secureJsonData" && (k.includes("cert") || k.includes("key") || ((_a = field.ui) == null ? void 0 : _a.component) === "textarea");
64
+ }
65
+ function isExcludedFromProvisioning(field) {
66
+ var _a, _b;
67
+ if (field.kind === "virtual") {
68
+ return true;
69
+ }
70
+ if (field.isItemField) {
71
+ return true;
72
+ }
73
+ if (((_a = field.tags) == null ? void 0 : _a.some((t) => t.startsWith("managed-by:"))) && field.target !== "root") {
74
+ return true;
75
+ }
76
+ if (((_b = field.storage) == null ? void 0 : _b.type) === "indexedPair") {
77
+ return true;
78
+ }
79
+ return false;
80
+ }
81
+ function secretPlaceholder(field) {
82
+ if (isCertField(field)) {
83
+ return "|\n xxxxxx";
84
+ }
85
+ return "xxxxxx";
86
+ }
87
+ function templateValue(field) {
88
+ var _a;
89
+ if (field.defaultValue !== void 0) {
90
+ return field.defaultValue;
91
+ }
92
+ if (((_a = field.ui) == null ? void 0 : _a.options) && field.ui.options.length > 0) {
93
+ return field.ui.options[0].value;
94
+ }
95
+ switch (field.valueType) {
96
+ case "string":
97
+ return "";
98
+ case "number":
99
+ return 0;
100
+ case "boolean":
101
+ return false;
102
+ case "array":
103
+ return [];
104
+ case "object":
105
+ case "map":
106
+ return {};
107
+ default:
108
+ return "";
109
+ }
110
+ }
111
+ function fieldComment(field, indent) {
112
+ var _a, _b, _c;
113
+ const parts = [];
114
+ const label = (_a = field.label) != null ? _a : field.key;
115
+ let line = label;
116
+ if (field.required) {
117
+ line += " (REQUIRED)";
118
+ }
119
+ if (field.description) {
120
+ line += ` \u2014 ${field.description}`;
121
+ }
122
+ parts.push(`${indent}# ${line}`);
123
+ const options = (_b = field.ui) == null ? void 0 : _b.options;
124
+ if (options && options.length > 0) {
125
+ const vals = options.map((o) => String(o.value)).join(", ");
126
+ parts.push(`${indent}# Allowed values: ${vals}`);
127
+ }
128
+ const allowedValuesRule = (_c = field.validations) == null ? void 0 : _c.find(
129
+ (v) => v.type === "allowedValues"
130
+ );
131
+ if (allowedValuesRule && !options) {
132
+ const vals = allowedValuesRule.values.map((v) => String(v)).join(", ");
133
+ parts.push(`${indent}# Allowed values: ${vals}`);
134
+ }
135
+ if (field.dependsOn) {
136
+ parts.push(`${indent}# Only when: ${field.dependsOn}`);
137
+ }
138
+ return parts.join("\n");
139
+ }
140
+ function toProvisioningYaml(schema, values, options) {
141
+ var _a, _b, _c, _d, _e, _f;
142
+ const isTemplate = !values;
143
+ const showComments = (_a = options == null ? void 0 : options.comments) != null ? _a : isTemplate;
144
+ const indent2 = " ";
145
+ const indent3 = " ";
146
+ const groups = resolveGroups(schema);
147
+ const rootFields = [];
148
+ const jsonDataFieldsByGroup = [];
149
+ const secureJsonDataFieldsByGroup = [];
150
+ const virtualFieldsWithOptions = [];
151
+ for (const { group, fields } of groups) {
152
+ const jd = [];
153
+ const sd = [];
154
+ for (const field of fields) {
155
+ if (field.kind === "virtual" && ((_b = field.ui) == null ? void 0 : _b.options) && field.ui.options.length > 0) {
156
+ virtualFieldsWithOptions.push(field);
157
+ continue;
158
+ }
159
+ if (isExcludedFromProvisioning(field)) {
160
+ continue;
161
+ }
162
+ switch (field.target) {
163
+ case "root":
164
+ rootFields.push(field);
165
+ break;
166
+ case "jsonData":
167
+ jd.push(field);
168
+ break;
169
+ case "secureJsonData":
170
+ sd.push(field);
171
+ break;
172
+ }
173
+ }
174
+ if (jd.length > 0) {
175
+ jsonDataFieldsByGroup.push({ group, fields: jd });
176
+ }
177
+ if (sd.length > 0) {
178
+ secureJsonDataFieldsByGroup.push({ group, fields: sd });
179
+ }
180
+ }
181
+ const allSecureJsonDataFields = secureJsonDataFieldsByGroup.flatMap((g) => g.fields);
182
+ const groupedFieldIds = new Set(groups.flatMap(({ group }) => group.fieldRefs));
183
+ for (const field of schema.fields) {
184
+ if (field.target === "root" && !groupedFieldIds.has(field.id) && !isExcludedFromProvisioning(field)) {
185
+ rootFields.push(field);
186
+ }
187
+ }
188
+ const lines = [];
189
+ lines.push("apiVersion: 1");
190
+ lines.push("");
191
+ lines.push("datasources:");
192
+ lines.push(`${indent2.slice(2)}- name: ${yamlString((_d = (_c = options == null ? void 0 : options.name) != null ? _c : values == null ? void 0 : values.name) != null ? _d : `my-${schema.pluginType}`)}`);
193
+ lines.push(`${indent2}type: ${schema.pluginType}`);
194
+ if (!isTemplate && (values == null ? void 0 : values.uid)) {
195
+ lines.push(`${indent2}uid: ${yamlString(values.uid)}`);
196
+ }
197
+ const ALREADY_EMITTED_ROOT = /* @__PURE__ */ new Set(["name", "type", "uid"]);
198
+ for (const field of rootFields) {
199
+ if (ALREADY_EMITTED_ROOT.has(field.key)) {
200
+ continue;
201
+ }
202
+ const val = values ? values[field.key] : templateValue(field);
203
+ if (val === void 0 || val === null) {
204
+ continue;
205
+ }
206
+ if (!isTemplate && val === false) {
207
+ continue;
208
+ }
209
+ if (showComments) {
210
+ lines.push(fieldComment(field, indent2));
211
+ }
212
+ lines.push(`${indent2}${field.key}: ${yamlValue(val, 3)}`);
213
+ }
214
+ if (showComments) {
215
+ for (const vf of virtualFieldsWithOptions) {
216
+ const label = (_e = vf.label) != null ? _e : vf.key;
217
+ const opts = vf.ui.options.map((o) => `${String(o.value)} (${o.label})`).join(", ");
218
+ lines.push(`${indent2}# ${label}: ${opts}`);
219
+ if (vf.description) {
220
+ lines.push(`${indent2}# ${vf.description}`);
221
+ }
222
+ }
223
+ }
224
+ const emittedJsonDataKeys = /* @__PURE__ */ new Set();
225
+ const emittedSecureJsonDataKeys = /* @__PURE__ */ new Set();
226
+ const jsonDataValues = values == null ? void 0 : values.jsonData;
227
+ const hasJsonDataFromSchema = jsonDataFieldsByGroup.length > 0;
228
+ const hasJsonDataFromValues = !isTemplate && jsonDataValues && Object.keys(jsonDataValues).length > 0;
229
+ if (hasJsonDataFromSchema || hasJsonDataFromValues) {
230
+ lines.push(`${indent2}jsonData:`);
231
+ for (const { group, fields: groupFields } of jsonDataFieldsByGroup) {
232
+ if (showComments && jsonDataFieldsByGroup.length > 1) {
233
+ lines.push(`${indent3}# --- ${group.title} ---`);
234
+ }
235
+ for (const field of groupFields) {
236
+ const val = values ? getNestedValue(values, "jsonData", field) : templateValue(field);
237
+ if (val === void 0 || val === null) {
238
+ continue;
239
+ }
240
+ if (!isTemplate && field.defaultValue !== void 0 && val === field.defaultValue) {
241
+ continue;
242
+ }
243
+ emittedJsonDataKeys.add(field.key);
244
+ if (showComments) {
245
+ lines.push(fieldComment(field, indent3));
246
+ }
247
+ const rendered = yamlValue(val, 4);
248
+ if (rendered.startsWith("\n")) {
249
+ lines.push(`${indent3}${field.key}:${rendered}`);
250
+ } else {
251
+ lines.push(`${indent3}${field.key}: ${rendered}`);
252
+ }
253
+ }
254
+ }
255
+ if (!isTemplate && jsonDataValues) {
256
+ for (const [key, val] of Object.entries(jsonDataValues)) {
257
+ if (emittedJsonDataKeys.has(key)) {
258
+ continue;
259
+ }
260
+ if (val === void 0 || val === null) {
261
+ continue;
262
+ }
263
+ const rendered = yamlValue(val, 4);
264
+ if (rendered.startsWith("\n")) {
265
+ lines.push(`${indent3}${key}:${rendered}`);
266
+ } else {
267
+ lines.push(`${indent3}${key}: ${rendered}`);
268
+ }
269
+ }
270
+ }
271
+ }
272
+ const secureJsonFields = (_f = values == null ? void 0 : values.secureJsonFields) != null ? _f : {};
273
+ const inferredSecureKeys = !isTemplate ? inferSecureJsonDataKeys(jsonDataValues) : [];
274
+ const activeSecureFields = isTemplate ? allSecureJsonDataFields : allSecureJsonDataFields.filter((f) => secureJsonFields[f.key] === true);
275
+ if (activeSecureFields.length > 0 || inferredSecureKeys.length > 0) {
276
+ lines.push(`${indent2}secureJsonData:`);
277
+ for (const field of activeSecureFields) {
278
+ emittedSecureJsonDataKeys.add(field.key);
279
+ if (showComments) {
280
+ lines.push(fieldComment(field, indent3));
281
+ }
282
+ lines.push(`${indent3}${field.key}: ${secretPlaceholder(field)}`);
283
+ }
284
+ for (const key of inferredSecureKeys) {
285
+ if (emittedSecureJsonDataKeys.has(key)) {
286
+ continue;
287
+ }
288
+ lines.push(`${indent3}${key}: xxxxxx`);
289
+ }
290
+ }
291
+ return lines.join("\n");
292
+ }
293
+ function inferSecureJsonDataKeys(jsonData) {
294
+ if (!jsonData) {
295
+ return [];
296
+ }
297
+ const keys = [];
298
+ for (const key of Object.keys(jsonData)) {
299
+ const match = key.match(/^httpHeaderName(\d+)$/);
300
+ if (match) {
301
+ keys.push(`httpHeaderValue${match[1]}`);
302
+ }
303
+ }
304
+ return keys;
305
+ }
306
+ function getNestedValue(values, target, field) {
307
+ const nested = values[target];
308
+ if (nested && typeof nested === "object") {
309
+ return nested[field.key];
310
+ }
311
+ return void 0;
312
+ }
313
+ function datasourceToProvisioningYaml(ds, schema) {
314
+ if (schema) {
315
+ return toProvisioningYaml(schema, ds, { comments: false });
316
+ }
317
+ const lines = [];
318
+ lines.push("apiVersion: 1");
319
+ lines.push("");
320
+ lines.push("datasources:");
321
+ lines.push(` - name: ${yamlString(ds.name)}`);
322
+ if (ds.uid) {
323
+ lines.push(` uid: ${yamlString(ds.uid)}`);
324
+ }
325
+ lines.push(` type: ${yamlString(ds.type)}`);
326
+ if (ds.url) {
327
+ lines.push(` url: ${yamlString(ds.url)}`);
328
+ }
329
+ if (ds.database) {
330
+ lines.push(` database: ${yamlString(ds.database)}`);
331
+ }
332
+ if (ds.isDefault) {
333
+ lines.push(" isDefault: true");
334
+ }
335
+ if (ds.basicAuth) {
336
+ lines.push(" basicAuth: true");
337
+ if (ds.basicAuthUser) {
338
+ lines.push(` basicAuthUser: ${yamlString(ds.basicAuthUser)}`);
339
+ }
340
+ }
341
+ const jsonData = ds.jsonData;
342
+ if (jsonData && Object.keys(jsonData).length > 0) {
343
+ lines.push(" jsonData:");
344
+ for (const [key, val] of Object.entries(jsonData)) {
345
+ const rendered = yamlValue(val, 4);
346
+ if (rendered.startsWith("\n")) {
347
+ lines.push(` ${key}:${rendered}`);
348
+ } else {
349
+ lines.push(` ${key}: ${rendered}`);
350
+ }
351
+ }
352
+ }
353
+ lines.push(" # secureJsonData: (secrets are not exported \u2014 add manually)");
354
+ lines.push(" # mySecret: xxxxxx");
355
+ return lines.join("\n");
356
+ }
357
+ function getYamlRenderOptions(ds) {
358
+ var _a, _b, _c;
359
+ return {
360
+ jsonDataKeys: Object.keys((_a = ds.jsonData) != null ? _a : {}).sort(),
361
+ secureKeys: [
362
+ .../* @__PURE__ */ new Set([
363
+ ...Object.keys((_b = ds.secureJsonData) != null ? _b : {}),
364
+ ...Object.keys((_c = ds.secureJsonFields) != null ? _c : {})
365
+ ])
366
+ ].sort()
367
+ };
368
+ }
369
+ const configToYaml = (ds, options = {}) => {
370
+ var _a, _b, _c;
371
+ const { jsonDataKeys, secureKeys } = {
372
+ ...getYamlRenderOptions(ds),
373
+ ...options
374
+ };
375
+ const root = {};
376
+ for (const key of ROOT_CONFIG_FIELDS) {
377
+ root[key] = (_a = ds[key]) != null ? _a : "";
378
+ }
379
+ const jsonData = (_b = ds.jsonData) != null ? _b : {};
380
+ if (jsonDataKeys.length > 0) {
381
+ const jsonDataYaml = {};
382
+ for (const key of jsonDataKeys) {
383
+ jsonDataYaml[key] = (_c = jsonData[key]) != null ? _c : "";
384
+ }
385
+ root.jsonData = jsonDataYaml;
386
+ }
387
+ if (secureKeys.length > 0) {
388
+ const secureJsonData = {};
389
+ for (const key of secureKeys) {
390
+ secureJsonData[key] = "********";
391
+ }
392
+ root.secureJsonData = secureJsonData;
393
+ }
394
+ return yaml.dump(root, { lineWidth: -1, sortKeys: false, noRefs: true }).trimEnd();
395
+ };
396
+ const formatYamlDiff = (existing, body) => {
397
+ var _a, _b, _c, _d, _e, _f;
398
+ const updated = { ...existing, ...body };
399
+ const existingJD = (_a = existing.jsonData) != null ? _a : {};
400
+ const updatedJD = (_b = updated.jsonData) != null ? _b : {};
401
+ const jsonDataKeys = [.../* @__PURE__ */ new Set([...Object.keys(existingJD), ...Object.keys(updatedJD)])].sort();
402
+ const secureKeys = [
403
+ .../* @__PURE__ */ new Set([
404
+ ...Object.keys((_c = existing.secureJsonData) != null ? _c : {}),
405
+ ...Object.keys((_d = existing.secureJsonFields) != null ? _d : {}),
406
+ ...Object.keys((_e = updated.secureJsonData) != null ? _e : {}),
407
+ ...Object.keys((_f = updated.secureJsonFields) != null ? _f : {})
408
+ ])
409
+ ].sort();
410
+ const currentYaml = configToYaml(existing, { jsonDataKeys, secureKeys });
411
+ const updatedYaml = configToYaml(updated, { jsonDataKeys, secureKeys });
412
+ const oldLines = currentYaml.split("\n");
413
+ const newLines = updatedYaml.split("\n");
414
+ const maxLen = Math.max(oldLines.length, newLines.length);
415
+ const diffLines = [];
416
+ for (let i = 0; i < maxLen; i++) {
417
+ const oldLine = oldLines[i];
418
+ const newLine = newLines[i];
419
+ if (oldLine === newLine) {
420
+ diffLines.push(` ${oldLine}`);
421
+ continue;
422
+ }
423
+ if (oldLine !== void 0) {
424
+ diffLines.push(`-${oldLine}`);
425
+ }
426
+ if (newLine !== void 0) {
427
+ diffLines.push(`+${newLine}`);
428
+ }
429
+ }
430
+ return "```diff\n" + diffLines.join("\n") + "\n```";
431
+ };
432
+
433
+ export { configToYaml, datasourceToProvisioningYaml, formatYamlDiff, toProvisioningYaml };
434
+ //# sourceMappingURL=provisioning.js.map