@xmachines/docs 1.0.0-beta.26 → 1.0.0-beta.27

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 (216) 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/functions/typedSpec.md +1 -1
  5. package/api/@xmachines/play-actor/interfaces/PlaySpec.md +2 -2
  6. package/api/@xmachines/play-actor/interfaces/Routable.md +3 -3
  7. package/api/@xmachines/play-actor/interfaces/ViewMetadata.md +3 -3
  8. package/api/@xmachines/play-actor/interfaces/Viewable.md +2 -2
  9. package/api/@xmachines/play-dom/README.md +24 -8
  10. package/api/@xmachines/play-dom/classes/PlayRenderer.md +4 -4
  11. package/api/@xmachines/play-dom/functions/connectRenderer.md +1 -1
  12. package/api/@xmachines/play-dom/functions/defineRegistry.md +61 -0
  13. package/api/@xmachines/play-dom/functions/renderSpec.md +29 -12
  14. package/api/@xmachines/play-dom/interfaces/ComponentContext.md +62 -0
  15. package/api/@xmachines/play-dom/interfaces/ConnectRendererOptions.md +9 -9
  16. package/api/@xmachines/play-dom/interfaces/DefineRegistryOptions.md +25 -0
  17. package/api/@xmachines/play-dom/interfaces/DefineRegistryResult.md +18 -0
  18. package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +13 -10
  19. package/api/@xmachines/play-dom/interfaces/EventHandle.md +29 -0
  20. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +5 -5
  21. package/api/@xmachines/play-dom/type-aliases/ComponentFn.md +53 -0
  22. package/api/@xmachines/play-dom/type-aliases/ComponentRegistry.md +21 -0
  23. package/api/@xmachines/play-dom/type-aliases/DomComponentRenderer.md +16 -3
  24. package/api/@xmachines/play-dom/type-aliases/DomRegistry.md +5 -2
  25. package/api/@xmachines/play-dom-router/functions/connectRouter.md +1 -1
  26. package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +1 -1
  27. package/api/@xmachines/play-dom-router/functions/createRouteMap.md +1 -1
  28. package/api/@xmachines/play-dom-router/functions/createRouter.md +1 -1
  29. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +14 -14
  30. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +14 -14
  31. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +4 -4
  32. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +6 -6
  33. package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +3 -3
  34. package/api/@xmachines/play-dom-router/interfaces/RouteMapLike.md +3 -3
  35. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +3 -3
  36. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +3 -3
  37. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +4 -4
  38. package/api/@xmachines/play-dom-router/type-aliases/RoutableActor.md +1 -1
  39. package/api/@xmachines/play-dom-router-demo/README.md +46 -51
  40. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +5 -5
  41. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  42. package/api/@xmachines/play-react/functions/useSignalEffect.md +1 -1
  43. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +4 -4
  44. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +3 -3
  45. package/api/@xmachines/play-react/interfaces/PlayRendererProps.md +7 -7
  46. package/api/@xmachines/play-react/type-aliases/PlayActor.md +1 -1
  47. package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
  48. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +23 -23
  49. package/api/@xmachines/play-react-router/classes/RouteMap.md +4 -4
  50. package/api/@xmachines/play-react-router/functions/PlayRouterProvider.md +1 -1
  51. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +1 -1
  52. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +6 -6
  53. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +5 -5
  54. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
  55. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +3 -3
  56. package/api/@xmachines/play-router/classes/BaseRouteMap.md +4 -4
  57. package/api/@xmachines/play-router/classes/RouterBridgeBase.md +23 -23
  58. package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +1 -1
  59. package/api/@xmachines/play-router/functions/buildRouteTree.md +1 -1
  60. package/api/@xmachines/play-router/functions/createRouteMap.md +1 -1
  61. package/api/@xmachines/play-router/functions/createRouteMapFromMachine.md +1 -1
  62. package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +1 -1
  63. package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +1 -1
  64. package/api/@xmachines/play-router/functions/extractMachineRoutes.md +1 -1
  65. package/api/@xmachines/play-router/functions/extractQuery.md +1 -1
  66. package/api/@xmachines/play-router/functions/extractRouteParams.md +1 -1
  67. package/api/@xmachines/play-router/functions/findRouteById.md +1 -1
  68. package/api/@xmachines/play-router/functions/findRouteByPath.md +1 -1
  69. package/api/@xmachines/play-router/functions/getNavigableRoutes.md +1 -1
  70. package/api/@xmachines/play-router/functions/getRoutableRoutes.md +1 -1
  71. package/api/@xmachines/play-router/functions/getTransitionReachableRoutes.md +1 -1
  72. package/api/@xmachines/play-router/functions/isRouteReachable.md +1 -1
  73. package/api/@xmachines/play-router/functions/machineToGraph.md +1 -1
  74. package/api/@xmachines/play-router/functions/routeExists.md +1 -1
  75. package/api/@xmachines/play-router/functions/sanitizePathname.md +1 -1
  76. package/api/@xmachines/play-router/functions/validateRouteFormat.md +1 -1
  77. package/api/@xmachines/play-router/functions/validateStateExists.md +1 -1
  78. package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +4 -4
  79. package/api/@xmachines/play-router/interfaces/LocationLike.md +3 -3
  80. package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +3 -3
  81. package/api/@xmachines/play-router/interfaces/MachineNodeData.md +5 -5
  82. package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +6 -6
  83. package/api/@xmachines/play-router/interfaces/RouteInfo.md +8 -8
  84. package/api/@xmachines/play-router/interfaces/RouteMap.md +4 -4
  85. package/api/@xmachines/play-router/interfaces/RouteMapping.md +3 -3
  86. package/api/@xmachines/play-router/interfaces/RouteMatch.md +3 -3
  87. package/api/@xmachines/play-router/interfaces/RouteNode.md +10 -10
  88. package/api/@xmachines/play-router/interfaces/RouteObject.md +2 -2
  89. package/api/@xmachines/play-router/interfaces/RouteTree.md +5 -5
  90. package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +3 -3
  91. package/api/@xmachines/play-router/interfaces/RouterBridge.md +3 -3
  92. package/api/@xmachines/play-router/interfaces/WindowLike.md +3 -3
  93. package/api/@xmachines/play-router/type-aliases/MachineGraph.md +1 -1
  94. package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +1 -1
  95. package/api/@xmachines/play-signals/functions/watchSignal.md +1 -1
  96. package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +2 -2
  97. package/api/@xmachines/play-signals/interfaces/SignalComputed.md +2 -2
  98. package/api/@xmachines/play-signals/interfaces/SignalOptions.md +2 -2
  99. package/api/@xmachines/play-signals/interfaces/SignalState.md +3 -3
  100. package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +4 -4
  101. package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +1 -1
  102. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  103. package/api/@xmachines/play-solid/interfaces/PlayRendererProps.md +7 -7
  104. package/api/@xmachines/play-solid/type-aliases/PlayActor.md +1 -1
  105. package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
  106. package/api/@xmachines/play-solid-router/classes/RouteMap.md +4 -4
  107. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +24 -24
  108. package/api/@xmachines/play-solid-router/functions/PlayRouterProvider.md +1 -1
  109. package/api/@xmachines/play-solid-router/functions/createRouteMap.md +1 -1
  110. package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +3 -3
  111. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +6 -6
  112. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +5 -5
  113. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +3 -3
  114. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +3 -3
  115. package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +1 -1
  116. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
  117. package/api/@xmachines/play-solid-router-demo/README.md +25 -28
  118. package/api/@xmachines/play-svelte/interfaces/PlayRendererProps.md +7 -7
  119. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +4 -4
  120. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +1 -1
  121. package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +1 -1
  122. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +4 -4
  123. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +6 -6
  124. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +3 -3
  125. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +3 -3
  126. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +3 -3
  127. package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +1 -1
  128. package/api/@xmachines/play-svelte-spa-router-demo/README.md +119 -12
  129. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +4 -4
  130. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +1 -1
  131. package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +1 -1
  132. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +4 -4
  133. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +3 -3
  134. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +6 -6
  135. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +3 -3
  136. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +3 -3
  137. package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +1 -1
  138. package/api/@xmachines/play-sveltekit-router-demo/README.md +120 -12
  139. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +4 -4
  140. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +23 -23
  141. package/api/@xmachines/play-tanstack-react-router/functions/PlayRouterProvider.md +1 -1
  142. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +1 -1
  143. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +1 -1
  144. package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +1 -1
  145. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +6 -6
  146. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +5 -5
  147. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +3 -3
  148. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +3 -3
  149. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +3 -3
  150. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  151. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +17 -3
  152. package/api/@xmachines/play-tanstack-react-router-demo/README.md +23 -29
  153. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +4 -4
  154. package/api/@xmachines/play-tanstack-solid-router/classes/SolidRouterBridge.md +24 -24
  155. package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +1 -1
  156. package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +1 -1
  157. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +6 -6
  158. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +5 -5
  159. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
  160. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +3 -3
  161. package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +1 -1
  162. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  163. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +3 -3
  164. package/api/@xmachines/play-tanstack-solid-router-demo/README.md +25 -26
  165. package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
  166. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  167. package/api/@xmachines/play-vue/interfaces/PlayRendererProps.md +5 -5
  168. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
  169. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
  170. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +4 -3
  171. package/api/@xmachines/play-vue/type-aliases/PlayActor.md +1 -1
  172. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  173. package/api/@xmachines/play-vue-router/classes/RouteMap.md +4 -4
  174. package/api/@xmachines/play-vue-router/classes/VueBaseRouteMap.md +4 -4
  175. package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +24 -24
  176. package/api/@xmachines/play-vue-router/functions/createRouteMap.md +1 -1
  177. package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +6 -6
  178. package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +3 -3
  179. package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +3 -3
  180. package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +1 -1
  181. package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +1 -1
  182. package/api/@xmachines/play-vue-router-demo/README.md +47 -40
  183. package/api/@xmachines/play-xstate/classes/PlayerActor.md +11 -11
  184. package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +1 -1
  185. package/api/@xmachines/play-xstate/functions/composeGuards.md +1 -1
  186. package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +1 -1
  187. package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +1 -1
  188. package/api/@xmachines/play-xstate/functions/definePlayer.md +1 -1
  189. package/api/@xmachines/play-xstate/functions/deriveRoute.md +1 -1
  190. package/api/@xmachines/play-xstate/functions/eventMatches.md +1 -1
  191. package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +1 -1
  192. package/api/@xmachines/play-xstate/functions/hasContext.md +1 -1
  193. package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +1 -1
  194. package/api/@xmachines/play-xstate/functions/negateGuard.md +1 -1
  195. package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +3 -3
  196. package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +2 -2
  197. package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +6 -6
  198. package/api/@xmachines/play-xstate/interfaces/RouteContext.md +5 -5
  199. package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +1 -1
  200. package/api/@xmachines/play-xstate/type-aliases/Guard.md +1 -1
  201. package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +1 -1
  202. package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +1 -1
  203. package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +4 -4
  204. package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +4 -4
  205. package/api/@xmachines/shared/functions/defineXmVitestConfig.md +3 -7
  206. package/api/@xmachines/shared/functions/xmAliases.md +1 -1
  207. package/examples/README.md +48 -35
  208. package/examples/basic-state-machine.md +75 -31
  209. package/examples/form-validation.md +199 -127
  210. package/examples/multi-router-integration.md +312 -230
  211. package/examples/routing-patterns.md +243 -189
  212. package/examples/traffic-light.md +114 -65
  213. package/guides/README.md +29 -15
  214. package/guides/getting-started.md +224 -144
  215. package/guides/installation.md +153 -213
  216. package/package.json +2 -2
