@wardic/solid 1.0.0-rc.3 → 1.0.0-rc.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/index.js +1 -1
- package/dist/browser/runtime.js +20 -2
- package/dist/browser/runtime.js.map +1 -1
- package/dist/server/index.js +1 -1
- package/dist/server/runtime.js +20 -2
- package/dist/server/runtime.js.map +1 -1
- package/dist/solid/index.d.ts +1 -1
- package/dist/solid/index.js +1 -1
- package/dist/solid/provider.d.ts +1 -1
- package/dist/solid/provider.d.ts.map +1 -1
- package/dist/solid/runtime.d.ts.map +1 -1
- package/dist/solid/runtime.js +20 -2
- package/dist/solid/runtime.js.map +1 -1
- package/dist/solid/unstable/v2/provider.d.ts +1 -1
- package/dist/solid/unstable/v2/provider.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/index.ts +1 -1
- package/src/provider.tsx +1 -1
- package/src/runtime.ts +24 -2
- package/src/unstable/v2/provider.tsx +1 -1
package/dist/browser/index.js
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
*
|
|
12
12
|
* @see https://wardic.dev/reference/solid/utilities/version
|
|
13
13
|
*/
|
|
14
|
-
export const VERSION = "1.0.0-rc.
|
|
14
|
+
export const VERSION = "1.0.0-rc.4";
|
|
15
15
|
/**
|
|
16
16
|
* `WardicProvider` (one Effect runtime + `AtomRegistry` per ADR-0006), the
|
|
17
17
|
* `useWardicRuntime` accessor, and the scoped-fiber runner (`runScoped` /
|
package/dist/browser/runtime.js
CHANGED
|
@@ -8,18 +8,36 @@ import * as FlushGate from "@wardic/dom/FlushGate";
|
|
|
8
8
|
import * as ProjectionSystem from "@wardic/dom/ProjectionSystem";
|
|
9
9
|
import * as Report from "@wardic/dom/Report";
|
|
10
10
|
import * as Arr from "effect/Array";
|
|
11
|
+
import * as Bool from "effect/Boolean";
|
|
12
|
+
import * as Cause from "effect/Cause";
|
|
11
13
|
import * as Context from "effect/Context";
|
|
12
14
|
import * as Effect from "effect/Effect";
|
|
15
|
+
import * as Exit from "effect/Exit";
|
|
13
16
|
import { constVoid } from "effect/Function";
|
|
14
17
|
import * as Layer from "effect/Layer";
|
|
15
18
|
import * as ManagedRuntime from "effect/ManagedRuntime";
|
|
16
19
|
import * as Option from "effect/Option";
|
|
17
20
|
import * as Predicate from "effect/Predicate";
|
|
18
21
|
import { AtomRegistry } from "effect/reactivity";
|
|
22
|
+
import * as Result from "effect/Result";
|
|
19
23
|
import * as UndefinedOr from "effect/UndefinedOr";
|
|
20
24
|
import { clientRegistry, serverRegistry } from "./feature.js";
|
|
21
25
|
import { makeInstantAnimations, NO_INSTANT } from "./instant.js";
|
|
22
26
|
import { settingOf as configSettingOf } from "./wardic-config-value.js";
|
|
27
|
+
/** What a provider fails with when its `env` waits as it builds: the fix, where Effect's own `AsyncFiberError` names neither. */
|
|
28
|
+
const WAITING_ENV = "The WardicProvider's env waits as it builds, and a provider builds it at once, as its first element renders. Build the Layer that waits, such as DevTools.layer(), before the app renders, and give its services in the env: Layer.succeedContext(await Effect.runPromise(Layer.buildWithScope(layer, scope))). See https://wardic.dev/guides/observability.";
|
|
29
|
+
/**
|
|
30
|
+
* `env`, built at once, on the runtime's memo map and Scope as it would be unwrapped. A provider
|
|
31
|
+
* runs its services from a render, so a Layer that waits as it builds, such as `DevTools.layer()`
|
|
32
|
+
* waiting for its connection, fails the build with {@link WAITING_ENV}; any other failure is its own.
|
|
33
|
+
*/
|
|
34
|
+
const builtAtOnce = env => Layer.fromBuild((memoMap, scope) => {
|
|
35
|
+
const exit = Effect.runSyncExit(Layer.buildWithMemoMap(env, memoMap, scope));
|
|
36
|
+
return Bool.match(Option.exists(Result.getSuccess(Exit.findDefect(exit)), Cause.isAsyncFiberError), {
|
|
37
|
+
onTrue: () => Effect.die(new Error(WAITING_ENV)),
|
|
38
|
+
onFalse: () => exit
|
|
39
|
+
});
|
|
40
|
+
});
|
|
23
41
|
/**
|
|
24
42
|
* What a client provider hands its projection system (#511): whether reduced motion applies now
|
|
25
43
|
* (ADR-0029), and the app's scale correctors (#443). The `layout` Feature's Layer reads it from the
|
|
@@ -88,7 +106,7 @@ export const clientContext = (env, batch, reducedMotion, reducedMotionSetting, s
|
|
|
88
106
|
};
|
|
89
107
|
const runtime = ManagedRuntime.make(Layer.merge(FlushGate.layer({
|
|
90
108
|
batch
|
|
91
|
-
}), Layer.succeed(ProjectionOptions)(projectionOptions)).pipe(Layer.provideMerge(env)));
|
|
109
|
+
}), Layer.succeed(ProjectionOptions)(projectionOptions)).pipe(Layer.provideMerge(builtAtOnce(env))));
|
|
92
110
|
const features = clientRegistry(runtime);
|
|
93
111
|
// Its Instant changes (#443), timed by its Environment's Refresh frames, found at the first.
|
|
94
112
|
const instant = makeInstantAnimations(() => runtime.runSync(RefreshFrameSource.RefreshFrameSource).requestFrame);
|
|
@@ -151,7 +169,7 @@ const settingOf = (setting, provider) => {
|
|
|
151
169
|
* Appear animations when it has them.
|
|
152
170
|
*/
|
|
153
171
|
export const serverContext = (env, appear, reducedMotion) => {
|
|
154
|
-
const runtime = ManagedRuntime.make(env);
|
|
172
|
+
const runtime = ManagedRuntime.make(builtAtOnce(env));
|
|
155
173
|
return {
|
|
156
174
|
runtime,
|
|
157
175
|
// A server render's elements take the lean path and never read it: read at each use if one does.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","names":["DefaultTransition","InterpolatorRegistry","Probe","ReducedMotion","RefreshFrameSource","Renderer","FlushGate","ProjectionSystem","Report","Arr","Context","Effect","constVoid","Layer","ManagedRuntime","Option","Predicate","AtomRegistry","UndefinedOr","clientRegistry","serverRegistry","makeInstantAnimations","NO_INSTANT","settingOf","configSettingOf","ProjectionOptions","Service","SERVER_POSITIONAL_KEYS","isPositional","isTransform","SERVER_DEFAULT_TRANSITION","transitionFor","ONE_SPRING","keyframes","ONE_TWEEN","clientContext","
|
|
1
|
+
{"version":3,"file":"runtime.js","names":["DefaultTransition","InterpolatorRegistry","Probe","ReducedMotion","RefreshFrameSource","Renderer","FlushGate","ProjectionSystem","Report","Arr","Bool","Cause","Context","Effect","Exit","constVoid","Layer","ManagedRuntime","Option","Predicate","AtomRegistry","Result","UndefinedOr","clientRegistry","serverRegistry","makeInstantAnimations","NO_INSTANT","settingOf","configSettingOf","WAITING_ENV","builtAtOnce","env","fromBuild","memoMap","scope","exit","runSyncExit","buildWithMemoMap","match","exists","getSuccess","findDefect","isAsyncFiberError","onTrue","die","Error","onFalse","ProjectionOptions","Service","SERVER_POSITIONAL_KEYS","isPositional","isTransform","SERVER_DEFAULT_TRANSITION","transitionFor","ONE_SPRING","keyframes","ONE_TWEEN","clientContext","batch","reducedMotion","reducedMotionSetting","scaleCorrectors","built","build","isNotUndefined","gate","runtime","runSync","registry","probe","under","setting","applies","get","prefersReducedMotion","undefined","positionalKeys","PositionalKeys","defaultTransition","renderer","reducedMotionUnder","projectionOptions","make","merge","layer","succeed","pipe","provideMerge","features","instant","requestFrame","prepare","warmInterpolators","projection","projectionIn","reducedMotionWith","value","config","isUndefined","reducedMotionSettingWith","provider","getOrElse","fromUndefinedOr","serverContext","appear","inert","WARM_PAIRS","forEach","from","to","map","resolve","blend","IDLE_TIMEOUT_MS","IDLE_FALLBACK_MS","whenIdle","fn","isFunction","globalThis","requestIdleCallback","handle","timeout","cancelIdleCallback","setTimeout","clearTimeout","prepareIdle","section","services","fromContext","name","pick","getOrUndefined","getOption","NO_OPTIONS","runOnly","options","result","onSettled","animateLayoutOf","v","onUndefined","onDefined","animateLayout","reported","effect","tapCause","cause","failure","interrupted","runFork","interrupt"],"sources":["../../src/runtime.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/server/index.js
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
*
|
|
12
12
|
* @see https://wardic.dev/reference/solid/utilities/version
|
|
13
13
|
*/
|
|
14
|
-
export const VERSION = "1.0.0-rc.
|
|
14
|
+
export const VERSION = "1.0.0-rc.4";
|
|
15
15
|
/**
|
|
16
16
|
* `WardicProvider` (one Effect runtime + `AtomRegistry` per ADR-0006), the
|
|
17
17
|
* `useWardicRuntime` accessor, and the scoped-fiber runner (`runScoped` /
|
package/dist/server/runtime.js
CHANGED
|
@@ -8,18 +8,36 @@ import * as FlushGate from "@wardic/dom/FlushGate";
|
|
|
8
8
|
import * as ProjectionSystem from "@wardic/dom/ProjectionSystem";
|
|
9
9
|
import * as Report from "@wardic/dom/Report";
|
|
10
10
|
import * as Arr from "effect/Array";
|
|
11
|
+
import * as Bool from "effect/Boolean";
|
|
12
|
+
import * as Cause from "effect/Cause";
|
|
11
13
|
import * as Context from "effect/Context";
|
|
12
14
|
import * as Effect from "effect/Effect";
|
|
15
|
+
import * as Exit from "effect/Exit";
|
|
13
16
|
import { constVoid } from "effect/Function";
|
|
14
17
|
import * as Layer from "effect/Layer";
|
|
15
18
|
import * as ManagedRuntime from "effect/ManagedRuntime";
|
|
16
19
|
import * as Option from "effect/Option";
|
|
17
20
|
import * as Predicate from "effect/Predicate";
|
|
18
21
|
import { AtomRegistry } from "effect/reactivity";
|
|
22
|
+
import * as Result from "effect/Result";
|
|
19
23
|
import * as UndefinedOr from "effect/UndefinedOr";
|
|
20
24
|
import { clientRegistry, serverRegistry } from "./feature.js";
|
|
21
25
|
import { makeInstantAnimations, NO_INSTANT } from "./instant.js";
|
|
22
26
|
import { settingOf as configSettingOf } from "./wardic-config-value.js";
|
|
27
|
+
/** What a provider fails with when its `env` waits as it builds: the fix, where Effect's own `AsyncFiberError` names neither. */
|
|
28
|
+
const WAITING_ENV = "The WardicProvider's env waits as it builds, and a provider builds it at once, as its first element renders. Build the Layer that waits, such as DevTools.layer(), before the app renders, and give its services in the env: Layer.succeedContext(await Effect.runPromise(Layer.buildWithScope(layer, scope))). See https://wardic.dev/guides/observability.";
|
|
29
|
+
/**
|
|
30
|
+
* `env`, built at once, on the runtime's memo map and Scope as it would be unwrapped. A provider
|
|
31
|
+
* runs its services from a render, so a Layer that waits as it builds, such as `DevTools.layer()`
|
|
32
|
+
* waiting for its connection, fails the build with {@link WAITING_ENV}; any other failure is its own.
|
|
33
|
+
*/
|
|
34
|
+
const builtAtOnce = env => Layer.fromBuild((memoMap, scope) => {
|
|
35
|
+
const exit = Effect.runSyncExit(Layer.buildWithMemoMap(env, memoMap, scope));
|
|
36
|
+
return Bool.match(Option.exists(Result.getSuccess(Exit.findDefect(exit)), Cause.isAsyncFiberError), {
|
|
37
|
+
onTrue: () => Effect.die(new Error(WAITING_ENV)),
|
|
38
|
+
onFalse: () => exit
|
|
39
|
+
});
|
|
40
|
+
});
|
|
23
41
|
/**
|
|
24
42
|
* What a client provider hands its projection system (#511): whether reduced motion applies now
|
|
25
43
|
* (ADR-0029), and the app's scale correctors (#443). The `layout` Feature's Layer reads it from the
|
|
@@ -88,7 +106,7 @@ export const clientContext = (env, batch, reducedMotion, reducedMotionSetting, s
|
|
|
88
106
|
};
|
|
89
107
|
const runtime = ManagedRuntime.make(Layer.merge(FlushGate.layer({
|
|
90
108
|
batch
|
|
91
|
-
}), Layer.succeed(ProjectionOptions)(projectionOptions)).pipe(Layer.provideMerge(env)));
|
|
109
|
+
}), Layer.succeed(ProjectionOptions)(projectionOptions)).pipe(Layer.provideMerge(builtAtOnce(env))));
|
|
92
110
|
const features = clientRegistry(runtime);
|
|
93
111
|
// Its Instant changes (#443), timed by its Environment's Refresh frames, found at the first.
|
|
94
112
|
const instant = makeInstantAnimations(() => runtime.runSync(RefreshFrameSource.RefreshFrameSource).requestFrame);
|
|
@@ -151,7 +169,7 @@ const settingOf = (setting, provider) => {
|
|
|
151
169
|
* Appear animations when it has them.
|
|
152
170
|
*/
|
|
153
171
|
export const serverContext = (env, appear, reducedMotion) => {
|
|
154
|
-
const runtime = ManagedRuntime.make(env);
|
|
172
|
+
const runtime = ManagedRuntime.make(builtAtOnce(env));
|
|
155
173
|
return {
|
|
156
174
|
runtime,
|
|
157
175
|
// A server render's elements take the lean path and never read it: read at each use if one does.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","names":["DefaultTransition","InterpolatorRegistry","Probe","ReducedMotion","RefreshFrameSource","Renderer","FlushGate","ProjectionSystem","Report","Arr","Context","Effect","constVoid","Layer","ManagedRuntime","Option","Predicate","AtomRegistry","UndefinedOr","clientRegistry","serverRegistry","makeInstantAnimations","NO_INSTANT","settingOf","configSettingOf","ProjectionOptions","Service","SERVER_POSITIONAL_KEYS","isPositional","isTransform","SERVER_DEFAULT_TRANSITION","transitionFor","ONE_SPRING","keyframes","ONE_TWEEN","clientContext","
|
|
1
|
+
{"version":3,"file":"runtime.js","names":["DefaultTransition","InterpolatorRegistry","Probe","ReducedMotion","RefreshFrameSource","Renderer","FlushGate","ProjectionSystem","Report","Arr","Bool","Cause","Context","Effect","Exit","constVoid","Layer","ManagedRuntime","Option","Predicate","AtomRegistry","Result","UndefinedOr","clientRegistry","serverRegistry","makeInstantAnimations","NO_INSTANT","settingOf","configSettingOf","WAITING_ENV","builtAtOnce","env","fromBuild","memoMap","scope","exit","runSyncExit","buildWithMemoMap","match","exists","getSuccess","findDefect","isAsyncFiberError","onTrue","die","Error","onFalse","ProjectionOptions","Service","SERVER_POSITIONAL_KEYS","isPositional","isTransform","SERVER_DEFAULT_TRANSITION","transitionFor","ONE_SPRING","keyframes","ONE_TWEEN","clientContext","batch","reducedMotion","reducedMotionSetting","scaleCorrectors","built","build","isNotUndefined","gate","runtime","runSync","registry","probe","under","setting","applies","get","prefersReducedMotion","undefined","positionalKeys","PositionalKeys","defaultTransition","renderer","reducedMotionUnder","projectionOptions","make","merge","layer","succeed","pipe","provideMerge","features","instant","requestFrame","prepare","warmInterpolators","projection","projectionIn","reducedMotionWith","value","config","isUndefined","reducedMotionSettingWith","provider","getOrElse","fromUndefinedOr","serverContext","appear","inert","WARM_PAIRS","forEach","from","to","map","resolve","blend","IDLE_TIMEOUT_MS","IDLE_FALLBACK_MS","whenIdle","fn","isFunction","globalThis","requestIdleCallback","handle","timeout","cancelIdleCallback","setTimeout","clearTimeout","prepareIdle","section","services","fromContext","name","pick","getOrUndefined","getOption","NO_OPTIONS","runOnly","options","result","onSettled","animateLayoutOf","v","onUndefined","onDefined","animateLayout","reported","effect","tapCause","cause","failure","interrupted","runFork","interrupt"],"sources":["../../src/runtime.ts"],"sourcesContent":[null],"mappings":"AAUA,OAAO,KAAKA,iBAAiB,MAAM,gCAAgC;AAEnE,OAAO,KAAKC,oBAAoB,MAAM,mCAAmC;AACzE,OAAO,KAAKC,KAAK,MAAM,oBAAoB;AAC3C,OAAO,KAAKC,aAAa,MAAM,4BAA4B;AAC3D,OAAO,KAAKC,kBAAkB,MAAM,iCAAiC;AACrE,OAAO,KAAKC,QAAQ,MAAM,uBAAuB;AACjD,OAAO,KAAKC,SAAS,MAAM,uBAAuB;AAClD,OAAO,KAAKC,gBAAgB,MAAM,8BAA8B;AAChE,OAAO,KAAKC,MAAM,MAAM,oBAAoB;AAC5C,OAAO,KAAKC,GAAG,MAAM,cAAc;AACnC,OAAO,KAAKC,IAAI,MAAM,gBAAgB;AACtC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,IAAI,MAAM,aAAa;AACnC,SAASC,SAAS,QAAQ,iBAAiB;AAE3C,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,cAAc,MAAM,uBAAuB;AACvD,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,SAAS,MAAM,kBAAkB;AAC7C,SAASC,YAAY,QAAQ,mBAAmB;AAChD,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,WAAW,MAAM,oBAAoB;AAEjD,SAASC,cAAc,EAA6CC,cAAc,QAAQ,cAAc;AACxG,SAAiCC,qBAAqB,EAAEC,UAAU,QAAQ,cAAc;AACxF,SAASC,SAAS,IAAIC,eAAe,QAAgC,0BAA0B;AAc/F;AACA,MAAMC,WAAW,GACf,8VAA8V;AAEhW;;;;;AAKA,MAAMC,WAAW,GAAIC,GAAc,IACjCf,KAAK,CAACgB,SAAS,CAAC,CAACC,OAAO,EAAEC,KAAK,KAAI;EACjC,MAAMC,IAAI,GAAGtB,MAAM,CAACuB,WAAW,CAACpB,KAAK,CAACqB,gBAAgB,CAACN,GAAG,EAAEE,OAAO,EAAEC,KAAK,CAAC,CAAC;EAC5E,OAAOxB,IAAI,CAAC4B,KAAK,CAACpB,MAAM,CAACqB,MAAM,CAAClB,MAAM,CAACmB,UAAU,CAAC1B,IAAI,CAAC2B,UAAU,CAACN,IAAI,CAAC,CAAC,EAAExB,KAAK,CAAC+B,iBAAiB,CAAC,EAAE;IAClGC,MAAM,EAAEA,CAAA,KAAM9B,MAAM,CAAC+B,GAAG,CAAC,IAAIC,KAAK,CAAChB,WAAW,CAAC,CAAC;IAChDiB,OAAO,EAAEA,CAAA,KAAMX;GAChB,CAAC;AACJ,CAAC,CAAC;AAkBJ;;;;;AAKA,OAAM,MAAOY,iBAAkB,SAAQ,2BAAcnC,OAAO,CAACoC,OAAO,EAA+C,CAAC,iCAAiC,CAAC;AAQtJ;AACA,OAAO,MAAMC,sBAAsB,GAA4C;EAAEC,YAAY,EAAE/C,aAAa,CAACgD;AAAW,CAAE;AAE1H;AACA,OAAO,MAAMC,yBAAyB,GAAmD;EAAEC,aAAa,EAAEA,CAAA,KAAMrD,iBAAiB,CAACsD,UAAU;EAAEC,SAAS,EAAEvD,iBAAiB,CAACwD;AAAS,CAAE;AAiEtL;;;;;;;;;;;;;AAaA,OAAO,MAAMC,aAAa,GAAGA,CAC3B1B,GAAc,EACd2B,KAAkC,EAClCC,aAAqD,EACrDC,oBAA4D,EAC5DC,eAA6D,KACvC;EACtB,IAAIC,KAAwB;EAC5B,MAAMC,KAAK,GAAGA,CAAA,KAAY;IACxB,IAAI5C,SAAS,CAAC6C,cAAc,CAACF,KAAK,CAAC,EAAE,OAAOA,KAAK;IACjD;IACA;IACA,MAAMG,IAAI,GAAGC,OAAO,CAACC,OAAO,CAAC7D,SAAS,CAACA,SAAS,CAAC;IACjD;IACA;IACA;IACA,MAAM8D,QAAQ,GAAGF,OAAO,CAACC,OAAO,CAAC/C,YAAY,CAACA,YAAY,CAAC;IAC3D,MAAMiD,KAAK,GAAGH,OAAO,CAACC,OAAO,CAACjE,KAAK,CAACA,KAAK,CAAC;IAC1C,MAAMoE,KAAK,GAAIC,OAAyC,IACtDpE,aAAa,CAACqE,OAAO,CAAC7C,SAAS,CAAC4C,OAAO,EAAEZ,aAAa,CAAC,EAAES,QAAQ,CAACK,GAAG,CAACJ,KAAK,CAACK,oBAAoB,CAAC,CAAC;IACpG,MAAMF,OAAO,GAAGA,CAAA,KAAeF,KAAK,CAACK,SAAS,CAAC;IAC/C;IACA;IACA,MAAMC,cAAc,GAAGV,OAAO,CAACC,OAAO,CAAChE,aAAa,CAAC0E,cAAc,CAAC;IACpE;IACA;IACA,MAAMC,iBAAiB,GAAGZ,OAAO,CAACC,OAAO,CAACnE,iBAAiB,CAACA,iBAAiB,CAAC;IAC9E;IACA,MAAM+E,QAAQ,GAAGb,OAAO,CAACC,OAAO,CAAC9D,QAAQ,CAACA,QAAQ,CAAC;IACnDyD,KAAK,GAAG;MAAEG,IAAI;MAAEN,aAAa,EAAEa,OAAO;MAAEQ,kBAAkB,EAAEV,KAAK;MAAEM,cAAc;MAAEE,iBAAiB;MAAEC;IAAQ,CAAE;IAChH,OAAOjB,KAAK;EACd,CAAC;EACD;EACA;EACA,MAAMmB,iBAAiB,GAA6B;IAAEtB,aAAa,EAAEA,CAAA,KAAMI,KAAK,EAAE,CAACJ,aAAa,EAAE;IAAEE;EAAe,CAAE;EACrH,MAAMK,OAAO,GAAoBjD,cAAc,CAACiE,IAAI,CAClDlE,KAAK,CAACmE,KAAK,CAAC7E,SAAS,CAAC8E,KAAK,CAAC;IAAE1B;EAAK,CAAE,CAAC,EAAE1C,KAAK,CAACqE,OAAO,CAACtC,iBAAiB,CAAC,CAACkC,iBAAiB,CAAC,CAAC,CAACK,IAAI,CAACtE,KAAK,CAACuE,YAAY,CAACzD,WAAW,CAACC,GAAG,CAAC,CAAC,CAAC,CACxI;EACD,MAAMyD,QAAQ,GAAGjE,cAAc,CAAC2C,OAAO,CAAC;EACxC;EACA,MAAMuB,OAAO,GAAGhE,qBAAqB,CAAC,MAAMyC,OAAO,CAACC,OAAO,CAAC/D,kBAAkB,CAACA,kBAAkB,CAAC,CAACsF,YAAY,CAAC;EAChH,MAAMC,OAAO,GAAGA,CAAA,KAAW;IACzB5B,KAAK,EAAE;IACP6B,iBAAiB,CAAC1B,OAAO,CAAC;EAC5B,CAAC;EACD,OAAO;IACLA,OAAO;IACPN,oBAAoB;IACpB6B,OAAO;IACPD,QAAQ;IACRG,OAAO;IACP,IAAI1B,IAAIA,CAAA;MACN,OAAOF,KAAK,EAAE,CAACE,IAAI;IACrB,CAAC;IACD,IAAI4B,UAAUA,CAAA;MACZ,OAAOC,YAAY,CAACN,QAAQ,CAAC1B,KAAK,EAAE,CAAC;IACvC,CAAC;IACD,IAAIH,aAAaA,CAAA;MACf,OAAOI,KAAK,EAAE,CAACJ,aAAa;IAC9B,CAAC;IACD,IAAIqB,kBAAkBA,CAAA;MACpB,OAAOjB,KAAK,EAAE,CAACiB,kBAAkB;IACnC,CAAC;IACD,IAAIJ,cAAcA,CAAA;MAChB,OAAOb,KAAK,EAAE,CAACa,cAAc;IAC/B,CAAC;IACD,IAAIE,iBAAiBA,CAAA;MACnB,OAAOf,KAAK,EAAE,CAACe,iBAAiB;IAClC,CAAC;IACD,IAAIC,QAAQA,CAAA;MACV,OAAOhB,KAAK,EAAE,CAACgB,QAAQ;IACzB;GACD;AACH,CAAC;AAED;;;;AAIA,OAAO,MAAMgB,iBAAiB,GAAGA,CAACC,KAAyB,EAAEC,MAAqC,KAAqB;EACrH,IAAI9E,SAAS,CAAC+E,WAAW,CAACD,MAAM,CAAC,EAAE,OAAOD,KAAK,CAACrC,aAAa;EAC7D,MAAMW,KAAK,GAAG0B,KAAK,CAAChB,kBAAkB;EACtC,OAAO,MAAMV,KAAK,CAAC2B,MAAM,CAACtC,aAAa,EAAE,CAAC;AAC5C,CAAC;AAED;;;;AAIA,OAAO,MAAMwC,wBAAwB,GAAGA,CAACH,KAAyB,EAAEC,MAAqC,KACvG,MAAMtE,SAAS,CAACC,eAAe,CAACqE,MAAM,CAAC,EAAED,KAAK,CAACpC,oBAAoB,CAAC;AAEtE;AACA,MAAMjC,SAAS,GAAGA,CAAC4C,OAAyC,EAAE6B,QAAgD,KAA0B;EACtI,IAAIjF,SAAS,CAAC6C,cAAc,CAACO,OAAO,CAAC,EAAE,OAAOA,OAAO;EACrD,OAAOrD,MAAM,CAACmF,SAAS,CAACnF,MAAM,CAACoF,eAAe,CAACF,QAAQ,EAAE,CAAC,EAAE,MAAM,MAAe,CAAC;AACpF,CAAC;AAED;;;;;;AAMA,OAAO,MAAMG,aAAa,GAAGA,CAACxE,GAAc,EAAEyE,MAAgC,EAAE7C,aAAqD,KAAwB;EAC3J,MAAMO,OAAO,GAAGjD,cAAc,CAACiE,IAAI,CAACpD,WAAW,CAACC,GAAG,CAAC,CAAC;EACrD,OAAO;IACLmC,OAAO;IACP;IACA,IAAIa,QAAQA,CAAA;MACV,OAAOb,OAAO,CAACC,OAAO,CAAC9D,QAAQ,CAACA,QAAQ,CAAC;IAC3C,CAAC;IACDmF,QAAQ,EAAEhE,cAAc,CAAC0C,OAAO,CAAC;IACjCyB,OAAO,EAAE5E,SAAS;IAClBkD,IAAI,EAAE3D,SAAS,CAACmG,KAAK;IACrBZ,UAAU,EAAElB,SAAS;IACrBhB,aAAa,EAAEA,CAAA,KAAM,KAAK;IAC1BqB,kBAAkB,EAAEA,CAAA,KAAM,KAAK;IAC/BpB,oBAAoB,EAAED,aAAa;IACnCiB,cAAc,EAAE3B,sBAAsB;IACtC6B,iBAAiB,EAAE1B,yBAAyB;IAC5CoD,MAAM;IACNf,OAAO,EAAE/D;GACV;AACH,CAAC;AAED;;;;;AAKA,MAAMgF,UAAU,GAA+D,CAC7E,CAAC,CAAC,EAAE,CAAC,CAAC,EACN,CAAC,KAAK,EAAE,MAAM,CAAC,EACf,CAAC,cAAc,EAAE,oBAAoB,CAAC,CACvC;AAED;AACA,MAAMd,iBAAiB,GAAI1B,OAAwB,IAAU;EAC3D,MAAME,QAAQ,GAAGF,OAAO,CAACC,OAAO,CAAClE,oBAAoB,CAACA,oBAAoB,CAAC;EAC3EQ,GAAG,CAACkG,OAAO,CAACD,UAAU,EAAE,CAAC,CAACE,IAAI,EAAEC,EAAE,CAAC,KAAI;IACrC3C,OAAO,CAACC,OAAO,CAACtD,MAAM,CAACiG,GAAG,CAAC1C,QAAQ,CAAC2C,OAAO,CAACH,IAAI,EAAEC,EAAE,CAAC,EAAGG,KAAK,IAAKA,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;EAChF,CAAC,CAAC;AACJ,CAAC;AAED;AACA,MAAMC,eAAe,GAAG,GAAG;AAE3B;AACA,MAAMC,gBAAgB,GAAG,EAAE;AAE3B;;;;AAIA,OAAO,MAAMC,QAAQ,GAAIC,EAAc,IAAkB;EACvD,IAAIjG,SAAS,CAACkG,UAAU,CAACC,UAAU,CAACC,mBAAmB,CAAC,EAAE;IACxD,MAAMC,MAAM,GAAGF,UAAU,CAACC,mBAAmB,CAACH,EAAE,EAAE;MAAEK,OAAO,EAAER;IAAe,CAAE,CAAC;IAC/E,OAAO,MAAMK,UAAU,CAACI,kBAAkB,CAACF,MAAM,CAAC;EACpD;EACA,MAAMA,MAAM,GAAGG,UAAU,CAACP,EAAE,EAAEF,gBAAgB,CAAC;EAC/C,OAAO,MAAMU,YAAY,CAACJ,MAAM,CAAC;AACnC,CAAC;AAED;;;;;AAKA,OAAO,MAAMK,WAAW,GAAGA,CAAC7B,KAAyB,EAAE8B,OAAuB,KAAU;EACtF,IAAI;IACF9B,KAAK,CAACL,OAAO,EAAE;IACfmC,OAAO,CAACC,QAAQ,EAAE;EACpB,CAAC,CAAC,MAAM;IACN;EAAA;AAEJ,CAAC;AAED;AACA,OAAO,MAAMC,WAAW,GAAGA,CAAIhC,KAAqC,EAAEiC,IAAY,EAAEC,IAAsC,KAAO;EAC/H,IAAI/G,SAAS,CAAC+E,WAAW,CAACF,KAAK,CAAC,EAAE,MAAM,IAAInD,KAAK,CAAC,GAAGoF,IAAI,yCAAyC,CAAC;EACnG,OAAOC,IAAI,CAAClC,KAAK,CAAC;AACpB,CAAC;AAED;AACA,OAAO,MAAMF,YAAY,GAAIiC,QAAgC,IAC3D7G,MAAM,CAACiH,cAAc,CAACvH,OAAO,CAACwH,SAAS,CAACL,QAA8D,EAAExH,gBAAgB,CAACA,gBAAgB,CAAC,CAAC;AAU7I,MAAM8H,UAAU,GAA0C,EAAE;AAE5D;AACA,MAAMC,OAAO,GAAkBA,CAAClB,EAAE,EAAEmB,OAAO,GAAGF,UAAU,KAAI;EAC1D,MAAMG,MAAM,GAAGpB,EAAE,EAAE;EACnB9F,WAAW,CAACwF,GAAG,CAACyB,OAAO,CAACE,SAAS,EAAGA,SAAS,IAAKA,SAAS,EAAE,CAAC;EAC9D,OAAOD,MAAM;AACf,CAAC;AAED;;;;;AAKA,OAAO,MAAME,eAAe,GAAI1C,KAAqC,IACnEgC,WAAW,CACThC,KAAK,EACL,kBAAkB,EACjB2C,CAAC,IACA,CAACvB,EAAE,EAAEmB,OAAO,KACVjH,WAAW,CAACgB,KAAK,CAACqG,CAAC,CAAC9C,UAAU,EAAE;EAAE+C,WAAW,EAAEA,CAAA,KAAMN,OAAO,CAAClB,EAAE,EAAEmB,OAAO,CAAC;EAAEM,SAAS,EAAGhD,UAAU,IAAKA,UAAU,CAACiD,aAAa,CAAC1B,EAAE,EAAEmB,OAAO;AAAC,CAAE,CAAC,CACnJ;AAEH;;;;;AAKA,OAAO,MAAMQ,QAAQ,GAAUC,MAA2C,IACxEA,MAAM,CAAC1D,IAAI,CAACzE,MAAM,CAACoI,QAAQ,CAAEC,KAAK,IAAK1I,MAAM,CAAC2I,OAAO,CAAC,kCAAkC,EAAED,KAAK,CAAC,CAAC,CAAC;AAEpG;AACA,OAAO,MAAME,WAAW,GAAGA,CAAA,KAA+BvI,MAAM,CAACwI,OAAO,CAACxI,MAAM,CAACyI,SAAS,CAAiC","ignoreList":[]}
|
package/dist/solid/index.d.ts
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
*
|
|
12
12
|
* @see https://wardic.dev/reference/solid/utilities/version
|
|
13
13
|
*/
|
|
14
|
-
export declare const VERSION = "1.0.0-rc.
|
|
14
|
+
export declare const VERSION = "1.0.0-rc.4";
|
|
15
15
|
/**
|
|
16
16
|
* `WardicProvider` (one Effect runtime + `AtomRegistry` per ADR-0006), the
|
|
17
17
|
* `useWardicRuntime` accessor, and the scoped-fiber runner (`runScoped` /
|
package/dist/solid/index.js
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
*
|
|
12
12
|
* @see https://wardic.dev/reference/solid/utilities/version
|
|
13
13
|
*/
|
|
14
|
-
export const VERSION = "1.0.0-rc.
|
|
14
|
+
export const VERSION = "1.0.0-rc.4";
|
|
15
15
|
/**
|
|
16
16
|
* `WardicProvider` (one Effect runtime + `AtomRegistry` per ADR-0006), the
|
|
17
17
|
* `useWardicRuntime` accessor, and the scoped-fiber runner (`runScoped` /
|
package/dist/solid/provider.d.ts
CHANGED
|
@@ -38,7 +38,7 @@ import type { WardicScaleCorrector } from "./config.ts";
|
|
|
38
38
|
* @see https://wardic.dev/reference/solid/provider/wardic-provider
|
|
39
39
|
*/
|
|
40
40
|
export declare function WardicProvider(props: {
|
|
41
|
-
/** The Environment Wardic runs in: `DomLive` in a browser, from `@wardic/dom`. Read once. */
|
|
41
|
+
/** The Environment Wardic runs in: `DomLive` in a browser, from `@wardic/dom`. Read once, and built at once: a Layer that waits as it builds fails it. */
|
|
42
42
|
readonly env: WardicEnv;
|
|
43
43
|
/**
|
|
44
44
|
* How animations honour the visitor's reduced-motion setting: `"user"` follows it (the default),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/provider.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,KAAK,iBAAiB,MAAM,gCAAgC,CAAA;AACxE,OAAO,KAAK,KAAK,SAAS,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,KAAK,aAAa,MAAM,4BAA4B,CAAA;AAChE,OAAO,KAAK,KAAK,QAAQ,MAAM,uBAAuB,CAAA;AAEtD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAQrC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAInC,OAAO,KAAK,KAAK,SAAS,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,KAAK,gBAAgB,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAe,KAAK,YAAY,EAAgB,MAAM,aAAa,CAAA;AAC1E,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAuB,MAAM,cAAc,CAAA;AAG9H,OAAO,EACL,KAAK,aAAa,EAUlB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,cAAc,EAEpB,MAAM,cAAc,CAAA;AAIrB,OAAO,EAAmB,KAAK,iBAAiB,EAAgC,MAAM,cAAc,CAAA;AACpG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AASvD;;;;;;;;;GASG;AAWH,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/provider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,KAAK,SAAS,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,KAAK,KAAK,MAAM,oBAAoB,CAAA;AAChD,OAAO,KAAK,iBAAiB,MAAM,gCAAgC,CAAA;AACnE,OAAO,KAAK,KAAK,SAAS,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,oBAAoB,MAAM,mCAAmC,CAAA;AACzE,OAAO,KAAK,KAAK,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,aAAa,MAAM,4BAA4B,CAAA;AAC3D,OAAO,KAAK,kBAAkB,MAAM,iCAAiC,CAAA;AACrE,OAAO,KAAK,QAAQ,MAAM,uBAAuB,CAAA;AACjD,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAClD,OAAO,KAAK,gBAAgB,MAAM,8BAA8B,CAAA;
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/solid/runtime.js
CHANGED
|
@@ -8,18 +8,36 @@ import * as FlushGate from "@wardic/dom/FlushGate";
|
|
|
8
8
|
import * as ProjectionSystem from "@wardic/dom/ProjectionSystem";
|
|
9
9
|
import * as Report from "@wardic/dom/Report";
|
|
10
10
|
import * as Arr from "effect/Array";
|
|
11
|
+
import * as Bool from "effect/Boolean";
|
|
12
|
+
import * as Cause from "effect/Cause";
|
|
11
13
|
import * as Context from "effect/Context";
|
|
12
14
|
import * as Effect from "effect/Effect";
|
|
15
|
+
import * as Exit from "effect/Exit";
|
|
13
16
|
import { constVoid } from "effect/Function";
|
|
14
17
|
import * as Layer from "effect/Layer";
|
|
15
18
|
import * as ManagedRuntime from "effect/ManagedRuntime";
|
|
16
19
|
import * as Option from "effect/Option";
|
|
17
20
|
import * as Predicate from "effect/Predicate";
|
|
18
21
|
import { AtomRegistry } from "effect/reactivity";
|
|
22
|
+
import * as Result from "effect/Result";
|
|
19
23
|
import * as UndefinedOr from "effect/UndefinedOr";
|
|
20
24
|
import { clientRegistry, serverRegistry } from "./feature.js";
|
|
21
25
|
import { makeInstantAnimations, NO_INSTANT } from "./instant.js";
|
|
22
26
|
import { settingOf as configSettingOf } from "./wardic-config-value.js";
|
|
27
|
+
/** What a provider fails with when its `env` waits as it builds: the fix, where Effect's own `AsyncFiberError` names neither. */
|
|
28
|
+
const WAITING_ENV = "The WardicProvider's env waits as it builds, and a provider builds it at once, as its first element renders. Build the Layer that waits, such as DevTools.layer(), before the app renders, and give its services in the env: Layer.succeedContext(await Effect.runPromise(Layer.buildWithScope(layer, scope))). See https://wardic.dev/guides/observability.";
|
|
29
|
+
/**
|
|
30
|
+
* `env`, built at once, on the runtime's memo map and Scope as it would be unwrapped. A provider
|
|
31
|
+
* runs its services from a render, so a Layer that waits as it builds, such as `DevTools.layer()`
|
|
32
|
+
* waiting for its connection, fails the build with {@link WAITING_ENV}; any other failure is its own.
|
|
33
|
+
*/
|
|
34
|
+
const builtAtOnce = (env) => Layer.fromBuild((memoMap, scope) => {
|
|
35
|
+
const exit = Effect.runSyncExit(Layer.buildWithMemoMap(env, memoMap, scope));
|
|
36
|
+
return Bool.match(Option.exists(Result.getSuccess(Exit.findDefect(exit)), Cause.isAsyncFiberError), {
|
|
37
|
+
onTrue: () => Effect.die(new Error(WAITING_ENV)),
|
|
38
|
+
onFalse: () => exit,
|
|
39
|
+
});
|
|
40
|
+
});
|
|
23
41
|
/**
|
|
24
42
|
* What a client provider hands its projection system (#511): whether reduced motion applies now
|
|
25
43
|
* (ADR-0029), and the app's scale correctors (#443). The `layout` Feature's Layer reads it from the
|
|
@@ -73,7 +91,7 @@ export const clientContext = (env, batch, reducedMotion, reducedMotionSetting, s
|
|
|
73
91
|
// What the `layout` Feature builds its projection system with (#511): reduced motion read as each
|
|
74
92
|
// layout animation starts, and the app's scale correctors.
|
|
75
93
|
const projectionOptions = { reducedMotion: () => build().reducedMotion(), scaleCorrectors };
|
|
76
|
-
const runtime = ManagedRuntime.make(Layer.merge(FlushGate.layer({ batch }), Layer.succeed(ProjectionOptions)(projectionOptions)).pipe(Layer.provideMerge(env)));
|
|
94
|
+
const runtime = ManagedRuntime.make(Layer.merge(FlushGate.layer({ batch }), Layer.succeed(ProjectionOptions)(projectionOptions)).pipe(Layer.provideMerge(builtAtOnce(env))));
|
|
77
95
|
const features = clientRegistry(runtime);
|
|
78
96
|
// Its Instant changes (#443), timed by its Environment's Refresh frames, found at the first.
|
|
79
97
|
const instant = makeInstantAnimations(() => runtime.runSync(RefreshFrameSource.RefreshFrameSource).requestFrame);
|
|
@@ -138,7 +156,7 @@ const settingOf = (setting, provider) => {
|
|
|
138
156
|
* Appear animations when it has them.
|
|
139
157
|
*/
|
|
140
158
|
export const serverContext = (env, appear, reducedMotion) => {
|
|
141
|
-
const runtime = ManagedRuntime.make(env);
|
|
159
|
+
const runtime = ManagedRuntime.make(builtAtOnce(env));
|
|
142
160
|
return {
|
|
143
161
|
runtime,
|
|
144
162
|
// A server render's elements take the lean path and never read it: read at each use if one does.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/runtime.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,iBAAiB,MAAM,gCAAgC,CAAA;AAEnE,OAAO,KAAK,oBAAoB,MAAM,mCAAmC,CAAA;AACzE,OAAO,KAAK,KAAK,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,aAAa,MAAM,4BAA4B,CAAA;AAC3D,OAAO,KAAK,kBAAkB,MAAM,iCAAiC,CAAA;AACrE,OAAO,KAAK,QAAQ,MAAM,uBAAuB,CAAA;AACjD,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAClD,OAAO,KAAK,gBAAgB,MAAM,8BAA8B,CAAA;AAChE,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAA;AAC5C,OAAO,KAAK,GAAG,MAAM,cAAc,CAAA;AACnC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAA;AAEjD,OAAO,EAAE,cAAc,EAA6C,cAAc,EAAE,MAAM,cAAc,CAAA;AACxG,OAAO,EAA0B,qBAAqB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACxF,OAAO,EAAE,SAAS,IAAI,eAAe,EAA0B,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,7 +23,7 @@ import type { WardicScaleCorrector } from "../../config.ts";
|
|
|
23
23
|
* @see https://wardic.dev/reference/solid/provider/wardic-provider
|
|
24
24
|
*/
|
|
25
25
|
export declare function WardicProvider(props: {
|
|
26
|
-
/** The Environment Wardic runs in: `DomLive` in a browser, from `@wardic/dom`. Read once. */
|
|
26
|
+
/** The Environment Wardic runs in: `DomLive` in a browser, from `@wardic/dom`. Read once, and built at once: a Layer that waits as it builds fails it. */
|
|
27
27
|
readonly env: WardicEnv;
|
|
28
28
|
/**
|
|
29
29
|
* How animations honour the visitor's reduced-motion setting: `"user"` follows it (the default),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../../src/unstable/v2/provider.tsx"],"names":[],"mappings":"AAuBA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAMrC,OAAO,KAAK,KAAK,iBAAiB,MAAM,gCAAgC,CAAA;AACxE,OAAO,KAAK,KAAK,aAAa,MAAM,4BAA4B,CAAA;AAChE,OAAO,KAAK,KAAK,QAAQ,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,KAAK,SAAS,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,KAAK,gBAAgB,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAE,KAAK,OAAO,EAAY,KAAK,GAAG,EAAW,MAAM,cAAc,CAAA;AAExE,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAuB,MAAM,kBAAkB,CAAA;AAElI,OAAO,EAAe,KAAK,YAAY,EAAgB,MAAM,iBAAiB,CAAA;AAC9E,OAAO,EAUL,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,cAAc,EAEpB,MAAM,kBAAkB,CAAA;AAIzB,OAAO,EAAmB,KAAK,iBAAiB,EAAgC,MAAM,kBAAkB,CAAA;AACxG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAiB3D;;;;;;;;;GASG;AAIH,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../../src/unstable/v2/provider.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wardic/solid",
|
|
3
|
-
"version": "1.0.0-rc.
|
|
3
|
+
"version": "1.0.0-rc.4",
|
|
4
4
|
"description": "Motion for React's API on Solid 1 and Solid 2: Wardic's elements, gestures, layout and presence animations.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"animation",
|
|
@@ -68,8 +68,8 @@
|
|
|
68
68
|
},
|
|
69
69
|
"dependencies": {
|
|
70
70
|
"@solid-primitives/refs": "^1.1.3",
|
|
71
|
-
"@wardic/core": "1.0.0-rc.
|
|
72
|
-
"@wardic/dom": "1.0.0-rc.
|
|
71
|
+
"@wardic/core": "1.0.0-rc.4",
|
|
72
|
+
"@wardic/dom": "1.0.0-rc.4",
|
|
73
73
|
"csstype": "^3.1.0"
|
|
74
74
|
},
|
|
75
75
|
"peerDependencies": {
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
"@solidjs/router-2": "npm:@solidjs/router@2.0.0-next.43",
|
|
92
92
|
"@solidjs/web": "2.0.0-rc.20",
|
|
93
93
|
"@types/babel__core": "^7.20.5",
|
|
94
|
-
"@wardic/test": "1.0.0-rc.
|
|
94
|
+
"@wardic/test": "1.0.0-rc.4",
|
|
95
95
|
"babel-preset-solid": "1.9.12",
|
|
96
96
|
"effect": "4.1.1",
|
|
97
97
|
"solid-js": "^1.9.18",
|
package/src/index.ts
CHANGED
package/src/provider.tsx
CHANGED
|
@@ -88,7 +88,7 @@ const WardicContext = createContext<WardicContextValue | undefined>(undefined)
|
|
|
88
88
|
// this provider's alone, one keyed borderRadius/boxShadow replacing the built-in; ignored on a server.
|
|
89
89
|
// features/strict: #511, ADR-0067, read once.
|
|
90
90
|
export function WardicProvider(props: {
|
|
91
|
-
/** The Environment Wardic runs in: `DomLive` in a browser, from `@wardic/dom`. Read once. */
|
|
91
|
+
/** The Environment Wardic runs in: `DomLive` in a browser, from `@wardic/dom`. Read once, and built at once: a Layer that waits as it builds fails it. */
|
|
92
92
|
readonly env: WardicEnv
|
|
93
93
|
/**
|
|
94
94
|
* How animations honour the visitor's reduced-motion setting: `"user"` follows it (the default),
|
package/src/runtime.ts
CHANGED
|
@@ -19,8 +19,11 @@ import * as FlushGate from "@wardic/dom/FlushGate"
|
|
|
19
19
|
import * as ProjectionSystem from "@wardic/dom/ProjectionSystem"
|
|
20
20
|
import * as Report from "@wardic/dom/Report"
|
|
21
21
|
import * as Arr from "effect/Array"
|
|
22
|
+
import * as Bool from "effect/Boolean"
|
|
23
|
+
import * as Cause from "effect/Cause"
|
|
22
24
|
import * as Context from "effect/Context"
|
|
23
25
|
import * as Effect from "effect/Effect"
|
|
26
|
+
import * as Exit from "effect/Exit"
|
|
24
27
|
import { constVoid } from "effect/Function"
|
|
25
28
|
import type * as Fiber from "effect/Fiber"
|
|
26
29
|
import * as Layer from "effect/Layer"
|
|
@@ -28,6 +31,7 @@ import * as ManagedRuntime from "effect/ManagedRuntime"
|
|
|
28
31
|
import * as Option from "effect/Option"
|
|
29
32
|
import * as Predicate from "effect/Predicate"
|
|
30
33
|
import { AtomRegistry } from "effect/reactivity"
|
|
34
|
+
import * as Result from "effect/Result"
|
|
31
35
|
import * as UndefinedOr from "effect/UndefinedOr"
|
|
32
36
|
import type { ServerAppear } from "./appear.ts"
|
|
33
37
|
import { clientRegistry, type FeatureRegistry, type FeatureSection, serverRegistry } from "./feature.ts"
|
|
@@ -46,6 +50,24 @@ import { settingOf as configSettingOf, type WardicConfigValue } from "./wardic-c
|
|
|
46
50
|
*/
|
|
47
51
|
export type WardicEnv = Layer.Layer<WardicServices, never, never>
|
|
48
52
|
|
|
53
|
+
/** What a provider fails with when its `env` waits as it builds: the fix, where Effect's own `AsyncFiberError` names neither. */
|
|
54
|
+
const WAITING_ENV =
|
|
55
|
+
"The WardicProvider's env waits as it builds, and a provider builds it at once, as its first element renders. Build the Layer that waits, such as DevTools.layer(), before the app renders, and give its services in the env: Layer.succeedContext(await Effect.runPromise(Layer.buildWithScope(layer, scope))). See https://wardic.dev/guides/observability."
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* `env`, built at once, on the runtime's memo map and Scope as it would be unwrapped. A provider
|
|
59
|
+
* runs its services from a render, so a Layer that waits as it builds, such as `DevTools.layer()`
|
|
60
|
+
* waiting for its connection, fails the build with {@link WAITING_ENV}; any other failure is its own.
|
|
61
|
+
*/
|
|
62
|
+
const builtAtOnce = (env: WardicEnv): WardicEnv =>
|
|
63
|
+
Layer.fromBuild((memoMap, scope) => {
|
|
64
|
+
const exit = Effect.runSyncExit(Layer.buildWithMemoMap(env, memoMap, scope))
|
|
65
|
+
return Bool.match(Option.exists(Result.getSuccess(Exit.findDefect(exit)), Cause.isAsyncFiberError), {
|
|
66
|
+
onTrue: () => Effect.die(new Error(WAITING_ENV)),
|
|
67
|
+
onFalse: () => exit,
|
|
68
|
+
})
|
|
69
|
+
})
|
|
70
|
+
|
|
49
71
|
/** The services a `WardicProvider`'s runtime gives the code run on it: Wardic's Environment, as a union of Effect services. */
|
|
50
72
|
export type WardicServices =
|
|
51
73
|
| Clock.Clock
|
|
@@ -193,7 +215,7 @@ export const clientContext = (
|
|
|
193
215
|
// layout animation starts, and the app's scale correctors.
|
|
194
216
|
const projectionOptions: ProjectionSystem.Options = { reducedMotion: () => build().reducedMotion(), scaleCorrectors }
|
|
195
217
|
const runtime: ProviderRuntime = ManagedRuntime.make(
|
|
196
|
-
Layer.merge(FlushGate.layer({ batch }), Layer.succeed(ProjectionOptions)(projectionOptions)).pipe(Layer.provideMerge(env)),
|
|
218
|
+
Layer.merge(FlushGate.layer({ batch }), Layer.succeed(ProjectionOptions)(projectionOptions)).pipe(Layer.provideMerge(builtAtOnce(env))),
|
|
197
219
|
)
|
|
198
220
|
const features = clientRegistry(runtime)
|
|
199
221
|
// Its Instant changes (#443), timed by its Environment's Refresh frames, found at the first.
|
|
@@ -262,7 +284,7 @@ const settingOf = (setting: ReducedMotion.Config | undefined, provider: () => Re
|
|
|
262
284
|
* Appear animations when it has them.
|
|
263
285
|
*/
|
|
264
286
|
export const serverContext = (env: WardicEnv, appear: ServerAppear | undefined, reducedMotion: () => ReducedMotion.Config | undefined): WardicContextValue => {
|
|
265
|
-
const runtime = ManagedRuntime.make(env)
|
|
287
|
+
const runtime = ManagedRuntime.make(builtAtOnce(env))
|
|
266
288
|
return {
|
|
267
289
|
runtime,
|
|
268
290
|
// A server render's elements take the lean path and never read it: read at each use if one does.
|
|
@@ -91,7 +91,7 @@ const contextValue = (): WardicContextValue | undefined => Option.getOrUndefined
|
|
|
91
91
|
// unmount, inert during a server render (ADR-0021). reducedMotion is read as each animation starts
|
|
92
92
|
// (ADR-0029), a WardicConfig's over it (#434); appear (ADR-0044, #585) on the server once.
|
|
93
93
|
export function WardicProvider(props: {
|
|
94
|
-
/** The Environment Wardic runs in: `DomLive` in a browser, from `@wardic/dom`. Read once. */
|
|
94
|
+
/** The Environment Wardic runs in: `DomLive` in a browser, from `@wardic/dom`. Read once, and built at once: a Layer that waits as it builds fails it. */
|
|
95
95
|
readonly env: WardicEnv
|
|
96
96
|
/**
|
|
97
97
|
* How animations honour the visitor's reduced-motion setting: `"user"` follows it (the default),
|