@xmachines/docs 1.0.0-beta.17 → 1.0.0-beta.18

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 (151) hide show
  1. package/api/@xmachines/play/classes/PlayError.md +4 -4
  2. package/api/@xmachines/play/type-aliases/PlayEvent.md +2 -2
  3. package/api/@xmachines/play-actor/classes/AbstractActor.md +3 -3
  4. package/api/@xmachines/play-actor/interfaces/PlaySpec.md +2 -2
  5. package/api/@xmachines/play-actor/interfaces/Routable.md +3 -3
  6. package/api/@xmachines/play-actor/interfaces/ViewMetadata.md +3 -3
  7. package/api/@xmachines/play-actor/interfaces/Viewable.md +2 -2
  8. package/api/@xmachines/play-dom/classes/PlayRenderer.md +4 -4
  9. package/api/@xmachines/play-dom/functions/connectRenderer.md +1 -1
  10. package/api/@xmachines/play-dom/functions/renderSpec.md +1 -1
  11. package/api/@xmachines/play-dom/interfaces/ConnectRendererOptions.md +7 -7
  12. package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +7 -7
  13. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +3 -3
  14. package/api/@xmachines/play-dom/type-aliases/DomComponentRenderer.md +1 -1
  15. package/api/@xmachines/play-dom/type-aliases/DomRegistry.md +1 -1
  16. package/api/@xmachines/play-react/README.md +1 -0
  17. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +5 -5
  18. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  19. package/api/@xmachines/play-react/functions/useBoundProp.md +43 -0
  20. package/api/@xmachines/play-react/functions/useSignalEffect.md +1 -1
  21. package/api/@xmachines/play-react/functions/useStateBinding.md +1 -1
  22. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +4 -4
  23. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +3 -3
  24. package/api/@xmachines/play-react/interfaces/PlayRendererProps.md +6 -6
  25. package/api/@xmachines/play-react/type-aliases/PlayActor.md +1 -1
  26. package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
  27. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +6 -6
  28. package/api/@xmachines/play-react-router/classes/RouteMap.md +1 -1
  29. package/api/@xmachines/play-react-router/functions/PlayRouterProvider.md +1 -1
  30. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +1 -1
  31. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +5 -5
  32. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
  33. package/api/@xmachines/play-router/classes/BaseRouteMap.md +4 -4
  34. package/api/@xmachines/play-router/classes/RouterBridgeBase.md +21 -21
  35. package/api/@xmachines/play-router/functions/buildRouteTree.md +1 -1
  36. package/api/@xmachines/play-router/functions/connectRouter.md +1 -1
  37. package/api/@xmachines/play-router/functions/crawlMachine.md +1 -1
  38. package/api/@xmachines/play-router/functions/createBrowserHistory.md +1 -1
  39. package/api/@xmachines/play-router/functions/createRouteMap.md +1 -1
  40. package/api/@xmachines/play-router/functions/createRouter.md +1 -1
  41. package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +1 -1
  42. package/api/@xmachines/play-router/functions/extractMachineRoutes.md +1 -1
  43. package/api/@xmachines/play-router/functions/extractRoute.md +1 -1
  44. package/api/@xmachines/play-router/functions/findRouteById.md +1 -1
  45. package/api/@xmachines/play-router/functions/findRouteByPath.md +1 -1
  46. package/api/@xmachines/play-router/functions/getNavigableRoutes.md +1 -1
  47. package/api/@xmachines/play-router/functions/getRoutableRoutes.md +1 -1
  48. package/api/@xmachines/play-router/functions/routeExists.md +1 -1
  49. package/api/@xmachines/play-router/functions/validateRouteFormat.md +1 -1
  50. package/api/@xmachines/play-router/functions/validateStateExists.md +1 -1
  51. package/api/@xmachines/play-router/interfaces/BaseRouteMapping.md +3 -3
  52. package/api/@xmachines/play-router/interfaces/BrowserHistory.md +14 -14
  53. package/api/@xmachines/play-router/interfaces/BrowserWindow.md +14 -14
  54. package/api/@xmachines/play-router/interfaces/ConnectRouterOptions.md +4 -4
  55. package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +6 -6
  56. package/api/@xmachines/play-router/interfaces/RouteInfo.md +8 -8
  57. package/api/@xmachines/play-router/interfaces/RouteMap.md +4 -4
  58. package/api/@xmachines/play-router/interfaces/RouteNode.md +10 -10
  59. package/api/@xmachines/play-router/interfaces/RouteObject.md +2 -2
  60. package/api/@xmachines/play-router/interfaces/RouteTree.md +4 -4
  61. package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +3 -3
  62. package/api/@xmachines/play-router/interfaces/RouterBridge.md +3 -3
  63. package/api/@xmachines/play-router/interfaces/StateVisit.md +4 -4
  64. package/api/@xmachines/play-router/interfaces/VanillaRouter.md +4 -4
  65. package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +1 -1
  66. package/api/@xmachines/play-signals/functions/watchSignal.md +1 -1
  67. package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +2 -2
  68. package/api/@xmachines/play-signals/interfaces/SignalComputed.md +2 -2
  69. package/api/@xmachines/play-signals/interfaces/SignalOptions.md +2 -2
  70. package/api/@xmachines/play-signals/interfaces/SignalState.md +3 -3
  71. package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +4 -4
  72. package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +1 -1
  73. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  74. package/api/@xmachines/play-solid/interfaces/PlayRendererProps.md +6 -6
  75. package/api/@xmachines/play-solid/type-aliases/PlayActor.md +1 -1
  76. package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
  77. package/api/@xmachines/play-solid-router/README.md +54 -30
  78. package/api/@xmachines/play-solid-router/classes/RouteMap.md +1 -1
  79. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +7 -7
  80. package/api/@xmachines/play-solid-router/functions/PlayRouterProvider.md +1 -1
  81. package/api/@xmachines/play-solid-router/functions/createRouteMap.md +1 -1
  82. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +5 -5
  83. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +3 -3
  84. package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +1 -1
  85. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
  86. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +1 -1
  87. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +6 -6
  88. package/api/@xmachines/play-tanstack-react-router/functions/PlayRouterProvider.md +1 -1
  89. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +1 -1
  90. package/api/@xmachines/play-tanstack-react-router/functions/extractParams.md +1 -1
  91. package/api/@xmachines/play-tanstack-react-router/functions/extractQueryParams.md +1 -1
  92. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +5 -5
  93. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +3 -3
  94. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +3 -3
  95. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  96. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +4 -4
  97. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +1 -1
  98. package/api/@xmachines/play-tanstack-solid-router/classes/SolidRouterBridge.md +7 -7
  99. package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +1 -1
  100. package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +1 -1
  101. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +5 -5
  102. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
  103. package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +1 -1
  104. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  105. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +4 -4
  106. package/api/@xmachines/play-vue/README.md +3 -0
  107. package/api/@xmachines/play-vue/functions/defineRegistry.md +5 -5
  108. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  109. package/api/@xmachines/play-vue/interfaces/PlayRendererProps.md +5 -5
  110. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +16 -0
  111. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +15 -0
  112. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +21 -0
  113. package/api/@xmachines/play-vue/type-aliases/PlayActor.md +1 -1
  114. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  115. package/api/@xmachines/play-vue-router/README.md +53 -29
  116. package/api/@xmachines/play-vue-router/classes/RouteMap.md +5 -5
  117. package/api/@xmachines/play-vue-router/classes/VueBaseRouteMap.md +5 -5
  118. package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +7 -7
  119. package/api/@xmachines/play-vue-router/functions/createRouteMap.md +1 -1
  120. package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +4 -4
  121. package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +1 -1
  122. package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +1 -1
  123. package/api/@xmachines/play-xstate/classes/PlayerActor.md +11 -11
  124. package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +1 -1
  125. package/api/@xmachines/play-xstate/functions/composeGuards.md +1 -1
  126. package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +1 -1
  127. package/api/@xmachines/play-xstate/functions/definePlayer.md +1 -1
  128. package/api/@xmachines/play-xstate/functions/deriveRoute.md +1 -1
  129. package/api/@xmachines/play-xstate/functions/eventMatches.md +1 -1
  130. package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +1 -1
  131. package/api/@xmachines/play-xstate/functions/hasContext.md +1 -1
  132. package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +1 -1
  133. package/api/@xmachines/play-xstate/functions/negateGuard.md +1 -1
  134. package/api/@xmachines/play-xstate/functions/stateMatches.md +1 -1
  135. package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +3 -3
  136. package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +2 -2
  137. package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +6 -6
  138. package/api/@xmachines/play-xstate/interfaces/RouteContext.md +5 -5
  139. package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +1 -1
  140. package/api/@xmachines/play-xstate/type-aliases/Guard.md +1 -1
  141. package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +1 -1
  142. package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +1 -1
  143. package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +4 -4
  144. package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +4 -4
  145. package/api/@xmachines/shared/functions/defineXmVitestConfig.md +2 -2
  146. package/api/@xmachines/shared/functions/xmAliases.md +1 -1
  147. package/api/README.md +1 -1
  148. package/api/llms.txt +1 -1
  149. package/guides/README.md +2 -1
  150. package/guides/installation.md +1 -6
  151. package/package.json +2 -2
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Class: PlayError
4
4
 
