@grafana/plugin-ui 0.7.2 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (417) hide show
  1. package/README.md +3 -34
  2. package/dist/components/AsyncButtonCascader/AsyncButtonCascader.js +4 -5
  3. package/dist/components/AsyncButtonCascader/AsyncButtonCascader.js.map +1 -1
  4. package/dist/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.js +28 -0
  5. package/dist/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.js.map +1 -0
  6. package/dist/components/ConfigEditor/AdvancedSettings/index.js +6 -0
  7. package/dist/components/ConfigEditor/AdvancedSettings/index.js.map +1 -0
  8. package/dist/components/ConfigEditor/Auth/Auth.js +24 -0
  9. package/dist/components/ConfigEditor/Auth/Auth.js.map +1 -0
  10. package/dist/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js +109 -0
  11. package/dist/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js.map +1 -0
  12. package/dist/components/ConfigEditor/Auth/auth-method/BasicAuth.js +23 -0
  13. package/dist/components/ConfigEditor/Auth/auth-method/BasicAuth.js.map +1 -0
  14. package/dist/components/ConfigEditor/Auth/custom-headers/CustomHeader.js +41 -0
  15. package/dist/components/ConfigEditor/Auth/custom-headers/CustomHeader.js.map +1 -0
  16. package/dist/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js +76 -0
  17. package/dist/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js.map +1 -0
  18. package/dist/components/ConfigEditor/Auth/index.js +10 -0
  19. package/dist/components/ConfigEditor/Auth/index.js.map +1 -0
  20. package/dist/components/ConfigEditor/Auth/styles.js +19 -0
  21. package/dist/components/ConfigEditor/Auth/styles.js.map +1 -0
  22. package/dist/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js +18 -0
  23. package/dist/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js.map +1 -0
  24. package/dist/components/ConfigEditor/Auth/tls/SkipTLSVerification.js +11 -0
  25. package/dist/components/ConfigEditor/Auth/tls/SkipTLSVerification.js.map +1 -0
  26. package/dist/components/ConfigEditor/Auth/tls/TLSClientAuth.js +22 -0
  27. package/dist/components/ConfigEditor/Auth/tls/TLSClientAuth.js.map +1 -0
  28. package/dist/components/ConfigEditor/Auth/tls/TLSSettings.js +25 -0
  29. package/dist/components/ConfigEditor/Auth/tls/TLSSettings.js.map +1 -0
  30. package/dist/components/ConfigEditor/Auth/tls/TLSSettingsSection.js +35 -0
  31. package/dist/components/ConfigEditor/Auth/tls/TLSSettingsSection.js.map +1 -0
  32. package/dist/components/ConfigEditor/Auth/types.js +11 -0
  33. package/dist/components/ConfigEditor/Auth/types.js.map +1 -0
  34. package/dist/components/ConfigEditor/Auth/utils.js +112 -0
  35. package/dist/components/ConfigEditor/Auth/utils.js.map +1 -0
  36. package/dist/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js +32 -0
  37. package/dist/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js.map +1 -0
  38. package/dist/components/ConfigEditor/ConfigSection/ConfigSection.js +12 -0
  39. package/dist/components/ConfigEditor/ConfigSection/ConfigSection.js.map +1 -0
  40. package/dist/components/ConfigEditor/ConfigSection/ConfigSubSection.js +12 -0
  41. package/dist/components/ConfigEditor/ConfigSection/ConfigSubSection.js.map +1 -0
  42. package/dist/components/ConfigEditor/ConfigSection/GenericConfigSection.js +40 -0
  43. package/dist/components/ConfigEditor/ConfigSection/GenericConfigSection.js.map +1 -0
  44. package/dist/components/ConfigEditor/ConfigSection/index.js +10 -0
  45. package/dist/components/ConfigEditor/ConfigSection/index.js.map +1 -0
  46. package/dist/components/ConfigEditor/Connection/ConnectionSettings.js +25 -0
  47. package/dist/components/ConfigEditor/Connection/ConnectionSettings.js.map +1 -0
  48. package/dist/components/ConfigEditor/Connection/index.js +6 -0
  49. package/dist/components/ConfigEditor/Connection/index.js.map +1 -0
  50. package/dist/components/ConfigEditor/DataSourceDescription.js +39 -0
  51. package/dist/components/ConfigEditor/DataSourceDescription.js.map +1 -0
  52. package/dist/components/ConfigEditor/SecureSocksProxyToggle.js +8 -13
  53. package/dist/components/ConfigEditor/SecureSocksProxyToggle.js.map +1 -1
  54. package/dist/components/ConfigEditor/index.js +15 -3
  55. package/dist/components/ConfigEditor/index.js.map +1 -1
  56. package/dist/components/ConfigEditor/types.js +3 -0
  57. package/dist/components/ConfigEditor/types.js.map +1 -0
  58. package/dist/components/CustomHeadersSettings/CustomHeadersSettings.js +12 -17
  59. package/dist/components/CustomHeadersSettings/CustomHeadersSettings.js.map +1 -1
  60. package/dist/components/DataLinks/DataLink.js +3 -3
  61. package/dist/components/DataLinks/DataLink.js.map +1 -1
  62. package/dist/components/DataLinks/DataLinks.js +6 -9
  63. package/dist/components/DataLinks/DataLinks.js.map +1 -1
  64. package/dist/components/DataLinks/index.js.map +1 -1
  65. package/dist/components/DataSourcePicker/DataSourcePicker.js +4 -6
  66. package/dist/components/DataSourcePicker/DataSourcePicker.js.map +1 -1
  67. package/dist/components/DatePicker/DatePicker.js +5 -3
  68. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  69. package/dist/components/DatePicker/styles.js +8 -10
  70. package/dist/components/DatePicker/styles.js.map +1 -1
  71. package/dist/components/DatePickerWithInput/DatePickerWithInput.js +1 -1
  72. package/dist/components/DatePickerWithInput/DatePickerWithInput.js.map +1 -1
  73. package/dist/components/DebounceInput/DebounceInput.js +3 -1
  74. package/dist/components/DebounceInput/DebounceInput.js.map +1 -1
  75. package/dist/components/Plugins/PluginSignatureBadge.js.map +1 -1
  76. package/dist/components/QueryEditor/AccessoryButton.js +3 -4
  77. package/dist/components/QueryEditor/AccessoryButton.js.map +1 -1
  78. package/dist/components/QueryEditor/DatasetSelector.js.map +1 -1
  79. package/dist/components/QueryEditor/EditorField.js +7 -9
  80. package/dist/components/QueryEditor/EditorField.js.map +1 -1
  81. package/dist/components/QueryEditor/EditorFieldGroup.js +2 -2
  82. package/dist/components/QueryEditor/EditorFieldGroup.js.map +1 -1
  83. package/dist/components/QueryEditor/EditorHeader.js +3 -4
  84. package/dist/components/QueryEditor/EditorHeader.js.map +1 -1
  85. package/dist/components/QueryEditor/EditorList.js +5 -6
  86. package/dist/components/QueryEditor/EditorList.js.map +1 -1
  87. package/dist/components/QueryEditor/EditorRow.js +3 -3
  88. package/dist/components/QueryEditor/EditorRow.js.map +1 -1
  89. package/dist/components/QueryEditor/EditorRows.js +2 -2
  90. package/dist/components/QueryEditor/EditorRows.js.map +1 -1
  91. package/dist/components/QueryEditor/EditorStack.js +13 -0
  92. package/dist/components/QueryEditor/EditorStack.js.map +1 -0
  93. package/dist/components/QueryEditor/EditorSwitch.js.map +1 -1
  94. package/dist/components/QueryEditor/FlexItem.js.map +1 -1
  95. package/dist/components/QueryEditor/InlineSelect.js +5 -8
  96. package/dist/components/QueryEditor/InlineSelect.js.map +1 -1
  97. package/dist/components/QueryEditor/InputGroup.js +29 -9
  98. package/dist/components/QueryEditor/InputGroup.js.map +1 -1
  99. package/dist/components/QueryEditor/QueryHeader.js +1 -4
  100. package/dist/components/QueryEditor/QueryHeader.js.map +1 -1
  101. package/dist/components/QueryEditor/RunQueryButton.js +3 -5
  102. package/dist/components/QueryEditor/RunQueryButton.js.map +1 -1
  103. package/dist/components/QueryEditor/TableSelector.js.map +1 -1
  104. package/dist/components/QueryEditor/index.js +3 -3
  105. package/dist/components/QueryEditor/index.js.map +1 -1
  106. package/dist/components/QueryEditor/query-editor-raw/QueryEditorRaw.js +2 -2
  107. package/dist/components/QueryEditor/query-editor-raw/QueryEditorRaw.js.map +1 -1
  108. package/dist/components/QueryEditor/types.js +2 -2
  109. package/dist/components/QueryEditor/types.js.map +1 -1
  110. package/dist/components/QueryEditor/utils/sql.utils.js.map +1 -1
  111. package/dist/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js +1 -1
  112. package/dist/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js.map +1 -1
  113. package/dist/components/QueryEditor/visual-query-builder/EditorField.js.map +1 -1
  114. package/dist/components/QueryEditor/visual-query-builder/EditorRow.js +2 -2
  115. package/dist/components/QueryEditor/visual-query-builder/EditorRow.js.map +1 -1
  116. package/dist/components/QueryEditor/visual-query-builder/EditorRows.js +2 -2
  117. package/dist/components/QueryEditor/visual-query-builder/EditorRows.js.map +1 -1
  118. package/dist/components/QueryEditor/visual-query-builder/SelectRow.js +3 -3
  119. package/dist/components/QueryEditor/visual-query-builder/SelectRow.js.map +1 -1
  120. package/dist/components/QueryEditor/visual-query-builder/VisualEditor.js +1 -1
  121. package/dist/components/QueryEditor/visual-query-builder/VisualEditor.js.map +1 -1
  122. package/dist/components/QueryEditorRow/QueryEditorRow.js +3 -4
  123. package/dist/components/QueryEditorRow/QueryEditorRow.js.map +1 -1
  124. package/dist/components/SQLEditor/components/SQLEditor.js +330 -0
  125. package/dist/components/SQLEditor/components/SQLEditor.js.map +1 -0
  126. package/dist/components/SQLEditor/index.js +25 -0
  127. package/dist/components/SQLEditor/index.js.map +1 -0
  128. package/dist/components/SQLEditor/mocks/Monaco.js +23 -0
  129. package/dist/components/SQLEditor/mocks/Monaco.js.map +1 -0
  130. package/dist/components/SQLEditor/mocks/TextModel.js +22 -0
  131. package/dist/components/SQLEditor/mocks/TextModel.js.map +1 -0
  132. package/dist/components/SQLEditor/mocks/queries/multiLineFullQuery.js +216 -0
  133. package/dist/components/SQLEditor/mocks/queries/multiLineFullQuery.js.map +1 -0
  134. package/dist/components/SQLEditor/mocks/queries/multiLineFullQueryWithAggregation.js +231 -0
  135. package/dist/components/SQLEditor/mocks/queries/multiLineFullQueryWithAggregation.js.map +1 -0
  136. package/dist/components/SQLEditor/mocks/queries/multiLineMultipleColumns.js +271 -0
  137. package/dist/components/SQLEditor/mocks/queries/multiLineMultipleColumns.js.map +1 -0
  138. package/dist/components/SQLEditor/mocks/queries/singleLineEmptyQuery.js +8 -0
  139. package/dist/components/SQLEditor/mocks/queries/singleLineEmptyQuery.js.map +1 -0
  140. package/dist/components/SQLEditor/mocks/queries/singleLineFullQuery.js +196 -0
  141. package/dist/components/SQLEditor/mocks/queries/singleLineFullQuery.js.map +1 -0
  142. package/dist/components/SQLEditor/mocks/queries/singleLineFullQueryWithAggregation.js +211 -0
  143. package/dist/components/SQLEditor/mocks/queries/singleLineFullQueryWithAggregation.js.map +1 -0
  144. package/dist/components/SQLEditor/mocks/queries/singleLineMultipleColumns.js +251 -0
  145. package/dist/components/SQLEditor/mocks/queries/singleLineMultipleColumns.js.map +1 -0
  146. package/dist/components/SQLEditor/mocks/queries/singleLineTwoQueries.js +386 -0
  147. package/dist/components/SQLEditor/mocks/queries/singleLineTwoQueries.js.map +1 -0
  148. package/dist/components/SQLEditor/mocks/queries/singleLineTwoQueriesWithAggregation.js +416 -0
  149. package/dist/components/SQLEditor/mocks/queries/singleLineTwoQueriesWithAggregation.js.map +1 -0
  150. package/dist/components/SQLEditor/mocks/testData.js +22 -0
  151. package/dist/components/SQLEditor/mocks/testData.js.map +1 -0
  152. package/dist/components/SQLEditor/standardSql/definition.js +13 -0
  153. package/dist/components/SQLEditor/standardSql/definition.js.map +1 -0
  154. package/dist/components/SQLEditor/standardSql/getStandardSuggestions.js +26 -0
  155. package/dist/components/SQLEditor/standardSql/getStandardSuggestions.js.map +1 -0
  156. package/dist/components/SQLEditor/standardSql/getStatementPosition.js +24 -0
  157. package/dist/components/SQLEditor/standardSql/getStatementPosition.js.map +1 -0
  158. package/dist/components/SQLEditor/standardSql/language.js +875 -0
  159. package/dist/components/SQLEditor/standardSql/language.js.map +1 -0
  160. package/dist/components/SQLEditor/standardSql/macros.js +166 -0
  161. package/dist/components/SQLEditor/standardSql/macros.js.map +1 -0
  162. package/dist/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js +30 -0
  163. package/dist/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.js.map +1 -0
  164. package/dist/components/SQLEditor/standardSql/standardSuggestionsRegistry.js +378 -0
  165. package/dist/components/SQLEditor/standardSql/standardSuggestionsRegistry.js.map +1 -0
  166. package/dist/components/SQLEditor/standardSql/statementPositionResolversRegistry.js +234 -0
  167. package/dist/components/SQLEditor/standardSql/statementPositionResolversRegistry.js.map +1 -0
  168. package/dist/components/SQLEditor/standardSql/suggestionsKindRegistry.js +153 -0
  169. package/dist/components/SQLEditor/standardSql/suggestionsKindRegistry.js.map +1 -0
  170. package/dist/components/SQLEditor/standardSql/types.js +3 -0
  171. package/dist/components/SQLEditor/standardSql/types.js.map +1 -0
  172. package/dist/components/SQLEditor/test-utils/index.js +11 -0
  173. package/dist/components/SQLEditor/test-utils/index.js.map +1 -0
  174. package/dist/components/SQLEditor/test-utils/statementPosition.js +40 -0
  175. package/dist/components/SQLEditor/test-utils/statementPosition.js.map +1 -0
  176. package/dist/components/SQLEditor/test-utils/types.js +3 -0
  177. package/dist/components/SQLEditor/test-utils/types.js.map +1 -0
  178. package/dist/components/SQLEditor/types.js +139 -0
  179. package/dist/components/SQLEditor/types.js.map +1 -0
  180. package/dist/components/SQLEditor/utils/LinkedToken.js +147 -0
  181. package/dist/components/SQLEditor/utils/LinkedToken.js.map +1 -0
  182. package/dist/components/SQLEditor/utils/commands.js +8 -0
  183. package/dist/components/SQLEditor/utils/commands.js.map +1 -0
  184. package/dist/components/SQLEditor/utils/debugger.js +14 -0
  185. package/dist/components/SQLEditor/utils/debugger.js.map +1 -0
  186. package/dist/components/SQLEditor/utils/getSuggestionKind.js +18 -0
  187. package/dist/components/SQLEditor/utils/getSuggestionKind.js.map +1 -0
  188. package/dist/components/SQLEditor/utils/linkedTokenBuilder.js +46 -0
  189. package/dist/components/SQLEditor/utils/linkedTokenBuilder.js.map +1 -0
  190. package/dist/components/SQLEditor/utils/toCompletionItem.js +10 -0
  191. package/dist/components/SQLEditor/utils/toCompletionItem.js.map +1 -0
  192. package/dist/components/SQLEditor/utils/tokenUtils.js +72 -0
  193. package/dist/components/SQLEditor/utils/tokenUtils.js.map +1 -0
  194. package/dist/components/SQLEditor/utils/types.js +3 -0
  195. package/dist/components/SQLEditor/utils/types.js.map +1 -0
  196. package/dist/components/Segment/Segment.js +2 -1
  197. package/dist/components/Segment/Segment.js.map +1 -1
  198. package/dist/components/VisualQueryBuilder/QueryModellerBase.js +35 -0
  199. package/dist/components/VisualQueryBuilder/QueryModellerBase.js.map +1 -0
  200. package/dist/components/VisualQueryBuilder/components/LabelFilterItem.js +125 -0
  201. package/dist/components/VisualQueryBuilder/components/LabelFilterItem.js.map +1 -0
  202. package/dist/components/VisualQueryBuilder/components/LabelFilters.js +37 -0
  203. package/dist/components/VisualQueryBuilder/components/LabelFilters.js.map +1 -0
  204. package/dist/components/VisualQueryBuilder/components/OperationEditor.js +41 -0
  205. package/dist/components/VisualQueryBuilder/components/OperationEditor.js.map +1 -0
  206. package/dist/components/VisualQueryBuilder/components/OperationEditorBody.js +173 -0
  207. package/dist/components/VisualQueryBuilder/components/OperationEditorBody.js.map +1 -0
  208. package/dist/components/VisualQueryBuilder/components/OperationExplainedBox.js +64 -0
  209. package/dist/components/VisualQueryBuilder/components/OperationExplainedBox.js.map +1 -0
  210. package/dist/components/VisualQueryBuilder/components/OperationHeader.js +67 -0
  211. package/dist/components/VisualQueryBuilder/components/OperationHeader.js.map +1 -0
  212. package/dist/components/VisualQueryBuilder/components/OperationInfoButton.js +71 -0
  213. package/dist/components/VisualQueryBuilder/components/OperationInfoButton.js.map +1 -0
  214. package/dist/components/VisualQueryBuilder/components/OperationList.js +129 -0
  215. package/dist/components/VisualQueryBuilder/components/OperationList.js.map +1 -0
  216. package/dist/components/VisualQueryBuilder/components/OperationListExplained.js +22 -0
  217. package/dist/components/VisualQueryBuilder/components/OperationListExplained.js.map +1 -0
  218. package/dist/components/VisualQueryBuilder/components/OperationParamEditor.js +71 -0
  219. package/dist/components/VisualQueryBuilder/components/OperationParamEditor.js.map +1 -0
  220. package/dist/components/VisualQueryBuilder/components/OperationsEditorRow.js +24 -0
  221. package/dist/components/VisualQueryBuilder/components/OperationsEditorRow.js.map +1 -0
  222. package/dist/components/VisualQueryBuilder/components/QueryBuilderHints.js +54 -0
  223. package/dist/components/VisualQueryBuilder/components/QueryBuilderHints.js.map +1 -0
  224. package/dist/components/VisualQueryBuilder/components/QueryEditorModeToggle.js +17 -0
  225. package/dist/components/VisualQueryBuilder/components/QueryEditorModeToggle.js.map +1 -0
  226. package/dist/components/VisualQueryBuilder/components/QueryHeaderSwitch.js +32 -0
  227. package/dist/components/VisualQueryBuilder/components/QueryHeaderSwitch.js.map +1 -0
  228. package/dist/components/VisualQueryBuilder/components/QueryOptionGroup.js +81 -0
  229. package/dist/components/VisualQueryBuilder/components/QueryOptionGroup.js.map +1 -0
  230. package/dist/components/VisualQueryBuilder/components/RawQuery.js +25 -0
  231. package/dist/components/VisualQueryBuilder/components/RawQuery.js.map +1 -0
  232. package/dist/components/VisualQueryBuilder/index.js +29 -0
  233. package/dist/components/VisualQueryBuilder/index.js.map +1 -0
  234. package/dist/components/VisualQueryBuilder/types.js +10 -0
  235. package/dist/components/VisualQueryBuilder/types.js.map +1 -0
  236. package/dist/components/index.js +2 -0
  237. package/dist/components/index.js.map +1 -1
  238. package/dist/datasource/SqlDatasource.js.map +1 -1
  239. package/dist/hooks/useDebounce.js +2 -0
  240. package/dist/hooks/useDebounce.js.map +1 -1
  241. package/dist/index.js +1 -7
  242. package/dist/index.js.map +1 -1
  243. package/dist/src/components/AsyncButtonCascader/AsyncButtonCascader.d.ts +5 -2
  244. package/dist/src/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.d.ts +8 -0
  245. package/dist/src/components/ConfigEditor/AdvancedSettings/index.d.ts +1 -0
  246. package/dist/src/components/ConfigEditor/Auth/Auth.d.ts +18 -0
  247. package/dist/src/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.d.ts +14 -0
  248. package/dist/src/components/ConfigEditor/Auth/auth-method/BasicAuth.d.ts +17 -0
  249. package/dist/src/components/ConfigEditor/Auth/custom-headers/CustomHeader.d.ts +10 -0
  250. package/dist/src/components/ConfigEditor/Auth/custom-headers/CustomHeaders.d.ts +8 -0
  251. package/dist/src/components/ConfigEditor/Auth/index.d.ts +4 -0
  252. package/dist/src/components/ConfigEditor/Auth/styles.d.ts +4 -0
  253. package/dist/src/components/ConfigEditor/Auth/tls/SelfSignedCertificate.d.ts +13 -0
  254. package/dist/src/components/ConfigEditor/Auth/tls/SkipTLSVerification.d.ts +7 -0
  255. package/dist/src/components/ConfigEditor/Auth/tls/TLSClientAuth.d.ts +20 -0
  256. package/dist/src/components/ConfigEditor/Auth/tls/TLSSettings.d.ts +11 -0
  257. package/dist/src/components/ConfigEditor/Auth/tls/TLSSettingsSection.d.ts +9 -0
  258. package/dist/src/components/ConfigEditor/Auth/types.d.ts +28 -0
  259. package/dist/src/components/ConfigEditor/Auth/utils.d.ts +12 -0
  260. package/dist/src/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.d.ts +8 -0
  261. package/dist/src/components/ConfigEditor/ConfigSection/ConfigSection.d.ts +5 -0
  262. package/dist/src/components/ConfigEditor/ConfigSection/ConfigSubSection.d.ts +5 -0
  263. package/dist/src/components/ConfigEditor/ConfigSection/GenericConfigSection.d.ts +10 -0
  264. package/dist/src/components/ConfigEditor/ConfigSection/index.d.ts +3 -0
  265. package/dist/src/components/ConfigEditor/Connection/ConnectionSettings.d.ts +13 -0
  266. package/dist/src/components/ConfigEditor/Connection/index.d.ts +1 -0
  267. package/dist/src/components/ConfigEditor/DataSourceDescription.d.ts +9 -0
  268. package/dist/src/components/ConfigEditor/SecureSocksProxyToggle.d.ts +4 -4
  269. package/dist/src/components/ConfigEditor/index.d.ts +7 -2
  270. package/dist/src/components/ConfigEditor/types.d.ts +3 -0
  271. package/dist/src/components/CustomHeadersSettings/CustomHeadersSettings.d.ts +2 -2
  272. package/dist/src/components/DataLinks/DataLink.d.ts +1 -1
  273. package/dist/src/components/Plugins/PluginSignatureBadge.d.ts +5 -2
  274. package/dist/src/components/QueryEditor/AccessoryButton.d.ts +2 -2
  275. package/dist/src/components/QueryEditor/DatasetSelector.d.ts +2 -2
  276. package/dist/src/components/QueryEditor/EditorField.d.ts +2 -1
  277. package/dist/src/components/QueryEditor/EditorFieldGroup.d.ts +2 -1
  278. package/dist/src/components/QueryEditor/EditorHeader.d.ts +2 -1
  279. package/dist/src/components/QueryEditor/EditorList.d.ts +1 -1
  280. package/dist/src/components/QueryEditor/EditorRow.d.ts +2 -1
  281. package/dist/src/components/QueryEditor/EditorRows.d.ts +2 -1
  282. package/dist/src/components/QueryEditor/EditorStack.d.ts +13 -0
  283. package/dist/src/components/QueryEditor/EditorSwitch.d.ts +2 -2
  284. package/dist/src/components/QueryEditor/FlexItem.d.ts +2 -2
  285. package/dist/src/components/QueryEditor/InputGroup.d.ts +7 -2
  286. package/dist/src/components/QueryEditor/RunQueryButton.d.ts +3 -3
  287. package/dist/src/components/QueryEditor/TableSelector.d.ts +2 -2
  288. package/dist/src/components/QueryEditor/index.d.ts +1 -1
  289. package/dist/src/components/QueryEditor/query-editor-raw/QueryEditorRaw.d.ts +1 -1
  290. package/dist/src/components/QueryEditor/types.d.ts +9 -14
  291. package/dist/src/components/QueryEditor/visual-query-builder/EditorField.d.ts +1 -1
  292. package/dist/src/components/QueryEditor/visual-query-builder/EditorRow.d.ts +2 -1
  293. package/dist/src/components/QueryEditor/visual-query-builder/EditorRows.d.ts +2 -1
  294. package/dist/src/components/QueryEditor/visual-query-builder/VisualEditor.d.ts +3 -4
  295. package/dist/src/components/SQLEditor/components/SQLEditor.d.ts +29 -0
  296. package/dist/src/components/SQLEditor/index.d.ts +7 -0
  297. package/dist/src/components/SQLEditor/mocks/Monaco.d.ts +3 -0
  298. package/dist/src/components/SQLEditor/mocks/TextModel.d.ts +7 -0
  299. package/dist/src/components/SQLEditor/mocks/queries/multiLineFullQuery.d.ts +2 -0
  300. package/dist/src/components/SQLEditor/mocks/queries/multiLineFullQueryWithAggregation.d.ts +2 -0
  301. package/dist/src/components/SQLEditor/mocks/queries/multiLineMultipleColumns.d.ts +2 -0
  302. package/dist/src/components/SQLEditor/mocks/queries/singleLineEmptyQuery.d.ts +2 -0
  303. package/dist/src/components/SQLEditor/mocks/queries/singleLineFullQuery.d.ts +2 -0
  304. package/dist/src/components/SQLEditor/mocks/queries/singleLineFullQueryWithAggregation.d.ts +2 -0
  305. package/dist/src/components/SQLEditor/mocks/queries/singleLineMultipleColumns.d.ts +2 -0
  306. package/dist/src/components/SQLEditor/mocks/queries/singleLineTwoQueries.d.ts +2 -0
  307. package/dist/src/components/SQLEditor/mocks/queries/singleLineTwoQueriesWithAggregation.d.ts +2 -0
  308. package/dist/src/components/SQLEditor/mocks/testData.d.ts +9 -0
  309. package/dist/src/components/SQLEditor/standardSql/definition.d.ts +3 -0
  310. package/dist/src/components/SQLEditor/standardSql/getStandardSuggestions.d.ts +6 -0
  311. package/dist/src/components/SQLEditor/standardSql/getStatementPosition.d.ts +5 -0
  312. package/dist/src/components/SQLEditor/standardSql/language.d.ts +23 -0
  313. package/dist/src/components/SQLEditor/standardSql/macros.d.ts +2 -0
  314. package/dist/src/components/SQLEditor/standardSql/standardSQLCompletionItemProvider.d.ts +4 -0
  315. package/dist/src/components/SQLEditor/standardSql/standardSuggestionsRegistry.d.ts +7 -0
  316. package/dist/src/components/SQLEditor/standardSql/statementPositionResolversRegistry.d.ts +2 -0
  317. package/dist/src/components/SQLEditor/standardSql/suggestionsKindRegistry.d.ts +7 -0
  318. package/dist/src/components/SQLEditor/standardSql/types.d.ts +33 -0
  319. package/dist/src/components/SQLEditor/test-utils/index.d.ts +7 -0
  320. package/dist/src/components/SQLEditor/test-utils/statementPosition.d.ts +3 -0
  321. package/dist/src/components/SQLEditor/test-utils/types.d.ts +12 -0
  322. package/dist/src/components/SQLEditor/types.d.ts +249 -0
  323. package/dist/src/components/SQLEditor/utils/LinkedToken.d.ts +29 -0
  324. package/dist/src/components/SQLEditor/utils/commands.d.ts +4 -0
  325. package/dist/src/components/SQLEditor/utils/debugger.d.ts +5 -0
  326. package/dist/src/components/SQLEditor/utils/getSuggestionKind.d.ts +7 -0
  327. package/dist/src/components/SQLEditor/utils/linkedTokenBuilder.d.ts +4 -0
  328. package/dist/src/components/SQLEditor/utils/toCompletionItem.d.ts +2 -0
  329. package/dist/src/components/SQLEditor/utils/tokenUtils.d.ts +14 -0
  330. package/dist/src/components/SQLEditor/utils/types.d.ts +11 -0
  331. package/dist/src/components/VisualQueryBuilder/QueryModellerBase.d.ts +18 -0
  332. package/dist/src/components/VisualQueryBuilder/components/LabelFilterItem.d.ts +18 -0
  333. package/dist/src/components/VisualQueryBuilder/components/LabelFilters.d.ts +14 -0
  334. package/dist/src/components/VisualQueryBuilder/components/OperationEditor.d.ts +19 -0
  335. package/dist/src/components/VisualQueryBuilder/components/OperationEditorBody.d.ts +22 -0
  336. package/dist/src/components/VisualQueryBuilder/components/OperationExplainedBox.d.ts +7 -0
  337. package/dist/src/components/VisualQueryBuilder/components/OperationHeader.d.ts +14 -0
  338. package/dist/src/components/VisualQueryBuilder/components/OperationInfoButton.d.ts +9 -0
  339. package/dist/src/components/VisualQueryBuilder/components/OperationList.d.ts +15 -0
  340. package/dist/src/components/VisualQueryBuilder/components/OperationListExplained.d.ts +17 -0
  341. package/dist/src/components/VisualQueryBuilder/components/OperationParamEditor.d.ts +4 -0
  342. package/dist/src/components/VisualQueryBuilder/components/OperationsEditorRow.d.ts +2 -0
  343. package/dist/src/components/VisualQueryBuilder/components/QueryBuilderHints.d.ts +20 -0
  344. package/dist/src/components/VisualQueryBuilder/components/QueryEditorModeToggle.d.ts +8 -0
  345. package/dist/src/components/VisualQueryBuilder/components/QueryHeaderSwitch.d.ts +7 -0
  346. package/dist/src/components/VisualQueryBuilder/components/QueryOptionGroup.d.ts +9 -0
  347. package/dist/src/components/VisualQueryBuilder/components/RawQuery.d.ts +12 -0
  348. package/dist/src/components/VisualQueryBuilder/index.d.ts +13 -0
  349. package/dist/src/components/VisualQueryBuilder/types.d.ts +89 -0
  350. package/dist/src/components/index.d.ts +5 -3
  351. package/dist/src/datasource/SqlDatasource.d.ts +3 -6
  352. package/dist/src/index.d.ts +0 -4
  353. package/dist/src/utils/changeset/functions.d.ts +1 -1
  354. package/dist/test/mocks/Datasource.js +1 -1
  355. package/dist/test/mocks/Datasource.js.map +1 -1
  356. package/dist/test/mocks/Plugin.js +2 -11
  357. package/dist/test/mocks/Plugin.js.map +1 -1
  358. package/dist/test/mocks/QueryEditorProps.js +0 -1
  359. package/dist/test/mocks/QueryEditorProps.js.map +1 -1
  360. package/dist/test/mocks/utils.js.map +1 -1
  361. package/dist/utils/changeset/functions.js +1 -1
  362. package/dist/utils/changeset/functions.js.map +1 -1
  363. package/dist/utils/changeset/index.js +20 -20
  364. package/dist/utils/changeset/index.js.map +1 -1
  365. package/package.json +41 -14
  366. package/CHANGELOG.md +0 -25
  367. package/dist/8x/fixtures/index.js +0 -7
  368. package/dist/8x/fixtures/index.js.map +0 -1
  369. package/dist/8x/fixtures/select.js +0 -43
  370. package/dist/8x/fixtures/select.js.map +0 -1
  371. package/dist/8x/index.js +0 -5
  372. package/dist/8x/index.js.map +0 -1
  373. package/dist/components/ConfigEditor/InlineLabel.js +0 -24
  374. package/dist/components/ConfigEditor/InlineLabel.js.map +0 -1
  375. package/dist/components/QueryEditor/ErrorBoundary.js +0 -23
  376. package/dist/components/QueryEditor/ErrorBoundary.js.map +0 -1
  377. package/dist/components/QueryEditor/Stack.js +0 -27
  378. package/dist/components/QueryEditor/Stack.js.map +0 -1
  379. package/dist/components/QueryEditor/visual-query-builder/Stack.js +0 -27
  380. package/dist/components/QueryEditor/visual-query-builder/Stack.js.map +0 -1
  381. package/dist/src/8x/fixtures/index.d.ts +0 -1
  382. package/dist/src/8x/fixtures/select.d.ts +0 -11
  383. package/dist/src/8x/index.d.ts +0 -1
  384. package/dist/src/components/ConfigEditor/InlineLabel.d.ts +0 -7
  385. package/dist/src/components/QueryEditor/ErrorBoundary.d.ts +0 -14
  386. package/dist/src/components/QueryEditor/Stack.d.ts +0 -9
  387. package/dist/src/components/QueryEditor/visual-query-builder/Stack.d.ts +0 -9
  388. package/dist/src/test/mocks/TestDatasource.d.ts +0 -6
  389. package/dist/src/test/mocks/style.d.ts +0 -1
  390. package/dist/src/test/setupTests.d.ts +0 -1
  391. package/dist/src/unreleasedComponents/SecretInput.d.ts +0 -15
  392. package/dist/src/unreleasedComponents/SecretTextarea.d.ts +0 -19
  393. package/dist/src/unreleasedComponents/index.d.ts +0 -2
  394. package/dist/src/utils/compatFeatures.d.ts +0 -9
  395. package/dist/src/utils/compatibility.d.ts +0 -13
  396. package/dist/src/utils/index.d.ts +0 -3
  397. package/dist/src/utils/testDatasource.d.ts +0 -19
  398. package/dist/test/mocks/TestDatasource.js +0 -24
  399. package/dist/test/mocks/TestDatasource.js.map +0 -1
  400. package/dist/test/mocks/style.js +0 -5
  401. package/dist/test/mocks/style.js.map +0 -1
  402. package/dist/test/setupTests.js +0 -17
  403. package/dist/test/setupTests.js.map +0 -1
  404. package/dist/unreleasedComponents/SecretInput.js +0 -21
  405. package/dist/unreleasedComponents/SecretInput.js.map +0 -1
  406. package/dist/unreleasedComponents/SecretTextarea.js +0 -36
  407. package/dist/unreleasedComponents/SecretTextarea.js.map +0 -1
  408. package/dist/unreleasedComponents/index.js +0 -9
  409. package/dist/unreleasedComponents/index.js.map +0 -1
  410. package/dist/utils/compatFeatures.js +0 -20
  411. package/dist/utils/compatFeatures.js.map +0 -1
  412. package/dist/utils/compatibility.js +0 -31
  413. package/dist/utils/compatibility.js.map +0 -1
  414. package/dist/utils/index.js +0 -8
  415. package/dist/utils/index.js.map +0 -1
  416. package/dist/utils/testDatasource.js +0 -30
  417. package/dist/utils/testDatasource.js.map +0 -1
