foldkit 0.132.0 → 0.134.0

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.
Files changed (90) hide show
  1. package/README.md +59 -108
  2. package/dist/canvas/view.d.ts +18 -11
  3. package/dist/canvas/view.d.ts.map +1 -1
  4. package/dist/canvas/view.js +18 -11
  5. package/dist/customElement/index.d.ts +9 -6
  6. package/dist/customElement/index.d.ts.map +1 -1
  7. package/dist/customElement/index.js +14 -3
  8. package/dist/devTools/protocol.d.ts +19 -1
  9. package/dist/devTools/protocol.d.ts.map +1 -1
  10. package/dist/devTools/protocol.js +13 -1
  11. package/dist/devTools/public.d.ts +1 -1
  12. package/dist/devTools/public.d.ts.map +1 -1
  13. package/dist/devTools/public.js +1 -1
  14. package/dist/devTools/store.d.ts +6 -0
  15. package/dist/devTools/store.d.ts.map +1 -1
  16. package/dist/devTools/store.js +7 -1
  17. package/dist/devTools/webSocketBridge.d.ts +7 -0
  18. package/dist/devTools/webSocketBridge.d.ts.map +1 -1
  19. package/dist/devTools/webSocketBridge.js +36 -8
  20. package/dist/html/boundary.d.ts.map +1 -1
  21. package/dist/html/boundary.js +48 -2
  22. package/dist/html/index.d.ts +682 -1643
  23. package/dist/html/index.d.ts.map +1 -1
  24. package/dist/html/index.js +56 -16
  25. package/dist/html/public.d.ts +2 -2
  26. package/dist/html/public.d.ts.map +1 -1
  27. package/dist/html/public.js +1 -1
  28. package/dist/html/runtimeSingleton.d.ts +1 -1
  29. package/dist/html/runtimeSingleton.d.ts.map +1 -1
  30. package/dist/html/runtimeSingleton.js +1 -1
  31. package/dist/html/submodel.d.ts +51 -19
  32. package/dist/html/submodel.d.ts.map +1 -1
  33. package/dist/html/submodel.js +37 -13
  34. package/dist/route/transition.d.ts +35 -29
  35. package/dist/route/transition.d.ts.map +1 -1
  36. package/dist/route/transition.js +36 -30
  37. package/dist/runtime/crashUI.d.ts.map +1 -1
  38. package/dist/runtime/crashUI.js +29 -30
  39. package/dist/runtime/runtime.d.ts +9 -6
  40. package/dist/runtime/runtime.d.ts.map +1 -1
  41. package/dist/runtime/runtime.js +25 -8
  42. package/dist/test/apps/attributes.d.ts +2 -2
  43. package/dist/test/apps/attributes.d.ts.map +1 -1
  44. package/dist/test/apps/attributes.js +1 -3
  45. package/dist/test/apps/bubbling.d.ts +2 -2
  46. package/dist/test/apps/bubbling.d.ts.map +1 -1
  47. package/dist/test/apps/bubbling.js +1 -3
  48. package/dist/test/apps/counter.d.ts +2 -2
  49. package/dist/test/apps/counter.d.ts.map +1 -1
  50. package/dist/test/apps/counter.js +1 -3
  51. package/dist/test/apps/crashOnRender.d.ts +2 -2
  52. package/dist/test/apps/crashOnRender.d.ts.map +1 -1
  53. package/dist/test/apps/crashOnRender.js +1 -3
  54. package/dist/test/apps/drafts.d.ts +2 -2
  55. package/dist/test/apps/drafts.d.ts.map +1 -1
  56. package/dist/test/apps/drafts.js +1 -3
  57. package/dist/test/apps/fileUpload.d.ts +2 -2
  58. package/dist/test/apps/fileUpload.d.ts.map +1 -1
  59. package/dist/test/apps/fileUpload.js +1 -3
  60. package/dist/test/apps/interactions.d.ts +2 -2
  61. package/dist/test/apps/interactions.d.ts.map +1 -1
  62. package/dist/test/apps/interactions.js +1 -3
  63. package/dist/test/apps/keypress.d.ts +2 -2
  64. package/dist/test/apps/keypress.d.ts.map +1 -1
  65. package/dist/test/apps/keypress.js +1 -3
  66. package/dist/test/apps/login.d.ts +2 -2
  67. package/dist/test/apps/login.d.ts.map +1 -1
  68. package/dist/test/apps/login.js +1 -3
  69. package/dist/test/apps/logoutButton.d.ts +2 -2
  70. package/dist/test/apps/logoutButton.d.ts.map +1 -1
  71. package/dist/test/apps/logoutButton.js +1 -3
  72. package/dist/test/apps/mountPanel.d.ts +4 -4
  73. package/dist/test/apps/mountPanel.d.ts.map +1 -1
  74. package/dist/test/apps/mountPanel.js +3 -7
  75. package/dist/test/apps/multiRole.d.ts +2 -2
  76. package/dist/test/apps/multiRole.d.ts.map +1 -1
  77. package/dist/test/apps/multiRole.js +1 -3
  78. package/dist/test/apps/pointer.d.ts +2 -2
  79. package/dist/test/apps/pointer.d.ts.map +1 -1
  80. package/dist/test/apps/pointer.js +1 -3
  81. package/dist/test/apps/resumeUpload.d.ts +2 -2
  82. package/dist/test/apps/resumeUpload.d.ts.map +1 -1
  83. package/dist/test/apps/resumeUpload.js +3 -6
  84. package/dist/test/apps/uploads.d.ts +2 -2
  85. package/dist/test/apps/uploads.d.ts.map +1 -1
  86. package/dist/test/apps/uploads.js +1 -3
  87. package/dist/test/scene.d.ts +3 -3
  88. package/dist/test/scene.d.ts.map +1 -1
  89. package/dist/test/scene.js +2 -2
  90. package/package.json +6 -6
