@xmachines/docs 7.0.0 → 7.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 (763) hide show
  1. package/README.md +1 -1
  2. package/api/@xmachines/core/README.md +1 -1
  3. package/api/@xmachines/core/cache/functions/createLruCache.md +7 -7
  4. package/api/@xmachines/core/cache/interfaces/KeyValueCache.md +6 -6
  5. package/api/@xmachines/core/errors/classes/BaseError.md +15 -23
  6. package/api/@xmachines/core/errors/classes/DisposeConflictError.md +11 -11
  7. package/api/@xmachines/core/utils/functions/asDisposable.md +9 -9
  8. package/api/@xmachines/core/utils/functions/createNullRecord.md +4 -4
  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 +4 -4
  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 +1 -1
  21. package/api/@xmachines/play/errors/classes/NonNullableError.md +11 -11
  22. package/api/@xmachines/play/errors/classes/PlayError.md +11 -11
  23. package/api/@xmachines/play/index/functions/assertNonNullable.md +4 -4
  24. package/api/@xmachines/play/index/type-aliases/PlayEvent.md +9 -9
  25. package/api/@xmachines/play-actor/README.md +5 -3
  26. package/api/@xmachines/play-actor/interfaces/ActorEvent.md +4 -4
  27. package/api/@xmachines/play-actor/interfaces/PlayActor.md +9 -9
  28. package/api/@xmachines/play-atom/README.md +1 -1
  29. package/api/@xmachines/play-atom/functions/watchAtom.md +4 -4
  30. package/api/@xmachines/play-atom/interfaces/AsyncAtomOptions.md +4 -4
  31. package/api/@xmachines/play-atom/interfaces/Atom.md +9 -9
  32. package/api/@xmachines/play-atom/interfaces/AtomObserver.md +9 -9
  33. package/api/@xmachines/play-atom/interfaces/AtomOptions.md +7 -7
  34. package/api/@xmachines/play-atom/interfaces/AtomSubscription.md +2 -2
  35. package/api/@xmachines/play-atom/interfaces/BaseAtom.md +7 -7
  36. package/api/@xmachines/play-atom/interfaces/CreateAtom.md +9 -9
  37. package/api/@xmachines/play-atom/interfaces/Readable.md +7 -7
  38. package/api/@xmachines/play-atom/interfaces/ReadonlyAtom.md +7 -7
  39. package/api/@xmachines/play-atom/type-aliases/AnyAtom.md +1 -1
  40. package/api/@xmachines/play-atom/type-aliases/AsyncAtomState.md +5 -5
  41. package/api/@xmachines/play-atom/variables/createAsyncAtom.md +4 -4
  42. package/api/@xmachines/play-atom/variables/createAtom.md +1 -1
  43. package/api/@xmachines/play-atom/variables/createWritableAtom.md +4 -4
  44. package/api/@xmachines/play-dom/README.md +1 -1
  45. package/api/@xmachines/play-dom/classes/PlayRenderer.md +5 -5
  46. package/api/@xmachines/play-dom/functions/createPlayUI.md +2 -2
  47. package/api/@xmachines/play-dom/functions/createRenderer.md +4 -4
  48. package/api/@xmachines/play-dom/functions/defineRegistry.md +3 -3
  49. package/api/@xmachines/play-dom/interfaces/ComponentContext.md +4 -4
  50. package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +14 -13
  51. package/api/@xmachines/play-dom/interfaces/MountOptions.md +5 -5
  52. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +15 -15
  53. package/api/@xmachines/play-dom/type-aliases/ActionFn.md +4 -4
  54. package/api/@xmachines/play-dom/type-aliases/Actions.md +3 -3
  55. package/api/@xmachines/play-dom/type-aliases/BaseComponentProps.md +4 -4
  56. package/api/@xmachines/play-dom/type-aliases/CatalogHasActions.md +3 -3
  57. package/api/@xmachines/play-dom/type-aliases/ComponentFn.md +4 -4
  58. package/api/@xmachines/play-dom/type-aliases/ComponentRegistry.md +3 -3
  59. package/api/@xmachines/play-dom/type-aliases/DefineRegistryOptions.md +7 -7
  60. package/api/@xmachines/play-dom/type-aliases/MountFn.md +1 -1
  61. package/api/@xmachines/play-dom-router/README.md +1 -1
  62. package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +7 -7
  63. package/api/@xmachines/play-dom-router/classes/RouteMap.md +5 -5
  64. package/api/@xmachines/play-dom-router/functions/connectRouter.md +1 -1
  65. package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +1 -1
  66. package/api/@xmachines/play-dom-router/functions/createRouter.md +1 -1
  67. package/api/@xmachines/play-dom-router/interfaces/BasePathOptions.md +5 -5
  68. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +16 -16
  69. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +16 -16
  70. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +10 -10
  71. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +9 -9
  72. package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +6 -6
  73. package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +3 -3
  74. package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +6 -6
  75. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +5 -5
  76. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +3 -3
  77. package/api/@xmachines/play-dom-router/interfaces/RouterConnection.md +8 -8
  78. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +6 -6
  79. package/api/@xmachines/play-pattern/README.md +1 -1
  80. package/api/@xmachines/play-pattern/functions/buildPath.md +2 -2
  81. package/api/@xmachines/play-pattern/functions/createLruCache.md +7 -7
  82. package/api/@xmachines/play-pattern/functions/getIndexKey.md +1 -1
  83. package/api/@xmachines/play-pattern/functions/isDotSegment.md +1 -1
  84. package/api/@xmachines/play-pattern/functions/parsePattern.md +1 -1
  85. package/api/@xmachines/play-pattern/interfaces/GroupPart.md +6 -6
  86. package/api/@xmachines/play-pattern/interfaces/KeyValueCache.md +6 -6
  87. package/api/@xmachines/play-pattern/interfaces/LiteralPart.md +5 -5
  88. package/api/@xmachines/play-pattern/interfaces/ParamPart.md +9 -9
  89. package/api/@xmachines/play-pattern/interfaces/ParseOptions.md +4 -4
  90. package/api/@xmachines/play-pattern/interfaces/ParsedPattern.md +14 -14
  91. package/api/@xmachines/play-pattern/interfaces/PatternParam.md +6 -6
  92. package/api/@xmachines/play-pattern/type-aliases/PathBuildResult.md +1 -1
  93. package/api/@xmachines/play-pattern/type-aliases/PathParams.md +1 -1
  94. package/api/@xmachines/play-pattern/type-aliases/PatternModifier.md +1 -1
  95. package/api/@xmachines/play-pattern/type-aliases/PatternPart.md +1 -1
  96. package/api/@xmachines/play-react/README.md +1 -1
  97. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +36 -75
  98. package/api/@xmachines/play-react/functions/defineRegistry.md +3 -3
  99. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  100. package/api/@xmachines/play-react/functions/useAtomEffect.md +2 -2
  101. package/api/@xmachines/play-react/functions/useBoundProp.md +3 -3
  102. package/api/@xmachines/play-react/functions/usePlayView.md +1 -1
  103. package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +10 -10
  104. package/api/@xmachines/play-react/interfaces/ComponentContext.md +4 -4
  105. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +8 -8
  106. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +6 -6
  107. package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +15 -14
  108. package/api/@xmachines/play-react/interfaces/ViewContextValue.md +7 -7
  109. package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +1 -1
  110. package/api/@xmachines/play-react/type-aliases/ComponentFn.md +4 -4
  111. package/api/@xmachines/play-react/variables/ActorProvider.md +1 -1
  112. package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
  113. package/api/@xmachines/play-react/variables/PlayUIProvider.md +1 -1
  114. package/api/@xmachines/play-react-router/README.md +2 -2
  115. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +7 -7
  116. package/api/@xmachines/play-react-router/classes/RouteMap.md +5 -5
  117. package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +5 -5
  118. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +1 -1
  119. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +9 -9
  120. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +14 -14
  121. package/api/@xmachines/play-react-router/interfaces/RoutableActor.md +6 -6
  122. package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +6 -6
  123. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +5 -5
  124. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +3 -3
  125. package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +6 -6
  126. package/api/@xmachines/play-react-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
  127. package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +4 -4
  128. package/api/@xmachines/play-router/README.md +1 -1
  129. package/api/@xmachines/play-router/errors/classes/DuplicateBridgeError.md +11 -11
  130. package/api/@xmachines/play-router/errors/classes/DuplicateRoutePathError.md +12 -12
  131. package/api/@xmachines/play-router/errors/classes/EmptyRoutePathError.md +12 -12
  132. package/api/@xmachines/play-router/errors/classes/InvalidBasePathError.md +12 -12
  133. package/api/@xmachines/play-router/errors/classes/InvalidRoutePatternError.md +12 -12
  134. package/api/@xmachines/play-router/errors/classes/InvalidStateIdError.md +12 -12
  135. package/api/@xmachines/play-router/errors/classes/MissingBasePathParamError.md +13 -13
  136. package/api/@xmachines/play-router/errors/classes/RouterSyncError.md +11 -11
  137. package/api/@xmachines/play-router/errors/classes/UnknownStateTypeError.md +13 -13
  138. package/api/@xmachines/play-router/index/classes/RouteMap.md +5 -5
  139. package/api/@xmachines/play-router/index/classes/RouterBridgeBase.md +14 -14
  140. package/api/@xmachines/play-router/index/functions/buildPlayRouteEvent.md +1 -1
  141. package/api/@xmachines/play-router/index/functions/buildRouteTree.md +4 -4
  142. package/api/@xmachines/play-router/index/functions/cleanFrameworkParams.md +1 -1
  143. package/api/@xmachines/play-router/index/functions/createLruCache.md +7 -7
  144. package/api/@xmachines/play-router/index/functions/createRouteMapFromTree.md +1 -1
  145. package/api/@xmachines/play-router/index/functions/createRouterConnection.md +1 -1
  146. package/api/@xmachines/play-router/index/functions/detectDuplicateRoutes.md +1 -1
  147. package/api/@xmachines/play-router/index/functions/extractQuery.md +1 -1
  148. package/api/@xmachines/play-router/index/functions/extractRouteParams.md +1 -1
  149. package/api/@xmachines/play-router/index/functions/findRouteById.md +1 -1
  150. package/api/@xmachines/play-router/index/functions/findRouteByPath.md +1 -1
  151. package/api/@xmachines/play-router/index/functions/isMountableBridge.md +1 -1
  152. package/api/@xmachines/play-router/index/functions/joinBasePath.md +1 -1
  153. package/api/@xmachines/play-router/index/functions/mountKey.md +1 -1
  154. package/api/@xmachines/play-router/index/functions/normalizeBasePath.md +1 -1
  155. package/api/@xmachines/play-router/index/functions/openProviderBridge.md +9 -9
  156. package/api/@xmachines/play-router/index/functions/parsePattern.md +1 -1
  157. package/api/@xmachines/play-router/index/functions/pickOwnParams.md +6 -6
  158. package/api/@xmachines/play-router/index/functions/repointProviderBridge.md +1 -1
  159. package/api/@xmachines/play-router/index/functions/resolveBasePath.md +1 -1
  160. package/api/@xmachines/play-router/index/functions/resolveFrameworkParams.md +1 -1
  161. package/api/@xmachines/play-router/index/functions/sanitizePathname.md +1 -1
  162. package/api/@xmachines/play-router/index/functions/splitLocation.md +1 -1
  163. package/api/@xmachines/play-router/index/functions/stripBasePath.md +1 -1
  164. package/api/@xmachines/play-router/index/functions/validateRouteFormat.md +1 -1
  165. package/api/@xmachines/play-router/index/functions/validateStateExists.md +1 -1
  166. package/api/@xmachines/play-router/index/interfaces/BasePathOptions.md +5 -5
  167. package/api/@xmachines/play-router/index/interfaces/BuildPlayRouteEventOptions.md +6 -6
  168. package/api/@xmachines/play-router/index/interfaces/CompileOptions.md +5 -5
  169. package/api/@xmachines/play-router/index/interfaces/FrameworkParamsSource.md +9 -9
  170. package/api/@xmachines/play-router/index/interfaces/KeyValueCache.md +6 -6
  171. package/api/@xmachines/play-router/index/interfaces/LocationLike.md +5 -5
  172. package/api/@xmachines/play-router/index/interfaces/MountableRouterBridge.md +8 -8
  173. package/api/@xmachines/play-router/index/interfaces/OpenProviderBridgeArgs.md +14 -14
  174. package/api/@xmachines/play-router/index/interfaces/ParseOptions.md +4 -4
  175. package/api/@xmachines/play-router/index/interfaces/ParsedPattern.md +14 -14
  176. package/api/@xmachines/play-router/index/interfaces/PlayRouteEvent.md +9 -9
  177. package/api/@xmachines/play-router/index/interfaces/PlayRouterProviderBaseProps.md +16 -16
  178. package/api/@xmachines/play-router/index/interfaces/ResolvedBasePath.md +5 -5
  179. package/api/@xmachines/play-router/index/interfaces/ResolvedRoutePath.md +5 -5
  180. package/api/@xmachines/play-router/index/interfaces/Routable.md +5 -5
  181. package/api/@xmachines/play-router/index/interfaces/RoutableActor.md +6 -6
  182. package/api/@xmachines/play-router/index/interfaces/RouteInfo.md +10 -10
  183. package/api/@xmachines/play-router/index/interfaces/RouteMapOptions.md +6 -6
  184. package/api/@xmachines/play-router/index/interfaces/RouteMapping.md +5 -5
  185. package/api/@xmachines/play-router/index/interfaces/RouteMatch.md +5 -5
  186. package/api/@xmachines/play-router/index/interfaces/RouteNode.md +12 -12
  187. package/api/@xmachines/play-router/index/interfaces/RouteObject.md +7 -7
  188. package/api/@xmachines/play-router/index/interfaces/RouteTree.md +10 -10
  189. package/api/@xmachines/play-router/index/interfaces/RouteWatcherHandle.md +3 -3
  190. package/api/@xmachines/play-router/index/interfaces/RouterBridge.md +3 -3
  191. package/api/@xmachines/play-router/index/interfaces/RouterBridgeOptions.md +9 -8
  192. package/api/@xmachines/play-router/index/interfaces/RouterConnection.md +8 -8
  193. package/api/@xmachines/play-router/index/interfaces/SplitLocation.md +7 -7
  194. package/api/@xmachines/play-router/index/interfaces/WindowLike.md +3 -3
  195. package/api/@xmachines/play-router/index/type-aliases/PlayRouterBridgeConstructor.md +6 -6
  196. package/api/@xmachines/play-router/index/type-aliases/RouteData.md +1 -1
  197. package/api/@xmachines/play-router/index/type-aliases/RouteDataResolver.md +1 -1
  198. package/api/@xmachines/play-router/index/type-aliases/RouteMetadata.md +1 -1
  199. package/api/@xmachines/play-router/index/type-aliases/URLPatternLike.md +3 -3
  200. package/api/@xmachines/play-router/index/variables/NO_BASE_PATH.md +1 -1
  201. package/api/@xmachines/play-router/index/variables/ROOT_NODE_ID.md +1 -1
  202. package/api/@xmachines/play-router/xstate/functions/createRouteMap.md +1 -1
  203. package/api/@xmachines/play-router/xstate/functions/extractMachineRoutes.md +1 -1
  204. package/api/@xmachines/play-router/xstate/functions/getNavigableRoutes.md +1 -1
  205. package/api/@xmachines/play-router/xstate/functions/getRoutableRoutes.md +1 -1
  206. package/api/@xmachines/play-router/xstate/functions/getRouteMappings.md +1 -1
  207. package/api/@xmachines/play-router/xstate/functions/getTransitionReachableRoutes.md +1 -1
  208. package/api/@xmachines/play-router/xstate/functions/isRouteReachable.md +1 -1
  209. package/api/@xmachines/play-router/xstate/functions/machineToGraph.md +1 -1
  210. package/api/@xmachines/play-router/xstate/functions/routeExists.md +1 -1
  211. package/api/@xmachines/play-router/xstate/interfaces/MachineEdgeData.md +5 -5
  212. package/api/@xmachines/play-router/xstate/interfaces/MachineNodeData.md +7 -7
  213. package/api/@xmachines/play-router/xstate/type-aliases/MachineGraph.md +1 -1
  214. package/api/@xmachines/play-solid/README.md +1 -1
  215. package/api/@xmachines/play-solid/functions/defineRegistry.md +3 -3
  216. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  217. package/api/@xmachines/play-solid/functions/useBoundProp.md +3 -3
  218. package/api/@xmachines/play-solid/functions/usePlayView.md +1 -1
  219. package/api/@xmachines/play-solid/functions/useStateBinding.md +3 -3
  220. package/api/@xmachines/play-solid/functions/useStateValue.md +3 -3
  221. package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +10 -10
  222. package/api/@xmachines/play-solid/interfaces/ComponentContext.md +4 -4
  223. package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +15 -14
  224. package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +7 -7
  225. package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +1 -1
  226. package/api/@xmachines/play-solid/type-aliases/ComponentFn.md +4 -4
  227. package/api/@xmachines/play-solid/variables/ActorContext.md +1 -1
  228. package/api/@xmachines/play-solid/variables/ActorProvider.md +1 -1
  229. package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
  230. package/api/@xmachines/play-solid/variables/PlayUIProvider.md +1 -1
  231. package/api/@xmachines/play-solid-router/README.md +2 -2
  232. package/api/@xmachines/play-solid-router/classes/RouteMap.md +5 -5
  233. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +7 -7
  234. package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +5 -5
  235. package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +9 -9
  236. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +9 -9
  237. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +14 -14
  238. package/api/@xmachines/play-solid-router/interfaces/RoutableActor.md +6 -6
  239. package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +6 -6
  240. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +5 -5
  241. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +3 -3
  242. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +6 -6
  243. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
  244. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
  245. package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +4 -4
  246. package/api/@xmachines/play-svelte/README.md +1 -1
  247. package/api/@xmachines/play-svelte/functions/defineRegistry.md +4 -4
  248. package/api/@xmachines/play-svelte/functions/getActorContext.md +1 -1
  249. package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +1 -1
  250. package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
  251. package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +10 -10
  252. package/api/@xmachines/play-svelte/interfaces/BaseComponentProps.md +13 -13
  253. package/api/@xmachines/play-svelte/interfaces/ComponentContext.md +14 -14
  254. package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +9 -9
  255. package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +13 -13
  256. package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +7 -7
  257. package/api/@xmachines/play-svelte/type-aliases/ActionFn.md +4 -4
  258. package/api/@xmachines/play-svelte/type-aliases/Actions.md +3 -3
  259. package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +1 -1
  260. package/api/@xmachines/play-svelte/type-aliases/ComponentFn.md +4 -4
  261. package/api/@xmachines/play-svelte-spa-router/README.md +1 -1
  262. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +5 -5
  263. package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +8 -8
  264. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +1 -1
  265. package/api/@xmachines/play-svelte-spa-router/interfaces/BasePathOptions.md +5 -5
  266. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +10 -10
  267. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +9 -9
  268. package/api/@xmachines/play-svelte-spa-router/interfaces/RoutableActor.md +6 -6
  269. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +6 -6
  270. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +5 -5
  271. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +3 -3
  272. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterConnection.md +8 -8
  273. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +3 -3
  274. package/api/@xmachines/play-sveltekit-router/README.md +1 -1
  275. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +5 -5
  276. package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +8 -8
  277. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +1 -1
  278. package/api/@xmachines/play-sveltekit-router/interfaces/BasePathOptions.md +5 -5
  279. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +11 -11
  280. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +5 -5
  281. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +9 -9
  282. package/api/@xmachines/play-sveltekit-router/interfaces/RoutableActor.md +6 -6
  283. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +6 -6
  284. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +5 -5
  285. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +3 -3
  286. package/api/@xmachines/play-sveltekit-router/interfaces/RouterConnection.md +8 -8
  287. package/api/@xmachines/play-sveltekit-router/interfaces/SvelteKitRouterBridgeOptions.md +8 -8
  288. package/api/@xmachines/play-sveltekit-router/type-aliases/ShallowNavigation.md +1 -1
  289. package/api/@xmachines/play-tanstack-react-router/README.md +1 -1
  290. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +5 -5
  291. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +7 -7
  292. package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +5 -5
  293. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +1 -1
  294. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +9 -9
  295. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +14 -14
  296. package/api/@xmachines/play-tanstack-react-router/interfaces/RoutableActor.md +6 -6
  297. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +6 -6
  298. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +5 -5
  299. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +3 -3
  300. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +6 -6
  301. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
  302. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  303. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +9 -9
  304. package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +4 -4
  305. package/api/@xmachines/play-tanstack-router/README.md +1 -1
  306. package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +7 -7
  307. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +3 -3
  308. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +9 -9
  309. package/api/@xmachines/play-tanstack-solid-router/README.md +1 -1
  310. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +5 -5
  311. package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +7 -7
  312. package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +5 -5
  313. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +9 -9
  314. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +14 -14
  315. package/api/@xmachines/play-tanstack-solid-router/interfaces/RoutableActor.md +6 -6
  316. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +6 -6
  317. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +5 -5
  318. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +3 -3
  319. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +6 -6
  320. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
  321. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  322. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +9 -9
  323. package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +4 -4
  324. package/api/@xmachines/play-url/README.md +1 -1
  325. package/api/@xmachines/play-url/errors/classes/InvalidBasePathError.md +12 -12
  326. package/api/@xmachines/play-url/errors/classes/InvalidRoutePatternError.md +12 -12
  327. package/api/@xmachines/play-url/errors/classes/MissingBasePathParamError.md +13 -13
  328. package/api/@xmachines/play-url/index/functions/buildPath.md +2 -2
  329. package/api/@xmachines/play-url/index/functions/cleanFrameworkParams.md +1 -1
  330. package/api/@xmachines/play-url/index/functions/createLruCache.md +7 -7
  331. package/api/@xmachines/play-url/index/functions/getCandidates.md +4 -4
  332. package/api/@xmachines/play-url/index/functions/getCompiledPattern.md +5 -5
  333. package/api/@xmachines/play-url/index/functions/getIndexKey.md +1 -1
  334. package/api/@xmachines/play-url/index/functions/holdsUnsubstitutedParam.md +1 -1
  335. package/api/@xmachines/play-url/index/functions/isDotSegment.md +1 -1
  336. package/api/@xmachines/play-url/index/functions/joinBasePath.md +1 -1
  337. package/api/@xmachines/play-url/index/functions/normalizeBasePath.md +1 -1
  338. package/api/@xmachines/play-url/index/functions/parsePattern.md +1 -1
  339. package/api/@xmachines/play-url/index/functions/pickOwnParams.md +6 -6
  340. package/api/@xmachines/play-url/index/functions/resolveBasePath.md +1 -1
  341. package/api/@xmachines/play-url/index/functions/resolveFrameworkParams.md +1 -1
  342. package/api/@xmachines/play-url/index/functions/sanitizePathname.md +1 -1
  343. package/api/@xmachines/play-url/index/functions/splitLocation.md +1 -1
  344. package/api/@xmachines/play-url/index/functions/stripBasePath.md +1 -1
  345. package/api/@xmachines/play-url/index/interfaces/BasePathOptions.md +5 -5
  346. package/api/@xmachines/play-url/index/interfaces/CompileOptions.md +5 -5
  347. package/api/@xmachines/play-url/index/interfaces/FrameworkParamsSource.md +9 -9
  348. package/api/@xmachines/play-url/index/interfaces/GroupPart.md +6 -6
  349. package/api/@xmachines/play-url/index/interfaces/KeyValueCache.md +6 -6
  350. package/api/@xmachines/play-url/index/interfaces/LiteralPart.md +5 -5
  351. package/api/@xmachines/play-url/index/interfaces/ParamPart.md +9 -9
  352. package/api/@xmachines/play-url/index/interfaces/ParseOptions.md +4 -4
  353. package/api/@xmachines/play-url/index/interfaces/ParsedPattern.md +14 -14
  354. package/api/@xmachines/play-url/index/interfaces/PatternParam.md +6 -6
  355. package/api/@xmachines/play-url/index/interfaces/ResolvedBasePath.md +5 -5
  356. package/api/@xmachines/play-url/index/interfaces/SplitLocation.md +7 -7
  357. package/api/@xmachines/play-url/index/type-aliases/PathBuildResult.md +1 -1
  358. package/api/@xmachines/play-url/index/type-aliases/PathParams.md +1 -1
  359. package/api/@xmachines/play-url/index/type-aliases/PatternModifier.md +1 -1
  360. package/api/@xmachines/play-url/index/type-aliases/PatternPart.md +1 -1
  361. package/api/@xmachines/play-url/index/type-aliases/URLPatternCtor.md +2 -2
  362. package/api/@xmachines/play-url/index/type-aliases/URLPatternLike.md +3 -3
  363. package/api/@xmachines/play-url/index/variables/NO_BASE_PATH.md +1 -1
  364. package/api/@xmachines/play-url/index/variables/URLPattern.md +1 -1
  365. package/api/@xmachines/play-view/README.md +1 -1
  366. package/api/@xmachines/play-view/errors/classes/InvalidViewOutletError.md +13 -13
  367. package/api/@xmachines/play-view/errors/classes/ReadOnlyContextError.md +12 -12
  368. package/api/@xmachines/play-view/errors/classes/ViewElementKeyCollisionError.md +13 -13
  369. package/api/@xmachines/play-view/index/functions/attachRenderErrorHandler.md +4 -4
  370. package/api/@xmachines/play-view/index/functions/bindStoreHandlers.md +4 -4
  371. package/api/@xmachines/play-view/index/functions/composePlayState.md +1 -1
  372. package/api/@xmachines/play-view/index/functions/composeViews.md +1 -1
  373. package/api/@xmachines/play-view/index/functions/createActorProxy.md +4 -4
  374. package/api/@xmachines/play-view/index/functions/createRenderErrorBinding.md +4 -4
  375. package/api/@xmachines/play-view/index/functions/createReportGuard.md +1 -1
  376. package/api/@xmachines/play-view/index/functions/createViewSession.md +4 -4
  377. package/api/@xmachines/play-view/index/functions/createViewStoreLifecycle.md +1 -1
  378. package/api/@xmachines/play-view/index/functions/forwardRenderError.md +1 -1
  379. package/api/@xmachines/play-view/index/functions/guardContextWrites.md +1 -1
  380. package/api/@xmachines/play-view/index/functions/refreshContextSubtree.md +1 -1
  381. package/api/@xmachines/play-view/index/functions/reuseComposedState.md +1 -1
  382. package/api/@xmachines/play-view/index/functions/toAtomState.md +1 -1
  383. package/api/@xmachines/play-view/index/functions/typedSpec.md +1 -1
  384. package/api/@xmachines/play-view/index/interfaces/BaseActorProviderProps.md +11 -11
  385. package/api/@xmachines/play-view/index/interfaces/BaseViewContextValue.md +10 -10
  386. package/api/@xmachines/play-view/index/interfaces/ComposedView.md +7 -7
  387. package/api/@xmachines/play-view/index/interfaces/HandlerFactory.md +7 -7
  388. package/api/@xmachines/play-view/index/interfaces/PlaySpec.md +8 -8
  389. package/api/@xmachines/play-view/index/interfaces/ReportGuard.md +5 -5
  390. package/api/@xmachines/play-view/index/interfaces/ReportGuardMessages.md +5 -5
  391. package/api/@xmachines/play-view/index/interfaces/ResolveViewStoreOptions.md +4 -4
  392. package/api/@xmachines/play-view/index/interfaces/ViewMeta.md +7 -7
  393. package/api/@xmachines/play-view/index/interfaces/ViewOutlet.md +5 -5
  394. package/api/@xmachines/play-view/index/interfaces/ViewSession.md +10 -10
  395. package/api/@xmachines/play-view/index/interfaces/ViewSessionOptions.md +5 -5
  396. package/api/@xmachines/play-view/index/interfaces/ViewSessionSnapshot.md +11 -11
  397. package/api/@xmachines/play-view/index/interfaces/ViewStoreLifecycle.md +4 -4
  398. package/api/@xmachines/play-view/index/interfaces/ViewStoreResolution.md +7 -7
  399. package/api/@xmachines/play-view/index/interfaces/ViewTree.md +6 -6
  400. package/api/@xmachines/play-view/index/interfaces/ViewTreeChild.md +5 -5
  401. package/api/@xmachines/play-view/index/interfaces/Viewable.md +4 -4
  402. package/api/@xmachines/play-view/index/type-aliases/StateUpdater.md +1 -1
  403. package/api/@xmachines/play-view/index/type-aliases/ViewActor.md +5 -5
  404. package/api/@xmachines/play-view/index/variables/CONTEXT_STATE_KEY.md +1 -1
  405. package/api/@xmachines/play-vue/README.md +1 -1
  406. package/api/@xmachines/play-vue/functions/defineRegistry.md +4 -4
  407. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  408. package/api/@xmachines/play-vue/functions/useBoundProp.md +3 -3
  409. package/api/@xmachines/play-vue/functions/usePlayView.md +1 -1
  410. package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +8 -8
  411. package/api/@xmachines/play-vue/interfaces/ComponentContext.md +4 -4
  412. package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +11 -11
  413. package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +7 -7
  414. package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +1 -1
  415. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +5 -5
  416. package/api/@xmachines/play-vue/type-aliases/ComponentFn.md +4 -4
  417. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +4 -4
  418. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +9 -9
  419. package/api/@xmachines/play-vue/variables/ActionProvider.md +35 -54
  420. package/api/@xmachines/play-vue/variables/PlayRenderer.md +4 -2
  421. package/api/@xmachines/play-vue/variables/Renderer.md +61 -78
  422. package/api/@xmachines/play-vue/variables/StateProvider.md +44 -63
  423. package/api/@xmachines/play-vue/variables/ValidationProvider.md +26 -45
  424. package/api/@xmachines/play-vue/variables/VisibilityProvider.md +17 -30
  425. package/api/@xmachines/play-vue-router/README.md +2 -2
  426. package/api/@xmachines/play-vue-router/errors/classes/VueRouterNavigationError.md +11 -11
  427. package/api/@xmachines/play-vue-router/errors/classes/VueRouterSendError.md +11 -11
  428. package/api/@xmachines/play-vue-router/index/classes/RouteMap.md +5 -5
  429. package/api/@xmachines/play-vue-router/index/classes/VueRouterBridge.md +7 -7
  430. package/api/@xmachines/play-vue-router/index/interfaces/PlayRouteEvent.md +9 -9
  431. package/api/@xmachines/play-vue-router/index/interfaces/RoutableActor.md +6 -6
  432. package/api/@xmachines/play-vue-router/index/interfaces/RouteMapOptions.md +6 -6
  433. package/api/@xmachines/play-vue-router/index/interfaces/RouteMapping.md +5 -5
  434. package/api/@xmachines/play-vue-router/index/interfaces/RouterBridge.md +3 -3
  435. package/api/@xmachines/play-vue-router/index/variables/PlayRouterProvider.md +90 -105
  436. package/api/@xmachines/play-xstate/README.md +1 -1
  437. package/api/@xmachines/play-xstate/errors/classes/ActorThrewNonErrorError.md +11 -11
  438. package/api/@xmachines/play-xstate/errors/classes/InvalidEventError.md +12 -12
  439. package/api/@xmachines/play-xstate/errors/classes/InvalidMachineError.md +11 -11
  440. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteHandlerError.md +13 -13
  441. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteMetadataError.md +13 -13
  442. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteParamError.md +14 -14
  443. package/api/@xmachines/play-xstate/errors/classes/MissingRouteParamError.md +13 -13
  444. package/api/@xmachines/play-xstate/errors/classes/MissingStateIdError.md +13 -13
  445. package/api/@xmachines/play-xstate/index/classes/PlayerActor.md +44 -68
  446. package/api/@xmachines/play-xstate/index/functions/compose.md +22 -22
  447. package/api/@xmachines/play-xstate/index/functions/definePlayer.md +9 -9
  448. package/api/@xmachines/play-xstate/index/interfaces/PlayerConfig.md +10 -10
  449. package/api/@xmachines/play-xstate/index/interfaces/PlayerFactoryResumeOptions.md +7 -7
  450. package/api/@xmachines/play-xstate/index/interfaces/PlayerOptions.md +12 -12
  451. package/api/@xmachines/play-xstate/index/type-aliases/Capability.md +5 -5
  452. package/api/@xmachines/play-xstate/index/type-aliases/PlayerConstructor.md +6 -6
  453. package/api/@xmachines/play-xstate/index/type-aliases/PlayerFactory.md +5 -5
  454. package/api/@xmachines/play-xstate/with-routing/functions/buildRouteUrl.md +2 -2
  455. package/api/@xmachines/play-xstate/with-routing/functions/deriveRoute.md +1 -1
  456. package/api/@xmachines/play-xstate/with-routing/functions/formatPlayRouteTransitions.md +4 -4
  457. package/api/@xmachines/play-xstate/with-routing/functions/isAbsoluteRoute.md +1 -1
  458. package/api/@xmachines/play-xstate/with-routing/functions/withRouting.md +4 -4
  459. package/api/@xmachines/play-xstate/with-routing/interfaces/RouteContext.md +7 -7
  460. package/api/@xmachines/play-xstate/with-routing/interfaces/RouteObject.md +7 -7
  461. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteData.md +1 -1
  462. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteDataResolver.md +1 -1
  463. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMachineConfig.md +7 -7
  464. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMetadata.md +1 -1
  465. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteStateNode.md +10 -10
  466. package/api/@xmachines/play-xstate/with-view/functions/withView.md +4 -4
  467. package/api/@xmachines/shared/README.md +3 -3
  468. package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +2 -2
  469. package/api/@xmachines/shared/vite-aliases/functions/xmBuildOutput.md +1 -1
  470. package/api/@xmachines/shared/vite-aliases/functions/xmBuildOutputFile.md +1 -1
  471. package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
  472. package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +4 -4
  473. package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
  474. package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +4 -4
  475. package/api/@xmachines/shared/vite-aliases/functions/xmTestTarget.md +2 -2
  476. package/api/@xmachines/shared/vite-aliases/type-aliases/XmTestTarget.md +1 -1
  477. package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +2 -2
  478. package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +1 -1
  479. package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +6 -6
  480. package/contributing/configuration.md +24 -50
  481. package/contributing/deployment.md +128 -158
  482. package/contributing/development.md +5 -5
  483. package/contributing/testing.md +5 -3
  484. package/examples/@xmachines/play-dom-gallery-demo/README.md +127 -0
  485. package/examples/@xmachines/play-dom-gallery-demo/functions/createConfirmDialog.md +33 -0
  486. package/examples/@xmachines/play-dom-gallery-demo/functions/createDebugPanel.md +31 -0
  487. package/examples/@xmachines/play-dom-gallery-demo/functions/initApp.md +22 -0
  488. package/examples/@xmachines/play-dom-gallery-demo/functions/initShell.md +33 -0
  489. package/examples/@xmachines/play-dom-gallery-demo/interfaces/GalleryMachineEntry.md +13 -0
  490. package/examples/@xmachines/play-dom-gallery-demo/interfaces/GalleryRuntime.md +14 -0
  491. package/examples/@xmachines/play-dom-gallery-demo/interfaces/ShellOptions.md +18 -0
  492. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/AuthCatalog.md +9 -0
  493. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/DonutCatalog.md +9 -0
  494. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/FetchCatalog.md +9 -0
  495. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/FlightCatalog.md +9 -0
  496. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/GalleryActor.md +20 -0
  497. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/GallerySlug.md +18 -0
  498. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/KitCatalog.md +16 -0
  499. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/StopwatchCatalog.md +9 -0
  500. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/TemperatureCatalog.md +9 -0
  501. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/TicTacToeCatalog.md +9 -0
  502. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/TodoMvcCatalog.md +9 -0
  503. package/examples/@xmachines/play-dom-gallery-demo/type-aliases/TriviaCatalog.md +9 -0
  504. package/examples/@xmachines/play-dom-gallery-demo/variables/Button.md +12 -0
  505. package/examples/@xmachines/play-dom-gallery-demo/variables/Field.md +30 -0
  506. package/examples/@xmachines/play-dom-gallery-demo/variables/Page.md +16 -0
  507. package/examples/@xmachines/play-dom-gallery-demo/variables/Panel.md +15 -0
  508. package/examples/@xmachines/play-dom-gallery-demo/variables/Text.md +15 -0
  509. package/examples/@xmachines/play-dom-gallery-demo/variables/authCatalog.md +126 -0
  510. package/examples/@xmachines/play-dom-gallery-demo/variables/demoComponents.md +21 -0
  511. package/examples/@xmachines/play-dom-gallery-demo/variables/donutCatalog.md +135 -0
  512. package/examples/@xmachines/play-dom-gallery-demo/variables/fetchCatalog.md +119 -0
  513. package/examples/@xmachines/play-dom-gallery-demo/variables/flightCatalog.md +146 -0
  514. package/examples/@xmachines/play-dom-gallery-demo/variables/galleryMachines.md +11 -0
  515. package/examples/@xmachines/play-dom-gallery-demo/variables/stopwatchCatalog.md +119 -0
  516. package/examples/@xmachines/play-dom-gallery-demo/variables/temperatureCatalog.md +122 -0
  517. package/examples/@xmachines/play-dom-gallery-demo/variables/ticTacToeCatalog.md +119 -0
  518. package/examples/@xmachines/{play-dom-demo/variables/authCatalog.md → play-dom-gallery-demo/variables/todoMvcCatalog.md} +36 -82
  519. package/examples/@xmachines/play-dom-gallery-demo/variables/triviaCatalog.md +129 -0
  520. package/examples/@xmachines/play-dom-router-demo/README.md +38 -31
  521. package/examples/@xmachines/play-dom-router-donut-demo/README.md +78 -0
  522. package/examples/@xmachines/play-dom-router-flight-demo/README.md +76 -0
  523. package/examples/@xmachines/play-dom-router-todomvc-demo/README.md +76 -0
  524. package/examples/@xmachines/play-dom-router-trivia-demo/README.md +76 -0
  525. package/examples/@xmachines/play-react-gallery-demo/README.md +123 -0
  526. package/examples/@xmachines/play-react-gallery-demo/functions/App.md +13 -0
  527. package/examples/@xmachines/play-react-gallery-demo/interfaces/GalleryMachineEntry.md +13 -0
  528. package/examples/@xmachines/play-react-gallery-demo/interfaces/GalleryRuntime.md +14 -0
  529. package/examples/@xmachines/play-react-gallery-demo/type-aliases/AuthCatalog.md +9 -0
  530. package/examples/@xmachines/play-react-gallery-demo/type-aliases/DonutCatalog.md +9 -0
  531. package/examples/@xmachines/play-react-gallery-demo/type-aliases/FetchCatalog.md +9 -0
  532. package/examples/@xmachines/play-react-gallery-demo/type-aliases/FlightCatalog.md +9 -0
  533. package/examples/@xmachines/play-react-gallery-demo/type-aliases/GalleryActor.md +20 -0
  534. package/examples/@xmachines/play-react-gallery-demo/type-aliases/GallerySlug.md +18 -0
  535. package/examples/@xmachines/play-react-gallery-demo/type-aliases/KitCatalog.md +16 -0
  536. package/examples/@xmachines/play-react-gallery-demo/type-aliases/StopwatchCatalog.md +9 -0
  537. package/examples/@xmachines/play-react-gallery-demo/type-aliases/TemperatureCatalog.md +9 -0
  538. package/examples/@xmachines/play-react-gallery-demo/type-aliases/TicTacToeCatalog.md +9 -0
  539. package/examples/@xmachines/play-react-gallery-demo/type-aliases/TodoMvcCatalog.md +9 -0
  540. package/examples/@xmachines/play-react-gallery-demo/type-aliases/TriviaCatalog.md +9 -0
  541. package/examples/@xmachines/play-react-gallery-demo/variables/Button.md +12 -0
  542. package/examples/@xmachines/play-react-gallery-demo/variables/DebugPanel.md +21 -0
  543. package/examples/@xmachines/play-react-gallery-demo/variables/Field.md +24 -0
  544. package/examples/@xmachines/play-react-gallery-demo/variables/Page.md +14 -0
  545. package/examples/@xmachines/play-react-gallery-demo/variables/Panel.md +15 -0
  546. package/examples/@xmachines/play-react-gallery-demo/variables/Shell.md +26 -0
  547. package/examples/@xmachines/play-react-gallery-demo/variables/Text.md +15 -0
  548. package/examples/@xmachines/play-react-gallery-demo/variables/authCatalog.md +126 -0
  549. package/examples/@xmachines/play-react-gallery-demo/variables/demoComponents.md +21 -0
  550. package/examples/@xmachines/play-react-gallery-demo/variables/donutCatalog.md +135 -0
  551. package/examples/@xmachines/play-react-gallery-demo/variables/fetchCatalog.md +119 -0
  552. package/examples/@xmachines/play-react-gallery-demo/variables/flightCatalog.md +146 -0
  553. package/examples/@xmachines/play-react-gallery-demo/variables/galleryMachines.md +11 -0
  554. package/examples/@xmachines/play-react-gallery-demo/variables/stopwatchCatalog.md +119 -0
  555. package/examples/@xmachines/play-react-gallery-demo/variables/temperatureCatalog.md +122 -0
  556. package/examples/@xmachines/play-react-gallery-demo/variables/ticTacToeCatalog.md +119 -0
  557. package/examples/@xmachines/{play-vue-demo/variables/authCatalog.md → play-react-gallery-demo/variables/todoMvcCatalog.md} +36 -82
  558. package/examples/@xmachines/play-react-gallery-demo/variables/triviaCatalog.md +129 -0
  559. package/examples/@xmachines/play-react-router-demo/README.md +17 -6
  560. package/examples/@xmachines/play-react-router-donut-demo/README.md +85 -0
  561. package/examples/@xmachines/play-react-router-flight-demo/README.md +74 -0
  562. package/examples/@xmachines/play-react-router-todomvc-demo/README.md +74 -0
  563. package/examples/@xmachines/play-react-router-trivia-demo/README.md +74 -0
  564. package/examples/@xmachines/play-solid-gallery-demo/README.md +123 -0
  565. package/examples/@xmachines/play-solid-gallery-demo/functions/App.md +13 -0
  566. package/examples/@xmachines/play-solid-gallery-demo/interfaces/GalleryMachineEntry.md +13 -0
  567. package/examples/@xmachines/play-solid-gallery-demo/interfaces/GalleryRuntime.md +14 -0
  568. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/AuthCatalog.md +9 -0
  569. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/DonutCatalog.md +9 -0
  570. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/FetchCatalog.md +9 -0
  571. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/FlightCatalog.md +9 -0
  572. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/GalleryActor.md +20 -0
  573. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/GallerySlug.md +18 -0
  574. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/KitCatalog.md +16 -0
  575. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/StopwatchCatalog.md +9 -0
  576. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/TemperatureCatalog.md +9 -0
  577. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/TicTacToeCatalog.md +9 -0
  578. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/TodoMvcCatalog.md +9 -0
  579. package/examples/@xmachines/play-solid-gallery-demo/type-aliases/TriviaCatalog.md +9 -0
  580. package/examples/@xmachines/play-solid-gallery-demo/variables/Button.md +11 -0
  581. package/examples/@xmachines/play-solid-gallery-demo/variables/DebugPanel.md +22 -0
  582. package/examples/@xmachines/play-solid-gallery-demo/variables/Field.md +11 -0
  583. package/examples/@xmachines/play-solid-gallery-demo/variables/Page.md +11 -0
  584. package/examples/@xmachines/play-solid-gallery-demo/variables/Panel.md +11 -0
  585. package/examples/@xmachines/play-solid-gallery-demo/variables/Shell.md +26 -0
  586. package/examples/@xmachines/play-solid-gallery-demo/variables/Text.md +11 -0
  587. package/examples/@xmachines/play-solid-gallery-demo/variables/authCatalog.md +126 -0
  588. package/examples/@xmachines/play-solid-gallery-demo/variables/demoComponents.md +21 -0
  589. package/examples/@xmachines/play-solid-gallery-demo/variables/donutCatalog.md +135 -0
  590. package/examples/@xmachines/play-solid-gallery-demo/variables/fetchCatalog.md +119 -0
  591. package/examples/@xmachines/play-solid-gallery-demo/variables/flightCatalog.md +146 -0
  592. package/examples/@xmachines/play-solid-gallery-demo/variables/galleryMachines.md +11 -0
  593. package/examples/@xmachines/play-solid-gallery-demo/variables/stopwatchCatalog.md +119 -0
  594. package/examples/@xmachines/play-solid-gallery-demo/variables/temperatureCatalog.md +122 -0
  595. package/examples/@xmachines/play-solid-gallery-demo/variables/ticTacToeCatalog.md +119 -0
  596. package/examples/@xmachines/{play-react-demo/variables/authCatalog.md → play-solid-gallery-demo/variables/todoMvcCatalog.md} +36 -82
  597. package/examples/@xmachines/play-solid-gallery-demo/variables/triviaCatalog.md +129 -0
  598. package/examples/@xmachines/play-solid-router-demo/README.md +8 -6
  599. package/examples/@xmachines/play-solid-router-donut-demo/README.md +86 -0
  600. package/examples/@xmachines/play-solid-router-flight-demo/README.md +75 -0
  601. package/examples/@xmachines/play-solid-router-todomvc-demo/README.md +75 -0
  602. package/examples/@xmachines/play-solid-router-trivia-demo/README.md +75 -0
  603. package/examples/@xmachines/play-svelte-gallery-demo/README.md +130 -0
  604. package/examples/@xmachines/play-svelte-gallery-demo/interfaces/GalleryMachineEntry.md +13 -0
  605. package/examples/@xmachines/play-svelte-gallery-demo/interfaces/GalleryRuntime.md +14 -0
  606. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/App.md +9 -0
  607. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/AuthCatalog.md +9 -0
  608. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/DonutCatalog.md +9 -0
  609. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/FetchCatalog.md +9 -0
  610. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/FlightCatalog.md +9 -0
  611. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/GalleryActor.md +20 -0
  612. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/GallerySlug.md +18 -0
  613. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/KitCatalog.md +16 -0
  614. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/StopwatchCatalog.md +9 -0
  615. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/TemperatureCatalog.md +9 -0
  616. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/TicTacToeCatalog.md +9 -0
  617. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/TodoMvcCatalog.md +9 -0
  618. package/examples/@xmachines/play-svelte-gallery-demo/type-aliases/TriviaCatalog.md +9 -0
  619. package/examples/@xmachines/play-svelte-gallery-demo/variables/App.md +9 -0
  620. package/examples/@xmachines/play-svelte-gallery-demo/variables/authCatalog.md +126 -0
  621. package/examples/@xmachines/play-svelte-gallery-demo/variables/demoComponents.md +21 -0
  622. package/examples/@xmachines/play-svelte-gallery-demo/variables/donutCatalog.md +135 -0
  623. package/examples/@xmachines/play-svelte-gallery-demo/variables/fetchCatalog.md +119 -0
  624. package/examples/@xmachines/play-svelte-gallery-demo/variables/flightCatalog.md +146 -0
  625. package/examples/@xmachines/play-svelte-gallery-demo/variables/galleryMachines.md +11 -0
  626. package/examples/@xmachines/play-svelte-gallery-demo/variables/stopwatchCatalog.md +119 -0
  627. package/examples/@xmachines/play-svelte-gallery-demo/variables/temperatureCatalog.md +122 -0
  628. package/examples/@xmachines/play-svelte-gallery-demo/variables/ticTacToeCatalog.md +119 -0
  629. package/examples/@xmachines/{play-solid-demo/variables/authCatalog.md → play-svelte-gallery-demo/variables/todoMvcCatalog.md} +36 -82
  630. package/examples/@xmachines/play-svelte-gallery-demo/variables/triviaCatalog.md +129 -0
  631. package/examples/@xmachines/play-svelte-spa-router-demo/README.md +8 -8
  632. package/examples/@xmachines/play-svelte-spa-router-donut-demo/README.md +77 -0
  633. package/examples/@xmachines/play-svelte-spa-router-flight-demo/README.md +76 -0
  634. package/examples/@xmachines/play-svelte-spa-router-todomvc-demo/README.md +76 -0
  635. package/examples/@xmachines/play-svelte-spa-router-trivia-demo/README.md +76 -0
  636. package/examples/@xmachines/play-sveltekit-router-demo/README.md +8 -8
  637. package/examples/@xmachines/play-sveltekit-router-donut-demo/README.md +103 -0
  638. package/examples/@xmachines/play-sveltekit-router-flight-demo/README.md +86 -0
  639. package/examples/@xmachines/play-sveltekit-router-todomvc-demo/README.md +86 -0
  640. package/examples/@xmachines/play-sveltekit-router-trivia-demo/README.md +86 -0
  641. package/examples/@xmachines/play-tanstack-react-router-demo/README.md +19 -14
  642. package/examples/@xmachines/play-tanstack-react-router-donut-demo/README.md +78 -0
  643. package/examples/@xmachines/play-tanstack-react-router-flight-demo/README.md +74 -0
  644. package/examples/@xmachines/play-tanstack-react-router-todomvc-demo/README.md +74 -0
  645. package/examples/@xmachines/play-tanstack-react-router-trivia-demo/README.md +74 -0
  646. package/examples/@xmachines/play-tanstack-solid-router-demo/README.md +19 -12
  647. package/examples/@xmachines/play-tanstack-solid-router-donut-demo/README.md +91 -0
  648. package/examples/@xmachines/play-tanstack-solid-router-flight-demo/README.md +80 -0
  649. package/examples/@xmachines/play-tanstack-solid-router-todomvc-demo/README.md +80 -0
  650. package/examples/@xmachines/play-tanstack-solid-router-trivia-demo/README.md +80 -0
  651. package/examples/@xmachines/play-vue-gallery-demo/README.md +120 -0
  652. package/examples/@xmachines/play-vue-gallery-demo/interfaces/GalleryMachineEntry.md +13 -0
  653. package/examples/@xmachines/play-vue-gallery-demo/interfaces/GalleryRuntime.md +14 -0
  654. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/AuthCatalog.md +9 -0
  655. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/DonutCatalog.md +9 -0
  656. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/FetchCatalog.md +9 -0
  657. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/FlightCatalog.md +9 -0
  658. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/GalleryActor.md +20 -0
  659. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/GallerySlug.md +18 -0
  660. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/KitCatalog.md +16 -0
  661. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/StopwatchCatalog.md +9 -0
  662. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/TemperatureCatalog.md +9 -0
  663. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/TicTacToeCatalog.md +9 -0
  664. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/TodoMvcCatalog.md +9 -0
  665. package/examples/@xmachines/play-vue-gallery-demo/type-aliases/TriviaCatalog.md +9 -0
  666. package/examples/@xmachines/play-vue-gallery-demo/variables/App.md +11 -0
  667. package/examples/@xmachines/play-vue-gallery-demo/variables/authCatalog.md +126 -0
  668. package/examples/@xmachines/play-vue-gallery-demo/variables/demoComponents.md +11 -0
  669. package/examples/@xmachines/play-vue-gallery-demo/variables/donutCatalog.md +135 -0
  670. package/examples/@xmachines/play-vue-gallery-demo/variables/fetchCatalog.md +119 -0
  671. package/examples/@xmachines/play-vue-gallery-demo/variables/flightCatalog.md +146 -0
  672. package/examples/@xmachines/play-vue-gallery-demo/variables/galleryMachines.md +11 -0
  673. package/examples/@xmachines/play-vue-gallery-demo/variables/stopwatchCatalog.md +119 -0
  674. package/examples/@xmachines/play-vue-gallery-demo/variables/temperatureCatalog.md +122 -0
  675. package/examples/@xmachines/play-vue-gallery-demo/variables/ticTacToeCatalog.md +119 -0
  676. package/examples/@xmachines/play-vue-gallery-demo/variables/todoMvcCatalog.md +151 -0
  677. package/examples/@xmachines/play-vue-gallery-demo/variables/triviaCatalog.md +129 -0
  678. package/examples/@xmachines/play-vue-router-demo/README.md +14 -8
  679. package/examples/@xmachines/play-vue-router-donut-demo/README.md +78 -0
  680. package/examples/@xmachines/play-vue-router-flight-demo/README.md +76 -0
  681. package/examples/@xmachines/play-vue-router-todomvc-demo/README.md +76 -0
  682. package/examples/@xmachines/play-vue-router-trivia-demo/README.md +76 -0
  683. package/examples/README.md +44 -6
  684. package/examples/routing-patterns.md +3 -1
  685. package/examples/xstate-example-ports.md +106 -0
  686. package/guides/getting-started.md +3 -1
  687. package/guides/inspector.md +3 -3
  688. package/package.json +6 -6
  689. package/examples/@xmachines/play-dom-demo/README.md +0 -162
  690. package/examples/@xmachines/play-dom-demo/functions/createAuthActionHandlers.md +0 -35
  691. package/examples/@xmachines/play-dom-demo/functions/createConfirmDialog.md +0 -27
  692. package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +0 -24
  693. package/examples/@xmachines/play-dom-demo/functions/initShell.md +0 -25
  694. package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +0 -9
  695. package/examples/@xmachines/play-dom-demo/variables/About.md +0 -12
  696. package/examples/@xmachines/play-dom-demo/variables/Button.md +0 -12
  697. package/examples/@xmachines/play-dom-demo/variables/Contact.md +0 -12
  698. package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +0 -13
  699. package/examples/@xmachines/play-dom-demo/variables/Field.md +0 -19
  700. package/examples/@xmachines/play-dom-demo/variables/Home.md +0 -13
  701. package/examples/@xmachines/play-dom-demo/variables/Login.md +0 -13
  702. package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +0 -16
  703. package/examples/@xmachines/play-dom-demo/variables/Navigation.md +0 -13
  704. package/examples/@xmachines/play-dom-demo/variables/Overview.md +0 -13
  705. package/examples/@xmachines/play-dom-demo/variables/Panel.md +0 -14
  706. package/examples/@xmachines/play-dom-demo/variables/Profile.md +0 -13
  707. package/examples/@xmachines/play-dom-demo/variables/Settings.md +0 -13
  708. package/examples/@xmachines/play-dom-demo/variables/Stats.md +0 -13
  709. package/examples/@xmachines/play-dom-demo/variables/demoComponents.md +0 -30
  710. package/examples/@xmachines/play-react-demo/README.md +0 -163
  711. package/examples/@xmachines/play-react-demo/functions/createAuthActionHandlers.md +0 -35
  712. package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +0 -9
  713. package/examples/@xmachines/play-react-demo/variables/About.md +0 -14
  714. package/examples/@xmachines/play-react-demo/variables/Button.md +0 -12
  715. package/examples/@xmachines/play-react-demo/variables/Contact.md +0 -14
  716. package/examples/@xmachines/play-react-demo/variables/Dashboard.md +0 -15
  717. package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +0 -16
  718. package/examples/@xmachines/play-react-demo/variables/Field.md +0 -18
  719. package/examples/@xmachines/play-react-demo/variables/Home.md +0 -14
  720. package/examples/@xmachines/play-react-demo/variables/Login.md +0 -16
  721. package/examples/@xmachines/play-react-demo/variables/NavBar.md +0 -16
  722. package/examples/@xmachines/play-react-demo/variables/NavBarView.md +0 -15
  723. package/examples/@xmachines/play-react-demo/variables/Navigation.md +0 -14
  724. package/examples/@xmachines/play-react-demo/variables/Overview.md +0 -14
  725. package/examples/@xmachines/play-react-demo/variables/Panel.md +0 -15
  726. package/examples/@xmachines/play-react-demo/variables/Profile.md +0 -14
  727. package/examples/@xmachines/play-react-demo/variables/Settings.md +0 -14
  728. package/examples/@xmachines/play-react-demo/variables/Shell.md +0 -19
  729. package/examples/@xmachines/play-react-demo/variables/Stats.md +0 -14
  730. package/examples/@xmachines/play-react-demo/variables/demoComponents.md +0 -30
  731. package/examples/@xmachines/play-solid-demo/README.md +0 -163
  732. package/examples/@xmachines/play-solid-demo/functions/createAuthActionHandlers.md +0 -35
  733. package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +0 -9
  734. package/examples/@xmachines/play-solid-demo/variables/About.md +0 -9
  735. package/examples/@xmachines/play-solid-demo/variables/Button.md +0 -11
  736. package/examples/@xmachines/play-solid-demo/variables/Contact.md +0 -9
  737. package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +0 -9
  738. package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +0 -17
  739. package/examples/@xmachines/play-solid-demo/variables/Field.md +0 -11
  740. package/examples/@xmachines/play-solid-demo/variables/Home.md +0 -9
  741. package/examples/@xmachines/play-solid-demo/variables/Login.md +0 -9
  742. package/examples/@xmachines/play-solid-demo/variables/NavBar.md +0 -11
  743. package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +0 -15
  744. package/examples/@xmachines/play-solid-demo/variables/Navigation.md +0 -9
  745. package/examples/@xmachines/play-solid-demo/variables/Overview.md +0 -9
  746. package/examples/@xmachines/play-solid-demo/variables/Panel.md +0 -11
  747. package/examples/@xmachines/play-solid-demo/variables/Profile.md +0 -9
  748. package/examples/@xmachines/play-solid-demo/variables/Settings.md +0 -9
  749. package/examples/@xmachines/play-solid-demo/variables/Shell.md +0 -18
  750. package/examples/@xmachines/play-solid-demo/variables/Stats.md +0 -9
  751. package/examples/@xmachines/play-solid-demo/variables/demoComponents.md +0 -30
  752. package/examples/@xmachines/play-svelte-demo/README.md +0 -137
  753. package/examples/@xmachines/play-svelte-demo/functions/createAuthActionHandlers.md +0 -35
  754. package/examples/@xmachines/play-svelte-demo/type-aliases/App.md +0 -9
  755. package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +0 -9
  756. package/examples/@xmachines/play-svelte-demo/variables/App.md +0 -9
  757. package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +0 -197
  758. package/examples/@xmachines/play-svelte-demo/variables/demoComponents.md +0 -30
  759. package/examples/@xmachines/play-vue-demo/README.md +0 -159
  760. package/examples/@xmachines/play-vue-demo/functions/createAuthActionHandlers.md +0 -35
  761. package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +0 -9
  762. package/examples/@xmachines/play-vue-demo/variables/App.md +0 -9
  763. package/examples/@xmachines/play-vue-demo/variables/demoComponents.md +0 -11
