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

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 (250) hide show
  1. package/api/@xmachines/play/classes/PlayError.md +10 -4
  2. package/api/@xmachines/play/type-aliases/PlayEvent.md +2 -2
  3. package/api/@xmachines/play-actor/README.md +4 -0
  4. package/api/@xmachines/play-actor/classes/AbstractActor.md +49 -92
  5. package/api/@xmachines/play-actor/functions/typedSpec.md +57 -0
  6. package/api/@xmachines/play-actor/interfaces/PlaySpec.md +9 -18
  7. package/api/@xmachines/play-actor/interfaces/Routable.md +5 -21
  8. package/api/@xmachines/play-actor/interfaces/ViewMetadata.md +6 -6
  9. package/api/@xmachines/play-actor/interfaces/Viewable.md +5 -6
  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/renderSpec.md +1 -1
  13. package/api/@xmachines/play-dom/interfaces/ConnectRendererOptions.md +7 -7
  14. package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +7 -7
  15. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +3 -3
  16. package/api/@xmachines/play-dom/type-aliases/DomComponentRenderer.md +1 -1
  17. package/api/@xmachines/play-dom/type-aliases/DomRegistry.md +1 -1
  18. package/api/@xmachines/play-dom-router/README.md +10 -0
  19. package/api/@xmachines/play-dom-router/functions/connectRouter.md +18 -46
  20. package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +1 -1
  21. package/api/@xmachines/play-dom-router/functions/createRouteMap.md +38 -0
  22. package/api/@xmachines/play-dom-router/functions/createRouter.md +1 -1
  23. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +16 -16
  24. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +16 -16
  25. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +6 -6
  26. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +119 -0
  27. package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +114 -0
  28. package/api/@xmachines/play-dom-router/interfaces/RouteMapLike.md +50 -0
  29. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +27 -0
  30. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +104 -0
  31. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +6 -6
  32. package/api/@xmachines/play-dom-router/type-aliases/RoutableActor.md +9 -0
  33. package/api/@xmachines/play-react/README.md +4 -4
  34. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +31 -5
  35. package/api/@xmachines/play-react/functions/defineRegistry.md +2 -0
  36. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  37. package/api/@xmachines/play-react/functions/useBoundProp.md +2 -0
  38. package/api/@xmachines/play-react/functions/useSignalEffect.md +1 -1
  39. package/api/@xmachines/play-react/functions/useStateBinding.md +2 -0
  40. package/api/@xmachines/play-react/interfaces/ComponentContext.md +2 -0
  41. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +4 -4
  42. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +3 -3
  43. package/api/@xmachines/play-react/interfaces/PlayRendererProps.md +7 -7
  44. package/api/@xmachines/play-react/type-aliases/ComponentFn.md +2 -0
  45. package/api/@xmachines/play-react/type-aliases/PlayActor.md +1 -1
  46. package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
  47. package/api/@xmachines/play-react-router/README.md +5 -1
  48. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +102 -25
  49. package/api/@xmachines/play-react-router/classes/RouteMap.md +17 -33
  50. package/api/@xmachines/play-react-router/functions/PlayRouterProvider.md +8 -1
  51. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +21 -11
  52. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +8 -8
  53. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +7 -7
  54. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +18 -8
  55. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +3 -3
  56. package/api/@xmachines/play-router/README.md +42 -5
  57. package/api/@xmachines/play-router/classes/BaseRouteMap.md +12 -17
  58. package/api/@xmachines/play-router/classes/RouterBridgeBase.md +100 -25
  59. package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +1 -1
  60. package/api/@xmachines/play-router/functions/buildRouteTree.md +1 -1
  61. package/api/@xmachines/play-router/functions/createRouteMap.md +1 -1
  62. package/api/@xmachines/play-router/functions/createRouteMapFromMachine.md +38 -0
  63. package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +45 -0
  64. package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +1 -1
  65. package/api/@xmachines/play-router/functions/extractMachineRoutes.md +1 -1
  66. package/api/@xmachines/play-router/functions/extractQuery.md +1 -1
  67. package/api/@xmachines/play-router/functions/extractRouteParams.md +46 -0
  68. package/api/@xmachines/play-router/functions/findRouteById.md +1 -1
  69. package/api/@xmachines/play-router/functions/findRouteByPath.md +1 -1
  70. package/api/@xmachines/play-router/functions/getNavigableRoutes.md +1 -1
  71. package/api/@xmachines/play-router/functions/getRoutableRoutes.md +1 -1
  72. package/api/@xmachines/play-router/functions/getTransitionReachableRoutes.md +1 -1
  73. package/api/@xmachines/play-router/functions/isRouteReachable.md +1 -1
  74. package/api/@xmachines/play-router/functions/machineToGraph.md +1 -1
  75. package/api/@xmachines/play-router/functions/routeExists.md +1 -1
  76. package/api/@xmachines/play-router/functions/sanitizePathname.md +1 -1
  77. package/api/@xmachines/play-router/functions/validateRouteFormat.md +1 -1
  78. package/api/@xmachines/play-router/functions/validateStateExists.md +1 -1
  79. package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +4 -4
  80. package/api/@xmachines/play-router/interfaces/LocationLike.md +27 -0
  81. package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +3 -3
  82. package/api/@xmachines/play-router/interfaces/MachineNodeData.md +5 -5
  83. package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +8 -8
  84. package/api/@xmachines/play-router/interfaces/RouteInfo.md +8 -8
  85. package/api/@xmachines/play-router/interfaces/RouteMap.md +4 -4
  86. package/api/@xmachines/play-router/interfaces/{BaseRouteMapping.md → RouteMapping.md} +5 -5
  87. package/api/@xmachines/play-router/interfaces/RouteMatch.md +5 -5
  88. package/api/@xmachines/play-router/interfaces/RouteNode.md +12 -12
  89. package/api/@xmachines/play-router/interfaces/RouteObject.md +2 -2
  90. package/api/@xmachines/play-router/interfaces/RouteTree.md +5 -5
  91. package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +6 -6
  92. package/api/@xmachines/play-router/interfaces/RouterBridge.md +3 -3
  93. package/api/@xmachines/play-router/interfaces/WindowLike.md +65 -0
  94. package/api/@xmachines/play-router/type-aliases/MachineGraph.md +1 -1
  95. package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +1 -1
  96. package/api/@xmachines/play-signals/functions/watchSignal.md +1 -1
  97. package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +2 -2
  98. package/api/@xmachines/play-signals/interfaces/SignalComputed.md +2 -2
  99. package/api/@xmachines/play-signals/interfaces/SignalOptions.md +2 -2
  100. package/api/@xmachines/play-signals/interfaces/SignalState.md +3 -3
  101. package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +4 -4
  102. package/api/@xmachines/play-signals/namespaces/Signal/classes/Computed.md +6 -0
  103. package/api/@xmachines/play-signals/namespaces/Signal/classes/State.md +8 -0
  104. package/api/@xmachines/play-signals/namespaces/Signal/interfaces/Options.md +2 -0
  105. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/classes/Watcher.md +10 -0
  106. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/currentComputed.md +2 -0
  107. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSinks.md +2 -0
  108. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSources.md +2 -0
  109. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSinks.md +2 -0
  110. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSources.md +2 -0
  111. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/untrack.md +2 -0
  112. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/unwatched.md +2 -0
  113. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/watched.md +2 -0
  114. package/api/@xmachines/play-signals/namespaces/Signal/variables/isComputed.md +2 -0
  115. package/api/@xmachines/play-signals/namespaces/Signal/variables/isState.md +2 -0
  116. package/api/@xmachines/play-signals/namespaces/Signal/variables/isWatcher.md +2 -0
  117. package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +1 -1
  118. package/api/@xmachines/play-solid/README.md +4 -4
  119. package/api/@xmachines/play-solid/functions/defineRegistry.md +2 -0
  120. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  121. package/api/@xmachines/play-solid/functions/useStateBinding.md +2 -0
  122. package/api/@xmachines/play-solid/interfaces/ComponentContext.md +2 -0
  123. package/api/@xmachines/play-solid/interfaces/PlayRendererProps.md +7 -7
  124. package/api/@xmachines/play-solid/type-aliases/ComponentFn.md +2 -0
  125. package/api/@xmachines/play-solid/type-aliases/PlayActor.md +1 -1
  126. package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
  127. package/api/@xmachines/play-solid-router/README.md +2 -2
  128. package/api/@xmachines/play-solid-router/classes/RouteMap.md +13 -26
  129. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +121 -46
  130. package/api/@xmachines/play-solid-router/functions/PlayRouterProvider.md +1 -1
  131. package/api/@xmachines/play-solid-router/functions/createRouteMap.md +15 -9
  132. package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +47 -92
  133. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +8 -8
  134. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +5 -5
  135. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +19 -6
  136. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +3 -3
  137. package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +1 -1
  138. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +21 -18
  139. package/api/@xmachines/play-svelte/README.md +119 -0
  140. package/api/@xmachines/play-svelte/functions/defineRegistry.md +54 -0
  141. package/api/@xmachines/play-svelte/interfaces/BaseComponentProps.md +29 -0
  142. package/api/@xmachines/play-svelte/interfaces/ComponentContext.md +29 -0
  143. package/api/@xmachines/play-svelte/interfaces/PlayRendererProps.md +22 -0
  144. package/api/@xmachines/play-svelte/type-aliases/ComponentFn.md +18 -0
  145. package/api/@xmachines/play-svelte/type-aliases/PlayRenderer.md +9 -0
  146. package/api/@xmachines/play-svelte/variables/PlayRenderer.md +9 -0
  147. package/api/@xmachines/play-svelte/variables/getBoundProp.md +7 -0
  148. package/api/@xmachines/play-svelte-spa-router/README.md +54 -0
  149. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +137 -0
  150. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +32 -0
  151. package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +38 -0
  152. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +17 -0
  153. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +119 -0
  154. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +27 -0
  155. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +104 -0
  156. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +65 -0
  157. package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +9 -0
  158. package/api/@xmachines/play-svelte-spa-router-demo/README.md +23 -0
  159. package/api/@xmachines/play-sveltekit-router/README.md +54 -0
  160. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +137 -0
  161. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +32 -0
  162. package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +38 -0
  163. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +13 -0
  164. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +27 -0
  165. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +119 -0
  166. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +27 -0
  167. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +104 -0
  168. package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +9 -0
  169. package/api/@xmachines/play-sveltekit-router-demo/README.md +23 -0
  170. package/api/@xmachines/play-tanstack-react-router/README.md +5 -3
  171. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +17 -33
  172. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +93 -25
  173. package/api/@xmachines/play-tanstack-react-router/functions/PlayRouterProvider.md +1 -1
  174. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +1 -1
  175. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +21 -11
  176. package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +1 -1
  177. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +8 -8
  178. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +5 -5
  179. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +18 -8
  180. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +3 -3
  181. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +3 -3
  182. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  183. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +6 -26
  184. package/api/@xmachines/play-tanstack-solid-router/README.md +8 -8
  185. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +13 -26
  186. package/api/@xmachines/play-tanstack-solid-router/classes/SolidRouterBridge.md +101 -36
  187. package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +1 -1
  188. package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +15 -9
  189. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +8 -8
  190. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +5 -5
  191. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +13 -9
  192. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +3 -3
  193. package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +1 -1
  194. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  195. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +23 -24
  196. package/api/@xmachines/play-vue/README.md +4 -4
  197. package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
  198. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  199. package/api/@xmachines/play-vue/functions/useStateBinding.md +2 -0
  200. package/api/@xmachines/play-vue/interfaces/ComponentContext.md +2 -0
  201. package/api/@xmachines/play-vue/interfaces/PlayRendererProps.md +5 -5
  202. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
  203. package/api/@xmachines/play-vue/type-aliases/ComponentFn.md +2 -0
  204. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
  205. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
  206. package/api/@xmachines/play-vue/type-aliases/PlayActor.md +1 -1
  207. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  208. package/api/@xmachines/play-vue-router/README.md +2 -2
  209. package/api/@xmachines/play-vue-router/classes/RouteMap.md +18 -108
  210. package/api/@xmachines/play-vue-router/classes/VueBaseRouteMap.md +44 -104
  211. package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +127 -62
  212. package/api/@xmachines/play-vue-router/functions/createRouteMap.md +1 -1
  213. package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +8 -8
  214. package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +19 -7
  215. package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +3 -3
  216. package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +1 -1
  217. package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +1 -1
  218. package/api/@xmachines/play-xstate/README.md +15 -15
  219. package/api/@xmachines/play-xstate/classes/PlayerActor.md +46 -30
  220. package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +20 -15
  221. package/api/@xmachines/play-xstate/functions/composeGuards.md +1 -1
  222. package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +1 -1
  223. package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +1 -1
  224. package/api/@xmachines/play-xstate/functions/definePlayer.md +1 -1
  225. package/api/@xmachines/play-xstate/functions/deriveRoute.md +1 -1
  226. package/api/@xmachines/play-xstate/functions/eventMatches.md +1 -1
  227. package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +2 -2
  228. package/api/@xmachines/play-xstate/functions/hasContext.md +1 -1
  229. package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +1 -1
  230. package/api/@xmachines/play-xstate/functions/negateGuard.md +1 -1
  231. package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +3 -3
  232. package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +2 -2
  233. package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +6 -6
  234. package/api/@xmachines/play-xstate/interfaces/RouteContext.md +14 -12
  235. package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +1 -1
  236. package/api/@xmachines/play-xstate/type-aliases/Guard.md +1 -1
  237. package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +1 -1
  238. package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +1 -1
  239. package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +4 -4
  240. package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +4 -4
  241. package/api/@xmachines/shared/functions/defineXmVitestConfig.md +2 -2
  242. package/api/@xmachines/shared/functions/xmAliases.md +1 -1
  243. package/api/README.md +9 -4
  244. package/api/llms.txt +6 -3
  245. package/examples/README.md +5 -0
  246. package/examples/multi-router-integration.md +34 -6
  247. package/examples/routing-patterns.md +6 -4
  248. package/package.json +2 -2
  249. package/api/@xmachines/play-tanstack-react-router/functions/extractParams.md +0 -38
  250. package/api/@xmachines/play-tanstack-react-router/functions/extractQueryParams.md +0 -33
