@grafana/plugin-ui 0.15.0 → 0.15.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 (153) hide show
  1. package/README.md +33 -0
  2. package/dist/cjs/index.cjs +341 -3149
  3. package/dist/cjs/index.cjs.map +1 -1
  4. package/dist/esm/_virtual/index.js +3 -5
  5. package/dist/esm/_virtual/index.js.map +1 -1
  6. package/dist/esm/async-query-data/DatasourceWithAsyncBackend.js +1 -1
  7. package/dist/esm/async-query-data/RunQueryButtons.js +5 -5
  8. package/dist/esm/async-query-data/RunQueryButtons.js.map +1 -1
  9. package/dist/esm/components/ConfigEditor/AdvancedSettings/AdvancedHttpSettings.js +1 -1
  10. package/dist/esm/components/ConfigEditor/Auth/Auth.js +1 -1
  11. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js +4 -4
  12. package/dist/esm/components/ConfigEditor/Auth/auth-method/AuthMethodSettings.js.map +1 -1
  13. package/dist/esm/components/ConfigEditor/Auth/auth-method/BasicAuth.js +1 -1
  14. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeader.js +1 -1
  15. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js +3 -3
  16. package/dist/esm/components/ConfigEditor/Auth/custom-headers/CustomHeaders.js.map +1 -1
  17. package/dist/esm/components/ConfigEditor/Auth/tls/SelfSignedCertificate.js +1 -1
  18. package/dist/esm/components/ConfigEditor/Auth/tls/SkipTLSVerification.js +1 -1
  19. package/dist/esm/components/ConfigEditor/Auth/tls/TLSClientAuth.js +1 -1
  20. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettings.js +1 -1
  21. package/dist/esm/components/ConfigEditor/Auth/tls/TLSSettingsSection.js +1 -1
  22. package/dist/esm/components/ConfigEditor/Auth/types.js +1 -1
  23. package/dist/esm/components/ConfigEditor/Auth/utils.js +1 -1
  24. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigDescriptionLink.js +1 -1
  25. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSection.js +1 -1
  26. package/dist/esm/components/ConfigEditor/ConfigSection/ConfigSubSection.js +1 -1
  27. package/dist/esm/components/ConfigEditor/ConfigSection/GenericConfigSection.js +2 -2
  28. package/dist/esm/components/ConfigEditor/ConfigSection/GenericConfigSection.js.map +1 -1
  29. package/dist/esm/components/ConfigEditor/Connection/ConnectionSettings.js +1 -1
  30. package/dist/esm/components/ConfigEditor/DataSourceDescription.js +1 -1
  31. package/dist/esm/components/ConfigEditor/SecureSocksProxyToggle.js +1 -1
  32. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js +2 -2
  33. package/dist/esm/components/CustomHeadersSettings/CustomHeadersSettings.js.map +1 -1
  34. package/dist/esm/components/DataLinks/DataLink.js +3 -3
  35. package/dist/esm/components/DataLinks/DataLink.js.map +1 -1
  36. package/dist/esm/components/DataLinks/DataLinks.js +1 -1
  37. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js +2 -2
  38. package/dist/esm/components/DataSourcePicker/DataSourcePicker.js.map +1 -1
  39. package/dist/esm/components/DatePicker/DatePicker.js +3 -3
  40. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  41. package/dist/esm/components/DatePickerWithInput/DatePickerWithInput.js +2 -2
  42. package/dist/esm/components/DatePickerWithInput/DatePickerWithInput.js.map +1 -1
  43. package/dist/esm/components/DebounceInput/DebounceInput.js +4 -4
  44. package/dist/esm/components/DebounceInput/DebounceInput.js.map +1 -1
  45. package/dist/esm/components/Plugins/PluginSignatureBadge.js +1 -1
  46. package/dist/esm/components/QueryEditor/AccessoryButton.js +1 -1
  47. package/dist/esm/components/QueryEditor/CatalogSelector.js +5 -5
  48. package/dist/esm/components/QueryEditor/CatalogSelector.js.map +1 -1
  49. package/dist/esm/components/QueryEditor/ConfirmModal.js +3 -3
  50. package/dist/esm/components/QueryEditor/ConfirmModal.js.map +1 -1
  51. package/dist/esm/components/QueryEditor/DatasetSelector.js +2 -2
  52. package/dist/esm/components/QueryEditor/DatasetSelector.js.map +1 -1
  53. package/dist/esm/components/QueryEditor/EditorField.js +1 -1
  54. package/dist/esm/components/QueryEditor/EditorFieldGroup.js +1 -1
  55. package/dist/esm/components/QueryEditor/EditorHeader.js +1 -1
  56. package/dist/esm/components/QueryEditor/EditorList.js +2 -2
  57. package/dist/esm/components/QueryEditor/EditorList.js.map +1 -1
  58. package/dist/esm/components/QueryEditor/EditorRow.js +1 -1
  59. package/dist/esm/components/QueryEditor/EditorRows.js +1 -1
  60. package/dist/esm/components/QueryEditor/EditorStack.js +1 -1
  61. package/dist/esm/components/QueryEditor/EditorSwitch.js +1 -1
  62. package/dist/esm/components/QueryEditor/FlexItem.js +1 -1
  63. package/dist/esm/components/QueryEditor/InlineSelect.js +2 -2
  64. package/dist/esm/components/QueryEditor/InlineSelect.js.map +1 -1
  65. package/dist/esm/components/QueryEditor/InputGroup.js +4 -4
  66. package/dist/esm/components/QueryEditor/InputGroup.js.map +1 -1
  67. package/dist/esm/components/QueryEditor/QueryEditor.js +6 -6
  68. package/dist/esm/components/QueryEditor/QueryEditor.js.map +1 -1
  69. package/dist/esm/components/QueryEditor/QueryHeader.js +4 -4
  70. package/dist/esm/components/QueryEditor/QueryHeader.js.map +1 -1
  71. package/dist/esm/components/QueryEditor/RunQueryButton.js +1 -1
  72. package/dist/esm/components/QueryEditor/Space.js +1 -1
  73. package/dist/esm/components/QueryEditor/TableSelector.js +1 -1
  74. package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js +4 -4
  75. package/dist/esm/components/QueryEditor/query-editor-raw/QueryEditorRaw.js.map +1 -1
  76. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js +3 -3
  77. package/dist/esm/components/QueryEditor/query-editor-raw/QueryToolbox.js.map +1 -1
  78. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js +5 -5
  79. package/dist/esm/components/QueryEditor/query-editor-raw/QueryValidator.js.map +1 -1
  80. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js +3 -3
  81. package/dist/esm/components/QueryEditor/query-editor-raw/RawEditor.js.map +1 -1
  82. package/dist/esm/components/QueryEditor/types.js +1 -1
  83. package/dist/esm/components/QueryEditor/utils/useSqlChange.js +2 -2
  84. package/dist/esm/components/QueryEditor/utils/useSqlChange.js.map +1 -1
  85. package/dist/esm/components/QueryEditor/visual-query-builder/AwesomeQueryBuilder.js +1 -1
  86. package/dist/esm/components/QueryEditor/visual-query-builder/EditorField.js +1 -1
  87. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRow.js +1 -1
  88. package/dist/esm/components/QueryEditor/visual-query-builder/EditorRows.js +1 -1
  89. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js +2 -2
  90. package/dist/esm/components/QueryEditor/visual-query-builder/GroupByRow.js.map +1 -1
  91. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js +5 -5
  92. package/dist/esm/components/QueryEditor/visual-query-builder/OrderByRow.js.map +1 -1
  93. package/dist/esm/components/QueryEditor/visual-query-builder/Preview.js +1 -1
  94. package/dist/esm/components/QueryEditor/visual-query-builder/SQLGroupByRow.js +1 -1
  95. package/dist/esm/components/QueryEditor/visual-query-builder/SQLOrderByRow.js +1 -1
  96. package/dist/esm/components/QueryEditor/visual-query-builder/SQLSelectRow.js +1 -1
  97. package/dist/esm/components/QueryEditor/visual-query-builder/SQLWhereRow.js +1 -1
  98. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js +5 -5
  99. package/dist/esm/components/QueryEditor/visual-query-builder/SelectRow.js.map +1 -1
  100. package/dist/esm/components/QueryEditor/visual-query-builder/VisualEditor.js +1 -1
  101. package/dist/esm/components/QueryEditor/visual-query-builder/WhereRow.js +6 -6
  102. package/dist/esm/components/QueryEditor/visual-query-builder/WhereRow.js.map +1 -1
  103. package/dist/esm/components/QueryEditorRow/QueryEditorRow.js +1 -1
  104. package/dist/esm/components/SQLEditor/components/SQLEditor.js +6 -6
  105. package/dist/esm/components/SQLEditor/components/SQLEditor.js.map +1 -1
  106. package/dist/esm/components/SQLEditor/hooks/useLatestCallback.js +4 -4
  107. package/dist/esm/components/SQLEditor/hooks/useLatestCallback.js.map +1 -1
  108. package/dist/esm/components/Segment/Segment.js +4 -4
  109. package/dist/esm/components/Segment/Segment.js.map +1 -1
  110. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js +5 -5
  111. package/dist/esm/components/VisualQueryBuilder/components/LabelFilterItem.js.map +1 -1
  112. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js +3 -3
  113. package/dist/esm/components/VisualQueryBuilder/components/LabelFilters.js.map +1 -1
  114. package/dist/esm/components/VisualQueryBuilder/components/OperationEditor.js +1 -1
  115. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js +4 -4
  116. package/dist/esm/components/VisualQueryBuilder/components/OperationEditorBody.js.map +1 -1
  117. package/dist/esm/components/VisualQueryBuilder/components/OperationExplainedBox.js +1 -1
  118. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js +3 -3
  119. package/dist/esm/components/VisualQueryBuilder/components/OperationHeader.js.map +1 -1
  120. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js +3 -3
  121. package/dist/esm/components/VisualQueryBuilder/components/OperationInfoButton.js.map +1 -1
  122. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js +2 -2
  123. package/dist/esm/components/VisualQueryBuilder/components/OperationList.js.map +1 -1
  124. package/dist/esm/components/VisualQueryBuilder/components/OperationListExplained.js +1 -1
  125. package/dist/esm/components/VisualQueryBuilder/components/OperationParamEditor.js +1 -1
  126. package/dist/esm/components/VisualQueryBuilder/components/OperationsEditorRow.js +1 -1
  127. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js +2 -2
  128. package/dist/esm/components/VisualQueryBuilder/components/QueryBuilderHints.js.map +1 -1
  129. package/dist/esm/components/VisualQueryBuilder/components/QueryEditorModeToggle.js +1 -1
  130. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js +2 -2
  131. package/dist/esm/components/VisualQueryBuilder/components/QueryHeaderSwitch.js.map +1 -1
  132. package/dist/esm/components/VisualQueryBuilder/components/QueryOptionGroup.js +1 -1
  133. package/dist/esm/components/VisualQueryBuilder/components/RawQuery.js +1 -1
  134. package/dist/esm/components/VisualQueryBuilder/types.js +1 -1
  135. package/dist/esm/hooks/useDebounce.js +3 -3
  136. package/dist/esm/hooks/useDebounce.js.map +1 -1
  137. package/package.json +4 -2
  138. package/dist/esm/_virtual/_commonjsHelpers.js +0 -6
  139. package/dist/esm/_virtual/_commonjsHelpers.js.map +0 -1
  140. package/dist/esm/_virtual/index2.js +0 -6
  141. package/dist/esm/_virtual/index2.js.map +0 -1
  142. package/dist/esm/_virtual/index3.js +0 -4
  143. package/dist/esm/_virtual/index3.js.map +0 -1
  144. package/dist/esm/_virtual/react.development.js +0 -4
  145. package/dist/esm/_virtual/react.development.js.map +0 -1
  146. package/dist/esm/_virtual/react.production.min.js +0 -4
  147. package/dist/esm/_virtual/react.production.min.js.map +0 -1
  148. package/dist/esm/node_modules/react/cjs/react.development.js +0 -2752
  149. package/dist/esm/node_modules/react/cjs/react.development.js.map +0 -1
  150. package/dist/esm/node_modules/react/cjs/react.production.min.js +0 -39
  151. package/dist/esm/node_modules/react/cjs/react.production.min.js.map +0 -1
  152. package/dist/esm/node_modules/react/index.js +0 -20
  153. package/dist/esm/node_modules/react/index.js.map +0 -1
