sibujs 2.1.0 → 3.0.0

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.
Files changed (62) hide show
  1. package/dist/browser.cjs +324 -273
  2. package/dist/browser.js +4 -4
  3. package/dist/build.cjs +363 -330
  4. package/dist/build.js +10 -10
  5. package/dist/cdn.global.js +8 -8
  6. package/dist/{chunk-ZAQSMOED.js → chunk-2JQUV4Y3.js} +4 -4
  7. package/dist/{chunk-GWWURC5M.js → chunk-2KM2724A.js} +2 -2
  8. package/dist/{chunk-NASX6ST2.js → chunk-4YTVESDX.js} +1 -1
  9. package/dist/chunk-5WD7BYTZ.js +152 -0
  10. package/dist/{chunk-RDTDJCAB.js → chunk-6QZO7MMG.js} +48 -16
  11. package/dist/{chunk-DRUZZAK4.js → chunk-DF3GTP4Q.js} +7 -2
  12. package/dist/{chunk-AMK2TYNW.js → chunk-INBOWHQ3.js} +14 -11
  13. package/dist/{chunk-O6EFQ3KT.js → chunk-KH4OE6WY.js} +5 -5
  14. package/dist/{chunk-V6C4FADE.js → chunk-KZA7ANXP.js} +3 -3
  15. package/dist/chunk-L4DAT4WU.js +400 -0
  16. package/dist/{chunk-WANSMF2L.js → chunk-L52H775O.js} +4 -4
  17. package/dist/{chunk-45YP72ZQ.js → chunk-NEWH4O5U.js} +1 -1
  18. package/dist/{chunk-ON5MMR2J.js → chunk-RJIRT46U.js} +4 -4
  19. package/dist/{chunk-P2HSJDDN.js → chunk-STFTTMO2.js} +2 -2
  20. package/dist/{chunk-WIPZPFBQ.js → chunk-UKMXT5T6.js} +1 -1
  21. package/dist/{chunk-KGYT6UO6.js → chunk-V65KTDZW.js} +3 -3
  22. package/dist/{chunk-CWBVQML6.js → chunk-VSNLICTS.js} +1 -1
  23. package/dist/{chunk-3DZP6OIT.js → chunk-XDKP4T7G.js} +2 -2
  24. package/dist/{chunk-TH2ILCYW.js → chunk-XVYB3J6C.js} +27 -33
  25. package/dist/{chunk-OJ3P4ECI.js → chunk-YMOIAHWA.js} +1 -1
  26. package/dist/data.cjs +332 -298
  27. package/dist/data.js +6 -6
  28. package/dist/devtools.cjs +353 -296
  29. package/dist/devtools.d.cts +1 -1
  30. package/dist/devtools.d.ts +1 -1
  31. package/dist/devtools.js +4 -4
  32. package/dist/ecosystem.cjs +332 -298
  33. package/dist/ecosystem.js +7 -7
  34. package/dist/extras.cjs +372 -328
  35. package/dist/extras.d.cts +1 -1
  36. package/dist/extras.d.ts +1 -1
  37. package/dist/extras.js +19 -19
  38. package/dist/index.cjs +363 -330
  39. package/dist/index.d.cts +26 -36
  40. package/dist/index.d.ts +26 -36
  41. package/dist/index.js +10 -10
  42. package/dist/{introspect-DnIpHQQz.d.ts → introspect-BZWKvQUZ.d.ts} +2 -3
  43. package/dist/{introspect-2TOlQ7oa.d.cts → introspect-DsJlDD2T.d.cts} +2 -3
  44. package/dist/motion.cjs +147 -123
  45. package/dist/motion.js +3 -3
  46. package/dist/patterns.cjs +332 -298
  47. package/dist/patterns.js +5 -5
  48. package/dist/performance.cjs +315 -268
  49. package/dist/performance.js +4 -4
  50. package/dist/plugins.cjs +332 -266
  51. package/dist/plugins.js +6 -6
  52. package/dist/ssr.cjs +340 -270
  53. package/dist/ssr.js +7 -7
  54. package/dist/testing.cjs +167 -146
  55. package/dist/testing.js +2 -2
  56. package/dist/ui.cjs +324 -294
  57. package/dist/ui.js +6 -6
  58. package/dist/widgets.cjs +332 -298
  59. package/dist/widgets.js +6 -6
  60. package/package.json +1 -1
  61. package/dist/chunk-QO3WC6FS.js +0 -384
  62. package/dist/chunk-WZA53FXU.js +0 -149
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  watch
3
- } from "./chunk-45YP72ZQ.js";
3
+ } from "./chunk-NEWH4O5U.js";
4
4
  import {
5
5
  derived
6
- } from "./chunk-DRUZZAK4.js";
6
+ } from "./chunk-DF3GTP4Q.js";
7
7
  import {
8
8
  stripHtml
9
9
  } from "./chunk-UCS6AMJ7.js";
