@xmachines/docs 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (299) hide show
  1. package/README.md +11 -13
  2. package/api/@xmachines/play/README.md +58 -63
  3. package/api/@xmachines/play/classes/NonNullableError.md +7 -7
  4. package/api/@xmachines/play/classes/PlayError.md +25 -27
  5. package/api/@xmachines/play/functions/assertNonNullable.md +17 -17
  6. package/api/@xmachines/play/type-aliases/PlayEvent.md +26 -25
  7. package/api/@xmachines/play-actor/README.md +72 -63
  8. package/api/@xmachines/play-actor/classes/AbstractActor.md +39 -39
  9. package/api/@xmachines/play-actor/functions/attachRenderErrorHandler.md +19 -18
  10. package/api/@xmachines/play-actor/functions/composePlayState.md +9 -8
  11. package/api/@xmachines/play-actor/functions/createViewStoreLifecycle.md +5 -5
  12. package/api/@xmachines/play-actor/functions/guardContextWrites.md +27 -25
  13. package/api/@xmachines/play-actor/functions/refreshContextSubtree.md +12 -11
  14. package/api/@xmachines/play-actor/functions/reuseComposedState.md +23 -22
  15. package/api/@xmachines/play-actor/functions/shallowEqualExcept.md +6 -5
  16. package/api/@xmachines/play-actor/functions/toAtomState.md +16 -14
  17. package/api/@xmachines/play-actor/functions/typedSpec.md +12 -11
  18. package/api/@xmachines/play-actor/interfaces/BaseActorProviderProps.md +17 -15
  19. package/api/@xmachines/play-actor/interfaces/BaseViewContextValue.md +15 -14
  20. package/api/@xmachines/play-actor/interfaces/PlaySpec.md +13 -13
  21. package/api/@xmachines/play-actor/interfaces/ResolveViewStoreOptions.md +4 -4
  22. package/api/@xmachines/play-actor/interfaces/Routable.md +4 -4
  23. package/api/@xmachines/play-actor/interfaces/ViewStoreLifecycle.md +11 -11
  24. package/api/@xmachines/play-actor/interfaces/ViewStoreResolution.md +7 -7
  25. package/api/@xmachines/play-actor/interfaces/Viewable.md +9 -9
  26. package/api/@xmachines/play-actor/variables/CONTEXT_STATE_KEY.md +5 -5
  27. package/api/@xmachines/play-dom/README.md +119 -85
  28. package/api/@xmachines/play-dom/classes/PlayRenderer.md +34 -32
  29. package/api/@xmachines/play-dom/functions/createPlayUI.md +10 -10
  30. package/api/@xmachines/play-dom/functions/createRenderer.md +21 -17
  31. package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +8 -8
  32. package/api/@xmachines/play-dom/interfaces/MountOptions.md +9 -9
  33. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +9 -9
  34. package/api/@xmachines/play-dom/type-aliases/MountFn.md +5 -5
  35. package/api/@xmachines/play-dom-router/README.md +66 -49
  36. package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +116 -0
  37. package/api/@xmachines/play-dom-router/functions/connectRouter.md +4 -3
  38. package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +16 -14
  39. package/api/@xmachines/play-dom-router/functions/createRouteMap.md +12 -11
  40. package/api/@xmachines/play-dom-router/functions/createRouter.md +14 -14
  41. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +25 -26
  42. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +19 -18
  43. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +7 -7
  44. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +39 -33
  45. package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +18 -17
  46. package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +9 -9
  47. package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +39 -38
  48. package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +5 -5
  49. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +11 -10
  50. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +27 -24
  51. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +7 -7
  52. package/api/@xmachines/play-react/README.md +63 -54
  53. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +14 -13
  54. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  55. package/api/@xmachines/play-react/functions/usePlayView.md +4 -4
  56. package/api/@xmachines/play-react/functions/useSignalEffect.md +39 -39
  57. package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +11 -11
  58. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +7 -7
  59. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +4 -4
  60. package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +14 -14
  61. package/api/@xmachines/play-react/interfaces/ViewContextValue.md +8 -8
  62. package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +2 -2
  63. package/api/@xmachines/play-react/type-aliases/PlayRendererProps.md +13 -0
  64. package/api/@xmachines/play-react/variables/ActorProvider.md +9 -8
  65. package/api/@xmachines/play-react/variables/PlayRenderer.md +5 -4
  66. package/api/@xmachines/play-react/variables/PlayUIProvider.md +6 -6
  67. package/api/@xmachines/play-react-router/README.md +37 -28
  68. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +22 -19
  69. package/api/@xmachines/play-react-router/classes/RouteMap.md +50 -48
  70. package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +16 -14
  71. package/api/@xmachines/play-react-router/functions/createRouteMap.md +12 -11
  72. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +18 -18
  73. package/api/@xmachines/play-react-router/interfaces/PlayActor.md +22 -20
  74. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +39 -33
  75. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderBaseProps.md +12 -12
  76. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  77. package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +5 -5
  78. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +11 -10
  79. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +27 -24
  80. package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +2 -2
  81. package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +7 -6
  82. package/api/@xmachines/play-router/README.md +94 -82
  83. package/api/@xmachines/play-router/classes/RouteMap.md +50 -48
  84. package/api/@xmachines/play-router/classes/RouterBridgeBase.md +29 -23
  85. package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +6 -5
  86. package/api/@xmachines/play-router/functions/buildRouteTree.md +16 -15
  87. package/api/@xmachines/play-router/functions/createRouteMap.md +12 -11
  88. package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +18 -18
  89. package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +18 -17
  90. package/api/@xmachines/play-router/functions/extractMachineRoutes.md +11 -10
  91. package/api/@xmachines/play-router/functions/extractQuery.md +3 -3
  92. package/api/@xmachines/play-router/functions/extractRouteParams.md +22 -19
  93. package/api/@xmachines/play-router/functions/findRouteById.md +10 -9
  94. package/api/@xmachines/play-router/functions/findRouteByPath.md +14 -12
  95. package/api/@xmachines/play-router/functions/getNavigableRoutes.md +9 -9
  96. package/api/@xmachines/play-router/functions/getRoutableRoutes.md +9 -9
  97. package/api/@xmachines/play-router/functions/getTransitionReachableRoutes.md +16 -15
  98. package/api/@xmachines/play-router/functions/isRouteReachable.md +12 -11
  99. package/api/@xmachines/play-router/functions/machineToGraph.md +1 -1
  100. package/api/@xmachines/play-router/functions/routeExists.md +8 -8
  101. package/api/@xmachines/play-router/functions/sanitizePathname.md +15 -13
  102. package/api/@xmachines/play-router/functions/validateRouteFormat.md +10 -10
  103. package/api/@xmachines/play-router/functions/validateStateExists.md +9 -9
  104. package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +4 -4
  105. package/api/@xmachines/play-router/interfaces/LocationLike.md +9 -9
  106. package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +7 -7
  107. package/api/@xmachines/play-router/interfaces/MachineNodeData.md +9 -9
  108. package/api/@xmachines/play-router/interfaces/PlayActor.md +22 -20
  109. package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +39 -33
  110. package/api/@xmachines/play-router/interfaces/ResolvedRoutePath.md +7 -7
  111. package/api/@xmachines/play-router/interfaces/RoutableActor.md +18 -17
  112. package/api/@xmachines/play-router/interfaces/RouteInfo.md +11 -11
  113. package/api/@xmachines/play-router/interfaces/RouteMapOptions.md +5 -5
  114. package/api/@xmachines/play-router/interfaces/RouteMapping.md +11 -10
  115. package/api/@xmachines/play-router/interfaces/RouteMatch.md +3 -3
  116. package/api/@xmachines/play-router/interfaces/RouteNode.md +13 -13
  117. package/api/@xmachines/play-router/interfaces/RouteObject.md +6 -6
  118. package/api/@xmachines/play-router/interfaces/RouteTree.md +11 -11
  119. package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +13 -13
  120. package/api/@xmachines/play-router/interfaces/RouterBridge.md +27 -24
  121. package/api/@xmachines/play-router/interfaces/WindowLike.md +10 -10
  122. package/api/@xmachines/play-router/type-aliases/BaseRouteMapping.md +13 -0
  123. package/api/@xmachines/play-router/type-aliases/MachineGraph.md +4 -3
  124. package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +2 -2
  125. package/api/@xmachines/play-signals/README.md +38 -36
  126. package/api/@xmachines/play-signals/functions/watchSignal.md +15 -15
  127. package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +6 -6
  128. package/api/@xmachines/play-signals/interfaces/SignalComputed.md +10 -10
  129. package/api/@xmachines/play-signals/interfaces/SignalOptions.md +6 -6
  130. package/api/@xmachines/play-signals/interfaces/SignalState.md +13 -13
  131. package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +18 -18
  132. package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +6 -5
  133. package/api/@xmachines/play-solid/README.md +46 -42
  134. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  135. package/api/@xmachines/play-solid/functions/usePlayView.md +3 -3
  136. package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +13 -13
  137. package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +14 -14
  138. package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +9 -9
  139. package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +2 -2
  140. package/api/@xmachines/play-solid/variables/ActorContext.md +5 -4
  141. package/api/@xmachines/play-solid/variables/ActorProvider.md +8 -7
  142. package/api/@xmachines/play-solid/variables/PlayRenderer.md +6 -4
  143. package/api/@xmachines/play-solid/variables/PlayUIProvider.md +7 -7
  144. package/api/@xmachines/play-solid-router/README.md +34 -29
  145. package/api/@xmachines/play-solid-router/classes/RouteMap.md +50 -48
  146. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +43 -34
  147. package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +15 -13
  148. package/api/@xmachines/play-solid-router/functions/createRouteMap.md +12 -11
  149. package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +39 -39
  150. package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +22 -20
  151. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +39 -33
  152. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderBaseProps.md +10 -10
  153. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +11 -11
  154. package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +5 -5
  155. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +11 -10
  156. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +27 -24
  157. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +5 -5
  158. package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +2 -2
  159. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +11 -11
  160. package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +9 -8
  161. package/api/@xmachines/play-svelte/README.md +40 -31
  162. package/api/@xmachines/play-svelte/functions/defineRegistry.md +9 -8
  163. package/api/@xmachines/play-svelte/functions/getActorContext.md +5 -4
  164. package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +3 -3
  165. package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
  166. package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +17 -15
  167. package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +9 -9
  168. package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +20 -18
  169. package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +12 -11
  170. package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +2 -2
  171. package/api/@xmachines/play-svelte-spa-router/README.md +25 -25
  172. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +50 -48
  173. package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +133 -0
  174. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +3 -3
  175. package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +12 -11
  176. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +7 -7
  177. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +39 -33
  178. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +5 -5
  179. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +11 -10
  180. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +27 -24
  181. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +10 -10
  182. package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +1 -1
  183. package/api/@xmachines/play-sveltekit-router/README.md +38 -34
  184. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +50 -48
  185. package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +132 -0
  186. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +3 -3
  187. package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +12 -11
  188. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +6 -6
  189. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +9 -9
  190. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +39 -33
  191. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +5 -5
  192. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +11 -10
  193. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +27 -24
  194. package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +1 -1
  195. package/api/@xmachines/play-tanstack-react-router/README.md +66 -48
  196. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +50 -48
  197. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +43 -38
  198. package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +16 -14
  199. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +12 -11
  200. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +18 -18
  201. package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +11 -10
  202. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayActor.md +22 -20
  203. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +39 -33
  204. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderBaseProps.md +12 -12
  205. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  206. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +5 -5
  207. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +11 -10
  208. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +16 -11
  209. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +27 -24
  210. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +2 -2
  211. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  212. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +15 -13
  213. package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +9 -8
  214. package/api/@xmachines/play-tanstack-router/README.md +37 -17
  215. package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +43 -38
  216. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +9 -9
  217. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +15 -13
  218. package/api/@xmachines/play-tanstack-solid-router/README.md +71 -45
  219. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +50 -48
  220. package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +38 -30
  221. package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +15 -13
  222. package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +12 -11
  223. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayActor.md +22 -20
  224. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +39 -33
  225. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderBaseProps.md +11 -11
  226. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +9 -9
  227. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +5 -5
  228. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +11 -10
  229. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +27 -24
  230. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +2 -2
  231. package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +2 -2
  232. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  233. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +15 -13
  234. package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +7 -7
  235. package/api/@xmachines/play-vue/README.md +37 -35
  236. package/api/@xmachines/play-vue/functions/defineRegistry.md +10 -9
  237. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  238. package/api/@xmachines/play-vue/functions/usePlayView.md +28 -0
  239. package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +10 -9
  240. package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +13 -12
  241. package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +10 -9
  242. package/api/@xmachines/play-vue/interfaces/VisibilityProviderProps.md +6 -2
  243. package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +2 -2
  244. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
  245. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
  246. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
  247. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  248. package/api/@xmachines/play-vue/variables/getPlayViewContext.md +34 -0
  249. package/api/@xmachines/play-vue-router/README.md +65 -56
  250. package/api/@xmachines/play-vue-router/classes/RouteMap.md +50 -48
  251. package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +26 -19
  252. package/api/@xmachines/play-vue-router/functions/createRouteMap.md +12 -11
  253. package/api/@xmachines/play-vue-router/interfaces/PlayActor.md +22 -20
  254. package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +39 -33
  255. package/api/@xmachines/play-vue-router/interfaces/RouteMapOptions.md +5 -5
  256. package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +11 -10
  257. package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +27 -24
  258. package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +2 -2
  259. package/api/@xmachines/play-vue-router/type-aliases/VueRouteMap.md +13 -0
  260. package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +5 -5
  261. package/api/@xmachines/play-vue-router/variables/VueRouteMap.md +13 -0
  262. package/api/@xmachines/play-xstate/README.md +72 -70
  263. package/api/@xmachines/play-xstate/classes/PlayerActor.md +123 -112
  264. package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +19 -16
  265. package/api/@xmachines/play-xstate/functions/composeGuards.md +25 -23
  266. package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +20 -20
  267. package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +15 -15
  268. package/api/@xmachines/play-xstate/functions/definePlayer.md +19 -19
  269. package/api/@xmachines/play-xstate/functions/deriveRoute.md +26 -25
  270. package/api/@xmachines/play-xstate/functions/eventMatches.md +8 -8
  271. package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +16 -13
  272. package/api/@xmachines/play-xstate/functions/hasContext.md +8 -8
  273. package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +10 -10
  274. package/api/@xmachines/play-xstate/functions/negateGuard.md +19 -18
  275. package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +6 -6
  276. package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +7 -7
  277. package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +10 -10
  278. package/api/@xmachines/play-xstate/interfaces/RouteContext.md +15 -14
  279. package/api/@xmachines/play-xstate/interfaces/RouteObject.md +2 -2
  280. package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +5 -5
  281. package/api/@xmachines/play-xstate/type-aliases/Guard.md +9 -9
  282. package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +4 -3
  283. package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +7 -7
  284. package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +12 -12
  285. package/api/@xmachines/play-xstate/type-aliases/RouteMetadata.md +1 -1
  286. package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +15 -14
  287. package/api/@xmachines/shared/README.md +11 -13
  288. package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +1 -1
  289. package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
  290. package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +1 -1
  291. package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
  292. package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +2 -2
  293. package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
  294. package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +1 -1
  295. package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +4 -4
  296. package/contributing/development.md +28 -0
  297. package/guides/inspector.md +1 -1
  298. package/package.json +1 -1
  299. package/api/@xmachines/play-vue/functions/getPlayViewContext.md +0 -28
