@xmachines/docs 6.1.0 → 8.0.0-next.1

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 (604) hide show
  1. package/README.md +5 -5
  2. package/api/@xmachines/core/README.md +7 -2
  3. package/api/@xmachines/core/cache/functions/createLruCache.md +1 -1
  4. package/api/@xmachines/core/cache/interfaces/KeyValueCache.md +3 -3
  5. package/api/@xmachines/core/errors/classes/BaseError.md +11 -11
  6. package/api/@xmachines/core/errors/classes/DisposeConflictError.md +11 -11
  7. package/api/@xmachines/core/utils/functions/asDisposable.md +2 -2
  8. package/api/@xmachines/core/utils/functions/createNullRecord.md +1 -1
  9. package/api/@xmachines/core/utils/functions/createWarnOnce.md +1 -1
  10. package/api/@xmachines/core/utils/functions/describeValue.md +1 -1
  11. package/api/@xmachines/core/utils/functions/isError.md +1 -1
  12. package/api/@xmachines/core/utils/functions/isThenable.md +1 -1
  13. package/api/@xmachines/core/utils/functions/releaseQuietly.md +1 -1
  14. package/api/@xmachines/core/utils/functions/rethrowLater.md +1 -1
  15. package/api/@xmachines/core/utils/functions/safeString.md +1 -1
  16. package/api/@xmachines/core/utils/functions/shallowEqualExcept.md +1 -1
  17. package/api/@xmachines/core/utils/type-aliases/DisposeKey.md +1 -1
  18. package/api/@xmachines/core/utils/type-aliases/DisposeMember.md +1 -1
  19. package/api/@xmachines/core/utils/variables/DISPOSE.md +1 -1
  20. package/api/@xmachines/play/README.md +10 -5
  21. package/api/@xmachines/play/errors/classes/NonNullableError.md +11 -11
  22. package/api/@xmachines/play/errors/classes/PlayError.md +12 -11
  23. package/api/@xmachines/play/index/functions/assertNonNullable.md +1 -1
  24. package/api/@xmachines/play/index/type-aliases/PlayEvent.md +4 -4
  25. package/api/@xmachines/play-actor/README.md +11 -3
  26. package/api/@xmachines/play-actor/interfaces/ActorEvent.md +4 -4
  27. package/api/@xmachines/play-actor/interfaces/PlayActor.md +6 -6
  28. package/api/@xmachines/play-atom/README.md +21 -7
  29. package/api/@xmachines/play-atom/functions/watchAtom.md +1 -1
  30. package/api/@xmachines/play-atom/interfaces/AsyncAtomOptions.md +4 -4
  31. package/api/@xmachines/play-atom/interfaces/Atom.md +6 -6
  32. package/api/@xmachines/play-atom/interfaces/AtomObserver.md +6 -6
  33. package/api/@xmachines/play-atom/interfaces/AtomOptions.md +4 -4
  34. package/api/@xmachines/play-atom/interfaces/AtomSubscription.md +2 -2
  35. package/api/@xmachines/play-atom/interfaces/BaseAtom.md +4 -4
  36. package/api/@xmachines/play-atom/interfaces/CreateAtom.md +3 -3
  37. package/api/@xmachines/play-atom/interfaces/Readable.md +4 -4
  38. package/api/@xmachines/play-atom/interfaces/ReadonlyAtom.md +4 -4
  39. package/api/@xmachines/play-atom/type-aliases/AnyAtom.md +1 -1
  40. package/api/@xmachines/play-atom/type-aliases/AsyncAtomState.md +1 -1
  41. package/api/@xmachines/play-atom/variables/createAsyncAtom.md +1 -1
  42. package/api/@xmachines/play-atom/variables/createAtom.md +1 -1
  43. package/api/@xmachines/play-atom/variables/createWritableAtom.md +1 -1
  44. package/api/@xmachines/play-dom/README.md +136 -50
  45. package/api/@xmachines/play-dom/classes/PlayRenderer.md +12 -12
  46. package/api/@xmachines/play-dom/functions/createPlayUI.md +5 -5
  47. package/api/@xmachines/play-dom/functions/createRenderer.md +1 -1
  48. package/api/@xmachines/play-dom/functions/renderSpec.md +3 -2
  49. package/api/@xmachines/play-dom/interfaces/ComponentContext.md +9 -9
  50. package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +15 -14
  51. package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +26 -20
  52. package/api/@xmachines/play-dom/interfaces/MountOptions.md +5 -5
  53. package/api/@xmachines/play-dom/interfaces/PassOptions.md +14 -0
  54. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +18 -17
  55. package/api/@xmachines/play-dom/interfaces/RenderErrorInfo.md +16 -0
  56. package/api/@xmachines/play-dom/interfaces/RenderSpecOptions.md +17 -15
  57. package/api/@xmachines/play-dom/interfaces/UIProviderOptions.md +9 -8
  58. package/api/@xmachines/play-dom/interfaces/ValidationRegistry.md +14 -11
  59. package/api/@xmachines/play-dom/type-aliases/ConfirmHandler.md +9 -10
  60. package/api/@xmachines/play-dom/type-aliases/DefineRegistryOptions.md +4 -3
  61. package/api/@xmachines/play-dom/type-aliases/MountFn.md +1 -1
  62. package/api/@xmachines/play-dom/type-aliases/OnRenderError.md +27 -0
  63. package/api/@xmachines/play-dom/type-aliases/RenderErrorKind.md +21 -0
  64. package/api/@xmachines/play-dom-router/README.md +44 -6
  65. package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +7 -7
  66. package/api/@xmachines/play-dom-router/classes/RouteMap.md +4 -4
  67. package/api/@xmachines/play-dom-router/functions/connectRouter.md +1 -1
  68. package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +1 -1
  69. package/api/@xmachines/play-dom-router/functions/createRouter.md +1 -1
  70. package/api/@xmachines/play-dom-router/interfaces/BasePathOptions.md +5 -5
  71. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +16 -16
  72. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +16 -16
  73. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +10 -10
  74. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +9 -9
  75. package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +6 -6
  76. package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +3 -3
  77. package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +6 -6
  78. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +5 -5
  79. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +3 -3
  80. package/api/@xmachines/play-dom-router/interfaces/RouterConnection.md +8 -8
  81. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +6 -6
  82. package/api/@xmachines/play-pattern/README.md +1 -1
  83. package/api/@xmachines/play-pattern/functions/buildPath.md +1 -1
  84. package/api/@xmachines/play-pattern/functions/createLruCache.md +1 -1
  85. package/api/@xmachines/play-pattern/functions/getIndexKey.md +1 -1
  86. package/api/@xmachines/play-pattern/functions/isDotSegment.md +1 -1
  87. package/api/@xmachines/play-pattern/functions/parsePattern.md +1 -1
  88. package/api/@xmachines/play-pattern/interfaces/GroupPart.md +6 -6
  89. package/api/@xmachines/play-pattern/interfaces/KeyValueCache.md +3 -3
  90. package/api/@xmachines/play-pattern/interfaces/LiteralPart.md +5 -5
  91. package/api/@xmachines/play-pattern/interfaces/ParamPart.md +9 -9
  92. package/api/@xmachines/play-pattern/interfaces/ParseOptions.md +4 -4
  93. package/api/@xmachines/play-pattern/interfaces/ParsedPattern.md +14 -14
  94. package/api/@xmachines/play-pattern/interfaces/PatternParam.md +6 -6
  95. package/api/@xmachines/play-pattern/type-aliases/PathBuildResult.md +1 -1
  96. package/api/@xmachines/play-pattern/type-aliases/PathParams.md +1 -1
  97. package/api/@xmachines/play-pattern/type-aliases/PatternModifier.md +1 -1
  98. package/api/@xmachines/play-pattern/type-aliases/PatternPart.md +1 -1
  99. package/api/@xmachines/play-react/README.md +58 -19
  100. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +6 -6
  101. package/api/@xmachines/play-react/functions/defineRegistry.md +1 -1
  102. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  103. package/api/@xmachines/play-react/functions/useAtomEffect.md +1 -1
  104. package/api/@xmachines/play-react/functions/usePlayView.md +1 -1
  105. package/api/@xmachines/play-react/interfaces/ActionProviderProps.md +5 -5
  106. package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +11 -11
  107. package/api/@xmachines/play-react/interfaces/DefineRegistryResult.md +15 -0
  108. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +8 -8
  109. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +6 -6
  110. package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +13 -13
  111. package/api/@xmachines/play-react/interfaces/RenderErrorInfo.md +16 -0
  112. package/api/@xmachines/play-react/interfaces/RendererProps.md +7 -7
  113. package/api/@xmachines/play-react/interfaces/ViewContextValue.md +7 -7
  114. package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +1 -1
  115. package/api/@xmachines/play-react/type-aliases/OnRenderError.md +27 -0
  116. package/api/@xmachines/play-react/type-aliases/RenderErrorKind.md +21 -0
  117. package/api/@xmachines/play-react/variables/ActorProvider.md +14 -4
  118. package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
  119. package/api/@xmachines/play-react/variables/PlayUIProvider.md +1 -1
  120. package/api/@xmachines/play-react-router/README.md +26 -5
  121. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +7 -7
  122. package/api/@xmachines/play-react-router/classes/RouteMap.md +4 -4
  123. package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +1 -1
  124. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +1 -1
  125. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +9 -9
  126. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  127. package/api/@xmachines/play-react-router/interfaces/RoutableActor.md +6 -6
  128. package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +6 -6
  129. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +5 -5
  130. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +3 -3
  131. package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  132. package/api/@xmachines/play-react-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  133. package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +1 -1
  134. package/api/@xmachines/play-router/README.md +87 -29
  135. package/api/@xmachines/play-router/errors/classes/DuplicateBridgeError.md +11 -11
  136. package/api/@xmachines/play-router/errors/classes/DuplicateRoutePathError.md +12 -12
  137. package/api/@xmachines/play-router/errors/classes/EmptyRoutePathError.md +12 -12
  138. package/api/@xmachines/play-router/errors/classes/InvalidBasePathError.md +12 -12
  139. package/api/@xmachines/play-router/errors/classes/InvalidRoutePatternError.md +12 -12
  140. package/api/@xmachines/play-router/errors/classes/InvalidStateIdError.md +12 -12
  141. package/api/@xmachines/play-router/errors/classes/MissingBasePathParamError.md +13 -13
  142. package/api/@xmachines/play-router/errors/classes/RouterSyncError.md +11 -11
  143. package/api/@xmachines/play-router/errors/classes/UnknownStateTypeError.md +13 -13
  144. package/api/@xmachines/play-router/index/classes/RouteMap.md +4 -4
  145. package/api/@xmachines/play-router/index/classes/RouterBridgeBase.md +7 -7
  146. package/api/@xmachines/play-router/index/functions/buildPlayRouteEvent.md +1 -1
  147. package/api/@xmachines/play-router/index/functions/buildRouteTree.md +1 -1
  148. package/api/@xmachines/play-router/index/functions/cleanFrameworkParams.md +1 -1
  149. package/api/@xmachines/play-router/index/functions/createLruCache.md +1 -1
  150. package/api/@xmachines/play-router/index/functions/createRouteMapFromTree.md +1 -1
  151. package/api/@xmachines/play-router/index/functions/createRouterConnection.md +1 -1
  152. package/api/@xmachines/play-router/index/functions/detectDuplicateRoutes.md +1 -1
  153. package/api/@xmachines/play-router/index/functions/extractQuery.md +1 -1
  154. package/api/@xmachines/play-router/index/functions/extractRouteParams.md +1 -1
  155. package/api/@xmachines/play-router/index/functions/findRouteById.md +1 -1
  156. package/api/@xmachines/play-router/index/functions/findRouteByPath.md +1 -1
  157. package/api/@xmachines/play-router/index/functions/isMountableBridge.md +1 -1
  158. package/api/@xmachines/play-router/index/functions/joinBasePath.md +1 -1
  159. package/api/@xmachines/play-router/index/functions/mountKey.md +1 -1
  160. package/api/@xmachines/play-router/index/functions/normalizeBasePath.md +1 -1
  161. package/api/@xmachines/play-router/index/functions/openProviderBridge.md +5 -5
  162. package/api/@xmachines/play-router/index/functions/parsePattern.md +1 -1
  163. package/api/@xmachines/play-router/index/functions/pickOwnParams.md +1 -1
  164. package/api/@xmachines/play-router/index/functions/repointProviderBridge.md +1 -1
  165. package/api/@xmachines/play-router/index/functions/resolveBasePath.md +1 -1
  166. package/api/@xmachines/play-router/index/functions/resolveFrameworkParams.md +1 -1
  167. package/api/@xmachines/play-router/index/functions/sanitizePathname.md +1 -1
  168. package/api/@xmachines/play-router/index/functions/splitLocation.md +1 -1
  169. package/api/@xmachines/play-router/index/functions/stripBasePath.md +1 -1
  170. package/api/@xmachines/play-router/index/functions/validateRouteFormat.md +1 -1
  171. package/api/@xmachines/play-router/index/functions/validateStateExists.md +1 -1
  172. package/api/@xmachines/play-router/index/interfaces/BasePathOptions.md +5 -5
  173. package/api/@xmachines/play-router/index/interfaces/BuildPlayRouteEventOptions.md +6 -6
  174. package/api/@xmachines/play-router/index/interfaces/CompileOptions.md +5 -5
  175. package/api/@xmachines/play-router/index/interfaces/FrameworkParamsSource.md +9 -9
  176. package/api/@xmachines/play-router/index/interfaces/KeyValueCache.md +3 -3
  177. package/api/@xmachines/play-router/index/interfaces/LocationLike.md +5 -5
  178. package/api/@xmachines/play-router/index/interfaces/MountableRouterBridge.md +8 -8
  179. package/api/@xmachines/play-router/index/interfaces/OpenProviderBridgeArgs.md +10 -10
  180. package/api/@xmachines/play-router/index/interfaces/ParseOptions.md +4 -4
  181. package/api/@xmachines/play-router/index/interfaces/ParsedPattern.md +14 -14
  182. package/api/@xmachines/play-router/index/interfaces/PlayRouteEvent.md +9 -9
  183. package/api/@xmachines/play-router/index/interfaces/PlayRouterProviderBaseProps.md +11 -11
  184. package/api/@xmachines/play-router/index/interfaces/ResolvedBasePath.md +5 -5
  185. package/api/@xmachines/play-router/index/interfaces/ResolvedRoutePath.md +5 -5
  186. package/api/@xmachines/play-router/index/interfaces/Routable.md +5 -5
  187. package/api/@xmachines/play-router/index/interfaces/RoutableActor.md +6 -6
  188. package/api/@xmachines/play-router/index/interfaces/RouteInfo.md +10 -10
  189. package/api/@xmachines/play-router/index/interfaces/RouteMapOptions.md +6 -6
  190. package/api/@xmachines/play-router/index/interfaces/RouteMapping.md +5 -5
  191. package/api/@xmachines/play-router/index/interfaces/RouteMatch.md +5 -5
  192. package/api/@xmachines/play-router/index/interfaces/RouteNode.md +12 -12
  193. package/api/@xmachines/play-router/index/interfaces/RouteObject.md +7 -7
  194. package/api/@xmachines/play-router/index/interfaces/RouteTree.md +7 -7
  195. package/api/@xmachines/play-router/index/interfaces/RouteWatcherHandle.md +3 -3
  196. package/api/@xmachines/play-router/index/interfaces/RouterBridge.md +3 -3
  197. package/api/@xmachines/play-router/index/interfaces/RouterBridgeOptions.md +8 -8
  198. package/api/@xmachines/play-router/index/interfaces/RouterConnection.md +8 -8
  199. package/api/@xmachines/play-router/index/interfaces/SplitLocation.md +7 -7
  200. package/api/@xmachines/play-router/index/interfaces/WindowLike.md +3 -3
  201. package/api/@xmachines/play-router/index/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  202. package/api/@xmachines/play-router/index/type-aliases/RouteData.md +1 -1
  203. package/api/@xmachines/play-router/index/type-aliases/RouteDataResolver.md +1 -1
  204. package/api/@xmachines/play-router/index/type-aliases/RouteMetadata.md +1 -1
  205. package/api/@xmachines/play-router/index/type-aliases/URLPatternLike.md +3 -3
  206. package/api/@xmachines/play-router/index/variables/NO_BASE_PATH.md +1 -1
  207. package/api/@xmachines/play-router/index/variables/ROOT_NODE_ID.md +1 -1
  208. package/api/@xmachines/play-router/xstate/README.md +5 -2
  209. package/api/@xmachines/play-router/xstate/functions/createRouteMap.md +2 -2
  210. package/api/@xmachines/play-router/xstate/functions/extractMachineRoutes.md +5 -5
  211. package/api/@xmachines/play-router/xstate/functions/getNavigableRoutes.md +1 -1
  212. package/api/@xmachines/play-router/xstate/functions/getRoutableRoutes.md +1 -1
  213. package/api/@xmachines/play-router/xstate/functions/getRouteMappings.md +1 -1
  214. package/api/@xmachines/play-router/xstate/functions/getTransitionReachableRoutes.md +7 -8
  215. package/api/@xmachines/play-router/xstate/functions/isRouteReachable.md +8 -9
  216. package/api/@xmachines/play-router/xstate/functions/machineToGraph.md +1 -1
  217. package/api/@xmachines/play-router/xstate/functions/routeExists.md +1 -1
  218. package/api/@xmachines/play-router/xstate/interfaces/Graph.md +26 -0
  219. package/api/@xmachines/play-router/xstate/interfaces/GraphEdge.md +22 -0
  220. package/api/@xmachines/play-router/xstate/interfaces/GraphNode.md +21 -0
  221. package/api/@xmachines/play-router/xstate/interfaces/MachineEdgeData.md +6 -6
  222. package/api/@xmachines/play-router/xstate/interfaces/MachineNodeData.md +7 -7
  223. package/api/@xmachines/play-router/xstate/type-aliases/MachineGraph.md +4 -6
  224. package/api/@xmachines/play-solid/README.md +35 -11
  225. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  226. package/api/@xmachines/play-solid/functions/useBoundProp.md +8 -5
  227. package/api/@xmachines/play-solid/functions/useFieldValidation.md +6 -4
  228. package/api/@xmachines/play-solid/functions/usePlayView.md +1 -1
  229. package/api/@xmachines/play-solid/functions/useStateBinding.md +5 -3
  230. package/api/@xmachines/play-solid/functions/useStateValue.md +5 -3
  231. package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +10 -10
  232. package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +13 -13
  233. package/api/@xmachines/play-solid/interfaces/RenderErrorInfo.md +16 -0
  234. package/api/@xmachines/play-solid/interfaces/RendererProps.md +7 -7
  235. package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +7 -7
  236. package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +1 -1
  237. package/api/@xmachines/play-solid/type-aliases/OnRenderError.md +27 -0
  238. package/api/@xmachines/play-solid/type-aliases/RenderErrorKind.md +21 -0
  239. package/api/@xmachines/play-solid/variables/ActorContext.md +1 -1
  240. package/api/@xmachines/play-solid/variables/ActorProvider.md +17 -3
  241. package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
  242. package/api/@xmachines/play-solid/variables/PlayUIProvider.md +1 -1
  243. package/api/@xmachines/play-solid-router/README.md +24 -10
  244. package/api/@xmachines/play-solid-router/classes/RouteMap.md +4 -4
  245. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +7 -7
  246. package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +1 -1
  247. package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +6 -6
  248. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +9 -9
  249. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +11 -11
  250. package/api/@xmachines/play-solid-router/interfaces/RoutableActor.md +6 -6
  251. package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +6 -6
  252. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +5 -5
  253. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +3 -3
  254. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  255. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  256. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
  257. package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +1 -1
  258. package/api/@xmachines/play-svelte/README.md +19 -11
  259. package/api/@xmachines/play-svelte/functions/defineRegistry.md +3 -4
  260. package/api/@xmachines/play-svelte/functions/getActorContext.md +1 -1
  261. package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +1 -1
  262. package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
  263. package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +12 -12
  264. package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +8 -8
  265. package/api/@xmachines/play-svelte/interfaces/DefineRegistryResult.md +15 -0
  266. package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +14 -14
  267. package/api/@xmachines/play-svelte/interfaces/RenderErrorInfo.md +16 -0
  268. package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +7 -7
  269. package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +1 -1
  270. package/api/@xmachines/play-svelte/type-aliases/OnRenderError.md +27 -0
  271. package/api/@xmachines/play-svelte/type-aliases/RenderErrorKind.md +21 -0
  272. package/api/@xmachines/play-svelte-spa-router/README.md +14 -7
  273. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +4 -4
  274. package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +7 -7
  275. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +1 -1
  276. package/api/@xmachines/play-svelte-spa-router/interfaces/BasePathOptions.md +5 -5
  277. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +10 -10
  278. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +9 -9
  279. package/api/@xmachines/play-svelte-spa-router/interfaces/RoutableActor.md +6 -6
  280. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +6 -6
  281. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +5 -5
  282. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +3 -3
  283. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterConnection.md +8 -8
  284. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +3 -3
  285. package/api/@xmachines/play-sveltekit-router/README.md +67 -14
  286. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +4 -4
  287. package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +29 -19
  288. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +1 -1
  289. package/api/@xmachines/play-sveltekit-router/interfaces/BasePathOptions.md +5 -5
  290. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +13 -16
  291. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +5 -5
  292. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +9 -9
  293. package/api/@xmachines/play-sveltekit-router/interfaces/RoutableActor.md +6 -6
  294. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +6 -6
  295. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +5 -5
  296. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +3 -3
  297. package/api/@xmachines/play-sveltekit-router/interfaces/RouterConnection.md +8 -8
  298. package/api/@xmachines/play-sveltekit-router/interfaces/SvelteKitRouterBridgeOptions.md +25 -0
  299. package/api/@xmachines/play-sveltekit-router/type-aliases/ShallowNavigation.md +21 -0
  300. package/api/@xmachines/play-tanstack-react-router/README.md +36 -17
  301. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +4 -4
  302. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +7 -7
  303. package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +1 -1
  304. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +1 -1
  305. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +9 -9
  306. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  307. package/api/@xmachines/play-tanstack-react-router/interfaces/RoutableActor.md +6 -6
  308. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +6 -6
  309. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +5 -5
  310. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +3 -3
  311. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  312. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  313. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  314. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +5 -5
  315. package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +1 -1
  316. package/api/@xmachines/play-tanstack-router/README.md +7 -4
  317. package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +7 -7
  318. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +3 -3
  319. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +5 -5
  320. package/api/@xmachines/play-tanstack-solid-router/README.md +50 -17
  321. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +4 -4
  322. package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +7 -7
  323. package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +1 -1
  324. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +9 -9
  325. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +11 -11
  326. package/api/@xmachines/play-tanstack-solid-router/interfaces/RoutableActor.md +6 -6
  327. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +6 -6
  328. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +5 -5
  329. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +3 -3
  330. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  331. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  332. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  333. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +5 -5
  334. package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +1 -1
  335. package/api/@xmachines/play-url/README.md +1 -1
  336. package/api/@xmachines/play-url/errors/classes/InvalidBasePathError.md +12 -12
  337. package/api/@xmachines/play-url/errors/classes/InvalidRoutePatternError.md +12 -12
  338. package/api/@xmachines/play-url/errors/classes/MissingBasePathParamError.md +13 -13
  339. package/api/@xmachines/play-url/index/functions/buildPath.md +1 -1
  340. package/api/@xmachines/play-url/index/functions/cleanFrameworkParams.md +1 -1
  341. package/api/@xmachines/play-url/index/functions/createLruCache.md +1 -1
  342. package/api/@xmachines/play-url/index/functions/getCandidates.md +1 -1
  343. package/api/@xmachines/play-url/index/functions/getCompiledPattern.md +1 -1
  344. package/api/@xmachines/play-url/index/functions/getIndexKey.md +1 -1
  345. package/api/@xmachines/play-url/index/functions/holdsUnsubstitutedParam.md +1 -1
  346. package/api/@xmachines/play-url/index/functions/isDotSegment.md +1 -1
  347. package/api/@xmachines/play-url/index/functions/joinBasePath.md +1 -1
  348. package/api/@xmachines/play-url/index/functions/normalizeBasePath.md +1 -1
  349. package/api/@xmachines/play-url/index/functions/parsePattern.md +1 -1
  350. package/api/@xmachines/play-url/index/functions/pickOwnParams.md +1 -1
  351. package/api/@xmachines/play-url/index/functions/resolveBasePath.md +1 -1
  352. package/api/@xmachines/play-url/index/functions/resolveFrameworkParams.md +1 -1
  353. package/api/@xmachines/play-url/index/functions/sanitizePathname.md +1 -1
  354. package/api/@xmachines/play-url/index/functions/splitLocation.md +1 -1
  355. package/api/@xmachines/play-url/index/functions/stripBasePath.md +1 -1
  356. package/api/@xmachines/play-url/index/interfaces/BasePathOptions.md +5 -5
  357. package/api/@xmachines/play-url/index/interfaces/CompileOptions.md +5 -5
  358. package/api/@xmachines/play-url/index/interfaces/FrameworkParamsSource.md +9 -9
  359. package/api/@xmachines/play-url/index/interfaces/GroupPart.md +6 -6
  360. package/api/@xmachines/play-url/index/interfaces/KeyValueCache.md +3 -3
  361. package/api/@xmachines/play-url/index/interfaces/LiteralPart.md +5 -5
  362. package/api/@xmachines/play-url/index/interfaces/ParamPart.md +9 -9
  363. package/api/@xmachines/play-url/index/interfaces/ParseOptions.md +4 -4
  364. package/api/@xmachines/play-url/index/interfaces/ParsedPattern.md +14 -14
  365. package/api/@xmachines/play-url/index/interfaces/PatternParam.md +6 -6
  366. package/api/@xmachines/play-url/index/interfaces/ResolvedBasePath.md +5 -5
  367. package/api/@xmachines/play-url/index/interfaces/SplitLocation.md +7 -7
  368. package/api/@xmachines/play-url/index/type-aliases/PathBuildResult.md +1 -1
  369. package/api/@xmachines/play-url/index/type-aliases/PathParams.md +1 -1
  370. package/api/@xmachines/play-url/index/type-aliases/PatternModifier.md +1 -1
  371. package/api/@xmachines/play-url/index/type-aliases/PatternPart.md +1 -1
  372. package/api/@xmachines/play-url/index/type-aliases/URLPatternCtor.md +1 -1
  373. package/api/@xmachines/play-url/index/type-aliases/URLPatternLike.md +3 -3
  374. package/api/@xmachines/play-url/index/variables/NO_BASE_PATH.md +1 -1
  375. package/api/@xmachines/play-url/index/variables/URLPattern.md +1 -1
  376. package/api/@xmachines/play-view/README.md +45 -19
  377. package/api/@xmachines/play-view/errors/README.md +1 -0
  378. package/api/@xmachines/play-view/errors/classes/InvalidViewOutletError.md +13 -13
  379. package/api/@xmachines/play-view/errors/classes/ReadOnlyContextError.md +12 -12
  380. package/api/@xmachines/play-view/errors/classes/ViewElementKeyCollisionError.md +181 -0
  381. package/api/@xmachines/play-view/index/README.md +10 -4
  382. package/api/@xmachines/play-view/index/functions/attachRenderErrorHandler.md +10 -9
  383. package/api/@xmachines/play-view/index/functions/bindStoreHandlers.md +34 -0
  384. package/api/@xmachines/play-view/index/functions/composePlayState.md +1 -1
  385. package/api/@xmachines/play-view/index/functions/composeViews.md +8 -2
  386. package/api/@xmachines/play-view/index/functions/createActorProxy.md +39 -0
  387. package/api/@xmachines/play-view/index/functions/createRenderErrorBinding.md +35 -0
  388. package/api/@xmachines/play-view/index/functions/createReportGuard.md +1 -1
  389. package/api/@xmachines/play-view/index/functions/createViewSession.md +29 -0
  390. package/api/@xmachines/play-view/index/functions/createViewStoreLifecycle.md +1 -1
  391. package/api/@xmachines/play-view/index/functions/forwardRenderError.md +45 -0
  392. package/api/@xmachines/play-view/index/functions/guardContextWrites.md +1 -1
  393. package/api/@xmachines/play-view/index/functions/refreshContextSubtree.md +1 -1
  394. package/api/@xmachines/play-view/index/functions/reuseComposedState.md +1 -1
  395. package/api/@xmachines/play-view/index/functions/toAtomState.md +1 -1
  396. package/api/@xmachines/play-view/index/functions/typedSpec.md +1 -1
  397. package/api/@xmachines/play-view/index/interfaces/BaseActorProviderProps.md +8 -8
  398. package/api/@xmachines/play-view/index/interfaces/BaseViewContextValue.md +7 -7
  399. package/api/@xmachines/play-view/index/interfaces/ComposedView.md +7 -7
  400. package/api/@xmachines/play-view/index/interfaces/HandlerFactory.md +19 -0
  401. package/api/@xmachines/play-view/index/interfaces/PlaySpec.md +8 -8
  402. package/api/@xmachines/play-view/index/interfaces/ReportGuard.md +5 -5
  403. package/api/@xmachines/play-view/index/interfaces/ReportGuardMessages.md +5 -5
  404. package/api/@xmachines/play-view/index/interfaces/ResolveViewStoreOptions.md +4 -4
  405. package/api/@xmachines/play-view/index/interfaces/ViewMeta.md +7 -7
  406. package/api/@xmachines/play-view/index/interfaces/ViewOutlet.md +5 -5
  407. package/api/@xmachines/play-view/index/interfaces/ViewSession.md +155 -0
  408. package/api/@xmachines/play-view/index/interfaces/ViewSessionOptions.md +12 -0
  409. package/api/@xmachines/play-view/index/interfaces/ViewSessionSnapshot.md +23 -0
  410. package/api/@xmachines/play-view/index/interfaces/ViewStoreLifecycle.md +22 -3
  411. package/api/@xmachines/play-view/index/interfaces/ViewStoreResolution.md +7 -6
  412. package/api/@xmachines/play-view/index/interfaces/ViewTree.md +6 -6
  413. package/api/@xmachines/play-view/index/interfaces/ViewTreeChild.md +5 -5
  414. package/api/@xmachines/play-view/index/interfaces/Viewable.md +4 -4
  415. package/api/@xmachines/play-view/index/type-aliases/StateUpdater.md +21 -0
  416. package/api/@xmachines/play-view/index/type-aliases/ViewActor.md +1 -1
  417. package/api/@xmachines/play-view/index/variables/CONTEXT_STATE_KEY.md +1 -1
  418. package/api/@xmachines/play-vue/README.md +20 -15
  419. package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
  420. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  421. package/api/@xmachines/play-vue/functions/useBoundProp.md +10 -4
  422. package/api/@xmachines/play-vue/functions/useFieldValidation.md +12 -5
  423. package/api/@xmachines/play-vue/functions/usePlayView.md +1 -1
  424. package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +8 -8
  425. package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +11 -11
  426. package/api/@xmachines/play-vue/interfaces/RenderErrorInfo.md +16 -0
  427. package/api/@xmachines/play-vue/interfaces/RendererProps.md +7 -7
  428. package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +7 -7
  429. package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +1 -1
  430. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
  431. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
  432. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +4 -4
  433. package/api/@xmachines/play-vue/type-aliases/OnRenderError.md +27 -0
  434. package/api/@xmachines/play-vue/type-aliases/RenderErrorKind.md +21 -0
  435. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  436. package/api/@xmachines/play-vue/variables/Renderer.md +3 -3
  437. package/api/@xmachines/play-vue-router/README.md +18 -11
  438. package/api/@xmachines/play-vue-router/errors/classes/VueRouterNavigationError.md +11 -11
  439. package/api/@xmachines/play-vue-router/errors/classes/VueRouterSendError.md +11 -11
  440. package/api/@xmachines/play-vue-router/index/classes/RouteMap.md +4 -4
  441. package/api/@xmachines/play-vue-router/index/classes/VueRouterBridge.md +7 -7
  442. package/api/@xmachines/play-vue-router/index/interfaces/PlayRouteEvent.md +9 -9
  443. package/api/@xmachines/play-vue-router/index/interfaces/RoutableActor.md +6 -6
  444. package/api/@xmachines/play-vue-router/index/interfaces/RouteMapOptions.md +6 -6
  445. package/api/@xmachines/play-vue-router/index/interfaces/RouteMapping.md +5 -5
  446. package/api/@xmachines/play-vue-router/index/interfaces/RouterBridge.md +3 -3
  447. package/api/@xmachines/play-vue-router/index/variables/PlayRouterProvider.md +1 -1
  448. package/api/@xmachines/play-xstate/README.md +120 -57
  449. package/api/@xmachines/play-xstate/errors/classes/ActorThrewNonErrorError.md +11 -11
  450. package/api/@xmachines/play-xstate/errors/classes/InvalidEventError.md +12 -12
  451. package/api/@xmachines/play-xstate/errors/classes/InvalidMachineError.md +11 -11
  452. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteHandlerError.md +12 -12
  453. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteMetadataError.md +12 -12
  454. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteParamError.md +14 -14
  455. package/api/@xmachines/play-xstate/errors/classes/MissingRouteParamError.md +13 -13
  456. package/api/@xmachines/play-xstate/errors/classes/MissingStateIdError.md +15 -15
  457. package/api/@xmachines/play-xstate/index/README.md +1 -1
  458. package/api/@xmachines/play-xstate/index/classes/PlayerActor.md +201 -124
  459. package/api/@xmachines/play-xstate/index/functions/compose.md +4 -4
  460. package/api/@xmachines/play-xstate/index/functions/definePlayer.md +14 -10
  461. package/api/@xmachines/play-xstate/index/interfaces/PlayerConfig.md +6 -6
  462. package/api/@xmachines/play-xstate/index/interfaces/PlayerFactoryResumeOptions.md +4 -4
  463. package/api/@xmachines/play-xstate/index/interfaces/PlayerOptions.md +9 -9
  464. package/api/@xmachines/play-xstate/index/type-aliases/Capability.md +1 -1
  465. package/api/@xmachines/play-xstate/index/type-aliases/PlayerConstructor.md +1 -1
  466. package/api/@xmachines/play-xstate/index/type-aliases/PlayerFactory.md +1 -1
  467. package/api/@xmachines/play-xstate/with-routing/functions/buildRouteUrl.md +1 -1
  468. package/api/@xmachines/play-xstate/with-routing/functions/deriveRoute.md +13 -5
  469. package/api/@xmachines/play-xstate/with-routing/functions/formatPlayRouteTransitions.md +26 -13
  470. package/api/@xmachines/play-xstate/with-routing/functions/isAbsoluteRoute.md +1 -1
  471. package/api/@xmachines/play-xstate/with-routing/functions/withRouting.md +1 -1
  472. package/api/@xmachines/play-xstate/with-routing/interfaces/RouteContext.md +8 -8
  473. package/api/@xmachines/play-xstate/with-routing/interfaces/RouteObject.md +7 -7
  474. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteData.md +1 -1
  475. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteDataResolver.md +1 -1
  476. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMachineConfig.md +4 -4
  477. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMetadata.md +1 -1
  478. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteStateNode.md +5 -5
  479. package/api/@xmachines/play-xstate/with-view/functions/withView.md +1 -1
  480. package/api/@xmachines/shared/README.md +1 -0
  481. package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +1 -1
  482. package/api/@xmachines/shared/vite-aliases/functions/xmBuildOutput.md +1 -1
  483. package/api/@xmachines/shared/vite-aliases/functions/xmBuildOutputFile.md +1 -1
  484. package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
  485. package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +1 -1
  486. package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
  487. package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +4 -4
  488. package/api/@xmachines/shared/vite-aliases/functions/xmTestTarget.md +1 -1
  489. package/api/@xmachines/shared/vite-aliases/type-aliases/XmTestTarget.md +1 -1
  490. package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
  491. package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +1 -1
  492. package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +6 -6
  493. package/contributing/architecture.md +100 -61
  494. package/contributing/configuration.md +44 -62
  495. package/contributing/deployment.md +131 -161
  496. package/contributing/development.md +34 -9
  497. package/contributing/migrating-to-play-atom.md +23 -5
  498. package/contributing/testing.md +64 -33
  499. package/examples/@xmachines/play-dom-demo/README.md +2 -2
  500. package/examples/@xmachines/play-dom-demo/functions/createAuthActionHandlers.md +11 -11
  501. package/examples/@xmachines/play-dom-demo/functions/createConfirmDialog.md +1 -1
  502. package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +1 -1
  503. package/examples/@xmachines/play-dom-demo/functions/initShell.md +1 -1
  504. package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +1 -1
  505. package/examples/@xmachines/play-dom-demo/variables/About.md +1 -1
  506. package/examples/@xmachines/play-dom-demo/variables/Button.md +1 -1
  507. package/examples/@xmachines/play-dom-demo/variables/Contact.md +1 -1
  508. package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +1 -1
  509. package/examples/@xmachines/play-dom-demo/variables/Field.md +1 -1
  510. package/examples/@xmachines/play-dom-demo/variables/Home.md +1 -1
  511. package/examples/@xmachines/play-dom-demo/variables/Login.md +1 -1
  512. package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +1 -1
  513. package/examples/@xmachines/play-dom-demo/variables/Navigation.md +1 -1
  514. package/examples/@xmachines/play-dom-demo/variables/Overview.md +1 -1
  515. package/examples/@xmachines/play-dom-demo/variables/Panel.md +1 -1
  516. package/examples/@xmachines/play-dom-demo/variables/Profile.md +1 -1
  517. package/examples/@xmachines/play-dom-demo/variables/Settings.md +1 -1
  518. package/examples/@xmachines/play-dom-demo/variables/Stats.md +1 -1
  519. package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +1 -1
  520. package/examples/@xmachines/play-dom-demo/variables/demoComponents.md +17 -17
  521. package/examples/@xmachines/play-dom-router-demo/README.md +4 -3
  522. package/examples/@xmachines/play-react-demo/README.md +2 -2
  523. package/examples/@xmachines/play-react-demo/functions/createAuthActionHandlers.md +11 -11
  524. package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +1 -1
  525. package/examples/@xmachines/play-react-demo/variables/About.md +1 -1
  526. package/examples/@xmachines/play-react-demo/variables/Button.md +1 -1
  527. package/examples/@xmachines/play-react-demo/variables/Contact.md +1 -1
  528. package/examples/@xmachines/play-react-demo/variables/Dashboard.md +1 -1
  529. package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +1 -1
  530. package/examples/@xmachines/play-react-demo/variables/Field.md +1 -1
  531. package/examples/@xmachines/play-react-demo/variables/Home.md +1 -1
  532. package/examples/@xmachines/play-react-demo/variables/Login.md +1 -1
  533. package/examples/@xmachines/play-react-demo/variables/NavBar.md +1 -1
  534. package/examples/@xmachines/play-react-demo/variables/NavBarView.md +1 -1
  535. package/examples/@xmachines/play-react-demo/variables/Navigation.md +1 -1
  536. package/examples/@xmachines/play-react-demo/variables/Overview.md +1 -1
  537. package/examples/@xmachines/play-react-demo/variables/Panel.md +1 -1
  538. package/examples/@xmachines/play-react-demo/variables/Profile.md +1 -1
  539. package/examples/@xmachines/play-react-demo/variables/Settings.md +1 -1
  540. package/examples/@xmachines/play-react-demo/variables/Shell.md +1 -1
  541. package/examples/@xmachines/play-react-demo/variables/Stats.md +1 -1
  542. package/examples/@xmachines/play-react-demo/variables/authCatalog.md +1 -1
  543. package/examples/@xmachines/play-react-demo/variables/demoComponents.md +17 -17
  544. package/examples/@xmachines/play-react-router-demo/README.md +4 -3
  545. package/examples/@xmachines/play-solid-demo/README.md +3 -3
  546. package/examples/@xmachines/play-solid-demo/functions/createAuthActionHandlers.md +11 -11
  547. package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +1 -1
  548. package/examples/@xmachines/play-solid-demo/variables/About.md +1 -1
  549. package/examples/@xmachines/play-solid-demo/variables/Button.md +1 -1
  550. package/examples/@xmachines/play-solid-demo/variables/Contact.md +1 -1
  551. package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +1 -1
  552. package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +1 -1
  553. package/examples/@xmachines/play-solid-demo/variables/Field.md +1 -1
  554. package/examples/@xmachines/play-solid-demo/variables/Home.md +1 -1
  555. package/examples/@xmachines/play-solid-demo/variables/Login.md +1 -1
  556. package/examples/@xmachines/play-solid-demo/variables/NavBar.md +1 -1
  557. package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +1 -1
  558. package/examples/@xmachines/play-solid-demo/variables/Navigation.md +1 -1
  559. package/examples/@xmachines/play-solid-demo/variables/Overview.md +1 -1
  560. package/examples/@xmachines/play-solid-demo/variables/Panel.md +1 -1
  561. package/examples/@xmachines/play-solid-demo/variables/Profile.md +1 -1
  562. package/examples/@xmachines/play-solid-demo/variables/Settings.md +1 -1
  563. package/examples/@xmachines/play-solid-demo/variables/Shell.md +1 -1
  564. package/examples/@xmachines/play-solid-demo/variables/Stats.md +1 -1
  565. package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +1 -1
  566. package/examples/@xmachines/play-solid-demo/variables/demoComponents.md +17 -17
  567. package/examples/@xmachines/play-solid-router-demo/README.md +9 -3
  568. package/examples/@xmachines/play-svelte-demo/README.md +1 -1
  569. package/examples/@xmachines/play-svelte-demo/functions/createAuthActionHandlers.md +11 -11
  570. package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +1 -1
  571. package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +1 -1
  572. package/examples/@xmachines/play-svelte-demo/variables/demoComponents.md +17 -17
  573. package/examples/@xmachines/play-svelte-spa-router-demo/README.md +1 -1
  574. package/examples/@xmachines/play-sveltekit-router-demo/README.md +1 -1
  575. package/examples/@xmachines/play-tanstack-react-router-demo/README.md +3 -2
  576. package/examples/@xmachines/play-tanstack-solid-router-demo/README.md +9 -8
  577. package/examples/@xmachines/play-vue-demo/README.md +2 -2
  578. package/examples/@xmachines/play-vue-demo/functions/createAuthActionHandlers.md +11 -11
  579. package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +1 -1
  580. package/examples/@xmachines/play-vue-demo/variables/App.md +1 -1
  581. package/examples/@xmachines/play-vue-demo/variables/authCatalog.md +1 -1
  582. package/examples/@xmachines/play-vue-demo/variables/demoComponents.md +1 -1
  583. package/examples/@xmachines/play-vue-router-demo/README.md +3 -3
  584. package/examples/README.md +1 -1
  585. package/examples/basic-state-machine.md +19 -23
  586. package/examples/form-validation.md +60 -61
  587. package/examples/multi-router-integration.md +268 -147
  588. package/examples/routing-patterns.md +73 -43
  589. package/examples/traffic-light.md +24 -22
  590. package/guides/actor-model.md +38 -21
  591. package/guides/atoms.md +48 -8
  592. package/guides/getting-started.md +106 -62
  593. package/guides/inspector.md +103 -37
  594. package/guides/routing.md +7 -2
  595. package/guides/state-machines.md +106 -68
  596. package/guides/views.md +40 -18
  597. package/package.json +6 -6
  598. package/rfc/git.md +13 -5
  599. package/rfc/play.md +53 -31
  600. package/rfc/run.md +7 -4
  601. package/api/@xmachines/play-view/index/functions/createFailureLatch.md +0 -20
  602. package/api/@xmachines/play-view/index/functions/sameViewInputs.md +0 -25
  603. package/api/@xmachines/play-view/index/interfaces/FailureLatch.md +0 -60
  604. package/api/@xmachines/play-view/index/interfaces/ViewInputs.md +0 -19
