@xmachines/docs 1.0.0-beta.26 → 1.0.0-beta.28
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.
- package/api/@xmachines/play/classes/PlayError.md +4 -10
- package/api/@xmachines/play/type-aliases/PlayEvent.md +2 -2
- package/api/@xmachines/play-actor/classes/AbstractActor.md +3 -25
- package/api/@xmachines/play-actor/functions/typedSpec.md +1 -1
- package/api/@xmachines/play-actor/interfaces/PlaySpec.md +2 -2
- package/api/@xmachines/play-actor/interfaces/Routable.md +3 -3
- package/api/@xmachines/play-actor/interfaces/ViewMetadata.md +3 -3
- package/api/@xmachines/play-actor/interfaces/Viewable.md +2 -2
- package/api/@xmachines/play-actor-shared/README.md +155 -0
- package/api/@xmachines/play-actor-shared/interfaces/AuthContext.md +14 -0
- package/api/@xmachines/play-actor-shared/type-aliases/AuthActor.md +27 -0
- package/api/@xmachines/play-actor-shared/type-aliases/AuthCatalog.md +16 -0
- package/api/@xmachines/play-actor-shared/type-aliases/AuthEvents.md +17 -0
- package/api/@xmachines/play-actor-shared/type-aliases/AuthInput.md +9 -0
- package/api/@xmachines/play-actor-shared/type-aliases/AuthSnapshot.md +11 -0
- package/api/@xmachines/play-actor-shared/type-aliases/CatalogProps.md +187 -0
- package/api/@xmachines/play-actor-shared/type-aliases/InferProps.md +17 -0
- package/api/@xmachines/play-actor-shared/variables/authCatalog.md +173 -0
- package/api/@xmachines/play-actor-shared/variables/authMachine.md +189 -0
- package/api/@xmachines/play-actor-shared/variables/authSetup.md +22 -0
- package/api/@xmachines/play-dom/README.md +74 -8
- package/api/@xmachines/play-dom/classes/PlayRenderer.md +4 -4
- package/api/@xmachines/play-dom/functions/connectRenderer.md +1 -1
- package/api/@xmachines/play-dom/functions/defineRegistry.md +61 -0
- package/api/@xmachines/play-dom/functions/renderSpec.md +29 -12
- package/api/@xmachines/play-dom/interfaces/ComponentContext.md +62 -0
- package/api/@xmachines/play-dom/interfaces/ConnectRendererOptions.md +9 -9
- package/api/@xmachines/play-dom/interfaces/DefineRegistryOptions.md +25 -0
- package/api/@xmachines/play-dom/interfaces/DefineRegistryResult.md +18 -0
- package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +13 -10
- package/api/@xmachines/play-dom/interfaces/EventHandle.md +29 -0
- package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +5 -5
- package/api/@xmachines/play-dom/type-aliases/ComponentFn.md +53 -0
- package/api/@xmachines/play-dom/type-aliases/ComponentRegistry.md +21 -0
- package/api/@xmachines/play-dom/type-aliases/DomComponentRenderer.md +16 -3
- package/api/@xmachines/play-dom/type-aliases/DomRegistry.md +5 -2
- package/api/@xmachines/play-dom-demo/README.md +145 -0
- package/api/@xmachines/play-dom-demo/functions/initShell.md +20 -0
- package/api/@xmachines/play-dom-demo/variables/About.md +9 -0
- package/api/@xmachines/play-dom-demo/variables/Contact.md +9 -0
- package/api/@xmachines/play-dom-demo/variables/Dashboard.md +9 -0
- package/api/@xmachines/play-dom-demo/variables/Home.md +9 -0
- package/api/@xmachines/play-dom-demo/variables/Login.md +9 -0
- package/api/@xmachines/play-dom-demo/variables/Navigation.md +9 -0
- package/api/@xmachines/play-dom-demo/variables/Overview.md +9 -0
- package/api/@xmachines/play-dom-demo/variables/Profile.md +9 -0
- package/api/@xmachines/play-dom-demo/variables/Settings.md +9 -0
- package/api/@xmachines/play-dom-demo/variables/Stats.md +9 -0
- package/api/@xmachines/play-dom-router/functions/connectRouter.md +1 -1
- package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +1 -1
- package/api/@xmachines/play-dom-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-dom-router/functions/createRouter.md +1 -1
- package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +14 -14
- package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +14 -14
- package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +4 -4
- package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +6 -6
- package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouteMapLike.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +4 -4
- package/api/@xmachines/play-dom-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-dom-router-demo/README.md +56 -61
- package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +5 -31
- package/api/@xmachines/play-react/functions/defineRegistry.md +0 -2
- package/api/@xmachines/play-react/functions/useActor.md +1 -1
- package/api/@xmachines/play-react/functions/useBoundProp.md +0 -2
- package/api/@xmachines/play-react/functions/useSignalEffect.md +1 -1
- package/api/@xmachines/play-react/functions/useStateBinding.md +0 -2
- package/api/@xmachines/play-react/interfaces/ComponentContext.md +0 -2
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +4 -4
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +3 -3
- package/api/@xmachines/play-react/interfaces/PlayRendererProps.md +7 -7
- package/api/@xmachines/play-react/type-aliases/ComponentFn.md +0 -2
- package/api/@xmachines/play-react/type-aliases/PlayActor.md +1 -1
- package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-react-demo/README.md +173 -0
- package/api/@xmachines/play-react-demo/functions/App.md +13 -0
- package/api/@xmachines/play-react-demo/functions/DebugPanel.md +20 -0
- package/api/@xmachines/play-react-demo/functions/HeaderNav.md +20 -0
- package/api/@xmachines/play-react-demo/functions/Shell.md +22 -0
- package/api/@xmachines/play-react-demo/variables/About.md +9 -0
- package/api/@xmachines/play-react-demo/variables/Contact.md +9 -0
- package/api/@xmachines/play-react-demo/variables/Dashboard.md +9 -0
- package/api/@xmachines/play-react-demo/variables/Home.md +9 -0
- package/api/@xmachines/play-react-demo/variables/Login.md +9 -0
- package/api/@xmachines/play-react-demo/variables/Navigation.md +9 -0
- package/api/@xmachines/play-react-demo/variables/Overview.md +9 -0
- package/api/@xmachines/play-react-demo/variables/Profile.md +9 -0
- package/api/@xmachines/play-react-demo/variables/Settings.md +9 -0
- package/api/@xmachines/play-react-demo/variables/Stats.md +9 -0
- package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +23 -23
- package/api/@xmachines/play-react-router/classes/RouteMap.md +4 -4
- package/api/@xmachines/play-react-router/functions/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +1 -1
- package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +6 -6
- package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +5 -5
- package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-react-router-demo/README.md +10 -10
- package/api/@xmachines/play-router/README.md +1 -1
- package/api/@xmachines/play-router/classes/BaseRouteMap.md +4 -4
- package/api/@xmachines/play-router/classes/RouterBridgeBase.md +23 -23
- package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +1 -1
- package/api/@xmachines/play-router/functions/buildRouteTree.md +1 -1
- package/api/@xmachines/play-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-router/functions/createRouteMapFromMachine.md +1 -1
- package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +1 -1
- package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +1 -1
- package/api/@xmachines/play-router/functions/extractMachineRoutes.md +1 -1
- package/api/@xmachines/play-router/functions/extractQuery.md +1 -1
- package/api/@xmachines/play-router/functions/extractRouteParams.md +1 -1
- package/api/@xmachines/play-router/functions/findRouteById.md +1 -1
- package/api/@xmachines/play-router/functions/findRouteByPath.md +1 -1
- package/api/@xmachines/play-router/functions/getNavigableRoutes.md +1 -1
- package/api/@xmachines/play-router/functions/getRoutableRoutes.md +1 -1
- package/api/@xmachines/play-router/functions/getTransitionReachableRoutes.md +1 -1
- package/api/@xmachines/play-router/functions/isRouteReachable.md +1 -1
- package/api/@xmachines/play-router/functions/machineToGraph.md +1 -1
- package/api/@xmachines/play-router/functions/routeExists.md +1 -1
- package/api/@xmachines/play-router/functions/sanitizePathname.md +1 -1
- package/api/@xmachines/play-router/functions/validateRouteFormat.md +1 -1
- package/api/@xmachines/play-router/functions/validateStateExists.md +1 -1
- package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +4 -4
- package/api/@xmachines/play-router/interfaces/LocationLike.md +3 -3
- package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +3 -3
- package/api/@xmachines/play-router/interfaces/MachineNodeData.md +5 -5
- package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +6 -6
- package/api/@xmachines/play-router/interfaces/RouteInfo.md +8 -8
- package/api/@xmachines/play-router/interfaces/RouteMap.md +4 -4
- package/api/@xmachines/play-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-router/interfaces/RouteMatch.md +3 -3
- package/api/@xmachines/play-router/interfaces/RouteNode.md +10 -10
- package/api/@xmachines/play-router/interfaces/RouteObject.md +2 -2
- package/api/@xmachines/play-router/interfaces/RouteTree.md +5 -5
- package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +3 -3
- package/api/@xmachines/play-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-router/interfaces/WindowLike.md +3 -3
- package/api/@xmachines/play-router/type-aliases/MachineGraph.md +1 -1
- package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +1 -1
- package/api/@xmachines/play-signals/functions/watchSignal.md +1 -1
- package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalComputed.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalOptions.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalState.md +3 -3
- package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +4 -4
- package/api/@xmachines/play-signals/namespaces/Signal/classes/Computed.md +0 -6
- package/api/@xmachines/play-signals/namespaces/Signal/classes/State.md +0 -8
- package/api/@xmachines/play-signals/namespaces/Signal/interfaces/Options.md +0 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/classes/Watcher.md +0 -10
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/currentComputed.md +0 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSinks.md +0 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSources.md +0 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSinks.md +0 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSources.md +0 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/untrack.md +0 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/unwatched.md +0 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/watched.md +0 -2
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isComputed.md +0 -2
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isState.md +0 -2
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isWatcher.md +0 -2
- package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +1 -1
- package/api/@xmachines/play-solid/functions/defineRegistry.md +0 -2
- package/api/@xmachines/play-solid/functions/useActor.md +1 -1
- package/api/@xmachines/play-solid/functions/useStateBinding.md +0 -2
- package/api/@xmachines/play-solid/interfaces/ComponentContext.md +0 -2
- package/api/@xmachines/play-solid/interfaces/PlayRendererProps.md +7 -7
- package/api/@xmachines/play-solid/type-aliases/ComponentFn.md +0 -2
- package/api/@xmachines/play-solid/type-aliases/PlayActor.md +1 -1
- package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-solid-demo/README.md +159 -0
- package/api/@xmachines/play-solid-demo/functions/App.md +13 -0
- package/api/@xmachines/play-solid-demo/functions/DebugPanel.md +20 -0
- package/api/@xmachines/play-solid-demo/functions/HeaderNav.md +20 -0
- package/api/@xmachines/play-solid-demo/functions/Shell.md +22 -0
- package/api/@xmachines/play-solid-demo/variables/About.md +9 -0
- package/api/@xmachines/play-solid-demo/variables/Contact.md +9 -0
- package/api/@xmachines/play-solid-demo/variables/Dashboard.md +9 -0
- package/api/@xmachines/play-solid-demo/variables/Home.md +9 -0
- package/api/@xmachines/play-solid-demo/variables/Login.md +9 -0
- package/api/@xmachines/play-solid-demo/variables/Navigation.md +9 -0
- package/api/@xmachines/play-solid-demo/variables/Overview.md +9 -0
- package/api/@xmachines/play-solid-demo/variables/Profile.md +9 -0
- package/api/@xmachines/play-solid-demo/variables/Settings.md +9 -0
- package/api/@xmachines/play-solid-demo/variables/Stats.md +9 -0
- package/api/@xmachines/play-solid-router/classes/RouteMap.md +4 -4
- package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +24 -24
- package/api/@xmachines/play-solid-router/functions/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-solid-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +3 -23
- package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +6 -6
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +5 -5
- package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
- package/api/@xmachines/play-solid-router-demo/README.md +25 -28
- package/api/@xmachines/play-svelte/functions/defineRegistry.md +0 -2
- package/api/@xmachines/play-svelte/interfaces/BaseComponentProps.md +0 -2
- package/api/@xmachines/play-svelte/interfaces/ComponentContext.md +0 -2
- package/api/@xmachines/play-svelte/interfaces/PlayRendererProps.md +7 -7
- package/api/@xmachines/play-svelte/type-aliases/ComponentFn.md +0 -2
- package/api/@xmachines/play-svelte/type-aliases/PlayRenderer.md +0 -2
- package/api/@xmachines/play-svelte/variables/PlayRenderer.md +0 -2
- package/api/@xmachines/play-svelte-demo/README.md +127 -0
- package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +4 -4
- package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +1 -1
- package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +4 -4
- package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +6 -6
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +3 -3
- package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +4 -4
- package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +1 -1
- package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +4 -4
- package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +3 -3
- package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +6 -6
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +4 -4
- package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +23 -23
- package/api/@xmachines/play-tanstack-react-router/functions/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +6 -6
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +5 -5
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +3 -3
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +17 -3
- package/api/@xmachines/play-tanstack-react-router-demo/README.md +23 -29
- package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +4 -4
- package/api/@xmachines/play-tanstack-solid-router/classes/SolidRouterBridge.md +24 -24
- package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +6 -6
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +5 -5
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router-demo/README.md +25 -26
- package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-vue/functions/useActor.md +1 -1
- package/api/@xmachines/play-vue/functions/useStateBinding.md +0 -2
- package/api/@xmachines/play-vue/interfaces/ComponentContext.md +0 -2
- package/api/@xmachines/play-vue/interfaces/PlayRendererProps.md +5 -5
- package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/ComponentFn.md +0 -2
- package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +4 -3
- package/api/@xmachines/play-vue/type-aliases/PlayActor.md +1 -1
- package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-vue-demo/README.md +145 -0
- package/api/@xmachines/play-vue-router/classes/RouteMap.md +4 -4
- package/api/@xmachines/play-vue-router/classes/VueBaseRouteMap.md +4 -4
- package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +24 -24
- package/api/@xmachines/play-vue-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +6 -6
- package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-vue-router-demo/README.md +48 -41
- package/api/@xmachines/play-xstate/classes/PlayerActor.md +11 -25
- package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +1 -1
- package/api/@xmachines/play-xstate/functions/composeGuards.md +1 -1
- package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +1 -1
- package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +1 -1
- package/api/@xmachines/play-xstate/functions/definePlayer.md +1 -1
- package/api/@xmachines/play-xstate/functions/deriveRoute.md +1 -1
- package/api/@xmachines/play-xstate/functions/eventMatches.md +1 -1
- package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +1 -1
- package/api/@xmachines/play-xstate/functions/hasContext.md +1 -1
- package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +1 -1
- package/api/@xmachines/play-xstate/functions/negateGuard.md +1 -1
- package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +3 -3
- package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +2 -2
- package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +6 -6
- package/api/@xmachines/play-xstate/interfaces/RouteContext.md +5 -5
- package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +1 -1
- package/api/@xmachines/play-xstate/type-aliases/Guard.md +1 -1
- package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +1 -1
- package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +1 -1
- package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +4 -4
- package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +4 -4
- package/api/@xmachines/shared/functions/defineXmVitestConfig.md +3 -7
- package/api/@xmachines/shared/functions/xmAliases.md +1 -1
- package/api/README.md +6 -2
- package/api/llms.txt +0 -3
- package/examples/README.md +48 -35
- package/examples/basic-state-machine.md +75 -31
- package/examples/form-validation.md +199 -127
- package/examples/multi-router-integration.md +312 -230
- package/examples/routing-patterns.md +243 -189
- package/examples/traffic-light.md +114 -65
- package/guides/README.md +29 -15
- package/guides/getting-started.md +224 -144
- package/guides/installation.md +153 -213
- package/package.json +2 -2
- package/api/@xmachines/play-svelte-spa-router-demo/README.md +0 -23
- package/api/@xmachines/play-sveltekit-router-demo/README.md +0 -23
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: RouterBridge
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/types.ts:271](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-router/src/types.ts:271](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-router/src/types.ts#L271)
|
|
6
6
|
|
|
7
7
|
RouterBridge interface for runtime infrastructure adapters
|
|
8
8
|
|
|
@@ -54,7 +54,7 @@ class TanStackRouterBridge implements RouterBridge {
|
|
|
54
54
|
connect(): void | Promise<void>;
|
|
55
55
|
```
|
|
56
56
|
|
|
57
|
-
Defined in: [play-router/src/types.ts:287](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
57
|
+
Defined in: [play-router/src/types.ts:287](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-router/src/types.ts#L287)
|
|
58
58
|
|
|
59
59
|
Connect the router bridge to the Actor
|
|
60
60
|
|
|
@@ -83,7 +83,7 @@ await bridge.connect();
|
|
|
83
83
|
disconnect(): void | Promise<void>;
|
|
84
84
|
```
|
|
85
85
|
|
|
86
|
-
Defined in: [play-router/src/types.ts:303](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
86
|
+
Defined in: [play-router/src/types.ts:303](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-router/src/types.ts#L303)
|
|
87
87
|
|
|
88
88
|
Disconnect the router bridge from the Actor
|
|
89
89
|
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: VanillaRouter
|
|
4
4
|
|
|
5
|
-
Defined in: [play-dom-router/src/create-router.ts:4](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-dom-router/src/create-router.ts:4](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-dom-router/src/create-router.ts#L4)
|
|
6
6
|
|
|
7
7
|
## Properties
|
|
8
8
|
|
|
9
9
|
| Property | Modifier | Type | Description | Defined in |
|
|
10
10
|
| ------------------------------------------- | ---------- | -------------------------------------------------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
11
|
-
| <a id="property-history"></a> `history` | `readonly` | [`BrowserHistory`](BrowserHistory.md) | History instance | [play-dom-router/src/create-router.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
12
|
-
| <a id="property-routetree"></a> `routeTree` | `readonly` | [`RouteTree`](../../play-router/interfaces/RouteTree.md) | Route tree (for structure reference) | [play-dom-router/src/create-router.ts:13](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
11
|
+
| <a id="property-history"></a> `history` | `readonly` | [`BrowserHistory`](BrowserHistory.md) | History instance | [play-dom-router/src/create-router.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-dom-router/src/create-router.ts#L8) |
|
|
12
|
+
| <a id="property-routetree"></a> `routeTree` | `readonly` | [`RouteTree`](../../play-router/interfaces/RouteTree.md) | Route tree (for structure reference) | [play-dom-router/src/create-router.ts:13](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-dom-router/src/create-router.ts#L13) |
|
|
13
13
|
|
|
14
14
|
## Methods
|
|
15
15
|
|
|
@@ -19,7 +19,7 @@ Defined in: [play-dom-router/src/create-router.ts:4](https://gitlab.com/xmachin-
|
|
|
19
19
|
destroy(): void;
|
|
20
20
|
```
|
|
21
21
|
|
|
22
|
-
Defined in: [play-dom-router/src/create-router.ts:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
22
|
+
Defined in: [play-dom-router/src/create-router.ts:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-dom-router/src/create-router.ts#L18)
|
|
23
23
|
|
|
24
24
|
Cleanup
|
|
25
25
|
|
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
type RoutableActor = AbstractActor<AnyActorLogic> & Routable & Viewable;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-dom-router/src/types.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [play-dom-router/src/types.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-dom-router/src/types.ts#L9)
|
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
[Documentation](../../README.md) / @xmachines/play-dom-router-demo
|
|
2
2
|
|
|
3
|
-
# Vanilla
|
|
3
|
+
# Vanilla DOM Router Demo
|
|
4
4
|
|
|
5
|
-
Pure
|
|
5
|
+
Pure TypeScript integration demo for `@xmachines/play-dom-router` — actor-authoritative routing with the Browser History API and no framework.
|
|
6
6
|
|
|
7
7
|
## What This Demonstrates
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
-
|
|
14
|
-
- **Browser History API**: Direct integration with `window.history`
|
|
15
|
-
- **Same Auth Machine**: Identical authentication logic as React/Vue/SolidJS demos
|
|
16
|
-
- **Reference Implementation**: This demo serves as the visual reference for all framework demos
|
|
9
|
+
- Shared auth machine reused without framework-specific business logic
|
|
10
|
+
- `connectRouter` + `createBrowserHistory` wiring actor ↔ browser History API
|
|
11
|
+
- Shell-driven DOM rendering via `connectRenderer` with actor-authoritative navigation
|
|
12
|
+
- Manual TC39 Signal watcher lifecycle — the mechanism that framework adapters abstract
|
|
13
|
+
- Non-browser invariant tests plus browser E2E coverage
|
|
17
14
|
|
|
18
15
|
## Running the Demo
|
|
19
16
|
|
|
@@ -21,24 +18,24 @@ From the repository root:
|
|
|
21
18
|
|
|
22
19
|
```bash
|
|
23
20
|
npm install
|
|
24
|
-
npm run dev -w
|
|
21
|
+
npm run dev -w @xmachines/play-dom-router-demo
|
|
25
22
|
```
|
|
26
23
|
|
|
27
|
-
|
|
24
|
+
Then open `http://localhost:5174`.
|
|
28
25
|
|
|
29
26
|
## Step-by-Step Code Flow
|
|
30
27
|
|
|
31
|
-
Use this order to understand the
|
|
28
|
+
Use this order to understand the implementation:
|
|
32
29
|
|
|
33
|
-
1. `src/main.ts` creates the actor from the shared machine
|
|
34
|
-
2. `src/router.ts` extracts
|
|
35
|
-
3. `src/shell.ts`
|
|
36
|
-
4. Navigation and
|
|
37
|
-
5. Browser tests in `test/browser/` validate startup rendering and the auth route flow
|
|
30
|
+
1. `src/main.ts` creates the actor from the shared machine and starts it.
|
|
31
|
+
2. `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.
|
|
32
|
+
3. `initShell(actor, app)` from `src/shell.ts` builds the DOM scaffold and sets up the `connectRenderer` loop for view switching.
|
|
33
|
+
4. Navigation buttons and links dispatch `play.route`, `auth.login`, and `auth.logout` events directly to the actor — no URL mutations from the shell.
|
|
34
|
+
5. Browser tests in `test/browser/` validate startup rendering and the full auth route flow.
|
|
38
35
|
|
|
39
36
|
```ts
|
|
40
37
|
// src/main.ts (shape)
|
|
41
|
-
const actor =
|
|
38
|
+
const actor = createPlayer();
|
|
42
39
|
actor.start();
|
|
43
40
|
|
|
44
41
|
const cleanupRouter = initRouter(actor);
|
|
@@ -50,45 +47,52 @@ if (app) {
|
|
|
50
47
|
|
|
51
48
|
```ts
|
|
52
49
|
// src/router.ts (shape)
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
const
|
|
57
|
-
const
|
|
58
|
-
const
|
|
59
|
-
|
|
60
|
-
|
|
50
|
+
export function initRouter(actor) {
|
|
51
|
+
const routeTree = extractMachineRoutes(authMachine);
|
|
52
|
+
const routeMap = createRouteMap(authMachine);
|
|
53
|
+
const history = createBrowserHistory({ window });
|
|
54
|
+
const router = createRouter({ routeTree, history });
|
|
55
|
+
const disconnect = connectRouter({ actor, router, routeMap });
|
|
56
|
+
|
|
57
|
+
return () => {
|
|
58
|
+
disconnect();
|
|
59
|
+
router.destroy();
|
|
60
|
+
};
|
|
61
|
+
}
|
|
61
62
|
```
|
|
62
63
|
|
|
63
64
|
```ts
|
|
64
65
|
// src/shell.ts (shape)
|
|
65
|
-
|
|
66
|
-
|
|
66
|
+
const disconnectRenderer = connectRenderer({ actor, registry, container: viewContent });
|
|
67
|
+
|
|
68
|
+
const unwatchState = watchSignal(actor.state, () => {
|
|
69
|
+
navLogin.hidden = snapshot.context.isAuthenticated;
|
|
70
|
+
navLogout.hidden = !snapshot.context.isAuthenticated;
|
|
67
71
|
});
|
|
68
72
|
|
|
69
|
-
|
|
70
|
-
logoutButton.onclick = () => actor.send({ type: "auth.logout" });
|
|
73
|
+
navLogin.addEventListener("click", () => actor.send({ type: "play.route", to: "#login" }));
|
|
71
74
|
```
|
|
72
75
|
|
|
73
76
|
## Key Files
|
|
74
77
|
|
|
75
78
|
- `src/main.ts` - actor startup, router initialization, and shell bootstrap
|
|
76
79
|
- `src/router.ts` - `createBrowserHistory`, `createRouter`, and `connectRouter` wiring
|
|
77
|
-
- `src/shell.ts` - DOM
|
|
80
|
+
- `src/shell.ts` - DOM scaffold, `DomRegistry` construction, `connectRenderer`, and reactive watcher loop
|
|
81
|
+
- `test/library-pattern.test.ts` - architecture boundary and invariant assertions
|
|
78
82
|
- `test/browser/startup.browser.test.ts` - startup rendering assertion for public home + login action
|
|
79
|
-
- `test/browser/auth-flow.browser.test.ts` - login
|
|
83
|
+
- `test/browser/auth-flow.browser.test.ts` - login → dashboard → profile → logout browser flow
|
|
80
84
|
|
|
81
85
|
## State Machine & Architecture Details
|
|
82
86
|
|
|
83
87
|
The demo utilizes XMachines architectural invariants at the lowest level:
|
|
84
88
|
|
|
85
|
-
1. **Actor Authority:** Intercepting browser `popstate` events or
|
|
86
|
-
2. **Passive Infrastructure:** The router simply updates `window.history` and the DOM solely renders HTML
|
|
87
|
-
3. **Signal-Only Reactivity:** The integration registers
|
|
89
|
+
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.
|
|
90
|
+
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.
|
|
91
|
+
3. **Signal-Only Reactivity:** The integration registers `watchSignal` observers that trigger DOM reconciliation, illustrating the underlying mechanism that framework adapters abstract.
|
|
88
92
|
|
|
89
93
|
## Watcher Lifecycle and Cleanup Contract
|
|
90
94
|
|
|
91
|
-
Even in the vanilla demo, watcher handling follows the
|
|
95
|
+
Even in the vanilla demo, watcher handling follows the canonical lifecycle:
|
|
92
96
|
|
|
93
97
|
1. `notify`
|
|
94
98
|
2. `queueMicrotask`
|
|
@@ -96,46 +100,37 @@ Even in the vanilla demo, watcher handling follows the same canonical lifecycle:
|
|
|
96
100
|
4. Read actor signals and project DOM state
|
|
97
101
|
5. Re-arm with `watch()`/`watch(...signals)`
|
|
98
102
|
|
|
99
|
-
Watcher notifications are one-shot, so re-arm is mandatory. Router/shell teardown must explicitly call cleanup (`disconnect`/`unwatch`) and not rely on GC-only behavior. In vanilla
|
|
103
|
+
Watcher notifications are one-shot, so re-arm is mandatory. Router/shell teardown must explicitly call cleanup (`disconnect`/`unwatch`) and not rely on GC-only behavior. In vanilla TypeScript, this means retaining cleanup functions and calling them on `beforeunload` or during hot-module replacement.
|
|
100
104
|
|
|
101
105
|
## Adapter Boundaries
|
|
102
106
|
|
|
103
|
-
`connectRouter` and browser-history wiring (from `@xmachines/play-dom-router`) are passive infrastructure. Actor logic remains authoritative for route validity, and shared synchronization policy stays in `RouterBridgeBase` for framework bridges.
|
|
104
|
-
|
|
105
|
-
## Why Vanilla?
|
|
106
|
-
|
|
107
|
-
Vanilla JavaScript is the foundation:
|
|
108
|
-
|
|
109
|
-
- **Universal Patterns**: If it works in vanilla, frameworks are just convenience layers
|
|
110
|
-
- **No Magic**: Every interaction is explicit - great for learning
|
|
111
|
-
- **Performance Baseline**: Shows the minimal overhead of Play Architecture
|
|
112
|
-
|
|
113
|
-
This demo proves frameworks aren't required for Play Architecture to work.
|
|
107
|
+
`connectRouter` and browser-history wiring (from `@xmachines/play-dom-router`) are passive infrastructure. Actor logic remains authoritative for route validity, and shared synchronization policy stays in `RouterBridgeBase` for framework bridges. This demo proves frameworks are not required for Play Architecture to work.
|
|
114
108
|
|
|
115
109
|
## Available Scripts
|
|
116
110
|
|
|
117
111
|
These commands are defined in `package.json`:
|
|
118
112
|
|
|
119
|
-
| Command
|
|
120
|
-
|
|
|
121
|
-
| `npm run dev -w
|
|
122
|
-
| `npm run build -w
|
|
123
|
-
| `npm run preview -w
|
|
124
|
-
| `npm run test -w
|
|
125
|
-
| `npm run test:browser -w
|
|
113
|
+
| Command | Description |
|
|
114
|
+
| --------------------------------------------------------- | -------------------------------- |
|
|
115
|
+
| `npm run dev -w @xmachines/play-dom-router-demo` | Start Vite dev server |
|
|
116
|
+
| `npm run build -w @xmachines/play-dom-router-demo` | Build production bundle |
|
|
117
|
+
| `npm run preview -w @xmachines/play-dom-router-demo` | Preview built bundle |
|
|
118
|
+
| `npm run test -w @xmachines/play-dom-router-demo` | Run Vitest test suite |
|
|
119
|
+
| `npm run test:browser -w @xmachines/play-dom-router-demo` | Run browser-focused Vitest suite |
|
|
126
120
|
|
|
127
121
|
## Verification
|
|
128
122
|
|
|
129
|
-
|
|
123
|
+
Use these checks to validate README claims against the current demo implementation:
|
|
130
124
|
|
|
131
125
|
```bash
|
|
132
|
-
npm run test -w
|
|
133
|
-
npm run test:browser -w
|
|
126
|
+
npm run test -w @xmachines/play-dom-router-demo
|
|
127
|
+
npm run test:browser -w @xmachines/play-dom-router-demo
|
|
134
128
|
```
|
|
135
129
|
|
|
136
130
|
Expected result: tests pass, including startup rendering and the full browser auth flow in `test/browser/`.
|
|
137
131
|
|
|
138
132
|
## Learn More
|
|
139
133
|
|
|
140
|
-
-
|
|
141
|
-
-
|
|
134
|
+
- [Play DOM Router package README](../play-dom-router/README.md)
|
|
135
|
+
- [Play DOM demo README](../play-dom-demo/README.md)
|
|
136
|
+
- [Play Router package README](../play-router/README.md)
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Class: PlayErrorBoundary
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:53](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:53](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L53)
|
|
6
6
|
|
|
7
7
|
React class component error boundary for catching catalog component render errors.
|
|
8
8
|
|
|
@@ -36,7 +36,7 @@ Per CONS-14: Class component pattern works with all React versions (18 and 19).
|
|
|
36
36
|
new PlayErrorBoundary(props): PlayErrorBoundary;
|
|
37
37
|
```
|
|
38
38
|
|
|
39
|
-
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
39
|
+
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L57)
|
|
40
40
|
|
|
41
41
|
#### Parameters
|
|
42
42
|
|
|
@@ -75,7 +75,7 @@ React.Component<
|
|
|
75
75
|
componentDidCatch(error, info): void;
|
|
76
76
|
```
|
|
77
77
|
|
|
78
|
-
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
78
|
+
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L66)
|
|
79
79
|
|
|
80
80
|
Catches exceptions generated in descendant components. Unhandled exceptions will cause
|
|
81
81
|
the entire component tree to unmount.
|
|
@@ -105,8 +105,6 @@ React.Component.componentDidCatch;
|
|
|
105
105
|
optional componentDidMount(): void;
|
|
106
106
|
```
|
|
107
107
|
|
|
108
|
-
Defined in: `@types/react`
|
|
109
|
-
|
|
110
108
|
Called immediately after a component is mounted. Setting state here will trigger re-rendering.
|
|
111
109
|
|
|
112
110
|
#### Returns
|
|
@@ -130,8 +128,6 @@ optional componentDidUpdate(
|
|
|
130
128
|
snapshot?): void;
|
|
131
129
|
```
|
|
132
130
|
|
|
133
|
-
Defined in: `@types/react`
|
|
134
|
-
|
|
135
131
|
Called immediately after updating occurs. Not called for the initial render.
|
|
136
132
|
|
|
137
133
|
The snapshot is only present if [getSnapshotBeforeUpdate](#getsnapshotbeforeupdate) is present and returns non-null.
|
|
@@ -162,8 +158,6 @@ React.Component.componentDidUpdate;
|
|
|
162
158
|
optional componentWillMount(): void;
|
|
163
159
|
```
|
|
164
160
|
|
|
165
|
-
Defined in: `@types/react`
|
|
166
|
-
|
|
167
161
|
Called immediately before mounting occurs, and before [Component.render](https://www.jsdocs.io/package/@types/react#Component.render).
|
|
168
162
|
Avoid introducing any side-effects or subscriptions in this method.
|
|
169
163
|
|
|
@@ -198,8 +192,6 @@ React.Component.componentWillMount;
|
|
|
198
192
|
optional componentWillReceiveProps(nextProps, nextContext): void;
|
|
199
193
|
```
|
|
200
194
|
|
|
201
|
-
Defined in: `@types/react`
|
|
202
|
-
|
|
203
195
|
Called when the component may be receiving new props.
|
|
204
196
|
React may call this even if props have not changed, so be sure to compare new and existing
|
|
205
197
|
props if you only want to handle changes.
|
|
@@ -244,8 +236,6 @@ React.Component.componentWillReceiveProps;
|
|
|
244
236
|
optional componentWillUnmount(): void;
|
|
245
237
|
```
|
|
246
238
|
|
|
247
|
-
Defined in: `@types/react`
|
|
248
|
-
|
|
249
239
|
Called immediately before a component is destroyed. Perform any necessary cleanup in this method, such as
|
|
250
240
|
cancelled network requests, or cleaning up any DOM elements created in `componentDidMount`.
|
|
251
241
|
|
|
@@ -270,8 +260,6 @@ optional componentWillUpdate(
|
|
|
270
260
|
nextContext): void;
|
|
271
261
|
```
|
|
272
262
|
|
|
273
|
-
Defined in: `@types/react`
|
|
274
|
-
|
|
275
263
|
Called immediately before rendering when new props or state is received. Not called for the initial render.
|
|
276
264
|
|
|
277
265
|
Note: You cannot call [Component.setState](#setstate) here.
|
|
@@ -315,8 +303,6 @@ React.Component.componentWillUpdate;
|
|
|
315
303
|
forceUpdate(callback?): void;
|
|
316
304
|
```
|
|
317
305
|
|
|
318
|
-
Defined in: `@types/react`
|
|
319
|
-
|
|
320
306
|
#### Parameters
|
|
321
307
|
|
|
322
308
|
| Parameter | Type |
|
|
@@ -341,8 +327,6 @@ React.Component.forceUpdate;
|
|
|
341
327
|
optional getSnapshotBeforeUpdate(prevProps, prevState): any;
|
|
342
328
|
```
|
|
343
329
|
|
|
344
|
-
Defined in: `@types/react`
|
|
345
|
-
|
|
346
330
|
Runs before React applies the result of [render](https://www.jsdocs.io/package/@types/react#Component.render) to the document, and
|
|
347
331
|
returns an object to be given to [componentDidUpdate](#componentdidupdate). Useful for saving
|
|
348
332
|
things such as scroll position before [render](https://www.jsdocs.io/package/@types/react#Component.render) causes changes to it.
|
|
@@ -375,7 +359,7 @@ React.Component.getSnapshotBeforeUpdate;
|
|
|
375
359
|
render(): ReactNode;
|
|
376
360
|
```
|
|
377
361
|
|
|
378
|
-
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
362
|
+
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L70)
|
|
379
363
|
|
|
380
364
|
#### Returns
|
|
381
365
|
|
|
@@ -395,8 +379,6 @@ React.Component.render;
|
|
|
395
379
|
setState<K>(state, callback?): void;
|
|
396
380
|
```
|
|
397
381
|
|
|
398
|
-
Defined in: `@types/react`
|
|
399
|
-
|
|
400
382
|
#### Type Parameters
|
|
401
383
|
|
|
402
384
|
| Type Parameter |
|
|
@@ -431,8 +413,6 @@ optional shouldComponentUpdate(
|
|
|
431
413
|
nextContext): boolean;
|
|
432
414
|
```
|
|
433
415
|
|
|
434
|
-
Defined in: `@types/react`
|
|
435
|
-
|
|
436
416
|
Called to determine whether the change in props and state should trigger a re-render.
|
|
437
417
|
|
|
438
418
|
`Component` always returns true.
|
|
@@ -468,8 +448,6 @@ React.Component.shouldComponentUpdate;
|
|
|
468
448
|
optional UNSAFE_componentWillMount(): void;
|
|
469
449
|
```
|
|
470
450
|
|
|
471
|
-
Defined in: `@types/react`
|
|
472
|
-
|
|
473
451
|
Called immediately before mounting occurs, and before [Component.render](https://www.jsdocs.io/package/@types/react#Component.render).
|
|
474
452
|
Avoid introducing any side-effects or subscriptions in this method.
|
|
475
453
|
|
|
@@ -506,8 +484,6 @@ React.Component.UNSAFE_componentWillMount;
|
|
|
506
484
|
optional UNSAFE_componentWillReceiveProps(nextProps, nextContext): void;
|
|
507
485
|
```
|
|
508
486
|
|
|
509
|
-
Defined in: `@types/react`
|
|
510
|
-
|
|
511
487
|
Called when the component may be receiving new props.
|
|
512
488
|
React may call this even if props have not changed, so be sure to compare new and existing
|
|
513
489
|
props if you only want to handle changes.
|
|
@@ -557,8 +533,6 @@ optional UNSAFE_componentWillUpdate(
|
|
|
557
533
|
nextContext): void;
|
|
558
534
|
```
|
|
559
535
|
|
|
560
|
-
Defined in: `@types/react`
|
|
561
|
-
|
|
562
536
|
Called immediately before rendering when new props or state is received. Not called for the initial render.
|
|
563
537
|
|
|
564
538
|
Note: You cannot call [Component.setState](#setstate) here.
|
|
@@ -604,7 +578,7 @@ React.Component.UNSAFE_componentWillUpdate;
|
|
|
604
578
|
static getDerivedStateFromError(error): PlayErrorBoundaryState;
|
|
605
579
|
```
|
|
606
580
|
|
|
607
|
-
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
581
|
+
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L62)
|
|
608
582
|
|
|
609
583
|
#### Parameters
|
|
610
584
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function useActor(): PlayActor;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-react/src/useActor.ts:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [packages/play-react/src/useActor.ts:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/useActor.ts#L30)
|
|
10
10
|
|
|
11
11
|
## Returns
|
|
12
12
|
|
|
@@ -6,8 +6,6 @@
|
|
|
6
6
|
function useBoundProp<T>(propValue, bindingPath): [T | undefined, (value) => void];
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: `@json-render/react`
|
|
10
|
-
|
|
11
9
|
Hook for two-way bound props. Returns `[value, setValue]` where:
|
|
12
10
|
|
|
13
11
|
- `value` is the already-resolved prop value (passed through from render props)
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function useSignalEffect(callback): void;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-react/src/useSignalEffect.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [packages/play-react/src/useSignalEffect.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/useSignalEffect.ts#L71)
|
|
10
10
|
|
|
11
11
|
React hook that subscribes to signal changes and runs effect callback
|
|
12
12
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: PlayErrorBoundaryProps
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:14](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:14](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L14)
|
|
6
6
|
|
|
7
7
|
Props for PlayErrorBoundary
|
|
8
8
|
|
|
@@ -10,6 +10,6 @@ Props for PlayErrorBoundary
|
|
|
10
10
|
|
|
11
11
|
| Property | Type | Description | Defined in |
|
|
12
12
|
| ------------------------------------------ | --------------------------- | --------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
-
| <a id="property-children"></a> `children` | `ReactNode` | Child components to render | [packages/play-react/src/PlayErrorBoundary.tsx:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
14
|
-
| <a id="property-fallback"></a> `fallback?` | `ReactNode` | Fallback UI to render when a child component throws. Defaults to null. | [packages/play-react/src/PlayErrorBoundary.tsx:16](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
15
|
-
| <a id="property-onerror"></a> `onError?` | (`error`, `info`) => `void` | Optional error handler callback — forwards errors to observability tools (Sentry, etc.) | [packages/play-react/src/PlayErrorBoundary.tsx:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
13
|
+
| <a id="property-children"></a> `children` | `ReactNode` | Child components to render | [packages/play-react/src/PlayErrorBoundary.tsx:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L18) |
|
|
14
|
+
| <a id="property-fallback"></a> `fallback?` | `ReactNode` | Fallback UI to render when a child component throws. Defaults to null. | [packages/play-react/src/PlayErrorBoundary.tsx:16](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L16) |
|
|
15
|
+
| <a id="property-onerror"></a> `onError?` | (`error`, `info`) => `void` | Optional error handler callback — forwards errors to observability tools (Sentry, etc.) | [packages/play-react/src/PlayErrorBoundary.tsx:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L20) |
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: PlayErrorBoundaryState
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [packages/play-react/src/PlayErrorBoundary.tsx:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L28)
|
|
6
6
|
|
|
7
7
|
Internal state shape for PlayErrorBoundary
|
|
8
8
|
|
|
@@ -10,5 +10,5 @@ Internal state shape for PlayErrorBoundary
|
|
|
10
10
|
|
|
11
11
|
| Property | Type | Defined in |
|
|
12
12
|
| ----------------------------------------- | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
-
| <a id="property-error"></a> `error` | `Error` \| `null` | [packages/play-react/src/PlayErrorBoundary.tsx:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
14
|
-
| <a id="property-haserror"></a> `hasError` | `boolean` | [packages/play-react/src/PlayErrorBoundary.tsx:29](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
13
|
+
| <a id="property-error"></a> `error` | `Error` \| `null` | [packages/play-react/src/PlayErrorBoundary.tsx:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L30) |
|
|
14
|
+
| <a id="property-haserror"></a> `hasError` | `boolean` | [packages/play-react/src/PlayErrorBoundary.tsx:29](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayErrorBoundary.tsx#L29) |
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: PlayRendererProps\<TLogic\>
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-react/src/types.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [packages/play-react/src/types.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/types.ts#L33)
|
|
6
6
|
|
|
7
7
|
Props for PlayRenderer component
|
|
8
8
|
|
|
@@ -16,9 +16,9 @@ Props for PlayRenderer component
|
|
|
16
16
|
|
|
17
17
|
| Property | Type | Description | Defined in |
|
|
18
18
|
| ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
19
|
-
| <a id="property-actions"></a> `actions?` | `object` | Maps json-render action names to XState event type strings. Values are constrained to `EventFromLogic<TLogic>["type"]` — passing a non-existent event type string is a compile error when TLogic is specified. | [packages/play-react/src/types.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
20
|
-
| <a id="property-actor"></a> `actor` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<`TLogic`, [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Viewable`](../../play-actor/interfaces/Viewable.md) | Actor instance with currentView signal (requires Viewable capability) | [packages/play-react/src/types.ts:35](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
21
|
-
| <a id="property-fallback"></a> `fallback?` | `ReactNode` | Optional component shown when currentView is null | [packages/play-react/src/types.ts:51](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
22
|
-
| <a id="property-onerror"></a> `onError?` | (`error`, `info`) => `void` | Optional callback invoked when a catalog component throws during render. Receives the error and React ErrorInfo — use to forward to Sentry, Datadog, etc. | [packages/play-react/src/types.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
23
|
-
| <a id="property-registry"></a> `registry` | `ComponentRegistry` | ComponentRegistry from defineRegistry() in @json-render/react | [packages/play-react/src/types.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
24
|
-
| <a id="property-store"></a> `store?` | `StateStore` | Optional external StateStore (e.g. from @json-render/xstate). When provided, PlayRenderer operates in controlled mode — spec.state is ignored and the store is the single source of truth for UI state. When omitted, a fresh @xstate/store atom is created internally per view transition, seeded from spec.state. | [packages/play-react/src/types.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
19
|
+
| <a id="property-actions"></a> `actions?` | `object` | Maps json-render action names to XState event type strings. Values are constrained to `EventFromLogic<TLogic>["type"]` — passing a non-existent event type string is a compile error when TLogic is specified. | [packages/play-react/src/types.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/types.ts#L70) |
|
|
20
|
+
| <a id="property-actor"></a> `actor` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<`TLogic`, [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Viewable`](../../play-actor/interfaces/Viewable.md) | Actor instance with currentView signal (requires Viewable capability) | [packages/play-react/src/types.ts:35](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/types.ts#L35) |
|
|
21
|
+
| <a id="property-fallback"></a> `fallback?` | `ReactNode` | Optional component shown when currentView is null | [packages/play-react/src/types.ts:51](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/types.ts#L51) |
|
|
22
|
+
| <a id="property-onerror"></a> `onError?` | (`error`, `info`) => `void` | Optional callback invoked when a catalog component throws during render. Receives the error and React ErrorInfo — use to forward to Sentry, Datadog, etc. | [packages/play-react/src/types.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/types.ts#L63) |
|
|
23
|
+
| <a id="property-registry"></a> `registry` | `ComponentRegistry` | ComponentRegistry from defineRegistry() in @json-render/react | [packages/play-react/src/types.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/types.ts#L38) |
|
|
24
|
+
| <a id="property-store"></a> `store?` | `StateStore` | Optional external StateStore (e.g. from @json-render/xstate). When provided, PlayRenderer operates in controlled mode — spec.state is ignored and the store is the single source of truth for UI state. When omitted, a fresh @xstate/store atom is created internally per view transition, seeded from spec.state. | [packages/play-react/src/types.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/types.ts#L48) |
|
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
type PlayActor = AbstractActor<AnyActorLogic>;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-react/src/useActor.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [packages/play-react/src/useActor.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/useActor.ts#L26)
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
const PlayRenderer: React.FC<PlayRendererProps>;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-react/src/PlayRenderer.tsx:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [packages/play-react/src/PlayRenderer.tsx:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.28/packages/play-react/src/PlayRenderer.tsx#L65)
|
|
10
10
|
|
|
11
11
|
Main renderer component that subscribes to actor signals and renders UI
|
|
12
12
|
via @json-render/react Renderer.
|