@@ -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.24/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.26/packages/play-react/src/useSignalEffect.ts#L71)
10
10
 
11
11
  React hook that subscribes to signal changes and runs effect callback
12
12
 
@@ -6,6 +6,8 @@
6
6
  function useStateBinding<T>(path): [T | undefined, (value) => void];
7
7
  ```
8
8
 
9
+ Defined in: `@json-render/react`
10
+
9
11
  Hook to get and set a value from the state model (like useState).
10
12
 
11
13
  ## Type Parameters
@@ -2,6 +2,8 @@
2
2
 
3
3
  # Interface: ComponentContext\<C, K\>
4
4
 
5
+ Defined in: `@json-render/react`
6
+
5
7
  Context passed to component render functions
6
8
 
7
9
  ## Example
@@ -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.24/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.26/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.24/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.24/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.24/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.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) |
@@ -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.24/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.26/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.24/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.24/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.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) |
@@ -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.24/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.26/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.24/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.24/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.24/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.24/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.24/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.24/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.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) |
@@ -6,6 +6,8 @@
6
6
  type ComponentFn<C, K> = (ctx) => ReactNode;
7
7
  ```
8
8
 
9
+ Defined in: `@json-render/react`
10
+
9
11
  Component render function type for React
10
12
 
11
13
  ## Type Parameters
