@xmachines/docs 1.0.0-beta.25 → 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 (246) 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 -19
  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 +3 -3
  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 +28 -0
  140. package/api/@xmachines/play-svelte/functions/defineRegistry.md +2 -0
  141. package/api/@xmachines/play-svelte/interfaces/BaseComponentProps.md +2 -0
  142. package/api/@xmachines/play-svelte/interfaces/ComponentContext.md +2 -0
  143. package/api/@xmachines/play-svelte/interfaces/PlayRendererProps.md +9 -9
  144. package/api/@xmachines/play-svelte/type-aliases/ComponentFn.md +2 -0
  145. package/api/@xmachines/play-svelte/type-aliases/PlayRenderer.md +2 -0
  146. package/api/@xmachines/play-svelte/variables/PlayRenderer.md +2 -0
  147. package/api/@xmachines/play-svelte-spa-router/README.md +1 -0
  148. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +13 -26
  149. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +14 -1
  150. package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +23 -4
  151. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +6 -5
  152. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +10 -10
  153. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +20 -5
  154. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +3 -3
  155. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +65 -0
  156. package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +1 -1
  157. package/api/@xmachines/play-sveltekit-router/README.md +2 -1
  158. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +46 -24
  159. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +14 -1
  160. package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +23 -4
  161. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +6 -5
  162. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +27 -0
  163. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +10 -10
  164. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +20 -5
  165. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +3 -3
  166. package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +1 -1
  167. package/api/@xmachines/play-tanstack-react-router/README.md +5 -3
  168. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +17 -33
  169. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +93 -25
  170. package/api/@xmachines/play-tanstack-react-router/functions/PlayRouterProvider.md +1 -1
  171. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +1 -1
  172. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +21 -11
  173. package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +1 -1
  174. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +8 -8
  175. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +5 -5
  176. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +18 -8
  177. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +3 -3
  178. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +3 -3
  179. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  180. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +6 -26
  181. package/api/@xmachines/play-tanstack-solid-router/README.md +8 -8
  182. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +13 -26
  183. package/api/@xmachines/play-tanstack-solid-router/classes/SolidRouterBridge.md +101 -36
  184. package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +1 -1
  185. package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +15 -9
  186. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +8 -8
  187. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +5 -5
  188. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +13 -9
  189. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +3 -3
  190. package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +1 -1
  191. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  192. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +23 -24
  193. package/api/@xmachines/play-vue/README.md +4 -4
  194. package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
  195. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  196. package/api/@xmachines/play-vue/functions/useStateBinding.md +2 -0
  197. package/api/@xmachines/play-vue/interfaces/ComponentContext.md +2 -0
  198. package/api/@xmachines/play-vue/interfaces/PlayRendererProps.md +5 -5
  199. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
  200. package/api/@xmachines/play-vue/type-aliases/ComponentFn.md +2 -0
  201. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
  202. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
  203. package/api/@xmachines/play-vue/type-aliases/PlayActor.md +1 -1
  204. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  205. package/api/@xmachines/play-vue-router/README.md +2 -2
  206. package/api/@xmachines/play-vue-router/classes/RouteMap.md +18 -108
  207. package/api/@xmachines/play-vue-router/classes/VueBaseRouteMap.md +44 -104
  208. package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +127 -62
  209. package/api/@xmachines/play-vue-router/functions/createRouteMap.md +1 -1
  210. package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +8 -8
  211. package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +19 -7
  212. package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +3 -3
  213. package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +1 -1
  214. package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +1 -1
  215. package/api/@xmachines/play-xstate/README.md +15 -15
  216. package/api/@xmachines/play-xstate/classes/PlayerActor.md +46 -30
  217. package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +20 -15
  218. package/api/@xmachines/play-xstate/functions/composeGuards.md +1 -1
  219. package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +1 -1
  220. package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +1 -1
  221. package/api/@xmachines/play-xstate/functions/definePlayer.md +1 -1
  222. package/api/@xmachines/play-xstate/functions/deriveRoute.md +1 -1
  223. package/api/@xmachines/play-xstate/functions/eventMatches.md +1 -1
  224. package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +2 -2
  225. package/api/@xmachines/play-xstate/functions/hasContext.md +1 -1
  226. package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +1 -1
  227. package/api/@xmachines/play-xstate/functions/negateGuard.md +1 -1
  228. package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +3 -3
  229. package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +2 -2
  230. package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +6 -6
  231. package/api/@xmachines/play-xstate/interfaces/RouteContext.md +14 -12
  232. package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +1 -1
  233. package/api/@xmachines/play-xstate/type-aliases/Guard.md +1 -1
  234. package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +1 -1
  235. package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +1 -1
  236. package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +4 -4
  237. package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +4 -4
  238. package/api/@xmachines/shared/functions/defineXmVitestConfig.md +2 -2
  239. package/api/@xmachines/shared/functions/xmAliases.md +1 -1
  240. package/api/README.md +4 -4
  241. package/api/llms.txt +3 -3
  242. package/examples/README.md +5 -0
  243. package/examples/routing-patterns.md +6 -4
  244. package/package.json +2 -2
  245. package/api/@xmachines/play-tanstack-react-router/functions/extractParams.md +0 -38
  246. package/api/@xmachines/play-tanstack-react-router/functions/extractQueryParams.md +0 -33
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Class: SolidRouterBridge
4
4
 