@@ -2,14 +2,14 @@
2
2
 
3
3
  # Interface: VanillaRouter
4
4
 
5
- Defined in: [play-dom-router/src/create-router.ts:4](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-dom-router/src/create-router.ts#L4)
5
+ Defined in: [play-dom-router/src/create-router.ts:4](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-dom-router/src/create-router.ts#L4)
6
6
 
7
7
  ## Properties
8
8
 
9
9
  | Property | Modifier | Type | Description | Defined in |
10
10
  | ------------------------------------------- | ---------- | -------------------------------------------------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
11
- | <a id="property-history"></a> `history` | `readonly` | [`BrowserHistory`](BrowserHistory.md) | History instance | [play-dom-router/src/create-router.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-dom-router/src/create-router.ts#L8) |
12
- | <a id="property-routetree"></a> `routeTree` | `readonly` | [`RouteTree`](../../play-router/interfaces/RouteTree.md) | Route tree (for structure reference) | [play-dom-router/src/create-router.ts:13](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-dom-router/src/create-router.ts#L13) |
11
+ | <a id="property-history"></a> `history` | `readonly` | [`BrowserHistory`](BrowserHistory.md) | History instance | [play-dom-router/src/create-router.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-dom-router/src/create-router.ts#L8) |
12
+ | <a id="property-routetree"></a> `routeTree` | `readonly` | [`RouteTree`](../../play-router/interfaces/RouteTree.md) | Route tree (for structure reference) | [play-dom-router/src/create-router.ts:13](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-dom-router/src/create-router.ts#L13) |
13
13
 
14
14
  ## Methods
15
15
 
@@ -19,7 +19,7 @@ Defined in: [play-dom-router/src/create-router.ts:4](https://gitlab.com/xmachin-
19
19
  destroy(): void;
20
20
  ```
21
21
 
22
- Defined in: [play-dom-router/src/create-router.ts:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-dom-router/src/create-router.ts#L18)
22
+ Defined in: [play-dom-router/src/create-router.ts:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-dom-router/src/create-router.ts#L18)
23
23
 
24
24
  Cleanup
25
25
 
@@ -6,4 +6,4 @@
6
6
  type RoutableActor = AbstractActor<AnyActorLogic> & Routable & Viewable;
7
7
  ```
8
8
 
9
- Defined in: [play-dom-router/src/types.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-dom-router/src/types.ts#L9)
9
+ Defined in: [play-dom-router/src/types.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-dom-router/src/types.ts#L9)
@@ -1,19 +1,16 @@
1
1
  [Documentation](../../README.md) / @xmachines/play-dom-router-demo
2
2
 
3
- # Vanilla JavaScript Router Demo
3
+ # Vanilla DOM Router Demo
4
4
 
5
- Pure JavaScript integration proving Play Architecture works without any framework.
5
+ Pure TypeScript integration demo for `@xmachines/play-dom-router` actor-authoritative routing with the Browser History API and no framework.
6
6
 
7
7
  ## What This Demonstrates
8
8
 
9
- This demo uses **no framework** - just vanilla JavaScript with the Browser History API and DOM manipulation. It proves that Play Architecture's universal abstractions work at the lowest level, making framework integrations simpler by comparison.
10
-
11
- ## Key Features
12
-
13
- - **Zero Framework Dependencies**: Pure JavaScript and DOM
14
- - **Browser History API**: Direct integration with `window.history`
15
- - **Same Auth Machine**: Identical authentication logic as React/Vue/SolidJS demos
16
- - **Reference Implementation**: This demo serves as the visual reference for all framework demos
9
+ - Shared auth machine reused without framework-specific business logic
10
+ - `connectRouter` + `createBrowserHistory` wiring actor ↔ browser History API
11
+ - Shell-driven DOM rendering via `connectRenderer` with actor-authoritative navigation
12
+ - Manual TC39 Signal watcher lifecycle — the mechanism that framework adapters abstract
13
+ - Non-browser invariant tests plus browser E2E coverage
17
14
 
18
15
  ## Running the Demo
19
16
 
@@ -24,21 +21,21 @@ npm install
24
21
  npm run dev -w packages/play-dom-router/examples/demo
25
22
  ```
26
23
 
27
- Visit `http://localhost:5174`.
24
+ Then open `http://localhost:5174`.
28
25
 
29
26
  ## Step-by-Step Code Flow
30
27
 
31
- Use this order to understand the demo implementation:
28
+ Use this order to understand the implementation:
32
29
 
33
- 1. `src/main.ts` creates the actor from the shared machine/catalog and starts it.
34
- 2. `src/router.ts` extracts machine routes, builds browser-history routing primitives, and connects actor <-> router sync.
35
- 3. `src/shell.ts` subscribes to actor signals and renders state-projected DOM views.
36
- 4. Navigation and auth interactions dispatch actor events (`play.route`, `auth.login`, `auth.logout`) rather than mutating URL/state directly.
37
- 5. Browser tests in `test/browser/` validate startup rendering and the auth route flow end-to-end.
30
+ 1. `src/main.ts` creates the actor from the shared machine and starts it.
31
+ 2. `initRouter(actor)` from `src/router.ts` extracts route metadata, creates a browser history wrapper, instantiates a router, and calls `connectRouter` to wire bidirectional actor URL sync.
32
+ 3. `initShell(actor, app)` from `src/shell.ts` builds the DOM scaffold and sets up the `connectRenderer` loop for view switching.
33
+ 4. Navigation buttons and links dispatch `play.route`, `auth.login`, and `auth.logout` events directly to the actor — no URL mutations from the shell.
34
+ 5. Browser tests in `test/browser/` validate startup rendering and the full auth route flow.
38
35
 
39
36
  ```ts
40
37
  // src/main.ts (shape)
41
- const actor = createActorFromSharedMachine();
38
+ const actor = createPlayer();
42
39
  actor.start();
43
40
 
44
41
  const cleanupRouter = initRouter(actor);
@@ -50,45 +47,52 @@ if (app) {
50
47
 
51
48
  ```ts
52
49
  // src/router.ts (shape)
53
- import { createBrowserHistory, createRouter, connectRouter } from "@xmachines/play-dom-router";
54
- import { extractMachineRoutes, createRouteMap } from "@xmachines/play-router";
55
-
56
- const routeTree = extractMachineRoutes(machine);
57
- const routeMap = createRouteMap(routeTree);
58
- const history = createBrowserHistory({ window });
59
- const router = createRouter({ routeTree, history });
60
- const disconnect = connectRouter({ actor, router, routeMap });
50
+ export function initRouter(actor) {
51
+ const routeTree = extractMachineRoutes(authMachine);
52
+ const routeMap = createRouteMap(authMachine);
53
+ const history = createBrowserHistory({ window });
54
+ const router = createRouter({ routeTree, history });
55
+ const disconnect = connectRouter({ actor, router, routeMap });
56
+
57
+ return () => {
58
+ disconnect();
59
+ router.destroy();
60
+ };
61
+ }
61
62
  ```
62
63
 
63
64
  ```ts
64
65
  // src/shell.ts (shape)
65
- actor.currentView.watch(() => {
66
- renderView(actor.currentView.get());
66
+ const disconnectRenderer = connectRenderer({ actor, registry, container: viewContent });
67
+
68
+ const unwatchState = watchSignal(actor.state, () => {
69
+ navLogin.hidden = snapshot.context.isAuthenticated;
70
+ navLogout.hidden = !snapshot.context.isAuthenticated;
67
71
  });
68
72
 
69
- loginButton.onclick = () => actor.send({ type: "auth.login", username, password });
70
- logoutButton.onclick = () => actor.send({ type: "auth.logout" });
73
+ navLogin.addEventListener("click", () => actor.send({ type: "play.route", to: "#login" }));
71
74
  ```
72
75
 
73
76
  ## Key Files
74
77
 
75
78
  - `src/main.ts` - actor startup, router initialization, and shell bootstrap
76
79
  - `src/router.ts` - `createBrowserHistory`, `createRouter`, and `connectRouter` wiring
77
- - `src/shell.ts` - DOM rendering and reactive watcher loop for state-driven updates
80
+ - `src/shell.ts` - DOM scaffold, `DomRegistry` construction, `connectRenderer`, and reactive watcher loop
81
+ - `test/library-pattern.test.ts` - architecture boundary and invariant assertions
78
82
  - `test/browser/startup.browser.test.ts` - startup rendering assertion for public home + login action
79
- - `test/browser/auth-flow.browser.test.ts` - login -> dashboard -> profile -> logout browser flow
83
+ - `test/browser/auth-flow.browser.test.ts` - login dashboard profile logout browser flow
80
84
 
81
85
  ## State Machine & Architecture Details
82
86
 
83
87
  The demo utilizes XMachines architectural invariants at the lowest level:
84
88
 
85
- 1. **Actor Authority:** Intercepting browser `popstate` events or link clicks dispatches a `play.route` event to the actor. The actor processes the request against the current state, ensuring any auth logic is correctly applied.
86
- 2. **Passive Infrastructure:** The router simply updates `window.history` and the DOM solely renders HTML text based on what `actor.currentView.get()` yields.
87
- 3. **Signal-Only Reactivity:** The integration registers manual `Signal.subtle.Watcher` observers that manually trigger DOM reconciliation, illustrating the underlying mechanism abstraction used by framework adapters.
89
+ 1. **Actor Authority:** Intercepting browser `popstate` events or navigation button clicks dispatches a `play.route` event to the actor. The actor processes the request against the current state, ensuring any auth logic is correctly applied.
90
+ 2. **Passive Infrastructure:** The router simply updates `window.history` and the DOM solely renders HTML based on what `actor.currentView` yields. Neither holds business state.
91
+ 3. **Signal-Only Reactivity:** The integration registers `watchSignal` observers that trigger DOM reconciliation, illustrating the underlying mechanism that framework adapters abstract.
88
92
 
89
93
  ## Watcher Lifecycle and Cleanup Contract
90
94
 
91
- Even in the vanilla demo, watcher handling follows the same canonical lifecycle:
95
+ Even in the vanilla demo, watcher handling follows the canonical lifecycle:
92
96
 
93
97
  1. `notify`
94
98
  2. `queueMicrotask`
@@ -96,21 +100,11 @@ Even in the vanilla demo, watcher handling follows the same canonical lifecycle:
96
100
  4. Read actor signals and project DOM state
97
101
  5. Re-arm with `watch()`/`watch(...signals)`
98
102
 
99
- Watcher notifications are one-shot, so re-arm is mandatory. Router/shell teardown must explicitly call cleanup (`disconnect`/`unwatch`) and not rely on GC-only behavior. In vanilla JS, this means retaining the cleanup functions and calling them during hot-module replacement or app unmount.
103
+ Watcher notifications are one-shot, so re-arm is mandatory. Router/shell teardown must explicitly call cleanup (`disconnect`/`unwatch`) and not rely on GC-only behavior. In vanilla TypeScript, this means retaining cleanup functions and calling them on `beforeunload` or during hot-module replacement.
100
104
 
101
105
  ## Adapter Boundaries
102
106
 
103
- `connectRouter` and browser-history wiring (from `@xmachines/play-dom-router`) are passive infrastructure. Actor logic remains authoritative for route validity, and shared synchronization policy stays in `RouterBridgeBase` for framework bridges.
104
-
105
- ## Why Vanilla?
106
-
107
- Vanilla JavaScript is the foundation:
108
-
109
- - **Universal Patterns**: If it works in vanilla, frameworks are just convenience layers
110
- - **No Magic**: Every interaction is explicit - great for learning
111
- - **Performance Baseline**: Shows the minimal overhead of Play Architecture
112
-
113
- This demo proves frameworks aren't required for Play Architecture to work.
107
+ `connectRouter` and browser-history wiring (from `@xmachines/play-dom-router`) are passive infrastructure. Actor logic remains authoritative for route validity, and shared synchronization policy stays in `RouterBridgeBase` for framework bridges. This demo proves frameworks are not required for Play Architecture to work.
114
108
 
115
109
  ## Available Scripts
116
110
 
@@ -126,7 +120,7 @@ These commands are defined in `package.json`:
126
120
 
127
121
  ## Verification
128
122
 
129
- Validate the operational behavior with package-local tests:
123
+ Use these checks to validate README claims against the current demo implementation:
130
124
 
131
125
  ```bash
132
126
  npm run test -w packages/play-dom-router/examples/demo
@@ -137,5 +131,6 @@ Expected result: tests pass, including startup rendering and the full browser au
137
131
 
138
132
  ## Learn More
139
133
 
140
- - **[Play DOM Router package README](../play-dom-router/README.md)** - `createBrowserHistory`, `createRouter`, `connectRouter` APIs
141
- - **[Play Router package README](../play-router/README.md)** - Route extraction and abstract routing infrastructure
134
+ - [Play DOM Router package README](../play-dom-router/README.md)
135
+ - [Play DOM demo README](../../../examples/README.md)
136
+ - [Play Router package README](../play-router/README.md)
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Class: PlayErrorBoundary
4
4
 
5
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:53](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L53)
5
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:53](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L53)
6
6
 
7
7
  React class component error boundary for catching catalog component render errors.
8
8
 
@@ -36,7 +36,7 @@ Per CONS-14: Class component pattern works with all React versions (18 and 19).
36
36
  new PlayErrorBoundary(props): PlayErrorBoundary;
37
37
  ```
38
38
 
39
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L57)
39
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L57)
40
40
 
41
41
  #### Parameters
42
42
 
@@ -75,7 +75,7 @@ React.Component<
75
75
  componentDidCatch(error, info): void;
76
76
  ```
77
77
 
78
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L66)
78
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L66)
79
79
 
80
80
  Catches exceptions generated in descendant components. Unhandled exceptions will cause
81
81
  the entire component tree to unmount.
@@ -375,7 +375,7 @@ React.Component.getSnapshotBeforeUpdate;
375
375
  render(): ReactNode;
376
376
  ```
377
377
 
378
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L70)
378
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L70)
379
379
 
380
380
  #### Returns
381
381
 
@@ -604,7 +604,7 @@ React.Component.UNSAFE_componentWillUpdate;
604
604
  static getDerivedStateFromError(error): PlayErrorBoundaryState;
605
605
  ```
606
606
 
607
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L62)
607
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L62)
608
608
 
609
609
  #### Parameters
610
610
 
@@ -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.26/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.27/packages/play-react/src/useActor.ts#L30)
10
10
 
11
11
  ## Returns
12
12
 
@@ -6,7 +6,7 @@
6
6
  function useSignalEffect(callback): void;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-react/src/useSignalEffect.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/useSignalEffect.ts#L71)
9
+ Defined in: [packages/play-react/src/useSignalEffect.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/useSignalEffect.ts#L71)
10
10
 
11
11
  React hook that subscribes to signal changes and runs effect callback
12
12
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: PlayErrorBoundaryProps
4
4
 
5
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:14](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L14)
5
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:14](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L14)
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:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L18) |
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:16](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L16) |
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:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L20) |
13
+ | <a id="property-children"></a> `children` | `ReactNode` | Child components to render | [packages/play-react/src/PlayErrorBoundary.tsx:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L18) |
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:16](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L16) |
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:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L20) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: PlayErrorBoundaryState
4
4
 