@@ -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.24/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.26/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.24/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.26/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.
@@ -83,7 +83,7 @@ Responsibilities:
83
83
 
84
84
  - Watch React Router location updates and sync actor via `play.route`
85
85
  - Observe actor route changes and navigate router when state changes
86
- - Handle initial URL sync on cold load/deep links
86
+ - Handle initial URL sync on cold load/deep links (pathname **and** query string are forwarded)
87
87
 
88
88
  ### `PlayRouterProvider`
89
89
 
@@ -120,6 +120,10 @@ function createRouteMapFromTree(routeTree: RouteTree): RouteMap
120
120
 
121
121
  `getStateIdByPath` returns `null` (not `undefined`) for unmatched paths.
122
122
 
123
+ `createRouteMapFromTree` uses `node.fullPath` (the fully resolved absolute path) for all
124
+ route entries. This is correct for both flat routes (e.g. `"/login"`) and nested relative
125
+ routes (e.g. `meta.route: "overview"` under `"/dashboard"` resolves to `"/dashboard/overview"`).
126
+
123
127
  Construct directly when you have static mappings:
124
128
 
125
129
  ```ts
@@ -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.24/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.26/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.24/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.26/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:102](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L102) |
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:90](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L90) |
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:89](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L89) |
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:92](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L92) |
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:91](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L91) |
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:103](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L103) |
56
- | `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [play-router/src/router-bridge-base.ts:105](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L105) |
57
- | `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [play-router/src/router-bridge-base.ts:104](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L104) |
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:93](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L93) |
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) |
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:129](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L129)
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)
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:197](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L197)
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)
101
101
 
102
102
  Disconnect the router bridge from the Actor.
103
103
 
@@ -119,14 +119,14 @@ 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:300](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L300)
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)
123
123
 
124
124
  Extract path parameters from URL using the URLPattern API.
125
125
 
126
126
  Accesses `globalThis.URLPattern` at runtime — no polyfill is imported by this
127
- library. If `URLPattern` is unavailable (Node.js < 24, older browsers without a
128
- polyfill), this method returns `{}` silently (graceful degradation routing still
129
- works, params will be empty).
127
+ library. If `URLPattern` is unavailable and the matched route has parameterized
128
+ segments, a `URLPatternUnavailableError` is throwncallers must provide a polyfill
129
+ for environments without native URLPattern support (Node.js < 24, older browsers).
130
130
 
131
131
  #### Parameters
132
132
 
@@ -139,7 +139,11 @@ works, params will be empty).
139
139
 
140
140
  `Record`\<`string`, `string`\>
141
141
 
142
- Extracted path parameters, or empty object if URLPattern is unavailable or no match
142
+ Extracted path parameters, or empty object if no match
143
+
144
+ #### Throws
145
+
146
+ When URLPattern is absent and the route is parameterized
143
147
 
144
148
  #### Inherited from
145
149
 
@@ -153,7 +157,7 @@ Extracted path parameters, or empty object if URLPattern is unavailable or no ma
153
157
  protected extractQuery(search): Record<string, string>;
154
158
  ```