5
- Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-solid-router/src/solid-router-bridge.ts#L47)
5
+ Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L55)
6
6
 
7
7
  SolidJS Router integration bridge extending RouterBridgeBase
8
8
 
@@ -10,6 +10,10 @@ Implements RouterBridge protocol for SolidJS Router using Solid's reactive
10
10
  primitives. The actor→router direction uses TC39 Signal watcher (from base class).
11
11
  The router→actor direction uses Solid's createEffect for native reactivity.
12
12
 
13
+ Path parameters are extracted from Solid's `useParams()` reactive proxy rather than
14
+ re-parsing the URL with URLPattern. This means parameterized routes work without the
15
+ URLPattern polyfill — Solid's router has already extracted the values.
16
+
13
17
  ## Extends
14
18
 
15
19
  - [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md)
@@ -22,12 +26,12 @@ The router→actor direction uses Solid's createEffect for native reactivity.
22
26
  new SolidRouterBridge(
23
27
  solidNavigate,
24
28
  location,
25
- _params,
29
+ params,
26
30
  actor,
27
31
  routeMap): SolidRouterBridge;
28
32
  ```
29
33
 
30
- Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-solid-router/src/solid-router-bridge.ts#L61)
34
+ Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:76](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L76)
31
35
 
32
36
  Create a SolidJS Router bridge
33
37
 
@@ -35,15 +39,13 @@ Create a SolidJS Router bridge
35
39
 
36
40
  #### Parameters
37
41
 
38
- | Parameter | Type | Description |
39
- | ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- |
40
- | `solidNavigate` | (`path`, ...`args`) => `unknown` | Result of useNavigate() hook |
41
- | `location` | \{ `pathname`: `string`; `search`: `string`; \} | Result of useLocation() hook |
42
- | `location.pathname` | `string` | - |
43
- | `location.search` | `string` | - |
44
- | `_params` | `Record`\<`string`, `string` \| `undefined`\> | Result of useParams() hook |
45
- | `actor` | [`AbstractActor`](../interfaces/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | XMachines actor instance |
46
- | `routeMap` | [`RouteMap`](RouteMap.md) | Bidirectional state ID ↔ path mapping |
42
+ | Parameter | Type | Description |
43
+ | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
44
+ | `solidNavigate` | `Navigator` | Result of useNavigate() hook |
45
+ | `location` | [`LocationLike`](../../play-router/interfaces/LocationLike.md) | Result of useLocation() hook |
46
+ | `params` | `Params` | Result of useParams() hook — used directly for path parameter extraction, avoiding the URLPattern polyfill requirement for parameterized routes |
47
+ | `actor` | [`AbstractActor`](../interfaces/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | XMachines actor instance |
48
+ | `routeMap` | [`RouteMap`](RouteMap.md) | Bidirectional state ID path mapping |
47
49
 
48
50
  #### Returns
49
51
 
@@ -57,15 +59,15 @@ Create a SolidJS Router bridge
57
59
 
58
60
  | Property | Modifier | Type | Default value | Description | Inherited from | Defined in |
59
61
  | --------------------------------------------------------------------- | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
60
- | <a id="property-actor"></a> `actor` | `readonly` | [`AbstractActor`](../interfaces/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) | [packages/play-router/src/router-bridge-base.ts:102](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L102) |
61
- | <a id="property-hasconnectedonce"></a> `hasConnectedOnce` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`hasConnectedOnce`](../../play-router/classes/RouterBridgeBase.md#property-hasconnectedonce) | [packages/play-router/src/router-bridge-base.ts:90](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L90) |
62
- | <a id="property-isconnected"></a> `isConnected` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isConnected`](../../play-router/classes/RouterBridgeBase.md#property-isconnected) | [packages/play-router/src/router-bridge-base.ts:89](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L89) |
63
- | <a id="property-isprocessingnavigation"></a> `isProcessingNavigation` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isProcessingNavigation`](../../play-router/classes/RouterBridgeBase.md#property-isprocessingnavigation) | [packages/play-router/src/router-bridge-base.ts:92](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L92) |
64
- | <a id="property-lastsyncedpath"></a> `lastSyncedPath` | `protected` | `string` \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`lastSyncedPath`](../../play-router/classes/RouterBridgeBase.md#property-lastsyncedpath) | [packages/play-router/src/router-bridge-base.ts:91](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L91) |
65
- | <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) | [packages/play-router/src/router-bridge-base.ts:103](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L103) |
66
- | `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [packages/play-router/src/router-bridge-base.ts:105](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L105) |
67
- | `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [packages/play-router/src/router-bridge-base.ts:104](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L104) |
68
- | <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) | [packages/play-router/src/router-bridge-base.ts:93](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L93) |
62
+ | <a id="property-actor"></a> `actor` | `readonly` | [`AbstractActor`](../interfaces/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) | [packages/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) |
63
+ | <a id="property-hasconnectedonce"></a> `hasConnectedOnce` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`hasConnectedOnce`](../../play-router/classes/RouterBridgeBase.md#property-hasconnectedonce) | [packages/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) |
64
+ | <a id="property-isconnected"></a> `isConnected` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isConnected`](../../play-router/classes/RouterBridgeBase.md#property-isconnected) | [packages/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) |
65
+ | <a id="property-isprocessingnavigation"></a> `isProcessingNavigation` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isProcessingNavigation`](../../play-router/classes/RouterBridgeBase.md#property-isprocessingnavigation) | [packages/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) |
66
+ | <a id="property-lastsyncedpath"></a> `lastSyncedPath` | `protected` | `string` \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`lastSyncedPath`](../../play-router/classes/RouterBridgeBase.md#property-lastsyncedpath) | [packages/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) |
67
+ | <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) | [packages/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) |
68
+ | `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [packages/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) |
69
+ | `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [packages/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) |
70
+ | <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) | [packages/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) |
69
71
 
70
72
  ## Methods
71
73
 
@@ -75,7 +77,7 @@ Create a SolidJS Router bridge
75
77
  connect(): void;
76
78
  ```
77
79
 
78
- Defined in: [packages/play-router/src/router-bridge-base.ts:129](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L129)
80
+ Defined in: [packages/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)
79
81
 
80
82
  Connect the router bridge to the Actor.
81
83
 
@@ -107,7 +109,7 @@ Adapters that need custom initial-sync behavior should override
107
109
  disconnect(): void;
108
110
  ```
109
111
 
110
- Defined in: [packages/play-router/src/router-bridge-base.ts:197](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L197)
112
+ Defined in: [packages/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)
111
113
 
112
114
  Disconnect the router bridge from the Actor.
113
115
 
@@ -129,7 +131,7 @@ Stops signal watching and unregisters framework-specific router listener.
129
131
  dispose(): void;
130
132
  ```
131
133
 
132
- Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:127](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-solid-router/src/solid-router-bridge.ts#L127)
134
+ Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:188](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L188)
133
135
 
