Comparing version 1.7.6 to 1.7.7
@@ -959,15 +959,22 @@ let taskIdCounter = 1, | ||
} | ||
function runErrors(fns, err) { | ||
for (const f of fns) f(err); | ||
} | ||
function handleError(err) { | ||
const fns = ERROR && lookup(Owner, ERROR); | ||
if (!fns) throw err; | ||
function handleError(err, owner = Owner) { | ||
const fns = ERROR && lookup(owner, ERROR); | ||
const error = castError(err); | ||
if (!fns) throw error; | ||
if (Effects) Effects.push({ | ||
fn() { | ||
runErrors(fns, error); | ||
try { | ||
for (const f of fns) f(error); | ||
} catch (e) { | ||
handleError(e, owner?.owner || null); | ||
} | ||
}, | ||
state: STALE | ||
});else runErrors(fns, error); | ||
});else { | ||
try { | ||
for (const f of fns) f(error); | ||
} catch (e) { | ||
handleError(e, owner?.owner || null); | ||
} | ||
} | ||
} | ||
@@ -1303,3 +1310,3 @@ function lookup(owner, key) { | ||
const sourcesMap = {}; | ||
let someNonTargetKey = false; | ||
const defined = new Set(); | ||
for (let i = sources.length - 1; i >= 0; i--) { | ||
@@ -1309,10 +1316,9 @@ const source = sources[i]; | ||
const sourceKeys = Object.getOwnPropertyNames(source); | ||
someNonTargetKey = someNonTargetKey || i !== 0 && !!sourceKeys.length; | ||
for (let i = 0, length = sourceKeys.length; i < length; i++) { | ||
const key = sourceKeys[i]; | ||
if (key === "__proto__" || key === "constructor") { | ||
continue; | ||
} else if (!(key in target)) { | ||
const desc = Object.getOwnPropertyDescriptor(source, key); | ||
if (key === "__proto__" || key === "constructor") continue; | ||
const desc = Object.getOwnPropertyDescriptor(source, key); | ||
if (!defined.has(key)) { | ||
if (desc.get) { | ||
defined.add(key); | ||
Object.defineProperty(target, key, { | ||
@@ -1323,6 +1329,8 @@ enumerable: true, | ||
}); | ||
} else target[key] = desc.value; | ||
} else { | ||
if (desc.value !== undefined) defined.add(key); | ||
target[key] = desc.value; | ||
} | ||
} else { | ||
const sources = sourcesMap[key]; | ||
const desc = Object.getOwnPropertyDescriptor(source, key); | ||
if (sources) { | ||
@@ -1329,0 +1337,0 @@ if (desc.get) { |
@@ -13,7 +13,11 @@ const equalFn = (a, b) => a === b; | ||
} | ||
function handleError(err) { | ||
function handleError(err, owner = Owner) { | ||
const fns = lookup(owner, ERROR); | ||
const error = castError(err); | ||
const fns = lookup(Owner, ERROR); | ||
if (!fns) throw error; | ||
for (const f of fns) f(error); | ||
try { | ||
for (const f of fns) f(error); | ||
} catch (e) { | ||
handleError(e, owner?.owner || null); | ||
} | ||
} | ||
@@ -20,0 +24,0 @@ const UNOWNED = { |
@@ -918,15 +918,22 @@ let taskIdCounter = 1, | ||
} | ||
function runErrors(fns, err) { | ||
for (const f of fns) f(err); | ||
} | ||
function handleError(err) { | ||
const fns = ERROR && lookup(Owner, ERROR); | ||
if (!fns) throw err; | ||
function handleError(err, owner = Owner) { | ||
const fns = ERROR && lookup(owner, ERROR); | ||
const error = castError(err); | ||
if (!fns) throw error; | ||
if (Effects) Effects.push({ | ||
fn() { | ||
runErrors(fns, error); | ||
try { | ||
for (const f of fns) f(error); | ||
} catch (e) { | ||
handleError(e, owner?.owner || null); | ||
} | ||
}, | ||
state: STALE | ||
});else runErrors(fns, error); | ||
});else { | ||
try { | ||
for (const f of fns) f(error); | ||
} catch (e) { | ||
handleError(e, owner?.owner || null); | ||
} | ||
} | ||
} | ||
@@ -1258,3 +1265,3 @@ function lookup(owner, key) { | ||
const sourcesMap = {}; | ||
let someNonTargetKey = false; | ||
const defined = new Set(); | ||
for (let i = sources.length - 1; i >= 0; i--) { | ||
@@ -1264,10 +1271,9 @@ const source = sources[i]; | ||
const sourceKeys = Object.getOwnPropertyNames(source); | ||
someNonTargetKey = someNonTargetKey || i !== 0 && !!sourceKeys.length; | ||
for (let i = 0, length = sourceKeys.length; i < length; i++) { | ||
const key = sourceKeys[i]; | ||
if (key === "__proto__" || key === "constructor") { | ||
continue; | ||
} else if (!(key in target)) { | ||
const desc = Object.getOwnPropertyDescriptor(source, key); | ||
if (key === "__proto__" || key === "constructor") continue; | ||
const desc = Object.getOwnPropertyDescriptor(source, key); | ||
if (!defined.has(key)) { | ||
if (desc.get) { | ||
defined.add(key); | ||
Object.defineProperty(target, key, { | ||
@@ -1278,6 +1284,8 @@ enumerable: true, | ||
}); | ||
} else target[key] = desc.value; | ||
} else { | ||
if (desc.value !== undefined) defined.add(key); | ||
target[key] = desc.value; | ||
} | ||
} else { | ||
const sources = sourcesMap[key]; | ||
const desc = Object.getOwnPropertyDescriptor(source, key); | ||
if (sources) { | ||
@@ -1284,0 +1292,0 @@ if (desc.get) { |
164
package.json
{ | ||
"name": "solid-js", | ||
"description": "A declarative JavaScript library for building user interfaces.", | ||
"version": "1.7.6", | ||
"version": "1.7.7", | ||
"author": "Ryan Carniato", | ||
@@ -49,6 +49,4 @@ "license": "MIT", | ||
"worker": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/server.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/server.js", | ||
"require": "./dist/server.cjs" | ||
@@ -58,39 +56,27 @@ }, | ||
"development": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/dev.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/dev.js", | ||
"require": "./dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/solid.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/solid.js", | ||
"require": "./dist/solid.cjs" | ||
}, | ||
"deno": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/server.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/server.js", | ||
"require": "./dist/server.cjs" | ||
}, | ||
"node": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/server.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/server.js", | ||
"require": "./dist/server.cjs" | ||
}, | ||
"development": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/dev.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/dev.js", | ||
"require": "./dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/solid.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/solid.js", | ||
"require": "./dist/solid.cjs" | ||
@@ -109,6 +95,4 @@ }, | ||
"worker": { | ||
"import": { | ||
"types": "./store/types/index.d.ts", | ||
"default": "./store/dist/server.js" | ||
}, | ||
"types": "./store/types/index.d.ts", | ||
"import": "./store/dist/server.js", | ||
"require": "./store/dist/server.cjs" | ||
@@ -118,39 +102,27 @@ }, | ||
"development": { | ||
"import": { | ||
"types": "./store/types/index.d.ts", | ||
"default": "./store/dist/dev.js" | ||
}, | ||
"types": "./store/types/index.d.ts", | ||
"import": "./store/dist/dev.js", | ||
"require": "./store/dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./store/types/index.d.ts", | ||
"default": "./store/dist/store.js" | ||
}, | ||
"types": "./store/types/index.d.ts", | ||
"import": "./store/dist/store.js", | ||
"require": "./store/dist/store.cjs" | ||
}, | ||
"deno": { | ||
"import": { | ||
"types": "./store/types/index.d.ts", | ||
"default": "./store/dist/server.js" | ||
}, | ||
"types": "./store/types/index.d.ts", | ||
"import": "./store/dist/server.js", | ||
"require": "./store/dist/server.cjs" | ||
}, | ||
"node": { | ||
"import": { | ||
"types": "./store/types/index.d.ts", | ||
"default": "./store/dist/server.js" | ||
}, | ||
"types": "./store/types/index.d.ts", | ||
"import": "./store/dist/server.js", | ||
"require": "./store/dist/server.cjs" | ||
}, | ||
"development": { | ||
"import": { | ||
"types": "./store/types/index.d.ts", | ||
"default": "./store/dist/dev.js" | ||
}, | ||
"types": "./store/types/index.d.ts", | ||
"import": "./store/dist/dev.js", | ||
"require": "./store/dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./store/types/index.d.ts", | ||
"default": "./store/dist/store.js" | ||
}, | ||
"types": "./store/types/index.d.ts", | ||
"import": "./store/dist/store.js", | ||
"require": "./store/dist/store.cjs" | ||
@@ -161,6 +133,4 @@ }, | ||
"worker": { | ||
"import": { | ||
"types": "./web/types/index.d.ts", | ||
"default": "./web/dist/server.js" | ||
}, | ||
"types": "./web/types/index.d.ts", | ||
"import": "./web/dist/server.js", | ||
"require": "./web/dist/server.cjs" | ||
@@ -170,39 +140,27 @@ }, | ||
"development": { | ||
"import": { | ||
"types": "./web/types/index.d.ts", | ||
"default": "./web/dist/dev.js" | ||
}, | ||
"types": "./web/types/index.d.ts", | ||
"import": "./web/dist/dev.js", | ||
"require": "./web/dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./web/types/index.d.ts", | ||
"default": "./web/dist/web.js" | ||
}, | ||
"types": "./web/types/index.d.ts", | ||
"import": "./web/dist/web.js", | ||
"require": "./web/dist/web.cjs" | ||
}, | ||
"deno": { | ||
"import": { | ||
"types": "./web/types/index.d.ts", | ||
"default": "./web/dist/server.js" | ||
}, | ||
"types": "./web/types/index.d.ts", | ||
"import": "./web/dist/server.js", | ||
"require": "./web/dist/server.cjs" | ||
}, | ||
"node": { | ||
"import": { | ||
"types": "./web/types/index.d.ts", | ||
"default": "./web/dist/server.js" | ||
}, | ||
"types": "./web/types/index.d.ts", | ||
"import": "./web/dist/server.js", | ||
"require": "./web/dist/server.cjs" | ||
}, | ||
"development": { | ||
"import": { | ||
"types": "./web/types/index.d.ts", | ||
"default": "./web/dist/dev.js" | ||
}, | ||
"types": "./web/types/index.d.ts", | ||
"import": "./web/dist/dev.js", | ||
"require": "./web/dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./web/types/index.d.ts", | ||
"default": "./web/dist/web.js" | ||
}, | ||
"types": "./web/types/index.d.ts", | ||
"import": "./web/dist/web.js", | ||
"require": "./web/dist/web.cjs" | ||
@@ -213,12 +171,8 @@ }, | ||
"development": { | ||
"import": { | ||
"types": "./universal/types/index.d.ts", | ||
"default": "./universal/dist/dev.js" | ||
}, | ||
"types": "./universal/types/index.d.ts", | ||
"import": "./universal/dist/dev.js", | ||
"require": "./universal/dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./universal/types/index.d.ts", | ||
"default": "./universal/dist/universal.js" | ||
}, | ||
"types": "./universal/types/index.d.ts", | ||
"import": "./universal/dist/universal.js", | ||
"require": "./universal/dist/universal.cjs" | ||
@@ -228,20 +182,14 @@ }, | ||
"./h": { | ||
"import": { | ||
"types": "./h/types/index.d.ts", | ||
"default": "./h/dist/h.js" | ||
}, | ||
"types": "./h/types/index.d.ts", | ||
"import": "./h/dist/h.js", | ||
"require": "./h/dist/h.cjs" | ||
}, | ||
"./h/jsx-runtime": { | ||
"import": { | ||
"types": "./h/jsx-runtime/types/index.d.ts", | ||
"default": "./h/jsx-runtime/dist/jsx.js" | ||
}, | ||
"types": "./h/jsx-runtime/types/index.d.ts", | ||
"import": "./h/jsx-runtime/dist/jsx.js", | ||
"require": "./h/jsx-runtime/dist/jsx.cjs" | ||
}, | ||
"./h/jsx-dev-runtime": { | ||
"import": { | ||
"types": "./h/jsx-runtime/types/index.d.ts", | ||
"default": "./h/jsx-runtime/dist/jsx.js" | ||
}, | ||
"types": "./h/jsx-runtime/types/index.d.ts", | ||
"import": "./h/jsx-runtime/dist/jsx.js", | ||
"require": "./h/jsx-runtime/dist/jsx.cjs" | ||
@@ -251,6 +199,4 @@ }, | ||
"./html": { | ||
"import": { | ||
"types": "./html/types/index.d.ts", | ||
"default": "./html/dist/html.js" | ||
}, | ||
"types": "./html/types/index.d.ts", | ||
"import": "./html/dist/html.js", | ||
"require": "./html/dist/html.cjs" | ||
@@ -257,0 +203,0 @@ }, |
@@ -16,6 +16,4 @@ { | ||
"worker": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/server.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/server.js", | ||
"require": "./dist/server.cjs" | ||
@@ -25,39 +23,27 @@ }, | ||
"development": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/dev.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/dev.js", | ||
"require": "./dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/store.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/store.js", | ||
"require": "./dist/store.cjs" | ||
}, | ||
"deno": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/server.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/server.js", | ||
"require": "./dist/server.cjs" | ||
}, | ||
"node": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/server.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/server.js", | ||
"require": "./dist/server.cjs" | ||
}, | ||
"development": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/dev.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/dev.js", | ||
"require": "./dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/store.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/store.js", | ||
"require": "./dist/store.cjs" | ||
@@ -64,0 +50,0 @@ } |
@@ -369,3 +369,3 @@ /** | ||
*/ | ||
export declare function createSelector<T, U>(source: Accessor<T>, fn?: EqualityCheckerFunction<T, U>, options?: BaseOptions): (key: U) => boolean; | ||
export declare function createSelector<T, U = T>(source: Accessor<T>, fn?: EqualityCheckerFunction<T, U>, options?: BaseOptions): (key: U) => boolean; | ||
/** | ||
@@ -372,0 +372,0 @@ * Holds changes inside the block before the reactive context is updated |
@@ -41,3 +41,3 @@ export declare const equalFn: <T>(a: T, b: T) => boolean; | ||
* @deprecated since version 1.7.0 and will be removed in next major - use catchError instead | ||
*/ | ||
*/ | ||
export declare function onError(fn: (err: Error) => void): void; | ||
@@ -44,0 +44,0 @@ export declare function getListener(): null; |
@@ -11,12 +11,8 @@ { | ||
"development": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/dev.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/dev.js", | ||
"require": "./dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/universal.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/universal.js", | ||
"require": "./dist/universal.cjs" | ||
@@ -23,0 +19,0 @@ } |
@@ -1,2 +0,2 @@ | ||
import { createRoot, createRenderEffect, sharedConfig, untrack, enableHydration, getOwner, createEffect, runWithOwner, createSignal, onCleanup, splitProps, createMemo, $DEVCOMP } from 'solid-js'; | ||
import { createRoot, createRenderEffect, sharedConfig, untrack, enableHydration, getOwner, createEffect, runWithOwner, createMemo, createSignal, onCleanup, splitProps, $DEVCOMP } from 'solid-js'; | ||
export { ErrorBoundary, For, Index, Match, Show, Suspense, SuspenseList, Switch, createComponent, createRenderEffect as effect, getOwner, createMemo as memo, mergeProps, untrack } from 'solid-js'; | ||
@@ -578,3 +578,3 @@ | ||
if (hydrating) getOwner().user = hydrating = false; | ||
content || (content = runWithOwner(owner, () => props.children)); | ||
content || (content = runWithOwner(owner, () => createMemo(() => props.children))); | ||
const el = mount(); | ||
@@ -584,3 +584,3 @@ if (el instanceof HTMLHeadElement) { | ||
const cleanup = () => setClean(true); | ||
createRoot(dispose => insert(el, () => !clean() ? content : dispose(), null)); | ||
createRoot(dispose => insert(el, () => !clean() ? content() : dispose(), null)); | ||
onCleanup(cleanup); | ||
@@ -587,0 +587,0 @@ } else { |
@@ -1,2 +0,2 @@ | ||
import { createRoot, createRenderEffect, sharedConfig, untrack, enableHydration, getOwner, createEffect, runWithOwner, createSignal, onCleanup, splitProps, createMemo, $DEVCOMP } from 'solid-js'; | ||
import { createRoot, createRenderEffect, sharedConfig, untrack, enableHydration, getOwner, createEffect, runWithOwner, createMemo, createSignal, onCleanup, splitProps, $DEVCOMP } from 'solid-js'; | ||
export { ErrorBoundary, For, Index, Match, Show, Suspense, SuspenseList, Switch, createComponent, createRenderEffect as effect, getOwner, createMemo as memo, mergeProps, untrack } from 'solid-js'; | ||
@@ -578,3 +578,3 @@ | ||
if (hydrating) getOwner().user = hydrating = false; | ||
content || (content = runWithOwner(owner, () => props.children)); | ||
content || (content = runWithOwner(owner, () => createMemo(() => props.children))); | ||
const el = mount(); | ||
@@ -584,3 +584,3 @@ if (el instanceof HTMLHeadElement) { | ||
const cleanup = () => setClean(true); | ||
createRoot(dispose => insert(el, () => !clean() ? content : dispose(), null)); | ||
createRoot(dispose => insert(el, () => !clean() ? content() : dispose(), null)); | ||
onCleanup(cleanup); | ||
@@ -587,0 +587,0 @@ } else { |
@@ -16,6 +16,4 @@ { | ||
"worker": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/server.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/server.js", | ||
"require": "./dist/server.cjs" | ||
@@ -25,39 +23,27 @@ }, | ||
"development": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/dev.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/dev.js", | ||
"require": "./dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/web.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/web.js", | ||
"require": "./dist/web.cjs" | ||
}, | ||
"deno": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/server.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/server.js", | ||
"require": "./dist/server.cjs" | ||
}, | ||
"node": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/server.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/server.js", | ||
"require": "./dist/server.cjs" | ||
}, | ||
"development": { | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/dev.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/dev.js", | ||
"require": "./dist/dev.cjs" | ||
}, | ||
"import": { | ||
"types": "./types/index.d.ts", | ||
"default": "./dist/web.js" | ||
}, | ||
"types": "./types/index.d.ts", | ||
"import": "./dist/web.js", | ||
"require": "./dist/web.cjs" | ||
@@ -64,0 +50,0 @@ } |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
22863
815461