sibujs 4.14.1 → 4.15.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 (91) hide show
  1. package/dist/browser.cjs +297 -45
  2. package/dist/browser.js +6 -7
  3. package/dist/build.cjs +2189 -573
  4. package/dist/build.js +16 -15
  5. package/dist/cdn.dev.global.js +13 -12
  6. package/dist/cdn.full.dev.global.js +14 -13
  7. package/dist/cdn.full.global.js +12 -12
  8. package/dist/cdn.global.js +12 -12
  9. package/dist/{chunk-4XCWNGRY.js → chunk-2VKTFA7C.js} +1 -1
  10. package/dist/{chunk-YPLQQTWS.js → chunk-4AEFGRYW.js} +1 -1
  11. package/dist/{chunk-VIAVYBNQ.js → chunk-6IV5ZRG6.js} +5 -7
  12. package/dist/{chunk-KTJC7QPA.js → chunk-75EAQH3U.js} +2 -2
  13. package/dist/{chunk-LJ2LR5P4.js → chunk-7JO7DPSS.js} +4 -4
  14. package/dist/{chunk-B2NLNZ3E.js → chunk-AQH7WDSE.js} +6 -8
  15. package/dist/{chunk-S37PZD6I.js → chunk-BF3WBJJQ.js} +60 -10
  16. package/dist/{chunk-LJMX4SQ7.js → chunk-BG4BP44S.js} +3 -3
  17. package/dist/{chunk-ZYK4NZZA.js → chunk-D44TAGCT.js} +2 -2
  18. package/dist/{chunk-OPRQW4LI.js → chunk-DAEXQJQA.js} +1 -1
  19. package/dist/chunk-DNCQDFJJ.js +22 -0
  20. package/dist/{chunk-WFMMSMA5.js → chunk-DNCT2UXB.js} +4 -4
  21. package/dist/{chunk-TOV4PN3P.js → chunk-DRWOD7RZ.js} +4 -4
  22. package/dist/chunk-DS5V2PRE.js +64 -0
  23. package/dist/{chunk-L2IPKGUJ.js → chunk-EHSJESRN.js} +595 -123
  24. package/dist/{chunk-LAHX7XFG.js → chunk-GFM5WWPU.js} +252 -5
  25. package/dist/{chunk-52XFPGSN.js → chunk-HTPOIAAL.js} +1 -1
  26. package/dist/{chunk-3HEX6QJQ.js → chunk-I2R5QALY.js} +2 -4
  27. package/dist/{chunk-FCWOMATN.js → chunk-IUBV5WO5.js} +1 -1
  28. package/dist/{chunk-TZNR6E6D.js → chunk-KIDETDMU.js} +5 -7
  29. package/dist/{chunk-TS6JDK7Y.js → chunk-KPAXG5IR.js} +7 -9
  30. package/dist/{chunk-FFXZ6ELZ.js → chunk-LGUXYHTZ.js} +3 -3
  31. package/dist/{chunk-NIHGSXOX.js → chunk-LQWLPQOK.js} +6 -8
  32. package/dist/{chunk-YIXMS546.js → chunk-MINLMJUY.js} +5 -8
  33. package/dist/{chunk-OLMZF4RU.js → chunk-OURTGOJT.js} +8 -10
  34. package/dist/{chunk-55TAOW5M.js → chunk-TQ24Y3IV.js} +2 -2
  35. package/dist/{chunk-LUZXFMKH.js → chunk-UM3M5PXS.js} +8 -8
  36. package/dist/{chunk-ZKI4SDZ2.js → chunk-VSTX3XSX.js} +205 -15
  37. package/dist/{chunk-3T7TWMSD.js → chunk-XPDZ2LDR.js} +2 -2
  38. package/dist/{chunk-RBRITLFL.js → chunk-Y7JM7GY2.js} +5 -7
  39. package/dist/{chunk-LZKKMDQF.js → chunk-YAFITBOK.js} +1269 -162
  40. package/dist/data.cjs +285 -33
  41. package/dist/data.js +6 -7
  42. package/dist/devtools.cjs +289 -39
  43. package/dist/devtools.js +5 -6
  44. package/dist/{dispose-EIHHHDC7.js → dispose-3WDBYJMH.js} +3 -1
  45. package/dist/ecosystem.cjs +345 -61
  46. package/dist/ecosystem.d.cts +1 -1
  47. package/dist/ecosystem.d.ts +1 -1
  48. package/dist/ecosystem.js +10 -10
  49. package/dist/extras.cjs +525 -247
  50. package/dist/extras.d.cts +1 -1
  51. package/dist/extras.d.ts +1 -1
  52. package/dist/extras.js +27 -27
  53. package/dist/index.cjs +2134 -515
  54. package/dist/index.d.cts +628 -211
  55. package/dist/index.d.ts +628 -211
  56. package/dist/index.js +22 -15
  57. package/dist/motion.cjs +286 -30
  58. package/dist/motion.js +4 -4
  59. package/dist/patterns.cjs +301 -43
  60. package/dist/patterns.js +6 -6
  61. package/dist/performance.cjs +286 -36
  62. package/dist/performance.js +9 -9
  63. package/dist/plugins.cjs +1194 -290
  64. package/dist/plugins.d.cts +3 -1
  65. package/dist/plugins.d.ts +3 -1
  66. package/dist/plugins.js +20 -19
  67. package/dist/{renderRoute-fxgsm2Ir.d.ts → renderRoute-B84MONaO.d.cts} +2 -2
  68. package/dist/{renderRoute-DP20XwMS.d.cts → renderRoute-_yxPuEQY.d.ts} +2 -2
  69. package/dist/{routeHead-CE9SV-cH.d.cts → routeHead-DLxlq15W.d.cts} +94 -0
  70. package/dist/{routeHead-DzVxPviY.d.ts → routeHead-w8nANZ3M.d.ts} +94 -0
  71. package/dist/{ssr-HHU3DAD2.js → ssr-EF3IUHTE.js} +6 -6
  72. package/dist/ssr-dom.cjs +21 -8
  73. package/dist/ssr-dom.js +2 -1
  74. package/dist/ssr.cjs +807 -169
  75. package/dist/ssr.d.cts +5 -3
  76. package/dist/ssr.d.ts +5 -3
  77. package/dist/ssr.js +16 -15
  78. package/dist/{tagFactory-DkytnJws.d.cts → tagFactory-BfEh69VF.d.cts} +7 -0
  79. package/dist/{tagFactory-Bnd_Nph9.d.ts → tagFactory-pSYiLYyh.d.ts} +7 -0
  80. package/dist/testing.cjs +774 -131
  81. package/dist/testing.d.cts +4 -2
  82. package/dist/testing.d.ts +4 -2
  83. package/dist/testing.js +18 -17
  84. package/dist/track-core-0edROAF5.d.ts +187 -0
  85. package/dist/track-core-DN5fYLWi.d.cts +187 -0
  86. package/dist/ui.cjs +293 -43
  87. package/dist/ui.js +10 -12
  88. package/dist/widgets.cjs +285 -27
  89. package/dist/widgets.js +7 -7
  90. package/package.json +1 -1
  91. package/dist/chunk-7ZHH77QA.js +0 -9
