@trops/dash-core 0.1.509 → 0.1.511

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
@@ -52,8 +52,8 @@ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
52
52
  var jsxRuntime__namespace = /*#__PURE__*/_interopNamespaceDefault(jsxRuntime);
53
53
  var ReactDOM__namespace = /*#__PURE__*/_interopNamespaceDefault(ReactDOM);
54
54
 
55
- function ownKeys$$(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; }
56
- function _objectSpread$$(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$$(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$$(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
55
+ function ownKeys$10(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; }
56
+ function _objectSpread$10(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$10(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$10(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
57
57
  var event = {
58
58
  list: new Map(),
59
59
  // Map(1) { '<widget-UUID>' => { 'CustomSearchbar[10].searchQueryChanged': [] } }
@@ -115,7 +115,7 @@ var event = {
115
115
  uuid: subscriber["uuid"]
116
116
  };
117
117
  if ("action" in subscriber && subscriber.action !== undefined) {
118
- subscriber["action"](_objectSpread$$({}, objectToSend));
118
+ subscriber["action"](_objectSpread$10({}, objectToSend));
119
119
  }
120
120
  });
121
121
  }
@@ -2868,8 +2868,27 @@ var AppWrapper = function AppWrapper(_ref2) {
2868
2868
  });
2869
2869
  };
2870
2870
 
2871
+ /**
2872
+ * WidgetContext
2873
+ *
2874
+ * Per-widget React context. WidgetFactory builds the value at mount
2875
+ * time and re-builds when the widget unmounts/remounts.
2876
+ *
2877
+ * Shape:
2878
+ * - widgetData: the widget's instance data (uuid, params, providers,
2879
+ * notifications, etc.) — read by hooks like useMcpProvider,
2880
+ * useScheduler, useNotifications.
2881
+ * - api: a per-mount proxy of `window.mainApi` produced by
2882
+ * `makeBoundApi(window.mainApi, mountToken)`. Every gated method
2883
+ * on this proxy auto-injects the mount token; widgets that use
2884
+ * `props.api.data.saveData(...)` get gated automatically. Null
2885
+ * during the brief window before the framework's mount-token IPC
2886
+ * resolves; consumers should fall back to `window.mainApi` only
2887
+ * for explicitly non-gated reads.
2888
+ */
2871
2889
  var WidgetContext = /*#__PURE__*/React.createContext({
2872
- widgetData: null
2890
+ widgetData: null,
2891
+ api: null
2873
2892
  });
2874
2893
 
2875
2894
  var EMPTY_PROVIDERS = {};
@@ -2933,8 +2952,8 @@ var DashboardWrapper = function DashboardWrapper(_ref) {
2933
2952
  });
2934
2953
  };
2935
2954
 