155
159
 
156
- Defined in: [play-router/src/router-bridge-base.ts:321](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L321)
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)
157
161
 
158
162
  Extract query parameters from URL search string.
159
163
 
@@ -181,7 +185,7 @@ Extracted query parameters or empty object
181
185
  protected getInitialRouterPath(): string | null;
182
186
  ```
183
187
 
184
- Defined in: [play-react-router/src/react-router-bridge.ts:49](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/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.26/packages/play-react-router/src/react-router-bridge.ts#L49)
185
189
 
186
190
  Return the router's current pathname so connect() can sync the actor to
187
191
  the URL on initial load. router.subscribe() only fires on future navigations
@@ -198,13 +202,37 @@ the page on /about would leave the actor in its default "home" state.
198
202
 
199
203
  ---
200
204
 
205
+ ### getInitialRouterSearch()
206
+
207
+ ```ts
208
+ protected getInitialRouterSearch(): string | undefined;
209
+ ```
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)
212
+
213
+ Return the initial URL search string for query-param forwarding on `connect()`.
214
+
215
+ Reads from `router.state.location.search` — the same source used by
216
+ `getInitialRouterPath()`. An empty string (no query params) returns `undefined`
217
+ so `syncActorFromRouter` produces `query: {}` rather than parsing an empty string.
218
+
219
+ #### Returns
220
+
221
+ `string` \| `undefined`
222
+
223
+ #### Overrides
224
+
225
+ [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`getInitialRouterSearch`](../../play-router/classes/RouterBridgeBase.md#getinitialroutersearch)
226
+
227
+ ---
228
+
201
229
  ### navigateRouter()
202
230
 
203
231
  ```ts