134
136
  Dispose the bridge (alias for disconnect).
135
137
 
@@ -151,29 +153,32 @@ onCleanup(() => bridge.dispose());
151
153
  protected extractParams(pathname, stateId): Record<string, string>;
152
154
  ```
153
155
 
154
- Defined in: [packages/play-router/src/router-bridge-base.ts:300](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L300)
156
+ Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:105](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L105)
157
+
158
+ Extract path parameters using Solid's pre-parsed `useParams()` values.
155
159
 
156
- Extract path parameters from URL using the URLPattern API.
160
+ Solid's router has already extracted all named parameters for the matched route
161
+ segment. Reading `this.solidParams` inside the createEffect callback that drives
162
+ `syncActorFromRouter` is safe — the reactive proxy always reflects the current
163
+ route at the time the effect runs.
157
164
 
158
- Accesses `globalThis.URLPattern` at runtime no polyfill is imported by this
159
- library. If `URLPattern` is unavailable (Node.js < 24, older browsers without a
160
- polyfill), this method returns `{}` silently (graceful degradation — routing still
161
- works, params will be empty).
165
+ Falls back to URLPattern-based extraction (base class) only when Solid provided
166
+ no params for this route (i.e. the route has no `:param` segments).
162
167
 
163
168
  #### Parameters
164
169
 
165
- | Parameter | Type | Description |
166
- | ---------- | -------- | ----------------------------------------------------- |
167
- | `pathname` | `string` | The actual URL path (e.g., '/profile/john') |
168
- | `stateId` | `string` | The matched state ID for looking up the route pattern |
170
+ | Parameter | Type | Description |
171
+ | ---------- | -------- | ----------------------------------------------------------------- |
172
+ | `pathname` | `string` | The actual URL path (unused — params already extracted by Solid) |
173
+ | `stateId` | `string` | The matched state ID (unused params already extracted by Solid) |
169
174
 
170
175
  #### Returns
171
176
 
172
177
  `Record`\<`string`, `string`\>
173
178
 
174
- Extracted path parameters, or empty object if URLPattern is unavailable or no match
179
+ Normalized path parameters with undefined/empty values filtered out
175
180
 
176
- #### Inherited from
181
+ #### Overrides
177
182
 
178
183
  [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`extractParams`](../../play-router/classes/RouterBridgeBase.md#extractparams)
179
184
 
@@ -185,7 +190,7 @@ Extracted path parameters, or empty object if URLPattern is unavailable or no ma
185
190
  protected extractQuery(search): Record<string, string>;
186
191
  ```
