@trops/dash-core 0.1.127 → 0.1.129
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 +241 -134
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +241 -134
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2706,9 +2706,9 @@ var LayoutContainer = function LayoutContainer(_ref) {
|
|
|
2706
2706
|
|
|
2707
2707
|
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; }
|
|
2708
2708
|
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; }
|
|
2709
|
-
function _createForOfIteratorHelper$
|
|
2710
|
-
function _unsupportedIterableToArray$
|
|
2711
|
-
function _arrayLikeToArray$
|
|
2709
|
+
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; } } }; }
|
|
2710
|
+
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; } }
|
|
2711
|
+
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; }
|
|
2712
2712
|
/**
|
|
2713
2713
|
* Layout template definitions for the dashboard template picker.
|
|
2714
2714
|
*
|
|
@@ -2944,7 +2944,7 @@ function createLayoutFromTemplate(template) {
|
|
|
2944
2944
|
cols: template.cols,
|
|
2945
2945
|
gap: "gap-2"
|
|
2946
2946
|
};
|
|
2947
|
-
var _iterator = _createForOfIteratorHelper$
|
|
2947
|
+
var _iterator = _createForOfIteratorHelper$b(template.cells),
|
|
2948
2948
|
_step;
|
|
2949
2949
|
try {
|
|
2950
2950
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -4008,13 +4008,21 @@ var LayoutManagerModal = function LayoutManagerModal(_ref) {
|
|
|
4008
4008
|
// Reset state when modal opens
|
|
4009
4009
|
React.useEffect(function () {
|
|
4010
4010
|
if (open) {
|
|
4011
|
+
var _Object$entries$sort$;
|
|
4011
4012
|
setCreationMethod(null);
|
|
4012
4013
|
setDashboardName("");
|
|
4013
4014
|
setActiveStep(0);
|
|
4014
4015
|
setLocalMenuItems(menuItems || []);
|
|
4015
4016
|
setSelectedMenuId(menuItems && menuItems.length > 0 ? menuItems[0].id : 1);
|
|
4016
4017
|
setSelectedTemplate(layoutTemplates[0]);
|
|
4017
|
-
|
|
4018
|
+
var fallback = themes ? ((_Object$entries$sort$ = Object.entries(themes).sort(function (_ref2, _ref3) {
|
|
4019
|
+
var _ref4 = _slicedToArray(_ref2, 2),
|
|
4020
|
+
a = _ref4[1];
|
|
4021
|
+
var _ref5 = _slicedToArray(_ref3, 2),
|
|
4022
|
+
b = _ref5[1];
|
|
4023
|
+
return (a.name || "").localeCompare(b.name || "");
|
|
4024
|
+
})[0]) === null || _Object$entries$sort$ === void 0 ? void 0 : _Object$entries$sort$[0]) || null : null;
|
|
4025
|
+
setSelectedThemeKey(appThemeKey || fallback);
|
|
4018
4026
|
setImportedWorkspace(null);
|
|
4019
4027
|
setSelectedFile(null);
|
|
4020
4028
|
setIsCreatingFolder(false);
|
|
@@ -4340,7 +4348,7 @@ var LayoutManagerModal = function LayoutManagerModal(_ref) {
|
|
|
4340
4348
|
textColor: "text-gray-300"
|
|
4341
4349
|
}), /*#__PURE__*/jsxRuntime.jsx("p", {
|
|
4342
4350
|
className: "text-base font-normal text-gray-400",
|
|
4343
|
-
children: "Choose a theme for this dashboard
|
|
4351
|
+
children: "Choose a theme for this dashboard."
|
|
4344
4352
|
}), selectedThemeKey !== null && themes && themes[selectedThemeKey] && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
4345
4353
|
children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
4346
4354
|
className: "flex flex-row items-center space-x-2 mt-4 pt-4 border-t border-gray-700",
|
|
@@ -4361,45 +4369,19 @@ var LayoutManagerModal = function LayoutManagerModal(_ref) {
|
|
|
4361
4369
|
className: "w-8 h-8 rounded bg-".concat(themes[selectedThemeKey].tertiary, "-500")
|
|
4362
4370
|
})]
|
|
4363
4371
|
})]
|
|
4364
|
-
}), selectedThemeKey === null && /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
4365
|
-
className: "flex flex-row items-center space-x-2 mt-4 pt-4 border-t border-gray-700",
|
|
4366
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(DashReact.FontAwesomeIcon, {
|
|
4367
|
-
icon: "palette",
|
|
4368
|
-
className: "text-blue-400"
|
|
4369
|
-
}), /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
4370
|
-
className: "text-sm font-medium text-gray-300",
|
|
4371
|
-
children: "App Default"
|
|
4372
|
-
})]
|
|
4373
4372
|
})]
|
|
4374
|
-
}), /*#__PURE__*/jsxRuntime.
|
|
4373
|
+
}), /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
4375
4374
|
className: "flex flex-col w-2/3 p-6 overflow-y-auto space-y-2",
|
|
4376
|
-
children:
|
|
4377
|
-
|
|
4378
|
-
|
|
4379
|
-
|
|
4380
|
-
|
|
4381
|
-
|
|
4382
|
-
|
|
4383
|
-
|
|
4384
|
-
|
|
4385
|
-
|
|
4386
|
-
children: "App Default"
|
|
4387
|
-
}), /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
4388
|
-
className: "flex flex-row space-x-1 ml-auto",
|
|
4389
|
-
children: themes && appThemeKey && themes[appThemeKey] && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
4390
|
-
children: [themes[appThemeKey].primary && /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
4391
|
-
className: "w-4 h-4 rounded bg-".concat(themes[appThemeKey].primary, "-500")
|
|
4392
|
-
}), themes[appThemeKey].secondary && /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
4393
|
-
className: "w-4 h-4 rounded bg-".concat(themes[appThemeKey].secondary, "-500")
|
|
4394
|
-
}), themes[appThemeKey].tertiary && /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
4395
|
-
className: "w-4 h-4 rounded bg-".concat(themes[appThemeKey].tertiary, "-500")
|
|
4396
|
-
})]
|
|
4397
|
-
})
|
|
4398
|
-
})]
|
|
4399
|
-
}), themes && Object.entries(themes).map(function (_ref2) {
|
|
4400
|
-
var _ref3 = _slicedToArray(_ref2, 2),
|
|
4401
|
-
key = _ref3[0],
|
|
4402
|
-
t = _ref3[1];
|
|
4375
|
+
children: themes && Object.entries(themes).sort(function (_ref6, _ref7) {
|
|
4376
|
+
var _ref8 = _slicedToArray(_ref6, 2),
|
|
4377
|
+
a = _ref8[1];
|
|
4378
|
+
var _ref9 = _slicedToArray(_ref7, 2),
|
|
4379
|
+
b = _ref9[1];
|
|
4380
|
+
return (a.name || "").localeCompare(b.name || "");
|
|
4381
|
+
}).map(function (_ref0) {
|
|
4382
|
+
var _ref1 = _slicedToArray(_ref0, 2),
|
|
4383
|
+
key = _ref1[0],
|
|
4384
|
+
t = _ref1[1];
|
|
4403
4385
|
var isThemeSelected = selectedThemeKey === key;
|
|
4404
4386
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
4405
4387
|
className: "flex flex-row items-center px-4 py-3 rounded-lg cursor-pointer transition-all ".concat(isThemeSelected ? "ring-2 ring-blue-500 bg-gray-700" : "hover:bg-gray-750 hover:ring-1 hover:ring-gray-600 bg-gray-800/50"),
|
|
@@ -4423,7 +4405,7 @@ var LayoutManagerModal = function LayoutManagerModal(_ref) {
|
|
|
4423
4405
|
})]
|
|
4424
4406
|
})]
|
|
4425
4407
|
}, key);
|
|
4426
|
-
})
|
|
4408
|
+
})
|
|
4427
4409
|
})]
|
|
4428
4410
|
});
|
|
4429
4411
|
}
|
|
@@ -9775,9 +9757,9 @@ var PanelEditItem = function PanelEditItem(_ref) {
|
|
|
9775
9757
|
};
|
|
9776
9758
|
|
|
9777
9759
|
var _excluded$5 = ["rows", "cols"];
|
|
9778
|
-
function _createForOfIteratorHelper$
|
|
9779
|
-
function _unsupportedIterableToArray$
|
|
9780
|
-
function _arrayLikeToArray$
|
|
9760
|
+
function _createForOfIteratorHelper$a(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$a(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
9761
|
+
function _unsupportedIterableToArray$a(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$a(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$a(r, a) : void 0; } }
|
|
9762
|
+
function _arrayLikeToArray$a(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
9781
9763
|
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; }
|
|
9782
9764
|
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; }
|
|
9783
9765
|
var defaultGrid = {
|
|
@@ -9930,7 +9912,7 @@ function GridEditor(_ref) {
|
|
|
9930
9912
|
function sortObjectByKeys(obj) {
|
|
9931
9913
|
var sortedKeys = Object.keys(obj).sort();
|
|
9932
9914
|
var sortedObj = {};
|
|
9933
|
-
var _iterator = _createForOfIteratorHelper$
|
|
9915
|
+
var _iterator = _createForOfIteratorHelper$a(sortedKeys),
|
|
9934
9916
|
_step;
|
|
9935
9917
|
try {
|
|
9936
9918
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -13195,9 +13177,9 @@ var getUserConfigurableProviders = function getUserConfigurableProviders(provide
|
|
|
13195
13177
|
});
|
|
13196
13178
|
};
|
|
13197
13179
|
|
|
13198
|
-
function _createForOfIteratorHelper$
|
|
13199
|
-
function _unsupportedIterableToArray$
|
|
13200
|
-
function _arrayLikeToArray$
|
|
13180
|
+
function _createForOfIteratorHelper$9(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$9(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
13181
|
+
function _unsupportedIterableToArray$9(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$9(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$9(r, a) : void 0; } }
|
|
13182
|
+
function _arrayLikeToArray$9(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
13201
13183
|
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; }
|
|
13202
13184
|
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; }
|
|
13203
13185
|
var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
|
|
@@ -13464,11 +13446,11 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
|
|
|
13464
13446
|
|
|
13465
13447
|
// Flatten all widgets from all packages for the widget list
|
|
13466
13448
|
flatWidgets = [];
|
|
13467
|
-
_iterator = _createForOfIteratorHelper$
|
|
13449
|
+
_iterator = _createForOfIteratorHelper$9(result.packages || []);
|
|
13468
13450
|
try {
|
|
13469
13451
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
13470
13452
|
pkg = _step.value;
|
|
13471
|
-
_iterator2 = _createForOfIteratorHelper$
|
|
13453
|
+
_iterator2 = _createForOfIteratorHelper$9(pkg.widgets || []);
|
|
13472
13454
|
try {
|
|
13473
13455
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
13474
13456
|
widget = _step2.value;
|
|
@@ -15024,9 +15006,9 @@ var ProviderBadge = function ProviderBadge(_ref) {
|
|
|
15024
15006
|
});
|
|
15025
15007
|
};
|
|
15026
15008
|
|
|
15027
|
-
function _createForOfIteratorHelper$
|
|
15028
|
-
function _unsupportedIterableToArray$
|
|
15029
|
-
function _arrayLikeToArray$
|
|
15009
|
+
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; } } }; }
|
|
15010
|
+
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; } }
|
|
15011
|
+
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; }
|
|
15030
15012
|
var WidgetCardHeader = function WidgetCardHeader(_ref) {
|
|
15031
15013
|
var item = _ref.item,
|
|
15032
15014
|
widget = _ref.widget,
|
|
@@ -15070,7 +15052,7 @@ var WidgetCardHeader = function WidgetCardHeader(_ref) {
|
|
|
15070
15052
|
var el = headerRef.current;
|
|
15071
15053
|
if (!el) return;
|
|
15072
15054
|
var observer = new ResizeObserver(function (entries) {
|
|
15073
|
-
var _iterator = _createForOfIteratorHelper$
|
|
15055
|
+
var _iterator = _createForOfIteratorHelper$8(entries),
|
|
15074
15056
|
_step;
|
|
15075
15057
|
try {
|
|
15076
15058
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -19862,9 +19844,9 @@ var ExternalWidget = function ExternalWidget(_ref) {
|
|
|
19862
19844
|
var GRID_CELL_WIDGET_TYPE = "grid-cell-widget";
|
|
19863
19845
|
var SIDEBAR_WIDGET_TYPE = "sidebar-widget";
|
|
19864
19846
|
|
|
19865
|
-
function _createForOfIteratorHelper$
|
|
19866
|
-
function _unsupportedIterableToArray$
|
|
19867
|
-
function _arrayLikeToArray$
|
|
19847
|
+
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; } } }; }
|
|
19848
|
+
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; } }
|
|
19849
|
+
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; }
|
|
19868
19850
|
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; }
|
|
19869
19851
|
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; }
|
|
19870
19852
|
var DraggableCellBody = function DraggableCellBody(_ref) {
|
|
@@ -20392,7 +20374,7 @@ var LayoutGridContainer = /*#__PURE__*/React.memo(function (_ref3) {
|
|
|
20392
20374
|
return selectable["delete"](cn);
|
|
20393
20375
|
});
|
|
20394
20376
|
var resolved = new Set();
|
|
20395
|
-
var _iterator = _createForOfIteratorHelper$
|
|
20377
|
+
var _iterator = _createForOfIteratorHelper$7(selectable),
|
|
20396
20378
|
_step;
|
|
20397
20379
|
try {
|
|
20398
20380
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -22530,9 +22512,9 @@ function isWidgetResolvable(componentKey) {
|
|
|
22530
22512
|
|
|
22531
22513
|
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; }
|
|
22532
22514
|
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; }
|
|
22533
|
-
function _createForOfIteratorHelper$
|
|
22534
|
-
function _unsupportedIterableToArray$
|
|
22535
|
-
function _arrayLikeToArray$
|
|
22515
|
+
function _createForOfIteratorHelper$6(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$6(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; } } }; }
|
|
22516
|
+
function _unsupportedIterableToArray$6(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$6(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$6(r, a) : void 0; } }
|
|
22517
|
+
function _arrayLikeToArray$6(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; }
|
|
22536
22518
|
/**
|
|
22537
22519
|
* The model for all layout components used primarily in the renderLayout method
|
|
22538
22520
|
* @param {Object} layoutItem an object containing various attributes of the layout item
|
|
@@ -22544,7 +22526,7 @@ function _arrayLikeToArray$5(r, a) { (null == a || a > r.length) && (a = r.lengt
|
|
|
22544
22526
|
function sortObjectByKeys(obj) {
|
|
22545
22527
|
var sortedKeys = Object.keys(obj).sort();
|
|
22546
22528
|
var sortedObj = {};
|
|
22547
|
-
var _iterator = _createForOfIteratorHelper$
|
|
22529
|
+
var _iterator = _createForOfIteratorHelper$6(sortedKeys),
|
|
22548
22530
|
_step;
|
|
22549
22531
|
try {
|
|
22550
22532
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -25801,9 +25783,9 @@ var useDashboard = function useDashboard() {
|
|
|
25801
25783
|
});
|
|
25802
25784
|
};
|
|
25803
25785
|
|
|
25804
|
-
function _createForOfIteratorHelper$
|
|
25805
|
-
function _unsupportedIterableToArray$
|
|
25806
|
-
function _arrayLikeToArray$
|
|
25786
|
+
function _createForOfIteratorHelper$5(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$5(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; } } }; }
|
|
25787
|
+
function _unsupportedIterableToArray$5(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$5(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$5(r, a) : void 0; } }
|
|
25788
|
+
function _arrayLikeToArray$5(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; }
|
|
25807
25789
|
|
|
25808
25790
|
/**
|
|
25809
25791
|
* useWidgetProviders Hook
|
|
@@ -25854,7 +25836,7 @@ var useWidgetProviders = function useWidgetProviders() {
|
|
|
25854
25836
|
// 1. Widget-level: stored directly on the layout item by handleSelectProvider
|
|
25855
25837
|
// 2. Workspace-level: stored as workspace.selectedProviders[widgetId][providerType]
|
|
25856
25838
|
var providers = {};
|
|
25857
|
-
var _iterator = _createForOfIteratorHelper$
|
|
25839
|
+
var _iterator = _createForOfIteratorHelper$5(providerDeclarations),
|
|
25858
25840
|
_step;
|
|
25859
25841
|
try {
|
|
25860
25842
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -28778,9 +28760,9 @@ var resolveIcon = function resolveIcon(iconName) {
|
|
|
28778
28760
|
return FALLBACK;
|
|
28779
28761
|
};
|
|
28780
28762
|
|
|
28781
|
-
function _createForOfIteratorHelper$
|
|
28782
|
-
function _unsupportedIterableToArray$
|
|
28783
|
-
function _arrayLikeToArray$
|
|
28763
|
+
function _createForOfIteratorHelper$4(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$4(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; } } }; }
|
|
28764
|
+
function _unsupportedIterableToArray$4(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$4(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$4(r, a) : void 0; } }
|
|
28765
|
+
function _arrayLikeToArray$4(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; }
|
|
28784
28766
|
/**
|
|
28785
28767
|
* Validation utilities for grid-first dashboard architecture
|
|
28786
28768
|
*
|
|
@@ -29019,7 +29001,7 @@ var validateCellMerge = function validateCellMerge(cellNumbers, grid) {
|
|
|
29019
29001
|
|
|
29020
29002
|
// Validate each cell
|
|
29021
29003
|
var cells = [];
|
|
29022
|
-
var _iterator = _createForOfIteratorHelper$
|
|
29004
|
+
var _iterator = _createForOfIteratorHelper$4(cellNumbers),
|
|
29023
29005
|
_step;
|
|
29024
29006
|
try {
|
|
29025
29007
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -32782,18 +32764,21 @@ var DashboardDetail = function DashboardDetail(_ref2) {
|
|
|
32782
32764
|
value: String(m.id)
|
|
32783
32765
|
};
|
|
32784
32766
|
});
|
|
32785
|
-
var themeOptions =
|
|
32786
|
-
|
|
32787
|
-
|
|
32788
|
-
|
|
32789
|
-
|
|
32790
|
-
|
|
32791
|
-
|
|
32767
|
+
var themeOptions = _toConsumableArray(Object.entries(themes || {}).sort(function (_ref3, _ref4) {
|
|
32768
|
+
var _ref5 = _slicedToArray(_ref3, 2),
|
|
32769
|
+
a = _ref5[1];
|
|
32770
|
+
var _ref6 = _slicedToArray(_ref4, 2),
|
|
32771
|
+
b = _ref6[1];
|
|
32772
|
+
return (a.name || "").localeCompare(b.name || "");
|
|
32773
|
+
}).map(function (_ref7) {
|
|
32774
|
+
var _ref8 = _slicedToArray(_ref7, 2),
|
|
32775
|
+
key = _ref8[0],
|
|
32776
|
+
t = _ref8[1];
|
|
32792
32777
|
return {
|
|
32793
32778
|
label: t.name || key,
|
|
32794
32779
|
value: key
|
|
32795
32780
|
};
|
|
32796
|
-
}))
|
|
32781
|
+
}));
|
|
32797
32782
|
function handleChangeFolder(val) {
|
|
32798
32783
|
if (!dashApi || !appId) return;
|
|
32799
32784
|
var updated = DashReact.deepCopy(ws);
|
|
@@ -32880,7 +32865,7 @@ var DashboardDetail = function DashboardDetail(_ref2) {
|
|
|
32880
32865
|
return handleChangeTheme(val);
|
|
32881
32866
|
},
|
|
32882
32867
|
options: themeOptions,
|
|
32883
|
-
placeholder: "
|
|
32868
|
+
placeholder: "Select a theme"
|
|
32884
32869
|
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
32885
32870
|
className: "flex flex-row items-center gap-2",
|
|
32886
32871
|
children: [/*#__PURE__*/jsxRuntime.jsx(DashReact.FontAwesomeIcon, {
|
|
@@ -37122,9 +37107,9 @@ var RegistryPackageDetail = function RegistryPackageDetail(_ref) {
|
|
|
37122
37107
|
});
|
|
37123
37108
|
};
|
|
37124
37109
|
|
|
37125
|
-
function _createForOfIteratorHelper$
|
|
37126
|
-
function _unsupportedIterableToArray$
|
|
37127
|
-
function _arrayLikeToArray$
|
|
37110
|
+
function _createForOfIteratorHelper$3(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$3(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; } } }; }
|
|
37111
|
+
function _unsupportedIterableToArray$3(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$3(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$3(r, a) : void 0; } }
|
|
37112
|
+
function _arrayLikeToArray$3(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; }
|
|
37128
37113
|
|
|
37129
37114
|
/**
|
|
37130
37115
|
* useRegistrySearch — shared hook for browsing and installing registry packages.
|
|
@@ -37227,13 +37212,13 @@ var useRegistrySearch = function useRegistrySearch() {
|
|
|
37227
37212
|
return c.toLowerCase();
|
|
37228
37213
|
}));
|
|
37229
37214
|
widgets = [];
|
|
37230
|
-
_iterator = _createForOfIteratorHelper$
|
|
37215
|
+
_iterator = _createForOfIteratorHelper$3(pkgs);
|
|
37231
37216
|
try {
|
|
37232
37217
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
37233
37218
|
pkg = _step.value;
|
|
37234
37219
|
// Compute missing APIs for the entire package
|
|
37235
37220
|
allApiProviders = [];
|
|
37236
|
-
_iterator2 = _createForOfIteratorHelper$
|
|
37221
|
+
_iterator2 = _createForOfIteratorHelper$3(pkg.providers || []);
|
|
37237
37222
|
try {
|
|
37238
37223
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
37239
37224
|
p = _step2.value;
|
|
@@ -37246,11 +37231,11 @@ var useRegistrySearch = function useRegistrySearch() {
|
|
|
37246
37231
|
} finally {
|
|
37247
37232
|
_iterator2.f();
|
|
37248
37233
|
}
|
|
37249
|
-
_iterator3 = _createForOfIteratorHelper$
|
|
37234
|
+
_iterator3 = _createForOfIteratorHelper$3(pkg.widgets || []);
|
|
37250
37235
|
try {
|
|
37251
37236
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
37252
37237
|
w = _step3.value;
|
|
37253
|
-
_iterator5 = _createForOfIteratorHelper$
|
|
37238
|
+
_iterator5 = _createForOfIteratorHelper$3(w.providers || []);
|
|
37254
37239
|
try {
|
|
37255
37240
|
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
37256
37241
|
_p = _step5.value;
|
|
@@ -37272,7 +37257,7 @@ var useRegistrySearch = function useRegistrySearch() {
|
|
|
37272
37257
|
missingApis = _toConsumableArray(new Set(allApiProviders)).filter(function (api) {
|
|
37273
37258
|
return !capSet.has(api.toLowerCase());
|
|
37274
37259
|
});
|
|
37275
|
-
_iterator4 = _createForOfIteratorHelper$
|
|
37260
|
+
_iterator4 = _createForOfIteratorHelper$3(pkg.widgets || []);
|
|
37276
37261
|
try {
|
|
37277
37262
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
37278
37263
|
widget = _step4.value;
|
|
@@ -37405,9 +37390,9 @@ var useRegistrySearch = function useRegistrySearch() {
|
|
|
37405
37390
|
};
|
|
37406
37391
|
};
|
|
37407
37392
|
|
|
37408
|
-
function _createForOfIteratorHelper$
|
|
37409
|
-
function _unsupportedIterableToArray$
|
|
37410
|
-
function _arrayLikeToArray$
|
|
37393
|
+
function _createForOfIteratorHelper$2(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$2(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; } } }; }
|
|
37394
|
+
function _unsupportedIterableToArray$2(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$2(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$2(r, a) : void 0; } }
|
|
37395
|
+
function _arrayLikeToArray$2(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; }
|
|
37411
37396
|
var DiscoverWidgetsDetail = function DiscoverWidgetsDetail(_ref) {
|
|
37412
37397
|
var onBack = _ref.onBack;
|
|
37413
37398
|
var _useContext = React.useContext(DashReact.ThemeContext),
|
|
@@ -37446,12 +37431,12 @@ var DiscoverWidgetsDetail = function DiscoverWidgetsDetail(_ref) {
|
|
|
37446
37431
|
var checkToolConflicts = function checkToolConflicts(widget) {
|
|
37447
37432
|
var conflicts = [];
|
|
37448
37433
|
var packageWidgets = widget.packageWidgets || [];
|
|
37449
|
-
var _iterator = _createForOfIteratorHelper$
|
|
37434
|
+
var _iterator = _createForOfIteratorHelper$2(packageWidgets),
|
|
37450
37435
|
_step;
|
|
37451
37436
|
try {
|
|
37452
37437
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
37453
37438
|
var w = _step.value;
|
|
37454
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
37439
|
+
var _iterator2 = _createForOfIteratorHelper$2(w.providers || []),
|
|
37455
37440
|
_step2;
|
|
37456
37441
|
try {
|
|
37457
37442
|
var _loop = function _loop() {
|
|
@@ -37464,7 +37449,7 @@ var DiscoverWidgetsDetail = function DiscoverWidgetsDetail(_ref) {
|
|
|
37464
37449
|
prov = _ref3[1];
|
|
37465
37450
|
return prov.type === p.type && prov.providerClass === "mcp" && prov.allowedTools;
|
|
37466
37451
|
});
|
|
37467
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
37452
|
+
var _iterator3 = _createForOfIteratorHelper$2(matchingProviders),
|
|
37468
37453
|
_step3;
|
|
37469
37454
|
try {
|
|
37470
37455
|
var _loop2 = function _loop2() {
|
|
@@ -37670,9 +37655,9 @@ var DiscoverWidgetsDetail = function DiscoverWidgetsDetail(_ref) {
|
|
|
37670
37655
|
});
|
|
37671
37656
|
};
|
|
37672
37657
|
|
|
37673
|
-
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(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; } } }; }
|
|
37674
|
-
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
37675
|
-
function _arrayLikeToArray(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; }
|
|
37658
|
+
function _createForOfIteratorHelper$1(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$1(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; } } }; }
|
|
37659
|
+
function _unsupportedIterableToArray$1(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$1(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$1(r, a) : void 0; } }
|
|
37660
|
+
function _arrayLikeToArray$1(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; }
|
|
37676
37661
|
|
|
37677
37662
|
/**
|
|
37678
37663
|
* Walk a workspace layout array (possibly nested via LayoutGridContainer
|
|
@@ -37681,7 +37666,7 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
|
|
|
37681
37666
|
function collectComponentsFromLayout(layout) {
|
|
37682
37667
|
var components = [];
|
|
37683
37668
|
if (!Array.isArray(layout)) return components;
|
|
37684
|
-
var _iterator = _createForOfIteratorHelper(layout),
|
|
37669
|
+
var _iterator = _createForOfIteratorHelper$1(layout),
|
|
37685
37670
|
_step;
|
|
37686
37671
|
try {
|
|
37687
37672
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -37710,7 +37695,7 @@ function findWidgetUsage(componentNames, workspaces) {
|
|
|
37710
37695
|
if (!(componentNames !== null && componentNames !== void 0 && componentNames.length) || !(workspaces !== null && workspaces !== void 0 && workspaces.length)) return [];
|
|
37711
37696
|
var nameSet = new Set(componentNames);
|
|
37712
37697
|
var results = [];
|
|
37713
|
-
var _iterator2 = _createForOfIteratorHelper(workspaces),
|
|
37698
|
+
var _iterator2 = _createForOfIteratorHelper$1(workspaces),
|
|
37714
37699
|
_step2;
|
|
37715
37700
|
try {
|
|
37716
37701
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -40309,6 +40294,9 @@ var PopoverItem = function PopoverItem(_ref4) {
|
|
|
40309
40294
|
});
|
|
40310
40295
|
};
|
|
40311
40296
|
|
|
40297
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(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; } } }; }
|
|
40298
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
40299
|
+
function _arrayLikeToArray(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; }
|
|
40312
40300
|
var DraggableWidgetItem = function DraggableWidgetItem(_ref) {
|
|
40313
40301
|
var widgetKey = _ref.widgetKey,
|
|
40314
40302
|
widget = _ref.widget;
|
|
@@ -40372,11 +40360,35 @@ var DraggableWidgetItem = function DraggableWidgetItem(_ref) {
|
|
|
40372
40360
|
|
|
40373
40361
|
var SidebarDiscoverContent = function SidebarDiscoverContent(_ref2) {
|
|
40374
40362
|
var registry = _ref2.registry,
|
|
40375
|
-
onInstallSuccess = _ref2.onInstallSuccess
|
|
40363
|
+
onInstallSuccess = _ref2.onInstallSuccess,
|
|
40364
|
+
installedPackageNames = _ref2.installedPackageNames;
|
|
40376
40365
|
var _useState = React.useState(null),
|
|
40377
40366
|
_useState2 = _slicedToArray(_useState, 2),
|
|
40378
40367
|
selectedPackageName = _useState2[0],
|
|
40379
40368
|
setSelectedPackageName = _useState2[1];
|
|
40369
|
+
|
|
40370
|
+
// Check if a package is installed by name or scope/name
|
|
40371
|
+
var isPackageInstalled = React.useCallback(function (pkg) {
|
|
40372
|
+
var _pkg$widgets;
|
|
40373
|
+
// Check via WidgetRegistry (externally installed packages)
|
|
40374
|
+
if (installedPackageNames.has(pkg.name) || pkg.scope && installedPackageNames.has("".concat(pkg.scope, "/").concat(pkg.name))) {
|
|
40375
|
+
return true;
|
|
40376
|
+
}
|
|
40377
|
+
// Check if any of this package's widgets are registered in ComponentManager
|
|
40378
|
+
// (covers built-in widgets loaded directly, not through the WidgetRegistry).
|
|
40379
|
+
// ComponentManager keys may be prefixed (e.g., "DashSamples_EventReceiverWidget")
|
|
40380
|
+
// so we also check if any key ends with the widget name.
|
|
40381
|
+
if (((_pkg$widgets = pkg.widgets) === null || _pkg$widgets === void 0 ? void 0 : _pkg$widgets.length) > 0) {
|
|
40382
|
+
var cMap = ComponentManager.componentMap();
|
|
40383
|
+
var cMapKeys = Object.keys(cMap);
|
|
40384
|
+
return pkg.widgets.some(function (w) {
|
|
40385
|
+
return w.name in cMap || cMapKeys.some(function (k) {
|
|
40386
|
+
return k === w.name || k.endsWith("_".concat(w.name));
|
|
40387
|
+
});
|
|
40388
|
+
});
|
|
40389
|
+
}
|
|
40390
|
+
return false;
|
|
40391
|
+
}, [installedPackageNames]);
|
|
40380
40392
|
var selectedPackage = React.useMemo(function () {
|
|
40381
40393
|
if (!selectedPackageName) return null;
|
|
40382
40394
|
return registry.packages.find(function (pkg) {
|
|
@@ -40385,13 +40397,13 @@ var SidebarDiscoverContent = function SidebarDiscoverContent(_ref2) {
|
|
|
40385
40397
|
}, [selectedPackageName, registry.packages]);
|
|
40386
40398
|
var handleInstall = React.useCallback(/*#__PURE__*/function () {
|
|
40387
40399
|
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(pkg) {
|
|
40388
|
-
var _pkg$
|
|
40400
|
+
var _pkg$widgets2;
|
|
40389
40401
|
var firstWidget, installable;
|
|
40390
40402
|
return _regeneratorRuntime.wrap(function (_context) {
|
|
40391
40403
|
while (1) switch (_context.prev = _context.next) {
|
|
40392
40404
|
case 0:
|
|
40393
40405
|
// Build a widget-like object that useRegistrySearch.installPackage expects
|
|
40394
|
-
firstWidget = (_pkg$
|
|
40406
|
+
firstWidget = (_pkg$widgets2 = pkg.widgets) === null || _pkg$widgets2 === void 0 ? void 0 : _pkg$widgets2[0];
|
|
40395
40407
|
if (firstWidget) {
|
|
40396
40408
|
_context.next = 1;
|
|
40397
40409
|
break;
|
|
@@ -40425,8 +40437,9 @@ var SidebarDiscoverContent = function SidebarDiscoverContent(_ref2) {
|
|
|
40425
40437
|
|
|
40426
40438
|
// Detail view for a selected package
|
|
40427
40439
|
if (selectedPackage) {
|
|
40428
|
-
var _pkg$tags, _pkg$
|
|
40440
|
+
var _pkg$tags, _pkg$widgets3;
|
|
40429
40441
|
var pkg = selectedPackage;
|
|
40442
|
+
var isInstalled = isPackageInstalled(pkg);
|
|
40430
40443
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
40431
40444
|
className: "flex flex-col h-full",
|
|
40432
40445
|
children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
@@ -40448,9 +40461,15 @@ var SidebarDiscoverContent = function SidebarDiscoverContent(_ref2) {
|
|
|
40448
40461
|
className: "h-4 w-4 opacity-60 mt-0.5 flex-shrink-0"
|
|
40449
40462
|
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
40450
40463
|
className: "min-w-0",
|
|
40451
|
-
children: [/*#__PURE__*/jsxRuntime.
|
|
40452
|
-
className: "font-medium text-sm
|
|
40453
|
-
children:
|
|
40464
|
+
children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
40465
|
+
className: "flex items-center gap-1.5 font-medium text-sm",
|
|
40466
|
+
children: [/*#__PURE__*/jsxRuntime.jsx("span", {
|
|
40467
|
+
className: "truncate",
|
|
40468
|
+
children: pkg.displayName || pkg.name
|
|
40469
|
+
}), isInstalled && /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
40470
|
+
className: "text-[10px] px-1.5 py-0.5 rounded bg-emerald-500/20 text-emerald-400 flex-shrink-0",
|
|
40471
|
+
children: "Installed"
|
|
40472
|
+
})]
|
|
40454
40473
|
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
40455
40474
|
className: "text-[10px] opacity-50",
|
|
40456
40475
|
children: [pkg.author && /*#__PURE__*/jsxRuntime.jsxs("span", {
|
|
@@ -40469,7 +40488,7 @@ var SidebarDiscoverContent = function SidebarDiscoverContent(_ref2) {
|
|
|
40469
40488
|
children: tag
|
|
40470
40489
|
}, tag);
|
|
40471
40490
|
})
|
|
40472
|
-
}), ((_pkg$
|
|
40491
|
+
}), ((_pkg$widgets3 = pkg.widgets) === null || _pkg$widgets3 === void 0 ? void 0 : _pkg$widgets3.length) > 0 && /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
40473
40492
|
className: "mb-3",
|
|
40474
40493
|
children: [/*#__PURE__*/jsxRuntime.jsx("div", {
|
|
40475
40494
|
className: "text-[10px] font-medium opacity-50 uppercase tracking-wider mb-1.5",
|
|
@@ -40506,9 +40525,9 @@ var SidebarDiscoverContent = function SidebarDiscoverContent(_ref2) {
|
|
|
40506
40525
|
onClick: function onClick() {
|
|
40507
40526
|
return handleInstall(pkg);
|
|
40508
40527
|
},
|
|
40509
|
-
disabled: registry.isInstalling,
|
|
40528
|
+
disabled: registry.isInstalling || isInstalled,
|
|
40510
40529
|
className: "w-full py-1.5 rounded-md text-xs font-medium bg-blue-600 hover:bg-blue-500 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",
|
|
40511
|
-
children: registry.isInstalling ? "Installing..." : "Install Package"
|
|
40530
|
+
children: isInstalled ? "Installed" : registry.isInstalling ? "Installing..." : "Install Package"
|
|
40512
40531
|
})
|
|
40513
40532
|
})]
|
|
40514
40533
|
});
|
|
@@ -40570,13 +40589,14 @@ var SidebarDiscoverContent = function SidebarDiscoverContent(_ref2) {
|
|
|
40570
40589
|
children: /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
40571
40590
|
className: "flex flex-col gap-1 px-3 py-1",
|
|
40572
40591
|
children: registry.packages.map(function (pkg) {
|
|
40573
|
-
var _pkg$
|
|
40592
|
+
var _pkg$widgets4, _pkg$widgets5;
|
|
40593
|
+
var isInstalled = isPackageInstalled(pkg);
|
|
40574
40594
|
return /*#__PURE__*/jsxRuntime.jsxs("button", {
|
|
40575
40595
|
type: "button",
|
|
40576
40596
|
onClick: function onClick() {
|
|
40577
40597
|
return setSelectedPackageName(pkg.name);
|
|
40578
40598
|
},
|
|
40579
|
-
className: "flex items-center gap-2 px-3 py-2 rounded-md text-left
|
|
40599
|
+
className: "flex items-center gap-2 px-3 py-2 rounded-md text-left\n bg-white/5 hover:bg-white/10 transition-colors w-full".concat(isInstalled ? " opacity-50" : ""),
|
|
40580
40600
|
children: [/*#__PURE__*/jsxRuntime.jsx(DashReact.FontAwesomeIcon, {
|
|
40581
40601
|
icon: "cube",
|
|
40582
40602
|
className: "h-3 w-3 opacity-40 flex-shrink-0"
|
|
@@ -40590,10 +40610,17 @@ var SidebarDiscoverContent = function SidebarDiscoverContent(_ref2) {
|
|
|
40590
40610
|
children: [pkg.author && /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
40591
40611
|
className: "truncate",
|
|
40592
40612
|
children: pkg.author
|
|
40593
|
-
}), pkg.author && ((_pkg$
|
|
40613
|
+
}), pkg.author && ((_pkg$widgets4 = pkg.widgets) === null || _pkg$widgets4 === void 0 ? void 0 : _pkg$widgets4.length) > 0 && /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
40594
40614
|
children: "\xB7"
|
|
40595
|
-
}), ((_pkg$
|
|
40615
|
+
}), ((_pkg$widgets5 = pkg.widgets) === null || _pkg$widgets5 === void 0 ? void 0 : _pkg$widgets5.length) > 0 && /*#__PURE__*/jsxRuntime.jsxs("span", {
|
|
40596
40616
|
children: [pkg.widgets.length, " widget", pkg.widgets.length !== 1 ? "s" : ""]
|
|
40617
|
+
}), isInstalled && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
40618
|
+
children: [/*#__PURE__*/jsxRuntime.jsx("span", {
|
|
40619
|
+
children: "\xB7"
|
|
40620
|
+
}), /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
40621
|
+
className: "text-emerald-400",
|
|
40622
|
+
children: "Installed"
|
|
40623
|
+
})]
|
|
40597
40624
|
})]
|
|
40598
40625
|
})]
|
|
40599
40626
|
})]
|
|
@@ -40683,10 +40710,83 @@ var WidgetSidebar = function WidgetSidebar(_ref4) {
|
|
|
40683
40710
|
});
|
|
40684
40711
|
}, [widgetVersion]);
|
|
40685
40712
|
|
|
40713
|
+
// Set of installed package identifiers for "Installed" badge in Discover tab.
|
|
40714
|
+
// Stores folder names, package names, and "author/name" keys for matching.
|
|
40715
|
+
var _useState17 = React.useState(new Set()),
|
|
40716
|
+
_useState18 = _slicedToArray(_useState17, 2),
|
|
40717
|
+
installedPackageNames = _useState18[0],
|
|
40718
|
+
setInstalledPackageNames = _useState18[1];
|
|
40719
|
+
React.useEffect(function () {
|
|
40720
|
+
var cancelled = false;
|
|
40721
|
+
var loadInstalled = /*#__PURE__*/function () {
|
|
40722
|
+
var _ref5 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
40723
|
+
var widgets, names, _iterator, _step, w, folderName, _folderName;
|
|
40724
|
+
return _regeneratorRuntime.wrap(function (_context2) {
|
|
40725
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
40726
|
+
case 0:
|
|
40727
|
+
_context2.prev = 0;
|
|
40728
|
+
_context2.next = 1;
|
|
40729
|
+
return window.mainApi.widgets.list();
|
|
40730
|
+
case 1:
|
|
40731
|
+
widgets = _context2.sent;
|
|
40732
|
+
if (!cancelled) {
|
|
40733
|
+
_context2.next = 2;
|
|
40734
|
+
break;
|
|
40735
|
+
}
|
|
40736
|
+
return _context2.abrupt("return");
|
|
40737
|
+
case 2:
|
|
40738
|
+
names = new Set();
|
|
40739
|
+
_iterator = _createForOfIteratorHelper(widgets);
|
|
40740
|
+
try {
|
|
40741
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
40742
|
+
w = _step.value;
|
|
40743
|
+
// w is a config object with name, path, author, etc.
|
|
40744
|
+
if (w.name) names.add(w.name);
|
|
40745
|
+
// Extract folder name from path (matches registry pkg.name)
|
|
40746
|
+
if (w.path) {
|
|
40747
|
+
folderName = w.path.split("/").pop();
|
|
40748
|
+
if (folderName) names.add(folderName);
|
|
40749
|
+
}
|
|
40750
|
+
// Add author-scoped keys for disambiguation
|
|
40751
|
+
if (w.author && w.name) {
|
|
40752
|
+
names.add("".concat(w.author, "/").concat(w.name));
|
|
40753
|
+
}
|
|
40754
|
+
if (w.author && w.path) {
|
|
40755
|
+
_folderName = w.path.split("/").pop();
|
|
40756
|
+
if (_folderName) names.add("".concat(w.author, "/").concat(_folderName));
|
|
40757
|
+
}
|
|
40758
|
+
}
|
|
40759
|
+
} catch (err) {
|
|
40760
|
+
_iterator.e(err);
|
|
40761
|
+
} finally {
|
|
40762
|
+
_iterator.f();
|
|
40763
|
+
}
|
|
40764
|
+
setInstalledPackageNames(names);
|
|
40765
|
+
_context2.next = 4;
|
|
40766
|
+
break;
|
|
40767
|
+
case 3:
|
|
40768
|
+
_context2.prev = 3;
|
|
40769
|
+
_context2["catch"](0);
|
|
40770
|
+
case 4:
|
|
40771
|
+
case "end":
|
|
40772
|
+
return _context2.stop();
|
|
40773
|
+
}
|
|
40774
|
+
}, _callee2, null, [[0, 3]]);
|
|
40775
|
+
}));
|
|
40776
|
+
return function loadInstalled() {
|
|
40777
|
+
return _ref5.apply(this, arguments);
|
|
40778
|
+
};
|
|
40779
|
+
}();
|
|
40780
|
+
loadInstalled();
|
|
40781
|
+
return function () {
|
|
40782
|
+
cancelled = true;
|
|
40783
|
+
};
|
|
40784
|
+
}, [widgetVersion]);
|
|
40785
|
+
|
|
40686
40786
|
// Derive unique groups for dropdown (package > author > "Other")
|
|
40687
40787
|
var uniqueAuthors = React.useMemo(function () {
|
|
40688
|
-
return _toConsumableArray(new Set(allWidgets.map(function (
|
|
40689
|
-
var widget =
|
|
40788
|
+
return _toConsumableArray(new Set(allWidgets.map(function (_ref6) {
|
|
40789
|
+
var widget = _ref6.widget;
|
|
40690
40790
|
return widget["package"] || widget.author || "Other";
|
|
40691
40791
|
}))).sort();
|
|
40692
40792
|
}, [allWidgets]);
|
|
@@ -40694,8 +40794,8 @@ var WidgetSidebar = function WidgetSidebar(_ref4) {
|
|
|
40694
40794
|
// Derive unique provider types for dropdown
|
|
40695
40795
|
var uniqueProviders = React.useMemo(function () {
|
|
40696
40796
|
var types = new Set();
|
|
40697
|
-
allWidgets.forEach(function (
|
|
40698
|
-
var widget =
|
|
40797
|
+
allWidgets.forEach(function (_ref7) {
|
|
40798
|
+
var widget = _ref7.widget;
|
|
40699
40799
|
return (widget.providers || []).forEach(function (p) {
|
|
40700
40800
|
return types.add(p.type);
|
|
40701
40801
|
});
|
|
@@ -40705,9 +40805,9 @@ var WidgetSidebar = function WidgetSidebar(_ref4) {
|
|
|
40705
40805
|
|
|
40706
40806
|
// Filtered + grouped widgets
|
|
40707
40807
|
var filteredGrouped = React.useMemo(function () {
|
|
40708
|
-
var filtered = allWidgets.filter(function (
|
|
40709
|
-
var key =
|
|
40710
|
-
widget =
|
|
40808
|
+
var filtered = allWidgets.filter(function (_ref8) {
|
|
40809
|
+
var key = _ref8.key,
|
|
40810
|
+
widget = _ref8.widget;
|
|
40711
40811
|
// Search: match name, key, or description
|
|
40712
40812
|
if (searchQuery) {
|
|
40713
40813
|
var q = searchQuery.toLowerCase();
|
|
@@ -40747,9 +40847,9 @@ var WidgetSidebar = function WidgetSidebar(_ref4) {
|
|
|
40747
40847
|
|
|
40748
40848
|
// Group by package > author > "Other"
|
|
40749
40849
|
var groups = {};
|
|
40750
|
-
filtered.forEach(function (
|
|
40751
|
-
var key =
|
|
40752
|
-
widget =
|
|
40850
|
+
filtered.forEach(function (_ref9) {
|
|
40851
|
+
var key = _ref9.key,
|
|
40852
|
+
widget = _ref9.widget;
|
|
40753
40853
|
var group = widget["package"] || widget.author || "Other";
|
|
40754
40854
|
if (!groups[group]) groups[group] = [];
|
|
40755
40855
|
groups[group].push({
|
|
@@ -40939,9 +41039,9 @@ var WidgetSidebar = function WidgetSidebar(_ref4) {
|
|
|
40939
41039
|
label: author,
|
|
40940
41040
|
children: /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
40941
41041
|
className: "flex flex-col gap-1",
|
|
40942
|
-
children: filteredGrouped[author].map(function (
|
|
40943
|
-
var key =
|
|
40944
|
-
widget =
|
|
41042
|
+
children: filteredGrouped[author].map(function (_ref0) {
|
|
41043
|
+
var key = _ref0.key,
|
|
41044
|
+
widget = _ref0.widget;
|
|
40945
41045
|
return /*#__PURE__*/jsxRuntime.jsx(DraggableWidgetItem, {
|
|
40946
41046
|
widgetKey: key,
|
|
40947
41047
|
widget: widget
|
|
@@ -40962,7 +41062,8 @@ var WidgetSidebar = function WidgetSidebar(_ref4) {
|
|
|
40962
41062
|
})]
|
|
40963
41063
|
}) : /*#__PURE__*/jsxRuntime.jsx(SidebarDiscoverContent, {
|
|
40964
41064
|
registry: registry,
|
|
40965
|
-
onInstallSuccess: handleInstallSuccess
|
|
41065
|
+
onInstallSuccess: handleInstallSuccess,
|
|
41066
|
+
installedPackageNames: installedPackageNames
|
|
40966
41067
|
})
|
|
40967
41068
|
}), !collapsed && activeTab === "installed" && installSuccess && /*#__PURE__*/jsxRuntime.jsx(DashReact.Sidebar.Footer, {
|
|
40968
41069
|
children: /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
@@ -42211,10 +42312,16 @@ var DashboardHeader = function DashboardHeader(_ref) {
|
|
|
42211
42312
|
className: "w-40 shrink-0"
|
|
42212
42313
|
}), onThemeChange && Object.keys(resolvedThemes).length > 0 && /*#__PURE__*/jsxRuntime.jsx(DashReact.SelectInput, {
|
|
42213
42314
|
value: workspaceSelected.themeKey || "",
|
|
42214
|
-
options: Object.entries(resolvedThemes).
|
|
42215
|
-
var
|
|
42216
|
-
|
|
42217
|
-
|
|
42315
|
+
options: Object.entries(resolvedThemes).sort(function (_ref2, _ref3) {
|
|
42316
|
+
var _ref4 = _slicedToArray(_ref2, 2),
|
|
42317
|
+
a = _ref4[1];
|
|
42318
|
+
var _ref5 = _slicedToArray(_ref3, 2),
|
|
42319
|
+
b = _ref5[1];
|
|
42320
|
+
return (a.name || "").localeCompare(b.name || "");
|
|
42321
|
+
}).map(function (_ref6) {
|
|
42322
|
+
var _ref7 = _slicedToArray(_ref6, 2),
|
|
42323
|
+
key = _ref7[0],
|
|
42324
|
+
t = _ref7[1];
|
|
42218
42325
|
return {
|
|
42219
42326
|
label: t.name || key,
|
|
42220
42327
|
value: key,
|
|
@@ -42222,7 +42329,7 @@ var DashboardHeader = function DashboardHeader(_ref) {
|
|
|
42222
42329
|
};
|
|
42223
42330
|
}),
|
|
42224
42331
|
onChange: onThemeChange,
|
|
42225
|
-
placeholder: "
|
|
42332
|
+
placeholder: "Select a theme",
|
|
42226
42333
|
backgroundColor: currentTheme["bg-primary-very-dark"],
|
|
42227
42334
|
textColor: currentTheme["text-primary-medium"],
|
|
42228
42335
|
borderColor: currentTheme["border-primary-dark"],
|