5
- Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L28)
5
+ Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L28)
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:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L30) |
14
- | <a id="property-haserror"></a> `hasError` | `boolean` | [packages/play-react/src/PlayErrorBoundary.tsx:29](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayErrorBoundary.tsx#L29) |
13
+ | <a id="property-error"></a> `error` | `Error` \| `null` | [packages/play-react/src/PlayErrorBoundary.tsx:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L30) |
14
+ | <a id="property-haserror"></a> `hasError` | `boolean` | [packages/play-react/src/PlayErrorBoundary.tsx:29](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayErrorBoundary.tsx#L29) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: PlayRendererProps\<TLogic\>
4
4
 
5
- Defined in: [packages/play-react/src/types.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/types.ts#L33)
5
+ Defined in: [packages/play-react/src/types.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/types.ts#L33)
6
6
 
7
7
  Props for PlayRenderer component
8
8
 
@@ -16,9 +16,9 @@ Props for PlayRenderer component
16
16
 
17
17
  | Property | Type | Description | Defined in |
18
18
  | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
19
- | <a id="property-actions"></a> `actions?` | `object` | Maps json-render action names to XState event type strings. Values are constrained to `EventFromLogic<TLogic>["type"]` — passing a non-existent event type string is a compile error when TLogic is specified. | [packages/play-react/src/types.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/types.ts#L70) |
20
- | <a id="property-actor"></a> `actor` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<`TLogic`, [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Viewable`](../../play-actor/interfaces/Viewable.md) | Actor instance with currentView signal (requires Viewable capability) | [packages/play-react/src/types.ts:35](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/types.ts#L35) |
21
- | <a id="property-fallback"></a> `fallback?` | `ReactNode` | Optional component shown when currentView is null | [packages/play-react/src/types.ts:51](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/types.ts#L51) |
22
- | <a id="property-onerror"></a> `onError?` | (`error`, `info`) => `void` | Optional callback invoked when a catalog component throws during render. Receives the error and React ErrorInfo — use to forward to Sentry, Datadog, etc. | [packages/play-react/src/types.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/types.ts#L63) |
23
- | <a id="property-registry"></a> `registry` | `ComponentRegistry` | ComponentRegistry from defineRegistry() in @json-render/react | [packages/play-react/src/types.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/types.ts#L38) |
24
- | <a id="property-store"></a> `store?` | `StateStore` | Optional external StateStore (e.g. from @json-render/xstate). When provided, PlayRenderer operates in controlled mode — spec.state is ignored and the store is the single source of truth for UI state. When omitted, a fresh @xstate/store atom is created internally per view transition, seeded from spec.state. | [packages/play-react/src/types.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/types.ts#L48) |
19
+ | <a id="property-actions"></a> `actions?` | `object` | Maps json-render action names to XState event type strings. Values are constrained to `EventFromLogic<TLogic>["type"]` — passing a non-existent event type string is a compile error when TLogic is specified. | [packages/play-react/src/types.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/types.ts#L70) |
20
+ | <a id="property-actor"></a> `actor` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<`TLogic`, [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Viewable`](../../play-actor/interfaces/Viewable.md) | Actor instance with currentView signal (requires Viewable capability) | [packages/play-react/src/types.ts:35](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/types.ts#L35) |
21
+ | <a id="property-fallback"></a> `fallback?` | `ReactNode` | Optional component shown when currentView is null | [packages/play-react/src/types.ts:51](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/types.ts#L51) |
22
+ | <a id="property-onerror"></a> `onError?` | (`error`, `info`) => `void` | Optional callback invoked when a catalog component throws during render. Receives the error and React ErrorInfo — use to forward to Sentry, Datadog, etc. | [packages/play-react/src/types.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/types.ts#L63) |
23
+ | <a id="property-registry"></a> `registry` | `ComponentRegistry` | ComponentRegistry from defineRegistry() in @json-render/react | [packages/play-react/src/types.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/types.ts#L38) |
24
+ | <a id="property-store"></a> `store?` | `StateStore` | Optional external StateStore (e.g. from @json-render/xstate). When provided, PlayRenderer operates in controlled mode — spec.state is ignored and the store is the single source of truth for UI state. When omitted, a fresh @xstate/store atom is created internally per view transition, seeded from spec.state. | [packages/play-react/src/types.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/types.ts#L48) |
@@ -6,4 +6,4 @@
6
6
  type PlayActor = AbstractActor<AnyActorLogic>;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-react/src/useActor.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/useActor.ts#L26)
9
+ Defined in: [packages/play-react/src/useActor.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/useActor.ts#L26)
@@ -6,7 +6,7 @@
6
6
  const PlayRenderer: React.FC<PlayRendererProps>;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-react/src/PlayRenderer.tsx:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react/src/PlayRenderer.tsx#L65)
9
+ Defined in: [packages/play-react/src/PlayRenderer.tsx:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react/src/PlayRenderer.tsx#L65)
10
10
 
11
11
  Main renderer component that subscribes to actor signals and renders UI
12
12
  via @json-render/react Renderer.
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Class: ReactRouterBridge
4
4
 
5
- Defined in: [play-react-router/src/react-router-bridge.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react-router/src/react-router-bridge.ts#L28)
5
+ Defined in: [play-react-router/src/react-router-bridge.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react-router/src/react-router-bridge.ts#L28)
6
6
 
7
7
  Abstract base class for all `@xmachines` router adapter bridges.
8
8
 
@@ -25,7 +25,7 @@ new ReactRouterBridge(
25
25
  routeMap): ReactRouterBridge;
26
26
  ```
27
27
 
28
- Defined in: [play-react-router/src/react-router-bridge.ts:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react-router/src/react-router-bridge.ts#L31)
28
+ Defined in: [play-react-router/src/react-router-bridge.ts:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react-router/src/react-router-bridge.ts#L31)
29
29
 
30
30
  #### Parameters
31
31
 
@@ -47,15 +47,15 @@ Defined in: [play-react-router/src/react-router-bridge.ts:31](https://gitlab.com
47
47
 
48
48
  | Property | Modifier | Type | Default value | Description | Inherited from | Defined in |
49
49
  | --------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
50
- | <a id="property-actor"></a> `actor` | `readonly` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | `undefined` | A `Routable` actor exposing `currentRoute` and `send`. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`actor`](../../play-router/classes/RouterBridgeBase.md#property-actor) | [play-router/src/router-bridge-base.ts:99](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L99) |
51
- | <a id="property-hasconnectedonce"></a> `hasConnectedOnce` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`hasConnectedOnce`](../../play-router/classes/RouterBridgeBase.md#property-hasconnectedonce) | [play-router/src/router-bridge-base.ts:87](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L87) |
52
- | <a id="property-isconnected"></a> `isConnected` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isConnected`](../../play-router/classes/RouterBridgeBase.md#property-isconnected) | [play-router/src/router-bridge-base.ts:86](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L86) |
53
- | <a id="property-isprocessingnavigation"></a> `isProcessingNavigation` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isProcessingNavigation`](../../play-router/classes/RouterBridgeBase.md#property-isprocessingnavigation) | [play-router/src/router-bridge-base.ts:89](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L89) |
54
- | <a id="property-lastsyncedpath"></a> `lastSyncedPath` | `protected` | `string` \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`lastSyncedPath`](../../play-router/classes/RouterBridgeBase.md#property-lastsyncedpath) | [play-router/src/router-bridge-base.ts:88](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L88) |
55
- | <a id="property-routemap"></a> `routeMap` | `readonly` | `object` | `undefined` | Bidirectional route map for `stateId ↔ path` resolution. Provide `getStateIdByPath` and `getPathByStateId`. Framework adapters typically wrap the result of `createRouteMap()` or an equivalent. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeMap`](../../play-router/classes/RouterBridgeBase.md#property-routemap) | [play-router/src/router-bridge-base.ts:100](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L100) |
56
- | `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [play-router/src/router-bridge-base.ts:102](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L102) |
57
- | `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [play-router/src/router-bridge-base.ts:101](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L101) |
58
- | <a id="property-routewatcher"></a> `routeWatcher` | `protected` | \| [`RouteWatcherHandle`](../../play-router/interfaces/RouteWatcherHandle.md) \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeWatcher`](../../play-router/classes/RouterBridgeBase.md#property-routewatcher) | [play-router/src/router-bridge-base.ts:90](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L90) |
50
+ | <a id="property-actor"></a> `actor` | `readonly` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | `undefined` | A `Routable` actor exposing `currentRoute` and `send`. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`actor`](../../play-router/classes/RouterBridgeBase.md#property-actor) | [play-router/src/router-bridge-base.ts:99](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L99) |
51
+ | <a id="property-hasconnectedonce"></a> `hasConnectedOnce` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`hasConnectedOnce`](../../play-router/classes/RouterBridgeBase.md#property-hasconnectedonce) | [play-router/src/router-bridge-base.ts:87](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L87) |
52
+ | <a id="property-isconnected"></a> `isConnected` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isConnected`](../../play-router/classes/RouterBridgeBase.md#property-isconnected) | [play-router/src/router-bridge-base.ts:86](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L86) |
53
+ | <a id="property-isprocessingnavigation"></a> `isProcessingNavigation` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isProcessingNavigation`](../../play-router/classes/RouterBridgeBase.md#property-isprocessingnavigation) | [play-router/src/router-bridge-base.ts:89](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L89) |
54
+ | <a id="property-lastsyncedpath"></a> `lastSyncedPath` | `protected` | `string` \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`lastSyncedPath`](../../play-router/classes/RouterBridgeBase.md#property-lastsyncedpath) | [play-router/src/router-bridge-base.ts:88](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L88) |
55
+ | <a id="property-routemap"></a> `routeMap` | `readonly` | `object` | `undefined` | Bidirectional route map for `stateId ↔ path` resolution. Provide `getStateIdByPath` and `getPathByStateId`. Framework adapters typically wrap the result of `createRouteMap()` or an equivalent. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeMap`](../../play-router/classes/RouterBridgeBase.md#property-routemap) | [play-router/src/router-bridge-base.ts:100](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L100) |
56
+ | `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [play-router/src/router-bridge-base.ts:102](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L102) |
57
+ | `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [play-router/src/router-bridge-base.ts:101](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L101) |
58
+ | <a id="property-routewatcher"></a> `routeWatcher` | `protected` | \| [`RouteWatcherHandle`](../../play-router/interfaces/RouteWatcherHandle.md) \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeWatcher`](../../play-router/classes/RouterBridgeBase.md#property-routewatcher) | [play-router/src/router-bridge-base.ts:90](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L90) |
59
59
 
60
60
  ## Methods
61
61
 
@@ -65,7 +65,7 @@ Defined in: [play-react-router/src/react-router-bridge.ts:31](https://gitlab.com
65
65
  connect(): void;
66
66
  ```
67
67
 
68
- Defined in: [play-router/src/router-bridge-base.ts:126](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L126)
68
+ Defined in: [play-router/src/router-bridge-base.ts:126](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L126)
69
69
 
70
70
  Connect the router bridge to the Actor.
71
71
 
@@ -97,7 +97,7 @@ Adapters that need custom initial-sync behavior should override
97
97
  disconnect(): void;
98
98
  ```
99
99
 
100
- Defined in: [play-router/src/router-bridge-base.ts:209](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L209)
100
+ Defined in: [play-router/src/router-bridge-base.ts:209](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L209)
101
101
 
102
102
  Disconnect the router bridge from the Actor.
103
103
 
@@ -119,7 +119,7 @@ Stops signal watching and unregisters framework-specific router listener.
119
119
  protected extractParams(pathname, stateId): Record<string, string>;
120
120
  ```
121
121
 
122
- Defined in: [play-router/src/router-bridge-base.ts:318](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L318)
122
+ Defined in: [play-router/src/router-bridge-base.ts:318](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L318)
123
123
 
124
124
  Extract path parameters from URL using the URLPattern API.
125
125
 
@@ -157,7 +157,7 @@ When URLPattern is absent and the route is parameterized
157
157
  protected extractQuery(search): Record<string, string>;
158
158
  ```
159
159
 
160
- Defined in: [play-router/src/router-bridge-base.ts:355](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L355)
160
+ Defined in: [play-router/src/router-bridge-base.ts:355](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L355)
161
161
 
162
162
  Extract query parameters from URL search string.
163
163
 
@@ -185,7 +185,7 @@ Extracted query parameters or empty object
185
185
  protected getInitialRouterPath(): string | null;
186
186
  ```
187
187
 
188
- Defined in: [play-react-router/src/react-router-bridge.ts:49](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react-router/src/react-router-bridge.ts#L49)
188
+ Defined in: [play-react-router/src/react-router-bridge.ts:49](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react-router/src/react-router-bridge.ts#L49)
189
189
 
190
190
  Return the router's current pathname so connect() can sync the actor to
191
191
  the URL on initial load. router.subscribe() only fires on future navigations
@@ -208,7 +208,7 @@ the page on /about would leave the actor in its default "home" state.
208
208
  protected getInitialRouterSearch(): string | undefined;
209
209
  ```
210
210
 
211
- Defined in: [play-react-router/src/react-router-bridge.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react-router/src/react-router-bridge.ts#L60)
211
+ Defined in: [play-react-router/src/react-router-bridge.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react-router/src/react-router-bridge.ts#L60)
212
212
 
213
213
  Return the initial URL search string for query-param forwarding on `connect()`.
214
214
 
@@ -232,7 +232,7 @@ so `syncActorFromRouter` produces `query: {}` rather than parsing an empty strin
232
232
  protected navigateRouter(path): void;
233
233
  ```
234
234
 
235
- Defined in: [play-react-router/src/react-router-bridge.ts:39](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react-router/src/react-router-bridge.ts#L39)
235
+ Defined in: [play-react-router/src/react-router-bridge.ts:39](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react-router/src/react-router-bridge.ts#L39)
236
236
 
237
237
  Navigate the framework router to the given path.
238
238
 
@@ -261,7 +261,7 @@ Must trigger the framework router's navigation (e.g., router.navigate(path)).
261
261
  protected resolveNavigationPath(route): string | null;
262
262
  ```
263
263
 
264
- Defined in: [play-router/src/router-bridge-base.ts:340](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L340)
264
+ Defined in: [play-router/src/router-bridge-base.ts:340](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L340)
265
265
 
266
266
  Resolve an actor route value to a concrete URL path for navigation.
267
267
 
@@ -300,7 +300,7 @@ Concrete URL path, or `null` if navigation should be skipped
300
300
  protected syncActorFromRouter(pathname, search?): void;
301
301
  ```
302
302
 
303
- Defined in: [play-router/src/router-bridge-base.ts:260](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L260)
303
+ Defined in: [play-router/src/router-bridge-base.ts:260](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L260)
304
304
 
305
305
  Sync actor state when router location changes.
306
306
 
@@ -330,7 +330,7 @@ Prevents circular updates via isProcessingNavigation flag.
330
330
  protected syncRouterFromActor(route): void;
331
331
  ```
332
332
 
333
- Defined in: [play-router/src/router-bridge-base.ts:240](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L240)
333
+ Defined in: [play-router/src/router-bridge-base.ts:240](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/router-bridge-base.ts#L240)
334
334
 
335
335
  Sync router location when actor route signal changes.
336
336
 
@@ -363,7 +363,7 @@ suppressed as circular echoes.
363
363
  protected unwatchRouterChanges(): void;
364
364
  ```
365
365
 
366
- Defined in: [play-react-router/src/react-router-bridge.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react-router/src/react-router-bridge.ts#L70)
366
+ Defined in: [play-react-router/src/react-router-bridge.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react-router/src/react-router-bridge.ts#L70)
367
367
 
368
368
  Stop watching for router location changes.
369
369
 
@@ -385,7 +385,7 @@ Called by disconnect(). Should clean up the framework-specific subscription.
385
385
  protected watchRouterChanges(): void;
386
386
  ```
387
387
 
388
- Defined in: [play-react-router/src/react-router-bridge.ts:64](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react-router/src/react-router-bridge.ts#L64)
388
+ Defined in: [play-react-router/src/react-router-bridge.ts:64](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react-router/src/react-router-bridge.ts#L64)
389
389
 
390
390
  Start watching for router location changes.
391
391
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Class: RouteMap
4
4
 
5
- Defined in: [play-react-router/src/route-map.ts:12](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react-router/src/route-map.ts#L12)
5
+ Defined in: [play-react-router/src/route-map.ts:12](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-react-router/src/route-map.ts#L12)
6
6
 
7
7
  Bidirectional route mapper for React Router.
8
8
 
@@ -20,7 +20,7 @@ Alias for [BaseRouteMap](../../play-dom-router/interfaces/RouteMap.md) from `@xm
20
20
  new RouteMap(mappings, options?): RouteMap;
21
21
  ```
22
22
 
23
- Defined in: [play-router/src/base-route-map.ts:125](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/base-route-map.ts#L125)
23
+ Defined in: [play-router/src/base-route-map.ts:125](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/base-route-map.ts#L125)
24
24
 
25
25
  Build a route map from an array of state ID ↔ path mappings.
26
26
 
@@ -54,7 +54,7 @@ BaseRouteMap.constructor;
54
54
  getPathByStateId(stateId): string | null;
55
55
  ```
56
56
 
57
- Defined in: [play-router/src/base-route-map.ts:209](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/base-route-map.ts#L209)
57
+ Defined in: [play-router/src/base-route-map.ts:209](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/base-route-map.ts#L209)
58
58
 
59
59
  Look up the path pattern registered for a state ID.
60
60
 
@@ -89,7 +89,7 @@ map.getPathByStateId("missing"); // null
89
89
  getStateIdByPath(path): string | null;
90
90
  ```
91
91
 
92
- Defined in: [play-router/src/base-route-map.ts:174](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/base-route-map.ts#L174)
92
+ Defined in: [play-router/src/base-route-map.ts:174](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.27/packages/play-router/src/base-route-map.ts#L174)
93
93
 
94
94
  Resolve a URL path to its mapped state ID.
95
95