@@ -1,4 +1,3 @@
1
- import { Predicate } from 'effect';
2
1
  import { memoizedVNodes } from '../vdom.js';
3
2
  import { composeBoundary, deregisterBoundaryWrap, registerBoundaryWrap, } from './boundary.js';
4
3
  import { isChildAttribute } from './childAttribute.js';
@@ -10,20 +9,32 @@ const SUBMODEL_MESSAGE_BRAND = '__submodelMessage';
10
9
  /** Defines the view function of a Submodel, a child component embedded
11
10
  * via `h.submodel`.
12
11
  *
12
+ * The runtime supplies the view's `h` builder, typed by the Submodel's
13
+ * own Message. It is the only builder whose handlers route through this
14
+ * Submodel's boundary, so a Message from another Message universe is a
15
+ * type error at the handler call site. A helper this view delegates to
16
+ * takes `h` as an ordinary parameter; markup owned by an ancestor arrives
17
+ * pre-built through a `viewInputs` slot callback, which the runtime
18
+ * executes in the ancestor's boundary.
19
+ *
13
20
  * Use this ONLY for views that will be embedded via `h.submodel`. Plain
14
21
  * view functions (page-level render functions, helper render functions
15
22
  * that compose Html, etc.) don't need to be defined this way. Write
16
- * them as ordinary `(model) => Html` functions.
23
+ * them as ordinary `(model, h) => Html` functions.
24
+ *
25
+ * Explicit type arguments are required because the Model and ViewInputs
26
+ * parameters cannot drive inference on their own.
17
27
  *
18
- * Explicit type arguments are required because Message has no
19
- * inferable source on the function signature itself. */
28
+ * `Message` defaults to `never` so that omitting them fails loudly. Nothing in
29
+ * the parameter list can infer it, so without the default it would widen to
30
+ * `unknown` and the builder would accept any Message at all, which is exactly
31
+ * the confusion this type is meant to prevent. */
20
32
  export const defineView = (fn) =>
21
33
  // NOTE: The cast attaches the SUBMODEL_MESSAGE_BRAND to the runtime
22
- // function value at the type level only. Message has no inferable
23
- // source on the function signature itself, so the brand carries it.
24
- // `h.submodel` reads the brand at the embed site to type-check
25
- // `toParentMessage`. There is no runtime brand to add; the cast is
26
- // the entire mechanism.
34
+ // function value at the type level only. `h.submodel` reads the brand
35
+ // at the embed site to type-check `toParentMessage` and to type the
36
+ // builder it hands this view. There is no runtime brand to add; the
37
+ // cast is the entire mechanism.
27
38
  /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
28
39
  fn;
29
40
  const isPlainObject = (value) => value !== null && typeof value === 'object' && !Array.isArray(value);
@@ -159,7 +170,13 @@ const withBoundaryCleanup = (vnode, registry, boundaryId) => {
159
170
  }
160
171
  return wrapped;
161
172
  };