2936
- function ownKeys$_(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; }
2937
- function _objectSpread$_(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$_(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$_(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2955
+ function ownKeys$$(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; }
2956
+ function _objectSpread$$(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$$(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$$(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2938
2957
  function ThemeBroadcast(_ref) {
2939
2958
  var ctx = _ref.ctx;
2940
2959
  React.useEffect(function () {
@@ -2967,7 +2986,7 @@ var DashboardThemeProvider = function DashboardThemeProvider(_ref2) {
2967
2986
  var dashboardTheme = themes[themeKey];
2968
2987
  var themeValue = dashboardTheme ? dashboardTheme[themeVariant] || null : null;
2969
2988
  if (!themeValue) return null;
2970
- return _objectSpread$_(_objectSpread$_({}, parentContext), {}, {
2989
+ return _objectSpread$$(_objectSpread$$({}, parentContext), {}, {
2971
2990
  currentTheme: themeValue,
2972
2991
  currentThemeKey: themeKey,
2973
2992
  theme: themeValue,
@@ -2994,8 +3013,8 @@ var DashboardThemeProvider = function DashboardThemeProvider(_ref2) {
2994
3013
  });
2995
3014
  };
2996
3015
 
2997
- 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; }
2998
- 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; }
3016
+ function ownKeys$_(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; }
3017
+ function _objectSpread$_(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$_(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$_(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2999
3018
  var AppThemeScope = function AppThemeScope(_ref) {
3000
3019
  var children = _ref.children;
3001
3020
  var ctx = React.useContext(DashReact.ThemeContext);
@@ -3003,7 +3022,7 @@ var AppThemeScope = function AppThemeScope(_ref) {
3003
3022
  children: children
3004
3023
  });
3005
3024
  return /*#__PURE__*/jsxRuntime.jsx(DashReact.ThemeContext.Provider, {
3006
- value: _objectSpread$Z(_objectSpread$Z({}, ctx), {}, {
3025
+ value: _objectSpread$_(_objectSpread$_({}, ctx), {}, {
3007
3026
  currentTheme: ctx.appTheme,
3008
3027
  currentThemeKey: ctx.appThemeKey,
3009
3028
  theme: ctx.appTheme,
@@ -3115,8 +3134,8 @@ var LayoutContainer = function LayoutContainer(_ref) {
3115
3134
  });
3116
3135
  };
3117
3136
 
3118
- 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; }
3119
- 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; }
3137
+ 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; }
3138
+ 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; }
3120
3139
  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; } } }; }
3121
3140
  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; } }
3122
3141
  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; }
@@ -3398,7 +3417,7 @@ function createLayoutFromTemplate(template) {
3398
3417
  try {
3399
3418
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
3400
3419
  var cell = _step.value;
3401
- grid[cell.key] = _objectSpread$Y({
3420
+ grid[cell.key] = _objectSpread$Z({
3402
3421
  component: null,
3403
3422
  hide: cell.hide || false
3404
3423
  }, cell.span ? {
@@ -4577,8 +4596,8 @@ var DashboardInstallOptionsModal = function DashboardInstallOptionsModal(_ref) {
4577
4596
  function _createForOfIteratorHelper$z(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$z(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; } } }; }
4578
4597
  function _unsupportedIterableToArray$z(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$z(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$z(r, a) : void 0; } }
4579
4598
  function _arrayLikeToArray$z(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; }
4580
- 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; }
4581
- 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; }
4599
+ 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; }
4600
+ 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; }
4582
4601
  var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
4583
4602
  var dashboardPackage = _ref.dashboardPackage,
4584
4603
  appId = _ref.appId,
@@ -4811,7 +4830,7 @@ var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
4811
4830
  setProgressWidgets(function (prev) {
4812
4831
  var next = _toConsumableArray(prev);
4813
4832
  if (data.index >= 0 && data.index < next.length) {
4814
- next[data.index] = _objectSpread$X(_objectSpread$X({}, next[data.index]), {}, {
4833
+ next[data.index] = _objectSpread$Y(_objectSpread$Y({}, next[data.index]), {}, {
4815
4834
  status: data.status,
4816
4835
  error: data.error || null
4817
4836
  });
@@ -4907,7 +4926,7 @@ var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
4907
4926
  var raw = preview === null || preview === void 0 ? void 0 : preview.compatibility;
4908
4927
  if (!raw) return raw;
4909
4928
  var cMap = ComponentManager.componentMap();
4910
- var augWidgets = _objectSpread$X({}, raw.widgets);
4929
+ var augWidgets = _objectSpread$Y({}, raw.widgets);
4911
4930
  var fixedCount = 0;
4912
4931
  var _loop = function _loop() {
4913
4932
  var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
@@ -8342,8 +8361,8 @@ var WizardCustomizeStep = function WizardCustomizeStep(_ref) {
8342
8361
  });
8343
8362
  };
8344
8363
 
8345
- 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; }
8346
- 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; }
8364
+ 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; }
8365
+ 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; }
8347
8366
  var TOTAL_STEPS = 5; // Steps 0-4: Discover, Name, Folder, Theme, Review
8348
8367
 
8349
8368
  var initialState = {
@@ -8369,20 +8388,20 @@ var initialState = {
8369
8388
  function wizardReducer(state, action) {
8370
8389
  switch (action.type) {
8371
8390
  case "SET_STEP":
8372
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8391
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8373
8392
  step: action.payload
8374
8393
  });
8375
8394
  case "SET_FILTERS":
8376
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8377
- filters: _objectSpread$W(_objectSpread$W({}, state.filters), action.payload)
8395
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8396
+ filters: _objectSpread$X(_objectSpread$X({}, state.filters), action.payload)
8378
8397
  });
8379
8398
  case "TOGGLE_FILTER_CATEGORY":
8380
8399
  {
8381
8400
  var categories = state.filters.categories.includes(action.payload) ? state.filters.categories.filter(function (c) {
8382
8401
  return c !== action.payload;
8383
8402
  }) : [].concat(_toConsumableArray(state.filters.categories), [action.payload]);
8384
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8385
- filters: _objectSpread$W(_objectSpread$W({}, state.filters), {}, {
8403
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8404
+ filters: _objectSpread$X(_objectSpread$X({}, state.filters), {}, {
8386
8405
  categories: categories
8387
8406
  })
8388
8407
  });
@@ -8392,15 +8411,15 @@ function wizardReducer(state, action) {
8392
8411
  var providers = state.filters.providers.includes(action.payload) ? state.filters.providers.filter(function (p) {
8393
8412
  return p !== action.payload;
8394
8413
  }) : [].concat(_toConsumableArray(state.filters.providers), [action.payload]);
8395
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8396
- filters: _objectSpread$W(_objectSpread$W({}, state.filters), {}, {
8414
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8415
+ filters: _objectSpread$X(_objectSpread$X({}, state.filters), {}, {
8397
8416
  providers: providers
8398
8417
  })
8399
8418
  });
8400
8419
  }
8401
8420
  case "SET_SEARCH_QUERY":
8402
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8403
- filters: _objectSpread$W(_objectSpread$W({}, state.filters), {}, {
8421
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8422
+ filters: _objectSpread$X(_objectSpread$X({}, state.filters), {}, {
8404
8423
  query: action.payload
8405
8424
  })
8406
8425
  });
@@ -8410,7 +8429,7 @@ function wizardReducer(state, action) {
8410
8429
  var widgetOrder = action.payload.map(function (w) {
8411
8430
  return w.name || w.key;
8412
8431
  });
8413
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8432
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8414
8433
  selectedWidgets: action.payload,
8415
8434
  layout: {
8416
8435
  templateKey: templateKey,
@@ -8430,7 +8449,7 @@ function wizardReducer(state, action) {
8430
8449
  var toggleWidgetOrder = selectedWidgets.map(function (w) {
8431
8450
  return w.name || w.key;
8432
8451
  });
8433
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8452
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8434
8453
  selectedWidgets: selectedWidgets,
8435
8454
  layout: {
8436
8455
  templateKey: toggleTemplateKey,
@@ -8439,29 +8458,29 @@ function wizardReducer(state, action) {
8439
8458
  });
8440
8459
  }
8441
8460
  case "SET_SELECTED_DASHBOARD":
8442
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8461
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8443
8462
  selectedDashboard: action.payload
8444
8463
  });
8445
8464
  case "SET_PATH":
8446
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8465
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8447
8466
  path: action.payload
8448
8467
  });
8449
8468
  case "SET_LAYOUT":
8450
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8469
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8451
8470
  layout: action.payload
8452
8471
  });
8453
8472
  case "REORDER_WIDGETS":
8454
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8455
- layout: _objectSpread$W(_objectSpread$W({}, state.layout), {}, {
8473
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8474
+ layout: _objectSpread$X(_objectSpread$X({}, state.layout), {}, {
8456
8475
  widgetOrder: action.payload
8457
8476
  })
8458
8477
  });
8459
8478
  case "SET_CUSTOMIZATION":
8460
- return _objectSpread$W(_objectSpread$W({}, state), {}, {
8461
- customization: _objectSpread$W(_objectSpread$W({}, state.customization), action.payload)
8479
+ return _objectSpread$X(_objectSpread$X({}, state), {}, {
8480
+ customization: _objectSpread$X(_objectSpread$X({}, state.customization), action.payload)
8462
8481
  });
8463
8482
  case "RESET":
8464
- return _objectSpread$W({}, initialState);
8483
+ return _objectSpread$X({}, initialState);
8465
8484
  default:
8466
8485
  return state;
8467
8486
  }
@@ -9241,8 +9260,8 @@ var _excluded$6 = ["rows", "cols"];
9241
9260
  function _createForOfIteratorHelper$w(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$w(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; } } }; }
9242
9261
  function _unsupportedIterableToArray$w(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$w(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$w(r, a) : void 0; } }
9243
9262
  function _arrayLikeToArray$w(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; }
9244
- 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; }
9245
- 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; }
9263
+ 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; }
9264
+ 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; }
9246
9265
  var defaultGrid = {
9247
9266
  rows: 1,
9248
9267
  cols: 1,
@@ -9263,7 +9282,7 @@ function GridEditor(_ref) {
9263
9282
  setGrid = _useState2[1];
9264
9283
  var addRow = function addRow() {
9265
9284
  var newRow = grid.rows;
9266
- var newGrid = _objectSpread$V(_objectSpread$V({}, grid), {}, {
9285
+ var newGrid = _objectSpread$W(_objectSpread$W({}, grid), {}, {
9267
9286
  rows: grid.rows + 1
9268
9287
  });
9269
9288
  for (var col = 0; col < grid.cols; col++) {
@@ -9278,7 +9297,7 @@ function GridEditor(_ref) {
9278
9297
  };
9279
9298
  var addColumn = function addColumn() {
9280
9299
  var newCol = grid.cols;
9281
- var newGrid = _objectSpread$V(_objectSpread$V({}, grid), {}, {
9300
+ var newGrid = _objectSpread$W(_objectSpread$W({}, grid), {}, {
9282
9301
  cols: grid.cols + 1
9283
9302
  });
9284
9303
  for (var row = 0; row < grid.rows; row++) {
@@ -9311,8 +9330,8 @@ function GridEditor(_ref) {
9311
9330
  });
9312
9331
  }
9313
9332
  if (grid[nextKey]) {
9314
- var newGrid = _objectSpread$V({}, grid);
9315
- newGrid[currentKey] = _objectSpread$V(_objectSpread$V({}, newGrid[currentKey]), {}, {
9333
+ var newGrid = _objectSpread$W({}, grid);
9334
+ newGrid[currentKey] = _objectSpread$W(_objectSpread$W({}, newGrid[currentKey]), {}, {
9316
9335
  colSpan: newGrid[currentKey].colSpan + 1
9317
9336
  });
9318
9337
  delete newGrid[nextKey];
@@ -9325,8 +9344,8 @@ function GridEditor(_ref) {
9325
9344
  var currentKey = "".concat(row, ".").concat(col);
9326
9345
  var belowKey = "".concat(row + 1, ".").concat(col);
9327
9346
  if (grid[belowKey]) {
9328
- var newGrid = _objectSpread$V({}, grid);
9329
- newGrid[currentKey] = _objectSpread$V(_objectSpread$V({}, newGrid[currentKey]), {}, {
9347
+ var newGrid = _objectSpread$W({}, grid);
9348
+ newGrid[currentKey] = _objectSpread$W(_objectSpread$W({}, newGrid[currentKey]), {}, {
9330
9349
  rowSpan: newGrid[currentKey].rowSpan + 1
9331
9350
  });
9332
9351
  delete newGrid[belowKey];
@@ -9343,7 +9362,7 @@ function GridEditor(_ref) {
9343
9362
  var splitCell = function splitCell(row, col) {
9344
9363
  var key = "".concat(row, ".").concat(col);
9345
9364
  var cell = grid[key];
9346
- var newGrid = _objectSpread$V({}, grid);
9365
+ var newGrid = _objectSpread$W({}, grid);
9347
9366
 
9348
9367
  // we have to check the colspan, and since the colspan is greater than 1
9349
9368
  // Only handle horizontal split if colSpan > 1
@@ -9359,13 +9378,13 @@ function GridEditor(_ref) {
9359
9378
  var oldKey = "".concat(row, ".").concat(c);
9360
9379
  var newKey = "".concat(row, ".").concat(c + 1);
9361
9380
  if (newGrid[oldKey]) {
9362
- newGrid[newKey] = _objectSpread$V({}, newGrid[oldKey]);
9381
+ newGrid[newKey] = _objectSpread$W({}, newGrid[oldKey]);
9363
9382
  delete newGrid[oldKey];
9364
9383
  }
9365
9384
  }
9366
9385
 
9367
9386
  // Update the original cell's colSpan
9368
- newGrid[key] = _objectSpread$V(_objectSpread$V({}, cell), {}, {
9387
+ newGrid[key] = _objectSpread$W(_objectSpread$W({}, cell), {}, {
9369
9388
  colSpan: cell.colSpan - 1
9370
9389
  });
9371
9390
 
@@ -9377,7 +9396,7 @@ function GridEditor(_ref) {
9377
9396
  };
9378
9397
  }
9379
9398
  if (cell.rowSpan > 1) {
9380
- newGrid[key] = _objectSpread$V(_objectSpread$V({}, newGrid[key]), {}, {
9399
+ newGrid[key] = _objectSpread$W(_objectSpread$W({}, newGrid[key]), {}, {
9381
9400
  rowSpan: cell.rowSpan - 1
9382
9401
  });
9383
9402
  newGrid["".concat(row + 1, ".").concat(col)] = {
@@ -9496,7 +9515,7 @@ function GridEditor(_ref) {
9496
9515
  var fromKey = "".concat(from.row, ".").concat(from.col);
9497
9516
  var toKey = "".concat(to.row, ".").concat(to.col);
9498
9517
  if (fromKey === toKey) return;
9499
- var newGrid = _objectSpread$V({}, grid);
9518
+ var newGrid = _objectSpread$W({}, grid);
9500
9519
 
9501
9520
  // Swap the cells
9502
9521
  var temp = newGrid[fromKey];
@@ -9522,7 +9541,7 @@ function GridEditor(_ref) {
9522
9541
  // console.log("Grid updated:", sequencedGrid);
9523
9542
  }
9524
9543
  function resetGridLayout() {
9525
- var newGrid = _objectSpread$V({}, defaultGrid);
9544
+ var newGrid = _objectSpread$W({}, defaultGrid);
9526
9545
  setGrid(newGrid);
9527
9546
  onUpdate(newGrid);
9528
9547
  }
@@ -9800,8 +9819,8 @@ var PanelEditItemGrid = function PanelEditItemGrid(_ref) {
9800
9819
  });
9801
9820
  };
9802
9821
 
9803
- function ownKeys$U(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; }
9804
- function _objectSpread$U(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$U(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$U(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
9822
+ 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; }
9823
+ 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; }
9805
9824
  var PanelEditItemNotifications = function PanelEditItemNotifications(_ref) {
9806
9825
  var item = _ref.item;
9807
9826
  _ref.workspace;
@@ -9824,7 +9843,7 @@ var PanelEditItemNotifications = function PanelEditItemNotifications(_ref) {
9824
9843
  }, [widgetUuid, notificationDefs.length]);
9825
9844
  function handleNotifToggle(typeKey, value) {
9826
9845
  var _window$mainApi2;
9827
- var updated = _objectSpread$U(_objectSpread$U({}, notifPrefs), {}, _defineProperty({}, typeKey, value));
9846
+ var updated = _objectSpread$V(_objectSpread$V({}, notifPrefs), {}, _defineProperty({}, typeKey, value));
9828
9847
  setNotifPrefs(updated);
9829
9848
  if ((_window$mainApi2 = window.mainApi) !== null && _window$mainApi2 !== void 0 && (_window$mainApi2 = _window$mainApi2.notifications) !== null && _window$mainApi2 !== void 0 && _window$mainApi2.setPreferences && widgetUuid) {
9830
9849
  window.mainApi.notifications.setPreferences(widgetUuid, _defineProperty({}, typeKey, value));
@@ -9869,8 +9888,8 @@ var PanelEditItemNotifications = function PanelEditItemNotifications(_ref) {
9869
9888
  function _createForOfIteratorHelper$v(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$v(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; } } }; }
9870
9889
  function _unsupportedIterableToArray$v(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$v(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$v(r, a) : void 0; } }
9871
9890
  function _arrayLikeToArray$v(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; }
9872
- function ownKeys$T(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; }
9873
- function _objectSpread$T(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$T(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$T(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
9891
+ function ownKeys$U(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; }
9892
+ function _objectSpread$U(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$U(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$U(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
9874
9893
  var DAYS = [{
9875
9894
  key: "mon",
9876
9895
  label: "Mon"
@@ -9971,7 +9990,7 @@ function TaskScheduleEditor(_ref) {
9971
9990
  var _window$mainApi;
9972
9991
  var overrides = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
9973
9992
  if (!((_window$mainApi = window.mainApi) !== null && _window$mainApi !== void 0 && (_window$mainApi = _window$mainApi.scheduler) !== null && _window$mainApi !== void 0 && _window$mainApi.registerTask)) return;
9974
- var payload = _objectSpread$T({
9993
+ var payload = _objectSpread$U({
9975
9994
  widgetId: widgetId,
9976
9995
  widgetName: widgetName,
9977
9996
  workspaceId: workspaceId || "",
@@ -10246,8 +10265,8 @@ var PanelEditItemSchedule = function PanelEditItemSchedule(_ref2) {
10246
10265
  });
10247
10266
  };
10248
10267
 
10249
- function ownKeys$S(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; }
10250
- function _objectSpread$S(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$S(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$S(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10268
+ function ownKeys$T(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; }
10269
+ function _objectSpread$T(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$T(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$T(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10251
10270
  var DERIVED_FIELDS = ["widgetConfig",
10252
10271
  // biggest offender — full component definition blob
10253
10272
  "uuid", "dashboardId", "parentWorkspaceName", "componentName", "siblingCount", "hasChildren", "canHaveChildren", "events",
@@ -10311,7 +10330,7 @@ var PanelCode = function PanelCode(_ref) {
10311
10330
  // expects. LayoutModel re-derives these on reload, but losing
10312
10331
  // them between render cycles can cause flashes of "unknown
10313
10332
  // widget" state.
10314
- var merged = _objectSpread$S({}, itemSelected);
10333
+ var merged = _objectSpread$T({}, itemSelected);
10315
10334
  for (var _i2 = 0, _Object$keys = Object.keys(edited); _i2 < _Object$keys.length; _i2++) {
10316
10335
  var k = _Object$keys[_i2];
10317
10336
  merged[k] = edited[k];
@@ -10767,8 +10786,8 @@ function getAllProviderBindings(_ref3) {
10767
10786
  return bindings;
10768
10787
  }
10769
10788
 
10770
- function ownKeys$R(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; }
10771
- function _objectSpread$R(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$R(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$R(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10789
+ function ownKeys$S(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; }
10790
+ function _objectSpread$S(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$S(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$S(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10772
10791
  function _createForOfIteratorHelper$t(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$t(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; } } }; }
10773
10792
  function _unsupportedIterableToArray$t(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$t(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$t(r, a) : void 0; } }
10774
10793
  function _arrayLikeToArray$t(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; }
@@ -11017,13 +11036,13 @@ function getOrphanedListeners(workspace, getWidgetConfig) {
11017
11036
  // missing. Preserves the user's ability to see whether a
11018
11037
  // rename happened vs. a delete.
11019
11038
  var fallback = byItemId.get(String(w.sourceItemId));
11020
- orphans.push(_objectSpread$R(_objectSpread$R({}, w), {}, {
11039
+ orphans.push(_objectSpread$S(_objectSpread$S({}, w), {}, {
11021
11040
  reason: fallback ? "source-component-mismatch" : "source-missing"
11022
11041
  }));
11023
11042
  continue;
11024
11043
  }
11025
11044
  if (!src.events.includes(w.eventName)) {
11026
- orphans.push(_objectSpread$R(_objectSpread$R({}, w), {}, {
11045
+ orphans.push(_objectSpread$S(_objectSpread$S({}, w), {}, {
11027
11046
  reason: "event-not-emitted"
11028
11047
  }));
11029
11048
  continue;
@@ -11031,7 +11050,7 @@ function getOrphanedListeners(workspace, getWidgetConfig) {
11031
11050
  var receiverKey = "".concat(w.receiverComponent, "|").concat(w.receiverItemId);
11032
11051
  var receiver = byCompositeKey.get(receiverKey);
11033
11052
  if (receiver && !receiver.eventHandlers.includes(w.handlerName)) {
11034
- orphans.push(_objectSpread$R(_objectSpread$R({}, w), {}, {
11053
+ orphans.push(_objectSpread$S(_objectSpread$S({}, w), {}, {
11035
11054
  reason: "handler-not-declared"
11036
11055
  }));
11037
11056
  }
@@ -11241,29 +11260,29 @@ function applyWiringChanges(workspace, _ref) {
11241
11260
  var change = id != null ? byReceiver.get(String(id)) : null;
11242
11261
  if (change) {
11243
11262
  var newListeners = applyToItem(item.listeners || {}, change);
11244
- next = _objectSpread$R(_objectSpread$R({}, next), {}, {
11263
+ next = _objectSpread$S(_objectSpread$S({}, next), {}, {
11245
11264
  listeners: newListeners
11246
11265
  });
11247
11266
  }
11248
11267
  if (Array.isArray(next.items)) {
11249
- next = _objectSpread$R(_objectSpread$R({}, next), {}, {
11268
+ next = _objectSpread$S(_objectSpread$S({}, next), {}, {
11250
11269
  items: cloneList(next.items)
11251
11270
  });
11252
11271
  }
11253
11272
  if (Array.isArray(next.layout)) {
11254
- next = _objectSpread$R(_objectSpread$R({}, next), {}, {
11273
+ next = _objectSpread$S(_objectSpread$S({}, next), {}, {
11255
11274
  layout: cloneList(next.layout)
11256
11275
  });
11257
11276
  }
11258
11277
  return next;
11259
11278
  };
11260
- var updatedWs = _objectSpread$R({}, workspace);
11279
+ var updatedWs = _objectSpread$S({}, workspace);
11261
11280
  if (Array.isArray(workspace.layout)) {
11262
11281
  updatedWs.layout = cloneList(workspace.layout);
11263
11282
  }
11264
11283
  if (Array.isArray(workspace.pages)) {
11265
11284
  updatedWs.pages = workspace.pages.map(function (page) {
11266
- return _objectSpread$R(_objectSpread$R({}, page), {}, {
11285
+ return _objectSpread$S(_objectSpread$S({}, page), {}, {
11267
11286
  layout: cloneList(page.layout)
11268
11287
  });
11269
11288
  });
@@ -11639,8 +11658,8 @@ var getUserConfigurableProviders = function getUserConfigurableProviders(provide
11639
11658
  });
11640
11659
  };
11641
11660
 
11642
- function ownKeys$Q(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; }
11643
- function _objectSpread$Q(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$Q(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$Q(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11661
+ function ownKeys$R(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; }
11662
+ function _objectSpread$R(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$R(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$R(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11644
11663
  var PanelEditItemProviders = function PanelEditItemProviders(_ref) {
11645
11664
  var workspace = _ref.workspace,
11646
11665
  onUpdate = _ref.onUpdate,
@@ -11672,7 +11691,7 @@ var PanelEditItemProviders = function PanelEditItemProviders(_ref) {
11672
11691
  var selectedProviders = itemSelected.selectedProviders || {};
11673
11692
  function handleProviderChange(providerType, providerName) {
11674
11693
  var updatedItem = DashReact.deepCopy(itemSelected);
11675
- var nextProviders = _objectSpread$Q({}, updatedItem.selectedProviders || {});
11694
+ var nextProviders = _objectSpread$R({}, updatedItem.selectedProviders || {});
11676
11695
  if (providerName) {
11677
11696
  nextProviders[providerType] = providerName;
11678
11697
  } else {
@@ -11693,8 +11712,8 @@ var PanelEditItemProviders = function PanelEditItemProviders(_ref) {
11693
11712
  var widgetId = updatedItem.uuidString || updatedItem.uuid || updatedItem.id;
11694
11713
  if (widgetId != null) {
11695
11714
  var wsKey = String(widgetId);
11696
- var nextSelectedProviders = _objectSpread$Q({}, updatedWorkspace.selectedProviders || {});
11697
- var prevForWidget = nextSelectedProviders[wsKey] ? _objectSpread$Q({}, nextSelectedProviders[wsKey]) : {};
11715
+ var nextSelectedProviders = _objectSpread$R({}, updatedWorkspace.selectedProviders || {});
11716
+ var prevForWidget = nextSelectedProviders[wsKey] ? _objectSpread$R({}, nextSelectedProviders[wsKey]) : {};
11698
11717
  if (providerName) {
11699
11718
  prevForWidget[providerType] = providerName;
11700
11719
  } else {
@@ -11739,7 +11758,7 @@ var PanelEditItemProviders = function PanelEditItemProviders(_ref) {
11739
11758
  var _ref5 = _slicedToArray(_ref4, 2),
11740
11759
  name = _ref5[0],
11741
11760
  p = _ref5[1];
11742
- return _objectSpread$Q({
11761
+ return _objectSpread$R({
11743
11762
  name: name
11744
11763
  }, p);
11745
11764
  });
@@ -13490,8 +13509,8 @@ var WidgetIcon = function WidgetIcon(_ref) {
13490
13509
  });
13491
13510
  };
13492
13511
 
13493
- function ownKeys$P(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; }
13494
- function _objectSpread$P(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$P(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$P(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13512
+ function ownKeys$Q(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; }
13513
+ function _objectSpread$Q(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$Q(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$Q(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13495
13514
  var ProviderForm = function ProviderForm(_ref) {
13496
13515
  var credentialSchema = _ref.credentialSchema,
13497
13516
  _ref$initialValues = _ref.initialValues,
@@ -13536,14 +13555,14 @@ var ProviderForm = function ProviderForm(_ref) {
13536
13555
  var oldKey = f.key;
13537
13556
  if (oldKey && formData[oldKey] !== undefined) {
13538
13557
  setFormData(function (fd) {
13539
- var updated = _objectSpread$P({}, fd);
13558
+ var updated = _objectSpread$Q({}, fd);
13540
13559
  var val = updated[oldKey];
13541
13560
  delete updated[oldKey];
13542
13561
  if (newKey.trim()) updated[newKey] = val;
13543
13562
  return updated;
13544
13563
  });
13545
13564
  }
13546
- return _objectSpread$P(_objectSpread$P({}, f), {}, {
13565
+ return _objectSpread$Q(_objectSpread$Q({}, f), {}, {
13547
13566
  key: newKey
13548
13567
  });
13549
13568
  });
@@ -13555,14 +13574,14 @@ var ProviderForm = function ProviderForm(_ref) {
13555
13574
  });
13556
13575
  if (field !== null && field !== void 0 && field.key) {
13557
13576
  setFormData(function (prev) {
13558
- return _objectSpread$P(_objectSpread$P({}, prev), {}, _defineProperty({}, field.key, value));
13577
+ return _objectSpread$Q(_objectSpread$Q({}, prev), {}, _defineProperty({}, field.key, value));
13559
13578
  });
13560
13579
  }
13561
13580
  };
13562
13581
  var handleDynamicSecretToggle = function handleDynamicSecretToggle(id) {
13563
13582
  setDynamicFields(function (prev) {
13564
13583
  return prev.map(function (f) {
13565
- return f.id === id ? _objectSpread$P(_objectSpread$P({}, f), {}, {
13584
+ return f.id === id ? _objectSpread$Q(_objectSpread$Q({}, f), {}, {
13566
13585
  secret: !f.secret
13567
13586
  }) : f;
13568
13587
  });
@@ -13584,7 +13603,7 @@ var ProviderForm = function ProviderForm(_ref) {
13584
13603
  });
13585
13604
  if (field !== null && field !== void 0 && field.key) {
13586
13605
  setFormData(function (prev) {
13587
- var updated = _objectSpread$P({}, prev);
13606
+ var updated = _objectSpread$Q({}, prev);
13588
13607
  delete updated[field.key];
13589
13608
  return updated;
13590
13609
  });
@@ -13626,13 +13645,13 @@ var ProviderForm = function ProviderForm(_ref) {
13626
13645
  */
13627
13646
  var handleInputChange = function handleInputChange(fieldName, value) {
13628
13647
  setFormData(function (prev) {
13629
- return _objectSpread$P(_objectSpread$P({}, prev), {}, _defineProperty({}, fieldName, value));
13648
+ return _objectSpread$Q(_objectSpread$Q({}, prev), {}, _defineProperty({}, fieldName, value));
13630
13649
  });
13631
13650
 
13632
13651
  // Clear error for this field if it was filled
13633
13652
  if (errors[fieldName] && value !== null && value !== void 0 && value.trim()) {
13634
13653
  setErrors(function (prev) {
13635
- var newErrors = _objectSpread$P({}, prev);
13654
+ var newErrors = _objectSpread$Q({}, prev);
13636
13655
  delete newErrors[fieldName];
13637
13656
  return newErrors;
13638
13657
  });
@@ -13670,7 +13689,7 @@ var ProviderForm = function ProviderForm(_ref) {
13670
13689
  // Clear error if filled
13671
13690
  if (errors.providerName && value !== null && value !== void 0 && value.trim()) {
13672
13691
  setErrors(function (prev) {
13673
- var newErrors = _objectSpread$P({}, prev);
13692
+ var newErrors = _objectSpread$Q({}, prev);
13674
13693
  delete newErrors.providerName;
13675
13694
  return newErrors;
13676
13695
  });
@@ -13907,8 +13926,8 @@ var ToolSelector$1 = function ToolSelector(_ref) {
13907
13926
  });
13908
13927
  };
13909
13928
 
13910
- function ownKeys$O(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; }
13911
- function _objectSpread$O(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$O(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$O(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13929
+ function ownKeys$P(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; }
13930
+ function _objectSpread$P(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$P(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$P(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13912
13931
  /**
13913
13932
  * Shared MCP utility functions.
13914
13933
  *
@@ -14036,7 +14055,7 @@ function buildMcpConfigFromOverrides(baseMcpConfig, envMappingRows, headerRows)
14036
14055
  headerTemplate[name] = value;
14037
14056
  }
14038
14057
  });
14039
- var config = _objectSpread$O({}, baseMcpConfig);
14058
+ var config = _objectSpread$P({}, baseMcpConfig);
14040
14059
  if (Object.keys(headerTemplate).length > 0) {
14041
14060
  config.headerTemplate = headerTemplate;
14042
14061
  } else {
@@ -14054,7 +14073,7 @@ function buildMcpConfigFromOverrides(baseMcpConfig, envMappingRows, headerRows)
14054
14073
  envMapping[env] = cred;
14055
14074
  }
14056
14075
  });
14057
- return _objectSpread$O(_objectSpread$O({}, baseMcpConfig), {}, {
14076
+ return _objectSpread$P(_objectSpread$P({}, baseMcpConfig), {}, {
14058
14077
  envMapping: envMapping
14059
14078
  });
14060
14079
  }
@@ -14291,8 +14310,8 @@ function mcpJsonToFormState(jsonString, nextRowId) {
14291
14310
  function _createForOfIteratorHelper$s(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$s(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; } } }; }
14292
14311
  function _unsupportedIterableToArray$s(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$s(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$s(r, a) : void 0; } }
14293
14312
  function _arrayLikeToArray$s(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; }
14294
- function ownKeys$N(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; }
14295
- function _objectSpread$N(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$N(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$N(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
14313
+ function ownKeys$O(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; }
14314
+ function _objectSpread$O(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$O(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$O(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
14296
14315
  var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14297
14316
  var isOpen = _ref.isOpen,
14298
14317
  onClose = _ref.onClose,
@@ -14487,7 +14506,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14487
14506
  .map(function (entry) {
14488
14507
  var widget = allWidgets[entry.widgetKey];
14489
14508
  if (!widget) return null; // Widget no longer exists
14490
- return _objectSpread$N(_objectSpread$N({
14509
+ return _objectSpread$O(_objectSpread$O({
14491
14510
  key: entry.widgetKey
14492
14511
  }, widget), {}, {
14493
14512
  savedProviders: entry.providers || {},
@@ -14638,7 +14657,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14638
14657
  // Get widgets from ComponentManager
14639
14658
  var allWidgets = ComponentManager.map();
14640
14659
  var widgetList = Object.keys(allWidgets).map(function (key) {
14641
- return _objectSpread$N({
14660
+ return _objectSpread$O({
14642
14661
  key: key
14643
14662
  }, allWidgets[key]);
14644
14663
  }).filter(function (widget) {
@@ -14864,7 +14883,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14864
14883
  setInlineCreateType(null);
14865
14884
  setInlineCreateSchema({});
14866
14885
  setInlineCreateError(null);
14867
- setSelectedProviders(_objectSpread$N(_objectSpread$N({}, selectedProviders), {}, _defineProperty({}, providerType, providerName)));
14886
+ setSelectedProviders(_objectSpread$O(_objectSpread$O({}, selectedProviders), {}, _defineProperty({}, providerType, providerName)));
14868
14887
  }
14869
14888
  };
14870
14889
  var handleInlineProviderSubmit = function handleInlineProviderSubmit(formData) {
@@ -14885,7 +14904,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14885
14904
 
14886
14905
  // Auto-select the newly created provider
14887
14906
  setSelectedProviders(function (prev) {
14888
- return _objectSpread$N(_objectSpread$N({}, prev), {}, _defineProperty({}, providerType, providerName));
14907
+ return _objectSpread$O(_objectSpread$O({}, prev), {}, _defineProperty({}, providerType, providerName));
14889
14908
  });
14890
14909
 
14891
14910
  // Collapse the inline form
@@ -14939,11 +14958,11 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14939
14958
  };
14940
14959
  var inlineHandleCredentialChange = function inlineHandleCredentialChange(fieldName, value) {
14941
14960
  setInlineCredentialData(function (prev) {
14942
- return _objectSpread$N(_objectSpread$N({}, prev), {}, _defineProperty({}, fieldName, value));
14961
+ return _objectSpread$O(_objectSpread$O({}, prev), {}, _defineProperty({}, fieldName, value));
14943
14962
  });
14944
14963
  if (inlineFormErrors[fieldName] && value !== null && value !== void 0 && value.trim()) {
14945
14964
  setInlineFormErrors(function (prev) {
14946
- var next = _objectSpread$N({}, prev);
14965
+ var next = _objectSpread$O({}, prev);
14947
14966
  delete next[fieldName];
14948
14967
  return next;
14949
14968
  });
@@ -15036,7 +15055,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15036
15055
  refreshProviders();
15037
15056
  }
15038
15057
  setSelectedProviders(function (prev) {
15039
- return _objectSpread$N(_objectSpread$N({}, prev), {}, _defineProperty({}, providerType, providerName));
15058
+ return _objectSpread$O(_objectSpread$O({}, prev), {}, _defineProperty({}, providerType, providerName));
15040
15059
  });
15041
15060
 
15042
15061
  // Reset stepper state
@@ -15057,7 +15076,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15057
15076
  });
15058
15077
  };
15059
15078
  var handleConfigChange = function handleConfigChange(key, value) {
15060
- setUserConfigValues(_objectSpread$N(_objectSpread$N({}, userConfigValues), {}, _defineProperty({}, key, value)));
15079
+ setUserConfigValues(_objectSpread$O(_objectSpread$O({}, userConfigValues), {}, _defineProperty({}, key, value)));
15061
15080
  };
15062
15081
 
15063
15082
  // Install a package from the registry
@@ -15123,7 +15142,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15123
15142
  // Mark items as installed
15124
15143
  setProgressWidgets(function (prev) {
15125
15144
  return prev.map(function (w) {
15126
- return _objectSpread$N(_objectSpread$N({}, w), {}, {
15145
+ return _objectSpread$O(_objectSpread$O({}, w), {}, {
15127
15146
  status: "installed"
15128
15147
  });
15129
15148
  });
@@ -15142,7 +15161,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15142
15161
  setInstallError(msg);
15143
15162
  setProgressWidgets(function (prev) {
15144
15163
  return prev.map(function (w) {
15145
- return _objectSpread$N(_objectSpread$N({}, w), {}, {
15164
+ return _objectSpread$O(_objectSpread$O({}, w), {}, {
15146
15165
  status: "failed",
15147
15166
  error: msg
15148
15167
  });
@@ -15216,7 +15235,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15216
15235
 
15217
15236
  // Phase 3: Save to recent widgets
15218
15237
  saveToRecent(selectedWidget, selectedProviders, userConfigValues);
15219
- onSelectWidget(_objectSpread$N(_objectSpread$N({}, selectedWidget), {}, {
15238
+ onSelectWidget(_objectSpread$O(_objectSpread$O({}, selectedWidget), {}, {
15220
15239
  selectedProviders: selectedProviders,
15221
15240
  // Pass to parent
15222
15241
  userConfigValues: userConfigValues // Pass to parent
@@ -15859,7 +15878,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15859
15878
  setInlineProviderName(value);
15860
15879
  if (inlineFormErrors.providerName && value !== null && value !== void 0 && value.trim()) {
15861
15880
  setInlineFormErrors(function (prev) {
15862
- var next = _objectSpread$N({}, prev);
15881
+ var next = _objectSpread$O({}, prev);
15863
15882
  delete next.providerName;
15864
15883
  return next;
15865
15884
  });
@@ -17045,8 +17064,8 @@ var ProviderSelector = function ProviderSelector(_ref) {
17045
17064
  });
17046
17065
  };
17047
17066
 
17048
- function ownKeys$M(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; }
17049
- function _objectSpread$M(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$M(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$M(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17067
+ function ownKeys$N(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; }
17068
+ function _objectSpread$N(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$N(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$N(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17050
17069
  var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17051
17070
  var transport = _ref.transport,
17052
17071
  envMappingRows = _ref.envMappingRows,
@@ -17075,7 +17094,7 @@ var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17075
17094
  var updateEnvRow = function updateEnvRow(id, field, value) {
17076
17095
  onEnvMappingRowsChange(function (prev) {
17077
17096
  return prev.map(function (row) {
17078
- return row.id === id ? _objectSpread$M(_objectSpread$M({}, row), {}, _defineProperty({}, field, value)) : row;
17097
+ return row.id === id ? _objectSpread$N(_objectSpread$N({}, row), {}, _defineProperty({}, field, value)) : row;
17079
17098
  });
17080
17099
  });
17081
17100
  };
@@ -17100,7 +17119,7 @@ var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17100
17119
  var updateHeaderRow = function updateHeaderRow(id, field, value) {
17101
17120
  onHeaderRowsChange(function (prev) {
17102
17121
  return prev.map(function (row) {
17103
- return row.id === id ? _objectSpread$M(_objectSpread$M({}, row), {}, _defineProperty({}, field, value)) : row;
17122
+ return row.id === id ? _objectSpread$N(_objectSpread$N({}, row), {}, _defineProperty({}, field, value)) : row;
17104
17123
  });
17105
17124
  });
17106
17125
  };
@@ -17249,8 +17268,8 @@ var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17249
17268
  });
17250
17269
  };
17251
17270
 
17252
- function ownKeys$L(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; }
17253
- function _objectSpread$L(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$L(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$L(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17271
+ function ownKeys$M(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; }
17272
+ function _objectSpread$M(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$M(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$M(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17254
17273
  var McpServerPicker = function McpServerPicker(_ref) {
17255
17274
  var _testResult$tools;
17256
17275
  var isOpen = _ref.isOpen,
@@ -17429,11 +17448,11 @@ var McpServerPicker = function McpServerPicker(_ref) {
17429
17448
  // Handle credential field changes
17430
17449
  var handleCredentialChange = function handleCredentialChange(fieldName, value) {
17431
17450
  setCredentialData(function (prev) {
17432
- return _objectSpread$L(_objectSpread$L({}, prev), {}, _defineProperty({}, fieldName, value));
17451
+ return _objectSpread$M(_objectSpread$M({}, prev), {}, _defineProperty({}, fieldName, value));
17433
17452
  });
17434
17453
  if (formErrors[fieldName] && value !== null && value !== void 0 && value.trim()) {
17435
17454
  setFormErrors(function (prev) {
17436
- var next = _objectSpread$L({}, prev);
17455
+ var next = _objectSpread$M({}, prev);
17437
17456
  delete next[fieldName];
17438
17457
  return next;
17439
17458
  });
@@ -17771,7 +17790,7 @@ var McpServerPicker = function McpServerPicker(_ref) {
17771
17790
  setProviderName(value);
17772
17791
  if (formErrors.providerName && value !== null && value !== void 0 && value.trim()) {
17773
17792
  setFormErrors(function (prev) {
17774
- var next = _objectSpread$L({}, prev);
17793
+ var next = _objectSpread$M({}, prev);
17775
17794
  delete next.providerName;
17776
17795
  return next;
17777
17796
  });
@@ -17961,8 +17980,8 @@ var McpServerPicker = function McpServerPicker(_ref) {
17961
17980
  });
17962
17981
  };
17963
17982
 
17964
- function ownKeys$K(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; }
17965
- function _objectSpread$K(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$K(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$K(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17983
+ function ownKeys$L(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; }
17984
+ function _objectSpread$L(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$L(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$L(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17966
17985
  var USE_ENHANCED_WIDGET_SELECTOR = true; // Set to false to use original modal
17967
17986
 
17968
17987
  /**
@@ -18008,7 +18027,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18008
18027
  var _ref3 = _slicedToArray(_ref2, 2),
18009
18028
  id = _ref3[0],
18010
18029
  p = _ref3[1];
18011
- return _objectSpread$K(_objectSpread$K({}, p), {}, {
18030
+ return _objectSpread$L(_objectSpread$L({}, p), {}, {
18012
18031
  id: id,
18013
18032
  name: p.name || id
18014
18033
  });
@@ -18095,7 +18114,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18095
18114
  // so we use its layout to replace any corrupted grid data.
18096
18115
  if (workspace && workspace["layout"]) {
18097
18116
  var model = new DashboardModel(workspace);
18098
- setCurrentWorkspace(_objectSpread$K(_objectSpread$K({}, workspace), {}, {
18117
+ setCurrentWorkspace(_objectSpread$L(_objectSpread$L({}, workspace), {}, {
18099
18118
  layout: model.layout
18100
18119
  }));
18101
18120
  } else {
@@ -18168,7 +18187,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18168
18187
  }
18169
18188
  try {
18170
18189
  var hasChildren = config.type === "workspace";
18171
- var newLayout = addItemToItemLayout(ws.layout, gridItem.id, _objectSpread$K(_objectSpread$K({}, config), {}, {
18190
+ var newLayout = addItemToItemLayout(ws.layout, gridItem.id, _objectSpread$L(_objectSpread$L({}, config), {}, {
18172
18191
  component: widgetComponentName,
18173
18192
  packageId: config._sourcePackage || config.packageId || null
18174
18193
  }), hasChildren);
@@ -18614,7 +18633,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18614
18633
  var uuid = widget.uuid || widget.uuidString;
18615
18634
  if (uuid) {
18616
18635
  newWorkspace.selectedProviders = newWorkspace.selectedProviders || {};
18617
- newWorkspace.selectedProviders[uuid] = _objectSpread$K(_objectSpread$K({}, newWorkspace.selectedProviders[uuid] || {}), {}, _defineProperty({}, providerType, providerId));
18636
+ newWorkspace.selectedProviders[uuid] = _objectSpread$L(_objectSpread$L({}, newWorkspace.selectedProviders[uuid] || {}), {}, _defineProperty({}, providerType, providerId));
18618
18637
  }
18619
18638
  setCurrentWorkspace(newWorkspace);
18620
18639
  // Propagate to the parent (DashboardStage) so workspaceSelected
@@ -18758,7 +18777,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18758
18777
  var _gridContainer$grid;
18759
18778
  var config = ComponentManager.config(widgetKey);
18760
18779
  if (!config) return;
18761
- var widgetItem = _objectSpread$K(_objectSpread$K({}, config), {}, {
18780
+ var widgetItem = _objectSpread$L(_objectSpread$L({}, config), {}, {
18762
18781
  component: widgetKey,
18763
18782
  key: widgetKey,
18764
18783
  packageId: config._sourcePackage || config.packageId || null
@@ -19019,7 +19038,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
19019
19038
  onSelectWidget: function onSelectWidget(widget) {
19020
19039
 
19021
19040
  // Add component property from widget.key
19022
- var widgetWithComponent = _objectSpread$K(_objectSpread$K({}, widget), {}, {
19041
+ var widgetWithComponent = _objectSpread$L(_objectSpread$L({}, widget), {}, {
19023
19042
  component: widget.key
19024
19043
  });
19025
19044
  handleClickConfirmAdd(widgetWithComponent, dropdownTarget);
@@ -20648,8 +20667,8 @@ var MissingProviderPrompt = function MissingProviderPrompt(_ref) {
20648
20667
  });
20649
20668
  };
20650
20669
 
20651
- function ownKeys$J(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; }
20652
- function _objectSpread$J(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$J(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$J(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
20670
+ function ownKeys$K(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; }
20671
+ function _objectSpread$K(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$K(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$K(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
20653
20672
  function _callSuper$4(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$4() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
20654
20673
  function _isNativeReflectConstruct$4() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct$4 = function _isNativeReflectConstruct() { return !!t; })(); }
20655
20674
  var ProviderErrorBoundary = /*#__PURE__*/function (_Component) {
@@ -20704,7 +20723,7 @@ var ProviderErrorBoundary = /*#__PURE__*/function (_Component) {
20704
20723
  _defineProperty(_this, "handleProviderSelect", function (providerType, providerName, credentials) {
20705
20724
 
20706
20725
  // Update local selected providers state
20707
- var updatedSelected = _objectSpread$J(_objectSpread$J({}, _this.state.selectedProviders), {}, _defineProperty({}, providerType, providerName));
20726
+ var updatedSelected = _objectSpread$K(_objectSpread$K({}, _this.state.selectedProviders), {}, _defineProperty({}, providerType, providerName));
20708
20727
  _this.setState({
20709
20728
  selectedProviders: updatedSelected
20710
20729
  }, function () {
@@ -20778,8 +20797,8 @@ var ProviderErrorBoundary = /*#__PURE__*/function (_Component) {
20778
20797
  }(React.Component);
20779
20798
  _defineProperty(ProviderErrorBoundary, "contextType", ProviderContext);
20780
20799
 
20781
- function ownKeys$I(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; }
20782
- function _objectSpread$I(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$I(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$I(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
20800
+ function ownKeys$J(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; }
20801
+ function _objectSpread$J(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$J(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$J(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
20783
20802
  var withProviderDetection = function withProviderDetection(Component) {
20784
20803
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
20785
20804
  _ref$requiredProvider = _ref.requiredProviders,
@@ -20804,7 +20823,7 @@ var withProviderDetection = function withProviderDetection(Component) {
20804
20823
  onProviderSelect: onProviderSelect
20805
20824
  });
20806
20825
  }
20807
- return /*#__PURE__*/jsxRuntime.jsx(Component, _objectSpread$I({}, props));
20826
+ return /*#__PURE__*/jsxRuntime.jsx(Component, _objectSpread$J({}, props));
20808
20827
  };
20809
20828
  };
20810
20829
 
@@ -21480,6 +21499,193 @@ var WidgetNotFound = function WidgetNotFound(_ref) {
21480
21499
  });
21481
21500
  };
21482
21501
 
21502
+ function ownKeys$I(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; }
21503
+ function _objectSpread$I(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$I(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$I(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21504
+ /**
21505
+ * makeBoundApi.js
21506
+ *
21507
+ * Per-mount proxy of `window.mainApi` that auto-injects a mount
21508
+ * token on every gated call. WidgetFactory builds one of these
21509
+ * after `framework:register-widget-mount` returns a token, then
21510
+ * passes it via `WidgetContext.value.api` and as an `api` prop on
21511
+ * every widget render.
21512
+ *
21513
+ * The renderer receives a fresh proxy per mount; widgets that use
21514
+ * `props.api.data.saveData(data, file)` get gated automatically
21515
+ * without writing widgetId into their code.
21516
+ *
21517
+ * **Limit:** the proxy lives in the renderer's JS realm, same realm
21518
+ * as widgets. A malicious widget can still walk the React fiber
21519
+ * tree and call another widget's bound api function — the call
21520
+ * fires IPC with the *victim's* token. Closing that residual
21521
+ * requires per-widget BrowserView (multi-week refactor). The token
21522
+ * model raises the bar from "type a widgetId string" to "actively
21523
+ * walk fibers and call another widget's bound function," which is
21524
+ * a deliberate malicious step visible at install-time review.
21525
+ */
21526
+ // Total positional-argument count for each gated method, with the
21527
+ // `token` arg sitting in the final slot. The proxy pads any unused
21528
+ // intermediate slots with `null` and appends the token to position
21529
+ // `length - 1`. Mirrors the IPC handler signatures introduced in
21530
+ // slice 1 of the widget-mount-token campaign:
21531
+ //
21532
+ // data.saveData(data, filename, append, returnEmpty, widgetId, token) // 6
21533
+ // data.readData(filename, returnEmpty, widgetId, token) // 4
21534
+ // data.readDataFromURL(url, toFilepath, widgetId, token) // 4
21535
+ // mcp.callTool(serverName, toolName, args, allowedTools, widgetId,
21536
+ // workspaceId, token) // 7
21537
+ // webSocket.connect(providerName, config, widgetId, token) // 4
21538
+ //
21539
+ // Anything not in this map passes through unchanged.
21540
+ var GATED_LENGTHS = {
21541
+ "data.saveData": 6,
21542
+ "data.readData": 4,
21543
+ "data.readDataFromURL": 4,
21544
+ "mcp.callTool": 7,
21545
+ "webSocket.connect": 4
21546
+ };
21547
+ function _bindMethod(rawFn, signatureLength, token) {
21548
+ return function () {
21549
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
21550
+ args[_key] = arguments[_key];
21551
+ }
21552
+ var padded = [].concat(args);
21553
+ // Pad trailing slots up to (but not including) the token slot
21554
+ // with null. This is what gives callers a "you may pass any
21555
+ // prefix of the signature, the proxy fills the rest" UX.
21556
+ while (padded.length < signatureLength - 1) padded.push(null);
21557
+ padded.push(token);
21558
+ return rawFn.apply(void 0, _toConsumableArray(padded));
21559
+ };
21560
+ }
21561
+
21562
+ /**
21563
+ * @param {object} rawApi - typically `window.mainApi`
21564
+ * @param {string|null} token - the mount token; null briefly before
21565
+ * register-mount resolves. Pass-through
21566
+ * when null so callers can't accidentally
21567
+ * freeze on a placeholder.
21568
+ * @returns {object} per-mount proxy
21569
+ */
21570
+ function makeBoundApi(rawApi, token) {
21571
+ if (!rawApi || _typeof(rawApi) !== "object") return rawApi;
21572
+ if (!token) return rawApi;
21573
+ var out = _objectSpread$I({}, rawApi);
21574
+ // Two-pass: first collect which namespaces need cloning so we
21575
+ // don't repeatedly clobber sibling bindings within the same
21576
+ // namespace (e.g. `data.saveData` + `data.readData` both live
21577
+ // under `out.data`). Then write all rebindings.
21578
+ var nsToBindings = {};
21579
+ for (var _i = 0, _Object$entries = Object.entries(GATED_LENGTHS); _i < _Object$entries.length; _i++) {
21580
+ var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
21581
+ path = _Object$entries$_i[0],
21582
+ signatureLength = _Object$entries$_i[1];
21583
+ var _path$split = path.split("."),
21584
+ _path$split2 = _slicedToArray(_path$split, 2),
21585
+ ns = _path$split2[0],
21586
+ method = _path$split2[1];
21587
+ var subns = rawApi[ns];
21588
+ if (!subns || typeof subns[method] !== "function") continue;
21589
+ if (!nsToBindings[ns]) nsToBindings[ns] = _objectSpread$I({}, subns);
21590
+ nsToBindings[ns][method] = _bindMethod(subns[method], signatureLength, token);
21591
+ }
21592
+ for (var _i2 = 0, _Object$entries2 = Object.entries(nsToBindings); _i2 < _Object$entries2.length; _i2++) {
21593
+ var _Object$entries2$_i = _slicedToArray(_Object$entries2[_i2], 2),
21594
+ _ns = _Object$entries2$_i[0],
21595
+ cloned = _Object$entries2$_i[1];
21596
+ out[_ns] = cloned;
21597
+ }
21598
+ return out;
21599
+ }
21600
+
21601
+ var MountTokenWrapper = function MountTokenWrapper(_ref) {
21602
+ var widgetId = _ref.widgetId,
21603
+ widgetData = _ref.widgetData,
21604
+ children = _ref.children;
21605
+ var _useState = React.useState(null),
21606
+ _useState2 = _slicedToArray(_useState, 2),
21607
+ token = _useState2[0],
21608
+ setToken = _useState2[1];
21609
+ React.useEffect(function () {
21610
+ var _window;
21611
+ if (!widgetId || !((_window = window) !== null && _window !== void 0 && (_window = _window.mainApi) !== null && _window !== void 0 && (_window = _window.framework) !== null && _window !== void 0 && _window.registerMount)) {
21612
+ // Either no widget identity or the framework bridge isn't
21613
+ // exposed (e.g. running outside Electron). Skip registration —
21614
+ // the widget will render without a bound api and gated calls
21615
+ // will be denied by the runtime gate (correct behavior).
21616
+ return;
21617
+ }
21618
+ var cancelled = false;
21619
+ var myToken = null;
21620
+ _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
21621
+ var _window$mainApi;
21622
+ return _regeneratorRuntime.wrap(function (_context) {
21623
+ while (1) switch (_context.prev = _context.next) {
21624
+ case 0:
21625
+ _context.prev = 0;
21626
+ _context.next = 1;
21627
+ return window.mainApi.framework.registerMount(widgetId);
21628
+ case 1:
21629
+ myToken = _context.sent;
21630
+ _context.next = 3;
21631
+ break;
21632
+ case 2:
21633
+ _context.prev = 2;
21634
+ _context["catch"](0);
21635
+ return _context.abrupt("return");
21636
+ case 3:
21637
+ if (!cancelled) {
21638
+ _context.next = 4;
21639
+ break;
21640
+ }
21641
+ // The component unmounted before our async callback fired.
21642
+ // Clean up the token we just registered.
21643
+ if (myToken && (_window$mainApi = window.mainApi) !== null && _window$mainApi !== void 0 && (_window$mainApi = _window$mainApi.framework) !== null && _window$mainApi !== void 0 && _window$mainApi.unregisterMount) {
21644
+ try {
21645
+ window.mainApi.framework.unregisterMount(myToken);
21646
+ } catch (_) {
21647
+ /* ignore — best-effort */
21648
+ }
21649
+ }
21650
+ return _context.abrupt("return");
21651
+ case 4:
21652
+ setToken(myToken);
21653
+ case 5:
21654
+ case "end":
21655
+ return _context.stop();
21656
+ }
21657
+ }, _callee, null, [[0, 2]]);
21658
+ }))();
21659
+ return function () {
21660
+ var _window$mainApi2;
21661
+ cancelled = true;
21662
+ if (myToken && (_window$mainApi2 = window.mainApi) !== null && _window$mainApi2 !== void 0 && (_window$mainApi2 = _window$mainApi2.framework) !== null && _window$mainApi2 !== void 0 && _window$mainApi2.unregisterMount) {
21663
+ try {
21664
+ window.mainApi.framework.unregisterMount(myToken);
21665
+ } catch (_) {
21666
+ /* ignore — unmount cleanup is best-effort */
21667
+ }
21668
+ }
21669
+ };
21670
+ }, [widgetId]);
21671
+
21672
+ // Build the per-mount bound API only when we actually have a token.
21673
+ // Re-memoizing on token change keeps the proxy stable across renders.
21674
+ var api = React.useMemo(function () {
21675
+ return token ? makeBoundApi(window.mainApi, token) : null;
21676
+ }, [token]);
21677
+ var contextValue = React.useMemo(function () {
21678
+ return {
21679
+ widgetData: widgetData,
21680
+ api: api
21681
+ };
21682
+ }, [widgetData, api]);
21683
+ return /*#__PURE__*/jsxRuntime.jsx(WidgetContext.Provider, {
21684
+ value: contextValue,
21685
+ children: children
21686
+ });
21687
+ };
21688
+
21483
21689
  function ownKeys$H(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; }
21484
21690
  function _objectSpread$H(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$H(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$H(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21485
21691
  function _callSuper$2(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$2() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
@@ -21691,11 +21897,6 @@ var WidgetRenderer = function WidgetRenderer(_ref) {
21691
21897
  // init the helpers — pass WidgetApi (which has publishEvent/registerListeners
21692
21898
  // that delegate to DashboardPublisher), not the raw Electron dashApi
21693
21899
  var helpers = new WidgetHelpers(params, w);
21694
-
21695
- // Memoize context value to prevent unnecessary re-renders
21696
- var widgetContextValue = {
21697
- widgetData: widgetData
21698
- };
21699
21900
  var hasScheduledTasks = ((config === null || config === void 0 ? void 0 : config.scheduledTasks) || []).length > 0;
21700
21901
  var widgetElement = children === null ? /*#__PURE__*/jsxRuntime.jsx(WidgetComponent, _objectSpread$H(_objectSpread$H(_objectSpread$H({
21701
21902
  id: "widget-nokids-".concat(widgetKey),
@@ -21726,9 +21927,16 @@ var WidgetRenderer = function WidgetRenderer(_ref) {
21726
21927
  children: children
21727
21928
  }), "widget-kids-".concat(widgetKey, "-v").concat(componentVersion));
21728
21929
 
21729
- // Wrap widget rendering with WidgetContext + error boundary
21730
- return /*#__PURE__*/jsxRuntime.jsx(WidgetContext.Provider, {
21731
- value: widgetContextValue,
21930
+ // MountTokenWrapper owns the per-widget mount-token IPC
21931
+ // (register at mount, unregister at unmount) and provides the
21932
+ // WidgetContext value (widgetData + bound api) to descendants.
21933
+ // The widgetId used for registration is the package name —
21934
+ // that's what grants are keyed by, so the gate's
21935
+ // token → widgetId resolution finds the right grant.
21936
+ var widgetIdForGate = (params === null || params === void 0 ? void 0 : params.name) || component;
21937
+ return /*#__PURE__*/jsxRuntime.jsx(MountTokenWrapper, {
21938
+ widgetId: widgetIdForGate,
21939
+ widgetData: widgetData,
21732
21940
  children: /*#__PURE__*/jsxRuntime.jsx(WidgetErrorBoundary, {
21733
21941
  widgetName: component,
21734
21942
  children: hasScheduledTasks ? /*#__PURE__*/jsxRuntime.jsxs("div", {