solid-js 2.0.0-experimental.8 → 2.0.0-experimental.9

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.cjs CHANGED
@@ -368,10 +368,6 @@ Object.defineProperty(exports, "createOptimistic", {
368
368
  enumerable: true,
369
369
  get: function () { return signals.createOptimistic; }
370
370
  });
371
- Object.defineProperty(exports, "createOptimisticStore", {
372
- enumerable: true,
373
- get: function () { return signals.createOptimisticStore; }
374
- });
375
371
  Object.defineProperty(exports, "createProjection", {
376
372
  enumerable: true,
377
373
  get: function () { return signals.createProjection; }
@@ -476,6 +472,10 @@ Object.defineProperty(exports, "untrack", {
476
472
  enumerable: true,
477
473
  get: function () { return signals.untrack; }
478
474
  });
475
+ Object.defineProperty(exports, "useTransition", {
476
+ enumerable: true,
477
+ get: function () { return signals.useTransition; }
478
+ });
479
479
  exports.$DEVCOMP = $DEVCOMP;
480
480
  exports.Boundary = Boundary;
481
481
  exports.DEV = DEV;
package/dist/dev.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { createEffect, getContext, createMemo, flatten, createRoot, setContext, getOwner, untrack, NotReadyError, onCleanup, createSignal, createSuspense, flush, runWithObserver, createAsync as createAsync$1, mapArray, repeat, createErrorBoundary, createBoundary } from '@solidjs/signals';
2
- export { $PROXY, $TRACK, createEffect, createMemo, createOptimistic, createOptimisticStore, createProjection, createRenderEffect, createRoot, createSignal, createStore, deep, flatten, flush, getObserver, getOwner, isEqual, isPending, isWrappable, latest, mapArray, merge, omit, onCleanup, reconcile, repeat, resolve, runWithObserver, runWithOwner, snapshot, transition, untrack } from '@solidjs/signals';
2
+ export { $PROXY, $TRACK, createEffect, createMemo, createOptimistic, createProjection, createRenderEffect, createRoot, createSignal, createStore, deep, flatten, flush, getObserver, getOwner, isEqual, isPending, isWrappable, latest, mapArray, merge, omit, onCleanup, reconcile, repeat, resolve, runWithObserver, runWithOwner, snapshot, transition, untrack, useTransition } from '@solidjs/signals';
3
3
 
4
4
  const $DEVCOMP = Symbol("COMPONENT_DEV" );
5
5
  function onMount(fn) {
package/dist/server.cjs CHANGED
@@ -320,7 +320,6 @@ function createAsync(compute, value, options) {
320
320
  return value;
321
321
  });
322
322
  }
323
- const createOptimistic = createSignal;
324
323
  function isPending(fn, fallback) {
325
324
  try {
326
325
  fn();
@@ -386,6 +385,11 @@ function repeat(count, mapFn, options = {}) {
386
385
  } else if (options.fallback) s = [options.fallback()];
387
386
  return () => s;
388
387
  }
388
+ function transition(fn) {
389
+ }
390
+ function useTransition() {
391
+ return [() => false, () => {}];
392
+ }
389
393
 
390
394
  function isWrappable(obj) {
391
395
  return obj != null && typeof obj === "object" && !Object.isFrozen(obj);
@@ -410,7 +414,7 @@ function createProjection(fn, initialValue = {}) {
410
414
  fn(state);
411
415
  return state;
412
416
  }
413
- const createOptimisticStore = createStore;
417
+ const createOptimistic = createStore;
414
418
  function reconcile(value) {
415
419
  return state => {
416
420
  if (!isWrappable(state) || !isWrappable(value)) return value;
@@ -469,6 +473,21 @@ function deep(store) {
469
473
  return store;
470
474
  }
471
475
 
476
+ function tryCatch(fn) {
477
+ try {
478
+ const v = fn();
479
+ if (v instanceof Promise) {
480
+ return v.then(v => [undefined, v], e => {
481
+ if (e instanceof signals.NotReadyError) throw e;
482
+ return [e];
483
+ });
484
+ }
485
+ return [undefined, v];
486
+ } catch (e) {
487
+ if (e instanceof signals.NotReadyError) throw e;
488
+ return [e];
489
+ }
490
+ }
472
491
  function reducer(source, reducerFn) {
473
492
  return [source[0], action => {
474
493
  source[1](s => reducerFn(s, action));
@@ -514,14 +533,6 @@ Object.defineProperty(exports, "runWithOwner", {
514
533
  enumerable: true,
515
534
  get: function () { return signals.runWithOwner; }
516
535
  });
517
- Object.defineProperty(exports, "transition", {
518
- enumerable: true,
519
- get: function () { return signals.transition; }
520
- });
521
- Object.defineProperty(exports, "tryCatch", {
522
- enumerable: true,
523
- get: function () { return signals.tryCatch; }
524
- });
525
536
  exports.$DEVCOMP = $DEVCOMP;
526
537
  exports.DEV = DEV;
527
538
  exports.ErrorBoundary = ErrorBoundary;
@@ -538,7 +549,6 @@ exports.createContext = createContext;
538
549
  exports.createEffect = createEffect;
539
550
  exports.createMemo = createMemo;
540
551
  exports.createOptimistic = createOptimistic;
541
- exports.createOptimisticStore = createOptimisticStore;
542
552
  exports.createProjection = createProjection;
543
553
  exports.createRenderEffect = createRenderEffect;
544
554
  exports.createSignal = createSignal;
@@ -565,6 +575,9 @@ exports.runWithObserver = runWithObserver;
565
575
  exports.sharedConfig = sharedConfig;
566
576
  exports.ssrHandleError = ssrHandleError;
567
577
  exports.ssrRunInScope = ssrRunInScope;
578
+ exports.transition = transition;
579
+ exports.tryCatch = tryCatch;
568
580
  exports.untrack = untrack;
569
581
  exports.unwrap = unwrap;
570
582
  exports.useContext = useContext;
583
+ exports.useTransition = useTransition;
package/dist/server.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { getContext, onCleanup, Owner, runWithOwner, createRoot, setContext, flatten, NotReadyError, getOwner } from '@solidjs/signals';
2
- export { $PROXY, $TRACK, createRoot, flatten, getOwner, isEqual, isWrappable, onCleanup, runWithOwner, transition, tryCatch } from '@solidjs/signals';
2
+ export { $PROXY, $TRACK, createRoot, flatten, getOwner, isEqual, isWrappable, onCleanup, runWithOwner } from '@solidjs/signals';
3
3
 
4
4
  function onMount(fn) {
5
5
  createEffect();
@@ -319,7 +319,6 @@ function createAsync(compute, value, options) {
319
319
  return value;
320
320
  });
321
321
  }
322
- const createOptimistic = createSignal;
323
322
  function isPending(fn, fallback) {
324
323
  try {
325
324
  fn();
@@ -385,6 +384,11 @@ function repeat(count, mapFn, options = {}) {
385
384
  } else if (options.fallback) s = [options.fallback()];
386
385
  return () => s;
387
386
  }
387
+ function transition(fn) {
388
+ }
389
+ function useTransition() {
390
+ return [() => false, () => {}];
391
+ }
388
392
 
389
393
  function isWrappable(obj) {
390
394
  return obj != null && typeof obj === "object" && !Object.isFrozen(obj);
@@ -409,7 +413,7 @@ function createProjection(fn, initialValue = {}) {
409
413
  fn(state);
410
414
  return state;
411
415
  }
412
- const createOptimisticStore = createStore;
416
+ const createOptimistic = createStore;
413
417
  function reconcile(value) {
414
418
  return state => {
415
419
  if (!isWrappable(state) || !isWrappable(value)) return value;
@@ -468,6 +472,21 @@ function deep(store) {
468
472
  return store;
469
473
  }
470
474
 
475
+ function tryCatch(fn) {
476
+ try {
477
+ const v = fn();
478
+ if (v instanceof Promise) {
479
+ return v.then(v => [undefined, v], e => {
480
+ if (e instanceof NotReadyError) throw e;
481
+ return [e];
482
+ });
483
+ }
484
+ return [undefined, v];
485
+ } catch (e) {
486
+ if (e instanceof NotReadyError) throw e;
487
+ return [e];
488
+ }
489
+ }
471
490
  function reducer(source, reducerFn) {
472
491
  return [source[0], action => {
473
492
  source[1](s => reducerFn(s, action));
@@ -477,4 +496,4 @@ function reducer(source, reducerFn) {
477
496
  const $DEVCOMP = Symbol("solid-dev-component");
478
497
  const DEV = undefined;
479
498
 
480
- export { $DEVCOMP, DEV, ErrorBoundary, For, Match, Repeat, Show, Suspense, Switch, children, createAsync, createComponent, createContext, createEffect, createMemo, createOptimistic, createOptimisticStore, createProjection, createRenderEffect, createSignal, createStore, createUniqueId, deep, enableHydration, flush, from, getObserver, isPending, latest, lazy, mapArray, merge, observable, omit, onMount, reconcile, reducer, repeat, resolve, runWithObserver, sharedConfig, ssrHandleError, ssrRunInScope, untrack, unwrap, useContext };
499
+ export { $DEVCOMP, DEV, ErrorBoundary, For, Match, Repeat, Show, Suspense, Switch, children, createAsync, createComponent, createContext, createEffect, createMemo, createOptimistic, createProjection, createRenderEffect, createSignal, createStore, createUniqueId, deep, enableHydration, flush, from, getObserver, isPending, latest, lazy, mapArray, merge, observable, omit, onMount, reconcile, reducer, repeat, resolve, runWithObserver, sharedConfig, ssrHandleError, ssrRunInScope, transition, tryCatch, untrack, unwrap, useContext, useTransition };
package/dist/solid.cjs CHANGED
@@ -321,10 +321,6 @@ Object.defineProperty(exports, "createOptimistic", {
321
321
  enumerable: true,
322
322
  get: function () { return signals.createOptimistic; }
323
323
  });
324
- Object.defineProperty(exports, "createOptimisticStore", {
325
- enumerable: true,
326
- get: function () { return signals.createOptimisticStore; }
327
- });
328
324
  Object.defineProperty(exports, "createProjection", {
329
325
  enumerable: true,
330
326
  get: function () { return signals.createProjection; }
@@ -429,6 +425,10 @@ Object.defineProperty(exports, "untrack", {
429
425
  enumerable: true,
430
426
  get: function () { return signals.untrack; }
431
427
  });
428
+ Object.defineProperty(exports, "useTransition", {
429
+ enumerable: true,
430
+ get: function () { return signals.useTransition; }
431
+ });
432
432
  exports.$DEVCOMP = $DEVCOMP;
433
433
  exports.Boundary = Boundary;
434
434
  exports.DEV = DEV;
package/dist/solid.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { createEffect, getContext, createMemo, flatten, createRoot, setContext, NotReadyError, getOwner, onCleanup, createSignal, createSuspense, flush, runWithObserver, createAsync as createAsync$1, untrack, mapArray, repeat, createErrorBoundary, createBoundary } from '@solidjs/signals';
2
- export { $PROXY, $TRACK, createEffect, createMemo, createOptimistic, createOptimisticStore, createProjection, createRenderEffect, createRoot, createSignal, createStore, deep, flatten, flush, getObserver, getOwner, isEqual, isPending, isWrappable, latest, mapArray, merge, omit, onCleanup, reconcile, repeat, resolve, runWithObserver, runWithOwner, snapshot, transition, untrack } from '@solidjs/signals';
2
+ export { $PROXY, $TRACK, createEffect, createMemo, createOptimistic, createProjection, createRenderEffect, createRoot, createSignal, createStore, deep, flatten, flush, getObserver, getOwner, isEqual, isPending, isWrappable, latest, mapArray, merge, omit, onCleanup, reconcile, repeat, resolve, runWithObserver, runWithOwner, snapshot, transition, untrack, useTransition } from '@solidjs/signals';
3
3
 
4
4
  const $DEVCOMP = Symbol(0);
5
5
  function onMount(fn) {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "solid-js",
3
3
  "description": "A declarative JavaScript library for building user interfaces.",
4
- "version": "2.0.0-experimental.8",
4
+ "version": "2.0.0-experimental.9",
5
5
  "author": "Ryan Carniato",
6
6
  "license": "MIT",
7
7
  "homepage": "https://solidjs.com",
@@ -79,7 +79,7 @@
79
79
  "performance"
80
80
  ],
81
81
  "dependencies": {
82
- "@solidjs/signals": "^0.5.0",
82
+ "@solidjs/signals": "^0.6.0",
83
83
  "csstype": "^3.1.0",
84
84
  "seroval": "~1.3.0",
85
85
  "seroval-plugins": "~1.3.0"
@@ -36,7 +36,7 @@ export declare function Suspense(props: {
36
36
  * compute: (v: T) => Promise<T> | T,
37
37
  * value?: T,
38
38
  * options?: { name?: string, equals?: false | ((prev: T, next: T) => boolean) }
39
- * ): () => T;
39
+ * ): () => T & { refresh: () => void };
40
40
  * ```
41
41
  * @param compute a function that receives its previous or the initial value, if set, and returns a new value used to react on a computation
42
42
  * @param value an optional initial value for the computation; if set, fn will never receive undefined as first argument
@@ -44,5 +44,7 @@ export declare function Suspense(props: {
44
44
  *
45
45
  * @description https://docs.solidjs.com/reference/basic-reactivity/create-async
46
46
  */
47
- export declare function createAsync<T>(compute: (prev?: T) => Promise<T> | AsyncIterable<T> | T, value?: T, options?: MemoOptions<T>): Accessor<T>;
47
+ export declare function createAsync<T>(compute: (prev?: T) => Promise<T> | AsyncIterable<T> | T, value?: T, options?: MemoOptions<T>): Accessor<T> & {
48
+ refresh: () => void;
49
+ };
48
50
  export {};
package/types/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- export { $PROXY, $TRACK, createEffect, createMemo, createOptimistic, createOptimisticStore, createProjection, createRenderEffect, createRoot, createSignal, createStore, flatten, flush, getObserver, getOwner, isEqual, isPending, isWrappable, latest, mapArray, merge, omit, onCleanup, reconcile, repeat, resolve, runWithObserver, runWithOwner, snapshot, untrack, deep, transition } from "@solidjs/signals";
2
- export type { Accessor, BoundaryMode, ComputeFunction, EffectFunction, EffectOptions, Merge, NoInfer, NotWrappable, Omit, Owner, Signal, SignalOptions, Setter, Store, SolidStore, StoreNode, StoreSetter, TryCatchResult } from "@solidjs/signals";
1
+ export { $PROXY, $TRACK, createEffect, createMemo, createOptimistic, createProjection, createRenderEffect, createRoot, createSignal, createStore, flatten, flush, getObserver, getOwner, isEqual, isPending, isWrappable, latest, mapArray, merge, omit, onCleanup, reconcile, repeat, resolve, runWithObserver, runWithOwner, snapshot, untrack, deep, transition, useTransition } from "@solidjs/signals";
2
+ export type { Accessor, BoundaryMode, ComputeFunction, EffectFunction, EffectOptions, Merge, NoInfer, NotWrappable, Omit, Owner, Signal, SignalOptions, Setter, Store, SolidStore, StoreNode, StoreSetter } from "@solidjs/signals";
3
3
  export { $DEVCOMP, children, createContext, onMount, useContext } from "./client/core.js";
4
4
  export type { ChildrenReturn, Context, ContextProviderComponent, ResolvedChildren, ResolvedJSXElement } from "./client/core.js";
5
5
  export * from "./utilities.js";
@@ -1,7 +1,7 @@
1
- export { $PROXY, $TRACK, tryCatch, flatten, isEqual, isWrappable, transition } from "@solidjs/signals";
2
- export { createAsync, createEffect, createMemo, createOptimistic, createRenderEffect, createRoot, createSignal, flush, getObserver, getOwner, isPending, latest, mapArray, onCleanup, repeat, resolve, runWithObserver, runWithOwner, untrack } from "./signals.js";
1
+ export { $PROXY, $TRACK, flatten, isEqual, isWrappable } from "@solidjs/signals";
2
+ export { createAsync, createEffect, createMemo, createRenderEffect, createRoot, createSignal, flush, getObserver, getOwner, isPending, latest, mapArray, onCleanup, repeat, resolve, runWithObserver, runWithOwner, untrack, transition, useTransition } from "./signals.js";
3
3
  export { observable, from, children, createContext, onMount, useContext, ssrRunInScope } from "./reactive.js";
4
- export { createProjection, createStore, createOptimisticStore, unwrap, reconcile, merge, omit, deep } from "./store.js";
4
+ export { createProjection, createStore, createOptimistic, unwrap, reconcile, merge, omit, deep } from "./store.js";
5
5
  export { createComponent, For, Repeat, Show, Switch, Match, ErrorBoundary, Suspense, enableHydration, createUniqueId, lazy, sharedConfig, ssrHandleError } from "./rendering.js";
6
6
  export * from "../utilities.js";
7
7
  export declare const $DEVCOMP: unique symbol;
@@ -21,7 +21,6 @@ export declare function createEffect<Next, Init = Next>(compute: ComputeFunction
21
21
  export declare function createAsync<T>(compute: (prev?: T) => Promise<T> | AsyncIterable<T> | T, value?: T, options?: MemoOptions<T> & {
22
22
  deferStream?: boolean;
23
23
  }): Accessor<T>;
24
- export declare const createOptimistic: typeof createSignal;
25
24
  export declare function isPending(fn: () => any, fallback?: boolean): boolean;
26
25
  export declare function latest<T>(fn: () => T, fallback?: T): T | undefined;
27
26
  export declare function resolve(): void;
@@ -36,3 +35,5 @@ export declare function repeat<T>(count: Accessor<number>, mapFn: (i: number) =>
36
35
  fallback?: Accessor<any>;
37
36
  from?: Accessor<number | undefined>;
38
37
  }): () => T[];
38
+ export declare function transition<T>(fn: () => T): void;
39
+ export declare function useTransition(): [() => boolean, (fn: () => void) => void];
@@ -4,7 +4,7 @@ export declare function isWrappable(obj: any): boolean;
4
4
  export declare function unwrap<T>(item: T): T;
5
5
  export declare function createStore<T>(state: T | Store<T>): [get: Store<T>, set: StoreSetter<T>];
6
6
  export declare function createProjection<T extends Object>(fn: (draft: T) => void, initialValue?: T): Store<T>;
7
- export declare const createOptimisticStore: typeof createStore;
7
+ export declare const createOptimistic: typeof createStore;
8
8
  export declare function reconcile<T extends U, U extends object>(value: T): (state: U) => T;
9
9
  export declare function merge<T extends unknown[]>(...sources: T): Merge<T>;
10
10
  export declare function omit<T extends Record<any, any>, K extends readonly (keyof T)[]>(props: T, ...keys: K): Omit<T, K>;