204
232
  protected navigateRouter(path): void;
205
233
  ```
206
234
 
207
- Defined in: [play-react-router/src/react-router-bridge.ts:39](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/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.26/packages/play-react-router/src/react-router-bridge.ts#L39)
208
236
 
209
237
  Navigate the framework router to the given path.
210
238
 
@@ -227,13 +255,52 @@ Must trigger the framework router's navigation (e.g., router.navigate(path)).
227
255
 
228
256
  ---
229
257
 
258
+ ### resolveNavigationPath()
259
+
260
+ ```ts
261
+ protected resolveNavigationPath(route): string | null;
262
+ ```
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)
265
+
266
+ Resolve an actor route value to a concrete URL path for navigation.
267
+
268
+ Bridges that receive raw `actor.currentRoute` values in `navigateRouter`
269
+ can call this to normalize stateIds (with or without `#` prefix) to paths.
270
+ Returns `null` when navigation is not possible:
271
+
272
+ - unknown stateId with no route map entry
273
+ - parameterized pattern (e.g. `/profile/:id`) — no concrete values available
274
+ - non-path string that isn't a known stateId
275
+
276
+ Route maps may store stateIds with or without the `#` prefix; both forms
277
+ are tried automatically.
278
+
279
+ #### Parameters
280
+
281
+ | Parameter | Type | Description |
282
+ | --------- | -------- | -------------------------------------------------------------- |
283
+ | `route` | `string` | Raw actor route value (stateId, `#`-stateId, or concrete path) |
284
+
285
+ #### Returns
286
+
287
+ `string` \| `null`
288
+
289
+ Concrete URL path, or `null` if navigation should be skipped
290
+
291
+ #### Inherited from
292
+
293
+ [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`resolveNavigationPath`](../../play-router/classes/RouterBridgeBase.md#resolvenavigationpath)
294
+
295
+ ---
296
+
230
297
  ### syncActorFromRouter()
231
298
 
232
299
  ```ts
233
300
  protected syncActorFromRouter(pathname, search?): void;
234
301
  ```
235
302
 
236
- Defined in: [play-router/src/router-bridge-base.ts:248](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L248)
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)
237
304
 
