@trops/dash-core 0.1.232 → 0.1.234

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.js CHANGED
@@ -49,8 +49,8 @@ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
49
49
  var jsxRuntime__namespace = /*#__PURE__*/_interopNamespaceDefault(jsxRuntime);
50
50
  var ReactDOM__namespace = /*#__PURE__*/_interopNamespaceDefault(ReactDOM);
51
51
 
52
- function ownKeys$G(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
53
- function _objectSpread$G(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$G(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$G(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
52
+ function ownKeys$H(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
53
+ function _objectSpread$H(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$H(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$H(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
54
54
  var event = {
55
55
  list: new Map(),
56
56
  // Map(1) { '<widget-UUID>' => { 'CustomSearchbar[10].searchQueryChanged': [] } }
@@ -112,7 +112,7 @@ var event = {
112
112
  uuid: subscriber["uuid"]
113
113
  };
114
114
  if ("action" in subscriber && subscriber.action !== undefined) {
115
- subscriber["action"](_objectSpread$G({}, objectToSend));
115
+ subscriber["action"](_objectSpread$H({}, objectToSend));
116
116
  }
117
117
  });
118
118
  }
@@ -2619,8 +2619,8 @@ var DashboardWrapper = function DashboardWrapper(_ref) {
2619
2619
  });
2620
2620
  };
2621
2621
 
2622
- function ownKeys$F(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2623
- function _objectSpread$F(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$F(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$F(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2622
+ function ownKeys$G(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2623
+ function _objectSpread$G(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$G(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$G(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2624
2624
  var DashboardThemeProvider = function DashboardThemeProvider(_ref) {
2625
2625
  var themeKey = _ref.themeKey,
2626
2626
  children = _ref.children;
@@ -2632,7 +2632,7 @@ var DashboardThemeProvider = function DashboardThemeProvider(_ref) {
2632
2632
  var dashboardTheme = themes[themeKey];
2633
2633
  var themeValue = dashboardTheme ? dashboardTheme[themeVariant] || null : null;
2634
2634
  if (!themeValue) return null;
2635
- return _objectSpread$F(_objectSpread$F({}, parentContext), {}, {
2635
+ return _objectSpread$G(_objectSpread$G({}, parentContext), {}, {
2636
2636
  currentTheme: themeValue,
2637
2637
  currentThemeKey: themeKey,
2638
2638
  theme: themeValue,
@@ -2650,8 +2650,8 @@ var DashboardThemeProvider = function DashboardThemeProvider(_ref) {
2650
2650
  });
2651
2651
  };
2652
2652
 
2653
- function ownKeys$E(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2654
- function _objectSpread$E(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$E(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$E(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2653
+ function ownKeys$F(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2654
+ function _objectSpread$F(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$F(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$F(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2655
2655
  var AppThemeScope = function AppThemeScope(_ref) {
2656
2656
  var children = _ref.children;
2657
2657
  var ctx = React.useContext(DashReact.ThemeContext);
@@ -2659,7 +2659,7 @@ var AppThemeScope = function AppThemeScope(_ref) {
2659
2659
  children: children
2660
2660
  });
2661
2661
  return /*#__PURE__*/jsxRuntime.jsx(DashReact.ThemeContext.Provider, {
2662
- value: _objectSpread$E(_objectSpread$E({}, ctx), {}, {
2662
+ value: _objectSpread$F(_objectSpread$F({}, ctx), {}, {
2663
2663
  currentTheme: ctx.appTheme,
2664
2664
  currentThemeKey: ctx.appThemeKey,
2665
2665
  theme: ctx.appTheme,
@@ -2771,11 +2771,11 @@ var LayoutContainer = function LayoutContainer(_ref) {
2771
2771
  });
2772
2772
  };
2773
2773
 
2774
- function ownKeys$D(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2775
- function _objectSpread$D(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$D(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$D(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2776
- 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; } } }; }
2777
- 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; } }
2778
- 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; }
2774
+ function ownKeys$E(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2775
+ function _objectSpread$E(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$E(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$E(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2776
+ 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; } } }; }
2777
+ 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; } }
2778
+ 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; }
2779
2779
  /**
2780
2780
  * Layout template definitions for the dashboard template picker.
2781
2781
  *
@@ -3049,12 +3049,12 @@ function createLayoutFromTemplate(template) {
3049
3049
  cols: template.cols,
3050
3050
  gap: "gap-2"
3051
3051
  };
3052
- var _iterator = _createForOfIteratorHelper$f(template.cells),
3052
+ var _iterator = _createForOfIteratorHelper$g(template.cells),
3053
3053
  _step;
3054
3054
  try {
3055
3055
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
3056
3056
  var cell = _step.value;
3057
- grid[cell.key] = _objectSpread$D({
3057
+ grid[cell.key] = _objectSpread$E({
3058
3058
  component: null,
3059
3059
  hide: cell.hide || false
3060
3060
  }, cell.span ? {
@@ -3574,6 +3574,11 @@ var StarRating = function StarRating(_ref) {
3574
3574
  });
3575
3575
  };
3576
3576
 
3577
+ 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; } } }; }
3578
+ 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; } }
3579
+ 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; }
3580
+ function ownKeys$D(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3581
+ function _objectSpread$D(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$D(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$D(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3577
3582
  var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
3578
3583
  var dashboardPackage = _ref.dashboardPackage,
3579
3584
  appId = _ref.appId,
@@ -3787,9 +3792,70 @@ var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
3787
3792
  }));
3788
3793
  return _handleSignIn.apply(this, arguments);
3789
3794
  }
3790
- var compatibility = preview === null || preview === void 0 ? void 0 : preview.compatibility;
3791
3795
  var widgetDeps = (preview === null || preview === void 0 ? void 0 : preview.widgets) || pkg.widgets || [];
3792
3796
  var providers = (preview === null || preview === void 0 ? void 0 : preview.providers) || [];
3797
+
3798
+ // Augment compatibility: check renderer-side ComponentManager for
3799
+ // built-in widgets that the electron-side WidgetRegistry doesn't know about
3800
+ var compatibility = function () {
3801
+ var raw = preview === null || preview === void 0 ? void 0 : preview.compatibility;
3802
+ if (!raw) return raw;
3803
+ var cMap = ComponentManager.componentMap();
3804
+ var augWidgets = _objectSpread$D({}, raw.widgets);
3805
+ var fixedCount = 0;
3806
+ var _loop = function _loop() {
3807
+ var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
3808
+ key = _Object$entries$_i[0],
3809
+ status = _Object$entries$_i[1];
3810
+ if (status !== "unavailable" && status !== "unknown") return 1; // continue
3811
+ // Extract bare widget name (last segment of dotted key)
3812
+ var bareName = key.includes(".") ? key.split(".").pop() : key;
3813
+ // Match by exact key, bare name, or config.name scan
3814
+ if (key in cMap || bareName in cMap || Object.values(cMap).some(function (c) {
3815
+ return c.name === key || c.name === bareName;
3816
+ })) {
3817
+ augWidgets[key] = "installed";
3818
+ fixedCount++;
3819
+ }
3820
+ };
3821
+ for (var _i = 0, _Object$entries = Object.entries(augWidgets); _i < _Object$entries.length; _i++) {
3822
+ if (_loop()) continue;
3823
+ }
3824
+ if (fixedCount === 0) return raw;
3825
+
3826
+ // Recompute summary
3827
+ var installed = 0,
3828
+ toInstall = 0,
3829
+ unavailable = 0,
3830
+ hasUnavailableRequired = false;
3831
+ var _iterator = _createForOfIteratorHelper$f(widgetDeps),
3832
+ _step;
3833
+ try {
3834
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
3835
+ var dep = _step.value;
3836
+ var depKey = dep.scope && dep.packageName && dep.widgetName ? "".concat(dep.scope, ".").concat(dep.packageName, ".").concat(dep.widgetName) : dep.id || dep["package"] || dep.name;
3837
+ var s = augWidgets[depKey] || "unknown";
3838
+ if (s === "installed") installed++;else if (s === "available") toInstall++;else {
3839
+ unavailable++;
3840
+ if (dep.required !== false) hasUnavailableRequired = true;
3841
+ }
3842
+ }
3843
+ } catch (err) {
3844
+ _iterator.e(err);
3845
+ } finally {
3846
+ _iterator.f();
3847
+ }
3848
+ return {
3849
+ compatible: !hasUnavailableRequired,
3850
+ summary: {
3851
+ total: widgetDeps.length,
3852
+ installed: installed,
3853
+ toInstall: toInstall,
3854
+ unavailable: unavailable
3855
+ },
3856
+ widgets: augWidgets
3857
+ };
3858
+ }();
3793
3859
  var wiring = (preview === null || preview === void 0 ? void 0 : preview.wiring) || [];
3794
3860
  function getCompatIcon(status) {
3795
3861
  if (status === "installed") return {
@@ -3895,7 +3961,8 @@ var RegistryDashboardDetail = function RegistryDashboardDetail(_ref) {
3895
3961
  className: "space-y-1.5",
3896
3962
  children: widgetDeps.map(function (w, idx) {
3897
3963
  var _compatibility$widget;
3898
- var status = (compatibility === null || compatibility === void 0 || (_compatibility$widget = compatibility.widgets) === null || _compatibility$widget === void 0 ? void 0 : _compatibility$widget[w["package"] || w.name]) || "unknown";
3964
+ var depKey = w.scope && w.packageName && w.widgetName ? "".concat(w.scope, ".").concat(w.packageName, ".").concat(w.widgetName) : w.id || w["package"] || w.name;
3965
+ var status = (compatibility === null || compatibility === void 0 || (_compatibility$widget = compatibility.widgets) === null || _compatibility$widget === void 0 ? void 0 : _compatibility$widget[depKey]) || "unknown";
3899
3966
  var compat = getCompatIcon(status);
3900
3967
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
3901
3968
  className: "p-2 rounded ".concat(currentTheme["bg-primary-medium"], " flex items-center gap-2"),