187
192
 
188
- Defined in: [packages/play-router/src/router-bridge-base.ts:321](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L321)
193
+ Defined in: [packages/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)
189
194
 
190
195
  Extract query parameters from URL search string.
191
196
 
@@ -213,7 +218,7 @@ Extracted query parameters or empty object
213
218
  protected getInitialRouterPath(): string | null;
214
219
  ```
215
220
 
216
- Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:84](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-solid-router/src/solid-router-bridge.ts#L84)
221
+ Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:127](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L127)
217
222
 
218
223
  Get the current router pathname for initial URL -> actor sync on connect.
219
224
 
@@ -227,13 +232,37 @@ Get the current router pathname for initial URL -> actor sync on connect.
227
232
 
228
233
  ---
229
234
 
235
+ ### getInitialRouterSearch()
236
+
237
+ ```ts
238
+ protected getInitialRouterSearch(): string | undefined;
239
+ ```
240
+
241
+ Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:138](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L138)
242
+
243
+ Return the initial URL search string for query-param forwarding on `connect()`.
244
+
245
+ Reads `this.location.search` from Solid's `useLocation()` reactive object —
246
+ the same source used by `getInitialRouterPath()`. An empty string (no query
247
+ params) returns `undefined` so `syncActorFromRouter` produces `query: {}`.
248
+
249
+ #### Returns
250
+
251
+ `string` \| `undefined`
252
+
253
+ #### Overrides
254
+
255
+ [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`getInitialRouterSearch`](../../play-router/classes/RouterBridgeBase.md#getinitialroutersearch)
256
+
257
+ ---
258
+
230
259
  ### navigateRouter()
231
260
 
232
261
  ```ts