@@ -3,7 +3,7 @@ import {
3
3
  currentDisposerCapture,
4
4
  endDisposerCapture,
5
5
  reportError
6
- } from "./chunk-S37PZD6I.js";
6
+ } from "./chunk-BF3WBJJQ.js";
7
7
  import {
8
8
  DEV,
9
9
  devWarn
@@ -172,6 +172,201 @@ function bindOwnerScope(fn) {
172
172
  return (...args) => runWithOwnerScope(scope, () => fn(...args));
173
173
  }
174
174
  var currentStructOwner = null;
175
+ var frozenOwners = 0;
176
+ var ACTIVE = 0;
177
+ var PAUSED = 1;
178
+ var ENDED = 2;
179
+ var NOOP = () => {
180
+ };
181
+ var skippedWhileHeld = /* @__PURE__ */ new Set();
182
+ var waiters = /* @__PURE__ */ new Set();
183
+ var heldRoots = /* @__PURE__ */ new Set();
184
+ function ownerState(tok) {
185
+ let state = ACTIVE;
186
+ for (let t = tok; t !== null; ) {
187
+ const o = t.sub;
188
+ if (o === null) return ENDED;
189
+ if (o._frozen === true) state = PAUSED;
190
+ t = o._owner ?? null;
191
+ }
192
+ return state;
193
+ }
194
+ var endWatchers = /* @__PURE__ */ new Set();
195
+ var stateWatchers = /* @__PURE__ */ new Set();
196
+ var stateCheckQueued = false;
197
+ function queueStateCheck() {
198
+ if (stateCheckQueued || stateWatchers.size === 0) return;
199
+ stateCheckQueued = true;
200
+ queueMicrotask(() => {
201
+ stateCheckQueued = false;
202
+ for (const watcher of [...stateWatchers]) {
203
+ if (!stateWatchers.has(watcher)) continue;
204
+ const state = watcher.check.state();
205
+ if (state === ENDED) stateWatchers.delete(watcher);
206
+ if (state === ENDED || state === watcher.last) continue;
207
+ watcher.last = state;
208
+ try {
209
+ watcher.listener(state);
210
+ } catch (err) {
211
+ reportError(err, { phase: "effect" });
212
+ }
213
+ }
214
+ });
215
+ }
216
+ var ALWAYS_ACTIVE = Object.assign(() => false, {
217
+ state: () => ACTIVE,
218
+ wait: (onActive) => {
219
+ onActive();
220
+ return NOOP;
221
+ },
222
+ onEnd: () => NOOP,
223
+ run: (fn) => fn(),
224
+ onChange: () => NOOP,
225
+ within: () => false
226
+ });
227
+ function captureFrozen() {
228
+ const tok = currentStructOwner;
229
+ if (tok === null) return ALWAYS_ACTIVE;
230
+ const state = () => ownerState(tok);
231
+ const check = Object.assign(() => state() !== ACTIVE, {
232
+ state,
233
+ wait: (onActive, onEnd) => {
234
+ const now = state();
235
+ if (now !== PAUSED) {
236
+ (now === ACTIVE ? onActive : onEnd)();
237
+ return NOOP;
238
+ }
239
+ const waiter = { check, onActive, onEnd };
240
+ waiters.add(waiter);
241
+ return () => {
242
+ waiters.delete(waiter);
243
+ };
244
+ },
245
+ onEnd: (onEnd) => {
246
+ if (state() === ENDED) {
247
+ onEnd();
248
+ return NOOP;
249
+ }
250
+ const watcher = { check, onActive: NOOP, onEnd };
251
+ endWatchers.add(watcher);
252
+ return () => {
253
+ endWatchers.delete(watcher);
254
+ };
255
+ },
256
+ run: (fn) => {
257
+ const prev = currentStructOwner;
258
+ currentStructOwner = tok.sub === null ? null : tok;
259
+ try {
260
+ return fn();
261
+ } finally {
262
+ currentStructOwner = prev;
263
+ }
264
+ },
265
+ onChange: (listener) => {
266
+ const last = state();
267
+ if (last === ENDED) return NOOP;
268
+ const watcher = { check, last, listener };
269
+ stateWatchers.add(watcher);
270
+ return () => {
271
+ stateWatchers.delete(watcher);
272
+ };
273
+ },
274
+ within: (owner) => {
275
+ const target = owner.run(() => currentStructOwner);
276
+ if (target === null) return false;
277
+ for (let t = tok; t !== null; ) {
278
+ if (t === target) return true;
279
+ const o = t.sub;
280
+ if (o === null) return false;
281
+ t = o._owner ?? null;
282
+ }
283
+ return false;
284
+ }
285
+ });
286
+ return check;
287
+ }
288
+ function holdSubtree(root) {
289
+ heldRoots.add(root);
290
+ return () => {
291
+ if (heldRoots.delete(root)) settleHeld();
292
+ };
293
+ }
294
+ function isHeld(sub) {
295
+ if (frozenOwners !== 0 && hasFrozenOwner(sub)) return true;
296
+ if (heldRoots.size !== 0) {
297
+ const node = sub._errorNode;
298
+ if (node != null) {
299
+ for (const root of heldRoots) if (root.contains(node)) return true;
300
+ }
301
+ }
302
+ return false;
303
+ }
304
+ function notifyEnded() {
305
+ for (const watcher of stateWatchers) if (watcher.check.state() === ENDED) stateWatchers.delete(watcher);
306
+ let ended = null;
307
+ for (const watcher of endWatchers) {
308
+ if (watcher.check.state() !== ENDED) continue;
309
+ endWatchers.delete(watcher);
310
+ (ended ?? (ended = [])).push(watcher);
311
+ }
312
+ if (ended === null) return;
313
+ for (const watcher of ended) {
314
+ try {
315
+ watcher.onEnd();
316
+ } catch (err) {
317
+ reportError(err, { phase: "cleanup" });
318
+ }
319
+ }
320
+ }
321
+ function dropReleasedSkipped() {
322
+ for (const sub of skippedWhileHeld) {
323
+ if (sub._disposed === true || sub.depsHead == null) skippedWhileHeld.delete(sub);
324
+ }
325
+ }
326
+ function settleHeld() {
327
+ for (const sub of skippedWhileHeld) {
328
+ if (sub._disposed === true) skippedWhileHeld.delete(sub);
329
+ else if (!isHeld(sub)) {
330
+ skippedWhileHeld.delete(sub);
331
+ if (!pendingSet.has(sub)) {
332
+ pendingSet.add(sub);
333
+ pendingQueue.push(sub);
334
+ }
335
+ }
336
+ }
337
+ if (frozenOwners === 0 && heldRoots.size === 0) skippedWhileHeld.clear();
338
+ let ready = null;
339
+ for (const waiter of waiters) {
340
+ if (waiter.check.state() === PAUSED) continue;
341
+ waiters.delete(waiter);
342
+ (ready ?? (ready = [])).push(waiter);
343
+ }
344
+ if (ready !== null) {
345
+ const settle = ready;
346
+ queueMicrotask(() => {
347
+ for (const waiter of settle) {
348
+ const state = waiter.check.state();
349
+ if (state === PAUSED) waiters.add(waiter);
350
+ else
351
+ try {
352
+ (state === ACTIVE ? waiter.onActive : waiter.onEnd)();
353
+ } catch (err) {
354
+ reportError(err, { phase: "effect" });
355
+ }
356
+ }
357
+ });
358
+ }
359
+ if (pendingQueue.length > 0) drainNotificationQueue();
360
+ }
361
+ function hasFrozenOwner(sub) {
362
+ for (let t = sub._owner ?? null; t !== null; ) {
363
+ const o = t.sub;
364
+ if (o === null) return false;
365
+ if (o._frozen === true) return true;
366
+ t = o._owner ?? null;
367
+ }
368
+ return false;
369
+ }
175
370
  var subscriberEpochCounter = 0;
176
371
  function retrack(effectFn, subscriber) {
177
372
  const prev = currentSubscriber;
@@ -279,6 +474,20 @@ function structuralBinding(commit, ownerNode) {
279
474
  } finally {
280
475
  currentStructOwner = prev;
281
476
  }
477
+ },
478
+ freeze: () => {
479
+ const s = sub;
480
+ if (s._disposed || s._frozen) return;
481
+ s._frozen = true;
482
+ frozenOwners++;
483
+ queueStateCheck();
484
+ },
485
+ thaw: () => {
486
+ if (!sub._frozen) return;
487
+ sub._frozen = false;
488
+ frozenOwners--;
489
+ queueStateCheck();
490
+ settleHeld();
282
491
  }
283
492
  };
