@trops/dash-core 0.1.115 → 0.1.116

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.
package/dist/index.js CHANGED
@@ -49,8 +49,8 @@ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
49
49
  var jsxRuntime__namespace = /*#__PURE__*/_interopNamespaceDefault(jsxRuntime);
50
50
  var ReactDOM__namespace = /*#__PURE__*/_interopNamespaceDefault(ReactDOM);
51
51
 
52
- function ownKeys$A(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
53
- function _objectSpread$A(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$A(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$A(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
52
+ function ownKeys$B(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
53
+ function _objectSpread$B(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$B(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$B(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
54
54
  var event = {
55
55
  list: new Map(),
56
56
  // Map(1) { '<widget-UUID>' => { 'CustomSearchbar[10].searchQueryChanged': [] } }
@@ -112,7 +112,7 @@ var event = {
112
112
  uuid: subscriber["uuid"]
113
113
  };
114
114
  if ("action" in subscriber && subscriber.action !== undefined) {
115
- subscriber["action"](_objectSpread$A({}, objectToSend));
115
+ subscriber["action"](_objectSpread$B({}, objectToSend));
116
116
  }
117
117
  });
118
118
  }
@@ -2552,8 +2552,8 @@ var DashboardWrapper = function DashboardWrapper(_ref) {
2552
2552
  });
2553
2553
  };
2554
2554
 
2555
- function ownKeys$z(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2556
- function _objectSpread$z(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$z(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$z(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2555
+ function ownKeys$A(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2556
+ function _objectSpread$A(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$A(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$A(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2557
2557
  var DashboardThemeProvider = function DashboardThemeProvider(_ref) {
2558
2558
  var themeKey = _ref.themeKey,
2559
2559
  children = _ref.children;
@@ -2565,7 +2565,7 @@ var DashboardThemeProvider = function DashboardThemeProvider(_ref) {
2565
2565
  var dashboardTheme = themes[themeKey];
2566
2566
  var themeValue = dashboardTheme ? dashboardTheme[themeVariant] || null : null;
2567
2567
  if (!themeValue) return null;
2568
- return _objectSpread$z(_objectSpread$z({}, parentContext), {}, {
2568
+ return _objectSpread$A(_objectSpread$A({}, parentContext), {}, {
2569
2569
  currentTheme: themeValue,
2570
2570
  currentThemeKey: themeKey,
2571
2571
  theme: themeValue,
@@ -2583,8 +2583,8 @@ var DashboardThemeProvider = function DashboardThemeProvider(_ref) {
2583
2583
  });
2584
2584
  };
2585
2585
 
2586
- function ownKeys$y(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2587
- function _objectSpread$y(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$y(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$y(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2586
+ function ownKeys$z(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2587
+ function _objectSpread$z(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$z(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$z(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2588
2588
  var AppThemeScope = function AppThemeScope(_ref) {
2589
2589
  var children = _ref.children;
2590
2590
  var ctx = React.useContext(DashReact.ThemeContext);
@@ -2592,7 +2592,7 @@ var AppThemeScope = function AppThemeScope(_ref) {
2592
2592
  children: children
2593
2593
  });
2594
2594
  return /*#__PURE__*/jsxRuntime.jsx(DashReact.ThemeContext.Provider, {
2595
- value: _objectSpread$y(_objectSpread$y({}, ctx), {}, {
2595
+ value: _objectSpread$z(_objectSpread$z({}, ctx), {}, {
2596
2596
  currentTheme: ctx.appTheme,
2597
2597
  currentThemeKey: ctx.appThemeKey,
2598
2598
  theme: ctx.appTheme,
@@ -2704,8 +2704,8 @@ var LayoutContainer = function LayoutContainer(_ref) {
2704
2704
  });
2705
2705
  };
2706
2706
 
2707
- function ownKeys$x(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2708
- function _objectSpread$x(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$x(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$x(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2707
+ function ownKeys$y(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2708
+ function _objectSpread$y(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$y(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$y(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2709
2709
  function _createForOfIteratorHelper$a(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$a(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
2710
2710
  function _unsupportedIterableToArray$a(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$a(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$a(r, a) : void 0; } }
2711
2711
  function _arrayLikeToArray$a(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
@@ -2949,7 +2949,7 @@ function createLayoutFromTemplate(template) {
2949
2949
  try {
2950
2950
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
2951
2951
  var cell = _step.value;
2952
- grid[cell.key] = _objectSpread$x({
2952
+ grid[cell.key] = _objectSpread$y({
2953
2953
  component: null,
2954
2954
  hide: cell.hide || false
2955
2955
  }, cell.span ? {
@@ -8343,8 +8343,8 @@ var deepEqual = function deepEqual(a, b, opts) {
8343
8343
 
8344
8344
  var deepEqual$1 = /*@__PURE__*/getDefaultExportFromCjs(deepEqual);
8345
8345
 
8346
- function ownKeys$w(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
8347
- function _objectSpread$w(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$w(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$w(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8346
+ function ownKeys$x(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
8347
+ function _objectSpread$x(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$x(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$x(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8348
8348
  var PanelEditItem = function PanelEditItem(_ref) {
8349
8349
  var _ComponentManager$get;
8350
8350
  var workspace = _ref.workspace,
@@ -8370,35 +8370,6 @@ var PanelEditItem = function PanelEditItem(_ref) {
8370
8370
  var widgetConfig = itemSelected ? ComponentManager.config(itemSelected.component, itemSelected) : null;
8371
8371
  var providerRequirements = (widgetConfig === null || widgetConfig === void 0 ? void 0 : widgetConfig.providers) || [];
8372
8372
  var selectedProviders = (itemSelected === null || itemSelected === void 0 ? void 0 : itemSelected.selectedProviders) || {};
8373
- var notificationDefs = (widgetConfig === null || widgetConfig === void 0 ? void 0 : widgetConfig.notifications) || [];
8374
-
8375
- // Notification preferences for this widget instance
8376
- var _useState7 = React.useState({}),
8377
- _useState8 = _slicedToArray(_useState7, 2),
8378
- notifPrefs = _useState8[0],
8379
- setNotifPrefs = _useState8[1];
8380
- var widgetUuid = (itemSelected === null || itemSelected === void 0 ? void 0 : itemSelected.uuid) || (itemSelected === null || itemSelected === void 0 ? void 0 : itemSelected.uuidString);
8381
- React.useEffect(function () {
8382
- var _window$mainApi;
8383
- if (notificationDefs.length > 0 && widgetUuid && (_window$mainApi = window.mainApi) !== null && _window$mainApi !== void 0 && (_window$mainApi = _window$mainApi.notifications) !== null && _window$mainApi !== void 0 && _window$mainApi.getPreferences) {
8384
- window.mainApi.notifications.getPreferences().then(function (result) {
8385
- var _result$instances;
8386
- setNotifPrefs(((_result$instances = result.instances) === null || _result$instances === void 0 ? void 0 : _result$instances[widgetUuid]) || {});
8387
- });
8388
- }
8389
- }, [widgetUuid, notificationDefs.length]);
8390
- function handleNotifToggle(typeKey, value) {
8391
- var _window$mainApi2;
8392
- var updated = _objectSpread$w(_objectSpread$w({}, notifPrefs), {}, _defineProperty({}, typeKey, value));
8393
- setNotifPrefs(updated);
8394
- if ((_window$mainApi2 = window.mainApi) !== null && _window$mainApi2 !== void 0 && (_window$mainApi2 = _window$mainApi2.notifications) !== null && _window$mainApi2 !== void 0 && _window$mainApi2.setPreferences && widgetUuid) {
8395
- window.mainApi.notifications.setPreferences(widgetUuid, _defineProperty({}, typeKey, value));
8396
- }
8397
- }
8398
- function getNotifEnabled(typeKey, defaultEnabled) {
8399
- if (typeof notifPrefs[typeKey] === "boolean") return notifPrefs[typeKey];
8400
- return defaultEnabled;
8401
- }
8402
8373
  React.useEffect(function () {
8403
8374
  if (deepEqual$1(item, itemSelected) === false) {
8404
8375
  setItemSelected(function () {
@@ -8433,7 +8404,7 @@ var PanelEditItem = function PanelEditItem(_ref) {
8433
8404
  var uuid = newItem.uuid || newItem.uuidString;
8434
8405
  if (uuid) {
8435
8406
  workspaceTemp.selectedProviders = workspaceTemp.selectedProviders || {};
8436
- workspaceTemp.selectedProviders[uuid] = _objectSpread$w(_objectSpread$w({}, workspaceTemp.selectedProviders[uuid] || {}), {}, _defineProperty({}, providerType, providerId));
8407
+ workspaceTemp.selectedProviders[uuid] = _objectSpread$x(_objectSpread$x({}, workspaceTemp.selectedProviders[uuid] || {}), {}, _defineProperty({}, providerType, providerId));
8437
8408
  }
8438
8409
  onUpdate(newItem, workspaceTemp);
8439
8410
  forceUpdate();
@@ -8562,7 +8533,7 @@ var PanelEditItem = function PanelEditItem(_ref) {
8562
8533
  var _ref5 = _slicedToArray(_ref4, 2),
8563
8534
  name = _ref5[0],
8564
8535
  p = _ref5[1];
8565
- return _objectSpread$w({
8536
+ return _objectSpread$x({
8566
8537
  name: name
8567
8538
  }, p);
8568
8539
  });
@@ -8599,31 +8570,6 @@ var PanelEditItem = function PanelEditItem(_ref) {
8599
8570
  })]
8600
8571
  }, providerType);
8601
8572
  })]
8602
- }), notificationDefs.length > 0 && /*#__PURE__*/jsxRuntime.jsxs("div", {
8603
- className: "flex flex-col space-y-3",
8604
- children: [/*#__PURE__*/jsxRuntime.jsx(DashReact.SubHeading3, {
8605
- title: "Notifications",
8606
- padding: false
8607
- }), notificationDefs.map(function (notif) {
8608
- return /*#__PURE__*/jsxRuntime.jsxs("div", {
8609
- className: "flex flex-row items-center justify-between py-1",
8610
- children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
8611
- className: "flex flex-col",
8612
- children: [/*#__PURE__*/jsxRuntime.jsx("span", {
8613
- className: "text-sm",
8614
- children: notif.displayName
8615
- }), notif.description && /*#__PURE__*/jsxRuntime.jsx("span", {
8616
- className: "text-xs opacity-50",
8617
- children: notif.description
8618
- })]
8619
- }), /*#__PURE__*/jsxRuntime.jsx(DashReact.Switch, {
8620
- checked: getNotifEnabled(notif.key, notif.defaultEnabled),
8621
- onChange: function onChange(value) {
8622
- return handleNotifToggle(notif.key, value);
8623
- }
8624
- })]
8625
- }, notif.key);
8626
- })]
8627
8573
  })]
8628
8574
  });
8629
8575
  };
@@ -8632,8 +8578,8 @@ var _excluded$5 = ["rows", "cols"];
8632
8578
  function _createForOfIteratorHelper$9(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$9(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
8633
8579
  function _unsupportedIterableToArray$9(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$9(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$9(r, a) : void 0; } }
8634
8580
  function _arrayLikeToArray$9(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
8635
- function ownKeys$v(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
8636
- function _objectSpread$v(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$v(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$v(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8581
+ function ownKeys$w(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
8582
+ function _objectSpread$w(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$w(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$w(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8637
8583
  var defaultGrid = {
8638
8584
  rows: 1,
8639
8585
  cols: 1,
@@ -8654,7 +8600,7 @@ function GridEditor(_ref) {
8654
8600
  setGrid = _useState2[1];
8655
8601
  var addRow = function addRow() {
8656
8602
  var newRow = grid.rows;
8657
- var newGrid = _objectSpread$v(_objectSpread$v({}, grid), {}, {
8603
+ var newGrid = _objectSpread$w(_objectSpread$w({}, grid), {}, {
8658
8604
  rows: grid.rows + 1
8659
8605
  });
8660
8606
  for (var col = 0; col < grid.cols; col++) {
@@ -8669,7 +8615,7 @@ function GridEditor(_ref) {
8669
8615
  };
8670
8616
  var addColumn = function addColumn() {
8671
8617
  var newCol = grid.cols;
8672
- var newGrid = _objectSpread$v(_objectSpread$v({}, grid), {}, {
8618
+ var newGrid = _objectSpread$w(_objectSpread$w({}, grid), {}, {
8673
8619
  cols: grid.cols + 1
8674
8620
  });
8675
8621
  for (var row = 0; row < grid.rows; row++) {
@@ -8702,8 +8648,8 @@ function GridEditor(_ref) {
8702
8648
  });
8703
8649
  }
8704
8650
  if (grid[nextKey]) {
8705
- var newGrid = _objectSpread$v({}, grid);
8706
- newGrid[currentKey] = _objectSpread$v(_objectSpread$v({}, newGrid[currentKey]), {}, {
8651
+ var newGrid = _objectSpread$w({}, grid);
8652
+ newGrid[currentKey] = _objectSpread$w(_objectSpread$w({}, newGrid[currentKey]), {}, {
8707
8653
  colSpan: newGrid[currentKey].colSpan + 1
8708
8654
  });
8709
8655
  delete newGrid[nextKey];
@@ -8716,8 +8662,8 @@ function GridEditor(_ref) {
8716
8662
  var currentKey = "".concat(row, ".").concat(col);
8717
8663
  var belowKey = "".concat(row + 1, ".").concat(col);
8718
8664
  if (grid[belowKey]) {
8719
- var newGrid = _objectSpread$v({}, grid);
8720
- newGrid[currentKey] = _objectSpread$v(_objectSpread$v({}, newGrid[currentKey]), {}, {
8665
+ var newGrid = _objectSpread$w({}, grid);
8666
+ newGrid[currentKey] = _objectSpread$w(_objectSpread$w({}, newGrid[currentKey]), {}, {
8721
8667
  rowSpan: newGrid[currentKey].rowSpan + 1
8722
8668
  });
8723
8669
  delete newGrid[belowKey];
@@ -8734,7 +8680,7 @@ function GridEditor(_ref) {
8734
8680
  var splitCell = function splitCell(row, col) {
8735
8681
  var key = "".concat(row, ".").concat(col);
8736
8682
  var cell = grid[key];
8737
- var newGrid = _objectSpread$v({}, grid);
8683
+ var newGrid = _objectSpread$w({}, grid);
8738
8684
 
8739
8685
  // we have to check the colspan, and since the colspan is greater than 1
8740
8686
  // Only handle horizontal split if colSpan > 1
@@ -8750,13 +8696,13 @@ function GridEditor(_ref) {
8750
8696
  var oldKey = "".concat(row, ".").concat(c);
8751
8697
  var newKey = "".concat(row, ".").concat(c + 1);
8752
8698
  if (newGrid[oldKey]) {
8753
- newGrid[newKey] = _objectSpread$v({}, newGrid[oldKey]);
8699
+ newGrid[newKey] = _objectSpread$w({}, newGrid[oldKey]);
8754
8700
  delete newGrid[oldKey];
8755
8701
  }
8756
8702
  }
8757
8703
 
8758
8704
  // Update the original cell's colSpan
8759
- newGrid[key] = _objectSpread$v(_objectSpread$v({}, cell), {}, {
8705
+ newGrid[key] = _objectSpread$w(_objectSpread$w({}, cell), {}, {
8760
8706
  colSpan: cell.colSpan - 1
8761
8707
  });
8762
8708
 
@@ -8768,7 +8714,7 @@ function GridEditor(_ref) {
8768
8714
  };
8769
8715
  }
8770
8716
  if (cell.rowSpan > 1) {
8771
- newGrid[key] = _objectSpread$v(_objectSpread$v({}, newGrid[key]), {}, {
8717
+ newGrid[key] = _objectSpread$w(_objectSpread$w({}, newGrid[key]), {}, {
8772
8718
  rowSpan: cell.rowSpan - 1
8773
8719
  });
8774
8720
  newGrid["".concat(row + 1, ".").concat(col)] = {
@@ -8887,7 +8833,7 @@ function GridEditor(_ref) {
8887
8833
  var fromKey = "".concat(from.row, ".").concat(from.col);
8888
8834
  var toKey = "".concat(to.row, ".").concat(to.col);
8889
8835
  if (fromKey === toKey) return;
8890
- var newGrid = _objectSpread$v({}, grid);
8836
+ var newGrid = _objectSpread$w({}, grid);
8891
8837
 
8892
8838
  // Swap the cells
8893
8839
  var temp = newGrid[fromKey];
@@ -8913,7 +8859,7 @@ function GridEditor(_ref) {
8913
8859
  // console.log("Grid updated:", sequencedGrid);
8914
8860
  }
8915
8861
  function resetGridLayout() {
8916
- var newGrid = _objectSpread$v({}, defaultGrid);
8862
+ var newGrid = _objectSpread$w({}, defaultGrid);
8917
8863
  setGrid(newGrid);
8918
8864
  onUpdate(newGrid);
8919
8865
  }
@@ -9191,6 +9137,72 @@ var PanelEditItemGrid = function PanelEditItemGrid(_ref) {
9191
9137
  });
9192
9138
  };
9193
9139
 
9140
+ function ownKeys$v(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9141
+ function _objectSpread$v(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$v(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$v(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
9142
+ var PanelEditItemNotifications = function PanelEditItemNotifications(_ref) {
9143
+ var item = _ref.item;
9144
+ _ref.workspace;
9145
+ _ref.onUpdate;
9146
+ var widgetConfig = item ? ComponentManager.config(item.component, item) : null;
9147
+ var notificationDefs = (widgetConfig === null || widgetConfig === void 0 ? void 0 : widgetConfig.notifications) || [];
9148
+ var _useState = React.useState({}),
9149
+ _useState2 = _slicedToArray(_useState, 2),
9150
+ notifPrefs = _useState2[0],
9151
+ setNotifPrefs = _useState2[1];
9152
+ var widgetUuid = (item === null || item === void 0 ? void 0 : item.uuid) || (item === null || item === void 0 ? void 0 : item.uuidString);
9153
+ React.useEffect(function () {
9154
+ var _window$mainApi;
9155
+ if (notificationDefs.length > 0 && widgetUuid && (_window$mainApi = window.mainApi) !== null && _window$mainApi !== void 0 && (_window$mainApi = _window$mainApi.notifications) !== null && _window$mainApi !== void 0 && _window$mainApi.getPreferences) {
9156
+ window.mainApi.notifications.getPreferences().then(function (result) {
9157
+ var _result$instances;
9158
+ setNotifPrefs(((_result$instances = result.instances) === null || _result$instances === void 0 ? void 0 : _result$instances[widgetUuid]) || {});
9159
+ });
9160
+ }
9161
+ }, [widgetUuid, notificationDefs.length]);
9162
+ function handleNotifToggle(typeKey, value) {
9163
+ var _window$mainApi2;
9164
+ var updated = _objectSpread$v(_objectSpread$v({}, notifPrefs), {}, _defineProperty({}, typeKey, value));
9165
+ setNotifPrefs(updated);
9166
+ if ((_window$mainApi2 = window.mainApi) !== null && _window$mainApi2 !== void 0 && (_window$mainApi2 = _window$mainApi2.notifications) !== null && _window$mainApi2 !== void 0 && _window$mainApi2.setPreferences && widgetUuid) {
9167
+ window.mainApi.notifications.setPreferences(widgetUuid, _defineProperty({}, typeKey, value));
9168
+ }
9169
+ }
9170
+ function getNotifEnabled(typeKey, defaultEnabled) {
9171
+ if (typeof notifPrefs[typeKey] === "boolean") return notifPrefs[typeKey];
9172
+ return defaultEnabled;
9173
+ }
9174
+ if (!item || notificationDefs.length === 0) return null;
9175
+ return /*#__PURE__*/jsxRuntime.jsx("div", {
9176
+ className: "flex flex-col flex-1 min-h-0 overflow-y-auto p-6 space-y-6",
9177
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
9178
+ className: "flex flex-col space-y-3",
9179
+ children: [/*#__PURE__*/jsxRuntime.jsx(DashReact.SubHeading3, {
9180
+ title: "Notifications",
9181
+ padding: false
9182
+ }), notificationDefs.map(function (notif) {
9183
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
9184
+ className: "flex flex-row items-center justify-between py-1",
9185
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
9186
+ className: "flex flex-col",
9187
+ children: [/*#__PURE__*/jsxRuntime.jsx("span", {
9188
+ className: "text-sm",
9189
+ children: notif.displayName
9190
+ }), notif.description && /*#__PURE__*/jsxRuntime.jsx("span", {
9191
+ className: "text-xs opacity-50",
9192
+ children: notif.description
9193
+ })]
9194
+ }), /*#__PURE__*/jsxRuntime.jsx(DashReact.Switch, {
9195
+ checked: getNotifEnabled(notif.key, notif.defaultEnabled),
9196
+ onChange: function onChange(value) {
9197
+ return handleNotifToggle(notif.key, value);
9198
+ }
9199
+ })]
9200
+ }, notif.key);
9201
+ })]
9202
+ })
9203
+ });
9204
+ };
9205
+
9194
9206
  var PanelCode = function PanelCode(_ref) {
9195
9207
  var workspace = _ref.workspace,
9196
9208
  onUpdate = _ref.onUpdate,
@@ -9524,6 +9536,9 @@ var PanelEditItemHandlers = function PanelEditItemHandlers(_ref) {
9524
9536
  };
9525
9537
 
9526
9538
  var getSections = function getSections(item) {
9539
+ var _widgetConfig$notific;
9540
+ var widgetConfig = item ? ComponentManager.config(item.component, item) : null;
9541
+ var hasNotifications = (widgetConfig === null || widgetConfig === void 0 || (_widgetConfig$notific = widgetConfig.notifications) === null || _widgetConfig$notific === void 0 ? void 0 : _widgetConfig$notific.length) > 0;
9527
9542
  return [{
9528
9543
  key: "edit",
9529
9544
  label: "Settings",
@@ -9532,6 +9547,10 @@ var getSections = function getSections(item) {
9532
9547
  key: "grid_layout",
9533
9548
  label: "Layout",
9534
9549
  icon: "square"
9550
+ }] : []), _toConsumableArray(hasNotifications ? [{
9551
+ key: "notifications",
9552
+ label: "Notifications",
9553
+ icon: "bell"
9535
9554
  }] : []), _toConsumableArray((item === null || item === void 0 ? void 0 : item.workspace) !== "layout" ? [{
9536
9555
  key: "handlers",
9537
9556
  label: "Listeners",
@@ -9646,6 +9665,10 @@ var LayoutBuilderConfigModal = function LayoutBuilderConfigModal(_ref) {
9646
9665
  item: itemSelected,
9647
9666
  onUpdate: handleEditChange,
9648
9667
  workspace: workspaceSelected
9668
+ }), activeSection === "notifications" && /*#__PURE__*/jsxRuntime.jsx(PanelEditItemNotifications, {
9669
+ item: itemSelected,
9670
+ onUpdate: handleEditChange,
9671
+ workspace: workspaceSelected
9649
9672
  }), activeSection === "handlers" && /*#__PURE__*/jsxRuntime.jsx(PanelEditItemHandlers, {
9650
9673
  item: itemSelected,
9651
9674
  onUpdate: handleEditChange,
@@ -42850,6 +42873,7 @@ exports.PROVIDER_SAVE_ERROR = PROVIDER_SAVE_ERROR;
42850
42873
  exports.PanelCode = PanelCode;
42851
42874
  exports.PanelEditItem = PanelEditItem;
42852
42875
  exports.PanelEditItemHandlers = PanelEditItemHandlers;
42876
+ exports.PanelEditItemNotifications = PanelEditItemNotifications;
42853
42877
  exports.ProviderContext = ProviderContext;
42854
42878
  exports.ProviderErrorBoundary = ProviderErrorBoundary;
42855
42879
  exports.ProviderForm = ProviderForm;