238
305
  Sync actor state when router location changes.
239
306
 
@@ -263,7 +330,7 @@ Prevents circular updates via isProcessingNavigation flag.
263
330
  protected syncRouterFromActor(route): void;
264
331
  ```
265
332
 
266
- Defined in: [play-router/src/router-bridge-base.ts:228](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/router-bridge-base.ts#L228)
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)
267
334
 
268
335
  Sync router location when actor route signal changes.
269
336
 
@@ -296,7 +363,7 @@ suppressed as circular echoes.
296
363
  protected unwatchRouterChanges(): void;
297
364
  ```
298
365
 
299
- Defined in: [play-react-router/src/react-router-bridge.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-react-router/src/react-router-bridge.ts#L59)
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)
300
367
 
301
368
  Stop watching for router location changes.
302
369
 
@@ -318,13 +385,23 @@ Called by disconnect(). Should clean up the framework-specific subscription.
318
385
  protected watchRouterChanges(): void;
319
386
  ```
320
387
 
321
- Defined in: [play-react-router/src/react-router-bridge.ts:53](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-react-router/src/react-router-bridge.ts#L53)
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)
322
389
 
323
390
  Start watching for router location changes.
324
391
 
325
392
  Called by connect(). Should set up the framework-specific subscription
326
393
  for location changes and call syncActorFromRouter() on each change.
327
394
 
395
+ **Implementations that call `syncActorFromRouter`** get `sanitizePathname`
396
+ applied automatically — no extra work needed.
397
+
398
+ **Implementations that bypass `syncActorFromRouter`** (e.g. `VueRouterBridge`,
399
+ which builds the `play.route` event directly from `afterEach` params) MUST
400
+ apply `sanitizePathname(path)` manually before processing the path. Skipping
401
+ this allows oversized or malformed paths through without the length/content
402
+ guards that protect the route-map lookup. Import `sanitizePathname` from
403
+ `@xmachines/play-router`.
404
+
328
405
  #### Returns
329
406
 
330
407
  `void`
@@ -2,45 +2,25 @@
2
2
 
3
3
  # Class: RouteMap
4
4
 
5
- Defined in: [play-react-router/src/route-map.ts:54](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-react-router/src/route-map.ts#L54)
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)
6
6
 
7
7
  Bidirectional route mapper for React Router.
8
8
 
9
- Extends [BaseRouteMap](../../play-router/classes/BaseRouteMap.md) all matching logic lives there.
10
- This class exists to provide a React Router-specific type name and to allow
11
- future adapter-specific extensions without breaking the shared base.
12
-
13
- **Inherited API:**
14
-
15
- - `getStateIdByPath(path): string | null` — path → state ID
16
- - `getPathByStateId(stateId): string | null` — state ID → path pattern
17
-
18
- ## Example
19
-
20
- ```typescript
21
- const routeMap = new RouteMap([
22
- { stateId: "home", path: "/" },
23
- { stateId: "profile", path: "/profile/:userId" },
24
- { stateId: "settings", path: "/settings/:section?" },
25
- ]);
26
-
27
- routeMap.getStateIdByPath("/profile/123"); // "profile"
28
- routeMap.getPathByStateId("home"); // "/"
29
- ```
9
+ Alias for [BaseRouteMap](../../play-dom-router/interfaces/RouteMap.md) from `@xmachines/play-router`.
30
10
 
31
11
  ## Extends
32
12
 
33
- - [`BaseRouteMap`](../../play-router/classes/BaseRouteMap.md)
13
+ - [`RouteMap`](../../play-dom-router/interfaces/RouteMap.md)
34
14
 
35
15
  ## Constructors
36
16
 
37
17
  ### Constructor
38
18
 
39
19
  ```ts