284
493
  }
@@ -307,20 +516,34 @@ function createBinding(commit, ownerNode, structural) {
307
516
  subscriber._errorNode = ownerNode;
308
517
  subscriber._tok = null;
309
518
  subscriber._owner = null;
519
+ subscriber._frozen = false;
310
520
  if (structural) subscriber._tok = { sub: subscriber };
311
521
  try {
312
522
  run();
313
523
  } catch (err) {
314
524
  subscriber._disposed = true;
315
525
  subscriber._errorNode = void 0;
316
- if (subscriber._tok != null) subscriber._tok.sub = null;
526
+ if (subscriber._tok != null) {
527
+ subscriber._tok.sub = null;
528
+ if (endWatchers.size !== 0 || stateWatchers.size !== 0) notifyEnded();
529
+ }
317
530
  cleanup(subscriber);
318
531
  throw err;
319
532
  }
320
533
  subscriber._dispose = () => {
321
534
  subscriber._disposed = true;
535
+ const wasFrozen = subscriber._frozen === true;
536
+ if (wasFrozen) {
537
+ subscriber._frozen = false;
538
+ frozenOwners--;
539
+ }
322
540
  subscriber._errorNode = void 0;
323
- if (subscriber._tok != null) subscriber._tok.sub = null;
541
+ if (subscriber._tok != null) {
542
+ subscriber._tok.sub = null;
543
+ if (endWatchers.size !== 0 || stateWatchers.size !== 0) notifyEnded();
544
+ if (skippedWhileHeld.size !== 0) dropReleasedSkipped();
545
+ if (wasFrozen || waiters.size !== 0) settleHeld();
546
+ }
324
547
  cleanup(subscriber);
325
548
  };
326
549
  return subscriber;
@@ -430,6 +653,10 @@ function runPendingOwners(sub) {
430
653
  }
431
654
  }
