🚨 Latest Research:Tanstack npm Packages Compromised in Ongoing Mini Shai-Hulud Supply-Chain Attack.Learn More
Socket
Book a DemoSign in
Socket

solid-js

Package Overview
Dependencies
Maintainers
1
Versions
503
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

solid-js - npm Package Compare versions

Comparing version
2.0.0-beta.5
to
2.0.0-beta.6
+70
-48
dist/dev.cjs

@@ -38,5 +38,7 @@ 'use strict';

const owner = signals.getOwner();
owner._props = props;
owner._name = Comp.name;
owner._component = Comp;
owner._component = {
fn: Comp,
props,
name: Comp.name
};
Object.assign(Comp, {

@@ -50,8 +52,2 @@ [$DEVCOMP]: true

}
function registerGraph(value) {
const owner = signals.getOwner();
if (!owner) return;
if (owner.sourceMap) owner.sourceMap.push(value);else owner.sourceMap = [value];
value.graph = owner;
}

@@ -680,2 +676,34 @@ const NoHydrateContext = {

}
function initBoundaryResume(o, id) {
_pendingBoundaries++;
signals.onCleanup(() => {
if (!signals.isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
return [set, () => resumeBoundaryHydration(o, id, set)];
}
function waitAndResume(p, resume, assetPromise) {
const waitFor = assetPromise ? Promise.all([p, assetPromise]) : p;
waitFor.then(() => {
if (p && typeof p === "object") p.s = 1;
resume();
}, err => {
if (p && typeof p === "object") {
p.s = 2;
p.v = err;
}
resume();
});
}
function scheduleResumeAfterAssets(id, resume, assetPromise) {
sharedConfig.gather?.(id);
const doResume = () => queueMicrotask(resume);
if (assetPromise) {
assetPromise.then(doResume);
return true;
}
doResume();
return false;
}
function createLoadingBoundary(fn, fallback, options) {

@@ -700,37 +728,10 @@ if (!sharedConfig.hydrating) return signals.createLoadingBoundary(fn, fallback, options);

settledSerializationResumeQueued = true;
_pendingBoundaries++;
signals.onCleanup(() => {
if (!signals.isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
const scheduleResume = () => queueMicrotask(() => resumeBoundaryHydration(o, id, set));
if (assetPromise) {
assetPromise.then(scheduleResume);
return undefined;
}
scheduleResume();
const [, resume] = initBoundaryResume(o, id);
if (scheduleResumeAfterAssets(id, resume, assetPromise)) return undefined;
return fallback();
}
if (p) {
_pendingBoundaries++;
signals.onCleanup(() => {
if (!signals.isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
const [set, resume] = initBoundaryResume(o, id);
if (p !== "$$f") {
const waitFor = assetPromise ? Promise.all([p, assetPromise]) : p;
waitFor.then(() => {
if (p && typeof p === "object") {
p.s = 1;
}
resumeBoundaryHydration(o, id, set);
}, err => {
if (p && typeof p === "object") {
p.s = 2;
p.v = err;
}
resumeBoundaryHydration(o, id, set);
});
waitAndResume(p, resume, assetPromise);
} else {

@@ -747,6 +748,16 @@ const afterAssets = () => {

}
if (sharedConfig.hydrating && sharedConfig.has(id + "_fr") && !settledSerializationResumeQueued) {
settledSerializationResumeQueued = true;
const fr = sharedConfig.load(id + "_fr");
const [, resume] = initBoundaryResume(o, id);
if (fr && typeof fr === "object" && (fr.s === 1 || fr.s === 2)) {
if (scheduleResumeAfterAssets(id, resume, assetPromise)) return undefined;
return fallback();
}
waitAndResume(fr, resume, assetPromise);
return fallback();
}
if (assetPromise && !sharedConfig.has(id)) {
_pendingBoundaries++;
const set = createBoundaryTrigger();
assetPromise.then(() => resumeBoundaryHydration(o, id, set));
const [, resume] = initBoundaryResume(o, id);
assetPromise.then(resume);
return undefined;

@@ -900,10 +911,12 @@ }

}
function Reveal(props) {
return signals.createRevealOrder(() => props.children, {
together: () => !!props.together,
collapsed: () => !!props.collapsed
});
}
function ssrHandleError() {}
function ssrRunInScope() {}
const DevHooks = {};
const DEV = {
hooks: DevHooks,
registerGraph
} ;
const DEV = signals.DEV ;
if (globalThis) {

@@ -941,2 +954,6 @@ if (!globalThis.Solid$$) globalThis.Solid$$ = true;else console.warn("You appear to have multiple instances of Solid. This can lead to unexpected behavior.");

});
Object.defineProperty(exports, "createRevealOrder", {
enumerable: true,
get: function () { return signals.createRevealOrder; }
});
Object.defineProperty(exports, "createRoot", {

@@ -982,2 +999,6 @@ enumerable: true,

});
Object.defineProperty(exports, "isDisposed", {
enumerable: true,
get: function () { return signals.isDisposed; }
});
Object.defineProperty(exports, "isEqual", {

@@ -1065,2 +1086,3 @@ enumerable: true,

exports.Repeat = Repeat;
exports.Reveal = Reveal;
exports.Show = Show;

@@ -1067,0 +1089,0 @@ exports.Switch = Switch;

@@ -1,3 +0,3 @@

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';
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';
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';
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';

@@ -37,5 +37,7 @@ const $DEVCOMP = Symbol("COMPONENT_DEV" );

const owner = getOwner();
owner._props = props;
owner._name = Comp.name;
owner._component = Comp;
owner._component = {
fn: Comp,
props,
name: Comp.name
};
Object.assign(Comp, {

@@ -49,8 +51,2 @@ [$DEVCOMP]: true

}
function registerGraph(value) {
const owner = getOwner();
if (!owner) return;
if (owner.sourceMap) owner.sourceMap.push(value);else owner.sourceMap = [value];
value.graph = owner;
}

@@ -679,2 +675,34 @@ const NoHydrateContext = {

}
function initBoundaryResume(o, id) {
_pendingBoundaries++;
onCleanup(() => {
if (!isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
return [set, () => resumeBoundaryHydration(o, id, set)];
}
function waitAndResume(p, resume, assetPromise) {
const waitFor = assetPromise ? Promise.all([p, assetPromise]) : p;
waitFor.then(() => {
if (p && typeof p === "object") p.s = 1;
resume();
}, err => {
if (p && typeof p === "object") {
p.s = 2;
p.v = err;
}
resume();
});
}
function scheduleResumeAfterAssets(id, resume, assetPromise) {
sharedConfig.gather?.(id);
const doResume = () => queueMicrotask(resume);
if (assetPromise) {
assetPromise.then(doResume);
return true;
}
doResume();
return false;
}
function createLoadingBoundary(fn, fallback, options) {

@@ -699,37 +727,10 @@ if (!sharedConfig.hydrating) return createLoadingBoundary$1(fn, fallback, options);

settledSerializationResumeQueued = true;
_pendingBoundaries++;
onCleanup(() => {
if (!isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
const scheduleResume = () => queueMicrotask(() => resumeBoundaryHydration(o, id, set));
if (assetPromise) {
assetPromise.then(scheduleResume);
return undefined;
}
scheduleResume();
const [, resume] = initBoundaryResume(o, id);
if (scheduleResumeAfterAssets(id, resume, assetPromise)) return undefined;
return fallback();
}
if (p) {
_pendingBoundaries++;
onCleanup(() => {
if (!isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
const [set, resume] = initBoundaryResume(o, id);
if (p !== "$$f") {
const waitFor = assetPromise ? Promise.all([p, assetPromise]) : p;
waitFor.then(() => {
if (p && typeof p === "object") {
p.s = 1;
}
resumeBoundaryHydration(o, id, set);
}, err => {
if (p && typeof p === "object") {
p.s = 2;
p.v = err;
}
resumeBoundaryHydration(o, id, set);
});
waitAndResume(p, resume, assetPromise);
} else {

@@ -746,6 +747,16 @@ const afterAssets = () => {

}
if (sharedConfig.hydrating && sharedConfig.has(id + "_fr") && !settledSerializationResumeQueued) {
settledSerializationResumeQueued = true;
const fr = sharedConfig.load(id + "_fr");
const [, resume] = initBoundaryResume(o, id);
if (fr && typeof fr === "object" && (fr.s === 1 || fr.s === 2)) {
if (scheduleResumeAfterAssets(id, resume, assetPromise)) return undefined;
return fallback();
}
waitAndResume(fr, resume, assetPromise);
return fallback();
}
if (assetPromise && !sharedConfig.has(id)) {
_pendingBoundaries++;
const set = createBoundaryTrigger();
assetPromise.then(() => resumeBoundaryHydration(o, id, set));
const [, resume] = initBoundaryResume(o, id);
assetPromise.then(resume);
return undefined;

@@ -899,10 +910,12 @@ }

}
function Reveal(props) {
return createRevealOrder(() => props.children, {
together: () => !!props.together,
collapsed: () => !!props.collapsed
});
}
function ssrHandleError() {}
function ssrRunInScope() {}
const DevHooks = {};
const DEV = {
hooks: DevHooks,
registerGraph
} ;
const DEV = DEV$1 ;
if (globalThis) {

@@ -912,2 +925,2 @@ if (!globalThis.Solid$$) globalThis.Solid$$ = true;else console.warn("You appear to have multiple instances of Solid. This can lead to unexpected behavior.");

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 };
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 };

@@ -420,3 +420,3 @@ 'use strict';

promise.v = state;
return;
return state;
}

@@ -428,2 +428,3 @@ if (v !== undefined && v !== state) {

markReady();
return state;
}, () => {});

@@ -573,2 +574,6 @@ if (ctx?.async && !signals.getContext(NoHydrateContext) && owner.id) ctx.serialize(owner.id, promise, options?.deferStream);

}
function createRevealOrder(fn, _options) {
const o = signals.createOwner();
return signals.runWithOwner(o, fn);
}
function untrack(fn) {

@@ -698,2 +703,6 @@ return fn();

const RevealGroupContext = {
id: Symbol("RevealGroupContext"),
defaultValue: null
};
function ssrHandleError(err) {

@@ -724,2 +733,3 @@ if (err instanceof signals.NotReadyError) {

const parentHandler = parent && signals.runWithOwner(parent, () => signals.getContext(ErrorContext));
const revealGroup = parent && signals.runWithOwner(parent, () => signals.getContext(RevealGroupContext));
const o = signals.createOwner();

@@ -787,8 +797,21 @@ const id = o.id;

}
const collapseFallback = revealGroup ? revealGroup.register(id) : false;
if (collapseFallback && !ctx.async) {
commitBoundaryState();
ctx.serialize(id, "$$f");
return () => undefined;
}
const fallbackOwner = signals.createOwner({
id
});
const fallbackResult = signals.runWithOwner(fallbackOwner, () => ctx.async ? ctx.ssr([`<template id="pl-${id}"></template>`, `<!--pl-${id}-->`], ctx.escape(fallback())) : fallback());
const fallbackResult = signals.runWithOwner(fallbackOwner, () => {
if (!ctx.async) return fallback();
const tpl = collapseFallback ? [`<template id="pl-${id}">`, `</template><!--pl-${id}-->`] : [`<template id="pl-${id}"></template>`, `<!--pl-${id}-->`];
return ctx.ssr(tpl, ctx.escape(fallback()));
});
if (ctx.async) {
done = ctx.registerFragment(id);
const regOpts = revealGroup ? {
revealGroup: revealGroup.id
} : undefined;
done = ctx.registerFragment(id, regOpts);
(async () => {

@@ -803,2 +826,3 @@ try {

done(ret.t[0]);
if (revealGroup) revealGroup.onResolved(id);
} catch (err) {

@@ -895,2 +919,93 @@ finalizeError(err);

}
function Reveal(props) {
const o = signals.createOwner();
const id = o.id;
const together = !!props.together;
const collapsed = !!props.collapsed;
if (!sharedConfig.context?.async) {
const parent = signals.getOwner();
const parentGroup = parent ? signals.runWithOwner(parent, () => signals.getContext(RevealGroupContext)) : null;
let collapsedByParent = false;
if (parentGroup) {
collapsedByParent = parentGroup.register(id);
if (collapsed || together) console.warn("Nested <Reveal> with collapsed/together won't coordinate correctly with renderToString. Use renderToStream for full support.");
}
let count = 0;
return signals.runWithOwner(o, () => {
signals.setContext(RevealGroupContext, {
id,
register(_key) {
count++;
if (collapsedByParent) return true;
return !together && collapsed && count > 1;
},
onResolved() {}
});
return props.children;
});
}
const ctx = sharedConfig.context;
const keys = [];
const resolved = new Set();
const composites = new Map();
let frontier = 0;
const parent = signals.getOwner();
const parentGroup = parent ? signals.runWithOwner(parent, () => signals.getContext(RevealGroupContext)) : null;
let collapsedByParent = false;
if (parentGroup) {
collapsedByParent = parentGroup.register(id, {
onActivate: () => {
collapsedByParent = false;
advanceFrontier();
}
});
}
function notifyParentIfDone() {
if (parentGroup && resolved.size === keys.length) {
parentGroup.onResolved(id);
}
}
function advanceFrontier() {
while (frontier < keys.length && resolved.has(keys[frontier])) {
if (!composites.has(keys[frontier])) ctx.revealFragments?.([keys[frontier]]);
frontier++;
}
if (frontier < keys.length) {
const activate = composites.get(keys[frontier]);
if (activate) activate();else if (!together && collapsed) ctx.revealFallbacks?.(keys.slice(frontier));
}
notifyParentIfDone();
}
return signals.runWithOwner(o, () => {
signals.setContext(RevealGroupContext, {
id,
register(key, options) {
keys.push(key);
if (options?.onActivate) composites.set(key, options.onActivate);
if (collapsedByParent) return true;
return !together && collapsed && keys.length > 1;
},
onResolved(key) {
resolved.add(key);
if (collapsedByParent) {
notifyParentIfDone();
return;
}
if (together) {
if (resolved.size === keys.length) {
ctx.revealFragments?.(id);
notifyParentIfDone();
}
} else {
advanceFrontier();
}
}
});
const result = props.children;
if (parentGroup && keys.length === 0) {
parentGroup.onResolved(id);
}
return result;
});
}

@@ -943,2 +1058,6 @@ const DEV = undefined;

});
Object.defineProperty(exports, "isDisposed", {
enumerable: true,
get: function () { return signals.isDisposed; }
});
Object.defineProperty(exports, "isEqual", {

@@ -986,2 +1105,3 @@ enumerable: true,

exports.Repeat = Repeat;
exports.Reveal = Reveal;
exports.Show = Show;

@@ -1003,2 +1123,3 @@ exports.Switch = Switch;

exports.createRenderEffect = createRenderEffect;
exports.createRevealOrder = createRevealOrder;
exports.createSignal = createSignal;

@@ -1005,0 +1126,0 @@ exports.createStore = createStore;

import { getOwner, getContext, getNextChildId, createOwner, NotReadyError, runWithOwner, onCleanup, isWrappable, setContext, flatten, createRoot } from '@solidjs/signals';
export { $PROXY, $REFRESH, $TRACK, NotReadyError, createOwner, createRoot, enableExternalSource, enforceLoadingBoundary, flatten, getNextChildId, getOwner, isEqual, isWrappable, merge, omit, onCleanup, runWithOwner, snapshot, storePath } from '@solidjs/signals';
export { $PROXY, $REFRESH, $TRACK, NotReadyError, createOwner, createRoot, enableExternalSource, enforceLoadingBoundary, flatten, getNextChildId, getOwner, isDisposed, isEqual, isWrappable, merge, omit, onCleanup, runWithOwner, snapshot, storePath } from '@solidjs/signals';

@@ -419,3 +419,3 @@ const NoHydrateContext = {

promise.v = state;
return;
return state;
}

@@ -427,2 +427,3 @@ if (v !== undefined && v !== state) {

markReady();
return state;
}, () => {});

@@ -572,2 +573,6 @@ if (ctx?.async && !getContext(NoHydrateContext) && owner.id) ctx.serialize(owner.id, promise, options?.deferStream);

}
function createRevealOrder(fn, _options) {
const o = createOwner();
return runWithOwner(o, fn);
}
function untrack(fn) {

@@ -697,2 +702,6 @@ return fn();

const RevealGroupContext = {
id: Symbol("RevealGroupContext"),
defaultValue: null
};
function ssrHandleError(err) {

@@ -723,2 +732,3 @@ if (err instanceof NotReadyError) {

const parentHandler = parent && runWithOwner(parent, () => getContext(ErrorContext));
const revealGroup = parent && runWithOwner(parent, () => getContext(RevealGroupContext));
const o = createOwner();

@@ -786,8 +796,21 @@ const id = o.id;

}
const collapseFallback = revealGroup ? revealGroup.register(id) : false;
if (collapseFallback && !ctx.async) {
commitBoundaryState();
ctx.serialize(id, "$$f");
return () => undefined;
}
const fallbackOwner = createOwner({
id
});
const fallbackResult = runWithOwner(fallbackOwner, () => ctx.async ? ctx.ssr([`<template id="pl-${id}"></template>`, `<!--pl-${id}-->`], ctx.escape(fallback())) : fallback());
const fallbackResult = runWithOwner(fallbackOwner, () => {
if (!ctx.async) return fallback();
const tpl = collapseFallback ? [`<template id="pl-${id}">`, `</template><!--pl-${id}-->`] : [`<template id="pl-${id}"></template>`, `<!--pl-${id}-->`];
return ctx.ssr(tpl, ctx.escape(fallback()));
});
if (ctx.async) {
done = ctx.registerFragment(id);
const regOpts = revealGroup ? {
revealGroup: revealGroup.id
} : undefined;
done = ctx.registerFragment(id, regOpts);
(async () => {

@@ -802,2 +825,3 @@ try {

done(ret.t[0]);
if (revealGroup) revealGroup.onResolved(id);
} catch (err) {

@@ -894,5 +918,96 @@ finalizeError(err);

}
function Reveal(props) {
const o = createOwner();
const id = o.id;
const together = !!props.together;
const collapsed = !!props.collapsed;
if (!sharedConfig.context?.async) {
const parent = getOwner();
const parentGroup = parent ? runWithOwner(parent, () => getContext(RevealGroupContext)) : null;
let collapsedByParent = false;
if (parentGroup) {
collapsedByParent = parentGroup.register(id);
if (collapsed || together) console.warn("Nested <Reveal> with collapsed/together won't coordinate correctly with renderToString. Use renderToStream for full support.");
}
let count = 0;
return runWithOwner(o, () => {
setContext(RevealGroupContext, {
id,
register(_key) {
count++;
if (collapsedByParent) return true;
return !together && collapsed && count > 1;
},
onResolved() {}
});
return props.children;
});
}
const ctx = sharedConfig.context;
const keys = [];
const resolved = new Set();
const composites = new Map();
let frontier = 0;
const parent = getOwner();
const parentGroup = parent ? runWithOwner(parent, () => getContext(RevealGroupContext)) : null;
let collapsedByParent = false;
if (parentGroup) {
collapsedByParent = parentGroup.register(id, {
onActivate: () => {
collapsedByParent = false;
advanceFrontier();
}
});
}
function notifyParentIfDone() {
if (parentGroup && resolved.size === keys.length) {
parentGroup.onResolved(id);
}
}
function advanceFrontier() {
while (frontier < keys.length && resolved.has(keys[frontier])) {
if (!composites.has(keys[frontier])) ctx.revealFragments?.([keys[frontier]]);
frontier++;
}
if (frontier < keys.length) {
const activate = composites.get(keys[frontier]);
if (activate) activate();else if (!together && collapsed) ctx.revealFallbacks?.(keys.slice(frontier));
}
notifyParentIfDone();
}
return runWithOwner(o, () => {
setContext(RevealGroupContext, {
id,
register(key, options) {
keys.push(key);
if (options?.onActivate) composites.set(key, options.onActivate);
if (collapsedByParent) return true;
return !together && collapsed && keys.length > 1;
},
onResolved(key) {
resolved.add(key);
if (collapsedByParent) {
notifyParentIfDone();
return;
}
if (together) {
if (resolved.size === keys.length) {
ctx.revealFragments?.(id);
notifyParentIfDone();
}
} else {
advanceFrontier();
}
}
});
const result = props.children;
if (parentGroup && keys.length === 0) {
parentGroup.onResolved(id);
}
return result;
});
}
const DEV = undefined;
export { $DEVCOMP, DEV, Errored, For, Hydration, Loading, Match, NoHydrateContext, NoHydration, Repeat, Show, Switch, action, children, createComponent, createContext, createDeepProxy, createEffect, createErrorBoundary, createLoadingBoundary, createMemo, createOptimistic, createOptimisticStore, createProjection, createReaction, createRenderEffect, createSignal, createStore, createTrackedEffect, createUniqueId, deep, enableHydration, flush, getObserver, isPending, isRefreshing, latest, lazy, mapArray, onSettled, reconcile, refresh, repeat, resolve, sharedConfig, ssrHandleError, ssrRunInScope, untrack, useContext };
export { $DEVCOMP, DEV, Errored, For, Hydration, Loading, Match, NoHydrateContext, NoHydration, Repeat, Reveal, Show, Switch, action, children, createComponent, createContext, createDeepProxy, createEffect, createErrorBoundary, createLoadingBoundary, createMemo, createOptimistic, createOptimisticStore, createProjection, createReaction, createRenderEffect, createRevealOrder, createSignal, createStore, createTrackedEffect, createUniqueId, deep, enableHydration, flush, getObserver, isPending, isRefreshing, latest, lazy, mapArray, onSettled, reconcile, refresh, repeat, resolve, sharedConfig, ssrHandleError, ssrRunInScope, untrack, useContext };

@@ -657,2 +657,34 @@ 'use strict';

}
function initBoundaryResume(o, id) {
_pendingBoundaries++;
signals.onCleanup(() => {
if (!signals.isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
return [set, () => resumeBoundaryHydration(o, id, set)];
}
function waitAndResume(p, resume, assetPromise) {
const waitFor = assetPromise ? Promise.all([p, assetPromise]) : p;
waitFor.then(() => {
if (p && typeof p === "object") p.s = 1;
resume();
}, err => {
if (p && typeof p === "object") {
p.s = 2;
p.v = err;
}
resume();
});
}
function scheduleResumeAfterAssets(id, resume, assetPromise) {
sharedConfig.gather?.(id);
const doResume = () => queueMicrotask(resume);
if (assetPromise) {
assetPromise.then(doResume);
return true;
}
doResume();
return false;
}
function createLoadingBoundary(fn, fallback, options) {

@@ -677,37 +709,10 @@ if (!sharedConfig.hydrating) return signals.createLoadingBoundary(fn, fallback, options);

settledSerializationResumeQueued = true;
_pendingBoundaries++;
signals.onCleanup(() => {
if (!signals.isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
const scheduleResume = () => queueMicrotask(() => resumeBoundaryHydration(o, id, set));
if (assetPromise) {
assetPromise.then(scheduleResume);
return undefined;
}
scheduleResume();
const [, resume] = initBoundaryResume(o, id);
if (scheduleResumeAfterAssets(id, resume, assetPromise)) return undefined;
return fallback();
}
if (p) {
_pendingBoundaries++;
signals.onCleanup(() => {
if (!signals.isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
const [set, resume] = initBoundaryResume(o, id);
if (p !== "$$f") {
const waitFor = assetPromise ? Promise.all([p, assetPromise]) : p;
waitFor.then(() => {
if (p && typeof p === "object") {
p.s = 1;
}
resumeBoundaryHydration(o, id, set);
}, err => {
if (p && typeof p === "object") {
p.s = 2;
p.v = err;
}
resumeBoundaryHydration(o, id, set);
});
waitAndResume(p, resume, assetPromise);
} else {

@@ -724,6 +729,16 @@ const afterAssets = () => {

}
if (sharedConfig.hydrating && sharedConfig.has(id + "_fr") && !settledSerializationResumeQueued) {
settledSerializationResumeQueued = true;
const fr = sharedConfig.load(id + "_fr");
const [, resume] = initBoundaryResume(o, id);
if (fr && typeof fr === "object" && (fr.s === 1 || fr.s === 2)) {
if (scheduleResumeAfterAssets(id, resume, assetPromise)) return undefined;
return fallback();
}
waitAndResume(fr, resume, assetPromise);
return fallback();
}
if (assetPromise && !sharedConfig.has(id)) {
_pendingBoundaries++;
const set = createBoundaryTrigger();
assetPromise.then(() => resumeBoundaryHydration(o, id, set));
const [, resume] = initBoundaryResume(o, id);
assetPromise.then(resume);
return undefined;

@@ -861,2 +876,8 @@ }

}
function Reveal(props) {
return signals.createRevealOrder(() => props.children, {
together: () => !!props.together,
collapsed: () => !!props.collapsed
});
}

@@ -895,2 +916,6 @@ function ssrHandleError() {}

});
Object.defineProperty(exports, "createRevealOrder", {
enumerable: true,
get: function () { return signals.createRevealOrder; }
});
Object.defineProperty(exports, "createRoot", {

@@ -936,2 +961,6 @@ enumerable: true,

});
Object.defineProperty(exports, "isDisposed", {
enumerable: true,
get: function () { return signals.isDisposed; }
});
Object.defineProperty(exports, "isEqual", {

@@ -1019,2 +1048,3 @@ enumerable: true,

exports.Repeat = Repeat;
exports.Reveal = Reveal;
exports.Show = Show;

@@ -1021,0 +1051,0 @@ exports.Switch = Switch;

@@ -1,3 +0,3 @@

import { getContext, createMemo as createMemo$1, flatten, createRoot, setContext, createOwner, runWithOwner, createEffect as createEffect$1, createErrorBoundary as createErrorBoundary$1, createLoadingBoundary as createLoadingBoundary$1, getOwner, 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, untrack, mapArray, repeat } from '@solidjs/signals';
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';
import { getContext, createMemo as createMemo$1, flatten, createRoot, setContext, createOwner, runWithOwner, createEffect as createEffect$1, createErrorBoundary as createErrorBoundary$1, createLoadingBoundary as createLoadingBoundary$1, getOwner, 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, untrack, mapArray, repeat, createRevealOrder } from '@solidjs/signals';
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';

@@ -656,2 +656,34 @@ const IS_DEV = false;

}
function initBoundaryResume(o, id) {
_pendingBoundaries++;
onCleanup(() => {
if (!isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
return [set, () => resumeBoundaryHydration(o, id, set)];
}
function waitAndResume(p, resume, assetPromise) {
const waitFor = assetPromise ? Promise.all([p, assetPromise]) : p;
waitFor.then(() => {
if (p && typeof p === "object") p.s = 1;
resume();
}, err => {
if (p && typeof p === "object") {
p.s = 2;
p.v = err;
}
resume();
});
}
function scheduleResumeAfterAssets(id, resume, assetPromise) {
sharedConfig.gather?.(id);
const doResume = () => queueMicrotask(resume);
if (assetPromise) {
assetPromise.then(doResume);
return true;
}
doResume();
return false;
}
function createLoadingBoundary(fn, fallback, options) {

@@ -676,37 +708,10 @@ if (!sharedConfig.hydrating) return createLoadingBoundary$1(fn, fallback, options);

settledSerializationResumeQueued = true;
_pendingBoundaries++;
onCleanup(() => {
if (!isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
const scheduleResume = () => queueMicrotask(() => resumeBoundaryHydration(o, id, set));
if (assetPromise) {
assetPromise.then(scheduleResume);
return undefined;
}
scheduleResume();
const [, resume] = initBoundaryResume(o, id);
if (scheduleResumeAfterAssets(id, resume, assetPromise)) return undefined;
return fallback();
}
if (p) {
_pendingBoundaries++;
onCleanup(() => {
if (!isDisposed(o)) return;
sharedConfig.cleanupFragment?.(id);
});
const set = createBoundaryTrigger();
const [set, resume] = initBoundaryResume(o, id);
if (p !== "$$f") {
const waitFor = assetPromise ? Promise.all([p, assetPromise]) : p;
waitFor.then(() => {
if (p && typeof p === "object") {
p.s = 1;
}
resumeBoundaryHydration(o, id, set);
}, err => {
if (p && typeof p === "object") {
p.s = 2;
p.v = err;
}
resumeBoundaryHydration(o, id, set);
});
waitAndResume(p, resume, assetPromise);
} else {

@@ -723,6 +728,16 @@ const afterAssets = () => {

}
if (sharedConfig.hydrating && sharedConfig.has(id + "_fr") && !settledSerializationResumeQueued) {
settledSerializationResumeQueued = true;
const fr = sharedConfig.load(id + "_fr");
const [, resume] = initBoundaryResume(o, id);
if (fr && typeof fr === "object" && (fr.s === 1 || fr.s === 2)) {
if (scheduleResumeAfterAssets(id, resume, assetPromise)) return undefined;
return fallback();
}
waitAndResume(fr, resume, assetPromise);
return fallback();
}
if (assetPromise && !sharedConfig.has(id)) {
_pendingBoundaries++;
const set = createBoundaryTrigger();
assetPromise.then(() => resumeBoundaryHydration(o, id, set));
const [, resume] = initBoundaryResume(o, id);
assetPromise.then(resume);
return undefined;

@@ -860,2 +875,8 @@ }

}
function Reveal(props) {
return createRevealOrder(() => props.children, {
together: () => !!props.together,
collapsed: () => !!props.collapsed
});
}

@@ -866,2 +887,2 @@ function ssrHandleError() {}

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 };
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 };
{
"name": "solid-js",
"description": "A declarative JavaScript library for building user interfaces.",
"version": "2.0.0-beta.5",
"version": "2.0.0-beta.6",
"author": "Ryan Carniato",

@@ -82,3 +82,3 @@ "license": "MIT",

"dependencies": {
"@solidjs/signals": "^0.13.9",
"@solidjs/signals": "^0.13.11",
"csstype": "^3.1.0",

@@ -85,0 +85,0 @@ "seroval": "~1.5.0",

@@ -1,2 +0,2 @@

import type { Accessor, Owner, EffectOptions } from "@solidjs/signals";
import type { Accessor, EffectOptions } from "@solidjs/signals";
import type { JSX } from "../jsx.js";

@@ -59,8 +59,1 @@ import { FlowComponent } from "./component.js";

export declare function devComponent<P, V>(Comp: (props: P) => V, props: P): V;
interface SourceMapValue {
value: unknown;
name?: string;
graph?: Owner;
}
export declare function registerGraph(value: SourceMapValue): void;
export {};

@@ -120,2 +120,24 @@ import type { Accessor } from "@solidjs/signals";

}): JSX.Element;
/**
* Coordinates the reveal timing of sibling `<Loading>` boundaries.
*
* - **Sequential** (default): boundaries reveal in DOM order as each resolves.
* - **Together** (`together`): all boundaries wait until the group is ready, then reveal at once.
* - **Collapsed** (`collapsed`, sequential only): only the frontier boundary shows its fallback;
* later boundaries produce nothing until their turn.
*
* ```typescript
* <Reveal>
* <Loading fallback={<Skeleton />}><ProfileHeader /></Loading>
* <Loading fallback={<Skeleton />}><Posts /></Loading>
* </Reveal>
* ```
*
* @description https://docs.solidjs.com/reference/components/reveal
*/
export declare function Reveal(props: {
together?: boolean;
collapsed?: boolean;
children: JSX.Element;
}): JSX.Element;
export {};

@@ -1,2 +0,2 @@

export { $PROXY, $REFRESH, $TRACK, action, createOwner, createReaction, createRoot, createTrackedEffect, deep, flatten, flush, getNextChildId, getObserver, getOwner, isEqual, isRefreshing, isPending, isWrappable, mapArray, merge, omit, onCleanup, onSettled, latest, reconcile, refresh, repeat, resolve, NotReadyError, runWithOwner, enableExternalSource, enforceLoadingBoundary, snapshot, storePath, untrack } from "@solidjs/signals";
export { $PROXY, $REFRESH, $TRACK, action, createOwner, createReaction, createRevealOrder, createRoot, createTrackedEffect, deep, flatten, flush, getNextChildId, getObserver, getOwner, isDisposed, isEqual, isRefreshing, isPending, isWrappable, mapArray, merge, omit, onCleanup, onSettled, latest, reconcile, refresh, repeat, resolve, NotReadyError, runWithOwner, enableExternalSource, enforceLoadingBoundary, snapshot, storePath, untrack } from "@solidjs/signals";
export type { Accessor, ComputeFunction, EffectFunction, EffectOptions, ExternalSource, ExternalSourceConfig, ExternalSourceFactory, Merge, NoInfer, NotWrappable, Omit, Owner, Signal, SignalOptions, Setter, Store, SolidStore, StoreNode, StoreSetter, StorePathRange, ArrayFilterFn, CustomPartial, Part, PathSetter } from "@solidjs/signals";

@@ -13,9 +13,6 @@ export { $DEVCOMP, children, createContext, useContext } from "./client/core.js";

export type { JSXElement, JSX };
import { registerGraph } from "./client/core.js";
export declare const DEV: {
readonly hooks: {};
readonly registerGraph: typeof registerGraph;
} | undefined;
import { type Dev } from "@solidjs/signals";
export declare const DEV: Dev | undefined;
declare global {
var Solid$$: boolean;
}

@@ -73,2 +73,11 @@ import type { Accessor } from "./signals.js";

}): JSX.Element;
/**
* Coordinates the reveal timing of sibling `<Loading>` boundaries during SSR.
* @description https://docs.solidjs.com/reference/components/reveal
*/
export declare function Reveal(props: {
together?: boolean;
collapsed?: boolean;
children: JSX.Element;
}): JSX.Element;
export {};

@@ -0,4 +1,13 @@

import type { Context } from "./signals.js";
import type { JSX } from "../jsx.js";
export { sharedConfig, NoHydrateContext } from "./shared.js";
export type { HydrationContext, SSRTemplateObject } from "./shared.js";
export type ServerRevealGroup = {
id: string;
register(key: string, options?: {
onActivate?: () => void;
}): boolean;
onResolved(key: string): void;
};
export declare const RevealGroupContext: Context<ServerRevealGroup | null>;
/**

@@ -5,0 +14,0 @@ * Handles errors during SSR rendering.

@@ -1,2 +0,2 @@

export { $PROXY, $REFRESH, $TRACK, action, createEffect, createMemo, createOptimistic, createOptimisticStore, createErrorBoundary, createOwner, createProjection, createReaction, createRenderEffect, createRoot, createSignal, createStore, createTrackedEffect, deep, flatten, flush, getNextChildId, getObserver, getOwner, isEqual, isRefreshing, isPending, isWrappable, mapArray, merge, omit, onCleanup, onSettled, latest, reconcile, refresh, repeat, resolve, NotReadyError, runWithOwner, snapshot, storePath, createDeepProxy, enableExternalSource, enforceLoadingBoundary, untrack } from "./signals.js";
export { $PROXY, $REFRESH, $TRACK, action, createEffect, createMemo, createOptimistic, createOptimisticStore, createErrorBoundary, createOwner, createProjection, createReaction, createRenderEffect, createRevealOrder, createRoot, createSignal, createStore, createTrackedEffect, deep, flatten, flush, getNextChildId, getObserver, getOwner, isDisposed, isEqual, isRefreshing, isPending, isWrappable, mapArray, merge, omit, onCleanup, onSettled, latest, reconcile, refresh, repeat, resolve, NotReadyError, runWithOwner, snapshot, storePath, createDeepProxy, enableExternalSource, enforceLoadingBoundary, untrack } from "./signals.js";
export type { Accessor, ComputeFunction, EffectFunction, EffectOptions, ExternalSource, ExternalSourceConfig, ExternalSourceFactory, Merge, NoInfer, NotWrappable, Omit, Owner, Signal, SignalOptions, Setter, Store, SolidStore, StoreNode, StoreSetter, StorePathRange, ArrayFilterFn, CustomPartial, Part, PathSetter, PatchOp } from "./signals.js";

@@ -3,0 +3,0 @@ export { $DEVCOMP, children, createContext, useContext, ssrRunInScope } from "./core.js";

@@ -22,3 +22,7 @@ import type { Context } from "@solidjs/signals";

block: (p: Promise<any>) => void;
registerFragment: (v: string) => (v?: string, err?: any) => boolean;
registerFragment: (v: string, options?: {
revealGroup?: string;
}) => (v?: string, err?: any) => boolean;
revealFragments?: (groupOrKeys: string | string[]) => void;
revealFallbacks?: (groupOrKeys: string | string[]) => void;
/** Register a client-side asset URL discovered during SSR (e.g. from lazy()). */

@@ -25,0 +29,0 @@ registerAsset?: (type: "module" | "style", url: string) => void;

@@ -1,2 +0,2 @@

export { createRoot, createOwner, runWithOwner, getOwner, onCleanup, getNextChildId, createContext, setContext, getContext, NotReadyError, NoOwnerError, ContextNotFoundError, isEqual, isWrappable, SUPPORTS_PROXY, enableExternalSource, enforceLoadingBoundary } from "@solidjs/signals";
export { createRoot, createOwner, runWithOwner, getOwner, isDisposed, onCleanup, getNextChildId, createContext, setContext, getContext, NotReadyError, NoOwnerError, ContextNotFoundError, isEqual, isWrappable, SUPPORTS_PROXY, enableExternalSource, enforceLoadingBoundary } from "@solidjs/signals";
export { flatten } from "@solidjs/signals";

@@ -56,2 +56,6 @@ export { snapshot, merge, omit, storePath, $PROXY, $REFRESH, $TRACK } from "@solidjs/signals";

}): () => unknown;
export declare function createRevealOrder<T>(fn: () => T, _options?: {
together?: () => boolean;
collapsed?: () => boolean;
}): T;
export declare function untrack<T>(fn: () => T): T;

@@ -58,0 +62,0 @@ export declare function flush(): void;

Sorry, the diff of this file is too big to display