@trops/dash-core 0.1.520 → 0.1.522

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.esm.js CHANGED
@@ -34,8 +34,8 @@ import { InstantSearch, Hits } from 'react-instantsearch-hooks-web';
34
34
  import { Link } from 'react-router-dom';
35
35
  import { marked } from 'marked';
36
36
 
37
- function ownKeys$11(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; }
38
- function _objectSpread$11(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$11(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$11(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
37
+ function ownKeys$13(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; }
38
+ function _objectSpread$13(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$13(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$13(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
39
39
  var event = {
40
40
  list: new Map(),
41
41
  // Map(1) { '<widget-UUID>' => { 'CustomSearchbar[10].searchQueryChanged': [] } }
@@ -97,7 +97,7 @@ var event = {
97
97
  uuid: subscriber["uuid"]
98
98
  };
99
99
  if ("action" in subscriber && subscriber.action !== undefined) {
100
- subscriber["action"](_objectSpread$11({}, objectToSend));
100
+ subscriber["action"](_objectSpread$13({}, objectToSend));
101
101
  }
102
102
  });
103
103
  }
@@ -2946,8 +2946,8 @@ var DashboardWrapper = function DashboardWrapper(_ref) {
2946
2946
  });
2947
2947
  };
2948
2948
 
2949
- 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; }
2950
- 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; }
2949
+ function ownKeys$12(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; }
2950
+ function _objectSpread$12(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$12(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$12(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2951
2951
  function ThemeBroadcast(_ref) {
2952
2952
  var ctx = _ref.ctx;
2953
2953
  useEffect(function () {
@@ -2980,7 +2980,7 @@ var DashboardThemeProvider = function DashboardThemeProvider(_ref2) {
2980
2980
  var dashboardTheme = themes[themeKey];
2981
2981
  var themeValue = dashboardTheme ? dashboardTheme[themeVariant] || null : null;
2982
2982
  if (!themeValue) return null;
2983
- return _objectSpread$10(_objectSpread$10({}, parentContext), {}, {
2983
+ return _objectSpread$12(_objectSpread$12({}, parentContext), {}, {
2984
2984
  currentTheme: themeValue,
2985
2985
  currentThemeKey: themeKey,
2986
2986
  theme: themeValue,
@@ -3007,8 +3007,8 @@ var DashboardThemeProvider = function DashboardThemeProvider(_ref2) {
3007
3007
  });
3008
3008
  };
3009
3009
 
3010
- 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; }
3011
- 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; }
3010
+ function ownKeys$11(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; }
3011
+ function _objectSpread$11(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$11(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$11(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3012
3012
  var AppThemeScope = function AppThemeScope(_ref) {
3013
3013
  var children = _ref.children;
3014
3014
  var ctx = useContext(ThemeContext);
@@ -3016,7 +3016,7 @@ var AppThemeScope = function AppThemeScope(_ref) {
3016
3016
  children: children
3017
3017
  });
3018
3018
  return /*#__PURE__*/jsx(ThemeContext.Provider, {
3019
- value: _objectSpread$$(_objectSpread$$({}, ctx), {}, {
3019
+ value: _objectSpread$11(_objectSpread$11({}, ctx), {}, {
3020
3020
  currentTheme: ctx.appTheme,
3021
3021
  currentThemeKey: ctx.appThemeKey,
3022
3022
  theme: ctx.appTheme,
@@ -3128,11 +3128,11 @@ var LayoutContainer = function LayoutContainer(_ref) {
3128
3128
  });
3129
3129
  };
3130
3130
 
3131
- 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; }
3132
- 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; }
3133
- function _createForOfIteratorHelper$C(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$C(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; } } }; }
3134
- function _unsupportedIterableToArray$C(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$C(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$C(r, a) : void 0; } }
3135
- function _arrayLikeToArray$C(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; }
3131
+ 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; }
3132
+ 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; }
3133
+ function _createForOfIteratorHelper$D(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$D(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; } } }; }
3134
+ function _unsupportedIterableToArray$D(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$D(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$D(r, a) : void 0; } }
3135
+ function _arrayLikeToArray$D(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; }
3136
3136
  /**
3137
3137
  * Layout template definitions for the dashboard template picker.
3138
3138
  *
@@ -3406,12 +3406,12 @@ function createLayoutFromTemplate(template) {
3406
3406
  cols: template.cols,
3407
3407
  gap: "gap-2"
3408
3408
  };
3409
- var _iterator = _createForOfIteratorHelper$C(template.cells),
3409
+ var _iterator = _createForOfIteratorHelper$D(template.cells),
3410
3410
  _step;
3411
3411
  try {
3412
3412
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
3413
3413
  var cell = _step.value;
3414
- grid[cell.key] = _objectSpread$_({
3414
+ grid[cell.key] = _objectSpread$10({
3415
3415
  component: null,
3416
3416
  hide: cell.hide || false
3417
3417
  }, cell.span ? {
@@ -4587,11 +4587,11 @@ var DashboardInstallOptionsModal = function DashboardInstallOptionsModal(_ref) {
4587
4587
  });
4588
4588
  };
4589
4589
 
4590
- function _createForOfIteratorHelper$B(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$B(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; } } }; }
4591
- function _unsupportedIterableToArray$B(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$B(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$B(r, a) : void 0; } }
4592
- function _arrayLikeToArray$B(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; }
4593
- 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; }
4594
- 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; }
4590
+ function _createForOfIteratorHelper$C(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$C(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; } } }; }
4591
+ function _unsupportedIterableToArray$C(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$C(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$C(r, a) : void 0; } }
4592
+ function _arrayLikeToArray$C(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; }
4593
+ 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; }
4594
+ 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; }
4595
4595
  var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
4596
4596
  var dashboardPackage = _ref.dashboardPackage,
4597
4597
  appId = _ref.appId,
@@ -4824,7 +4824,7 @@ var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
4824
4824
  setProgressWidgets(function (prev) {
4825
4825
  var next = _toConsumableArray(prev);
4826
4826
  if (data.index >= 0 && data.index < next.length) {
4827
- next[data.index] = _objectSpread$Z(_objectSpread$Z({}, next[data.index]), {}, {
4827
+ next[data.index] = _objectSpread$$(_objectSpread$$({}, next[data.index]), {}, {
4828
4828
  status: data.status,
4829
4829
  error: data.error || null
4830
4830
  });
@@ -4920,7 +4920,7 @@ var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
4920
4920
  var raw = preview === null || preview === void 0 ? void 0 : preview.compatibility;
4921
4921
  if (!raw) return raw;
4922
4922
  var cMap = ComponentManager.componentMap();
4923
- var augWidgets = _objectSpread$Z({}, raw.widgets);
4923
+ var augWidgets = _objectSpread$$({}, raw.widgets);
4924
4924
  var fixedCount = 0;
4925
4925
  var _loop = function _loop() {
4926
4926
  var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
@@ -4947,7 +4947,7 @@ var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
4947
4947
  toInstall = 0,
4948
4948
  unavailable = 0,
4949
4949
  hasUnavailableRequired = false;
4950
- var _iterator = _createForOfIteratorHelper$B(widgetDeps),
4950
+ var _iterator = _createForOfIteratorHelper$C(widgetDeps),
4951
4951
  _step;
4952
4952
  try {
4953
4953
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -6592,9 +6592,9 @@ function cleanIpcError(message) {
6592
6592
  return match ? match[1] : message;
6593
6593
  }
6594
6594
 
6595
- 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; } } }; }
6596
- 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; } }
6597
- 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; }
6595
+ function _createForOfIteratorHelper$B(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$B(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; } } }; }
6596
+ function _unsupportedIterableToArray$B(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$B(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$B(r, a) : void 0; } }
6597
+ function _arrayLikeToArray$B(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; }
6598
6598
 
6599
6599
  /**
6600
6600
  * useRegistrySearch — shared hook for browsing and installing registry packages.
@@ -6708,13 +6708,13 @@ var useRegistrySearch = function useRegistrySearch() {
6708
6708
  return c.toLowerCase();
6709
6709
  }));
6710
6710
  widgets = [];
6711
- _iterator = _createForOfIteratorHelper$A(pkgs);
6711
+ _iterator = _createForOfIteratorHelper$B(pkgs);
6712
6712
  try {
6713
6713
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
6714
6714
  pkg = _step.value;
6715
6715
  // Compute missing APIs for the entire package
6716
6716
  allApiProviders = [];
6717
- _iterator2 = _createForOfIteratorHelper$A(pkg.providers || []);
6717
+ _iterator2 = _createForOfIteratorHelper$B(pkg.providers || []);
6718
6718
  try {
6719
6719
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
6720
6720
  p = _step2.value;
@@ -6727,11 +6727,11 @@ var useRegistrySearch = function useRegistrySearch() {
6727
6727
  } finally {
6728
6728
  _iterator2.f();
6729
6729
  }
6730
- _iterator3 = _createForOfIteratorHelper$A(pkg.widgets || []);
6730
+ _iterator3 = _createForOfIteratorHelper$B(pkg.widgets || []);
6731
6731
  try {
6732
6732
  for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
6733
6733
  w = _step3.value;
6734
- _iterator5 = _createForOfIteratorHelper$A(w.providers || []);
6734
+ _iterator5 = _createForOfIteratorHelper$B(w.providers || []);
6735
6735
  try {
6736
6736
  for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
6737
6737
  _p = _step5.value;
@@ -6753,7 +6753,7 @@ var useRegistrySearch = function useRegistrySearch() {
6753
6753
  missingApis = _toConsumableArray(new Set(allApiProviders)).filter(function (api) {
6754
6754
  return !capSet.has(api.toLowerCase());
6755
6755
  });
6756
- _iterator4 = _createForOfIteratorHelper$A(pkg.widgets || []);
6756
+ _iterator4 = _createForOfIteratorHelper$B(pkg.widgets || []);
6757
6757
  try {
6758
6758
  for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
6759
6759
  widget = _step4.value;
@@ -7460,9 +7460,9 @@ function applyFilters(items, filters, mode) {
7460
7460
  });
7461
7461
  }
7462
7462
 
7463
- 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; } } }; }
7464
- 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; } }
7465
- 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; }
7463
+ 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; } } }; }
7464
+ 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; } }
7465
+ 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; }
7466
7466
  var WizardCustomizeStep = function WizardCustomizeStep(_ref) {
7467
7467
  var _state$selectedDashbo, _state$selectedDashbo2;
7468
7468
  var state = _ref.state,
@@ -7681,7 +7681,7 @@ var WizardCustomizeStep = function WizardCustomizeStep(_ref) {
7681
7681
  installedNames = new Set(installedList.map(function (w) {
7682
7682
  return w.name;
7683
7683
  }));
7684
- _iterator = _createForOfIteratorHelper$z(state.selectedWidgets);
7684
+ _iterator = _createForOfIteratorHelper$A(state.selectedWidgets);
7685
7685
  _context2.prev = 12;
7686
7686
  _iterator.s();
7687
7687
  case 13:
@@ -8355,8 +8355,8 @@ var WizardCustomizeStep = function WizardCustomizeStep(_ref) {
8355
8355
  });
8356
8356
  };
8357
8357
 
8358
- 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; }
8359
- 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; }
8358
+ 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; }
8359
+ 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; }
8360
8360
  var TOTAL_STEPS = 5; // Steps 0-4: Discover, Name, Folder, Theme, Review
8361
8361
 
8362
8362
  var initialState = {
@@ -8382,20 +8382,20 @@ var initialState = {
8382
8382
  function wizardReducer(state, action) {
8383
8383
  switch (action.type) {
8384
8384
  case "SET_STEP":
8385
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8385
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8386
8386
  step: action.payload
8387
8387
  });
8388
8388
  case "SET_FILTERS":
8389
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8390
- filters: _objectSpread$Y(_objectSpread$Y({}, state.filters), action.payload)
8389
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8390
+ filters: _objectSpread$_(_objectSpread$_({}, state.filters), action.payload)
8391
8391
  });
8392
8392
  case "TOGGLE_FILTER_CATEGORY":
8393
8393
  {
8394
8394
  var categories = state.filters.categories.includes(action.payload) ? state.filters.categories.filter(function (c) {
8395
8395
  return c !== action.payload;
8396
8396
  }) : [].concat(_toConsumableArray(state.filters.categories), [action.payload]);
8397
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8398
- filters: _objectSpread$Y(_objectSpread$Y({}, state.filters), {}, {
8397
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8398
+ filters: _objectSpread$_(_objectSpread$_({}, state.filters), {}, {
8399
8399
  categories: categories
8400
8400
  })
8401
8401
  });
@@ -8405,15 +8405,15 @@ function wizardReducer(state, action) {
8405
8405
  var providers = state.filters.providers.includes(action.payload) ? state.filters.providers.filter(function (p) {
8406
8406
  return p !== action.payload;
8407
8407
  }) : [].concat(_toConsumableArray(state.filters.providers), [action.payload]);
8408
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8409
- filters: _objectSpread$Y(_objectSpread$Y({}, state.filters), {}, {
8408
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8409
+ filters: _objectSpread$_(_objectSpread$_({}, state.filters), {}, {
8410
8410
  providers: providers
8411
8411
  })
8412
8412
  });
8413
8413
  }
8414
8414
  case "SET_SEARCH_QUERY":
8415
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8416
- filters: _objectSpread$Y(_objectSpread$Y({}, state.filters), {}, {
8415
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8416
+ filters: _objectSpread$_(_objectSpread$_({}, state.filters), {}, {
8417
8417
  query: action.payload
8418
8418
  })
8419
8419
  });
@@ -8423,7 +8423,7 @@ function wizardReducer(state, action) {
8423
8423
  var widgetOrder = action.payload.map(function (w) {
8424
8424
  return w.name || w.key;
8425
8425
  });
8426
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8426
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8427
8427
  selectedWidgets: action.payload,
8428
8428
  layout: {
8429
8429
  templateKey: templateKey,
@@ -8443,7 +8443,7 @@ function wizardReducer(state, action) {
8443
8443
  var toggleWidgetOrder = selectedWidgets.map(function (w) {
8444
8444
  return w.name || w.key;
8445
8445
  });
8446
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8446
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8447
8447
  selectedWidgets: selectedWidgets,
8448
8448
  layout: {
8449
8449
  templateKey: toggleTemplateKey,
@@ -8452,29 +8452,29 @@ function wizardReducer(state, action) {
8452
8452
  });
8453
8453
  }
8454
8454
  case "SET_SELECTED_DASHBOARD":
8455
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8455
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8456
8456
  selectedDashboard: action.payload
8457
8457
  });
8458
8458
  case "SET_PATH":
8459
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8459
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8460
8460
  path: action.payload
8461
8461
  });
8462
8462
  case "SET_LAYOUT":
8463
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8463
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8464
8464
  layout: action.payload
8465
8465
  });
8466
8466
  case "REORDER_WIDGETS":
8467
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8468
- layout: _objectSpread$Y(_objectSpread$Y({}, state.layout), {}, {
8467
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8468
+ layout: _objectSpread$_(_objectSpread$_({}, state.layout), {}, {
8469
8469
  widgetOrder: action.payload
8470
8470
  })
8471
8471
  });
8472
8472
  case "SET_CUSTOMIZATION":
8473
- return _objectSpread$Y(_objectSpread$Y({}, state), {}, {
8474
- customization: _objectSpread$Y(_objectSpread$Y({}, state.customization), action.payload)
8473
+ return _objectSpread$_(_objectSpread$_({}, state), {}, {
8474
+ customization: _objectSpread$_(_objectSpread$_({}, state.customization), action.payload)
8475
8475
  });
8476
8476
  case "RESET":
8477
- return _objectSpread$Y({}, initialState);
8477
+ return _objectSpread$_({}, initialState);
8478
8478
  default:
8479
8479
  return state;
8480
8480
  }
@@ -9250,12 +9250,102 @@ var PanelEditItem = function PanelEditItem(_ref) {
9250
9250
  });
9251
9251
  };
9252
9252
 
9253
+ 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; }
9254
+ 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; }
9255
+ /**
9256
+ * gridMergeOps
9257
+ *
9258
+ * Pure helpers for merging adjacent grid cells in the layout editor.
9259
+ *
9260
+ * Bug history: pre-extraction, the inline implementations in
9261
+ * GridEditor blindly `delete`d the absorbed cell. When the user
9262
+ * merged an empty cell into a cell that already contained a widget,
9263
+ * the widget's component reference vanished with the deleted entry.
9264
+ * These helpers preserve the absorbed cell's component when the
9265
+ * current cell is empty — so a merge always shows the merged cell
9266
+ * with whichever widget existed.
9267
+ *
9268
+ * Conflict policy when BOTH cells have widgets: current wins (matches
9269
+ * the pre-fix semantics; surfaces no surprise behavior change). The
9270
+ * MergeCellsModal flow handles explicit conflict resolution for
9271
+ * multi-cell selections — that's a separate code path.
9272
+ */
9273
+
9274
+ var META_KEYS = new Set(["rows", "cols", "gap"]);
9275
+
9276
+ /**
9277
+ * Merge `(row, col)` with the cell to its right. Skips empty
9278
+ * column slots if the immediate next col was already absorbed by a
9279
+ * prior merge. Preserves the absorbed cell's `component` and `hide`
9280
+ * when the current cell has no component.
9281
+ */
9282
+ function mergeRightOp(grid, row, col) {
9283
+ var currentKey = "".concat(row, ".").concat(col);
9284
+ var current = grid[currentKey];
9285
+ if (!current) return grid;
9286
+
9287
+ // Find the next existing cell to the right in the same row.
9288
+ var nextKey = "".concat(row, ".").concat(col + 1);
9289
+ if (!grid[nextKey]) {
9290
+ var bestCol = Infinity;
9291
+ for (var _i = 0, _Object$keys = Object.keys(grid); _i < _Object$keys.length; _i++) {
9292
+ var k = _Object$keys[_i];
9293
+ if (META_KEYS.has(k)) continue;
9294
+ var _k$split$map = k.split(".").map(function (n) {
9295
+ return parseInt(n, 10);
9296
+ }),
9297
+ _k$split$map2 = _slicedToArray(_k$split$map, 2),
9298
+ r = _k$split$map2[0],
9299
+ c = _k$split$map2[1];
9300
+ if (r === parseInt(row, 10) && c > parseInt(col, 10) && c < bestCol) {
9301
+ bestCol = c;
9302
+ nextKey = k;
9303
+ }
9304
+ }
9305
+ if (!grid[nextKey]) return grid;
9306
+ }
9307
+ var next = grid[nextKey];
9308
+ if (!next) return grid;
9309
+ var newGrid = _objectSpread$Z({}, grid);
9310
+ newGrid[currentKey] = _objectSpread$Z(_objectSpread$Z({}, current), {}, {
9311
+ colSpan: (current.colSpan || 1) + 1,
9312
+ // Migrate component (and hide) from absorbed cell when current
9313
+ // is empty. Without this, mergeRight on (empty, widget) silently
9314
+ // destroys the widget — the bug we're fixing.
9315
+ component: current.component != null ? current.component : next.component,
9316
+ hide: current.component != null ? current.hide : next.hide
9317
+ });
9318
+ delete newGrid[nextKey];
9319
+ return newGrid;
9320
+ }
9321
+
9322
+ /**
9323
+ * Merge `(row, col)` with the cell directly below. Same widget-
9324
+ * preservation semantics as mergeRightOp.
9325
+ */
9326
+ function mergeDownOp(grid, row, col) {
9327
+ var currentKey = "".concat(row, ".").concat(col);
9328
+ var current = grid[currentKey];
9329
+ if (!current) return grid;
9330
+ var belowKey = "".concat(row + 1, ".").concat(col);
9331
+ var below = grid[belowKey];
9332
+ if (!below) return grid;
9333
+ var newGrid = _objectSpread$Z({}, grid);
9334
+ newGrid[currentKey] = _objectSpread$Z(_objectSpread$Z({}, current), {}, {
9335
+ rowSpan: (current.rowSpan || 1) + 1,
9336
+ component: current.component != null ? current.component : below.component,
9337
+ hide: current.component != null ? current.hide : below.hide
9338
+ });
9339
+ delete newGrid[belowKey];
9340
+ return newGrid;
9341
+ }
9342
+
9253
9343
  var _excluded$6 = ["rows", "cols"];
9254
- function _createForOfIteratorHelper$y(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$y(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; } } }; }
9255
- function _unsupportedIterableToArray$y(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$y(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$y(r, a) : void 0; } }
9256
- function _arrayLikeToArray$y(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; }
9257
- 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; }
9258
- 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; }
9344
+ 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; } } }; }
9345
+ 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; } }
9346
+ 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; }
9347
+ 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; }
9348
+ 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; }
9259
9349
  var defaultGrid = {
9260
9350
  rows: 1,
9261
9351
  cols: 1,
@@ -9276,7 +9366,7 @@ function GridEditor(_ref) {
9276
9366
  setGrid = _useState2[1];
9277
9367
  var addRow = function addRow() {
9278
9368
  var newRow = grid.rows;
9279
- var newGrid = _objectSpread$X(_objectSpread$X({}, grid), {}, {
9369
+ var newGrid = _objectSpread$Y(_objectSpread$Y({}, grid), {}, {
9280
9370
  rows: grid.rows + 1
9281
9371
  });
9282
9372
  for (var col = 0; col < grid.cols; col++) {
@@ -9291,7 +9381,7 @@ function GridEditor(_ref) {
9291
9381
  };
9292
9382
  var addColumn = function addColumn() {
9293
9383
  var newCol = grid.cols;
9294
- var newGrid = _objectSpread$X(_objectSpread$X({}, grid), {}, {
9384
+ var newGrid = _objectSpread$Y(_objectSpread$Y({}, grid), {}, {
9295
9385
  cols: grid.cols + 1
9296
9386
  });
9297
9387
  for (var row = 0; row < grid.rows; row++) {
@@ -9306,46 +9396,15 @@ function GridEditor(_ref) {
9306
9396
  saveGridChanges(newGrid);
9307
9397
  };
9308
9398
  var mergeRight = function mergeRight(row, col) {
9309
- var currentKey = "".concat(row, ".").concat(col);
9310
- var nextKey = "".concat(row, ".").concat(col + 1);
9311
- // we have to make sure that the key exists, in case something had skipped..
9312
- if (!grid[nextKey]) {
9313
- Object.keys(grid).filter(function (v) {
9314
- return v !== "rows" && v !== "cols";
9315
- }).forEach(function (k) {
9316
- if (!grid[nextKey]) {
9317
- var parts = k.split(".");
9318
- var tempRow = parseInt(parts[0]);
9319
- var tempCol = parseInt(parts[1]);
9320
- if (tempRow === parseInt(row) && tempCol > parseInt(col)) {
9321
- nextKey = "".concat(tempRow, ".").concat(tempCol);
9322
- }
9323
- }
9324
- });
9325
- }
9326
- if (grid[nextKey]) {
9327
- var newGrid = _objectSpread$X({}, grid);
9328
- newGrid[currentKey] = _objectSpread$X(_objectSpread$X({}, newGrid[currentKey]), {}, {
9329
- colSpan: newGrid[currentKey].colSpan + 1
9330
- });
9331
- delete newGrid[nextKey];
9332
-
9333
- // now we have to sort the grid
9334
- saveGridChanges(newGrid);
9335
- }
9399
+ // Pure helper preserves the absorbed cell's widget when the
9400
+ // current cell is empty (see gridMergeOps.js for the bug fix
9401
+ // that shipped this extraction).
9402
+ var newGrid = mergeRightOp(grid, row, col);
9403
+ if (newGrid !== grid) saveGridChanges(newGrid);
9336
9404
  };
9337
9405
  var mergeDown = function mergeDown(row, col) {
9338
- var currentKey = "".concat(row, ".").concat(col);
9339
- var belowKey = "".concat(row + 1, ".").concat(col);
9340
- if (grid[belowKey]) {
9341
- var newGrid = _objectSpread$X({}, grid);
9342
- newGrid[currentKey] = _objectSpread$X(_objectSpread$X({}, newGrid[currentKey]), {}, {
9343
- rowSpan: newGrid[currentKey].rowSpan + 1
9344
- });
9345
- delete newGrid[belowKey];
9346
- // now we have to sort the grid
9347
- saveGridChanges(newGrid);
9348
- }
9406
+ var newGrid = mergeDownOp(grid, row, col);
9407
+ if (newGrid !== grid) saveGridChanges(newGrid);
9349
9408
  };
9350
9409
 
9351
9410
  /**
@@ -9356,7 +9415,7 @@ function GridEditor(_ref) {
9356
9415
  var splitCell = function splitCell(row, col) {
9357
9416
  var key = "".concat(row, ".").concat(col);
9358
9417
  var cell = grid[key];
9359
- var newGrid = _objectSpread$X({}, grid);
9418
+ var newGrid = _objectSpread$Y({}, grid);
9360
9419
 
9361
9420
  // we have to check the colspan, and since the colspan is greater than 1
9362
9421
  // Only handle horizontal split if colSpan > 1
@@ -9372,13 +9431,13 @@ function GridEditor(_ref) {
9372
9431
  var oldKey = "".concat(row, ".").concat(c);
9373
9432
  var newKey = "".concat(row, ".").concat(c + 1);
9374
9433
  if (newGrid[oldKey]) {
9375
- newGrid[newKey] = _objectSpread$X({}, newGrid[oldKey]);
9434
+ newGrid[newKey] = _objectSpread$Y({}, newGrid[oldKey]);
9376
9435
  delete newGrid[oldKey];
9377
9436
  }
9378
9437
  }
9379
9438
 
9380
9439
  // Update the original cell's colSpan
9381
- newGrid[key] = _objectSpread$X(_objectSpread$X({}, cell), {}, {
9440
+ newGrid[key] = _objectSpread$Y(_objectSpread$Y({}, cell), {}, {
9382
9441
  colSpan: cell.colSpan - 1
9383
9442
  });
9384
9443
 
@@ -9390,7 +9449,7 @@ function GridEditor(_ref) {
9390
9449
  };
9391
9450
  }
9392
9451
  if (cell.rowSpan > 1) {
9393
- newGrid[key] = _objectSpread$X(_objectSpread$X({}, newGrid[key]), {}, {
9452
+ newGrid[key] = _objectSpread$Y(_objectSpread$Y({}, newGrid[key]), {}, {
9394
9453
  rowSpan: cell.rowSpan - 1
9395
9454
  });
9396
9455
  newGrid["".concat(row + 1, ".").concat(col)] = {
@@ -9406,7 +9465,7 @@ function GridEditor(_ref) {
9406
9465
  function sortObjectByKeys(obj) {
9407
9466
  var sortedKeys = Object.keys(obj).sort();
9408
9467
  var sortedObj = {};
9409
- var _iterator = _createForOfIteratorHelper$y(sortedKeys),
9468
+ var _iterator = _createForOfIteratorHelper$z(sortedKeys),
9410
9469
  _step;
9411
9470
  try {
9412
9471
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -9509,7 +9568,7 @@ function GridEditor(_ref) {
9509
9568
  var fromKey = "".concat(from.row, ".").concat(from.col);
9510
9569
  var toKey = "".concat(to.row, ".").concat(to.col);
9511
9570
  if (fromKey === toKey) return;
9512
- var newGrid = _objectSpread$X({}, grid);
9571
+ var newGrid = _objectSpread$Y({}, grid);
9513
9572
 
9514
9573
  // Swap the cells
9515
9574
  var temp = newGrid[fromKey];
@@ -9535,7 +9594,7 @@ function GridEditor(_ref) {
9535
9594
  // console.log("Grid updated:", sequencedGrid);
9536
9595
  }
9537
9596
  function resetGridLayout() {
9538
- var newGrid = _objectSpread$X({}, defaultGrid);
9597
+ var newGrid = _objectSpread$Y({}, defaultGrid);
9539
9598
  setGrid(newGrid);
9540
9599
  onUpdate(newGrid);
9541
9600
  }
@@ -9813,8 +9872,8 @@ var PanelEditItemGrid = function PanelEditItemGrid(_ref) {
9813
9872
  });
9814
9873
  };
9815
9874
 
9816
- 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; }
9817
- 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; }
9875
+ 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; }
9876
+ 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; }
9818
9877
  var PanelEditItemNotifications = function PanelEditItemNotifications(_ref) {
9819
9878
  var item = _ref.item;
9820
9879
  _ref.workspace;
@@ -9837,7 +9896,7 @@ var PanelEditItemNotifications = function PanelEditItemNotifications(_ref) {
9837
9896
  }, [widgetUuid, notificationDefs.length]);
9838
9897
  function handleNotifToggle(typeKey, value) {
9839
9898
  var _window$mainApi2;
9840
- var updated = _objectSpread$W(_objectSpread$W({}, notifPrefs), {}, _defineProperty({}, typeKey, value));
9899
+ var updated = _objectSpread$X(_objectSpread$X({}, notifPrefs), {}, _defineProperty({}, typeKey, value));
9841
9900
  setNotifPrefs(updated);
9842
9901
  if ((_window$mainApi2 = window.mainApi) !== null && _window$mainApi2 !== void 0 && (_window$mainApi2 = _window$mainApi2.notifications) !== null && _window$mainApi2 !== void 0 && _window$mainApi2.setPreferences && widgetUuid) {
9843
9902
  window.mainApi.notifications.setPreferences(widgetUuid, _defineProperty({}, typeKey, value));
@@ -9879,11 +9938,11 @@ var PanelEditItemNotifications = function PanelEditItemNotifications(_ref) {
9879
9938
  });
9880
9939
  };
9881
9940
 
9882
- function _createForOfIteratorHelper$x(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$x(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; } } }; }
9883
- function _unsupportedIterableToArray$x(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$x(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$x(r, a) : void 0; } }
9884
- function _arrayLikeToArray$x(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; }
9885
- 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; }
9886
- 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; }
9941
+ function _createForOfIteratorHelper$y(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$y(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; } } }; }
9942
+ function _unsupportedIterableToArray$y(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$y(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$y(r, a) : void 0; } }
9943
+ function _arrayLikeToArray$y(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; }
9944
+ 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; }
9945
+ 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; }
9887
9946
  var DAYS = [{
9888
9947
  key: "mon",
9889
9948
  label: "Mon"
@@ -9984,7 +10043,7 @@ function TaskScheduleEditor(_ref) {
9984
10043
  var _window$mainApi;
9985
10044
  var overrides = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
9986
10045
  if (!((_window$mainApi = window.mainApi) !== null && _window$mainApi !== void 0 && (_window$mainApi = _window$mainApi.scheduler) !== null && _window$mainApi !== void 0 && _window$mainApi.registerTask)) return;
9987
- var payload = _objectSpread$V({
10046
+ var payload = _objectSpread$W({
9988
10047
  widgetId: widgetId,
9989
10048
  widgetName: widgetName,
9990
10049
  workspaceId: workspaceId || "",
@@ -10210,7 +10269,7 @@ var PanelEditItemSchedule = function PanelEditItemSchedule(_ref2) {
10210
10269
  setIsLoading(true);
10211
10270
  window.mainApi.scheduler.getTasks(widgetUuid).then(function (tasks) {
10212
10271
  var stateMap = {};
10213
- var _iterator = _createForOfIteratorHelper$x(tasks || []),
10272
+ var _iterator = _createForOfIteratorHelper$y(tasks || []),
10214
10273
  _step;
10215
10274
  try {
10216
10275
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -10259,8 +10318,8 @@ var PanelEditItemSchedule = function PanelEditItemSchedule(_ref2) {
10259
10318
  });
10260
10319
  };
10261
10320
 
10262
- 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; }
10263
- 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; }
10321
+ 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; }
10322
+ 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; }
10264
10323
  var DERIVED_FIELDS = ["widgetConfig",
10265
10324
  // biggest offender — full component definition blob
10266
10325
  "uuid", "dashboardId", "parentWorkspaceName", "componentName", "siblingCount", "hasChildren", "canHaveChildren", "events",
@@ -10324,7 +10383,7 @@ var PanelCode = function PanelCode(_ref) {
10324
10383
  // expects. LayoutModel re-derives these on reload, but losing
10325
10384
  // them between render cycles can cause flashes of "unknown
10326
10385
  // widget" state.
10327
- var merged = _objectSpread$U({}, itemSelected);
10386
+ var merged = _objectSpread$V({}, itemSelected);
10328
10387
  for (var _i2 = 0, _Object$keys = Object.keys(edited); _i2 < _Object$keys.length; _i2++) {
10329
10388
  var k = _Object$keys[_i2];
10330
10389
  merged[k] = edited[k];
@@ -10469,9 +10528,9 @@ function isUserWidget(item) {
10469
10528
  return true;
10470
10529
  }
10471
10530
 
10472
- 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; } } }; }
10473
- 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; } }
10474
- 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; }
10531
+ function _createForOfIteratorHelper$x(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$x(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; } } }; }
10532
+ function _unsupportedIterableToArray$x(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$x(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$x(r, a) : void 0; } }
10533
+ function _arrayLikeToArray$x(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; }
10475
10534
 
10476
10535
  /**
10477
10536
  * Resolve which provider name a given widget instance would bind to for
@@ -10503,7 +10562,7 @@ function resolveProviderName(_ref) {
10503
10562
  // array. Support both because different callers shape it either way.
10504
10563
  if (appProviders) {
10505
10564
  if (Array.isArray(appProviders)) {
10506
- var _iterator = _createForOfIteratorHelper$w(appProviders),
10565
+ var _iterator = _createForOfIteratorHelper$x(appProviders),
10507
10566
  _step;
10508
10567
  try {
10509
10568
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -10563,7 +10622,7 @@ function forEachWidget(workspace, visit) {
10563
10622
  };
10564
10623
  var _walk = function walk(items) {
10565
10624
  if (!Array.isArray(items)) return;
10566
- var _iterator2 = _createForOfIteratorHelper$w(items),
10625
+ var _iterator2 = _createForOfIteratorHelper$x(items),
10567
10626
  _step2;
10568
10627
  try {
10569
10628
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
@@ -10604,7 +10663,7 @@ function forEachWidget(workspace, visit) {
10604
10663
  // widgets that only live there (e.g. AI-place writes that bypass
10605
10664
  // the page handler).
10606
10665
  if (Array.isArray(workspace.pages)) {
10607
- var _iterator3 = _createForOfIteratorHelper$w(workspace.pages),
10666
+ var _iterator3 = _createForOfIteratorHelper$x(workspace.pages),
10608
10667
  _step3;
10609
10668
  try {
10610
10669
  for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
@@ -10655,7 +10714,7 @@ function getUnresolvedProviders(_ref2) {
10655
10714
  // the same `type` listed twice (a Claude code-gen quirk), which
10656
10715
  // would otherwise produce duplicate rows in the Providers tab.
10657
10716
  var seenTypes = new Set();
10658
- var _iterator4 = _createForOfIteratorHelper$w(requirements),
10717
+ var _iterator4 = _createForOfIteratorHelper$x(requirements),
10659
10718
  _step4;
10660
10719
  try {
10661
10720
  for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
@@ -10698,7 +10757,7 @@ function getUnresolvedProviders(_ref2) {
10698
10757
  */
10699
10758
  function groupByProviderType(unresolved) {
10700
10759
  var byType = new Map();
10701
- var _iterator5 = _createForOfIteratorHelper$w(unresolved || []),
10760
+ var _iterator5 = _createForOfIteratorHelper$x(unresolved || []),
10702
10761
  _step5;
10703
10762
  try {
10704
10763
  for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
@@ -10740,7 +10799,7 @@ function getAllProviderBindings(_ref3) {
10740
10799
  // quirk) which would otherwise duplicate the per-widget row in
10741
10800
  // the Providers tab.
10742
10801
  var seenTypes = new Set();
10743
- var _iterator6 = _createForOfIteratorHelper$w(requirements),
10802
+ var _iterator6 = _createForOfIteratorHelper$x(requirements),
10744
10803
  _step6;
10745
10804
  try {
10746
10805
  for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
@@ -10780,11 +10839,11 @@ function getAllProviderBindings(_ref3) {
10780
10839
  return bindings;
10781
10840
  }
10782
10841
 
10783
- 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; }
10784
- 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; }
10785
- 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; } } }; }
10786
- 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; } }
10787
- 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; }
10842
+ 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; }
10843
+ 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; }
10844
+ 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; } } }; }
10845
+ 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; } }
10846
+ 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; }
10788
10847
  var EVENT_STRING_RE = /^([^[]+)\[([^\]]+)\]\.(.+)$/;