package/README.md CHANGED
@@ -22,6 +22,39 @@ Replacing the --watch.onEnd command with whatever you are targeting.
22
22
 
23
23
  There is a better way of doing this, when you find it, please add it here so it's not so painful working with this repo.
24
24
 
25
+ ## Dependency structure
26
+
27
+ ### Why `react` and `react-dom` must stay in `peerDependencies`
28
+
29
+ `react` and `react-dom` **must** be declared in `peerDependencies` and must never appear only in `devDependencies`.
30
+
31
+ This package is built with Rollup using `rollup-plugin-node-externals({ deps: true, peerDeps: true })`.
32
+ That plugin externalizes packages listed in `dependencies` and `peerDependencies` — anything else gets
33
+ bundled into the dist output.
34
+
35
+ React is not imported by this package directly, but it is resolved transitively through bundled
36
+ dependencies (`react-use`, `react-calendar`, `react-popper-tooltip`, etc.). Because Rollup resolves
37
+ CJS packages via `@rollup/plugin-commonjs`, any transitively-resolved React that is not marked
38
+ external ends up inlined as `dist/esm/node_modules/react/` in the published bundle.
39
+
40
+ When a Grafana plugin consumes this package, its webpack build follows those relative-path imports
41
+ (`_virtual/index.js → node_modules/react/index.js`) and produces **two React instances** in the
42
+ final bundle:
43
+
44
+ 1. Grafana's host React — loaded as an AMD external by `react-dom`
45
+ 2. The inlined copy from this package
46
+
47
+ React's hook dispatcher is a singleton on the React instance. `react-dom` renders against instance 1,
48
+ but hooks called from this package's components use instance 2's dispatcher, which is `null` at
49
+ runtime. Every hook call (`useState`, `useEffect`, …) throws:
50
+
51
+ ```
52
+ Cannot read properties of null (reading 'useState')
53
+ ```
54
+
55
+ Keeping `react` and `react-dom` in `peerDependencies` is what causes `rollup-plugin-node-externals`
56
+ to externalize them, producing a clean dist with no inlined React.
57
+
25
58
  ## Deploying
26
59
 
27
60
  Increment the version in the package.json and make sure the [CHANGELOG.md](CHANGELOG.md) includes a message for each merged PR. The `publish-npm` workflow should trigger on version changes, which will publish the release on npm.