@grafana/plugin-ui 0.16.0-dsconfig.d7f2506 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (220) hide show
  1. package/dist/cjs/index.cjs +15500 -11375
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/cjs/index.d.cts +599 -930
  4. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js +8 -5
  5. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js.map +1 -1
  6. package/dist/esm/index.d.ts +599 -930
  7. package/dist/esm/index.js +2 -11
  8. package/dist/esm/index.js.map +1 -1
  9. package/dist/esm/node_modules/semver/classes/range.js +4 -24
  10. package/dist/esm/node_modules/semver/classes/range.js.map +1 -1
  11. package/dist/esm/node_modules/semver/classes/semver.js +2 -19
  12. package/dist/esm/node_modules/semver/classes/semver.js.map +1 -1
  13. package/dist/esm/node_modules/semver/functions/diff.js +1 -1
  14. package/dist/esm/node_modules/semver/functions/diff.js.map +1 -1
  15. package/dist/esm/node_modules/semver/index.js +0 -3
  16. package/dist/esm/node_modules/semver/index.js.map +1 -1
  17. package/dist/esm/node_modules/semver/internal/re.js +3 -3
  18. package/dist/esm/node_modules/semver/internal/re.js.map +1 -1
  19. package/dist/esm/node_modules/semver/ranges/subset.js +3 -3
  20. package/dist/esm/node_modules/semver/ranges/subset.js.map +1 -1
  21. package/dist/esm/node_modules/tslib/tslib.es6.js.map +1 -1
  22. package/dist/esm/schema/registry/alertmanager.schema.json.js +77 -0
  23. package/dist/esm/schema/registry/alertmanager.schema.json.js.map +1 -0
  24. package/dist/esm/schema/registry/cloudwatch.schema.json.js +384 -0
  25. package/dist/esm/schema/registry/cloudwatch.schema.json.js.map +1 -0
  26. package/dist/esm/schema/registry/elasticsearch.schema.json.js +287 -0
  27. package/dist/esm/schema/registry/elasticsearch.schema.json.js.map +1 -0
  28. package/dist/esm/schema/registry/grafana-amazonprometheus-datasource.schema.json.js +166 -0
  29. package/dist/esm/schema/registry/grafana-amazonprometheus-datasource.schema.json.js.map +1 -0
  30. package/dist/esm/schema/registry/grafana-appdynamics-datasource.schema.json.js +145 -0
  31. package/dist/esm/schema/registry/grafana-appdynamics-datasource.schema.json.js.map +1 -0
  32. package/dist/esm/schema/registry/grafana-astradb-datasource.schema.json.js +123 -0
  33. package/dist/esm/schema/registry/grafana-astradb-datasource.schema.json.js.map +1 -0
  34. package/dist/esm/schema/registry/grafana-athena-datasource.schema.json.js +158 -0
  35. package/dist/esm/schema/registry/grafana-athena-datasource.schema.json.js.map +1 -0
  36. package/dist/esm/schema/registry/grafana-azure-data-explorer-datasource.schema.json.js +204 -0
  37. package/dist/esm/schema/registry/grafana-azure-data-explorer-datasource.schema.json.js.map +1 -0
  38. package/dist/esm/schema/registry/grafana-azure-monitor-datasource.schema.json.js +294 -0
  39. package/dist/esm/schema/registry/grafana-azure-monitor-datasource.schema.json.js.map +1 -0
  40. package/dist/esm/schema/registry/grafana-azuredevops-datasource.schema.json.js +101 -0
  41. package/dist/esm/schema/registry/grafana-azuredevops-datasource.schema.json.js.map +1 -0
  42. package/dist/esm/schema/registry/grafana-azureprometheus-datasource.schema.json.js +125 -0
  43. package/dist/esm/schema/registry/grafana-azureprometheus-datasource.schema.json.js.map +1 -0
  44. package/dist/esm/schema/registry/grafana-bigquery-datasource.schema.json.js +508 -0
  45. package/dist/esm/schema/registry/grafana-bigquery-datasource.schema.json.js.map +1 -0
  46. package/dist/esm/schema/registry/grafana-clickhouse-datasource.schema.json.js +1400 -0
  47. package/dist/esm/schema/registry/grafana-clickhouse-datasource.schema.json.js.map +1 -0
  48. package/dist/esm/schema/registry/grafana-cockroachdb-datasource.schema.json.js +302 -0
  49. package/dist/esm/schema/registry/grafana-cockroachdb-datasource.schema.json.js.map +1 -0
  50. package/dist/esm/schema/registry/grafana-databricks-datasource.schema.json.js +291 -0
  51. package/dist/esm/schema/registry/grafana-databricks-datasource.schema.json.js.map +1 -0
  52. package/dist/esm/schema/registry/grafana-datadog-datasource.schema.json.js +155 -0
  53. package/dist/esm/schema/registry/grafana-datadog-datasource.schema.json.js.map +1 -0
  54. package/dist/esm/schema/registry/grafana-dynatrace-datasource.schema.json.js +179 -0
  55. package/dist/esm/schema/registry/grafana-dynatrace-datasource.schema.json.js.map +1 -0
  56. package/dist/esm/schema/registry/grafana-falconlogscale-datasource.schema.json.js +134 -0
  57. package/dist/esm/schema/registry/grafana-falconlogscale-datasource.schema.json.js.map +1 -0
  58. package/dist/esm/schema/registry/grafana-github-datasource.schema.json.js +156 -0
  59. package/dist/esm/schema/registry/grafana-github-datasource.schema.json.js.map +1 -0
  60. package/dist/esm/schema/registry/grafana-gitlab-datasource.schema.json.js +84 -0
  61. package/dist/esm/schema/registry/grafana-gitlab-datasource.schema.json.js.map +1 -0
  62. package/dist/esm/schema/registry/grafana-googlesheets-datasource.schema.json.js +231 -0
  63. package/dist/esm/schema/registry/grafana-googlesheets-datasource.schema.json.js.map +1 -0
  64. package/dist/esm/schema/registry/grafana-honeycomb-datasource.schema.json.js +87 -0
  65. package/dist/esm/schema/registry/grafana-honeycomb-datasource.schema.json.js.map +1 -0
  66. package/dist/esm/schema/registry/grafana-iot-sitewise-datasource.schema.json.js +159 -0
  67. package/dist/esm/schema/registry/grafana-iot-sitewise-datasource.schema.json.js.map +1 -0
  68. package/dist/esm/schema/registry/grafana-jira-datasource.schema.json.js +188 -0
  69. package/dist/esm/schema/registry/grafana-jira-datasource.schema.json.js.map +1 -0
  70. package/dist/esm/schema/registry/grafana-looker-datasource.schema.json.js +82 -0
  71. package/dist/esm/schema/registry/grafana-looker-datasource.schema.json.js.map +1 -0
  72. package/dist/esm/schema/registry/grafana-mongodb-datasource.schema.json.js +278 -0
  73. package/dist/esm/schema/registry/grafana-mongodb-datasource.schema.json.js.map +1 -0
  74. package/dist/esm/schema/registry/grafana-mqtt-datasource.schema.json.js +168 -0
  75. package/dist/esm/schema/registry/grafana-mqtt-datasource.schema.json.js.map +1 -0
  76. package/dist/esm/schema/registry/grafana-newrelic-datasource.schema.json.js +129 -0
  77. package/dist/esm/schema/registry/grafana-newrelic-datasource.schema.json.js.map +1 -0
  78. package/dist/esm/schema/registry/grafana-odbc-datasource.schema.json.js +56 -0
  79. package/dist/esm/schema/registry/grafana-odbc-datasource.schema.json.js.map +1 -0
  80. package/dist/esm/schema/registry/grafana-opensearch-datasource.schema.json.js +212 -0
  81. package/dist/esm/schema/registry/grafana-opensearch-datasource.schema.json.js.map +1 -0
  82. package/dist/esm/schema/registry/grafana-oracle-datasource.schema.json.js +186 -0
  83. package/dist/esm/schema/registry/grafana-oracle-datasource.schema.json.js.map +1 -0
  84. package/dist/esm/schema/registry/grafana-pagerduty-datasource.schema.json.js +85 -0
  85. package/dist/esm/schema/registry/grafana-pagerduty-datasource.schema.json.js.map +1 -0
  86. package/dist/esm/schema/registry/grafana-postgresql-datasource.schema.json.js +411 -0
  87. package/dist/esm/schema/registry/grafana-postgresql-datasource.schema.json.js.map +1 -0
  88. package/dist/esm/schema/registry/grafana-pyroscope-datasource.schema.json.js +41 -0
  89. package/dist/esm/schema/registry/grafana-pyroscope-datasource.schema.json.js.map +1 -0
  90. package/dist/esm/schema/registry/grafana-redshift-datasource.schema.json.js +201 -0
  91. package/dist/esm/schema/registry/grafana-redshift-datasource.schema.json.js.map +1 -0
  92. package/dist/esm/schema/registry/grafana-salesforce-datasource.schema.json.js +201 -0
  93. package/dist/esm/schema/registry/grafana-salesforce-datasource.schema.json.js.map +1 -0
  94. package/dist/esm/schema/registry/grafana-saphana-datasource.schema.json.js +208 -0
  95. package/dist/esm/schema/registry/grafana-saphana-datasource.schema.json.js.map +1 -0
  96. package/dist/esm/schema/registry/grafana-sentry-datasource.schema.json.js +94 -0
  97. package/dist/esm/schema/registry/grafana-sentry-datasource.schema.json.js.map +1 -0
  98. package/dist/esm/schema/registry/grafana-servicenow-datasource.schema.json.js +179 -0
  99. package/dist/esm/schema/registry/grafana-servicenow-datasource.schema.json.js.map +1 -0
  100. package/dist/esm/schema/registry/grafana-snowflake-datasource.schema.json.js +304 -0
  101. package/dist/esm/schema/registry/grafana-snowflake-datasource.schema.json.js.map +1 -0
  102. package/dist/esm/schema/registry/grafana-splunk-datasource.schema.json.js +319 -0
  103. package/dist/esm/schema/registry/grafana-splunk-datasource.schema.json.js.map +1 -0
  104. package/dist/esm/schema/registry/grafana-splunkobservability-datasource.schema.json.js +90 -0
  105. package/dist/esm/schema/registry/grafana-splunkobservability-datasource.schema.json.js.map +1 -0
  106. package/dist/esm/schema/registry/grafana-strava-datasource.schema.json.js +74 -0
  107. package/dist/esm/schema/registry/grafana-strava-datasource.schema.json.js.map +1 -0
  108. package/dist/esm/schema/registry/grafana-sumologic-datasource.schema.json.js +102 -0
  109. package/dist/esm/schema/registry/grafana-sumologic-datasource.schema.json.js.map +1 -0
  110. package/dist/esm/schema/registry/grafana-surrealdb-datasource.schema.json.js +92 -0
  111. package/dist/esm/schema/registry/grafana-surrealdb-datasource.schema.json.js.map +1 -0
  112. package/dist/esm/schema/registry/grafana-timestream-datasource.schema.json.js +145 -0
  113. package/dist/esm/schema/registry/grafana-timestream-datasource.schema.json.js.map +1 -0
  114. package/dist/esm/schema/registry/grafana-wavefront-datasource.schema.json.js +80 -0
  115. package/dist/esm/schema/registry/grafana-wavefront-datasource.schema.json.js.map +1 -0
  116. package/dist/esm/schema/registry/grafana-x-ray-datasource.schema.json.js +112 -0
  117. package/dist/esm/schema/registry/grafana-x-ray-datasource.schema.json.js.map +1 -0
  118. package/dist/esm/schema/registry/grafana-yugabyte-datasource.schema.json.js +114 -0
  119. package/dist/esm/schema/registry/grafana-yugabyte-datasource.schema.json.js.map +1 -0
  120. package/dist/esm/schema/registry/graphite.schema.json.js +104 -0
  121. package/dist/esm/schema/registry/graphite.schema.json.js.map +1 -0
  122. package/dist/esm/schema/registry/index.js +27 -0
  123. package/dist/esm/schema/registry/index.js.map +1 -0
  124. package/dist/esm/schema/registry/influxdb.schema.json.js +717 -0
  125. package/dist/esm/schema/registry/influxdb.schema.json.js.map +1 -0
  126. package/dist/esm/schema/registry/jaeger.schema.json.js +59 -0
  127. package/dist/esm/schema/registry/jaeger.schema.json.js.map +1 -0
  128. package/dist/esm/schema/registry/loki.schema.json.js +545 -0
  129. package/dist/esm/schema/registry/loki.schema.json.js.map +1 -0
  130. package/dist/esm/schema/registry/marcusolsson-csv-datasource.schema.json.js +45 -0
  131. package/dist/esm/schema/registry/marcusolsson-csv-datasource.schema.json.js.map +1 -0
  132. package/dist/esm/schema/registry/marcusolsson-json-datasource.schema.json.js +36 -0
  133. package/dist/esm/schema/registry/marcusolsson-json-datasource.schema.json.js.map +1 -0
  134. package/dist/esm/schema/registry/mssql.schema.json.js +292 -0
  135. package/dist/esm/schema/registry/mssql.schema.json.js.map +1 -0
  136. package/dist/esm/schema/registry/mysql.schema.json.js +304 -0
  137. package/dist/esm/schema/registry/mysql.schema.json.js.map +1 -0
  138. package/dist/esm/schema/registry/opentsdb.schema.json.js +113 -0
  139. package/dist/esm/schema/registry/opentsdb.schema.json.js.map +1 -0
  140. package/dist/esm/schema/registry/prometheus.schema.json.js +783 -0
  141. package/dist/esm/schema/registry/prometheus.schema.json.js.map +1 -0
  142. package/dist/esm/schema/registry/stackdriver.schema.json.js +224 -0
  143. package/dist/esm/schema/registry/stackdriver.schema.json.js.map +1 -0
  144. package/dist/esm/schema/registry/staticRegistry.js +135 -0
  145. package/dist/esm/schema/registry/staticRegistry.js.map +1 -0
  146. package/dist/esm/schema/registry/tempo.schema.json.js +664 -0
  147. package/dist/esm/schema/registry/tempo.schema.json.js.map +1 -0
  148. package/dist/esm/schema/registry/zipkin.schema.json.js +40 -0
  149. package/dist/esm/schema/registry/zipkin.schema.json.js.map +1 -0
  150. package/package.json +2 -3
  151. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js +0 -217
  152. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceConfigWizard.js.map +0 -1
  153. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceErrorBoundary.js +0 -27
  154. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/DatasourceErrorBoundary.js.map +0 -1
  155. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/FieldInput.js +0 -135
  156. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/FieldInput.js.map +0 -1
  157. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js +0 -80
  158. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SchemaField.js.map +0 -1
  159. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js +0 -54
  160. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/SidebarNav.js.map +0 -1
  161. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js +0 -155
  162. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/TabLayout.js.map +0 -1
  163. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/cel.js +0 -75
  164. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/cel.js.map +0 -1
  165. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/config.js +0 -262
  166. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/config.js.map +0 -1
  167. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/datasource.js +0 -354
  168. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/datasource.js.map +0 -1
  169. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js +0 -138
  170. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/fieldUtils.js.map +0 -1
  171. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/formInterpreter.js +0 -93
  172. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/formInterpreter.js.map +0 -1
  173. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useDatasourceConfigForm.js +0 -253
  174. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useDatasourceConfigForm.js.map +0 -1
  175. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useHealthChecks.js +0 -106
  176. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/hooks/useHealthChecks.js.map +0 -1
  177. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/AuthorizationHeaderField.js +0 -52
  178. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/AuthorizationHeaderField.js.map +0 -1
  179. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ComplexFieldNote.js +0 -26
  180. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ComplexFieldNote.js.map +0 -1
  181. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/FileUploadField.js +0 -106
  182. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/FileUploadField.js.map +0 -1
  183. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/IndexedPairEditor.js +0 -124
  184. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/IndexedPairEditor.js.map +0 -1
  185. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ObjectArrayEditor.js +0 -190
  186. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/ObjectArrayEditor.js.map +0 -1
  187. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/PdcFieldNote.js +0 -31
  188. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/PdcFieldNote.js.map +0 -1
  189. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/PrimitiveInputs.js +0 -103
  190. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/PrimitiveInputs.js.map +0 -1
  191. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/SecureFieldInput.js +0 -59
  192. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/SecureFieldInput.js.map +0 -1
  193. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/StringArrayInput.js +0 -80
  194. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/inputs/StringArrayInput.js.map +0 -1
  195. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/layoutParts.js +0 -82
  196. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/layoutParts.js.map +0 -1
  197. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/resolvePluginName.js +0 -30
  198. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/resolvePluginName.js.map +0 -1
  199. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/styles.js +0 -340
  200. package/dist/esm/components/ConfigEditor/DatasourceConfigWizard/styles.js.map +0 -1
  201. package/dist/esm/node_modules/js-yaml/dist/js-yaml.js +0 -3043
  202. package/dist/esm/node_modules/js-yaml/dist/js-yaml.js.map +0 -1
  203. package/dist/esm/node_modules/react-hook-form/dist/index.esm.js +0 -2766
  204. package/dist/esm/node_modules/react-hook-form/dist/index.esm.js.map +0 -1
  205. package/dist/esm/node_modules/semver/functions/truncate.js +0 -62
  206. package/dist/esm/node_modules/semver/functions/truncate.js.map +0 -1
  207. package/dist/esm/schema/utils/constants.js +0 -5
  208. package/dist/esm/schema/utils/constants.js.map +0 -1
  209. package/dist/esm/schema/utils/dsconfig.js +0 -97
  210. package/dist/esm/schema/utils/dsconfig.js.map +0 -1
  211. package/dist/esm/schema/utils/llm.js +0 -54
  212. package/dist/esm/schema/utils/llm.js.map +0 -1
  213. package/dist/esm/schema/utils/packs.js +0 -113
  214. package/dist/esm/schema/utils/packs.js.map +0 -1
  215. package/dist/esm/schema/utils/provisioning.js +0 -434
  216. package/dist/esm/schema/utils/provisioning.js.map +0 -1
  217. package/dist/esm/schema/utils/registry.js +0 -32
  218. package/dist/esm/schema/utils/registry.js.map +0 -1
  219. package/dist/esm/schema/utils/useDatasourceSchema.js +0 -39
  220. package/dist/esm/schema/utils/useDatasourceSchema.js.map +0 -1