432
655
  function runQueued(sub) {
656
+ if ((frozenOwners !== 0 || heldRoots.size !== 0) && isHeld(sub)) {
657
+ skippedWhileHeld.add(sub);
658
+ return;
659
+ }
433
660
  if (quarantined.size > 0 && quarantined.has(sub)) return;
434
661
  if (sub._hasComputedDep === true && !depsChanged(sub)) return;
435
662
  if (tickRepeat(sub)) {
@@ -577,7 +804,7 @@ function forEachSubscriber(signal, visit) {
577
804
  }
578
805
 
579
806
  // src/reactivity/track.ts
580
- var _runtimeVersion = true ? "4.14.1" : "dev";
807
+ var _runtimeVersion = true ? "4.15.0" : "dev";
581
808
  var REGISTRY_KEY = /* @__PURE__ */ Symbol.for("sibujs.reactive.v1");
582
809
  function resolveReactiveApi() {
583
810
  const g = globalThis;
@@ -613,6 +840,8 @@ function resolveReactiveApi() {
613
840
  runWithOwnerScope,
614
841
  bindOwnerScope,
615
842
  structuralBinding,
843
+ captureFrozen,
844
+ holdSubtree,
616
845
  version: _runtimeVersion
617
846
  };
618
847
  g[REGISTRY_KEY] = local;
@@ -640,6 +869,22 @@ var getOwnerScope2 = API.getOwnerScope ?? getOwnerScope;
640
869
  var runWithOwnerScope2 = API.runWithOwnerScope ?? runWithOwnerScope;
641
870
  var bindOwnerScope2 = API.bindOwnerScope ?? bindOwnerScope;
642
871
  var structuralBinding2 = API.structuralBinding ?? ((commit, ownerNode) => ({ stop: API.reactiveBinding(commit, ownerNode), run: (fn) => fn() }));
872
+ var captureFrozen2 = API.captureFrozen ?? (() => Object.assign(() => false, {
873
+ state: () => 0,
874
+ wait: (onActive) => {
875
+ onActive();
876
+ return () => {
877
+ };
878
+ },
879
+ onEnd: () => () => {
880
+ },
881
+ run: (fn) => fn(),
882
+ onChange: () => () => {
883
+ },
884
+ within: () => false
885
+ }));
886
+ var holdSubtree2 = API.holdSubtree ?? (() => () => {
887
+ });
643
888
 
644
889
  export {
645
890
  suspendTracking2 as suspendTracking,
@@ -661,5 +906,7 @@ export {
661
906
  getOwnerScope2 as getOwnerScope,
662
907
  runWithOwnerScope2 as runWithOwnerScope,
663
908
  bindOwnerScope2 as bindOwnerScope,
664
- structuralBinding2 as structuralBinding
909
+ structuralBinding2 as structuralBinding,
910
+ captureFrozen2 as captureFrozen,
911
+ holdSubtree2 as holdSubtree
665
912
  };
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  globalSingleton
3
- } from "./chunk-7ZHH77QA.js";
3
+ } from "./chunk-BF3WBJJQ.js";
4
4
 
5
5
  // src/utils/singletonResource.ts
6
6
  function singletonResource(io) {
@@ -1,12 +1,10 @@
1
- import {
2
- globalSingleton
3
- } from "./chunk-7ZHH77QA.js";
4
1
  import {
5
2
  adoptThenable
6
3
  } from "./chunk-5HZXGZ6T.js";
7
4
  import {
5
+ globalSingleton,
8
6
  reportError
9
- } from "./chunk-S37PZD6I.js";
7
+ } from "./chunk-BF3WBJJQ.js";
10
8
  import {
11
9
  DEV,
12
10
  devWarn
@@ -3,7 +3,7 @@ import {
3
3
  notifySubscribers,
4
4
  queueSignalNotification,
5
5
  recordDependency
6
- } from "./chunk-LAHX7XFG.js";
6
+ } from "./chunk-GFM5WWPU.js";
7
7
  import {
8
8
  DEV
9
9
  } from "./chunk-NT3ZYB5S.js";
@@ -1,25 +1,23 @@
1
1
  import {
2
2
  acquireTitle
3
- } from "./chunk-52XFPGSN.js";
3
+ } from "./chunk-HTPOIAAL.js";
4
4
  import {
5
5
  isUnsafeKey
6
6
  } from "./chunk-62BDYGAG.js";
7
- import {
8
- globalSingleton
9
- } from "./chunk-7ZHH77QA.js";
10
7
  import {
11
8
  effect
12
- } from "./chunk-FFXZ6ELZ.js";
9
+ } from "./chunk-LGUXYHTZ.js";
13
10
  import {
14
11
  sanitizeUrl
15
12
  } from "./chunk-B3HOT4TK.js";