package/README.md CHANGED
@@ -2,41 +2,10 @@
2
2
 
3
3
  React components for Grafana plugins
4
4
 
5
- ## Compatibility
5
+ ## Grafana compatibility
6
6
 
7
- There are situations when we require backwards compatibility with core Grafana and new features are only supported by newer versions.
8
-
9
- To handle this, we've introduced the `compatibility.ts` file which contains a list of features and the versions they support for better maintainability.
10
-
11
- ### Considerations
12
-
13
- The way we are currently checking whether a feature is supported is by using the Grafana's [BuildInfo](https://grafana.com/docs/grafana/latest/packages_api/data/buildinfo/#version-property).
14
-
15
- However, there are cases when this version [may be masked](https://grafana.com/docs/grafana/latest/packages_api/data/buildinfo/#hideversion-property) from plugins.
16
-
17
- Only anonymous users (with read-only access) will be able to have their versions hidden, so this should be taken into consideration when deciding whether we should be adding a new feature to our compatibility list.
18
-
19
- ## Unreleased Components
20
-
21
- Sometimes we may want improvements/updates of `@grafana/ui` components but we don't want to update the minimum required versions of Grafana in our plugins and continue supporting older versions.
22
-
23
- To work around this, we can import and export the version of the component we want from `@grafana/ui` in this project. Plugins can then use the component exported from here rather than `@grafana/ui`.
24
-
25
- If updates to a component in `@grafana/ui` are available in `master` but not a Grafana release yet, we can copy the components directly into `unreleasedComponents` to be used in plugins.
26
-
27
- Alternatively, we could use the `@grafana/ui: canary` version instead. However, there are the following tradeoffs:
28
-
29
- - Multiple `canary` versions will be released in-between `@grafana/ui` releases
30
-
31
- - This means in-between these release cycles where the component changes aren't available in a package version, the `yarn.lock` file will need to be updated for every change we make in this project
32
-
33
- - `canary` versions include `@grafana/ui: master` branch
34
- - This means component changes in the `master` branch which aren't scheduled for the next major release will be included in the `canary` package.
35
- - For example, we have changes in `<ComponentA />` that won't be released until `v7.5.x` and `<ComponentB />` has changes which are intended to be released for `v7.6`. Using `canary` of `@grafana/ui` will expose the `<ComponentB />` major updates too, which we do not want.
36
-
37
- Once a `@grafana/ui` package is then released and available with the component updates, we can remove the component from this folder and export the imported version from the new `@grafana/ui` package instead.
38
-
39
- This means any component in `unreleasedComponents` should not be modified - they should stay in sync with what is in `@grafana/ui` (besides changes in imports or stories) and removed from this project as soon as we can replace it with an actual package version.
7
+ Plugin-ui@0.9.0 is compatible with Grafana versions 10.4.0 and higher. If the `grafanaDependency` field in your plugin.json file is set to an earlier version, you should amend it to `>=10.4.0`
8
+ When you do that, consider also incrementing your plugin's major version to make sure users on Grafana < 10.4.0 do not accidentally install an incompatible plugin version.
40
9
 
41
10
  ## Storybook
42
11
 
@@ -7,8 +7,7 @@ const ui_1 = require("@grafana/ui");
7
7
  const css_1 = require("@emotion/css");
8
8
  // @ts-ignore
9
9
  const rc_cascader_1 = tslib_1.__importDefault(require("rc-cascader"));
10
- const ui_2 = require("@grafana/ui");
11
- const getStyles = ((theme) => {
10
+ const getStyles = (theme) => {
12
11
  return {
13
12
  popup: (0, css_1.css) `
14
13
  label: popup;
@@ -18,10 +17,10 @@ const getStyles = ((theme) => {
18
17
  margin: 1px 0 0 4px;
19
18
  `,
20
19
  };
21
- });
22
- const AsyncButtonCascader = props => {
20
+ };
21
+ const AsyncButtonCascader = (props) => {
23
22
  const { onChange, className, loadData } = props, rest = tslib_1.__rest(props, ["onChange", "className", "loadData"]);
24
- const theme = (0, ui_2.useTheme2)();
23
+ const theme = (0, ui_1.useTheme2)();
25
24
  const styles = getStyles(theme);
26
25
  return (react_1.default.createElement(rc_cascader_1.default, Object.assign({ onChange: onChange, loadData: loadData, changeOnSelect: true, popupClassName: styles.popup }, rest, { expandIcon: null }),
27
26
  react_1.default.createElement("button", { className: (0, css_1.cx)('gf-form-label', className), disabled: props.disabled },
@@ -1 +1 @@
1
- {"version":3,"file":"AsyncButtonCascader.js","sourceRoot":"","sources":["../../../src/components/AsyncButtonCascader/AsyncButtonCascader.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,oCAAmC;AACnC,sCAAuC;AAEvC,aAAa;AACb,sEAAyD;AACzD,oCAAwC;AAexC,MAAM,SAAS,GAAG,CAAC,CAAC,KAAoB,EAAE,EAAE;IAC1C,OAAO;QACL,KAAK,EAAE,IAAA,SAAG,EAAA;;iBAEG,KAAK,CAAC,MAAM,CAAC,QAAQ;KACjC;QACD,IAAI,EAAE,IAAA,SAAG,EAAA;;KAER;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEI,MAAM,mBAAmB,GAAuC,KAAK,CAAC,EAAE;IAC7E,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,KAAc,KAAK,EAAd,IAAI,kBAAK,KAAK,EAAlD,qCAA0C,CAAQ,CAAC;IACzD,MAAM,KAAK,GAAG,IAAA,cAAS,GAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAEhC,OAAO,CACL,8BAAC,qBAAU,kBACT,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,IAAI,EACpB,cAAc,EAAE,MAAM,CAAC,KAAK,IACxB,IAAI,IACR,UAAU,EAAE,IAAI;QAEhB,0CAAQ,SAAS,EAAE,IAAA,QAAE,EAAC,eAAe,EAAE,SAAS,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxE,KAAK,CAAC,QAAQ;;YAAE,8BAAC,SAAI,IAAC,IAAI,EAAC,YAAY,EAAC,SAAS,EAAE,MAAM,CAAC,IAAI,GAAI,CAC5D,CACE,CACd,CAAC;AACJ,CAAC,CAAC;AAnBW,QAAA,mBAAmB,uBAmB9B;AAEF,2BAAmB,CAAC,WAAW,GAAG,qBAAqB,CAAC"}
1
+ {"version":3,"file":"AsyncButtonCascader.js","sourceRoot":"","sources":["../../../src/components/AsyncButtonCascader/AsyncButtonCascader.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,oCAA8C;AAE9C,sCAAuC;AAEvC,aAAa;AACb,sEAAyD;AAczD,MAAM,SAAS,GAAG,CAAC,KAAoB,EAAE,EAAE;IACzC,OAAO;QACL,KAAK,EAAE,IAAA,SAAG,EAAA;;iBAEG,KAAK,CAAC,MAAM,CAAC,QAAQ;KACjC;QACD,IAAI,EAAE,IAAA,SAAG,EAAA;;KAER;KACF,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,mBAAmB,GAAG,CAAC,KAA+B,EAAE,EAAE;IACrE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,KAAc,KAAK,EAAd,IAAI,kBAAK,KAAK,EAAlD,qCAA0C,CAAQ,CAAC;IACzD,MAAM,KAAK,GAAG,IAAA,cAAS,GAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAEhC,OAAO,CACL,8BAAC,qBAAU,kBACT,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,IAAI,EACpB,cAAc,EAAE,MAAM,CAAC,KAAK,IACxB,IAAI,IACR,UAAU,EAAE,IAAI;QAEhB,0CAAQ,SAAS,EAAE,IAAA,QAAE,EAAC,eAAe,EAAE,SAAS,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxE,KAAK,CAAC,QAAQ;;YAAE,8BAAC,SAAI,IAAC,IAAI,EAAC,YAAY,EAAC,SAAS,EAAE,MAAM,CAAC,IAAI,GAAI,CAC5D,CACE,CACd,CAAC;AACJ,CAAC,CAAC;AAnBW,QAAA,mBAAmB,uBAmB9B;AAEF,2BAAmB,CAAC,WAAW,GAAG,qBAAqB,CAAC"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AdvancedHttpSettings = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const css_1 = require("@emotion/css");
7
+ const ui_1 = require("@grafana/ui");
8
+ const ConfigSection_1 = require("../ConfigSection");
9
+ const AdvancedHttpSettings = ({ config, onChange, className, }) => {
10
+ const onCookiesChange = (cookies) => {
11
+ onChange(Object.assign(Object.assign({}, config), { jsonData: Object.assign(Object.assign({}, config.jsonData), { keepCookies: cookies }) }));
12
+ };
13
+ const onTimeoutChange = (event) => {
14
+ onChange(Object.assign(Object.assign({}, config), { jsonData: Object.assign(Object.assign({}, config.jsonData), { timeout: parseInt(event.currentTarget.value, 10) }) }));
15
+ };
16
+ const styles = {
17
+ container: (0, css_1.css)({
18
+ maxWidth: 578,
19
+ }),
20
+ };
21
+ return (react_1.default.createElement(ConfigSection_1.ConfigSubSection, { title: "Advanced HTTP settings", className: (0, css_1.cx)(styles.container, className) },
22
+ react_1.default.createElement(ui_1.InlineField, { htmlFor: "advanced-http-cookies", label: "Allowed cookies", labelWidth: 24, tooltip: "Grafana proxy deletes forwarded cookies by default. Specify cookies by name that should be forwarded to the data source.", disabled: config.readOnly, grow: true },
23
+ react_1.default.createElement(ui_1.TagsInput, { id: "advanced-http-cookies", placeholder: "New cookie (hit enter to add)", tags: config.jsonData.keepCookies, onChange: onCookiesChange })),
24
+ react_1.default.createElement(ui_1.InlineField, { htmlFor: "advanced-http-timeout", label: "Timeout", labelWidth: 24, tooltip: "HTTP request timeout in seconds", disabled: config.readOnly, grow: true },
25
+ react_1.default.createElement(ui_1.Input, { id: "advanced-http-timeout", type: "number", min: 0, placeholder: "Timeout in seconds", "aria-label": "Timeout in seconds", value: config.jsonData.timeout, onChange: onTimeoutChange }))));
26
+ };
27
+ exports.AdvancedHttpSettings = AdvancedHttpSettings;
28
+ //# sourceMappingURL=AdvancedHttpSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdvancedHttpSettings.js","sourceRoot":"","sources":["../../../../src/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,sCAAuC;AACvC,oCAA4D;AAC5D,oDAAoD;AAS7C,MAAM,oBAAoB,GAAgE,CAAC,EAChG,MAAM,EACN,QAAQ,EACR,SAAS,GACV,EAAE,EAAE;IACH,MAAM,eAAe,GAAG,CAAC,OAAiB,EAAE,EAAE;QAC5C,QAAQ,iCACH,MAAM,KACT,QAAQ,kCACH,MAAM,CAAC,QAAQ,KAClB,WAAW,EAAE,OAAO,OAEtB,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,KAAwC,EAAE,EAAE;QACnE,QAAQ,iCACH,MAAM,KACT,QAAQ,kCACH,MAAM,CAAC,QAAQ,KAClB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,CAAC,OAElD,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG;QACb,SAAS,EAAE,IAAA,SAAG,EAAC;YACb,QAAQ,EAAE,GAAG;SACd,CAAC;KACH,CAAC;IAEF,OAAO,CACL,8BAAC,gCAAgB,IAAC,KAAK,EAAC,wBAAwB,EAAC,SAAS,EAAE,IAAA,QAAE,EAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC;QACzF,8BAAC,gBAAW,IACV,OAAO,EAAC,uBAAuB,EAC/B,KAAK,EAAC,iBAAiB,EACvB,UAAU,EAAE,EAAE,EACd,OAAO,EAAC,0HAA0H,EAClI,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,IAAI;YAEJ,8BAAC,cAAS,IACR,EAAE,EAAC,uBAAuB,EAC1B,WAAW,EAAC,+BAA+B,EAC3C,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EACjC,QAAQ,EAAE,eAAe,GACzB,CACU;QAEd,8BAAC,gBAAW,IACV,OAAO,EAAC,uBAAuB,EAC/B,KAAK,EAAC,SAAS,EACf,UAAU,EAAE,EAAE,EACd,OAAO,EAAC,iCAAiC,EACzC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,IAAI;YAEJ,8BAAC,UAAK,IACJ,EAAE,EAAC,uBAAuB,EAC1B,IAAI,EAAC,QAAQ,EACb,GAAG,EAAE,CAAC,EACN,WAAW,EAAC,oBAAoB,gBACrB,oBAAoB,EAC/B,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAC9B,QAAQ,EAAE,eAAe,GACzB,CACU,CACG,CACpB,CAAC;AACJ,CAAC,CAAC;AArEW,QAAA,oBAAoB,wBAqE/B"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AdvancedHttpSettings = void 0;
4
+ var AdvancedHttpSettings_1 = require("./AdvancedHttpSettings");
5
+ Object.defineProperty(exports, "AdvancedHttpSettings", { enumerable: true, get: function () { return AdvancedHttpSettings_1.AdvancedHttpSettings; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/ConfigEditor/AdvancedSettings/index.ts"],"names":[],"mappings":";;;AAAA,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Auth = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const css_1 = require("@emotion/css");
7
+ const AuthMethodSettings_1 = require("./auth-method/AuthMethodSettings");
8
+ const TLSSettings_1 = require("./tls/TLSSettings");
9
+ const CustomHeaders_1 = require("./custom-headers/CustomHeaders");
10
+ const ConfigSection_1 = require("../ConfigSection");
11
+ const Auth = ({ selectedMethod, mostCommonMethod, visibleMethods, defaultOptionsOverrides, customMethods, onAuthMethodSelect, basicAuth, TLS, customHeaders, readOnly = false, }) => {
12
+ const styles = {
13
+ container: (0, css_1.css)({
14
+ maxWidth: 578,
15
+ }),
16
+ };
17
+ return (react_1.default.createElement("div", { className: styles.container },
18
+ react_1.default.createElement(ConfigSection_1.ConfigSection, { title: "Authentication" },
19
+ react_1.default.createElement(AuthMethodSettings_1.AuthMethodSettings, { selectedMethod: selectedMethod, mostCommonMethod: mostCommonMethod, customMethods: customMethods, visibleMethods: visibleMethods, defaultOptionsOverrides: defaultOptionsOverrides, onAuthMethodSelect: onAuthMethodSelect, basicAuth: basicAuth, readOnly: readOnly }),
20
+ TLS && react_1.default.createElement(TLSSettings_1.TLSSettings, Object.assign({}, TLS, { readOnly: readOnly })),
21
+ customHeaders && react_1.default.createElement(CustomHeaders_1.CustomHeaders, Object.assign({}, customHeaders, { readOnly: readOnly })))));
22
+ };
23
+ exports.Auth = Auth;
24
+ //# sourceMappingURL=Auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Auth.js","sourceRoot":"","sources":["../../../../src/components/ConfigEditor/Auth/Auth.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,sCAAmC;AAEnC,yEAAsE;AACtE,mDAA2E;AAE3E,kEAA4F;AAC5F,oDAAiD;AAe1C,MAAM,IAAI,GAAG,CAAC,EACnB,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,uBAAuB,EACvB,aAAa,EACb,kBAAkB,EAClB,SAAS,EACT,GAAG,EACH,aAAa,EACb,QAAQ,GAAG,KAAK,GACV,EAAE,EAAE;IACV,MAAM,MAAM,GAAG;QACb,SAAS,EAAE,IAAA,SAAG,EAAC;YACb,QAAQ,EAAE,GAAG;SACd,CAAC;KACH,CAAC;IAEF,OAAO,CACL,uCAAK,SAAS,EAAE,MAAM,CAAC,SAAS;QAC9B,8BAAC,6BAAa,IAAC,KAAK,EAAC,gBAAgB;YACnC,8BAAC,uCAAkB,IACjB,cAAc,EAAE,cAAc,EAC9B,gBAAgB,EAAE,gBAAgB,EAClC,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,EAC9B,uBAAuB,EAAE,uBAAuB,EAChD,kBAAkB,EAAE,kBAAkB,EACtC,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,GAClB;YACD,GAAG,IAAI,8BAAC,yBAAW,oBAAK,GAAG,IAAE,QAAQ,EAAE,QAAQ,IAAI;YACnD,aAAa,IAAI,8BAAC,6BAAa,oBAAK,aAAa,IAAE,QAAQ,EAAE,QAAQ,IAAI,CAC5D,CACZ,CACP,CAAC;AACJ,CAAC,CAAC;AApCW,QAAA,IAAI,QAoCf"}
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AuthMethodSettings = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importStar(require("react"));
6
+ const css_1 = require("@emotion/css");
7
+ const ui_1 = require("@grafana/ui");
8
+ const BasicAuth_1 = require("./BasicAuth");
9
+ const ConfigSection_1 = require("../../ConfigSection");
10
+ const types_1 = require("../types");
11
+ const defaultOptions = {
12
+ [types_1.AuthMethod.BasicAuth]: {
13
+ label: 'Basic authentication',
14
+ value: types_1.AuthMethod.BasicAuth,
15
+ description: 'Authenticate with your data source username and password',
16
+ },
17
+ [types_1.AuthMethod.CrossSiteCredentials]: {
18
+ label: 'Enable cross-site access control requests',
19
+ value: types_1.AuthMethod.CrossSiteCredentials,
20
+ description: 'Allow cross-site Access-Control requests with your existing credentials and cookies. This enables the server to authenticate the user and perform authorized requests on their behalf on other domains.',
21
+ },
22
+ [types_1.AuthMethod.OAuthForward]: {
23
+ label: 'Forward OAuth Identity',
24
+ value: types_1.AuthMethod.OAuthForward,
25
+ description: 'Forward the OAuth access token (and if available: the OIDC ID token) of the user querying to the data source',
26
+ },
27
+ [types_1.AuthMethod.NoAuth]: {
28
+ label: 'No Authentication',
29
+ value: types_1.AuthMethod.NoAuth,
30
+ description: 'Data source is available without authentication',
31
+ },
32
+ };
33
+ const AuthMethodSettings = ({ selectedMethod, mostCommonMethod, visibleMethods: visibleMethodsFromProps, defaultOptionsOverrides, customMethods, onAuthMethodSelect, basicAuth, readOnly, }) => {
34
+ var _a, _b, _c, _d;
35
+ const [authMethodChanged, setAuthMethodChanged] = (0, react_1.useState)(false);
36
+ const { colors, spacing } = (0, ui_1.useTheme2)();
37
+ const visibleMethods = (0, react_1.useMemo)(() => {
38
+ var _a;
39
+ return visibleMethodsFromProps !== null && visibleMethodsFromProps !== void 0 ? visibleMethodsFromProps : [
40
+ types_1.AuthMethod.BasicAuth,
41
+ types_1.AuthMethod.OAuthForward,
42
+ types_1.AuthMethod.NoAuth,
43
+ ...((_a = customMethods === null || customMethods === void 0 ? void 0 : customMethods.map((m) => m.id)) !== null && _a !== void 0 ? _a : []),
44
+ ];
45
+ }, [customMethods, visibleMethodsFromProps]);
46
+ const hasSelect = visibleMethods.length > 1;
47
+ const preparedOptions = (0, react_1.useMemo)(() => {
48
+ var _a;
49
+ const customOptions = (_a = customMethods === null || customMethods === void 0 ? void 0 : customMethods.reduce((acc, method) => {
50
+ acc[method.id] = {
51
+ label: method.label,
52
+ value: method.id,
53
+ description: method.description,
54
+ };
55
+ return acc;
56
+ }, {})) !== null && _a !== void 0 ? _a : {};
57
+ const preparedDefaultOptions = {};
58
+ let k;
59
+ for (k in defaultOptions) {
60
+ preparedDefaultOptions[k] = Object.assign(Object.assign({}, defaultOptions[k]), defaultOptionsOverrides === null || defaultOptionsOverrides === void 0 ? void 0 : defaultOptionsOverrides[k]);
61
+ }
62
+ const allOptions = Object.assign(Object.assign({}, customOptions), preparedDefaultOptions);
63
+ return visibleMethods
64
+ .filter((method) => Boolean(allOptions[method]))
65
+ .map((method) => {
66
+ const option = allOptions[method];
67
+ if (method === mostCommonMethod && hasSelect) {
68
+ return Object.assign(Object.assign({}, option), { label: `${option.label} (most common)` });
69
+ }
70
+ return option;
71
+ });
72
+ }, [visibleMethods, customMethods, defaultOptionsOverrides, mostCommonMethod, hasSelect]);
73
+ let selected = selectedMethod;
74
+ if (!hasSelect) {
75
+ selected = visibleMethods[0];
76
+ }
77
+ else if (selectedMethod === types_1.AuthMethod.NoAuth && mostCommonMethod && !authMethodChanged) {
78
+ selected = mostCommonMethod;
79
+ }
80
+ let AuthFieldsComponent = null;
81
+ if (selected === types_1.AuthMethod.BasicAuth && basicAuth) {
82
+ AuthFieldsComponent = react_1.default.createElement(BasicAuth_1.BasicAuth, Object.assign({}, basicAuth, { readOnly: readOnly }));
83
+ }
84
+ else if (selected.startsWith('custom-')) {
85
+ AuthFieldsComponent = (_b = (_a = customMethods === null || customMethods === void 0 ? void 0 : customMethods.find((m) => m.id === selected)) === null || _a === void 0 ? void 0 : _a.component) !== null && _b !== void 0 ? _b : null;
86
+ }
87
+ const title = hasSelect ? 'Authentication methods' : ((_c = preparedOptions[0].label) !== null && _c !== void 0 ? _c : '');
88
+ const description = hasSelect
89
+ ? 'Choose an authentication method to access the data source'
90
+ : ((_d = preparedOptions[0].description) !== null && _d !== void 0 ? _d : '');
91
+ const styles = {
92
+ authMethods: (0, css_1.css)(Object.assign({ marginTop: spacing(2.5) }, (hasSelect && {
93
+ padding: spacing(2),
94
+ border: `1px solid ${colors.border.weak}`,
95
+ }))),
96
+ selectedMethodFields: (0, css_1.css)({
97
+ marginTop: spacing(1.5),
98
+ }),
99
+ };
100
+ return (react_1.default.createElement(ConfigSection_1.ConfigSubSection, { title: title, description: description },
101
+ react_1.default.createElement("div", { className: styles.authMethods },
102
+ hasSelect && (react_1.default.createElement(ui_1.Select, { options: preparedOptions, value: selected, onChange: (option) => {
103
+ setAuthMethodChanged(true);
104
+ onAuthMethodSelect(option.value);
105
+ }, disabled: readOnly })),
106
+ AuthFieldsComponent && react_1.default.createElement("div", { className: styles.selectedMethodFields }, AuthFieldsComponent))));
107
+ };
108
+ exports.AuthMethodSettings = AuthMethodSettings;
109
+ //# sourceMappingURL=AuthMethodSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthMethodSettings.js","sourceRoot":"","sources":["../../../../../src/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BasicAuth = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const css_1 = require("@emotion/css");
7
+ const ui_1 = require("@grafana/ui");
8
+ const styles_1 = require("../styles");
9
+ const BasicAuth = ({ user, passwordConfigured, userLabel = 'User', userTooltip = 'The username of the data source account', userPlaceholder = 'User', passwordLabel = 'Password', passwordTooltip = 'The password of the data source account', passwordPlaceholder = 'Password', onUserChange, onPasswordChange, onPasswordReset, readOnly, }) => {
10
+ const commonStyles = (0, styles_1.useCommonStyles)();
11
+ const styles = {
12
+ lastInlineField: (0, css_1.css)({
13
+ marginBottom: 0,
14
+ }),
15
+ };
16
+ return (react_1.default.createElement(react_1.default.Fragment, null,
17
+ react_1.default.createElement(ui_1.InlineField, { className: commonStyles.inlineFieldNoMarginRight, label: userLabel, labelWidth: 24, tooltip: userTooltip, required: true, htmlFor: "basic-auth-user-input", interactive: true, grow: true, disabled: readOnly },
18
+ react_1.default.createElement(ui_1.Input, { id: "basic-auth-user-input", placeholder: userPlaceholder, value: user, onChange: (e) => onUserChange(e.currentTarget.value), required: true })),
19
+ react_1.default.createElement(ui_1.InlineField, { className: (0, css_1.cx)(commonStyles.inlineFieldNoMarginRight, commonStyles.inlineFieldWithSecret, styles.lastInlineField), label: passwordLabel, labelWidth: 24, tooltip: passwordTooltip, required: true, htmlFor: "basic-auth-password-input", interactive: true, grow: true, disabled: readOnly },
20
+ react_1.default.createElement(ui_1.SecretInput, { id: "basic-auth-password-input", isConfigured: passwordConfigured, onReset: readOnly ? () => { } : onPasswordReset, placeholder: passwordPlaceholder, onChange: (e) => onPasswordChange(e.currentTarget.value), required: true }))));
21
+ };
22
+ exports.BasicAuth = BasicAuth;
23
+ //# sourceMappingURL=BasicAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BasicAuth.js","sourceRoot":"","sources":["../../../../../src/components/ConfigEditor/Auth/auth-method/BasicAuth.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,sCAAuC;AACvC,oCAA8E;AAC9E,sCAA4C;AAiBrC,MAAM,SAAS,GAAG,CAAC,EACxB,IAAI,EACJ,kBAAkB,EAClB,SAAS,GAAG,MAAM,EAClB,WAAW,GAAG,yCAAyC,EACvD,eAAe,GAAG,MAAM,EACxB,aAAa,GAAG,UAAU,EAC1B,eAAe,GAAG,yCAAyC,EAC3D,mBAAmB,GAAG,UAAU,EAChC,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,QAAQ,GACF,EAAE,EAAE;IACV,MAAM,YAAY,GAAG,IAAA,wBAAe,GAAE,CAAC;IACvC,MAAM,MAAM,GAAG;QACb,eAAe,EAAE,IAAA,SAAG,EAAC;YACnB,YAAY,EAAE,CAAC;SAChB,CAAC;KACH,CAAC;IACF,OAAO,CACL;QACE,8BAAC,gBAAW,IACV,SAAS,EAAE,YAAY,CAAC,wBAAwB,EAChD,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,EAAE,EACd,OAAO,EAAE,WAAW,EACpB,QAAQ,QACR,OAAO,EAAC,uBAAuB,EAC/B,WAAW,QACX,IAAI,QACJ,QAAQ,EAAE,QAAQ;YAElB,8BAAC,UAAK,IACJ,EAAE,EAAC,uBAAuB,EAC1B,WAAW,EAAE,eAAe,EAC5B,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,EACpD,QAAQ,SACR,CACU;QACd,8BAAC,gBAAW,IACV,SAAS,EAAE,IAAA,QAAE,EACX,YAAY,CAAC,wBAAwB,EACrC,YAAY,CAAC,qBAAqB,EAClC,MAAM,CAAC,eAAe,CACvB,EACD,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,EAAE,EACd,OAAO,EAAE,eAAe,EACxB,QAAQ,QACR,OAAO,EAAC,2BAA2B,EACnC,WAAW,QACX,IAAI,QACJ,QAAQ,EAAE,QAAQ;YAElB,8BAAC,gBAAW,IACV,EAAE,EAAC,2BAA2B,EAC9B,YAAY,EAAE,kBAAkB,EAChC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,eAAe,EAC9C,WAAW,EAAE,mBAAmB,EAChC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,EACxD,QAAQ,SACR,CACU,CACb,CACJ,CAAC;AACJ,CAAC,CAAC;AAnEW,QAAA,SAAS,aAmEpB"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CustomHeader = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const css_1 = require("@emotion/css");
7
+ const ui_1 = require("@grafana/ui");
8
+ const styles_1 = require("../styles");
9
+ const CustomHeader = ({ header, onChange, onBlur, onDelete, readOnly }) => {
10
+ const { spacing } = (0, ui_1.useTheme2)();
11
+ const commonStyles = (0, styles_1.useCommonStyles)();
12
+ const styles = {
13
+ container: (0, css_1.css)({
14
+ alignItems: 'center',
15
+ }),
16
+ input: (0, css_1.css)({
17
+ minWidth: '100%',
18
+ }),
19
+ headerNameField: (0, css_1.css)({
20
+ width: '40%',
21
+ marginRight: 0,
22
+ paddingRight: spacing(1),
23
+ }),
24
+ headerValueField: (0, css_1.css)({
25
+ width: '45%',
26
+ marginRight: 0,
27
+ }),
28
+ removeHeaderBtn: (0, css_1.css)({
29
+ margin: `0 0 3px 10px`,
30
+ }),
31
+ };
32
+ return (react_1.default.createElement(react_1.default.Fragment, null,
33
+ react_1.default.createElement(ui_1.InlineFieldRow, { className: styles.container },
34
+ react_1.default.createElement(ui_1.InlineField, { label: "Header", labelWidth: 9, grow: true, className: styles.headerNameField, htmlFor: `custom-header-${header.id}-name-input`, disabled: readOnly },
35
+ react_1.default.createElement(ui_1.Input, { id: `custom-header-${header.id}-name-input`, placeholder: "X-Custom-Header", value: header.name, width: 12, onChange: (e) => onChange(Object.assign(Object.assign({}, header), { name: e.currentTarget.value })), onBlur: onBlur, className: styles.input })),
36
+ react_1.default.createElement(ui_1.InlineField, { label: "Value", labelWidth: 9, grow: true, className: (0, css_1.cx)(commonStyles.inlineFieldWithSecret, styles.headerValueField), htmlFor: `custom-header-${header.id}-value-input`, disabled: readOnly },
37
+ react_1.default.createElement(ui_1.SecretInput, { id: `custom-header-${header.id}-value-input`, isConfigured: header.configured, placeholder: "Header value", value: header.value, width: 12, onChange: (e) => onChange(Object.assign(Object.assign({}, header), { value: e.currentTarget.value })), onReset: readOnly ? () => { } : () => onChange(Object.assign(Object.assign({}, header), { configured: false, value: '' })), onBlur: onBlur, className: styles.input })),
38
+ react_1.default.createElement(ui_1.IconButton, { name: "trash-alt", tooltip: "Remove header", tooltipPlacement: "top", className: styles.removeHeaderBtn, onClick: onDelete, type: "button", disabled: readOnly }))));
39
+ };
40
+ exports.CustomHeader = CustomHeader;
41
+ //# sourceMappingURL=CustomHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomHeader.js","sourceRoot":"","sources":["../../../../../src/components/ConfigEditor/Auth/custom-headers/CustomHeader.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CustomHeaders = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importStar(require("react"));
6
+ const css_1 = require("@emotion/css");
7
+ const ui_1 = require("@grafana/ui");
8
+ const CustomHeader_1 = require("./CustomHeader");
9
+ const ConfigSection_1 = require("../../ConfigSection");
10
+ const CustomHeaders = ({ headers: headersFromProps, onChange, readOnly }) => {
11
+ const { spacing } = (0, ui_1.useTheme2)();
12
+ const [headers, setHeaders] = (0, react_1.useState)(headersFromProps.map((header) => (Object.assign(Object.assign({}, header), { id: uniqueId(), value: '' }))));
13
+ (0, react_1.useEffect)(() => {
14
+ setHeaders((headers) => {
15
+ let changed = false;
16
+ const newHeaders = headers.map((header) => {
17
+ var _a;
18
+ const configured = (_a = headersFromProps.find((h) => h.name === header.name)) === null || _a === void 0 ? void 0 : _a.configured;
19
+ if (typeof configured !== 'undefined' && header.configured !== configured) {
20
+ changed = true;
21
+ return Object.assign(Object.assign({}, header), { configured });
22
+ }
23
+ return header;
24
+ });
25
+ if (changed) {
26
+ return newHeaders;
27
+ }
28
+ return headers;
29
+ });
30
+ }, [headersFromProps]);
31
+ const onHeaderAdd = () => {
32
+ setHeaders([...headers, { id: uniqueId(), name: '', value: '', configured: false }]);
33
+ };
34
+ const onHeaderChange = (id, header) => {
35
+ setHeaders(headers.map((h) => (h.id === id ? Object.assign({}, header) : h)));
36
+ };
37
+ const onHeaderDelete = (id) => {
38
+ const index = headers.findIndex((h) => h.id === id);
39
+ if (index === -1) {
40
+ return;
41
+ }
42
+ const newHeaders = [...headers];
43
+ newHeaders.splice(index, 1);
44
+ setHeaders(newHeaders);
45
+ onChange(newHeaders.map(({ name, value, configured }) => ({
46
+ name,
47
+ value,
48
+ configured,
49
+ })));
50
+ };
51
+ const onBlur = () => {
52
+ onChange(headers.map(({ name, value, configured }) => ({
53
+ name,
54
+ value,
55
+ configured,
56
+ })));
57
+ };
58
+ const styles = {
59
+ container: (0, css_1.css)({
60
+ marginTop: spacing(3),
61
+ }),
62
+ addHeaderButton: (0, css_1.css)({
63
+ marginTop: spacing(1.5),
64
+ }),
65
+ };
66
+ return (react_1.default.createElement("div", { className: styles.container },
67
+ react_1.default.createElement(ConfigSection_1.ConfigSubSection, { title: "HTTP headers", description: "Pass along additional context and metadata about the request/response", isCollapsible: true, isInitiallyOpen: headers.length > 0 },
68
+ react_1.default.createElement("div", null, headers.map((header) => (react_1.default.createElement(CustomHeader_1.CustomHeader, { key: header.id, header: header, onChange: (header) => onHeaderChange(header.id, header), onDelete: () => onHeaderDelete(header.id), onBlur: onBlur, readOnly: readOnly })))),
69
+ react_1.default.createElement("div", { className: styles.addHeaderButton },
70
+ react_1.default.createElement(ui_1.Button, { icon: "plus", variant: "secondary", fill: "outline", onClick: onHeaderAdd, disabled: readOnly }, headers.length === 0 ? 'Add header' : 'Add another header')))));
71
+ };
72
+ exports.CustomHeaders = CustomHeaders;
73
+ function uniqueId() {
74
+ return Math.random().toString(16).slice(2);
75
+ }
76
+ //# sourceMappingURL=CustomHeaders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomHeaders.js","sourceRoot":"","sources":["../../../../../src/components/ConfigEditor/Auth/custom-headers/CustomHeaders.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.convertLegacyAuthProps = exports.AuthMethod = exports.Auth = void 0;
4
+ var Auth_1 = require("./Auth");
5
+ Object.defineProperty(exports, "Auth", { enumerable: true, get: function () { return Auth_1.Auth; } });
6
+ var types_1 = require("./types");
7
+ Object.defineProperty(exports, "AuthMethod", { enumerable: true, get: function () { return types_1.AuthMethod; } });
8
+ var utils_1 = require("./utils");
9
+ Object.defineProperty(exports, "convertLegacyAuthProps", { enumerable: true, get: function () { return utils_1.convertLegacyAuthProps; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/ConfigEditor/Auth/index.ts"],"names":[],"mappings":";;;AAAA,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AAEb,iCAAqC;AAA5B,mGAAA,UAAU,OAAA;AACnB,iCAAiD;AAAxC,+GAAA,sBAAsB,OAAA"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useCommonStyles = void 0;
4
+ const css_1 = require("@emotion/css");
5
+ const useCommonStyles = () => {
6
+ return {
7
+ inlineFieldNoMarginRight: (0, css_1.css)({
8
+ marginRight: 0,
9
+ }),
10
+ // This is dirty hack to make configured secret input grow
11
+ inlineFieldWithSecret: (0, css_1.css)({
12
+ '[class$="layoutChildrenWrapper"]:first-child': {
13
+ flexGrow: 1,
14
+ },
15
+ }),
16
+ };
17
+ };
18
+ exports.useCommonStyles = useCommonStyles;
19
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/components/ConfigEditor/Auth/styles.ts"],"names":[],"mappings":";;;AAAA,sCAAmC;AAE5B,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,OAAO;QACL,wBAAwB,EAAE,IAAA,SAAG,EAAC;YAC5B,WAAW,EAAE,CAAC;SACf,CAAC;QACF,0DAA0D;QAC1D,qBAAqB,EAAE,IAAA,SAAG,EAAC;YACzB,8CAA8C,EAAE;gBAC9C,QAAQ,EAAE,CAAC;aACZ;SACF,CAAC;KACH,CAAC;AACJ,CAAC,CAAC;AAZW,QAAA,eAAe,mBAY1B"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SelfSignedCertificate = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const css_1 = require("@emotion/css");
7
+ const ui_1 = require("@grafana/ui");
8
+ const TLSSettingsSection_1 = require("./TLSSettingsSection");
9
+ const styles_1 = require("../styles");
10
+ const SelfSignedCertificate = ({ enabled, certificateConfigured, onToggle, onCertificateChange, onCertificateReset, tooltips, readOnly, }) => {
11
+ var _a;
12
+ const commonStyles = (0, styles_1.useCommonStyles)();
13
+ return (react_1.default.createElement(TLSSettingsSection_1.TLSSettingsSection, { enabled: enabled, label: "Add self-signed certificate", tooltipText: "Add your own Certificate Authority (CA) certificate on top of one generated by the certificate authorities for additional security measures", onToggle: (newEnabled) => onToggle(newEnabled), readOnly: readOnly },
14
+ react_1.default.createElement(ui_1.InlineField, { label: "CA Certificate", labelWidth: 24, tooltip: (_a = tooltips === null || tooltips === void 0 ? void 0 : tooltips.certificateLabel) !== null && _a !== void 0 ? _a : 'Your self-signed certificate', required: true, htmlFor: "self-signed-certificate-input", interactive: true, grow: true, className: (0, css_1.cx)(commonStyles.inlineFieldNoMarginRight, commonStyles.inlineFieldWithSecret), disabled: readOnly },
15
+ react_1.default.createElement(ui_1.SecretTextArea, { id: "self-signed-certificate-input", isConfigured: certificateConfigured, onChange: (e) => onCertificateChange(e.currentTarget.value), onReset: readOnly ? () => { } : onCertificateReset, placeholder: "Begins with --- BEGIN CERTIFICATE ---", rows: 6, required: true }))));
16
+ };
17
+ exports.SelfSignedCertificate = SelfSignedCertificate;
18
+ //# sourceMappingURL=SelfSignedCertificate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelfSignedCertificate.js","sourceRoot":"","sources":["../../../../../src/components/ConfigEditor/Auth/tls/SelfSignedCertificate.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,sCAAkC;AAClC,oCAA0D;AAC1D,6DAA0D;AAC1D,sCAA4C;AAcrC,MAAM,qBAAqB,GAAG,CAAC,EACpC,OAAO,EACP,qBAAqB,EACrB,QAAQ,EACR,mBAAmB,EACnB,kBAAkB,EAClB,QAAQ,EACR,QAAQ,GACF,EAAE,EAAE;;IACV,MAAM,YAAY,GAAG,IAAA,wBAAe,GAAE,CAAC;IAEvC,OAAO,CACL,8BAAC,uCAAkB,IACjB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAC,6BAA6B,EACnC,WAAW,EAAC,6IAA6I,EACzJ,QAAQ,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAC9C,QAAQ,EAAE,QAAQ;QAElB,8BAAC,gBAAW,IACV,KAAK,EAAC,gBAAgB,EACtB,UAAU,EAAE,EAAE,EACd,OAAO,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,mCAAI,8BAA8B,EACrE,QAAQ,QACR,OAAO,EAAC,+BAA+B,EACvC,WAAW,QACX,IAAI,QACJ,SAAS,EAAE,IAAA,QAAE,EAAC,YAAY,CAAC,wBAAwB,EAAE,YAAY,CAAC,qBAAqB,CAAC,EACxF,QAAQ,EAAE,QAAQ;YAElB,8BAAC,mBAAc,IACb,EAAE,EAAC,+BAA+B,EAClC,YAAY,EAAE,qBAAqB,EACnC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,EAC3D,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,kBAAkB,EACjD,WAAW,EAAC,uCAAuC,EACnD,IAAI,EAAE,CAAC,EACP,QAAQ,SACR,CACU,CACK,CACtB,CAAC;AACJ,CAAC,CAAC;AA1CW,QAAA,qBAAqB,yBA0ChC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SkipTLSVerification = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const TLSSettingsSection_1 = require("./TLSSettingsSection");
7
+ const SkipTLSVerification = ({ enabled, onToggle, readOnly }) => {
8
+ return (react_1.default.createElement(TLSSettingsSection_1.TLSSettingsSection, { enabled: enabled, label: "Skip TLS certificate validation", tooltipText: "Skipping TLS certificate validation is not recommended unless absolutely necessary or for testing", onToggle: (newEnabled) => onToggle(newEnabled), readOnly: readOnly }));
9
+ };
10
+ exports.SkipTLSVerification = SkipTLSVerification;
11
+ //# sourceMappingURL=SkipTLSVerification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkipTLSVerification.js","sourceRoot":"","sources":["../../../../../src/components/ConfigEditor/Auth/tls/SkipTLSVerification.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,6DAA0D;AAQnD,MAAM,mBAAmB,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAS,EAAE,EAAE;IAC5E,OAAO,CACL,8BAAC,uCAAkB,IACjB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAC,iCAAiC,EACvC,WAAW,EAAC,mGAAmG,EAC/G,QAAQ,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAC9C,QAAQ,EAAE,QAAQ,GAClB,CACH,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,mBAAmB,uBAU9B"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TLSClientAuth = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const css_1 = require("@emotion/css");
7
+ const ui_1 = require("@grafana/ui");
8
+ const TLSSettingsSection_1 = require("./TLSSettingsSection");
9
+ const styles_1 = require("../styles");
10
+ const TLSClientAuth = ({ enabled, serverName, clientCertificateConfigured, clientKeyConfigured, onToggle, onServerNameChange, onClientCertificateChange, onClientKeyChange, onClientCertificateReset, onClientKeyReset, tooltips, readOnly, }) => {
11
+ var _a, _b, _c;
12
+ const commonStyles = (0, styles_1.useCommonStyles)();
13
+ return (react_1.default.createElement(TLSSettingsSection_1.TLSSettingsSection, { enabled: enabled, label: "TLS Client Authentication", tooltipText: "Validate using TLS client authentication, in which the server authenticates the client", onToggle: (newEnabled) => onToggle(newEnabled), readOnly: readOnly },
14
+ react_1.default.createElement(ui_1.InlineField, { label: "ServerName", labelWidth: 24, tooltip: (_a = tooltips === null || tooltips === void 0 ? void 0 : tooltips.serverNameLabel) !== null && _a !== void 0 ? _a : 'A Servername is used to verify the hostname on the returned certificate', required: true, htmlFor: "client-auth-servername-input", interactive: true, grow: true, className: commonStyles.inlineFieldNoMarginRight, disabled: readOnly },
15
+ react_1.default.createElement(ui_1.Input, { id: "client-auth-servername-input", placeholder: "domain.example.com", value: serverName, onChange: (e) => onServerNameChange(e.currentTarget.value), required: true })),
16
+ react_1.default.createElement(ui_1.InlineField, { label: "Client Certificate", labelWidth: 24, tooltip: (_b = tooltips === null || tooltips === void 0 ? void 0 : tooltips.certificateLabel) !== null && _b !== void 0 ? _b : 'The client certificate can be generated from a Certificate Authority or be self-signed', required: true, htmlFor: "client-auth-client-certificate-input", interactive: true, grow: true, className: (0, css_1.cx)(commonStyles.inlineFieldNoMarginRight, commonStyles.inlineFieldWithSecret), disabled: readOnly },
17
+ react_1.default.createElement(ui_1.SecretTextArea, { id: "client-auth-client-certificate-input", isConfigured: clientCertificateConfigured, onChange: (e) => onClientCertificateChange(e.currentTarget.value), onReset: readOnly ? () => { } : onClientCertificateReset, placeholder: "Begins with --- BEGIN CERTIFICATE ---", rows: 6, required: true })),
18
+ react_1.default.createElement(ui_1.InlineField, { label: "Client Key", labelWidth: 24, tooltip: (_c = tooltips === null || tooltips === void 0 ? void 0 : tooltips.keyLabel) !== null && _c !== void 0 ? _c : 'The client key can be generated from a Certificate Authority or be self-signed', required: true, htmlFor: "client-auth-client-key-input", interactive: true, grow: true, className: (0, css_1.cx)(commonStyles.inlineFieldNoMarginRight, commonStyles.inlineFieldWithSecret), disabled: readOnly },
19
+ react_1.default.createElement(ui_1.SecretTextArea, { id: "client-auth-client-key-input", isConfigured: clientKeyConfigured, onChange: (e) => onClientKeyChange(e.currentTarget.value), onReset: readOnly ? () => { } : onClientKeyReset, placeholder: `Begins with --- RSA PRIVATE KEY CERTIFICATE ---`, rows: 6, required: true }))));
20
+ };
21
+ exports.TLSClientAuth = TLSClientAuth;
22
+ //# sourceMappingURL=TLSClientAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TLSClientAuth.js","sourceRoot":"","sources":["../../../../../src/components/ConfigEditor/Auth/tls/TLSClientAuth.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TLSSettings = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const css_1 = require("@emotion/css");
7
+ const ui_1 = require("@grafana/ui");
8
+ const SelfSignedCertificate_1 = require("./SelfSignedCertificate");
9
+ const TLSClientAuth_1 = require("./TLSClientAuth");
10
+ const SkipTLSVerification_1 = require("./SkipTLSVerification");
11
+ const ConfigSection_1 = require("../../ConfigSection");
12
+ const TLSSettings = ({ selfSignedCertificate, TLSClientAuth, skipTLSVerification, readOnly }) => {
13
+ const { spacing } = (0, ui_1.useTheme2)();
14
+ const styles = {
15
+ container: (0, css_1.css)({
16
+ marginTop: spacing(3),
17
+ }),
18
+ };
19
+ return (react_1.default.createElement(ConfigSection_1.ConfigSubSection, { className: styles.container, title: "TLS settings", description: "Additional security measures that can be applied on top of authentication" },
20
+ react_1.default.createElement(SelfSignedCertificate_1.SelfSignedCertificate, Object.assign({}, selfSignedCertificate, { readOnly: readOnly })),
21
+ react_1.default.createElement(TLSClientAuth_1.TLSClientAuth, Object.assign({}, TLSClientAuth, { readOnly: readOnly })),
22
+ react_1.default.createElement(SkipTLSVerification_1.SkipTLSVerification, Object.assign({}, skipTLSVerification, { readOnly: readOnly }))));
23
+ };
24
+ exports.TLSSettings = TLSSettings;
25
+ //# sourceMappingURL=TLSSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TLSSettings.js","sourceRoot":"","sources":["../../../../../src/components/ConfigEditor/Auth/tls/TLSSettings.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,sCAAmC;AACnC,oCAAwC;AACxC,mEAAqG;AACrG,mDAAuG;AACvG,+DAA+F;AAC/F,uDAAuD;AAShD,MAAM,WAAW,GAAG,CAAC,EAAE,qBAAqB,EAAE,aAAa,EAAE,mBAAmB,EAAE,QAAQ,EAAS,EAAE,EAAE;IAC5G,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,cAAS,GAAE,CAAC;IAEhC,MAAM,MAAM,GAAG;QACb,SAAS,EAAE,IAAA,SAAG,EAAC;YACb,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;SACtB,CAAC;KACH,CAAC;IAEF,OAAO,CACL,8BAAC,gCAAgB,IACf,SAAS,EAAE,MAAM,CAAC,SAAS,EAC3B,KAAK,EAAC,cAAc,EACpB,WAAW,EAAC,2EAA2E;QAEvF,8BAAC,6CAAqB,oBAAK,qBAAqB,IAAE,QAAQ,EAAE,QAAQ,IAAI;QACxE,8BAAC,6BAAsB,oBAAK,aAAa,IAAE,QAAQ,EAAE,QAAQ,IAAI;QACjE,8BAAC,yCAAmB,oBAAK,mBAAmB,IAAE,QAAQ,EAAE,QAAQ,IAAI,CACnD,CACpB,CAAC;AACJ,CAAC,CAAC;AApBW,QAAA,WAAW,eAoBtB"}