@trops/dash-core 0.1.189 → 0.1.191

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
@@ -7,7 +7,7 @@ import _typeof from '@babel/runtime/helpers/typeof';
7
7
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
8
8
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
9
9
  import * as React from 'react';
10
- import React__default, { createContext, useContext, useState, useEffect, useMemo, useCallback, Fragment as Fragment$1, useRef, Component, memo, useReducer, Profiler } from 'react';
10
+ import React__default, { createContext, useContext, useState, useEffect, useMemo, useCallback, Fragment as Fragment$1, useReducer, useRef, Component, memo, Profiler } from 'react';
11
11
  import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
12
12
  import _createClass from '@babel/runtime/helpers/createClass';
13
13
  import * as jsxRuntime from 'react/jsx-runtime';
@@ -31,8 +31,8 @@ import algoliasearch from 'algoliasearch';
31
31
  import { InstantSearch, Hits } from 'react-instantsearch-hooks-web';
32
32
  import { Link } from 'react-router-dom';
33
33
 
34
- 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; }
35
- 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; }
34
+ 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; }
35
+ 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; }
36
36
  var event = {
37
37
  list: new Map(),
38
38
  // Map(1) { '<widget-UUID>' => { 'CustomSearchbar[10].searchQueryChanged': [] } }
@@ -94,7 +94,7 @@ var event = {
94
94
  uuid: subscriber["uuid"]
95
95
  };
96
96
  if ("action" in subscriber && subscriber.action !== undefined) {
97
- subscriber["action"](_objectSpread$F({}, objectToSend));
97
+ subscriber["action"](_objectSpread$G({}, objectToSend));
98
98
  }
99
99
  });
100
100
  }
@@ -2601,8 +2601,8 @@ var DashboardWrapper = function DashboardWrapper(_ref) {
2601
2601
  });
2602
2602
  };
2603
2603
 
2604
- 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; }
2605
- 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; }
2604
+ 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; }
2605
+ 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; }
2606
2606
  var DashboardThemeProvider = function DashboardThemeProvider(_ref) {
2607
2607
  var themeKey = _ref.themeKey,
2608
2608
  children = _ref.children;
@@ -2614,7 +2614,7 @@ var DashboardThemeProvider = function DashboardThemeProvider(_ref) {
2614
2614
  var dashboardTheme = themes[themeKey];
2615
2615
  var themeValue = dashboardTheme ? dashboardTheme[themeVariant] || null : null;
2616
2616
  if (!themeValue) return null;
2617
- return _objectSpread$E(_objectSpread$E({}, parentContext), {}, {
2617
+ return _objectSpread$F(_objectSpread$F({}, parentContext), {}, {
2618
2618
  currentTheme: themeValue,
2619
2619
  currentThemeKey: themeKey,
2620
2620
  theme: themeValue,
@@ -2632,8 +2632,8 @@ var DashboardThemeProvider = function DashboardThemeProvider(_ref) {
2632
2632
  });
2633
2633
  };
2634
2634
 
2635
- 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; }
2636
- 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; }
2635
+ 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; }
2636
+ 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; }
2637
2637
  var AppThemeScope = function AppThemeScope(_ref) {
2638
2638
  var children = _ref.children;
2639
2639
  var ctx = useContext(ThemeContext);
@@ -2641,7 +2641,7 @@ var AppThemeScope = function AppThemeScope(_ref) {
2641
2641
  children: children
2642
2642
  });