16
13
  import {
17
14
  batch,
18
15
  signal
19
- } from "./chunk-FCWOMATN.js";
16
+ } from "./chunk-IUBV5WO5.js";
20
17
  import {
18
+ globalSingleton,
21
19
  reportError
22
- } from "./chunk-S37PZD6I.js";
20
+ } from "./chunk-BF3WBJJQ.js";
23
21
 
24
22
  // src/browser/media.ts
25
23
  function media(query) {
@@ -3,20 +3,17 @@ import {
3
3
  } from "./chunk-N5TBYXHW.js";
4
4
  import {
5
5
  domBinding
6
- } from "./chunk-OPRQW4LI.js";
6
+ } from "./chunk-DAEXQJQA.js";
7
7
  import {
8
8
  bindAttribute,
9
9
  setSafeAttribute
10
- } from "./chunk-3T7TWMSD.js";
10
+ } from "./chunk-XPDZ2LDR.js";
11
11
  import {
12
12
  isBlockedElement
13
13
  } from "./chunk-RVWJGWCL.js";
14
14
  import {
15
15
  derived
16
- } from "./chunk-ZYK4NZZA.js";
17
- import {
18
- globalSingleton
19
- } from "./chunk-7ZHH77QA.js";
16
+ } from "./chunk-D44TAGCT.js";
20
17
  import {
21
18
  isEventHandlerAttr,
22
19
  sanitizeStylesheetText
@@ -26,20 +23,21 @@ import {
26
23
  } from "./chunk-5HZXGZ6T.js";
27
24
  import {
28
25
  signal
29
- } from "./chunk-FCWOMATN.js";
26
+ } from "./chunk-IUBV5WO5.js";
30
27
  import {
31
28
  reactiveBinding,
32
29
  track
33
- } from "./chunk-LAHX7XFG.js";
30
+ } from "./chunk-GFM5WWPU.js";
34
31
  import {
35
32
  dispose,
36
33
  disposeNodeOwn,
34
+ globalSingleton,
37
35
  registerDisposer,
38
36
  replaceChildrenSafely,
39
37
  reportError,
40
38
  unregisterDisposer,
41
39
  withDisposerRollback
42
- } from "./chunk-S37PZD6I.js";
40
+ } from "./chunk-BF3WBJJQ.js";
43
41
 