@@ -8,9 +8,10 @@ Pure TypeScript integration demo for [`@xmachines/play-dom-router`](../../../api
8
8
 
9
9
  ## What This Demonstrates
10
10
 
11
- - Shared auth machine reused without framework-specific business logic
11
+ - Shared auth machine (the login wall) reused without framework-specific business logic
12
+ - The renderer gallery reused wholesale for the catalog, the five-component kit, and the shell — this demo adds routing and nothing else
12
13
  - `connectRouter` + `createBrowserHistory` wiring actor ↔ browser History API
13
- - Shell-driven DOM rendering via `connectRenderer` with actor-authoritative navigation
14
+ - A PROTECTED deep link (`/dashboard`) bounced to `/login` by the machine's `always` guard, with the bridge rewriting the URL from actor state
14
15
  - Manual atom watcher lifecycle — the mechanism that framework adapters abstract
15
16
  - Non-browser invariant tests plus browser E2E coverage
16
17
  - Stately inspector attached at creation via `options.inspect` — the debug panel's **Show Inspector** button opens the live machine in its own window
@@ -30,12 +31,13 @@ Then open `http://localhost:3005`.
30
31
 
31
32
  Use this order to understand the implementation:
32
33
 
33
- 1. `src/main.ts` looks up the host element (throws if absent) and calls `initApp(app)` from `src/runtime.ts`. It tears nothing down at the end of the page, because the browser frees the page.
34
- 2. `src/runtime.ts` creates the page's inspector with `createDemoInspector()`, creates the actor from the shared machine via `definePlayer` with `options.inspect` wired to it, starts it, initializes router sync via `initRouter(actor)`, mounts the shared DOM shell via `initShell(actor, host, inspector)`, and returns one cleanup function.
35
- 3. `initRouter(actor)` from `src/router.ts` extracts route metadata, creates a browser history wrapper, instantiates a router, and calls `connectRouter` to wire bidirectional actor ↔ URL sync.
36
- 4. `initShell(actor, host, inspector)` is imported from [`@xmachines/play-dom-demo`](../play-dom-demo/README.md), so the router demo reuses the shared DOM shell — inspector button included — instead of duplicating the scaffold and renderer wiring.
37
- 5. Navigation buttons and links dispatch `play.route`, `auth.login`, and `auth.logout` events directly to the actor — no URL mutations from the shell.
38
- 6. Browser tests in `test/browser/` validate startup rendering and the full auth route flow.
34
+ 1. `src/main.ts` looks up the host element (throws if absent), calls `initApp(app)` from `src/runtime.ts`, and registers unload cleanup.
35
+ 2. `src/runtime.ts` is the pure wiring layer: the page's inspector (`createDemoInspector()`), the player factory (`definePlayer` with `options.inspect`), the `routeMap` built from the machine alone, and `createRegistryResult(actor)` pairing the gallery's `authCatalog` and `demoComponents` with `createAuthActionHandlers(actor)`.
36
+ 3. `src/App.ts` starts the actor, builds the registry, connects the router, and mounts the shell — in that order, because the bridge reads the entry URL on connect. It returns one cleanup function that tears down in reverse.
37
+ 4. `initRouter(actor)` from `src/router.ts` extracts route metadata, creates a browser history wrapper, instantiates a router, and calls `connectRouter` to wire bidirectional actor ↔ URL sync.
38
+ 5. `initShell(container, { actor, router, registryResult, inspector, title })` is imported from [`@xmachines/play-dom-gallery-demo`](../play-dom-gallery-demo/README.md), so the router demo reuses the gallery's shell — the debug panel's inspector button and the host `onConfirm` included — instead of duplicating the scaffold and renderer wiring.
39
+ 6. The views dispatch `route`, `login`, and `logout` catalog actions, which the shared handlers turn into `play.route`, `auth.login`, and `auth.logout` machine events — no URL mutations from the demo.
40
+ 7. Browser tests in `test/browser/` validate the protected deep link, login, logout, and the State-Driven Reset of an invalid URL.
39
41
 
40
42
  ```ts fragment
41
43
  // src/main.ts (shape)
@@ -50,38 +52,42 @@ initApp(app);
50
52
 
51
53
  ```ts fragment
52
54
  // src/router.ts (shape)
53
- export function initRouter(actor: RoutableActor) {
55
+ export function initRouter(actor: RoutableActor): RouterConnection {
54
56
  const routeTree = extractMachineRoutes(authMachine);
55
- const routeMap = createRouteMap(authMachine);
56
57
  const history = createBrowserHistory({ window });
57
58
  const router = createRouter({ routeTree, history });
58
59
  const disconnect = connectRouter({ actor, router, routeMap });
59
60
 
60
- return () => {
61
- disconnect();
62
- router.destroy();
61
+ return {
62
+ router,
63
+ disconnect: () => {
64
+ disconnect();
65
+ router.destroy();
66
+ },
63
67
  };
64
68
  }
65
69
  ```
66
70
 
67
71
  ```ts fragment
68
- // src/runtime.ts (shape)
69
- export function initApp(host: HTMLElement): () => void {
70
- const inspector = createDemoInspector();
71
- const createPlayer = definePlayer({
72
- machine: authMachine,
73
- options: { inspect: inspector.inspect },
74
- actor: compose(PlayerActor, withRouting, withView),
75
- });
72
+ // src/App.ts (shape)
73
+ export function initApp(container: HTMLElement): () => void {
76
74
  const actor = createPlayer();
77
75
  actor.start();
78
76
 
79
- const cleanupRouter = initRouter(actor);
80
- const cleanupShell = initShell(actor, host, inspector);
77
+ const registryResult = createRegistryResult(actor);
78
+ const { router, disconnect: disconnectRouter } = initRouter(actor);
79
+
80
+ const disconnectShell = initShell(container, {
81
+ actor,
82
+ router,
83
+ registryResult,
84
+ inspector,
85
+ title: "XMachines Play DOM Router — Auth",
86
+ });
81
87
 
82
88
  return () => {
83
- cleanupShell();
84
- cleanupRouter();
89
+ disconnectShell();
90
+ disconnectRouter();
85
91
  actor.stop();
86
92
  };
87
93
  }
@@ -89,18 +95,19 @@ export function initApp(host: HTMLElement): () => void {
89
95
 
90
96
  ## Key Files
91
97
 
92
- - `src/main.ts` - host lookup and app bootstrap
93
- - `src/runtime.ts` - actor startup, router initialization, and shared shell wiring
98
+ - `src/main.ts` - host lookup, app bootstrap, and unload cleanup
99
+ - `src/runtime.ts` - inspector, player factory, route map, and registry wiring (no DOM, no `window`)
100
+ - `src/App.ts` - startup order (actor → registry → router → shell) and the single cleanup function
94
101
  - `src/router.ts` - `createBrowserHistory`, `createRouter`, and `connectRouter` wiring
95
- - [`@xmachines/play-dom-demo`](../play-dom-demo/README.md) - shared DOM shell, NavBar, DebugPanel (including the **Show Inspector** button), and renderer wiring reused by this router demo
102
+ - [`@xmachines/play-dom-gallery-demo`](../play-dom-gallery-demo/README.md) - the built `authCatalog`, the five-component kit, and the shell (DebugPanel with the **Show Inspector** button, plus the host `onConfirm`) reused by this router demo
96
103
  - `test/library-pattern.test.ts` - architecture boundary and invariant assertions
97
- - `test/browser/shared-demo.browser.test.ts` - startup rendering and full auth route browser flow
104
+ - `test/browser/shared-demo.browser.test.ts` - the shared auth router browser suite (protected deep link, login, logout, State-Driven Reset)
98
105
 
99
106
  ## State Machine & Architecture Details
100
107
 
101
108
  The demo utilizes XMachines architectural invariants at the lowest level:
102
109
 
103
- 1. **Actor Authority:** Intercepting browser `popstate` events or navigation button clicks dispatches a `play.route` event to the actor. The actor processes the request against the current state, ensuring any auth logic is correctly applied.
110
+ 1. **Actor Authority:** Intercepting browser `popstate` events or navigation button clicks dispatches a `play.route` event to the actor. The actor processes the request against the current state, so the login wall (`dashboard`'s `always` guard) applies to a deep link exactly as it does to an in-view button.
104
111
  2. **Passive Infrastructure:** The router simply updates `window.history` and the DOM solely renders HTML based on what `actor.currentView` yields. Neither holds business state.
105
112
  3. **Atom-Only Reactivity:** The integration registers `watchAtom` observers that trigger DOM reconciliation, illustrating the underlying mechanism that framework adapters abstract.
106
113
 
@@ -133,6 +140,6 @@ These commands are defined in `package.json`:
133
140
  ## Learn More
134
141
 
135
142
  - [Play DOM Router](../../../api/@xmachines/play-dom-router/README.md)
136
- - [Play DOM](../play-dom-demo/README.md)
143
+ - [Play DOM renderer gallery](../play-dom-gallery-demo/README.md)
137
144
  - [Play Router](../../../api/@xmachines/play-router/README.md)
138
145
  - [Inspecting a Running Actor](../../../guides/inspector.md)
@@ -0,0 +1,78 @@
1
+ [Examples](../../README.md) / @xmachines/play-dom-router-donut-demo
2
+
3
+ # @xmachines/play-dom-router-donut-demo
4
+
5
+ Vanilla DOM Router integration demo of the shared **donut wizard** machine — actor-authoritative routing over the browser History API, with snapshot persistence and no framework.
6
+
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
+
9
+ ## What This Demonstrates
10
+
11
+ - Shared donut machine reused without framework-specific business logic
12
+ - `createBrowserHistory` + `createRouter` + `connectRouter` wiring actor ↔ `window.history` — the wizard steps map to `/`, `/bake/mix`, `/bake/fry`, `/bake/decorate`, and `/done`
13
+ - Shell, catalog, and component kit imported from the workspace-only [`@xmachines/play-dom-gallery-demo`](../play-dom-gallery-demo/README.md) renderer gallery
14
+ - Snapshot persistence: `options.onTransition` saves after every processed event, and `createResumedPlayer()` restores through the player factory's resume options — a reload resumes the wizard where the visitor left it
15
+ - Actor-authoritative navigation: the wizard's guard chain cascades a deep link back to the first unmet prerequisite, and the bridge rewrites the URL (State-Driven Reset)
16
+ - Stately inspector attached at creation via `options.inspect` — the debug panel's **Show Inspector** button opens the live machine in its own window
17
+
18
+ ## Running the Demo
19
+
20
+ From the repository root:
21
+
22
+ ```bash
23
+ pnpm install
24
+ pnpm --filter @xmachines/play-dom-router-donut-demo run dev
25
+ ```
26
+
27
+ Then open `http://localhost:3062`.
28
+
29
+ ## Step-by-Step Code Flow
30
+
31
+ 1. `src/main.ts` looks up `#app` (throws if absent), calls `initApp(app)`, and registers unload cleanup.
32
+ 2. `src/App.ts` creates the actor through `createResumedPlayer()`, connects the router, mounts the shell with a "Reset saved donut" button in its `nav` slot, and returns one cleanup function. There is no component tree — `initApp(container) => cleanup` is the DOM family's top-level unit.
33
+ 3. `src/runtime.ts` creates the inspector, the `createPlayer` factory (`definePlayer` with `options.inspect` **and** `options.onTransition: (actor) => saveDonutSnapshot(actor)`), the resume helper, the reset helper, the pre-built `routeMap` (`createRouteMap(donutMachine)`), and `createRegistryResult`.
34
+ 4. `src/router.ts` extracts the route tree with `extractMachineRoutes`, wraps `window.history` with `createBrowserHistory`, pairs the two through `createRouter`, and installs the bridge with `connectRouter`.
35
+ 5. `initShell` (from [`@xmachines/play-dom-gallery-demo`](../play-dom-gallery-demo/README.md)) writes the demo chrome, connects `createPlayUI(registryResult)(actor, content)`, and appends the debug panel.
36
+ 6. Browser tests in `test/browser/` delegate to the shared donut router suite, which clears the persisted snapshot before mounting.
37
+
38
+ ## Key Files
39
+
40
+ - `src/main.ts` - host lookup, app bootstrap, and unload cleanup
41
+ - `src/App.ts` - actor lifecycle, router connection, the reset-snapshot button, and `initShell` composition
42
+ - `src/runtime.ts` - actor factory, snapshot resume/save/reset helpers, pre-built `routeMap`, and `createRegistryResult`
43
+ - `src/router.ts` - `createBrowserHistory`, `createRouter`, and `connectRouter` wiring
44
+ - `test/library-pattern.test.ts` - architecture boundary and invariant assertions
45
+ - `test/browser/shared-demo.browser.test.ts` - delegates to the shared donut router browser suite
46
+
47
+ ## Architecture Invariants
48
+
49
+ 1. **Actor Authority:** A `popstate` event or an in-view `route` action becomes a `play.route` event. The actor evaluates it against its guards and decides — the URL never decides.
50
+ 2. **Passive Infrastructure:** The bridge writes `window.history` and the DOM renders `actor.currentView`. Neither holds business state.
51
+ 3. **State-Driven Reset:** Entering `/done` with nothing prepared cascades done → decorate → fry → mix → recipe, and the bridge rewrites the URL back to `/`.
52
+ 4. **Persistence Is Not Authority:** The stored snapshot restores the actor at creation; from then on the actor decides. Dropping it (**Reset saved donut**) restarts the wizard from `/`.
53
+
54
+ ## Available Scripts
55
+
56
+ | Command | Description |
57
+ | ---------------------------------------------------------------------- | ---------------------------------------------- |
58
+ | `pnpm --filter @xmachines/play-dom-router-donut-demo run dev` | Start Vite dev server (http://localhost:3062/) |
59
+ | `pnpm --filter @xmachines/play-dom-router-donut-demo run build` | Build production bundle |
60
+ | `pnpm --filter @xmachines/play-dom-router-donut-demo run preview` | Preview built bundle |
61
+ | `pnpm --filter @xmachines/play-dom-router-donut-demo run test` | Run Vitest test suite |
62
+ | `pnpm --filter @xmachines/play-dom-router-donut-demo run test:browser` | Run browser-focused Vitest suite |
63
+
64
+ ## Verification
65
+
66
+ ```bash
67
+ pnpm --filter @xmachines/play-dom-router-donut-demo run test
68
+ pnpm --filter @xmachines/play-dom-router-donut-demo run test:browser
69
+ ```
70
+
71
+ Expected result: the library-pattern assertions pass, and the shared donut router browser suite completes.
72
+
73
+ ## Learn More
74
+
75
+ - [Play DOM Router](../../../api/@xmachines/play-dom-router/README.md)
76
+ - [DOM renderer gallery](../play-dom-gallery-demo/README.md)
77
+ - [Play Router](../../../api/@xmachines/play-router/README.md)
78
+ - [Inspecting a Running Actor](../../../guides/inspector.md)
@@ -0,0 +1,76 @@
1
+ [Examples](../../README.md) / @xmachines/play-dom-router-flight-demo
2
+
3
+ # @xmachines/play-dom-router-flight-demo
4
+
5
+ Vanilla DOM Router integration demo of the shared **flight booking** wizard — actor-authoritative routing over the browser History API, with no framework.
6
+
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
+
9
+ ## What This Demonstrates
10
+
11
+ - Shared flight machine reused without framework-specific business logic
12
+ - `createBrowserHistory` + `createRouter` + `connectRouter` wiring actor ↔ `window.history` — the wizard steps map to `/`, `/dates`, `/review`, `/submitting`, and `/booked`
13
+ - Shell, catalog, and component kit imported from the workspace-only [`@xmachines/play-dom-gallery-demo`](../play-dom-gallery-demo/README.md) renderer gallery
14
+ - Actor-authoritative navigation: `/dates` is honored as a direct entry, while `/booked` without a confirmation is overwritten back (State-Driven Reset)
15
+ - Stately inspector attached at creation via `options.inspect` — the debug panel's **Show Inspector** button opens the live machine in its own window
16
+
17
+ ## Running the Demo
18
+
19
+ From the repository root:
20
+
21
+ ```bash
22
+ pnpm install
23
+ pnpm --filter @xmachines/play-dom-router-flight-demo run dev
24
+ ```
25
+
26
+ Then open `http://localhost:3063`.
27
+
28
+ ## Step-by-Step Code Flow
29
+
30
+ 1. `src/main.ts` looks up `#app` (throws if absent), calls `initApp(app)`, and registers unload cleanup.
31
+ 2. `src/App.ts` starts the actor, connects the router, mounts the shell, and returns one cleanup function. There is no component tree — `initApp(container) => cleanup` is the DOM family's top-level unit.
32
+ 3. `src/runtime.ts` creates the inspector, the `createPlayer` factory (`definePlayer` with `options.inspect`), the pre-built `routeMap` (`createRouteMap(flightMachine)`), and `createRegistryResult` — the demo's DOM-free wiring layer.
33
+ 4. `src/router.ts` extracts the route tree with `extractMachineRoutes`, wraps `window.history` with `createBrowserHistory`, pairs the two through `createRouter`, and installs the bridge with `connectRouter`.
34
+ 5. `initShell` (from [`@xmachines/play-dom-gallery-demo`](../play-dom-gallery-demo/README.md)) writes the demo chrome, connects `createPlayUI(registryResult)(actor, content)`, and appends the debug panel.
35
+ 6. Browser tests in `test/browser/` delegate to the shared flight router suite.
36
+
37
+ ## Key Files
38
+
39
+ - `src/main.ts` - host lookup, app bootstrap, and unload cleanup
40
+ - `src/App.ts` - actor lifecycle, router connection, and `initShell` composition
41
+ - `src/runtime.ts` - actor factory (`createPlayer`), pre-built `routeMap`, and `createRegistryResult`
42
+ - `src/router.ts` - `createBrowserHistory`, `createRouter`, and `connectRouter` wiring
43
+ - `test/library-pattern.test.ts` - architecture boundary and invariant assertions
44
+ - `test/browser/shared-demo.browser.test.ts` - delegates to the shared flight router browser suite
45
+
46
+ ## Architecture Invariants
47
+
48
+ 1. **Actor Authority:** A `popstate` event or an in-view `route` action becomes a `play.route` event. The actor evaluates it against its guards and decides — the URL never decides.
49
+ 2. **Passive Infrastructure:** The bridge writes `window.history` and the DOM renders `actor.currentView`. Neither holds business state.
50
+ 3. **State-Driven Reset:** The wizard's always-transitions cascade back to the first unmet prerequisite, and the bridge rewrites the URL the actor refused.
51
+
52
+ ## Available Scripts
53
+
54
+ | Command | Description |
55
+ | ----------------------------------------------------------------------- | ---------------------------------------------- |
56
+ | `pnpm --filter @xmachines/play-dom-router-flight-demo run dev` | Start Vite dev server (http://localhost:3063/) |
57
+ | `pnpm --filter @xmachines/play-dom-router-flight-demo run build` | Build production bundle |
58
+ | `pnpm --filter @xmachines/play-dom-router-flight-demo run preview` | Preview built bundle |
59
+ | `pnpm --filter @xmachines/play-dom-router-flight-demo run test` | Run Vitest test suite |
60
+ | `pnpm --filter @xmachines/play-dom-router-flight-demo run test:browser` | Run browser-focused Vitest suite |
61
+
62
+ ## Verification
63
+
64
+ ```bash
65
+ pnpm --filter @xmachines/play-dom-router-flight-demo run test
66
+ pnpm --filter @xmachines/play-dom-router-flight-demo run test:browser
67
+ ```
68
+
69
+ Expected result: the library-pattern assertions pass, and the shared flight router browser suite completes.
70
+
71
+ ## Learn More
72
+
73
+ - [Play DOM Router](../../../api/@xmachines/play-dom-router/README.md)
74
+ - [DOM renderer gallery](../play-dom-gallery-demo/README.md)
75
+ - [Play Router](../../../api/@xmachines/play-router/README.md)
76
+ - [Inspecting a Running Actor](../../../guides/inspector.md)
@@ -0,0 +1,76 @@
1
+ [Examples](../../README.md) / @xmachines/play-dom-router-todomvc-demo
2
+
3
+ # @xmachines/play-dom-router-todomvc-demo
4
+
5
+ Vanilla DOM Router integration demo of the shared **TodoMVC** machine — actor-authoritative routing over the browser History API, with no framework.
6
+
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
+
9
+ ## What This Demonstrates
10
+
11
+ - Shared TodoMVC machine reused without framework-specific business logic
12
+ - `createBrowserHistory` + `createRouter` + `connectRouter` wiring actor ↔ `window.history` — the filter states map to `/`, `/active`, and `/completed`
13
+ - Shell, catalog, and component kit imported from the workspace-only [`@xmachines/play-dom-gallery-demo`](../play-dom-gallery-demo/README.md) renderer gallery
14
+ - Actor-authoritative navigation: a deep link is honored when valid and overwritten back when invalid (State-Driven Reset)
15
+ - Stately inspector attached at creation via `options.inspect` — the debug panel's **Show Inspector** button opens the live machine in its own window
16
+
17
+ ## Running the Demo
18
+
19
+ From the repository root:
20
+
21
+ ```bash
22
+ pnpm install
23
+ pnpm --filter @xmachines/play-dom-router-todomvc-demo run dev
24
+ ```
25
+
26
+ Then open `http://localhost:3060`.
27
+
28
+ ## Step-by-Step Code Flow
29
+
30
+ 1. `src/main.ts` looks up `#app` (throws if absent), calls `initApp(app)`, and registers unload cleanup.
31
+ 2. `src/App.ts` starts the actor, connects the router, mounts the shell, and returns one cleanup function. There is no component tree — `initApp(container) => cleanup` is the DOM family's top-level unit.
32
+ 3. `src/runtime.ts` creates the inspector, the `createPlayer` factory (`definePlayer` with `options.inspect`), the pre-built `routeMap` (`createRouteMap(todoMvcMachine)`), and `createRegistryResult` — the demo's DOM-free wiring layer.
33
+ 4. `src/router.ts` extracts the route tree with `extractMachineRoutes`, wraps `window.history` with `createBrowserHistory`, pairs the two through `createRouter`, and installs the bridge with `connectRouter`.
34
+ 5. `initShell` (from [`@xmachines/play-dom-gallery-demo`](../play-dom-gallery-demo/README.md)) writes the demo chrome, connects `createPlayUI(registryResult)(actor, content)`, and appends the debug panel.
35
+ 6. Browser tests in `test/browser/` delegate to the shared TodoMVC router suite.
36
+
37
+ ## Key Files
38
+
39
+ - `src/main.ts` - host lookup, app bootstrap, and unload cleanup
40
+ - `src/App.ts` - actor lifecycle, router connection, and `initShell` composition
41
+ - `src/runtime.ts` - actor factory (`createPlayer`), pre-built `routeMap`, and `createRegistryResult`
42
+ - `src/router.ts` - `createBrowserHistory`, `createRouter`, and `connectRouter` wiring
43
+ - `test/library-pattern.test.ts` - architecture boundary and invariant assertions
44
+ - `test/browser/shared-demo.browser.test.ts` - delegates to the shared TodoMVC router browser suite
45
+
46
+ ## Architecture Invariants
47
+
48
+ 1. **Actor Authority:** A `popstate` event or an in-view `route` action becomes a `play.route` event. The actor evaluates it against its guards and decides — the URL never decides.
49
+ 2. **Passive Infrastructure:** The bridge writes `window.history` and the DOM renders `actor.currentView`. Neither holds business state.
50
+ 3. **State-Driven Reset:** An external history change to an invalid route is overwritten back from actor state — the URL always reflects the machine.
51
+
52
+ ## Available Scripts
53
+
54
+ | Command | Description |
55
+ | ------------------------------------------------------------------------ | ---------------------------------------------- |
56
+ | `pnpm --filter @xmachines/play-dom-router-todomvc-demo run dev` | Start Vite dev server (http://localhost:3060/) |
57
+ | `pnpm --filter @xmachines/play-dom-router-todomvc-demo run build` | Build production bundle |
58
+ | `pnpm --filter @xmachines/play-dom-router-todomvc-demo run preview` | Preview built bundle |
59
+ | `pnpm --filter @xmachines/play-dom-router-todomvc-demo run test` | Run Vitest test suite |
60
+ | `pnpm --filter @xmachines/play-dom-router-todomvc-demo run test:browser` | Run browser-focused Vitest suite |
61
+
62
+ ## Verification
63
+
64
+ ```bash
65
+ pnpm --filter @xmachines/play-dom-router-todomvc-demo run test
66
+ pnpm --filter @xmachines/play-dom-router-todomvc-demo run test:browser
67
+ ```
68
+
69
+ Expected result: the library-pattern assertions pass, and the shared TodoMVC router browser suite completes.
70
+
71
+ ## Learn More
72
+
73
+ - [Play DOM Router](../../../api/@xmachines/play-dom-router/README.md)
74
+ - [DOM renderer gallery](../play-dom-gallery-demo/README.md)
75
+ - [Play Router](../../../api/@xmachines/play-router/README.md)
76
+ - [Inspecting a Running Actor](../../../guides/inspector.md)
@@ -0,0 +1,76 @@
1
+ [Examples](../../README.md) / @xmachines/play-dom-router-trivia-demo
2
+
3
+ # @xmachines/play-dom-router-trivia-demo
4
+
5
+ Vanilla DOM Router integration demo of the shared **trivia** machine — actor-authoritative routing over the browser History API, with no framework.
6
+
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
+
9
+ ## What This Demonstrates
10
+
11
+ - Shared trivia machine reused without framework-specific business logic
12
+ - `createBrowserHistory` + `createRouter` + `connectRouter` wiring actor ↔ `window.history` — the quiz states map to `/`, `/trivia`, `/win`, and `/lose`
13
+ - Shell, catalog, and component kit imported from the workspace-only [`@xmachines/play-dom-gallery-demo`](../play-dom-gallery-demo/README.md) renderer gallery
14
+ - Actor-authoritative navigation: only `/` is reachable from a cold start, and a deep link to `/trivia` while idle is overwritten back (State-Driven Reset)
15
+ - Stately inspector attached at creation via `options.inspect` — the debug panel's **Show Inspector** button opens the live machine in its own window
16
+
17
+ ## Running the Demo
18
+
19
+ From the repository root:
20
+
21
+ ```bash
22
+ pnpm install
23
+ pnpm --filter @xmachines/play-dom-router-trivia-demo run dev
24
+ ```
25
+
26
+ Then open `http://localhost:3061`.
27
+
28
+ ## Step-by-Step Code Flow
29
+
30
+ 1. `src/main.ts` looks up `#app` (throws if absent), calls `initApp(app)`, and registers unload cleanup.
31
+ 2. `src/App.ts` starts the actor, connects the router, mounts the shell, and returns one cleanup function. There is no component tree — `initApp(container) => cleanup` is the DOM family's top-level unit.
32
+ 3. `src/runtime.ts` creates the inspector, the `createPlayer` factory (`definePlayer` with `options.inspect`), the pre-built `routeMap` (`createRouteMap(triviaMachine)`), and `createRegistryResult` — the demo's DOM-free wiring layer.
33
+ 4. `src/router.ts` extracts the route tree with `extractMachineRoutes`, wraps `window.history` with `createBrowserHistory`, pairs the two through `createRouter`, and installs the bridge with `connectRouter`.
34
+ 5. `initShell` (from [`@xmachines/play-dom-gallery-demo`](../play-dom-gallery-demo/README.md)) writes the demo chrome, connects `createPlayUI(registryResult)(actor, content)`, and appends the debug panel.
35
+ 6. Browser tests in `test/browser/` delegate to the shared trivia router suite.
36
+
37
+ ## Key Files
38
+
39
+ - `src/main.ts` - host lookup, app bootstrap, and unload cleanup
40
+ - `src/App.ts` - actor lifecycle, router connection, and `initShell` composition
41
+ - `src/runtime.ts` - actor factory (`createPlayer`), pre-built `routeMap`, and `createRegistryResult`
42
+ - `src/router.ts` - `createBrowserHistory`, `createRouter`, and `connectRouter` wiring
43
+ - `test/library-pattern.test.ts` - architecture boundary and invariant assertions
44
+ - `test/browser/shared-demo.browser.test.ts` - delegates to the shared trivia router browser suite
45
+
46
+ ## Architecture Invariants
47
+
48
+ 1. **Actor Authority:** A `popstate` event or an in-view `route` action becomes a `play.route` event. The actor evaluates it against its guards and decides — the URL never decides.
49
+ 2. **Passive Infrastructure:** The bridge writes `window.history` and the DOM renders `actor.currentView`. Neither holds business state.
50
+ 3. **State-Driven Reset:** A jump to `/trivia` or `/win` whose status prerequisite does not hold bounces the actor home, and the bridge writes the URL back to `/`.
51
+
52
+ ## Available Scripts
53
+
54
+ | Command | Description |
55
+ | ----------------------------------------------------------------------- | ---------------------------------------------- |
56
+ | `pnpm --filter @xmachines/play-dom-router-trivia-demo run dev` | Start Vite dev server (http://localhost:3061/) |
57
+ | `pnpm --filter @xmachines/play-dom-router-trivia-demo run build` | Build production bundle |
58
+ | `pnpm --filter @xmachines/play-dom-router-trivia-demo run preview` | Preview built bundle |
59
+ | `pnpm --filter @xmachines/play-dom-router-trivia-demo run test` | Run Vitest test suite |
60
+ | `pnpm --filter @xmachines/play-dom-router-trivia-demo run test:browser` | Run browser-focused Vitest suite |
61
+
62
+ ## Verification
63
+
64
+ ```bash
65
+ pnpm --filter @xmachines/play-dom-router-trivia-demo run test
66
+ pnpm --filter @xmachines/play-dom-router-trivia-demo run test:browser
67
+ ```
68
+
69
+ Expected result: the library-pattern assertions pass, and the shared trivia router browser suite completes.
70
+
71
+ ## Learn More
72
+
73
+ - [Play DOM Router](../../../api/@xmachines/play-dom-router/README.md)
74
+ - [DOM renderer gallery](../play-dom-gallery-demo/README.md)
75
+ - [Play Router](../../../api/@xmachines/play-router/README.md)
76
+ - [Inspecting a Running Actor](../../../guides/inspector.md)
@@ -0,0 +1,123 @@
1
+ [Examples](../../README.md) / @xmachines/play-react-gallery-demo
2
+
3
+ # @xmachines/play-react-gallery-demo
4
+
5
+ React renderer gallery for [`@xmachines/play-react`](../../../api/@xmachines/play-react/README.md) — all nine shared machines behind one picker, actor + `PlayRenderer` without a router.
6
+
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
+
9
+ ## What This Demonstrates
10
+
11
+ - All nine shared machines (fetch, stopwatch, tic-tac-toe, temperature, TodoMVC, trivia, donut, flight, auth) reused without framework-specific business logic
12
+ - A home-screen picker: selecting a machine stops the previous actor, creates a FRESH actor for the chosen machine, and renders its views; "Back to gallery" returns to the picker
13
+ - The five-component demo kit (Page, Panel, Field, Button, Text) defined ONCE and registered with every machine's typed `defineRegistry` catalog — `Field` also renders the declarative `checks`/`formErrors` contract behind `[data-demo-error]`
14
+ - Routing machines run WITHOUT a router here — navigation happens via their in-view route-action buttons; the actor owns view switching
15
+ - One shared Stately inspector (`createDemoInspector()`) serving every selection — the debug panel's **Show Inspector** button opens the live machine in its own window
16
+
17
+ ## Running the Demo
18
+
19
+ From the repository root:
20
+
21
+ ```bash
22
+ pnpm install
23
+ pnpm --filter @xmachines/play-react-gallery-demo run dev
24
+ ```
25
+
26
+ Then open `http://localhost:3021`.
27
+
28
+ ## Step-by-Step Code Flow
29
+
30
+ 1. `src/main.tsx` mounts `<App />`.
31
+ 2. `src/App.tsx` renders the picker; `openMachine(entry)` stops any previous actor and calls `entry.createRuntime(inspector.inspect)`.
32
+ 3. `src/machines.ts` holds one `GalleryMachineEntry` per machine: `createRuntime` builds a fresh started actor via `definePlayer({ machine, options: { inspect } })()` and its `defineRegistry(catalog, { components: demoComponents, actions: create<Prefix>ActionHandlers(actor) })`.
33
+ 4. `src/catalogs.ts` builds all nine catalogs with `defineCatalog(schema, <prefix>CatalogDef)` — router demos import theirs from the barrel.
34
+ 5. `Shell` wraps `<PlayUIProvider actor registryResult><PlayRenderer /></PlayUIProvider>` in the standard demo chrome plus the `DebugPanel`; the gallery passes `title` and a `nav` slot carrying the "Back to gallery" button.
35
+ 6. Browser tests in `test/browser/` delegate one file per machine to that machine's shared renderer suite.
36
+
37
+ ## Key Files
38
+
39
+ - `src/main.tsx` - React entry point that mounts `<App />`
40
+ - `src/App.tsx` - picker, per-selection actor lifecycle, and `Shell` composition
41
+ - `src/machines.ts` - the machine registry: slug, label, and `createRuntime` per machine
42
+ - `src/catalogs.ts` - the nine built catalogs plus the `KitCatalog` typing alias
43
+ - `src/components/` - the five-component kit (Page, Panel, Field, Button, Text) plus `Shell` and `DebugPanel`
44
+ - `src/index.ts` - barrel exporting `App`, the kit, `demoComponents`, `Shell`, `DebugPanel`, and every built catalog for the router demos
45
+ - `test/library-pattern.test.ts` - architecture boundary and invariant assertions
46
+ - `test/browser/<slug>-demo.browser.test.tsx` - one file per machine, delegating to the shared suites
47
+ - `test/browser/gallery-picker.browser.test.tsx` - picker smoke test (open/close roundtrip)
48
+
49
+ ## Architecture Invariants
50
+
51
+ 1. **Actor Authority:** Views dispatch machine events (and `route` actions on routing machines) to the actor. The actor evaluates guards and transitions — React never decides which view to render.
52
+ 2. **Passive Infrastructure:** `PlayRenderer` observes the `actor.currentView` atom only. It holds no business state and makes no routing decisions.
53
+ 3. **Fresh Actor Per Selection:** Reopening a machine always starts from its initial state, matching the demo inspector's "one live machine" semantics.
54
+
55
+ ## Available Scripts
56
+
57
+ | Command | Description |
58
+ | ------------------------------------------------------------------- | ---------------------------------------------- |
59
+ | `pnpm --filter @xmachines/play-react-gallery-demo run dev` | Start Vite dev server (http://localhost:3021/) |
60
+ | `pnpm --filter @xmachines/play-react-gallery-demo run build` | Build production bundle |
61
+ | `pnpm --filter @xmachines/play-react-gallery-demo run preview` | Preview built bundle |
62
+ | `pnpm --filter @xmachines/play-react-gallery-demo run test` | Run Vitest test suite |
63
+ | `pnpm --filter @xmachines/play-react-gallery-demo run test:browser` | Run browser-focused Vitest suite |
64
+
65
+ ## Verification
66
+
67
+ ```bash
68
+ pnpm --filter @xmachines/play-react-gallery-demo run test
69
+ pnpm --filter @xmachines/play-react-gallery-demo run test:browser
70
+ ```
71
+
72
+ Expected result: library-pattern invariant tests pass and all nine machine suites plus the picker smoke test complete.
73
+
74
+ ## Learn More
75
+
76
+ - [play-react](../../../api/@xmachines/play-react/README.md)
77
+ - [React Router TodoMVC demo](../play-react-router-todomvc-demo/README.md)
78
+ - [Inspecting a Running Actor](../../../guides/inspector.md)
79
+
80
+ ## Interfaces
81
+
82
+ - [GalleryMachineEntry](interfaces/GalleryMachineEntry.md)
83
+ - [GalleryRuntime](interfaces/GalleryRuntime.md)
84
+
85
+ ## Type Aliases
86
+
87
+ - [AuthCatalog](type-aliases/AuthCatalog.md)
88
+ - [DonutCatalog](type-aliases/DonutCatalog.md)
89
+ - [FetchCatalog](type-aliases/FetchCatalog.md)
90
+ - [FlightCatalog](type-aliases/FlightCatalog.md)
91
+ - [GalleryActor](type-aliases/GalleryActor.md)
92
+ - [GallerySlug](type-aliases/GallerySlug.md)
93
+ - [KitCatalog](type-aliases/KitCatalog.md)
94
+ - [StopwatchCatalog](type-aliases/StopwatchCatalog.md)
95
+ - [TemperatureCatalog](type-aliases/TemperatureCatalog.md)
96
+ - [TicTacToeCatalog](type-aliases/TicTacToeCatalog.md)
97
+ - [TodoMvcCatalog](type-aliases/TodoMvcCatalog.md)
98
+ - [TriviaCatalog](type-aliases/TriviaCatalog.md)
99
+
100
+ ## Variables
101
+
102
+ - [authCatalog](variables/authCatalog.md)
103
+ - [Button](variables/Button.md)
104
+ - [DebugPanel](variables/DebugPanel.md)
105
+ - [demoComponents](variables/demoComponents.md)
106
+ - [donutCatalog](variables/donutCatalog.md)
107
+ - [fetchCatalog](variables/fetchCatalog.md)
108
+ - [Field](variables/Field.md)
109
+ - [flightCatalog](variables/flightCatalog.md)
110
+ - [galleryMachines](variables/galleryMachines.md)
111
+ - [Page](variables/Page.md)
112
+ - [Panel](variables/Panel.md)
113
+ - [Shell](variables/Shell.md)
114
+ - [stopwatchCatalog](variables/stopwatchCatalog.md)
115
+ - [temperatureCatalog](variables/temperatureCatalog.md)
116
+ - [Text](variables/Text.md)
117
+ - [ticTacToeCatalog](variables/ticTacToeCatalog.md)
118
+ - [todoMvcCatalog](variables/todoMvcCatalog.md)
119
+ - [triviaCatalog](variables/triviaCatalog.md)
120
+
121
+ ## Functions
122
+
123
+ - [App](functions/App.md)
@@ -0,0 +1,13 @@
1
+ [Examples](../../../README.md) / [@xmachines/play-react-gallery-demo](../README.md) / App
2
+
3
+ # Function: App()
4
+
5
+ ```ts
6
+ function App(): Element;
7
+ ```
8
+
9
+ Defined in: [packages/play-react/examples/gallery/src/App.tsx:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v7.1.0/packages/play-react/examples/gallery/src/App.tsx#L28)
10
+
11
+ ## Returns
12
+
13
+ `Element`
@@ -0,0 +1,13 @@
1
+ [Examples](../../../README.md) / [@xmachines/play-react-gallery-demo](../README.md) / GalleryMachineEntry
2
+
3
+ # Interface: GalleryMachineEntry
4
+
5
+ Defined in: [packages/play-react/examples/gallery/src/machines.ts:86](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v7.1.0/packages/play-react/examples/gallery/src/machines.ts#L86)
6
+
7
+ ## Properties
8
+
9
+ | Property | Type | Description | Defined in |
10
+ | --------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
11
+ | <a id="property-createruntime"></a> `createRuntime` | (`inspect`) => [`GalleryRuntime`](GalleryRuntime.md) | Create a fresh, STARTED actor and its registry for one selection. The caller owns the runtime and must stop the actor when done with it. | [packages/play-react/examples/gallery/src/machines.ts:94](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v7.1.0/packages/play-react/examples/gallery/src/machines.ts#L94) |
12
+ | <a id="property-label"></a> `label` | `string` | Picker button label and machine-view title. | [packages/play-react/examples/gallery/src/machines.ts:89](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v7.1.0/packages/play-react/examples/gallery/src/machines.ts#L89) |
13
+ | <a id="property-slug"></a> `slug` | [`GallerySlug`](../type-aliases/GallerySlug.md) | - | [packages/play-react/examples/gallery/src/machines.ts:87](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v7.1.0/packages/play-react/examples/gallery/src/machines.ts#L87) |
@@ -0,0 +1,14 @@
1
+ [Examples](../../../README.md) / [@xmachines/play-react-gallery-demo](../README.md) / GalleryRuntime
2
+
3
+ # Interface: GalleryRuntime
4
+
5
+ Defined in: [packages/play-react/examples/gallery/src/machines.ts:81](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v7.1.0/packages/play-react/examples/gallery/src/machines.ts#L81)
6
+
7
+ One live selection: the started actor plus its registry.
8
+
9
+ ## Properties
10
+
11
+ | Property | Type | Defined in |
12
+ | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
13
+ | <a id="property-actor"></a> `actor` | [`GalleryActor`](../type-aliases/GalleryActor.md) | [packages/play-react/examples/gallery/src/machines.ts:82](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v7.1.0/packages/play-react/examples/gallery/src/machines.ts#L82) |
14
+ | <a id="property-registryresult"></a> `registryResult` | [`DefineRegistryResult`](../../../../api/@xmachines/play-react/interfaces/DefineRegistryResult.md) | [packages/play-react/examples/gallery/src/machines.ts:83](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v7.1.0/packages/play-react/examples/gallery/src/machines.ts#L83) |
@@ -0,0 +1,9 @@
1
+ [Examples](../../../README.md) / [@xmachines/play-react-gallery-demo](../README.md) / AuthCatalog
2
+
3
+ # Type Alias: AuthCatalog
4
+
5
+ ```ts
6
+ type AuthCatalog = typeof authCatalog;
7
+ ```
8
+
9
+ Defined in: [packages/play-react/examples/gallery/src/catalogs.ts:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v7.1.0/packages/play-react/examples/gallery/src/catalogs.ts#L47)
@@ -0,0 +1,9 @@
1
+ [Examples](../../../README.md) / [@xmachines/play-react-gallery-demo](../README.md) / DonutCatalog
2
+
3
+ # Type Alias: DonutCatalog
4
+
5
+ ```ts
6
+ type DonutCatalog = typeof donutCatalog;
7
+ ```
8
+
9
+ Defined in: [packages/play-react/examples/gallery/src/catalogs.ts:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/docs-v7.1.0/packages/play-react/examples/gallery/src/catalogs.ts#L41)