@perses-dev/plugin-system 0.50.1 → 0.51.0-beta.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 (176) hide show
  1. package/dist/cjs/components/DatasourceEditorForm/DatasourceEditorForm.js +17 -71
  2. package/dist/cjs/components/DatasourceSelect.js +8 -13
  3. package/dist/cjs/components/HTTPSettingsEditor/HTTPSettingsEditor.js +534 -0
  4. package/dist/cjs/components/HTTPSettingsEditor/index.js +30 -0
  5. package/dist/cjs/components/LegendOptionsEditor/LegendOptionsEditor.js +4 -4
  6. package/dist/cjs/components/MetricLabelInput/MetricLabelInput.js +1 -1
  7. package/dist/cjs/components/MetricLabelInput/index.js +1 -1
  8. package/dist/cjs/components/MultiQueryEditor/MultiQueryEditor.js +15 -14
  9. package/dist/cjs/components/PanelSpecEditor/PanelSpecEditor.js +7 -11
  10. package/dist/cjs/components/PluginEditor/PluginEditor.js +10 -6
  11. package/dist/cjs/components/PluginEditor/plugin-editor-api.js +4 -5
  12. package/dist/cjs/components/PluginKindSelect/PluginKindSelect.js +7 -8
  13. package/dist/cjs/components/PluginRegistry/PluginRegistry.js +7 -10
  14. package/dist/cjs/components/PluginRegistry/plugin-indexes.js +17 -14
  15. package/dist/cjs/components/ProjectSelect.js +2 -3
  16. package/dist/cjs/components/Variables/VariableEditorForm/VariableEditorForm.js +46 -92
  17. package/dist/cjs/components/Variables/VariableEditorForm/VariablePreview.js +6 -6
  18. package/dist/cjs/components/Variables/VariableEditorForm/variable-editor-form-model.js +6 -11
  19. package/dist/cjs/components/Variables/variable-model.js +4 -7
  20. package/dist/cjs/components/index.js +1 -0
  21. package/dist/cjs/index.js +1 -0
  22. package/dist/cjs/model/explore.js +16 -0
  23. package/dist/cjs/remote/PersesPlugin.types.js +16 -0
  24. package/dist/cjs/remote/PluginLoaderComponent.js +75 -0
  25. package/dist/cjs/remote/PluginRuntime.js +267 -0
  26. package/dist/cjs/remote/index.js +31 -0
  27. package/dist/cjs/remote/remotePluginLoader.js +61 -0
  28. package/dist/cjs/runtime/DataQueriesProvider/DataQueriesProvider.js +4 -10
  29. package/dist/cjs/runtime/DataQueriesProvider/model.js +4 -7
  30. package/dist/cjs/runtime/TimeRangeProvider/TimeRangeProvider.js +2 -2
  31. package/dist/cjs/runtime/builtin-variables.js +1 -1
  32. package/dist/cjs/runtime/datasources.js +3 -3
  33. package/dist/cjs/runtime/plugin-registry.js +5 -6
  34. package/dist/cjs/runtime/time-series-queries.js +11 -18
  35. package/dist/cjs/runtime/trace-queries.js +1 -2
  36. package/dist/cjs/runtime/variables.js +10 -28
  37. package/dist/cjs/stories/shared-utils/decorators/WithDataQueries.js +1 -1
  38. package/dist/cjs/stories/shared-utils/decorators/WithPluginRegistry.js +1 -67
  39. package/dist/cjs/stories/shared-utils/decorators/WithPluginSystemBuiltinVariables.js +1 -1
  40. package/dist/cjs/stories/shared-utils/decorators/WithPluginSystemDatasourceStore.js +4 -4
  41. package/dist/cjs/stories/shared-utils/decorators/WithPluginSystemVariables.js +1 -1
  42. package/dist/cjs/stories/shared-utils/decorators/WithTimeRange.js +1 -1
  43. package/dist/cjs/test/render.js +1 -2
  44. package/dist/cjs/test-utils/mock-plugin-registry.js +10 -10
  45. package/dist/cjs/utils/variables.js +1 -1
  46. package/dist/components/DatasourceEditorForm/DatasourceEditorForm.d.ts.map +1 -1
  47. package/dist/components/DatasourceEditorForm/DatasourceEditorForm.js +17 -30
  48. package/dist/components/DatasourceEditorForm/DatasourceEditorForm.js.map +1 -1
  49. package/dist/components/DatasourceSelect.d.ts +2 -2
  50. package/dist/components/DatasourceSelect.d.ts.map +1 -1
  51. package/dist/components/DatasourceSelect.js +8 -13
  52. package/dist/components/DatasourceSelect.js.map +1 -1
  53. package/dist/components/HTTPSettingsEditor/HTTPSettingsEditor.d.ts +11 -0
  54. package/dist/components/HTTPSettingsEditor/HTTPSettingsEditor.d.ts.map +1 -0
  55. package/dist/components/HTTPSettingsEditor/HTTPSettingsEditor.js +480 -0
  56. package/dist/components/HTTPSettingsEditor/HTTPSettingsEditor.js.map +1 -0
  57. package/dist/components/HTTPSettingsEditor/index.d.ts +2 -0
  58. package/dist/components/HTTPSettingsEditor/index.d.ts.map +1 -0
  59. package/dist/components/HTTPSettingsEditor/index.js +15 -0
  60. package/dist/components/HTTPSettingsEditor/index.js.map +1 -0
  61. package/dist/components/LegendOptionsEditor/LegendOptionsEditor.js +4 -4
  62. package/dist/components/LegendOptionsEditor/LegendOptionsEditor.js.map +1 -1
  63. package/dist/components/MetricLabelInput/MetricLabelInput.js +1 -1
  64. package/dist/components/MetricLabelInput/MetricLabelInput.js.map +1 -1
  65. package/dist/components/MetricLabelInput/index.js +1 -1
  66. package/dist/components/MetricLabelInput/index.js.map +1 -1
  67. package/dist/components/MultiQueryEditor/MultiQueryEditor.d.ts.map +1 -1
  68. package/dist/components/MultiQueryEditor/MultiQueryEditor.js +15 -14
  69. package/dist/components/MultiQueryEditor/MultiQueryEditor.js.map +1 -1
  70. package/dist/components/PanelSpecEditor/PanelSpecEditor.js +7 -11
  71. package/dist/components/PanelSpecEditor/PanelSpecEditor.js.map +1 -1
  72. package/dist/components/PluginEditor/PluginEditor.d.ts.map +1 -1
  73. package/dist/components/PluginEditor/PluginEditor.js +10 -6
  74. package/dist/components/PluginEditor/PluginEditor.js.map +1 -1
  75. package/dist/components/PluginEditor/plugin-editor-api.js +4 -5
  76. package/dist/components/PluginEditor/plugin-editor-api.js.map +1 -1
  77. package/dist/components/PluginKindSelect/PluginKindSelect.js +7 -8
  78. package/dist/components/PluginKindSelect/PluginKindSelect.js.map +1 -1
  79. package/dist/components/PluginRegistry/PluginRegistry.js +7 -10
  80. package/dist/components/PluginRegistry/PluginRegistry.js.map +1 -1
  81. package/dist/components/PluginRegistry/plugin-indexes.d.ts +4 -4
  82. package/dist/components/PluginRegistry/plugin-indexes.d.ts.map +1 -1
  83. package/dist/components/PluginRegistry/plugin-indexes.js +17 -14
  84. package/dist/components/PluginRegistry/plugin-indexes.js.map +1 -1
  85. package/dist/components/ProjectSelect.js +2 -3
  86. package/dist/components/ProjectSelect.js.map +1 -1
  87. package/dist/components/Variables/VariableEditorForm/VariableEditorForm.js +46 -92
  88. package/dist/components/Variables/VariableEditorForm/VariableEditorForm.js.map +1 -1
  89. package/dist/components/Variables/VariableEditorForm/VariablePreview.js +6 -6
  90. package/dist/components/Variables/VariableEditorForm/VariablePreview.js.map +1 -1
  91. package/dist/components/Variables/VariableEditorForm/variable-editor-form-model.js +6 -11
  92. package/dist/components/Variables/VariableEditorForm/variable-editor-form-model.js.map +1 -1
  93. package/dist/components/Variables/variable-model.js +4 -7
  94. package/dist/components/Variables/variable-model.js.map +1 -1
  95. package/dist/components/index.d.ts +1 -0
  96. package/dist/components/index.d.ts.map +1 -1
  97. package/dist/components/index.js +1 -0
  98. package/dist/components/index.js.map +1 -1
  99. package/dist/index.d.ts +1 -0
  100. package/dist/index.d.ts.map +1 -1
  101. package/dist/index.js +1 -0
  102. package/dist/index.js.map +1 -1
  103. package/dist/model/explore.d.ts +13 -0
  104. package/dist/model/explore.d.ts.map +1 -0
  105. package/dist/model/explore.js +17 -0
  106. package/dist/model/explore.js.map +1 -0
  107. package/dist/model/panels.d.ts +13 -3
  108. package/dist/model/panels.d.ts.map +1 -1
  109. package/dist/model/panels.js.map +1 -1
  110. package/dist/model/plugins.d.ts +31 -17
  111. package/dist/model/plugins.d.ts.map +1 -1
  112. package/dist/model/plugins.js.map +1 -1
  113. package/dist/remote/PersesPlugin.types.d.ts +7 -0
  114. package/dist/remote/PersesPlugin.types.d.ts.map +1 -0
  115. package/dist/remote/PersesPlugin.types.js +15 -0
  116. package/dist/remote/PersesPlugin.types.js.map +1 -0
  117. package/dist/remote/PluginLoaderComponent.d.ts +10 -0
  118. package/dist/remote/PluginLoaderComponent.d.ts.map +1 -0
  119. package/dist/remote/PluginLoaderComponent.js +67 -0
  120. package/dist/remote/PluginLoaderComponent.js.map +1 -0
  121. package/dist/remote/PluginRuntime.d.ts +11 -0
  122. package/dist/remote/PluginRuntime.d.ts.map +1 -0
  123. package/dist/remote/PluginRuntime.js +202 -0
  124. package/dist/remote/PluginRuntime.js.map +1 -0
  125. package/dist/remote/index.d.ts +3 -0
  126. package/dist/remote/index.d.ts.map +1 -0
  127. package/dist/remote/index.js +16 -0
  128. package/dist/remote/index.js.map +1 -0
  129. package/dist/remote/remotePluginLoader.d.ts +3 -0
  130. package/dist/remote/remotePluginLoader.d.ts.map +1 -0
  131. package/dist/remote/remotePluginLoader.js +53 -0
  132. package/dist/remote/remotePluginLoader.js.map +1 -0
  133. package/dist/runtime/DataQueriesProvider/DataQueriesProvider.js +4 -10
  134. package/dist/runtime/DataQueriesProvider/DataQueriesProvider.js.map +1 -1
  135. package/dist/runtime/DataQueriesProvider/model.d.ts.map +1 -1
  136. package/dist/runtime/DataQueriesProvider/model.js +4 -7
  137. package/dist/runtime/DataQueriesProvider/model.js.map +1 -1
  138. package/dist/runtime/TimeRangeProvider/TimeRangeProvider.js +2 -2
  139. package/dist/runtime/TimeRangeProvider/TimeRangeProvider.js.map +1 -1
  140. package/dist/runtime/builtin-variables.js +1 -1
  141. package/dist/runtime/builtin-variables.js.map +1 -1
  142. package/dist/runtime/datasources.d.ts +2 -2
  143. package/dist/runtime/datasources.js +3 -3
  144. package/dist/runtime/datasources.js.map +1 -1
  145. package/dist/runtime/plugin-registry.d.ts +6 -6
  146. package/dist/runtime/plugin-registry.d.ts.map +1 -1
  147. package/dist/runtime/plugin-registry.js +5 -6
  148. package/dist/runtime/plugin-registry.js.map +1 -1
  149. package/dist/runtime/time-series-queries.js +11 -18
  150. package/dist/runtime/time-series-queries.js.map +1 -1
  151. package/dist/runtime/trace-queries.js +1 -2
  152. package/dist/runtime/trace-queries.js.map +1 -1
  153. package/dist/runtime/variables.js +10 -28
  154. package/dist/runtime/variables.js.map +1 -1
  155. package/dist/stories/shared-utils/decorators/WithDataQueries.js +1 -1
  156. package/dist/stories/shared-utils/decorators/WithDataQueries.js.map +1 -1
  157. package/dist/stories/shared-utils/decorators/WithPluginRegistry.d.ts.map +1 -1
  158. package/dist/stories/shared-utils/decorators/WithPluginRegistry.js +2 -22
  159. package/dist/stories/shared-utils/decorators/WithPluginRegistry.js.map +1 -1
  160. package/dist/stories/shared-utils/decorators/WithPluginSystemBuiltinVariables.js +1 -1
  161. package/dist/stories/shared-utils/decorators/WithPluginSystemBuiltinVariables.js.map +1 -1
  162. package/dist/stories/shared-utils/decorators/WithPluginSystemDatasourceStore.js +4 -4
  163. package/dist/stories/shared-utils/decorators/WithPluginSystemDatasourceStore.js.map +1 -1
  164. package/dist/stories/shared-utils/decorators/WithPluginSystemVariables.js +1 -1
  165. package/dist/stories/shared-utils/decorators/WithPluginSystemVariables.js.map +1 -1
  166. package/dist/stories/shared-utils/decorators/WithTimeRange.js +1 -1
  167. package/dist/stories/shared-utils/decorators/WithTimeRange.js.map +1 -1
  168. package/dist/test/render.js +1 -2
  169. package/dist/test/render.js.map +1 -1
  170. package/dist/test-utils/mock-plugin-registry.d.ts +5 -3
  171. package/dist/test-utils/mock-plugin-registry.d.ts.map +1 -1
  172. package/dist/test-utils/mock-plugin-registry.js +10 -10
  173. package/dist/test-utils/mock-plugin-registry.js.map +1 -1
  174. package/dist/utils/variables.js +1 -1
  175. package/dist/utils/variables.js.map +1 -1
  176. package/package.json +6 -5
