solid-js 2.0.0-beta.5 → 2.0.0-beta.7

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/dev.js CHANGED
@@ -1,5 +1,5 @@
1
- import { getContext, createMemo as createMemo$1, flatten, getOwner, createRoot, setContext, untrack, createOwner, runWithOwner, createEffect as createEffect$1, createErrorBoundary as createErrorBoundary$1, createLoadingBoundary as createLoadingBoundary$1, onCleanup, isDisposed, createOptimistic as createOptimistic$1, createOptimisticStore as createOptimisticStore$1, createProjection as createProjection$1, createRenderEffect as createRenderEffect$1, createSignal as createSignal$1, createStore as createStore$1, setSnapshotCapture, releaseSnapshotScope, getNextChildId, markSnapshotScope, flush, peekNextChildId, clearSnapshots, mapArray, repeat } from '@solidjs/signals';
2
- export { $PROXY, $REFRESH, $TRACK, NotReadyError, action, createOwner, createReaction, createRoot, createTrackedEffect, deep, enableExternalSource, enforceLoadingBoundary, flatten, flush, getNextChildId, getObserver, getOwner, isEqual, isPending, isRefreshing, isWrappable, latest, mapArray, merge, omit, onCleanup, onSettled, reconcile, refresh, repeat, resolve, runWithOwner, snapshot, storePath, untrack } from '@solidjs/signals';
1
+ import { getContext, createMemo as createMemo$1, flatten, createRoot, setContext, getOwner, untrack, createOwner, runWithOwner, createEffect as createEffect$1, createErrorBoundary as createErrorBoundary$1, createLoadingBoundary as createLoadingBoundary$1, createOptimistic as createOptimistic$1, createOptimisticStore as createOptimisticStore$1, createProjection as createProjection$1, createRenderEffect as createRenderEffect$1, createSignal as createSignal$1, createStore as createStore$1, setSnapshotCapture, releaseSnapshotScope, getNextChildId, onCleanup, isDisposed, peekNextChildId, clearSnapshots, flush, markSnapshotScope, mapArray, repeat, createRevealOrder, DEV as DEV$1 } from '@solidjs/signals';
2
+ export { $PROXY, $REFRESH, $TRACK, NotReadyError, action, createOwner, createReaction, createRevealOrder, createRoot, createTrackedEffect, deep, enableExternalSource, enforceLoadingBoundary, flatten, flush, getNextChildId, getObserver, getOwner, isDisposed, isEqual, isPending, isRefreshing, isWrappable, latest, mapArray, merge, omit, onCleanup, onSettled, reconcile, refresh, repeat, resolve, runWithOwner, snapshot, storePath, untrack } from '@solidjs/signals';
3
3
 
4
4
  const $DEVCOMP = Symbol("COMPONENT_DEV" );
