@xmachines/docs 2.0.0-alpha.1 → 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 (388) hide show
  1. package/README.md +16 -17
  2. package/api/@xmachines/play/README.md +58 -66
  3. package/api/@xmachines/play/classes/NonNullableError.md +14 -14
  4. package/api/@xmachines/play/classes/PlayError.md +32 -34
  5. package/api/@xmachines/play/functions/assertNonNullable.md +17 -17
  6. package/api/@xmachines/play/type-aliases/PlayEvent.md +28 -27
  7. package/api/@xmachines/play-actor/README.md +114 -50
  8. package/api/@xmachines/play-actor/classes/AbstractActor.md +45 -30
  9. package/api/@xmachines/play-actor/functions/attachRenderErrorHandler.md +19 -18
  10. package/api/@xmachines/play-actor/functions/composePlayState.md +27 -0
  11. package/api/@xmachines/play-actor/functions/createViewStoreLifecycle.md +21 -0
  12. package/api/@xmachines/play-actor/functions/guardContextWrites.md +43 -0
  13. package/api/@xmachines/play-actor/functions/refreshContextSubtree.md +28 -0
  14. package/api/@xmachines/play-actor/functions/reuseComposedState.md +42 -0
  15. package/api/@xmachines/play-actor/functions/shallowEqualExcept.md +29 -0
  16. package/api/@xmachines/play-actor/functions/toAtomState.md +16 -14
  17. package/api/@xmachines/play-actor/functions/typedSpec.md +25 -27
  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 -15
  21. package/api/@xmachines/play-actor/interfaces/ResolveViewStoreOptions.md +11 -0
  22. package/api/@xmachines/play-actor/interfaces/Routable.md +6 -6
  23. package/api/@xmachines/play-actor/interfaces/ViewStoreLifecycle.md +50 -0
  24. package/api/@xmachines/play-actor/interfaces/ViewStoreResolution.md +15 -0
  25. package/api/@xmachines/play-actor/interfaces/Viewable.md +9 -9
  26. package/api/@xmachines/play-actor/variables/CONTEXT_STATE_KEY.md +15 -0
  27. package/api/@xmachines/play-dom/README.md +123 -86
  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/functions/createValidationRegistry.md +22 -0
  32. package/api/@xmachines/play-dom/functions/defineRegistry.md +5 -5
  33. package/api/@xmachines/play-dom/interfaces/ComponentContext.md +9 -8
  34. package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +16 -16
  35. package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +2 -0
  36. package/api/@xmachines/play-dom/interfaces/FieldValidationState.md +16 -0
  37. package/api/@xmachines/play-dom/interfaces/MountOptions.md +9 -9
  38. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +17 -17
  39. package/api/@xmachines/play-dom/interfaces/RenderSpecOptions.md +2 -0
  40. package/api/@xmachines/play-dom/interfaces/ValidationRegistry.md +21 -0
  41. package/api/@xmachines/play-dom/type-aliases/BaseComponentProps.md +10 -0
  42. package/api/@xmachines/play-dom/type-aliases/MountFn.md +5 -5
  43. package/api/@xmachines/play-dom/variables/schema.md +35 -45
  44. package/api/@xmachines/play-dom-router/README.md +68 -51
  45. package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +116 -0
  46. package/api/@xmachines/play-dom-router/functions/connectRouter.md +4 -3
  47. package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +16 -14
  48. package/api/@xmachines/play-dom-router/functions/createRouteMap.md +12 -11
  49. package/api/@xmachines/play-dom-router/functions/createRouter.md +14 -14
  50. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +25 -26
  51. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +21 -20
  52. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +7 -7
  53. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +41 -35
  54. package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +18 -17
  55. package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +9 -9
  56. package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +39 -38
  57. package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +5 -5
  58. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +11 -10
  59. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +27 -24
  60. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +7 -7
  61. package/api/@xmachines/play-react/README.md +65 -55
  62. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +14 -13
  63. package/api/@xmachines/play-react/functions/defineRegistry.md +5 -5
  64. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  65. package/api/@xmachines/play-react/functions/useFieldValidation.md +31 -0
  66. package/api/@xmachines/play-react/functions/usePlayView.md +4 -4
  67. package/api/@xmachines/play-react/functions/useSignalEffect.md +39 -39
  68. package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +11 -11
  69. package/api/@xmachines/play-react/interfaces/ComponentContext.md +9 -8
  70. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +7 -7
  71. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +6 -6
  72. package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +14 -14
  73. package/api/@xmachines/play-react/interfaces/ViewContextValue.md +8 -8
  74. package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +2 -2
  75. package/api/@xmachines/play-react/type-aliases/PlayRendererProps.md +13 -0
  76. package/api/@xmachines/play-react/variables/ActorProvider.md +9 -8
  77. package/api/@xmachines/play-react/variables/PlayRenderer.md +5 -4
  78. package/api/@xmachines/play-react/variables/PlayUIProvider.md +6 -6
  79. package/api/@xmachines/play-react-router/README.md +38 -31
  80. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +22 -19
  81. package/api/@xmachines/play-react-router/classes/RouteMap.md +50 -48
  82. package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +16 -14
  83. package/api/@xmachines/play-react-router/functions/createRouteMap.md +12 -11
  84. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +18 -18
  85. package/api/@xmachines/play-react-router/interfaces/PlayActor.md +22 -20
  86. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +41 -35
  87. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderBaseProps.md +12 -12
  88. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  89. package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +5 -5
  90. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +11 -10
  91. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +27 -24
  92. package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +2 -2
  93. package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +7 -6
  94. package/api/@xmachines/play-router/README.md +99 -95
  95. package/api/@xmachines/play-router/classes/RouteMap.md +50 -48
  96. package/api/@xmachines/play-router/classes/RouterBridgeBase.md +29 -23
  97. package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +6 -5
  98. package/api/@xmachines/play-router/functions/buildRouteTree.md +16 -15
  99. package/api/@xmachines/play-router/functions/createRouteMap.md +12 -11
  100. package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +18 -18
  101. package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +18 -17
  102. package/api/@xmachines/play-router/functions/extractMachineRoutes.md +11 -10
  103. package/api/@xmachines/play-router/functions/extractQuery.md +3 -3
  104. package/api/@xmachines/play-router/functions/extractRouteParams.md +22 -19
  105. package/api/@xmachines/play-router/functions/findRouteById.md +10 -9
  106. package/api/@xmachines/play-router/functions/findRouteByPath.md +14 -12
  107. package/api/@xmachines/play-router/functions/getNavigableRoutes.md +9 -9
  108. package/api/@xmachines/play-router/functions/getRoutableRoutes.md +9 -9
  109. package/api/@xmachines/play-router/functions/getTransitionReachableRoutes.md +16 -15
  110. package/api/@xmachines/play-router/functions/isRouteReachable.md +12 -11
  111. package/api/@xmachines/play-router/functions/machineToGraph.md +1 -1
  112. package/api/@xmachines/play-router/functions/routeExists.md +8 -8
  113. package/api/@xmachines/play-router/functions/sanitizePathname.md +15 -13
  114. package/api/@xmachines/play-router/functions/validateRouteFormat.md +10 -10
  115. package/api/@xmachines/play-router/functions/validateStateExists.md +9 -9
  116. package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +6 -6
  117. package/api/@xmachines/play-router/interfaces/LocationLike.md +11 -11
  118. package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +7 -9
  119. package/api/@xmachines/play-router/interfaces/MachineNodeData.md +9 -9
  120. package/api/@xmachines/play-router/interfaces/PlayActor.md +22 -20
  121. package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +41 -35
  122. package/api/@xmachines/play-router/interfaces/ResolvedRoutePath.md +7 -7
  123. package/api/@xmachines/play-router/interfaces/RoutableActor.md +18 -17
  124. package/api/@xmachines/play-router/interfaces/RouteInfo.md +11 -11
  125. package/api/@xmachines/play-router/interfaces/RouteMapOptions.md +5 -5
  126. package/api/@xmachines/play-router/interfaces/RouteMapping.md +11 -10
  127. package/api/@xmachines/play-router/interfaces/RouteMatch.md +5 -5
  128. package/api/@xmachines/play-router/interfaces/RouteNode.md +13 -13
  129. package/api/@xmachines/play-router/interfaces/RouteObject.md +6 -6
  130. package/api/@xmachines/play-router/interfaces/RouteTree.md +11 -11
  131. package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +13 -13
  132. package/api/@xmachines/play-router/interfaces/RouterBridge.md +27 -24
  133. package/api/@xmachines/play-router/interfaces/WindowLike.md +10 -10
  134. package/api/@xmachines/play-router/type-aliases/BaseRouteMapping.md +13 -0
  135. package/api/@xmachines/play-router/type-aliases/MachineGraph.md +4 -3
  136. package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +2 -2
  137. package/api/@xmachines/play-signals/README.md +38 -36
  138. package/api/@xmachines/play-signals/functions/watchSignal.md +15 -15
  139. package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +6 -6
  140. package/api/@xmachines/play-signals/interfaces/SignalComputed.md +10 -10
  141. package/api/@xmachines/play-signals/interfaces/SignalOptions.md +6 -6
  142. package/api/@xmachines/play-signals/interfaces/SignalState.md +13 -13
  143. package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +18 -18
  144. package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +6 -5
  145. package/api/@xmachines/play-solid/README.md +46 -42
  146. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  147. package/api/@xmachines/play-solid/functions/usePlayView.md +3 -3
  148. package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +13 -13
  149. package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +14 -14
  150. package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +9 -9
  151. package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +2 -2
  152. package/api/@xmachines/play-solid/variables/ActorContext.md +5 -4
  153. package/api/@xmachines/play-solid/variables/ActorProvider.md +8 -7
  154. package/api/@xmachines/play-solid/variables/PlayRenderer.md +6 -4
  155. package/api/@xmachines/play-solid/variables/PlayUIProvider.md +7 -7
  156. package/api/@xmachines/play-solid-router/README.md +39 -34
  157. package/api/@xmachines/play-solid-router/classes/RouteMap.md +50 -48
  158. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +43 -34
  159. package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +15 -13
  160. package/api/@xmachines/play-solid-router/functions/createRouteMap.md +12 -11
  161. package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +45 -30
  162. package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +22 -20
  163. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +41 -35
  164. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderBaseProps.md +10 -10
  165. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +11 -11
  166. package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +5 -5
  167. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +11 -10
  168. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +27 -24
  169. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +5 -5
  170. package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +2 -2
  171. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +11 -11
  172. package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +9 -8
  173. package/api/@xmachines/play-svelte/README.md +60 -33
  174. package/api/@xmachines/play-svelte/functions/defineRegistry.md +9 -8
  175. package/api/@xmachines/play-svelte/functions/getActorContext.md +5 -4
  176. package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +3 -3
  177. package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
  178. package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +17 -15
  179. package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +9 -9
  180. package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +20 -18
  181. package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +12 -11
  182. package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +2 -2
  183. package/api/@xmachines/play-svelte-spa-router/README.md +43 -52
  184. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +50 -48
  185. package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +133 -0
  186. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +3 -3
  187. package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +12 -11
  188. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +7 -7
  189. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +41 -35
  190. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +5 -5
  191. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +11 -10
  192. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +27 -24
  193. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +10 -10
  194. package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +1 -1
  195. package/api/@xmachines/play-sveltekit-router/README.md +43 -39
  196. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +50 -48
  197. package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +132 -0
  198. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +3 -3
  199. package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +12 -11
  200. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +6 -6
  201. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +11 -11
  202. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +41 -35
  203. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +5 -5
  204. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +11 -10
  205. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +27 -24
  206. package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +1 -1
  207. package/api/@xmachines/play-tanstack-react-router/README.md +67 -49
  208. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +50 -48
  209. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +43 -38
  210. package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +16 -14
  211. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +12 -11
  212. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +18 -18
  213. package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +11 -10
  214. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayActor.md +22 -20
  215. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +41 -35
  216. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderBaseProps.md +12 -12
  217. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  218. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +5 -5
  219. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +11 -10
  220. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +16 -11
  221. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +27 -24
  222. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +2 -2
  223. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  224. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +15 -13
  225. package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +9 -8
  226. package/api/@xmachines/play-tanstack-router/README.md +38 -16
  227. package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +43 -38
  228. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +9 -9
  229. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +15 -13
  230. package/api/@xmachines/play-tanstack-solid-router/README.md +76 -50
  231. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +50 -48
  232. package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +38 -30
  233. package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +15 -13
  234. package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +12 -11
  235. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayActor.md +22 -20
  236. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +41 -35
  237. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderBaseProps.md +11 -11
  238. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +9 -9
  239. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +5 -5
  240. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +11 -10
  241. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +27 -24
  242. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +2 -2
  243. package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +2 -2
  244. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  245. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +15 -13
  246. package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +7 -7
  247. package/api/@xmachines/play-vue/README.md +39 -39
  248. package/api/@xmachines/play-vue/functions/defineRegistry.md +10 -9
  249. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  250. package/api/@xmachines/play-vue/functions/useFieldValidation.md +31 -0
  251. package/api/@xmachines/play-vue/functions/usePlayView.md +28 -0
  252. package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +10 -9
  253. package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +13 -12
  254. package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +10 -9
  255. package/api/@xmachines/play-vue/interfaces/VisibilityProviderProps.md +6 -2
  256. package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +2 -2
  257. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
  258. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
  259. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +4 -4
  260. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  261. package/api/@xmachines/play-vue/variables/getPlayViewContext.md +34 -0
  262. package/api/@xmachines/play-vue-router/README.md +66 -57
  263. package/api/@xmachines/play-vue-router/classes/RouteMap.md +50 -48
  264. package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +26 -19
  265. package/api/@xmachines/play-vue-router/functions/createRouteMap.md +12 -11
  266. package/api/@xmachines/play-vue-router/interfaces/PlayActor.md +22 -20
  267. package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +41 -35
  268. package/api/@xmachines/play-vue-router/interfaces/RouteMapOptions.md +5 -5
  269. package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +11 -10
  270. package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +27 -24
  271. package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +2 -2
  272. package/api/@xmachines/play-vue-router/type-aliases/VueRouteMap.md +13 -0
  273. package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +5 -5
  274. package/api/@xmachines/play-vue-router/variables/VueRouteMap.md +13 -0
  275. package/api/@xmachines/play-xstate/README.md +129 -138
  276. package/api/@xmachines/play-xstate/classes/PlayerActor.md +148 -114
  277. package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +19 -23
  278. package/api/@xmachines/play-xstate/functions/composeGuards.md +34 -33
  279. package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +27 -22
  280. package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +19 -14
  281. package/api/@xmachines/play-xstate/functions/definePlayer.md +19 -19
  282. package/api/@xmachines/play-xstate/functions/deriveRoute.md +26 -25
  283. package/api/@xmachines/play-xstate/functions/eventMatches.md +12 -7
  284. package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +17 -48
  285. package/api/@xmachines/play-xstate/functions/hasContext.md +12 -9
  286. package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +10 -10
  287. package/api/@xmachines/play-xstate/functions/negateGuard.md +26 -20
  288. package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +6 -6
  289. package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +7 -7
  290. package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +10 -11
  291. package/api/@xmachines/play-xstate/interfaces/RouteContext.md +15 -14
  292. package/api/@xmachines/play-xstate/interfaces/RouteObject.md +4 -4
  293. package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +9 -25
  294. package/api/@xmachines/play-xstate/type-aliases/Guard.md +13 -11
  295. package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +8 -5
  296. package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +11 -15
  297. package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +12 -19
  298. package/api/@xmachines/play-xstate/type-aliases/RouteMetadata.md +1 -1
  299. package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +15 -26
  300. package/api/@xmachines/shared/README.md +12 -14
  301. package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +1 -1
  302. package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
  303. package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +12 -7
  304. package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
  305. package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +9 -4
  306. package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
  307. package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +1 -1
  308. package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +6 -6
  309. package/contributing/architecture.md +27 -28
  310. package/contributing/configuration.md +10 -10
  311. package/contributing/deployment.md +51 -30
  312. package/contributing/development.md +90 -21
  313. package/contributing/testing.md +36 -14
  314. package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +1 -1
  315. package/examples/@xmachines/play-dom-demo/functions/initShell.md +1 -1
  316. package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +1 -1
  317. package/examples/@xmachines/play-dom-demo/variables/About.md +1 -1
  318. package/examples/@xmachines/play-dom-demo/variables/Contact.md +1 -1
  319. package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +1 -1
  320. package/examples/@xmachines/play-dom-demo/variables/Home.md +1 -1
  321. package/examples/@xmachines/play-dom-demo/variables/Login.md +1 -1
  322. package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +1 -1
  323. package/examples/@xmachines/play-dom-demo/variables/Navigation.md +1 -1
  324. package/examples/@xmachines/play-dom-demo/variables/Overview.md +1 -1
  325. package/examples/@xmachines/play-dom-demo/variables/Profile.md +1 -1
  326. package/examples/@xmachines/play-dom-demo/variables/Settings.md +1 -1
  327. package/examples/@xmachines/play-dom-demo/variables/Stats.md +1 -1
  328. package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +1 -1
  329. package/examples/@xmachines/play-react-demo/functions/App.md +1 -1
  330. package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +1 -1
  331. package/examples/@xmachines/play-react-demo/variables/About.md +1 -1
  332. package/examples/@xmachines/play-react-demo/variables/Contact.md +1 -1
  333. package/examples/@xmachines/play-react-demo/variables/Dashboard.md +1 -1
  334. package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +1 -1
  335. package/examples/@xmachines/play-react-demo/variables/Home.md +1 -1
  336. package/examples/@xmachines/play-react-demo/variables/Login.md +1 -1
  337. package/examples/@xmachines/play-react-demo/variables/NavBar.md +1 -1
  338. package/examples/@xmachines/play-react-demo/variables/NavBarView.md +1 -1
  339. package/examples/@xmachines/play-react-demo/variables/Navigation.md +1 -1
  340. package/examples/@xmachines/play-react-demo/variables/Overview.md +1 -1
  341. package/examples/@xmachines/play-react-demo/variables/Profile.md +1 -1
  342. package/examples/@xmachines/play-react-demo/variables/Settings.md +1 -1
  343. package/examples/@xmachines/play-react-demo/variables/Shell.md +1 -1
  344. package/examples/@xmachines/play-react-demo/variables/Stats.md +1 -1
  345. package/examples/@xmachines/play-react-demo/variables/authCatalog.md +1 -1
  346. package/examples/@xmachines/play-solid-demo/functions/App.md +1 -1
  347. package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +1 -1
  348. package/examples/@xmachines/play-solid-demo/variables/About.md +1 -1
  349. package/examples/@xmachines/play-solid-demo/variables/Contact.md +1 -1
  350. package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +1 -1
  351. package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +1 -1
  352. package/examples/@xmachines/play-solid-demo/variables/Home.md +1 -1
  353. package/examples/@xmachines/play-solid-demo/variables/Login.md +1 -1
  354. package/examples/@xmachines/play-solid-demo/variables/NavBar.md +1 -1
  355. package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +1 -1
  356. package/examples/@xmachines/play-solid-demo/variables/Navigation.md +1 -1
  357. package/examples/@xmachines/play-solid-demo/variables/Overview.md +1 -1
  358. package/examples/@xmachines/play-solid-demo/variables/Profile.md +1 -1
  359. package/examples/@xmachines/play-solid-demo/variables/Settings.md +1 -1
  360. package/examples/@xmachines/play-solid-demo/variables/Shell.md +1 -1
  361. package/examples/@xmachines/play-solid-demo/variables/Stats.md +1 -1
  362. package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +1 -1
  363. package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +1 -1
  364. package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +1 -1
  365. package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +1 -1
  366. package/examples/@xmachines/play-vue-demo/variables/App.md +1 -1
  367. package/examples/@xmachines/play-vue-demo/variables/authCatalog.md +1 -1
  368. package/examples/README.md +4 -1
  369. package/examples/basic-state-machine.md +24 -24
  370. package/examples/form-validation.md +110 -121
  371. package/examples/multi-router-integration.md +0 -2
  372. package/examples/routing-patterns.md +60 -94
  373. package/examples/traffic-light.md +57 -48
  374. package/guides/README.md +6 -2
  375. package/guides/actor-model.md +1 -1
  376. package/guides/getting-started.md +89 -90
  377. package/guides/inspector.md +197 -0
  378. package/guides/state-machines.md +55 -69
  379. package/package.json +10 -7
  380. package/rfc/play.md +15 -6
  381. package/api/@xmachines/play-vue/functions/getPlayViewContext.md +0 -28
  382. package/api/@xmachines/play-xstate/functions/createRoutedMachine.md +0 -87
  383. package/api/@xmachines/play-xstate/type-aliases/PlayRoutePayload.md +0 -30
  384. package/api/@xmachines/play-xstate/type-aliases/SetupLike.md +0 -33
  385. package/api/@xmachines/play-xstate/type-aliases/WithOptional.md +0 -31
  386. package/api/@xmachines/play-xstate/variables/emptyEventSchema.md +0 -37
  387. package/api/@xmachines/play-xstate/variables/playMetaSchema.md +0 -40
  388. package/api/@xmachines/play-xstate/variables/playRouteEventSchema.md +0 -9