@@ -21,55 +21,14 @@ Object.defineProperty(exports, "DatasourceEditorForm", {
21
21
  }
22
22
  });
23
23
  const _jsxruntime = require("react/jsx-runtime");
24
+ const _zod = require("@hookform/resolvers/zod");
24
25
  const _material = require("@mui/material");
25
- const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
26
26
  const _components = require("@perses-dev/components");
27
+ const _react = require("react");
27
28
  const _reacthookform = require("react-hook-form");
28
- const _zod = require("@hookform/resolvers/zod");
29
- const _PluginEditor = require("../PluginEditor");
30
- const _utils = require("../../utils");
31
29
  const _context = require("../../context");
32
- function _getRequireWildcardCache(nodeInterop) {
33
- if (typeof WeakMap !== "function") return null;
34
- var cacheBabelInterop = new WeakMap();
35
- var cacheNodeInterop = new WeakMap();
36
- return (_getRequireWildcardCache = function(nodeInterop) {
37
- return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
38
- })(nodeInterop);
39
- }
40
- function _interop_require_wildcard(obj, nodeInterop) {
41
- if (!nodeInterop && obj && obj.__esModule) {
42
- return obj;
43
- }
44
- if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
45
- return {
46
- default: obj
47
- };
48
- }
49
- var cache = _getRequireWildcardCache(nodeInterop);
50
- if (cache && cache.has(obj)) {
51
- return cache.get(obj);
52
- }
53
- var newObj = {
54
- __proto__: null
55
- };
56
- var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
57
- for(var key in obj){
58
- if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
59
- var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
60
- if (desc && (desc.get || desc.set)) {
61
- Object.defineProperty(newObj, key, desc);
62
- } else {
63
- newObj[key] = obj[key];
64
- }
65
- }
66
- }
67
- newObj.default = obj;
68
- if (cache) {
69
- cache.set(obj, newObj);
70
- }
71
- return newObj;
72
- }
30
+ const _utils = require("../../utils");
31
+ const _PluginEditor = require("../PluginEditor");
73
32
  function DatasourceEditorForm(props) {
74
33
  const { initialDatasourceDefinition, action, isDraft, isReadonly, onActionChange, onSave, onClose, onDelete } = props;
75
34
  const [isDiscardDialogOpened, setDiscardDialogOpened] = (0, _react.useState)(false);
@@ -84,11 +43,10 @@ function DatasourceEditorForm(props) {
84
43
  /*
85
44
  * Remove empty fields that are optional
86
45
  */ function clearFormData(data) {
87
- var _result_spec_display, _result_spec_display1;
88
46
  const result = {
89
47
  ...data
90
48
  };
91
- if (((_result_spec_display = result.spec.display) === null || _result_spec_display === void 0 ? void 0 : _result_spec_display.name) === undefined && ((_result_spec_display1 = result.spec.display) === null || _result_spec_display1 === void 0 ? void 0 : _result_spec_display1.description) === undefined) {
49
+ if (result.spec.display?.name === undefined && result.spec.display?.description === undefined) {
92
50
  delete result.spec.display;
93
51
  }
94
52
  return result;
@@ -154,10 +112,7 @@ function DatasourceEditorForm(props) {
154
112
  children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_reacthookform.Controller, {
155
113
  control: form.control,
156
114
  name: "name",
157
- render: ({ field, fieldState })=>{
158
- var _fieldState_error;
159
- var _field_value;
160
- return /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.TextField, {
115
+ render: ({ field, fieldState })=>/*#__PURE__*/ (0, _jsxruntime.jsx)(_material.TextField, {
161
116
  ...field,
162
117
  required: true,
163
118
  fullWidth: true,
@@ -171,13 +126,12 @@ function DatasourceEditorForm(props) {
171
126
  readOnly: action === 'read'
172
127
  },
173
128
  error: !!fieldState.error,
174
- helperText: (_fieldState_error = fieldState.error) === null || _fieldState_error === void 0 ? void 0 : _fieldState_error.message,
175
- value: (_field_value = field.value) !== null && _field_value !== void 0 ? _field_value : '',
129
+ helperText: fieldState.error?.message,
130
+ value: field.value ?? '',
176
131
  onChange: (event)=>{
177
132
  field.onChange(event);
178
133
  }
179
- });
180
- }
134
+ })
181
135
  })
182
136
  }),
183
137
  /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Grid, {
@@ -186,10 +140,7 @@ function DatasourceEditorForm(props) {
186
140
  children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_reacthookform.Controller, {
187
141
  control: form.control,
188
142
  name: "spec.display.name",
189
- render: ({ field, fieldState })=>{
190
- var _fieldState_error;
191
- var _field_value;
192
- return /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.TextField, {
143
+ render: ({ field, fieldState })=>/*#__PURE__*/ (0, _jsxruntime.jsx)(_material.TextField, {
193
144
  ...field,
194
145
  fullWidth: true,
195
146
  name: "title",
@@ -201,13 +152,12 @@ function DatasourceEditorForm(props) {
201
152
  readOnly: action === 'read'
202
153
  },
203
154
  error: !!fieldState.error,
204
- helperText: (_fieldState_error = fieldState.error) === null || _fieldState_error === void 0 ? void 0 : _fieldState_error.message,
205
- value: (_field_value = field.value) !== null && _field_value !== void 0 ? _field_value : '',
155
+ helperText: fieldState.error?.message,
156
+ value: field.value ?? '',
206
157
  onChange: (event)=>{
207
158
  field.onChange(event);
208
159
  }
209
- });
210
- }
160
+ })
211
161
  })
212
162
  }),
