@perses-dev/dashboards 0.0.0-snapshot-panel-extra-content-3-17f9c42 → 0.0.0-snapshot-scatterplot-fix-imports-95e1b59

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 (411) hide show
  1. package/dist/cjs/components/AddGroupButton/AddGroupButton.js +11 -8
  2. package/dist/cjs/components/AddGroupButton/index.js +10 -8
  3. package/dist/cjs/components/AddPanelButton/AddPanelButton.js +12 -13
  4. package/dist/cjs/components/AddPanelButton/index.js +10 -8
  5. package/dist/cjs/components/Dashboard/Dashboard.js +12 -10
  6. package/dist/cjs/components/Dashboard/index.js +10 -8
  7. package/dist/cjs/components/DashboardStickyToolbar/DashboardStickyToolbar.js +53 -22
  8. package/dist/cjs/components/DashboardStickyToolbar/index.js +10 -8
  9. package/dist/cjs/components/DashboardToolbar/DashboardToolbar.js +82 -103
  10. package/dist/cjs/components/DashboardToolbar/index.js +10 -8
  11. package/dist/cjs/components/Datasources/DatasourceEditor.js +236 -0
  12. package/dist/cjs/components/Datasources/EditDatasourcesButton.js +112 -0
  13. package/dist/cjs/components/{ToolbarIconButton → Datasources}/index.js +11 -8
  14. package/dist/cjs/components/DeletePanelDialog/DeletePanelDialog.js +16 -14
  15. package/dist/cjs/components/DeletePanelDialog/index.js +10 -8
  16. package/dist/cjs/components/DeletePanelGroupDialog/DeletePanelGroupDialog.js +18 -16
  17. package/dist/cjs/components/DeletePanelGroupDialog/index.js +10 -8
  18. package/dist/cjs/components/DiscardChangesConfirmationDialog/DiscardChangesConfirmationDialog.js +6 -4
  19. package/dist/cjs/components/DiscardChangesConfirmationDialog/index.js +10 -8
  20. package/dist/cjs/components/DownloadButton/DownloadButton.js +13 -12
  21. package/dist/cjs/components/DownloadButton/index.js +10 -8
  22. package/dist/cjs/components/EditButton/EditButton.js +9 -7
  23. package/dist/cjs/components/EditButton/index.js +10 -8
  24. package/dist/cjs/components/EditJsonButton/EditJsonButton.js +15 -12
  25. package/dist/cjs/components/EditJsonButton/index.js +10 -8
  26. package/dist/cjs/components/EditJsonDialog/EditJsonDialog.js +54 -25
  27. package/dist/cjs/components/EditJsonDialog/index.js +10 -8
  28. package/dist/cjs/components/EmptyDashboard/EmptyDashboard.js +21 -19
  29. package/dist/cjs/components/EmptyDashboard/index.js +10 -8
  30. package/dist/cjs/components/GridLayout/GridContainer.js +6 -4
  31. package/dist/cjs/components/GridLayout/GridItemContent.js +37 -19
  32. package/dist/cjs/components/GridLayout/GridLayout.js +21 -19
  33. package/dist/cjs/components/GridLayout/GridTitle.js +40 -39
  34. package/dist/cjs/components/GridLayout/index.js +13 -11
  35. package/dist/cjs/components/Panel/Panel.js +19 -23
  36. package/dist/cjs/components/Panel/PanelContent.js +11 -8
  37. package/dist/cjs/components/Panel/PanelHeader.js +35 -33
  38. package/dist/cjs/components/Panel/index.js +10 -8
  39. package/dist/cjs/components/PanelDrawer/PanelDrawer.js +25 -77
  40. package/dist/cjs/components/PanelDrawer/PanelEditorForm.js +237 -144
  41. package/dist/cjs/components/PanelDrawer/PanelPreview.js +13 -12
  42. package/dist/cjs/components/PanelDrawer/index.js +11 -8
  43. package/dist/cjs/components/PanelDrawer/usePanelEditor.js +5 -3
  44. package/dist/cjs/components/PanelGroupDialog/PanelGroupDialog.js +18 -16
  45. package/dist/cjs/components/PanelGroupDialog/PanelGroupEditorForm.js +16 -12
  46. package/dist/cjs/components/PanelGroupDialog/index.js +10 -8
  47. package/dist/cjs/components/QuerySummaryTable/QuerySummaryTable.js +48 -46
  48. package/dist/cjs/components/QuerySummaryTable/index.js +10 -8
  49. package/dist/cjs/components/SaveChangesConfirmationDialog/SaveChangesConfirmationDialog.js +26 -24
  50. package/dist/cjs/components/SaveChangesConfirmationDialog/index.js +10 -8
  51. package/dist/cjs/components/SaveDashboardButton/SaveDashboardButton.js +14 -14
  52. package/dist/cjs/components/SaveDashboardButton/index.js +10 -8
  53. package/dist/cjs/components/Variables/BuiltinVariableAccordions.js +141 -0
  54. package/dist/cjs/components/Variables/EditVariablesButton.js +19 -17
  55. package/dist/cjs/components/Variables/TemplateVariable.js +261 -107
  56. package/dist/cjs/components/Variables/VariableEditor.js +282 -207
  57. package/dist/cjs/components/Variables/VariableList.js +24 -22
  58. package/dist/cjs/components/Variables/index.js +14 -11
  59. package/dist/cjs/components/index.js +30 -29
  60. package/dist/cjs/constants/grid-layout-config.js +6 -2
  61. package/dist/cjs/constants/index.js +12 -9
  62. package/dist/cjs/constants/styles.js +42 -0
  63. package/dist/cjs/constants/user-interface-text.js +8 -3
  64. package/dist/cjs/context/DashboardProvider/DashboardProvider.js +48 -35
  65. package/dist/cjs/context/DashboardProvider/common.js +6 -2
  66. package/dist/cjs/context/DashboardProvider/dashboard-provider-api.js +81 -49
  67. package/dist/cjs/context/DashboardProvider/delete-panel-group-slice.js +4 -2
  68. package/dist/cjs/context/DashboardProvider/delete-panel-slice.js +8 -6
  69. package/dist/cjs/context/DashboardProvider/discard-changes-dialog-slice.js +3 -1
  70. package/dist/cjs/context/DashboardProvider/duplicate-panel-slice.js +4 -2
  71. package/dist/cjs/context/DashboardProvider/edit-json-dialog-slice.js +3 -1
  72. package/dist/cjs/context/DashboardProvider/index.js +12 -10
  73. package/dist/cjs/context/DashboardProvider/panel-editor-slice.js +17 -17
  74. package/dist/cjs/context/DashboardProvider/panel-group-editor-slice.js +8 -6
  75. package/dist/cjs/context/DashboardProvider/panel-group-slice.js +16 -8
  76. package/dist/cjs/context/DashboardProvider/panel-slice.js +3 -1
  77. package/dist/cjs/context/DashboardProvider/save-changes-dialog-slice.js +3 -1
  78. package/dist/cjs/context/DatasourceStoreProvider.js +177 -50
  79. package/dist/cjs/context/TemplateVariableProvider/TemplateVariableProvider.js +150 -39
  80. package/dist/cjs/context/TemplateVariableProvider/hydrationUtils.js +12 -10
  81. package/dist/cjs/context/TemplateVariableProvider/index.js +10 -8
  82. package/dist/cjs/context/TemplateVariableProvider/query-params.js +17 -7
  83. package/dist/cjs/context/TemplateVariableProvider/utils.js +15 -7
  84. package/dist/cjs/context/index.js +13 -11
  85. package/dist/cjs/context/useDashboard.js +30 -11
  86. package/dist/cjs/index.js +12 -10
  87. package/dist/cjs/stories/decorators/WithDashboard.js +6 -4
  88. package/dist/cjs/stories/decorators/WithDatasourceStore.js +6 -4
  89. package/dist/cjs/stories/decorators/WithTemplateVariables.js +6 -4
  90. package/dist/cjs/stories/decorators/constants.js +5 -3
  91. package/dist/cjs/stories/decorators/index.js +13 -11
  92. package/dist/cjs/test/dashboard-provider.js +8 -4
  93. package/dist/cjs/test/datasource-provider.js +16 -12
  94. package/dist/cjs/test/index.js +13 -11
  95. package/dist/cjs/test/plugin-registry.js +6 -4
  96. package/dist/cjs/test/render.js +28 -21
  97. package/dist/cjs/test/setup-tests.js +2 -2
  98. package/dist/cjs/test/testDashboard.js +13 -11
  99. package/dist/cjs/utils/index.js +10 -9
  100. package/dist/cjs/utils/panelUtils.js +11 -5
  101. package/dist/cjs/{components/TimeRangeControls → validation}/index.js +10 -8
  102. package/dist/cjs/{utils/time.js → validation/panel.js} +11 -9
  103. package/dist/cjs/views/ViewDashboard/DashboardApp.js +32 -18
  104. package/dist/cjs/views/ViewDashboard/ViewDashboard.js +64 -21
  105. package/dist/cjs/views/ViewDashboard/index.js +10 -8
  106. package/dist/cjs/views/index.js +10 -8
  107. package/dist/components/AddGroupButton/AddGroupButton.d.ts +1 -2
  108. package/dist/components/AddGroupButton/AddGroupButton.d.ts.map +1 -1
  109. package/dist/components/AddGroupButton/AddGroupButton.js +3 -2
  110. package/dist/components/AddGroupButton/AddGroupButton.js.map +1 -1
  111. package/dist/components/AddGroupButton/index.js.map +1 -1
  112. package/dist/components/AddPanelButton/AddPanelButton.d.ts +1 -2
  113. package/dist/components/AddPanelButton/AddPanelButton.d.ts.map +1 -1
  114. package/dist/components/AddPanelButton/AddPanelButton.js +4 -7
  115. package/dist/components/AddPanelButton/AddPanelButton.js.map +1 -1
  116. package/dist/components/AddPanelButton/index.js.map +1 -1
  117. package/dist/components/Dashboard/Dashboard.d.ts +2 -3
  118. package/dist/components/Dashboard/Dashboard.d.ts.map +1 -1
  119. package/dist/components/Dashboard/Dashboard.js +1 -1
  120. package/dist/components/Dashboard/Dashboard.js.map +1 -1
  121. package/dist/components/Dashboard/index.js.map +1 -1
  122. package/dist/components/DashboardStickyToolbar/DashboardStickyToolbar.d.ts +1 -2
  123. package/dist/components/DashboardStickyToolbar/DashboardStickyToolbar.d.ts.map +1 -1
  124. package/dist/components/DashboardStickyToolbar/DashboardStickyToolbar.js +38 -9
  125. package/dist/components/DashboardStickyToolbar/DashboardStickyToolbar.js.map +1 -1
  126. package/dist/components/DashboardStickyToolbar/index.js.map +1 -1
  127. package/dist/components/DashboardToolbar/DashboardToolbar.d.ts +1 -1
  128. package/dist/components/DashboardToolbar/DashboardToolbar.d.ts.map +1 -1
  129. package/dist/components/DashboardToolbar/DashboardToolbar.js +63 -86
  130. package/dist/components/DashboardToolbar/DashboardToolbar.js.map +1 -1
  131. package/dist/components/DashboardToolbar/index.js.map +1 -1
  132. package/dist/components/Datasources/DatasourceEditor.d.ts +7 -0
  133. package/dist/components/Datasources/DatasourceEditor.d.ts.map +1 -0
  134. package/dist/components/Datasources/DatasourceEditor.js +223 -0
  135. package/dist/components/Datasources/DatasourceEditor.js.map +1 -0
  136. package/dist/components/Datasources/EditDatasourcesButton.d.ts +2 -0
  137. package/dist/components/Datasources/EditDatasourcesButton.d.ts.map +1 -0
  138. package/dist/components/Datasources/EditDatasourcesButton.js +99 -0
  139. package/dist/components/Datasources/EditDatasourcesButton.js.map +1 -0
  140. package/dist/components/Datasources/index.d.ts +3 -0
  141. package/dist/components/Datasources/index.d.ts.map +1 -0
  142. package/dist/components/{TimeRangeControls → Datasources}/index.js +2 -1
  143. package/dist/components/Datasources/index.js.map +1 -0
  144. package/dist/components/DeletePanelDialog/DeletePanelDialog.d.ts +1 -2
  145. package/dist/components/DeletePanelDialog/DeletePanelDialog.d.ts.map +1 -1
  146. package/dist/components/DeletePanelDialog/DeletePanelDialog.js +4 -4
  147. package/dist/components/DeletePanelDialog/DeletePanelDialog.js.map +1 -1
  148. package/dist/components/DeletePanelDialog/index.js.map +1 -1
  149. package/dist/components/DeletePanelGroupDialog/DeletePanelGroupDialog.d.ts +1 -2
  150. package/dist/components/DeletePanelGroupDialog/DeletePanelGroupDialog.d.ts.map +1 -1
  151. package/dist/components/DeletePanelGroupDialog/DeletePanelGroupDialog.js +3 -3
  152. package/dist/components/DeletePanelGroupDialog/DeletePanelGroupDialog.js.map +1 -1
  153. package/dist/components/DeletePanelGroupDialog/index.js.map +1 -1
  154. package/dist/components/DiscardChangesConfirmationDialog/DiscardChangesConfirmationDialog.d.ts +1 -2
  155. package/dist/components/DiscardChangesConfirmationDialog/DiscardChangesConfirmationDialog.d.ts.map +1 -1
  156. package/dist/components/DiscardChangesConfirmationDialog/DiscardChangesConfirmationDialog.js +1 -1
  157. package/dist/components/DiscardChangesConfirmationDialog/DiscardChangesConfirmationDialog.js.map +1 -1
  158. package/dist/components/DiscardChangesConfirmationDialog/index.js.map +1 -1
  159. package/dist/components/DownloadButton/DownloadButton.d.ts +1 -2
  160. package/dist/components/DownloadButton/DownloadButton.d.ts.map +1 -1
  161. package/dist/components/DownloadButton/DownloadButton.js +3 -4
  162. package/dist/components/DownloadButton/DownloadButton.js.map +1 -1
  163. package/dist/components/DownloadButton/index.js.map +1 -1
  164. package/dist/components/EditButton/EditButton.d.ts +1 -2
  165. package/dist/components/EditButton/EditButton.d.ts.map +1 -1
  166. package/dist/components/EditButton/EditButton.js +1 -1
  167. package/dist/components/EditButton/EditButton.js.map +1 -1
  168. package/dist/components/EditButton/index.js.map +1 -1
  169. package/dist/components/EditJsonButton/EditJsonButton.d.ts +4 -2
  170. package/dist/components/EditJsonButton/EditJsonButton.d.ts.map +1 -1
  171. package/dist/components/EditJsonButton/EditJsonButton.js +7 -6
  172. package/dist/components/EditJsonButton/EditJsonButton.js.map +1 -1
  173. package/dist/components/EditJsonButton/index.js.map +1 -1
  174. package/dist/components/EditJsonDialog/EditJsonDialog.d.ts +5 -2
  175. package/dist/components/EditJsonDialog/EditJsonDialog.d.ts.map +1 -1
  176. package/dist/components/EditJsonDialog/EditJsonDialog.js +43 -16
  177. package/dist/components/EditJsonDialog/EditJsonDialog.js.map +1 -1
  178. package/dist/components/EditJsonDialog/index.js.map +1 -1
  179. package/dist/components/EmptyDashboard/EmptyDashboard.d.ts +1 -1
  180. package/dist/components/EmptyDashboard/EmptyDashboard.d.ts.map +1 -1
  181. package/dist/components/EmptyDashboard/EmptyDashboard.js +3 -3
  182. package/dist/components/EmptyDashboard/EmptyDashboard.js.map +1 -1
  183. package/dist/components/EmptyDashboard/index.js.map +1 -1
  184. package/dist/components/GridLayout/GridContainer.d.ts +1 -1
  185. package/dist/components/GridLayout/GridContainer.d.ts.map +1 -1
  186. package/dist/components/GridLayout/GridContainer.js +1 -1
  187. package/dist/components/GridLayout/GridContainer.js.map +1 -1
  188. package/dist/components/GridLayout/GridItemContent.d.ts +1 -2
  189. package/dist/components/GridLayout/GridItemContent.d.ts.map +1 -1
  190. package/dist/components/GridLayout/GridItemContent.js +31 -15
  191. package/dist/components/GridLayout/GridItemContent.js.map +1 -1
  192. package/dist/components/GridLayout/GridLayout.d.ts +1 -2
  193. package/dist/components/GridLayout/GridLayout.d.ts.map +1 -1
  194. package/dist/components/GridLayout/GridLayout.js +6 -6
  195. package/dist/components/GridLayout/GridLayout.js.map +1 -1
  196. package/dist/components/GridLayout/GridTitle.d.ts +1 -2
  197. package/dist/components/GridLayout/GridTitle.d.ts.map +1 -1
  198. package/dist/components/GridLayout/GridTitle.js +5 -6
  199. package/dist/components/GridLayout/GridTitle.js.map +1 -1
  200. package/dist/components/GridLayout/index.js.map +1 -1
  201. package/dist/components/Panel/Panel.d.ts +2 -2
  202. package/dist/components/Panel/Panel.d.ts.map +1 -1
  203. package/dist/components/Panel/Panel.js +7 -13
  204. package/dist/components/Panel/Panel.js.map +1 -1
  205. package/dist/components/Panel/PanelContent.d.ts +3 -3
  206. package/dist/components/Panel/PanelContent.d.ts.map +1 -1
  207. package/dist/components/Panel/PanelContent.js +4 -3
  208. package/dist/components/Panel/PanelContent.js.map +1 -1
  209. package/dist/components/Panel/PanelHeader.d.ts +2 -2
  210. package/dist/components/Panel/PanelHeader.d.ts.map +1 -1
  211. package/dist/components/Panel/PanelHeader.js +2 -2
  212. package/dist/components/Panel/PanelHeader.js.map +1 -1
  213. package/dist/components/Panel/index.js.map +1 -1
  214. package/dist/components/PanelDrawer/PanelDrawer.d.ts +1 -2
  215. package/dist/components/PanelDrawer/PanelDrawer.d.ts.map +1 -1
  216. package/dist/components/PanelDrawer/PanelDrawer.js +22 -76
  217. package/dist/components/PanelDrawer/PanelDrawer.js.map +1 -1
  218. package/dist/components/PanelDrawer/PanelEditorForm.d.ts +5 -3
  219. package/dist/components/PanelDrawer/PanelEditorForm.d.ts.map +1 -1
  220. package/dist/components/PanelDrawer/PanelEditorForm.js +231 -142
  221. package/dist/components/PanelDrawer/PanelEditorForm.js.map +1 -1
  222. package/dist/components/PanelDrawer/PanelPreview.d.ts +1 -2
  223. package/dist/components/PanelDrawer/PanelPreview.d.ts.map +1 -1
  224. package/dist/components/PanelDrawer/PanelPreview.js +4 -5
  225. package/dist/components/PanelDrawer/PanelPreview.js.map +1 -1
  226. package/dist/components/PanelDrawer/index.d.ts +1 -0
  227. package/dist/components/PanelDrawer/index.d.ts.map +1 -1
  228. package/dist/components/PanelDrawer/index.js +1 -0
  229. package/dist/components/PanelDrawer/index.js.map +1 -1
  230. package/dist/components/PanelDrawer/usePanelEditor.js +2 -2
  231. package/dist/components/PanelDrawer/usePanelEditor.js.map +1 -1
  232. package/dist/components/PanelGroupDialog/PanelGroupDialog.d.ts +1 -2
  233. package/dist/components/PanelGroupDialog/PanelGroupDialog.d.ts.map +1 -1
  234. package/dist/components/PanelGroupDialog/PanelGroupDialog.js.map +1 -1
  235. package/dist/components/PanelGroupDialog/PanelGroupEditorForm.d.ts +1 -2
  236. package/dist/components/PanelGroupDialog/PanelGroupEditorForm.d.ts.map +1 -1
  237. package/dist/components/PanelGroupDialog/PanelGroupEditorForm.js +1 -1
  238. package/dist/components/PanelGroupDialog/PanelGroupEditorForm.js.map +1 -1
  239. package/dist/components/PanelGroupDialog/index.js.map +1 -1
  240. package/dist/components/QuerySummaryTable/QuerySummaryTable.d.ts +1 -2
  241. package/dist/components/QuerySummaryTable/QuerySummaryTable.d.ts.map +1 -1
  242. package/dist/components/QuerySummaryTable/QuerySummaryTable.js +8 -8
  243. package/dist/components/QuerySummaryTable/QuerySummaryTable.js.map +1 -1
  244. package/dist/components/QuerySummaryTable/index.js.map +1 -1
  245. package/dist/components/SaveChangesConfirmationDialog/SaveChangesConfirmationDialog.d.ts +1 -2
  246. package/dist/components/SaveChangesConfirmationDialog/SaveChangesConfirmationDialog.d.ts.map +1 -1
  247. package/dist/components/SaveChangesConfirmationDialog/SaveChangesConfirmationDialog.js +8 -8
  248. package/dist/components/SaveChangesConfirmationDialog/SaveChangesConfirmationDialog.js.map +1 -1
  249. package/dist/components/SaveChangesConfirmationDialog/index.js.map +1 -1
  250. package/dist/components/SaveDashboardButton/SaveDashboardButton.d.ts +1 -2
  251. package/dist/components/SaveDashboardButton/SaveDashboardButton.d.ts.map +1 -1
  252. package/dist/components/SaveDashboardButton/SaveDashboardButton.js +8 -10
  253. package/dist/components/SaveDashboardButton/SaveDashboardButton.js.map +1 -1
  254. package/dist/components/SaveDashboardButton/index.js.map +1 -1
  255. package/dist/components/Variables/BuiltinVariableAccordions.d.ts +7 -0
  256. package/dist/components/Variables/BuiltinVariableAccordions.d.ts.map +1 -0
  257. package/dist/components/Variables/BuiltinVariableAccordions.js +128 -0
  258. package/dist/components/Variables/BuiltinVariableAccordions.js.map +1 -0
  259. package/dist/components/Variables/EditVariablesButton.d.ts +1 -2
  260. package/dist/components/Variables/EditVariablesButton.d.ts.map +1 -1
  261. package/dist/components/Variables/EditVariablesButton.js +7 -7
  262. package/dist/components/Variables/EditVariablesButton.js.map +1 -1
  263. package/dist/components/Variables/TemplateVariable.d.ts +12 -4
  264. package/dist/components/Variables/TemplateVariable.d.ts.map +1 -1
  265. package/dist/components/Variables/TemplateVariable.js +244 -100
  266. package/dist/components/Variables/TemplateVariable.js.map +1 -1
  267. package/dist/components/Variables/VariableEditor.d.ts +4 -4
  268. package/dist/components/Variables/VariableEditor.d.ts.map +1 -1
  269. package/dist/components/Variables/VariableEditor.js +232 -161
  270. package/dist/components/Variables/VariableEditor.js.map +1 -1
  271. package/dist/components/Variables/VariableList.d.ts +2 -3
  272. package/dist/components/Variables/VariableList.d.ts.map +1 -1
  273. package/dist/components/Variables/VariableList.js +11 -13
  274. package/dist/components/Variables/VariableList.js.map +1 -1
  275. package/dist/components/Variables/index.d.ts +1 -0
  276. package/dist/components/Variables/index.d.ts.map +1 -1
  277. package/dist/components/Variables/index.js +1 -0
  278. package/dist/components/Variables/index.js.map +1 -1
  279. package/dist/components/index.d.ts +1 -2
  280. package/dist/components/index.d.ts.map +1 -1
  281. package/dist/components/index.js +1 -2
  282. package/dist/components/index.js.map +1 -1
  283. package/dist/constants/grid-layout-config.js.map +1 -1
  284. package/dist/constants/index.d.ts +1 -0
  285. package/dist/constants/index.d.ts.map +1 -1
  286. package/dist/constants/index.js +1 -0
  287. package/dist/constants/index.js.map +1 -1
  288. package/dist/constants/styles.d.ts +5 -0
  289. package/dist/constants/styles.d.ts.map +1 -0
  290. package/dist/{utils/time.js → constants/styles.js} +10 -10
  291. package/dist/constants/styles.js.map +1 -0
  292. package/dist/constants/user-interface-text.d.ts +2 -1
  293. package/dist/constants/user-interface-text.d.ts.map +1 -1
  294. package/dist/constants/user-interface-text.js +2 -1
  295. package/dist/constants/user-interface-text.js.map +1 -1
  296. package/dist/context/DashboardProvider/DashboardProvider.d.ts +7 -4
  297. package/dist/context/DashboardProvider/DashboardProvider.d.ts.map +1 -1
  298. package/dist/context/DashboardProvider/DashboardProvider.js +16 -9
  299. package/dist/context/DashboardProvider/DashboardProvider.js.map +1 -1
  300. package/dist/context/DashboardProvider/common.d.ts +3 -3
  301. package/dist/context/DashboardProvider/common.d.ts.map +1 -1
  302. package/dist/context/DashboardProvider/common.js.map +1 -1
  303. package/dist/context/DashboardProvider/dashboard-provider-api.d.ts +1 -1
  304. package/dist/context/DashboardProvider/dashboard-provider-api.js +17 -17
  305. package/dist/context/DashboardProvider/dashboard-provider-api.js.map +1 -1
  306. package/dist/context/DashboardProvider/delete-panel-group-slice.js +1 -1
  307. package/dist/context/DashboardProvider/delete-panel-group-slice.js.map +1 -1
  308. package/dist/context/DashboardProvider/delete-panel-slice.js +5 -5
  309. package/dist/context/DashboardProvider/delete-panel-slice.js.map +1 -1
  310. package/dist/context/DashboardProvider/discard-changes-dialog-slice.js.map +1 -1
  311. package/dist/context/DashboardProvider/duplicate-panel-slice.js +1 -1
  312. package/dist/context/DashboardProvider/duplicate-panel-slice.js.map +1 -1
  313. package/dist/context/DashboardProvider/edit-json-dialog-slice.js.map +1 -1
  314. package/dist/context/DashboardProvider/index.js.map +1 -1
  315. package/dist/context/DashboardProvider/panel-editor-slice.d.ts +2 -2
  316. package/dist/context/DashboardProvider/panel-editor-slice.d.ts.map +1 -1
  317. package/dist/context/DashboardProvider/panel-editor-slice.js +11 -13
  318. package/dist/context/DashboardProvider/panel-editor-slice.js.map +1 -1
  319. package/dist/context/DashboardProvider/panel-group-editor-slice.js +2 -2
  320. package/dist/context/DashboardProvider/panel-group-editor-slice.js.map +1 -1
  321. package/dist/context/DashboardProvider/panel-group-slice.d.ts +2 -2
  322. package/dist/context/DashboardProvider/panel-group-slice.d.ts.map +1 -1
  323. package/dist/context/DashboardProvider/panel-group-slice.js +4 -4
  324. package/dist/context/DashboardProvider/panel-group-slice.js.map +1 -1
  325. package/dist/context/DashboardProvider/panel-slice.js.map +1 -1
  326. package/dist/context/DashboardProvider/save-changes-dialog-slice.js.map +1 -1
  327. package/dist/context/DatasourceStoreProvider.d.ts +17 -12
  328. package/dist/context/DatasourceStoreProvider.d.ts.map +1 -1
  329. package/dist/context/DatasourceStoreProvider.js +172 -47
  330. package/dist/context/DatasourceStoreProvider.js.map +1 -1
  331. package/dist/context/TemplateVariableProvider/TemplateVariableProvider.d.ts +15 -8
  332. package/dist/context/TemplateVariableProvider/TemplateVariableProvider.d.ts.map +1 -1
  333. package/dist/context/TemplateVariableProvider/TemplateVariableProvider.js +115 -23
  334. package/dist/context/TemplateVariableProvider/TemplateVariableProvider.js.map +1 -1
  335. package/dist/context/TemplateVariableProvider/hydrationUtils.d.ts.map +1 -1
  336. package/dist/context/TemplateVariableProvider/hydrationUtils.js +7 -7
  337. package/dist/context/TemplateVariableProvider/hydrationUtils.js.map +1 -1
  338. package/dist/context/TemplateVariableProvider/index.js.map +1 -1
  339. package/dist/context/TemplateVariableProvider/query-params.js.map +1 -1
  340. package/dist/context/TemplateVariableProvider/utils.js +3 -3
  341. package/dist/context/TemplateVariableProvider/utils.js.map +1 -1
  342. package/dist/context/index.js.map +1 -1
  343. package/dist/context/useDashboard.d.ts +3 -3
  344. package/dist/context/useDashboard.d.ts.map +1 -1
  345. package/dist/context/useDashboard.js +24 -7
  346. package/dist/context/useDashboard.js.map +1 -1
  347. package/dist/index.js.map +1 -1
  348. package/dist/stories/decorators/WithDashboard.js.map +1 -1
  349. package/dist/stories/decorators/WithDatasourceStore.js.map +1 -1
  350. package/dist/stories/decorators/WithTemplateVariables.js.map +1 -1
  351. package/dist/stories/decorators/constants.js +2 -2
  352. package/dist/stories/decorators/constants.js.map +1 -1
  353. package/dist/stories/decorators/index.js.map +1 -1
  354. package/dist/test/dashboard-provider.js.map +1 -1
  355. package/dist/test/datasource-provider.d.ts.map +1 -1
  356. package/dist/test/datasource-provider.js +5 -7
  357. package/dist/test/datasource-provider.js.map +1 -1
  358. package/dist/test/index.js.map +1 -1
  359. package/dist/test/plugin-registry.js.map +1 -1
  360. package/dist/test/render.d.ts.map +1 -1
  361. package/dist/test/render.js +9 -4
  362. package/dist/test/render.js.map +1 -1
  363. package/dist/test/setup-tests.js.map +1 -1
  364. package/dist/test/testDashboard.js +10 -10
  365. package/dist/test/testDashboard.js.map +1 -1
  366. package/dist/utils/index.d.ts +0 -1
  367. package/dist/utils/index.d.ts.map +1 -1
  368. package/dist/utils/index.js +0 -1
  369. package/dist/utils/index.js.map +1 -1
  370. package/dist/utils/panelUtils.d.ts +1 -1
  371. package/dist/utils/panelUtils.d.ts.map +1 -1
  372. package/dist/utils/panelUtils.js +2 -2
  373. package/dist/utils/panelUtils.js.map +1 -1
  374. package/dist/validation/index.d.ts +2 -0
  375. package/dist/validation/index.d.ts.map +1 -0
  376. package/dist/{components/ToolbarIconButton → validation}/index.js +1 -1
  377. package/dist/validation/index.js.map +1 -0
  378. package/dist/validation/panel.d.ts +19 -0
  379. package/dist/validation/panel.d.ts.map +1 -0
  380. package/dist/validation/panel.js +21 -0
  381. package/dist/validation/panel.js.map +1 -0
  382. package/dist/views/ViewDashboard/DashboardApp.d.ts +4 -3
  383. package/dist/views/ViewDashboard/DashboardApp.d.ts.map +1 -1
  384. package/dist/views/ViewDashboard/DashboardApp.js +19 -7
  385. package/dist/views/ViewDashboard/DashboardApp.js.map +1 -1
  386. package/dist/views/ViewDashboard/ViewDashboard.d.ts +2 -2
  387. package/dist/views/ViewDashboard/ViewDashboard.d.ts.map +1 -1
  388. package/dist/views/ViewDashboard/ViewDashboard.js +53 -12
  389. package/dist/views/ViewDashboard/ViewDashboard.js.map +1 -1
  390. package/dist/views/ViewDashboard/index.js.map +1 -1
  391. package/dist/views/index.js.map +1 -1
  392. package/package.json +8 -7
  393. package/dist/cjs/components/TimeRangeControls/TimeRangeControls.js +0 -183
  394. package/dist/cjs/components/ToolbarIconButton/ToolbarIconButton.js +0 -38
  395. package/dist/components/TimeRangeControls/TimeRangeControls.d.ts +0 -14
  396. package/dist/components/TimeRangeControls/TimeRangeControls.d.ts.map +0 -1
  397. package/dist/components/TimeRangeControls/TimeRangeControls.js +0 -165
  398. package/dist/components/TimeRangeControls/TimeRangeControls.js.map +0 -1
  399. package/dist/components/TimeRangeControls/index.d.ts +0 -2
  400. package/dist/components/TimeRangeControls/index.d.ts.map +0 -1
  401. package/dist/components/TimeRangeControls/index.js.map +0 -1
  402. package/dist/components/ToolbarIconButton/ToolbarIconButton.d.ts +0 -6
  403. package/dist/components/ToolbarIconButton/ToolbarIconButton.d.ts.map +0 -1
  404. package/dist/components/ToolbarIconButton/ToolbarIconButton.js +0 -32
  405. package/dist/components/ToolbarIconButton/ToolbarIconButton.js.map +0 -1
  406. package/dist/components/ToolbarIconButton/index.d.ts +0 -2
  407. package/dist/components/ToolbarIconButton/index.d.ts.map +0 -1
  408. package/dist/components/ToolbarIconButton/index.js.map +0 -1
  409. package/dist/utils/time.d.ts +0 -5
  410. package/dist/utils/time.d.ts.map +0 -1
  411. package/dist/utils/time.js.map +0 -1