@@ -6,20 +6,16 @@
6
6
  function formatPlayRouteTransitions<T>(machineConfig): T;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-xstate/src/routing/format-play-route-transitions.ts:146](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/routing/format-play-route-transitions.ts#L146)
9
+ Defined in: [packages/play-xstate/src/routing/format-play-route-transitions.ts:112](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/routing/format-play-route-transitions.ts#L112)
10
10
 
11
- Formats play.route routing from declarative route configs.
11
+ Makes the play.route transitions from the declarative route configs
12
12
 
13
- Crawls machine states looking for states with `meta.route` and wires them to
14
- XState v6's **native routing machinery**:
13
+ The function walks the machine states. It looks for each state with a `meta.route`
14
+ field, and it generates the transitions that handle a `play.route` event: each
15
+ transition matches event.to against a state ID.
15
16
 
16
- - every routed state gets a native `route: {}` config (unless it already
17
- declares its own `route`), making it targetable via the built-in
18
- `{ type: "xstate.route", to: "#id" }` event (Stately tooling interop and
19
- statically-known graph edges), and
20
- - one root-level `play.route` forwarder performs the navigation for those
21
- targets as ONE atomic transition: target + re-entry + a shallow
22
- `params`/`query` context patch.
17
+ The internal formatRouteTransitions function of XState was the model for this
18
+ function (stateUtils.ts, line 391).
23
19
 
24
20
  ## Type Parameters
25
21
 
@@ -29,15 +25,15 @@ XState v6's **native routing machinery**:
29
25
 
30
26
  ## Parameters
31
27
 
32
- | Parameter | Type | Description |
33
- | --------------- | ---- | ------------------------------------------------------------------------------- |
34
- | `machineConfig` | `T` | XState machine config (before createMachine). Must extend `RouteMachineConfig`. |
28
+ | Parameter | Type | Description |
29
+ | --------------- | ---- | --------------------------------------------------------------------------------------- |
30
+ | `machineConfig` | `T` | The XState machine config, before `createMachine`. It must extend `RouteMachineConfig`. |
35
31
 
36
32
  ## Returns
37
33
 
38
34
  `T`
39
35
 
40
- The machine config with native `route` configs and the `play.route` forwarder merged in, preserving the original type `T`.
36
+ The same machine config, with the generated `play.route` handlers in it. The original type `T` stays.
41
37
 
42
38
  ## Example
43
39
 
@@ -53,36 +49,9 @@ const machineConfig = {
53
49
  const machine = createMachine(formatPlayRouteTransitions(machineConfig));
54
50
  ```
55
51
 
56
- Because the injected `route` configs are static (object form), the machine's
57
- route transitions keep **statically-known targets** — `toDirectedGraph()` /
58
- `machineToGraph()` edges point at the actual routed states, so graph
59
- reachability queries work. (Function-form transition candidates would have
60
- dynamic targets, opaque to static analysis.)
61
-
62
- The `play.route` public API and its v5 semantics are preserved:
63
-
64
- - `send({ type: "play.route", to: "#home", params, query })` navigates and
65
- patches `context.params`/`context.query` in the SAME transition — exit
66
- actions of the departing state observe the OLD params, entry actions of
67
- the target observe the NEW ones, `always` transitions never see a
68
- half-navigated intermediate state, and entry/exit actions receive the
69
- original `play.route` event;
70
- - user-defined `play.route` transitions (e.g. a hand-written 404 fallback)
71
- are preserved AFTER the forwarder: for unknown targets the forwarder
72
- returns `undefined`, so evaluation falls through to them;
73
- - `params`/`query` are only patched when the forwarder navigates — unknown
74
- and blocked targets leave context untouched.
75
-
76
- When a state declares its OWN `route` config (which wins over the injected
77
- default), the forwarder re-raises the event as `xstate.route` instead of
78
- navigating, so the user's resolver decides — including blocking. The
79
- forwarder does NOT patch `params`/`query` for such targets (a blocking
80
- resolver would otherwise leave context describing a route that was never
81
- entered); the user's function-form resolver owns any context patch, and
82
- that navigation microstep runs under the `xstate.route` event.
83
-
84
- Native `xstate.route` events also work directly (Stately ecosystem tooling),
85
- but bypass the forwarder — no `params`/`query` context patch is applied, so
86
- stale values from earlier `play.route` events linger in context (and a
87
- router bridge deriving the URL from context would interpolate those stale
88
- params).
52
+ The function generates the `play.route` handlers at the root level. Those
53
+ handlers:
54
+
55
+ - match event.to against a state ID, for example event.to === "#home"
56
+ - target the correct state
57
+ - assign the params and the query of the event to the context
@@ -1,16 +1,14 @@
1
1
  [API](../../../README.md) / [@xmachines/play-xstate](../README.md) / hasContext
2
2
 
3
- # Function: hasContext()
3
+ # ~~Function: hasContext()~~
4
4
 
5
5
  ```ts
6
6
  function hasContext<TContext>(path): Guard<TContext, PlayEvent>;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-xstate/src/guards/helpers.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/guards/helpers.ts#L24)
9
+ Defined in: [packages/play-xstate/src/guards/helpers.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/guards/helpers.ts#L24)
10
10
 
11
- Check if context has a truthy value at path
12
-
13
- Per CONTEXT.md: Convenience helper for common guard pattern
11
+ Tells you if the context holds a value at the path, and that the value is truthy
14
12
 
15
13
  ## Type Parameters
16
14
 
@@ -20,15 +18,15 @@ Per CONTEXT.md: Convenience helper for common guard pattern
20
18
 
21
19
  ## Parameters
22
20
 
23
- | Parameter | Type | Description |
24
- | --------- | -------- | -------------------------------------- |
25
- | `path` | `string` | Dot-separated path to context property |
21
+ | Parameter | Type | Description |
22
+ | --------- | -------- | ----------------------------------------------------------------- |
23
+ | `path` | `string` | The path to the context property, with a dot between two segments |
26
24
 
27
25
  ## Returns
28
26
 
29
27
  [`Guard`](../type-aliases/Guard.md)\<`TContext`, [`PlayEvent`](../../play/type-aliases/PlayEvent.md)\>
30
28
 
31
- Guard predicate checking if property is truthy
29
+ The guard predicate. It tests the property for a truthy value
32
30
 
33
31
  ## Example
34
32
 
@@ -40,3 +38,8 @@ const machine = setup({
40
38
  },
41
39
  });
42
40
  ```
41
+
42
+ ## Deprecated
43
+
44
+ This function is part of the guard utilities, and the next major version removes
45
+ them. Write a plain typed predicate instead.
@@ -6,25 +6,25 @@
6
6
  function isAbsoluteRoute(path): boolean;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-xstate/src/routing/derive-route.ts:160](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/routing/derive-route.ts#L160)
9
+ Defined in: [packages/play-xstate/src/routing/derive-route.ts:163](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/routing/derive-route.ts#L163)
10
10
 
11
- Check if route path is absolute
11
+ Tells you if the route path is absolute
12
12
 
13
- Determines whether a route path is absolute (starts with `/`) or relative.
14
- Absolute paths don't inherit from parent routes, while relative paths can be
15
- composed with parent paths for nested routing.
13
+ The function decides if a route path is absolute, which means that it starts with
14
+ `/`, or relative. An absolute path inherits nothing from a parent route. A
15
+ relative path joins a parent path, for a nested routing.
16
16
 
17
17
  ## Parameters
18
18
 
19
- | Parameter | Type | Description |
20
- | --------- | -------- | ------------------- |
21
- | `path` | `string` | Route path to check |
19
+ | Parameter | Type | Description |
20
+ | --------- | -------- | ---------------------- |
21
+ | `path` | `string` | The route path to test |
22
22
 
23
23
  ## Returns
24
24
 
25
25
  `boolean`
26
26
 
27
- true if path starts with '/', false otherwise
27
+ true when the path starts with '/'. In every other case, false
28
28
 
29
29
  ## Example
30
30
 
@@ -38,4 +38,4 @@ console.log(isAbsoluteRoute("./about")); // false
38
38
 
39
39
  ## See
40
40
 
41
- [deriveRoute](deriveRoute.md) for route extraction
41
+ [deriveRoute](deriveRoute.md) for the read of a route
@@ -1,55 +1,56 @@
1
1
  [API](../../../README.md) / [@xmachines/play-xstate](../README.md) / negateGuard
2
2
 
3
- # Function: negateGuard()
3
+ # ~~Function: negateGuard()~~
4
4
 
5
5
  ```ts
6
6
  function negateGuard<TContext, TEvent>(guard): ComposedGuard;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-xstate/src/guards/compose.ts:248](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/guards/compose.ts#L248)
9
+ Defined in: [packages/play-xstate/src/guards/compose.ts:215](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/guards/compose.ts#L215)
10
10
 
11
- Negate a guard.
11
+ Negates a guard, through the not() helper of XState
12
12
 
13
- Inverts a guard's result—if the guard passes, NOT fails; if guard fails, NOT passes.
13
+ The function inverts the result of a guard: the guard passes, and NOT then fails;
14
+ the guard fails, and NOT then passes. It uses the built-in `not()` helper of
15
+ XState, and the serialization is therefore correct.
14
16
 
15
17
  ## Type Parameters
16
18
 
17
- | Type Parameter | Default type | Description |
18
- | -------------- | ------------ | ----------------------------------------------------------------------------------------------- |
19
- | `TContext` | `any` | State machine context type (defaults to `any` so inline predicates compile without annotations) |
20
- | `TEvent` | `any` | Event type |
19
+ | Type Parameter | Default type | Description |
20
+ | -------------- | ------------ | ------------------------------------- |
21
+ | `TContext` | `any` | The context type of the state machine |
22
+ | `TEvent` | `any` | The event type |
21
23
 
22
24
  ## Parameters
23
25
 
24
- | Parameter | Type | Description |
25
- | --------- | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
26
- | `guard` | `string` \| [`Guard`](../type-aliases/Guard.md)\<`TContext`, `TEvent`\> | Guard predicate or guard name (resolved against `args.guards` from `setup({ guards })`) to negate |
26
+ | Parameter | Type | Description |
27
+ | --------- | ----------------------------------------------------------------------- | ------------------------------------------ |
28
+ | `guard` | `string` \| [`Guard`](../type-aliases/Guard.md)\<`TContext`, `TEvent`\> | The guard predicate to negate, or its name |
27
29
 
28
30
  ## Returns
29
31
 
30
32
  [`ComposedGuard`](../type-aliases/ComposedGuard.md)
31
33
 
32
- Predicate returning the inverted guard result
34
+ The not() guard negation of XState
33
35
 
34
36
  ## Example
35
37
 
36
- NOT composition with named guard
38
+ A NOT composition with a named guard
37
39
 
38
40
  ```typescript
39
41
  import { setup } from "xstate";
40
42
  import { negateGuard } from "@xmachines/play-xstate";
41
43
 
42
- const isAuthenticated = negateGuard("isGuest");
43
-
44
44
  const machine = setup({
45
45
  guards: {
46
46
  isGuest: ({ context }) => !context.userId,
47
47
  },
48
48
  }).createMachine({
49
49
  on: {
50
- accessDashboard: (args) => {
51
- if (!isAuthenticated(args)) return;
52
- return { target: "dashboard" };
50
+ accessDashboard: {
51
+ // Permit the transition when the user is NOT a guest, which means an authenticated user
52
+ guard: negateGuard("isGuest"),
53
+ target: "dashboard",
53
54
  },
54
55
  },
55
56
  });
@@ -57,5 +58,10 @@ const machine = setup({
57
58
 
58
59
  ## See
59
60
 
60
- - [composeGuards](composeGuards.md) for AND composition
61
- - [composeGuardsOr](composeGuardsOr.md) for OR composition
61
+ - [composeGuards](composeGuards.md) for the AND composition
62
+ - [composeGuardsOr](composeGuardsOr.md) for the OR composition
63
+
64
+ ## Deprecated
65
+
66
+ Use the `and()`, `or()`, and `not()` combinators of XState directly. This helper
67
+ does not compose with a guard slot that `setup()` types, and the next major version removes it.
@@ -2,9 +2,9 @@
2
2
 
3
3
  # Interface: PlayerConfig\<TMachine\>
4
4
 
5
- Defined in: [packages/play-xstate/src/types.ts:7](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/types.ts#L7)
5
+ Defined in: [packages/play-xstate/src/types.ts:7](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L7)
6
6
 
7
- Configuration for definePlayer()
7
+ The configuration of definePlayer()
8
8
 
9
9
  ## Type Parameters
10
10
 
@@ -14,7 +14,7 @@ Configuration for definePlayer()
14
14
 
15
15
  ## Properties
16
16
 
17
- | Property | Type | Description | Defined in |
18
- | ---------------------------------------- | ------------------------------------------------- | --------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
19
- | <a id="property-machine"></a> `machine` | `TMachine` | XState v6 state machine | [packages/play-xstate/src/types.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/types.ts#L9) |
20
- | <a id="property-options"></a> `options?` | [`PlayerOptions`](PlayerOptions.md)\<`TMachine`\> | Lifecycle hooks and configuration | [packages/play-xstate/src/types.ts:12](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/types.ts#L12) |
17
+ | Property | Type | Description | Defined in |
18
+ | ---------------------------------------- | ------------------------------------------------- | ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
19
+ | <a id="property-machine"></a> `machine` | `TMachine` | The XState v5 state machine | [packages/play-xstate/src/types.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L9) |
20
+ | <a id="property-options"></a> `options?` | [`PlayerOptions`](PlayerOptions.md)\<`TMachine`\> | The lifecycle hooks and the configuration | [packages/play-xstate/src/types.ts:12](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L12) |
@@ -2,12 +2,12 @@
2
2
 
3
3
  # Interface: PlayerFactoryResumeOptions\<TMachine\>
4
4
 
5
- Defined in: [packages/play-xstate/src/types.ts:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/types.ts#L47)
5
+ Defined in: [packages/play-xstate/src/types.ts:115](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L115)
6
6
 
7
- Optional restore arguments for the player factory.
7
+ The optional restore arguments of the player factory.
8
8
 
9
- Mirrors XState's createActor options bag while preserving the existing
10
- `createPlayer(input?)` calling convention for fresh actors.
9
+ The shape follows the options object of `createActor` in XState. It also keeps the
10
+ `createPlayer(input?)` calling convention of a new actor.
11
11
 
12
12
  ## Type Parameters
13
13
 
@@ -17,6 +17,6 @@ Mirrors XState's createActor options bag while preserving the existing
17
17
 
18
18
  ## Properties
19
19
 
20
- | Property | Type | Description | Defined in |
21
- | ------------------------------------------ | --------------------------------------------------------------------------------- | ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- |
22
- | <a id="property-snapshot"></a> `snapshot?` | [`SnapshotFrom`](https://www.jsdocs.io/package/xstate#SnapshotFrom)\<`TMachine`\> | Persisted XState snapshot used to restore actor state. | [packages/play-xstate/src/types.ts:49](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/types.ts#L49) |
20
+ | Property | Type | Description | Defined in |
21
+ | ------------------------------------------ | ------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
22
+ | <a id="property-snapshot"></a> `snapshot?` | [`Snapshot`](https://www.jsdocs.io/package/xstate#Snapshot)\<`unknown`\> | The persisted XState snapshot. The factory restores the actor state from it. Its type is the `ActorOptions["snapshot"]` type of XState, which is the exact type that `createActor` accepts and that `getPersistedSnapshot()` returns. The restore of a stored snapshot therefore needs no cast. | [packages/play-xstate/src/types.ts:123](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L123) |
@@ -2,11 +2,9 @@
2
2
 
3
3
  # Interface: PlayerOptions\<TMachine\>
4
4
 
5
- Defined in: [packages/play-xstate/src/types.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/types.ts#L20)
5
+ Defined in: [packages/play-xstate/src/types.ts:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L18)
6
6
 
7
- Player lifecycle hooks
8
-
9
- Per CONTEXT.md: Rich set of hooks for observability
7
+ The lifecycle hooks of the player — the observability surface around the actor.
10
8
 
11
9
  ## Type Parameters
12
10
 
@@ -16,10 +14,11 @@ Per CONTEXT.md: Rich set of hooks for observability
16
14
 
17
15
  ## Properties
18
16
 
19
- | Property | Type | Description | Defined in |
20
- | ---------------------------------------------------- | --------------------------------------------- | -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
21
- | <a id="property-onerror"></a> `onError?` | (`actor`, `error`) => `void` | Called on actor errors | [packages/play-xstate/src/types.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/types.ts#L38) |
22
- | <a id="property-onstart"></a> `onStart?` | (`actor`) => `void` | Called when actor starts | [packages/play-xstate/src/types.ts:22](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/types.ts#L22) |
23
- | <a id="property-onstatechange"></a> `onStateChange?` | (`actor`, `state`) => `void` | Called when state signal changes | [packages/play-xstate/src/types.ts:35](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/types.ts#L35) |
24
- | <a id="property-onstop"></a> `onStop?` | (`actor`) => `void` | Called when actor stops | [packages/play-xstate/src/types.ts:25](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/types.ts#L25) |
25
- | <a id="property-ontransition"></a> `onTransition?` | (`actor`, `prevState`, `nextState`) => `void` | Called on every state transition | [packages/play-xstate/src/types.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/types.ts#L28) |
17
+ | Property | Type | Description | Defined in |
18
+ | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
19
+ | <a id="property-inspect"></a> `inspect?` | \| [`Observer`](https://www.jsdocs.io/package/xstate#Observer)\<`InspectionEvent`\> \| ((`inspectionEvent`) => `void`) | The inspection observer. The factory gives it to `createActor` of XState without a change. This is the attachment at the moment of the creation, and it is the only route that observes the construction events of the actor. An attachment later, with `actor.system.inspect(fn)`, also works, but it sees only the events after that moment. A `PlayerActor` is the XState actor itself. Therefore its own events carry `actorRef === playerActor`, and you can recognize it by its identity. Each `PlayerActor` is also its own root system. Therefore `event.rootId === actor.sessionId` separates the complete tree, and this includes the events of an invoked child and of a spawned child, whose `actorRef` is the child. That identity brings one point to note: the `@xstate.actor` event fires from inside the constructor of the actor. Its `actorRef` value is therefore the instance during the construction, and `state`, `currentRoute`, `currentView`, and `initialRoute` do not exist yet. A read of one of them there throws. Keep the reference, and read the signals from a later event, or outside the observer. **Example** `import { createBrowserInspector } from "@statelyai/inspect"; const { inspect } = createBrowserInspector(); const createPlayer = definePlayer({ machine, options: { inspect } });` For an inspector that you create after the factory, for example behind a dev-tools switch, give the factory a function that forwards each event: `inspect: (event) => currentInspector?.(event)`. | [packages/play-xstate/src/types.ts:106](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L106) |
20
+ | <a id="property-onerror"></a> `onError?` | (`actor`, `error`) => `void` | The actor calls it on an actor error: a snapshot restore that fails at `start()`, an action or a guard that throws, and a failure of the view derivation. The actor reads this field at the moment of the delivery of an error, and not at its construction. The options object is shared by its reference. Therefore a handler on that object still receives each actor error, also after a later attachment, and the removal of the handler restores the loud default below. With a handler in place, the actor sends the error there, and the error counts as handled. XState decides its own global rethrow for each observer, and this option does not reach that decision: a subscription of your own without an `error` listener still forces the rethrow, with an `onError` handler and without one. Without `onError`, each actor error stays loud, with an unhandled rethrow through `setTimeout`. No error therefore disappears in silence. Your own `error` subscribers stop that default not: `onError` alone stops it. A failure of the actor that is an `Error` already arrives without a change, and it keeps the identity of the machine. A machine that throws a value that is not an `Error` arrives as an `ActorThrewNonErrorError`, with the value from the throw on its `cause` field. | [packages/play-xstate/src/types.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L71) |
21
+ | <a id="property-onstart"></a> `onStart?` | (`actor`) => `void` | The actor calls it on each real start, which is every transition from "not running" to "running". A start after a stop is such a transition. A second `start()` call while the actor runs fires the hook not again. | [packages/play-xstate/src/types.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L24) |
22
+ | <a id="property-onstatechange"></a> `onStateChange?` | (`actor`, `state`) => `void` | The actor calls it when the state signal changes | [packages/play-xstate/src/types.ts:46](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L46) |
23
+ | <a id="property-onstop"></a> `onStop?` | (`actor`) => `void` | The actor calls it on each real stop, which means only after it tore a running actor down. A second `stop()` call, a second `dispose()` call, and a stop of an actor that never started fire the hook not. | [packages/play-xstate/src/types.ts:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L31) |
24
+ | <a id="property-ontransition"></a> `onTransition?` | (`actor`, `prevState`, `nextState`) => `void` | The actor calls it after every event that `send()` processes. This includes an event that the machine ignores, and `prevState` and `nextState` are then the same snapshot. Compare the two values when only a real transition is important to you. | [packages/play-xstate/src/types.ts:39](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/types.ts#L39) |
@@ -2,23 +2,24 @@
2
2
 
3
3
  # Interface: RouteContext
4
4
 
5
- Defined in: [packages/play-xstate/src/routing/types.ts:19](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/routing/types.ts#L19)
5
+ Defined in: [packages/play-xstate/src/routing/types.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/routing/types.ts#L20)
6
6
 
7
- Route build context from machine context.
7
+ The context of the route construction, from the machine context.
8
8
 
9
- All URL parameter substitution must go through `params` flat context fields are not
10
- inspected. This is intentional: the index signature was removed to enable compile-time
11
- validation of context shapes and IDE autocomplete on context fields.
9
+ Every substitution of a URL parameter reads `params`, because the type reads no
10
+ flat context field. This is deliberate: the type has no index signature now, and
11
+ the compiler therefore checks the shape of a context, and the IDE completes each
12
+ context field.
12
13
 
13
- Machines using `formatPlayRouteTransitions` have `params` and `query` assigned
14
- automatically from each `play.route` event. Machines that call `buildRouteUrl` directly
15
- must populate `params` explicitly.
14
+ A machine with `formatPlayRouteTransitions` receives its `params` field and its
15
+ `query` field from each `play.route` event, and the transitions assign them. A
16
+ machine that calls `buildRouteUrl` itself must fill `params` itself.
16
17
 
17
18
  ## Properties
18
19
 
19
- | Property | Type | Description | Defined in |
20
- | ------------------------------------------ | ------------------------------- | ---------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
21
- | <a id="property-basepath"></a> `basePath?` | `string` | Base path for relative routes | [packages/play-xstate/src/routing/types.ts:21](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/routing/types.ts#L21) |
22
- | <a id="property-hash"></a> `hash?` | `string` | Hash fragment | [packages/play-xstate/src/routing/types.ts:27](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/routing/types.ts#L27) |
23
- | <a id="property-params"></a> `params?` | `Record`\<`string`, `unknown`\> | Path-only route parameters to substitute (e.g., `:userId` from `/profile/:userId`) | [packages/play-xstate/src/routing/types.ts:23](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/routing/types.ts#L23) |
24
- | <a id="property-query"></a> `query?` | `Record`\<`string`, `unknown`\> | Query parameters | [packages/play-xstate/src/routing/types.ts:25](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/routing/types.ts#L25) |
20
+ | Property | Type | Description | Defined in |
21
+ | ------------------------------------------ | ------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
22
+ | <a id="property-basepath"></a> `basePath?` | `string` | The base path of a relative route | [packages/play-xstate/src/routing/types.ts:22](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/routing/types.ts#L22) |
23
+ | <a id="property-hash"></a> `hash?` | `string` | The hash fragment | [packages/play-xstate/src/routing/types.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/routing/types.ts#L28) |
24
+ | <a id="property-params"></a> `params?` | `Record`\<`string`, `unknown`\> | The parameters of the path to substitute, for example `:userId` of `/profile/:userId` | [packages/play-xstate/src/routing/types.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/routing/types.ts#L24) |
25
+ | <a id="property-query"></a> `query?` | `Record`\<`string`, `unknown`\> | The query parameters | [packages/play-xstate/src/routing/types.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/routing/types.ts#L26) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: RouteObject
4
4
 
5
- Defined in: [packages/play-xstate/src/routing/types.ts:1](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/routing/types.ts#L1)
5
+ Defined in: [packages/play-xstate/src/routing/types.ts:1](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/routing/types.ts#L1)
6
6
 
7
7
  ## Indexable
8
8
 
@@ -12,6 +12,6 @@ Defined in: [packages/play-xstate/src/routing/types.ts:1](https://gitlab.com/xma
12
12
 
13
13
  ## Properties
14
14
 
15
- | Property | Type | Defined in |
16
- | --------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
17
- | <a id="property-path"></a> `path` | `string` | [packages/play-xstate/src/routing/types.ts:2](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/routing/types.ts#L2) |
15
+ | Property | Type | Defined in |
16
+ | --------------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
17
+ | <a id="property-path"></a> `path` | `string` | [packages/play-xstate/src/routing/types.ts:2](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/routing/types.ts#L2) |
@@ -1,35 +1,19 @@
1
1
  [API](../../../README.md) / [@xmachines/play-xstate](../README.md) / ComposedGuard
2
2
 
3
- # Type Alias: ComposedGuard
3
+ # ~~Type Alias: ComposedGuard~~
4
4
 
5
5
  ```ts
6
- type ComposedGuard = (args) => boolean;
6
+ type ComposedGuard = GuardPredicate<MachineContext, EventObject, unknown, ParameterizedObject>;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-xstate/src/guards/compose.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/guards/compose.ts#L28)
9
+ Defined in: [packages/play-xstate/src/guards/compose.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/guards/compose.ts#L33)
10
10
 
11
- Composed guard: a plain predicate over transition arguments.
11
+ The narrowest public return type of the guard composition helpers.
12
12
 
13
- XState v6 removed guard objects and the `and()`/`or()`/`not()` creators —
14
- guards are now plain functions evaluated inside transition functions. A
15
- composed guard is therefore just another predicate with the same shape as
16
- [Guard](Guard.md), callable anywhere transition args are available.
13
+ `GuardPredicate<MachineContext, EventObject, unknown, ParameterizedObject>` is the
14
+ concrete XState guard type with the widest compatibility that uses no `any`.
17
15
 
18
- String guard names are resolved against `args.guards` (the named guards
19
- declared in `setup({ guards })`, which XState v6 passes to every transition
20
- function). Resolving a name outside a transition function — or a name that
21
- was never declared — throws `UnresolvableGuardNameError` immediately.
16
+ ## Deprecated
22
17
 
23
- String names work in `on` transitions, `always`, entry/exit actions (since
24
- xstate 6.0.0-alpha.20 populates `guards` there), and function-form route
25
- resolvers.
26
-
27
- ## Parameters
28
-
29
- | Parameter | Type |
30
- | --------- | --------- |
31
- | `args` | `unknown` |
32
-
33
- ## Returns
34
-
35
- `boolean`
18
+ The next major version removes the guard utilities. Use the
19
+ combinator types of XState directly.
@@ -1,16 +1,14 @@
1
1
  [API](../../../README.md) / [@xmachines/play-xstate](../README.md) / Guard
2
2
 
3
- # Type Alias: Guard\<TContext, TEvent\>
3
+ # ~~Type Alias: Guard\<TContext, TEvent\>~~
4
4
 
5
5
  ```ts
6
6
  type Guard<TContext, TEvent> = (args) => boolean;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-xstate/src/guards/types.ts:13](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/guards/types.ts#L13)
9
+ Defined in: [packages/play-xstate/src/guards/types.ts:12](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/guards/types.ts#L12)
10
10
 
11
- Standard XState guard function signature
12
-
13
- Per CONTEXT.md: Guards receive { context, event } per XState standard
11
+ The standard signature of an XState guard function. A guard receives `{ context, event }`.
14
12
 
15
13
  ## Type Parameters
16
14
 
@@ -21,14 +19,18 @@ Per CONTEXT.md: Guards receive { context, event } per XState standard
21
19
 
22
20
  ## Parameters
23
21
 
24
- | Parameter | Type | Description |
25
- | -------------- | ----------------------------------------------- | ----------------------------------------- |
26
- | `args` | \{ `context`: `TContext`; `event`: `TEvent`; \} | Guard arguments with context and event |
27
- | `args.context` | `TContext` | Current machine context |
28
- | `args.event` | `TEvent` | Event that triggered the guard evaluation |
22
+ | Parameter | Type | Description |
23
+ | -------------- | ----------------------------------------------- | ----------------------------------------------------- |
24
+ | `args` | \{ `context`: `TContext`; `event`: `TEvent`; \} | The arguments of the guard: the context and the event |
25
+ | `args.context` | `TContext` | The current machine context |
26
+ | `args.event` | `TEvent` | The event that started the evaluation of the guard |
29
27
 
30
28
  ## Returns
31
29
 
32
30
  `boolean`
33
31
 
34
- boolean indicating if guard passes
32
+ The boolean value. It tells you if the guard passes
33
+
34
+ ## Deprecated
35
+
36
+ The next major version removes the guard utilities.
@@ -1,16 +1,15 @@
1
1
  [API](../../../README.md) / [@xmachines/play-xstate](../README.md) / GuardArray
2
2
 
3
- # Type Alias: GuardArray\<TContext, TEvent\>
3
+ # ~~Type Alias: GuardArray\<TContext, TEvent\>~~
4
4
 
5
5
  ```ts
6
6
  type GuardArray<TContext, TEvent> = (Guard<TContext, TEvent> | string)[];
7
7
  ```
8
8
 
9
- Defined in: [packages/play-xstate/src/guards/types.ts:23](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-xstate/src/guards/types.ts#L23)
9
+ Defined in: [packages/play-xstate/src/guards/types.ts:23](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-xstate/src/guards/types.ts#L23)
10
10
 
11
- Array of guard predicates or guard names
12
-
13
- Per CONTEXT.md: Array means AND - all guards must pass
11
+ The array of the guard predicates, or of the guard names. An array means AND:
12
+ every guard must pass.
14
13
 
15
14
  ## Type Parameters
16
15
 
@@ -18,3 +17,7 @@ Per CONTEXT.md: Array means AND - all guards must pass
18
17
  | -------------- | --------------------------------------------------- |
19
18
  | `TContext` | `Record`\<`string`, `unknown`\> |
20
19
  | `TEvent` | [`PlayEvent`](../../play/type-aliases/PlayEvent.md) |
20
+
21
+ ## Deprecated
22
+
23
+ The next major version removes the guard utilities.