@@ -6,25 +6,25 @@
6
6
  const demoComponents: object;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-svelte/examples/demo/src/components/demo-components.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L20)
9
+ Defined in: [packages/play-svelte/examples/demo/src/components/demo-components.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L20)
10
10
 
11
11
  demoComponents — the full catalog component map, shared with the router demos.
12
12
 
13
13
  ## Type Declaration
14
14
 
15
- | Name | Type | Default value | Defined in |
16
- | --------------------------------------------- | --------------------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
17
- | <a id="property-about"></a> `About` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:22](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L22) |
18
- | <a id="property-button"></a> `Button` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L34) |
19
- | <a id="property-contact"></a> `Contact` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:23](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L23) |
20
- | <a id="property-dashboard"></a> `Dashboard` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:25](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L25) |
21
- | <a id="property-field"></a> `Field` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L33) |
22
- | <a id="property-home"></a> `Home` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:21](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L21) |
23
- | <a id="property-login"></a> `Login` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L24) |
24
- | <a id="property-navbar"></a> `NavBar` | `LegacyComponentType` | `NavBarView` | [packages/play-svelte/examples/demo/src/components/demo-components.ts:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L31) |
25
- | <a id="property-navigation"></a> `Navigation` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L30) |
26
- | <a id="property-overview"></a> `Overview` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L26) |
27
- | <a id="property-panel"></a> `Panel` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:32](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L32) |
28
- | <a id="property-profile"></a> `Profile` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L28) |
29
- | <a id="property-settings"></a> `Settings` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:29](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L29) |
30
- | <a id="property-stats"></a> `Stats` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:27](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-svelte/examples/demo/src/components/demo-components.ts#L27) |
15
+ | Name | Type | Default value | Defined in |
16
+ | --------------------------------------------- | --------------------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
17
+ | <a id="property-about"></a> `About` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:22](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L22) |
18
+ | <a id="property-button"></a> `Button` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L34) |
19
+ | <a id="property-contact"></a> `Contact` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:23](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L23) |
20
+ | <a id="property-dashboard"></a> `Dashboard` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:25](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L25) |
21
+ | <a id="property-field"></a> `Field` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L33) |
22
+ | <a id="property-home"></a> `Home` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:21](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L21) |
23
+ | <a id="property-login"></a> `Login` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L24) |
24
+ | <a id="property-navbar"></a> `NavBar` | `LegacyComponentType` | `NavBarView` | [packages/play-svelte/examples/demo/src/components/demo-components.ts:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L31) |
25
+ | <a id="property-navigation"></a> `Navigation` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L30) |
26
+ | <a id="property-overview"></a> `Overview` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L26) |
27
+ | <a id="property-panel"></a> `Panel` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:32](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L32) |
28
+ | <a id="property-profile"></a> `Profile` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L28) |
29
+ | <a id="property-settings"></a> `Settings` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:29](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L29) |
30
+ | <a id="property-stats"></a> `Stats` | `LegacyComponentType` | - | [packages/play-svelte/examples/demo/src/components/demo-components.ts:27](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-svelte/examples/demo/src/components/demo-components.ts#L27) |
@@ -37,7 +37,7 @@ Use this order to understand the implementation:
37
37
  5. `Shell.svelte` renders `<PlayUIProvider>` + `<PlayRenderer />` with the actor and registryResult and provides the shared UI shell (nav, debug panel with the **Show Inspector** button).
38
38
  6. Browser tests in `test/browser/` validate startup and auth route transitions.
39
39
 
40
- ```ts
40
+ ```ts fragment
41
41
  // src/runtime.ts (shape)
42
42
  export const inspector = createDemoInspector();
43
43
  const createDemoPlayer = definePlayer({
@@ -37,7 +37,7 @@ Use this order to understand the implementation:
37
37
  5. `Shell.svelte` renders `<PlayUIProvider>` + `<PlayRenderer />` with the actor and registryResult and provides the shared UI shell (nav, debug panel with the **Show Inspector** button).
38
38
  6. Browser tests in `test/browser/` validate startup and auth route transitions.
39
39
 
40
- ```ts
40
+ ```ts fragment
41
41
  // src/runtime.ts (shape)
42
42
  export const inspector = createDemoInspector();
43
43
  const createDemoPlayer = definePlayer({
@@ -36,7 +36,7 @@ Use this order to understand the implementation:
36
36
  5. `Shell` is the shared demo layout component imported from [`@xmachines/play-react-demo`](../play-react-demo/README.md) (defined in `packages/play-react/examples/demo/src/components/Shell.tsx`, a workspace-only package). It renders `PlayUIProvider` + `PlayRenderer`, header/nav, and the debug panel — including the **Show Inspector** button — from actor state.
37
37
  6. Tests in `test/` and `test/browser/` validate invariant and runtime behavior.
38
38
 
39
- ```tsx
39
+ ```tsx fragment
40
40
  // src/App.tsx (shape)
41
41
  import { Shell } from "@xmachines/play-react-demo"; // shared demo shell (workspace-only package)
42
42
  import { createPlayer, inspector, routeMap, createRegistryResult } from "./runtime.js";
@@ -72,12 +72,13 @@ return (
72
72
  );
73
73
  ```
74
74
 
75
- ```tsx
75
+ ```tsx fragment
76
76
  // src/runtime.ts (shape)
77
77
  export const inspector = createDemoInspector();
78
78
  export const createPlayer = definePlayer({
79
79
  machine: authMachine,
80
80
  options: { inspect: inspector.inspect },
81
+ actor: compose(PlayerActor, withRouting, withView),
81
82
  });
82
83
  export const routeMap = createRouteMap(authMachine);
83
84
 
@@ -37,27 +37,33 @@ Use this order to understand the implementation:
37
37
  5. `Shell` (from [`@xmachines/play-solid-demo`](../play-solid-demo/README.md)) renders actor-projected state (`PlayRenderer`), emits actor events via the `registryResult` actions, and shows the debug panel's **Show Inspector** button.
38
38
  6. `test/library-pattern.test.ts` plus `test/browser/` verify invariants and browser routing behavior.
39
39
 
40
- ```tsx
40
+ ```tsx fragment
41
41
  // src/main.tsx (shape)
42
42
  render(() => <App />, document.getElementById("app")!);
43
43
  ```
44
44
 
45
- ```ts
45
+ ```ts fragment
46
46
  // src/runtime.ts (shape)
47
47
  export const inspector = createDemoInspector();
48
48
  const createPlayer = definePlayer({
49
49
  machine: authMachine,
50
50
  options: { inspect: inspector.inspect },
51
+ actor: compose(PlayerActor, withRouting, withView),
51
52
  });
52
53
  export const actor = createPlayer();
53
54
  actor.start();
54
55
 
56
+ export const registryResult = defineRegistry(authCatalog, {
57
+ components: demoComponents,
58
+ actions: createAuthActionHandlers(actor), // login/logout/route + task events + form actions
59
+ });
60
+
55
61
  export const routeMap = createRouteMap(authMachine);
56
62
  const routeTree = extractMachineRoutes(authMachine);
57
63
  export const routes = getRoutableRoutes(routeTree);
58
64
  ```
59
65
 
60
- ```tsx
66
+ ```tsx fragment
61
67
  // src/App.tsx (shape)
62
68
  import { Shell } from "@xmachines/play-solid-demo"; // shared demo shell (workspace-only package)
63
69
  import { actor, inspector, registryResult, routeMap, routes } from "./runtime.js";
@@ -80,11 +86,6 @@ return (
80
86
  );
81
87
  ```
82
88
 
83
- ```ts
84
- // src/runtime.ts — actor events wired via the shared handler factory
85
- actions: createAuthActionHandlers(actor), // login/logout/route + task events + form actions
86
- ```
87
-
88
89
  ## Key Files
89
90
 
90
91
  - `src/runtime.ts` - actor lifecycle, registry, route map, and routable routes setup
@@ -44,7 +44,7 @@ Use this order to understand the implementation:
44
44
  7. HMR cleanup calls `actor.stop()` via `import.meta.hot.dispose`.
45
45
  8. Browser tests in `test/browser/` validate startup and interaction behavior.
46
46
 
47
- ```ts
47
+ ```ts fragment
48
48
  // src/main.ts
49
49
  const inspector = createDemoInspector();
50
50
  const createPlayer = definePlayer({
@@ -52,7 +52,7 @@ const createPlayer = definePlayer({
52
52
  options: { inspect: inspector.inspect },
53
53
  actor: compose(PlayerActor, withRouting, withView),
54
54
  });
55
- const actor = createPlayer() as AuthActor;
55
+ const actor = createPlayer();
56
56
  actor.start();
57
57
 
58
58
  const app = createApp(App);
@@ -6,7 +6,7 @@
6
6
  function createAuthActionHandlers(actor): object;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-actor/examples/shared/src/actions.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-actor/examples/shared/src/actions.ts#L48)
9
+ Defined in: [packages/play-actor/examples/shared/src/actions.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-actor/examples/shared/src/actions.ts#L48)
10
10
 
11
11
  Build the demo action handler map for one actor.
12
12
 
@@ -23,13 +23,13 @@ framework's `defineRegistry` accepts; spread the result into its `actions`.
23
23
 
24
24
  `object`
25
25
 
26
- | Name | Type | Defined in |
27
- | ---------------- | ------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
28
- | `addTask()` | (`params?`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-actor/examples/shared/src/actions.ts#L65) |
29
- | `completeTask()` | (`params`, `_setState`, `state`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:72](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-actor/examples/shared/src/actions.ts#L72) |
30
- | `login()` | (`params?`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:50](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-actor/examples/shared/src/actions.ts#L50) |
31
- | `logout()` | () => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:54](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-actor/examples/shared/src/actions.ts#L54) |
32
- | `removeTask()` | (`params`, `_setState`, `state`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:81](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-actor/examples/shared/src/actions.ts#L81) |
33
- | `resetForm()` | (`params`, `setState`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:99](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-actor/examples/shared/src/actions.ts#L99) |
34
- | `route()` | (`params?`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-actor/examples/shared/src/actions.ts#L55) |
35
- | `submitForm()` | (`params?`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:92](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-actor/examples/shared/src/actions.ts#L92) |
26
+ | Name | Type | Defined in |
27
+ | ---------------- | ------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
28
+ | `addTask()` | (`params?`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-actor/examples/shared/src/actions.ts#L65) |
29
+ | `completeTask()` | (`params`, `_setState`, `state`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:72](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-actor/examples/shared/src/actions.ts#L72) |
30
+ | `login()` | (`params?`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:50](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-actor/examples/shared/src/actions.ts#L50) |
31
+ | `logout()` | () => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:54](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-actor/examples/shared/src/actions.ts#L54) |
32
+ | `removeTask()` | (`params`, `_setState`, `state`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:81](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-actor/examples/shared/src/actions.ts#L81) |
33
+ | `resetForm()` | (`params`, `setState`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:99](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-actor/examples/shared/src/actions.ts#L99) |
34
+ | `route()` | (`params?`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-actor/examples/shared/src/actions.ts#L55) |
35
+ | `submitForm()` | (`params?`) => `Promise`\<`void`\> | [packages/play-actor/examples/shared/src/actions.ts:92](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-actor/examples/shared/src/actions.ts#L92) |
@@ -6,4 +6,4 @@
6
6
  type AuthCatalog = typeof authCatalog;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-vue/examples/demo/src/catalog.ts:6](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-vue/examples/demo/src/catalog.ts#L6)
9
+ Defined in: [packages/play-vue/examples/demo/src/catalog.ts:6](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-vue/examples/demo/src/catalog.ts#L6)
@@ -6,4 +6,4 @@
6
6
  const App: DefineComponent<{}, {}, unknown>;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-vue/examples/demo/src/env.d.ts:5](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-vue/examples/demo/src/env.d.ts#L5)
9
+ Defined in: [packages/play-vue/examples/demo/src/env.d.ts:5](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-vue/examples/demo/src/env.d.ts#L5)
@@ -194,4 +194,4 @@ const authCatalog: Catalog<{
194
194
  }>;
195
195
  ```
196
196
 
197
- Defined in: [packages/play-vue/examples/demo/src/catalog.ts:5](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-vue/examples/demo/src/catalog.ts#L5)
197
+ Defined in: [packages/play-vue/examples/demo/src/catalog.ts:5](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-vue/examples/demo/src/catalog.ts#L5)
@@ -6,6 +6,6 @@
6
6
  const demoComponents: ComponentsMap<typeof authCatalog>;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-vue/examples/demo/src/components/demo-components.ts:22](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-vue/examples/demo/src/components/demo-components.ts#L22)
9
+ Defined in: [packages/play-vue/examples/demo/src/components/demo-components.ts:22](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v8.0.0-next.1/packages/play-vue/examples/demo/src/components/demo-components.ts#L22)
10
10
 
11
11
  demoComponents — the full catalog component map, shared with the router demos.
@@ -38,14 +38,14 @@ Use this order to understand how the demo is wired:
38
38
  6. `PlayRouterProvider` waits for `router.isReady()` so direct URL loads are handled correctly.
39
39
  7. Browser tests in `test/browser/` validate startup and auth route transitions.
40
40
 
41
- ```ts
41
+ ```ts fragment
42
42
  // src/main.ts (shape)
43
43
  const app = createApp(App);
44
44
  app.use(router);
45
45
  app.mount("#app");
46
46
  ```
47
47
 
48
- ```ts
48
+ ```ts fragment
49
49
  // src/router.ts (shape)
50
50
  export const routes = [{ path: "/:pathMatch(.*)*", name: "xmachines-play", component: RouteHost }];
51
51
  ```
@@ -69,7 +69,7 @@ const renderShell = (currentActor, currentRouter) =>
69
69
  </template>
70
70
  ```
71
71
 
72
- ```ts
72
+ ```ts fragment
73
73
  // src/runtime.ts (shape)
74
74
  export const actor = createPlayer();
75
75
  actor.start();
@@ -10,7 +10,7 @@ Start with the fundamental machine + actor pattern:
10
10
 
11
11
  - **[Basic State Machine](basic-state-machine.md)** — `setup().createMachine()` + `definePlayer()` + atoms
12
12
  - **[Traffic Light](traffic-light.md)** — Multi-state machine with `meta.route` and `formatPlayRouteTransitions`
13
- - **[Form Validation](form-validation.md)** — Typed context mutations with `setup.assign`, guards, and `$bindState`
13
+ - **[Form Validation](form-validation.md)** — Typed context patches, guards in transition functions, and `$bindState`
14
14
 
15
15
  ### Level 2: Routing Patterns
16
16
 
@@ -1,6 +1,6 @@
1
1
  # Basic State Machine
2
2
 
3
- Learn how to define a simple toggle machine using the current XState v5 + XMachines `setup().createMachine()` + `definePlayer()` pattern.
3
+ Learn how to define a simple toggle machine using the current XState v6 + XMachines `setup().createMachine()` + `definePlayer()` pattern.
4
4
 
5
5
  ## Use Case
6
6
 
@@ -9,15 +9,15 @@ This example demonstrates a toggle switch — the foundation for understanding s
9
9
  ## Complete Code
10
10
 
11
11
  ```typescript
12
- import { setup } from "xstate";
12
+ import { setup, types } from "xstate";
13
13
  import { definePlayer } from "@xmachines/play-xstate";
14
14
 
15
- // 1. Declare types for context, events, and input via setup()
15
+ // 1. Declare the schemas of the context, the events, and the input via setup()
16
16
  const toggleSetup = setup({
17
- types: {
18
- context: {} as { toggleCount: number },
19
- events: {} as { type: "toggle" },
20
- input: {} as { toggleCount?: number } | undefined,
17
+ schemas: {
18
+ context: types<{ toggleCount: number }>(),
19
+ events: { toggle: types<void>() },
20
+ input: types<{ toggleCount?: number } | undefined>(),
21
21
  },
22
22
  });
23
23
 
@@ -31,22 +31,18 @@ const toggleMachine = toggleSetup.createMachine({
31
31
  states: {
32
32
  off: {
33
33
  on: {
34
- toggle: {
34
+ toggle: ({ context }) => ({
35
35
  target: "on",
36
- actions: toggleSetup.assign({
37
- toggleCount: ({ context }) => context.toggleCount + 1,
38
- }),
39
- },
36
+ context: { toggleCount: context.toggleCount + 1 },
37
+ }),
40
38
  },
41
39
  },
42
40
  on: {
43
41
  on: {
44
- toggle: {
42
+ toggle: ({ context }) => ({
45
43
  target: "off",
46
- actions: toggleSetup.assign({
47
- toggleCount: ({ context }) => context.toggleCount + 1,
48
- }),
49
- },
44
+ context: { toggleCount: context.toggleCount + 1 },
45
+ }),
50
46
  },
51
47
  },
52
48
  },
@@ -81,11 +77,11 @@ actor.stop();
81
77
 
82
78
  ## Code Explanation
83
79
 
84
- 1. **`setup({ types })`** — Declares TypeScript types for `context`, `events`, and `input` before the machine is created. This is the XState v5 typed entry point. Never pass type parameters directly to `createMachine`.
80
+ 1. **`setup({ schemas })`** — Declares the schemas of `context`, `events`, and `input` before the machine is created. `types<T>()` gives a schema that carries the type alone, with no validation at run time. `events` is a map from the type of each event to its payload, and `types<void>()` declares an event without a payload. This is the XState v6 typed entry point. Never pass type parameters directly to `createMachine`.
85
81
 
86
- 2. **`toggleSetup.createMachine(...)`** — Creates the state machine. Using the scoped `toggleSetup.createMachine` (instead of the bare `createMachine` from xstate) ensures that guards and actions are type-checked against the declared types.
82
+ 2. **`toggleSetup.createMachine(...)`** — Creates the state machine. The scoped `toggleSetup.createMachine` checks each transition function against the declared schemas.
87
83
 
88
- 3. **`toggleSetup.assign(...)`** — Assigns context mutations using the typed setup's `assign` helper. This provides full inference from the declared context type — no manual type assertions needed.
84
+ 3. **A transition function** — Each transition is a function of `{ context, event }`. It returns the `target` and a `context` patch, which XState merges into the context at the top level. The context of the declared type gives the function full inference, with no type assertions.
89
85
 
90
86
  4. **`definePlayer({ machine })`** — Wraps the machine in a factory. Calling `createPlayer()` returns a `PlayerActor` — XMachines' actor type that extends XState's actor with atom reactivity and Play Architecture hooks.
91
87
 
@@ -99,14 +95,14 @@ actor.stop();
99
95
 
100
96
  ## Key Concepts
101
97
 
102
- - **`setup({ types })`**: The XState v5 typed entry point. Declares context, event, and input shapes before machine creation.
98
+ - **`setup({ schemas })`**: The XState v6 typed entry point. Declares the context, the event map, and the input before machine creation.
103
99
  - **`definePlayer({ machine })`**: Creates a factory function that returns `PlayerActor` instances.
104
100
  - **`actor.state`**: An `Atom<Snapshot>` — an atom-based reactive handle on the machine snapshot.
105
101
  - **`actor.getSnapshot()`**: Synchronous snapshot access — use for one-time reads and TypeScript-typed context inspection.
106
- - **Typed `assign`**: Always call `setup.assign(...)` (not the bare `assign` from xstate) for context mutations.
102
+ - **Context patches**: A transition function returns `{ context: { ... } }` to change the context. XState 6 has no `assign` action.
107
103
 
108
104
  ## Next Steps
109
105
 
110
106
  - **[Traffic Light Example](traffic-light.md)** — Multi-state machine with `meta.route` and `formatPlayRouteTransitions`
111
- - **[Form Validation Example](form-validation.md)** — Typed context mutations with `setup.assign` and guards
107
+ - **[Form Validation Example](form-validation.md)** — Typed context patches and guards in transition functions
112
108
  - **[Routing Patterns](routing-patterns.md)** — Adding `meta.route` to states and using `play.route` events
@@ -1,22 +1,25 @@
1
1
  # Form Validation with Typed Context
2
2
 
3
- Managing login form state using `setup({ types })`, typed `assign`, guards, and `meta.view` with `$bindState`.
3
+ Managing login form state using `setup({ schemas })`, transition functions with context patches and guards, and `meta.view` with `$bindState`.
4
4
 
5
5
  ## Use Case
6
6
 
7
7
  This example mirrors the `authMachine` login pattern: a form state with a local state store (`$bindState` two-way binding), a guard on the submit action, and a `meta.view` spec describing the component tree. It covers:
8
8
 
9
- - Typed context mutations with `setup.assign`
10
- - Guards as inline functions checking context
9
+ - Typed context patches, returned by transition functions
10
+ - Guards as conditions inside the transition functions
11
11
  - `meta.view` spec with `$bindState` for two-way form binding
12
12
  - Sending typed domain events from the view layer
13
13
 
14
14
  ## Complete Code
15
15
 
16
16
  ```typescript
17
- import { setup } from "xstate";
18
- import { definePlayer } from "@xmachines/play-xstate";
17
+ import { setup, types } from "xstate";
18
+ import { compose, definePlayer, PlayerActor } from "@xmachines/play-xstate";
19
19
  import { formatPlayRouteTransitions } from "@xmachines/play-xstate/routing";
20
+ import { withView } from "@xmachines/play-xstate/view";
21
+ import type { PlayRouteEvent, RouteMetadata } from "@xmachines/play-router";
22
+ import type { ViewMeta } from "@xmachines/play-view";
20
23
 
21
24
  // Context shape
22
25
  interface LoginContext {
@@ -27,30 +30,25 @@ interface LoginContext {
27
30
  query: Record<string, string>;
28
31
  }
29
32
 
30
- // Event union — lowercase dot-separated names
31
- type LoginEvent =
32
- | {
33
- type: "play.route";
34
- to: string;
35
- params?: Record<string, string>;
36
- query?: Record<string, string>;
37
- }
38
- | { type: "auth.login"; username: string }
39
- | { type: "auth.logout" };
40
-
41
- // 1. Typed setup — always use setup() before createMachine()
33
+ // 1. Typed setup — always use setup() before createMachine(). The events are a map from
34
+ // the type of each event (lowercase dot-separated names) to its payload.
42
35
  const loginSetup = setup({
43
- types: {
44
- context: {} as LoginContext,
45
- events: {} as LoginEvent,
46
- input: {} as Partial<LoginContext> | undefined,
36
+ schemas: {
37
+ context: types<LoginContext>(),
38
+ events: {
39
+ "play.route": types<Omit<PlayRouteEvent, "type">>(),
40
+ "auth.login": types<{ username: string }>(),
41
+ "auth.logout": types<void>(),
42
+ },
43
+ input: types<Partial<LoginContext> | undefined>(),
44
+ meta: types<{ route?: RouteMetadata; view?: ViewMeta }>(),
47
45
  },
48
46
  });
49
47
 
50
48
  // 2. Machine — wraps config in formatPlayRouteTransitions for play.route support
51
49
  const loginMachine = loginSetup.createMachine(
52
50
  formatPlayRouteTransitions({
53
- id: "login",
51
+ id: "loginFlow",
54
52
  initial: "idle",
55
53
  context: ({ input }) => ({
56
54
  isAuthenticated: input?.isAuthenticated ?? false,
@@ -62,24 +60,23 @@ const loginMachine = loginSetup.createMachine(
62
60
 
63
61
  // Root-level event handlers — accessible from any state
64
62
  on: {
65
- "auth.login": {
66
- target: ".dashboard",
67
- // Guard: allow login only when not already authenticated
68
- guard: ({ context }) => !context.isAuthenticated,
69
- actions: loginSetup.assign({
70
- isAuthenticated: true,
71
- errorMessage: null,
72
- // Typed by the event union — TypeScript narrows event.username safely
73
- username: ({ event }) => (event.type === "auth.login" ? event.username : null),
74
- }),
63
+ "auth.login": ({ context, event }) => {
64
+ // Guard: allow login only when not already authenticated. A transition
65
+ // function that returns nothing leaves the event unhandled.
66
+ if (context.isAuthenticated) return;
67
+ return {
68
+ target: ".dashboard",
69
+ // The event map types `event.username` for this transition
70
+ context: {
71
+ isAuthenticated: true,
72
+ errorMessage: null,
73
+ username: event.username,
74
+ },
75
+ };
75
76
  },
76
- "auth.logout": {
77
- target: ".idle",
78
- guard: ({ context }) => context.isAuthenticated,
79
- actions: loginSetup.assign({
80
- isAuthenticated: false,
81
- username: null,
82
- }),
77
+ "auth.logout": ({ context }) => {
78
+ if (!context.isAuthenticated) return;
79
+ return { target: ".idle", context: { isAuthenticated: false, username: null } };
83
80
  },
84
81
  },
85
82
 
@@ -146,17 +143,18 @@ const loginMachine = loginSetup.createMachine(
146
143
  },
147
144
  },
148
145
  // always-guard: redirect to login if not authenticated
149
- always: {
150
- guard: ({ context }) => !context.isAuthenticated,
151
- target: "login",
152
- },
146
+ always: ({ context }) =>
147
+ context.isAuthenticated ? undefined : { target: "login" },
153
148
  },
154
149
  },
155
150
  }),
156
151
  );
157
152
 
158
- // 3. Factory and actor
159
- const createPlayer = definePlayer({ machine: loginMachine });
153
+ // 3. Factory and actor — withView derives the meta.view spec that a renderer reads
154
+ const createPlayer = definePlayer({
155
+ machine: loginMachine,
156
+ actor: compose(PlayerActor, withView),
157
+ });
160
158
  const actor = createPlayer();
161
159
  actor.start();
162
160
 
@@ -169,8 +167,9 @@ actor.send({ type: "auth.login", username: "alice" });
169
167
  console.log(actor.getSnapshot().value); // "dashboard"
170
168
  console.log(actor.getSnapshot().context.username); // "alice"
171
169
 
172
- // 6. Guard prevents re-login while authenticated
173
- actor.send({ type: "auth.login", username: "bob" }); // guard fires, transition rejected
170
+ // 6. Guard prevents re-login while authenticated. `can` asks without a send: a send of an
171
+ // event that no transition takes makes the development build of XState 6 log a warning.
172
+ console.log(actor.can({ type: "auth.login", username: "bob" })); // false — the guard refuses it
174
173
  console.log(actor.getSnapshot().context.username); // still "alice"
175
174
 
176
175
  // 7. Logout
@@ -190,9 +189,9 @@ actor.stop();
190
189
  | `{ $bindState: "/username" }` | Two-way | Prop reads and writes the state store key `/username` |
191
190
  | `{ $state: "/username" }` | Read-only | Reads the current value from the state store at `/username` |
192
191
 
193
- The `state:` key in `meta.view` sets the initial values for the local store. When the user types in the form field, the renderer keeps the store in sync. On submit, action params read the final value via `$state`.
192
+ The `state:` key in `meta.view` sets the initial values for the local store. When the user types in the form field, the component writes the value to the store. On submit, action params read the final value via `$state`.
194
193
 
195
- ```typescript
194
+ ```typescript fragment
196
195
  // In the machine meta.view — the renderer handles the rest:
197
196
  view: {
198
197
  root: "root",
@@ -216,10 +215,10 @@ view: {
216
215
 
217
216
  ## Key Concepts
218
217
 
219
- - **`setup({ types })`**: Always declare context, events, and input types before `createMachine`.
220
- - **`setup.assign(...)`**: Use the scoped `assign` from your `setup` instance, not the bare one from `xstate`. This provides full type inference.
221
- - **Guards as inline functions**: `({ context }) => !context.isAuthenticated` — guards check state invariants ("can I BE in this state?"), not event details.
222
- - **`always` transitions**: Entry guards on states. Used for protected routes — if the guard fires, the machine redirects before the state is fully entered.
218
+ - **`setup({ schemas })`**: Always declare the context, the event map, the input, and the `meta` of the states before `createMachine`.
219
+ - **Context patches**: A transition function returns `{ context: { ... } }`. XState merges the patch into the context at the top level. XState 6 has no `assign` action.
220
+ - **Guards inside transition functions**: `if (context.isAuthenticated) return;` — a transition function that returns nothing leaves the event unhandled. A guard checks a state invariant ("can I BE in this state?"), not event details.
221
+ - **`always` transitions**: Entry guards on states. Used for protected routes — if the function returns a target, the machine redirects before the state is fully entered.
223
222
  - **Lowercase dot-separated event types**: `"auth.login"`, `"auth.logout"`, `"play.route"` — not `SCREAMING_SNAKE_CASE`.
224
223
 
225
224
  ## Connecting the Renderer
@@ -231,6 +230,10 @@ import { createRenderer, schema } from "@xmachines/play-dom";
231
230
  import { defineCatalog } from "@xmachines/json-render-core";
232
231
  import { z } from "zod";
233
232
  import type { ComponentFn } from "@xmachines/play-dom";
233
+ import type { ViewActor } from "@xmachines/play-view";
234
+
235
+ // The started actor of the complete code above
236
+ declare const actor: ViewActor & { stop(): void };
234
237
 
235
238
  const catalog = defineCatalog(schema, {
236
239
  components: {
@@ -257,10 +260,9 @@ const Login: ComponentFn<AppCatalog, "Login"> = ({ props, on, ctx }) => {
257
260
  const section = document.createElement("section");
258
261
  const input = document.createElement("input");
259
262
  input.value = props.username ?? "";
260
- // Keep the local state store in sync as the user types
261
- input.addEventListener("input", () => {
262
- ctx.store.update((s) => ({ ...s, username: input.value }));
263
- });
263
+ // Write each keystroke to the store path that $bindState binds to the prop
264
+ const username = ctx.bound<string>("username");
265
+ input.addEventListener("input", () => username.set(input.value));
264
266
  const button = document.createElement("button");
265
267
  button.textContent = "Log In";
266
268
  const submit = on("submit"); // bound to the spec's on.submit binding
@@ -283,9 +285,6 @@ const Dashboard: ComponentFn<AppCatalog, "Dashboard"> = ({ props, on }) => {
283
285
  // createRenderer builds the factory once — call mount() when the actor is ready
284
286
  const mount = createRenderer(catalog, { Home, Login, Dashboard });
285
287
 
286
- const actor = createPlayer();
287
- actor.start();
288
-
289
288
  const disconnect = mount(actor, document.getElementById("app")!);
290
289
 
291
290
  // Call teardown() when the app ends before the page does, for example when the component
@@ -302,7 +301,7 @@ function teardown(): void {
302
301
 
303
302
  - `actions` in `defineCatalog` must include every action name referenced in `meta.view` `on:` bindings. TypeScript enforces this via `CatalogHasActions`.
304
303
  - `on("submit").emit()` resolves `params` from the current state store at call time — the `$state: "/username"` in the spec is read at that moment, not at render time.
305
- - `ctx.store.update(fn)` is the standard write path for two-way binding. The spec's `$bindState` directive only wires the read direction (prop ← store); the write direction (store ← input) must be implemented in the component.
304
+ - `ctx.bound("username").set(value)` writes to the store path that `$bindState` binds to the prop. The `$bindState` directive gives the prop its value from the store. The component writes the input back to the store.
306
305
 
307
306
  ## Next Steps
308
307