10
10
  import {
11
11
  effect
12
- } from "./chunk-WZA53FXU.js";
12
+ } from "./chunk-5WD7BYTZ.js";
13
13
  import {
14
14
  batch,
15
15
  signal
16
- } from "./chunk-RDTDJCAB.js";
16
+ } from "./chunk-6QZO7MMG.js";
17
17
 
18
18
  // src/widgets/Combobox.ts
19
19
  var comboboxIdCounter = 0;
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  bindAttribute
3
- } from "./chunk-WIPZPFBQ.js";
3
+ } from "./chunk-UKMXT5T6.js";
4
4
  import {
5
5
  registerDisposer
6
6
  } from "./chunk-2UPRY23K.js";
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-UCS6AMJ7.js";
13
13
  import {
14
14
  track
15
- } from "./chunk-QO3WC6FS.js";
15
+ } from "./chunk-L4DAT4WU.js";
16
16
  import {
17
17
  devWarn,
18
18
  isDev
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-UCS6AMJ7.js";
5
5
  import {
6
6
  track
7
- } from "./chunk-QO3WC6FS.js";
7
+ } from "./chunk-L4DAT4WU.js";
8
8
  import {
9
9
  devWarn,
10
10
  isDev
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  div,
3
3
  span
4
- } from "./chunk-CWBVQML6.js";
4
+ } from "./chunk-VSNLICTS.js";
5
5
  import {
6
6
  sanitizeUrl
7
7
  } from "./chunk-UCS6AMJ7.js";
8
8
  import {
9
9
  effect
10
- } from "./chunk-WZA53FXU.js";
10
+ } from "./chunk-5WD7BYTZ.js";
11
11
  import {
12
12
  batch,
13
13
  signal
14
- } from "./chunk-RDTDJCAB.js";
14
+ } from "./chunk-6QZO7MMG.js";
15
15
 
16
16
  // src/platform/head.ts
17
17
  var HEAD_URL_ATTRS = /* @__PURE__ */ new Set(["href", "src"]);
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  SVG_NS,
3
3
  tagFactory
4
- } from "./chunk-P2HSJDDN.js";
4
+ } from "./chunk-STFTTMO2.js";
5
5
 
6
6
  // src/core/rendering/html.ts
7
7
  var html = tagFactory("html");
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  effect
3
- } from "./chunk-WZA53FXU.js";
3
+ } from "./chunk-5WD7BYTZ.js";
4
4
  import {
5
5
  signal
6
- } from "./chunk-RDTDJCAB.js";
6
+ } from "./chunk-6QZO7MMG.js";
7
7
  import {
8
8
  devWarn,
9
9
  isDev
@@ -6,10 +6,15 @@ import {
6
6
  } from "./chunk-UCS6AMJ7.js";
7
7
  import {
8
8
  effect
9
- } from "./chunk-WZA53FXU.js";
9
+ } from "./chunk-5WD7BYTZ.js";
10
10
  import {
11
11
  signal
12
- } from "./chunk-RDTDJCAB.js";
12
+ } from "./chunk-6QZO7MMG.js";
13
+ import {
14
+ forEachSubscriber,
15
+ getSubscriberCount,
16
+ getSubscriberDeps
17
+ } from "./chunk-L4DAT4WU.js";
13
18
  import {
14
19
  isDev
15
20
  } from "./chunk-LMLD24FC.js";
@@ -313,13 +318,14 @@ function initDevTools(config) {
313
318
  } catch {
314
319
  value = "<error>";
315
320
  }
316
- const subs = node.ref?.__s;
317
321
  result.push({
318
322
  id: node.id,
319
323
  name: node.name,
320
324
  type: node.type,
321
325
  value,
322
- subscriberCount: subs instanceof Set ? subs.size : 0
326
+ // __sc is the O(1) subscriber count maintained by the reactivity
327
+ // core (track.ts) on every linked-list splice.
328
+ subscriberCount: node.ref?.__sc ?? 0
323
329
  });
324
330
  }
325
331
  return result;
@@ -460,14 +466,13 @@ function initDevTools(config) {
460
466
  }
461
467
  const fullVal = val;
462
468
  const shortVal = val.length > 80 ? `${val.substring(0, 80)}...` : val;