233
262
  protected navigateRouter(path): void;
234
263
  ```
235
264
 
236
- Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:77](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-solid-router/src/solid-router-bridge.ts#L77)
265
+ Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:120](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L120)
237
266
 
238
267
  Navigate SolidJS Router to the given path.
239
268
 
@@ -253,13 +282,52 @@ Navigate SolidJS Router to the given path.
253
282
 
254
283
  ---
255
284
 
285
+ ### resolveNavigationPath()
286
+
287
+ ```ts
288
+ protected resolveNavigationPath(route): string | null;
289
+ ```
290
+
291
+ Defined in: [packages/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)
292
+
293
+ Resolve an actor route value to a concrete URL path for navigation.
294
+
295
+ Bridges that receive raw `actor.currentRoute` values in `navigateRouter`
296
+ can call this to normalize stateIds (with or without `#` prefix) to paths.
297
+ Returns `null` when navigation is not possible:
298
+
299
+ - unknown stateId with no route map entry
300
+ - parameterized pattern (e.g. `/profile/:id`) — no concrete values available
301
+ - non-path string that isn't a known stateId
302
+
303
+ Route maps may store stateIds with or without the `#` prefix; both forms
304
+ are tried automatically.
305
+
306
+ #### Parameters
307
+
308
+ | Parameter | Type | Description |
309
+ | --------- | -------- | -------------------------------------------------------------- |
310
+ | `route` | `string` | Raw actor route value (stateId, `#`-stateId, or concrete path) |
311
+
312
+ #### Returns
313
+
314
+ `string` \| `null`
315
+
316
+ Concrete URL path, or `null` if navigation should be skipped
317
+
318
+ #### Inherited from
319
+
320
+ [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`resolveNavigationPath`](../../play-router/classes/RouterBridgeBase.md#resolvenavigationpath)
321
+
322
+ ---
323
+
256
324
  ### syncActorFromRouter()
257
325
 
258
326
  ```ts
259
327
  protected syncActorFromRouter(pathname, search?): void;
260
328
  ```
261
329
 
262
- Defined in: [packages/play-router/src/router-bridge-base.ts:248](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L248)
330
+ Defined in: [packages/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)
263
331
 
264
332
  Sync actor state when router location changes.
265
333
 
@@ -289,7 +357,7 @@ Prevents circular updates via isProcessingNavigation flag.
289
357
  protected syncRouterFromActor(route): void;
290
358
  ```
291
359
 
292
- Defined in: [packages/play-router/src/router-bridge-base.ts:228](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-router/src/router-bridge-base.ts#L228)
360
+ Defined in: [packages/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)
293
361
 
294
362
  Sync router location when actor route signal changes.
295
363
 
@@ -322,11 +390,13 @@ suppressed as circular echoes.
322
390
  protected unwatchRouterChanges(): void;
323
391
  ```
324
392
 
325
- Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:114](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-solid-router/src/solid-router-bridge.ts#L114)
393
+ Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:175](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L175)
326
394
 
327
395
  Stop watching SolidJS Router changes.
328
396
 