5
- Defined in: [packages/play/src/errors.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play/src/errors.ts#L63)
5
+ Defined in: [packages/play/src/errors.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play/src/errors.ts#L63)
6
6
 
7
7
  Base class for all typed runtime errors thrown by `@xmachines/*` packages.
8
8
 
@@ -82,7 +82,7 @@ new PlayError(
82
82
  options?): PlayError;
83
83
  ```
84
84
 
85
- Defined in: [packages/play/src/errors.ts:82](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play/src/errors.ts#L82)
85
+ Defined in: [packages/play/src/errors.ts:82](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play/src/errors.ts#L82)
86
86
 
87
87
  #### Parameters
88
88
 
@@ -108,10 +108,10 @@ Error.constructor;
108
108
  | Property | Modifier | Type | Description | Inherited from | Defined in |
109
109
  | ------------------------------------------------------- | ---------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
110
110
  | <a id="property-cause"></a> `cause?` | `public` | `unknown` | - | `Error.cause` | - |
111
- | <a id="property-code"></a> `code` | `readonly` | `string` | A stable, machine-readable error identifier. Error codes follow the `PLAY_<PACKAGE>_<DESCRIPTION>` naming convention and are guaranteed stable across patch and minor releases within a major version. Never match on `.message` — always match on `.code` or the subclass. | - | [packages/play/src/errors.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play/src/errors.ts#L74) |
111
+ | <a id="property-code"></a> `code` | `readonly` | `string` | A stable, machine-readable error identifier. Error codes follow the `PLAY_<PACKAGE>_<DESCRIPTION>` naming convention and are guaranteed stable across patch and minor releases within a major version. Never match on `.message` — always match on `.code` or the subclass. | - | [packages/play/src/errors.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play/src/errors.ts#L74) |
112
112
  | <a id="property-message"></a> `message` | `public` | `string` | - | `Error.message` | - |
113
113
  | <a id="property-name"></a> `name` | `public` | `string` | - | `Error.name` | - |
114
- | <a id="property-scope"></a> `scope` | `readonly` | `string` | The class or module that threw this error (e.g. `"RouterBridgeBase"`). | - | [packages/play/src/errors.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play/src/errors.ts#L65) |
114
+ | <a id="property-scope"></a> `scope` | `readonly` | `string` | The class or module that threw this error (e.g. `"RouterBridgeBase"`). | - | [packages/play/src/errors.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play/src/errors.ts#L65) |
115
115
  | <a id="property-stack"></a> `stack?` | `public` | `string` | - | `Error.stack` | - |
116
116
  | <a id="property-stacktracelimit"></a> `stackTraceLimit` | `static` | `number` | The `Error.stackTraceLimit` property specifies the number of stack frames collected by a stack trace (whether generated by `new Error().stack` or `Error.captureStackTrace(obj)`). The default value is `10` but may be set to any valid JavaScript number. Changes will affect any stack trace captured _after_ the value has been changed. If set to a non-number value, or set to a negative number, stack traces will not capture any frames. | `Error.stackTraceLimit` | - |
117
117
 
@@ -6,7 +6,7 @@
6
6
  type PlayEvent<TPayload> = object & TPayload;
7
7
  ```
8
8
 
9
- Defined in: [packages/play/src/types.ts:69](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play/src/types.ts#L69)
9
+ Defined in: [packages/play/src/types.ts:69](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play/src/types.ts#L69)
10
10
 
11
11
  Generic event type for Play Architecture
12
12
 
@@ -34,7 +34,7 @@ Robot, and other state machine libraries.
34
34
 
35
35
  | Name | Type | Defined in |
36
36
  | ------ | -------- | -------------------------------------------------------------------------------------------------------------------------------- |
37
- | `type` | `string` | [packages/play/src/types.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play/src/types.ts#L70) |
37
+ | `type` | `string` | [packages/play/src/types.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play/src/types.ts#L70) |
38
38
 
39
39
  ## Type Parameters
40
40
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Abstract Class: AbstractActor\<TLogic, TEvent\>
4
4
 
5
- Defined in: [packages/play-actor/src/abstract-actor.ts:231](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L231)
5
+ Defined in: [packages/play-actor/src/abstract-actor.ts:231](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L231)
6
6
 
7
7
  Abstract base class for Play Architecture actors.
8
8
 
@@ -115,7 +115,7 @@ Actor<TLogic>.constructor
115
115
  | <a id="property-ref"></a> `ref` | `public` | [`ActorRef`](https://www.jsdocs.io/package/xstate#ActorRef)\<[`SnapshotFrom`](https://www.jsdocs.io/package/xstate#SnapshotFrom)\<`TLogic`\>, [`EventFromLogic`](https://www.jsdocs.io/package/xstate#EventFromLogic)\<`TLogic`\>, [`EmittedFrom`](https://www.jsdocs.io/package/xstate#EmittedFrom)\<`TLogic`\>\> | - | `Actor.ref` | - |
116
116
  | <a id="property-sessionid"></a> `sessionId` | `public` | `string` | The globally unique process ID for this invocation. | `Actor.sessionId` | - |
117
117
  | <a id="property-src"></a> `src` | `public` | \| `string` \| [`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic) | - | `Actor.src` | - |
118
- | <a id="property-state"></a> `state` | `abstract` | [`State`](../../play-signals/namespaces/Signal/classes/State.md)\<`unknown`\> | Reactive snapshot of current actor state. Typed as `Signal.State<unknown>` at the abstract level; concrete implementations narrow this to the actual snapshot type (e.g., `Signal.State<AnyMachineSnapshot>` in `@xmachines/play-xstate`'s `PlayerActor`). Infrastructure observes this signal to react to state changes without directly coupling to the Actor's internal state machine implementation. **Example** `// Infrastructure observes state signal const watcher = new Signal.subtle.Watcher(() => { console.log('Actor state changed:', actor.state.get()); }); watcher.watch(actor.state);` | - | [packages/play-actor/src/abstract-actor.ts:254](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L254) |
118
+ | <a id="property-state"></a> `state` | `abstract` | [`State`](../../play-signals/namespaces/Signal/classes/State.md)\<`unknown`\> | Reactive snapshot of current actor state. Typed as `Signal.State<unknown>` at the abstract level; concrete implementations narrow this to the actual snapshot type (e.g., `Signal.State<AnyMachineSnapshot>` in `@xmachines/play-xstate`'s `PlayerActor`). Infrastructure observes this signal to react to state changes without directly coupling to the Actor's internal state machine implementation. **Example** `// Infrastructure observes state signal const watcher = new Signal.subtle.Watcher(() => { console.log('Actor state changed:', actor.state.get()); }); watcher.watch(actor.state);` | - | [packages/play-actor/src/abstract-actor.ts:254](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L254) |
119
119
  | <a id="property-system"></a> `system` | `public` | [`AnyActorSystem`](https://www.jsdocs.io/package/xstate#AnyActorSystem) | The system to which this actor belongs. | `Actor.system` | - |
120
120
  | <a id="property-systemid"></a> `systemId` | `public` | `string` \| `undefined` | - | `Actor.systemId` | - |
121
121
 
@@ -276,7 +276,7 @@ Actor.select;
276
276
  abstract send(event): void;
277
277
  ```
278
278
 
279
- Defined in: [packages/play-actor/src/abstract-actor.ts:278](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L278)
279
+ Defined in: [packages/play-actor/src/abstract-actor.ts:278](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L278)
280
280
 
281
281
  Send event to Actor
282
282
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: PlaySpec
4
4
 
5
- Defined in: [packages/play-actor/src/abstract-actor.ts:112](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L112)
5
+ Defined in: [packages/play-actor/src/abstract-actor.ts:112](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L112)
6
6
 
7
7
  XMachines extension of `@json-render/core` `Spec`.
8
8
 
@@ -31,7 +31,7 @@ spec: {
31
31
 
32
32
  | Property | Type | Description | Inherited from | Defined in |
33
33
  | -------------------------------------------------- | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
34
- | <a id="property-contextprops"></a> `contextProps?` | `string`[] | Explicit allowlist of machine context field names to expose as prop slots. Each named field is merged into every spec element's `props` at view derivation time, filling any slot whose current value is `undefined`. `null` and `undefined` context values are skipped. URL route params (from `context.routeParams`) take priority over `contextProps` values; explicit non-`undefined` spec props always take priority over both. | - | [packages/play-actor/src/abstract-actor.ts:122](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L122) |
34
+ | <a id="property-contextprops"></a> `contextProps?` | `string`[] | Explicit allowlist of machine context field names to expose as prop slots. Each named field is merged into every spec element's `props` at view derivation time, filling any slot whose current value is `undefined`. `null` and `undefined` context values are skipped. URL route params (from `context.routeParams`) take priority over `contextProps` values; explicit non-`undefined` spec props always take priority over both. | - | [packages/play-actor/src/abstract-actor.ts:122](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L122) |
35
35
  | <a id="property-elements"></a> `elements` | `Record`\<`string`, `UIElement`\> | Flat map of elements by key | `Spec.elements` | - |
36
36
  | <a id="property-root"></a> `root` | `string` | Root element key | `Spec.root` | - |
37
37
  | <a id="property-state"></a> `state?` | `Record`\<`string`, `unknown`\> | Optional initial state to seed the state model. Components using statePath will read from / write to this state. | `Spec.state` | - |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: Routable
4
4
 
5
- Defined in: [packages/play-actor/src/abstract-actor.ts:42](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L42)
5
+ Defined in: [packages/play-actor/src/abstract-actor.ts:42](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L42)
6
6
 
7
7
  Optional capability: Routing support
8
8
 
@@ -26,5 +26,5 @@ function connectRouter<T extends AbstractActor & Routable>(actor: T) {
26
26
 
27
27
  | Property | Modifier | Type | Description | Defined in |
28
28
  | ------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
29
- | <a id="property-currentroute"></a> `currentRoute` | `readonly` | [`Computed`](../../play-signals/namespaces/Signal/classes/Computed.md)\<`string` \| `null`\> | Current route signal Computed signal derived from state machine. Infrastructure observes to sync browser URL. Invariant: Passive Infrastructure - Infrastructure reflects route, never decides. **Example** `const watcher = new Signal.subtle.Watcher(() => { const route = actor.currentRoute.get(); console.log('Route changed:', route); }); watcher.watch(actor.currentRoute);` | [packages/play-actor/src/abstract-actor.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L59) |
30
- | <a id="property-initialroute"></a> `initialRoute` | `readonly` | `string` \| `null` | The route derived from the machine's **initial** state — fixed at construction and never changes, even after `start()` with a restored snapshot. Router bridges use this to distinguish a deep-link (browser URL differs from the initial route because the user navigated there) from a restore (browser is at the machine's default starting URL while the actor was restored to a different route from a snapshot). `null` when the machine's initial state has no `meta.route`. | [packages/play-actor/src/abstract-actor.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L71) |
29
+ | <a id="property-currentroute"></a> `currentRoute` | `readonly` | [`Computed`](../../play-signals/namespaces/Signal/classes/Computed.md)\<`string` \| `null`\> | Current route signal Computed signal derived from state machine. Infrastructure observes to sync browser URL. Invariant: Passive Infrastructure - Infrastructure reflects route, never decides. **Example** `const watcher = new Signal.subtle.Watcher(() => { const route = actor.currentRoute.get(); console.log('Route changed:', route); }); watcher.watch(actor.currentRoute);` | [packages/play-actor/src/abstract-actor.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L59) |
30
+ | <a id="property-initialroute"></a> `initialRoute` | `readonly` | `string` \| `null` | The route derived from the machine's **initial** state — fixed at construction and never changes, even after `start()` with a restored snapshot. Router bridges use this to distinguish a deep-link (browser URL differs from the initial route because the user navigated there) from a restore (browser is at the machine's default starting URL while the actor was restored to a different route from a snapshot). `null` when the machine's initial state has no `meta.route`. | [packages/play-actor/src/abstract-actor.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L71) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: ViewMetadata
4
4
 
5
- Defined in: [packages/play-actor/src/abstract-actor.ts:131](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L131)
5
+ Defined in: [packages/play-actor/src/abstract-actor.ts:131](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L131)
6
6
 
7
7
  View metadata for rendering
8
8
 
@@ -13,5 +13,5 @@ Used by PlayRenderer to dynamically render UI based on actor state.
13
13
 
14
14
  | Property | Type | Description | Defined in |
15
15
  | ------------------------------------------- | ------------------------- | --------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
16
- | <a id="property-component"></a> `component` | `string` | Root element type name (for diagnostics and component resolution) | [packages/play-actor/src/abstract-actor.ts:133](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L133) |
17
- | <a id="property-spec"></a> `spec` | [`PlaySpec`](PlaySpec.md) | XMachines view spec — extends `@json-render/core` Spec with `contextProps` for explicit context field exposure. | [packages/play-actor/src/abstract-actor.ts:138](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L138) |
16
+ | <a id="property-component"></a> `component` | `string` | Root element type name (for diagnostics and component resolution) | [packages/play-actor/src/abstract-actor.ts:133](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L133) |
17
+ | <a id="property-spec"></a> `spec` | [`PlaySpec`](PlaySpec.md) | XMachines view spec — extends `@json-render/core` Spec with `contextProps` for explicit context field exposure. | [packages/play-actor/src/abstract-actor.ts:138](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L138) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: Viewable
4
4
 
5
- Defined in: [packages/play-actor/src/abstract-actor.ts:150](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L150)
5
+ Defined in: [packages/play-actor/src/abstract-actor.ts:150](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L150)
6
6
 
7
7
  Actor capability for exposing renderable view state.
8
8
 
@@ -16,4 +16,4 @@ passed to PlayRenderer, not stored on the actor.
16
16
 
17
17
  | Property | Modifier | Type | Description | Defined in |
18
18
  | ----------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
19
- | <a id="property-currentview"></a> `currentView` | `readonly` | [`State`](../../play-signals/namespaces/Signal/classes/State.md)\<[`ViewMetadata`](ViewMetadata.md) \| `null`\> | Current view signal State signal containing view.component and view.spec from meta.view. Infrastructure renders view. Invariant: Logic-Driven UI - View structure is defined by business logic, not JSX. **Example** `const watcher = new Signal.subtle.Watcher(() => { const view = actor.currentView.get(); console.log('View changed:', view.component, view.spec); }); watcher.watch(actor.currentView);` | [packages/play-actor/src/abstract-actor.ts:167](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-actor/src/abstract-actor.ts#L167) |
19
+ | <a id="property-currentview"></a> `currentView` | `readonly` | [`State`](../../play-signals/namespaces/Signal/classes/State.md)\<[`ViewMetadata`](ViewMetadata.md) \| `null`\> | Current view signal State signal containing view.component and view.spec from meta.view. Infrastructure renders view. Invariant: Logic-Driven UI - View structure is defined by business logic, not JSX. **Example** `const watcher = new Signal.subtle.Watcher(() => { const view = actor.currentView.get(); console.log('View changed:', view.component, view.spec); }); watcher.watch(actor.currentView);` | [packages/play-actor/src/abstract-actor.ts:167](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-actor/src/abstract-actor.ts#L167) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Class: PlayRenderer
4
4
 
5
- Defined in: [PlayRenderer.ts:39](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/PlayRenderer.ts#L39)
5
+ Defined in: [PlayRenderer.ts:39](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/PlayRenderer.ts#L39)
6
6
 
7
7
  PlayRenderer connects an actor's currentView signal to the DOM renderer.
8
8
 
@@ -34,7 +34,7 @@ new PlayRenderer(
34
34
  options?): PlayRenderer;
35
35
  ```
36
36
 
37
- Defined in: [PlayRenderer.ts:50](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/PlayRenderer.ts#L50)
37
+ Defined in: [PlayRenderer.ts:50](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/PlayRenderer.ts#L50)
38
38
 
39
39
  #### Parameters
40
40
 
@@ -57,7 +57,7 @@ Defined in: [PlayRenderer.ts:50](https://gitlab.com/xmachin-es/xmachines-js/-/bl
57
57
  connect(): void;
58
58
  ```
59
59
 
60
- Defined in: [PlayRenderer.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/PlayRenderer.ts#L61)
60
+ Defined in: [PlayRenderer.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/PlayRenderer.ts#L61)
61
61
 
62
62
  Start watching actor.currentView and render to container.
63
63
  Renders the initial view synchronously, then subscribes to signal changes.
@@ -74,7 +74,7 @@ Renders the initial view synchronously, then subscribes to signal changes.
74
74
  disconnect(): void;
75
75
  ```
76
76
 
77
- Defined in: [PlayRenderer.ts:69](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/PlayRenderer.ts#L69)
77
+ Defined in: [PlayRenderer.ts:69](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/PlayRenderer.ts#L69)
78
78
 
79
79
  Stop watching and clear the container.
80
80
 
@@ -6,7 +6,7 @@
6
6
  function connectRenderer(options): () => void;
7
7
  ```
8
8
 
9
- Defined in: [connect-renderer.ts:46](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/connect-renderer.ts#L46)
9
+ Defined in: [connect-renderer.ts:46](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/connect-renderer.ts#L46)
10
10
 
11
11
  Connect a signal-driven DOM renderer to an actor's currentView signal.
12
12
 
@@ -6,7 +6,7 @@
6
6
  function renderSpec(spec, store, registry, send, actor, actorActions): Node | null;
7
7
  ```
8
8
 
9
- Defined in: [dom-renderer.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/dom-renderer.ts#L26)
9
+ Defined in: [dom-renderer.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/dom-renderer.ts#L26)
10
10
 
11
11
  Render a Spec tree into DOM nodes using the provided DomRegistry.
12
12
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: ConnectRendererOptions
4
4
 
5
- Defined in: [types.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L63)
5
+ Defined in: [types.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L63)
6
6
 
7
7
  Options for connectRenderer() — backward compat API.
8
8
 
@@ -10,9 +10,9 @@ Options for connectRenderer() — backward compat API.
10
10
 
11
11
  | Property | Type | Description | Defined in |
12
12
  | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
13
- | <a id="property-actions"></a> `actions?` | `Record`\<`string`, `string`\> | Map of json-render actionName → XState event type | [types.ts:77](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L77) |
14
- | <a id="property-actor"></a> `actor` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Viewable`](../../play-actor/interfaces/Viewable.md) | Actor instance with currentView signal (requires Viewable capability) | [types.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L65) |
15
- | <a id="property-container"></a> `container` | `HTMLElement` | Container element to render into | [types.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L71) |
16
- | <a id="property-fallback"></a> `fallback?` | `HTMLElement` \| `null` | Optional element shown when currentView is null (defaults to nothing — clears container) | [types.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L74) |
17
- | <a id="property-registry"></a> `registry` | [`DomRegistry`](../type-aliases/DomRegistry.md) | Registry of component renderers — replaces old `components` map | [types.ts:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L68) |
18
- | <a id="property-store"></a> `store?` | `StateStore` | Optional external StateStore (e.g. from `xstateStoreStateStore` in @json-render/xstate). When provided, PlayRenderer operates in controlled mode — spec.state is ignored. When omitted, a fresh @xstate/store atom is created internally per view transition. | [types.ts:84](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L84) |
13
+ | <a id="property-actions"></a> `actions?` | `Record`\<`string`, `string`\> | Map of json-render actionName → XState event type | [types.ts:77](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L77) |
14
+ | <a id="property-actor"></a> `actor` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Viewable`](../../play-actor/interfaces/Viewable.md) | Actor instance with currentView signal (requires Viewable capability) | [types.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L65) |
15
+ | <a id="property-container"></a> `container` | `HTMLElement` | Container element to render into | [types.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L71) |
16
+ | <a id="property-fallback"></a> `fallback?` | `HTMLElement` \| `null` | Optional element shown when currentView is null (defaults to nothing — clears container) | [types.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L74) |
17
+ | <a id="property-registry"></a> `registry` | [`DomRegistry`](../type-aliases/DomRegistry.md) | Registry of component renderers — replaces old `components` map | [types.ts:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L68) |
18
+ | <a id="property-store"></a> `store?` | `StateStore` | Optional external StateStore (e.g. from `xstateStoreStateStore` in @json-render/xstate). When provided, PlayRenderer operates in controlled mode — spec.state is ignored. When omitted, a fresh @xstate/store atom is created internally per view transition. | [types.ts:84](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L84) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: DomRenderContext
4
4
 
5
- Defined in: [types.ts:14](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L14)
5
+ Defined in: [types.ts:14](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L14)
6
6
 
7
7
  Context passed to each DomComponentRenderer when rendering an element.
8
8
 
@@ -10,9 +10,9 @@ Context passed to each DomComponentRenderer when rendering an element.
10
10
 
11
11
  | Property | Type | Description | Defined in |
12
12
  | ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
13
- | <a id="property-actor"></a> `actor` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Viewable`](../../play-actor/interfaces/Viewable.md) | Raw actor — access from any DOM component for state reading, complex events, lifecycle | [types.ts:22](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L22) |
14
- | <a id="property-actoractions"></a> `actorActions` | `Record`\<`string`, `string`\> | Map of json-render action names → XState event types | [types.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L24) |
15
- | <a id="property-renderchildren"></a> `renderChildren` | (`keys`) => `Node`[] | Recursively render child elements by key | [types.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L26) |
16
- | <a id="property-send"></a> `send` | (`event`) => `void` | Send an event to the actor | [types.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L20) |
17
- | <a id="property-spec"></a> `spec` | `Spec` | Full spec tree | [types.ts:16](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L16) |
18
- | <a id="property-store"></a> `store` | `StateStore` | State store bound to spec.state | [types.ts:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L18) |
13
+ | <a id="property-actor"></a> `actor` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Viewable`](../../play-actor/interfaces/Viewable.md) | Raw actor — access from any DOM component for state reading, complex events, lifecycle | [types.ts:22](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L22) |
14
+ | <a id="property-actoractions"></a> `actorActions` | `Record`\<`string`, `string`\> | Map of json-render action names → XState event types | [types.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L24) |
15
+ | <a id="property-renderchildren"></a> `renderChildren` | (`keys`) => `Node`[] | Recursively render child elements by key | [types.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L26) |
16
+ | <a id="property-send"></a> `send` | (`event`) => `void` | Send an event to the actor | [types.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L20) |
17
+ | <a id="property-spec"></a> `spec` | `Spec` | Full spec tree | [types.ts:16](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L16) |
18
+ | <a id="property-store"></a> `store` | `StateStore` | State store bound to spec.state | [types.ts:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L18) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: PlayDomOptions
4
4
 
5
- Defined in: [types.ts:46](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L46)
5
+ Defined in: [types.ts:46](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L46)
6
6
 
7
7
  Options for PlayRenderer.
8
8
 
@@ -10,5 +10,5 @@ Options for PlayRenderer.
10
10
 
11
11
  | Property | Type | Description | Defined in |
12
12
  | ---------------------------------------- | ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
13
- | <a id="property-actions"></a> `actions?` | `Record`\<`string`, `string`\> | Map of json-render actionName → XState event type | [types.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L48) |
14
- | <a id="property-store"></a> `store?` | `StateStore` | Optional external StateStore (e.g. from `xstateStoreStateStore` in @json-render/xstate). When provided, PlayRenderer operates in controlled mode — spec.state is ignored and this store is the single source of truth for UI state (form values, etc.). When omitted, a fresh @xstate/store atom is created internally per view transition, seeded from spec.state. | [types.ts:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L57) |
13
+ | <a id="property-actions"></a> `actions?` | `Record`\<`string`, `string`\> | Map of json-render actionName → XState event type | [types.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L48) |
14
+ | <a id="property-store"></a> `store?` | `StateStore` | Optional external StateStore (e.g. from `xstateStoreStateStore` in @json-render/xstate). When provided, PlayRenderer operates in controlled mode — spec.state is ignored and this store is the single source of truth for UI state (form values, etc.). When omitted, a fresh @xstate/store atom is created internally per view transition, seeded from spec.state. | [types.ts:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L57) |
@@ -6,7 +6,7 @@
6
6
  type DomComponentRenderer = (element, ctx) => HTMLElement | Text | null;
7
7
  ```
8
8
 
9
- Defined in: [types.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L33)
9
+ Defined in: [types.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L33)
10
10
 
11
11
  Pure DOM component renderer — receives a UIElement + context and returns a DOM node.
12
12
  No framework required. Return null for unknown/unsupported elements.
@@ -6,6 +6,6 @@
6
6
  type DomRegistry = Record<string, DomComponentRenderer>;
7
7
  ```
8
8
 
9
- Defined in: [types.ts:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-dom/src/types.ts#L41)
9
+ Defined in: [types.ts:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-dom/src/types.ts#L41)
10
10
 
11
11
  Registry of component renderers keyed by element type.
@@ -340,5 +340,6 @@ from `@xmachines/play-react` rather than `@json-render/react` directly.
340
340
 
341
341
  - [defineRegistry](functions/defineRegistry.md)
342
342
  - [useActor](functions/useActor.md)
343
+ - [useBoundProp](functions/useBoundProp.md)
343
344
  - [useSignalEffect](functions/useSignalEffect.md)
344
345
  - [~~useStateBinding~~](functions/useStateBinding.md)
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Class: PlayErrorBoundary
4
4
 
5
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:50](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L50)
5
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:50](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L50)
6
6
 
7
7
  React class component error boundary for catching catalog component render errors.
8
8
 
@@ -32,7 +32,7 @@ Per CONS-14: Class component pattern works with all React versions (18 and 19).
32
32
  new PlayErrorBoundary(props): PlayErrorBoundary;
33
33
  ```
34
34
 
35
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:54](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L54)
35
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:54](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L54)
36
36
 
37
37
  #### Parameters
38
38
 
@@ -71,7 +71,7 @@ React.Component<
71
71
  componentDidCatch(error, info): void;
72
72
  ```
73
73
 
74
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L63)
74
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L63)
75
75
 
76
76
  Catches exceptions generated in descendant components. Unhandled exceptions will cause
77
77
  the entire component tree to unmount.
@@ -355,7 +355,7 @@ React.Component.getSnapshotBeforeUpdate;
355
355
  render(): ReactNode;
356
356
  ```
357
357
 
358
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L70)
358
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L70)
359
359
 
360
360
  #### Returns
361
361
 
@@ -574,7 +574,7 @@ React.Component.UNSAFE_componentWillUpdate;
574
574
  static getDerivedStateFromError(error): PlayErrorBoundaryState;
575
575
  ```
576
576
 
577
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L59)
577
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L59)
578
578
 
579
579
  #### Parameters
580
580
 
@@ -6,7 +6,7 @@
6
6
  function useActor(): PlayActor;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-react/src/useActor.ts:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/useActor.ts#L30)
9
+ Defined in: [packages/play-react/src/useActor.ts:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/useActor.ts#L30)
10
10
 
11
11
  ## Returns
12
12
 
@@ -0,0 +1,43 @@
1
+ [Documentation](../../../README.md) / [@xmachines/play-react](../README.md) / useBoundProp
2
+
3
+ # Function: useBoundProp()
4
+
5
+ ```ts
6
+ function useBoundProp<T>(propValue, bindingPath): [T | undefined, (value) => void];
7
+ ```
8
+
9
+ Hook for two-way bound props. Returns `[value, setValue]` where:
10
+
11
+ - `value` is the already-resolved prop value (passed through from render props)
12
+ - `setValue` writes back to the bound state path (no-op if not bound)
13
+
14
+ Designed to work with the `bindings` map that the renderer provides when
15
+ a prop uses `{ $bindState: "/path" }` or `{ $bindItem: "field" }`.
16
+
17
+ ## Type Parameters
18
+
19
+ | Type Parameter |
20
+ | -------------- |
21
+ | `T` |
22
+
23
+ ## Parameters
24
+
25
+ | Parameter | Type |
26
+ | ------------- | ----------------------- |
27
+ | `propValue` | `T` \| `undefined` |
28
+ | `bindingPath` | `string` \| `undefined` |
29
+
30
+ ## Returns
31
+
32
+ \[`T` \| `undefined`, (`value`) => `void`\]
33
+
34
+ ## Example
35
+
36
+ ```tsx
37
+ import { useBoundProp } from "@json-render/react";
38
+
39
+ const Input: ComponentRenderer = ({ props, bindings }) => {
40
+ const [value, setValue] = useBoundProp<string>(props.value, bindings?.value);
41
+ return <input value={value ?? ""} onChange={(e) => setValue(e.target.value)} />;
42
+ };
43
+ ```
@@ -6,7 +6,7 @@
6
6
  function useSignalEffect(callback): void;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-react/src/useSignalEffect.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/useSignalEffect.ts#L65)
9
+ Defined in: [packages/play-react/src/useSignalEffect.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/useSignalEffect.ts#L65)
10
10
 
11
11
  React hook that subscribes to signal changes and runs effect callback
12
12
 
@@ -26,7 +26,7 @@ Hook to get and set a value from the state model (like useState).
26
26
 
27
27
  ## Deprecated
28
28
 
29
- Use useBoundProp with `$bindState` expressions instead.
29
+ Use [useBoundProp](useBoundProp.md) with `$bindState` expressions instead.
30
30
  `useStateBinding` takes a raw state path string, while `useBoundProp` works
31
31
  with the renderer's `bindings` map and supports both `$bindState` and
32
32
  `$bindItem` expressions.
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: PlayErrorBoundaryProps
4
4
 
5
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:15](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L15)
5
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:15](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L15)
6
6
 
7
7
  Props for PlayErrorBoundary
8
8
 
@@ -10,6 +10,6 @@ Props for PlayErrorBoundary
10
10
 
11
11
  | Property | Type | Description | Defined in |
12
12
  | ------------------------------------------ | --------------------------- | --------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
13
- | <a id="property-children"></a> `children` | `ReactNode` | Child components to render | [packages/play-react/src/PlayErrorBoundary.tsx:19](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L19) |
14
- | <a id="property-fallback"></a> `fallback?` | `ReactNode` | Fallback UI to render when a child component throws. Defaults to null. | [packages/play-react/src/PlayErrorBoundary.tsx:17](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L17) |
15
- | <a id="property-onerror"></a> `onError?` | (`error`, `info`) => `void` | Optional error handler callback — forwards errors to observability tools (Sentry, etc.) | [packages/play-react/src/PlayErrorBoundary.tsx:21](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L21) |
13
+ | <a id="property-children"></a> `children` | `ReactNode` | Child components to render | [packages/play-react/src/PlayErrorBoundary.tsx:19](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L19) |
14
+ | <a id="property-fallback"></a> `fallback?` | `ReactNode` | Fallback UI to render when a child component throws. Defaults to null. | [packages/play-react/src/PlayErrorBoundary.tsx:17](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L17) |
15
+ | <a id="property-onerror"></a> `onError?` | (`error`, `info`) => `void` | Optional error handler callback — forwards errors to observability tools (Sentry, etc.) | [packages/play-react/src/PlayErrorBoundary.tsx:21](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L21) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: PlayErrorBoundaryState
4
4
 
5
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:29](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L29)
5
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:29](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L29)
6
6
 
7
7
  Internal state shape for PlayErrorBoundary
8
8
 
@@ -10,5 +10,5 @@ Internal state shape for PlayErrorBoundary
10
10
 
11
11
  | Property | Type | Defined in |
12
12
  | ----------------------------------------- | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
13
- | <a id="property-error"></a> `error` | `Error` \| `null` | [packages/play-react/src/PlayErrorBoundary.tsx:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L31) |
14
- | <a id="property-haserror"></a> `hasError` | `boolean` | [packages/play-react/src/PlayErrorBoundary.tsx:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-react/src/PlayErrorBoundary.tsx#L30) |
13
+ | <a id="property-error"></a> `error` | `Error` \| `null` | [packages/play-react/src/PlayErrorBoundary.tsx:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L31) |
14
+ | <a id="property-haserror"></a> `hasError` | `boolean` | [packages/play-react/src/PlayErrorBoundary.tsx:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.18/packages/play-react/src/PlayErrorBoundary.tsx#L30) |