@@ -1,97 +0,0 @@
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 !== undefined) {
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] !== undefined && input[key] !== existing[key]) {
46
- body[key] = input[key];
47
- hasChanges = true;
48
- }
49
- }
50
- if (input.jsonData !== undefined) {
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] === undefined) {
70
- continue;
71
- }
72
- if (input[key] === undefined) {
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 !== undefined) {
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
@@ -1 +0,0 @@
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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"}
@@ -1,54 +0,0 @@
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 ? undefined : _a.component) !== "select" || field.target !== "jsonData" || field.kind === "virtual") {
6
- continue;
7
- }
8
- const options = (_c = (_b = field.ui) == null ? undefined : _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 ? undefined : _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
@@ -1 +0,0 @@
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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"}
@@ -1,113 +0,0 @@
1
- import { PACK_STATIC_URL } from './constants.js';
2
-
3
- const PACK_IDS = [
4
- "plugin_sdk_settings",
5
- "aws_sdk_settings",
6
- "azure_sdk_settings",
7
- "google_sdk_settings",
8
- "sqleng_settings"
9
- ];
10
- const packCache = /* @__PURE__ */ new Map();
11
- function loadPack(id) {
12
- if (!PACK_IDS.includes(id)) {
13
- return Promise.reject(new Error(`unknown field pack: ${id}`));
14
- }
15
- const existing = packCache.get(id);
16
- if (existing) {
17
- return existing;
18
- }
19
- const promise = fetchPack(id).catch((err) => {
20
- packCache.delete(id);
21
- throw err;
22
- });
23
- packCache.set(id, promise);
24
- return promise;
25
- }
26
- async function fetchPack(id) {
27
- const res = await fetch(PACK_STATIC_URL.replaceAll("{packID}", id));
28
- if (!res.ok) {
29
- throw new Error(`failed to fetch field pack ${id}: ${res.status} ${res.statusText}`);
30
- }
31
- return await res.json();
32
- }
33
- function resolvePackRef(ref, pack) {
34
- const cloned = deepClone(pack.fields);
35
- const byId = new Map(cloned.map((f) => [f.id, f]));
36
- if (ref.exclude) {
37
- for (const id of ref.exclude) {
38
- if (!byId.has(id)) {
39
- throw new Error(`baseFields[${ref.from}]: exclude references unknown field id: ${id}`);
40
- }
41
- byId.delete(id);
42
- }
43
- }
44
- const dropped = /* @__PURE__ */ new Set();
45
- if (ref.patch) {
46
- for (const [id, patch] of Object.entries(ref.patch)) {
47
- const field = byId.get(id);
48
- if (!field) {
49
- throw new Error(`baseFields[${ref.from}]: patch references unknown field id: ${id}`);
50
- }
51
- if (patch.hidden) {
52
- dropped.add(id);
53
- continue;
54
- }
55
- applyPatch(field, patch);
56
- }
57
- }
58
- return cloned.filter((f) => byId.has(f.id) && !dropped.has(f.id));
59
- }
60
- function applyPatch(field, patch) {
61
- var _a;
62
- if (patch.label !== undefined) {
63
- field.label = patch.label;
64
- }
65
- if (patch.description !== undefined) {
66
- field.description = patch.description;
67
- }
68
- if (patch.placeholder !== undefined) {
69
- field.ui = { ...(_a = field.ui) != null ? _a : { component: "input" }, placeholder: patch.placeholder };
70
- }
71
- if (patch.defaultValue !== undefined) {
72
- field.defaultValue = patch.defaultValue;
73
- }
74
- if (patch.required !== undefined) {
75
- field.required = patch.required;
76
- }
77
- }
78
- function deepClone(value) {
79
- if (typeof structuredClone === "function") {
80
- return structuredClone(value);
81
- }
82
- return JSON.parse(JSON.stringify(value));
83
- }
84
- async function resolveBaseFields(schema) {
85
- var _a, _b;
86
- const refs = schema.baseFields;
87
- if (!refs || refs.length === 0) {
88
- return schema;
89
- }
90
- const packs = await Promise.all(refs.map((ref) => loadPack(ref.from)));
91
- const packFields = [];
92
- const packFieldIds = /* @__PURE__ */ new Set();
93
- refs.forEach((ref, i) => {
94
- const resolved = resolvePackRef(ref, packs[i]);
95
- for (const f of resolved) {
96
- if (packFieldIds.has(f.id)) {
97
- continue;
98
- }
99
- packFieldIds.add(f.id);
100
- packFields.push(f);
101
- }
102
- });
103
- const pluginIds = new Set(((_a = schema.fields) != null ? _a : []).map((f) => f.id));
104
- const survivingPackFields = packFields.filter((f) => !pluginIds.has(f.id));
105
- const { baseFields: _omit, ...rest } = schema;
106
- return {
107
- ...rest,
108
- fields: [...survivingPackFields, ...(_b = schema.fields) != null ? _b : []]
109
- };
110
- }
111
-
112
- export { loadPack, resolveBaseFields };
113
- //# sourceMappingURL=packs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"packs.js","sources":["../../../../src/schema/utils/packs.ts"],"sourcesContent":["import { PACK_STATIC_URL } from './constants';\nimport type { BaseFieldRef, ConfigField, DatasourceConfigSchema, FieldPack, FieldPackID, FieldPatch } from '../schema';\n\nconst PACK_IDS: FieldPackID[] = [\n 'plugin_sdk_settings',\n 'aws_sdk_settings',\n 'azure_sdk_settings',\n 'google_sdk_settings',\n 'sqleng_settings',\n];\n\nconst packCache = new Map<FieldPackID, Promise<FieldPack>>();\n\nexport function loadPack(id: FieldPackID): Promise<FieldPack> {\n if (!PACK_IDS.includes(id)) {\n return Promise.reject(new Error(`unknown field pack: ${id}`));\n }\n const existing = packCache.get(id);\n if (existing) {\n return existing;\n }\n const promise = fetchPack(id).catch((err) => {\n // Evict failed fetches so callers can retry.\n packCache.delete(id);\n throw err;\n });\n packCache.set(id, promise);\n return promise;\n}\n\nasync function fetchPack(id: FieldPackID): Promise<FieldPack> {\n const res = await fetch(PACK_STATIC_URL.replaceAll('{packID}', id));\n if (!res.ok) {\n throw new Error(`failed to fetch field pack ${id}: ${res.status} ${res.statusText}`);\n }\n return (await res.json()) as FieldPack;\n}\n\nfunction resolvePackRef(ref: BaseFieldRef, pack: FieldPack): ConfigField[] {\n const cloned = deepClone(pack.fields);\n const byId = new Map(cloned.map((f) => [f.id, f] as const));\n\n if (ref.exclude) {\n for (const id of ref.exclude) {\n if (!byId.has(id)) {\n throw new Error(`baseFields[${ref.from}]: exclude references unknown field id: ${id}`);\n }\n byId.delete(id);\n }\n }\n\n const dropped = new Set<string>();\n if (ref.patch) {\n for (const [id, patch] of Object.entries(ref.patch)) {\n const field = byId.get(id);\n if (!field) {\n throw new Error(`baseFields[${ref.from}]: patch references unknown field id: ${id}`);\n }\n if (patch.hidden) {\n dropped.add(id);\n continue;\n }\n applyPatch(field, patch);\n }\n }\n\n // Preserve pack declaration order.\n return cloned.filter((f) => byId.has(f.id) && !dropped.has(f.id));\n}\n\nfunction applyPatch(field: ConfigField, patch: FieldPatch): void {\n if (patch.label !== undefined) {\n field.label = patch.label;\n }\n if (patch.description !== undefined) {\n field.description = patch.description;\n }\n if (patch.placeholder !== undefined) {\n field.ui = { ...(field.ui ?? { component: 'input' }), placeholder: patch.placeholder };\n }\n if (patch.defaultValue !== undefined) {\n field.defaultValue = patch.defaultValue;\n }\n if (patch.required !== undefined) {\n field.required = patch.required;\n }\n}\n\nfunction deepClone<T>(value: T): T {\n if (typeof structuredClone === 'function') {\n return structuredClone(value);\n }\n return JSON.parse(JSON.stringify(value));\n}\n\nexport async function resolveBaseFields(schema: DatasourceConfigSchema): Promise<DatasourceConfigSchema> {\n const refs = schema.baseFields;\n if (!refs || refs.length === 0) {\n return schema;\n }\n const packs = await Promise.all(refs.map((ref) => loadPack(ref.from)));\n const packFields: ConfigField[] = [];\n const packFieldIds = new Set<string>();\n\n refs.forEach((ref, i) => {\n const resolved = resolvePackRef(ref, packs[i]);\n for (const f of resolved) {\n if (packFieldIds.has(f.id)) {\n continue;\n }\n packFieldIds.add(f.id);\n packFields.push(f);\n }\n });\n const pluginIds = new Set((schema.fields ?? []).map((f) => f.id));\n const survivingPackFields = packFields.filter((f) => !pluginIds.has(f.id));\n const { baseFields: _omit, ...rest } = schema;\n return {\n ...rest,\n fields: [...survivingPackFields, ...(schema.fields ?? [])],\n };\n}\n"],"names":[],"mappings":"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"}