40
- new RouteMap(mappings): RouteMap;
20
+ new RouteMap(mappings, options?): RouteMap;
41
21
  ```
42
22
 
43
- Defined in: [play-router/src/base-route-map.ts:118](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/base-route-map.ts#L118)
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)
44
24
 
45
25
  Build a route map from an array of state ID ↔ path mappings.
46
26
 
@@ -50,9 +30,11 @@ buckets for efficient candidate selection.
50
30
 
51
31
  #### Parameters
52
32
 
53
- | Parameter | Type | Description |
54
- | ---------- | ------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- |
55
- | `mappings` | [`BaseRouteMapping`](../../play-router/interfaces/BaseRouteMapping.md)[] | Array of `{ stateId, path }` entries. Order determines priority when multiple patterns could match the same path. |
33
+ | Parameter | Type | Description |
34
+ | -------------------- | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
35
+ | `mappings` | [`RouteMapping`](../interfaces/RouteMapping.md)[] | Array of `{ stateId, path }` entries. Order determines priority when multiple patterns could match the same path. |
36
+ | `options` | \{ `cacheSize?`: `number`; \} | Optional configuration. `options.cacheSize`: Maximum number of resolved parameterized path lookups to cache. Defaults to `500`. Increase for applications with many unique parameterized URL values (e.g. user profile pages with thousands of distinct IDs). After eviction the path falls back to the O(k) bucket pattern scan — correct but slower. Minimum effective value is `1` (QuickLRU constraint). |
37
+ | `options.cacheSize?` | `number` | - |
56
38
 
57
39
  #### Returns
58
40
 
@@ -60,7 +42,9 @@ buckets for efficient candidate selection.
60
42
 
61
43
  #### Inherited from
62
44
 
63
- [`BaseRouteMap`](../../play-router/classes/BaseRouteMap.md).[`constructor`](../../play-router/classes/BaseRouteMap.md#constructor)
45
+ ```ts
46
+ BaseRouteMap.constructor;
47
+ ```
64
48
 
65
49
  ## Methods
66
50
 
@@ -70,7 +54,7 @@ buckets for efficient candidate selection.
70
54
  getPathByStateId(stateId): string | null;
71
55
  ```