5
5
  function createContext(defaultValue, options) {
@@ -18,10 +18,10 @@ function useContext(context) {
18
18
  return getContext(context);
19
19
  }
20
20
  function children(fn) {
21
- const c = createMemo$1(fn, undefined, {
21
+ const c = createMemo$1(fn, {
22
22
  lazy: true
23
23
  });
24
- const memo = createMemo$1(() => flatten(c()), undefined, {
24
+ const memo = createMemo$1(() => flatten(c()), {
25
25
  name: "children",
26
26
  lazy: true
27
27
  } );
@@ -34,9 +34,11 @@ function children(fn) {
34
34
  function devComponent(Comp, props) {
35
35
  return createRoot(() => {
36
36
  const owner = getOwner();
37
- owner._props = props;
38
- owner._name = Comp.name;
39
- owner._component = Comp;
37
+ owner._component = {
38
+ fn: Comp,
39
+ props,
40
+ name: Comp.name
41
+ };
40
42
  Object.assign(Comp, {
41
43
  [$DEVCOMP]: true
42
44
  });
@@ -45,12 +47,6 @@ function devComponent(Comp, props) {
45
47
  transparent: true
46
48
  });
47
49
  }
48
- function registerGraph(value) {
49
- const owner = getOwner();
50
- if (!owner) return;
51
- if (owner.sourceMap) owner.sourceMap.push(value);else owner.sourceMap = [value];
52
- value.graph = owner;
53
- }
54
50
 
55
51
  const NoHydrateContext = {
56
52
  id: Symbol("NoHydrateContext"),
@@ -285,7 +281,7 @@ function wrapFirstYield(iterable, activate) {
285
281
  }
286
282
  };
287
283
  }
288
- function hydrateSignalFromAsyncIterable(coreFn, compute, value, options) {
284
+ function hydrateSignalFromAsyncIterable(coreFn, compute, options) {
289
285
  const parent = getOwner();
290
286
  const expectedId = peekNextChildId(parent);
291
287
  if (!sharedConfig.has(expectedId)) return null;
@@ -297,7 +293,7 @@ function hydrateSignalFromAsyncIterable(coreFn, compute, value, options) {
297
293
  return it;
298
294
  }
299
295
  };
300
- return coreFn(() => iterable, value, options);
296
+ return coreFn(() => iterable, options);
301
297
  }
302
298
  function hydrateStoreFromAsyncIterable(coreFn, initialValue, options) {
303
299
  const parent = getOwner();
@@ -372,20 +368,20 @@ function hydrateStoreFromAsyncIterable(coreFn, initialValue, options) {
372
368
  };
373
369
  }, initialValue, options);
374
370
  }
375
- function hydratedCreateMemo(compute, value, options) {
371
+ function hydratedCreateMemo(compute, options) {
376
372
  if (!sharedConfig.hydrating || options?.transparent) {
377
- return createMemo$1(compute, value, options);
373
+ return createMemo$1(compute, options);
378
374
  }
379
375
  markTopLevelSnapshotScope();
380
376
  const ssrSource = options?.ssrSource;
381
377
  if (ssrSource === "client") {
382
378
  const [hydrated, setHydrated] = createSignal$1(false, {
383
- pureWrite: true
379
+ ownedWrite: true
384
380
  });
385
381
  const memo = createMemo$1(prev => {
386
- if (!hydrated()) return prev ?? value;
382
+ if (!hydrated()) return prev;
387
383
  return compute(prev);
388
- }, value, options);
384
+ }, options);
389
385
  setHydrated(true);
390
386
  return memo;
391
387
  }
@@ -393,25 +389,25 @@ function hydratedCreateMemo(compute, value, options) {
393
389
  return createMemo$1(prev => {
394
390
  if (!sharedConfig.hydrating) return compute(prev);
395
391
  subFetch(compute, prev);
396
- return prev ?? value;
397
- }, value, options);
392
+ return prev;
393
+ }, options);
398
394
  }
399
- const aiResult = hydrateSignalFromAsyncIterable(createMemo$1, compute, value, options);
395
+ const aiResult = hydrateSignalFromAsyncIterable(createMemo$1, compute, options);
400
396
  if (aiResult !== null) return aiResult;
401
- return createMemo$1(prev => readSerializedOrCompute(compute, prev), value, options);
397
+ return createMemo$1(prev => readSerializedOrCompute(compute, prev), options);
402
398
  }
403
- function hydratedCreateSignal(fn, second, third) {
404
- if (typeof fn !== "function" || !sharedConfig.hydrating) return createSignal$1(fn, second, third);
399
+ function hydratedCreateSignal(fn, second) {
400
+ if (typeof fn !== "function" || !sharedConfig.hydrating) return createSignal$1(fn, second);
405
401
  markTopLevelSnapshotScope();
406
- const ssrSource = third?.ssrSource;
402
+ const ssrSource = second?.ssrSource;
407
403
  if (ssrSource === "client") {
408
404
  const [hydrated, setHydrated] = createSignal$1(false, {
409
- pureWrite: true
405
+ ownedWrite: true
410
406
  });
411
407
  const sig = createSignal$1(prev => {
412
- if (!hydrated()) return prev ?? second;
408
+ if (!hydrated()) return prev;
413
409
  return fn(prev);
414
- }, second, third);
410
+ }, second);
415
411
  setHydrated(true);
416
412
  return sig;
417
413
  }
@@ -419,12 +415,12 @@ function hydratedCreateSignal(fn, second, third) {
419
415
  return createSignal$1(prev => {
420
416
  if (!sharedConfig.hydrating) return fn(prev);
421
417
  subFetch(fn, prev);
422
- return prev ?? second;
423
- }, second, third);
418
+ return prev;
419
+ }, second);
424
420
  }