10789
10848
 
10790
10849
  /** Parse "Component[itemId].event" → { component, itemId, event }. */
@@ -10954,7 +11013,7 @@ function getCurrentWiring(workspace) {
10954
11013
  // Live format is array; defensive guard for legacy object
10955
11014
  // form (a single source widget keyed under the handler).
10956
11015
  var events = Array.isArray(eventList) ? eventList : typeof eventList === "string" ? [eventList] : [];
10957
- var _iterator = _createForOfIteratorHelper$v(events),
11016
+ var _iterator = _createForOfIteratorHelper$w(events),
10958
11017
  _step;
10959
11018
  try {
10960
11019
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -11017,7 +11076,7 @@ function getOrphanedListeners(workspace, getWidgetConfig) {
11017
11076
  if (!byItemId.has(id)) byItemId.set(id, meta);
11018
11077
  });
11019
11078
  var orphans = [];
11020
- var _iterator2 = _createForOfIteratorHelper$v(wiring),
11079
+ var _iterator2 = _createForOfIteratorHelper$w(wiring),
11021
11080
  _step2;
11022
11081
  try {
11023
11082
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
@@ -11030,13 +11089,13 @@ function getOrphanedListeners(workspace, getWidgetConfig) {
11030
11089
  // missing. Preserves the user's ability to see whether a
11031
11090
  // rename happened vs. a delete.
11032
11091
  var fallback = byItemId.get(String(w.sourceItemId));
11033
- orphans.push(_objectSpread$T(_objectSpread$T({}, w), {}, {
11092
+ orphans.push(_objectSpread$U(_objectSpread$U({}, w), {}, {
11034
11093
  reason: fallback ? "source-component-mismatch" : "source-missing"
11035
11094
  }));
11036
11095
  continue;
11037
11096
  }
11038
11097
  if (!src.events.includes(w.eventName)) {
11039
- orphans.push(_objectSpread$T(_objectSpread$T({}, w), {}, {
11098
+ orphans.push(_objectSpread$U(_objectSpread$U({}, w), {}, {
11040
11099
  reason: "event-not-emitted"
11041
11100
  }));
11042
11101
  continue;
@@ -11044,7 +11103,7 @@ function getOrphanedListeners(workspace, getWidgetConfig) {
11044
11103
  var receiverKey = "".concat(w.receiverComponent, "|").concat(w.receiverItemId);
11045
11104
  var receiver = byCompositeKey.get(receiverKey);
11046
11105
  if (receiver && !receiver.eventHandlers.includes(w.handlerName)) {
11047
- orphans.push(_objectSpread$T(_objectSpread$T({}, w), {}, {
11106
+ orphans.push(_objectSpread$U(_objectSpread$U({}, w), {}, {
11048
11107
  reason: "handler-not-declared"
11049
11108
  }));
11050
11109
  }
@@ -11083,7 +11142,7 @@ function pruneDeadListenerReferences(workspace) {
11083
11142
  var liveKeys = new Set();
11084
11143
  var _walkForLive = function walkForLive(items) {
11085
11144
  if (!Array.isArray(items)) return;
11086
- var _iterator3 = _createForOfIteratorHelper$v(items),
11145
+ var _iterator3 = _createForOfIteratorHelper$w(items),
11087
11146
  _step3;
11088
11147
  try {
11089
11148
  for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
@@ -11104,7 +11163,7 @@ function pruneDeadListenerReferences(workspace) {
11104
11163
  };
11105
11164
  _walkForLive(workspace.layout);
11106
11165
  if (Array.isArray(workspace.pages)) {
11107
- var _iterator4 = _createForOfIteratorHelper$v(workspace.pages),
11166
+ var _iterator4 = _createForOfIteratorHelper$w(workspace.pages),
11108
11167
  _step4;
11109
11168
  try {
11110
11169
  for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
@@ -11121,7 +11180,7 @@ function pruneDeadListenerReferences(workspace) {
11121
11180
  var removed = 0;
11122
11181
  var _pruneListeners = function pruneListeners(items) {
11123
11182
  if (!Array.isArray(items)) return;
11124
- var _iterator5 = _createForOfIteratorHelper$v(items),
11183
+ var _iterator5 = _createForOfIteratorHelper$w(items),
11125
11184
  _step5;
11126
11185
  try {
11127
11186
  for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
@@ -11133,7 +11192,7 @@ function pruneDeadListenerReferences(workspace) {
11133
11192
  var events = item.listeners[handler];
11134
11193
  if (!Array.isArray(events)) continue;
11135
11194
  var kept = [];
11136
- var _iterator6 = _createForOfIteratorHelper$v(events),
11195
+ var _iterator6 = _createForOfIteratorHelper$w(events),
11137
11196
  _step6;
11138
11197
  try {
11139
11198
  for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
@@ -11168,7 +11227,7 @@ function pruneDeadListenerReferences(workspace) {
11168
11227
  };
11169
11228
  _pruneListeners(workspace.layout);
11170
11229
  if (Array.isArray(workspace.pages)) {
11171
- var _iterator7 = _createForOfIteratorHelper$v(workspace.pages),
11230
+ var _iterator7 = _createForOfIteratorHelper$w(workspace.pages),
11172
11231
  _step7;
11173
11232
  try {
11174
11233
  for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
@@ -11212,7 +11271,7 @@ function applyWiringChanges(workspace, _ref) {
11212
11271
  });
11213
11272
  return byReceiver.get(id);
11214
11273
  };
11215
- var _iterator8 = _createForOfIteratorHelper$v(adds),
11274
+ var _iterator8 = _createForOfIteratorHelper$w(adds),
11216
11275
  _step8;
11217
11276
  try {
11218
11277
  for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {
@@ -11225,7 +11284,7 @@ function applyWiringChanges(workspace, _ref) {
11225
11284
  } finally {
11226
11285
  _iterator8.f();
11227
11286
  }
11228
- var _iterator9 = _createForOfIteratorHelper$v(removes),
11287
+ var _iterator9 = _createForOfIteratorHelper$w(removes),
11229
11288
  _step9;
11230
11289
  try {
11231
11290
  for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) {
@@ -11254,29 +11313,29 @@ function applyWiringChanges(workspace, _ref) {
11254
11313
  var change = id != null ? byReceiver.get(String(id)) : null;
11255
11314
  if (change) {
11256
11315
  var newListeners = applyToItem(item.listeners || {}, change);
11257
- next = _objectSpread$T(_objectSpread$T({}, next), {}, {
11316
+ next = _objectSpread$U(_objectSpread$U({}, next), {}, {
11258
11317
  listeners: newListeners
11259
11318
  });
11260
11319
  }
11261
11320
  if (Array.isArray(next.items)) {
11262
- next = _objectSpread$T(_objectSpread$T({}, next), {}, {
11321
+ next = _objectSpread$U(_objectSpread$U({}, next), {}, {
11263
11322
  items: cloneList(next.items)
11264
11323
  });
11265
11324
  }
11266
11325
  if (Array.isArray(next.layout)) {
11267
- next = _objectSpread$T(_objectSpread$T({}, next), {}, {
11326
+ next = _objectSpread$U(_objectSpread$U({}, next), {}, {
11268
11327
  layout: cloneList(next.layout)
11269
11328
  });
11270
11329
  }
11271
11330
  return next;
11272
11331
  };
11273
- var updatedWs = _objectSpread$T({}, workspace);
11332
+ var updatedWs = _objectSpread$U({}, workspace);
11274
11333
  if (Array.isArray(workspace.layout)) {
11275
11334
  updatedWs.layout = cloneList(workspace.layout);
11276
11335
  }
11277
11336
  if (Array.isArray(workspace.pages)) {
11278
11337
  updatedWs.pages = workspace.pages.map(function (page) {
11279
- return _objectSpread$T(_objectSpread$T({}, page), {}, {
11338
+ return _objectSpread$U(_objectSpread$U({}, page), {}, {
11280
11339
  layout: cloneList(page.layout)
11281
11340
  });
11282
11341
  });
@@ -11299,7 +11358,7 @@ function applyToItem(listeners, _ref2) {
11299
11358
  }
11300
11359
 
11301
11360
  // Removes first so a re-add (rare) lands.
11302
- var _iterator0 = _createForOfIteratorHelper$v(removes),
11361
+ var _iterator0 = _createForOfIteratorHelper$w(removes),
11303
11362
  _step0;
11304
11363
  try {
11305
11364
  var _loop = function _loop() {
@@ -11328,7 +11387,7 @@ function applyToItem(listeners, _ref2) {
11328
11387
  } finally {
11329
11388
  _iterator0.f();
11330
11389
  }
11331
- var _iterator1 = _createForOfIteratorHelper$v(adds),
11390
+ var _iterator1 = _createForOfIteratorHelper$w(adds),
11332
11391
  _step1;
11333
11392
  try {
11334
11393
  for (_iterator1.s(); !(_step1 = _iterator1.n()).done;) {
@@ -11652,8 +11711,8 @@ var getUserConfigurableProviders = function getUserConfigurableProviders(provide
11652
11711
  });
11653
11712
  };
11654
11713
 
11655
- 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; }
11656
- 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; }
11714
+ 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; }
11715
+ 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; }
11657
11716
  var PanelEditItemProviders = function PanelEditItemProviders(_ref) {
11658
11717
  var workspace = _ref.workspace,
11659
11718
  onUpdate = _ref.onUpdate,
@@ -11685,7 +11744,7 @@ var PanelEditItemProviders = function PanelEditItemProviders(_ref) {
11685
11744
  var selectedProviders = itemSelected.selectedProviders || {};
11686
11745
  function handleProviderChange(providerType, providerName) {
11687
11746
  var updatedItem = deepCopy(itemSelected);
11688
- var nextProviders = _objectSpread$S({}, updatedItem.selectedProviders || {});
11747
+ var nextProviders = _objectSpread$T({}, updatedItem.selectedProviders || {});
11689
11748
  if (providerName) {
11690
11749
  nextProviders[providerType] = providerName;
11691
11750
  } else {
@@ -11706,8 +11765,8 @@ var PanelEditItemProviders = function PanelEditItemProviders(_ref) {
11706
11765
  var widgetId = updatedItem.uuidString || updatedItem.uuid || updatedItem.id;
11707
11766
  if (widgetId != null) {
11708
11767
  var wsKey = String(widgetId);
11709
- var nextSelectedProviders = _objectSpread$S({}, updatedWorkspace.selectedProviders || {});
11710
- var prevForWidget = nextSelectedProviders[wsKey] ? _objectSpread$S({}, nextSelectedProviders[wsKey]) : {};
11768
+ var nextSelectedProviders = _objectSpread$T({}, updatedWorkspace.selectedProviders || {});
11769
+ var prevForWidget = nextSelectedProviders[wsKey] ? _objectSpread$T({}, nextSelectedProviders[wsKey]) : {};
11711
11770
  if (providerName) {
11712
11771
  prevForWidget[providerType] = providerName;
11713
11772
  } else {
@@ -11752,7 +11811,7 @@ var PanelEditItemProviders = function PanelEditItemProviders(_ref) {
11752
11811
  var _ref5 = _slicedToArray(_ref4, 2),
11753
11812
  name = _ref5[0],
11754
11813
  p = _ref5[1];
11755
- return _objectSpread$S({
11814
+ return _objectSpread$T({
11756
11815
  name: name
11757
11816
  }, p);
11758
11817
  });
@@ -13503,8 +13562,8 @@ var WidgetIcon = function WidgetIcon(_ref) {
13503
13562
  });
13504
13563
  };
13505
13564
 
13506
- 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; }
13507
- 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; }
13565
+ 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; }
13566
+ 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; }
13508
13567
  var ProviderForm = function ProviderForm(_ref) {
13509
13568
  var credentialSchema = _ref.credentialSchema,
13510
13569
  _ref$initialValues = _ref.initialValues,
@@ -13549,14 +13608,14 @@ var ProviderForm = function ProviderForm(_ref) {
13549
13608
  var oldKey = f.key;
13550
13609
  if (oldKey && formData[oldKey] !== undefined) {
13551
13610
  setFormData(function (fd) {
13552
- var updated = _objectSpread$R({}, fd);
13611
+ var updated = _objectSpread$S({}, fd);
13553
13612
  var val = updated[oldKey];
13554
13613
  delete updated[oldKey];
13555
13614
  if (newKey.trim()) updated[newKey] = val;
13556
13615
  return updated;
13557
13616
  });
13558
13617
  }
13559
- return _objectSpread$R(_objectSpread$R({}, f), {}, {
13618
+ return _objectSpread$S(_objectSpread$S({}, f), {}, {
13560
13619
  key: newKey
13561
13620
  });
13562
13621
  });
@@ -13568,14 +13627,14 @@ var ProviderForm = function ProviderForm(_ref) {
13568
13627
  });
13569
13628
  if (field !== null && field !== void 0 && field.key) {
13570
13629
  setFormData(function (prev) {
13571
- return _objectSpread$R(_objectSpread$R({}, prev), {}, _defineProperty({}, field.key, value));
13630
+ return _objectSpread$S(_objectSpread$S({}, prev), {}, _defineProperty({}, field.key, value));
13572
13631
  });
13573
13632
  }
13574
13633
  };
13575
13634
  var handleDynamicSecretToggle = function handleDynamicSecretToggle(id) {
13576
13635
  setDynamicFields(function (prev) {
13577
13636
  return prev.map(function (f) {
13578
- return f.id === id ? _objectSpread$R(_objectSpread$R({}, f), {}, {
13637
+ return f.id === id ? _objectSpread$S(_objectSpread$S({}, f), {}, {
13579
13638
  secret: !f.secret
13580
13639
  }) : f;
13581
13640
  });
@@ -13597,7 +13656,7 @@ var ProviderForm = function ProviderForm(_ref) {
13597
13656
  });
13598
13657
  if (field !== null && field !== void 0 && field.key) {
13599
13658
  setFormData(function (prev) {
13600
- var updated = _objectSpread$R({}, prev);
13659
+ var updated = _objectSpread$S({}, prev);
13601
13660
  delete updated[field.key];
13602
13661
  return updated;
13603
13662
  });
@@ -13639,13 +13698,13 @@ var ProviderForm = function ProviderForm(_ref) {
13639
13698
  */
13640
13699
  var handleInputChange = function handleInputChange(fieldName, value) {
13641
13700
  setFormData(function (prev) {
13642
- return _objectSpread$R(_objectSpread$R({}, prev), {}, _defineProperty({}, fieldName, value));
13701
+ return _objectSpread$S(_objectSpread$S({}, prev), {}, _defineProperty({}, fieldName, value));
13643
13702
  });
13644
13703
 
13645
13704
  // Clear error for this field if it was filled
13646
13705
  if (errors[fieldName] && value !== null && value !== void 0 && value.trim()) {
13647
13706
  setErrors(function (prev) {
13648
- var newErrors = _objectSpread$R({}, prev);
13707
+ var newErrors = _objectSpread$S({}, prev);
13649
13708
  delete newErrors[fieldName];
13650
13709
  return newErrors;
13651
13710
  });
@@ -13683,7 +13742,7 @@ var ProviderForm = function ProviderForm(_ref) {
13683
13742
  // Clear error if filled
13684
13743
  if (errors.providerName && value !== null && value !== void 0 && value.trim()) {
13685
13744
  setErrors(function (prev) {
13686
- var newErrors = _objectSpread$R({}, prev);
13745
+ var newErrors = _objectSpread$S({}, prev);
13687
13746
  delete newErrors.providerName;
13688
13747
  return newErrors;
13689
13748
  });
@@ -13920,8 +13979,8 @@ var ToolSelector$1 = function ToolSelector(_ref) {
13920
13979
  });
13921
13980
  };
13922
13981
 
13923
- 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; }
13924
- 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; }
13982
+ 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; }
13983
+ 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; }
13925
13984
  /**
13926
13985
  * Shared MCP utility functions.
13927
13986
  *
@@ -14049,7 +14108,7 @@ function buildMcpConfigFromOverrides(baseMcpConfig, envMappingRows, headerRows)
14049
14108
  headerTemplate[name] = value;
14050
14109
  }
14051
14110
  });
14052
- var config = _objectSpread$Q({}, baseMcpConfig);
14111
+ var config = _objectSpread$R({}, baseMcpConfig);
14053
14112
  if (Object.keys(headerTemplate).length > 0) {
14054
14113
  config.headerTemplate = headerTemplate;
14055
14114
  } else {
@@ -14067,7 +14126,7 @@ function buildMcpConfigFromOverrides(baseMcpConfig, envMappingRows, headerRows)
14067
14126
  envMapping[env] = cred;
14068
14127
  }
14069
14128
  });
14070
- return _objectSpread$Q(_objectSpread$Q({}, baseMcpConfig), {}, {
14129
+ return _objectSpread$R(_objectSpread$R({}, baseMcpConfig), {}, {
14071
14130
  envMapping: envMapping
14072
14131
  });
14073
14132
  }
@@ -14301,11 +14360,11 @@ function mcpJsonToFormState(jsonString, nextRowId) {
14301
14360
  return result;
14302
14361
  }
14303
14362
 
14304
- function _createForOfIteratorHelper$u(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$u(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; } } }; }
14305
- function _unsupportedIterableToArray$u(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$u(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$u(r, a) : void 0; } }
14306
- function _arrayLikeToArray$u(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; }
14307
- 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; }
14308
- 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; }
14363
+ 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; } } }; }
14364
+ 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; } }
14365
+ 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; }
14366
+ 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; }
14367
+ 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; }
14309
14368
  var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14310
14369
  var isOpen = _ref.isOpen,
14311
14370
  onClose = _ref.onClose,
@@ -14500,7 +14559,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14500
14559
  .map(function (entry) {
14501
14560
  var widget = allWidgets[entry.widgetKey];
14502
14561
  if (!widget) return null; // Widget no longer exists
14503
- return _objectSpread$P(_objectSpread$P({
14562
+ return _objectSpread$Q(_objectSpread$Q({
14504
14563
  key: entry.widgetKey
14505
14564
  }, widget), {}, {
14506
14565
  savedProviders: entry.providers || {},
@@ -14588,11 +14647,11 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14588
14647
 
14589
14648
  // Flatten all widgets from all packages for the widget list
14590
14649
  flatWidgets = [];
14591
- _iterator = _createForOfIteratorHelper$u(result.packages || []);
14650
+ _iterator = _createForOfIteratorHelper$v(result.packages || []);
14592
14651
  try {
14593
14652
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
14594
14653
  pkg = _step.value;
14595
- _iterator2 = _createForOfIteratorHelper$u(pkg.widgets || []);
14654
+ _iterator2 = _createForOfIteratorHelper$v(pkg.widgets || []);
14596
14655
  try {
14597
14656
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
14598
14657
  widget = _step2.value;
@@ -14651,7 +14710,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14651
14710
  // Get widgets from ComponentManager
14652
14711
  var allWidgets = ComponentManager.map();
14653
14712
  var widgetList = Object.keys(allWidgets).map(function (key) {
14654
- return _objectSpread$P({
14713
+ return _objectSpread$Q({
14655
14714
  key: key
14656
14715
  }, allWidgets[key]);
14657
14716
  }).filter(function (widget) {
@@ -14877,7 +14936,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14877
14936
  setInlineCreateType(null);
14878
14937
  setInlineCreateSchema({});
14879
14938
  setInlineCreateError(null);
14880
- setSelectedProviders(_objectSpread$P(_objectSpread$P({}, selectedProviders), {}, _defineProperty({}, providerType, providerName)));
14939
+ setSelectedProviders(_objectSpread$Q(_objectSpread$Q({}, selectedProviders), {}, _defineProperty({}, providerType, providerName)));
14881
14940
  }
14882
14941
  };
14883
14942
  var handleInlineProviderSubmit = function handleInlineProviderSubmit(formData) {
@@ -14898,7 +14957,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14898
14957
 
14899
14958
  // Auto-select the newly created provider
14900
14959
  setSelectedProviders(function (prev) {
14901
- return _objectSpread$P(_objectSpread$P({}, prev), {}, _defineProperty({}, providerType, providerName));
14960
+ return _objectSpread$Q(_objectSpread$Q({}, prev), {}, _defineProperty({}, providerType, providerName));
14902
14961
  });
14903
14962
 
14904
14963
  // Collapse the inline form
@@ -14952,11 +15011,11 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14952
15011
  };
14953
15012
  var inlineHandleCredentialChange = function inlineHandleCredentialChange(fieldName, value) {
14954
15013
  setInlineCredentialData(function (prev) {
14955
- return _objectSpread$P(_objectSpread$P({}, prev), {}, _defineProperty({}, fieldName, value));
15014
+ return _objectSpread$Q(_objectSpread$Q({}, prev), {}, _defineProperty({}, fieldName, value));
14956
15015
  });
14957
15016
  if (inlineFormErrors[fieldName] && value !== null && value !== void 0 && value.trim()) {
14958
15017
  setInlineFormErrors(function (prev) {
14959
- var next = _objectSpread$P({}, prev);
15018
+ var next = _objectSpread$Q({}, prev);
14960
15019
  delete next[fieldName];
14961
15020
  return next;
14962
15021
  });
@@ -15049,7 +15108,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15049
15108
  refreshProviders();
15050
15109
  }
15051
15110
  setSelectedProviders(function (prev) {
15052
- return _objectSpread$P(_objectSpread$P({}, prev), {}, _defineProperty({}, providerType, providerName));
15111
+ return _objectSpread$Q(_objectSpread$Q({}, prev), {}, _defineProperty({}, providerType, providerName));
15053
15112
  });
15054
15113
 
15055
15114
  // Reset stepper state
@@ -15070,7 +15129,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15070
15129
  });
15071
15130
  };
15072
15131
  var handleConfigChange = function handleConfigChange(key, value) {
15073
- setUserConfigValues(_objectSpread$P(_objectSpread$P({}, userConfigValues), {}, _defineProperty({}, key, value)));
15132
+ setUserConfigValues(_objectSpread$Q(_objectSpread$Q({}, userConfigValues), {}, _defineProperty({}, key, value)));
15074
15133
  };
15075
15134
 
15076
15135
  // Install a package from the registry
@@ -15136,7 +15195,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15136
15195
  // Mark items as installed
15137
15196
  setProgressWidgets(function (prev) {
15138
15197
  return prev.map(function (w) {
15139
- return _objectSpread$P(_objectSpread$P({}, w), {}, {
15198
+ return _objectSpread$Q(_objectSpread$Q({}, w), {}, {
15140
15199
  status: "installed"
15141
15200
  });
15142
15201
  });
@@ -15155,7 +15214,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15155
15214
  setInstallError(msg);
15156
15215
  setProgressWidgets(function (prev) {
15157
15216
  return prev.map(function (w) {
15158
- return _objectSpread$P(_objectSpread$P({}, w), {}, {
15217
+ return _objectSpread$Q(_objectSpread$Q({}, w), {}, {
15159
15218
  status: "failed",
15160
15219
  error: msg
15161
15220
  });
@@ -15229,7 +15288,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15229
15288
 
15230
15289
  // Phase 3: Save to recent widgets
15231
15290
  saveToRecent(selectedWidget, selectedProviders, userConfigValues);
15232
- onSelectWidget(_objectSpread$P(_objectSpread$P({}, selectedWidget), {}, {
15291
+ onSelectWidget(_objectSpread$Q(_objectSpread$Q({}, selectedWidget), {}, {
15233
15292
  selectedProviders: selectedProviders,
15234
15293
  // Pass to parent
15235
15294
  userConfigValues: userConfigValues // Pass to parent
@@ -15872,7 +15931,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15872
15931
  setInlineProviderName(value);
15873
15932
  if (inlineFormErrors.providerName && value !== null && value !== void 0 && value.trim()) {
15874
15933
  setInlineFormErrors(function (prev) {
15875
- var next = _objectSpread$P({}, prev);
15934
+ var next = _objectSpread$Q({}, prev);
15876
15935
  delete next.providerName;
15877
15936
  return next;
15878
15937
  });
@@ -16486,9 +16545,9 @@ var useWidgetSchedulerStatus = function useWidgetSchedulerStatus(widgetId) {
16486
16545
  };
16487
16546
  };
16488
16547
 
16489
- 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; } } }; }
16490
- 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; } }
16491
- 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; }
16548
+ function _createForOfIteratorHelper$u(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$u(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; } } }; }
16549
+ function _unsupportedIterableToArray$u(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$u(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$u(r, a) : void 0; } }
16550
+ function _arrayLikeToArray$u(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; }
16492
16551
  function formatCountdown(ms) {
16493
16552
  if (ms == null || ms < 0) return "--";
16494
16553
  if (ms < 1000) return "< 1s";
@@ -16605,7 +16664,7 @@ var WidgetCardStatusBar = function WidgetCardStatusBar(_ref) {
16605
16664
 
16606
16665
  // Find soonest countdown among enabled tasks
16607
16666
  var soonestMs = null;
16608
- var _iterator = _createForOfIteratorHelper$t(enabledTasks),
16667
+ var _iterator = _createForOfIteratorHelper$u(enabledTasks),
16609
16668
  _step;
16610
16669
  try {
16611
16670
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -17058,8 +17117,8 @@ var ProviderSelector = function ProviderSelector(_ref) {
17058
17117
  });
17059
17118
  };
17060
17119
 
17061
- 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; }
17062
- 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; }
17120
+ 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; }
17121
+ 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; }
17063
17122
  var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17064
17123
  var transport = _ref.transport,
17065
17124
  envMappingRows = _ref.envMappingRows,
@@ -17088,7 +17147,7 @@ var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17088
17147
  var updateEnvRow = function updateEnvRow(id, field, value) {
17089
17148
  onEnvMappingRowsChange(function (prev) {
17090
17149
  return prev.map(function (row) {
17091
- return row.id === id ? _objectSpread$O(_objectSpread$O({}, row), {}, _defineProperty({}, field, value)) : row;
17150
+ return row.id === id ? _objectSpread$P(_objectSpread$P({}, row), {}, _defineProperty({}, field, value)) : row;
17092
17151
  });
17093
17152
  });
17094
17153
  };
@@ -17113,7 +17172,7 @@ var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17113
17172
  var updateHeaderRow = function updateHeaderRow(id, field, value) {
17114
17173
  onHeaderRowsChange(function (prev) {
17115
17174
  return prev.map(function (row) {
17116
- return row.id === id ? _objectSpread$O(_objectSpread$O({}, row), {}, _defineProperty({}, field, value)) : row;
17175
+ return row.id === id ? _objectSpread$P(_objectSpread$P({}, row), {}, _defineProperty({}, field, value)) : row;
17117
17176
  });
17118
17177
  });
17119
17178
  };
@@ -17262,8 +17321,8 @@ var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17262
17321
  });
17263
17322
  };
17264
17323
 
17265
- 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; }
17266
- 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; }
17324
+ 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; }
17325
+ 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; }
17267
17326
  var McpServerPicker = function McpServerPicker(_ref) {
17268
17327
  var _testResult$tools;
17269
17328
  var isOpen = _ref.isOpen,
@@ -17442,11 +17501,11 @@ var McpServerPicker = function McpServerPicker(_ref) {
17442
17501
  // Handle credential field changes
17443
17502
  var handleCredentialChange = function handleCredentialChange(fieldName, value) {
17444
17503
  setCredentialData(function (prev) {
17445
- return _objectSpread$N(_objectSpread$N({}, prev), {}, _defineProperty({}, fieldName, value));
17504
+ return _objectSpread$O(_objectSpread$O({}, prev), {}, _defineProperty({}, fieldName, value));
17446
17505
  });
17447
17506
  if (formErrors[fieldName] && value !== null && value !== void 0 && value.trim()) {
17448
17507
  setFormErrors(function (prev) {
17449
- var next = _objectSpread$N({}, prev);
17508
+ var next = _objectSpread$O({}, prev);
17450
17509
  delete next[fieldName];
17451
17510
  return next;
17452
17511
  });
@@ -17784,7 +17843,7 @@ var McpServerPicker = function McpServerPicker(_ref) {
17784
17843
  setProviderName(value);
17785
17844
  if (formErrors.providerName && value !== null && value !== void 0 && value.trim()) {
17786
17845
  setFormErrors(function (prev) {
17787
- var next = _objectSpread$N({}, prev);
17846
+ var next = _objectSpread$O({}, prev);
17788
17847
  delete next.providerName;
17789
17848
  return next;
17790
17849
  });
@@ -17974,8 +18033,8 @@ var McpServerPicker = function McpServerPicker(_ref) {
17974
18033
  });
17975
18034
  };
17976
18035
 
17977
- 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; }
17978
- 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; }
18036
+ 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; }
18037
+ 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; }
17979
18038
  var USE_ENHANCED_WIDGET_SELECTOR = true; // Set to false to use original modal
17980
18039
 
17981
18040
  /**
@@ -18021,7 +18080,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18021
18080
  var _ref3 = _slicedToArray(_ref2, 2),
18022
18081
  id = _ref3[0],
18023
18082
  p = _ref3[1];
18024
- return _objectSpread$M(_objectSpread$M({}, p), {}, {
18083
+ return _objectSpread$N(_objectSpread$N({}, p), {}, {
18025
18084
  id: id,
18026
18085
  name: p.name || id
18027
18086
  });
@@ -18108,7 +18167,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18108
18167
  // so we use its layout to replace any corrupted grid data.
18109
18168
  if (workspace && workspace["layout"]) {
18110
18169
  var model = new DashboardModel(workspace);
18111
- setCurrentWorkspace(_objectSpread$M(_objectSpread$M({}, workspace), {}, {
18170
+ setCurrentWorkspace(_objectSpread$N(_objectSpread$N({}, workspace), {}, {
18112
18171
  layout: model.layout
18113
18172
  }));
18114
18173
  } else {
@@ -18181,7 +18240,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18181
18240
  }
18182
18241
  try {
18183
18242
  var hasChildren = config.type === "workspace";
18184
- var newLayout = addItemToItemLayout(ws.layout, gridItem.id, _objectSpread$M(_objectSpread$M({}, config), {}, {
18243
+ var newLayout = addItemToItemLayout(ws.layout, gridItem.id, _objectSpread$N(_objectSpread$N({}, config), {}, {
18185
18244
  component: widgetComponentName,
18186
18245
  packageId: config._sourcePackage || config.packageId || null
18187
18246
  }), hasChildren);
@@ -18627,7 +18686,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18627
18686
  var uuid = widget.uuid || widget.uuidString;
18628
18687
  if (uuid) {
18629
18688
  newWorkspace.selectedProviders = newWorkspace.selectedProviders || {};
18630
- newWorkspace.selectedProviders[uuid] = _objectSpread$M(_objectSpread$M({}, newWorkspace.selectedProviders[uuid] || {}), {}, _defineProperty({}, providerType, providerId));
18689
+ newWorkspace.selectedProviders[uuid] = _objectSpread$N(_objectSpread$N({}, newWorkspace.selectedProviders[uuid] || {}), {}, _defineProperty({}, providerType, providerId));
18631
18690
  }
18632
18691
  setCurrentWorkspace(newWorkspace);
18633
18692
  // Propagate to the parent (DashboardStage) so workspaceSelected
@@ -18700,15 +18759,17 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18700
18759
  keepComponent = _ref7.keepComponent;
18701
18760
  try {
18702
18761
  var dashboard = new DashboardModel(currentWorkspace);
18703
- var result = dashboard.mergeGridCells(gridContainer.id, cellNumbers);
18762
+ // Slice 9: pass keepComponent into the model so the chosen
18763
+ // component lands on the kept cell. The model returns the
18764
+ // orphaned ones in `conflictingComponents` for layout cleanup.
18765
+ var result = dashboard.mergeGridCells(gridContainer.id, cellNumbers, keepComponent);
18704
18766
  if (result) {
18705
- // Handle component cleanup if needed
18767
+ // Remove orphaned components from the layout — these are
18768
+ // widgets the user explicitly chose NOT to keep when there
18769
+ // were multiple in the merged region.
18706
18770
  if (result.conflictingComponents && result.conflictingComponents.length > 0) {
18707
- // Remove components that weren't selected to keep
18708
18771
  result.conflictingComponents.forEach(function (componentId) {
18709
- if (componentId !== keepComponent) {
18710
- dashboard.removeItemFromLayout(componentId);
18711
- }
18772
+ dashboard.removeItemFromLayout(componentId);
18712
18773
  });
18713
18774
  }
18714
18775
  var newWorkspace = dashboard.workspace();
@@ -18771,7 +18832,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18771
18832
  var _gridContainer$grid;
18772
18833
  var config = ComponentManager.config(widgetKey);
18773
18834
  if (!config) return;
18774
- var widgetItem = _objectSpread$M(_objectSpread$M({}, config), {}, {
18835
+ var widgetItem = _objectSpread$N(_objectSpread$N({}, config), {}, {
18775
18836
  component: widgetKey,
18776
18837
  key: widgetKey,
18777
18838
  packageId: config._sourcePackage || config.packageId || null
@@ -19032,7 +19093,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
19032
19093
  onSelectWidget: function onSelectWidget(widget) {
19033
19094
 
19034
19095
  // Add component property from widget.key
19035
- var widgetWithComponent = _objectSpread$M(_objectSpread$M({}, widget), {}, {
19096
+ var widgetWithComponent = _objectSpread$N(_objectSpread$N({}, widget), {}, {
19036
19097
  component: widget.key
19037
19098
  });
19038
19099
  handleClickConfirmAdd(widgetWithComponent, dropdownTarget);
@@ -20661,8 +20722,8 @@ var MissingProviderPrompt = function MissingProviderPrompt(_ref) {
20661
20722
  });
20662
20723
  };
20663
20724
 
20664
- 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; }
20665
- 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; }
20725
+ 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; }
20726
+ 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; }
20666
20727
  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)); }
20667
20728
  function _isNativeReflectConstruct$4() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct$4 = function _isNativeReflectConstruct() { return !!t; })(); }
20668
20729
  var ProviderErrorBoundary = /*#__PURE__*/function (_Component) {
@@ -20717,7 +20778,7 @@ var ProviderErrorBoundary = /*#__PURE__*/function (_Component) {
20717
20778
  _defineProperty(_this, "handleProviderSelect", function (providerType, providerName, credentials) {
20718
20779
 
20719
20780
  // Update local selected providers state
20720
- var updatedSelected = _objectSpread$L(_objectSpread$L({}, _this.state.selectedProviders), {}, _defineProperty({}, providerType, providerName));
20781
+ var updatedSelected = _objectSpread$M(_objectSpread$M({}, _this.state.selectedProviders), {}, _defineProperty({}, providerType, providerName));
20721
20782
  _this.setState({
20722
20783
  selectedProviders: updatedSelected
20723
20784
  }, function () {
@@ -20791,8 +20852,8 @@ var ProviderErrorBoundary = /*#__PURE__*/function (_Component) {
20791
20852
  }(Component);
20792
20853
  _defineProperty(ProviderErrorBoundary, "contextType", ProviderContext);
20793
20854
 
20794
- 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; }
20795
- 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; }
20855
+ 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; }
20856
+ 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; }
20796
20857
  var withProviderDetection = function withProviderDetection(Component) {
20797
20858
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
20798
20859
  _ref$requiredProvider = _ref.requiredProviders,
@@ -20817,7 +20878,7 @@ var withProviderDetection = function withProviderDetection(Component) {
20817
20878
  onProviderSelect: onProviderSelect
20818
20879
  });
20819
20880
  }
20820
- return /*#__PURE__*/jsx(Component, _objectSpread$K({}, props));
20881
+ return /*#__PURE__*/jsx(Component, _objectSpread$L({}, props));
20821
20882
  };
20822
20883
  };
20823
20884
 
@@ -21493,8 +21554,8 @@ var WidgetNotFound = function WidgetNotFound(_ref) {
21493
21554
  });
21494
21555
  };
21495
21556
 
21496
- 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; }
21497
- 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; }
21557
+ 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; }
21558
+ 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; }
21498
21559
  /**
21499
21560
  * makeBoundApi.js
21500
21561
  *
@@ -21564,7 +21625,7 @@ function _bindMethod(rawFn, signatureLength, token) {
21564
21625
  function makeBoundApi(rawApi, token) {
21565
21626
  if (!rawApi || _typeof(rawApi) !== "object") return rawApi;
21566
21627
  if (!token) return rawApi;
21567
- var out = _objectSpread$J({}, rawApi);
21628
+ var out = _objectSpread$K({}, rawApi);
21568
21629
  // Two-pass: first collect which namespaces need cloning so we
21569
21630
  // don't repeatedly clobber sibling bindings within the same
21570
21631
  // namespace (e.g. `data.saveData` + `data.readData` both live
@@ -21580,7 +21641,7 @@ function makeBoundApi(rawApi, token) {
21580
21641
  method = _path$split2[1];
21581
21642
  var subns = rawApi[ns];
21582
21643
  if (!subns || typeof subns[method] !== "function") continue;
21583
- if (!nsToBindings[ns]) nsToBindings[ns] = _objectSpread$J({}, subns);
21644
+ if (!nsToBindings[ns]) nsToBindings[ns] = _objectSpread$K({}, subns);
21584
21645
  nsToBindings[ns][method] = _bindMethod(subns[method], signatureLength, token);
21585
21646
  }
21586
21647
  for (var _i2 = 0, _Object$entries2 = Object.entries(nsToBindings); _i2 < _Object$entries2.length; _i2++) {
@@ -21680,8 +21741,8 @@ var MountTokenWrapper = function MountTokenWrapper(_ref) {
21680
21741
  });
21681
21742
  };
21682
21743
 
21683
- 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; }
21684
- 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; }
21744
+ 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; }
21745
+ 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; }
21685
21746
  /**
21686
21747
  * buildWidgetData
21687
21748
  *
@@ -21701,7 +21762,7 @@ function buildWidgetData(_ref) {
21701
21762
  component = _ref.component,
21702
21763
  config = _ref.config,
21703
21764
  uuidString = _ref.uuidString;
21704
- return _objectSpread$I(_objectSpread$I({}, params), {}, {
21765
+ return _objectSpread$J(_objectSpread$J({}, params), {}, {
21705
21766
  name: (_params$name = params === null || params === void 0 ? void 0 : params.name) !== null && _params$name !== void 0 ? _params$name : component,
21706
21767
  uuidString: uuidString,
21707
21768
  providers: (config === null || config === void 0 ? void 0 : config.providers) || [],
@@ -21709,8 +21770,8 @@ function buildWidgetData(_ref) {
21709
21770
  });
21710
21771
  }
21711
21772
 
21712
- 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; }
21713
- 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; }
21773
+ 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; }
21774
+ 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; }
21714
21775
  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)); }
21715
21776
  function _isNativeReflectConstruct$2() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct$2 = function _isNativeReflectConstruct() { return !!t; })(); }
21716
21777
  var WidgetErrorBoundary = /*#__PURE__*/function (_Component) {
@@ -21926,7 +21987,7 @@ var WidgetRenderer = function WidgetRenderer(_ref) {
21926
21987
  // that delegate to DashboardPublisher), not the raw Electron dashApi
21927
21988
  var helpers = new WidgetHelpers(params, w);
21928
21989
  var hasScheduledTasks = ((config === null || config === void 0 ? void 0 : config.scheduledTasks) || []).length > 0;
21929
- var widgetElement = children === null ? /*#__PURE__*/jsx(WidgetComponent, _objectSpread$H(_objectSpread$H(_objectSpread$H({
21990
+ var widgetElement = children === null ? /*#__PURE__*/jsx(WidgetComponent, _objectSpread$I(_objectSpread$I(_objectSpread$I({
21930
21991
  id: "widget-nokids-".concat(widgetKey),
21931
21992
  listen: function listen(listeners, handlers) {
21932
21993
  return helpers.listen(listeners, handlers);
@@ -21940,7 +22001,7 @@ var WidgetRenderer = function WidgetRenderer(_ref) {
21940
22001
  backgroundColor: bgColor,
21941
22002
  widgetConfig: helpers.config(),
21942
22003
  widgetEventNames: helpers.events()
21943
- }), "widget-nokids-".concat(widgetKey, "-v").concat(componentVersion)) : /*#__PURE__*/jsx(WidgetComponent, _objectSpread$H(_objectSpread$H(_objectSpread$H({
22004
+ }), "widget-nokids-".concat(widgetKey, "-v").concat(componentVersion)) : /*#__PURE__*/jsx(WidgetComponent, _objectSpread$I(_objectSpread$I(_objectSpread$I({
21944
22005
  listen: function listen(listeners, handlers) {
21945
22006
  return helpers.listen(listeners, handlers);
21946
22007
  },
@@ -22147,11 +22208,11 @@ var ExternalWidget = function ExternalWidget(_ref) {
22147
22208
  var GRID_CELL_WIDGET_TYPE = "grid-cell-widget";
22148
22209
  var SIDEBAR_WIDGET_TYPE = "sidebar-widget";
22149
22210
 
22150
- 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; } } }; }
22151
- 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; } }
22152
- 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; }
22153
- function ownKeys$G(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; }
22154
- function _objectSpread$G(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$G(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$G(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
22211
+ 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; } } }; }
22212
+ 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; } }
22213
+ 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; }
22214
+ 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; }
22215
+ 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; }
22155
22216
 
22156
22217
  // Identifies which "bucket" of the workspace a LayoutBuilder belongs
22157
22218
  // to so drop handlers on grid cells can distinguish a same-container
@@ -22397,7 +22458,7 @@ var LayoutGridContainer = /*#__PURE__*/memo(function (_ref3) {
22397
22458
  var _ref5 = _slicedToArray(_ref4, 2),
22398
22459
  id = _ref5[0],
22399
22460
  provider = _ref5[1];
22400
- return _objectSpread$G({
22461
+ return _objectSpread$H({
22401
22462
  id: id
22402
22463
  }, provider);
22403
22464
  }) : [];
@@ -22772,7 +22833,7 @@ var LayoutGridContainer = /*#__PURE__*/memo(function (_ref3) {
22772
22833
  return selectable["delete"](cn);
22773
22834
  });
22774
22835
  var resolved = new Set();
22775
- var _iterator = _createForOfIteratorHelper$s(selectable),
22836
+ var _iterator = _createForOfIteratorHelper$t(selectable),
22776
22837
  _step;
22777
22838
  try {
22778
22839
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -23446,7 +23507,7 @@ var LayoutGridContainer = /*#__PURE__*/memo(function (_ref3) {
23446
23507
  var widgetSpecificSelections = (workspace === null || workspace === void 0 || (_workspace$selectedPr = workspace.selectedProviders) === null || _workspace$selectedPr === void 0 ? void 0 : _workspace$selectedPr[id]) || {};
23447
23508
 
23448
23509
  // Add provider-related props from workspace
23449
- var itemWithProviders = _objectSpread$G(_objectSpread$G({}, item), {}, {
23510
+ var itemWithProviders = _objectSpread$H(_objectSpread$H({}, item), {}, {
23450
23511
  selectedProviders: widgetSpecificSelections,
23451
23512
  onProviderSelect: onProviderSelect
23452
23513
  });
@@ -23664,8 +23725,8 @@ var LayoutGridContainer = /*#__PURE__*/memo(function (_ref3) {
23664
23725
  }) : renderComponentContainer(children);
23665
23726
  });
23666
23727
 
23667
- function ownKeys$F(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; }
23668
- function _objectSpread$F(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$F(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$F(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23728
+ function ownKeys$G(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; }
23729
+ function _objectSpread$G(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$G(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$G(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23669
23730
  function compareChildren(a, b) {
23670
23731
  if (a.order < b.order) {
23671
23732
  return -1;
@@ -24753,7 +24814,7 @@ function moveWidgetAcrossContainers(workspace, sourceGridId, sourceCell, targetG
24753
24814
 
24754
24815
  // Rewire the grid pointers first (swap works for empty target too —
24755
24816
  // targetWidgetId is null then and the source cell becomes empty).
24756
- sourceGrid.grid[sourceCell] = _objectSpread$F(_objectSpread$F({}, sourceCellData), {}, {
24817
+ sourceGrid.grid[sourceCell] = _objectSpread$G(_objectSpread$G({}, sourceCellData), {}, {
24757
24818
  component: targetWidgetId
24758
24819
  });
24759
24820
  if (!targetCellData) {
@@ -24762,7 +24823,7 @@ function moveWidgetAcrossContainers(workspace, sourceGridId, sourceCell, targetG
24762
24823
  hide: false
24763
24824
  };
24764
24825
  } else {
24765
- targetGrid.grid[targetCell] = _objectSpread$F(_objectSpread$F({}, targetCellData), {}, {
24826
+ targetGrid.grid[targetCell] = _objectSpread$G(_objectSpread$G({}, targetCellData), {}, {
24766
24827
  component: sourceWidgetId
24767
24828
  });
24768
24829
  }
@@ -25179,11 +25240,11 @@ function migrateBareComponentName(componentMap, component) {
25179
25240
  return component;
25180
25241
  }
25181
25242
 
25182
- function ownKeys$E(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; }
25183
- function _objectSpread$E(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$E(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$E(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25184
- function _createForOfIteratorHelper$r(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$r(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; } } }; }
25185
- function _unsupportedIterableToArray$r(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$r(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$r(r, a) : void 0; } }
25186
- function _arrayLikeToArray$r(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; }
25243
+ function ownKeys$F(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; }
25244
+ function _objectSpread$F(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$F(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$F(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25245
+ 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; } } }; }
25246
+ 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; } }
25247
+ 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; }
25187
25248
  /**
25188
25249
  * The model for all layout components used primarily in the renderLayout method
25189
25250
  * @param {Object} layoutItem an object containing various attributes of the layout item
@@ -25195,7 +25256,7 @@ function _arrayLikeToArray$r(r, a) { (null == a || a > r.length) && (a = r.lengt
25195
25256
  function sortObjectByKeys(obj) {
25196
25257
  var sortedKeys = Object.keys(obj).sort();
25197
25258
  var sortedObj = {};
25198
- var _iterator = _createForOfIteratorHelper$r(sortedKeys),
25259
+ var _iterator = _createForOfIteratorHelper$s(sortedKeys),
25199
25260
  _step;
25200
25261
  try {
25201
25262
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -25365,7 +25426,7 @@ var LayoutModel = function LayoutModel(layoutItem, workspaceLayout, dashboardId)
25365
25426
 
25366
25427
  // Merge user-entered config values (from EnhancedWidgetDropdown) into userPrefs
25367
25428
  if ("userConfigValues" in obj && obj.userConfigValues) {
25368
- layout.userPrefs = _objectSpread$E(_objectSpread$E({}, layout.userPrefs), obj.userConfigValues);
25429
+ layout.userPrefs = _objectSpread$F(_objectSpread$F({}, layout.userPrefs), obj.userConfigValues);
25369
25430
  }
25370
25431
 
25371
25432
  // Preserve provider selections for this widget
@@ -25507,9 +25568,9 @@ var SettingsModel = function SettingsModel() {
25507
25568
  return obj;
25508
25569
  };
25509
25570
 
25510
- function _createForOfIteratorHelper$q(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$q(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; } } }; }
25511
- function _unsupportedIterableToArray$q(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$q(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$q(r, a) : void 0; } }
25512
- function _arrayLikeToArray$q(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; }
25571
+ function _createForOfIteratorHelper$r(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$r(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; } } }; }
25572
+ function _unsupportedIterableToArray$r(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$r(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$r(r, a) : void 0; } }
25573
+ function _arrayLikeToArray$r(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; }
25513
25574
 
25514
25575
  /**
25515
25576
  * Workspace-level pre-pass that migrates legacy bare component
@@ -25584,7 +25645,7 @@ function migrateScopedIdsInWorkspace(workspace, componentMap) {
25584
25645
  };
25585
25646
  var _walk = function walk(items) {
25586
25647
  if (!Array.isArray(items)) return;
25587
- var _iterator = _createForOfIteratorHelper$q(items),
25648
+ var _iterator = _createForOfIteratorHelper$r(items),
25588
25649
  _step;
25589
25650
  try {
25590
25651
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -25606,7 +25667,7 @@ function migrateScopedIdsInWorkspace(workspace, componentMap) {
25606
25667
  };
25607
25668
  _walk(workspace.layout);
25608
25669
  if (Array.isArray(workspace.pages)) {
25609
- var _iterator2 = _createForOfIteratorHelper$q(workspace.pages),
25670
+ var _iterator2 = _createForOfIteratorHelper$r(workspace.pages),
25610
25671
  _step2;
25611
25672
  try {
25612
25673
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
@@ -25623,9 +25684,9 @@ function migrateScopedIdsInWorkspace(workspace, componentMap) {
25623
25684
  return counts;
25624
25685
  }
25625
25686
 
25626
- function _createForOfIteratorHelper$p(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$p(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; } } }; }
25627
- function _unsupportedIterableToArray$p(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$p(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$p(r, a) : void 0; } }
25628
- function _arrayLikeToArray$p(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; }
25687
+ function _createForOfIteratorHelper$q(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$q(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; } } }; }
25688
+ function _unsupportedIterableToArray$q(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$q(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$q(r, a) : void 0; } }
25689
+ function _arrayLikeToArray$q(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; }
25629
25690
  /**
25630
25691
  * cleanForeignWidgetsFromWorkspace.js
25631
25692
  *
@@ -25666,7 +25727,7 @@ function cleanForeignWidgetsFromWorkspace(workspace) {
25666
25727
  var _cleanList = function cleanList(items) {
25667
25728
  if (!Array.isArray(items)) return items;
25668
25729
  var kept = [];
25669
- var _iterator = _createForOfIteratorHelper$p(items),
25730
+ var _iterator = _createForOfIteratorHelper$q(items),
25670
25731
  _step;
25671
25732
  try {
25672
25733
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -25703,7 +25764,7 @@ function cleanForeignWidgetsFromWorkspace(workspace) {
25703
25764
  workspace.sidebarLayout = _cleanList(workspace.sidebarLayout);
25704
25765
  }
25705
25766
  if (Array.isArray(workspace.pages)) {
25706
- var _iterator2 = _createForOfIteratorHelper$p(workspace.pages),
25767
+ var _iterator2 = _createForOfIteratorHelper$q(workspace.pages),
25707
25768
  _step2;
25708
25769
  try {
25709
25770
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
@@ -25721,9 +25782,9 @@ function cleanForeignWidgetsFromWorkspace(workspace) {
25721
25782
  return summary;
25722
25783
  }
25723
25784
 
25724
- function _createForOfIteratorHelper$o(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$o(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; } } }; }
25725
- function _unsupportedIterableToArray$o(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$o(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$o(r, a) : void 0; } }
25726
- function _arrayLikeToArray$o(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; }
25785
+ function _createForOfIteratorHelper$p(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$p(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; } } }; }
25786
+ function _unsupportedIterableToArray$p(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$p(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$p(r, a) : void 0; } }
25787
+ function _arrayLikeToArray$p(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; }
25727
25788
  /**
25728
25789
  * migrateLayoutItemTypes.js
25729
25790
  *
@@ -25785,7 +25846,7 @@ function migrateLayoutItemTypes(workspace) {
25785
25846
  };
25786
25847
  var _walk = function walk(items) {
25787
25848
  if (!Array.isArray(items)) return;
25788
- var _iterator = _createForOfIteratorHelper$o(items),
25849
+ var _iterator = _createForOfIteratorHelper$p(items),
25789
25850
  _step;
25790
25851
  try {
25791
25852
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -25803,7 +25864,7 @@ function migrateLayoutItemTypes(workspace) {
25803
25864
  };
25804
25865
  _walk(workspace.layout);
25805
25866
  if (Array.isArray(workspace.pages)) {
25806
- var _iterator2 = _createForOfIteratorHelper$o(workspace.pages),
25867
+ var _iterator2 = _createForOfIteratorHelper$p(workspace.pages),
25807
25868
  _step2;
25808
25869
  try {
25809
25870
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
@@ -26184,9 +26245,9 @@ var ThemeModel = function ThemeModel() {
26184
26245
  }
26185
26246
  };
26186
26247
 
26187
- function _createForOfIteratorHelper$n(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$n(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; } } }; }
26188
- function _unsupportedIterableToArray$n(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$n(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$n(r, a) : void 0; } }
26189
- function _arrayLikeToArray$n(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; }
26248
+ function _createForOfIteratorHelper$o(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$o(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; } } }; }
26249
+ function _unsupportedIterableToArray$o(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$o(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$o(r, a) : void 0; } }
26250
+ function _arrayLikeToArray$o(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; }
26190
26251
  /*
26191
26252
  "component": AnalyticsReportsWidget,
26192
26253
  "type":"widget",
@@ -26304,7 +26365,7 @@ var ComponentConfigModel = function ComponentConfigModel() {
26304
26365
  if ("providers" in obj && Array.isArray(obj.providers)) {
26305
26366
  var seen = new Set();
26306
26367
  var cleaned = [];
26307
- var _iterator = _createForOfIteratorHelper$n(obj.providers),
26368
+ var _iterator = _createForOfIteratorHelper$o(obj.providers),
26308
26369
  _step;
26309
26370
  try {
26310
26371
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -26350,6 +26411,209 @@ var MenuItemModel = function MenuItemModel() {
26350
26411
  return m;
26351
26412
  };
26352
26413
 
26414
+ function _createForOfIteratorHelper$n(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$n(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; } } }; }
26415
+ function _unsupportedIterableToArray$n(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$n(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$n(r, a) : void 0; } }
26416
+ function _arrayLikeToArray$n(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; }
26417
+ function ownKeys$E(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; }
26418
+ function _objectSpread$E(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$E(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$E(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26419
+ /**
26420
+ * mergeGridCellsOp
26421
+ *
26422
+ * Pure helper for the multi-cell merge operation invoked by
26423
+ * `DashboardModel.mergeGridCells`. The model wraps this helper with
26424
+ * the workspace mutation glue.
26425
+ *
26426
+ * Bug history (slice 9): the original implementation always picked
26427
+ * `cellNumbers[0]` as the kept cell and unconditionally hid the rest.
26428
+ * If the user selected cells in the order (empty, widget) — clicking
26429
+ * the empty cell first — the widget cell got hidden and the kept
26430
+ * cell stayed empty. The widget's component reference still existed
26431
+ * on the now-hidden cell, but never rendered, so it visually
26432
+ * disappeared.
26433
+ *
26434
+ * Fix: deterministically place the chosen "keep" component onto the
26435
+ * kept cell. Caller can pass `keepComponentId` (e.g. from the
26436
+ * MergeCellsModal's user choice when multiple widgets are in
26437
+ * conflict). When omitted, default to the first non-null component
26438
+ * found across the selection. Components that aren't kept are
26439
+ * returned in `conflictingComponents` so the caller can remove them
26440
+ * from the layout (existing semantics).
26441
+ */
26442
+
26443
+ function _spanOf(grid, cellNumber) {
26444
+ var cell = grid[cellNumber];
26445
+ if (!cell || !cell.span) return {
26446
+ row: 1,
26447
+ col: 1
26448
+ };
26449
+ return {
26450
+ row: cell.span.row || 1,
26451
+ col: cell.span.col || 1
26452
+ };
26453
+ }
26454
+
26455
+ /**
26456
+ * @param {object} grid - Grid object (cells keyed by "row.col")
26457
+ * @param {string[]} cellNumbers - Cell keys to merge
26458
+ * @param {*} [keepComponentId] - Optional explicit choice of which
26459
+ * component (by component id) survives on the kept cell.
26460
+ * @returns {{
26461
+ * grid: object,
26462
+ * conflictingComponents: any[]
26463
+ * }}
26464
+ */
26465
+ function mergeGridCellsOp(grid, cellNumbers, keepComponentId) {
26466
+ // Deep clone the cells we touch so the input grid is never mutated.
26467
+ // Other entries pass through by reference (cheap; they aren't
26468
+ // touched by this op).
26469
+ var out = _objectSpread$E({}, grid);
26470
+
26471
+ // 1. Find bounding box accounting for existing spans.
26472
+ var minRow = Infinity,
26473
+ maxRow = -Infinity;
26474
+ var minCol = Infinity,
26475
+ maxCol = -Infinity;
26476
+ var _iterator = _createForOfIteratorHelper$n(cellNumbers),
26477
+ _step;
26478
+ try {
26479
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
26480
+ var cn = _step.value;
26481
+ var _cn$split$map = cn.split(".").map(Number),
26482
+ _cn$split$map2 = _slicedToArray(_cn$split$map, 2),
26483
+ r = _cn$split$map2[0],
26484
+ c = _cn$split$map2[1];
26485
+ var span = _spanOf(grid, cn);
26486
+ if (r < minRow) minRow = r;
26487
+ if (r + span.row - 1 > maxRow) maxRow = r + span.row - 1;
26488
+ if (c < minCol) minCol = c;
26489
+ if (c + span.col - 1 > maxCol) maxCol = c + span.col - 1;
26490
+ }
26491
+
26492
+ // 2. Clear prior merge state on selected cells: if any selected cell
26493
+ // already has a span, unhide its previously-covered cells, then
26494
+ // drop the span. This makes back-to-back merges idempotent.
26495
+ } catch (err) {
26496
+ _iterator.e(err);
26497
+ } finally {
26498
+ _iterator.f();
26499
+ }
26500
+ var _iterator2 = _createForOfIteratorHelper$n(cellNumbers),
26501
+ _step2;
26502
+ try {
26503
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
26504
+ var _cn = _step2.value;
26505
+ var cell = grid[_cn];
26506
+ if (!cell) continue;
26507
+ if (cell.span) {
26508
+ var _cn$split$map3 = _cn.split(".").map(Number),
26509
+ _cn$split$map4 = _slicedToArray(_cn$split$map3, 2),
26510
+ cr = _cn$split$map4[0],
26511
+ cc = _cn$split$map4[1];
26512
+ var sr = cell.span.row || 1;
26513
+ var sc = cell.span.col || 1;
26514
+ for (var _r = cr; _r < cr + sr; _r++) {
26515
+ for (var _c = cc; _c < cc + sc; _c++) {
26516
+ var coveredKey = "".concat(_r, ".").concat(_c);
26517
+ if (grid[coveredKey]) {
26518
+ out[coveredKey] = _objectSpread$E(_objectSpread$E({}, grid[coveredKey]), {}, {
26519
+ hide: false
26520
+ });
26521
+ }
26522
+ }
26523
+ }
26524
+ out[_cn] = _objectSpread$E({}, out[_cn] || cell);
26525
+ delete out[_cn].span;
26526
+ out[_cn].hide = false;
26527
+ } else {
26528
+ out[_cn] = _objectSpread$E(_objectSpread$E({}, cell), {}, {
26529
+ hide: false
26530
+ });
26531
+ }
26532
+ }
26533
+
26534
+ // 3. Collect every component sitting in any selected cell. Decide
26535
+ // which one survives.
26536
+ } catch (err) {
26537
+ _iterator2.e(err);
26538
+ } finally {
26539
+ _iterator2.f();
26540
+ }
26541
+ var componentsInRange = [];
26542
+ var _iterator3 = _createForOfIteratorHelper$n(cellNumbers),
26543
+ _step3;
26544
+ try {
26545
+ for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
26546
+ var _cn2 = _step3.value;
26547
+ var _cell = out[_cn2];
26548
+ if (_cell && _cell.component != null) {
26549
+ componentsInRange.push({
26550
+ cellNumber: _cn2,
26551
+ component: _cell.component
26552
+ });
26553
+ }
26554
+ }
26555
+ } catch (err) {
26556
+ _iterator3.e(err);
26557
+ } finally {
26558
+ _iterator3.f();
26559
+ }
26560
+ var keepEntry;
26561
+ if (keepComponentId != null) {
26562
+ keepEntry = componentsInRange.find(function (e) {
26563
+ return e.component === keepComponentId;
26564
+ });
26565
+ }
26566
+ if (!keepEntry) {
26567
+ keepEntry = componentsInRange[0]; // first-found fallback
26568
+ }
26569
+ var keptComponent = keepEntry ? keepEntry.component : null;
26570
+ var conflictingComponents = componentsInRange.filter(function (e) {
26571
+ return e.component !== keptComponent;
26572
+ }).map(function (e) {
26573
+ return e.component;
26574
+ });
26575
+
26576
+ // 4. Apply: kept cell gets the kept component + the new span; all
26577
+ // other selected cells get hidden and have their component refs
26578
+ // cleared (so a stale ref in a hidden cell never re-renders).
26579
+ var keepCell = cellNumbers[0];
26580
+ var _iterator4 = _createForOfIteratorHelper$n(cellNumbers),
26581
+ _step4;
26582
+ try {
26583
+ for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
26584
+ var _cn3 = _step4.value;
26585
+ if (!out[_cn3]) continue;
26586
+ if (_cn3 === keepCell) {
26587
+ out[_cn3] = _objectSpread$E(_objectSpread$E({}, out[_cn3]), {}, {
26588
+ component: keptComponent,
26589
+ hide: false
26590
+ });
26591
+ } else {
26592
+ out[_cn3] = _objectSpread$E(_objectSpread$E({}, out[_cn3]), {}, {
26593
+ component: null,
26594
+ hide: true
26595
+ });
26596
+ }
26597
+ }
26598
+
26599
+ // 5. Span on kept cell.
26600
+ } catch (err) {
26601
+ _iterator4.e(err);
26602
+ } finally {
26603
+ _iterator4.f();
26604
+ }
26605
+ out[keepCell] = _objectSpread$E(_objectSpread$E({}, out[keepCell]), {}, {
26606
+ span: {
26607
+ row: maxRow - minRow + 1,
26608
+ col: maxCol - minCol + 1
26609
+ }
26610
+ });
26611
+ return {
26612
+ grid: out,
26613
+ conflictingComponents: conflictingComponents
26614
+ };
26615
+ }
26616
+
26353
26617
  function ownKeys$D(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; }
26354
26618
  function _objectSpread$D(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$D(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$D(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26355
26619
  function _createForOfIteratorHelper$m(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$m(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; } } }; }
@@ -27850,81 +28114,25 @@ var DashboardModel = /*#__PURE__*/function () {
27850
28114
  */
27851
28115
  }, {
27852
28116
  key: "mergeGridCells",
27853
- value: function mergeGridCells(itemId, cellNumbers) {
28117
+ value: function mergeGridCells(itemId, cellNumbers, keepComponentId) {
27854
28118
  try {
27855
28119
  var gridContainer = this.getComponentById(itemId);
27856
28120
  if (!gridContainer || !gridContainer.grid) {
27857
28121
  return null;
27858
28122
  }
27859
28123
 
27860
- // Find bounding box accounting for existing spans
27861
- var minRow = Infinity,
27862
- maxRow = -Infinity;
27863
- var minCol = Infinity,
27864
- maxCol = -Infinity;
27865
- cellNumbers.forEach(function (cn) {
27866
- var _cell$span3, _cell$span4;
27867
- var _cn$split$map = cn.split(".").map(Number),
27868
- _cn$split$map2 = _slicedToArray(_cn$split$map, 2),
27869
- r = _cn$split$map2[0],
27870
- c = _cn$split$map2[1];
27871
- var cell = gridContainer.grid[cn];
27872
- var spanRow = (cell === null || cell === void 0 || (_cell$span3 = cell.span) === null || _cell$span3 === void 0 ? void 0 : _cell$span3.row) || 1;
27873
- var spanCol = (cell === null || cell === void 0 || (_cell$span4 = cell.span) === null || _cell$span4 === void 0 ? void 0 : _cell$span4.col) || 1;
27874
- minRow = Math.min(minRow, r);
27875
- maxRow = Math.max(maxRow, r + spanRow - 1);
27876
- minCol = Math.min(minCol, c);
27877
- maxCol = Math.max(maxCol, c + spanCol - 1);
27878
- });
27879
-
27880
- // Clear old merge state: if any cell in the selection already
27881
- // has a span, unhide its previously-covered cells and remove span
27882
- cellNumbers.forEach(function (cn) {
27883
- var cell = gridContainer.grid[cn];
27884
- if (cell && cell.span) {
27885
- var _cn$split$map3 = cn.split(".").map(Number),
27886
- _cn$split$map4 = _slicedToArray(_cn$split$map3, 2),
27887
- cr = _cn$split$map4[0],
27888
- cc = _cn$split$map4[1];
27889
- var sr = cell.span.row || 1;
27890
- var sc = cell.span.col || 1;
27891
- for (var r = cr; r < cr + sr; r++) {
27892
- for (var c = cc; c < cc + sc; c++) {
27893
- var coveredKey = "".concat(r, ".").concat(c);
27894
- if (gridContainer.grid[coveredKey]) {
27895
- gridContainer.grid[coveredKey].hide = false;
27896
- }
27897
- }
27898
- }
27899
- delete cell.span;
27900
- }
27901
- if (cell) {
27902
- cell.hide = false;
27903
- }
27904
- });
27905
-
27906
- // Keep the first cell, hide the others
27907
- var keepCell = cellNumbers[0];
27908
- var componentsToMove = [];
27909
- cellNumbers.forEach(function (cellNumber) {
27910
- if (cellNumber !== keepCell && gridContainer.grid[cellNumber]) {
27911
- if (gridContainer.grid[cellNumber].component) {
27912
- componentsToMove.push(gridContainer.grid[cellNumber].component);
27913
- }
27914
- gridContainer.grid[cellNumber].hide = true;
27915
- }
27916
- });
27917
-
27918
- // Add span information to the kept cell
27919
- gridContainer.grid[keepCell].span = {
27920
- row: maxRow - minRow + 1,
27921
- col: maxCol - minCol + 1
27922
- };
28124
+ // Slice 9: pure helper handles the per-cell mutation. The fix
28125
+ // is that the kept cell receives the kept component (instead of
28126
+ // leaving the component on the now-hidden absorbed cell, which
28127
+ // made widgets visually disappear when the user selected an
28128
+ // empty cell first then a widget cell).
28129
+ var result = mergeGridCellsOp(gridContainer.grid, cellNumbers, keepComponentId);
28130
+ gridContainer.grid = result.grid;
27923
28131
  this._normalizeGrid(gridContainer.grid);
27924
28132
  this.updateLayoutItem(gridContainer);
27925
28133
  return {
27926
28134
  grid: gridContainer.grid,
27927
- conflictingComponents: componentsToMove
28135
+ conflictingComponents: result.conflictingComponents
27928
28136
  };
27929
28137
  } catch (e) {
27930
28138
  return null;