@trops/dash-core 0.1.475 → 0.1.477

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
@@ -9393,7 +9393,7 @@ hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBu
9393
9393
  var hasPropertyDescriptors_1 = hasPropertyDescriptors;
9394
9394
 
9395
9395
  var keys = objectKeys$2;
9396
- var hasSymbols$5 = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';
9396
+ var hasSymbols$4 = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';
9397
9397
 
9398
9398
  var toStr$4 = Object.prototype.toString;
9399
9399
  var concat = Array.prototype.concat;
@@ -9426,7 +9426,7 @@ var defineProperty$1 = function (object, name, value, predicate) {
9426
9426
  var defineProperties$1 = function (object, map) {
9427
9427
  var predicates = arguments.length > 2 ? arguments[2] : {};
9428
9428
  var props = keys(map);
9429
- if (hasSymbols$5) {
9429
+ if (hasSymbols$4) {
9430
9430
  props = concat.call(props, Object.getOwnPropertySymbols(map));
9431
9431
  }
9432
9432
  for (var i = 0; i < props.length; i += 1) {
@@ -9492,11 +9492,11 @@ var sign$1 = function sign(number) {
9492
9492
  };
9493
9493
 
9494
9494
  var shams$1;
9495
- var hasRequiredShams;
9495
+ var hasRequiredShams$1;
9496
9496
 
9497
- function requireShams () {
9498
- if (hasRequiredShams) return shams$1;
9499
- hasRequiredShams = 1;
9497
+ function requireShams$1 () {
9498
+ if (hasRequiredShams$1) return shams$1;
9499
+ hasRequiredShams$1 = 1;
9500
9500
 
9501
9501
  /** @type {import('./shams')} */
9502
9502
  /* eslint complexity: [2, 18], max-statements: [2, 33] */
@@ -9545,10 +9545,10 @@ function requireShams () {
9545
9545
  }
9546
9546
 
9547
9547
  var origSymbol = typeof Symbol !== 'undefined' && Symbol;
9548
- var hasSymbolSham = requireShams();
9548
+ var hasSymbolSham = requireShams$1();
9549
9549
 
9550
9550
  /** @type {import('.')} */
9551
- var hasSymbols$4 = function hasNativeSymbols() {
9551
+ var hasSymbols$3 = function hasNativeSymbols() {
9552
9552
  if (typeof origSymbol !== 'function') { return false; }
9553
9553
  if (typeof Symbol !== 'function') { return false; }
9554
9554
  if (typeof origSymbol('foo') !== 'symbol') { return false; }
@@ -9852,7 +9852,7 @@ var ThrowTypeError = $gOPD$1
9852
9852
  }())
9853
9853
  : throwTypeError;
9854
9854
 
9855
- var hasSymbols$3 = hasSymbols$4();
9855
+ var hasSymbols$2 = hasSymbols$3();
9856
9856
 
9857
9857
  var getProto$2 = getProto$3;
9858
9858
  var $ObjectGPO = requireObject_getPrototypeOf();
@@ -9870,7 +9870,7 @@ var INTRINSICS = {
9870
9870
  '%AggregateError%': typeof AggregateError === 'undefined' ? undefined$1 : AggregateError,
9871
9871
  '%Array%': Array,
9872
9872
  '%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined$1 : ArrayBuffer,
9873
- '%ArrayIteratorPrototype%': hasSymbols$3 && getProto$2 ? getProto$2([][Symbol.iterator]()) : undefined$1,
9873
+ '%ArrayIteratorPrototype%': hasSymbols$2 && getProto$2 ? getProto$2([][Symbol.iterator]()) : undefined$1,
9874
9874
  '%AsyncFromSyncIteratorPrototype%': undefined$1,
9875
9875
  '%AsyncFunction%': needsEval,
9876
9876
  '%AsyncGenerator%': needsEval,
@@ -9901,10 +9901,10 @@ var INTRINSICS = {
9901
9901
  '%Int32Array%': typeof Int32Array === 'undefined' ? undefined$1 : Int32Array,
9902
9902
  '%isFinite%': isFinite,
9903
9903
  '%isNaN%': isNaN,
9904
- '%IteratorPrototype%': hasSymbols$3 && getProto$2 ? getProto$2(getProto$2([][Symbol.iterator]())) : undefined$1,
9904
+ '%IteratorPrototype%': hasSymbols$2 && getProto$2 ? getProto$2(getProto$2([][Symbol.iterator]())) : undefined$1,
9905
9905
  '%JSON%': typeof JSON === 'object' ? JSON : undefined$1,
9906
9906
  '%Map%': typeof Map === 'undefined' ? undefined$1 : Map,
9907
- '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols$3 || !getProto$2 ? undefined$1 : getProto$2(new Map()[Symbol.iterator]()),
9907
+ '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols$2 || !getProto$2 ? undefined$1 : getProto$2(new Map()[Symbol.iterator]()),
9908
9908
  '%Math%': Math,
9909
9909
  '%Number%': Number,
9910
9910
  '%Object%': $Object$2,
@@ -9918,11 +9918,11 @@ var INTRINSICS = {
9918
9918
  '%Reflect%': typeof Reflect === 'undefined' ? undefined$1 : Reflect,
9919
9919
  '%RegExp%': RegExp,
9920
9920
  '%Set%': typeof Set === 'undefined' ? undefined$1 : Set,
9921
- '%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols$3 || !getProto$2 ? undefined$1 : getProto$2(new Set()[Symbol.iterator]()),
9921
+ '%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols$2 || !getProto$2 ? undefined$1 : getProto$2(new Set()[Symbol.iterator]()),
9922
9922
  '%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined$1 : SharedArrayBuffer,
9923
9923
  '%String%': String,
9924
- '%StringIteratorPrototype%': hasSymbols$3 && getProto$2 ? getProto$2(''[Symbol.iterator]()) : undefined$1,
9925
- '%Symbol%': hasSymbols$3 ? Symbol : undefined$1,
9924
+ '%StringIteratorPrototype%': hasSymbols$2 && getProto$2 ? getProto$2(''[Symbol.iterator]()) : undefined$1,
9925
+ '%Symbol%': hasSymbols$2 ? Symbol : undefined$1,
9926
9926
  '%SyntaxError%': $SyntaxError$1,
9927
9927
  '%ThrowTypeError%': ThrowTypeError,
9928
9928
  '%TypedArray%': TypedArray,
@@ -10275,12 +10275,12 @@ var callBound$i = function callBoundIntrinsic(name, allowMissing) {
10275
10275
 
10276
10276
  // modified from https://github.com/es-shims/es6-shim
10277
10277
  var objectKeys$1 = objectKeys$2;
10278
- var hasSymbols$2 = requireShams()();
10278
+ var hasSymbols$1 = requireShams$1()();
10279
10279
  var callBound$h = callBound$i;
10280
10280
  var $Object$1 = esObjectAtoms;
10281
10281
  var $push = callBound$h('Array.prototype.push');
10282
10282
  var $propIsEnumerable = callBound$h('Object.prototype.propertyIsEnumerable');
10283
- var originalGetSymbols = hasSymbols$2 ? $Object$1.getOwnPropertySymbols : null;
10283
+ var originalGetSymbols = hasSymbols$1 ? $Object$1.getOwnPropertySymbols : null;
10284
10284
 
10285
10285
  // eslint-disable-next-line no-unused-vars
10286
10286
  var implementation$8 = function assign(target, source1) {
@@ -10294,7 +10294,7 @@ var implementation$8 = function assign(target, source1) {
10294
10294
 
10295
10295
  // step 3.a.ii:
10296
10296
  var keys = objectKeys$1(from);
10297
- var getSymbols = hasSymbols$2 && ($Object$1.getOwnPropertySymbols || originalGetSymbols);
10297
+ var getSymbols = hasSymbols$1 && ($Object$1.getOwnPropertySymbols || originalGetSymbols);
10298
10298
  if (getSymbols) {
10299
10299
  var syms = getSymbols(from);
10300
10300
  for (var j = 0; j < syms.length; ++j) {
@@ -10591,14 +10591,23 @@ var regexp_prototype_flags = flagsBound;
10591
10591
 
10592
10592
  var esGetIterator = {exports: {}};
10593
10593
 
10594
- var hasSymbols$1 = requireShams();
10594
+ var shams;
10595
+ var hasRequiredShams;
10595
10596
 
10596
- /** @type {import('.')} */
10597
- var shams = function hasToStringTagShams() {
10598
- return hasSymbols$1() && !!Symbol.toStringTag;
10599
- };
10597
+ function requireShams () {
10598
+ if (hasRequiredShams) return shams;
10599
+ hasRequiredShams = 1;
10600
+
10601
+ var hasSymbols = requireShams$1();
10602
+
10603
+ /** @type {import('.')} */
10604
+ shams = function hasToStringTagShams() {
10605
+ return hasSymbols() && !!Symbol.toStringTag;
10606
+ };
10607
+ return shams;
10608
+ }
10600
10609
 
10601
- var hasToStringTag$7 = shams();
10610
+ var hasToStringTag$7 = requireShams()();
10602
10611
  var callBound$f = callBound$i;
10603
10612
 
10604
10613
  var $toString$7 = callBound$f('Object.prototype.toString');
@@ -11635,7 +11644,7 @@ var tryStringObject = function tryStringObject(value) {
11635
11644
  /** @type {(receiver: ThisParameterType<typeof Object.prototype.toString>, ...args: Parameters<typeof Object.prototype.toString>) => ReturnType<typeof Object.prototype.toString>} */
11636
11645
  var $toString$6 = callBound$c('Object.prototype.toString');
11637
11646
  var strClass = '[object String]';
11638
- var hasToStringTag$6 = shams();
11647
+ var hasToStringTag$6 = requireShams()();
11639
11648
 
11640
11649
  /** @type {import('.')} */
11641
11650
  var isString$2 = function isString(value) {
@@ -11751,7 +11760,7 @@ var isSet$2 = exported$1 || function isSet(x) {
11751
11760
  var isArguments$1 = isArguments$2;
11752
11761
  var getStopIterationIterator = stopIterationIterator;
11753
11762
 
11754
- if (hasSymbols$4() || requireShams()()) {
11763
+ if (hasSymbols$3() || requireShams$1()()) {
11755
11764
  var $iterator = Symbol.iterator;
11756
11765
  // Symbol is available natively or shammed
11757
11766
  // natively:
@@ -12040,7 +12049,7 @@ var tryDateObject = function tryDateGetDayCall(value) {
12040
12049
  /** @type {(value: unknown) => string} */
12041
12050
  var toStr$2 = callBound$9('Object.prototype.toString');
12042
12051
  var dateClass = '[object Date]';
12043
- var hasToStringTag$5 = shams();
12052
+ var hasToStringTag$5 = requireShams()();
12044
12053
 
12045
12054
  /** @type {import('.')} */
12046
12055
  var isDateObject = function isDateObject(value) {
@@ -12051,7 +12060,7 @@ var isDateObject = function isDateObject(value) {
12051
12060
  };
12052
12061
 
12053
12062
  var callBound$8 = callBound$i;
12054
- var hasToStringTag$4 = shams();
12063
+ var hasToStringTag$4 = requireShams()();
12055
12064
  var hasOwn = hasown;
12056
12065
  var gOPD$1 = gopd$1;
12057
12066
 
@@ -12156,7 +12165,7 @@ var tryNumberObject = function tryNumberObject(value) {
12156
12165
  };
12157
12166
  var $toString$3 = callBound$6('Object.prototype.toString');
12158
12167
  var numClass = '[object Number]';
12159
- var hasToStringTag$3 = shams();
12168
+ var hasToStringTag$3 = requireShams()();
12160
12169
 
12161
12170
  /** @type {import('.')} */
12162
12171
  var isNumberObject = function isNumberObject(value) {
@@ -12183,7 +12192,7 @@ var tryBooleanObject = function booleanBrandCheck(value) {
12183
12192
  }
12184
12193
  };
12185
12194
  var boolClass = '[object Boolean]';
12186
- var hasToStringTag$2 = shams();
12195
+ var hasToStringTag$2 = requireShams()();
12187
12196
 
12188
12197
  /** @type {import('.')} */
12189
12198
  var isBooleanObject = function isBoolean(value) {
@@ -12225,7 +12234,7 @@ function requireSafeRegexTest () {
12225
12234
 
12226
12235
  var callBound$4 = callBound$i;
12227
12236
  var $toString$1 = callBound$4('Object.prototype.toString');
12228
- var hasSymbols = hasSymbols$4();
12237
+ var hasSymbols = hasSymbols$3();
12229
12238
  var safeRegexTest = requireSafeRegexTest();
12230
12239
 
12231
12240
  if (hasSymbols) {
@@ -12671,7 +12680,7 @@ var gOPD = gopd$1;
12671
12680
  var getProto = getProto$3;
12672
12681
 
12673
12682
  var $toString = callBound$2('Object.prototype.toString');
12674
- var hasToStringTag = shams();
12683
+ var hasToStringTag = requireShams()();
12675
12684
 
12676
12685
  var g = typeof globalThis === 'undefined' ? commonjsGlobal : globalThis;
12677
12686
  var typedArrays = availableTypedArrays();
@@ -57732,6 +57741,12 @@ function NotificationsTab(_ref4) {
57732
57741
  // Notifications collection logic but scoped to one workspace.
57733
57742
  var widgetInstances = React.useMemo(function () {
57734
57743
  var out = [];
57744
+ // Dedup by stable id. WorkspaceModel auto-migrates legacy
57745
+ // non-paged workspaces by aliasing pages[0].layout = workspace.layout
57746
+ // (same reference), so visiting both yields duplicate pushes for
57747
+ // every widget. Same stableId formula as providerResolution.js
57748
+ // forEachWidget so the two stay consistent.
57749
+ var seen = new Set();
57735
57750
  var _visit = function visit(item) {
57736
57751
  if (!item) return;
57737
57752
  if (Array.isArray(item)) {
@@ -57739,26 +57754,31 @@ function NotificationsTab(_ref4) {
57739
57754
  return;
57740
57755
  }
57741
57756
  if (item.component) {
57742
- var _config$notifications;
57743
- var config = ComponentManager.resolve(item.component, item);
57744
- if ((config === null || config === void 0 || (_config$notifications = config.notifications) === null || _config$notifications === void 0 ? void 0 : _config$notifications.length) > 0) {
57745
- var _item$userPrefs;
57746
- out.push({
57747
- uuid: item.uuid || item.uuidString,
57748
- title: ((_item$userPrefs = item.userPrefs) === null || _item$userPrefs === void 0 ? void 0 : _item$userPrefs.title) || config.displayName || item.component,
57749
- "package": config["package"] || "Other",
57750
- // Scoped component id (e.g. "trops.google.GoogleWidget")
57751
- // disambiguates rows when several widgets share a
57752
- // title or display the same package label. Mirrors the
57753
- // Listeners tab convention so the user only learns one
57754
- // identification scheme.
57755
- component: item.component,
57756
- // Layout instance id disambiguates two widgets of the
57757
- // SAME component on the dashboard (e.g. two GitHub
57758
- // widgets in the same workspace).
57759
- itemId: item.id,
57760
- notifications: config.notifications
57761
- });
57757
+ var idPart = item.uuidString || item.uuid || item.id;
57758
+ var stableId = idPart != null ? "".concat(item.component, "|").concat(idPart) : null;
57759
+ if (stableId && seen.has(stableId)) ; else {
57760
+ var _config$notifications;
57761
+ if (stableId) seen.add(stableId);
57762
+ var config = ComponentManager.resolve(item.component, item);
57763
+ if ((config === null || config === void 0 || (_config$notifications = config.notifications) === null || _config$notifications === void 0 ? void 0 : _config$notifications.length) > 0) {
57764
+ var _item$userPrefs;
57765
+ out.push({
57766
+ uuid: item.uuid || item.uuidString,
57767
+ title: ((_item$userPrefs = item.userPrefs) === null || _item$userPrefs === void 0 ? void 0 : _item$userPrefs.title) || config.displayName || item.component,
57768
+ "package": config["package"] || "Other",
57769
+ // Scoped component id (e.g. "trops.google.GoogleWidget")
57770
+ // — disambiguates rows when several widgets share a
57771
+ // title or display the same package label. Mirrors the
57772
+ // Listeners tab convention so the user only learns one
57773
+ // identification scheme.
57774
+ component: item.component,
57775
+ // Layout instance id — disambiguates two widgets of the
57776
+ // SAME component on the dashboard (e.g. two GitHub
57777
+ // widgets in the same workspace).
57778
+ itemId: item.id,
57779
+ notifications: config.notifications
57780
+ });
57781
+ }
57762
57782
  }
57763
57783
  }
57764
57784
  if (Array.isArray(item.children)) item.children.forEach(_visit);