44
42
  // src/ui/form.ts
45
43
  function required(message = "This field is required") {
@@ -3,17 +3,17 @@ import {
3
3
  } from "./chunk-UYTYNCMZ.js";
4
4
  import {
5
5
  emitDevtools
6
- } from "./chunk-FCWOMATN.js";
6
+ } from "./chunk-IUBV5WO5.js";
7
7
  import {
8
8
  cleanup,
9
9
  getOwnerScope,
10
10
  retrack,
11
11
  runWithOwnerScope,
12
12
  untracked
13
- } from "./chunk-LAHX7XFG.js";
13
+ } from "./chunk-GFM5WWPU.js";
14
14
  import {
15
15
  reportError
16
- } from "./chunk-S37PZD6I.js";
16
+ } from "./chunk-BF3WBJJQ.js";
17
17
  import {
18
18
  devAssert
19
19
  } from "./chunk-NT3ZYB5S.js";
@@ -1,23 +1,21 @@
1
- import {
2
- globalSingleton
3
- } from "./chunk-7ZHH77QA.js";
4
1
  import {
5
2
  effect
6
- } from "./chunk-FFXZ6ELZ.js";
3
+ } from "./chunk-LGUXYHTZ.js";
7
4
  import {
8
5
  stripHtml
9
6
  } from "./chunk-B3HOT4TK.js";