@@ -2,32 +2,33 @@
2
2
 
3
3
  # Class: RouteMap
4
4
 
5
- Defined in: [play-router/src/base-route-map.ts:101](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/base-route-map.ts#L101)
5
+ Defined in: [play-router/src/base-route-map.ts:105](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/base-route-map.ts#L105)
6
6
 
7
- Shared bidirectional route map base class.
7
+ The shared base class of the route map for both directions.
8
8
 
9
- All framework adapters use this class as their route map they add no logic of their
10
- own and inherit the full public API from here.
9
+ Every framework adapter uses this class as its route map. An adapter adds no logic
10
+ of its own, and it inherits the complete public API from here.
11
11
 
12
- **Lookup strategy:**
12
+ **The strategy of a lookup:**
13
13
 
14
- - Static paths (no `:param`)O(1) `Map` lookup
15
- - Dynamic paths → O(k) bucket-indexed scan using `URLPattern`, where `k` is the number
16
- of routes sharing the same first path segment
17
- - Results are cached after the first match in an LRU cache (default 500 entries,
18
- configurable via the `cacheSize` constructor option)
14
+ - A static path, without a `:param` → a `Map` lookup in O(1)
15
+ - A dynamic path a scan of the bucket index in O(k), with `URLPattern`, where
16
+ `k` is the number of the routes with the same first path segment
17
+ - The class keeps each result of a first match in an LRU cache. The default size
18
+ is 500 entries, and the `cacheSize` constructor option changes it
19
19
 
20
- **Pattern syntax** (`:param` / `:param?` / `*`):
20
+ **The syntax of a pattern** (`:param`, `:param?`, and `*`):
21
21
 
22
- - `:param` — required segment, matches exactly one non-`/` segment
23
- - `:param?` — optional segment, matches zero or one non-`/` segment
24
- - `*` — wildcard, matches any number of segments (URLPattern semantics)
22
+ - `:param` — a necessary segment. It matches exactly one segment without a `/`
23
+ - `:param?` — an optional segment. It matches zero segments or one segment without a `/`
24
+ - `*` — a wildcard. It matches each number of segments, as URLPattern defines
25
25
 
26
- **StateId forms:** stateIds may be registered and looked up in either
27
- `"#stateId"` or `"stateId"` form — `RouteMap` canonicalizes internally.
28
- `getStateIdByPath` returns the stateId exactly as registered;
29
- `getPathByStateId` accepts both forms. Registering the same stateId in both
30
- forms refers to one entry (the later registration wins for reverse lookup).
26
+ **The forms of a stateId:** you can register a stateId, and you can look one up,
27
+ in the form `"#stateId"` or in the form `"stateId"`. `RouteMap` makes the
28
+ canonical form itself. `getStateIdByPath` returns the stateId exactly as you
29
+ registered it, and `getPathByStateId` accepts both forms. A registration of the
30
+ same stateId in both forms gives one entry, and the later registration wins for
31
+ the lookup in the other direction.
31
32
 
32
33
  ## Example
33
34
 
@@ -57,21 +58,22 @@ map.getPathByStateId("missing"); // null
57
58
  new RouteMap(mappings, options?): RouteMap;
58
59
  ```
59
60
 
60
- Defined in: [play-router/src/base-route-map.ts:127](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/base-route-map.ts#L127)
61
+ Defined in: [play-router/src/base-route-map.ts:133](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/base-route-map.ts#L133)
61
62
 
62
- Build a route map from an array of state ID path mappings.
63
+ Builds a route map from an array of the mappings between a state ID and a path.
63
64
 
64
- Static paths (no `:param`) are indexed in an O(1) `Map`.
65
- Parameterized paths are compiled to `URLPattern` and grouped into first-segment
66
- buckets for efficient candidate selection.
65
+ The constructor puts each static path, which holds no `:param`, into a `Map` for a
66
+ lookup in O(1). It compiles each parameterized path to a `URLPattern`, and it
67
+ groups the patterns into the buckets of the first segment. The selection of the
68
+ candidates is therefore efficient.
67
69
 
68
70
  #### Parameters
69
71
 
70
- | Parameter | Type | Description |
71
- | -------------------- | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
72
- | `mappings` | [`RouteMapping`](../interfaces/RouteMapping.md)[] | Array of `{ stateId, path }` entries. Order determines priority when multiple patterns could match the same path. |
73
- | `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). |
74
- | `options.cacheSize?` | `number` | - |
72
+ | Parameter | Type | Description |
73
+ | -------------------- | ------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
74
+ | `mappings` | [`RouteMapping`](../interfaces/RouteMapping.md)[] | The array of the `{ stateId, path }` entries. The order gives the priority when more than one pattern can match the same path. |
75
+ | `options` | \{ `cacheSize?`: `number`; \} | The optional configuration. `options.cacheSize`: the maximum number of the resolved parameterized path lookups in the cache. The default is `500`. Raise it for an application with many different values in a parameterized URL, for example a page of a user profile with thousands of different IDs. After an eviction, the path goes to the bucket pattern scan in O(k) again, which is correct but slower. The smallest effective value is `1`, because QuickLRU requires it. |
76
+ | `options.cacheSize?` | `number` | - |
75
77
 
76
78
  #### Returns
77
79
 
@@ -85,31 +87,31 @@ buckets for efficient candidate selection.
85
87
  getPathByStateId(stateId): string | null;
86
88
  ```
87
89
 
88
- Defined in: [play-router/src/base-route-map.ts:218](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/base-route-map.ts#L218)
90
+ Defined in: [play-router/src/base-route-map.ts:225](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/base-route-map.ts#L225)
89
91
 
90
- Look up the path pattern registered for a state ID.
92
+ Returns the path pattern of a state ID.
91
93
 
92
- Accepts the stateId in either `"#stateId"` or `"stateId"` form regardless of
93
- which form was used at registration lookups are canonicalized internally,
94
- so consumers never need to try both forms.
94
+ The method accepts the stateId in the form `"#stateId"` and in the form
95
+ `"stateId"`, and the form of the registration has no effect. The method makes the
96
+ canonical form itself. Therefore a consumer tries never both forms.
95
97
 
96
98
  #### Parameters
97
99
 
98
- | Parameter | Type | Description |
99
- | --------- | -------- | --------------------------------------------------------- |
100
- | `stateId` | `string` | State machine state ID (e.g., `"profile"`, `"#settings"`) |
100
+ | Parameter | Type | Description |
101
+ | --------- | -------- | --------------------------------------------------------------------------- |
102
+ | `stateId` | `string` | The state ID of the state machine, for example `"profile"` or `"#settings"` |
101
103
 
102
104
  #### Returns
103
105
 
104
106
  `string` \| `null`
105
107
 
106
- The registered path pattern, or `null` if the state ID is unknown
108
+ The registered path pattern, or `null` when the state ID is unknown
107
109
 
108
110
  #### Example
109
111
 
110
112
  ```typescript
111
113
  map.getPathByStateId("profile"); // "/profile/:userId"
112
- map.getPathByStateId("#profile"); // "/profile/:userId" (same entry)
114
+ map.getPathByStateId("#profile"); // "/profile/:userId" — the same entry
113
115
  map.getPathByStateId("missing"); // null
114
116
  ```
115
117
 
@@ -121,25 +123,25 @@ map.getPathByStateId("missing"); // null
121
123
  getStateIdByPath(path): string | null;
122
124
  ```
123
125
 
124
- Defined in: [play-router/src/base-route-map.ts:178](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/base-route-map.ts#L178)
126
+ Defined in: [play-router/src/base-route-map.ts:185](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/base-route-map.ts#L185)
125
127
 
126
- Resolve a URL path to its mapped state ID.
128
+ Resolves a URL path to its state ID.
127
129
 
128
- Strips query strings and hash fragments before matching. Tries an O(1) exact
129
- lookup first, then falls back to bucket-indexed pattern matching. Results are
130
- cached after the first pattern match.
130
+ The method removes the query string and the hash fragment before the match. It
131
+ tries an exact lookup in O(1) first, then it uses the pattern match on the bucket
132
+ index. It keeps each result of a first pattern match in the cache.
131
133
 
132
134
  #### Parameters
133
135
 
134
- | Parameter | Type | Description |
135
- | --------- | -------- | ------------------------------------------------------------------------------ |
136
- | `path` | `string` | URL pathname, optionally including query/hash (e.g., `"/profile/123?ref=nav"`) |
136
+ | Parameter | Type | Description |
137
+ | --------- | -------- | -------------------------------------------------------------------------------------- |
138
+ | `path` | `string` | The URL pathname. It can hold a query and a hash, for example `"/profile/123?ref=nav"` |
137
139
 
138
140
  #### Returns
139
141
 
140
142
  `string` \| `null`
141
143
 
142
- The mapped state ID, or `null` if no route matches
144
+ The state ID of the path, or `null` when no route matches
143
145
 
144
146
  #### Example
145
147
 
@@ -2,32 +2,34 @@
2
2
 
3
3
  # Class: TanStackReactRouterBridge
4
4
 
5
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:102](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L102)
5
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:107](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L107)
6
6
 
7
- Shared TanStack Router adapter implementing RouterBridge protocol via RouterBridgeBase
7
+ The shared TanStack Router adapter. It implements the RouterBridge protocol through RouterBridgeBase
8
8
 
9
9
  ## Remarks
10
10
 
11
- Extends RouterBridgeBase to handle all common lifecycle and sync logic; adds
12
- the TanStack-specific navigation and subscription methods shared by the React
13
- and Solid adapters.
14
-
15
- Subscribes to router.history (not router.subscribe("onBeforeLoad")) so that
16
- back/forward browser navigation (popstate events) are also captured. The
17
- router.subscribe("onBeforeLoad") approach only works when TanStack's
18
- Transitioner component is mounted (i.e. inside a full <RouterProvider>).
19
- Since this bridge is used without <RouterProvider>, we must subscribe to
20
- the underlying history object directly which is exactly what Transitioner
11
+ The class extends RouterBridgeBase, and the base class does all the common
12
+ lifecycle work and synchronization work. This class adds the TanStack navigation
13
+ methods and subscription methods that the React adapter and the Solid adapter
14
+ share.
15
+
16
+ The bridge subscribes to router.history, not to
17
+ router.subscribe("onBeforeLoad"). Therefore it also receives a browser BACK or
18
+ FORWARD navigation, which is a popstate event. The
19
+ router.subscribe("onBeforeLoad") method works only when the Transitioner
20
+ component of TanStack is mounted, which means inside a complete
21
+ <RouterProvider>. This bridge works without <RouterProvider>. Therefore it
22
+ subscribes to the history object directly, and this is exactly what Transitioner
21
23
  does internally: `router.history.subscribe(router.load)`.
22
24
 
23
- Architectural Invariants:
25
+ Architectural invariants:
24
26
 
25
- - INV-02 (Passive Infrastructure): Router reflects actor state, never decides
26
- - Actor validates all navigation via guards before URL changes
27
+ - INV-02 (Passive Infrastructure): the router reflects the actor state. It never decides
28
+ - The actor checks every navigation with its guards before the URL changes
27
29
 
28
- The class is concrete it can be instantiated directly. The framework
29
- packages re-export or subclass it purely to bind the public adapter name
30
- (and, for Solid, to add the `dispose()` alias).
30
+ The class is concrete. You can create an instance of it directly. Each framework
31
+ package re-exports it, or makes a subclass of it, only to bind the public name of
32
+ the adapter. The Solid package also adds the `dispose()` alias.
31
33
 
32
34
  ## Example
33
35
 
@@ -52,17 +54,17 @@ new TanStackReactRouterBridge(
52
54
  routeMap): TanStackRouterBridgeBase;
53
55
  ```
54
56
 
55
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:112](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L112)
57
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:117](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L117)
56
58
 
57
- Create a TanStack Router bridge
59
+ Creates a TanStack Router bridge
58
60
 
59
61
  #### Parameters
60
62
 
61
- | Parameter | Type | Description |
62
- | ---------- | ----------------------------------------------------------------------------------------- | ------------------------------------------------- |
63
- | `router` | [`TanStackRouterLike`](../type-aliases/TanStackRouterLike.md) | TanStack Router instance (from `createRouter`) |
64
- | `actor` | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md) | XMachines actor instance |
65
- | `routeMap` | [`TanStackRouteMapLike`](../../play-tanstack-router/type-aliases/TanStackRouteMapLike.md) | Bidirectional mapping between state IDs and paths |
63
+ | Parameter | Type | Description |
64
+ | ---------- | ----------------------------------------------------------------------------------------- | --------------------------------------------------------- |
65
+ | `router` | [`TanStackRouterLike`](../type-aliases/TanStackRouterLike.md) | The TanStack Router instance from `createRouter` |
66
+ | `actor` | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md) | The XMachines actor instance |
67
+ | `routeMap` | [`TanStackRouteMapLike`](../../play-tanstack-router/type-aliases/TanStackRouteMapLike.md) | The bidirectional map between the state IDs and the paths |
66
68
 
67
69
  #### Returns
68
70
 
@@ -80,21 +82,23 @@ Create a TanStack Router bridge
80
82
  connect(): void;
81
83
  ```
82
84
 
83
- Defined in: [play-router/src/router-bridge-base.ts:151](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/router-bridge-base.ts#L151)
85
+ Defined in: [play-router/src/router-bridge-base.ts:158](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/router-bridge-base.ts#L158)
84
86
 
85
- Connect the router bridge to the Actor.
87
+ Connects the router bridge to the Actor.
86
88
 
87
- Sets up the TC39 Signal watcher for actor router direction and
88
- starts watching router changes (framework-specific).
89
+ The method installs the TC39 Signal watcher of the direction from the actor to the
90
+ router. It then starts the watch of the router changes, which each framework does
91
+ in its own way.
89
92
 
90
- Ordering here is part of the bridge contract:
93
+ The order of these steps is part of the contract of the bridge:
91
94
 
92
- - `lastSyncedPath` is seeded in the constructor from `actor.currentRoute`
93
- - the actor watcher is installed before adapter router subscriptions
94
- - initial sync then resolves deep-link vs restore using `actor.initialRoute`
95
+ - The constructor seeds `lastSyncedPath` from `actor.currentRoute`
96
+ - The method installs the actor watcher before the router subscriptions of the adapter
97
+ - The first synchronization then separates a deep link from a restore, with `actor.initialRoute`
95
98
 
96
- Adapters that need custom initial-sync behavior should override
97
- `getInitialRouterPath()` rather than reordering `connect()` steps.
99
+ An adapter that needs a different behavior of the first synchronization overrides
100
+ `getInitialRouterPath()`. It does not change the order of the steps of
101
+ `connect()`.
98
102
 
99
103
  #### Returns
100
104
 
@@ -112,11 +116,12 @@ Adapters that need custom initial-sync behavior should override
112
116
  disconnect(): void;
113
117
  ```
114
118
 
115
- Defined in: [play-router/src/router-bridge-base.ts:256](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/router-bridge-base.ts#L256)
119
+ Defined in: [play-router/src/router-bridge-base.ts:270](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/router-bridge-base.ts#L270)
116
120
 
117
- Disconnect the router bridge from the Actor.
121
+ Disconnects the router bridge from the Actor.
118
122
 
119
- Stops signal watching and unregisters framework-specific router listener.
123
+ The method stops the watch of the signal, and it removes the router listener of the
124
+ framework.
120
125
 
121
126
  #### Returns
122
127
 
@@ -6,18 +6,19 @@
6
6
  function createPlayRouterProvider<TRouter>(BridgeCtor): <TActor>(__namedParameters) => Element;
7
7
  ```
8
8
 
9
- Defined in: [play-tanstack-react-router/src/create-play-router-provider.tsx:92](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-tanstack-react-router/src/create-play-router-provider.tsx#L92)
9
+ Defined in: [play-tanstack-react-router/src/create-play-router-provider.tsx:95](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-react-router/src/create-play-router-provider.tsx#L95)
10
10
 
11
- Create a React `PlayRouterProvider` component bound to a specific bridge class.
11
+ Creates a React `PlayRouterProvider` component of one bridge class.
12
12
 
13
- The returned component connects a `PlayerActor` to the framework router,
14
- keeping actor state and browser URL in sync bidirectionally.
13
+ The component of the return value connects a `PlayerActor` to the framework
14
+ router. It keeps the actor state and the browser URL in step, in both directions.
15
15
 
16
- The bridge is created once on mount and torn down on unmount. It is also
17
- rebuilt if `actor`, `router`, or `routeMap` change identity so all three
18
- props must be **stable references** (created outside JSX or memoized).
19
- Under React `<StrictMode>` the effect runs twice on mount
20
- (connect disconnect connect), which the bridges support.
16
+ The component creates the bridge one time, on mount, and it disconnects the bridge
17
+ on unmount. It also builds the bridge again on a change of the identity of `actor`,
18
+ of `router`, or of `routeMap`. Therefore all three props must be **stable
19
+ references**: create them outside the JSX, or hold them with `useMemo`. Under the
20
+ React `<StrictMode>`, the effect runs two times on mount (connect, disconnect,
21
+ connect), and the bridges support this.
21
22
 
22
23
  ## Type Parameters
23
24
 
@@ -27,14 +28,15 @@ Under React `<StrictMode>` the effect runs twice on mount
27
28
 
28
29
  ## Parameters
29
30
 
30
- | Parameter | Type | Description |
31
- | ------------ | -------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- |
32
- | `BridgeCtor` | [`PlayRouterBridgeConstructor`](../type-aliases/PlayRouterBridgeConstructor.md)\<`TRouter`\> | Bridge class constructed as `new BridgeCtor(router, actor, routeMap)`. |
31
+ | Parameter | Type | Description |
32
+ | ------------ | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
33
+ | `BridgeCtor` | [`PlayRouterBridgeConstructor`](../type-aliases/PlayRouterBridgeConstructor.md)\<`TRouter`\> | The bridge class. The provider builds it as `new BridgeCtor(router, actor, routeMap)`. |
33
34
 
34
35
  ## Returns
35
36
 
36
- A `PlayRouterProvider` component, generic over the actor type so the
37
- `renderer` callback receives the same concrete actor type that was passed in.
37
+ A `PlayRouterProvider` component. It is generic over the actor type.
38
+ Therefore the `renderer` callback receives the same concrete actor type as the
39
+ prop.
38
40
 
39
41
  \<`TActor`\>(`__namedParameters`) => `Element`
40
42
 
@@ -6,27 +6,28 @@
6
6
  function createRouteMap(machine, options?): RouteMap;
7
7
  ```
8
8
 
9
- Defined in: [play-router/src/create-route-map.ts:45](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/create-route-map.ts#L45)
9
+ Defined in: [play-router/src/create-route-map.ts:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/create-route-map.ts#L47)
10
10
 
11
- Create a `RouteMap` from an XState state machine.
11
+ Creates a `RouteMap` from an XState state machine.
12
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.
13
+ The function reads every state with a route, which means each state with a
14
+ `meta.route` field. It then builds the lookup structure between a path and a
15
+ stateId, for both directions. A subclass of `RouterBridgeBase` uses the map: it
16
+ converts each change of the browser URL into a `play.route` actor event, and each
17
+ actor route into a URL.
17
18
 
18
19
  ## Parameters
19
20
 
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. |
23
- | `options?` | [`RouteMapOptions`](../interfaces/RouteMapOptions.md) | Optional configuration. Pass `{ cacheSize }` to override the default LRU cache size for parameterized path lookups. |
21
+ | Parameter | Type | Description |
22
+ | ---------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
23
+ | `machine` | [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | The XState v5 state machine, with a `meta.route` annotation on each state with a route. |
24
+ | `options?` | [`RouteMapOptions`](../interfaces/RouteMapOptions.md) | The optional configuration. Give `{ cacheSize }` to change the default size of the LRU cache of the parameterized path lookups. |
24
25
 
25
26
  ## Returns
26
27
 
27
28
  [`RouteMap`](../classes/RouteMap.md)
28
29
 
29
- A `RouteMap` for passing to any `RouterBridgeBase`-based adapter.
30
+ A `RouteMap` for each adapter on `RouterBridgeBase`.
30
31
 
31
32
  ## Example
32
33
 
@@ -6,41 +6,41 @@
6
6
  function createRouteMapFromTree(routeTree, options?): RouteMap;
7
7
  ```
8
8
 
9
- Defined in: [play-router/src/create-route-map-from-tree.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/create-route-map-from-tree.ts#L33)
9
+ Defined in: [play-router/src/create-route-map-from-tree.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/create-route-map-from-tree.ts#L33)
10
10
 
11
- Create a `RouteMap` from a `RouteTree` node structure.
11
+ Creates a `RouteMap` from the node structure of a `RouteTree`.
12
12
 
13
- Used by framework-router adapters that pass a
14
- `RouteTree` produced by `extractMachineRoutes()` rather than calling
15
- `createRouteMap()` directly.
13
+ A framework router adapter uses this function when it gives a `RouteTree` from
14
+ `extractMachineRoutes()`, and not when it calls `createRouteMap()` directly.
16
15
 
17
- Traverses all nodes collecting `{ stateId: node.id, path: node.fullPath }` pairs.
18
- `node.fullPath` is always the absolute resolved path (e.g. `"/dashboard/overview"`),
19
- which is what `RouteMap` needs for browser URL matching. This matches the
20
- behaviour of `createRouteMap(machine)`, which also uses `node.fullPath`.
16
+ The function walks every node, and it collects the pairs
17
+ `{ stateId: node.id, path: node.fullPath }`. `node.fullPath` is always the
18
+ absolute resolved path, for example `"/dashboard/overview"`, and `RouteMap` needs
19
+ that path for the match of a browser URL. `createRouteMap(machine)` behaves in the
20
+ same way, because it also uses `node.fullPath`.
21
21
 
22
22
  ## Parameters
23
23
 
24
- | Parameter | Type | Description |
25
- | ----------- | -------------------------------------------------------- | ----------------------------------------------------------------------------- |
26
- | `routeTree` | [`RouteTree`](../../play-router/interfaces/RouteTree.md) | A `RouteTree` as returned by `extractMachineRoutes()`. |
27
- | `options?` | [`RouteMapOptions`](../interfaces/RouteMapOptions.md) | Optional configuration (e.g. `{ cacheSize }` to override the LRU cache size). |
24
+ | Parameter | Type | Description |
25
+ | ----------- | -------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
26
+ | `routeTree` | [`RouteTree`](../../play-router/interfaces/RouteTree.md) | A `RouteTree`, as `extractMachineRoutes()` returns it. |
27
+ | `options?` | [`RouteMapOptions`](../interfaces/RouteMapOptions.md) | The optional configuration, for example `{ cacheSize }` to change the size of the LRU cache. |
28
28
 
29
29
  ## Returns
30
30
 
31
31
  [`RouteMap`](../classes/RouteMap.md)
32
32
 
33
- A `RouteMap` for use with any `RouterBridgeBase`-based adapter.
33
+ A `RouteMap` for each adapter on `RouterBridgeBase`.
34
34
 
35
35
  ## Example
36
36
 
37
37
  ```typescript
38
- // Preferredsingle call for XState machines:
38
+ // The preferred form one call for an XState machine:
39
39
  import { createRouteMap } from "@xmachines/play-router";
40
- const routeMap = createRouteMap(machine); // takes AnyStateMachine
40
+ const routeMap = createRouteMap(machine); // it takes an AnyStateMachine
41
41
 
42
- // Two-step form used by framework adapters that work with route trees:
42
+ // The two-step form, for a framework adapter that works with a route tree:
43
43
  import { extractMachineRoutes, createRouteMapFromTree } from "@xmachines/play-router";
44
44
  const routeTree = extractMachineRoutes(machine);
45
- const routeMap = createRouteMapFromTree(routeTree); // uses node.fullPath (absolute)
45
+ const routeMap = createRouteMapFromTree(routeTree); // it uses node.fullPath, which is absolute
46
46
  ```
@@ -6,23 +6,24 @@
6
6
  function extractMachineRoutes(machine): RouteTree;
7
7
  ```
8
8
 
9
- Defined in: [play-router/src/extract-routes.ts:89](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/extract-routes.ts#L89)
9
+ Defined in: [play-router/src/extract-routes.ts:92](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/extract-routes.ts#L92)
10
10
 
11
- Extract complete route tree from state machine graph
11
+ Reads the complete route tree from the graph of a state machine
12
12
 
13
- Converts the XState machine to a @statelyai/graph Graph via machineToGraph(),
14
- then walks graph nodes to extract route metadata, validate route references,
15
- and build a hierarchical RouteTree. The graph is attached to the returned
16
- RouteTree for downstream transition-aware queries.
13
+ The function converts the XState machine into a Graph of @statelyai/graph, with
14
+ machineToGraph(). It then walks the graph nodes: it reads the route metadata of
15
+ each node, it checks each route reference, and it builds a hierarchical RouteTree.
16
+ The RouteTree of the return value also holds the graph, for a later query that
17
+ needs the transitions.
17
18
 
18
19
  ## Parameters
19
20
 
20
- | Parameter | Type | Description |
21
- | --------- | ------------------------------------------------------------------------- | ----------------------- |
22
- | `machine` | [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | XState v5 state machine |
21
+ | Parameter | Type | Description |
22
+ | --------- | ------------------------------------------------------------------------- | --------------------------- |
23
+ | `machine` | [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | The XState v5 state machine |
23
24
 
24
25
  ## Returns
25
26
 
26
27
  [`RouteTree`](../../play-router/interfaces/RouteTree.md)
27
28
 
28
- Route tree with root, byStateId map, byPath map, and graph
29
+ The route tree, with its root, its byStateId map, its byPath map, and its graph
@@ -2,22 +2,24 @@
2
2
 
3
3
  # Interface: PlayActor
4
4
 
5
- Defined in: [play-router/src/types.ts:297](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/types.ts#L297)
5
+ Defined in: [play-router/src/types.ts:312](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/types.ts#L312)
6
6
 
7
- Full actor shape used by `PlayRouterProvider` components across all framework
8
- adapters (`play-solid-router`, `play-vue-router`, `play-react-router`, and the
9
- adapters built on the shared framework-router bridge bases).
7
+ The complete actor shape of the `PlayRouterProvider` component of each framework
8
+ adapter: `play-solid-router`, `play-vue-router`, `play-react-router`, and each
9
+ adapter on the shared framework router bridge bases.
10
10
 
11
- Extends `RoutableActor` with `currentView` the provider renders the current
12
- view spec in addition to synchronizing routes, so it needs both capabilities.
11
+ The shape extends `RoutableActor` with `currentView`, because the provider renders
12
+ the current view spec and also keeps the routes in step. It therefore needs both
13
+ capabilities.
13
14
 
14
- - Use `RoutableActor` when only routing is needed (e.g. `RouterBridgeBase` subclasses,
15
- `connectRouter`).
16
- - Use `PlayActor` when the component also renders the current view spec
17
- (e.g. `PlayRouterProvider` renderer callback parameter, `PlayRenderer`).
15
+ - Use `RoutableActor` when you need the routing alone, for example in a
16
+ `RouterBridgeBase` subclass, or in `connectRouter`.
17
+ - Use `PlayActor` when the component also renders the current view spec, for
18
+ example for the renderer callback parameter of `PlayRouterProvider`, and in
19
+ `PlayRenderer`.
18
20
 
19
- All `AbstractActor` subclasses that implement both `Routable` and `Viewable`
20
- satisfy this interface structurally.
21
+ Every `AbstractActor` subclass that implements both `Routable` and `Viewable`
22
+ satisfies this interface structurally.
21
23
 
22
24
  ## Example
23
25
 
@@ -25,7 +27,7 @@ satisfy this interface structurally.
25
27
  import type { PlayActor } from "@xmachines/play-router";
26
28
 
27
29
  function MyRouterProvider({ actor }: { actor: PlayActor }) {
28
- // access actor.currentRoute (routing) and actor.currentView (rendering)
30
+ // it reads actor.currentRoute for the routing, and actor.currentView for the render
29
31
  }
30
32
  ```
31
33
 
@@ -35,11 +37,11 @@ function MyRouterProvider({ actor }: { actor: PlayActor }) {
35
37
 
36
38
  ## Properties
37
39
 
38
- | Property | Modifier | Type | Description | Inherited from | Defined in |
39
- | ------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
40
- | <a id="property-currentroute"></a> `currentRoute` | `readonly` | [`Computed`](../../play-signals/namespaces/Signal/classes/Computed.md)\<`string` \| `null`\> | TC39 Signal exposing the actor's current URL path (or state ID). | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md).[`currentRoute`](../../play-dom-router/interfaces/RoutableActor.md#property-currentroute) | [play-router/src/types.ts:261](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/types.ts#L261) |
41
- | <a id="property-currentview"></a> `currentView` | `readonly` | [`State`](../../play-signals/namespaces/Signal/classes/State.md)\<[`PlaySpec`](../../play-actor/interfaces/PlaySpec.md) \| `null`\> | TC39 Signal exposing the actor's current view spec, or `null` when inactive. | - | [play-router/src/types.ts:299](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/types.ts#L299) |
42
- | <a id="property-initialroute"></a> `initialRoute` | `readonly` | `string` \| `null` | The route derived from the machine's initial state fixed at construction. Router bridges compare this against the browser URL to distinguish a deep-link (router wins) from a session restore (actor wins). | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md).[`initialRoute`](../../play-dom-router/interfaces/RoutableActor.md#property-initialroute) | [play-router/src/types.ts:267](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/types.ts#L267) |
40
+ | Property | Modifier | Type | Description | Inherited from | Defined in |
41
+ | ------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
42
+ | <a id="property-currentroute"></a> `currentRoute` | `readonly` | [`Computed`](../../play-signals/namespaces/Signal/classes/Computed.md)\<`string` \| `null`\> | The TC39 Signal of the current URL path of the actor, or of its state ID. | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md).[`currentRoute`](../../play-dom-router/interfaces/RoutableActor.md#property-currentroute) | [play-router/src/types.ts:274](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/types.ts#L274) |
43
+ | <a id="property-currentview"></a> `currentView` | `readonly` | [`State`](../../play-signals/namespaces/Signal/classes/State.md)\<[`PlaySpec`](../../play-actor/interfaces/PlaySpec.md) \| `null`\> | The TC39 Signal of the current view spec of the actor, or `null` when no view is active. | - | [play-router/src/types.ts:314](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/types.ts#L314) |
44
+ | <a id="property-initialroute"></a> `initialRoute` | `readonly` | `string` \| `null` | The route of the initial state of the machine. The constructor fixes it. A router bridge compares it with the browser URL. It therefore separates a deep link, where the router wins, from a restore of a session, where the actor wins. | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md).[`initialRoute`](../../play-dom-router/interfaces/RoutableActor.md#property-initialroute) | [play-router/src/types.ts:280](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/types.ts#L280) |
43
45
 
44
46
  ## Methods
45
47
 
@@ -49,9 +51,9 @@ function MyRouterProvider({ actor }: { actor: PlayActor }) {
49
51
  send(event): void;
50
52
  ```
51
53
 
52
- Defined in: [play-router/src/types.ts:269](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0/packages/play-router/src/types.ts#L269)
54
+ Defined in: [play-router/src/types.ts:282](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/types.ts#L282)
53
55
 
54
- Send a route navigation event to the actor.
56
+ Sends a route navigation event to the actor.
55
57
 
56
58
  #### Parameters
57
59