@xmachines/docs 2.0.0-alpha.1 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (388) hide show
  1. package/README.md +16 -17
  2. package/api/@xmachines/play/README.md +58 -66
  3. package/api/@xmachines/play/classes/NonNullableError.md +14 -14
  4. package/api/@xmachines/play/classes/PlayError.md +32 -34
  5. package/api/@xmachines/play/functions/assertNonNullable.md +17 -17
  6. package/api/@xmachines/play/type-aliases/PlayEvent.md +28 -27
  7. package/api/@xmachines/play-actor/README.md +114 -50
  8. package/api/@xmachines/play-actor/classes/AbstractActor.md +45 -30
  9. package/api/@xmachines/play-actor/functions/attachRenderErrorHandler.md +19 -18
  10. package/api/@xmachines/play-actor/functions/composePlayState.md +27 -0
  11. package/api/@xmachines/play-actor/functions/createViewStoreLifecycle.md +21 -0
  12. package/api/@xmachines/play-actor/functions/guardContextWrites.md +43 -0
  13. package/api/@xmachines/play-actor/functions/refreshContextSubtree.md +28 -0
  14. package/api/@xmachines/play-actor/functions/reuseComposedState.md +42 -0
  15. package/api/@xmachines/play-actor/functions/shallowEqualExcept.md +29 -0
  16. package/api/@xmachines/play-actor/functions/toAtomState.md +16 -14
  17. package/api/@xmachines/play-actor/functions/typedSpec.md +25 -27
  18. package/api/@xmachines/play-actor/interfaces/BaseActorProviderProps.md +17 -15
  19. package/api/@xmachines/play-actor/interfaces/BaseViewContextValue.md +15 -14
  20. package/api/@xmachines/play-actor/interfaces/PlaySpec.md +13 -15
  21. package/api/@xmachines/play-actor/interfaces/ResolveViewStoreOptions.md +11 -0
  22. package/api/@xmachines/play-actor/interfaces/Routable.md +6 -6
  23. package/api/@xmachines/play-actor/interfaces/ViewStoreLifecycle.md +50 -0
  24. package/api/@xmachines/play-actor/interfaces/ViewStoreResolution.md +15 -0
  25. package/api/@xmachines/play-actor/interfaces/Viewable.md +9 -9
  26. package/api/@xmachines/play-actor/variables/CONTEXT_STATE_KEY.md +15 -0
  27. package/api/@xmachines/play-dom/README.md +123 -86
  28. package/api/@xmachines/play-dom/classes/PlayRenderer.md +34 -32
  29. package/api/@xmachines/play-dom/functions/createPlayUI.md +10 -10
  30. package/api/@xmachines/play-dom/functions/createRenderer.md +21 -17
  31. package/api/@xmachines/play-dom/functions/createValidationRegistry.md +22 -0
  32. package/api/@xmachines/play-dom/functions/defineRegistry.md +5 -5
  33. package/api/@xmachines/play-dom/interfaces/ComponentContext.md +9 -8
  34. package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +16 -16
  35. package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +2 -0
  36. package/api/@xmachines/play-dom/interfaces/FieldValidationState.md +16 -0
  37. package/api/@xmachines/play-dom/interfaces/MountOptions.md +9 -9
  38. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +17 -17
  39. package/api/@xmachines/play-dom/interfaces/RenderSpecOptions.md +2 -0
  40. package/api/@xmachines/play-dom/interfaces/ValidationRegistry.md +21 -0
  41. package/api/@xmachines/play-dom/type-aliases/BaseComponentProps.md +10 -0
  42. package/api/@xmachines/play-dom/type-aliases/MountFn.md +5 -5
  43. package/api/@xmachines/play-dom/variables/schema.md +35 -45
  44. package/api/@xmachines/play-dom-router/README.md +68 -51
  45. package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +116 -0
  46. package/api/@xmachines/play-dom-router/functions/connectRouter.md +4 -3
  47. package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +16 -14
  48. package/api/@xmachines/play-dom-router/functions/createRouteMap.md +12 -11
  49. package/api/@xmachines/play-dom-router/functions/createRouter.md +14 -14
  50. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +25 -26
  51. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +21 -20
  52. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +7 -7
  53. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +41 -35
  54. package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +18 -17
  55. package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +9 -9
  56. package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +39 -38
  57. package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +5 -5
  58. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +11 -10
  59. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +27 -24
  60. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +7 -7
  61. package/api/@xmachines/play-react/README.md +65 -55
  62. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +14 -13
  63. package/api/@xmachines/play-react/functions/defineRegistry.md +5 -5
  64. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  65. package/api/@xmachines/play-react/functions/useFieldValidation.md +31 -0
  66. package/api/@xmachines/play-react/functions/usePlayView.md +4 -4
  67. package/api/@xmachines/play-react/functions/useSignalEffect.md +39 -39
  68. package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +11 -11
  69. package/api/@xmachines/play-react/interfaces/ComponentContext.md +9 -8
  70. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +7 -7
  71. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +6 -6
  72. package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +14 -14
  73. package/api/@xmachines/play-react/interfaces/ViewContextValue.md +8 -8
  74. package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +2 -2
  75. package/api/@xmachines/play-react/type-aliases/PlayRendererProps.md +13 -0
  76. package/api/@xmachines/play-react/variables/ActorProvider.md +9 -8
  77. package/api/@xmachines/play-react/variables/PlayRenderer.md +5 -4
  78. package/api/@xmachines/play-react/variables/PlayUIProvider.md +6 -6
  79. package/api/@xmachines/play-react-router/README.md +38 -31
  80. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +22 -19
  81. package/api/@xmachines/play-react-router/classes/RouteMap.md +50 -48
  82. package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +16 -14
  83. package/api/@xmachines/play-react-router/functions/createRouteMap.md +12 -11
  84. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +18 -18
  85. package/api/@xmachines/play-react-router/interfaces/PlayActor.md +22 -20
  86. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +41 -35
  87. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderBaseProps.md +12 -12
  88. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  89. package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +5 -5
  90. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +11 -10
  91. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +27 -24
  92. package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +2 -2
  93. package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +7 -6
  94. package/api/@xmachines/play-router/README.md +99 -95
  95. package/api/@xmachines/play-router/classes/RouteMap.md +50 -48
  96. package/api/@xmachines/play-router/classes/RouterBridgeBase.md +29 -23
  97. package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +6 -5
  98. package/api/@xmachines/play-router/functions/buildRouteTree.md +16 -15
  99. package/api/@xmachines/play-router/functions/createRouteMap.md +12 -11
  100. package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +18 -18
  101. package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +18 -17
  102. package/api/@xmachines/play-router/functions/extractMachineRoutes.md +11 -10
  103. package/api/@xmachines/play-router/functions/extractQuery.md +3 -3
  104. package/api/@xmachines/play-router/functions/extractRouteParams.md +22 -19
  105. package/api/@xmachines/play-router/functions/findRouteById.md +10 -9
  106. package/api/@xmachines/play-router/functions/findRouteByPath.md +14 -12
  107. package/api/@xmachines/play-router/functions/getNavigableRoutes.md +9 -9
  108. package/api/@xmachines/play-router/functions/getRoutableRoutes.md +9 -9
  109. package/api/@xmachines/play-router/functions/getTransitionReachableRoutes.md +16 -15
  110. package/api/@xmachines/play-router/functions/isRouteReachable.md +12 -11
  111. package/api/@xmachines/play-router/functions/machineToGraph.md +1 -1
  112. package/api/@xmachines/play-router/functions/routeExists.md +8 -8
  113. package/api/@xmachines/play-router/functions/sanitizePathname.md +15 -13
  114. package/api/@xmachines/play-router/functions/validateRouteFormat.md +10 -10
  115. package/api/@xmachines/play-router/functions/validateStateExists.md +9 -9
  116. package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +6 -6
  117. package/api/@xmachines/play-router/interfaces/LocationLike.md +11 -11
  118. package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +7 -9
  119. package/api/@xmachines/play-router/interfaces/MachineNodeData.md +9 -9
  120. package/api/@xmachines/play-router/interfaces/PlayActor.md +22 -20
  121. package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +41 -35
  122. package/api/@xmachines/play-router/interfaces/ResolvedRoutePath.md +7 -7
  123. package/api/@xmachines/play-router/interfaces/RoutableActor.md +18 -17
  124. package/api/@xmachines/play-router/interfaces/RouteInfo.md +11 -11
  125. package/api/@xmachines/play-router/interfaces/RouteMapOptions.md +5 -5
  126. package/api/@xmachines/play-router/interfaces/RouteMapping.md +11 -10
  127. package/api/@xmachines/play-router/interfaces/RouteMatch.md +5 -5
  128. package/api/@xmachines/play-router/interfaces/RouteNode.md +13 -13
  129. package/api/@xmachines/play-router/interfaces/RouteObject.md +6 -6
  130. package/api/@xmachines/play-router/interfaces/RouteTree.md +11 -11
  131. package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +13 -13
  132. package/api/@xmachines/play-router/interfaces/RouterBridge.md +27 -24
  133. package/api/@xmachines/play-router/interfaces/WindowLike.md +10 -10
  134. package/api/@xmachines/play-router/type-aliases/BaseRouteMapping.md +13 -0
  135. package/api/@xmachines/play-router/type-aliases/MachineGraph.md +4 -3
  136. package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +2 -2
  137. package/api/@xmachines/play-signals/README.md +38 -36
  138. package/api/@xmachines/play-signals/functions/watchSignal.md +15 -15
  139. package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +6 -6
  140. package/api/@xmachines/play-signals/interfaces/SignalComputed.md +10 -10
  141. package/api/@xmachines/play-signals/interfaces/SignalOptions.md +6 -6
  142. package/api/@xmachines/play-signals/interfaces/SignalState.md +13 -13
  143. package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +18 -18
  144. package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +6 -5
  145. package/api/@xmachines/play-solid/README.md +46 -42
  146. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  147. package/api/@xmachines/play-solid/functions/usePlayView.md +3 -3
  148. package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +13 -13
  149. package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +14 -14
  150. package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +9 -9
  151. package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +2 -2
  152. package/api/@xmachines/play-solid/variables/ActorContext.md +5 -4
  153. package/api/@xmachines/play-solid/variables/ActorProvider.md +8 -7
  154. package/api/@xmachines/play-solid/variables/PlayRenderer.md +6 -4
  155. package/api/@xmachines/play-solid/variables/PlayUIProvider.md +7 -7
  156. package/api/@xmachines/play-solid-router/README.md +39 -34
  157. package/api/@xmachines/play-solid-router/classes/RouteMap.md +50 -48
  158. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +43 -34
  159. package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +15 -13
  160. package/api/@xmachines/play-solid-router/functions/createRouteMap.md +12 -11
  161. package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +45 -30
  162. package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +22 -20
  163. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +41 -35
  164. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderBaseProps.md +10 -10
  165. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +11 -11
  166. package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +5 -5
  167. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +11 -10
  168. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +27 -24
  169. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +5 -5
  170. package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +2 -2
  171. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +11 -11
  172. package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +9 -8
  173. package/api/@xmachines/play-svelte/README.md +60 -33
  174. package/api/@xmachines/play-svelte/functions/defineRegistry.md +9 -8
  175. package/api/@xmachines/play-svelte/functions/getActorContext.md +5 -4
  176. package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +3 -3
  177. package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
  178. package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +17 -15
  179. package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +9 -9
  180. package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +20 -18
  181. package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +12 -11
  182. package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +2 -2
  183. package/api/@xmachines/play-svelte-spa-router/README.md +43 -52
  184. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +50 -48
  185. package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +133 -0
  186. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +3 -3
  187. package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +12 -11
  188. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +7 -7
  189. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +41 -35
  190. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +5 -5
  191. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +11 -10
  192. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +27 -24
  193. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +10 -10
  194. package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +1 -1
  195. package/api/@xmachines/play-sveltekit-router/README.md +43 -39
  196. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +50 -48
  197. package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +132 -0
  198. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +3 -3
  199. package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +12 -11
  200. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +6 -6
  201. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +11 -11
  202. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +41 -35
  203. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +5 -5
  204. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +11 -10
  205. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +27 -24
  206. package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +1 -1
  207. package/api/@xmachines/play-tanstack-react-router/README.md +67 -49
  208. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +50 -48
  209. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +43 -38
  210. package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +16 -14
  211. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +12 -11
  212. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +18 -18
  213. package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +11 -10
  214. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayActor.md +22 -20
  215. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +41 -35
  216. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderBaseProps.md +12 -12
  217. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  218. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +5 -5
  219. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +11 -10
  220. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +16 -11
  221. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +27 -24
  222. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +2 -2
  223. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  224. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +15 -13
  225. package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +9 -8
  226. package/api/@xmachines/play-tanstack-router/README.md +38 -16
  227. package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +43 -38
  228. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +9 -9
  229. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +15 -13
  230. package/api/@xmachines/play-tanstack-solid-router/README.md +76 -50
  231. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +50 -48
  232. package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +38 -30
  233. package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +15 -13
  234. package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +12 -11
  235. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayActor.md +22 -20
  236. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +41 -35
  237. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderBaseProps.md +11 -11
  238. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +9 -9
  239. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +5 -5
  240. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +11 -10
  241. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +27 -24
  242. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +2 -2
  243. package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +2 -2
  244. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  245. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +15 -13
  246. package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +7 -7
  247. package/api/@xmachines/play-vue/README.md +39 -39
  248. package/api/@xmachines/play-vue/functions/defineRegistry.md +10 -9
  249. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  250. package/api/@xmachines/play-vue/functions/useFieldValidation.md +31 -0
  251. package/api/@xmachines/play-vue/functions/usePlayView.md +28 -0
  252. package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +10 -9
  253. package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +13 -12
  254. package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +10 -9
  255. package/api/@xmachines/play-vue/interfaces/VisibilityProviderProps.md +6 -2
  256. package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +2 -2
  257. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
  258. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
  259. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +4 -4
  260. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  261. package/api/@xmachines/play-vue/variables/getPlayViewContext.md +34 -0
  262. package/api/@xmachines/play-vue-router/README.md +66 -57
  263. package/api/@xmachines/play-vue-router/classes/RouteMap.md +50 -48
  264. package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +26 -19
  265. package/api/@xmachines/play-vue-router/functions/createRouteMap.md +12 -11
  266. package/api/@xmachines/play-vue-router/interfaces/PlayActor.md +22 -20
  267. package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +41 -35
  268. package/api/@xmachines/play-vue-router/interfaces/RouteMapOptions.md +5 -5
  269. package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +11 -10
  270. package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +27 -24
  271. package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +2 -2
  272. package/api/@xmachines/play-vue-router/type-aliases/VueRouteMap.md +13 -0
  273. package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +5 -5
  274. package/api/@xmachines/play-vue-router/variables/VueRouteMap.md +13 -0
  275. package/api/@xmachines/play-xstate/README.md +129 -138
  276. package/api/@xmachines/play-xstate/classes/PlayerActor.md +148 -114
  277. package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +19 -23
  278. package/api/@xmachines/play-xstate/functions/composeGuards.md +34 -33
  279. package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +27 -22
  280. package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +19 -14
  281. package/api/@xmachines/play-xstate/functions/definePlayer.md +19 -19
  282. package/api/@xmachines/play-xstate/functions/deriveRoute.md +26 -25
  283. package/api/@xmachines/play-xstate/functions/eventMatches.md +12 -7
  284. package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +17 -48
  285. package/api/@xmachines/play-xstate/functions/hasContext.md +12 -9
  286. package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +10 -10
  287. package/api/@xmachines/play-xstate/functions/negateGuard.md +26 -20
  288. package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +6 -6
  289. package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +7 -7
  290. package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +10 -11
  291. package/api/@xmachines/play-xstate/interfaces/RouteContext.md +15 -14
  292. package/api/@xmachines/play-xstate/interfaces/RouteObject.md +4 -4
  293. package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +9 -25
  294. package/api/@xmachines/play-xstate/type-aliases/Guard.md +13 -11
  295. package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +8 -5
  296. package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +11 -15
  297. package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +12 -19
  298. package/api/@xmachines/play-xstate/type-aliases/RouteMetadata.md +1 -1
  299. package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +15 -26
  300. package/api/@xmachines/shared/README.md +12 -14
  301. package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +1 -1
  302. package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
  303. package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +12 -7
  304. package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
  305. package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +9 -4
  306. package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
  307. package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +1 -1
  308. package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +6 -6
  309. package/contributing/architecture.md +27 -28
  310. package/contributing/configuration.md +10 -10
  311. package/contributing/deployment.md +51 -30
  312. package/contributing/development.md +90 -21
  313. package/contributing/testing.md +36 -14
  314. package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +1 -1
  315. package/examples/@xmachines/play-dom-demo/functions/initShell.md +1 -1
  316. package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +1 -1
  317. package/examples/@xmachines/play-dom-demo/variables/About.md +1 -1
  318. package/examples/@xmachines/play-dom-demo/variables/Contact.md +1 -1
  319. package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +1 -1
  320. package/examples/@xmachines/play-dom-demo/variables/Home.md +1 -1
  321. package/examples/@xmachines/play-dom-demo/variables/Login.md +1 -1
  322. package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +1 -1
  323. package/examples/@xmachines/play-dom-demo/variables/Navigation.md +1 -1
  324. package/examples/@xmachines/play-dom-demo/variables/Overview.md +1 -1
  325. package/examples/@xmachines/play-dom-demo/variables/Profile.md +1 -1
  326. package/examples/@xmachines/play-dom-demo/variables/Settings.md +1 -1
  327. package/examples/@xmachines/play-dom-demo/variables/Stats.md +1 -1
  328. package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +1 -1
  329. package/examples/@xmachines/play-react-demo/functions/App.md +1 -1
  330. package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +1 -1
  331. package/examples/@xmachines/play-react-demo/variables/About.md +1 -1
  332. package/examples/@xmachines/play-react-demo/variables/Contact.md +1 -1
  333. package/examples/@xmachines/play-react-demo/variables/Dashboard.md +1 -1
  334. package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +1 -1
  335. package/examples/@xmachines/play-react-demo/variables/Home.md +1 -1
  336. package/examples/@xmachines/play-react-demo/variables/Login.md +1 -1
  337. package/examples/@xmachines/play-react-demo/variables/NavBar.md +1 -1
  338. package/examples/@xmachines/play-react-demo/variables/NavBarView.md +1 -1
  339. package/examples/@xmachines/play-react-demo/variables/Navigation.md +1 -1
  340. package/examples/@xmachines/play-react-demo/variables/Overview.md +1 -1
  341. package/examples/@xmachines/play-react-demo/variables/Profile.md +1 -1
  342. package/examples/@xmachines/play-react-demo/variables/Settings.md +1 -1
  343. package/examples/@xmachines/play-react-demo/variables/Shell.md +1 -1
  344. package/examples/@xmachines/play-react-demo/variables/Stats.md +1 -1
  345. package/examples/@xmachines/play-react-demo/variables/authCatalog.md +1 -1
  346. package/examples/@xmachines/play-solid-demo/functions/App.md +1 -1
  347. package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +1 -1
  348. package/examples/@xmachines/play-solid-demo/variables/About.md +1 -1
  349. package/examples/@xmachines/play-solid-demo/variables/Contact.md +1 -1
  350. package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +1 -1
  351. package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +1 -1
  352. package/examples/@xmachines/play-solid-demo/variables/Home.md +1 -1
  353. package/examples/@xmachines/play-solid-demo/variables/Login.md +1 -1
  354. package/examples/@xmachines/play-solid-demo/variables/NavBar.md +1 -1
  355. package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +1 -1
  356. package/examples/@xmachines/play-solid-demo/variables/Navigation.md +1 -1
  357. package/examples/@xmachines/play-solid-demo/variables/Overview.md +1 -1
  358. package/examples/@xmachines/play-solid-demo/variables/Profile.md +1 -1
  359. package/examples/@xmachines/play-solid-demo/variables/Settings.md +1 -1
  360. package/examples/@xmachines/play-solid-demo/variables/Shell.md +1 -1
  361. package/examples/@xmachines/play-solid-demo/variables/Stats.md +1 -1
  362. package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +1 -1
  363. package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +1 -1
  364. package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +1 -1
  365. package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +1 -1
  366. package/examples/@xmachines/play-vue-demo/variables/App.md +1 -1
  367. package/examples/@xmachines/play-vue-demo/variables/authCatalog.md +1 -1
  368. package/examples/README.md +4 -1
  369. package/examples/basic-state-machine.md +24 -24
  370. package/examples/form-validation.md +110 -121
  371. package/examples/multi-router-integration.md +0 -2
  372. package/examples/routing-patterns.md +60 -94
  373. package/examples/traffic-light.md +57 -48
  374. package/guides/README.md +6 -2
  375. package/guides/actor-model.md +1 -1
  376. package/guides/getting-started.md +89 -90
  377. package/guides/inspector.md +197 -0
  378. package/guides/state-machines.md +55 -69
  379. package/package.json +10 -7
  380. package/rfc/play.md +15 -6
  381. package/api/@xmachines/play-vue/functions/getPlayViewContext.md +0 -28
  382. package/api/@xmachines/play-xstate/functions/createRoutedMachine.md +0 -87
  383. package/api/@xmachines/play-xstate/type-aliases/PlayRoutePayload.md +0 -30
  384. package/api/@xmachines/play-xstate/type-aliases/SetupLike.md +0 -33
  385. package/api/@xmachines/play-xstate/type-aliases/WithOptional.md +0 -31
  386. package/api/@xmachines/play-xstate/variables/emptyEventSchema.md +0 -37
  387. package/api/@xmachines/play-xstate/variables/playMetaSchema.md +0 -40
  388. package/api/@xmachines/play-xstate/variables/playRouteEventSchema.md +0 -9