463
- const subs = node.ref?.__s;
464
469
  sArr.push({
465
470
  id: node.id,
466
471
  n: node.name,
467
472
  tp: node.type,
468
473
  v: shortVal,
469
474
  fv: fullVal,
470
- sc: subs instanceof Set ? subs.size : 0
475
+ sc: node.ref?.__sc ?? 0
471
476
  });
472
477
  }
473
478
  function walkElement(el, depth) {
@@ -1128,32 +1133,24 @@ function createDevtoolsOverlay(options) {
1128
1133
  }
1129
1134
 
1130
1135
  // src/devtools/introspect.ts
1131
- var SUBS = "__s";
1132
1136
  function getSignalName(getter) {
1133
1137
  return getter.__name;
1134
1138
  }
1135
- function getSubscriberCount(getter) {
1139
+ function getSubscriberCount2(getter) {
1136
1140
  const signal2 = getter.__signal;
1137
1141
  if (!signal2) return 0;
1138
- const subs = signal2[SUBS];
1139
- return subs ? subs.size : 0;
1142
+ return getSubscriberCount(signal2);
1140
1143
  }
1141
1144
  function getDependencies(subscriberFn) {
1142
- const fn = subscriberFn;
1143
- const singleDep = fn._dep;
1144
- if (singleDep !== void 0) return [singleDep];
1145
- const deps = fn._deps;
1146
- if (!deps) return [];
1147
- return deps instanceof Map ? Array.from(deps.keys()) : Array.from(deps);
1145
+ return getSubscriberDeps(subscriberFn);
1148
1146
  }
1149
1147
  function inspectSignal(getter) {
1150
1148
  const signal2 = getter.__signal;
1151
1149
  if (!signal2) return null;
1152
- const subs = signal2[SUBS];
1153
1150
  return {
1154
1151
  name: getter.__name,
1155
1152
  signal: signal2,
1156
- subscriberCount: subs ? subs.size : 0
1153
+ subscriberCount: getSubscriberCount(signal2)
1157
1154
  };
1158
1155
  }
1159
1156
  function walkDependencyGraph(getter, maxDepth = 10, visited = /* @__PURE__ */ new WeakSet()) {
@@ -1162,24 +1159,21 @@ function walkDependencyGraph(getter, maxDepth = 10, visited = /* @__PURE__ */ ne
1162
1159
  return { name: getSignalName(getter), subscribers: 0, downstream: [] };
1163
1160
  }
1164
1161
  visited.add(signal2);
1165
- const subs = signal2[SUBS];
1166
1162
  const downstream = [];
1167
- if (subs) {
1168
- for (const sub of subs) {
1169
- const subSig = sub._sig;
1170
- if (subSig && !visited.has(subSig)) {
1171
- const subName = subSig.__name;
1172
- const fakeGetter = (() => void 0);
1173
- const tag = fakeGetter;
1174
- tag.__signal = subSig;
1175
- if (subName !== void 0) tag.__name = subName;
1176
- downstream.push(walkDependencyGraph(fakeGetter, maxDepth - 1, visited));
1177
- }
1163
+ forEachSubscriber(signal2, (sub) => {
1164
+ const subSig = sub._sig;
1165
+ if (subSig && !visited.has(subSig)) {
1166
+ const subName = subSig.__name;
1167
+ const fakeGetter = (() => void 0);
1168
+ const tag = fakeGetter;
1169
+ tag.__signal = subSig;
1170
+ if (subName !== void 0) tag.__name = subName;
1171
+ downstream.push(walkDependencyGraph(fakeGetter, maxDepth - 1, visited));
1178
1172
  }
1179
- }
1173
+ });
1180
1174
  return {
1181
1175
  name: getSignalName(getter),
1182
- subscribers: subs ? subs.size : 0,
1176
+ subscribers: getSubscriberCount(signal2),
1183
1177
  downstream
1184
1178
  };
1185
1179
  }
@@ -1217,7 +1211,7 @@ export {
1217
1211
  startMeasure,
1218
1212
  createDevtoolsOverlay,
1219
1213
  getSignalName,
1220
- getSubscriberCount,
1214
+ getSubscriberCount2 as getSubscriberCount,
1221
1215
  getDependencies,
1222
1216
  inspectSignal,
1223
1217
  walkDependencyGraph
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  signal
3
- } from "./chunk-RDTDJCAB.js";
3
+ } from "./chunk-6QZO7MMG.js";
4
4
 
5
5
  // src/core/rendering/context.ts
6
6
  function context(defaultValue) {