162
- export const submodel = (config) => {
173
+ /** Implementation behind `h.submodel`. Registers the child's boundary
174
+ * wrap, pushes the child boundary, and invokes the child's
175
+ * {@link SubmodelView} with the child-typed builder. Reached only
176
+ * through a builder's `submodel` method, which fixes `toParentMessage`'s
177
+ * return to the embedding frame's Message; the html factory passes the
178
+ * process-wide builder singleton as `htmlBuilderSingleton`. */
179
+ export const submodel = (config, htmlBuilderSingleton) => {
163
180
  // Snapshot the parent frame BEFORE pushing the child boundary. The
164
181
  // snapshot is captured into slot-callback closures by
165
182
  // `wrapViewInputsForOuterBoundary` so they can replay the parent's
@@ -172,14 +189,21 @@ export const submodel = (config) => {
172
189
  /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
173
190
  config.toParentMessage,
174
191
  });
192
+ // NOTE: the builder handed to the child view is the process-wide
193
+ // singleton retyped to the child's Message. The value carries no
194
+ // Message state (dispatch resolves from the frame pushed below), so
195
+ // the cast is the entire mechanism, exactly like the brand cast in
196
+ // `defineView`.
197
+ /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
198
+ const childBuilder = htmlBuilderSingleton;
175
199
  let vnode;
176
200
  pushBoundary(childBoundaryId);
177
201
  try {
178
202
  try {
179
- if (Predicate.isUndefined(config.viewInputs)) {
203
+ if (!Object.hasOwn(config, 'viewInputs')) {
180
204
  /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
181
205
  const view = config.view;
182
- vnode = view(config.model);
206
+ vnode = view(config.model, childBuilder);
183
207
  }
184
208
  else {
185
209
  const wrappedViewInputs = wrapViewInputsForOuterBoundary(
@@ -187,7 +211,7 @@ export const submodel = (config) => {
187
211
  config.viewInputs, parentFrame);
188
212
  /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
189
213
  const view = config.view;
190
- vnode = view(config.model, wrappedViewInputs);
214
+ vnode = view(config.model, wrappedViewInputs, childBuilder);
191
215
  }
192
216
  }
193
217
  catch (error) {
@@ -17,39 +17,42 @@ export declare const make: <Route>(previousRoute: Route, nextRoute: Route) => Tr
17
17
  * bookmark, a reload). There is no previous route, so {@link isEntering}
18
18
  * counts the transition as an entry. */
19
19
  export declare const coldLoad: <Route>(nextRoute: Route) => Transition<Route>;
20
- /** The route a transition entered, if it entered one: `Some(nextRoute)`
21
- * when the next route's tag differs from the previous route's (a cold
22
- * load counts as an entry), `None` when the transition stayed within one
23
- * route, for example between two ids of one detail route. Match on the
24
- * result to dispatch entry Commands for many routes in one place; for a
25
- * single route, {@link isEntering} is the plain predicate form. */
26
- export declare const entered: <Route extends Readonly<{
20
+ /** The route a transition entered, whichever route that was:
21
+ * `Some(nextRoute)` when the next route's tag differs from the previous
22
+ * route's (a cold load counts as an entry), `None` when the transition
23
+ * stayed within one route, for example between two ids of one detail
24
+ * route. Match on the result to dispatch entry Commands for many routes
25
+ * in one place. For a single named route, {@link entered} narrows to its
26
+ * tag and {@link isEntering} is the plain predicate form. */
27
+ export declare const enteredAny: <Route extends Readonly<{
27
28
  _tag: string;
28
29
  }>>({ maybePreviousRoute, nextRoute, }: Transition<Route>) => Option.Option<Route>;
29
- /** The single-route, payload-carrying form of {@link entered}: `Some` of
30
- * the entered route, narrowed to the given tag, when this transition
31
- * entered it, and `None` otherwise. The entry Command for a detail route
32
- * usually needs the route's payload, and this returns it typed. */
33
- export declare const enteredRoute: <Route extends Readonly<{
30
+ /** The route a transition entered, narrowed to the given tag: `Some` of
31
+ * the entered route when this transition entered it, and `None`
32
+ * otherwise. The entry Command for a detail route usually needs the
33
+ * route's payload, and this returns it typed. {@link enteredAny} is the
34
+ * form that answers for every route at once. */
35
+ export declare const entered: <Route extends Readonly<{
34
36
  _tag: string;
35
37
  }>, Tag extends Route["_tag"]>(transition: Transition<Route>, routeTag: Tag) => Option.Option<Extract<Route, {
36
38
  _tag: Tag;
37
39
  }>>;
38
- /** The route a transition left, if it left one: `Some(previousRoute)`
39
- * when the previous route's tag differs from the next route's, `None` on
40
- * a cold load or when the transition stayed within one route. For
41
- * one-shot Commands on the way out, saving a draft, recording that a
42
- * visit ended. Things that live while a route is active, listeners,
43
- * timers, handles, belong to a Subscription or ManagedResource condition
44
- * on the Model instead, which also ends them when the route state
45
- * disappears for reasons other than navigation. */
46
- export declare const exited: <Route extends Readonly<{
40
+ /** The route a transition left, whichever route that was:
41
+ * `Some(previousRoute)` when the previous route's tag differs from the
42
+ * next route's, `None` on a cold load or when the transition stayed
43
+ * within one route. For one-shot Commands on the way out, saving a
44
+ * draft, recording that a visit ended. Things that live while a route is
45
+ * active, listeners, timers, handles, belong to a Subscription or
46
+ * ManagedResource condition on the Model instead, which also ends them
47
+ * when the route state disappears for reasons other than navigation.
48
+ * {@link exited} narrows to a single tag. */
49
+ export declare const exitedAny: <Route extends Readonly<{
47
50
  _tag: string;
48
51
  }>>({ maybePreviousRoute, nextRoute, }: Transition<Route>) => Option.Option<Route>;
49
- /** The single-route, payload-carrying form of {@link exited}: `Some` of
50
- * the exited route, narrowed to the given tag, when this transition left
51
- * it, and `None` otherwise. */
52
- export declare const exitedRoute: <Route extends Readonly<{
52
+ /** The route a transition left, narrowed to the given tag: `Some` of the
53
+ * exited route when this transition left it, and `None` otherwise.
54
+ * {@link exitedAny} is the form that answers for every route at once. */
55
+ export declare const exited: <Route extends Readonly<{
53
56
  _tag: string;
54
57
  }>, Tag extends Route["_tag"]>(transition: Transition<Route>, routeTag: Tag) => Option.Option<Extract<Route, {
55
58
  _tag: Tag;
@@ -60,7 +63,10 @@ export declare const exitedRoute: <Route extends Readonly<{
60
63
  * it. A cold load stays nowhere. For reacting to payload changes within
61
64
  * one route, a detail id, a search text, when the previous value
62
65
  * matters; when it does not, the ChangedUrl handler already has the next
63
- * route. */
66
+ * route. There is no tagless counterpart to this the way
67
+ * {@link enteredAny} answers for {@link entered}: without a tag the two
68
+ * sides of a stay could not narrow to the same route variant together,
69
+ * so matching on one would leave the other typed as the whole union. */
64
70
  export declare const stayed: <Route extends Readonly<{
65
71
  _tag: string;
66
72
  }>, Tag extends Route["_tag"]>(transition: Transition<Route>, routeTag: Tag) => Option.Option<Readonly<{
@@ -75,9 +81,9 @@ export declare const stayed: <Route extends Readonly<{
75
81
  * route carries the tag and the previous route did not (a cold load
76
82
  * counts as an entry). Navigating within the same route, for example
77
83
  * between two ids of one detail route, is not an entry. The boolean
78
- * view of {@link enteredRoute}: when the entry Command needs the
79
- * route's payload, use that instead. The route union is inferred from
80
- * the transition argument, so the tag is checked against the union's
84
+ * view of {@link entered}: when the entry Command needs the route's
85
+ * payload, use that instead. The route union is inferred from the
86
+ * transition argument, so the tag is checked against the union's
81
87
  * tags. */
82
88
  export declare const isEntering: <Route extends Readonly<{
83
89
  _tag: string;
@@ -1 +1 @@
1
- {"version":3,"file":"transition.d.ts","sourceRoot":"","sources":["../../src/route/transition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B;;;;;+CAK+C;AAC/C,MAAM,MAAM,UAAU,CAAC,KAAK,IAAI,QAAQ,CAAC;IACvC,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACxC,SAAS,EAAE,KAAK,CAAA;CACjB,CAAC,CAAA;AAEF;;yDAEyD;AACzD,eAAO,MAAM,IAAI,GAAI,KAAK,EACxB,eAAe,KAAK,EACpB,WAAW,KAAK,KACf,UAAU,CAAC,KAAK,CAGjB,CAAA;AAEF;;yCAEyC;AACzC,eAAO,MAAM,QAAQ,GAAI,KAAK,EAAE,WAAW,KAAK,KAAG,UAAU,CAAC,KAAK,CAGjE,CAAA;AAEF;;;;;oEAKoE;AACpE,eAAO,MAAM,OAAO,GAAI,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAAE,oCAG/D,UAAU,CAAC,KAAK,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAKtC,CAAA;AASJ;;;oEAGoE;AACpE,eAAO,MAAM,YAAY,GACvB,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACxC,GAAG,SAAS,KAAK,CAAC,MAAM,CAAC,EAEzB,YAAY,UAAU,CAAC,KAAK,CAAC,EAC7B,UAAU,GAAG,KACZ,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,GAAG,CAAA;CAAE,CAAC,CACQ,CAAA;AAEtD;;;;;;;oDAOoD;AACpD,eAAO,MAAM,MAAM,GAAI,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAAE,oCAG9D,UAAU,CAAC,KAAK,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAIvC,CAAA;AAEH;;gCAEgC;AAChC,eAAO,MAAM,WAAW,GACtB,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACxC,GAAG,SAAS,KAAK,CAAC,MAAM,CAAC,EAEzB,YAAY,UAAU,CAAC,KAAK,CAAC,EAC7B,UAAU,GAAG,KACZ,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,GAAG,CAAA;CAAE,CAAC,CACO,CAAA;AAErD;;;;;;aAMa;AACb,eAAO,MAAM,MAAM,GACjB,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACxC,GAAG,SAAS,KAAK,CAAC,MAAM,CAAC,EAEzB,YAAY,UAAU,CAAC,KAAK,CAAC,EAC7B,UAAU,GAAG,KACZ,MAAM,CAAC,MAAM,CACd,QAAQ,CAAC;IACP,aAAa,EAAE,OAAO,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,GAAG,CAAA;KAAE,CAAC,CAAA;IAC5C,SAAS,EAAE,OAAO,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,GAAG,CAAA;KAAE,CAAC,CAAA;CACzC,CAAC,CASH,CAAA;AAED;;;;;;;YAOY;AACZ,eAAO,MAAM,UAAU,GACrB,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACxC,GAAG,SAAS,KAAK,CAAC,MAAM,CAAC,EAEzB,YAAY,UAAU,CAAC,KAAK,CAAC,EAC7B,UAAU,GAAG,KACZ,OAA4D,CAAA"}
1
+ {"version":3,"file":"transition.d.ts","sourceRoot":"","sources":["../../src/route/transition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B;;;;;+CAK+C;AAC/C,MAAM,MAAM,UAAU,CAAC,KAAK,IAAI,QAAQ,CAAC;IACvC,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACxC,SAAS,EAAE,KAAK,CAAA;CACjB,CAAC,CAAA;AAEF;;yDAEyD;AACzD,eAAO,MAAM,IAAI,GAAI,KAAK,EACxB,eAAe,KAAK,EACpB,WAAW,KAAK,KACf,UAAU,CAAC,KAAK,CAGjB,CAAA;AAEF;;yCAEyC;AACzC,eAAO,MAAM,QAAQ,GAAI,KAAK,EAAE,WAAW,KAAK,KAAG,UAAU,CAAC,KAAK,CAGjE,CAAA;AAEF;;;;;;8DAM8D;AAC9D,eAAO,MAAM,UAAU,GAAI,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAAE,oCAGlE,UAAU,CAAC,KAAK,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAKtC,CAAA;AASJ;;;;iDAIiD;AACjD,eAAO,MAAM,OAAO,GAClB,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACxC,GAAG,SAAS,KAAK,CAAC,MAAM,CAAC,EAEzB,YAAY,UAAU,CAAC,KAAK,CAAC,EAC7B,UAAU,GAAG,KACZ,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,GAAG,CAAA;CAAE,CAAC,CACW,CAAA;AAEzD;;;;;;;;8CAQ8C;AAC9C,eAAO,MAAM,SAAS,GAAI,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAAE,oCAGjE,UAAU,CAAC,KAAK,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAIvC,CAAA;AAEH;;0EAE0E;AAC1E,eAAO,MAAM,MAAM,GACjB,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACxC,GAAG,SAAS,KAAK,CAAC,MAAM,CAAC,EAEzB,YAAY,UAAU,CAAC,KAAK,CAAC,EAC7B,UAAU,GAAG,KACZ,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,GAAG,CAAA;CAAE,CAAC,CACU,CAAA;AAExD;;;;;;;;;yEASyE;AACzE,eAAO,MAAM,MAAM,GACjB,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACxC,GAAG,SAAS,KAAK,CAAC,MAAM,CAAC,EAEzB,YAAY,UAAU,CAAC,KAAK,CAAC,EAC7B,UAAU,GAAG,KACZ,MAAM,CAAC,MAAM,CACd,QAAQ,CAAC;IACP,aAAa,EAAE,OAAO,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,GAAG,CAAA;KAAE,CAAC,CAAA;IAC5C,SAAS,EAAE,OAAO,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,GAAG,CAAA;KAAE,CAAC,CAAA;CACzC,CAAC,CASH,CAAA;AAED;;;;;;;YAOY;AACZ,eAAO,MAAM,UAAU,GACrB,KAAK,SAAS,QAAQ,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACxC,GAAG,SAAS,KAAK,CAAC,MAAM,CAAC,EAEzB,YAAY,UAAU,CAAC,KAAK,CAAC,EAC7B,UAAU,GAAG,KACZ,OAAuD,CAAA"}
@@ -13,42 +13,48 @@ export const coldLoad = (nextRoute) => ({
13
13
  maybePreviousRoute: Option.none(),
14
14
  nextRoute,
15
15
  });
16
- /** The route a transition entered, if it entered one: `Some(nextRoute)`
17
- * when the next route's tag differs from the previous route's (a cold
18
- * load counts as an entry), `None` when the transition stayed within one
19
- * route, for example between two ids of one detail route. Match on the
20
- * result to dispatch entry Commands for many routes in one place; for a
21
- * single route, {@link isEntering} is the plain predicate form. */
22
- export const entered = ({ maybePreviousRoute, nextRoute, }) => Option.match(maybePreviousRoute, {
16
+ /** The route a transition entered, whichever route that was:
17
+ * `Some(nextRoute)` when the next route's tag differs from the previous
18
+ * route's (a cold load counts as an entry), `None` when the transition
19
+ * stayed within one route, for example between two ids of one detail
20
+ * route. Match on the result to dispatch entry Commands for many routes
21
+ * in one place. For a single named route, {@link entered} narrows to its
22
+ * tag and {@link isEntering} is the plain predicate form. */
23
+ export const enteredAny = ({ maybePreviousRoute, nextRoute, }) => Option.match(maybePreviousRoute, {
23
24
  onNone: () => Option.some(nextRoute),
24
25
  onSome: previous => previous._tag === nextRoute._tag ? Option.none() : Option.some(nextRoute),
25
26
  });
26
27
  const hasTag = (routeTag) => (route) => route._tag === routeTag;
27
- /** The single-route, payload-carrying form of {@link entered}: `Some` of
28
- * the entered route, narrowed to the given tag, when this transition
29
- * entered it, and `None` otherwise. The entry Command for a detail route
30
- * usually needs the route's payload, and this returns it typed. */
31
- export const enteredRoute = (transition, routeTag) => Option.filter(entered(transition), hasTag(routeTag));
32
- /** The route a transition left, if it left one: `Some(previousRoute)`
33
- * when the previous route's tag differs from the next route's, `None` on
34
- * a cold load or when the transition stayed within one route. For
35
- * one-shot Commands on the way out, saving a draft, recording that a
36
- * visit ended. Things that live while a route is active, listeners,
37
- * timers, handles, belong to a Subscription or ManagedResource condition
38
- * on the Model instead, which also ends them when the route state
39
- * disappears for reasons other than navigation. */
40
- export const exited = ({ maybePreviousRoute, nextRoute, }) => Option.filter(maybePreviousRoute, previousRoute => previousRoute._tag !== nextRoute._tag);
41
- /** The single-route, payload-carrying form of {@link exited}: `Some` of
42
- * the exited route, narrowed to the given tag, when this transition left
43
- * it, and `None` otherwise. */
44
- export const exitedRoute = (transition, routeTag) => Option.filter(exited(transition), hasTag(routeTag));
28
+ /** The route a transition entered, narrowed to the given tag: `Some` of
29
+ * the entered route when this transition entered it, and `None`
30
+ * otherwise. The entry Command for a detail route usually needs the
31
+ * route's payload, and this returns it typed. {@link enteredAny} is the
32
+ * form that answers for every route at once. */
33
+ export const entered = (transition, routeTag) => Option.filter(enteredAny(transition), hasTag(routeTag));
34
+ /** The route a transition left, whichever route that was:
35
+ * `Some(previousRoute)` when the previous route's tag differs from the
36
+ * next route's, `None` on a cold load or when the transition stayed
37
+ * within one route. For one-shot Commands on the way out, saving a
38
+ * draft, recording that a visit ended. Things that live while a route is
39
+ * active, listeners, timers, handles, belong to a Subscription or
40
+ * ManagedResource condition on the Model instead, which also ends them
41
+ * when the route state disappears for reasons other than navigation.
42
+ * {@link exited} narrows to a single tag. */
43
+ export const exitedAny = ({ maybePreviousRoute, nextRoute, }) => Option.filter(maybePreviousRoute, previousRoute => previousRoute._tag !== nextRoute._tag);
44
+ /** The route a transition left, narrowed to the given tag: `Some` of the
45
+ * exited route when this transition left it, and `None` otherwise.
46
+ * {@link exitedAny} is the form that answers for every route at once. */
47
+ export const exited = (transition, routeTag) => Option.filter(exitedAny(transition), hasTag(routeTag));
45
48
  /** Both sides of a within-route navigation: `Some` of the previous and
46
49
  * next routes, narrowed to the given tag, when the transition stayed on
47
50
  * that route, and `None` when it entered it, left it, or never touched
48
51
  * it. A cold load stays nowhere. For reacting to payload changes within
49
52
  * one route, a detail id, a search text, when the previous value
50
53
  * matters; when it does not, the ChangedUrl handler already has the next
51
- * route. */
54
+ * route. There is no tagless counterpart to this the way
55
+ * {@link enteredAny} answers for {@link entered}: without a tag the two
56
+ * sides of a stay could not narrow to the same route variant together,
57
+ * so matching on one would leave the other typed as the whole union. */
52
58
  export const stayed = (transition, routeTag) => {
53
59
  const { maybePreviousRoute, nextRoute } = transition;
54
60
  const isTagged = hasTag(routeTag);
@@ -60,8 +66,8 @@ export const stayed = (transition, routeTag) => {
60
66
  * route carries the tag and the previous route did not (a cold load
61
67
  * counts as an entry). Navigating within the same route, for example
62
68
  * between two ids of one detail route, is not an entry. The boolean
63
- * view of {@link enteredRoute}: when the entry Command needs the
64
- * route's payload, use that instead. The route union is inferred from
65
- * the transition argument, so the tag is checked against the union's
69
+ * view of {@link entered}: when the entry Command needs the route's
70
+ * payload, use that instead. The route union is inferred from the
71
+ * transition argument, so the tag is checked against the union's
66
72
  * tags. */
67
- export const isEntering = (transition, routeTag) => Option.isSome(enteredRoute(transition, routeTag));
73
+ export const isEntering = (transition, routeTag) => Option.isSome(entered(transition, routeTag));
@@ -1 +1 @@
1
- {"version":3,"file":"crashUI.d.ts","sourceRoot":"","sources":["../../src/runtime/crashUI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,QAAQ,EAAQ,MAAM,kBAAkB,CAAA;AAEjD,eAAO,MAAM,YAAY;8BACG,OAAO;6BACR,OAAO;CACjC,CAAA;AAmBD,eAAO,MAAM,gBAAgB,GAC3B,SAAS,QAAQ,CAAC;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC,EACnC,YAAY,OAAO,KAClB,QA0LF,CAAA"}
1
+ {"version":3,"file":"crashUI.d.ts","sourceRoot":"","sources":["../../src/runtime/crashUI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,QAAQ,EAAmB,MAAM,kBAAkB,CAAA;AAE5D,eAAO,MAAM,YAAY;8BACG,OAAO;6BACR,OAAO;CACjC,CAAA;AAmBD,eAAO,MAAM,gBAAgB,GAC3B,SAAS,QAAQ,CAAC;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC,EACnC,YAAY,OAAO,KAClB,QAwLF,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { Effect } from 'effect';
2
- import { html } from '../html/index.js';
2
+ import { inertHtml as ih } from '../html/index.js';
3
3
  export const noOpDispatch = {
4
4
  dispatchAsync: (_message) => Effect.void,
5
5
  dispatchSync: (_message) => { },
@@ -18,8 +18,7 @@ const colors = {
18
18
  const fontStack = 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif';
19
19
  const monoStack = 'ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace';
20
20
  export const defaultCrashView = (context, viewError) => {
21
- const h = html();
22
- const codeBlockStyle = h.Style({
21
+ const codeBlockStyle = ih.Style({
23
22
  fontFamily: monoStack,
24
23
  color: colors.textPrimary,
25
24
  margin: '0',
@@ -29,13 +28,13 @@ export const defaultCrashView = (context, viewError) => {
29
28
  padding: '0.75rem 1rem',
30
29
  borderRadius: '0.375rem',
31
30
  });
32
- const labelStyle = h.Style({
31
+ const labelStyle = ih.Style({
33
32
  color: colors.textSecondary,
34
33
  margin: '0 0 0.5rem 0',
35
34
  fontSize: '0.875rem',
36
35
  fontWeight: '500',
37
36
  });
38
- const inlineCodeStyle = h.Style({
37
+ const inlineCodeStyle = ih.Style({
39
38
  fontFamily: monoStack,
40
39
  backgroundColor: colors.codeBg,
41
40
  padding: '0.125rem 0.375rem',
@@ -45,7 +44,7 @@ export const defaultCrashView = (context, viewError) => {
45
44
  const introText = viewError
46
45
  ? [
47
46
  'Your custom ',
48
- h.span([inlineCodeStyle], ['crash.view']),
47
+ ih.span([inlineCodeStyle], ['crash.view']),
49
48
  ' threw an error while rendering.',
50
49
  ]
51
50
  : [
@@ -53,18 +52,18 @@ export const defaultCrashView = (context, viewError) => {
53
52
  ];
54
53
  const errorContent = viewError
55
54
  ? [
56
- h.div([h.Style({ margin: '0 0 1rem 0' })], [
57
- h.p([labelStyle], ['Original error']),
58
- h.p([codeBlockStyle], [context.error.message]),
55
+ ih.div([ih.Style({ margin: '0 0 1rem 0' })], [
56
+ ih.p([labelStyle], ['Original error']),
57
+ ih.p([codeBlockStyle], [context.error.message]),
59
58
  ]),
60
- h.div([h.Style({ margin: '0 0 1.25rem 0' })], [
61
- h.p([labelStyle], ['crash.view error']),
62
- h.p([codeBlockStyle], [viewErrorMessage]),
59
+ ih.div([ih.Style({ margin: '0 0 1.25rem 0' })], [
60
+ ih.p([labelStyle], ['crash.view error']),
61
+ ih.p([codeBlockStyle], [viewErrorMessage]),
63
62
  ]),
64
63
  ]
65
64
  : [
66
- h.p([
67
- h.Style({
65
+ ih.p([
66
+ ih.Style({
68
67
  fontFamily: monoStack,
69
68
  color: colors.textPrimary,
70
69
  margin: '0 0 1.25rem 0',
@@ -79,8 +78,8 @@ export const defaultCrashView = (context, viewError) => {
79
78
  const footerText = viewError
80
79
  ? []
81
80
  : [
82
- h.p([
83
- h.Style({
81
+ ih.p([
82
+ ih.Style({
84
83
  color: colors.textSecondary,
85
84
  margin: '1.5rem 0 0 0',
86
85
  fontSize: '0.875rem',
@@ -90,12 +89,12 @@ export const defaultCrashView = (context, viewError) => {
90
89
  }),
91
90
  ], [
92
91
  'This is the default crash view. You can customize it by providing a ',
93
- h.span([inlineCodeStyle], ['crash.view']),
92
+ ih.span([inlineCodeStyle], ['crash.view']),
94
93
  ' function.',
95
94
  ]),
96
95
  ];
97
- const body = h.div([
98
- h.Style({
96
+ const body = ih.div([
97
+ ih.Style({
99
98
  fontFamily: fontStack,
100
99
  padding: '2rem',
101
100
  minHeight: '100vh',
@@ -105,8 +104,8 @@ export const defaultCrashView = (context, viewError) => {
105
104
  justifyContent: 'center',
106
105
  }),
107
106
  ], [
108
- h.div([
109
- h.Style({
107
+ ih.div([
108
+ ih.Style({
110
109
  width: '100%',
111
110
  maxWidth: '960px',
112
111
  margin: '0 auto',
@@ -117,8 +116,8 @@ export const defaultCrashView = (context, viewError) => {
117
116
  padding: '1.5rem',
118
117
  }),
119
118
  ], [
120
- h.h1([
121
- h.Style({
119
+ ih.h1([
120
+ ih.Style({
122
121
  color: colors.errorAccent,
123
122
  margin: '0 0 0.75rem 0',
124
123
  fontSize: '1.25rem',
@@ -126,8 +125,8 @@ export const defaultCrashView = (context, viewError) => {
126
125
  lineHeight: '1.5',
127
126
  }),
128
127
  ], ['Application Crash']),
129
- h.p([
130
- h.Style({
128
+ ih.p([
129
+ ih.Style({
131
130
  color: colors.textPrimary,
132
131
  margin: '0 0 1rem 0',
133
132
  fontSize: '1rem',
@@ -135,8 +134,8 @@ export const defaultCrashView = (context, viewError) => {
135
134
  }),
136
135
  ], introText),
137
136
  ...errorContent,
138
- h.p([
139
- h.Style({
137
+ ih.p([
138
+ ih.Style({
140
139
  color: colors.textPrimary,
141
140
  margin: '0 0 1.5rem 0',
142
141
  fontSize: '1rem',
@@ -145,8 +144,8 @@ export const defaultCrashView = (context, viewError) => {
145
144
  ], [
146
145
  '→ Check the browser console for the full stack trace with source-mapped line numbers.',
147
146
  ]),
148
- h.button([
149
- h.Style({
147
+ ih.button([
148
+ ih.Style({
150
149
  fontFamily: fontStack,
151
150
  backgroundColor: colors.buttonBg,
152
151
  color: colors.buttonText,
@@ -157,7 +156,7 @@ export const defaultCrashView = (context, viewError) => {
157
156
  fontWeight: '500',
158
157
  cursor: 'pointer',
159
158
  }),
160
- h.Attribute('onclick', 'location.reload()'),
159
+ ih.Attribute('onclick', 'location.reload()'),
161
160
  ], ['Reload']),
162
161
  ...footerText,
163
162
  ]),
@@ -1,7 +1,7 @@
1
1
  import { Context, Effect, Exit, Layer, Option, Schema, Scope } from 'effect';
2
2
  import type { Command } from '../command/index.js';
3
3
  import { type DevToolsStore } from '../devTools/store.js';
4
- import { Document, Html } from '../html/index.js';
4
+ import { Document, Html, type HtmlBuilder } from '../html/index.js';
5
5
  import type { ManagedResources } from '../managedResource/index.js';
6
6
  import { UrlRequest } from '../navigation/urlRequest.js';
7
7
  import { type Inbound, type Outbound, type Ports } from '../port/index.js';
@@ -167,9 +167,12 @@ export type CrashContext<Model, Message> = Readonly<{
167
167
  model: Model;
168
168
  message: Option.Option<Message>;
169
169
  }>;
170
- /** Configuration for crash handling, with custom crash UI and/or crash reporting. */
170
+ /** Configuration for crash handling, with custom crash UI and/or crash
171
+ * reporting. The crash view renders after the dispatch loop has stopped, so
172
+ * its builder's Message is `never` and no handler is expressible. Reload or
173
+ * navigate with a raw DOM attribute instead. */
171
174
  export type CrashConfig<Model, Message> = Readonly<{
172
- view?: (context: CrashContext<Model, Message>) => Document;
175
+ view?: (context: CrashContext<Model, Message>, h: HtmlBuilder<never>) => Document;
173
176
  report?: (context: CrashContext<Model, Message>) => void;
174
177
  }>;
175
178
  type BaseApplicationConfig<Model, Message, Resources = never, ManagedResourceServices = never, P extends Ports | undefined = undefined> = Readonly<{
@@ -178,7 +181,7 @@ type BaseApplicationConfig<Model, Message, Resources = never, ManagedResourceSer
178
181
  Model,
179
182
  ReadonlyArray<Command<Message, never, Resources | ManagedResourceServices>>
180
183
  ];
181
- view: (model: Model) => Document;
184
+ view: (model: Model, h: HtmlBuilder<Message>) => Document;
182
185
  subscriptions?: Subscriptions<Model, Message, Resources | ManagedResourceServices>;
183
186
  container: HTMLElement | null;
184
187
  ports?: P;
@@ -228,7 +231,7 @@ export type ApplicationConfig<Model, Message, Resources = never, ManagedResource
228
231
  * returns `Html`, not a `Document`, because a scoped app never owns the
229
232
  * document `<head>`. */
230
233
  export type ElementCrashConfig<Model, Message> = Readonly<{
231
- view?: (context: CrashContext<Model, Message>) => Html;
234
+ view?: (context: CrashContext<Model, Message>, h: HtmlBuilder<never>) => Html;
232
235
  report?: (context: CrashContext<Model, Message>) => void;
233
236
  }>;
234
237
  type BaseElementConfig<Model, Message, Resources = never, ManagedResourceServices = never, P extends Ports | undefined = undefined> = Readonly<{
@@ -237,7 +240,7 @@ type BaseElementConfig<Model, Message, Resources = never, ManagedResourceService
237
240
  Model,
238
241
  ReadonlyArray<Command<Message, never, Resources | ManagedResourceServices>>
239
242
  ];
240
- view: (model: Model) => Html;
243
+ view: (model: Model, h: HtmlBuilder<Message>) => Html;
241
244
  subscriptions?: Subscriptions<Model, Message, Resources | ManagedResourceServices>;
242
245
  container: HTMLElement | null;
243
246
  ports?: P;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"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"}