@@ -1,5 +1,3 @@
1
- <!-- generated-by: gsd-doc-writer -->
2
-
3
1
  # Configuration
4
2
 
5
3
  This document describes every configuration file, environment variable, and per-package override used by the `xmachines-js` monorepo.
@@ -133,7 +131,6 @@ The root config extends the shared base (`@xmachines/shared/oxlint`) and adds wo
133
131
  export default defineConfig({
134
132
  extends: [sharedConfig],
135
133
  ignorePatterns: [
136
- ".planning",
137
134
  ".opencode",
138
135
  "node_modules",
139
136
  "dist",
@@ -185,7 +182,6 @@ export default defineConfig({
185
182
  ...sharedConfig,
186
183
  ignorePatterns: [
187
184
  ...(sharedConfig.ignorePatterns ?? []),
188
- ".planning",
189
185
  ".opencode",
190
186
  ".agents",
191
187
  ".githuman",
@@ -295,7 +291,7 @@ Provides two helpers used in all `vitest.config.ts` and `vite.config.ts` files:
295
291
  - **`xmAliases(import.meta.url)`** — returns a `Record<string, string>` mapping every `@xmachines/*` package to its TypeScript source entry. Enables tests and dev servers to run without a prior `pnpm run build`.
296
292
  - **`xmResolve(import.meta.url)`** — returns a full Vite `resolve` config with `xmAliases` plus `preserveSymlinks: true` and `conditions: ["source"]`.
297
293
  - **`xmCacheDir(import.meta.url, name)`** — returns a shared Vite cache path under `node_modules/.vite/<name>` to prevent redundant dep optimizer runs across projects.
298
- - **`xmOptimizeDeps(extra?)`** — returns a standard `optimizeDeps.include` list; pass framework-specific extras to pre-bundle them at startup.
294
+ - **`xmOptimizeDeps(include?)`** — returns an `optimizeDeps.include` list holding exactly the specifiers passed in. Nothing is pre-bundled by default, and every entry has to be a package the calling project declares: pnpm gives each package its own `node_modules`, so Vite cannot resolve an undeclared specifier — it warns on stderr and carries on, which reads as a failure in a passing job.
299
295
 
300
296
  ### Release — `release.config.mjs`
301
297
 
@@ -306,11 +302,15 @@ Defines the release branches and plugin chain used by the GitLab CI semantic-rel
306
302
 
307
303
  **Release branches:**
308
304
 
309
- | Branch | Channel | Pre-release |
310
- | -------- | --------- | ----------- |
311
- | `main` | (default) | No |
312
- | `pre/rc` | `pre/rc` | `rc` |
313
- | `beta` | `beta` | `true` |
305
+ | Branch | Channel | Pre-release |
306
+ | ------- | --------- | ----------- |
307
+ | `main` | (default) | No |
308
+ | `rc` | `rc` | `rc` |
309
+ | `beta` | `beta` | `true` |
310
+ | `alpha` | `alpha` | `alpha` |
311
+ | `pre` | `pre` | `pre` |
312
+
313
+ Only `main` is a protected branch today. That works because `GITLAB_TOKEN` — which the release needs, since `CI_JOB_TOKEN` can push neither the release commit nor the tag — is an _unprotected_ group variable and so reaches every one of these refs. If it is ever made protected, each of these branches has to be protected too, or the release fails in verify-conditions with `EGITNOPERMISSION` rather than at the registry.
314
314
 
315
315
  **Tag format:** `v${version}`
316
316
 
@@ -1,5 +1,3 @@
1
- <!-- generated-by: gsd-doc-writer -->
2
-
3
1
  # Deployment
4
2
 
5
3
  This document describes how `@xmachines/xmachines-js` packages are built, versioned, and published to npm. All releases are automated through [semantic-release](https://semantic-release.gitbook.io/) running inside a GitLab CI pipeline. No manual `npm publish` commands are required for normal releases.
@@ -10,11 +8,11 @@ This document describes how `@xmachines/xmachines-js` packages are built, versio
10
8
 
11
9
  All `@xmachines/*` packages are published to the **public npm registry** (`registry.npmjs.org`). Every package uses `"publishConfig": { "access": "public" }` so scoped packages are accessible without an npm org subscription. See the [Published Packages](#published-packages) table for the full list.
12
10
 
13
- | Target | Config File | Purpose |
14
- | --------------- | ---------------------------------------------------------------------- | ------------------------------------------------------ |
15
- | npm registry | `.releaserc.json` (per-package `@semantic-release/npm` plugin entries) | Publish all public packages |
16
- | GitLab Releases | `.releaserc.json` (`@semantic-release/gitlab` plugin) | Attach tarball artifacts to the GitLab release tag |
17
- | GitLab CI | `.gitlab-ci.yml` | Trigger builds, tests, and releases on push / MR / tag |
11
+ | Target | Config File | Purpose |
12
+ | --------------- | ------------------------------------------------------------------------- | ------------------------------------------------------ |
13
+ | npm registry | `release.config.mjs` (npm plugin entries derived from the workspace scan) | Publish all public packages |
14
+ | GitLab Releases | `release.config.mjs` (`@semantic-release/gitlab` plugin) | Attach tarball artifacts to the GitLab release tag |
15
+ | GitLab CI | `.gitlab-ci.yml` | Trigger builds, tests, and releases on push / MR / tag |
18
16
 
19
17
  The root `package.json` is marked `"private": true` and is **never published** to npm.
20
18
 
@@ -22,7 +20,7 @@ The root `package.json` is marked `"private": true` and is **never published** t
22
20
 
23
21
  ## Published Packages
24
22
 
25
- The following packages are published on every release (derived from `.releaserc.json`):
23
+ The following packages are published on every release (derived from the workspace scan in `release.config.mjs` — every non-private package that is not a demo):
26
24
 
27
25
  | Package | Directory |
28
26
  | ------------------------------------------------------------------------------------------------- | ------------------------------------- |
@@ -59,21 +57,23 @@ Each published package includes only the directories listed in its `files` field
59
57
 
60
58
  Pipeline runs are triggered by `.gitlab-ci.yml` under the following conditions:
61
59
 
62
- | Trigger | Pipeline runs |
63
- | --------------------------------------------- | --------------------------------------------- |
64
- | Push to `main` / `master` / `beta` / `pre/rc` | Full pipeline including release |
65
- | Merge request | Full pipeline (release job skipped or manual) |
66
- | Tag push (`$CI_COMMIT_TAG`) | Full pipeline |
60
+ | Trigger | Pipeline runs |
61
+ | ------------------------------------------------ | -------------------------------------------------- |
62
+ | Push to `main` / `rc` / `beta` / `alpha` / `pre` | Full pipeline; the release job waits to be started |
63
+ | Merge request | Full pipeline, no release job |
64
+ | Web / API / trigger / parent pipeline | Full pipeline |
65
+
66
+ No rule admits a tag pipeline, so pushing a tag runs nothing.
67
67
 
68
- The pipeline includes two reusable CI components:
68
+ The pipeline includes two reusable CI components, both pinned in `.gitlab-ci.yml` — which is the version to trust, rather than a number repeated here:
69
69
 
70
- - **`to-be-continuous/node/gitlab-ci-node@5.1.2`** — handles install, lint, build, test, and audit
71
- - **`to-be-continuous/semantic-release/gitlab-ci-semrel@4.1.0`** — runs `semantic-release` on eligible branches
70
+ - **`to-be-continuous/node/gitlab-ci-node`** — handles install, lint, build, test, and audit
71
+ - **`to-be-continuous/semantic-release/gitlab-ci-semrel`** — runs `semantic-release` on eligible branches
72
72
 
73
73
  The `node-build` job runs with:
74
74
 
75
75
  ```bash
76
- pnpm run build # tsc --build (TypeScript composite build)
76
+ pnpm run build # vite build (JavaScript) && tsc --build (declarations)
77
77
  pnpm run test:coverage # vitest run --coverage (with JUnit + Cobertura reporters)
78
78
  ```
79
79
 
@@ -116,7 +116,7 @@ node scripts/release-pack-smoke.mjs
116
116
 
117
117
  `scripts/release-pack-smoke.mjs`:
118
118
 
119
- 1. Reads `.releaserc.json` to find all `@semantic-release/npm` plugin entries where `npmPublish` is not `false`.
119
+ 1. Reads `release.config.mjs` to find all `@semantic-release/npm` plugin entries where `npmPublish` is not `false`.
120
120
  2. For each publishable package: runs `npm pack --json` in the package directory.
121
121
  3. Creates a temporary directory, runs `npm init -y`, and installs the local tarball with `--ignore-scripts`.
122
122
  4. Asserts the install succeeds — any missing files, broken exports, or pack-time errors surface here.
@@ -130,13 +130,17 @@ This smoke test runs **before** the actual publish so packaging problems are cau
130
130
 
131
131
  ### Branch Model
132
132
 
133
- Releases are driven by commit history on protected branches:
133
+ Releases are driven by commit history on the release branches:
134
+
135
+ | Branch | Channel | Tag format | Behaviour |
136
+ | ------- | ---------------- | ---------------- | ----------------------------- |
137
+ | `main` | stable (default) | `v1.2.3` | Full production release |
138
+ | `rc` | `rc` | `v1.2.3-rc.N` | Release candidate pre-release |
139
+ | `beta` | `beta` | `v1.2.3-beta.N` | Beta pre-release |
140
+ | `alpha` | `alpha` | `v1.2.3-alpha.N` | Alpha pre-release |
141
+ | `pre` | `pre` | `v1.2.3-pre.N` | Pre-release |
134
142
 
135
- | Branch | Channel | Tag format | Behaviour |
136
- | -------- | ---------------- | --------------- | ----------------------------- |
137
- | `main` | stable (default) | `v1.2.3` | Full production release |
138
- | `beta` | `beta` | `v1.2.3-beta.N` | Beta pre-release |
139
- | `pre/rc` | `pre/rc` | `v1.2.3-rc.N` | Release candidate pre-release |
143
+ The channel becomes the npm dist-tag verbatim, which is why none of them contains a slash: npm reads a slash in a version selector as a GitHub shorthand, so such a tag cannot be installed.
140
144
 
141
145
  Tag format is `v${version}` (e.g., `v1.0.0-beta.46`).
142
146
 
@@ -158,7 +162,7 @@ Step by step:
158
162
  1. **Enable corepack** — activates the pinned pnpm version.
159
163
  2. **Install** — `pnpm install --frozen-lockfile` installs the exact dependency versions recorded in the lockfile.
160
164
  3. **Sync versions** — `scripts/set-workspace-versions.mjs` sets the same release version across every `package.json` in the workspace (root + all packages), including cross-package workspace dependency ranges.
161
- 4. **Build** — runs `tsc --build` to produce compiled `dist/` output in all packages.
165
+ 4. **Build** — runs `vite build && tsc --build` to produce compiled `dist/` output — JavaScript then declarations — in all packages.
162
166
  5. **Generate API docs** — runs TypeDoc to regenerate `packages/docs/api/` at the release git revision.
163
167
  6. **Format docs** — runs `oxfmt` on the docs package to ensure consistent formatting.
164
168
 
@@ -169,10 +173,11 @@ Each publishable package is published in sequence via individual `@semantic-rele
169
173
  - `pkgRoot` — the package directory relative to the workspace root
170
174
  - `tarballDir` — `dist/releases/` where the packed `.tgz` is saved
171
175
 
172
- Example (from `.releaserc.json`):
176
+ Example (from `release.config.mjs`, where these entries are generated rather than
177
+ hand-written):
173
178
 
174
- ```json
175
- ["@semantic-release/npm", { "pkgRoot": "packages/play", "tarballDir": "dist/releases" }]
179
+ ```js
180
+ ["@semantic-release/npm", { pkgRoot: "packages/play", tarballDir: "dist/releases" }];
176
181
  ```
177
182
 
178
183
  ### Post-Release Phase
@@ -217,14 +222,14 @@ This means packages always depend on the exact same version of sibling packages
217
222
  | Variable | Source | Purpose |
218
223
  | --------------------------- | --------------------------------------- | ------------------------------------------------------------------------------- |
219
224
  | `NPM_ID_TOKEN` | GitLab CI OIDC (auto-generated per job) | Authenticates `semantic-release` to npm registry via OIDC token exchange |
220
- | `GL_TOKEN` / `GITLAB_TOKEN` | GitLab CI protected variable | Authenticates `@semantic-release/gitlab` for release creation and git push back |
225
+ | `GL_TOKEN` / `GITLAB_TOKEN` | GitLab CI group variable (unprotected) | Authenticates `@semantic-release/gitlab` for release creation and git push back |
221
226
  | `CI_JOB_TOKEN` | GitLab CI built-in | Used by the `to-be-continuous` components for GitLab API calls |
222
227
 
223
228
  **No static npm token is committed to the repository.** The `NPM_ID_TOKEN` is a short-lived OIDC token generated for each CI job with audience `npm:registry.npmjs.org`.
224
229
 
225
230
  To publish packages, a maintainer must:
226
231
 
227
- 1. Have push access to a release-eligible branch (`main`, `beta`, `pre/rc`).
232
+ 1. Have push access to a release-eligible branch (`main`, `rc`, `beta`, `alpha`, `pre`). Only `main` is protected; see the branch model above for what changes if `GITLAB_TOKEN` is ever made a protected variable.
228
233
  2. Ensure the GitLab project CI/CD variables include the required tokens.
229
234
 
230
235
  ---
@@ -267,6 +272,22 @@ There is no automated rollback mechanism. To revert a release:
267
272
 
268
273
  ---
269
274
 
275
+ ## Recovering a Failed Release
276
+
277
+ If the job dies partway (e.g. one package's trusted publisher isn't set up), some packages are published, the git tag is created, and the rest are missing. To finish the release:
278
+
279
+ 1. **Delete the release tag.** semantic-release creates the tag _before_ publishing, so a re-run while it exists is a no-op ([semantic-release#3178](https://github.com/semantic-release/semantic-release/issues/3178)):
280
+ ```bash
281
+ glab api --method DELETE "projects/xmachin-es%2Fxmachines-js/repository/tags/vX.Y.Z"
282
+ ```
283
+ 2. **Re-run the `semantic-release` job.**
284
+
285
+ The config detects a staged-but-untagged version (a recovery re-run) and automatically demotes any package already on npm at that version to pack-only — re-packing it for the release assets but **not** re-publishing it — so the re-run publishes only what's missing, with no manual input. `SEMREL_SKIP_STEPS` (a regex matched against release step IDs) remains available as a manual override to force-skip specific steps.
286
+
287
+ > First fix the underlying cause before re-running — e.g. configure the missing trusted publisher — otherwise the same packages fail again.
288
+
289
+ ---
290
+
270
291
  ## Local Release Dry-Run (Manual)
271
292
 
272
293
  To preview what semantic-release would do without publishing:
@@ -1,5 +1,3 @@
1
- <!-- generated-by: gsd-doc-writer -->
2
-
3
1
  # Development
4
2
 
5
3
  This guide covers everything you need to set up a local development environment, understand the build system, and contribute code to the XMachines JS monorepo.
@@ -9,8 +7,10 @@ This guide covers everything you need to set up a local development environment,
9
7
  - [Local Setup](#local-setup)
10
8
  - [Monorepo Structure](#monorepo-structure)
11
9
  - [Build Commands](#build-commands)
10
+ - [Updating Dependencies](#updating-dependencies)
12
11
  - [TypeScript Composite Build System](#typescript-composite-build-system)
13
12
  - [Code Style](#code-style)
13
+ - [Writing Style](#writing-style-asd-ste100)
14
14
  - [Branch Conventions](#branch-conventions)
15
15
  - [PR Process](#pr-process)
16
16
 
@@ -42,14 +42,16 @@ pnpm install --frozen-lockfile
42
42
  pnpm run build
43
43
  ```
44
44
 
45
- The root-level `tsc --build` command uses TypeScript project references to build all packages in the correct dependency order automatically. You never need to sequence builds manually.
45
+ The root build is two commands: `vite build` emits every package's JavaScript, then `tsc --build` emits the declarations through TypeScript project references, in dependency order. You never need to sequence builds manually.
46
46
 
47
- To build a single package (and its upstream dependencies):
47
+ To build a single package:
48
48
 
49
49
  ```bash
50
50
  pnpm --filter @xmachines/<package-name> run build
51
51
  ```
52
52
 
53
+ That runs the same two commands scoped to one package, so it produces the same `dist/` the root build would — JavaScript and declarations. It needs no other package's `dist/` to exist first: cross-package imports resolve to `src/` through the `source` export condition.
54
+
53
55
  ### Dev Container (Optional)
54
56
 
55
57
  A fully configured dev container is provided at `.devcontainer/`. It includes Docker-outside-of-Docker, Claude Code, and OpenCode.
@@ -82,7 +84,7 @@ packages/
82
84
  ├── play/ # Core protocol (PlayEvent, PlayError)
83
85
  ├── play-signals/ # TC39 Signals polyfill wrapper
84
86
  ├── play-actor/ # Abstract actor base (AbstractActor, Routable, Viewable)
85
- ├── play-xstate/ # XState v6 adapter (definePlayer, PlayerActor)
87
+ ├── play-xstate/ # XState v5 adapter (definePlayer, PlayerActor)
86
88
  ├── play-router/ # Route extraction and RouterBridgeBase
87
89
  ├── play-dom/ # Vanilla DOM renderer
88
90
  ├── play-dom-router/ # DOM router adapter
@@ -132,8 +134,7 @@ All commands are run from the **repository root** unless otherwise noted.
132
134
  | `pnpm run test:watch` | Re-run tests on file changes (interactive) |
133
135
  | `pnpm run test:browser` | Run Playwright browser tests |
134
136
  | `pnpm run test:coverage` | Run tests with V8 coverage reporting |
135
- | `pnpm run coverage:report` | Run tests and write an HTML coverage report |
136
- | `pnpm run coverage:summary` | Run tests and write a JSON summary report |
137
+ | `pnpm run test:browser:coverage` | Run browser tests with coverage reporting |
137
138
  | `pnpm run test:build` | Type-check test files without running them (`tsconfig.test.json`) |
138
139
  | `pnpm run lint` | Lint all packages with oxlint |
139
140
  | `pnpm run lint:fix` | Auto-fix lint issues |
@@ -143,6 +144,45 @@ All commands are run from the **repository root** unless otherwise noted.
143
144
 
144
145
  ---
145
146
 
147
+ ## Updating Dependencies
148
+
149
+ Every dependency is declared with the same range in every manifest that uses it, and a test fails if two disagree — `pnpm update` should move a package everywhere at once, not leave one package a minor behind.
150
+
151
+ ```bash
152
+ pnpm update -r # move within the declared ranges
153
+ pnpm update -r --latest # move the ranges themselves
154
+ ```
155
+
156
+ `pnpm update -r` alone will not move a `0.x` dependency past its current minor: a caret on a `0.x` version means `>=0.58.0 <0.59.0`, because minors are where a pre-1.0 package is allowed to break. `oxfmt` sat six minors behind that way while `pnpm outdated` reported it on every pipeline. Use `--latest` for those, and read what changed.
157
+
158
+ Two dependencies are pinned on purpose and must not be swept up:
159
+
160
+ | Dependency | Constraint | Why |
161
+ | ------------ | ------------------------------------ | --------------------------------------------------------------------------------------------------- |
162
+ | `playwright` | exact, equal to `PLAYWRIGHT_VERSION` | The browsers are baked into the CI image; the browser job fails on any mismatch |
163
+ | `typescript` | `^5.9.3 \|\| ^6.0.3` | TypeScript 7 ships no programmatic compiler API, which TypeDoc and `@vue/compiler-sfc` both require |
164
+
165
+ New versions also wait out pnpm's `minimumReleaseAge` (24 hours) before they can be installed at all.
166
+
167
+ ### Peer ranges are wider than what CI installs
168
+
169
+ `peerDependencies` and `devDependencies` say different things about the same package, so the one-range rule does not apply across them and the test exempts peers.
170
+
171
+ A peer range is a contract with the consumer: _bring your own React, anything in this range works_. It is deliberately wide, because the application owns that dependency — narrowing it forces consumers to upgrade in lockstep, or leaves two copies of a framework in their bundle. A dev range is what this repository installs to compile and test, and is concrete because CI needs one resolution.
172
+
173
+ So `react: ^18.0.0 || ^19.0.0` as a peer alongside `react: ^19.2.5` as a dev dependency is the correct pairing, not drift.
174
+
175
+ What that costs is worth stating plainly: **CI only ever exercises the dev version.** Two peers currently claim support across a major boundary that nothing here tests:
176
+
177
+ | Package | Peer range | Tested against |
178
+ | --------------------- | ---------------------- | -------------- |
179
+ | `react` / `react-dom` | `^18.0.0 \|\| ^19.0.0` | 19.x |
180
+ | `vue-router` | `^4.0.0 \|\| ^5.0.0` | 5.x |
181
+
182
+ React 18 and vue-router 4 are supported by intent — nothing known depends on 19-only or 5-only behaviour — but neither is installed by any job, so a regression there would surface as a consumer's bug report rather than a red pipeline. Narrowing either range to what is tested would be a breaking change for consumers and needs a major release; adding a floor-install job would close the gap instead. Until one of those happens, treat the lower major as untested.
183
+
184
+ ---
185
+
146
186
  ## TypeScript Composite Build System
147
187
 
148
188
  The monorepo uses **TypeScript project references** for correct build-order management. No manual sequencing or separate build scripts are needed.
@@ -151,7 +191,7 @@ The monorepo uses **TypeScript project references** for correct build-order mana
151
191
 
152
192
  - The **root `tsconfig.json`** coordinates all packages via a `references` array — it compiles nothing itself
153
193
  - Each package has `composite: true` in its own `tsconfig.json`, enabling incremental and referenced builds
154
- - Packages declare `references` to their `@xmachines/*` dependencies so `tsc --build` resolves order automatically
194
+ - The root `references` array is what orders the build; a package's own `tsc --build` needs no reference graph, because cross-package imports resolve to `src/` through the `source` export condition
155
195
  - With `declarationMap: true` in the base config, **Go to Definition** in your IDE navigates to `.ts` source files rather than compiled `.d.ts` files
156
196
 
157
197
  ### Build Layers
@@ -361,6 +401,30 @@ Use `unknown` with type guards instead of `any`. Prefix unused locals/parameters
361
401
 
362
402
  ---
363
403
 
404
+ ## Writing Style: ASD-STE100
405
+
406
+ Every text that a human reads follows **ASD-STE100 Simplified Technical English**: commit messages, merge request titles and descriptions, documentation under `packages/docs/`, README files, changelog entries, and code comments. The specification is at <https://asd-ste100.org/>.
407
+
408
+ Simplified Technical English keeps the documentation unambiguous for readers whose first language is not English, and it keeps the localized docs site consistent between versions.
409
+
410
+ The rules that apply most often:
411
+
412
+ - **One idea per sentence.** Keep instruction sentences to 20 words, descriptive sentences to 25.
413
+ - **Active voice, present tense, named actor.** Write "the bridge drops the event", not "the event is dropped".
414
+ - **Imperative for instructions.** Write "run `pnpm test`", not "you should run the tests". This also gives the Conventional Commits subject line its correct form.
415
+ - **One word, one meaning.** Choose one term for each concept and repeat it. Do not alternate between synonyms such as "delete", "remove", and "purge".
416
+ - **Simple words.** Write "use", not "utilize". Write "start", not "commence". Write "about", not "regarding".
417
+ - **Keep the articles.** Write "the actor emits the event", not "actor emits event". Do not use contractions: write "do not", not "don't".
418
+ - **No `-ing` clusters.** Write "the actor that emits the event", not "the emitting actor".
419
+ - **No idioms, metaphors, marketing words, jokes, or emojis.**
420
+ - **One topic for each paragraph, six sentences at most.** Put a warning or a caution before the step that it applies to.
421
+
422
+ The rules apply to prose. They do not apply to identifiers, code, test names, log output, or text that you quote from an external source.
423
+
424
+ The root `AGENTS.md` carries the same rules for AI coding agents.
425
+
426
+ ---
427
+
364
428
  ## Branch Conventions
365
429
 
366
430
  Use a `<type>/` prefix that matches the conventional commit type for the work being done:
@@ -375,13 +439,15 @@ refactor/route-map-extraction
375
439
 
376
440
  Release branches are managed by the project maintainers:
377
441
 
378
- | Branch | Purpose |
379
- | -------- | ------------------------- |
380
- | `main` | Stable releases |
381
- | `beta` | Pre-release beta channel |
382
- | `pre/rc` | Release candidate channel |
442
+ | Branch | Purpose |
443
+ | ------- | ------------------------- |
444
+ | `main` | Stable releases |
445
+ | `rc` | Release candidate channel |
446
+ | `beta` | Pre-release beta channel |
447
+ | `alpha` | Pre-release alpha channel |
448
+ | `pre` | Pre-release channel |
383
449
 
384
- **Do not** manually version packages or create release branches — releases are automated via semantic-release triggered by CI.
450
+ **Do not** manually version packages or create release branches — semantic-release owns the version, and a release is cut by starting its manual CI job.
385
451
 
386
452
  ---
387
453
 
@@ -389,6 +455,8 @@ Release branches are managed by the project maintainers:
389
455
 
390
456
  ### Commit Messages
391
457
 
458
+ All prose in a commit follows [ASD-STE100](#writing-style-asd-ste100) — the subject line and the body.
459
+
392
460
  This project uses **Conventional Commits** — changelogs and version bumps are generated automatically from commit history.
393
461
 
394
462
  ```
@@ -445,19 +513,20 @@ feat(play-react): add PlayRenderer suspense boundary
445
513
  - [ ] New code has tests at or above coverage thresholds
446
514
  - [ ] All new public exports have JSDoc
447
515
  - [ ] Conventional commit format used on all commits
516
+ - [ ] Commits, MR description, and docs written in [ASD-STE100](#writing-style-asd-ste100)
448
517
  - [ ] RFC read and implementation conforms to spec
449
518
 
450
519
  ### CI Pipeline
451
520
 
452
521
  The GitLab CI pipeline runs automatically on merge requests, pushes to `main`, and git tags.
453
522
 
454
- | Job | Command | Artifacts |
455
- | ------------------ | ------------------------------------- | -------------------------------------- |
456
- | Build | `pnpm run build` | — |
457
- | Test with coverage | `vitest run --coverage` | JUnit XML, Cobertura coverage report |
458
- | Lint | `oxlint .` | — |
459
- | Audit | `pnpm audit --audit-level=high` | — |
460
- | Semantic release | (automated on `main`/`beta`/`pre/rc`) | CHANGELOG, npm publish, GitLab release |
523
+ | Job | Command | Artifacts |
524
+ | ------------------ | ------------------------------------------------ | -------------------------------------- |
525
+ | Build | `pnpm run build` | — |
526
+ | Test with coverage | `vitest run --coverage` | JUnit XML, Cobertura coverage report |
527
+ | Lint | `oxlint .` | — |
528
+ | Audit | `pnpm audit --audit-level=high` | — |
529
+ | Semantic release | (manual job on `main`/`rc`/`beta`/`alpha`/`pre`) | CHANGELOG, npm publish, GitLab release |
461
530
 
462
531
  ---
463
532
 
@@ -1,5 +1,3 @@
1
- <!-- generated-by: gsd-doc-writer -->
2
-
3
1
  # Testing
4
2
 
5
3
  This document describes the test framework, conventions, and CI integration for the XMachines JS monorepo.
@@ -62,10 +60,20 @@ pnpm run test:coverage
62
60
  Produces coverage output in `text`, `html`, and `json-summary` formats.
63
61
 
64
62
  ```bash
65
- pnpm run coverage:report # HTML report
66
- pnpm run coverage:summary # JSON summary only
63
+ pnpm run test:browser:coverage # browser suite, with coverage
67
64
  ```
68
65
 
66
+ Root-level coverage thresholds (regression gate):
67
+
68
+ | Metric | Threshold |
69
+ | ---------- | --------- |
70
+ | Lines | 80% |
71
+ | Functions | 80% |
72
+ | Statements | 80% |
73
+ | Branches | 75% |
74
+
75
+ Individual packages may enforce higher per-package thresholds in their own `vitest.config.ts`.
76
+
69
77
  ### Verify TypeScript test graph compiles
70
78
 
71
79
  ```bash
@@ -256,23 +264,32 @@ class MockActor extends AbstractActor<AnyActorLogic> implements Routable {
256
264
  }
257
265
  ```
258
266
 
259
- **Factory functions for lightweight inline mocks:**
267
+ **Factory functions for lightweight inline mocks — use `stubOf`, never a double-cast:**
260
268
 
261
269
  ```typescript
270
+ import { stubOf } from "@xmachines/shared/test-support";
271
+
262
272
  function createMockActor(initialView: PlaySpec | null = null) {
263
- return {
273
+ return stubOf<AbstractActor<AnyActorLogic> & Viewable>({
264
274
  currentView: new Signal.State<PlaySpec | null>(initialView),
265
275
  send: vi.fn(),
266
276
  start: vi.fn(),
267
277
  stop: vi.fn(),
268
278
  getSnapshot: vi.fn(),
269
279
  subscribe: vi.fn(),
270
- state: new Signal.State({} as unknown),
280
+ state: new Signal.State<unknown>({}),
271
281
  currentRoute: new Signal.Computed(() => null),
272
- } as unknown as AbstractActor<AnyActorLogic> & Viewable;
282
+ });
273
283
  }
274
284
  ```
275
285
 
286
+ `stubOf` keeps every declared member type-checked against the target type (a
287
+ `send` with the wrong signature is a compile error) while allowing the rest to
288
+ be absent — the one unsound assertion lives inside the helper, not at call
289
+ sites. `X as unknown as T` is banned in this repo; if `stubOf` cannot express
290
+ the case, `unsafeCast<T>(value)` from the same module is the deliberate,
291
+ greppable escape hatch.
292
+
276
293
  ### Async and signal patterns
277
294
 
278
295
  **Flushing the microtask queue (required for Signal propagation):**
@@ -309,14 +326,16 @@ watcher.unwatch(actor.currentRoute); // Always clean up
309
326
  For type-only assertions, use `@ts-expect-error` in `.spec.ts` files:
310
327
 
311
328
  ```typescript
312
- const bad: PlaySpec = typedSpec<MyCtx>({
329
+ const bad: PlaySpec = typedSpec({
313
330
  root: "root",
314
- // @ts-expect-error "typo" is not a key of MyCtx — typedSpec enforces this
315
- contextProps: ["typo"],
316
331
  elements: {},
332
+ // @ts-expect-error "stat" is not a PlaySpec field — typedSpec flags it on an
333
+ // inline literal (excess-property checking does not reach aliased or spread
334
+ // objects; use `satisfies PlaySpec` at the literal for those)
335
+ stat: {},
317
336
  });
318
337
  // At runtime the object exists; only the compile-time error is being tested
319
- expect(bad.contextProps).toEqual(["typo"]);
338
+ expect(bad.root).toBe("root");
320
339
  ```
321
340
 
322
341
  For purely structural type assertions with no runtime test needed, use `.typecheck.ts` files in `src/`:
@@ -335,8 +354,11 @@ These files are validated by `pnpm run test:build` (`tsc --build tsconfig.test.j
335
354
  ### Error testing
336
355
 
337
356
  ```typescript
338
- // Synchronous throws
339
- expect(() => actor.send(null as unknown as PlayEvent)).toThrow(InvalidEventError);
357
+ import { unsafeCast } from "@xmachines/shared/test-support";
358
+
359
+ // Synchronous throws — feed a runtime guard an invalid value through
360
+ // unsafeCast, the named escape hatch (never `null as unknown as PlayEvent`).
361
+ expect(() => actor.send(unsafeCast<PlayEvent>(null))).toThrow(InvalidEventError);
340
362
 
341
363
  // Error with message pattern
342
364
  expect(() => extractMachineRoutes(dupMachine)).toThrow(/Duplicate route paths detected/);
@@ -6,7 +6,7 @@
6
6
  function createNavBar(actor, container): () => void;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-dom/examples/demo/src/components/NavBar.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-dom/examples/demo/src/components/NavBar.ts#L9)
9
+ Defined in: [packages/play-dom/examples/demo/src/components/NavBar.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.56/packages/play-dom/examples/demo/src/components/NavBar.ts#L9)
10
10
 
11
11
  NavBar — App-shell navigation factory. Mounts a reactive nav into
12
12
  `container`, observes actor.state via watchSignal, and updates button
@@ -6,7 +6,7 @@
6
6
  function initShell(actor, appElement): () => void;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-dom/examples/demo/src/components/Shell.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-dom/examples/demo/src/components/Shell.ts#L24)
9
+ Defined in: [packages/play-dom/examples/demo/src/components/Shell.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.56/packages/play-dom/examples/demo/src/components/Shell.ts#L24)
10
10
 
11
11
  Shell — DOM shell layout factory. Renders demo chrome (header + main +
12
12
  debug panel), mounts NavBar, connects DOM renderer, and wires DebugPanel.
@@ -6,4 +6,4 @@
6
6
  type AuthCatalog = typeof authCatalog;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-dom/examples/demo/src/catalog.ts:6](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-dom/examples/demo/src/catalog.ts#L6)
9
+ Defined in: [packages/play-dom/examples/demo/src/catalog.ts:6](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.56/packages/play-dom/examples/demo/src/catalog.ts#L6)
@@ -6,7 +6,7 @@
6
6
  const About: ComponentFn<AuthCatalog, "About">;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-dom/examples/demo/src/components/About.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-dom/examples/demo/src/components/About.ts#L8)
9
+ Defined in: [packages/play-dom/examples/demo/src/components/About.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.56/packages/play-dom/examples/demo/src/components/About.ts#L8)
10
10
 
11
11
  About — Public information page. Catalog-typed DOM component
12
12
  (ComponentFn<AuthCatalog, 'About'>). Renders static content from props.
@@ -6,7 +6,7 @@
6
6
  const Contact: ComponentFn<AuthCatalog, "Contact">;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-dom/examples/demo/src/components/Contact.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-dom/examples/demo/src/components/Contact.ts#L8)
9
+ Defined in: [packages/play-dom/examples/demo/src/components/Contact.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.56/packages/play-dom/examples/demo/src/components/Contact.ts#L8)
10
10
 
11
11
  Contact — Public contact page. Catalog-typed DOM component
12
12
  (ComponentFn<AuthCatalog, 'Contact'>). Renders static content from props.
@@ -6,7 +6,7 @@
6
6
  const Dashboard: ComponentFn<AuthCatalog, "Dashboard">;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-dom/examples/demo/src/components/Dashboard.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-dom/examples/demo/src/components/Dashboard.ts#L9)
9
+ Defined in: [packages/play-dom/examples/demo/src/components/Dashboard.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.56/packages/play-dom/examples/demo/src/components/Dashboard.ts#L9)
10
10
 
11
11
  Dashboard — Protected authenticated home. Catalog-typed DOM component
12
12
  (ComponentFn<AuthCatalog, 'Dashboard'>). Renders welcome message; logout
@@ -6,7 +6,7 @@
6
6
  const Home: ComponentFn<AuthCatalog, "Home">;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-dom/examples/demo/src/components/Home.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-dom/examples/demo/src/components/Home.ts#L9)
9
+ Defined in: [packages/play-dom/examples/demo/src/components/Home.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.56/packages/play-dom/examples/demo/src/components/Home.ts#L9)
10
10
 
11
11
  Home — Public landing page. Catalog-typed DOM component
12
12
  (ComponentFn<AuthCatalog, 'Home'>). Renders static welcome content from
@@ -6,7 +6,7 @@
6
6
  const Login: ComponentFn<AuthCatalog, "Login">;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-dom/examples/demo/src/components/Login.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-dom/examples/demo/src/components/Login.ts#L9)
9
+ Defined in: [packages/play-dom/examples/demo/src/components/Login.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.56/packages/play-dom/examples/demo/src/components/Login.ts#L9)
10
10
 
11
11
  Login — Authentication form. Catalog-typed DOM component
12
12
  (ComponentFn<AuthCatalog, 'Login'>). Binds username input to ctx.store via
@@ -6,7 +6,7 @@
6
6
  const NavBarView: ComponentFn<AuthCatalog, "NavBar">;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-dom/examples/demo/src/components/NavBarView.ts:12](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-dom/examples/demo/src/components/NavBarView.ts#L12)
9
+ Defined in: [packages/play-dom/examples/demo/src/components/NavBarView.ts:12](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.56/packages/play-dom/examples/demo/src/components/NavBarView.ts#L12)
10
10
 
11
11
  NavBarView — Catalog-typed NavBar component for DOM renderer.
12
12
 
@@ -6,7 +6,7 @@
6
6
  const Navigation: ComponentFn<AuthCatalog, "Navigation">;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-dom/examples/demo/src/components/Navigation.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-dom/examples/demo/src/components/Navigation.ts#L9)
9
+ Defined in: [packages/play-dom/examples/demo/src/components/Navigation.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.56/packages/play-dom/examples/demo/src/components/Navigation.ts#L9)
10
10
 
11
11
  Navigation — Navigation status display. Catalog-typed DOM component
12
12
  (ComponentFn<AuthCatalog, 'Navigation'>). Renders current path and auth
@@ -6,7 +6,7 @@
6
6
  const Overview: ComponentFn<AuthCatalog, "Overview">;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-dom/examples/demo/src/components/Overview.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.0.0-alpha.1/packages/play-dom/examples/demo/src/components/Overview.ts#L9)
9
+ Defined in: [packages/play-dom/examples/demo/src/components/Overview.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.56/packages/play-dom/examples/demo/src/components/Overview.ts#L9)
10
10
 
11
11
  Overview — Dashboard overview child route. Catalog-typed DOM component
12
12
  (ComponentFn<AuthCatalog, 'Overview'>). Relative route resolves to