329
- Solid auto-cleans createEffect subscriptions when component unmounts.
397
+ Calls the `dispose` function returned by `createRoot()` in `watchRouterChanges()`,
398
+ tearing down the reactive effect and freeing the isolated owner. This is the only
399
+ cleanup path — component unmount does NOT trigger this automatically.
330
400
 
331
401
  #### Returns
332
402
 
@@ -344,12 +414,17 @@ Solid auto-cleans createEffect subscriptions when component unmounts.
344
414
  protected watchRouterChanges(): void;
345
415
  ```
346
416
 
347
- Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:94](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-solid-router/src/solid-router-bridge.ts#L94)
417
+ Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:153](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L153)
348
418
 
349
419
  Subscribe to SolidJS Router location changes using createEffect.
350
420
 
351
- MUST be called inside a Solid reactive owner (component/createRoot).
352
- Solid auto-cleans createEffect subscriptions on component unmount.
421
+ MUST be called inside a Solid reactive owner (component or createRoot).
422
+
423
+ The effect runs inside `createRoot()` to give it a stable owner independent
424
+ of the calling component's lifecycle — this prevents the effect from being
425
+ disposed if the component re-renders while the bridge should stay active.
426
+ The trade-off is that component unmount does NOT automatically clean up the
427
+ effect; `disconnect()` (or `dispose()`) MUST be called explicitly to avoid a leak.
353
428
 
354
429
  #### Returns
355
430
 
@@ -6,7 +6,7 @@
6
6
  function PlayRouterProvider<TActor>(props): any;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-solid-router/src/play-router-provider.tsx:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-solid-router/src/play-router-provider.tsx#L24)
9
+ Defined in: [packages/play-solid-router/src/play-router-provider.tsx:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/play-router-provider.tsx#L41)
10
10
 
11
11
  ## Type Parameters
12
12
 
@@ -6,27 +6,33 @@
6
6
  function createRouteMap(machine): RouteMap;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-solid-router/src/create-route-map.ts:27](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.25/packages/play-solid-router/src/create-route-map.ts#L27)
9
+ Defined in: [packages/play-router/src/create-route-map-from-machine.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/create-route-map-from-machine.ts#L26)
10
10
 
11
- Create a RouteMap from an XState machine
11
+ Create a `BaseRouteMap` from an XState state machine.
12
+
13
+ Extracts all routable states (those with `meta.route`) and builds a bidirectional
14
+ path ↔ stateId lookup structure. The returned map is used by `RouterBridgeBase`
15
+ subclasses to translate browser URL changes into `play.route` actor events and
16
+ vice-versa.
12
17
 
13
18
  ## Parameters
14
19
 
15
- | Parameter | Type | Description |
16
- | --------- | ------------------------------------------------------------------------- | ---------------------------------------------- |
17
- | `machine` | [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | XState machine with route: {} config on states |
20
+ | Parameter | Type | Description |
21
+ | --------- | ------------------------------------------------------------------------- | ---------------------------------------------------------------- |
22
+ | `machine` | [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | XState v5 state machine with `meta.route` annotations on states. |
18
23
 
19
24
  ## Returns
20
25
 
21
26
  [`RouteMap`](../classes/RouteMap.md)
22
27
 
23
- RouteMap for bidirectional state ID path resolution
28
+ A `BaseRouteMap` for passing to any `RouterBridgeBase`-based adapter.
24
29
 
25
30
  ## Example
26
31
 
27
32
  ```typescript
28
- import { createRouteMap } from "@xmachines/play-solid-router";
29
- import { authMachine } from "./machine.js";
33
+ import { createRouteMapFromMachine } from "@xmachines/play-router";
34
+ import { connectRouter } from "@xmachines/play-dom-router";
30
35
 
31
- const routeMap = createRouteMap(authMachine);
36
+ const routeMap = createRouteMapFromMachine(myMachine);
37
+ const disconnect = connectRouter({ actor, router, routeMap });
32
38
  ```