2643
2643
  return /*#__PURE__*/jsx(ThemeContext.Provider, {
2644
- value: _objectSpread$D(_objectSpread$D({}, ctx), {}, {
2644
+ value: _objectSpread$E(_objectSpread$E({}, ctx), {}, {
2645
2645
  currentTheme: ctx.appTheme,
2646
2646
  currentThemeKey: ctx.appThemeKey,
2647
2647
  theme: ctx.appTheme,
@@ -2753,8 +2753,8 @@ var LayoutContainer = function LayoutContainer(_ref) {
2753
2753
  });
2754
2754
  };
2755
2755
 
2756
- function ownKeys$C(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; }
2757
- function _objectSpread$C(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$C(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$C(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2756
+ 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; }
2757
+ 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; }
2758
2758
  function _createForOfIteratorHelper$f(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$f(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; } } }; }
2759
2759
  function _unsupportedIterableToArray$f(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$f(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$f(r, a) : void 0; } }
2760
2760
  function _arrayLikeToArray$f(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; }
@@ -2927,6 +2927,44 @@ var layoutTemplates = [{
2927
2927
  row: 2,
2928
2928
  col: 2
2929
2929
  }]
2930
+ }, {
2931
+ id: "two-by-three",
2932
+ name: "2x3 Grid",
2933
+ description: "Six panels in two rows of three. Good for medium-density dashboards.",
2934
+ rows: 2,
2935
+ cols: 3,
2936
+ cells: [{
2937
+ key: "1.1"
2938
+ }, {
2939
+ key: "1.2"
2940
+ }, {
2941
+ key: "1.3"
2942
+ }, {
2943
+ key: "2.1"
2944
+ }, {
2945
+ key: "2.2"
2946
+ }, {
2947
+ key: "2.3"
2948
+ }],
2949
+ previewCells: [{
2950
+ row: 1,
2951
+ col: 1
2952
+ }, {
2953
+ row: 1,
2954
+ col: 2
2955
+ }, {
2956
+ row: 1,
2957
+ col: 3
2958
+ }, {
2959
+ row: 2,
2960
+ col: 1
2961
+ }, {
2962
+ row: 2,
2963
+ col: 2
2964
+ }, {
2965
+ row: 2,
2966
+ col: 3
2967
+ }]
2930
2968
  }, {
2931
2969
  id: "three-by-three",
2932
2970
  name: "3x3 Grid",
@@ -2998,7 +3036,7 @@ function createLayoutFromTemplate(template) {
2998
3036
  try {
2999
3037
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
3000
3038
  var cell = _step.value;
3001
- grid[cell.key] = _objectSpread$C({
3039
+ grid[cell.key] = _objectSpread$D({
3002
3040
  component: null,
3003
3041
  hide: cell.hide || false
3004
3042
  }, cell.span ? {
@@ -4012,8 +4050,8 @@ var DiscoverDashboardsDetail = function DiscoverDashboardsDetail(_ref) {
4012
4050
  });
4013
4051
  };
4014
4052
 
4015
- function ownKeys$B(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4016
- function _objectSpread$B(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$B(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$B(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4053
+ function ownKeys$C(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; }
4054
+ function _objectSpread$C(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$C(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$C(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4017
4055
  var LayoutManagerModal = function LayoutManagerModal(_ref) {
4018
4056
  var open = _ref.open,
4019
4057
  setIsOpen = _ref.setIsOpen,
@@ -4249,7 +4287,7 @@ var LayoutManagerModal = function LayoutManagerModal(_ref) {
4249
4287
  }
4250
4288
  return _context2.abrupt("return");
4251
4289
  case 6:
4252
- updatedWorkspace = _objectSpread$B(_objectSpread$B({}, importedWorkspace), {}, {
4290
+ updatedWorkspace = _objectSpread$C(_objectSpread$C({}, importedWorkspace), {}, {
4253
4291
  name: dashboardName.trim(),
4254
4292
  menuId: menuId,
4255
4293
  themeKey: selectedThemeKey
@@ -6035,6 +6073,1054 @@ var WidgetList = function WidgetList(_ref4) {
6035
6073
  });
6036
6074
  };
6037
6075
 
6076
+ function ownKeys$B(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6077
+ function _objectSpread$B(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$B(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$B(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6078
+ var TOTAL_STEPS = 6; // Steps 0-5
6079
+
6080
+ var initialState = {
6081
+ step: 0,
6082
+ intent: [],
6083
+ providers: [],
6084
+ selectedWidgets: [],
6085
+ selectedDashboard: null,
6086
+ layout: {
6087
+ templateKey: null,
6088
+ widgetOrder: []
6089
+ },
6090
+ customization: {
6091
+ name: "",
6092
+ menuId: null,
6093
+ theme: null
6094
+ },
6095
+ path: null
6096
+ };
6097
+ function wizardReducer(state, action) {
6098
+ switch (action.type) {
6099
+ case "SET_STEP":
6100
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6101
+ step: action.payload
6102
+ });
6103
+ case "SET_INTENT":
6104
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6105
+ intent: action.payload
6106
+ });
6107
+ case "TOGGLE_INTENT":
6108
+ {
6109
+ var intent = state.intent.includes(action.payload) ? state.intent.filter(function (i) {
6110
+ return i !== action.payload;
6111
+ }) : [].concat(_toConsumableArray(state.intent), [action.payload]);
6112
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6113
+ intent: intent
6114
+ });
6115
+ }
6116
+ case "SET_PROVIDERS":
6117
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6118
+ providers: action.payload
6119
+ });
6120
+ case "TOGGLE_PROVIDER":
6121
+ {
6122
+ var providers = state.providers.includes(action.payload) ? state.providers.filter(function (p) {
6123
+ return p !== action.payload;
6124
+ }) : [].concat(_toConsumableArray(state.providers), [action.payload]);
6125
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6126
+ providers: providers
6127
+ });
6128
+ }
6129
+ case "SET_SELECTED_WIDGETS":
6130
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6131
+ selectedWidgets: action.payload
6132
+ });
6133
+ case "TOGGLE_WIDGET":
6134
+ {
6135
+ var exists = state.selectedWidgets.some(function (w) {
6136
+ return w.name === action.payload.name;
6137
+ });
6138
+ var selectedWidgets = exists ? state.selectedWidgets.filter(function (w) {
6139
+ return w.name !== action.payload.name;
6140
+ }) : [].concat(_toConsumableArray(state.selectedWidgets), [action.payload]);
6141
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6142
+ selectedWidgets: selectedWidgets
6143
+ });
6144
+ }
6145
+ case "SET_SELECTED_DASHBOARD":
6146
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6147
+ selectedDashboard: action.payload
6148
+ });
6149
+ case "SET_PATH":
6150
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6151
+ path: action.payload
6152
+ });
6153
+ case "SET_LAYOUT":
6154
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6155
+ layout: action.payload
6156
+ });
6157
+ case "REORDER_WIDGETS":
6158
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6159
+ layout: _objectSpread$B(_objectSpread$B({}, state.layout), {}, {
6160
+ widgetOrder: action.payload
6161
+ })
6162
+ });
6163
+ case "SET_CUSTOMIZATION":
6164
+ return _objectSpread$B(_objectSpread$B({}, state), {}, {
6165
+ customization: _objectSpread$B(_objectSpread$B({}, state.customization), action.payload)
6166
+ });
6167
+ case "RESET":
6168
+ return _objectSpread$B({}, initialState);
6169
+ default:
6170
+ return state;
6171
+ }
6172
+ }
6173
+ function widgetCountToTemplate(count) {
6174
+ if (count <= 1) return "single";
6175
+ if (count === 2) return "two-columns";
6176
+ if (count === 3) return "three-columns";
6177
+ if (count === 4) return "two-by-two";
6178
+ if (count <= 6) return "two-by-three";
6179
+ return "three-by-three";
6180
+ }
6181
+ function getCanProceed(state) {
6182
+ switch (state.step) {
6183
+ case 0:
6184
+ return state.intent.length > 0;
6185
+ case 1:
6186
+ return state.providers.length > 0;
6187
+ case 2:
6188
+ return state.path === "prebuilt" ? state.selectedDashboard !== null : state.selectedWidgets.length > 0;
6189
+ case 3:
6190
+ return state.layout.templateKey !== null;
6191
+ case 4:
6192
+ return state.customization.name.trim().length > 0;
6193
+ case 5:
6194
+ return true;
6195
+ default:
6196
+ return false;
6197
+ }
6198
+ }
6199
+ var useWizardState = function useWizardState() {
6200
+ var _useReducer = useReducer(wizardReducer, initialState),
6201
+ _useReducer2 = _slicedToArray(_useReducer, 2),
6202
+ state = _useReducer2[0],
6203
+ dispatch = _useReducer2[1];
6204
+ var canProceed = useMemo(function () {
6205
+ return getCanProceed(state);
6206
+ }, [state]);
6207
+ var selectedCount = useMemo(function () {
6208
+ return state.selectedWidgets.length;
6209
+ }, [state.selectedWidgets]);
6210
+ var isPrebuiltPath = state.path === "prebuilt";
6211
+ var isCustomPath = state.path === "custom";
6212
+ var nextStep = useCallback(function () {
6213
+ if (getCanProceed(state) && state.step < TOTAL_STEPS - 1) {
6214
+ dispatch({
6215
+ type: "SET_STEP",
6216
+ payload: state.step + 1
6217
+ });
6218
+ }
6219
+ }, [state]);
6220
+ var prevStep = useCallback(function () {
6221
+ if (state.step > 0) {
6222
+ dispatch({
6223
+ type: "SET_STEP",
6224
+ payload: state.step - 1
6225
+ });
6226
+ }
6227
+ }, [state.step]);
6228
+ var goToStep = useCallback(function (n) {
6229
+ if (n >= 0 && n < TOTAL_STEPS) {
6230
+ dispatch({
6231
+ type: "SET_STEP",
6232
+ payload: n
6233
+ });
6234
+ }
6235
+ }, []);
6236
+ return {
6237
+ state: state,
6238
+ dispatch: dispatch,
6239
+ nextStep: nextStep,
6240
+ prevStep: prevStep,
6241
+ goToStep: goToStep,
6242
+ canProceed: canProceed,
6243
+ selectedCount: selectedCount,
6244
+ isPrebuiltPath: isPrebuiltPath,
6245
+ isCustomPath: isCustomPath,
6246
+ widgetCountToTemplate: widgetCountToTemplate
6247
+ };
6248
+ };
6249
+
6250
+ var WizardLayoutPreviewStep = function WizardLayoutPreviewStep(_ref) {
6251
+ var state = _ref.state,
6252
+ dispatch = _ref.dispatch;
6253
+ var isPrebuilt = state.path === "prebuilt";
6254
+
6255
+ // Auto-select template and populate widget order on mount / widget change
6256
+ useEffect(function () {
6257
+ if (isPrebuilt) return;
6258
+ var templateKey = widgetCountToTemplate(state.selectedWidgets.length);
6259
+ var template = layoutTemplates.find(function (t) {
6260
+ return t.id === templateKey;
6261
+ });
6262
+ if (!template) return;
6263
+
6264
+ // Only update if template changed or widget order is empty
6265
+ if (state.layout.templateKey !== templateKey || state.layout.widgetOrder.length === 0) {
6266
+ var widgetOrder = state.selectedWidgets.map(function (w) {
6267
+ return w.name || w.key;
6268
+ });
6269
+ dispatch({
6270
+ type: "SET_LAYOUT",
6271
+ payload: {
6272
+ templateKey: templateKey,
6273
+ widgetOrder: widgetOrder
6274
+ }
6275
+ });
6276
+ }
6277
+ }, [isPrebuilt, state.selectedWidgets, state.layout.templateKey, state.layout.widgetOrder.length, dispatch]);
6278
+ if (isPrebuilt) {
6279
+ return /*#__PURE__*/jsx(PrebuiltPreview, {
6280
+ dashboard: state.selectedDashboard
6281
+ });
6282
+ }
6283
+ var template = layoutTemplates.find(function (t) {
6284
+ return t.id === state.layout.templateKey;
6285
+ });
6286
+ return /*#__PURE__*/jsxs("div", {
6287
+ className: "wizard-layout-step",
6288
+ children: [/*#__PURE__*/jsx("h3", {
6289
+ className: "wizard-step-header",
6290
+ children: "Preview your layout"
6291
+ }), /*#__PURE__*/jsx("p", {
6292
+ className: "wizard-step-description",
6293
+ children: "Drag widgets to rearrange their placement in the grid."
6294
+ }), template ? /*#__PURE__*/jsx(LayoutGrid, {
6295
+ template: template,
6296
+ widgetOrder: state.layout.widgetOrder,
6297
+ widgets: state.selectedWidgets,
6298
+ dispatch: dispatch
6299
+ }) : /*#__PURE__*/jsxs("div", {
6300
+ className: "wizard-empty",
6301
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
6302
+ icon: "grid-2",
6303
+ fixedWidth: true,
6304
+ className: "wizard-empty-icon"
6305
+ }), /*#__PURE__*/jsx("p", {
6306
+ children: "No layout template available."
6307
+ })]
6308
+ })]
6309
+ });
6310
+ };
6311
+
6312
+ // --- Pre-built dashboard preview ---
6313
+
6314
+ var PrebuiltPreview = function PrebuiltPreview(_ref2) {
6315
+ var dashboard = _ref2.dashboard;
6316
+ if (!dashboard) {
6317
+ return /*#__PURE__*/jsxs("div", {
6318
+ className: "wizard-layout-step",
6319
+ children: [/*#__PURE__*/jsx("h3", {
6320
+ className: "wizard-step-header",
6321
+ children: "Dashboard preview"
6322
+ }), /*#__PURE__*/jsxs("div", {
6323
+ className: "wizard-empty",
6324
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
6325
+ icon: "box-open",
6326
+ fixedWidth: true,
6327
+ className: "wizard-empty-icon"
6328
+ }), /*#__PURE__*/jsx("p", {
6329
+ children: "No dashboard selected."
6330
+ })]
6331
+ })]
6332
+ });
6333
+ }
6334
+ var widgets = dashboard.widgets || [];
6335
+ return /*#__PURE__*/jsxs("div", {
6336
+ className: "wizard-layout-step",
6337
+ children: [/*#__PURE__*/jsx("h3", {
6338
+ className: "wizard-step-header",
6339
+ children: "Dashboard preview"
6340
+ }), /*#__PURE__*/jsxs("div", {
6341
+ className: "wizard-prebuilt-preview",
6342
+ children: [/*#__PURE__*/jsxs("div", {
6343
+ className: "wizard-prebuilt-header",
6344
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
6345
+ icon: resolveIcon(dashboard.icon || "grid-2"),
6346
+ fixedWidth: true,
6347
+ className: "wizard-prebuilt-icon"
6348
+ }), /*#__PURE__*/jsx("span", {
6349
+ className: "wizard-prebuilt-name",
6350
+ children: dashboard.displayName || dashboard.name
6351
+ })]
6352
+ }), dashboard.description && /*#__PURE__*/jsx("p", {
6353
+ className: "wizard-prebuilt-desc",
6354
+ children: dashboard.description
6355
+ }), /*#__PURE__*/jsxs("div", {
6356
+ className: "wizard-prebuilt-widgets",
6357
+ children: [/*#__PURE__*/jsxs("span", {
6358
+ className: "wizard-prebuilt-widgets-label",
6359
+ children: ["Includes ", widgets.length, " widget", widgets.length !== 1 ? "s" : "", ":"]
6360
+ }), /*#__PURE__*/jsx("ul", {
6361
+ className: "wizard-prebuilt-widget-list",
6362
+ children: widgets.map(function (w, i) {
6363
+ return /*#__PURE__*/jsxs("li", {
6364
+ children: [w.icon && /*#__PURE__*/jsx(FontAwesomeIcon, {
6365
+ icon: resolveIcon(w.icon),
6366
+ fixedWidth: true,
6367
+ className: "wizard-prebuilt-widget-icon"
6368
+ }), /*#__PURE__*/jsx("span", {
6369
+ children: w.displayName || w.name
6370
+ })]
6371
+ }, w.name || i);
6372
+ })
6373
+ })]
6374
+ })]
6375
+ })]
6376
+ });
6377
+ };
6378
+
6379
+ // --- Drag-reorder grid ---
6380
+
6381
+ var LayoutGrid = function LayoutGrid(_ref3) {
6382
+ var template = _ref3.template,
6383
+ widgetOrder = _ref3.widgetOrder,
6384
+ widgets = _ref3.widgets,
6385
+ dispatch = _ref3.dispatch;
6386
+ var _useState = useState(null),
6387
+ _useState2 = _slicedToArray(_useState, 2),
6388
+ dragIndex = _useState2[0],
6389
+ setDragIndex = _useState2[1];
6390
+ var _useState3 = useState(null),
6391
+ _useState4 = _slicedToArray(_useState3, 2),
6392
+ dragOverIndex = _useState4[0],
6393
+ setDragOverIndex = _useState4[1];
6394
+ var dragRef = useRef(null);
6395
+ var totalCells = template.previewCells.length;
6396
+
6397
+ // Build cell contents: widget names for filled cells, null for empty
6398
+ var cellContents = template.previewCells.map(function (_, i) {
6399
+ var widgetId = widgetOrder[i] || null;
6400
+ if (!widgetId) return null;
6401
+ var widget = widgets.find(function (w) {
6402
+ return (w.name || w.key) === widgetId;
6403
+ });
6404
+ return widget || {
6405
+ name: widgetId
6406
+ };
6407
+ });
6408
+ var handleDragStart = useCallback(function (e, index) {
6409
+ setDragIndex(index);
6410
+ dragRef.current = index;
6411
+ e.dataTransfer.effectAllowed = "move";
6412
+ e.dataTransfer.setData("text/plain", String(index));
6413
+ }, []);
6414
+ var handleDragOver = useCallback(function (e, index) {
6415
+ e.preventDefault();
6416
+ e.dataTransfer.dropEffect = "move";
6417
+ setDragOverIndex(index);
6418
+ }, []);
6419
+ var handleDragLeave = useCallback(function () {
6420
+ setDragOverIndex(null);
6421
+ }, []);
6422
+ var handleDrop = useCallback(function (e, dropIndex) {
6423
+ e.preventDefault();
6424
+ var fromIndex = dragRef.current;
6425
+ setDragIndex(null);
6426
+ setDragOverIndex(null);
6427
+ dragRef.current = null;
6428
+ if (fromIndex === null || fromIndex === dropIndex) return;
6429
+
6430
+ // Swap the two positions in widgetOrder
6431
+ var newOrder = _toConsumableArray(widgetOrder);
6432
+ // Pad array to cover all cells
6433
+ while (newOrder.length < totalCells) {
6434
+ newOrder.push(null);
6435
+ }
6436
+ var temp = newOrder[fromIndex];
6437
+ newOrder[fromIndex] = newOrder[dropIndex];
6438
+ newOrder[dropIndex] = temp;
6439
+
6440
+ // Trim trailing nulls
6441
+ while (newOrder.length > 0 && newOrder[newOrder.length - 1] === null) {
6442
+ newOrder.pop();
6443
+ }
6444
+ dispatch({
6445
+ type: "REORDER_WIDGETS",
6446
+ payload: newOrder
6447
+ });
6448
+ }, [widgetOrder, totalCells, dispatch]);
6449
+ var handleDragEnd = useCallback(function () {
6450
+ setDragIndex(null);
6451
+ setDragOverIndex(null);
6452
+ dragRef.current = null;
6453
+ }, []);
6454
+ return /*#__PURE__*/jsx("div", {
6455
+ className: "wizard-layout-grid",
6456
+ style: {
6457
+ display: "grid",
6458
+ gridTemplateRows: "repeat(".concat(template.rows, ", 1fr)"),
6459
+ gridTemplateColumns: "repeat(".concat(template.cols, ", 1fr)")
6460
+ },
6461
+ children: template.previewCells.map(function (cell, i) {
6462
+ var content = cellContents[i];
6463
+ var isDragging = dragIndex === i;
6464
+ var isDragOver = dragOverIndex === i;
6465
+ var hasWidget = content !== null;
6466
+ var cellStyle = {};
6467
+ if (cell.rowSpan) cellStyle.gridRow = "span ".concat(cell.rowSpan);
6468
+ if (cell.colSpan) cellStyle.gridColumn = "span ".concat(cell.colSpan);
6469
+ var classNames = ["wizard-layout-cell", hasWidget ? "wizard-layout-cell--filled" : "wizard-layout-cell--empty", isDragging ? "wizard-layout-cell--dragging" : "", isDragOver ? "wizard-layout-cell--drag-over" : ""].filter(Boolean).join(" ");
6470
+ return /*#__PURE__*/jsx("div", {
6471
+ className: classNames,
6472
+ style: cellStyle,
6473
+ draggable: hasWidget,
6474
+ onDragStart: hasWidget ? function (e) {
6475
+ return handleDragStart(e, i);
6476
+ } : undefined,
6477
+ onDragOver: function onDragOver(e) {
6478
+ return handleDragOver(e, i);
6479
+ },
6480
+ onDragLeave: handleDragLeave,
6481
+ onDrop: function onDrop(e) {
6482
+ return handleDrop(e, i);
6483
+ },
6484
+ onDragEnd: handleDragEnd,
6485
+ children: hasWidget ? /*#__PURE__*/jsxs("div", {
6486
+ className: "wizard-layout-cell-content",
6487
+ children: [content.icon && /*#__PURE__*/jsx(FontAwesomeIcon, {
6488
+ icon: resolveIcon(content.icon),
6489
+ fixedWidth: true,
6490
+ className: "wizard-layout-cell-icon"
6491
+ }), /*#__PURE__*/jsx("span", {
6492
+ className: "wizard-layout-cell-name",
6493
+ children: content.displayName || content.name || content.key
6494
+ }), /*#__PURE__*/jsx(FontAwesomeIcon, {
6495
+ icon: "grip-vertical",
6496
+ className: "wizard-layout-cell-grip"
6497
+ })]
6498
+ }) : /*#__PURE__*/jsx("div", {
6499
+ className: "wizard-layout-cell-placeholder",
6500
+ children: /*#__PURE__*/jsx(FontAwesomeIcon, {
6501
+ icon: "plus",
6502
+ fixedWidth: true
6503
+ })
6504
+ })
6505
+ }, "".concat(cell.row, "-").concat(cell.col));
6506
+ })
6507
+ });
6508
+ };
6509
+
6510
+ function ownKeys$A(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6511
+ function _objectSpread$A(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$A(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$A(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6512
+ var WizardCustomizeStep = function WizardCustomizeStep(_ref) {
6513
+ var _state$selectedDashbo, _state$selectedDashbo2;
6514
+ var state = _ref.state,
6515
+ dispatch = _ref.dispatch,
6516
+ _ref$menuItems = _ref.menuItems,
6517
+ menuItems = _ref$menuItems === void 0 ? [] : _ref$menuItems,
6518
+ _ref$onSaveMenuItem = _ref.onSaveMenuItem,
6519
+ onSaveMenuItem = _ref$onSaveMenuItem === void 0 ? null : _ref$onSaveMenuItem,
6520
+ _ref$onCreateWorkspac = _ref.onCreateWorkspace,
6521
+ onCreateWorkspace = _ref$onCreateWorkspac === void 0 ? null : _ref$onCreateWorkspac,
6522
+ _ref$onInstallDashboa = _ref.onInstallDashboard,
6523
+ onInstallDashboard = _ref$onInstallDashboa === void 0 ? null : _ref$onInstallDashboa,
6524
+ _ref$onOpenDashboard = _ref.onOpenDashboard,
6525
+ onOpenDashboard = _ref$onOpenDashboard === void 0 ? null : _ref$onOpenDashboard,
6526
+ appId = _ref.appId;
6527
+ var _useContext = useContext(ThemeContext),
6528
+ themes = _useContext.themes,
6529
+ appThemeKey = _useContext.themeKey;
6530
+ var _useContext2 = useContext(AppContext),
6531
+ providersMap = _useContext2.providers;
6532
+ var _useState = useState(menuItems),
6533
+ _useState2 = _slicedToArray(_useState, 2),
6534
+ localMenuItems = _useState2[0],
6535
+ setLocalMenuItems = _useState2[1];
6536
+ var _useState3 = useState(false),
6537
+ _useState4 = _slicedToArray(_useState3, 2),
6538
+ isCreatingFolder = _useState4[0],
6539
+ setIsCreatingFolder = _useState4[1];
6540
+ var _useState5 = useState(""),
6541
+ _useState6 = _slicedToArray(_useState5, 2),
6542
+ newFolderName = _useState6[0],
6543
+ setNewFolderName = _useState6[1];
6544
+ var _useState7 = useState(null),
6545
+ _useState8 = _slicedToArray(_useState7, 2),
6546
+ newFolderIcon = _useState8[0],
6547
+ setNewFolderIcon = _useState8[1];
6548
+
6549
+ // Creation state
6550
+ var _useState9 = useState(false),
6551
+ _useState0 = _slicedToArray(_useState9, 2);
6552
+ _useState0[0];
6553
+ var setCreating = _useState0[1];
6554
+ var _useState1 = useState(null),
6555
+ _useState10 = _slicedToArray(_useState1, 2),
6556
+ error = _useState10[0],
6557
+ setError = _useState10[1];
6558
+ var _useState11 = useState(null),
6559
+ _useState12 = _slicedToArray(_useState11, 2),
6560
+ createdDashboard = _useState12[0],
6561
+ setCreatedDashboard = _useState12[1];
6562
+ var isPrebuilt = state.path === "prebuilt";
6563
+
6564
+ // Initialize customization defaults on mount
6565
+ useEffect(function () {
6566
+ setLocalMenuItems(menuItems);
6567
+ var updates = {};
6568
+ if (!state.customization.menuId && menuItems.length > 0) {
6569
+ updates.menuId = menuItems[0].id;
6570
+ }
6571
+ if (!state.customization.theme && themes) {
6572
+ var _Object$entries$sort$;
6573
+ var fallback = (_Object$entries$sort$ = Object.entries(themes).sort(function (_ref2, _ref3) {
6574
+ var _ref4 = _slicedToArray(_ref2, 2),
6575
+ a = _ref4[1];
6576
+ var _ref5 = _slicedToArray(_ref3, 2),
6577
+ b = _ref5[1];
6578
+ return (a.name || "").localeCompare(b.name || "");
6579
+ })[0]) === null || _Object$entries$sort$ === void 0 ? void 0 : _Object$entries$sort$[0];
6580
+ updates.theme = appThemeKey || fallback || null;
6581
+ }
6582
+ if (Object.keys(updates).length > 0) {
6583
+ dispatch({
6584
+ type: "SET_CUSTOMIZATION",
6585
+ payload: updates
6586
+ });
6587
+ }
6588
+ // eslint-disable-next-line react-hooks/exhaustive-deps
6589
+ }, []);
6590
+ var handleNameChange = useCallback(function (val) {
6591
+ dispatch({
6592
+ type: "SET_CUSTOMIZATION",
6593
+ payload: {
6594
+ name: val
6595
+ }
6596
+ });
6597
+ }, [dispatch]);
6598
+ var handleMenuSelect = useCallback(function (id) {
6599
+ dispatch({
6600
+ type: "SET_CUSTOMIZATION",
6601
+ payload: {
6602
+ menuId: id
6603
+ }
6604
+ });
6605
+ setIsCreatingFolder(false);
6606
+ setNewFolderName("");
6607
+ setNewFolderIcon(null);
6608
+ }, [dispatch]);
6609
+ var handleThemeSelect = useCallback(function (key) {
6610
+ dispatch({
6611
+ type: "SET_CUSTOMIZATION",
6612
+ payload: {
6613
+ theme: key
6614
+ }
6615
+ });
6616
+ }, [dispatch]);
6617
+ function handleCancelNewFolder() {
6618
+ setIsCreatingFolder(false);
6619
+ setNewFolderName("");
6620
+ setNewFolderIcon(null);
6621
+ }
6622
+ function handleSaveNewFolder() {
6623
+ if (!newFolderName.trim() || !newFolderIcon) return;
6624
+ var newItem = {
6625
+ id: Date.now(),
6626
+ name: newFolderName.trim(),
6627
+ icon: newFolderIcon
6628
+ };
6629
+ setLocalMenuItems(function (prev) {
6630
+ return [].concat(_toConsumableArray(prev), [newItem]);
6631
+ });
6632
+ dispatch({
6633
+ type: "SET_CUSTOMIZATION",
6634
+ payload: {
6635
+ menuId: newItem.id
6636
+ }
6637
+ });
6638
+ if (onSaveMenuItem) {
6639
+ onSaveMenuItem(newItem);
6640
+ }
6641
+ setIsCreatingFolder(false);
6642
+ setNewFolderName("");
6643
+ setNewFolderIcon(null);
6644
+ }
6645
+
6646
+ // --- Create logic ---
6647
+ useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
6648
+ var _state$customization, name, menuId, theme, result, _window$mainApi, installResult, updatedWorkspace, _window$mainApi2, template, layoutObj, widgetOrder, cells, _loop, i, workspace, _t;
6649
+ return _regeneratorRuntime.wrap(function (_context2) {
6650
+ while (1) switch (_context2.prev = _context2.next) {
6651
+ case 0:
6652
+ setCreating(true);
6653
+ setError(null);
6654
+ _context2.prev = 1;
6655
+ _state$customization = state.customization, name = _state$customization.name, menuId = _state$customization.menuId, theme = _state$customization.theme;
6656
+ if (!(isPrebuilt && state.selectedDashboard)) {
6657
+ _context2.next = 7;
6658
+ break;
6659
+ }
6660
+ if (!onInstallDashboard) {
6661
+ _context2.next = 3;
6662
+ break;
6663
+ }
6664
+ _context2.next = 2;
6665
+ return onInstallDashboard({
6666
+ dashboard: state.selectedDashboard,
6667
+ name: name.trim(),
6668
+ menuId: menuId || 1,
6669
+ themeKey: theme,
6670
+ appId: appId
6671
+ });
6672
+ case 2:
6673
+ result = _context2.sent;
6674
+ _context2.next = 6;
6675
+ break;
6676
+ case 3:
6677
+ if (!((_window$mainApi = window.mainApi) !== null && _window$mainApi !== void 0 && (_window$mainApi = _window$mainApi.registry) !== null && _window$mainApi !== void 0 && _window$mainApi.installDashboard)) {
6678
+ _context2.next = 6;
6679
+ break;
6680
+ }
6681
+ _context2.next = 4;
6682
+ return window.mainApi.registry.installDashboard(appId, state.selectedDashboard.name || state.selectedDashboard.key);
6683
+ case 4:
6684
+ installResult = _context2.sent;
6685
+ if (!(installResult !== null && installResult !== void 0 && installResult.workspace)) {
6686
+ _context2.next = 6;
6687
+ break;
6688
+ }
6689
+ updatedWorkspace = _objectSpread$A(_objectSpread$A({}, installResult.workspace), {}, {
6690
+ name: name.trim(),
6691
+ menuId: menuId || 1,
6692
+ themeKey: theme
6693
+ });
6694
+ _context2.next = 5;
6695
+ return window.mainApi.workspace.saveWorkspaceForApplication(appId, updatedWorkspace);
6696
+ case 5:
6697
+ result = {
6698
+ success: true,
6699
+ workspace: updatedWorkspace
6700
+ };
6701
+ case 6:
6702
+ _context2.next = 15;
6703
+ break;
6704
+ case 7:
6705
+ // Build-your-own path: create layout from template + place widgets
6706
+ template = layoutTemplates.find(function (t) {
6707
+ return t.id === state.layout.templateKey;
6708
+ });
6709
+ if (template) {
6710
+ _context2.next = 8;
6711
+ break;
6712
+ }
6713
+ throw new Error("No layout template selected.");
6714
+ case 8:
6715
+ layoutObj = createLayoutFromTemplate(template, menuId || 1); // Place widgets into grid cells
6716
+ widgetOrder = state.layout.widgetOrder || [];
6717
+ cells = template.cells.filter(function (c) {
6718
+ return !c.hide;
6719
+ });
6720
+ _loop = /*#__PURE__*/_regeneratorRuntime.mark(function _loop(i) {
6721
+ var widget;
6722
+ return _regeneratorRuntime.wrap(function (_context) {
6723
+ while (1) switch (_context.prev = _context.next) {
6724
+ case 0:
6725
+ widget = state.selectedWidgets.find(function (w) {
6726
+ return (w.name || w.key) === widgetOrder[i];
6727
+ });
6728
+ if (widget && layoutObj.grid[cells[i].key]) {
6729
+ layoutObj.grid[cells[i].key].component = widget.component || widget.name || widget.key;
6730
+ }
6731
+ case 1:
6732
+ case "end":
6733
+ return _context.stop();
6734
+ }
6735
+ }, _loop);
6736
+ });
6737
+ i = 0;
6738
+ case 9:
6739
+ if (!(i < widgetOrder.length && i < cells.length)) {
6740
+ _context2.next = 11;
6741
+ break;
6742
+ }
6743
+ return _context2.delegateYield(_loop(i), "t0", 10);
6744
+ case 10:
6745
+ i++;
6746
+ _context2.next = 9;
6747
+ break;
6748
+ case 11:
6749
+ if (!onCreateWorkspace) {
6750
+ _context2.next = 13;
6751
+ break;
6752
+ }
6753
+ _context2.next = 12;
6754
+ return onCreateWorkspace(layoutObj, theme, name.trim());
6755
+ case 12:
6756
+ result = _context2.sent;
6757
+ _context2.next = 15;
6758
+ break;
6759
+ case 13:
6760
+ if (!((_window$mainApi2 = window.mainApi) !== null && _window$mainApi2 !== void 0 && (_window$mainApi2 = _window$mainApi2.workspace) !== null && _window$mainApi2 !== void 0 && _window$mainApi2.saveWorkspaceForApplication)) {
6761
+ _context2.next = 15;
6762
+ break;
6763
+ }
6764
+ workspace = {
6765
+ name: name.trim(),
6766
+ menuId: menuId || 1,
6767
+ themeKey: theme,
6768
+ layout: [layoutObj]
6769
+ };
6770
+ _context2.next = 14;
6771
+ return window.mainApi.workspace.saveWorkspaceForApplication(appId, workspace);
6772
+ case 14:
6773
+ result = {
6774
+ success: true,
6775
+ workspace: workspace
6776
+ };
6777
+ case 15:
6778
+ if (result) {
6779
+ setCreatedDashboard(result.workspace || result);
6780
+ }
6781
+ _context2.next = 17;
6782
+ break;
6783
+ case 16:
6784
+ _context2.prev = 16;
6785
+ _t = _context2["catch"](1);
6786
+ setError(_t.message || "Failed to create dashboard.");
6787
+ case 17:
6788
+ _context2.prev = 17;
6789
+ setCreating(false);
6790
+ return _context2.finish(17);
6791
+ case 18:
6792
+ case "end":
6793
+ return _context2.stop();
6794
+ }
6795
+ }, _callee, null, [[1, 16, 17, 18]]);
6796
+ })), [state, isPrebuilt, onInstallDashboard, onCreateWorkspace, appId]);
6797
+
6798
+ // --- Success state ---
6799
+ if (createdDashboard) {
6800
+ return /*#__PURE__*/jsx("div", {
6801
+ className: "wizard-customize-step",
6802
+ children: /*#__PURE__*/jsxs("div", {
6803
+ className: "wizard-success",
6804
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
6805
+ icon: "circle-check",
6806
+ className: "wizard-success-icon"
6807
+ }), /*#__PURE__*/jsx("h3", {
6808
+ className: "wizard-step-header",
6809
+ children: "Dashboard created!"
6810
+ }), /*#__PURE__*/jsxs("p", {
6811
+ className: "wizard-step-description",
6812
+ children: ["Your dashboard", " ", /*#__PURE__*/jsx("strong", {
6813
+ children: createdDashboard.name || state.customization.name.trim()
6814
+ }), " ", "is ready."]
6815
+ }), onOpenDashboard && /*#__PURE__*/jsx(Button, {
6816
+ onClick: function onClick() {
6817
+ return onOpenDashboard(createdDashboard);
6818
+ },
6819
+ title: "Open Dashboard",
6820
+ textSize: "text-base",
6821
+ padding: "py-2 px-6",
6822
+ backgroundColor: "bg-blue-600",
6823
+ textColor: "text-white",
6824
+ hoverTextColor: "hover:text-white",
6825
+ hoverBackgroundColor: "hover:bg-blue-500",
6826
+ icon: "arrow-right"
6827
+ })]
6828
+ })
6829
+ });
6830
+ }
6831
+
6832
+ // --- Provider setup summary ---
6833
+ var selectedProviders = (state.providers || []).map(function (provKey) {
6834
+ var prov = (providersMap === null || providersMap === void 0 ? void 0 : providersMap[provKey]) || {};
6835
+ return {
6836
+ key: provKey,
6837
+ name: prov.name || provKey,
6838
+ icon: prov.icon || "plug",
6839
+ configured: !!prov.configured
6840
+ };
6841
+ });
6842
+ var configuredProviders = selectedProviders.filter(function (p) {
6843
+ return p.configured;
6844
+ });
6845
+ var needsSetupProviders = selectedProviders.filter(function (p) {
6846
+ return !p.configured;
6847
+ });
6848
+ var selectedFolder = localMenuItems.find(function (item) {
6849
+ return item.id === state.customization.menuId;
6850
+ });
6851
+ var selectedTheme = themes && state.customization.theme ? themes[state.customization.theme] : null;
6852
+ return /*#__PURE__*/jsxs("div", {
6853
+ className: "wizard-customize-step",
6854
+ children: [/*#__PURE__*/jsx("h3", {
6855
+ className: "wizard-step-header",
6856
+ children: "Customize your dashboard"
6857
+ }), /*#__PURE__*/jsx("p", {
6858
+ className: "wizard-step-description",
6859
+ children: "Name your dashboard, choose a folder, and pick a theme."
6860
+ }), /*#__PURE__*/jsxs("div", {
6861
+ className: "wizard-customize-sections",
6862
+ children: [/*#__PURE__*/jsxs("div", {
6863
+ className: "wizard-customize-section",
6864
+ children: [/*#__PURE__*/jsxs("label", {
6865
+ className: "wizard-customize-label",
6866
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
6867
+ icon: "input-text",
6868
+ fixedWidth: true,
6869
+ className: "wizard-customize-label-icon"
6870
+ }), "Dashboard Name"]
6871
+ }), /*#__PURE__*/jsx(InputText, {
6872
+ value: state.customization.name,
6873
+ onChange: handleNameChange,
6874
+ placeholder: "My Dashboard",
6875
+ autoFocus: true
6876
+ })]
6877
+ }), /*#__PURE__*/jsxs("div", {
6878
+ className: "wizard-customize-section",
6879
+ children: [/*#__PURE__*/jsxs("label", {
6880
+ className: "wizard-customize-label",
6881
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
6882
+ icon: "folder",
6883
+ fixedWidth: true,
6884
+ className: "wizard-customize-label-icon"
6885
+ }), "Folder"]
6886
+ }), /*#__PURE__*/jsxs("div", {
6887
+ className: "wizard-customize-folder-list",
6888
+ children: [!isCreatingFolder ? /*#__PURE__*/jsxs("button", {
6889
+ type: "button",
6890
+ className: "wizard-customize-folder-create",
6891
+ onClick: function onClick() {
6892
+ return setIsCreatingFolder(true);
6893
+ },
6894
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
6895
+ icon: "plus",
6896
+ fixedWidth: true
6897
+ }), /*#__PURE__*/jsx("span", {
6898
+ children: "New Folder"
6899
+ })]
6900
+ }) : /*#__PURE__*/jsxs("div", {
6901
+ className: "wizard-customize-folder-form",
6902
+ children: [/*#__PURE__*/jsxs("div", {
6903
+ className: "wizard-customize-folder-form-header",
6904
+ children: [/*#__PURE__*/jsx("span", {
6905
+ className: "text-sm font-medium text-gray-300",
6906
+ children: "New Folder"
6907
+ }), /*#__PURE__*/jsx("button", {
6908
+ type: "button",
6909
+ className: "text-gray-500 hover:text-gray-300 transition-colors",
6910
+ onClick: handleCancelNewFolder,
6911
+ children: /*#__PURE__*/jsx(FontAwesomeIcon, {
6912
+ icon: "xmark"
6913
+ })
6914
+ })]
6915
+ }), /*#__PURE__*/jsx(InputText, {
6916
+ value: newFolderName,
6917
+ onChange: function onChange(val) {
6918
+ return setNewFolderName(val);
6919
+ },
6920
+ placeholder: "Folder name"
6921
+ }), /*#__PURE__*/jsx("div", {
6922
+ className: "grid grid-cols-10 gap-2",
6923
+ children: FOLDER_ICONS.map(function (icon) {
6924
+ var isIconSelected = icon === newFolderIcon;
6925
+ return /*#__PURE__*/jsx("div", {
6926
+ className: "flex items-center justify-center p-2 rounded cursor-pointer transition-all ".concat(isIconSelected ? "bg-blue-600 ring-2 ring-blue-400 text-white" : "bg-gray-700 text-gray-400 hover:bg-gray-600 hover:text-gray-200"),
6927
+ onClick: function onClick() {
6928
+ return setNewFolderIcon(icon);
6929
+ },
6930
+ children: /*#__PURE__*/jsx(FontAwesomeIcon, {
6931
+ icon: icon
6932
+ })
6933
+ }, icon);
6934
+ })
6935
+ }), /*#__PURE__*/jsx(Button, {
6936
+ onClick: handleSaveNewFolder,
6937
+ title: "Add Folder",
6938
+ textSize: "text-sm",
6939
+ padding: "py-1 px-3",
6940
+ backgroundColor: "bg-blue-600",
6941
+ textColor: "text-white",
6942
+ hoverTextColor: "hover:text-white",
6943
+ hoverBackgroundColor: "hover:bg-blue-500",
6944
+ disabled: !newFolderName.trim() || !newFolderIcon
6945
+ })]
6946
+ }), localMenuItems.map(function (item) {
6947
+ var isSelected = !isCreatingFolder && item.id === state.customization.menuId;
6948
+ return /*#__PURE__*/jsxs("div", {
6949
+ className: "wizard-customize-folder-item ".concat(isSelected ? "wizard-customize-folder-item--selected" : ""),
6950
+ onClick: function onClick() {
6951
+ return handleMenuSelect(item.id);
6952
+ },
6953
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
6954
+ icon: item.icon || item.folder || "folder",
6955
+ fixedWidth: true,
6956
+ className: "w-5 h-5 ".concat(isSelected ? "text-blue-400" : "text-gray-400")
6957
+ }), /*#__PURE__*/jsx("span", {
6958
+ className: "text-sm font-medium ".concat(isSelected ? "text-blue-300" : "text-gray-300"),
6959
+ children: item.name
6960
+ }), isSelected && /*#__PURE__*/jsx(FontAwesomeIcon, {
6961
+ icon: "check",
6962
+ className: "ml-auto text-blue-400 text-sm"
6963
+ })]
6964
+ }, item.id);
6965
+ })]
6966
+ })]
6967
+ }), /*#__PURE__*/jsxs("div", {
6968
+ className: "wizard-customize-section",
6969
+ children: [/*#__PURE__*/jsxs("label", {
6970
+ className: "wizard-customize-label",
6971
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
6972
+ icon: "palette",
6973
+ fixedWidth: true,
6974
+ className: "wizard-customize-label-icon"
6975
+ }), "Theme"]
6976
+ }), /*#__PURE__*/jsx("div", {
6977
+ className: "wizard-customize-theme-list",
6978
+ children: themes && Object.entries(themes).sort(function (_ref7, _ref8) {
6979
+ var _ref9 = _slicedToArray(_ref7, 2),
6980
+ a = _ref9[1];
6981
+ var _ref0 = _slicedToArray(_ref8, 2),
6982
+ b = _ref0[1];
6983
+ return (a.name || "").localeCompare(b.name || "");
6984
+ }).map(function (_ref1) {
6985
+ var _ref10 = _slicedToArray(_ref1, 2),
6986
+ key = _ref10[0],
6987
+ t = _ref10[1];
6988
+ var isThemeSelected = state.customization.theme === key;
6989
+ return /*#__PURE__*/jsxs("div", {
6990
+ className: "wizard-customize-theme-item ".concat(isThemeSelected ? "wizard-customize-theme-item--selected" : ""),
6991
+ onClick: function onClick() {
6992
+ return handleThemeSelect(key);
6993
+ },
6994
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
6995
+ icon: "palette",
6996
+ className: "w-5 h-5 mr-3 ".concat(isThemeSelected ? "text-blue-400" : "text-gray-400")
6997
+ }), /*#__PURE__*/jsx("span", {
6998
+ className: "text-sm font-medium ".concat(isThemeSelected ? "text-blue-300" : "text-gray-300"),
6999
+ children: t.name || key
7000
+ }), /*#__PURE__*/jsxs("div", {
7001
+ className: "flex flex-row space-x-1 ml-auto",
7002
+ children: [t.primary && /*#__PURE__*/jsx("div", {
7003
+ className: "w-4 h-4 rounded bg-".concat(t.primary, "-500")
7004
+ }), t.secondary && /*#__PURE__*/jsx("div", {
7005
+ className: "w-4 h-4 rounded bg-".concat(t.secondary, "-500")
7006
+ }), t.tertiary && /*#__PURE__*/jsx("div", {
7007
+ className: "w-4 h-4 rounded bg-".concat(t.tertiary, "-500")
7008
+ })]
7009
+ })]
7010
+ }, key);
7011
+ })
7012
+ })]
7013
+ }), selectedProviders.length > 0 && /*#__PURE__*/jsxs("div", {
7014
+ className: "wizard-customize-section",
7015
+ children: [/*#__PURE__*/jsxs("label", {
7016
+ className: "wizard-customize-label",
7017
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
7018
+ icon: "plug",
7019
+ fixedWidth: true,
7020
+ className: "wizard-customize-label-icon"
7021
+ }), "Provider Status"]
7022
+ }), /*#__PURE__*/jsxs("div", {
7023
+ className: "wizard-customize-provider-summary",
7024
+ children: [configuredProviders.length > 0 && /*#__PURE__*/jsxs("div", {
7025
+ className: "wizard-provider-group",
7026
+ children: [/*#__PURE__*/jsxs("span", {
7027
+ className: "wizard-provider-group-label wizard-provider-group-label--ready",
7028
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
7029
+ icon: "circle-check",
7030
+ className: "text-green-400"
7031
+ }), " ", "Ready (", configuredProviders.length, ")"]
7032
+ }), /*#__PURE__*/jsx("div", {
7033
+ className: "wizard-provider-list",
7034
+ children: configuredProviders.map(function (p) {
7035
+ return /*#__PURE__*/jsxs("span", {
7036
+ className: "wizard-provider-badge wizard-provider-badge--ready",
7037
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
7038
+ icon: resolveIcon(p.icon),
7039
+ fixedWidth: true
7040
+ }), p.name]
7041
+ }, p.key);
7042
+ })
7043
+ })]
7044
+ }), needsSetupProviders.length > 0 && /*#__PURE__*/jsxs("div", {
7045
+ className: "wizard-provider-group",
7046
+ children: [/*#__PURE__*/jsxs("span", {
7047
+ className: "wizard-provider-group-label wizard-provider-group-label--setup",
7048
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
7049
+ icon: "circle-exclamation",
7050
+ className: "text-amber-400"
7051
+ }), " ", "Needs setup (", needsSetupProviders.length, ")"]
7052
+ }), /*#__PURE__*/jsx("div", {
7053
+ className: "wizard-provider-list",
7054
+ children: needsSetupProviders.map(function (p) {
7055
+ return /*#__PURE__*/jsxs("span", {
7056
+ className: "wizard-provider-badge wizard-provider-badge--setup",
7057
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
7058
+ icon: resolveIcon(p.icon),
7059
+ fixedWidth: true
7060
+ }), p.name]
7061
+ }, p.key);
7062
+ })
7063
+ })]
7064
+ })]
7065
+ })]
7066
+ }), /*#__PURE__*/jsxs("div", {
7067
+ className: "wizard-customize-summary",
7068
+ children: [/*#__PURE__*/jsx("span", {
7069
+ className: "wizard-customize-summary-title",
7070
+ children: "Summary"
7071
+ }), state.customization.name.trim() && /*#__PURE__*/jsxs("div", {
7072
+ className: "wizard-customize-summary-row",
7073
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
7074
+ icon: "clone",
7075
+ className: "text-blue-400"
7076
+ }), /*#__PURE__*/jsx("span", {
7077
+ children: state.customization.name.trim()
7078
+ })]
7079
+ }), selectedFolder && /*#__PURE__*/jsxs("div", {
7080
+ className: "wizard-customize-summary-row",
7081
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
7082
+ icon: selectedFolder.icon || selectedFolder.folder || "folder",
7083
+ className: "text-blue-400"
7084
+ }), /*#__PURE__*/jsx("span", {
7085
+ children: selectedFolder.name
7086
+ })]
7087
+ }), selectedTheme && /*#__PURE__*/jsxs("div", {
7088
+ className: "wizard-customize-summary-row",
7089
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
7090
+ icon: "palette",
7091
+ className: "text-blue-400"
7092
+ }), /*#__PURE__*/jsx("span", {
7093
+ children: selectedTheme.name || state.customization.theme
7094
+ }), /*#__PURE__*/jsxs("div", {
7095
+ className: "flex flex-row space-x-1 ml-2",
7096
+ children: [selectedTheme.primary && /*#__PURE__*/jsx("div", {
7097
+ className: "w-3 h-3 rounded bg-".concat(selectedTheme.primary, "-500")
7098
+ }), selectedTheme.secondary && /*#__PURE__*/jsx("div", {
7099
+ className: "w-3 h-3 rounded bg-".concat(selectedTheme.secondary, "-500")
7100
+ })]
7101
+ })]
7102
+ }), /*#__PURE__*/jsxs("div", {
7103
+ className: "wizard-customize-summary-row",
7104
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
7105
+ icon: isPrebuilt ? "box" : "grid-2",
7106
+ className: "text-blue-400"
7107
+ }), /*#__PURE__*/jsx("span", {
7108
+ children: isPrebuilt ? ((_state$selectedDashbo = state.selectedDashboard) === null || _state$selectedDashbo === void 0 ? void 0 : _state$selectedDashbo.displayName) || ((_state$selectedDashbo2 = state.selectedDashboard) === null || _state$selectedDashbo2 === void 0 ? void 0 : _state$selectedDashbo2.name) || "Pre-built dashboard" : "".concat(state.selectedWidgets.length, " widget").concat(state.selectedWidgets.length !== 1 ? "s" : "")
7109
+ })]
7110
+ })]
7111
+ }), error && /*#__PURE__*/jsxs("div", {
7112
+ className: "wizard-customize-error",
7113
+ children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
7114
+ icon: "triangle-exclamation",
7115
+ className: "text-red-400"
7116
+ }), /*#__PURE__*/jsx("span", {
7117
+ children: error
7118
+ })]
7119
+ })]
7120
+ })]
7121
+ });
7122
+ };
7123
+
6038
7124
  var LayoutBuilderAddItemModal = function LayoutBuilderAddItemModal(_ref) {
6039
7125
  var workspace = _ref.workspace,
6040
7126
  open = _ref.open,
@@ -10435,8 +11521,8 @@ var deepEqual = function deepEqual(a, b, opts) {
10435
11521
 
10436
11522
  var deepEqual$1 = /*@__PURE__*/getDefaultExportFromCjs(deepEqual);
10437
11523
 
10438
- function ownKeys$A(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
10439
- function _objectSpread$A(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$A(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$A(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11524
+ 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; }
11525
+ 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; }
10440
11526
  var PanelEditItem = function PanelEditItem(_ref) {
10441
11527
  var _ComponentManager$get;
10442
11528
  var workspace = _ref.workspace,
@@ -10496,7 +11582,7 @@ var PanelEditItem = function PanelEditItem(_ref) {
10496
11582
  var uuid = newItem.uuid || newItem.uuidString;
10497
11583
  if (uuid) {
10498
11584
  workspaceTemp.selectedProviders = workspaceTemp.selectedProviders || {};
10499
- workspaceTemp.selectedProviders[uuid] = _objectSpread$A(_objectSpread$A({}, workspaceTemp.selectedProviders[uuid] || {}), {}, _defineProperty({}, providerType, providerId));
11585
+ workspaceTemp.selectedProviders[uuid] = _objectSpread$z(_objectSpread$z({}, workspaceTemp.selectedProviders[uuid] || {}), {}, _defineProperty({}, providerType, providerId));
10500
11586
  }
10501
11587
  onUpdate(newItem, workspaceTemp);
10502
11588
  forceUpdate();
@@ -10625,7 +11711,7 @@ var PanelEditItem = function PanelEditItem(_ref) {
10625
11711
  var _ref5 = _slicedToArray(_ref4, 2),
10626
11712
  name = _ref5[0],
10627
11713
  p = _ref5[1];
10628
- return _objectSpread$A({
11714
+ return _objectSpread$z({
10629
11715
  name: name
10630
11716
  }, p);
10631
11717
  });
@@ -10670,8 +11756,8 @@ var _excluded$5 = ["rows", "cols"];
10670
11756
  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; } } }; }
10671
11757
  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; } }
10672
11758
  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; }