425
- const aiResult = hydrateSignalFromAsyncIterable(createSignal$1, fn, second, third);
421
+ const aiResult = hydrateSignalFromAsyncIterable(createSignal$1, fn, second);
426
422
  if (aiResult !== null) return aiResult;
427
- return createSignal$1(prev => readSerializedOrCompute(fn, prev), second, third);
423
+ return createSignal$1(prev => readSerializedOrCompute(fn, prev), second);
428
424
  }
429
425
  function hydratedCreateErrorBoundary(fn, fallback) {
430
426
  if (!sharedConfig.hydrating) return createErrorBoundary$1(fn, fallback);
@@ -446,18 +442,18 @@ function hydratedCreateErrorBoundary(fn, fallback) {
446
442
  }
447
443
  return createErrorBoundary$1(fn, fallback);
448
444
  }
449
- function hydratedCreateOptimistic(fn, second, third) {
450
- if (typeof fn !== "function" || !sharedConfig.hydrating) return createOptimistic$1(fn, second, third);
445
+ function hydratedCreateOptimistic(fn, second) {
446
+ if (typeof fn !== "function" || !sharedConfig.hydrating) return createOptimistic$1(fn, second);
451
447
  markTopLevelSnapshotScope();
452
- const ssrSource = third?.ssrSource;
448
+ const ssrSource = second?.ssrSource;
453
449
  if (ssrSource === "client") {
454
450
  const [hydrated, setHydrated] = createSignal$1(false, {
455
- pureWrite: true
451
+ ownedWrite: true
456
452
  });
457
453
  const sig = createOptimistic$1(prev => {
458
- if (!hydrated()) return prev ?? second;
454
+ if (!hydrated()) return prev;
459
455
  return fn(prev);
460
- }, second, third);
456
+ }, second);
461
457
  setHydrated(true);
462
458
  return sig;
463
459
  }
@@ -465,12 +461,12 @@ function hydratedCreateOptimistic(fn, second, third) {
465
461
  return createOptimistic$1(prev => {
466
462
  if (!sharedConfig.hydrating) return fn(prev);
467
463
  subFetch(fn, prev);
468
- return prev ?? second;
469
- }, second, third);
464
+ return prev;
465
+ }, second);
470
466
  }
471
- const aiResult = hydrateSignalFromAsyncIterable(createOptimistic$1, fn, second, third);
467
+ const aiResult = hydrateSignalFromAsyncIterable(createOptimistic$1, fn, second);
472
468
  if (aiResult !== null) return aiResult;
473
- return createOptimistic$1(prev => readSerializedOrCompute(fn, prev), second, third);
469
+ return createOptimistic$1(prev => readSerializedOrCompute(fn, prev), second);
474
470
  }