10
7
  import {
11
8
  signal
12
- } from "./chunk-FCWOMATN.js";
9
+ } from "./chunk-IUBV5WO5.js";
13
10
  import {
14
11
  forEachSubscriber,
15
12
  getSubscriberCount,
16
13
  getSubscriberDeps
17
- } from "./chunk-LAHX7XFG.js";
14
+ } from "./chunk-GFM5WWPU.js";
18
15
  import {
19
- dispose
20
- } from "./chunk-S37PZD6I.js";
16
+ dispose,
17
+ globalSingleton
18
+ } from "./chunk-BF3WBJJQ.js";
21
19
  import {
22
20
  isDev
23
21
  } from "./chunk-NT3ZYB5S.js";
@@ -1,3 +1,6 @@
1
+ import {
2
+ styleKeyToProperty
3
+ } from "./chunk-DNCQDFJJ.js";
1
4
  import {
2
5
  requestSlot
3
6
  } from "./chunk-UYTYNCMZ.js";
@@ -680,12 +683,6 @@ function splitDeclarations(text) {
680
683
  out.push(text.slice(start));
681
684
  return out;
682
685
  }
683
- var CAMEL_EXCEPTIONS = { cssFloat: "float" };
684
- function toKebab(prop) {
685
- if (prop.startsWith("--")) return prop;
686
- if (Object.hasOwn(CAMEL_EXCEPTIONS, prop)) return CAMEL_EXCEPTIONS[prop];
687
- return prop.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`).replace(/^(webkit|moz|ms)-/, "-$1-");
688
- }
689
686
  var ServerStyle = class {
690
687
  constructor(el) {
691
688
  this.el = el;
@@ -780,13 +777,13 @@ function styleProxy(style) {
780
777
  get(target, key, receiver) {
781
778
  if (typeof key === "string" && !(key in target)) {
782
779
  if (/^\d+$/.test(key)) return target.item(Number(key));
783
- return target.getPropertyValue(toKebab(key));
780
+ return target.getPropertyValue(styleKeyToProperty(key));
784
781
  }
785
782
  return Reflect.get(target, key, receiver);
786
783
  },
787
784
  set(target, key, value, receiver) {
788
785
  if (typeof key === "string" && !(key in target)) {
789
- target.setProperty(toKebab(key), value == null ? "" : String(value));
786
+ target.setProperty(styleKeyToProperty(key), value == null ? "" : String(value));
790
787
  return true;
791
788
  }
792
789
  return Reflect.set(target, key, value, receiver);
@@ -2,11 +2,11 @@ import {
2
2
  acquireBase,
3
3
  acquireScrollRestorationMode,
4
4
  acquireTitle
5
- } from "./chunk-52XFPGSN.js";
5
+ } from "./chunk-HTPOIAAL.js";
6
6
  import {
7
7
  div,
8
8
  span
9
- } from "./chunk-YPLQQTWS.js";
9
+ } from "./chunk-4AEFGRYW.js";
10
10
  import {
11
11
  STATIC_VALUE_RESOLVER,
12
12
  planHeadElementEntry,
@@ -14,13 +14,10 @@ import {
14
14
  recordServerHead,
15
15
  serializeHeadEntry,
16
16
  serializePlannedHeadEntry
17
- } from "./chunk-TOV4PN3P.js";
18
- import {
19
- globalSingleton
20
- } from "./chunk-7ZHH77QA.js";
17
+ } from "./chunk-DRWOD7RZ.js";
21
18
  import {
22
19
  effect
23
- } from "./chunk-FFXZ6ELZ.js";
20
+ } from "./chunk-LGUXYHTZ.js";
24
21
  import {
25
22
  sanitizeUrl
26
23
  } from "./chunk-B3HOT4TK.js";
@@ -30,15 +27,16 @@ import {
30
27
  import {
31
28
  batch,
32
29
  signal
33
- } from "./chunk-FCWOMATN.js";
30
+ } from "./chunk-IUBV5WO5.js";
34
31
  import {
35
32
  bindOwnerScope
36
- } from "./chunk-LAHX7XFG.js";
33
+ } from "./chunk-GFM5WWPU.js";
37
34
  import {
35
+ globalSingleton,
38
36
  registerDisposer,
39
37
  replaceChildrenSafely,
40
38
  reportError
41
- } from "./chunk-S37PZD6I.js";
39
+ } from "./chunk-BF3WBJJQ.js";
42
40
 
43
41
  // src/platform/head.ts
44
42
  function escapeScriptJsonLocal(json) {
@@ -3,11 +3,11 @@ import {
3
3
  } from "./chunk-5HZXGZ6T.js";
4
4
  import {
5
5
  signal
6
- } from "./chunk-FCWOMATN.js";
6
+ } from "./chunk-IUBV5WO5.js";
7
7
  import {
8
8
  registerDisposer,
9
9
  reportError
10
- } from "./chunk-S37PZD6I.js";
10
+ } from "./chunk-BF3WBJJQ.js";
11
11
 
12
12
  // src/ui/transition.ts
13
13
  function transition(element, options = {}) {
@@ -1,25 +1,25 @@
1
1
  import {
2
2
  createPlugin
3
- } from "./chunk-3HEX6QJQ.js";
3
+ } from "./chunk-I2R5QALY.js";
4
4
  import {
5
5
  tagFactory
6
- } from "./chunk-ZKI4SDZ2.js";
6
+ } from "./chunk-VSTX3XSX.js";
7
7
  import {
8
8
  derived
9
- } from "./chunk-ZYK4NZZA.js";
10
- import {
11
- globalSingleton
12
- } from "./chunk-7ZHH77QA.js";
9
+ } from "./chunk-D44TAGCT.js";
13
10
  import {
14
11
  effect
15
- } from "./chunk-FFXZ6ELZ.js";
12
+ } from "./chunk-LGUXYHTZ.js";
16
13
  import {
17
14
  sanitizeCSSDeclaration
18
15
  } from "./chunk-B3HOT4TK.js";
19
16
  import {
20
17
  batch,
21
18
  signal
22
- } from "./chunk-FCWOMATN.js";
19
+ } from "./chunk-IUBV5WO5.js";
20
+ import {
21
+ globalSingleton
22
+ } from "./chunk-BF3WBJJQ.js";
23
23
 
24
24
  // src/ecosystem/adapters/mobx.ts
25
25
  function mobXAdapter(options) {