72
56
 
73
- Defined in: [play-router/src/base-route-map.ts:202](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/base-route-map.ts#L202)
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)
74
58
 
75
59
  Look up the path pattern registered for a state ID.
76
60
 
@@ -95,7 +79,7 @@ map.getPathByStateId("missing"); // null
95
79
 
96
80
  #### Inherited from
97
81
 
98
- [`BaseRouteMap`](../../play-router/classes/BaseRouteMap.md).[`getPathByStateId`](../../play-router/classes/BaseRouteMap.md#getpathbystateid)
82
+ [`RouteMap`](../../play-dom-router/interfaces/RouteMap.md).[`getPathByStateId`](../../play-dom-router/interfaces/RouteMap.md#getpathbystateid)
99
83
 
100
84
  ---
101
85
 
@@ -105,7 +89,7 @@ map.getPathByStateId("missing"); // null
105
89
  getStateIdByPath(path): string | null;
106
90
  ```
107
91
 
108
- Defined in: [play-router/src/base-route-map.ts:167](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-router/src/base-route-map.ts#L167)
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)
109
93
 
110
94
  Resolve a URL path to its mapped state ID.
111
95
 
@@ -134,4 +118,4 @@ map.getStateIdByPath("/unknown"); // null
134
118
 
135
119
  #### Inherited from
136
120
 
137
- [`BaseRouteMap`](../../play-router/classes/BaseRouteMap.md).[`getStateIdByPath`](../../play-router/classes/BaseRouteMap.md#getstateidbypath)
121
+ [`RouteMap`](../../play-dom-router/interfaces/RouteMap.md).[`getStateIdByPath`](../../play-dom-router/interfaces/RouteMap.md#getstateidbypath)
@@ -6,7 +6,14 @@
6
6
  function PlayRouterProvider<TActor>(__namedParameters): Element;
7
7
  ```
8
8
 
9
- Defined in: [play-react-router/src/play-router-provider.tsx:21](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.24/packages/play-react-router/src/play-router-provider.tsx#L21)
9
+ Defined in: [play-react-router/src/play-router-provider.tsx:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-react-router/src/play-router-provider.tsx#L47)
10
+
11
+ Connects a `PlayerActor` to React Router, keeping actor state and browser URL
12
+ in sync bidirectionally.
13
+
14
+ The bridge is created once on mount and torn down on unmount. It is also
15
+ rebuilt if `actor`, `router`, or `routeMap` change identity — so all three
16
+ props must be **stable references** (created outside JSX or memoized).
10
17
 
11
18
  ## Type Parameters
12
19