475
471
  function wrapStoreFn(fn) {
476
472
  return draft => readSerializedOrCompute(() => fn(draft), draft);
@@ -478,7 +474,7 @@ function wrapStoreFn(fn) {
478
474
  function hydrateStoreLikeFn(coreFn, fn, initialValue, options, ssrSource) {
479
475
  if (ssrSource === "client") {
480
476
  const [hydrated, setHydrated] = createSignal$1(false, {
481
- pureWrite: true
477
+ ownedWrite: true
482
478
  });
483
479
  const result = coreFn(draft => {
484
480
  if (!hydrated()) return;
@@ -489,7 +485,7 @@ function hydrateStoreLikeFn(coreFn, fn, initialValue, options, ssrSource) {
489
485
  }
490
486
  if (ssrSource === "hybrid") {
491
487
  const [hydrated, setHydrated] = createSignal$1(false, {
492
- pureWrite: true
488
+ ownedWrite: true
493
489
  });
494
490
  const result = coreFn(draft => {
495
491
  const o = getOwner();
@@ -519,14 +515,14 @@ function hydratedCreateStore(first, second, third) {
519
515
  if (typeof first !== "function" || !sharedConfig.hydrating) return createStore$1(first, second, third);
520
516
  markTopLevelSnapshotScope();
521
517
  const ssrSource = third?.ssrSource;
522
- if (ssrSource === "initial") return createStore$1(second ?? {}, undefined, third);
518
+ if (ssrSource === "initial") return createStore$1(second ?? {});
523
519
  return hydrateStoreLikeFn(createStore$1, first, second ?? {}, third, ssrSource);
524
520
  }
525
521
  function hydratedCreateOptimisticStore(first, second, third) {
526
522
  if (typeof first !== "function" || !sharedConfig.hydrating) return createOptimisticStore$1(first, second, third);
527
523
  markTopLevelSnapshotScope();
528
524
  const ssrSource = third?.ssrSource;
529
- if (ssrSource === "initial") return createOptimisticStore$1(second ?? {}, undefined, third);
525
+ if (ssrSource === "initial") return createOptimisticStore$1(second ?? {});
530
526
  return hydrateStoreLikeFn(createOptimisticStore$1, first, second ?? {}, third, ssrSource);
531
527
  }
532
528
  function hydratedCreateProjection(fn, initialValue, options) {
@@ -536,22 +532,22 @@ function hydratedCreateProjection(fn, initialValue, options) {
536
532
  if (ssrSource === "initial") return createProjection$1(draft => draft, initialValue, options);
537
533
  return hydrateStoreLikeFn(createProjection$1, fn, initialValue, options, ssrSource);
538
534
  }
539
- function hydratedEffect(coreFn, compute, effectFn, value, options) {
540
- if (!sharedConfig.hydrating) return coreFn(compute, effectFn, value, options);
535
+ function hydratedEffect(coreFn, compute, effectFn, options) {
536
+ if (!sharedConfig.hydrating || options?.transparent) return coreFn(compute, effectFn, options);
541
537
  const ssrSource = options?.ssrSource;
542
538
  if (ssrSource === "client") {
543
539
  const [hydrated, setHydrated] = createSignal$1(false, {
544
- pureWrite: true
540
+ ownedWrite: true
545
541
  });
546
542
  let active = false;
547
543
  coreFn(prev => {
548
- if (!hydrated()) return value;
544
+ if (!hydrated()) return prev;
549
545
  active = true;
550
546
  return compute(prev);
551
547
  }, (next, prev) => {
552
548
  if (!active) return;
553
549
  return effectFn(next, prev);
554
- }, value, options);
550
+ }, options);
555
551
  setHydrated(true);
556
552
  return;
557
553
  }
@@ -559,18 +555,18 @@ function hydratedEffect(coreFn, compute, effectFn, value, options) {
559
555
  coreFn(prev => {
560
556
  if (!sharedConfig.hydrating) return compute(prev);
561
557
  subFetch(compute, prev);
562
- return prev ?? value;
563
- }, effectFn, value, options);
558
+ return prev;
559
+ }, effectFn, options);
564
560
  return;
565
561
  }
566
562
  markTopLevelSnapshotScope();
567
- coreFn(prev => readSerializedOrCompute(compute, prev), effectFn, value, options);
563
+ coreFn(prev => readSerializedOrCompute(compute, prev), effectFn, options);
568
564
  }
569
- function hydratedCreateRenderEffect(compute, effectFn, value, options) {
570
- return hydratedEffect(createRenderEffect$1, compute, effectFn, value, options);
565
+ function hydratedCreateRenderEffect(compute, effectFn, options) {
566
+ return hydratedEffect(createRenderEffect$1, compute, effectFn, options);
571
567
  }
572
- function hydratedCreateEffect(compute, effectFn, value, options) {
573
- return hydratedEffect(createEffect$1, compute, effectFn, value, options);
568
+ function hydratedCreateEffect(compute, effectFn, options) {
569
+ return hydratedEffect(createEffect$1, compute, effectFn, options);
574
570
  }
575
571
  function enableHydration() {
576
572
  _createMemo = hydratedCreateMemo;
@@ -629,24 +625,6 @@ const createStore = (...args) => (_createStore || createStore$1)(...args);
629
625
  const createOptimisticStore = (...args) => (_createOptimisticStore || createOptimisticStore$1)(...args);
630
626
  const createRenderEffect = (...args) => (_createRenderEffect || createRenderEffect$1)(...args);
631
627
  const createEffect = (...args) => (_createEffect || createEffect$1)(...args);
632
- function loadModuleAssets(mapping) {
633
- const hy = globalThis._$HY;
634
- if (!hy) return;
635
- if (!hy.modules) hy.modules = {};
636
- if (!hy.loading) hy.loading = {};
637
- const pending = [];
638
- for (const moduleUrl in mapping) {
639
- if (hy.modules[moduleUrl]) continue;
640
- const entryUrl = mapping[moduleUrl];
641
- if (!hy.loading[moduleUrl]) {
642
- hy.loading[moduleUrl] = import(entryUrl).then(mod => {
643
- hy.modules[moduleUrl] = mod;
644
- });
645
- }
646
- pending.push(hy.loading[moduleUrl]);
647
- }
648
- return pending.length ? Promise.all(pending).then(() => {}) : undefined;
649
- }
650
628
  function createBoundaryTrigger() {
651
629
  setSnapshotCapture(false);
652
630
  const [s, set] = createSignal$1(undefined, {
@@ -674,6 +652,38 @@ function resumeBoundaryHydration(o, id, set) {
674
652
  flush();
675
653
  checkHydrationComplete();
676
654
  }
655
+ function initBoundaryResume(o, id) {
656
+ _pendingBoundaries++;
657
+ onCleanup(() => {
658
+ if (!isDisposed(o)) return;
659
+ sharedConfig.cleanupFragment?.(id);
660
+ });
661
+ const set = createBoundaryTrigger();
662
+ return [set, () => resumeBoundaryHydration(o, id, set)];
663
+ }
664
+ function waitAndResume(p, resume, assetPromise) {
665
+ const waitFor = assetPromise ? Promise.all([p, assetPromise]) : p;
666
+ waitFor.then(() => {
667
+ if (p && typeof p === "object") p.s = 1;
668
+ resume();
669
+ }, err => {
670
+ if (p && typeof p === "object") {
671
+ p.s = 2;
672
+ p.v = err;
673
+ }
674
+ resume();
675
+ });
676
+ }
677
+ function scheduleResumeAfterAssets(id, resume, assetPromise) {
678
+ sharedConfig.gather?.(id);
679
+ const doResume = () => queueMicrotask(resume);
680
+ if (assetPromise) {
681
+ assetPromise.then(doResume);
682
+ return true;
683
+ }
684
+ doResume();
685
+ return false;
686
+ }
677
687
  function createLoadingBoundary(fn, fallback, options) {
678
688
  if (!sharedConfig.hydrating) return createLoadingBoundary$1(fn, fallback, options);
679
689
  let settledSerializationResumeQueued = false;
@@ -683,7 +693,7 @@ function createLoadingBoundary(fn, fallback, options) {
683
693
  let assetPromise;
684
694
  if (sharedConfig.hydrating && sharedConfig.has(id + "_assets")) {
685
695
  const mapping = sharedConfig.load(id + "_assets");
686
- if (mapping && typeof mapping === "object") assetPromise = loadModuleAssets(mapping);
696
+ if (mapping && typeof mapping === "object") assetPromise = sharedConfig.loadModuleAssets?.(mapping);
687
697
  }
688
698
  if (sharedConfig.hydrating && sharedConfig.has(id)) {
689
699
  const ref = sharedConfig.load(id);
@@ -693,41 +703,14 @@ function createLoadingBoundary(fn, fallback, options) {
693
703
  }
694
704
  if (ref && typeof ref === "object" && ref.s === 1 && p == null && !settledSerializationResumeQueued) {
695
705
  settledSerializationResumeQueued = true;
696
- _pendingBoundaries++;
697
- onCleanup(() => {
698
- if (!isDisposed(o)) return;
699
- sharedConfig.cleanupFragment?.(id);
700
- });
701
- const set = createBoundaryTrigger();
702
- const scheduleResume = () => queueMicrotask(() => resumeBoundaryHydration(o, id, set));
703
- if (assetPromise) {
704
- assetPromise.then(scheduleResume);
705
- return undefined;
706
- }
707
- scheduleResume();
706
+ const [, resume] = initBoundaryResume(o, id);
707
+ if (scheduleResumeAfterAssets(id, resume, assetPromise)) return undefined;
708
708
  return fallback();
709
709
  }
710
710
  if (p) {
711
- _pendingBoundaries++;
712
- onCleanup(() => {
713
- if (!isDisposed(o)) return;
714
- sharedConfig.cleanupFragment?.(id);
715
- });
716
- const set = createBoundaryTrigger();
711
+ const [set, resume] = initBoundaryResume(o, id);
717
712
  if (p !== "$$f") {
718
- const waitFor = assetPromise ? Promise.all([p, assetPromise]) : p;
719
- waitFor.then(() => {
720
- if (p && typeof p === "object") {
721
- p.s = 1;
722
- }
723
- resumeBoundaryHydration(o, id, set);
724
- }, err => {
725
- if (p && typeof p === "object") {
726
- p.s = 2;
727
- p.v = err;
728
- }
729
- resumeBoundaryHydration(o, id, set);
730
- });
713
+ waitAndResume(p, resume, assetPromise);
731
714
  } else {
732
715
  const afterAssets = () => {
733
716
  _pendingBoundaries--;
@@ -739,10 +722,20 @@ function createLoadingBoundary(fn, fallback, options) {
739
722
  return fallback();
740
723
  }
741
724
  }
725
+ if (sharedConfig.hydrating && sharedConfig.has(id + "_fr") && !settledSerializationResumeQueued) {
726
+ settledSerializationResumeQueued = true;
727
+ const fr = sharedConfig.load(id + "_fr");
728
+ const [, resume] = initBoundaryResume(o, id);
729
+ if (fr && typeof fr === "object" && (fr.s === 1 || fr.s === 2)) {
730
+ if (scheduleResumeAfterAssets(id, resume, assetPromise)) return undefined;
731
+ return fallback();
732
+ }
733
+ waitAndResume(fr, resume, assetPromise);
734
+ return fallback();
735
+ }
742
736
  if (assetPromise && !sharedConfig.has(id)) {
743
- _pendingBoundaries++;
744
- const set = createBoundaryTrigger();
745
- assetPromise.then(() => resumeBoundaryHydration(o, id, set));
737
+ const [, resume] = initBoundaryResume(o, id);
738
+ assetPromise.then(resume);
746
739
  return undefined;
747
740
  }
748
741
  return createLoadingBoundary$1(fn, fallback, options);
@@ -819,10 +812,10 @@ function Repeat(props) {
819
812
  }
820
813
  function Show(props) {
821
814
  const keyed = props.keyed;
822
- const conditionValue = createMemo$1(() => props.when, undefined, {
815
+ const conditionValue = createMemo$1(() => props.when, {
823
816
  name: "condition value"
824
817
  } );
825
- const condition = keyed ? conditionValue : createMemo$1(conditionValue, undefined, {
818
+ const condition = keyed ? conditionValue : createMemo$1(conditionValue, {
826
819
  equals: (a, b) => !a === !b,
827
820
  name: "condition"
828
821
  } );
@@ -837,7 +830,7 @@ function Show(props) {
837
830
  }), "<Show>") : child;
838
831
  }
839
832
  return props.fallback;
840
- }, undefined, {
833
+ }, {
841
834
  name: "value"
842
835
  } );
843
836
  }
@@ -850,10 +843,10 @@ function Switch(props) {
850
843
  const index = i;
851
844
  const mp = mps[i];
852
845
  const prevFunc = func;
853
- const conditionValue = createMemo$1(() => prevFunc() ? undefined : mp.when, undefined, {
846
+ const conditionValue = createMemo$1(() => prevFunc() ? undefined : mp.when, {
854
847
  name: "condition value"
855
848
  } );
856
- const condition = mp.keyed ? conditionValue : createMemo$1(conditionValue, undefined, {
849
+ const condition = mp.keyed ? conditionValue : createMemo$1(conditionValue, {
857
850
  equals: (a, b) => !a === !b,
858
851
  name: "condition"
859
852
  } );
@@ -871,7 +864,7 @@ function Switch(props) {
871
864
  if (untrack(switchFunc)()?.[0] !== index) throw narrowedError("Match");
872
865
  return conditionValue();
873
866
  }), "<Match>") : child;
874
- }, undefined, {
867
+ }, {
875
868
  name: "eval conditions"
876
869
  } );
877
870
  }
@@ -891,16 +884,18 @@ function Loading(props) {
891
884
  } : undefined;
892
885
  return createLoadingBoundary(() => props.children, () => props.fallback, onOpt);
893
886
  }
887
+ function Reveal(props) {
888
+ return createRevealOrder(() => props.children, {
889
+ together: () => !!props.together,
890
+ collapsed: () => !!props.collapsed
891
+ });
892
+ }
894
893
 
895
894
  function ssrHandleError() {}
896
895
  function ssrRunInScope() {}
897
- const DevHooks = {};
898
- const DEV = {
899
- hooks: DevHooks,
900
- registerGraph
901
- } ;
896
+ const DEV = DEV$1 ;
902
897
  if (globalThis) {
903
898
  if (!globalThis.Solid$$) globalThis.Solid$$ = true;else console.warn("You appear to have multiple instances of Solid. This can lead to unexpected behavior.");
904
899
  }
905
900
 
906
- export { $DEVCOMP, DEV, Errored, For, Hydration, Loading, Match, NoHydrateContext, NoHydration, Repeat, Show, Switch, children, createComponent, createContext, createEffect, createErrorBoundary, createLoadingBoundary, createMemo, createOptimistic, createOptimisticStore, createProjection, createRenderEffect, createSignal, createStore, createUniqueId, enableHydration, lazy, sharedConfig, ssrHandleError, ssrRunInScope, useContext };
901
+ export { $DEVCOMP, DEV, Errored, For, Hydration, Loading, Match, NoHydrateContext, NoHydration, Repeat, Reveal, Show, Switch, children, createComponent, createContext, createEffect, createErrorBoundary, createLoadingBoundary, createMemo, createOptimistic, createOptimisticStore, createProjection, createRenderEffect, createSignal, createStore, createUniqueId, enableHydration, lazy, sharedConfig, ssrHandleError, ssrRunInScope, useContext };