@@ -16,22 +16,23 @@ Object.defineProperty(exports, "__esModule", {
16
16
  });
17
17
  Object.defineProperty(exports, "DownloadButton", {
18
18
  enumerable: true,
19
- get: ()=>DownloadButton
19
+ get: function() {
20
+ return DownloadButton;
21
+ }
20
22
  });
21
- const _jsxRuntime = require("react/jsx-runtime");
23
+ const _jsxruntime = require("react/jsx-runtime");
22
24
  const _react = require("react");
23
- const _downloadOutline = /*#__PURE__*/ _interopRequireDefault(require("mdi-material-ui/DownloadOutline"));
25
+ const _DownloadOutline = /*#__PURE__*/ _interop_require_default(require("mdi-material-ui/DownloadOutline"));
24
26
  const _components = require("@perses-dev/components");
25
27
  const _constants = require("../../constants");
26
28
  const _context = require("../../context");
27
- const _toolbarIconButton = require("../ToolbarIconButton");
28
- function _interopRequireDefault(obj) {
29
+ function _interop_require_default(obj) {
29
30
  return obj && obj.__esModule ? obj : {
30
31
  default: obj
31
32
  };
32
33
  }
33
- function DownloadButton({ heightPx }) {
34
- const { dashboard } = (0, _context.useDashboard)();
34
+ function DownloadButton({ heightPx }) {
35
+ const { dashboard } = (0, _context.useDashboard)();
35
36
  const hiddenLinkRef = (0, _react.useRef)(null);
36
37
  const height = heightPx === undefined ? undefined : `${heightPx}px`;
37
38
  const onDownloadButtonClick = ()=>{
@@ -48,20 +49,20 @@ function DownloadButton({ heightPx }) {
48
49
  // Remove blob URL (for memory management)
49
50
  URL.revokeObjectURL(hiddenLinkUrl);
50
51
  };
51
- return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
52
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {
52
53
  children: [
53
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_components.InfoTooltip, {
54
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_components.InfoTooltip, {
54
55
  description: _constants.TOOLTIP_TEXT.downloadDashboard,
55
- children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_toolbarIconButton.ToolbarIconButton, {
56
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_components.ToolbarIconButton, {
56
57
  "aria-label": _constants.TOOLTIP_TEXT.downloadDashboard,
57
58
  onClick: onDownloadButtonClick,
58
59
  sx: {
59
60
  height
60
61
  },
61
- children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_downloadOutline.default, {})
62
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_DownloadOutline.default, {})
62
63
  })
63
64
  }),
64
- /*#__PURE__*/ (0, _jsxRuntime.jsx)("a", {
65
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("a", {
65
66
  ref: hiddenLinkRef,
66
67
  style: {
67
68
  display: 'none'
@@ -14,15 +14,17 @@
14
14
  Object.defineProperty(exports, "__esModule", {
15
15
  value: true
16
16
  });
17
- _exportStar(require("./DownloadButton"), exports);
18
- function _exportStar(from, to) {
17
+ _export_star(require("./DownloadButton"), exports);
18
+ function _export_star(from, to) {
19
19
  Object.keys(from).forEach(function(k) {
20
- if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) Object.defineProperty(to, k, {
21
- enumerable: true,
22
- get: function() {
23
- return from[k];
24
- }
25
- });
20
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
21
+ Object.defineProperty(to, k, {
22
+ enumerable: true,
23
+ get: function() {
24
+ return from[k];
25
+ }
26
+ });
27
+ }
26
28
  });
27
29
  return from;
28
30
  }
@@ -16,20 +16,22 @@ Object.defineProperty(exports, "__esModule", {
16
16
  });
17
17
  Object.defineProperty(exports, "EditButton", {
18
18
  enumerable: true,
19
- get: ()=>EditButton
19
+ get: function() {
20
+ return EditButton;
21
+ }
20
22
  });
21
- const _jsxRuntime = require("react/jsx-runtime");
23
+ const _jsxruntime = require("react/jsx-runtime");
22
24
  const _material = require("@mui/material");
23
- const _pencilOutline = /*#__PURE__*/ _interopRequireDefault(require("mdi-material-ui/PencilOutline"));
24
- function _interopRequireDefault(obj) {
25
+ const _PencilOutline = /*#__PURE__*/ _interop_require_default(require("mdi-material-ui/PencilOutline"));
26
+ function _interop_require_default(obj) {
25
27
  return obj && obj.__esModule ? obj : {
26
28
  default: obj
27
29
  };
28
30
  }
29
- const EditButton = ({ label ='Edit' , onClick })=>{
30
- return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Button, {
31
+ const EditButton = ({ label = 'Edit', onClick })=>{
32
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Button, {
31
33
  onClick: onClick,
32
- startIcon: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_pencilOutline.default, {}),
34
+ startIcon: /*#__PURE__*/ (0, _jsxruntime.jsx)(_PencilOutline.default, {}),
33
35
  variant: "outlined",
34
36
  color: "secondary",
35
37
  sx: {
@@ -14,15 +14,17 @@
14
14
  Object.defineProperty(exports, "__esModule", {
15
15
  value: true
16
16
  });
17
- _exportStar(require("./EditButton"), exports);
18
- function _exportStar(from, to) {
17
+ _export_star(require("./EditButton"), exports);
18
+ function _export_star(from, to) {
19
19
  Object.keys(from).forEach(function(k) {
20
- if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) Object.defineProperty(to, k, {
21
- enumerable: true,
22
- get: function() {
23
- return from[k];
24
- }
25
- });
20
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
21
+ Object.defineProperty(to, k, {
22
+ enumerable: true,
23
+ get: function() {
24
+ return from[k];
25
+ }
26
+ });
27
+ }
26
28
  });
27
29
  return from;
28
30
  }
@@ -16,28 +16,31 @@ Object.defineProperty(exports, "__esModule", {
16
16
  });
17
17
  Object.defineProperty(exports, "EditJsonButton", {
18
18
  enumerable: true,
19
- get: ()=>EditJsonButton
19
+ get: function() {
20
+ return EditJsonButton;
21
+ }
20
22
  });
21
- const _jsxRuntime = require("react/jsx-runtime");
22
- const _codeBraces = /*#__PURE__*/ _interopRequireDefault(require("mdi-material-ui/CodeBraces"));
23
+ const _jsxruntime = require("react/jsx-runtime");
24
+ const _CodeBraces = /*#__PURE__*/ _interop_require_default(require("mdi-material-ui/CodeBraces"));
23
25
  const _components = require("@perses-dev/components");
24
26
  const _constants = require("../../constants");
25
- const _toolbarIconButton = require("../ToolbarIconButton");
26
27
  const _context = require("../../context");
27
- function _interopRequireDefault(obj) {
28
+ function _interop_require_default(obj) {
28
29
  return obj && obj.__esModule ? obj : {
29
30
  default: obj
30
31
  };
31
32
  }
32
- const EditJsonButton = ()=>{
33
- const { openEditJsonDialog } = (0, _context.useEditJsonDialog)();
34
- return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_components.InfoTooltip, {
35
- description: _constants.TOOLTIP_TEXT.editJson,
36
- children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_toolbarIconButton.ToolbarIconButton, {
37
- "aria-label": _constants.TOOLTIP_TEXT.editJson,
33
+ const EditJsonButton = (props)=>{
34
+ const { isReadonly } = props;
35
+ const { openEditJsonDialog } = (0, _context.useEditJsonDialog)();
36
+ const info = isReadonly ? _constants.TOOLTIP_TEXT.viewJson : _constants.TOOLTIP_TEXT.editJson;
37
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_components.InfoTooltip, {
38
+ description: info,
39
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_components.ToolbarIconButton, {
40
+ "aria-label": info,
38
41
  variant: "outlined",
39
42
  onClick: ()=>openEditJsonDialog(),
40
- children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_codeBraces.default, {})
43
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_CodeBraces.default, {})
41
44
  })
42
45
  });
43
46
  };
@@ -14,15 +14,17 @@
14
14
  Object.defineProperty(exports, "__esModule", {
15
15
  value: true
16
16
  });
17
- _exportStar(require("./EditJsonButton"), exports);
18
- function _exportStar(from, to) {
17
+ _export_star(require("./EditJsonButton"), exports);
18
+ function _export_star(from, to) {
19
19
  Object.keys(from).forEach(function(k) {
20
- if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) Object.defineProperty(to, k, {
21
- enumerable: true,
22
- get: function() {
23
- return from[k];
24
- }
25
- });
20
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
21
+ Object.defineProperty(to, k, {
22
+ enumerable: true,
23
+ get: function() {
24
+ return from[k];
25
+ }
26
+ });
27
+ }
26
28
  });
27
29
  return from;
28
30
  }
@@ -16,35 +16,46 @@ Object.defineProperty(exports, "__esModule", {
16
16
  });
17
17
  Object.defineProperty(exports, "EditJsonDialog", {
18
18
  enumerable: true,
19
- get: ()=>EditJsonDialog
19
+ get: function() {
20
+ return EditJsonDialog;
21
+ }
20
22
  });
21
- const _jsxRuntime = require("react/jsx-runtime");
23
+ const _jsxruntime = require("react/jsx-runtime");
22
24
  const _react = require("react");
23
25
  const _material = require("@mui/material");
24
26
  const _components = require("@perses-dev/components");
25
- const _pluginSystem = require("@perses-dev/plugin-system");
26
- const _dashboardProvider = require("../../context/DashboardProvider");
27
+ const _pluginsystem = require("@perses-dev/plugin-system");
28
+ const _DashboardProvider = require("../../context/DashboardProvider");
27
29
  const _useDashboard = require("../../context/useDashboard");
28
- const EditJsonDialog = ()=>{
29
- const { editJsonDialog , closeEditJsonDialog } = (0, _dashboardProvider.useEditJsonDialog)();
30
- return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_components.Dialog, {
30
+ const EditJsonDialog = (props)=>{
31
+ const { isReadonly, disableMetadataEdition } = props;
32
+ const { editJsonDialog, closeEditJsonDialog } = (0, _DashboardProvider.useEditJsonDialog)();
33
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_components.Dialog, {
31
34
  open: !!(editJsonDialog === null || editJsonDialog === void 0 ? void 0 : editJsonDialog.isOpen),
32
35
  scroll: "paper",
33
36
  fullWidth: true,
34
37
  maxWidth: "lg",
35
38
  children: [
36
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_components.Dialog.Header, {
39
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)(_components.Dialog.Header, {
37
40
  onClose: ()=>closeEditJsonDialog(),
38
- children: "Edit Dashboard"
41
+ children: [
42
+ !isReadonly && 'Edit ',
43
+ " Dashboard JSON"
44
+ ]
39
45
  }),
40
- (editJsonDialog === null || editJsonDialog === void 0 ? void 0 : editJsonDialog.isOpen) && /*#__PURE__*/ (0, _jsxRuntime.jsx)(EditJsonDialogForm, {})
46
+ (editJsonDialog === null || editJsonDialog === void 0 ? void 0 : editJsonDialog.isOpen) && /*#__PURE__*/ (0, _jsxruntime.jsx)(EditJsonDialogForm, {
47
+ isReadonly: isReadonly,
48
+ disableMetadataEdition: disableMetadataEdition
49
+ })
41
50
  ]
42
51
  });
43
52
  };
44
- const EditJsonDialogForm = ()=>{
45
- const { closeEditJsonDialog } = (0, _dashboardProvider.useEditJsonDialog)();
46
- const { setTimeRange , setRefreshInterval } = (0, _pluginSystem.useTimeRange)();
47
- const { dashboard , setDashboard } = (0, _useDashboard.useDashboard)();
53
+ const EditJsonDialogForm = (props)=>{
54
+ const { isReadonly, disableMetadataEdition } = props;
55
+ const { closeEditJsonDialog } = (0, _DashboardProvider.useEditJsonDialog)();
56
+ const { setTimeRange, setRefreshInterval } = (0, _pluginsystem.useTimeRange)();
57
+ const { dashboard, setDashboard } = (0, _useDashboard.useDashboard)();
58
+ const { setLocalDatasources } = (0, _pluginsystem.useDatasourceStore)();
48
59
  const [draftDashboard, setDraftDashboard] = (0, _react.useState)(dashboard);
49
60
  const handleApply = (e)=>{
50
61
  e.preventDefault();
@@ -52,38 +63,56 @@ const EditJsonDialogForm = ()=>{
52
63
  setTimeRange({
53
64
  pastDuration: draftDashboard.spec.duration
54
65
  });
55
- var _refreshInterval;
56
- setRefreshInterval((_refreshInterval = draftDashboard.spec.refreshInterval) !== null && _refreshInterval !== void 0 ? _refreshInterval : '0s');
66
+ var _draftDashboard_spec_refreshInterval;
67
+ setRefreshInterval((_draftDashboard_spec_refreshInterval = draftDashboard.spec.refreshInterval) !== null && _draftDashboard_spec_refreshInterval !== void 0 ? _draftDashboard_spec_refreshInterval : '0s');
68
+ var _draftDashboard_spec_datasources;
69
+ setLocalDatasources((_draftDashboard_spec_datasources = draftDashboard.spec.datasources) !== null && _draftDashboard_spec_datasources !== void 0 ? _draftDashboard_spec_datasources : {});
57
70
  closeEditJsonDialog();
58
71
  };
59
- return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_components.Dialog.Form, {
72
+ const completeDraftDashboard = (dashboard)=>{
73
+ try {
74
+ const json = JSON.parse(dashboard !== null && dashboard !== void 0 ? dashboard : '{}');
75
+ setDraftDashboard(json);
76
+ } catch (e) {
77
+ // do nothing
78
+ }
79
+ };
80
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_components.Dialog.Form, {
60
81
  onSubmit: handleApply,
61
82
  children: [
62
- /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_components.Dialog.Content, {
83
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)(_components.Dialog.Content, {
63
84
  sx: {
64
85
  width: '100%'
65
86
  },
66
87
  children: [
67
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Alert, {
88
+ disableMetadataEdition && !isReadonly && /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Alert, {
68
89
  sx: {
69
90
  marginBottom: (theme)=>theme.spacing(1)
70
91
  },
71
92
  severity: "warning",
72
93
  children: "Metadata cannot be modified or saved."
73
94
  }),
74
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.FormControl, {
95
+ draftDashboard.kind === 'EphemeralDashboard' && /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Alert, {
96
+ sx: {
97
+ marginBottom: 1
98
+ },
99
+ severity: "warning",
100
+ children: "Time-to-live cannot be modified or saved from here. Go to the project view to modify it."
101
+ }),
102
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.FormControl, {
75
103
  fullWidth: true,
76
- children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_components.JSONEditor, {
104
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_components.JSONEditor, {
77
105
  minHeight: "300px",
78
- maxHeight: "700px",
106
+ maxHeight: "70vh",
79
107
  value: draftDashboard,
80
- onChange: (value)=>setDraftDashboard(value)
108
+ onChange: (value)=>completeDraftDashboard(value),
109
+ readOnly: isReadonly
81
110
  })
82
111
  })
83
112
  ]
84
113
  }),
85
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_components.Dialog.Actions, {
86
- children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_components.Dialog.PrimaryButton, {
114
+ !isReadonly && /*#__PURE__*/ (0, _jsxruntime.jsx)(_components.Dialog.Actions, {
115
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_components.Dialog.PrimaryButton, {
87
116
  onClick: handleApply,
88
117
  children: "Apply"
89
118
  })
@@ -14,15 +14,17 @@
14
14
  Object.defineProperty(exports, "__esModule", {
15
15
  value: true
16
16
  });
17
- _exportStar(require("./EditJsonDialog"), exports);
18
- function _exportStar(from, to) {
17
+ _export_star(require("./EditJsonDialog"), exports);
18
+ function _export_star(from, to) {
19
19
  Object.keys(from).forEach(function(k) {
20
- if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) Object.defineProperty(to, k, {
21
- enumerable: true,
22
- get: function() {
23
- return from[k];
24
- }
25
- });
20
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
21
+ Object.defineProperty(to, k, {
22
+ enumerable: true,
23
+ get: function() {
24
+ return from[k];
25
+ }
26
+ });
27
+ }
26
28
  });
27
29
  return from;
28
30
  }
@@ -16,14 +16,16 @@ Object.defineProperty(exports, "__esModule", {
16
16
  });
17
17
  Object.defineProperty(exports, "EmptyDashboard", {
18
18
  enumerable: true,
19
- get: ()=>EmptyDashboard
19
+ get: function() {
20
+ return EmptyDashboard;
21
+ }
20
22
  });
21
- const _jsxRuntime = require("react/jsx-runtime");
23
+ const _jsxruntime = require("react/jsx-runtime");
22
24
  const _material = require("@mui/material");
23
25
  const _context = require("../../context");
24
- const _addPanelButton = require("../AddPanelButton");
25
- const _variables = require("../Variables");
26
- const _editButton = require("../EditButton");
26
+ const _AddPanelButton = require("../AddPanelButton");
27
+ const _Variables = require("../Variables");
28
+ const _EditButton = require("../EditButton");
27
29
  const DEFAULT_TITLE = "Let's get started";
28
30
  const DEFAULT_DESCRIPTION = {
29
31
  edit: 'We currently support time series charts, gauge charts, stat charts and more!',
@@ -36,7 +38,7 @@ const COMMON_BUTTON_PROPS = {
36
38
  variant: 'outlined',
37
39
  color: 'secondary'
38
40
  };
39
- const EmptyDashboardActions = ({ actions , isEditMode , onEditButtonClick })=>{
41
+ const EmptyDashboardActions = ({ actions, isEditMode, onEditButtonClick })=>{
40
42
  if (actions && typeof actions !== 'boolean') {
41
43
  // Custom actions
42
44
  return actions;
@@ -47,15 +49,15 @@ const EmptyDashboardActions = ({ actions , isEditMode , onEditButtonClick })=>{
47
49
  }
48
50
  if (isEditMode) {
49
51
  // Default edit mode actions
50
- return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
52
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {
51
53
  children: [
52
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_addPanelButton.AddPanelButton, {
54
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_AddPanelButton.AddPanelButton, {
53
55
  variant: "outlined",
54
56
  color: "secondary",
55
57
  label: "Add Panel",
56
58
  fullWidth: true
57
59
  }),
58
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_variables.EditVariablesButton, {
60
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_Variables.EditVariablesButton, {
59
61
  variant: "outlined",
60
62
  color: "secondary",
61
63
  label: "Add Variables",
@@ -66,7 +68,7 @@ const EmptyDashboardActions = ({ actions , isEditMode , onEditButtonClick })=>{
66
68
  }
67
69
  if (onEditButtonClick) {
68
70
  // Default view mode actions
69
- return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_editButton.EditButton, {
71
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_EditButton.EditButton, {
70
72
  ...COMMON_BUTTON_PROPS,
71
73
  label: "Edit Dashboard",
72
74
  onClick: onEditButtonClick
@@ -74,38 +76,38 @@ const EmptyDashboardActions = ({ actions , isEditMode , onEditButtonClick })=>{
74
76
  }
75
77
  return null;
76
78
  };
77
- const EmptyDashboard = ({ title =DEFAULT_TITLE , image , description , additionalText , actions , onEditButtonClick })=>{
78
- const { isEditMode } = (0, _context.useEditMode)();
79
+ const EmptyDashboard = ({ title = DEFAULT_TITLE, image, description, additionalText, actions, onEditButtonClick })=>{
80
+ const { isEditMode } = (0, _context.useEditMode)();
79
81
  const defaultDescription = isEditMode ? DEFAULT_DESCRIPTION.edit : DEFAULT_DESCRIPTION.view;
80
- const actionsContent = /*#__PURE__*/ (0, _jsxRuntime.jsx)(EmptyDashboardActions, {
82
+ const actionsContent = /*#__PURE__*/ (0, _jsxruntime.jsx)(EmptyDashboardActions, {
81
83
  actions: actions,
82
84
  onEditButtonClick: onEditButtonClick,
83
85
  isEditMode: isEditMode
84
86
  });
85
- return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_material.Box, {
87
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.Box, {
86
88
  sx: {
87
89
  width: CONTAINER_WIDTH,
88
90
  textAlign: 'center',
89
91
  margin: '0 auto'
90
92
  },
91
93
  children: [
92
- /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_material.Box, {
94
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.Box, {
93
95
  sx: {
94
96
  width: PRIMARY_CONTENT_WIDTH,
95
97
  margin: '0 auto'
96
98
  },
97
99
  children: [
98
100
  !!image && image,
99
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Typography, {
101
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Typography, {
100
102
  variant: "h2",
101
103
  gutterBottom: true,
102
104
  children: title
103
105
  }),
104
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Typography, {
106
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Typography, {
105
107
  variant: "body1",
106
108
  children: description !== null && description !== void 0 ? description : defaultDescription
107
109
  }),
108
- actionsContent && /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Box, {
110
+ actionsContent && /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Box, {
109
111
  sx: {
110
112
  display: 'flex',
111
113
  gap: 2,
@@ -116,7 +118,7 @@ const EmptyDashboard = ({ title =DEFAULT_TITLE , image , description , additiona
116
118
  })
117
119
  ]
118
120
  }),
119
- additionalText && /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Typography, {
121
+ additionalText && /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Typography, {
120
122
  variant: "subtitle1",
121
123
  sx: {
122
124
  marginTop: 12
@@ -14,15 +14,17 @@
14
14
  Object.defineProperty(exports, "__esModule", {
15
15
  value: true
16
16
  });
17
- _exportStar(require("./EmptyDashboard"), exports);
18
- function _exportStar(from, to) {
17
+ _export_star(require("./EmptyDashboard"), exports);
18
+ function _export_star(from, to) {
19
19
  Object.keys(from).forEach(function(k) {
20
- if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) Object.defineProperty(to, k, {
21
- enumerable: true,
22
- get: function() {
23
- return from[k];
24
- }
25
- });
20
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
21
+ Object.defineProperty(to, k, {
22
+ enumerable: true,
23
+ get: function() {
24
+ return from[k];
25
+ }
26
+ });
27
+ }
26
28
  });
27
29
  return from;
28
30
  }
@@ -16,9 +16,11 @@ Object.defineProperty(exports, "__esModule", {
16
16
  });
17
17
  Object.defineProperty(exports, "GridContainer", {
18
18
  enumerable: true,
19
- get: ()=>GridContainer
19
+ get: function() {
20
+ return GridContainer;
21
+ }
20
22
  });
21
- const _jsxRuntime = require("react/jsx-runtime");
23
+ const _jsxruntime = require("react/jsx-runtime");
22
24
  const _react = require("react");
23
25
  const _material = require("@mui/material");
24
26
  function GridContainer(props) {
@@ -30,7 +32,7 @@ function GridContainer(props) {
30
32
  }, [
31
33
  isFirstRender
32
34
  ]);
33
- return /*#__PURE__*/ (0, _jsxRuntime.jsx)(ReactGridLayoutContainer, {
35
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(ReactGridLayoutContainer, {
34
36
  sx: {
35
37
  // This adds spcing between grids (rows) in the overall dashboard
36
38
  '& + &': {
@@ -48,7 +50,7 @@ function GridContainer(props) {
48
50
  }
49
51
  /**
50
52
  * These are the classes needed by react-grid-layout from their CSS stylesheet.
51
- */ const ReactGridLayoutContainer = (0, _material.styled)('section')(({ theme })=>({
53
+ */ const ReactGridLayoutContainer = (0, _material.styled)('section')(({ theme })=>({
52
54
  '& .react-grid-layout': {
53
55
  position: 'relative',
54
56
  transition: 'height 200ms ease'
@@ -16,19 +16,27 @@ Object.defineProperty(exports, "__esModule", {
16
16
  });
17
17
  Object.defineProperty(exports, "GridItemContent", {
18
18
  enumerable: true,
19
- get: ()=>GridItemContent
19
+ get: function() {
20
+ return GridItemContent;
21
+ }
20
22
  });
21
- const _jsxRuntime = require("react/jsx-runtime");
22
- const _pluginSystem = require("@perses-dev/plugin-system");
23
+ const _jsxruntime = require("react/jsx-runtime");
24
+ const _material = require("@mui/material");
25
+ const _reactintersectionobserver = require("react-intersection-observer");
26
+ const _pluginsystem = require("@perses-dev/plugin-system");
23
27
  const _context = require("../../context");
24
- const _utils = require("../../utils");
25
- const _panel = require("../Panel/Panel");
28
+ const _Panel = require("../Panel/Panel");
26
29
  function GridItemContent(props) {
27
- const { panelGroupItemId , width } = props;
30
+ const { panelGroupItemId, width } = props;
28
31
  const panelDefinition = (0, _context.usePanel)(panelGroupItemId);
29
- const { spec: { queries } , } = panelDefinition;
30
- const { isEditMode } = (0, _context.useEditMode)();
31
- const { openEditPanel , openDeletePanelDialog , duplicatePanel } = (0, _context.usePanelActions)(panelGroupItemId);
32
+ const { spec: { queries } } = panelDefinition;
33
+ const { isEditMode } = (0, _context.useEditMode)();
34
+ const { openEditPanel, openDeletePanelDialog, duplicatePanel } = (0, _context.usePanelActions)(panelGroupItemId);
35
+ const { ref, inView } = (0, _reactintersectionobserver.useInView)({
36
+ threshold: 0.2,
37
+ initialInView: false,
38
+ triggerOnce: true
39
+ });
32
40
  // Provide actions to the panel when in edit mode
33
41
  let editHandlers = undefined;
34
42
  if (isEditMode) {
@@ -39,7 +47,7 @@ function GridItemContent(props) {
39
47
  };
40
48
  }
41
49
  // map TimeSeriesQueryDefinition to Definition<UnknownSpec>
42
- const suggestedStepMs = (0, _utils.useSuggestedStepMs)(width);
50
+ const suggestedStepMs = (0, _pluginsystem.useSuggestedStepMs)(width);
43
51
  const queryDefinitions = queries !== null && queries !== void 0 ? queries : [];
44
52
  const definitions = queryDefinitions.map((query)=>{
45
53
  return {
@@ -47,16 +55,26 @@ function GridItemContent(props) {
47
55
  spec: query.spec.plugin.spec
48
56
  };
49
57
  });
50
- return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_pluginSystem.DataQueriesProvider, {
51
- definitions: definitions,
52
- options: {
53
- suggestedStepMs
58
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Box, {
59
+ ref: ref,
60
+ sx: {
61
+ width: '100%',
62
+ height: '100%'
54
63
  },
55
- children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_panel.Panel, {
56
- definition: panelDefinition,
57
- editHandlers: editHandlers,
58
- panelOptions: props.panelOptions,
59
- panelGroupItemId: panelGroupItemId
64
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_pluginsystem.DataQueriesProvider, {
65
+ definitions: definitions,
66
+ options: {
67
+ suggestedStepMs
68
+ },
69
+ queryOptions: {
70
+ enabled: inView
71
+ },
72
+ children: inView && /*#__PURE__*/ (0, _jsxruntime.jsx)(_Panel.Panel, {
73
+ definition: panelDefinition,
74
+ editHandlers: editHandlers,
75
+ panelOptions: props.panelOptions,
76
+ panelGroupItemId: panelGroupItemId
77
+ })
60
78
  })
61
79
  });
62
80
  }