sibujs 3.3.0 → 3.3.1
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/browser.cjs +210 -26
- package/dist/browser.js +4 -4
- package/dist/build.cjs +193 -89
- package/dist/build.js +10 -10
- package/dist/cdn.global.js +7 -7
- package/dist/{chunk-24DBWDTK.js → chunk-37BUKSLH.js} +1 -1
- package/dist/{chunk-IHBVTURX.js → chunk-4UUMSLSL.js} +4 -4
- package/dist/{chunk-USDR2GFV.js → chunk-6LTFHJQG.js} +3 -3
- package/dist/{chunk-MWZFOIBG.js → chunk-AMIKDMLP.js} +4 -4
- package/dist/{chunk-JBXNCZSC.js → chunk-F7FXQ3QS.js} +1 -1
- package/dist/{chunk-BEIKESVL.js → chunk-IKLYI3RF.js} +9 -9
- package/dist/{chunk-NUWKIEHE.js → chunk-LU2MQXQQ.js} +2 -2
- package/dist/{chunk-WVJJUFPC.js → chunk-M5KBNOSJ.js} +2 -2
- package/dist/{chunk-7JHWAGRQ.js → chunk-MHBCEJQO.js} +1 -1
- package/dist/{chunk-Q2ERM6NT.js → chunk-NHKQKKZU.js} +1 -1
- package/dist/{chunk-6G6UNHZI.js → chunk-RYMOSG5B.js} +5 -5
- package/dist/{chunk-F4UM7QBJ.js → chunk-SLMFA3ZZ.js} +1 -1
- package/dist/{chunk-X3NHE2DK.js → chunk-TEFZT5PJ.js} +83 -17
- package/dist/{chunk-SLCUP2EK.js → chunk-ULLTNDRA.js} +3 -3
- package/dist/{chunk-M6WSIGYW.js → chunk-VOVVTOEA.js} +2 -2
- package/dist/{chunk-XQ7XSGYP.js → chunk-WL7BIR6O.js} +1 -1
- package/dist/{chunk-CVMMULHO.js → chunk-WW6DAGGR.js} +4 -4
- package/dist/{chunk-5K72I3UQ.js → chunk-WZG2SZOT.js} +21 -4
- package/dist/{chunk-S4FHR5ZZ.js → chunk-XH2RTYEQ.js} +3 -3
- package/dist/{chunk-4WXWJ4SW.js → chunk-Z37APKBV.js} +4 -4
- package/dist/data.cjs +161 -23
- package/dist/data.js +6 -6
- package/dist/devtools.cjs +245 -31
- package/dist/devtools.js +4 -4
- package/dist/ecosystem.cjs +183 -45
- package/dist/ecosystem.js +7 -7
- package/dist/extras.cjs +185 -86
- package/dist/extras.js +19 -19
- package/dist/index.cjs +193 -89
- package/dist/index.d.cts +59 -8
- package/dist/index.d.ts +59 -8
- package/dist/index.js +10 -10
- package/dist/motion.cjs +329 -13
- package/dist/motion.js +3 -3
- package/dist/patterns.cjs +161 -23
- package/dist/patterns.js +5 -5
- package/dist/performance.cjs +258 -23
- package/dist/performance.js +4 -4
- package/dist/plugins.cjs +244 -51
- package/dist/plugins.js +6 -6
- package/dist/ssr.cjs +183 -44
- package/dist/ssr.js +7 -7
- package/dist/testing.cjs +396 -5
- package/dist/testing.js +2 -2
- package/dist/ui.cjs +221 -32
- package/dist/ui.js +6 -6
- package/dist/widgets.cjs +146 -26
- package/dist/widgets.js +6 -6
- package/package.json +1 -1
package/dist/motion.cjs
CHANGED
|
@@ -303,8 +303,9 @@ function devWarn(message) {
|
|
|
303
303
|
}
|
|
304
304
|
}
|
|
305
305
|
|
|
306
|
-
// src/reactivity/track.ts
|
|
306
|
+
// src/reactivity/track-core.ts
|
|
307
307
|
var _isDev2 = isDev();
|
|
308
|
+
var POOL_MAX = 4096;
|
|
308
309
|
var nodePool = [];
|
|
309
310
|
function createNode() {
|
|
310
311
|
return {
|
|
@@ -332,6 +333,16 @@ function allocNode(sig, sub, epoch) {
|
|
|
332
333
|
fresh.epoch = epoch;
|
|
333
334
|
return fresh;
|
|
334
335
|
}
|
|
336
|
+
function freeNode(node) {
|
|
337
|
+
node.sig = null;
|
|
338
|
+
node.sub = null;
|
|
339
|
+
node.sigPrev = null;
|
|
340
|
+
node.sigNext = null;
|
|
341
|
+
node.subPrev = null;
|
|
342
|
+
node.subNext = null;
|
|
343
|
+
node.prevActive = null;
|
|
344
|
+
if (nodePool.length < POOL_MAX) nodePool.push(node);
|
|
345
|
+
}
|
|
335
346
|
function linkSignal(sig, node) {
|
|
336
347
|
const oldHead = sig.subsHead ?? null;
|
|
337
348
|
node.sigPrev = null;
|
|
@@ -341,6 +352,22 @@ function linkSignal(sig, node) {
|
|
|
341
352
|
sig.subsHead = node;
|
|
342
353
|
sig.__sc = (sig.__sc ?? 0) + 1;
|
|
343
354
|
}
|
|
355
|
+
function unlinkSignal(node) {
|
|
356
|
+
const sig = node.sig;
|
|
357
|
+
if (!sig) return;
|
|
358
|
+
const prev = node.sigPrev;
|
|
359
|
+
const next = node.sigNext;
|
|
360
|
+
if (prev) prev.sigNext = next;
|
|
361
|
+
else sig.subsHead = next;
|
|
362
|
+
if (next) next.sigPrev = prev;
|
|
363
|
+
else sig.subsTail = prev;
|
|
364
|
+
sig.__sc = (sig.__sc ?? 1) - 1;
|
|
365
|
+
if (sig.__activeNode === node) sig.__activeNode = node.prevActive;
|
|
366
|
+
if (sig.__sc === 0) {
|
|
367
|
+
sig.subsHead = null;
|
|
368
|
+
sig.subsTail = null;
|
|
369
|
+
}
|
|
370
|
+
}
|
|
344
371
|
function linkSub(sub, node) {
|
|
345
372
|
const oldTail = sub.depsTail ?? null;
|
|
346
373
|
node.subPrev = oldTail;
|
|
@@ -349,7 +376,18 @@ function linkSub(sub, node) {
|
|
|
349
376
|
else sub.depsHead = node;
|
|
350
377
|
sub.depsTail = node;
|
|
351
378
|
}
|
|
379
|
+
function unlinkSub(node) {
|
|
380
|
+
const sub = node.sub;
|
|
381
|
+
if (!sub) return;
|
|
382
|
+
const prev = node.subPrev;
|
|
383
|
+
const next = node.subNext;
|
|
384
|
+
if (prev) prev.subNext = next;
|
|
385
|
+
else sub.depsHead = next;
|
|
386
|
+
if (next) next.subPrev = prev;
|
|
387
|
+
else sub.depsTail = prev;
|
|
388
|
+
}
|
|
352
389
|
var currentSubscriber = null;
|
|
390
|
+
var suspendSavedSub = null;
|
|
353
391
|
var notifyDepth = 0;
|
|
354
392
|
var pendingQueue = [];
|
|
355
393
|
var pendingSet = /* @__PURE__ */ new Set();
|
|
@@ -361,6 +399,112 @@ function safeInvoke(sub) {
|
|
|
361
399
|
if (_isDev2) devWarn(`Subscriber threw during notification: ${err instanceof Error ? err.message : String(err)}`);
|
|
362
400
|
}
|
|
363
401
|
}
|
|
402
|
+
var suspendDepth = 0;
|
|
403
|
+
var trackingSuspended = false;
|
|
404
|
+
function suspendTracking() {
|
|
405
|
+
if (suspendDepth === 0) {
|
|
406
|
+
suspendSavedSub = currentSubscriber;
|
|
407
|
+
currentSubscriber = null;
|
|
408
|
+
trackingSuspended = true;
|
|
409
|
+
}
|
|
410
|
+
suspendDepth++;
|
|
411
|
+
}
|
|
412
|
+
function resumeTracking() {
|
|
413
|
+
suspendDepth--;
|
|
414
|
+
if (suspendDepth === 0) {
|
|
415
|
+
currentSubscriber = suspendSavedSub;
|
|
416
|
+
suspendSavedSub = null;
|
|
417
|
+
trackingSuspended = false;
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
function isTrackingSuspended() {
|
|
421
|
+
return trackingSuspended;
|
|
422
|
+
}
|
|
423
|
+
function untracked(fn) {
|
|
424
|
+
suspendTracking();
|
|
425
|
+
try {
|
|
426
|
+
return fn();
|
|
427
|
+
} finally {
|
|
428
|
+
resumeTracking();
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
var subscriberEpochCounter = 0;
|
|
432
|
+
function retrack(effectFn, subscriber) {
|
|
433
|
+
const prev = currentSubscriber;
|
|
434
|
+
currentSubscriber = subscriber;
|
|
435
|
+
const sub = subscriber;
|
|
436
|
+
const epoch = ++subscriberEpochCounter;
|
|
437
|
+
sub._epoch = epoch;
|
|
438
|
+
sub._structDirty = false;
|
|
439
|
+
for (let n = sub.depsHead ?? null; n !== null; n = n.subNext) {
|
|
440
|
+
const sig = n.sig;
|
|
441
|
+
n.prevActive = sig.__activeNode ?? null;
|
|
442
|
+
sig.__activeNode = n;
|
|
443
|
+
}
|
|
444
|
+
try {
|
|
445
|
+
effectFn();
|
|
446
|
+
} finally {
|
|
447
|
+
currentSubscriber = prev;
|
|
448
|
+
let node = sub.depsHead ?? null;
|
|
449
|
+
while (node !== null) {
|
|
450
|
+
const next = node.subNext;
|
|
451
|
+
const sig = node.sig;
|
|
452
|
+
sig.__activeNode = node.prevActive;
|
|
453
|
+
node.prevActive = null;
|
|
454
|
+
if (node.epoch !== epoch) {
|
|
455
|
+
unlinkSub(node);
|
|
456
|
+
unlinkSignal(node);
|
|
457
|
+
freeNode(node);
|
|
458
|
+
}
|
|
459
|
+
node = next;
|
|
460
|
+
}
|
|
461
|
+
}
|
|
462
|
+
}
|
|
463
|
+
function track(effectFn, subscriber) {
|
|
464
|
+
if (!subscriber) return reactiveBinding(effectFn);
|
|
465
|
+
cleanup(subscriber);
|
|
466
|
+
const prev = currentSubscriber;
|
|
467
|
+
currentSubscriber = subscriber;
|
|
468
|
+
try {
|
|
469
|
+
effectFn();
|
|
470
|
+
} finally {
|
|
471
|
+
currentSubscriber = prev;
|
|
472
|
+
const sub2 = subscriber;
|
|
473
|
+
for (let n = sub2.depsHead ?? null; n !== null; n = n.subNext) {
|
|
474
|
+
const sig = n.sig;
|
|
475
|
+
sig.__activeNode = n.prevActive;
|
|
476
|
+
n.prevActive = null;
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
const sub = subscriber;
|
|
480
|
+
return sub._dispose ?? (sub._dispose = () => cleanup(subscriber));
|
|
481
|
+
}
|
|
482
|
+
function reactiveBinding(commit) {
|
|
483
|
+
const run = () => {
|
|
484
|
+
const s = subscriber;
|
|
485
|
+
if (s._disposed || s._reentrant) return;
|
|
486
|
+
s._reentrant = true;
|
|
487
|
+
try {
|
|
488
|
+
retrack(commit, subscriber);
|
|
489
|
+
} finally {
|
|
490
|
+
s._reentrant = false;
|
|
491
|
+
}
|
|
492
|
+
};
|
|
493
|
+
const subscriber = run;
|
|
494
|
+
subscriber.depsHead = null;
|
|
495
|
+
subscriber.depsTail = null;
|
|
496
|
+
subscriber._epoch = 0;
|
|
497
|
+
subscriber._structDirty = false;
|
|
498
|
+
subscriber._runEpoch = 0;
|
|
499
|
+
subscriber._runs = 0;
|
|
500
|
+
subscriber._reentrant = false;
|
|
501
|
+
subscriber._disposed = false;
|
|
502
|
+
run();
|
|
503
|
+
return subscriber._dispose ?? (subscriber._dispose = () => {
|
|
504
|
+
subscriber._disposed = true;
|
|
505
|
+
cleanup(subscriber);
|
|
506
|
+
});
|
|
507
|
+
}
|
|
364
508
|
function recordDependency(signal2) {
|
|
365
509
|
if (!currentSubscriber) return;
|
|
366
510
|
const sub = currentSubscriber;
|
|
@@ -378,9 +522,31 @@ function recordDependency(signal2) {
|
|
|
378
522
|
linkSignal(sig, node);
|
|
379
523
|
sub._structDirty = true;
|
|
380
524
|
}
|
|
525
|
+
function cleanup(subscriber) {
|
|
526
|
+
const sub = subscriber;
|
|
527
|
+
let node = sub.depsHead ?? null;
|
|
528
|
+
sub.depsHead = null;
|
|
529
|
+
sub.depsTail = null;
|
|
530
|
+
while (node) {
|
|
531
|
+
const next = node.subNext;
|
|
532
|
+
unlinkSignal(node);
|
|
533
|
+
freeNode(node);
|
|
534
|
+
node = next;
|
|
535
|
+
}
|
|
536
|
+
}
|
|
381
537
|
var maxSubscriberRepeats = 50;
|
|
382
538
|
var maxDrainIterations = 1e6;
|
|
383
539
|
var drainEpoch = 0;
|
|
540
|
+
function setMaxSubscriberRepeats(n) {
|
|
541
|
+
const prev = maxSubscriberRepeats;
|
|
542
|
+
if (Number.isFinite(n) && n > 0) maxSubscriberRepeats = Math.floor(n);
|
|
543
|
+
return prev;
|
|
544
|
+
}
|
|
545
|
+
function setMaxDrainIterations(n) {
|
|
546
|
+
const prev = maxDrainIterations;
|
|
547
|
+
if (Number.isFinite(n) && n > 0) maxDrainIterations = Math.floor(n);
|
|
548
|
+
return prev;
|
|
549
|
+
}
|
|
384
550
|
function tickRepeat(sub) {
|
|
385
551
|
const s = sub;
|
|
386
552
|
if (s._runEpoch !== drainEpoch) {
|
|
@@ -422,6 +588,20 @@ function drainQueue() {
|
|
|
422
588
|
safeInvoke(sub);
|
|
423
589
|
}
|
|
424
590
|
}
|
|
591
|
+
function drainNotificationQueue() {
|
|
592
|
+
if (notifyDepth > 0) return;
|
|
593
|
+
notifyDepth++;
|
|
594
|
+
drainEpoch++;
|
|
595
|
+
try {
|
|
596
|
+
drainQueue();
|
|
597
|
+
} finally {
|
|
598
|
+
notifyDepth--;
|
|
599
|
+
if (notifyDepth === 0) {
|
|
600
|
+
pendingQueue.length = 0;
|
|
601
|
+
pendingSet.clear();
|
|
602
|
+
}
|
|
603
|
+
}
|
|
604
|
+
}
|
|
425
605
|
function propagateDirty(sub) {
|
|
426
606
|
sub();
|
|
427
607
|
const rootSig = sub._sig;
|
|
@@ -454,6 +634,22 @@ function propagateDirty(sub) {
|
|
|
454
634
|
}
|
|
455
635
|
}
|
|
456
636
|
}
|
|
637
|
+
function queueSignalNotification(signal2) {
|
|
638
|
+
const sig = signal2;
|
|
639
|
+
let node = sig.subsHead ?? null;
|
|
640
|
+
while (node) {
|
|
641
|
+
const s = node.sub;
|
|
642
|
+
if (s) {
|
|
643
|
+
if (s._c) {
|
|
644
|
+
propagateDirty(s);
|
|
645
|
+
} else if (!pendingSet.has(s)) {
|
|
646
|
+
pendingSet.add(s);
|
|
647
|
+
pendingQueue.push(s);
|
|
648
|
+
}
|
|
649
|
+
}
|
|
650
|
+
node = node.sigNext;
|
|
651
|
+
}
|
|
652
|
+
}
|
|
457
653
|
function notifySubscribers(signal2) {
|
|
458
654
|
const sig = signal2;
|
|
459
655
|
const head = sig.subsHead;
|
|
@@ -499,19 +695,139 @@ function notifySubscribers(signal2) {
|
|
|
499
695
|
}
|
|
500
696
|
}
|
|
501
697
|
}
|
|
698
|
+
function getSubscriberCount(signal2) {
|
|
699
|
+
return signal2.__sc ?? 0;
|
|
700
|
+
}
|
|
701
|
+
function getSubscriberDeps(subscriber) {
|
|
702
|
+
const sub = subscriber;
|
|
703
|
+
const out = [];
|
|
704
|
+
let node = sub.depsHead ?? null;
|
|
705
|
+
while (node) {
|
|
706
|
+
if (node.sig) out.push(node.sig);
|
|
707
|
+
node = node.subNext;
|
|
708
|
+
}
|
|
709
|
+
return out;
|
|
710
|
+
}
|
|
711
|
+
function forEachSubscriber(signal2, visit) {
|
|
712
|
+
let node = signal2.subsHead ?? null;
|
|
713
|
+
while (node) {
|
|
714
|
+
const s = node.sub;
|
|
715
|
+
if (s) visit(s);
|
|
716
|
+
node = node.sigNext;
|
|
717
|
+
}
|
|
718
|
+
}
|
|
719
|
+
|
|
720
|
+
// src/reactivity/track.ts
|
|
721
|
+
var _isDev3 = isDev();
|
|
722
|
+
var _runtimeVersion = typeof __SIBU_VERSION__ !== "undefined" ? __SIBU_VERSION__ : "dev";
|
|
723
|
+
var REGISTRY_KEY = /* @__PURE__ */ Symbol.for("sibujs.reactive.v1");
|
|
724
|
+
function resolveReactiveApi() {
|
|
725
|
+
const g = globalThis;
|
|
726
|
+
const existing = g[REGISTRY_KEY];
|
|
727
|
+
if (existing) {
|
|
728
|
+
if (_isDev3 && !existing.__dupWarned) {
|
|
729
|
+
existing.__dupWarned = true;
|
|
730
|
+
devWarn(
|
|
731
|
+
`Multiple instances of the reactive runtime detected on this page (active: ${existing.version}, duplicate: ${_runtimeVersion}). Reactivity still works \u2014 all copies share the first one \u2014 but de-duplicate sibujs in your bundler (e.g. Vite optimizeDeps.exclude: ['sibujs'] or resolve.dedupe: ['sibujs']).`
|
|
732
|
+
);
|
|
733
|
+
}
|
|
734
|
+
return existing;
|
|
735
|
+
}
|
|
736
|
+
const local = {
|
|
737
|
+
suspendTracking,
|
|
738
|
+
resumeTracking,
|
|
739
|
+
isTrackingSuspended,
|
|
740
|
+
untracked,
|
|
741
|
+
retrack,
|
|
742
|
+
track,
|
|
743
|
+
reactiveBinding,
|
|
744
|
+
recordDependency,
|
|
745
|
+
cleanup,
|
|
746
|
+
setMaxSubscriberRepeats,
|
|
747
|
+
setMaxDrainIterations,
|
|
748
|
+
drainNotificationQueue,
|
|
749
|
+
queueSignalNotification,
|
|
750
|
+
notifySubscribers,
|
|
751
|
+
getSubscriberCount,
|
|
752
|
+
getSubscriberDeps,
|
|
753
|
+
forEachSubscriber,
|
|
754
|
+
version: _runtimeVersion
|
|
755
|
+
};
|
|
756
|
+
g[REGISTRY_KEY] = local;
|
|
757
|
+
return local;
|
|
758
|
+
}
|
|
759
|
+
var API = resolveReactiveApi();
|
|
760
|
+
var suspendTracking2 = API.suspendTracking;
|
|
761
|
+
var resumeTracking2 = API.resumeTracking;
|
|
762
|
+
var isTrackingSuspended2 = API.isTrackingSuspended;
|
|
763
|
+
var untracked2 = API.untracked;
|
|
764
|
+
var retrack2 = API.retrack;
|
|
765
|
+
var track2 = API.track;
|
|
766
|
+
var reactiveBinding2 = API.reactiveBinding;
|
|
767
|
+
var recordDependency2 = API.recordDependency;
|
|
768
|
+
var cleanup2 = API.cleanup;
|
|
769
|
+
var setMaxSubscriberRepeats2 = API.setMaxSubscriberRepeats;
|
|
770
|
+
var setMaxDrainIterations2 = API.setMaxDrainIterations;
|
|
771
|
+
var drainNotificationQueue2 = API.drainNotificationQueue;
|
|
772
|
+
var queueSignalNotification2 = API.queueSignalNotification;
|
|
773
|
+
var notifySubscribers2 = API.notifySubscribers;
|
|
774
|
+
var getSubscriberCount2 = API.getSubscriberCount;
|
|
775
|
+
var getSubscriberDeps2 = API.getSubscriberDeps;
|
|
776
|
+
var forEachSubscriber2 = API.forEachSubscriber;
|
|
502
777
|
|
|
503
778
|
// src/reactivity/batch.ts
|
|
504
779
|
var batchDepth = 0;
|
|
505
780
|
var pendingSignals = /* @__PURE__ */ new Set();
|
|
506
|
-
function
|
|
781
|
+
function batchImpl(fn) {
|
|
782
|
+
batchDepth++;
|
|
783
|
+
try {
|
|
784
|
+
return fn();
|
|
785
|
+
} finally {
|
|
786
|
+
batchDepth--;
|
|
787
|
+
if (batchDepth === 0) {
|
|
788
|
+
flushBatch();
|
|
789
|
+
}
|
|
790
|
+
}
|
|
791
|
+
}
|
|
792
|
+
function enqueueBatchedSignalImpl(signal2) {
|
|
507
793
|
if (batchDepth === 0) return false;
|
|
508
794
|
pendingSignals.add(signal2);
|
|
509
795
|
return true;
|
|
510
796
|
}
|
|
797
|
+
function isBatchingImpl() {
|
|
798
|
+
return batchDepth > 0;
|
|
799
|
+
}
|
|
800
|
+
function flushBatch() {
|
|
801
|
+
try {
|
|
802
|
+
for (const signal2 of pendingSignals) {
|
|
803
|
+
queueSignalNotification2(signal2);
|
|
804
|
+
}
|
|
805
|
+
} finally {
|
|
806
|
+
pendingSignals.clear();
|
|
807
|
+
}
|
|
808
|
+
drainNotificationQueue2();
|
|
809
|
+
}
|
|
810
|
+
var BATCH_REGISTRY_KEY = /* @__PURE__ */ Symbol.for("sibujs.reactive.batch.v1");
|
|
811
|
+
function resolveBatchApi() {
|
|
812
|
+
const g = globalThis;
|
|
813
|
+
const existing = g[BATCH_REGISTRY_KEY];
|
|
814
|
+
if (existing) return existing;
|
|
815
|
+
const local = {
|
|
816
|
+
batch: batchImpl,
|
|
817
|
+
enqueueBatchedSignal: enqueueBatchedSignalImpl,
|
|
818
|
+
isBatching: isBatchingImpl
|
|
819
|
+
};
|
|
820
|
+
g[BATCH_REGISTRY_KEY] = local;
|
|
821
|
+
return local;
|
|
822
|
+
}
|
|
823
|
+
var API2 = resolveBatchApi();
|
|
824
|
+
var batch = API2.batch;
|
|
825
|
+
var enqueueBatchedSignal = API2.enqueueBatchedSignal;
|
|
826
|
+
var isBatching = API2.isBatching;
|
|
511
827
|
|
|
512
828
|
// src/core/signals/signal.ts
|
|
513
829
|
var _g = globalThis;
|
|
514
|
-
var
|
|
830
|
+
var _isDev4 = isDev();
|
|
515
831
|
function signal(initial, options) {
|
|
516
832
|
const state = {
|
|
517
833
|
value: initial,
|
|
@@ -522,11 +838,11 @@ function signal(initial, options) {
|
|
|
522
838
|
__activeNode: null,
|
|
523
839
|
__name: void 0
|
|
524
840
|
};
|
|
525
|
-
const debugName =
|
|
841
|
+
const debugName = _isDev4 ? options?.name : void 0;
|
|
526
842
|
const equalsFn = options?.equals;
|
|
527
843
|
if (debugName) state.__name = debugName;
|
|
528
844
|
function get() {
|
|
529
|
-
|
|
845
|
+
recordDependency2(state);
|
|
530
846
|
return state.value;
|
|
531
847
|
}
|
|
532
848
|
get.__signal = state;
|
|
@@ -539,15 +855,15 @@ function signal(initial, options) {
|
|
|
539
855
|
if (equalsFn(prev, newValue)) return;
|
|
540
856
|
state.value = newValue;
|
|
541
857
|
state.__v++;
|
|
542
|
-
if (
|
|
858
|
+
if (_isDev4) {
|
|
543
859
|
const hook = _g.__SIBU_DEVTOOLS_GLOBAL_HOOK__;
|
|
544
860
|
if (hook) hook.emit("signal:update", { signal: state, name: debugName, oldValue: prev, newValue });
|
|
545
861
|
}
|
|
546
862
|
if (!enqueueBatchedSignal(state)) {
|
|
547
|
-
|
|
863
|
+
notifySubscribers2(state);
|
|
548
864
|
}
|
|
549
865
|
};
|
|
550
|
-
} else if (
|
|
866
|
+
} else if (_isDev4) {
|
|
551
867
|
set = (next) => {
|
|
552
868
|
const prev = state.value;
|
|
553
869
|
const newValue = typeof next === "function" ? next(prev) : next;
|
|
@@ -557,7 +873,7 @@ function signal(initial, options) {
|
|
|
557
873
|
const hook = _g.__SIBU_DEVTOOLS_GLOBAL_HOOK__;
|
|
558
874
|
if (hook) hook.emit("signal:update", { signal: state, name: debugName, oldValue: prev, newValue });
|
|
559
875
|
if (!enqueueBatchedSignal(state)) {
|
|
560
|
-
|
|
876
|
+
notifySubscribers2(state);
|
|
561
877
|
}
|
|
562
878
|
};
|
|
563
879
|
} else {
|
|
@@ -568,11 +884,11 @@ function signal(initial, options) {
|
|
|
568
884
|
state.value = newValue;
|
|
569
885
|
state.__v++;
|
|
570
886
|
if (!enqueueBatchedSignal(state)) {
|
|
571
|
-
|
|
887
|
+
notifySubscribers2(state);
|
|
572
888
|
}
|
|
573
889
|
};
|
|
574
890
|
}
|
|
575
|
-
if (
|
|
891
|
+
if (_isDev4) {
|
|
576
892
|
const hook = _g.__SIBU_DEVTOOLS_GLOBAL_HOOK__;
|
|
577
893
|
if (hook) hook.emit("signal:create", { signal: state, name: debugName, getter: get, initial });
|
|
578
894
|
}
|
|
@@ -595,7 +911,7 @@ function TransitionGroup(options) {
|
|
|
595
911
|
}
|
|
596
912
|
setElements((prev) => prev.filter((e) => e !== el));
|
|
597
913
|
}
|
|
598
|
-
function
|
|
914
|
+
function track3(newElements) {
|
|
599
915
|
const oldPositions = /* @__PURE__ */ new Map();
|
|
600
916
|
for (const el of elements()) {
|
|
601
917
|
if (typeof el.getBoundingClientRect === "function") {
|
|
@@ -637,7 +953,7 @@ function TransitionGroup(options) {
|
|
|
637
953
|
}
|
|
638
954
|
}
|
|
639
955
|
}
|
|
640
|
-
return { add, remove, track };
|
|
956
|
+
return { add, remove, track: track3 };
|
|
641
957
|
}
|
|
642
958
|
|
|
643
959
|
// src/ui/viewTransition.ts
|
package/dist/motion.js
CHANGED
|
@@ -19,9 +19,9 @@ import {
|
|
|
19
19
|
stagger,
|
|
20
20
|
transition,
|
|
21
21
|
viewTransition
|
|
22
|
-
} from "./chunk-
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-
|
|
22
|
+
} from "./chunk-WL7BIR6O.js";
|
|
23
|
+
import "./chunk-WZG2SZOT.js";
|
|
24
|
+
import "./chunk-TEFZT5PJ.js";
|
|
25
25
|
import "./chunk-COY6PUD2.js";
|
|
26
26
|
export {
|
|
27
27
|
TransitionGroup,
|