@trops/dash-core 0.1.247 → 0.1.249
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.esm.js +435 -207
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +394 -174
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -8315,7 +8315,7 @@ hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBu
|
|
|
8315
8315
|
var hasPropertyDescriptors_1 = hasPropertyDescriptors;
|
|
8316
8316
|
|
|
8317
8317
|
var keys = objectKeys$2;
|
|
8318
|
-
var hasSymbols$
|
|
8318
|
+
var hasSymbols$4 = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';
|
|
8319
8319
|
|
|
8320
8320
|
var toStr$4 = Object.prototype.toString;
|
|
8321
8321
|
var concat = Array.prototype.concat;
|
|
@@ -8348,7 +8348,7 @@ var defineProperty$1 = function (object, name, value, predicate) {
|
|
|
8348
8348
|
var defineProperties$1 = function (object, map) {
|
|
8349
8349
|
var predicates = arguments.length > 2 ? arguments[2] : {};
|
|
8350
8350
|
var props = keys(map);
|
|
8351
|
-
if (hasSymbols$
|
|
8351
|
+
if (hasSymbols$4) {
|
|
8352
8352
|
props = concat.call(props, Object.getOwnPropertySymbols(map));
|
|
8353
8353
|
}
|
|
8354
8354
|
for (var i = 0; i < props.length; i += 1) {
|
|
@@ -8414,11 +8414,11 @@ var sign$1 = function sign(number) {
|
|
|
8414
8414
|
};
|
|
8415
8415
|
|
|
8416
8416
|
var shams$1;
|
|
8417
|
-
var hasRequiredShams;
|
|
8417
|
+
var hasRequiredShams$1;
|
|
8418
8418
|
|
|
8419
|
-
function requireShams () {
|
|
8420
|
-
if (hasRequiredShams) return shams$1;
|
|
8421
|
-
hasRequiredShams = 1;
|
|
8419
|
+
function requireShams$1 () {
|
|
8420
|
+
if (hasRequiredShams$1) return shams$1;
|
|
8421
|
+
hasRequiredShams$1 = 1;
|
|
8422
8422
|
|
|
8423
8423
|
/** @type {import('./shams')} */
|
|
8424
8424
|
/* eslint complexity: [2, 18], max-statements: [2, 33] */
|
|
@@ -8467,10 +8467,10 @@ function requireShams () {
|
|
|
8467
8467
|
}
|
|
8468
8468
|
|
|
8469
8469
|
var origSymbol = typeof Symbol !== 'undefined' && Symbol;
|
|
8470
|
-
var hasSymbolSham = requireShams();
|
|
8470
|
+
var hasSymbolSham = requireShams$1();
|
|
8471
8471
|
|
|
8472
8472
|
/** @type {import('.')} */
|
|
8473
|
-
var hasSymbols$
|
|
8473
|
+
var hasSymbols$3 = function hasNativeSymbols() {
|
|
8474
8474
|
if (typeof origSymbol !== 'function') { return false; }
|
|
8475
8475
|
if (typeof Symbol !== 'function') { return false; }
|
|
8476
8476
|
if (typeof origSymbol('foo') !== 'symbol') { return false; }
|
|
@@ -8774,7 +8774,7 @@ var ThrowTypeError = $gOPD$1
|
|
|
8774
8774
|
}())
|
|
8775
8775
|
: throwTypeError;
|
|
8776
8776
|
|
|
8777
|
-
var hasSymbols$
|
|
8777
|
+
var hasSymbols$2 = hasSymbols$3();
|
|
8778
8778
|
|
|
8779
8779
|
var getProto$2 = getProto$3;
|
|
8780
8780
|
var $ObjectGPO = requireObject_getPrototypeOf();
|
|
@@ -8792,7 +8792,7 @@ var INTRINSICS = {
|
|
|
8792
8792
|
'%AggregateError%': typeof AggregateError === 'undefined' ? undefined$1 : AggregateError,
|
|
8793
8793
|
'%Array%': Array,
|
|
8794
8794
|
'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined$1 : ArrayBuffer,
|
|
8795
|
-
'%ArrayIteratorPrototype%': hasSymbols$
|
|
8795
|
+
'%ArrayIteratorPrototype%': hasSymbols$2 && getProto$2 ? getProto$2([][Symbol.iterator]()) : undefined$1,
|
|
8796
8796
|
'%AsyncFromSyncIteratorPrototype%': undefined$1,
|
|
8797
8797
|
'%AsyncFunction%': needsEval,
|
|
8798
8798
|
'%AsyncGenerator%': needsEval,
|
|
@@ -8823,10 +8823,10 @@ var INTRINSICS = {
|
|
|
8823
8823
|
'%Int32Array%': typeof Int32Array === 'undefined' ? undefined$1 : Int32Array,
|
|
8824
8824
|
'%isFinite%': isFinite,
|
|
8825
8825
|
'%isNaN%': isNaN,
|
|
8826
|
-
'%IteratorPrototype%': hasSymbols$
|
|
8826
|
+
'%IteratorPrototype%': hasSymbols$2 && getProto$2 ? getProto$2(getProto$2([][Symbol.iterator]())) : undefined$1,
|
|
8827
8827
|
'%JSON%': typeof JSON === 'object' ? JSON : undefined$1,
|
|
8828
8828
|
'%Map%': typeof Map === 'undefined' ? undefined$1 : Map,
|
|
8829
|
-
'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols$
|
|
8829
|
+
'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols$2 || !getProto$2 ? undefined$1 : getProto$2(new Map()[Symbol.iterator]()),
|
|
8830
8830
|
'%Math%': Math,
|
|
8831
8831
|
'%Number%': Number,
|
|
8832
8832
|
'%Object%': $Object$2,
|
|
@@ -8840,11 +8840,11 @@ var INTRINSICS = {
|
|
|
8840
8840
|
'%Reflect%': typeof Reflect === 'undefined' ? undefined$1 : Reflect,
|
|
8841
8841
|
'%RegExp%': RegExp,
|
|
8842
8842
|
'%Set%': typeof Set === 'undefined' ? undefined$1 : Set,
|
|
8843
|
-
'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols$
|
|
8843
|
+
'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols$2 || !getProto$2 ? undefined$1 : getProto$2(new Set()[Symbol.iterator]()),
|
|
8844
8844
|
'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined$1 : SharedArrayBuffer,
|
|
8845
8845
|
'%String%': String,
|
|
8846
|
-
'%StringIteratorPrototype%': hasSymbols$
|
|
8847
|
-
'%Symbol%': hasSymbols$
|
|
8846
|
+
'%StringIteratorPrototype%': hasSymbols$2 && getProto$2 ? getProto$2(''[Symbol.iterator]()) : undefined$1,
|
|
8847
|
+
'%Symbol%': hasSymbols$2 ? Symbol : undefined$1,
|
|
8848
8848
|
'%SyntaxError%': $SyntaxError$1,
|
|
8849
8849
|
'%ThrowTypeError%': ThrowTypeError,
|
|
8850
8850
|
'%TypedArray%': TypedArray,
|
|
@@ -9197,12 +9197,12 @@ var callBound$i = function callBoundIntrinsic(name, allowMissing) {
|
|
|
9197
9197
|
|
|
9198
9198
|
// modified from https://github.com/es-shims/es6-shim
|
|
9199
9199
|
var objectKeys$1 = objectKeys$2;
|
|
9200
|
-
var hasSymbols$
|
|
9200
|
+
var hasSymbols$1 = requireShams$1()();
|
|
9201
9201
|
var callBound$h = callBound$i;
|
|
9202
9202
|
var $Object$1 = esObjectAtoms;
|
|
9203
9203
|
var $push = callBound$h('Array.prototype.push');
|
|
9204
9204
|
var $propIsEnumerable = callBound$h('Object.prototype.propertyIsEnumerable');
|
|
9205
|
-
var originalGetSymbols = hasSymbols$
|
|
9205
|
+
var originalGetSymbols = hasSymbols$1 ? $Object$1.getOwnPropertySymbols : null;
|
|
9206
9206
|
|
|
9207
9207
|
// eslint-disable-next-line no-unused-vars
|
|
9208
9208
|
var implementation$8 = function assign(target, source1) {
|
|
@@ -9216,7 +9216,7 @@ var implementation$8 = function assign(target, source1) {
|
|
|
9216
9216
|
|
|
9217
9217
|
// step 3.a.ii:
|
|
9218
9218
|
var keys = objectKeys$1(from);
|
|
9219
|
-
var getSymbols = hasSymbols$
|
|
9219
|
+
var getSymbols = hasSymbols$1 && ($Object$1.getOwnPropertySymbols || originalGetSymbols);
|
|
9220
9220
|
if (getSymbols) {
|
|
9221
9221
|
var syms = getSymbols(from);
|
|
9222
9222
|
for (var j = 0; j < syms.length; ++j) {
|
|
@@ -9513,14 +9513,23 @@ var regexp_prototype_flags = flagsBound;
|
|
|
9513
9513
|
|
|
9514
9514
|
var esGetIterator = {exports: {}};
|
|
9515
9515
|
|
|
9516
|
-
var
|
|
9516
|
+
var shams;
|
|
9517
|
+
var hasRequiredShams;
|
|
9517
9518
|
|
|
9518
|
-
|
|
9519
|
-
|
|
9520
|
-
|
|
9521
|
-
|
|
9519
|
+
function requireShams () {
|
|
9520
|
+
if (hasRequiredShams) return shams;
|
|
9521
|
+
hasRequiredShams = 1;
|
|
9522
|
+
|
|
9523
|
+
var hasSymbols = requireShams$1();
|
|
9522
9524
|
|
|
9523
|
-
|
|
9525
|
+
/** @type {import('.')} */
|
|
9526
|
+
shams = function hasToStringTagShams() {
|
|
9527
|
+
return hasSymbols() && !!Symbol.toStringTag;
|
|
9528
|
+
};
|
|
9529
|
+
return shams;
|
|
9530
|
+
}
|
|
9531
|
+
|
|
9532
|
+
var hasToStringTag$7 = requireShams()();
|
|
9524
9533
|
var callBound$f = callBound$i;
|
|
9525
9534
|
|
|
9526
9535
|
var $toString$7 = callBound$f('Object.prototype.toString');
|
|
@@ -10557,7 +10566,7 @@ var tryStringObject = function tryStringObject(value) {
|
|
|
10557
10566
|
/** @type {(receiver: ThisParameterType<typeof Object.prototype.toString>, ...args: Parameters<typeof Object.prototype.toString>) => ReturnType<typeof Object.prototype.toString>} */
|
|
10558
10567
|
var $toString$6 = callBound$c('Object.prototype.toString');
|
|
10559
10568
|
var strClass = '[object String]';
|
|
10560
|
-
var hasToStringTag$6 =
|
|
10569
|
+
var hasToStringTag$6 = requireShams()();
|
|
10561
10570
|
|
|
10562
10571
|
/** @type {import('.')} */
|
|
10563
10572
|
var isString$2 = function isString(value) {
|
|
@@ -10673,7 +10682,7 @@ var isSet$2 = exported$1 || function isSet(x) {
|
|
|
10673
10682
|
var isArguments$1 = isArguments$2;
|
|
10674
10683
|
var getStopIterationIterator = stopIterationIterator;
|
|
10675
10684
|
|
|
10676
|
-
if (hasSymbols$
|
|
10685
|
+
if (hasSymbols$3() || requireShams$1()()) {
|
|
10677
10686
|
var $iterator = Symbol.iterator;
|
|
10678
10687
|
// Symbol is available natively or shammed
|
|
10679
10688
|
// natively:
|
|
@@ -10962,7 +10971,7 @@ var tryDateObject = function tryDateGetDayCall(value) {
|
|
|
10962
10971
|
/** @type {(value: unknown) => string} */
|
|
10963
10972
|
var toStr$2 = callBound$9('Object.prototype.toString');
|
|
10964
10973
|
var dateClass = '[object Date]';
|
|
10965
|
-
var hasToStringTag$5 =
|
|
10974
|
+
var hasToStringTag$5 = requireShams()();
|
|
10966
10975
|
|
|
10967
10976
|
/** @type {import('.')} */
|
|
10968
10977
|
var isDateObject = function isDateObject(value) {
|
|
@@ -10973,7 +10982,7 @@ var isDateObject = function isDateObject(value) {
|
|
|
10973
10982
|
};
|
|
10974
10983
|
|
|
10975
10984
|
var callBound$8 = callBound$i;
|
|
10976
|
-
var hasToStringTag$4 =
|
|
10985
|
+
var hasToStringTag$4 = requireShams()();
|
|
10977
10986
|
var hasOwn = hasown;
|
|
10978
10987
|
var gOPD$1 = gopd$1;
|
|
10979
10988
|
|
|
@@ -11078,7 +11087,7 @@ var tryNumberObject = function tryNumberObject(value) {
|
|
|
11078
11087
|
};
|
|
11079
11088
|
var $toString$3 = callBound$6('Object.prototype.toString');
|
|
11080
11089
|
var numClass = '[object Number]';
|
|
11081
|
-
var hasToStringTag$3 =
|
|
11090
|
+
var hasToStringTag$3 = requireShams()();
|
|
11082
11091
|
|
|
11083
11092
|
/** @type {import('.')} */
|
|
11084
11093
|
var isNumberObject = function isNumberObject(value) {
|
|
@@ -11105,7 +11114,7 @@ var tryBooleanObject = function booleanBrandCheck(value) {
|
|
|
11105
11114
|
}
|
|
11106
11115
|
};
|
|
11107
11116
|
var boolClass = '[object Boolean]';
|
|
11108
|
-
var hasToStringTag$2 =
|
|
11117
|
+
var hasToStringTag$2 = requireShams()();
|
|
11109
11118
|
|
|
11110
11119
|
/** @type {import('.')} */
|
|
11111
11120
|
var isBooleanObject = function isBoolean(value) {
|
|
@@ -11147,7 +11156,7 @@ function requireSafeRegexTest () {
|
|
|
11147
11156
|
|
|
11148
11157
|
var callBound$4 = callBound$i;
|
|
11149
11158
|
var $toString$1 = callBound$4('Object.prototype.toString');
|
|
11150
|
-
var hasSymbols = hasSymbols$
|
|
11159
|
+
var hasSymbols = hasSymbols$3();
|
|
11151
11160
|
var safeRegexTest = requireSafeRegexTest();
|
|
11152
11161
|
|
|
11153
11162
|
if (hasSymbols) {
|
|
@@ -11593,7 +11602,7 @@ var gOPD = gopd$1;
|
|
|
11593
11602
|
var getProto = getProto$3;
|
|
11594
11603
|
|
|
11595
11604
|
var $toString = callBound$2('Object.prototype.toString');
|
|
11596
|
-
var hasToStringTag =
|
|
11605
|
+
var hasToStringTag = requireShams()();
|
|
11597
11606
|
|
|
11598
11607
|
var g = typeof globalThis === 'undefined' ? commonjsGlobal : globalThis;
|
|
11599
11608
|
var typedArrays = availableTypedArrays();
|
|
@@ -23114,6 +23123,397 @@ var ExternalWidget = function ExternalWidget(_ref) {
|
|
|
23114
23123
|
});
|
|
23115
23124
|
};
|
|
23116
23125
|
|
|
23126
|
+
var RegistryPackageDetail = function RegistryPackageDetail(_ref) {
|
|
23127
|
+
var widget = _ref.widget,
|
|
23128
|
+
onInstall = _ref.onInstall,
|
|
23129
|
+
_ref$isInstalling = _ref.isInstalling,
|
|
23130
|
+
isInstalling = _ref$isInstalling === void 0 ? false : _ref$isInstalling,
|
|
23131
|
+
_ref$installError = _ref.installError,
|
|
23132
|
+
installError = _ref$installError === void 0 ? null : _ref$installError,
|
|
23133
|
+
_ref$isInstalled = _ref.isInstalled,
|
|
23134
|
+
isInstalled = _ref$isInstalled === void 0 ? false : _ref$isInstalled;
|
|
23135
|
+
var _useContext = useContext(ThemeContext),
|
|
23136
|
+
currentTheme = _useContext.currentTheme;
|
|
23137
|
+
var panelStyles = getStylesForItem(themeObjects.PANEL, currentTheme, {
|
|
23138
|
+
grow: false
|
|
23139
|
+
});
|
|
23140
|
+
if (!widget) return null;
|
|
23141
|
+
return /*#__PURE__*/jsxs("div", {
|
|
23142
|
+
className: "flex flex-col flex-1 min-h-0",
|
|
23143
|
+
children: [/*#__PURE__*/jsxs("div", {
|
|
23144
|
+
className: "flex-1 min-h-0 overflow-y-auto p-6 space-y-6 ".concat(panelStyles.textColor || "text-gray-200"),
|
|
23145
|
+
children: [/*#__PURE__*/jsxs("div", {
|
|
23146
|
+
className: "flex flex-row items-center gap-3",
|
|
23147
|
+
children: [/*#__PURE__*/jsx("div", {
|
|
23148
|
+
className: "h-5 w-5 flex-shrink-0 flex items-center justify-center",
|
|
23149
|
+
children: /*#__PURE__*/jsx(FontAwesomeIcon, {
|
|
23150
|
+
icon: widget.icon || "cube",
|
|
23151
|
+
className: "h-5 w-5"
|
|
23152
|
+
})
|
|
23153
|
+
}), /*#__PURE__*/jsxs("div", {
|
|
23154
|
+
children: [/*#__PURE__*/jsxs("div", {
|
|
23155
|
+
className: "flex items-center gap-2",
|
|
23156
|
+
children: [/*#__PURE__*/jsx(SubHeading3, {
|
|
23157
|
+
title: widget.packageDisplayName,
|
|
23158
|
+
padding: false
|
|
23159
|
+
}), isInstalled && /*#__PURE__*/jsx("span", {
|
|
23160
|
+
className: "text-[10px] px-1.5 py-0.5 rounded bg-emerald-500/20 text-emerald-400 flex-shrink-0",
|
|
23161
|
+
children: "Installed"
|
|
23162
|
+
})]
|
|
23163
|
+
}), /*#__PURE__*/jsxs("div", {
|
|
23164
|
+
className: "flex items-center gap-2 mt-0.5",
|
|
23165
|
+
children: [/*#__PURE__*/jsxs("span", {
|
|
23166
|
+
className: "text-sm opacity-60",
|
|
23167
|
+
children: ["by ", widget.packageAuthor || "Unknown"]
|
|
23168
|
+
}), /*#__PURE__*/jsxs("span", {
|
|
23169
|
+
className: "text-xs px-2 py-0.5 rounded ".concat(currentTheme["bg-primary-medium"], " opacity-70"),
|
|
23170
|
+
children: ["v", widget.packageVersion]
|
|
23171
|
+
})]
|
|
23172
|
+
})]
|
|
23173
|
+
})]
|
|
23174
|
+
}), /*#__PURE__*/jsx("hr", {
|
|
23175
|
+
className: currentTheme["border-primary-medium"]
|
|
23176
|
+
}), widget.packageDescription && /*#__PURE__*/jsx("p", {
|
|
23177
|
+
className: "text-sm",
|
|
23178
|
+
children: widget.packageDescription
|
|
23179
|
+
}), widget.packageTags && widget.packageTags.length > 0 && /*#__PURE__*/jsx("div", {
|
|
23180
|
+
className: "flex flex-wrap gap-1",
|
|
23181
|
+
children: widget.packageTags.map(function (tag) {
|
|
23182
|
+
return /*#__PURE__*/jsx("span", {
|
|
23183
|
+
className: "text-xs px-2 py-0.5 rounded ".concat(currentTheme["bg-primary-medium"], " opacity-60"),
|
|
23184
|
+
children: tag
|
|
23185
|
+
}, tag);
|
|
23186
|
+
})
|
|
23187
|
+
}), /*#__PURE__*/jsxs("div", {
|
|
23188
|
+
children: [/*#__PURE__*/jsx("span", {
|
|
23189
|
+
className: "text-xs font-semibold opacity-50 mb-1 block",
|
|
23190
|
+
children: "INCLUDED WIDGETS"
|
|
23191
|
+
}), /*#__PURE__*/jsx("div", {
|
|
23192
|
+
className: "space-y-1.5",
|
|
23193
|
+
children: (widget.packageWidgets || []).map(function (w, idx) {
|
|
23194
|
+
return /*#__PURE__*/jsxs("div", {
|
|
23195
|
+
className: "p-2 rounded ".concat(currentTheme["bg-primary-medium"]),
|
|
23196
|
+
children: [/*#__PURE__*/jsx("div", {
|
|
23197
|
+
className: "text-sm font-medium",
|
|
23198
|
+
children: w.displayName || w.name
|
|
23199
|
+
}), w.description && /*#__PURE__*/jsx("div", {
|
|
23200
|
+
className: "text-xs opacity-50 mt-0.5",
|
|
23201
|
+
children: w.description
|
|
23202
|
+
}), getUserConfigurableProviders(w.providers).length > 0 && /*#__PURE__*/jsxs("div", {
|
|
23203
|
+
className: "space-y-1 mt-1",
|
|
23204
|
+
children: [/*#__PURE__*/jsx("div", {
|
|
23205
|
+
className: "flex gap-1 flex-wrap",
|
|
23206
|
+
children: getUserConfigurableProviders(w.providers).map(function (p, pidx) {
|
|
23207
|
+
return /*#__PURE__*/jsxs("span", {
|
|
23208
|
+
className: "text-xs px-1.5 py-0.5 rounded bg-blue-900/30 text-blue-400",
|
|
23209
|
+
children: [p.type, p.required ? " *" : ""]
|
|
23210
|
+
}, pidx);
|
|
23211
|
+
})
|
|
23212
|
+
}), getUserConfigurableProviders(w.providers).some(function (p) {
|
|
23213
|
+
var _p$requiredTools;
|
|
23214
|
+
return ((_p$requiredTools = p.requiredTools) === null || _p$requiredTools === void 0 ? void 0 : _p$requiredTools.length) > 0;
|
|
23215
|
+
}) && /*#__PURE__*/jsx("div", {
|
|
23216
|
+
className: "flex flex-wrap gap-1 ml-1",
|
|
23217
|
+
children: getUserConfigurableProviders(w.providers).filter(function (p) {
|
|
23218
|
+
var _p$requiredTools2;
|
|
23219
|
+
return ((_p$requiredTools2 = p.requiredTools) === null || _p$requiredTools2 === void 0 ? void 0 : _p$requiredTools2.length) > 0;
|
|
23220
|
+
}).flatMap(function (p) {
|
|
23221
|
+
return p.requiredTools.map(function (tool) {
|
|
23222
|
+
return /*#__PURE__*/jsx("span", {
|
|
23223
|
+
className: "text-[10px] font-mono px-1.5 py-0.5 rounded bg-white/5 opacity-60",
|
|
23224
|
+
children: tool
|
|
23225
|
+
}, "".concat(p.type, "-").concat(tool));
|
|
23226
|
+
});
|
|
23227
|
+
})
|
|
23228
|
+
})]
|
|
23229
|
+
})]
|
|
23230
|
+
}, idx);
|
|
23231
|
+
})
|
|
23232
|
+
})]
|
|
23233
|
+
}), widget.appOrigin && /*#__PURE__*/jsxs("div", {
|
|
23234
|
+
className: "flex items-center gap-1.5 text-xs opacity-50",
|
|
23235
|
+
children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
|
|
23236
|
+
icon: "laptop",
|
|
23237
|
+
className: "h-3 w-3"
|
|
23238
|
+
}), /*#__PURE__*/jsxs("span", {
|
|
23239
|
+
children: ["Built for ", widget.appOrigin]
|
|
23240
|
+
})]
|
|
23241
|
+
}), widget.missingApis && widget.missingApis.length > 0 && /*#__PURE__*/jsx("div", {
|
|
23242
|
+
className: "p-2 rounded bg-yellow-900/30 border border-yellow-700",
|
|
23243
|
+
children: /*#__PURE__*/jsxs("p", {
|
|
23244
|
+
className: "text-xs text-yellow-400",
|
|
23245
|
+
children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
|
|
23246
|
+
icon: "triangle-exclamation",
|
|
23247
|
+
className: "mr-1"
|
|
23248
|
+
}), "Incompatible \u2014 requires ", widget.missingApis.join(", "), " API", widget.missingApis.length !== 1 ? "s" : ""]
|
|
23249
|
+
})
|
|
23250
|
+
}), widget.repository && /*#__PURE__*/jsxs("div", {
|
|
23251
|
+
children: [/*#__PURE__*/jsx("span", {
|
|
23252
|
+
className: "text-xs font-semibold opacity-50 mb-1 block",
|
|
23253
|
+
children: "REPOSITORY"
|
|
23254
|
+
}), /*#__PURE__*/jsx("button", {
|
|
23255
|
+
type: "button",
|
|
23256
|
+
onClick: function onClick() {
|
|
23257
|
+
var _window$mainApi;
|
|
23258
|
+
return (_window$mainApi = window.mainApi) === null || _window$mainApi === void 0 || (_window$mainApi = _window$mainApi.shell) === null || _window$mainApi === void 0 ? void 0 : _window$mainApi.openExternal(widget.repository);
|
|
23259
|
+
},
|
|
23260
|
+
className: "text-sm text-blue-400 hover:text-blue-300 hover:underline transition-colors break-all text-left",
|
|
23261
|
+
children: widget.repository
|
|
23262
|
+
})]
|
|
23263
|
+
}), installError && /*#__PURE__*/jsx("div", {
|
|
23264
|
+
className: "p-2 rounded bg-red-900/30 border border-red-700",
|
|
23265
|
+
children: /*#__PURE__*/jsx("p", {
|
|
23266
|
+
className: "text-xs text-red-400",
|
|
23267
|
+
children: installError
|
|
23268
|
+
})
|
|
23269
|
+
})]
|
|
23270
|
+
}), /*#__PURE__*/jsx("div", {
|
|
23271
|
+
className: "flex items-center justify-end px-6 py-3 border-t ".concat(currentTheme["border-primary-medium"]),
|
|
23272
|
+
children: /*#__PURE__*/jsx(Button, {
|
|
23273
|
+
title: isInstalled ? "Installed" : isInstalling ? "Installing..." : "Install Package",
|
|
23274
|
+
bgColor: isInstalled ? "bg-emerald-600/50" : "bg-blue-600",
|
|
23275
|
+
hoverBackgroundColor: isInstalled || isInstalling ? "" : "hover:bg-blue-700",
|
|
23276
|
+
textSize: "text-sm",
|
|
23277
|
+
padding: "py-1.5 px-4",
|
|
23278
|
+
onClick: onInstall,
|
|
23279
|
+
disabled: isInstalling || isInstalled
|
|
23280
|
+
})
|
|
23281
|
+
})]
|
|
23282
|
+
});
|
|
23283
|
+
};
|
|
23284
|
+
|
|
23285
|
+
function getWidgetSearchQuery(componentKey) {
|
|
23286
|
+
var parts = componentKey.split(".");
|
|
23287
|
+
if (parts.length >= 3) {
|
|
23288
|
+
return {
|
|
23289
|
+
packageName: parts[1],
|
|
23290
|
+
widgetName: parts[2],
|
|
23291
|
+
scope: parts[0]
|
|
23292
|
+
};
|
|
23293
|
+
}
|
|
23294
|
+
return {
|
|
23295
|
+
packageName: null,
|
|
23296
|
+
widgetName: componentKey,
|
|
23297
|
+
scope: null
|
|
23298
|
+
};
|
|
23299
|
+
}
|
|
23300
|
+
|
|
23301
|
+
/**
|
|
23302
|
+
* Convert a raw registry package object into the flat widget shape
|
|
23303
|
+
* expected by RegistryPackageDetail.
|
|
23304
|
+
*/
|
|
23305
|
+
function packageToFlatWidget(pkg) {
|
|
23306
|
+
return {
|
|
23307
|
+
key: "".concat(pkg.name, "/0"),
|
|
23308
|
+
name: pkg.displayName || pkg.name,
|
|
23309
|
+
icon: pkg.icon || null,
|
|
23310
|
+
isRegistry: true,
|
|
23311
|
+
packageName: pkg.name,
|
|
23312
|
+
packageScope: pkg.scope || null,
|
|
23313
|
+
packageDisplayName: pkg.displayName || pkg.name,
|
|
23314
|
+
packageVersion: pkg.version,
|
|
23315
|
+
packageAuthor: pkg.author || "",
|
|
23316
|
+
packageDescription: pkg.description || "",
|
|
23317
|
+
packageTags: pkg.tags || [],
|
|
23318
|
+
packageCategory: pkg.category || "",
|
|
23319
|
+
downloadUrl: pkg.downloadUrl || "",
|
|
23320
|
+
repository: pkg.repository || "",
|
|
23321
|
+
publishedAt: pkg.publishedAt || "",
|
|
23322
|
+
packageWidgets: pkg.widgets || [],
|
|
23323
|
+
appOrigin: pkg.appOrigin || null,
|
|
23324
|
+
packageProviders: pkg.providers || [],
|
|
23325
|
+
missingApis: []
|
|
23326
|
+
};
|
|
23327
|
+
}
|
|
23328
|
+
|
|
23329
|
+
/**
|
|
23330
|
+
* WidgetNotFound — rendered in place of an unresolvable widget.
|
|
23331
|
+
*
|
|
23332
|
+
* Shows the existing "Widget Not Found" error display and adds a
|
|
23333
|
+
* "Find in Registry" button that does an exact registry lookup and
|
|
23334
|
+
* opens an install modal.
|
|
23335
|
+
*/
|
|
23336
|
+
var WidgetNotFound = function WidgetNotFound(_ref) {
|
|
23337
|
+
var component = _ref.component;
|
|
23338
|
+
var _useState = useState(false),
|
|
23339
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
23340
|
+
showModal = _useState2[0],
|
|
23341
|
+
setShowModal = _useState2[1];
|
|
23342
|
+
var _useState3 = useState(null),
|
|
23343
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
23344
|
+
registryWidget = _useState4[0],
|
|
23345
|
+
setRegistryWidget = _useState4[1];
|
|
23346
|
+
var _useState5 = useState(false),
|
|
23347
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
23348
|
+
isLoading = _useState6[0],
|
|
23349
|
+
setIsLoading = _useState6[1];
|
|
23350
|
+
var _useState7 = useState(false),
|
|
23351
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
23352
|
+
notFound = _useState8[0],
|
|
23353
|
+
setNotFound = _useState8[1];
|
|
23354
|
+
var _useState9 = useState(false),
|
|
23355
|
+
_useState0 = _slicedToArray(_useState9, 2),
|
|
23356
|
+
isInstalling = _useState0[0],
|
|
23357
|
+
setIsInstalling = _useState0[1];
|
|
23358
|
+
var _useState1 = useState(null),
|
|
23359
|
+
_useState10 = _slicedToArray(_useState1, 2),
|
|
23360
|
+
installError = _useState10[0],
|
|
23361
|
+
setInstallError = _useState10[1];
|
|
23362
|
+
var lookupWidget = useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
23363
|
+
var _getWidgetSearchQuery, packageName, widgetName, pkg, result;
|
|
23364
|
+
return _regeneratorRuntime.wrap(function (_context) {
|
|
23365
|
+
while (1) switch (_context.prev = _context.next) {
|
|
23366
|
+
case 0:
|
|
23367
|
+
setShowModal(true);
|
|
23368
|
+
setIsLoading(true);
|
|
23369
|
+
setNotFound(false);
|
|
23370
|
+
setRegistryWidget(null);
|
|
23371
|
+
setInstallError(null);
|
|
23372
|
+
_getWidgetSearchQuery = getWidgetSearchQuery(component), packageName = _getWidgetSearchQuery.packageName, widgetName = _getWidgetSearchQuery.widgetName;
|
|
23373
|
+
_context.prev = 1;
|
|
23374
|
+
pkg = null; // Scoped ID — exact package lookup
|
|
23375
|
+
if (!packageName) {
|
|
23376
|
+
_context.next = 3;
|
|
23377
|
+
break;
|
|
23378
|
+
}
|
|
23379
|
+
_context.next = 2;
|
|
23380
|
+
return window.mainApi.registry.getPackage(packageName);
|
|
23381
|
+
case 2:
|
|
23382
|
+
pkg = _context.sent;
|
|
23383
|
+
case 3:
|
|
23384
|
+
if (pkg) {
|
|
23385
|
+
_context.next = 5;
|
|
23386
|
+
break;
|
|
23387
|
+
}
|
|
23388
|
+
_context.next = 4;
|
|
23389
|
+
return window.mainApi.registry.search(widgetName);
|
|
23390
|
+
case 4:
|
|
23391
|
+
result = _context.sent;
|
|
23392
|
+
pkg = (result.packages || []).find(function (p) {
|
|
23393
|
+
return (p.widgets || []).some(function (w) {
|
|
23394
|
+
return w.name === widgetName;
|
|
23395
|
+
});
|
|
23396
|
+
});
|
|
23397
|
+
case 5:
|
|
23398
|
+
if (pkg) {
|
|
23399
|
+
setRegistryWidget(packageToFlatWidget(pkg));
|
|
23400
|
+
} else {
|
|
23401
|
+
setNotFound(true);
|
|
23402
|
+
}
|
|
23403
|
+
_context.next = 7;
|
|
23404
|
+
break;
|
|
23405
|
+
case 6:
|
|
23406
|
+
_context.prev = 6;
|
|
23407
|
+
_context["catch"](1);
|
|
23408
|
+
setNotFound(true);
|
|
23409
|
+
case 7:
|
|
23410
|
+
setIsLoading(false);
|
|
23411
|
+
case 8:
|
|
23412
|
+
case "end":
|
|
23413
|
+
return _context.stop();
|
|
23414
|
+
}
|
|
23415
|
+
}, _callee, null, [[1, 6]]);
|
|
23416
|
+
})), [component]);
|
|
23417
|
+
var handleInstall = useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
23418
|
+
var packageName, packageScope, downloadUrl, packageVersion, scopedId, resolvedUrl, _t2;
|
|
23419
|
+
return _regeneratorRuntime.wrap(function (_context2) {
|
|
23420
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
23421
|
+
case 0:
|
|
23422
|
+
if (registryWidget) {
|
|
23423
|
+
_context2.next = 1;
|
|
23424
|
+
break;
|
|
23425
|
+
}
|
|
23426
|
+
return _context2.abrupt("return");
|
|
23427
|
+
case 1:
|
|
23428
|
+
setIsInstalling(true);
|
|
23429
|
+
setInstallError(null);
|
|
23430
|
+
_context2.prev = 2;
|
|
23431
|
+
packageName = registryWidget.packageName, packageScope = registryWidget.packageScope, downloadUrl = registryWidget.downloadUrl, packageVersion = registryWidget.packageVersion;
|
|
23432
|
+
scopedId = packageScope ? "@".concat(packageScope.replace(/^@/, ""), "/").concat(packageName) : packageName;
|
|
23433
|
+
resolvedUrl = downloadUrl.replace(/\{version\}/g, packageVersion).replace(/\{name\}/g, packageName);
|
|
23434
|
+
_context2.next = 3;
|
|
23435
|
+
return window.mainApi.widgets.install(scopedId, resolvedUrl);
|
|
23436
|
+
case 3:
|
|
23437
|
+
setShowModal(false);
|
|
23438
|
+
_context2.next = 5;
|
|
23439
|
+
break;
|
|
23440
|
+
case 4:
|
|
23441
|
+
_context2.prev = 4;
|
|
23442
|
+
_t2 = _context2["catch"](2);
|
|
23443
|
+
setInstallError(_t2.message || "Failed to install package");
|
|
23444
|
+
case 5:
|
|
23445
|
+
setIsInstalling(false);
|
|
23446
|
+
case 6:
|
|
23447
|
+
case "end":
|
|
23448
|
+
return _context2.stop();
|
|
23449
|
+
}
|
|
23450
|
+
}, _callee2, null, [[2, 4]]);
|
|
23451
|
+
})), [registryWidget]);
|
|
23452
|
+
return /*#__PURE__*/jsxs(Fragment, {
|
|
23453
|
+
children: [/*#__PURE__*/jsxs("div", {
|
|
23454
|
+
className: "flex flex-col h-full justify-center items-center w-full z-10 gap-2 p-4 text-center",
|
|
23455
|
+
children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
|
|
23456
|
+
icon: "triangle-exclamation",
|
|
23457
|
+
className: "h-6 w-6 text-amber-500"
|
|
23458
|
+
}), /*#__PURE__*/jsx("div", {
|
|
23459
|
+
className: "text-sm font-semibold text-gray-300",
|
|
23460
|
+
children: "Widget Not Found"
|
|
23461
|
+
}), /*#__PURE__*/jsx("div", {
|
|
23462
|
+
className: "text-xs text-gray-500 font-mono",
|
|
23463
|
+
children: component
|
|
23464
|
+
}), /*#__PURE__*/jsx("div", {
|
|
23465
|
+
className: "text-xs text-gray-600 mt-1",
|
|
23466
|
+
children: "This widget may have been uninstalled or renamed."
|
|
23467
|
+
}), /*#__PURE__*/jsxs("button", {
|
|
23468
|
+
type: "button",
|
|
23469
|
+
className: "flex items-center gap-1.5 text-xs text-blue-400 hover:text-blue-300 transition-colors mt-2",
|
|
23470
|
+
onClick: lookupWidget,
|
|
23471
|
+
children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
|
|
23472
|
+
icon: "magnifying-glass",
|
|
23473
|
+
className: "h-3 w-3"
|
|
23474
|
+
}), "Find in Registry"]
|
|
23475
|
+
})]
|
|
23476
|
+
}), showModal && /*#__PURE__*/jsxs(Modal, {
|
|
23477
|
+
title: "Registry Package",
|
|
23478
|
+
width: "w-1/3",
|
|
23479
|
+
height: "h-auto",
|
|
23480
|
+
onClose: function onClose() {
|
|
23481
|
+
return setShowModal(false);
|
|
23482
|
+
},
|
|
23483
|
+
children: [isLoading && /*#__PURE__*/jsx("div", {
|
|
23484
|
+
className: "flex items-center justify-center p-12",
|
|
23485
|
+
children: /*#__PURE__*/jsx(FontAwesomeIcon, {
|
|
23486
|
+
icon: "spinner",
|
|
23487
|
+
className: "h-5 w-5 text-gray-400 animate-spin"
|
|
23488
|
+
})
|
|
23489
|
+
}), !isLoading && registryWidget && /*#__PURE__*/jsx(RegistryPackageDetail, {
|
|
23490
|
+
widget: registryWidget,
|
|
23491
|
+
onInstall: handleInstall,
|
|
23492
|
+
isInstalling: isInstalling,
|
|
23493
|
+
installError: installError
|
|
23494
|
+
}), !isLoading && notFound && /*#__PURE__*/jsxs("div", {
|
|
23495
|
+
className: "flex flex-col items-center justify-center gap-3 p-12 text-center",
|
|
23496
|
+
children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
|
|
23497
|
+
icon: "triangle-exclamation",
|
|
23498
|
+
className: "h-6 w-6 text-amber-500"
|
|
23499
|
+
}), /*#__PURE__*/jsx("div", {
|
|
23500
|
+
className: "text-sm text-gray-400",
|
|
23501
|
+
children: "This widget is not available in the registry."
|
|
23502
|
+
}), /*#__PURE__*/jsx(Button, {
|
|
23503
|
+
title: "Close",
|
|
23504
|
+
bgColor: "bg-gray-600",
|
|
23505
|
+
hoverBackgroundColor: "hover:bg-gray-700",
|
|
23506
|
+
textSize: "text-sm",
|
|
23507
|
+
padding: "py-1.5 px-4",
|
|
23508
|
+
onClick: function onClick() {
|
|
23509
|
+
return setShowModal(false);
|
|
23510
|
+
}
|
|
23511
|
+
})]
|
|
23512
|
+
})]
|
|
23513
|
+
})]
|
|
23514
|
+
});
|
|
23515
|
+
};
|
|
23516
|
+
|
|
23117
23517
|
var GRID_CELL_WIDGET_TYPE = "grid-cell-widget";
|
|
23118
23518
|
var SIDEBAR_WIDGET_TYPE = "sidebar-widget";
|
|
23119
23519
|
|
|
@@ -25138,21 +25538,8 @@ function renderComponent(component, id) {
|
|
|
25138
25538
|
// WidgetFactory.render() always returns a React element (truthy),
|
|
25139
25539
|
// so the old ternary fallback could never fire.
|
|
25140
25540
|
if (!isWidgetResolvable(component)) {
|
|
25141
|
-
return /*#__PURE__*/
|
|
25142
|
-
|
|
25143
|
-
children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
|
|
25144
|
-
icon: "triangle-exclamation",
|
|
25145
|
-
className: "h-6 w-6 text-amber-500"
|
|
25146
|
-
}), /*#__PURE__*/jsx("div", {
|
|
25147
|
-
className: "text-sm font-semibold text-gray-300",
|
|
25148
|
-
children: "Widget Not Found"
|
|
25149
|
-
}), /*#__PURE__*/jsx("div", {
|
|
25150
|
-
className: "text-xs text-gray-500 font-mono",
|
|
25151
|
-
children: component
|
|
25152
|
-
}), /*#__PURE__*/jsx("div", {
|
|
25153
|
-
className: "text-xs text-gray-600 mt-1",
|
|
25154
|
-
children: "This widget may have been uninstalled or renamed."
|
|
25155
|
-
})]
|
|
25541
|
+
return /*#__PURE__*/jsx(WidgetNotFound, {
|
|
25542
|
+
component: component
|
|
25156
25543
|
});
|
|
25157
25544
|
}
|
|
25158
25545
|
if ("height" in params) {
|
|
@@ -43910,165 +44297,6 @@ var InstallWidgetPicker = function InstallWidgetPicker(_ref2) {
|
|
|
43910
44297
|
});
|
|
43911
44298
|
};
|
|
43912
44299
|
|
|
43913
|
-
var RegistryPackageDetail = function RegistryPackageDetail(_ref) {
|
|
43914
|
-
var widget = _ref.widget,
|
|
43915
|
-
onInstall = _ref.onInstall,
|
|
43916
|
-
_ref$isInstalling = _ref.isInstalling,
|
|
43917
|
-
isInstalling = _ref$isInstalling === void 0 ? false : _ref$isInstalling,
|
|
43918
|
-
_ref$installError = _ref.installError,
|
|
43919
|
-
installError = _ref$installError === void 0 ? null : _ref$installError,
|
|
43920
|
-
_ref$isInstalled = _ref.isInstalled,
|
|
43921
|
-
isInstalled = _ref$isInstalled === void 0 ? false : _ref$isInstalled;
|
|
43922
|
-
var _useContext = useContext(ThemeContext),
|
|
43923
|
-
currentTheme = _useContext.currentTheme;
|
|
43924
|
-
var panelStyles = getStylesForItem(themeObjects.PANEL, currentTheme, {
|
|
43925
|
-
grow: false
|
|
43926
|
-
});
|
|
43927
|
-
if (!widget) return null;
|
|
43928
|
-
return /*#__PURE__*/jsxs("div", {
|
|
43929
|
-
className: "flex flex-col flex-1 min-h-0",
|
|
43930
|
-
children: [/*#__PURE__*/jsxs("div", {
|
|
43931
|
-
className: "flex-1 min-h-0 overflow-y-auto p-6 space-y-6 ".concat(panelStyles.textColor || "text-gray-200"),
|
|
43932
|
-
children: [/*#__PURE__*/jsxs("div", {
|
|
43933
|
-
className: "flex flex-row items-center gap-3",
|
|
43934
|
-
children: [/*#__PURE__*/jsx("div", {
|
|
43935
|
-
className: "h-5 w-5 flex-shrink-0 flex items-center justify-center",
|
|
43936
|
-
children: /*#__PURE__*/jsx(FontAwesomeIcon, {
|
|
43937
|
-
icon: widget.icon || "cube",
|
|
43938
|
-
className: "h-5 w-5"
|
|
43939
|
-
})
|
|
43940
|
-
}), /*#__PURE__*/jsxs("div", {
|
|
43941
|
-
children: [/*#__PURE__*/jsxs("div", {
|
|
43942
|
-
className: "flex items-center gap-2",
|
|
43943
|
-
children: [/*#__PURE__*/jsx(SubHeading3, {
|
|
43944
|
-
title: widget.packageDisplayName,
|
|
43945
|
-
padding: false
|
|
43946
|
-
}), isInstalled && /*#__PURE__*/jsx("span", {
|
|
43947
|
-
className: "text-[10px] px-1.5 py-0.5 rounded bg-emerald-500/20 text-emerald-400 flex-shrink-0",
|
|
43948
|
-
children: "Installed"
|
|
43949
|
-
})]
|
|
43950
|
-
}), /*#__PURE__*/jsxs("div", {
|
|
43951
|
-
className: "flex items-center gap-2 mt-0.5",
|
|
43952
|
-
children: [/*#__PURE__*/jsxs("span", {
|
|
43953
|
-
className: "text-sm opacity-60",
|
|
43954
|
-
children: ["by ", widget.packageAuthor || "Unknown"]
|
|
43955
|
-
}), /*#__PURE__*/jsxs("span", {
|
|
43956
|
-
className: "text-xs px-2 py-0.5 rounded ".concat(currentTheme["bg-primary-medium"], " opacity-70"),
|
|
43957
|
-
children: ["v", widget.packageVersion]
|
|
43958
|
-
})]
|
|
43959
|
-
})]
|
|
43960
|
-
})]
|
|
43961
|
-
}), /*#__PURE__*/jsx("hr", {
|
|
43962
|
-
className: currentTheme["border-primary-medium"]
|
|
43963
|
-
}), widget.packageDescription && /*#__PURE__*/jsx("p", {
|
|
43964
|
-
className: "text-sm",
|
|
43965
|
-
children: widget.packageDescription
|
|
43966
|
-
}), widget.packageTags && widget.packageTags.length > 0 && /*#__PURE__*/jsx("div", {
|
|
43967
|
-
className: "flex flex-wrap gap-1",
|
|
43968
|
-
children: widget.packageTags.map(function (tag) {
|
|
43969
|
-
return /*#__PURE__*/jsx("span", {
|
|
43970
|
-
className: "text-xs px-2 py-0.5 rounded ".concat(currentTheme["bg-primary-medium"], " opacity-60"),
|
|
43971
|
-
children: tag
|
|
43972
|
-
}, tag);
|
|
43973
|
-
})
|
|
43974
|
-
}), /*#__PURE__*/jsxs("div", {
|
|
43975
|
-
children: [/*#__PURE__*/jsx("span", {
|
|
43976
|
-
className: "text-xs font-semibold opacity-50 mb-1 block",
|
|
43977
|
-
children: "INCLUDED WIDGETS"
|
|
43978
|
-
}), /*#__PURE__*/jsx("div", {
|
|
43979
|
-
className: "space-y-1.5",
|
|
43980
|
-
children: (widget.packageWidgets || []).map(function (w, idx) {
|
|
43981
|
-
return /*#__PURE__*/jsxs("div", {
|
|
43982
|
-
className: "p-2 rounded ".concat(currentTheme["bg-primary-medium"]),
|
|
43983
|
-
children: [/*#__PURE__*/jsx("div", {
|
|
43984
|
-
className: "text-sm font-medium",
|
|
43985
|
-
children: w.displayName || w.name
|
|
43986
|
-
}), w.description && /*#__PURE__*/jsx("div", {
|
|
43987
|
-
className: "text-xs opacity-50 mt-0.5",
|
|
43988
|
-
children: w.description
|
|
43989
|
-
}), getUserConfigurableProviders(w.providers).length > 0 && /*#__PURE__*/jsxs("div", {
|
|
43990
|
-
className: "space-y-1 mt-1",
|
|
43991
|
-
children: [/*#__PURE__*/jsx("div", {
|
|
43992
|
-
className: "flex gap-1 flex-wrap",
|
|
43993
|
-
children: getUserConfigurableProviders(w.providers).map(function (p, pidx) {
|
|
43994
|
-
return /*#__PURE__*/jsxs("span", {
|
|
43995
|
-
className: "text-xs px-1.5 py-0.5 rounded bg-blue-900/30 text-blue-400",
|
|
43996
|
-
children: [p.type, p.required ? " *" : ""]
|
|
43997
|
-
}, pidx);
|
|
43998
|
-
})
|
|
43999
|
-
}), getUserConfigurableProviders(w.providers).some(function (p) {
|
|
44000
|
-
var _p$requiredTools;
|
|
44001
|
-
return ((_p$requiredTools = p.requiredTools) === null || _p$requiredTools === void 0 ? void 0 : _p$requiredTools.length) > 0;
|
|
44002
|
-
}) && /*#__PURE__*/jsx("div", {
|
|
44003
|
-
className: "flex flex-wrap gap-1 ml-1",
|
|
44004
|
-
children: getUserConfigurableProviders(w.providers).filter(function (p) {
|
|
44005
|
-
var _p$requiredTools2;
|
|
44006
|
-
return ((_p$requiredTools2 = p.requiredTools) === null || _p$requiredTools2 === void 0 ? void 0 : _p$requiredTools2.length) > 0;
|
|
44007
|
-
}).flatMap(function (p) {
|
|
44008
|
-
return p.requiredTools.map(function (tool) {
|
|
44009
|
-
return /*#__PURE__*/jsx("span", {
|
|
44010
|
-
className: "text-[10px] font-mono px-1.5 py-0.5 rounded bg-white/5 opacity-60",
|
|
44011
|
-
children: tool
|
|
44012
|
-
}, "".concat(p.type, "-").concat(tool));
|
|
44013
|
-
});
|
|
44014
|
-
})
|
|
44015
|
-
})]
|
|
44016
|
-
})]
|
|
44017
|
-
}, idx);
|
|
44018
|
-
})
|
|
44019
|
-
})]
|
|
44020
|
-
}), widget.appOrigin && /*#__PURE__*/jsxs("div", {
|
|
44021
|
-
className: "flex items-center gap-1.5 text-xs opacity-50",
|
|
44022
|
-
children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
|
|
44023
|
-
icon: "laptop",
|
|
44024
|
-
className: "h-3 w-3"
|
|
44025
|
-
}), /*#__PURE__*/jsxs("span", {
|
|
44026
|
-
children: ["Built for ", widget.appOrigin]
|
|
44027
|
-
})]
|
|
44028
|
-
}), widget.missingApis && widget.missingApis.length > 0 && /*#__PURE__*/jsx("div", {
|
|
44029
|
-
className: "p-2 rounded bg-yellow-900/30 border border-yellow-700",
|
|
44030
|
-
children: /*#__PURE__*/jsxs("p", {
|
|
44031
|
-
className: "text-xs text-yellow-400",
|
|
44032
|
-
children: [/*#__PURE__*/jsx(FontAwesomeIcon, {
|
|
44033
|
-
icon: "triangle-exclamation",
|
|
44034
|
-
className: "mr-1"
|
|
44035
|
-
}), "Incompatible \u2014 requires ", widget.missingApis.join(", "), " API", widget.missingApis.length !== 1 ? "s" : ""]
|
|
44036
|
-
})
|
|
44037
|
-
}), widget.repository && /*#__PURE__*/jsxs("div", {
|
|
44038
|
-
children: [/*#__PURE__*/jsx("span", {
|
|
44039
|
-
className: "text-xs font-semibold opacity-50 mb-1 block",
|
|
44040
|
-
children: "REPOSITORY"
|
|
44041
|
-
}), /*#__PURE__*/jsx("button", {
|
|
44042
|
-
type: "button",
|
|
44043
|
-
onClick: function onClick() {
|
|
44044
|
-
var _window$mainApi;
|
|
44045
|
-
return (_window$mainApi = window.mainApi) === null || _window$mainApi === void 0 || (_window$mainApi = _window$mainApi.shell) === null || _window$mainApi === void 0 ? void 0 : _window$mainApi.openExternal(widget.repository);
|
|
44046
|
-
},
|
|
44047
|
-
className: "text-sm text-blue-400 hover:text-blue-300 hover:underline transition-colors break-all text-left",
|
|
44048
|
-
children: widget.repository
|
|
44049
|
-
})]
|
|
44050
|
-
}), installError && /*#__PURE__*/jsx("div", {
|
|
44051
|
-
className: "p-2 rounded bg-red-900/30 border border-red-700",
|
|
44052
|
-
children: /*#__PURE__*/jsx("p", {
|
|
44053
|
-
className: "text-xs text-red-400",
|
|
44054
|
-
children: installError
|
|
44055
|
-
})
|
|
44056
|
-
})]
|
|
44057
|
-
}), /*#__PURE__*/jsx("div", {
|
|
44058
|
-
className: "flex items-center justify-end px-6 py-3 border-t ".concat(currentTheme["border-primary-medium"]),
|
|
44059
|
-
children: /*#__PURE__*/jsx(Button, {
|
|
44060
|
-
title: isInstalled ? "Installed" : isInstalling ? "Installing..." : "Install Package",
|
|
44061
|
-
bgColor: isInstalled ? "bg-emerald-600/50" : "bg-blue-600",
|
|
44062
|
-
hoverBackgroundColor: isInstalled || isInstalling ? "" : "hover:bg-blue-700",
|
|
44063
|
-
textSize: "text-sm",
|
|
44064
|
-
padding: "py-1.5 px-4",
|
|
44065
|
-
onClick: onInstall,
|
|
44066
|
-
disabled: isInstalling || isInstalled
|
|
44067
|
-
})
|
|
44068
|
-
})]
|
|
44069
|
-
});
|
|
44070
|
-
};
|
|
44071
|
-
|
|
44072
44300
|
function _createForOfIteratorHelper$2(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$2(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
44073
44301
|
function _unsupportedIterableToArray$2(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$2(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$2(r, a) : void 0; } }
|
|
44074
44302
|
function _arrayLikeToArray$2(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
@@ -50782,5 +51010,5 @@ var WorkspaceMenu = function WorkspaceMenu(_ref) {
|
|
|
50782
51010
|
|
|
50783
51011
|
ComponentManager.registerContainerTypes(LayoutContainer, LayoutGridContainer);
|
|
50784
51012
|
|
|
50785
|
-
export { ALGOLIA_ANALYTICS_FOR_QUERY, ALGOLIA_ANALYTICS_FOR_QUERY_COMPLETE, ALGOLIA_ANALYTICS_FOR_QUERY_ERROR, ALGOLIA_LIST_INDICES, ALGOLIA_LIST_INDICES_COMPLETE, ALGOLIA_LIST_INDICES_ERROR, AVAILABLE_COLORS, AddMenuItemModal, AdvancedMcpConfig, AppContext, AppSettingsModal, AppThemeScope, AppWrapper, CHOOSE_FILE, CHOOSE_FILE_COMPLETE, CHOOSE_FILE_ERROR, ColorModel, ComponentConfigModel, ComponentManager, ContextModel, DATA_JSON_TO_CSV_FILE, DATA_JSON_TO_CSV_FILE_COMPLETE, DATA_JSON_TO_CSV_FILE_ERROR, DATA_JSON_TO_CSV_STRING, DATA_JSON_TO_CSV_STRING_COMPLETE, DATA_JSON_TO_CSV_STRING_ERROR, DATA_READ_FROM_FILE, DATA_READ_FROM_FILE_COMPLETE, DATA_READ_FROM_FILE_ERROR, DATA_SAVE_TO_FILE, DATA_SAVE_TO_FILE_COMPLETE, DATA_SAVE_TO_FILE_ERROR, DashCommandPalette, DashNavbar, DashSidebar, DashTabBar, DashboardStage as Dashboard, DashboardApi, DashboardContext, DashboardFooter, DashboardHeader, DashboardMenuItem, DashboardModel, DashboardMonitor, DashboardPublisher, DashboardStage, DashboardThemeProvider, DashboardWizardModal, DashboardWrapper, ElectronDashboardApi, ErrorBoundary, ExternalWidget, GRID_CELL_WIDGET_TYPE, HARMONY_STRATEGIES, LAYOUT_LIST, LAYOUT_LIST_COMPLETE, LAYOUT_LIST_ERROR, LAYOUT_SAVE, LAYOUT_SAVE_COMPLETE, LAYOUT_SAVE_ERROR, Layout, LayoutBuilder, LayoutBuilderAddItemModal, LayoutBuilderConfigContainerMenuItem, LayoutBuilderConfigMenuItem, LayoutBuilderConfigModal, LayoutBuilderEditItemModal, LayoutBuilderEventModal, LayoutBuilderGridItem, LayoutContainer, LayoutDragBuilder, LayoutDragBuilderEdit, LayoutGridContainer, LayoutManagerModal, LayoutModel, LayoutQuickAddMenu, MCP_CALL_TOOL_COMPLETE, MCP_CALL_TOOL_ERROR, MCP_GET_CATALOG_COMPLETE, MCP_GET_CATALOG_ERROR, MCP_LIST_RESOURCES_COMPLETE, MCP_LIST_RESOURCES_ERROR, MCP_LIST_TOOLS_COMPLETE, MCP_LIST_TOOLS_ERROR, MCP_READ_RESOURCE_COMPLETE, MCP_READ_RESOURCE_ERROR, MCP_RUN_AUTH_COMPLETE, MCP_RUN_AUTH_ERROR, MCP_SERVER_STATUS_COMPLETE, MCP_SERVER_STATUS_ERROR, MCP_START_SERVER_COMPLETE, MCP_START_SERVER_ERROR, MCP_STOP_SERVER_COMPLETE, MCP_STOP_SERVER_ERROR, MENU_ITEMS_DELETE, MENU_ITEMS_DELETE_COMPLETE, MENU_ITEMS_DELETE_ERROR, MENU_ITEMS_LIST, MENU_ITEMS_LIST_COMPLETE, MENU_ITEMS_LIST_ERROR, MENU_ITEMS_SAVE, MENU_ITEMS_SAVE_COMPLETE, MENU_ITEMS_SAVE_ERROR, MainMenu, MainMenuItem, MainMenuSection, McpServerPicker, MenuItemModel, MenuSlideOverlay, MergeCellsModal, MissingProviderPrompt, MockDashboardApi, PROVIDER_DELETE_COMPLETE, PROVIDER_DELETE_ERROR, PROVIDER_GET_COMPLETE, PROVIDER_GET_ERROR, PROVIDER_LIST_COMPLETE, PROVIDER_LIST_ERROR, PROVIDER_SAVE_COMPLETE, PROVIDER_SAVE_ERROR, PanelCode, PanelEditItem, PanelEditItemHandlers, PanelEditItemNotifications, ProviderContext, ProviderErrorBoundary, ProviderForm, ProviderSelector, SECURE_STORAGE_ENCRYPT_STRING, SECURE_STORAGE_ENCRYPT_STRING_COMPLETE, SECURE_STORAGE_ENCRYPT_STRING_ERROR, SECURE_STORE_ENCRYPTION_CHECK, SECURE_STORE_ENCRYPTION_CHECK_COMPLETE, SECURE_STORE_ENCRYPTION_CHECK_ERROR, SECURE_STORE_GET_DATA, SECURE_STORE_GET_DATA_COMPLETE, SECURE_STORE_GET_DATA_ERROR, SECURE_STORE_SET_DATA, SECURE_STORE_SET_DATA_COMPLETE, SECURE_STORE_SET_DATA_ERROR, SETTINGS_GET, SETTINGS_GET_COMPLETE, SETTINGS_GET_ERROR, SETTINGS_SAVE, SETTINGS_SAVE_COMPLETE, SETTINGS_SAVE_ERROR, SIDEBAR_WIDGET_TYPE, SettingsModel, SideMenu, SplitCellModal, THEME_DELETE, THEME_DELETE_COMPLETE, THEME_DELETE_ERROR, THEME_EXTRACT_FROM_URL, THEME_EXTRACT_FROM_URL_COMPLETE, THEME_EXTRACT_FROM_URL_ERROR, THEME_LIST, THEME_LIST_COMPLETE, THEME_LIST_ERROR, THEME_MAP_PALETTE, THEME_MAP_PALETTE_COMPLETE, THEME_MAP_PALETTE_ERROR, THEME_SAVE, THEME_SAVE_COMPLETE, THEME_SAVE_ERROR, ThemeApi, ThemeColorDots, ThemeManagerModal, ThemeModel, ThemeWrapper, WELCOME_STORAGE_KEY, WORKSPACE_DELETE, WORKSPACE_DELETE_COMPLETE, WORKSPACE_DELETE_ERROR, WORKSPACE_LIST, WORKSPACE_LIST_COMPLETE, WORKSPACE_LIST_ERROR, WORKSPACE_SAVE, WORKSPACE_SAVE_COMPLETE, WORKSPACE_SAVE_ERROR, WebDashboardApi, WelcomePrompt, Widget, WidgetApi, WidgetConfigPanel, WidgetContext, WidgetFactory, WidgetPopoutStage, WidgetProviderWrapper, WidgetSidebar, WizardCustomizeStep, WizardDiscoverStep, Workspace, WorkspaceContext, WorkspaceFooter, WorkspaceMenu, WorkspaceModel, addChildToLayoutItem, addItemToItemLayout, buildMcpConfigFromOverrides, canHaveChildren, changeDirectionForLayoutItem, createProviderRegistry, deriveFormFields, envMappingToRows, evaluateBundle, extractWidgetConfigs, formStateToMcpJson, formatFieldName, generateCustomTheme, generateHarmonyTheme, generateRandomTheme, generateThemeName, getBorderStyle, getChildrenForLayoutItem, getComponentInLayout, getContainerBorderColor, getContainerColor, getIndexOfLayoutChildrenForItem, getIndexOfLayoutItem, getLayoutItemById, getLayoutItemForWorkspace, getNearestParentWorkspace, getNextHighestId, getNextHighestItemInLayout, getNextHighestOrder, getNextHighestParentId, getNextLowestItemInLayout, getParentForLayoutItem, getParentWorkspaceForItem, getThemePresets, getUserConfigurableProviders, getWidgetsForWorkspace, getWorkspacesForWorkspace, headerTemplateToRows, isContainer, isLikelySecret, isMaxOrderForItem, isMinOrderForItem, isWidget, isWidgetResolvable, isWorkspace, layoutItemHasWorkspaceAsChild, loadWidgetBundle, mcpJsonToFormState, numChildrenForLayout, removeItemFromLayout, renderComponent, renderGridLayout, renderGridLayoutFlow, _renderLayout as renderLayout, renderLayoutMenu, replaceItemInLayout, resolveIcon, setHostModules, traverseParentTree, updateLayoutItem, updateParentForItem, useDashboard, useMcpDashServer, useMcpProvider, useNotifications, useProvider, useProviderClient, useScheduler, useWebSocketProvider, useWidgetEvents, useWidgetProviders, useWidgetSchedulerStatus, useWizardState, validateCellMerge, validateGridCell, validateGridPlacement, validateWidgetPlacement, widgetCountToTemplate, withProviderDetection };
|
|
51013
|
+
export { ALGOLIA_ANALYTICS_FOR_QUERY, ALGOLIA_ANALYTICS_FOR_QUERY_COMPLETE, ALGOLIA_ANALYTICS_FOR_QUERY_ERROR, ALGOLIA_LIST_INDICES, ALGOLIA_LIST_INDICES_COMPLETE, ALGOLIA_LIST_INDICES_ERROR, AVAILABLE_COLORS, AddMenuItemModal, AdvancedMcpConfig, AppContext, AppSettingsModal, AppThemeScope, AppWrapper, CHOOSE_FILE, CHOOSE_FILE_COMPLETE, CHOOSE_FILE_ERROR, ColorModel, ComponentConfigModel, ComponentManager, ContextModel, DATA_JSON_TO_CSV_FILE, DATA_JSON_TO_CSV_FILE_COMPLETE, DATA_JSON_TO_CSV_FILE_ERROR, DATA_JSON_TO_CSV_STRING, DATA_JSON_TO_CSV_STRING_COMPLETE, DATA_JSON_TO_CSV_STRING_ERROR, DATA_READ_FROM_FILE, DATA_READ_FROM_FILE_COMPLETE, DATA_READ_FROM_FILE_ERROR, DATA_SAVE_TO_FILE, DATA_SAVE_TO_FILE_COMPLETE, DATA_SAVE_TO_FILE_ERROR, DashCommandPalette, DashNavbar, DashSidebar, DashTabBar, DashboardStage as Dashboard, DashboardApi, DashboardContext, DashboardFooter, DashboardHeader, DashboardMenuItem, DashboardModel, DashboardMonitor, DashboardPublisher, DashboardStage, DashboardThemeProvider, DashboardWizardModal, DashboardWrapper, ElectronDashboardApi, ErrorBoundary, ExternalWidget, GRID_CELL_WIDGET_TYPE, HARMONY_STRATEGIES, LAYOUT_LIST, LAYOUT_LIST_COMPLETE, LAYOUT_LIST_ERROR, LAYOUT_SAVE, LAYOUT_SAVE_COMPLETE, LAYOUT_SAVE_ERROR, Layout, LayoutBuilder, LayoutBuilderAddItemModal, LayoutBuilderConfigContainerMenuItem, LayoutBuilderConfigMenuItem, LayoutBuilderConfigModal, LayoutBuilderEditItemModal, LayoutBuilderEventModal, LayoutBuilderGridItem, LayoutContainer, LayoutDragBuilder, LayoutDragBuilderEdit, LayoutGridContainer, LayoutManagerModal, LayoutModel, LayoutQuickAddMenu, MCP_CALL_TOOL_COMPLETE, MCP_CALL_TOOL_ERROR, MCP_GET_CATALOG_COMPLETE, MCP_GET_CATALOG_ERROR, MCP_LIST_RESOURCES_COMPLETE, MCP_LIST_RESOURCES_ERROR, MCP_LIST_TOOLS_COMPLETE, MCP_LIST_TOOLS_ERROR, MCP_READ_RESOURCE_COMPLETE, MCP_READ_RESOURCE_ERROR, MCP_RUN_AUTH_COMPLETE, MCP_RUN_AUTH_ERROR, MCP_SERVER_STATUS_COMPLETE, MCP_SERVER_STATUS_ERROR, MCP_START_SERVER_COMPLETE, MCP_START_SERVER_ERROR, MCP_STOP_SERVER_COMPLETE, MCP_STOP_SERVER_ERROR, MENU_ITEMS_DELETE, MENU_ITEMS_DELETE_COMPLETE, MENU_ITEMS_DELETE_ERROR, MENU_ITEMS_LIST, MENU_ITEMS_LIST_COMPLETE, MENU_ITEMS_LIST_ERROR, MENU_ITEMS_SAVE, MENU_ITEMS_SAVE_COMPLETE, MENU_ITEMS_SAVE_ERROR, MainMenu, MainMenuItem, MainMenuSection, McpServerPicker, MenuItemModel, MenuSlideOverlay, MergeCellsModal, MissingProviderPrompt, MockDashboardApi, PROVIDER_DELETE_COMPLETE, PROVIDER_DELETE_ERROR, PROVIDER_GET_COMPLETE, PROVIDER_GET_ERROR, PROVIDER_LIST_COMPLETE, PROVIDER_LIST_ERROR, PROVIDER_SAVE_COMPLETE, PROVIDER_SAVE_ERROR, PanelCode, PanelEditItem, PanelEditItemHandlers, PanelEditItemNotifications, ProviderContext, ProviderErrorBoundary, ProviderForm, ProviderSelector, SECURE_STORAGE_ENCRYPT_STRING, SECURE_STORAGE_ENCRYPT_STRING_COMPLETE, SECURE_STORAGE_ENCRYPT_STRING_ERROR, SECURE_STORE_ENCRYPTION_CHECK, SECURE_STORE_ENCRYPTION_CHECK_COMPLETE, SECURE_STORE_ENCRYPTION_CHECK_ERROR, SECURE_STORE_GET_DATA, SECURE_STORE_GET_DATA_COMPLETE, SECURE_STORE_GET_DATA_ERROR, SECURE_STORE_SET_DATA, SECURE_STORE_SET_DATA_COMPLETE, SECURE_STORE_SET_DATA_ERROR, SETTINGS_GET, SETTINGS_GET_COMPLETE, SETTINGS_GET_ERROR, SETTINGS_SAVE, SETTINGS_SAVE_COMPLETE, SETTINGS_SAVE_ERROR, SIDEBAR_WIDGET_TYPE, SettingsModel, SideMenu, SplitCellModal, THEME_DELETE, THEME_DELETE_COMPLETE, THEME_DELETE_ERROR, THEME_EXTRACT_FROM_URL, THEME_EXTRACT_FROM_URL_COMPLETE, THEME_EXTRACT_FROM_URL_ERROR, THEME_LIST, THEME_LIST_COMPLETE, THEME_LIST_ERROR, THEME_MAP_PALETTE, THEME_MAP_PALETTE_COMPLETE, THEME_MAP_PALETTE_ERROR, THEME_SAVE, THEME_SAVE_COMPLETE, THEME_SAVE_ERROR, ThemeApi, ThemeColorDots, ThemeManagerModal, ThemeModel, ThemeWrapper, WELCOME_STORAGE_KEY, WORKSPACE_DELETE, WORKSPACE_DELETE_COMPLETE, WORKSPACE_DELETE_ERROR, WORKSPACE_LIST, WORKSPACE_LIST_COMPLETE, WORKSPACE_LIST_ERROR, WORKSPACE_SAVE, WORKSPACE_SAVE_COMPLETE, WORKSPACE_SAVE_ERROR, WebDashboardApi, WelcomePrompt, Widget, WidgetApi, WidgetConfigPanel, WidgetContext, WidgetFactory, WidgetNotFound, WidgetPopoutStage, WidgetProviderWrapper, WidgetSidebar, WizardCustomizeStep, WizardDiscoverStep, Workspace, WorkspaceContext, WorkspaceFooter, WorkspaceMenu, WorkspaceModel, addChildToLayoutItem, addItemToItemLayout, buildMcpConfigFromOverrides, canHaveChildren, changeDirectionForLayoutItem, createProviderRegistry, deriveFormFields, envMappingToRows, evaluateBundle, extractWidgetConfigs, formStateToMcpJson, formatFieldName, generateCustomTheme, generateHarmonyTheme, generateRandomTheme, generateThemeName, getBorderStyle, getChildrenForLayoutItem, getComponentInLayout, getContainerBorderColor, getContainerColor, getIndexOfLayoutChildrenForItem, getIndexOfLayoutItem, getLayoutItemById, getLayoutItemForWorkspace, getNearestParentWorkspace, getNextHighestId, getNextHighestItemInLayout, getNextHighestOrder, getNextHighestParentId, getNextLowestItemInLayout, getParentForLayoutItem, getParentWorkspaceForItem, getThemePresets, getUserConfigurableProviders, getWidgetsForWorkspace, getWorkspacesForWorkspace, headerTemplateToRows, isContainer, isLikelySecret, isMaxOrderForItem, isMinOrderForItem, isWidget, isWidgetResolvable, isWorkspace, layoutItemHasWorkspaceAsChild, loadWidgetBundle, mcpJsonToFormState, numChildrenForLayout, removeItemFromLayout, renderComponent, renderGridLayout, renderGridLayoutFlow, _renderLayout as renderLayout, renderLayoutMenu, replaceItemInLayout, resolveIcon, setHostModules, traverseParentTree, updateLayoutItem, updateParentForItem, useDashboard, useMcpDashServer, useMcpProvider, useNotifications, useProvider, useProviderClient, useScheduler, useWebSocketProvider, useWidgetEvents, useWidgetProviders, useWidgetSchedulerStatus, useWizardState, validateCellMerge, validateGridCell, validateGridPlacement, validateWidgetPlacement, widgetCountToTemplate, withProviderDetection };
|
|
50786
51014
|
//# sourceMappingURL=index.esm.js.map
|