@trops/dash-core 0.1.639 → 0.1.641
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/electron/index.js +427 -37
- package/dist/electron/index.js.map +1 -1
- package/dist/index.esm.js +689 -256
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +689 -256
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -161,8 +161,11 @@ var DashboardPublisher = {
|
|
|
161
161
|
}, 0);
|
|
162
162
|
}
|
|
163
163
|
},
|
|
164
|
+
// meta.workspaceId — the publishing widget's dashboard. Forwarded over IPC
|
|
165
|
+
// so bots subscribed to one dashboard's widget ignore copies of it.
|
|
164
166
|
pub: function pub(eventType, content) {
|
|
165
167
|
var _window$mainApi;
|
|
168
|
+
var meta = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
|
166
169
|
lastEventCache.set(eventType, {
|
|
167
170
|
content: content,
|
|
168
171
|
timestamp: Date.now()
|
|
@@ -189,7 +192,14 @@ var DashboardPublisher = {
|
|
|
189
192
|
|
|
190
193
|
// Forward to other windows via IPC bridge
|
|
191
194
|
if ((_window$mainApi = window.mainApi) !== null && _window$mainApi !== void 0 && _window$mainApi.widgetEvent) {
|
|
192
|
-
|
|
195
|
+
var workspaceId = meta && meta.workspaceId;
|
|
196
|
+
if (workspaceId != null && workspaceId !== "") {
|
|
197
|
+
window.mainApi.widgetEvent.publish(eventType, content, {
|
|
198
|
+
workspaceId: String(workspaceId)
|
|
199
|
+
});
|
|
200
|
+
} else {
|
|
201
|
+
window.mainApi.widgetEvent.publish(eventType, content);
|
|
202
|
+
}
|
|
193
203
|
}
|
|
194
204
|
},
|
|
195
205
|
onMonitor: function onMonitor(callback) {
|
|
@@ -357,10 +367,12 @@ var WidgetApi = {
|
|
|
357
367
|
publishEvent: function publishEvent() {
|
|
358
368
|
var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
|
359
369
|
var events = arguments.length > 1 ? arguments[1] : undefined;
|
|
370
|
+
var meta = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
|
|
360
371
|
try {
|
|
361
372
|
if (this.pub() !== null && name !== null && events !== null) {
|
|
362
373
|
if ("pub" in this.pub()) {
|
|
363
|
-
|
|
374
|
+
// meta.workspaceId = the publishing widget's dashboard.
|
|
375
|
+
this.pub().pub(name, events, meta);
|
|
364
376
|
}
|
|
365
377
|
}
|
|
366
378
|
} catch (e) {
|
|
@@ -2756,9 +2768,9 @@ function useWidgetRegistryVersion() {
|
|
|
2756
2768
|
return version;
|
|
2757
2769
|
}
|
|
2758
2770
|
|
|
2759
|
-
function _createForOfIteratorHelper$
|
|
2760
|
-
function _unsupportedIterableToArray$
|
|
2761
|
-
function _arrayLikeToArray$
|
|
2771
|
+
function _createForOfIteratorHelper$N(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$N(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
2772
|
+
function _unsupportedIterableToArray$N(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$N(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$N(r, a) : void 0; } }
|
|
2773
|
+
function _arrayLikeToArray$N(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
2762
2774
|
|
|
2763
2775
|
/**
|
|
2764
2776
|
* Walk a workspace layout and collect widget component keys that are
|
|
@@ -2772,7 +2784,7 @@ function collectComponentsFromLayout(layout) {
|
|
|
2772
2784
|
|
|
2773
2785
|
// Collect IDs of layout items that are actively referenced by grid cells
|
|
2774
2786
|
var activeItemIds = new Set();
|
|
2775
|
-
var _iterator = _createForOfIteratorHelper$
|
|
2787
|
+
var _iterator = _createForOfIteratorHelper$N(layout),
|
|
2776
2788
|
_step;
|
|
2777
2789
|
try {
|
|
2778
2790
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -2792,7 +2804,7 @@ function collectComponentsFromLayout(layout) {
|
|
|
2792
2804
|
} finally {
|
|
2793
2805
|
_iterator.f();
|
|
2794
2806
|
}
|
|
2795
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
2807
|
+
var _iterator2 = _createForOfIteratorHelper$N(layout),
|
|
2796
2808
|
_step2;
|
|
2797
2809
|
try {
|
|
2798
2810
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -2826,7 +2838,7 @@ function findWidgetUsage(componentNames, workspaces) {
|
|
|
2826
2838
|
if (!(componentNames !== null && componentNames !== void 0 && componentNames.length) || !(workspaces !== null && workspaces !== void 0 && workspaces.length)) return [];
|
|
2827
2839
|
var nameSet = new Set(componentNames);
|
|
2828
2840
|
var results = [];
|
|
2829
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
2841
|
+
var _iterator3 = _createForOfIteratorHelper$N(workspaces),
|
|
2830
2842
|
_step3;
|
|
2831
2843
|
try {
|
|
2832
2844
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -2967,7 +2979,7 @@ var useInstalledWidgets = function useInstalledWidgets() {
|
|
|
2967
2979
|
_t = [];
|
|
2968
2980
|
case 4:
|
|
2969
2981
|
allDrafts = _t;
|
|
2970
|
-
_iterator4 = _createForOfIteratorHelper$
|
|
2982
|
+
_iterator4 = _createForOfIteratorHelper$N(allDrafts);
|
|
2971
2983
|
try {
|
|
2972
2984
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
2973
2985
|
d = _step4.value;
|
|
@@ -3136,9 +3148,9 @@ var useInstalledWidgets = function useInstalledWidgets() {
|
|
|
3136
3148
|
};
|
|
3137
3149
|
};
|
|
3138
3150
|
|
|
3139
|
-
function _createForOfIteratorHelper$
|
|
3140
|
-
function _unsupportedIterableToArray$
|
|
3141
|
-
function _arrayLikeToArray$
|
|
3151
|
+
function _createForOfIteratorHelper$M(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$M(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
3152
|
+
function _unsupportedIterableToArray$M(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$M(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$M(r, a) : void 0; } }
|
|
3153
|
+
function _arrayLikeToArray$M(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; }
|
|
3142
3154
|
function ownKeys$1a(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; }
|
|
3143
3155
|
function _objectSpread$1a(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1a(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1a(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
3144
3156
|
|
|
@@ -3664,7 +3676,7 @@ function useWidgetUpdates() {
|
|
|
3664
3676
|
// (install replaces the entire package, not just one widget)
|
|
3665
3677
|
setUpdates(function (prev) {
|
|
3666
3678
|
var next = new Map(prev);
|
|
3667
|
-
var _iterator = _createForOfIteratorHelper$
|
|
3679
|
+
var _iterator = _createForOfIteratorHelper$M(next),
|
|
3668
3680
|
_step;
|
|
3669
3681
|
try {
|
|
3670
3682
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -3723,7 +3735,7 @@ function useWidgetUpdates() {
|
|
|
3723
3735
|
var packagesWithUpdates = React.useMemo(function () {
|
|
3724
3736
|
if (!updates || updates.size === 0) return [];
|
|
3725
3737
|
var byPackage = new Map();
|
|
3726
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
3738
|
+
var _iterator2 = _createForOfIteratorHelper$M(updates),
|
|
3727
3739
|
_step2;
|
|
3728
3740
|
try {
|
|
3729
3741
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -3751,7 +3763,7 @@ function useWidgetUpdates() {
|
|
|
3751
3763
|
} finally {
|
|
3752
3764
|
_iterator2.f();
|
|
3753
3765
|
}
|
|
3754
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
3766
|
+
var _iterator3 = _createForOfIteratorHelper$M(installedWidgets),
|
|
3755
3767
|
_step3;
|
|
3756
3768
|
try {
|
|
3757
3769
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -3882,7 +3894,7 @@ function useWidgetUpdates() {
|
|
|
3882
3894
|
// packageId) → grant rows (which are keyed by widgetId like
|
|
3883
3895
|
// `trops.slack.SlackChannels`).
|
|
3884
3896
|
rowByComponentName = new Map();
|
|
3885
|
-
_iterator4 = _createForOfIteratorHelper$
|
|
3897
|
+
_iterator4 = _createForOfIteratorHelper$M(allRows);
|
|
3886
3898
|
try {
|
|
3887
3899
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
3888
3900
|
r = _step4.value;
|
|
@@ -3895,7 +3907,7 @@ function useWidgetUpdates() {
|
|
|
3895
3907
|
_iterator4.f();
|
|
3896
3908
|
}
|
|
3897
3909
|
widgetsWithMissing = [];
|
|
3898
|
-
_iterator5 = _createForOfIteratorHelper$
|
|
3910
|
+
_iterator5 = _createForOfIteratorHelper$M(manifests);
|
|
3899
3911
|
_context5.prev = 8;
|
|
3900
3912
|
_loop = /*#__PURE__*/_regeneratorRuntime.mark(function _loop() {
|
|
3901
3913
|
var _manifest$permissions;
|
|
@@ -3918,7 +3930,7 @@ function useWidgetUpdates() {
|
|
|
3918
3930
|
pkgWidgets = installedWidgets.filter(function (w) {
|
|
3919
3931
|
return (w.packageId || w.name) === packageId;
|
|
3920
3932
|
});
|
|
3921
|
-
_iterator6 = _createForOfIteratorHelper$
|
|
3933
|
+
_iterator6 = _createForOfIteratorHelper$M(pkgWidgets);
|
|
3922
3934
|
_context4.prev = 2;
|
|
3923
3935
|
_iterator6.s();
|
|
3924
3936
|
case 3:
|
|
@@ -4030,7 +4042,7 @@ function useWidgetUpdates() {
|
|
|
4030
4042
|
// Seed every selected package as pending so the modal renders
|
|
4031
4043
|
// the full per-row state from the first paint.
|
|
4032
4044
|
initial = new Map();
|
|
4033
|
-
_iterator7 = _createForOfIteratorHelper$
|
|
4045
|
+
_iterator7 = _createForOfIteratorHelper$M(packageNames);
|
|
4034
4046
|
try {
|
|
4035
4047
|
for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
|
|
4036
4048
|
name = _step7.value;
|
|
@@ -4090,7 +4102,7 @@ function useWidgetUpdates() {
|
|
|
4090
4102
|
// loop so the freshly-installed code can immediately use
|
|
4091
4103
|
// what was approved (and is gated from what wasn't).
|
|
4092
4104
|
accepted = decision.acceptedByWidgetId || {};
|
|
4093
|
-
_iterator8 = _createForOfIteratorHelper$
|
|
4105
|
+
_iterator8 = _createForOfIteratorHelper$M(preflight.widgets);
|
|
4094
4106
|
_context7.prev = 6;
|
|
4095
4107
|
_iterator8.s();
|
|
4096
4108
|
case 7:
|
|
@@ -4174,7 +4186,7 @@ function useWidgetUpdates() {
|
|
|
4174
4186
|
// e.g. a stale registry zip or a verify mismatch).
|
|
4175
4187
|
failedDetails = [];
|
|
4176
4188
|
_context7.prev = 19;
|
|
4177
|
-
_iterator9 = _createForOfIteratorHelper$
|
|
4189
|
+
_iterator9 = _createForOfIteratorHelper$M(packageNames);
|
|
4178
4190
|
_context7.prev = 20;
|
|
4179
4191
|
_loop2 = /*#__PURE__*/_regeneratorRuntime.mark(function _loop2() {
|
|
4180
4192
|
var pkgName, msg, _t0;
|
|
@@ -4281,7 +4293,7 @@ function useWidgetUpdates() {
|
|
|
4281
4293
|
succeededSet = new Set(succeeded);
|
|
4282
4294
|
setUpdates(function (prev) {
|
|
4283
4295
|
var next = new Map(prev);
|
|
4284
|
-
var _iterator0 = _createForOfIteratorHelper$
|
|
4296
|
+
var _iterator0 = _createForOfIteratorHelper$M(next),
|
|
4285
4297
|
_step0;
|
|
4286
4298
|
try {
|
|
4287
4299
|
for (_iterator0.s(); !(_step0 = _iterator0.n()).done;) {
|
|
@@ -4675,9 +4687,9 @@ function useRegistryAuth() {
|
|
|
4675
4687
|
|
|
4676
4688
|
function ownKeys$18(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; }
|
|
4677
4689
|
function _objectSpread$18(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$18(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$18(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4678
|
-
function _createForOfIteratorHelper$
|
|
4679
|
-
function _unsupportedIterableToArray$
|
|
4680
|
-
function _arrayLikeToArray$
|
|
4690
|
+
function _createForOfIteratorHelper$L(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$L(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; } } }; }
|
|
4691
|
+
function _unsupportedIterableToArray$L(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$L(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$L(r, a) : void 0; } }
|
|
4692
|
+
function _arrayLikeToArray$L(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; }
|
|
4681
4693
|
var secondaryBtnClass$1 = "px-3 py-2 text-sm font-medium rounded bg-gray-700 hover:bg-gray-600 disabled:bg-gray-800 disabled:text-gray-500 disabled:cursor-not-allowed text-gray-100";
|
|
4682
4694
|
var primaryBtnClass$1 = "px-3 py-2 text-sm font-medium rounded bg-blue-600 hover:bg-blue-500 disabled:bg-gray-700 disabled:text-gray-500 disabled:cursor-not-allowed text-white";
|
|
4683
4695
|
|
|
@@ -4697,7 +4709,7 @@ function flattenPreflightLines(missing) {
|
|
|
4697
4709
|
var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
|
|
4698
4710
|
serverName = _Object$entries$_i[0],
|
|
4699
4711
|
perms = _Object$entries$_i[1];
|
|
4700
|
-
var _iterator = _createForOfIteratorHelper$
|
|
4712
|
+
var _iterator = _createForOfIteratorHelper$L(perms.tools || []),
|
|
4701
4713
|
_step;
|
|
4702
4714
|
try {
|
|
4703
4715
|
var _loop2 = function _loop2() {
|
|
@@ -4724,7 +4736,7 @@ function flattenPreflightLines(missing) {
|
|
|
4724
4736
|
} finally {
|
|
4725
4737
|
_iterator.f();
|
|
4726
4738
|
}
|
|
4727
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
4739
|
+
var _iterator2 = _createForOfIteratorHelper$L(perms.readPaths || []),
|
|
4728
4740
|
_step2;
|
|
4729
4741
|
try {
|
|
4730
4742
|
var _loop3 = function _loop3() {
|
|
@@ -4751,7 +4763,7 @@ function flattenPreflightLines(missing) {
|
|
|
4751
4763
|
} finally {
|
|
4752
4764
|
_iterator2.f();
|
|
4753
4765
|
}
|
|
4754
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
4766
|
+
var _iterator3 = _createForOfIteratorHelper$L(perms.writePaths || []),
|
|
4755
4767
|
_step3;
|
|
4756
4768
|
try {
|
|
4757
4769
|
var _loop4 = function _loop4() {
|
|
@@ -4803,13 +4815,13 @@ var WidgetPreflightReview = function WidgetPreflightReview(_ref) {
|
|
|
4803
4815
|
var _pendingPreflight$wid;
|
|
4804
4816
|
if (!pendingPreflight || !((_pendingPreflight$wid = pendingPreflight.widgets) !== null && _pendingPreflight$wid !== void 0 && _pendingPreflight$wid.length)) return;
|
|
4805
4817
|
var initial = {};
|
|
4806
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
4818
|
+
var _iterator4 = _createForOfIteratorHelper$L(pendingPreflight.widgets),
|
|
4807
4819
|
_step4;
|
|
4808
4820
|
try {
|
|
4809
4821
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
4810
4822
|
var w = _step4.value;
|
|
4811
4823
|
initial[w.widgetId] = {};
|
|
4812
|
-
var _iterator5 = _createForOfIteratorHelper$
|
|
4824
|
+
var _iterator5 = _createForOfIteratorHelper$L(flattenPreflightLines(w.missing)),
|
|
4813
4825
|
_step5;
|
|
4814
4826
|
try {
|
|
4815
4827
|
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
@@ -4846,7 +4858,7 @@ var WidgetPreflightReview = function WidgetPreflightReview(_ref) {
|
|
|
4846
4858
|
// Build the per-widget addition blob from checked lines. Skip
|
|
4847
4859
|
// widgets where the user unchecked everything.
|
|
4848
4860
|
var acceptedByWidgetId = {};
|
|
4849
|
-
var _iterator6 = _createForOfIteratorHelper$
|
|
4861
|
+
var _iterator6 = _createForOfIteratorHelper$L(widgets),
|
|
4850
4862
|
_step6;
|
|
4851
4863
|
try {
|
|
4852
4864
|
for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
|
|
@@ -4854,7 +4866,7 @@ var WidgetPreflightReview = function WidgetPreflightReview(_ref) {
|
|
|
4854
4866
|
var _lines = flattenPreflightLines(w.missing);
|
|
4855
4867
|
var acc = {};
|
|
4856
4868
|
var any = false;
|
|
4857
|
-
var _iterator7 = _createForOfIteratorHelper$
|
|
4869
|
+
var _iterator7 = _createForOfIteratorHelper$L(_lines),
|
|
4858
4870
|
_step7;
|
|
4859
4871
|
try {
|
|
4860
4872
|
for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
|
|
@@ -6139,9 +6151,9 @@ var LayoutContainer = function LayoutContainer(_ref) {
|
|
|
6139
6151
|
|
|
6140
6152
|
function ownKeys$15(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; }
|
|
6141
6153
|
function _objectSpread$15(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$15(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$15(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6142
|
-
function _createForOfIteratorHelper$
|
|
6143
|
-
function _unsupportedIterableToArray$
|
|
6144
|
-
function _arrayLikeToArray$
|
|
6154
|
+
function _createForOfIteratorHelper$K(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$K(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; } } }; }
|
|
6155
|
+
function _unsupportedIterableToArray$K(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$K(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$K(r, a) : void 0; } }
|
|
6156
|
+
function _arrayLikeToArray$K(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; }
|
|
6145
6157
|
/**
|
|
6146
6158
|
* Layout template definitions for the dashboard template picker.
|
|
6147
6159
|
*
|
|
@@ -6415,7 +6427,7 @@ function createLayoutFromTemplate(template) {
|
|
|
6415
6427
|
cols: template.cols,
|
|
6416
6428
|
gap: "gap-2"
|
|
6417
6429
|
};
|
|
6418
|
-
var _iterator = _createForOfIteratorHelper$
|
|
6430
|
+
var _iterator = _createForOfIteratorHelper$K(template.cells),
|
|
6419
6431
|
_step;
|
|
6420
6432
|
try {
|
|
6421
6433
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -7437,9 +7449,9 @@ var DashboardInstallOptionsModal = function DashboardInstallOptionsModal(_ref) {
|
|
|
7437
7449
|
});
|
|
7438
7450
|
};
|
|
7439
7451
|
|
|
7440
|
-
function _createForOfIteratorHelper$
|
|
7441
|
-
function _unsupportedIterableToArray$
|
|
7442
|
-
function _arrayLikeToArray$
|
|
7452
|
+
function _createForOfIteratorHelper$J(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$J(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; } } }; }
|
|
7453
|
+
function _unsupportedIterableToArray$J(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$J(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$J(r, a) : void 0; } }
|
|
7454
|
+
function _arrayLikeToArray$J(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; }
|
|
7443
7455
|
function ownKeys$14(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; }
|
|
7444
7456
|
function _objectSpread$14(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$14(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$14(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
7445
7457
|
var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
|
|
@@ -7808,7 +7820,7 @@ var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
|
|
|
7808
7820
|
toInstall = 0,
|
|
7809
7821
|
unavailable = 0,
|
|
7810
7822
|
hasUnavailableRequired = false;
|
|
7811
|
-
var _iterator = _createForOfIteratorHelper$
|
|
7823
|
+
var _iterator = _createForOfIteratorHelper$J(widgetDeps),
|
|
7812
7824
|
_step;
|
|
7813
7825
|
try {
|
|
7814
7826
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -9509,9 +9521,9 @@ function cleanIpcError(message) {
|
|
|
9509
9521
|
return match ? match[1] : message;
|
|
9510
9522
|
}
|
|
9511
9523
|
|
|
9512
|
-
function _createForOfIteratorHelper$
|
|
9513
|
-
function _unsupportedIterableToArray$
|
|
9514
|
-
function _arrayLikeToArray$
|
|
9524
|
+
function _createForOfIteratorHelper$I(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$I(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; } } }; }
|
|
9525
|
+
function _unsupportedIterableToArray$I(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$I(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$I(r, a) : void 0; } }
|
|
9526
|
+
function _arrayLikeToArray$I(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; }
|
|
9515
9527
|
|
|
9516
9528
|
/**
|
|
9517
9529
|
* useRegistrySearch — shared hook for browsing and installing registry packages.
|
|
@@ -9625,13 +9637,13 @@ var useRegistrySearch = function useRegistrySearch() {
|
|
|
9625
9637
|
return c.toLowerCase();
|
|
9626
9638
|
}));
|
|
9627
9639
|
widgets = [];
|
|
9628
|
-
_iterator = _createForOfIteratorHelper$
|
|
9640
|
+
_iterator = _createForOfIteratorHelper$I(pkgs);
|
|
9629
9641
|
try {
|
|
9630
9642
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
9631
9643
|
pkg = _step.value;
|
|
9632
9644
|
// Compute missing APIs for the entire package
|
|
9633
9645
|
allApiProviders = [];
|
|
9634
|
-
_iterator2 = _createForOfIteratorHelper$
|
|
9646
|
+
_iterator2 = _createForOfIteratorHelper$I(pkg.providers || []);
|
|
9635
9647
|
try {
|
|
9636
9648
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
9637
9649
|
p = _step2.value;
|
|
@@ -9644,11 +9656,11 @@ var useRegistrySearch = function useRegistrySearch() {
|
|
|
9644
9656
|
} finally {
|
|
9645
9657
|
_iterator2.f();
|
|
9646
9658
|
}
|
|
9647
|
-
_iterator3 = _createForOfIteratorHelper$
|
|
9659
|
+
_iterator3 = _createForOfIteratorHelper$I(pkg.widgets || []);
|
|
9648
9660
|
try {
|
|
9649
9661
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
9650
9662
|
w = _step3.value;
|
|
9651
|
-
_iterator5 = _createForOfIteratorHelper$
|
|
9663
|
+
_iterator5 = _createForOfIteratorHelper$I(w.providers || []);
|
|
9652
9664
|
try {
|
|
9653
9665
|
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
9654
9666
|
_p = _step5.value;
|
|
@@ -9670,7 +9682,7 @@ var useRegistrySearch = function useRegistrySearch() {
|
|
|
9670
9682
|
missingApis = _toConsumableArray(new Set(allApiProviders)).filter(function (api) {
|
|
9671
9683
|
return !capSet.has(api.toLowerCase());
|
|
9672
9684
|
});
|
|
9673
|
-
_iterator4 = _createForOfIteratorHelper$
|
|
9685
|
+
_iterator4 = _createForOfIteratorHelper$I(pkg.widgets || []);
|
|
9674
9686
|
try {
|
|
9675
9687
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
9676
9688
|
widget = _step4.value;
|
|
@@ -10457,9 +10469,9 @@ function WizardThemePreview(_ref) {
|
|
|
10457
10469
|
});
|
|
10458
10470
|
}
|
|
10459
10471
|
|
|
10460
|
-
function _createForOfIteratorHelper$
|
|
10461
|
-
function _unsupportedIterableToArray$
|
|
10462
|
-
function _arrayLikeToArray$
|
|
10472
|
+
function _createForOfIteratorHelper$H(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$H(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
10473
|
+
function _unsupportedIterableToArray$H(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$H(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$H(r, a) : void 0; } }
|
|
10474
|
+
function _arrayLikeToArray$H(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; }
|
|
10463
10475
|
var WizardCustomizeStep = function WizardCustomizeStep(_ref) {
|
|
10464
10476
|
var _state$selectedDashbo, _state$selectedDashbo2, _state$layout;
|
|
10465
10477
|
var state = _ref.state,
|
|
@@ -10678,7 +10690,7 @@ var WizardCustomizeStep = function WizardCustomizeStep(_ref) {
|
|
|
10678
10690
|
installedNames = new Set(installedList.map(function (w) {
|
|
10679
10691
|
return w.name;
|
|
10680
10692
|
}));
|
|
10681
|
-
_iterator = _createForOfIteratorHelper$
|
|
10693
|
+
_iterator = _createForOfIteratorHelper$H(state.selectedWidgets);
|
|
10682
10694
|
_context2.prev = 12;
|
|
10683
10695
|
_iterator.s();
|
|
10684
10696
|
case 13:
|
|
@@ -12366,9 +12378,9 @@ function mergeDownOp(grid, row, col) {
|
|
|
12366
12378
|
}
|
|
12367
12379
|
|
|
12368
12380
|
var _excluded$4 = ["rows", "cols"];
|
|
12369
|
-
function _createForOfIteratorHelper$
|
|
12370
|
-
function _unsupportedIterableToArray$
|
|
12371
|
-
function _arrayLikeToArray$
|
|
12381
|
+
function _createForOfIteratorHelper$G(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$G(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; } } }; }
|
|
12382
|
+
function _unsupportedIterableToArray$G(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$G(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$G(r, a) : void 0; } }
|
|
12383
|
+
function _arrayLikeToArray$G(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; }
|
|
12372
12384
|
function ownKeys$11(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12373
12385
|
function _objectSpread$11(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$11(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$11(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
12374
12386
|
var defaultGrid = {
|
|
@@ -12490,7 +12502,7 @@ function GridEditor(_ref) {
|
|
|
12490
12502
|
function sortObjectByKeys(obj) {
|
|
12491
12503
|
var sortedKeys = Object.keys(obj).sort();
|
|
12492
12504
|
var sortedObj = {};
|
|
12493
|
-
var _iterator = _createForOfIteratorHelper$
|
|
12505
|
+
var _iterator = _createForOfIteratorHelper$G(sortedKeys),
|
|
12494
12506
|
_step;
|
|
12495
12507
|
try {
|
|
12496
12508
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -12963,9 +12975,9 @@ var PanelEditItemNotifications = function PanelEditItemNotifications(_ref) {
|
|
|
12963
12975
|
});
|
|
12964
12976
|
};
|
|
12965
12977
|
|
|
12966
|
-
function _createForOfIteratorHelper$
|
|
12967
|
-
function _unsupportedIterableToArray$
|
|
12968
|
-
function _arrayLikeToArray$
|
|
12978
|
+
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; } } }; }
|
|
12979
|
+
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; } }
|
|
12980
|
+
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; }
|
|
12969
12981
|
function ownKeys$$(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12970
12982
|
function _objectSpread$$(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$$(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$$(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
12971
12983
|
var DAYS = [{
|
|
@@ -13294,7 +13306,7 @@ var PanelEditItemSchedule = function PanelEditItemSchedule(_ref2) {
|
|
|
13294
13306
|
setIsLoading(true);
|
|
13295
13307
|
window.mainApi.scheduler.getTasks(widgetUuid).then(function (tasks) {
|
|
13296
13308
|
var stateMap = {};
|
|
13297
|
-
var _iterator = _createForOfIteratorHelper$
|
|
13309
|
+
var _iterator = _createForOfIteratorHelper$F(tasks || []),
|
|
13298
13310
|
_step;
|
|
13299
13311
|
try {
|
|
13300
13312
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -13553,9 +13565,9 @@ function isUserWidget(item) {
|
|
|
13553
13565
|
return true;
|
|
13554
13566
|
}
|
|
13555
13567
|
|
|
13556
|
-
function _createForOfIteratorHelper$
|
|
13557
|
-
function _unsupportedIterableToArray$
|
|
13558
|
-
function _arrayLikeToArray$
|
|
13568
|
+
function _createForOfIteratorHelper$E(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$E(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; } } }; }
|
|
13569
|
+
function _unsupportedIterableToArray$E(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$E(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$E(r, a) : void 0; } }
|
|
13570
|
+
function _arrayLikeToArray$E(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; }
|
|
13559
13571
|
|
|
13560
13572
|
/**
|
|
13561
13573
|
* Resolve which provider name a given widget instance would bind to for
|
|
@@ -13587,7 +13599,7 @@ function resolveProviderName(_ref) {
|
|
|
13587
13599
|
// array. Support both because different callers shape it either way.
|
|
13588
13600
|
if (appProviders) {
|
|
13589
13601
|
if (Array.isArray(appProviders)) {
|
|
13590
|
-
var _iterator = _createForOfIteratorHelper$
|
|
13602
|
+
var _iterator = _createForOfIteratorHelper$E(appProviders),
|
|
13591
13603
|
_step;
|
|
13592
13604
|
try {
|
|
13593
13605
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -13647,7 +13659,7 @@ function forEachWidget(workspace, visit) {
|
|
|
13647
13659
|
};
|
|
13648
13660
|
var _walk = function walk(items) {
|
|
13649
13661
|
if (!Array.isArray(items)) return;
|
|
13650
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
13662
|
+
var _iterator2 = _createForOfIteratorHelper$E(items),
|
|
13651
13663
|
_step2;
|
|
13652
13664
|
try {
|
|
13653
13665
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -13688,7 +13700,7 @@ function forEachWidget(workspace, visit) {
|
|
|
13688
13700
|
// widgets that only live there (e.g. AI-place writes that bypass
|
|
13689
13701
|
// the page handler).
|
|
13690
13702
|
if (Array.isArray(workspace.pages)) {
|
|
13691
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
13703
|
+
var _iterator3 = _createForOfIteratorHelper$E(workspace.pages),
|
|
13692
13704
|
_step3;
|
|
13693
13705
|
try {
|
|
13694
13706
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -13739,7 +13751,7 @@ function getUnresolvedProviders(_ref2) {
|
|
|
13739
13751
|
// the same `type` listed twice (a Claude code-gen quirk), which
|
|
13740
13752
|
// would otherwise produce duplicate rows in the Providers tab.
|
|
13741
13753
|
var seenTypes = new Set();
|
|
13742
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
13754
|
+
var _iterator4 = _createForOfIteratorHelper$E(requirements),
|
|
13743
13755
|
_step4;
|
|
13744
13756
|
try {
|
|
13745
13757
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
@@ -13782,7 +13794,7 @@ function getUnresolvedProviders(_ref2) {
|
|
|
13782
13794
|
*/
|
|
13783
13795
|
function groupByProviderType(unresolved) {
|
|
13784
13796
|
var byType = new Map();
|
|
13785
|
-
var _iterator5 = _createForOfIteratorHelper$
|
|
13797
|
+
var _iterator5 = _createForOfIteratorHelper$E(unresolved || []),
|
|
13786
13798
|
_step5;
|
|
13787
13799
|
try {
|
|
13788
13800
|
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
@@ -13824,7 +13836,7 @@ function getAllProviderBindings(_ref3) {
|
|
|
13824
13836
|
// quirk) which would otherwise duplicate the per-widget row in
|
|
13825
13837
|
// the Providers tab.
|
|
13826
13838
|
var seenTypes = new Set();
|
|
13827
|
-
var _iterator6 = _createForOfIteratorHelper$
|
|
13839
|
+
var _iterator6 = _createForOfIteratorHelper$E(requirements),
|
|
13828
13840
|
_step6;
|
|
13829
13841
|
try {
|
|
13830
13842
|
for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
|
|
@@ -13866,9 +13878,9 @@ function getAllProviderBindings(_ref3) {
|
|
|
13866
13878
|
|
|
13867
13879
|
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; }
|
|
13868
13880
|
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; }
|
|
13869
|
-
function _createForOfIteratorHelper$
|
|
13870
|
-
function _unsupportedIterableToArray$
|
|
13871
|
-
function _arrayLikeToArray$
|
|
13881
|
+
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; } } }; }
|
|
13882
|
+
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; } }
|
|
13883
|
+
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; }
|
|
13872
13884
|
var EVENT_STRING_RE = /^([^[]+)\[([^\]]+)\]\.(.+)$/;
|
|
13873
13885
|
|
|
13874
13886
|
/** Parse "Component[itemId].event" → { component, itemId, event }. */
|
|
@@ -14038,7 +14050,7 @@ function getCurrentWiring(workspace) {
|
|
|
14038
14050
|
// Live format is array; defensive guard for legacy object
|
|
14039
14051
|
// form (a single source widget keyed under the handler).
|
|
14040
14052
|
var events = Array.isArray(eventList) ? eventList : typeof eventList === "string" ? [eventList] : [];
|
|
14041
|
-
var _iterator = _createForOfIteratorHelper$
|
|
14053
|
+
var _iterator = _createForOfIteratorHelper$D(events),
|
|
14042
14054
|
_step;
|
|
14043
14055
|
try {
|
|
14044
14056
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -14101,7 +14113,7 @@ function getOrphanedListeners(workspace, getWidgetConfig) {
|
|
|
14101
14113
|
if (!byItemId.has(id)) byItemId.set(id, meta);
|
|
14102
14114
|
});
|
|
14103
14115
|
var orphans = [];
|
|
14104
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
14116
|
+
var _iterator2 = _createForOfIteratorHelper$D(wiring),
|
|
14105
14117
|
_step2;
|
|
14106
14118
|
try {
|
|
14107
14119
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -14167,7 +14179,7 @@ function pruneDeadListenerReferences(workspace) {
|
|
|
14167
14179
|
var liveKeys = new Set();
|
|
14168
14180
|
var _walkForLive = function walkForLive(items) {
|
|
14169
14181
|
if (!Array.isArray(items)) return;
|
|
14170
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
14182
|
+
var _iterator3 = _createForOfIteratorHelper$D(items),
|
|
14171
14183
|
_step3;
|
|
14172
14184
|
try {
|
|
14173
14185
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -14188,7 +14200,7 @@ function pruneDeadListenerReferences(workspace) {
|
|
|
14188
14200
|
};
|
|
14189
14201
|
_walkForLive(workspace.layout);
|
|
14190
14202
|
if (Array.isArray(workspace.pages)) {
|
|
14191
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
14203
|
+
var _iterator4 = _createForOfIteratorHelper$D(workspace.pages),
|
|
14192
14204
|
_step4;
|
|
14193
14205
|
try {
|
|
14194
14206
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
@@ -14205,7 +14217,7 @@ function pruneDeadListenerReferences(workspace) {
|
|
|
14205
14217
|
var removed = 0;
|
|
14206
14218
|
var _pruneListeners = function pruneListeners(items) {
|
|
14207
14219
|
if (!Array.isArray(items)) return;
|
|
14208
|
-
var _iterator5 = _createForOfIteratorHelper$
|
|
14220
|
+
var _iterator5 = _createForOfIteratorHelper$D(items),
|
|
14209
14221
|
_step5;
|
|
14210
14222
|
try {
|
|
14211
14223
|
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
@@ -14217,7 +14229,7 @@ function pruneDeadListenerReferences(workspace) {
|
|
|
14217
14229
|
var events = item.listeners[handler];
|
|
14218
14230
|
if (!Array.isArray(events)) continue;
|
|
14219
14231
|
var kept = [];
|
|
14220
|
-
var _iterator6 = _createForOfIteratorHelper$
|
|
14232
|
+
var _iterator6 = _createForOfIteratorHelper$D(events),
|
|
14221
14233
|
_step6;
|
|
14222
14234
|
try {
|
|
14223
14235
|
for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
|
|
@@ -14252,7 +14264,7 @@ function pruneDeadListenerReferences(workspace) {
|
|
|
14252
14264
|
};
|
|
14253
14265
|
_pruneListeners(workspace.layout);
|
|
14254
14266
|
if (Array.isArray(workspace.pages)) {
|
|
14255
|
-
var _iterator7 = _createForOfIteratorHelper$
|
|
14267
|
+
var _iterator7 = _createForOfIteratorHelper$D(workspace.pages),
|
|
14256
14268
|
_step7;
|
|
14257
14269
|
try {
|
|
14258
14270
|
for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
|
|
@@ -14296,7 +14308,7 @@ function applyWiringChanges(workspace, _ref) {
|
|
|
14296
14308
|
});
|
|
14297
14309
|
return byReceiver.get(id);
|
|
14298
14310
|
};
|
|
14299
|
-
var _iterator8 = _createForOfIteratorHelper$
|
|
14311
|
+
var _iterator8 = _createForOfIteratorHelper$D(adds),
|
|
14300
14312
|
_step8;
|
|
14301
14313
|
try {
|
|
14302
14314
|
for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {
|
|
@@ -14309,7 +14321,7 @@ function applyWiringChanges(workspace, _ref) {
|
|
|
14309
14321
|
} finally {
|
|
14310
14322
|
_iterator8.f();
|
|
14311
14323
|
}
|
|
14312
|
-
var _iterator9 = _createForOfIteratorHelper$
|
|
14324
|
+
var _iterator9 = _createForOfIteratorHelper$D(removes),
|
|
14313
14325
|
_step9;
|
|
14314
14326
|
try {
|
|
14315
14327
|
for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) {
|
|
@@ -14383,7 +14395,7 @@ function applyToItem(listeners, _ref2) {
|
|
|
14383
14395
|
}
|
|
14384
14396
|
|
|
14385
14397
|
// Removes first so a re-add (rare) lands.
|
|
14386
|
-
var _iterator0 = _createForOfIteratorHelper$
|
|
14398
|
+
var _iterator0 = _createForOfIteratorHelper$D(removes),
|
|
14387
14399
|
_step0;
|
|
14388
14400
|
try {
|
|
14389
14401
|
var _loop = function _loop() {
|
|
@@ -14412,7 +14424,7 @@ function applyToItem(listeners, _ref2) {
|
|
|
14412
14424
|
} finally {
|
|
14413
14425
|
_iterator0.f();
|
|
14414
14426
|
}
|
|
14415
|
-
var _iterator1 = _createForOfIteratorHelper$
|
|
14427
|
+
var _iterator1 = _createForOfIteratorHelper$D(adds),
|
|
14416
14428
|
_step1;
|
|
14417
14429
|
try {
|
|
14418
14430
|
for (_iterator1.s(); !(_step1 = _iterator1.n()).done;) {
|
|
@@ -17456,9 +17468,9 @@ function mcpJsonToFormState(jsonString, nextRowId) {
|
|
|
17456
17468
|
return result;
|
|
17457
17469
|
}
|
|
17458
17470
|
|
|
17459
|
-
function _createForOfIteratorHelper$
|
|
17460
|
-
function _unsupportedIterableToArray$
|
|
17461
|
-
function _arrayLikeToArray$
|
|
17471
|
+
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; } } }; }
|
|
17472
|
+
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; } }
|
|
17473
|
+
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; }
|
|
17462
17474
|
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; }
|
|
17463
17475
|
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; }
|
|
17464
17476
|
var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
|
|
@@ -17743,11 +17755,11 @@ var EnhancedWidgetDropdown = function EnhancedWidgetDropdown(_ref) {
|
|
|
17743
17755
|
|
|
17744
17756
|
// Flatten all widgets from all packages for the widget list
|
|
17745
17757
|
flatWidgets = [];
|
|
17746
|
-
_iterator = _createForOfIteratorHelper$
|
|
17758
|
+
_iterator = _createForOfIteratorHelper$C(result.packages || []);
|
|
17747
17759
|
try {
|
|
17748
17760
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
17749
17761
|
pkg = _step.value;
|
|
17750
|
-
_iterator2 = _createForOfIteratorHelper$
|
|
17762
|
+
_iterator2 = _createForOfIteratorHelper$C(pkg.widgets || []);
|
|
17751
17763
|
try {
|
|
17752
17764
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
17753
17765
|
widget = _step2.value;
|
|
@@ -19674,9 +19686,9 @@ var useWidgetSchedulerStatus = function useWidgetSchedulerStatus(widgetId) {
|
|
|
19674
19686
|
};
|
|
19675
19687
|
};
|
|
19676
19688
|
|
|
19677
|
-
function _createForOfIteratorHelper$
|
|
19678
|
-
function _unsupportedIterableToArray$
|
|
19679
|
-
function _arrayLikeToArray$
|
|
19689
|
+
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; } } }; }
|
|
19690
|
+
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; } }
|
|
19691
|
+
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; }
|
|
19680
19692
|
function formatCountdown(ms) {
|
|
19681
19693
|
if (ms == null || ms < 0) return "--";
|
|
19682
19694
|
if (ms < 1000) return "< 1s";
|
|
@@ -19793,7 +19805,7 @@ var WidgetCardStatusBar = function WidgetCardStatusBar(_ref) {
|
|
|
19793
19805
|
|
|
19794
19806
|
// Find soonest countdown among enabled tasks
|
|
19795
19807
|
var soonestMs = null;
|
|
19796
|
-
var _iterator = _createForOfIteratorHelper$
|
|
19808
|
+
var _iterator = _createForOfIteratorHelper$B(enabledTasks),
|
|
19797
19809
|
_step;
|
|
19798
19810
|
try {
|
|
19799
19811
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -24215,7 +24227,11 @@ var WidgetHelpers = /*#__PURE__*/function () {
|
|
|
24215
24227
|
key: "publishEvent",
|
|
24216
24228
|
value: function publishEvent(eventName, payload) {
|
|
24217
24229
|
if ("publishEvent" in this.api && typeof this.api["publishEvent"] === "function") {
|
|
24218
|
-
this.api.publishEvent("".concat(this.params.component, "[").concat(this.params.id, "].").concat(eventName), payload
|
|
24230
|
+
this.api.publishEvent("".concat(this.params.component, "[").concat(this.params.id, "].").concat(eventName), payload, null,
|
|
24231
|
+
// The widget's dashboard, so bots can tell copies of it apart.
|
|
24232
|
+
{
|
|
24233
|
+
workspaceId: this.params.dashboardId
|
|
24234
|
+
});
|
|
24219
24235
|
}
|
|
24220
24236
|
}
|
|
24221
24237
|
}]);
|
|
@@ -25463,9 +25479,9 @@ var ExternalWidget = function ExternalWidget(_ref) {
|
|
|
25463
25479
|
var GRID_CELL_WIDGET_TYPE = "grid-cell-widget";
|
|
25464
25480
|
var SIDEBAR_WIDGET_TYPE = "sidebar-widget";
|
|
25465
25481
|
|
|
25466
|
-
function _createForOfIteratorHelper$
|
|
25467
|
-
function _unsupportedIterableToArray$
|
|
25468
|
-
function _arrayLikeToArray$
|
|
25482
|
+
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; } } }; }
|
|
25483
|
+
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; } }
|
|
25484
|
+
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; }
|
|
25469
25485
|
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; }
|
|
25470
25486
|
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; }
|
|
25471
25487
|
|
|
@@ -26088,7 +26104,7 @@ var LayoutGridContainer = /*#__PURE__*/React.memo(function (_ref3) {
|
|
|
26088
26104
|
return selectable["delete"](cn);
|
|
26089
26105
|
});
|
|
26090
26106
|
var resolved = new Set();
|
|
26091
|
-
var _iterator = _createForOfIteratorHelper$
|
|
26107
|
+
var _iterator = _createForOfIteratorHelper$A(selectable),
|
|
26092
26108
|
_step;
|
|
26093
26109
|
try {
|
|
26094
26110
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -28497,9 +28513,9 @@ function migrateBareComponentName(componentMap, component) {
|
|
|
28497
28513
|
|
|
28498
28514
|
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; }
|
|
28499
28515
|
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; }
|
|
28500
|
-
function _createForOfIteratorHelper$
|
|
28501
|
-
function _unsupportedIterableToArray$
|
|
28502
|
-
function _arrayLikeToArray$
|
|
28516
|
+
function _createForOfIteratorHelper$z(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$z(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
28517
|
+
function _unsupportedIterableToArray$z(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$z(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$z(r, a) : void 0; } }
|
|
28518
|
+
function _arrayLikeToArray$z(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
28503
28519
|
/**
|
|
28504
28520
|
* The model for all layout components used primarily in the renderLayout method
|
|
28505
28521
|
* @param {Object} layoutItem an object containing various attributes of the layout item
|
|
@@ -28511,7 +28527,7 @@ function _arrayLikeToArray$y(r, a) { (null == a || a > r.length) && (a = r.lengt
|
|
|
28511
28527
|
function sortObjectByKeys(obj) {
|
|
28512
28528
|
var sortedKeys = Object.keys(obj).sort();
|
|
28513
28529
|
var sortedObj = {};
|
|
28514
|
-
var _iterator = _createForOfIteratorHelper$
|
|
28530
|
+
var _iterator = _createForOfIteratorHelper$z(sortedKeys),
|
|
28515
28531
|
_step;
|
|
28516
28532
|
try {
|
|
28517
28533
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -28829,9 +28845,9 @@ var SettingsModel = function SettingsModel() {
|
|
|
28829
28845
|
return obj;
|
|
28830
28846
|
};
|
|
28831
28847
|
|
|
28832
|
-
function _createForOfIteratorHelper$
|
|
28833
|
-
function _unsupportedIterableToArray$
|
|
28834
|
-
function _arrayLikeToArray$
|
|
28848
|
+
function _createForOfIteratorHelper$y(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$y(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
28849
|
+
function _unsupportedIterableToArray$y(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$y(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$y(r, a) : void 0; } }
|
|
28850
|
+
function _arrayLikeToArray$y(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
28835
28851
|
|
|
28836
28852
|
/**
|
|
28837
28853
|
* Workspace-level pre-pass that migrates legacy bare component
|
|
@@ -28906,7 +28922,7 @@ function migrateScopedIdsInWorkspace(workspace, componentMap) {
|
|
|
28906
28922
|
};
|
|
28907
28923
|
var _walk = function walk(items) {
|
|
28908
28924
|
if (!Array.isArray(items)) return;
|
|
28909
|
-
var _iterator = _createForOfIteratorHelper$
|
|
28925
|
+
var _iterator = _createForOfIteratorHelper$y(items),
|
|
28910
28926
|
_step;
|
|
28911
28927
|
try {
|
|
28912
28928
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -28928,7 +28944,7 @@ function migrateScopedIdsInWorkspace(workspace, componentMap) {
|
|
|
28928
28944
|
};
|
|
28929
28945
|
_walk(workspace.layout);
|
|
28930
28946
|
if (Array.isArray(workspace.pages)) {
|
|
28931
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
28947
|
+
var _iterator2 = _createForOfIteratorHelper$y(workspace.pages),
|
|
28932
28948
|
_step2;
|
|
28933
28949
|
try {
|
|
28934
28950
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -28945,9 +28961,9 @@ function migrateScopedIdsInWorkspace(workspace, componentMap) {
|
|
|
28945
28961
|
return counts;
|
|
28946
28962
|
}
|
|
28947
28963
|
|
|
28948
|
-
function _createForOfIteratorHelper$
|
|
28949
|
-
function _unsupportedIterableToArray$
|
|
28950
|
-
function _arrayLikeToArray$
|
|
28964
|
+
function _createForOfIteratorHelper$x(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$x(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
28965
|
+
function _unsupportedIterableToArray$x(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$x(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$x(r, a) : void 0; } }
|
|
28966
|
+
function _arrayLikeToArray$x(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
28951
28967
|
/**
|
|
28952
28968
|
* cleanForeignWidgetsFromWorkspace.js
|
|
28953
28969
|
*
|
|
@@ -28988,7 +29004,7 @@ function cleanForeignWidgetsFromWorkspace(workspace) {
|
|
|
28988
29004
|
var _cleanList = function cleanList(items) {
|
|
28989
29005
|
if (!Array.isArray(items)) return items;
|
|
28990
29006
|
var kept = [];
|
|
28991
|
-
var _iterator = _createForOfIteratorHelper$
|
|
29007
|
+
var _iterator = _createForOfIteratorHelper$x(items),
|
|
28992
29008
|
_step;
|
|
28993
29009
|
try {
|
|
28994
29010
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -29025,7 +29041,7 @@ function cleanForeignWidgetsFromWorkspace(workspace) {
|
|
|
29025
29041
|
workspace.sidebarLayout = _cleanList(workspace.sidebarLayout);
|
|
29026
29042
|
}
|
|
29027
29043
|
if (Array.isArray(workspace.pages)) {
|
|
29028
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
29044
|
+
var _iterator2 = _createForOfIteratorHelper$x(workspace.pages),
|
|
29029
29045
|
_step2;
|
|
29030
29046
|
try {
|
|
29031
29047
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -29043,9 +29059,9 @@ function cleanForeignWidgetsFromWorkspace(workspace) {
|
|
|
29043
29059
|
return summary;
|
|
29044
29060
|
}
|
|
29045
29061
|
|
|
29046
|
-
function _createForOfIteratorHelper$
|
|
29047
|
-
function _unsupportedIterableToArray$
|
|
29048
|
-
function _arrayLikeToArray$
|
|
29062
|
+
function _createForOfIteratorHelper$w(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$w(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
29063
|
+
function _unsupportedIterableToArray$w(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$w(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$w(r, a) : void 0; } }
|
|
29064
|
+
function _arrayLikeToArray$w(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
29049
29065
|
/**
|
|
29050
29066
|
* migrateLayoutItemTypes.js
|
|
29051
29067
|
*
|
|
@@ -29107,7 +29123,7 @@ function migrateLayoutItemTypes(workspace) {
|
|
|
29107
29123
|
};
|
|
29108
29124
|
var _walk = function walk(items) {
|
|
29109
29125
|
if (!Array.isArray(items)) return;
|
|
29110
|
-
var _iterator = _createForOfIteratorHelper$
|
|
29126
|
+
var _iterator = _createForOfIteratorHelper$w(items),
|
|
29111
29127
|
_step;
|
|
29112
29128
|
try {
|
|
29113
29129
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -29125,7 +29141,7 @@ function migrateLayoutItemTypes(workspace) {
|
|
|
29125
29141
|
};
|
|
29126
29142
|
_walk(workspace.layout);
|
|
29127
29143
|
if (Array.isArray(workspace.pages)) {
|
|
29128
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
29144
|
+
var _iterator2 = _createForOfIteratorHelper$w(workspace.pages),
|
|
29129
29145
|
_step2;
|
|
29130
29146
|
try {
|
|
29131
29147
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -29697,9 +29713,9 @@ var ThemeModel = function ThemeModel() {
|
|
|
29697
29713
|
}
|
|
29698
29714
|
};
|
|
29699
29715
|
|
|
29700
|
-
function _createForOfIteratorHelper$
|
|
29701
|
-
function _unsupportedIterableToArray$
|
|
29702
|
-
function _arrayLikeToArray$
|
|
29716
|
+
function _createForOfIteratorHelper$v(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$v(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
29717
|
+
function _unsupportedIterableToArray$v(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$v(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$v(r, a) : void 0; } }
|
|
29718
|
+
function _arrayLikeToArray$v(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
29703
29719
|
/*
|
|
29704
29720
|
"component": AnalyticsReportsWidget,
|
|
29705
29721
|
"type":"widget",
|
|
@@ -29817,7 +29833,7 @@ var ComponentConfigModel = function ComponentConfigModel() {
|
|
|
29817
29833
|
if ("providers" in obj && Array.isArray(obj.providers)) {
|
|
29818
29834
|
var seen = new Set();
|
|
29819
29835
|
var cleaned = [];
|
|
29820
|
-
var _iterator = _createForOfIteratorHelper$
|
|
29836
|
+
var _iterator = _createForOfIteratorHelper$v(obj.providers),
|
|
29821
29837
|
_step;
|
|
29822
29838
|
try {
|
|
29823
29839
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -29863,9 +29879,9 @@ var MenuItemModel = function MenuItemModel() {
|
|
|
29863
29879
|
return m;
|
|
29864
29880
|
};
|
|
29865
29881
|
|
|
29866
|
-
function _createForOfIteratorHelper$
|
|
29867
|
-
function _unsupportedIterableToArray$
|
|
29868
|
-
function _arrayLikeToArray$
|
|
29882
|
+
function _createForOfIteratorHelper$u(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$u(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
29883
|
+
function _unsupportedIterableToArray$u(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$u(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$u(r, a) : void 0; } }
|
|
29884
|
+
function _arrayLikeToArray$u(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
29869
29885
|
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; }
|
|
29870
29886
|
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; }
|
|
29871
29887
|
/**
|
|
@@ -29925,7 +29941,7 @@ function mergeGridCellsOp(grid, cellNumbers, keepComponentId) {
|
|
|
29925
29941
|
maxRow = -Infinity;
|
|
29926
29942
|
var minCol = Infinity,
|
|
29927
29943
|
maxCol = -Infinity;
|
|
29928
|
-
var _iterator = _createForOfIteratorHelper$
|
|
29944
|
+
var _iterator = _createForOfIteratorHelper$u(cellNumbers),
|
|
29929
29945
|
_step;
|
|
29930
29946
|
try {
|
|
29931
29947
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -29949,7 +29965,7 @@ function mergeGridCellsOp(grid, cellNumbers, keepComponentId) {
|
|
|
29949
29965
|
} finally {
|
|
29950
29966
|
_iterator.f();
|
|
29951
29967
|
}
|
|
29952
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
29968
|
+
var _iterator2 = _createForOfIteratorHelper$u(cellNumbers),
|
|
29953
29969
|
_step2;
|
|
29954
29970
|
try {
|
|
29955
29971
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -29991,7 +30007,7 @@ function mergeGridCellsOp(grid, cellNumbers, keepComponentId) {
|
|
|
29991
30007
|
_iterator2.f();
|
|
29992
30008
|
}
|
|
29993
30009
|
var componentsInRange = [];
|
|
29994
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
30010
|
+
var _iterator3 = _createForOfIteratorHelper$u(cellNumbers),
|
|
29995
30011
|
_step3;
|
|
29996
30012
|
try {
|
|
29997
30013
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -30029,7 +30045,7 @@ function mergeGridCellsOp(grid, cellNumbers, keepComponentId) {
|
|
|
30029
30045
|
// other selected cells get hidden and have their component refs
|
|
30030
30046
|
// cleared (so a stale ref in a hidden cell never re-renders).
|
|
30031
30047
|
var keepCell = cellNumbers[0];
|
|
30032
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
30048
|
+
var _iterator4 = _createForOfIteratorHelper$u(cellNumbers),
|
|
30033
30049
|
_step4;
|
|
30034
30050
|
try {
|
|
30035
30051
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
@@ -30559,9 +30575,9 @@ function deleteGridColumnOp(grid, colNumber) {
|
|
|
30559
30575
|
};
|
|
30560
30576
|
}
|
|
30561
30577
|
|
|
30562
|
-
function _createForOfIteratorHelper$
|
|
30563
|
-
function _unsupportedIterableToArray$
|
|
30564
|
-
function _arrayLikeToArray$
|
|
30578
|
+
function _createForOfIteratorHelper$t(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$t(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
30579
|
+
function _unsupportedIterableToArray$t(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$t(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$t(r, a) : void 0; } }
|
|
30580
|
+
function _arrayLikeToArray$t(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
30565
30581
|
/**
|
|
30566
30582
|
* A Model for a Workspace (Dashboard)
|
|
30567
30583
|
* The Dashboard in this instance is the entire Layout inclusive of the workspaces and widgets
|
|
@@ -30633,7 +30649,7 @@ var DashboardModel = /*#__PURE__*/function () {
|
|
|
30633
30649
|
|
|
30634
30650
|
// Also normalize grids within pages
|
|
30635
30651
|
if (this.pages.length > 0) {
|
|
30636
|
-
var _iterator = _createForOfIteratorHelper$
|
|
30652
|
+
var _iterator = _createForOfIteratorHelper$t(this.pages),
|
|
30637
30653
|
_step;
|
|
30638
30654
|
try {
|
|
30639
30655
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -32033,7 +32049,7 @@ var DashboardModel = /*#__PURE__*/function () {
|
|
|
32033
32049
|
// destructive-delete behavior.
|
|
32034
32050
|
var result = deleteGridRowOp(gridContainer.grid, rowNumber);
|
|
32035
32051
|
gridContainer.grid = result.grid;
|
|
32036
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
32052
|
+
var _iterator2 = _createForOfIteratorHelper$t(result.orphanedComponents),
|
|
32037
32053
|
_step2;
|
|
32038
32054
|
try {
|
|
32039
32055
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -32132,7 +32148,7 @@ var DashboardModel = /*#__PURE__*/function () {
|
|
|
32132
32148
|
// Slice 11: pure helper.
|
|
32133
32149
|
var result = deleteGridColumnOp(gridContainer.grid, colNumber);
|
|
32134
32150
|
gridContainer.grid = result.grid;
|
|
32135
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
32151
|
+
var _iterator3 = _createForOfIteratorHelper$t(result.orphanedComponents),
|
|
32136
32152
|
_step3;
|
|
32137
32153
|
try {
|
|
32138
32154
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -32227,7 +32243,7 @@ var DashboardModel = /*#__PURE__*/function () {
|
|
|
32227
32243
|
try {
|
|
32228
32244
|
// Collect all item IDs actively referenced by grid cells
|
|
32229
32245
|
var activeItemIds = new Set();
|
|
32230
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
32246
|
+
var _iterator4 = _createForOfIteratorHelper$t(this.layout),
|
|
32231
32247
|
_step4;
|
|
32232
32248
|
try {
|
|
32233
32249
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
@@ -32267,7 +32283,7 @@ var DashboardModel = /*#__PURE__*/function () {
|
|
|
32267
32283
|
});
|
|
32268
32284
|
|
|
32269
32285
|
// Clean listener references on remaining items for each removed orphan
|
|
32270
|
-
var _iterator5 = _createForOfIteratorHelper$
|
|
32286
|
+
var _iterator5 = _createForOfIteratorHelper$t(orphanedIds),
|
|
32271
32287
|
_step5;
|
|
32272
32288
|
try {
|
|
32273
32289
|
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
@@ -33022,9 +33038,9 @@ var useDashboard = function useDashboard() {
|
|
|
33022
33038
|
});
|
|
33023
33039
|
};
|
|
33024
33040
|
|
|
33025
|
-
function _createForOfIteratorHelper$
|
|
33026
|
-
function _unsupportedIterableToArray$
|
|
33027
|
-
function _arrayLikeToArray$
|
|
33041
|
+
function _createForOfIteratorHelper$s(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$s(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
33042
|
+
function _unsupportedIterableToArray$s(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$s(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$s(r, a) : void 0; } }
|
|
33043
|
+
function _arrayLikeToArray$s(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
33028
33044
|
|
|
33029
33045
|
/**
|
|
33030
33046
|
* useWidgetProviders Hook
|
|
@@ -33087,7 +33103,7 @@ var useWidgetProviders = function useWidgetProviders() {
|
|
|
33087
33103
|
// 2. Workspace-level: stored as workspace.selectedProviders[widgetId][providerType]
|
|
33088
33104
|
// 3. App-default: any provider in AppContext.providers flagged isDefaultForType
|
|
33089
33105
|
var providers = {};
|
|
33090
|
-
var _iterator = _createForOfIteratorHelper$
|
|
33106
|
+
var _iterator = _createForOfIteratorHelper$s(providerDeclarations),
|
|
33091
33107
|
_step;
|
|
33092
33108
|
try {
|
|
33093
33109
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -33146,9 +33162,9 @@ var useWidgetProviders = function useWidgetProviders() {
|
|
|
33146
33162
|
};
|
|
33147
33163
|
};
|
|
33148
33164
|
|
|
33149
|
-
function _createForOfIteratorHelper$
|
|
33150
|
-
function _unsupportedIterableToArray$
|
|
33151
|
-
function _arrayLikeToArray$
|
|
33165
|
+
function _createForOfIteratorHelper$r(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$r(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
33166
|
+
function _unsupportedIterableToArray$r(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$r(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$r(r, a) : void 0; } }
|
|
33167
|
+
function _arrayLikeToArray$r(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
33152
33168
|
|
|
33153
33169
|
/**
|
|
33154
33170
|
* Module-level shared state for MCP server connections.
|
|
@@ -33203,7 +33219,7 @@ function unionPathScope(grants, serverName) {
|
|
|
33203
33219
|
allowedPaths: []
|
|
33204
33220
|
};
|
|
33205
33221
|
}
|
|
33206
|
-
var _iterator = _createForOfIteratorHelper$
|
|
33222
|
+
var _iterator = _createForOfIteratorHelper$r(grants),
|
|
33207
33223
|
_step;
|
|
33208
33224
|
try {
|
|
33209
33225
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -33216,7 +33232,7 @@ function unionPathScope(grants, serverName) {
|
|
|
33216
33232
|
var serverPerms = servers[serverName];
|
|
33217
33233
|
if (!serverPerms || _typeof(serverPerms) !== "object") continue;
|
|
33218
33234
|
if (Array.isArray(serverPerms.readPaths)) {
|
|
33219
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
33235
|
+
var _iterator2 = _createForOfIteratorHelper$r(serverPerms.readPaths),
|
|
33220
33236
|
_step2;
|
|
33221
33237
|
try {
|
|
33222
33238
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -33230,7 +33246,7 @@ function unionPathScope(grants, serverName) {
|
|
|
33230
33246
|
}
|
|
33231
33247
|
}
|
|
33232
33248
|
if (Array.isArray(serverPerms.writePaths)) {
|
|
33233
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
33249
|
+
var _iterator3 = _createForOfIteratorHelper$r(serverPerms.writePaths),
|
|
33234
33250
|
_step3;
|
|
33235
33251
|
try {
|
|
33236
33252
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -33918,13 +33934,17 @@ var useWidgetEvents = function useWidgetEvents() {
|
|
|
33918
33934
|
id = _ref.id,
|
|
33919
33935
|
uuid = _ref.uuid,
|
|
33920
33936
|
events = _ref.events,
|
|
33921
|
-
listenerConfig = _ref.listeners
|
|
33937
|
+
listenerConfig = _ref.listeners,
|
|
33938
|
+
dashboardId = _ref.dashboardId;
|
|
33922
33939
|
var publishEvent = React.useCallback(function (eventName, payload) {
|
|
33923
33940
|
if (publisher && componentName && id != null) {
|
|
33924
33941
|
var formattedName = "".concat(componentName, "[").concat(id, "].").concat(eventName);
|
|
33925
|
-
|
|
33942
|
+
// Stamp the dashboard so bots can tell copies of a dashboard apart.
|
|
33943
|
+
publisher.pub(formattedName, payload, {
|
|
33944
|
+
workspaceId: dashboardId
|
|
33945
|
+
});
|
|
33926
33946
|
}
|
|
33927
|
-
}, [publisher, componentName, id]);
|
|
33947
|
+
}, [publisher, componentName, id, dashboardId]);
|
|
33928
33948
|
var listen = React.useCallback(function (listeners, handlers) {
|
|
33929
33949
|
if (publisher && uuid) {
|
|
33930
33950
|
publisher.registerListeners(listeners, handlers, uuid);
|
|
@@ -34033,9 +34053,9 @@ var useNotifications = function useNotifications() {
|
|
|
34033
34053
|
};
|
|
34034
34054
|
};
|
|
34035
34055
|
|
|
34036
|
-
function _createForOfIteratorHelper$
|
|
34037
|
-
function _unsupportedIterableToArray$
|
|
34038
|
-
function _arrayLikeToArray$
|
|
34056
|
+
function _createForOfIteratorHelper$q(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$q(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
34057
|
+
function _unsupportedIterableToArray$q(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$q(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$q(r, a) : void 0; } }
|
|
34058
|
+
function _arrayLikeToArray$q(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
34039
34059
|
|
|
34040
34060
|
/**
|
|
34041
34061
|
* useScheduler Hook
|
|
@@ -34108,7 +34128,7 @@ var useScheduler = function useScheduler() {
|
|
|
34108
34128
|
if (pending && pending.length > 0) {
|
|
34109
34129
|
setPendingResults(pending);
|
|
34110
34130
|
// Call handlers for each pending result
|
|
34111
|
-
var _iterator = _createForOfIteratorHelper$
|
|
34131
|
+
var _iterator = _createForOfIteratorHelper$q(pending),
|
|
34112
34132
|
_step;
|
|
34113
34133
|
try {
|
|
34114
34134
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -35347,9 +35367,9 @@ var CustomHexColorPane = function CustomHexColorPane(_ref) {
|
|
|
35347
35367
|
});
|
|
35348
35368
|
};
|
|
35349
35369
|
|
|
35350
|
-
function _createForOfIteratorHelper$
|
|
35351
|
-
function _unsupportedIterableToArray$
|
|
35352
|
-
function _arrayLikeToArray$
|
|
35370
|
+
function _createForOfIteratorHelper$p(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$p(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
35371
|
+
function _unsupportedIterableToArray$p(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$p(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$p(r, a) : void 0; } }
|
|
35372
|
+
function _arrayLikeToArray$p(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
35353
35373
|
function rgbDistSq(a, b) {
|
|
35354
35374
|
var dr = a.r - b.r;
|
|
35355
35375
|
var dg = a.g - b.g;
|
|
@@ -35367,13 +35387,13 @@ function nearestSwatch(hex, families) {
|
|
|
35367
35387
|
var target = DashReact.hexToRgb(hex);
|
|
35368
35388
|
if (!target) return null;
|
|
35369
35389
|
var best = null;
|
|
35370
|
-
var _iterator = _createForOfIteratorHelper$
|
|
35390
|
+
var _iterator = _createForOfIteratorHelper$p(families),
|
|
35371
35391
|
_step;
|
|
35372
35392
|
try {
|
|
35373
35393
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
35374
35394
|
var family = _step.value;
|
|
35375
35395
|
var grid = DashReact.getCuratedColorGrid(family) || [];
|
|
35376
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
35396
|
+
var _iterator2 = _createForOfIteratorHelper$p(grid),
|
|
35377
35397
|
_step2;
|
|
35378
35398
|
try {
|
|
35379
35399
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -40243,9 +40263,9 @@ function useRegistryAuthGate() {
|
|
|
40243
40263
|
|
|
40244
40264
|
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; }
|
|
40245
40265
|
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; }
|
|
40246
|
-
function _createForOfIteratorHelper$
|
|
40247
|
-
function _unsupportedIterableToArray$
|
|
40248
|
-
function _arrayLikeToArray$
|
|
40266
|
+
function _createForOfIteratorHelper$o(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$o(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
40267
|
+
function _unsupportedIterableToArray$o(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$o(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$o(r, a) : void 0; } }
|
|
40268
|
+
function _arrayLikeToArray$o(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
40249
40269
|
var DASHBOARD_TAGS = ["productivity", "monitoring", "analytics", "communication", "developer", "sales", "marketing", "finance", "project-management", "social", "news", "utilities"];
|
|
40250
40270
|
var BUMP_OPTIONS$1 = [{
|
|
40251
40271
|
value: "patch",
|
|
@@ -40319,7 +40339,7 @@ function collectComponentConfigs() {
|
|
|
40319
40339
|
// fixed "reference" entry.
|
|
40320
40340
|
function seedSelections(plan, dashboardVisibility) {
|
|
40321
40341
|
var selections = {};
|
|
40322
|
-
var _iterator = _createForOfIteratorHelper$
|
|
40342
|
+
var _iterator = _createForOfIteratorHelper$o(plan.widgets || []),
|
|
40323
40343
|
_step;
|
|
40324
40344
|
try {
|
|
40325
40345
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -40664,7 +40684,7 @@ var PublishDashboardModal = function PublishDashboardModal(_ref) {
|
|
|
40664
40684
|
React.useEffect(function () {
|
|
40665
40685
|
if (!isOpen || step !== 5 || !plan || defaultsLoading) return;
|
|
40666
40686
|
var packagesToScan = [];
|
|
40667
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
40687
|
+
var _iterator2 = _createForOfIteratorHelper$o(plan.widgets || []),
|
|
40668
40688
|
_step2;
|
|
40669
40689
|
try {
|
|
40670
40690
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -40703,7 +40723,7 @@ var PublishDashboardModal = function PublishDashboardModal(_ref) {
|
|
|
40703
40723
|
})).then(function (results) {
|
|
40704
40724
|
setDefaultsByPackage(function (prev) {
|
|
40705
40725
|
var next = _objectSpread$A({}, prev);
|
|
40706
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
40726
|
+
var _iterator3 = _createForOfIteratorHelper$o(results),
|
|
40707
40727
|
_step3;
|
|
40708
40728
|
try {
|
|
40709
40729
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -40796,7 +40816,7 @@ var PublishDashboardModal = function PublishDashboardModal(_ref) {
|
|
|
40796
40816
|
break;
|
|
40797
40817
|
}
|
|
40798
40818
|
seenPackages = new Set();
|
|
40799
|
-
_iterator4 = _createForOfIteratorHelper$
|
|
40819
|
+
_iterator4 = _createForOfIteratorHelper$o(plan.widgets || []);
|
|
40800
40820
|
_context2.prev = 4;
|
|
40801
40821
|
_iterator4.s();
|
|
40802
40822
|
case 5:
|
|
@@ -41710,7 +41730,7 @@ function DependencyTable(_ref4) {
|
|
|
41710
41730
|
// row. Each row shows the list of component widgets that live inside it
|
|
41711
41731
|
// so the user knows what's getting published.
|
|
41712
41732
|
var byKey = new Map();
|
|
41713
|
-
var _iterator5 = _createForOfIteratorHelper$
|
|
41733
|
+
var _iterator5 = _createForOfIteratorHelper$o(plan.widgets || []),
|
|
41714
41734
|
_step6;
|
|
41715
41735
|
try {
|
|
41716
41736
|
for (_iterator5.s(); !(_step6 = _iterator5.n()).done;) {
|
|
@@ -41881,7 +41901,7 @@ function DefaultsReviewList(_ref6) {
|
|
|
41881
41901
|
// stays aligned with Dependencies — no surprises about WHICH
|
|
41882
41902
|
// package's defaults you're editing.
|
|
41883
41903
|
var rows = [];
|
|
41884
|
-
var _iterator6 = _createForOfIteratorHelper$
|
|
41904
|
+
var _iterator6 = _createForOfIteratorHelper$o((plan === null || plan === void 0 ? void 0 : plan.widgets) || []),
|
|
41885
41905
|
_step7;
|
|
41886
41906
|
try {
|
|
41887
41907
|
for (_iterator6.s(); !(_step7 = _iterator6.n()).done;) {
|
|
@@ -45816,9 +45836,9 @@ var McpCatalogDetail = function McpCatalogDetail(_ref) {
|
|
|
45816
45836
|
|
|
45817
45837
|
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; }
|
|
45818
45838
|
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; }
|
|
45819
|
-
function _createForOfIteratorHelper$
|
|
45820
|
-
function _unsupportedIterableToArray$
|
|
45821
|
-
function _arrayLikeToArray$
|
|
45839
|
+
function _createForOfIteratorHelper$n(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$n(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
45840
|
+
function _unsupportedIterableToArray$n(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$n(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$n(r, a) : void 0; } }
|
|
45841
|
+
function _arrayLikeToArray$n(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
45822
45842
|
function isValidWsUrl(url) {
|
|
45823
45843
|
if (!url) return false;
|
|
45824
45844
|
try {
|
|
@@ -45865,7 +45885,7 @@ function extractCredentialFields(url, headerRows) {
|
|
|
45865
45885
|
fields.add(match[1]);
|
|
45866
45886
|
}
|
|
45867
45887
|
}
|
|
45868
|
-
var _iterator = _createForOfIteratorHelper$
|
|
45888
|
+
var _iterator = _createForOfIteratorHelper$n(headerRows),
|
|
45869
45889
|
_step;
|
|
45870
45890
|
try {
|
|
45871
45891
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -45970,7 +45990,7 @@ var WebSocketProviderForm = function WebSocketProviderForm(_ref) {
|
|
|
45970
45990
|
if (!url.trim()) errs.url = "WebSocket URL is required";else if (!isValidWsUrl(url)) errs.url = "URL must start with ws:// or wss://";
|
|
45971
45991
|
|
|
45972
45992
|
// Check required credential fields are filled
|
|
45973
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
45993
|
+
var _iterator2 = _createForOfIteratorHelper$n(credentialFields),
|
|
45974
45994
|
_step2;
|
|
45975
45995
|
try {
|
|
45976
45996
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -45993,7 +46013,7 @@ var WebSocketProviderForm = function WebSocketProviderForm(_ref) {
|
|
|
45993
46013
|
|
|
45994
46014
|
// Build headers object from rows
|
|
45995
46015
|
var headers = {};
|
|
45996
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
46016
|
+
var _iterator3 = _createForOfIteratorHelper$n(headerRows),
|
|
45997
46017
|
_step3;
|
|
45998
46018
|
try {
|
|
45999
46019
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -46062,7 +46082,7 @@ var WebSocketProviderForm = function WebSocketProviderForm(_ref) {
|
|
|
46062
46082
|
|
|
46063
46083
|
// Build config from current form state (same as handleSave)
|
|
46064
46084
|
headers = {};
|
|
46065
|
-
_iterator4 = _createForOfIteratorHelper$
|
|
46085
|
+
_iterator4 = _createForOfIteratorHelper$n(headerRows);
|
|
46066
46086
|
try {
|
|
46067
46087
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
46068
46088
|
row = _step4.value;
|
|
@@ -47356,8 +47376,296 @@ function parseCron(cron) {
|
|
|
47356
47376
|
};
|
|
47357
47377
|
}
|
|
47358
47378
|
|
|
47379
|
+
function _createForOfIteratorHelper$m(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$m(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
47380
|
+
function _unsupportedIterableToArray$m(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$m(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$m(r, a) : void 0; } }
|
|
47381
|
+
function _arrayLikeToArray$m(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; }
|
|
47382
|
+
|
|
47383
|
+
/**
|
|
47384
|
+
* @param {Array<object>} workspaces dashboards (each with id, name, layout/pages)
|
|
47385
|
+
* @param {(component: string) => object|null} getWidgetConfig
|
|
47386
|
+
* @returns {Array<{ workspaceId: string, name: string,
|
|
47387
|
+
* widgets: Array<{ ref: string, instanceId: string, label: string, events: string[] }> }>}
|
|
47388
|
+
* dashboards with at least one event-emitting widget
|
|
47389
|
+
*/
|
|
47390
|
+
function buildWidgetEventCatalog(workspaces, getWidgetConfig) {
|
|
47391
|
+
if (!Array.isArray(workspaces)) return [];
|
|
47392
|
+
var out = [];
|
|
47393
|
+
var _iterator = _createForOfIteratorHelper$m(workspaces),
|
|
47394
|
+
_step;
|
|
47395
|
+
try {
|
|
47396
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
47397
|
+
var ws = _step.value;
|
|
47398
|
+
if (!ws || ws.id === undefined || ws.id === null) continue;
|
|
47399
|
+
var widgets = getEmitters(ws, getWidgetConfig).filter(function (e) {
|
|
47400
|
+
return e.itemId != null && e.events.length;
|
|
47401
|
+
}).map(function (e) {
|
|
47402
|
+
return {
|
|
47403
|
+
ref: e.component,
|
|
47404
|
+
instanceId: String(e.itemId),
|
|
47405
|
+
label: e.label || e.component,
|
|
47406
|
+
events: e.events
|
|
47407
|
+
};
|
|
47408
|
+
});
|
|
47409
|
+
if (!widgets.length) continue;
|
|
47410
|
+
out.push({
|
|
47411
|
+
workspaceId: String(ws.id),
|
|
47412
|
+
name: ws.name || "Dashboard ".concat(ws.id),
|
|
47413
|
+
widgets: widgets
|
|
47414
|
+
});
|
|
47415
|
+
}
|
|
47416
|
+
// Dashboards can share a name (e.g. copies of "Kitchen Sink"); number the
|
|
47417
|
+
// duplicates so each picker entry is distinguishable.
|
|
47418
|
+
} catch (err) {
|
|
47419
|
+
_iterator.e(err);
|
|
47420
|
+
} finally {
|
|
47421
|
+
_iterator.f();
|
|
47422
|
+
}
|
|
47423
|
+
var totals = {};
|
|
47424
|
+
for (var _i = 0, _out = out; _i < _out.length; _i++) {
|
|
47425
|
+
var w = _out[_i];
|
|
47426
|
+
totals[w.name] = (totals[w.name] || 0) + 1;
|
|
47427
|
+
}
|
|
47428
|
+
var seen = {};
|
|
47429
|
+
for (var _i2 = 0, _out2 = out; _i2 < _out2.length; _i2++) {
|
|
47430
|
+
var _w = _out2[_i2];
|
|
47431
|
+
if (totals[_w.name] > 1) {
|
|
47432
|
+
seen[_w.name] = (seen[_w.name] || 0) + 1;
|
|
47433
|
+
_w.name = "".concat(_w.name, " (").concat(seen[_w.name], ")");
|
|
47434
|
+
}
|
|
47435
|
+
}
|
|
47436
|
+
return out;
|
|
47437
|
+
}
|
|
47438
|
+
|
|
47439
|
+
/** A subscription to one widget event, picked from the catalog. */
|
|
47440
|
+
function widgetSubscription(workspace, widget, event) {
|
|
47441
|
+
return {
|
|
47442
|
+
eventType: formatEventString(widget.ref, widget.instanceId, event),
|
|
47443
|
+
source: {
|
|
47444
|
+
kind: "widget",
|
|
47445
|
+
ref: widget.ref,
|
|
47446
|
+
instanceId: widget.instanceId,
|
|
47447
|
+
event: event,
|
|
47448
|
+
workspaceId: workspace.workspaceId
|
|
47449
|
+
},
|
|
47450
|
+
label: "".concat(workspace.name, " \u203A ").concat(widget.label, " \u203A ").concat(event)
|
|
47451
|
+
};
|
|
47452
|
+
}
|
|
47453
|
+
|
|
47454
|
+
/**
|
|
47455
|
+
* How to show a saved subscription: its label from the live catalog, and
|
|
47456
|
+
* whether its widget/event is gone (`missing`). Subscriptions saved before
|
|
47457
|
+
* the picker (bare eventType) get a friendly label when they still resolve;
|
|
47458
|
+
* otherwise they show as typed.
|
|
47459
|
+
*/
|
|
47460
|
+
function describeSubscription(sub, catalog) {
|
|
47461
|
+
var botCatalog = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
47462
|
+
var eventType = sub && sub.eventType;
|
|
47463
|
+
// Bot subscriptions resolve against the bot catalog; `kind` lets the form
|
|
47464
|
+
// say "bot missing" instead of "widget missing".
|
|
47465
|
+
if (sub && sub.source && sub.source.kind === "bot") {
|
|
47466
|
+
var _iterator2 = _createForOfIteratorHelper$m(botCatalog || []),
|
|
47467
|
+
_step2;
|
|
47468
|
+
try {
|
|
47469
|
+
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
47470
|
+
var b = _step2.value;
|
|
47471
|
+
var _iterator3 = _createForOfIteratorHelper$m(b.events),
|
|
47472
|
+
_step3;
|
|
47473
|
+
try {
|
|
47474
|
+
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
47475
|
+
var ev = _step3.value;
|
|
47476
|
+
var s = botSubscription(b, ev);
|
|
47477
|
+
if (s.eventType === eventType) {
|
|
47478
|
+
return {
|
|
47479
|
+
label: s.label,
|
|
47480
|
+
missing: false,
|
|
47481
|
+
kind: "bot"
|
|
47482
|
+
};
|
|
47483
|
+
}
|
|
47484
|
+
}
|
|
47485
|
+
} catch (err) {
|
|
47486
|
+
_iterator3.e(err);
|
|
47487
|
+
} finally {
|
|
47488
|
+
_iterator3.f();
|
|
47489
|
+
}
|
|
47490
|
+
}
|
|
47491
|
+
} catch (err) {
|
|
47492
|
+
_iterator2.e(err);
|
|
47493
|
+
} finally {
|
|
47494
|
+
_iterator2.f();
|
|
47495
|
+
}
|
|
47496
|
+
return {
|
|
47497
|
+
label: sub.label || eventType,
|
|
47498
|
+
missing: true,
|
|
47499
|
+
kind: "bot"
|
|
47500
|
+
};
|
|
47501
|
+
}
|
|
47502
|
+
var _iterator4 = _createForOfIteratorHelper$m(catalog || []),
|
|
47503
|
+
_step4;
|
|
47504
|
+
try {
|
|
47505
|
+
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
47506
|
+
var ws = _step4.value;
|
|
47507
|
+
var _iterator5 = _createForOfIteratorHelper$m(ws.widgets),
|
|
47508
|
+
_step5;
|
|
47509
|
+
try {
|
|
47510
|
+
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
47511
|
+
var w = _step5.value;
|
|
47512
|
+
var _iterator6 = _createForOfIteratorHelper$m(w.events),
|
|
47513
|
+
_step6;
|
|
47514
|
+
try {
|
|
47515
|
+
for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
|
|
47516
|
+
var _ev = _step6.value;
|
|
47517
|
+
if (formatEventString(w.ref, w.instanceId, _ev) === eventType) {
|
|
47518
|
+
return {
|
|
47519
|
+
label: widgetSubscription(ws, w, _ev).label,
|
|
47520
|
+
missing: false
|
|
47521
|
+
};
|
|
47522
|
+
}
|
|
47523
|
+
}
|
|
47524
|
+
} catch (err) {
|
|
47525
|
+
_iterator6.e(err);
|
|
47526
|
+
} finally {
|
|
47527
|
+
_iterator6.f();
|
|
47528
|
+
}
|
|
47529
|
+
}
|
|
47530
|
+
} catch (err) {
|
|
47531
|
+
_iterator5.e(err);
|
|
47532
|
+
} finally {
|
|
47533
|
+
_iterator5.f();
|
|
47534
|
+
}
|
|
47535
|
+
}
|
|
47536
|
+
} catch (err) {
|
|
47537
|
+
_iterator4.e(err);
|
|
47538
|
+
} finally {
|
|
47539
|
+
_iterator4.f();
|
|
47540
|
+
}
|
|
47541
|
+
if (sub && sub.source) {
|
|
47542
|
+
return {
|
|
47543
|
+
label: sub.label || eventType,
|
|
47544
|
+
missing: true
|
|
47545
|
+
};
|
|
47546
|
+
}
|
|
47547
|
+
return {
|
|
47548
|
+
label: eventType || "",
|
|
47549
|
+
missing: false
|
|
47550
|
+
};
|
|
47551
|
+
}
|
|
47552
|
+
|
|
47553
|
+
/**
|
|
47554
|
+
* Events other bots publish (bot:<ref>[<botId>].<event>, PRD US-010), for the
|
|
47555
|
+
* "Another bot" side of the picker. Derived from each bot's settings — never
|
|
47556
|
+
* hand-declared: Completed, Failed, and one `tool.<providerType>.<tool>` per
|
|
47557
|
+
* tool the bot may use (the provider's tools, narrowed by the bot's
|
|
47558
|
+
* selection). Providers with no known type or tool list are skipped.
|
|
47559
|
+
*
|
|
47560
|
+
* @param {Array<object>} bots
|
|
47561
|
+
* @param {Array<{name, type, tools}>} toolSources bots.listToolSources()
|
|
47562
|
+
* @param {string} [excludeBotId] the bot being edited — can't trigger itself
|
|
47563
|
+
*/
|
|
47564
|
+
function buildBotEventCatalog(bots, toolSources) {
|
|
47565
|
+
var excludeBotId = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
|
47566
|
+
if (!Array.isArray(bots)) return [];
|
|
47567
|
+
var sources = Array.isArray(toolSources) ? toolSources : [];
|
|
47568
|
+
var out = [];
|
|
47569
|
+
var _iterator7 = _createForOfIteratorHelper$m(bots),
|
|
47570
|
+
_step7;
|
|
47571
|
+
try {
|
|
47572
|
+
for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
|
|
47573
|
+
var bot = _step7.value;
|
|
47574
|
+
if (!bot || !bot.id || !bot.ref || bot.id === excludeBotId) continue;
|
|
47575
|
+
var events = [{
|
|
47576
|
+
event: "completed",
|
|
47577
|
+
label: "Completed"
|
|
47578
|
+
}, {
|
|
47579
|
+
event: "failed",
|
|
47580
|
+
label: "Failed"
|
|
47581
|
+
}];
|
|
47582
|
+
var _iterator8 = _createForOfIteratorHelper$m(bot.mcpServers || []),
|
|
47583
|
+
_step8;
|
|
47584
|
+
try {
|
|
47585
|
+
var _loop = function _loop() {
|
|
47586
|
+
var provider = _step8.value;
|
|
47587
|
+
var src = sources.find(function (s) {
|
|
47588
|
+
return s && s.name === provider;
|
|
47589
|
+
});
|
|
47590
|
+
if (!src || !src.type || !Array.isArray(src.tools)) return 1; // continue
|
|
47591
|
+
var sel = bot.toolSelections && bot.toolSelections[provider];
|
|
47592
|
+
var tools = Array.isArray(sel) ? src.tools.filter(function (t) {
|
|
47593
|
+
return sel.includes(t);
|
|
47594
|
+
}) : src.tools;
|
|
47595
|
+
var _iterator9 = _createForOfIteratorHelper$m(tools),
|
|
47596
|
+
_step9;
|
|
47597
|
+
try {
|
|
47598
|
+
for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) {
|
|
47599
|
+
var tool = _step9.value;
|
|
47600
|
+
events.push({
|
|
47601
|
+
event: "tool.".concat(src.type, ".").concat(tool),
|
|
47602
|
+
label: "".concat(provider, " \u203A ").concat(tool)
|
|
47603
|
+
});
|
|
47604
|
+
}
|
|
47605
|
+
} catch (err) {
|
|
47606
|
+
_iterator9.e(err);
|
|
47607
|
+
} finally {
|
|
47608
|
+
_iterator9.f();
|
|
47609
|
+
}
|
|
47610
|
+
};
|
|
47611
|
+
for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {
|
|
47612
|
+
if (_loop()) continue;
|
|
47613
|
+
}
|
|
47614
|
+
} catch (err) {
|
|
47615
|
+
_iterator8.e(err);
|
|
47616
|
+
} finally {
|
|
47617
|
+
_iterator8.f();
|
|
47618
|
+
}
|
|
47619
|
+
out.push({
|
|
47620
|
+
botId: bot.id,
|
|
47621
|
+
ref: bot.ref,
|
|
47622
|
+
name: bot.name || bot.id,
|
|
47623
|
+
events: events
|
|
47624
|
+
});
|
|
47625
|
+
}
|
|
47626
|
+
} catch (err) {
|
|
47627
|
+
_iterator7.e(err);
|
|
47628
|
+
} finally {
|
|
47629
|
+
_iterator7.f();
|
|
47630
|
+
}
|
|
47631
|
+
return out;
|
|
47632
|
+
}
|
|
47633
|
+
|
|
47634
|
+
/** A subscription to one bot event, picked from the bot catalog. */
|
|
47635
|
+
function botSubscription(botEntry, ev) {
|
|
47636
|
+
return {
|
|
47637
|
+
eventType: "bot:".concat(botEntry.ref, "[").concat(botEntry.botId, "].").concat(ev.event),
|
|
47638
|
+
source: {
|
|
47639
|
+
kind: "bot",
|
|
47640
|
+
ref: botEntry.ref,
|
|
47641
|
+
instanceId: botEntry.botId,
|
|
47642
|
+
event: ev.event
|
|
47643
|
+
},
|
|
47644
|
+
label: "".concat(botEntry.name, " \u203A ").concat(ev.label)
|
|
47645
|
+
};
|
|
47646
|
+
}
|
|
47647
|
+
|
|
47359
47648
|
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; }
|
|
47360
47649
|
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; }
|
|
47650
|
+
var EVENT_FROM_OPTIONS = [{
|
|
47651
|
+
value: "widget",
|
|
47652
|
+
label: "A dashboard widget"
|
|
47653
|
+
}, {
|
|
47654
|
+
value: "bot",
|
|
47655
|
+
label: "Another bot"
|
|
47656
|
+
}];
|
|
47657
|
+
|
|
47658
|
+
/**
|
|
47659
|
+
* BotDetail — create/edit form for a Bot Factory bot (Settings → Bots).
|
|
47660
|
+
*
|
|
47661
|
+
* Built for a non-technical user: Providers (the user's Dash MCP providers —
|
|
47662
|
+
* what the bot can use), the AI model, and the schedule are all
|
|
47663
|
+
* pick-from-a-list, never free text. "Provider" always means a Dash provider;
|
|
47664
|
+
* the LLM choice is labelled "Model source". The raw cron lives behind an "Advanced"
|
|
47665
|
+
* toggle for power users. All inputs are @trops/dash-react primitives.
|
|
47666
|
+
*/
|
|
47667
|
+
|
|
47668
|
+
// Friendly, Title-case provider labels for the dropdown.
|
|
47361
47669
|
var PROVIDER_LABELS = {
|
|
47362
47670
|
anthropic: "Anthropic",
|
|
47363
47671
|
openai: "OpenAI",
|
|
@@ -47445,6 +47753,9 @@ function prettyTool(name) {
|
|
|
47445
47753
|
var words = String(name || "").split(/[-_\s]+/).filter(Boolean).join(" ");
|
|
47446
47754
|
return words.charAt(0).toUpperCase() + words.slice(1);
|
|
47447
47755
|
}
|
|
47756
|
+
|
|
47757
|
+
// Stable default so the event-catalog memo doesn't recompute every render.
|
|
47758
|
+
var EMPTY_LIST = [];
|
|
47448
47759
|
function getMainApi() {
|
|
47449
47760
|
return typeof window !== "undefined" ? window.mainApi : null;
|
|
47450
47761
|
}
|
|
@@ -47456,6 +47767,12 @@ var BotDetail = function BotDetail(_ref) {
|
|
|
47456
47767
|
isCreating = _ref$isCreating === void 0 ? false : _ref$isCreating,
|
|
47457
47768
|
_ref$providers = _ref.providers,
|
|
47458
47769
|
providers = _ref$providers === void 0 ? {} : _ref$providers,
|
|
47770
|
+
_ref$workspaces = _ref.workspaces,
|
|
47771
|
+
workspaces = _ref$workspaces === void 0 ? EMPTY_LIST : _ref$workspaces,
|
|
47772
|
+
_ref$getWidgetConfig = _ref.getWidgetConfig,
|
|
47773
|
+
getWidgetConfig = _ref$getWidgetConfig === void 0 ? null : _ref$getWidgetConfig,
|
|
47774
|
+
_ref$bots = _ref.bots,
|
|
47775
|
+
bots = _ref$bots === void 0 ? EMPTY_LIST : _ref$bots,
|
|
47459
47776
|
onSave = _ref.onSave,
|
|
47460
47777
|
onCancel = _ref.onCancel,
|
|
47461
47778
|
onDelete = _ref.onDelete;
|
|
@@ -47599,42 +47916,46 @@ var BotDetail = function BotDetail(_ref) {
|
|
|
47599
47916
|
setSchedulePrompt = _useState36[1];
|
|
47600
47917
|
|
|
47601
47918
|
// --- Run-on-events (subscriptions) ---
|
|
47602
|
-
|
|
47919
|
+
// Picked, never typed: Dashboard › Widget › Event from the widgets' declared
|
|
47920
|
+
// events. Each saved subscription keeps its runtime eventType plus a
|
|
47921
|
+
// structured source (see eventCatalog.js).
|
|
47922
|
+
var _useState37 = React.useState(((bot === null || bot === void 0 ? void 0 : bot.subscriptions) || []).filter(function (s) {
|
|
47603
47923
|
return s && s.eventType;
|
|
47604
|
-
})
|
|
47924
|
+
})),
|
|
47605
47925
|
_useState38 = _slicedToArray(_useState37, 2),
|
|
47606
47926
|
subscriptions = _useState38[0],
|
|
47607
47927
|
setSubscriptions = _useState38[1];
|
|
47608
|
-
var
|
|
47928
|
+
var eventCatalog = React.useMemo(function () {
|
|
47929
|
+
return buildWidgetEventCatalog(workspaces, getWidgetConfig);
|
|
47930
|
+
}, [workspaces, getWidgetConfig]);
|
|
47931
|
+
var _useState39 = React.useState("widget"),
|
|
47609
47932
|
_useState40 = _slicedToArray(_useState39, 2),
|
|
47610
|
-
|
|
47611
|
-
|
|
47612
|
-
var _useState41 = React.useState(
|
|
47933
|
+
pickFrom = _useState40[0],
|
|
47934
|
+
setPickFrom = _useState40[1];
|
|
47935
|
+
var _useState41 = React.useState(""),
|
|
47613
47936
|
_useState42 = _slicedToArray(_useState41, 2),
|
|
47614
|
-
|
|
47615
|
-
|
|
47616
|
-
var _useState43 = React.useState(
|
|
47937
|
+
pickWorkspace = _useState42[0],
|
|
47938
|
+
setPickWorkspace = _useState42[1];
|
|
47939
|
+
var _useState43 = React.useState(""),
|
|
47617
47940
|
_useState44 = _slicedToArray(_useState43, 2),
|
|
47618
|
-
|
|
47619
|
-
|
|
47620
|
-
var _useState45 = React.useState(
|
|
47941
|
+
pickWidget = _useState44[0],
|
|
47942
|
+
setPickWidget = _useState44[1];
|
|
47943
|
+
var _useState45 = React.useState(""),
|
|
47621
47944
|
_useState46 = _slicedToArray(_useState45, 2),
|
|
47622
|
-
|
|
47623
|
-
|
|
47624
|
-
|
|
47625
|
-
|
|
47626
|
-
|
|
47627
|
-
|
|
47628
|
-
|
|
47629
|
-
|
|
47630
|
-
|
|
47631
|
-
|
|
47632
|
-
|
|
47633
|
-
|
|
47634
|
-
|
|
47635
|
-
|
|
47636
|
-
};
|
|
47637
|
-
}, []);
|
|
47945
|
+
pickBot = _useState46[0],
|
|
47946
|
+
setPickBot = _useState46[1];
|
|
47947
|
+
var _useState47 = React.useState(""),
|
|
47948
|
+
_useState48 = _slicedToArray(_useState47, 2),
|
|
47949
|
+
pickEvent = _useState48[0],
|
|
47950
|
+
setPickEvent = _useState48[1];
|
|
47951
|
+
var _useState49 = React.useState(false),
|
|
47952
|
+
_useState50 = _slicedToArray(_useState49, 2),
|
|
47953
|
+
saving = _useState50[0],
|
|
47954
|
+
setSaving = _useState50[1];
|
|
47955
|
+
var _useState51 = React.useState(null),
|
|
47956
|
+
_useState52 = _slicedToArray(_useState51, 2),
|
|
47957
|
+
error = _useState52[0],
|
|
47958
|
+
setError = _useState52[1];
|
|
47638
47959
|
|
|
47639
47960
|
// Discover the user's configured MCP providers — running or not. The bot
|
|
47640
47961
|
// starts any that aren't running when it runs.
|
|
@@ -47748,26 +48069,44 @@ var BotDetail = function BotDetail(_ref) {
|
|
|
47748
48069
|
return copy;
|
|
47749
48070
|
});
|
|
47750
48071
|
};
|
|
47751
|
-
|
|
47752
|
-
|
|
47753
|
-
|
|
48072
|
+
|
|
48073
|
+
// Cascading picker options. A widget's option value is "ref|instanceId".
|
|
48074
|
+
var pickedWs = eventCatalog.find(function (w) {
|
|
48075
|
+
return w.workspaceId === pickWorkspace;
|
|
48076
|
+
});
|
|
48077
|
+
var pickedWidget = pickedWs ? pickedWs.widgets.find(function (w) {
|
|
48078
|
+
return "".concat(w.ref, "|").concat(w.instanceId) === pickWidget;
|
|
48079
|
+
}) : null;
|
|
48080
|
+
|
|
48081
|
+
// Other bots' events, derived from their providers + tools (this bot
|
|
48082
|
+
// excluded — it can't trigger itself).
|
|
48083
|
+
var botCatalog = React.useMemo(function () {
|
|
48084
|
+
return buildBotEventCatalog(bots, toolSources, (bot === null || bot === void 0 ? void 0 : bot.id) || null);
|
|
48085
|
+
}, [bots, toolSources, bot === null || bot === void 0 ? void 0 : bot.id]);
|
|
48086
|
+
var pickedBot = botCatalog.find(function (b) {
|
|
48087
|
+
return b.botId === pickBot;
|
|
48088
|
+
}) || null;
|
|
48089
|
+
var pickedBotEvent = pickedBot ? pickedBot.events.find(function (e) {
|
|
48090
|
+
return e.event === pickEvent;
|
|
48091
|
+
}) || null : null;
|
|
48092
|
+
var canAddEvent = pickFrom === "bot" ? !!pickedBotEvent : !!(pickedWidget && pickEvent);
|
|
48093
|
+
var addSubscription = function addSubscription() {
|
|
48094
|
+
if (!canAddEvent) return;
|
|
48095
|
+
var sub = pickFrom === "bot" ? botSubscription(pickedBot, pickedBotEvent) : widgetSubscription(pickedWs, pickedWidget, pickEvent);
|
|
47754
48096
|
setSubscriptions(function (prev) {
|
|
47755
|
-
return prev.
|
|
48097
|
+
return prev.some(function (s) {
|
|
48098
|
+
return s.eventType === sub.eventType;
|
|
48099
|
+
}) ? prev : [].concat(_toConsumableArray(prev), [sub]);
|
|
47756
48100
|
});
|
|
47757
|
-
|
|
48101
|
+
setPickEvent("");
|
|
47758
48102
|
};
|
|
47759
48103
|
var removeSubscription = function removeSubscription(eventType) {
|
|
47760
48104
|
setSubscriptions(function (prev) {
|
|
47761
|
-
return prev.filter(function (
|
|
47762
|
-
return
|
|
48105
|
+
return prev.filter(function (s) {
|
|
48106
|
+
return s.eventType !== eventType;
|
|
47763
48107
|
});
|
|
47764
48108
|
});
|
|
47765
48109
|
};
|
|
47766
|
-
|
|
47767
|
-
// Recently-seen events not already subscribed — offered as one-click adds.
|
|
47768
|
-
var eventSuggestions = knownEvents.filter(function (ev) {
|
|
47769
|
-
return !subscriptions.includes(ev);
|
|
47770
|
-
});
|
|
47771
48110
|
var canSave = name.trim() && instructions.trim() && !saving;
|
|
47772
48111
|
var handleSave = /*#__PURE__*/function () {
|
|
47773
48112
|
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
@@ -47803,11 +48142,7 @@ var BotDetail = function BotDetail(_ref) {
|
|
|
47803
48142
|
return selectedServers.includes(server);
|
|
47804
48143
|
})),
|
|
47805
48144
|
schedules: schedules,
|
|
47806
|
-
subscriptions: subscriptions
|
|
47807
|
-
return {
|
|
47808
|
-
eventType: eventType
|
|
47809
|
-
};
|
|
47810
|
-
})
|
|
48145
|
+
subscriptions: subscriptions
|
|
47811
48146
|
});
|
|
47812
48147
|
setSaving(true);
|
|
47813
48148
|
_context2.prev = 1;
|
|
@@ -48038,53 +48373,129 @@ var BotDetail = function BotDetail(_ref) {
|
|
|
48038
48373
|
className: "text-sm font-medium",
|
|
48039
48374
|
children: "Run on events"
|
|
48040
48375
|
}), subscriptions.length ? /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
48041
|
-
className: "flex flex-
|
|
48042
|
-
children: subscriptions.map(function (
|
|
48043
|
-
|
|
48044
|
-
|
|
48045
|
-
|
|
48046
|
-
|
|
48376
|
+
className: "flex flex-col gap-1",
|
|
48377
|
+
children: subscriptions.map(function (sub) {
|
|
48378
|
+
var _describeSubscription = describeSubscription(sub, eventCatalog, botCatalog),
|
|
48379
|
+
label = _describeSubscription.label,
|
|
48380
|
+
missing = _describeSubscription.missing,
|
|
48381
|
+
kind = _describeSubscription.kind;
|
|
48382
|
+
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
48383
|
+
className: "flex flex-row items-center justify-between gap-2",
|
|
48384
|
+
children: [/*#__PURE__*/jsxRuntime.jsxs("span", {
|
|
48385
|
+
className: "text-sm",
|
|
48386
|
+
children: [label, missing ? /*#__PURE__*/jsxRuntime.jsxs("span", {
|
|
48387
|
+
className: "text-xs opacity-60",
|
|
48388
|
+
children: [" ", "(", kind === "bot" ? "bot" : "widget", " missing)"]
|
|
48389
|
+
}) : null]
|
|
48390
|
+
}), /*#__PURE__*/jsxRuntime.jsx(DashReact.Button3, {
|
|
48391
|
+
title: "Remove",
|
|
48392
|
+
size: "xs",
|
|
48393
|
+
ariaLabel: "Remove ".concat(label),
|
|
48047
48394
|
onClick: function onClick() {
|
|
48048
|
-
return removeSubscription(
|
|
48049
|
-
}
|
|
48050
|
-
className: "opacity-60 hover:opacity-100",
|
|
48051
|
-
"aria-label": "Remove ".concat(ev),
|
|
48052
|
-
children: "\xD7"
|
|
48395
|
+
return removeSubscription(sub.eventType);
|
|
48396
|
+
}
|
|
48053
48397
|
})]
|
|
48054
|
-
},
|
|
48398
|
+
}, sub.eventType);
|
|
48055
48399
|
})
|
|
48056
48400
|
}) : /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
48057
48401
|
className: "text-xs opacity-50",
|
|
48058
48402
|
children: "This bot doesn't run on any events yet."
|
|
48059
|
-
}), /*#__PURE__*/jsxRuntime.
|
|
48060
|
-
|
|
48061
|
-
|
|
48062
|
-
|
|
48063
|
-
|
|
48064
|
-
|
|
48065
|
-
}
|
|
48066
|
-
|
|
48067
|
-
|
|
48068
|
-
|
|
48403
|
+
}), /*#__PURE__*/jsxRuntime.jsx(DashReact.SelectInput, {
|
|
48404
|
+
label: "From",
|
|
48405
|
+
value: pickFrom,
|
|
48406
|
+
onChange: function onChange(v) {
|
|
48407
|
+
setPickFrom(v);
|
|
48408
|
+
setPickEvent("");
|
|
48409
|
+
},
|
|
48410
|
+
options: EVENT_FROM_OPTIONS
|
|
48411
|
+
}), pickFrom === "bot" ? botCatalog.length ? /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
48412
|
+
className: "flex flex-col gap-2",
|
|
48413
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(DashReact.SelectInput, {
|
|
48414
|
+
label: "Bot",
|
|
48415
|
+
value: pickBot,
|
|
48416
|
+
onChange: function onChange(v) {
|
|
48417
|
+
setPickBot(v);
|
|
48418
|
+
setPickEvent("");
|
|
48069
48419
|
},
|
|
48420
|
+
placeholder: "Choose a bot\u2026",
|
|
48421
|
+
options: botCatalog.map(function (b) {
|
|
48422
|
+
return {
|
|
48423
|
+
value: b.botId,
|
|
48424
|
+
label: b.name
|
|
48425
|
+
};
|
|
48426
|
+
})
|
|
48427
|
+
}), /*#__PURE__*/jsxRuntime.jsx(DashReact.SelectInput, {
|
|
48428
|
+
label: "Event",
|
|
48429
|
+
value: pickEvent,
|
|
48430
|
+
onChange: setPickEvent,
|
|
48431
|
+
placeholder: "Choose an event\u2026",
|
|
48432
|
+
options: (pickedBot ? pickedBot.events : []).map(function (e) {
|
|
48433
|
+
return {
|
|
48434
|
+
value: e.event,
|
|
48435
|
+
label: e.label
|
|
48436
|
+
};
|
|
48437
|
+
})
|
|
48438
|
+
}), /*#__PURE__*/jsxRuntime.jsx(DashReact.Button, {
|
|
48439
|
+
title: "Add event",
|
|
48440
|
+
onClick: addSubscription,
|
|
48070
48441
|
size: "sm",
|
|
48071
|
-
disabled: !
|
|
48442
|
+
disabled: !canAddEvent
|
|
48072
48443
|
})]
|
|
48073
|
-
})
|
|
48074
|
-
className: "
|
|
48075
|
-
children:
|
|
48076
|
-
|
|
48077
|
-
|
|
48078
|
-
|
|
48079
|
-
|
|
48080
|
-
|
|
48081
|
-
|
|
48082
|
-
|
|
48083
|
-
|
|
48084
|
-
|
|
48085
|
-
},
|
|
48444
|
+
}) : /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
48445
|
+
className: "text-xs opacity-50",
|
|
48446
|
+
children: "No other bots yet. Create another bot to trigger this one when it finishes or uses a tool."
|
|
48447
|
+
}) : eventCatalog.length ? /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
48448
|
+
className: "flex flex-col gap-2",
|
|
48449
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(DashReact.SelectInput, {
|
|
48450
|
+
label: "Dashboard",
|
|
48451
|
+
value: pickWorkspace,
|
|
48452
|
+
onChange: function onChange(v) {
|
|
48453
|
+
setPickWorkspace(v);
|
|
48454
|
+
setPickWidget("");
|
|
48455
|
+
setPickEvent("");
|
|
48456
|
+
},
|
|
48457
|
+
placeholder: "Choose a dashboard\u2026",
|
|
48458
|
+
options: eventCatalog.map(function (w) {
|
|
48459
|
+
return {
|
|
48460
|
+
value: w.workspaceId,
|
|
48461
|
+
label: w.name
|
|
48462
|
+
};
|
|
48463
|
+
})
|
|
48464
|
+
}), /*#__PURE__*/jsxRuntime.jsx(DashReact.SelectInput, {
|
|
48465
|
+
label: "Widget",
|
|
48466
|
+
value: pickWidget,
|
|
48467
|
+
onChange: function onChange(v) {
|
|
48468
|
+
setPickWidget(v);
|
|
48469
|
+
setPickEvent("");
|
|
48470
|
+
},
|
|
48471
|
+
placeholder: "Choose a widget\u2026",
|
|
48472
|
+
options: (pickedWs ? pickedWs.widgets : []).map(function (w) {
|
|
48473
|
+
return {
|
|
48474
|
+
value: "".concat(w.ref, "|").concat(w.instanceId),
|
|
48475
|
+
label: w.label
|
|
48476
|
+
};
|
|
48477
|
+
})
|
|
48478
|
+
}), /*#__PURE__*/jsxRuntime.jsx(DashReact.SelectInput, {
|
|
48479
|
+
label: "Event",
|
|
48480
|
+
value: pickEvent,
|
|
48481
|
+
onChange: setPickEvent,
|
|
48482
|
+
placeholder: "Choose an event\u2026",
|
|
48483
|
+
options: (pickedWidget ? pickedWidget.events : []).map(function (ev) {
|
|
48484
|
+
return {
|
|
48485
|
+
value: ev,
|
|
48486
|
+
label: ev
|
|
48487
|
+
};
|
|
48488
|
+
})
|
|
48489
|
+
}), /*#__PURE__*/jsxRuntime.jsx(DashReact.Button, {
|
|
48490
|
+
title: "Add event",
|
|
48491
|
+
onClick: addSubscription,
|
|
48492
|
+
size: "sm",
|
|
48493
|
+
disabled: !pickedWidget || !pickEvent
|
|
48086
48494
|
})]
|
|
48087
|
-
}) :
|
|
48495
|
+
}) : /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
48496
|
+
className: "text-xs opacity-50",
|
|
48497
|
+
children: "No widgets on your dashboards publish events yet. Add a widget that publishes events to a dashboard to trigger this bot from it."
|
|
48498
|
+
}), /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
48088
48499
|
className: "text-xs opacity-50",
|
|
48089
48500
|
children: "The bot runs automatically when one of these events fires."
|
|
48090
48501
|
})]
|
|
@@ -48117,8 +48528,23 @@ var BotDetail = function BotDetail(_ref) {
|
|
|
48117
48528
|
});
|
|
48118
48529
|
};
|
|
48119
48530
|
|
|
48531
|
+
var getWidgetConfig = function getWidgetConfig(name) {
|
|
48532
|
+
return name && ComponentManager.config(name) || null;
|
|
48533
|
+
};
|
|
48534
|
+
|
|
48535
|
+
/**
|
|
48536
|
+
* BotsSection — Settings → Bots. List-and-detail management for Bot Factory
|
|
48537
|
+
* bots, mirroring ProvidersSection. Data comes from the main process over
|
|
48538
|
+
* dashApi.bots.* (promise-based IPC bridge, exposed by dash-electron's
|
|
48539
|
+
* preload); the provider dropdown reads configured providers from AppContext.
|
|
48540
|
+
*
|
|
48541
|
+
* Watching runs / approvals lives in the Activity panel (a later slice); this
|
|
48542
|
+
* surface is create / configure / delete.
|
|
48543
|
+
*/
|
|
48120
48544
|
var BotsSection = function BotsSection(_ref) {
|
|
48121
|
-
var _ref$
|
|
48545
|
+
var _ref$workspaces = _ref.workspaces,
|
|
48546
|
+
workspaces = _ref$workspaces === void 0 ? [] : _ref$workspaces,
|
|
48547
|
+
_ref$dashApi = _ref.dashApi,
|
|
48122
48548
|
dashApi = _ref$dashApi === void 0 ? null : _ref$dashApi,
|
|
48123
48549
|
_ref$createRequested = _ref.createRequested,
|
|
48124
48550
|
createRequested = _ref$createRequested === void 0 ? false : _ref$createRequested,
|
|
@@ -48276,6 +48702,9 @@ var BotsSection = function BotsSection(_ref) {
|
|
|
48276
48702
|
detailContent = /*#__PURE__*/jsxRuntime.jsx(BotDetail, {
|
|
48277
48703
|
isCreating: true,
|
|
48278
48704
|
providers: providers,
|
|
48705
|
+
workspaces: workspaces,
|
|
48706
|
+
getWidgetConfig: getWidgetConfig,
|
|
48707
|
+
bots: bots,
|
|
48279
48708
|
onSave: handleSave,
|
|
48280
48709
|
onCancel: function onCancel() {
|
|
48281
48710
|
return setIsCreating(false);
|
|
@@ -48285,6 +48714,9 @@ var BotsSection = function BotsSection(_ref) {
|
|
|
48285
48714
|
detailContent = /*#__PURE__*/jsxRuntime.jsx(BotDetail, {
|
|
48286
48715
|
bot: selected,
|
|
48287
48716
|
providers: providers,
|
|
48717
|
+
workspaces: workspaces,
|
|
48718
|
+
getWidgetConfig: getWidgetConfig,
|
|
48719
|
+
bots: bots,
|
|
48288
48720
|
onSave: handleSave,
|
|
48289
48721
|
onDelete: function onDelete() {
|
|
48290
48722
|
return setDeleteTarget(selected.id);
|
|
@@ -57125,6 +57557,7 @@ var AppSettingsModal = function AppSettingsModal(_ref) {
|
|
|
57125
57557
|
initialProviderType: initialProviderType,
|
|
57126
57558
|
initialProviderClass: initialProviderClass
|
|
57127
57559
|
}), activeSection === "bots" && /*#__PURE__*/jsxRuntime.jsx(BotsSection, {
|
|
57560
|
+
workspaces: workspaces,
|
|
57128
57561
|
dashApi: dashApi,
|
|
57129
57562
|
credentials: credentials,
|
|
57130
57563
|
createRequested: createRequested,
|