213
163
  /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Grid, {
@@ -216,10 +166,7 @@ function DatasourceEditorForm(props) {
216
166
  children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_reacthookform.Controller, {
217
167
  control: form.control,
218
168
  name: "spec.display.description",
219
- render: ({ field, fieldState })=>{
220
- var _fieldState_error;
221
- var _field_value;
222
- return /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.TextField, {
169
+ render: ({ field, fieldState })=>/*#__PURE__*/ (0, _jsxruntime.jsx)(_material.TextField, {
223
170
  ...field,
224
171
  fullWidth: true,
225
172
  name: "description",
@@ -231,13 +178,12 @@ function DatasourceEditorForm(props) {
231
178
  readOnly: action === 'read'
232
179
  },
233
180
  error: !!fieldState.error,
234
- helperText: (_fieldState_error = fieldState.error) === null || _fieldState_error === void 0 ? void 0 : _fieldState_error.message,
235
- value: (_field_value = field.value) !== null && _field_value !== void 0 ? _field_value : '',
181
+ helperText: fieldState.error?.message,
182
+ value: field.value ?? '',
236
183
  onChange: (event)=>{
237
184
  field.onChange(event);
238
185
  }
239
- });
240
- }
186
+ })
241
187
  })
242
188
  }),
243
189
  /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Grid, {
@@ -43,10 +43,9 @@ function DatasourceSelect(props) {
43
43
  const { data, isLoading } = (0, _runtime.useListDatasourceSelectItems)(datasourcePluginKind, project);
44
44
  // Rebuild the group of the value if not provided
45
45
  const defaultValue = (0, _react.useMemo)(()=>{
46
- var _flatMap_find;
47
- const group = (_flatMap_find = (data !== null && data !== void 0 ? data : []).flatMap((itemGroup)=>itemGroup.items).find((item)=>{
46
+ const group = (data ?? []).flatMap((itemGroup)=>itemGroup.items).find((item)=>{
48
47
  return value.kind === item.selector.kind && value.name === item.selector.name && !item.overridden;
49
- })) === null || _flatMap_find === void 0 ? void 0 : _flatMap_find.selector.group;
48
+ })?.selector.group;
50
49
  return {
51
50
  ...value,
52
51
  group
@@ -57,20 +56,17 @@ function DatasourceSelect(props) {
57
56
  ]);
58
57
  // Convert the datasource list into menu items with name/group?/value strings that the Select input can work with
59
58
  const menuItems = (0, _react.useMemo)(()=>{
60
- return (data !== null && data !== void 0 ? data : []).map((itemGroup)=>({
59
+ return (data ?? []).map((itemGroup)=>({
61
60
  group: itemGroup.group,
62
61
  editLink: itemGroup.editLink,
63
- items: itemGroup.items.map((item)=>{
64
- var _item_saved;
65
- return {
62
+ items: itemGroup.items.map((item)=>({
66
63
  name: item.name,
67
64
  overriding: item.overriding,
68
65
  overridden: item.overridden,
69
- saved: (_item_saved = item.saved) !== null && _item_saved !== void 0 ? _item_saved : true,
66
+ saved: item.saved ?? true,
70
67
  group: item.selector.group,
71
68
  value: selectorToOptionValue(item.selector)
72
- };
73
- })
69
+ }))
74
70
  }));
75
71
  }, [
76
72
  data
@@ -163,11 +159,10 @@ const OPTION_VALUE_DELIMITER = '_____';
163
159
  * returns a string value like `{kind}_____{group}_____{name}` that can be used as a Select input value.
164
160
  * @param selector
165
161
  */ function selectorToOptionValue(selector) {
166
- var _selector_group, _selector_name;
167
162
  return [
168
163
  selector.kind,
169
- (_selector_group = selector.group) !== null && _selector_group !== void 0 ? _selector_group : '',
170
- (_selector_name = selector.name) !== null && _selector_name !== void 0 ? _selector_name : ''
164
+ selector.group ?? '',
165
+ selector.name ?? ''
171
166
  ].join(OPTION_VALUE_DELIMITER);
172
167
  }
173
168
  /**