10673
- 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; }
10674
- 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; }
11759
+ 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; }
11760
+ 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; }
10675
11761
  var defaultGrid = {
10676
11762
  rows: 1,
10677
11763
  cols: 1,
@@ -10692,7 +11778,7 @@ function GridEditor(_ref) {
10692
11778
  setGrid = _useState2[1];
10693
11779
  var addRow = function addRow() {
10694
11780
  var newRow = grid.rows;
10695
- var newGrid = _objectSpread$z(_objectSpread$z({}, grid), {}, {
11781
+ var newGrid = _objectSpread$y(_objectSpread$y({}, grid), {}, {
10696
11782
  rows: grid.rows + 1
10697
11783
  });
10698
11784
  for (var col = 0; col < grid.cols; col++) {
@@ -10707,7 +11793,7 @@ function GridEditor(_ref) {
10707
11793
  };
10708
11794
  var addColumn = function addColumn() {
10709
11795
  var newCol = grid.cols;
10710
- var newGrid = _objectSpread$z(_objectSpread$z({}, grid), {}, {
11796
+ var newGrid = _objectSpread$y(_objectSpread$y({}, grid), {}, {
10711
11797
  cols: grid.cols + 1
10712
11798
  });
10713
11799
  for (var row = 0; row < grid.rows; row++) {
@@ -10740,8 +11826,8 @@ function GridEditor(_ref) {
10740
11826
  });
10741
11827
  }
10742
11828
  if (grid[nextKey]) {
10743
- var newGrid = _objectSpread$z({}, grid);
10744
- newGrid[currentKey] = _objectSpread$z(_objectSpread$z({}, newGrid[currentKey]), {}, {
11829
+ var newGrid = _objectSpread$y({}, grid);
11830
+ newGrid[currentKey] = _objectSpread$y(_objectSpread$y({}, newGrid[currentKey]), {}, {
10745
11831
  colSpan: newGrid[currentKey].colSpan + 1
10746
11832
  });
10747
11833
  delete newGrid[nextKey];
@@ -10754,8 +11840,8 @@ function GridEditor(_ref) {
10754
11840
  var currentKey = "".concat(row, ".").concat(col);
10755
11841
  var belowKey = "".concat(row + 1, ".").concat(col);
10756
11842
  if (grid[belowKey]) {
10757
- var newGrid = _objectSpread$z({}, grid);
10758
- newGrid[currentKey] = _objectSpread$z(_objectSpread$z({}, newGrid[currentKey]), {}, {
11843
+ var newGrid = _objectSpread$y({}, grid);
11844
+ newGrid[currentKey] = _objectSpread$y(_objectSpread$y({}, newGrid[currentKey]), {}, {
10759
11845
  rowSpan: newGrid[currentKey].rowSpan + 1
10760
11846
  });
10761
11847
  delete newGrid[belowKey];
@@ -10772,7 +11858,7 @@ function GridEditor(_ref) {
10772
11858
  var splitCell = function splitCell(row, col) {
10773
11859
  var key = "".concat(row, ".").concat(col);
10774
11860
  var cell = grid[key];
10775
- var newGrid = _objectSpread$z({}, grid);
11861
+ var newGrid = _objectSpread$y({}, grid);
10776
11862
 
10777
11863
  // we have to check the colspan, and since the colspan is greater than 1
10778
11864
  // Only handle horizontal split if colSpan > 1
@@ -10788,13 +11874,13 @@ function GridEditor(_ref) {
10788
11874
  var oldKey = "".concat(row, ".").concat(c);
10789
11875
  var newKey = "".concat(row, ".").concat(c + 1);
10790
11876
  if (newGrid[oldKey]) {
10791
- newGrid[newKey] = _objectSpread$z({}, newGrid[oldKey]);
11877
+ newGrid[newKey] = _objectSpread$y({}, newGrid[oldKey]);
10792
11878
  delete newGrid[oldKey];
10793
11879
  }
10794
11880
  }
10795
11881
 
10796
11882
  // Update the original cell's colSpan
10797
- newGrid[key] = _objectSpread$z(_objectSpread$z({}, cell), {}, {
11883
+ newGrid[key] = _objectSpread$y(_objectSpread$y({}, cell), {}, {
10798
11884
  colSpan: cell.colSpan - 1
10799
11885
  });
10800
11886
 
@@ -10806,7 +11892,7 @@ function GridEditor(_ref) {
10806
11892
  };
10807
11893
  }
10808
11894
  if (cell.rowSpan > 1) {
10809
- newGrid[key] = _objectSpread$z(_objectSpread$z({}, newGrid[key]), {}, {
11895
+ newGrid[key] = _objectSpread$y(_objectSpread$y({}, newGrid[key]), {}, {
10810
11896
  rowSpan: cell.rowSpan - 1
10811
11897
  });
10812
11898
  newGrid["".concat(row + 1, ".").concat(col)] = {
@@ -10925,7 +12011,7 @@ function GridEditor(_ref) {
10925
12011
  var fromKey = "".concat(from.row, ".").concat(from.col);
10926
12012
  var toKey = "".concat(to.row, ".").concat(to.col);
10927
12013
  if (fromKey === toKey) return;
10928
- var newGrid = _objectSpread$z({}, grid);
12014
+ var newGrid = _objectSpread$y({}, grid);
10929
12015
 
10930
12016
  // Swap the cells
10931
12017
  var temp = newGrid[fromKey];
@@ -10951,7 +12037,7 @@ function GridEditor(_ref) {
10951
12037
  // console.log("Grid updated:", sequencedGrid);
10952
12038
  }
10953
12039
  function resetGridLayout() {
10954
- var newGrid = _objectSpread$z({}, defaultGrid);
12040
+ var newGrid = _objectSpread$y({}, defaultGrid);
10955
12041
  setGrid(newGrid);
10956
12042
  onUpdate(newGrid);
10957
12043
  }
@@ -11229,8 +12315,8 @@ var PanelEditItemGrid = function PanelEditItemGrid(_ref) {
11229
12315
  });
11230
12316
  };
11231
12317
 
11232
- 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; }
11233
- 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; }
12318
+ 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; }
12319
+ 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; }
11234
12320
  var PanelEditItemNotifications = function PanelEditItemNotifications(_ref) {
11235
12321
  var item = _ref.item;
11236
12322
  _ref.workspace;
@@ -11253,7 +12339,7 @@ var PanelEditItemNotifications = function PanelEditItemNotifications(_ref) {
11253
12339
  }, [widgetUuid, notificationDefs.length]);
11254
12340
  function handleNotifToggle(typeKey, value) {
11255
12341
  var _window$mainApi2;
11256
- var updated = _objectSpread$y(_objectSpread$y({}, notifPrefs), {}, _defineProperty({}, typeKey, value));
12342
+ var updated = _objectSpread$x(_objectSpread$x({}, notifPrefs), {}, _defineProperty({}, typeKey, value));
11257
12343
  setNotifPrefs(updated);
11258
12344
  if ((_window$mainApi2 = window.mainApi) !== null && _window$mainApi2 !== void 0 && (_window$mainApi2 = _window$mainApi2.notifications) !== null && _window$mainApi2 !== void 0 && _window$mainApi2.setPreferences && widgetUuid) {
11259
12345
  window.mainApi.notifications.setPreferences(widgetUuid, _defineProperty({}, typeKey, value));
@@ -11298,8 +12384,8 @@ var PanelEditItemNotifications = function PanelEditItemNotifications(_ref) {
11298
12384
  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; } } }; }
11299
12385
  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; } }
11300
12386
  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; }
11301
- 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; }
11302
- 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; }
12387
+ 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; }
12388
+ 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; }
11303
12389
  var DAYS = [{
11304
12390
  key: "mon",
11305
12391
  label: "Mon"
@@ -11400,7 +12486,7 @@ function TaskScheduleEditor(_ref) {
11400
12486
  var _window$mainApi;
11401
12487
  var overrides = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
11402
12488
  if (!((_window$mainApi = window.mainApi) !== null && _window$mainApi !== void 0 && (_window$mainApi = _window$mainApi.scheduler) !== null && _window$mainApi !== void 0 && _window$mainApi.registerTask)) return;
11403
- var payload = _objectSpread$x({
12489
+ var payload = _objectSpread$w({
11404
12490
  widgetId: widgetId,
11405
12491
  widgetName: widgetName,
11406
12492
  workspaceId: workspaceId || "",
@@ -13671,8 +14757,8 @@ var WidgetIcon = function WidgetIcon(_ref) {
13671
14757
  });
13672
14758
  };
13673
14759
 
13674
- 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; }
13675
- 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; }
14760
+ 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; }
14761
+ 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; }
13676
14762
  var ProviderForm = function ProviderForm(_ref) {
13677
14763
  var credentialSchema = _ref.credentialSchema,
13678
14764
  _ref$initialValues = _ref.initialValues,
@@ -13717,14 +14803,14 @@ var ProviderForm = function ProviderForm(_ref) {
13717
14803
  var oldKey = f.key;
13718
14804
  if (oldKey && formData[oldKey] !== undefined) {
13719
14805
  setFormData(function (fd) {
13720
- var updated = _objectSpread$w({}, fd);
14806
+ var updated = _objectSpread$v({}, fd);
13721
14807
  var val = updated[oldKey];
13722
14808
  delete updated[oldKey];
13723
14809
  if (newKey.trim()) updated[newKey] = val;
13724
14810
  return updated;
13725
14811
  });
13726
14812
  }
13727
- return _objectSpread$w(_objectSpread$w({}, f), {}, {
14813
+ return _objectSpread$v(_objectSpread$v({}, f), {}, {
13728
14814
  key: newKey
13729
14815
  });
13730
14816
  });
@@ -13736,14 +14822,14 @@ var ProviderForm = function ProviderForm(_ref) {
13736
14822
  });
13737
14823
  if (field !== null && field !== void 0 && field.key) {
13738
14824
  setFormData(function (prev) {
13739
- return _objectSpread$w(_objectSpread$w({}, prev), {}, _defineProperty({}, field.key, value));
14825
+ return _objectSpread$v(_objectSpread$v({}, prev), {}, _defineProperty({}, field.key, value));
13740
14826
  });
13741
14827
  }
13742
14828
  };
13743
14829
  var handleDynamicSecretToggle = function handleDynamicSecretToggle(id) {
13744
14830
  setDynamicFields(function (prev) {
13745
14831
  return prev.map(function (f) {
13746
- return f.id === id ? _objectSpread$w(_objectSpread$w({}, f), {}, {
14832
+ return f.id === id ? _objectSpread$v(_objectSpread$v({}, f), {}, {
13747
14833
  secret: !f.secret
13748
14834
  }) : f;
13749
14835
  });
@@ -13765,7 +14851,7 @@ var ProviderForm = function ProviderForm(_ref) {
13765
14851
  });
13766
14852
  if (field !== null && field !== void 0 && field.key) {
13767
14853
  setFormData(function (prev) {
13768
- var updated = _objectSpread$w({}, prev);
14854
+ var updated = _objectSpread$v({}, prev);
13769
14855
  delete updated[field.key];
13770
14856
  return updated;
13771
14857
  });
@@ -13807,13 +14893,13 @@ var ProviderForm = function ProviderForm(_ref) {
13807
14893
  */
13808
14894
  var handleInputChange = function handleInputChange(fieldName, value) {
13809
14895
  setFormData(function (prev) {
13810
- return _objectSpread$w(_objectSpread$w({}, prev), {}, _defineProperty({}, fieldName, value));
14896
+ return _objectSpread$v(_objectSpread$v({}, prev), {}, _defineProperty({}, fieldName, value));
13811
14897
  });
13812
14898
 
13813
14899
  // Clear error for this field if it was filled
13814
14900
  if (errors[fieldName] && value !== null && value !== void 0 && value.trim()) {
13815
14901
  setErrors(function (prev) {
13816
- var newErrors = _objectSpread$w({}, prev);
14902
+ var newErrors = _objectSpread$v({}, prev);
13817
14903
  delete newErrors[fieldName];
13818
14904
  return newErrors;
13819
14905
  });
@@ -13851,7 +14937,7 @@ var ProviderForm = function ProviderForm(_ref) {
13851
14937
  // Clear error if filled
13852
14938
  if (errors.providerName && value !== null && value !== void 0 && value.trim()) {
13853
14939
  setErrors(function (prev) {
13854
- var newErrors = _objectSpread$w({}, prev);
14940
+ var newErrors = _objectSpread$v({}, prev);
13855
14941
  delete newErrors.providerName;
13856
14942
  return newErrors;
13857
14943
  });
@@ -14088,8 +15174,8 @@ var ToolSelector = function ToolSelector(_ref) {
14088
15174
  });
14089
15175
  };
14090
15176
 
14091
- 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; }
14092
- 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; }
15177
+ 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; }
15178
+ 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; }
14093
15179
  /**
14094
15180
  * Shared MCP utility functions.
14095
15181
  *
@@ -14217,7 +15303,7 @@ function buildMcpConfigFromOverrides(baseMcpConfig, envMappingRows, headerRows)
14217
15303
  headerTemplate[name] = value;
14218
15304
  }
14219
15305
  });
14220
- var config = _objectSpread$v({}, baseMcpConfig);
15306
+ var config = _objectSpread$u({}, baseMcpConfig);
14221
15307
  if (Object.keys(headerTemplate).length > 0) {
14222
15308
  config.headerTemplate = headerTemplate;
14223
15309
  } else {
@@ -14235,7 +15321,7 @@ function buildMcpConfigFromOverrides(baseMcpConfig, envMappingRows, headerRows)
14235
15321
  envMapping[env] = cred;
14236
15322
  }
14237
15323
  });
14238
- return _objectSpread$v(_objectSpread$v({}, baseMcpConfig), {}, {
15324
+ return _objectSpread$u(_objectSpread$u({}, baseMcpConfig), {}, {
14239
15325
  envMapping: envMapping
14240
15326
  });
14241
15327
  }
@@ -14479,8 +15565,8 @@ var getUserConfigurableProviders = function getUserConfigurableProviders(provide
14479
15565
  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; } } }; }
14480
15566
  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; } }
14481
15567
  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; }
14482
- 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; }
14483
- 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; }
15568
+ 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; }
15569
+ 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; }
14484
15570
  var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14485
15571
  var isOpen = _ref.isOpen,
14486
15572
  onClose = _ref.onClose,
@@ -14657,7 +15743,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14657
15743
  .map(function (entry) {
14658
15744
  var widget = allWidgets[entry.widgetKey];
14659
15745
  if (!widget) return null; // Widget no longer exists
14660
- return _objectSpread$u(_objectSpread$u({
15746
+ return _objectSpread$t(_objectSpread$t({
14661
15747
  key: entry.widgetKey
14662
15748
  }, widget), {}, {
14663
15749
  savedProviders: entry.providers || {},
@@ -14808,7 +15894,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
14808
15894
  // Get widgets from ComponentManager
14809
15895
  var allWidgets = ComponentManager.map();
14810
15896
  var widgetList = Object.keys(allWidgets).map(function (key) {
14811
- return _objectSpread$u({
15897
+ return _objectSpread$t({
14812
15898
  key: key
14813
15899
  }, allWidgets[key]);
14814
15900
  }).filter(function (widget) {
@@ -15039,7 +16125,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15039
16125
  setInlineCreateType(null);
15040
16126
  setInlineCreateSchema({});
15041
16127
  setInlineCreateError(null);
15042
- setSelectedProviders(_objectSpread$u(_objectSpread$u({}, selectedProviders), {}, _defineProperty({}, providerType, providerName)));
16128
+ setSelectedProviders(_objectSpread$t(_objectSpread$t({}, selectedProviders), {}, _defineProperty({}, providerType, providerName)));
15043
16129
  }
15044
16130
  };
15045
16131
  var handleInlineProviderSubmit = function handleInlineProviderSubmit(formData) {
@@ -15060,7 +16146,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15060
16146
 
15061
16147
  // Auto-select the newly created provider
15062
16148
  setSelectedProviders(function (prev) {
15063
- return _objectSpread$u(_objectSpread$u({}, prev), {}, _defineProperty({}, providerType, providerName));
16149
+ return _objectSpread$t(_objectSpread$t({}, prev), {}, _defineProperty({}, providerType, providerName));
15064
16150
  });
15065
16151
 
15066
16152
  // Collapse the inline form
@@ -15114,11 +16200,11 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15114
16200
  };
15115
16201
  var inlineHandleCredentialChange = function inlineHandleCredentialChange(fieldName, value) {
15116
16202
  setInlineCredentialData(function (prev) {
15117
- return _objectSpread$u(_objectSpread$u({}, prev), {}, _defineProperty({}, fieldName, value));
16203
+ return _objectSpread$t(_objectSpread$t({}, prev), {}, _defineProperty({}, fieldName, value));
15118
16204
  });
15119
16205
  if (inlineFormErrors[fieldName] && value !== null && value !== void 0 && value.trim()) {
15120
16206
  setInlineFormErrors(function (prev) {
15121
- var next = _objectSpread$u({}, prev);
16207
+ var next = _objectSpread$t({}, prev);
15122
16208
  delete next[fieldName];
15123
16209
  return next;
15124
16210
  });
@@ -15211,7 +16297,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15211
16297
  refreshProviders();
15212
16298
  }
15213
16299
  setSelectedProviders(function (prev) {
15214
- return _objectSpread$u(_objectSpread$u({}, prev), {}, _defineProperty({}, providerType, providerName));
16300
+ return _objectSpread$t(_objectSpread$t({}, prev), {}, _defineProperty({}, providerType, providerName));
15215
16301
  });
15216
16302
 
15217
16303
  // Reset stepper state
@@ -15232,7 +16318,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15232
16318
  });
15233
16319
  };
15234
16320
  var handleConfigChange = function handleConfigChange(key, value) {
15235
- setUserConfigValues(_objectSpread$u(_objectSpread$u({}, userConfigValues), {}, _defineProperty({}, key, value)));
16321
+ setUserConfigValues(_objectSpread$t(_objectSpread$t({}, userConfigValues), {}, _defineProperty({}, key, value)));
15236
16322
  };
15237
16323
 
15238
16324
  // Install a package from the registry
@@ -15322,7 +16408,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15322
16408
 
15323
16409
  // Phase 3: Save to recent widgets
15324
16410
  saveToRecent(selectedWidget, selectedProviders, userConfigValues);
15325
- onSelectWidget(_objectSpread$u(_objectSpread$u({}, selectedWidget), {}, {
16411
+ onSelectWidget(_objectSpread$t(_objectSpread$t({}, selectedWidget), {}, {
15326
16412
  selectedProviders: selectedProviders,
15327
16413
  // Pass to parent
15328
16414
  userConfigValues: userConfigValues // Pass to parent
@@ -15958,7 +17044,7 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
15958
17044
  setInlineProviderName(value);
15959
17045
  if (inlineFormErrors.providerName && value !== null && value !== void 0 && value.trim()) {
15960
17046
  setInlineFormErrors(function (prev) {
15961
- var next = _objectSpread$u({}, prev);
17047
+ var next = _objectSpread$t({}, prev);
15962
17048
  delete next.providerName;
15963
17049
  return next;
15964
17050
  });
@@ -17278,8 +18364,8 @@ var ProviderSelector = function ProviderSelector(_ref) {
17278
18364
  });
17279
18365
  };
17280
18366
 
17281
- 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; }
17282
- 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; }
18367
+ 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; }
18368
+ 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; }
17283
18369
  var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17284
18370
  var transport = _ref.transport,
17285
18371
  envMappingRows = _ref.envMappingRows,
@@ -17308,7 +18394,7 @@ var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17308
18394
  var updateEnvRow = function updateEnvRow(id, field, value) {
17309
18395
  onEnvMappingRowsChange(function (prev) {
17310
18396
  return prev.map(function (row) {
17311
- return row.id === id ? _objectSpread$t(_objectSpread$t({}, row), {}, _defineProperty({}, field, value)) : row;
18397
+ return row.id === id ? _objectSpread$s(_objectSpread$s({}, row), {}, _defineProperty({}, field, value)) : row;
17312
18398
  });
17313
18399
  });
17314
18400
  };
@@ -17333,7 +18419,7 @@ var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17333
18419
  var updateHeaderRow = function updateHeaderRow(id, field, value) {
17334
18420
  onHeaderRowsChange(function (prev) {
17335
18421
  return prev.map(function (row) {
17336
- return row.id === id ? _objectSpread$t(_objectSpread$t({}, row), {}, _defineProperty({}, field, value)) : row;
18422
+ return row.id === id ? _objectSpread$s(_objectSpread$s({}, row), {}, _defineProperty({}, field, value)) : row;
17337
18423
  });
17338
18424
  });
17339
18425
  };
@@ -17482,8 +18568,8 @@ var AdvancedMcpConfig = function AdvancedMcpConfig(_ref) {
17482
18568
  });
17483
18569
  };
17484
18570
 
17485
- 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; }
17486
- 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; }
18571
+ 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; }
18572
+ 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; }
17487
18573
  var McpServerPicker = function McpServerPicker(_ref) {
17488
18574
  var _testResult$tools;
17489
18575
  var isOpen = _ref.isOpen,
@@ -17662,11 +18748,11 @@ var McpServerPicker = function McpServerPicker(_ref) {
17662
18748
  // Handle credential field changes
17663
18749
  var handleCredentialChange = function handleCredentialChange(fieldName, value) {
17664
18750
  setCredentialData(function (prev) {
17665
- return _objectSpread$s(_objectSpread$s({}, prev), {}, _defineProperty({}, fieldName, value));
18751
+ return _objectSpread$r(_objectSpread$r({}, prev), {}, _defineProperty({}, fieldName, value));
17666
18752
  });
17667
18753
  if (formErrors[fieldName] && value !== null && value !== void 0 && value.trim()) {
17668
18754
  setFormErrors(function (prev) {
17669
- var next = _objectSpread$s({}, prev);
18755
+ var next = _objectSpread$r({}, prev);
17670
18756
  delete next[fieldName];
17671
18757
  return next;
17672
18758
  });
@@ -18004,7 +19090,7 @@ var McpServerPicker = function McpServerPicker(_ref) {
18004
19090
  setProviderName(value);
18005
19091
  if (formErrors.providerName && value !== null && value !== void 0 && value.trim()) {
18006
19092
  setFormErrors(function (prev) {
18007
- var next = _objectSpread$s({}, prev);
19093
+ var next = _objectSpread$r({}, prev);
18008
19094
  delete next.providerName;
18009
19095
  return next;
18010
19096
  });
@@ -18194,8 +19280,8 @@ var McpServerPicker = function McpServerPicker(_ref) {
18194
19280
  });
18195
19281
  };
18196
19282
 
18197
- 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; }
18198
- 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; }
19283
+ 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; }
19284
+ 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; }
18199
19285
  var USE_ENHANCED_WIDGET_SELECTOR = true; // Set to false to use original modal
18200
19286
 
18201
19287
  /**
@@ -18241,7 +19327,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18241
19327
  var _ref3 = _slicedToArray(_ref2, 2),
18242
19328
  id = _ref3[0],
18243
19329
  p = _ref3[1];
18244
- return _objectSpread$r(_objectSpread$r({}, p), {}, {
19330
+ return _objectSpread$q(_objectSpread$q({}, p), {}, {
18245
19331
  id: id,
18246
19332
  name: p.name || id
18247
19333
  });
@@ -18328,7 +19414,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18328
19414
  // so we use its layout to replace any corrupted grid data.
18329
19415
  if (workspace && workspace["layout"]) {
18330
19416
  var model = new DashboardModel(workspace);
18331
- setCurrentWorkspace(_objectSpread$r(_objectSpread$r({}, workspace), {}, {
19417
+ setCurrentWorkspace(_objectSpread$q(_objectSpread$q({}, workspace), {}, {
18332
19418
  layout: model.layout
18333
19419
  }));
18334
19420
  } else {
@@ -18719,7 +19805,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18719
19805
  var uuid = widget.uuid || widget.uuidString;
18720
19806
  if (uuid) {
18721
19807
  newWorkspace.selectedProviders = newWorkspace.selectedProviders || {};
18722
- newWorkspace.selectedProviders[uuid] = _objectSpread$r(_objectSpread$r({}, newWorkspace.selectedProviders[uuid] || {}), {}, _defineProperty({}, providerType, providerId));
19808
+ newWorkspace.selectedProviders[uuid] = _objectSpread$q(_objectSpread$q({}, newWorkspace.selectedProviders[uuid] || {}), {}, _defineProperty({}, providerType, providerId));
18723
19809
  }
18724
19810
  setCurrentWorkspace(newWorkspace);
18725
19811
  }
@@ -18854,7 +19940,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
18854
19940
  try {
18855
19941
  var config = ComponentManager.config(widgetKey);
18856
19942
  if (!config) return;
18857
- var widgetItem = _objectSpread$r(_objectSpread$r({}, config), {}, {
19943
+ var widgetItem = _objectSpread$q(_objectSpread$q({}, config), {}, {
18858
19944
  component: widgetKey,
18859
19945
  key: widgetKey
18860
19946
  });
@@ -19083,7 +20169,7 @@ var LayoutBuilder = function LayoutBuilder(_ref) {
19083
20169
  onSelectWidget: function onSelectWidget(widget) {
19084
20170
 
19085
20171
  // Add component property from widget.key
19086
- var widgetWithComponent = _objectSpread$r(_objectSpread$r({}, widget), {}, {
20172
+ var widgetWithComponent = _objectSpread$q(_objectSpread$q({}, widget), {}, {
19087
20173
  component: widget.key
19088
20174
  });
19089
20175
  handleClickConfirmAdd(widgetWithComponent, dropdownTarget);
@@ -20711,8 +21797,8 @@ var MissingProviderPrompt = function MissingProviderPrompt(_ref) {
20711
21797
  });
20712
21798
  };
20713
21799
 
20714
- 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; }
20715
- 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; }
21800
+ 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; }
21801
+ 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; }
20716
21802
  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)); }
20717
21803
  function _isNativeReflectConstruct$4() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct$4 = function _isNativeReflectConstruct() { return !!t; })(); }
20718
21804
  var ProviderErrorBoundary = /*#__PURE__*/function (_Component) {
@@ -20767,7 +21853,7 @@ var ProviderErrorBoundary = /*#__PURE__*/function (_Component) {
20767
21853
  _defineProperty(_this, "handleProviderSelect", function (providerType, providerName, credentials) {
20768
21854
 
20769
21855
  // Update local selected providers state
20770
- var updatedSelected = _objectSpread$q(_objectSpread$q({}, _this.state.selectedProviders), {}, _defineProperty({}, providerType, providerName));
21856
+ var updatedSelected = _objectSpread$p(_objectSpread$p({}, _this.state.selectedProviders), {}, _defineProperty({}, providerType, providerName));
20771
21857
  _this.setState({
20772
21858
  selectedProviders: updatedSelected
20773
21859
  }, function () {
@@ -20841,8 +21927,8 @@ var ProviderErrorBoundary = /*#__PURE__*/function (_Component) {
20841
21927
  }(Component);
20842
21928
  _defineProperty(ProviderErrorBoundary, "contextType", ProviderContext);
20843
21929
 
20844
- 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; }
20845
- 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; }
21930
+ 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; }
21931
+ 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; }
20846
21932
  var withProviderDetection = function withProviderDetection(Component) {
20847
21933
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
20848
21934
  _ref$requiredProvider = _ref.requiredProviders,
@@ -20867,7 +21953,7 @@ var withProviderDetection = function withProviderDetection(Component) {
20867
21953
  onProviderSelect: onProviderSelect
20868
21954
  });
20869
21955
  }
20870
- return /*#__PURE__*/jsx(Component, _objectSpread$p({}, props));
21956
+ return /*#__PURE__*/jsx(Component, _objectSpread$o({}, props));
20871
21957
  };
20872
21958
  };
20873
21959
 
@@ -21081,8 +22167,8 @@ var WidgetHelpers = /*#__PURE__*/function () {
21081
22167
  }]);
21082
22168
  }();
21083
22169
 
21084
- 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; }
21085
- 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; }
22170
+ 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; }
22171
+ 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; }
21086
22172
  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)); }
21087
22173
  function _isNativeReflectConstruct$2() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct$2 = function _isNativeReflectConstruct() { return !!t; })(); }
21088
22174
  var WidgetErrorBoundary = /*#__PURE__*/function (_Component) {
@@ -21209,7 +22295,7 @@ var WidgetRenderer = function WidgetRenderer(_ref) {
21209
22295
 
21210
22296
  // Build widgetData for WidgetContext — hooks read from this
21211
22297
  var uuidString = getUUID(params.uuid);
21212
- var widgetData = _objectSpread$o(_objectSpread$o({}, params), {}, {
22298
+ var widgetData = _objectSpread$n(_objectSpread$n({}, params), {}, {
21213
22299
  uuidString: uuidString,
21214
22300
  providers: (config === null || config === void 0 ? void 0 : config.providers) || [],
21215
22301
  notifications: (config === null || config === void 0 ? void 0 : config.notifications) || []
@@ -21233,7 +22319,7 @@ var WidgetRenderer = function WidgetRenderer(_ref) {
21233
22319
  widgetData: widgetData
21234
22320
  };
21235
22321
  var hasScheduledTasks = ((config === null || config === void 0 ? void 0 : config.scheduledTasks) || []).length > 0;
21236
- var widgetElement = children === null ? /*#__PURE__*/jsx(WidgetComponent, _objectSpread$o(_objectSpread$o(_objectSpread$o({
22322
+ var widgetElement = children === null ? /*#__PURE__*/jsx(WidgetComponent, _objectSpread$n(_objectSpread$n(_objectSpread$n({
21237
22323
  id: "widget-nokids-".concat(widgetKey),
21238
22324
  listen: function listen(listeners, handlers) {
21239
22325
  return helpers.listen(listeners, handlers);
@@ -21246,7 +22332,7 @@ var WidgetRenderer = function WidgetRenderer(_ref) {
21246
22332
  backgroundColor: bgColor,
21247
22333
  widgetConfig: helpers.config(),
21248
22334
  widgetEventNames: helpers.events()
21249
- }), "widget-nokids-".concat(widgetKey)) : /*#__PURE__*/jsx(WidgetComponent, _objectSpread$o(_objectSpread$o(_objectSpread$o({
22335
+ }), "widget-nokids-".concat(widgetKey)) : /*#__PURE__*/jsx(WidgetComponent, _objectSpread$n(_objectSpread$n(_objectSpread$n({
21250
22336
  listen: function listen(listeners, handlers) {
21251
22337
  return helpers.listen(listeners, handlers);
21252
22338
  },
@@ -21443,8 +22529,8 @@ var SIDEBAR_WIDGET_TYPE = "sidebar-widget";
21443
22529
  function _createForOfIteratorHelper$8(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$8(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; } } }; }
21444
22530
  function _unsupportedIterableToArray$8(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$8(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$8(r, a) : void 0; } }
21445
22531
  function _arrayLikeToArray$8(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; }
21446
- 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; }
21447
- 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; }
22532
+ 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; }
22533
+ 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; }
21448
22534
  var DraggableDroppableCellBody = function DraggableDroppableCellBody(_ref) {
21449
22535
  var cellNumber = _ref.cellNumber,
21450
22536
  gridContainerId = _ref.gridContainerId,
@@ -21631,7 +22717,7 @@ var LayoutGridContainer = /*#__PURE__*/memo(function (_ref3) {
21631
22717
  var _ref5 = _slicedToArray(_ref4, 2),
21632
22718
  id = _ref5[0],
21633
22719
  provider = _ref5[1];
21634
- return _objectSpread$n({
22720
+ return _objectSpread$m({
21635
22721
  id: id
21636
22722
  }, provider);
21637
22723
  }) : [];
@@ -22631,7 +23717,7 @@ var LayoutGridContainer = /*#__PURE__*/memo(function (_ref3) {
22631
23717
  var widgetSpecificSelections = (workspace === null || workspace === void 0 || (_workspace$selectedPr = workspace.selectedProviders) === null || _workspace$selectedPr === void 0 ? void 0 : _workspace$selectedPr[id]) || {};
22632
23718
 
22633
23719
  // Add provider-related props from workspace
22634
- var itemWithProviders = _objectSpread$n(_objectSpread$n({}, item), {}, {
23720
+ var itemWithProviders = _objectSpread$m(_objectSpread$m({}, item), {}, {
22635
23721
  selectedProviders: widgetSpecificSelections,
22636
23722
  onProviderSelect: onProviderSelect
22637
23723
  });
@@ -24144,8 +25230,8 @@ function isWidgetResolvable(componentKey) {
24144
25230
  // isMinOrderForItem
24145
25231
  // }
24146
25232
 
24147
- 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; }
24148
- 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; }
25233
+ 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; }
25234
+ 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; }
24149
25235
  function _createForOfIteratorHelper$7(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$7(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; } } }; }
24150
25236
  function _unsupportedIterableToArray$7(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$7(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$7(r, a) : void 0; } }
24151
25237
  function _arrayLikeToArray$7(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; }
@@ -24301,7 +25387,7 @@ var LayoutModel = function LayoutModel(layoutItem, workspaceLayout, dashboardId)
24301
25387
 
24302
25388
  // Merge user-entered config values (from EnhancedWidgetDropdown) into userPrefs
24303
25389
  if ("userConfigValues" in obj && obj.userConfigValues) {
24304
- layout.userPrefs = _objectSpread$m(_objectSpread$m({}, layout.userPrefs), obj.userConfigValues);
25390
+ layout.userPrefs = _objectSpread$l(_objectSpread$l({}, layout.userPrefs), obj.userConfigValues);
24305
25391
  }
24306
25392
 
24307
25393
  // Preserve provider selections for this widget
@@ -24829,8 +25915,8 @@ var MenuItemModel = function MenuItemModel() {
24829
25915
  return m;
24830
25916
  };
24831
25917
 
24832
- 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; }
24833
- 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; }
25918
+ 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; }
25919
+ 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; }
24834
25920
  /**
24835
25921
  * A Model for a Workspace (Dashboard)
24836
25922
  * The Dashboard in this instance is the entire Layout inclusive of the workspaces and widgets
@@ -26094,7 +27180,7 @@ var DashboardModel = /*#__PURE__*/function () {
26094
27180
  visibleCells.push({
26095
27181
  row: r,
26096
27182
  col: c,
26097
- data: _objectSpread$l({}, cell),
27183
+ data: _objectSpread$k({}, cell),
26098
27184
  spanCol: ((_cell$span = cell.span) === null || _cell$span === void 0 ? void 0 : _cell$span.col) || 1,
26099
27185
  spanRow: ((_cell$span2 = cell.span) === null || _cell$span2 === void 0 ? void 0 : _cell$span2.row) || 1
26100
27186
  });
@@ -26116,7 +27202,7 @@ var DashboardModel = /*#__PURE__*/function () {
26116
27202
  var vc = _visibleCells[_i5];
26117
27203
  var newCol = (vc.col - 1) * count + 1;
26118
27204
  var _key7 = "".concat(vc.row, ".").concat(newCol);
26119
- grid[_key7] = _objectSpread$l(_objectSpread$l({}, vc.data), {}, {
27205
+ grid[_key7] = _objectSpread$k(_objectSpread$k({}, vc.data), {}, {
26120
27206
  hide: false,
26121
27207
  span: {
26122
27208
  row: vc.spanRow,
@@ -26191,7 +27277,7 @@ var DashboardModel = /*#__PURE__*/function () {
26191
27277
  _visibleCells2.push({
26192
27278
  row: _r1,
26193
27279
  col: _c10,
26194
- data: _objectSpread$l({}, _cell6),
27280
+ data: _objectSpread$k({}, _cell6),
26195
27281
  spanRow: ((_cell6$span = _cell6.span) === null || _cell6$span === void 0 ? void 0 : _cell6$span.row) || 1,
26196
27282
  spanCol: ((_cell6$span2 = _cell6.span) === null || _cell6$span2 === void 0 ? void 0 : _cell6$span2.col) || 1
26197
27283
  });
@@ -26213,7 +27299,7 @@ var DashboardModel = /*#__PURE__*/function () {
26213
27299
  var _vc = _visibleCells3[_i9];
26214
27300
  var newRow = (_vc.row - 1) * count + 1;
26215
27301
  var _key10 = "".concat(newRow, ".").concat(_vc.col);
26216
- grid[_key10] = _objectSpread$l(_objectSpread$l({}, _vc.data), {}, {
27302
+ grid[_key10] = _objectSpread$k(_objectSpread$k({}, _vc.data), {}, {
26217
27303
  hide: false,
26218
27304
  span: {
26219
27305
  row: _vc.spanRow * count,
@@ -27360,8 +28446,8 @@ var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
27360
28446
  }]);
27361
28447
  }(React__default.Component);
27362
28448
 
27363
- 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; }
27364
- 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; }
28449
+ 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; }
28450
+ 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; }
27365
28451
 
27366
28452
  /**
27367
28453
  * useDashboard Hook
@@ -27417,7 +28503,7 @@ var useDashboard = function useDashboard() {
27417
28503
  }
27418
28504
  });
27419
28505
  }
27420
- return _objectSpread$k({
28506
+ return _objectSpread$j({
27421
28507
  app: app,
27422
28508
  dashboard: dashboard,
27423
28509
  theme: theme
@@ -29130,180 +30216,6 @@ function useMcpDashServer() {
29130
30216
  };
29131
30217
  }
29132
30218
 
29133
- 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; }
29134
- 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; }
29135
- var TOTAL_STEPS = 6; // Steps 0-5
29136
-
29137
- var initialState = {
29138
- step: 0,
29139
- intent: [],
29140
- providers: [],
29141
- selectedWidgets: [],
29142
- selectedDashboard: null,
29143
- layout: {
29144
- templateKey: null,
29145
- widgetOrder: []
29146
- },
29147
- customization: {
29148
- name: "",
29149
- menuId: null,
29150
- theme: null
29151
- },
29152
- path: null
29153
- };
29154
- function wizardReducer(state, action) {
29155
- switch (action.type) {
29156
- case "SET_STEP":
29157
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29158
- step: action.payload
29159
- });
29160
- case "SET_INTENT":
29161
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29162
- intent: action.payload
29163
- });
29164
- case "TOGGLE_INTENT":
29165
- {
29166
- var intent = state.intent.includes(action.payload) ? state.intent.filter(function (i) {
29167
- return i !== action.payload;
29168
- }) : [].concat(_toConsumableArray(state.intent), [action.payload]);
29169
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29170
- intent: intent
29171
- });
29172
- }
29173
- case "SET_PROVIDERS":
29174
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29175
- providers: action.payload
29176
- });
29177
- case "TOGGLE_PROVIDER":
29178
- {
29179
- var providers = state.providers.includes(action.payload) ? state.providers.filter(function (p) {
29180
- return p !== action.payload;
29181
- }) : [].concat(_toConsumableArray(state.providers), [action.payload]);
29182
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29183
- providers: providers
29184
- });
29185
- }
29186
- case "SET_SELECTED_WIDGETS":
29187
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29188
- selectedWidgets: action.payload
29189
- });
29190
- case "TOGGLE_WIDGET":
29191
- {
29192
- var exists = state.selectedWidgets.some(function (w) {
29193
- return w.name === action.payload.name;
29194
- });
29195
- var selectedWidgets = exists ? state.selectedWidgets.filter(function (w) {
29196
- return w.name !== action.payload.name;
29197
- }) : [].concat(_toConsumableArray(state.selectedWidgets), [action.payload]);
29198
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29199
- selectedWidgets: selectedWidgets
29200
- });
29201
- }
29202
- case "SET_SELECTED_DASHBOARD":
29203
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29204
- selectedDashboard: action.payload
29205
- });
29206
- case "SET_PATH":
29207
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29208
- path: action.payload
29209
- });
29210
- case "SET_LAYOUT":
29211
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29212
- layout: action.payload
29213
- });
29214
- case "REORDER_WIDGETS":
29215
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29216
- layout: _objectSpread$j(_objectSpread$j({}, state.layout), {}, {
29217
- widgetOrder: action.payload
29218
- })
29219
- });
29220
- case "SET_CUSTOMIZATION":
29221
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
29222
- customization: _objectSpread$j(_objectSpread$j({}, state.customization), action.payload)
29223
- });
29224
- case "RESET":
29225
- return _objectSpread$j({}, initialState);
29226
- default:
29227
- return state;
29228
- }
29229
- }
29230
- function widgetCountToTemplate(count) {
29231
- if (count <= 1) return "single";
29232
- if (count === 2) return "two-columns";
29233
- if (count === 3) return "three-columns";
29234
- if (count === 4) return "two-by-two";
29235
- if (count <= 6) return "two-by-three";
29236
- return "three-by-three";
29237
- }
29238
- function getCanProceed(state) {
29239
- switch (state.step) {
29240
- case 0:
29241
- return state.intent.length > 0;
29242
- case 1:
29243
- return state.providers.length > 0;
29244
- case 2:
29245
- return state.path === "prebuilt" ? state.selectedDashboard !== null : state.selectedWidgets.length > 0;
29246
- case 3:
29247
- return state.layout.templateKey !== null;
29248
- case 4:
29249
- return state.customization.name.trim().length > 0;
29250
- case 5:
29251
- return true;
29252
- default:
29253
- return false;
29254
- }
29255
- }
29256
- var useWizardState = function useWizardState() {
29257
- var _useReducer = useReducer(wizardReducer, initialState),
29258
- _useReducer2 = _slicedToArray(_useReducer, 2),
29259
- state = _useReducer2[0],
29260
- dispatch = _useReducer2[1];
29261
- var canProceed = useMemo(function () {
29262
- return getCanProceed(state);
29263
- }, [state]);
29264
- var selectedCount = useMemo(function () {
29265
- return state.selectedWidgets.length;
29266
- }, [state.selectedWidgets]);
29267
- var isPrebuiltPath = state.path === "prebuilt";
29268
- var isCustomPath = state.path === "custom";
29269
- var nextStep = useCallback(function () {
29270
- if (getCanProceed(state) && state.step < TOTAL_STEPS - 1) {
29271
- dispatch({
29272
- type: "SET_STEP",
29273
- payload: state.step + 1
29274
- });
29275
- }
29276
- }, [state]);
29277
- var prevStep = useCallback(function () {
29278
- if (state.step > 0) {
29279
- dispatch({
29280
- type: "SET_STEP",
29281
- payload: state.step - 1
29282
- });
29283
- }
29284
- }, [state.step]);
29285
- var goToStep = useCallback(function (n) {
29286
- if (n >= 0 && n < TOTAL_STEPS) {
29287
- dispatch({
29288
- type: "SET_STEP",
29289
- payload: n
29290
- });
29291
- }
29292
- }, []);
29293
- return {
29294
- state: state,
29295
- dispatch: dispatch,
29296
- nextStep: nextStep,
29297
- prevStep: prevStep,
29298
- goToStep: goToStep,
29299
- canProceed: canProceed,
29300
- selectedCount: selectedCount,
29301
- isPrebuiltPath: isPrebuiltPath,
29302
- isCustomPath: isCustomPath,
29303
- widgetCountToTemplate: widgetCountToTemplate
29304
- };
29305
- };
29306
-
29307
30219
  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; }
29308
30220
  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; }
29309
30221
  var PreviewComponentsPane = function PreviewComponentsPane(_ref) {
@@ -48828,5 +49740,5 @@ var WorkspaceMenu = function WorkspaceMenu(_ref) {
48828
49740
 
48829
49741
  ComponentManager.registerContainerTypes(LayoutContainer, LayoutGridContainer);
48830
49742
 
48831
- export { ALGOLIA_ANALYTICS_FOR_QUERY, ALGOLIA_ANALYTICS_FOR_QUERY_COMPLETE, ALGOLIA_ANALYTICS_FOR_QUERY_ERROR, ALGOLIA_LIST_INDICES, ALGOLIA_LIST_INDICES_COMPLETE, ALGOLIA_LIST_INDICES_ERROR, AVAILABLE_COLORS, AddMenuItemModal, AdvancedMcpConfig, AppContext, AppSettingsModal, AppThemeScope, AppWrapper, CHOOSE_FILE, CHOOSE_FILE_COMPLETE, CHOOSE_FILE_ERROR, ColorModel, ComponentConfigModel, ComponentManager, ContextModel, DATA_JSON_TO_CSV_FILE, DATA_JSON_TO_CSV_FILE_COMPLETE, DATA_JSON_TO_CSV_FILE_ERROR, DATA_JSON_TO_CSV_STRING, DATA_JSON_TO_CSV_STRING_COMPLETE, DATA_JSON_TO_CSV_STRING_ERROR, DATA_READ_FROM_FILE, DATA_READ_FROM_FILE_COMPLETE, DATA_READ_FROM_FILE_ERROR, DATA_SAVE_TO_FILE, DATA_SAVE_TO_FILE_COMPLETE, DATA_SAVE_TO_FILE_ERROR, DashCommandPalette, DashNavbar, DashSidebar, DashTabBar, DashboardStage as Dashboard, DashboardApi, DashboardContext, DashboardFooter, DashboardHeader, DashboardMenuItem, DashboardModel, DashboardMonitor, DashboardPublisher, DashboardStage, DashboardThemeProvider, DashboardWrapper, ElectronDashboardApi, ErrorBoundary, ExternalWidget, GRID_CELL_WIDGET_TYPE, HARMONY_STRATEGIES, LAYOUT_LIST, LAYOUT_LIST_COMPLETE, LAYOUT_LIST_ERROR, LAYOUT_SAVE, LAYOUT_SAVE_COMPLETE, LAYOUT_SAVE_ERROR, Layout, LayoutBuilder, LayoutBuilderAddItemModal, LayoutBuilderConfigContainerMenuItem, LayoutBuilderConfigMenuItem, LayoutBuilderConfigModal, LayoutBuilderEditItemModal, LayoutBuilderEventModal, LayoutBuilderGridItem, LayoutContainer, LayoutDragBuilder, LayoutDragBuilderEdit, LayoutGridContainer, LayoutManagerModal, LayoutModel, LayoutQuickAddMenu, MCP_CALL_TOOL_COMPLETE, MCP_CALL_TOOL_ERROR, MCP_GET_CATALOG_COMPLETE, MCP_GET_CATALOG_ERROR, MCP_LIST_RESOURCES_COMPLETE, MCP_LIST_RESOURCES_ERROR, MCP_LIST_TOOLS_COMPLETE, MCP_LIST_TOOLS_ERROR, MCP_READ_RESOURCE_COMPLETE, MCP_READ_RESOURCE_ERROR, MCP_RUN_AUTH_COMPLETE, MCP_RUN_AUTH_ERROR, MCP_SERVER_STATUS_COMPLETE, MCP_SERVER_STATUS_ERROR, MCP_START_SERVER_COMPLETE, MCP_START_SERVER_ERROR, MCP_STOP_SERVER_COMPLETE, MCP_STOP_SERVER_ERROR, MENU_ITEMS_DELETE, MENU_ITEMS_DELETE_COMPLETE, MENU_ITEMS_DELETE_ERROR, MENU_ITEMS_LIST, MENU_ITEMS_LIST_COMPLETE, MENU_ITEMS_LIST_ERROR, MENU_ITEMS_SAVE, MENU_ITEMS_SAVE_COMPLETE, MENU_ITEMS_SAVE_ERROR, MainMenu, MainMenuItem, MainMenuSection, McpServerPicker, MenuItemModel, MenuSlideOverlay, MergeCellsModal, MissingProviderPrompt, MockDashboardApi, PROVIDER_DELETE_COMPLETE, PROVIDER_DELETE_ERROR, PROVIDER_GET_COMPLETE, PROVIDER_GET_ERROR, PROVIDER_LIST_COMPLETE, PROVIDER_LIST_ERROR, PROVIDER_SAVE_COMPLETE, PROVIDER_SAVE_ERROR, PanelCode, PanelEditItem, PanelEditItemHandlers, PanelEditItemNotifications, ProviderContext, ProviderErrorBoundary, ProviderForm, ProviderSelector, SECURE_STORAGE_ENCRYPT_STRING, SECURE_STORAGE_ENCRYPT_STRING_COMPLETE, SECURE_STORAGE_ENCRYPT_STRING_ERROR, SECURE_STORE_ENCRYPTION_CHECK, SECURE_STORE_ENCRYPTION_CHECK_COMPLETE, SECURE_STORE_ENCRYPTION_CHECK_ERROR, SECURE_STORE_GET_DATA, SECURE_STORE_GET_DATA_COMPLETE, SECURE_STORE_GET_DATA_ERROR, SECURE_STORE_SET_DATA, SECURE_STORE_SET_DATA_COMPLETE, SECURE_STORE_SET_DATA_ERROR, SETTINGS_GET, SETTINGS_GET_COMPLETE, SETTINGS_GET_ERROR, SETTINGS_SAVE, SETTINGS_SAVE_COMPLETE, SETTINGS_SAVE_ERROR, SIDEBAR_WIDGET_TYPE, SettingsModel, SideMenu, SplitCellModal, THEME_DELETE, THEME_DELETE_COMPLETE, THEME_DELETE_ERROR, THEME_EXTRACT_FROM_URL, THEME_EXTRACT_FROM_URL_COMPLETE, THEME_EXTRACT_FROM_URL_ERROR, THEME_LIST, THEME_LIST_COMPLETE, THEME_LIST_ERROR, THEME_MAP_PALETTE, THEME_MAP_PALETTE_COMPLETE, THEME_MAP_PALETTE_ERROR, THEME_SAVE, THEME_SAVE_COMPLETE, THEME_SAVE_ERROR, ThemeApi, ThemeColorDots, ThemeManagerModal, ThemeModel, ThemeWrapper, WORKSPACE_DELETE, WORKSPACE_DELETE_COMPLETE, WORKSPACE_DELETE_ERROR, WORKSPACE_LIST, WORKSPACE_LIST_COMPLETE, WORKSPACE_LIST_ERROR, WORKSPACE_SAVE, WORKSPACE_SAVE_COMPLETE, WORKSPACE_SAVE_ERROR, WebDashboardApi, Widget, WidgetApi, WidgetConfigPanel, WidgetContext, WidgetFactory, WidgetPopoutStage, WidgetProviderWrapper, WidgetSidebar, WizardIntentStep, WizardProvidersStep, WizardResultsStep, Workspace, WorkspaceContext, WorkspaceFooter, WorkspaceMenu, WorkspaceModel, addChildToLayoutItem, addItemToItemLayout, buildMcpConfigFromOverrides, canHaveChildren, changeDirectionForLayoutItem, createProviderRegistry, deriveFormFields, envMappingToRows, evaluateBundle, extractWidgetConfigs, formStateToMcpJson, formatFieldName, generateCustomTheme, generateHarmonyTheme, generateRandomTheme, generateThemeName, getBorderStyle, getChildrenForLayoutItem, getComponentInLayout, getContainerBorderColor, getContainerColor, getIndexOfLayoutChildrenForItem, getIndexOfLayoutItem, getLayoutItemById, getLayoutItemForWorkspace, getNearestParentWorkspace, getNextHighestId, getNextHighestItemInLayout, getNextHighestOrder, getNextHighestParentId, getNextLowestItemInLayout, getParentForLayoutItem, getParentWorkspaceForItem, getThemePresets, getUserConfigurableProviders, getWidgetsForWorkspace, getWorkspacesForWorkspace, headerTemplateToRows, isContainer, isLikelySecret, isMaxOrderForItem, isMinOrderForItem, isWidget, isWidgetResolvable, isWorkspace, layoutItemHasWorkspaceAsChild, loadWidgetBundle, mcpJsonToFormState, numChildrenForLayout, removeItemFromLayout, renderComponent, renderGridLayout, renderGridLayoutFlow, _renderLayout as renderLayout, renderLayoutMenu, replaceItemInLayout, resolveIcon, setHostModules, traverseParentTree, updateLayoutItem, updateParentForItem, useDashboard, useMcpDashServer, useMcpProvider, useNotifications, useProvider, useProviderClient, useScheduler, useWebSocketProvider, useWidgetEvents, useWidgetProviders, useWidgetSchedulerStatus, useWizardState, validateCellMerge, validateGridCell, validateGridPlacement, validateWidgetPlacement, widgetCountToTemplate, withProviderDetection };
49743
+ export { ALGOLIA_ANALYTICS_FOR_QUERY, ALGOLIA_ANALYTICS_FOR_QUERY_COMPLETE, ALGOLIA_ANALYTICS_FOR_QUERY_ERROR, ALGOLIA_LIST_INDICES, ALGOLIA_LIST_INDICES_COMPLETE, ALGOLIA_LIST_INDICES_ERROR, AVAILABLE_COLORS, AddMenuItemModal, AdvancedMcpConfig, AppContext, AppSettingsModal, AppThemeScope, AppWrapper, CHOOSE_FILE, CHOOSE_FILE_COMPLETE, CHOOSE_FILE_ERROR, ColorModel, ComponentConfigModel, ComponentManager, ContextModel, DATA_JSON_TO_CSV_FILE, DATA_JSON_TO_CSV_FILE_COMPLETE, DATA_JSON_TO_CSV_FILE_ERROR, DATA_JSON_TO_CSV_STRING, DATA_JSON_TO_CSV_STRING_COMPLETE, DATA_JSON_TO_CSV_STRING_ERROR, DATA_READ_FROM_FILE, DATA_READ_FROM_FILE_COMPLETE, DATA_READ_FROM_FILE_ERROR, DATA_SAVE_TO_FILE, DATA_SAVE_TO_FILE_COMPLETE, DATA_SAVE_TO_FILE_ERROR, DashCommandPalette, DashNavbar, DashSidebar, DashTabBar, DashboardStage as Dashboard, DashboardApi, DashboardContext, DashboardFooter, DashboardHeader, DashboardMenuItem, DashboardModel, DashboardMonitor, DashboardPublisher, DashboardStage, DashboardThemeProvider, DashboardWrapper, ElectronDashboardApi, ErrorBoundary, ExternalWidget, GRID_CELL_WIDGET_TYPE, HARMONY_STRATEGIES, LAYOUT_LIST, LAYOUT_LIST_COMPLETE, LAYOUT_LIST_ERROR, LAYOUT_SAVE, LAYOUT_SAVE_COMPLETE, LAYOUT_SAVE_ERROR, Layout, LayoutBuilder, LayoutBuilderAddItemModal, LayoutBuilderConfigContainerMenuItem, LayoutBuilderConfigMenuItem, LayoutBuilderConfigModal, LayoutBuilderEditItemModal, LayoutBuilderEventModal, LayoutBuilderGridItem, LayoutContainer, LayoutDragBuilder, LayoutDragBuilderEdit, LayoutGridContainer, LayoutManagerModal, LayoutModel, LayoutQuickAddMenu, MCP_CALL_TOOL_COMPLETE, MCP_CALL_TOOL_ERROR, MCP_GET_CATALOG_COMPLETE, MCP_GET_CATALOG_ERROR, MCP_LIST_RESOURCES_COMPLETE, MCP_LIST_RESOURCES_ERROR, MCP_LIST_TOOLS_COMPLETE, MCP_LIST_TOOLS_ERROR, MCP_READ_RESOURCE_COMPLETE, MCP_READ_RESOURCE_ERROR, MCP_RUN_AUTH_COMPLETE, MCP_RUN_AUTH_ERROR, MCP_SERVER_STATUS_COMPLETE, MCP_SERVER_STATUS_ERROR, MCP_START_SERVER_COMPLETE, MCP_START_SERVER_ERROR, MCP_STOP_SERVER_COMPLETE, MCP_STOP_SERVER_ERROR, MENU_ITEMS_DELETE, MENU_ITEMS_DELETE_COMPLETE, MENU_ITEMS_DELETE_ERROR, MENU_ITEMS_LIST, MENU_ITEMS_LIST_COMPLETE, MENU_ITEMS_LIST_ERROR, MENU_ITEMS_SAVE, MENU_ITEMS_SAVE_COMPLETE, MENU_ITEMS_SAVE_ERROR, MainMenu, MainMenuItem, MainMenuSection, McpServerPicker, MenuItemModel, MenuSlideOverlay, MergeCellsModal, MissingProviderPrompt, MockDashboardApi, PROVIDER_DELETE_COMPLETE, PROVIDER_DELETE_ERROR, PROVIDER_GET_COMPLETE, PROVIDER_GET_ERROR, PROVIDER_LIST_COMPLETE, PROVIDER_LIST_ERROR, PROVIDER_SAVE_COMPLETE, PROVIDER_SAVE_ERROR, PanelCode, PanelEditItem, PanelEditItemHandlers, PanelEditItemNotifications, ProviderContext, ProviderErrorBoundary, ProviderForm, ProviderSelector, SECURE_STORAGE_ENCRYPT_STRING, SECURE_STORAGE_ENCRYPT_STRING_COMPLETE, SECURE_STORAGE_ENCRYPT_STRING_ERROR, SECURE_STORE_ENCRYPTION_CHECK, SECURE_STORE_ENCRYPTION_CHECK_COMPLETE, SECURE_STORE_ENCRYPTION_CHECK_ERROR, SECURE_STORE_GET_DATA, SECURE_STORE_GET_DATA_COMPLETE, SECURE_STORE_GET_DATA_ERROR, SECURE_STORE_SET_DATA, SECURE_STORE_SET_DATA_COMPLETE, SECURE_STORE_SET_DATA_ERROR, SETTINGS_GET, SETTINGS_GET_COMPLETE, SETTINGS_GET_ERROR, SETTINGS_SAVE, SETTINGS_SAVE_COMPLETE, SETTINGS_SAVE_ERROR, SIDEBAR_WIDGET_TYPE, SettingsModel, SideMenu, SplitCellModal, THEME_DELETE, THEME_DELETE_COMPLETE, THEME_DELETE_ERROR, THEME_EXTRACT_FROM_URL, THEME_EXTRACT_FROM_URL_COMPLETE, THEME_EXTRACT_FROM_URL_ERROR, THEME_LIST, THEME_LIST_COMPLETE, THEME_LIST_ERROR, THEME_MAP_PALETTE, THEME_MAP_PALETTE_COMPLETE, THEME_MAP_PALETTE_ERROR, THEME_SAVE, THEME_SAVE_COMPLETE, THEME_SAVE_ERROR, ThemeApi, ThemeColorDots, ThemeManagerModal, ThemeModel, ThemeWrapper, WORKSPACE_DELETE, WORKSPACE_DELETE_COMPLETE, WORKSPACE_DELETE_ERROR, WORKSPACE_LIST, WORKSPACE_LIST_COMPLETE, WORKSPACE_LIST_ERROR, WORKSPACE_SAVE, WORKSPACE_SAVE_COMPLETE, WORKSPACE_SAVE_ERROR, WebDashboardApi, Widget, WidgetApi, WidgetConfigPanel, WidgetContext, WidgetFactory, WidgetPopoutStage, WidgetProviderWrapper, WidgetSidebar, WizardCustomizeStep, WizardIntentStep, WizardLayoutPreviewStep, WizardProvidersStep, WizardResultsStep, Workspace, WorkspaceContext, WorkspaceFooter, WorkspaceMenu, WorkspaceModel, addChildToLayoutItem, addItemToItemLayout, buildMcpConfigFromOverrides, canHaveChildren, changeDirectionForLayoutItem, createProviderRegistry, deriveFormFields, envMappingToRows, evaluateBundle, extractWidgetConfigs, formStateToMcpJson, formatFieldName, generateCustomTheme, generateHarmonyTheme, generateRandomTheme, generateThemeName, getBorderStyle, getChildrenForLayoutItem, getComponentInLayout, getContainerBorderColor, getContainerColor, getIndexOfLayoutChildrenForItem, getIndexOfLayoutItem, getLayoutItemById, getLayoutItemForWorkspace, getNearestParentWorkspace, getNextHighestId, getNextHighestItemInLayout, getNextHighestOrder, getNextHighestParentId, getNextLowestItemInLayout, getParentForLayoutItem, getParentWorkspaceForItem, getThemePresets, getUserConfigurableProviders, getWidgetsForWorkspace, getWorkspacesForWorkspace, headerTemplateToRows, isContainer, isLikelySecret, isMaxOrderForItem, isMinOrderForItem, isWidget, isWidgetResolvable, isWorkspace, layoutItemHasWorkspaceAsChild, loadWidgetBundle, mcpJsonToFormState, numChildrenForLayout, removeItemFromLayout, renderComponent, renderGridLayout, renderGridLayoutFlow, _renderLayout as renderLayout, renderLayoutMenu, replaceItemInLayout, resolveIcon, setHostModules, traverseParentTree, updateLayoutItem, updateParentForItem, useDashboard, useMcpDashServer, useMcpProvider, useNotifications, useProvider, useProviderClient, useScheduler, useWebSocketProvider, useWidgetEvents, useWidgetProviders, useWidgetSchedulerStatus, useWizardState, validateCellMerge, validateGridCell, validateGridPlacement, validateWidgetPlacement, widgetCountToTemplate, withProviderDetection };
48832
49744
  //# sourceMappingURL=index.esm.js.map