@xmachines/docs 1.0.0-beta.31 → 1.0.0-beta.33
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/README.md +5 -0
- package/api/@xmachines/play/classes/NonNullableError.md +189 -0
- package/api/@xmachines/play/classes/PlayError.md +9 -4
- package/api/@xmachines/play/functions/assertNonNullable.md +56 -0
- package/api/@xmachines/play/type-aliases/PlayEvent.md +2 -2
- package/api/@xmachines/play-actor/README.md +9 -9
- package/api/@xmachines/play-actor/classes/AbstractActor.md +3 -3
- 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-dom/README.md +228 -39
- package/api/@xmachines/play-dom/classes/PlayRenderer.md +39 -26
- package/api/@xmachines/play-dom/functions/connectRenderer.md +39 -20
- package/api/@xmachines/play-dom/functions/createRenderer.md +43 -0
- package/api/@xmachines/play-dom/functions/defineRegistry.md +5 -5
- package/api/@xmachines/play-dom/functions/renderSpec.md +43 -9
- package/api/@xmachines/play-dom/interfaces/ComponentContext.md +7 -7
- package/api/@xmachines/play-dom/interfaces/ConnectRendererOptions.md +11 -9
- package/api/@xmachines/play-dom/interfaces/DefineRegistryResult.md +7 -7
- package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +14 -9
- package/api/@xmachines/play-dom/interfaces/EventHandle.md +4 -4
- package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +7 -5
- package/api/@xmachines/play-dom/type-aliases/ActionFn.md +23 -7
- package/api/@xmachines/play-dom/type-aliases/Actions.md +1 -1
- package/api/@xmachines/play-dom/type-aliases/BaseComponentProps.md +114 -0
- package/api/@xmachines/play-dom/type-aliases/CatalogHasActions.md +25 -0
- package/api/@xmachines/play-dom/type-aliases/ComponentFn.md +1 -1
- package/api/@xmachines/play-dom/type-aliases/ComponentRegistry.md +1 -1
- package/api/@xmachines/play-dom/type-aliases/DefineRegistryOptions.md +39 -0
- package/api/@xmachines/play-dom/type-aliases/DomComponentRenderer.md +1 -1
- package/api/@xmachines/play-dom/type-aliases/DomRegistry.md +1 -1
- package/api/@xmachines/play-dom/type-aliases/DomSchema.md +1 -1
- package/api/@xmachines/play-dom/type-aliases/SetState.md +30 -0
- package/api/@xmachines/play-dom/variables/schema.md +1 -1
- package/api/@xmachines/play-dom-router/README.md +166 -59
- 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-react/README.md +1 -0
- package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +5 -5
- package/api/@xmachines/play-react/functions/useActor.md +1 -1
- package/api/@xmachines/play-react/functions/useSignalEffect.md +1 -1
- 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 +9 -8
- package/api/@xmachines/play-react/type-aliases/PlayActor.md +1 -1
- package/api/@xmachines/play-react/type-aliases/RenderErrorHandler.md +22 -0
- package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
- 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-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/type-aliases/WatcherNotify.md +1 -1
- package/api/@xmachines/play-solid/README.md +1 -0
- package/api/@xmachines/play-solid/functions/useActor.md +1 -1
- package/api/@xmachines/play-solid/interfaces/PlayRendererProps.md +9 -8
- package/api/@xmachines/play-solid/type-aliases/PlayActor.md +1 -1
- package/api/@xmachines/play-solid/type-aliases/RenderErrorHandler.md +22 -0
- package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-solid-router/README.md +2 -2
- 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 +28 -1
- package/api/@xmachines/play-solid-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +3 -3
- package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +6 -6
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +7 -7
- 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-svelte/README.md +52 -12
- package/api/@xmachines/play-svelte/functions/defineRegistry.md +12 -35
- package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +24 -0
- package/api/@xmachines/play-svelte/interfaces/PlayRendererProps.md +9 -8
- package/api/@xmachines/play-svelte/type-aliases/ActionFn.md +30 -0
- package/api/@xmachines/play-svelte/type-aliases/Actions.md +17 -0
- package/api/@xmachines/play-svelte/type-aliases/RenderErrorHandler.md +23 -0
- package/api/@xmachines/play-svelte/type-aliases/SetState.md +21 -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 +8 -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 +7 -7
- 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 +4 -4
- 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 +9 -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-vue/README.md +1 -0
- 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/interfaces/PlayRendererProps.md +7 -6
- package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
- package/api/@xmachines/play-vue/type-aliases/PlayActor.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/RenderErrorHandler.md +22 -0
- package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-vue-router/README.md +3 -3
- 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 +39 -26
- 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-xstate/classes/PlayerActor.md +12 -12
- 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/README.md +47 -47
- package/api/@xmachines/shared/functions/defineXmVitestConfig.md +1 -1
- package/api/@xmachines/shared/functions/xmAliases.md +1 -1
- package/api/_media/README.md +321 -0
- package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +1 -1
- package/examples/@xmachines/play-dom-demo/functions/initShell.md +1 -1
- package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/About.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Contact.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Home.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Login.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Navigation.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Overview.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Profile.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Settings.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Stats.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +1 -1
- package/examples/@xmachines/play-react-demo/functions/App.md +1 -1
- package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/About.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Contact.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Dashboard.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Home.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Login.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/NavBar.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/NavBarView.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Navigation.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Overview.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Profile.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Settings.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Shell.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Stats.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/authCatalog.md +1 -1
- package/examples/@xmachines/play-react-router-demo/README.md +1 -3
- package/examples/@xmachines/play-solid-demo/functions/App.md +1 -1
- package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/About.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Contact.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Home.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Login.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/NavBar.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Navigation.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Overview.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Profile.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Settings.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Shell.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Stats.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +1 -1
- package/examples/@xmachines/play-solid-router-demo/README.md +1 -3
- package/examples/README.md +2 -2
- package/examples/form-validation.md +80 -0
- package/examples/routing-patterns.md +9 -19
- package/guides/getting-started.md +51 -38
- package/guides/installation.md +6 -6
- package/package.json +6 -6
- package/rfc/play.md +19 -19
- package/api/@xmachines/play-dom/interfaces/DefineRegistryOptions.md +0 -23
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
type DomSchema = typeof schema;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [json-render/schema.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [json-render/schema.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom/src/json-render/schema.ts#L60)
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
[Documentation](../../../README.md) / [@xmachines/play-dom](../README.md) / SetState
|
|
2
|
+
|
|
3
|
+
# Type Alias: SetState
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type SetState = (updater) => void;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [json-render/types.ts:45](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom/src/json-render/types.ts#L45)
|
|
10
|
+
|
|
11
|
+
Function to update the local state store.
|
|
12
|
+
|
|
13
|
+
Mirrors `SetState` from @json-render/react, /solid, /vue, /svelte.
|
|
14
|
+
In the DOM renderer, this writes through to the @xstate/store-backed StateStore.
|
|
15
|
+
|
|
16
|
+
## Parameters
|
|
17
|
+
|
|
18
|
+
| Parameter | Type |
|
|
19
|
+
| --------- | ------------------------------------------- |
|
|
20
|
+
| `updater` | (`prev`) => `Record`\<`string`, `unknown`\> |
|
|
21
|
+
|
|
22
|
+
## Returns
|
|
23
|
+
|
|
24
|
+
`void`
|
|
25
|
+
|
|
26
|
+
## Example
|
|
27
|
+
|
|
28
|
+
```ts
|
|
29
|
+
setState((prev) => ({ ...prev, username: "alice" }));
|
|
30
|
+
```
|
|
@@ -46,7 +46,7 @@ const schema: Schema<{
|
|
|
46
46
|
}>;
|
|
47
47
|
```
|
|
48
48
|
|
|
49
|
-
Defined in: [json-render/schema.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
49
|
+
Defined in: [json-render/schema.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom/src/json-render/schema.ts#L20)
|
|
50
50
|
|
|
51
51
|
The schema for @xmachines/play-dom
|
|
52
52
|
|
|
@@ -4,17 +4,18 @@
|
|
|
4
4
|
|
|
5
5
|
**Vanilla DOM router integration for XMachines**
|
|
6
6
|
|
|
7
|
-
Browser History API wrapper, framework-agnostic router, and bidirectional actor ↔ URL synchronization for XState v5 machines —
|
|
7
|
+
Browser History API wrapper, framework-agnostic router, and bidirectional actor ↔ URL synchronization for XState v5 machines — no JSX or framework dependency.
|
|
8
8
|
|
|
9
9
|
## Overview
|
|
10
10
|
|
|
11
|
-
`@xmachines/play-dom-router`
|
|
11
|
+
`@xmachines/play-dom-router` provides the **concrete browser implementations** intentionally separated from the environment-agnostic `@xmachines/play-router` core:
|
|
12
12
|
|
|
13
|
-
| Export
|
|
14
|
-
|
|
|
15
|
-
| `createBrowserHistory` | Wraps `window.history` with
|
|
16
|
-
| `createRouter` | Lightweight router
|
|
17
|
-
| `connectRouter` | Bidirectional actor ↔ URL
|
|
13
|
+
| Export | Description |
|
|
14
|
+
| ------------------------------- | ------------------------------------------------------------------------------------------------------- |
|
|
15
|
+
| `createBrowserHistory(options)` | Wraps `window.history` with patch-based `pushState`/`replaceState` interception and a `subscribe()` API |
|
|
16
|
+
| `createRouter(options)` | Lightweight router binding a `BrowserHistory` to a route tree |
|
|
17
|
+
| `connectRouter(options)` | Bidirectional actor ↔ URL sync — history changes → `play.route`, `currentRoute` → `history.push` |
|
|
18
|
+
| `createRouteMap(machine)` | Build a `RouteMap` from a machine's `meta.route` declarations |
|
|
18
19
|
|
|
19
20
|
By keeping these in a dedicated package, server-side and non-browser environments can depend on `@xmachines/play-router` without pulling in any DOM APIs.
|
|
20
21
|
|
|
@@ -23,6 +24,7 @@ For JSX frameworks, use the framework adapters instead:
|
|
|
23
24
|
- `@xmachines/play-react` + `@xmachines/play-react-router`
|
|
24
25
|
- `@xmachines/play-vue` + `@xmachines/play-vue-router`
|
|
25
26
|
- `@xmachines/play-solid` + `@xmachines/play-solid-router`
|
|
27
|
+
- `@xmachines/play-svelte` + `@xmachines/play-sveltekit-router`
|
|
26
28
|
|
|
27
29
|
## Installation
|
|
28
30
|
|
|
@@ -30,114 +32,219 @@ For JSX frameworks, use the framework adapters instead:
|
|
|
30
32
|
npm install @xmachines/play-dom-router @xmachines/play-router
|
|
31
33
|
```
|
|
32
34
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
- `xstate` ^5.0.0 — State machine runtime
|
|
35
|
+
Peer dependencies: `xstate ^5.0.0`
|
|
36
36
|
|
|
37
37
|
## Quick Start
|
|
38
38
|
|
|
39
39
|
```typescript
|
|
40
|
-
import {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
40
|
+
import {
|
|
41
|
+
createBrowserHistory,
|
|
42
|
+
createRouter,
|
|
43
|
+
connectRouter,
|
|
44
|
+
createRouteMap,
|
|
45
|
+
} from "@xmachines/play-dom-router";
|
|
46
|
+
import { definePlayer, formatPlayRouteTransitions } from "@xmachines/play-xstate";
|
|
47
|
+
import { setup } from "xstate";
|
|
48
|
+
import type { PlayRouteEvent } from "@xmachines/play-router";
|
|
49
|
+
|
|
50
|
+
const machine = setup({
|
|
51
|
+
types: {
|
|
52
|
+
events: {} as PlayRouteEvent,
|
|
53
|
+
context: {} as { params: Record<string, string>; query: Record<string, string> },
|
|
54
|
+
},
|
|
55
|
+
}).createMachine(
|
|
56
|
+
formatPlayRouteTransitions({
|
|
57
|
+
id: "app",
|
|
58
|
+
initial: "home",
|
|
59
|
+
context: { params: {}, query: {} },
|
|
60
|
+
states: {
|
|
61
|
+
home: { id: "home", meta: { route: "/" } },
|
|
62
|
+
about: { id: "about", meta: { route: "/about" } },
|
|
63
|
+
},
|
|
64
|
+
}),
|
|
65
|
+
);
|
|
66
|
+
|
|
67
|
+
const routeMap = createRouteMap(machine);
|
|
49
68
|
const history = createBrowserHistory({ window });
|
|
50
|
-
const router = createRouter({ routeTree, history });
|
|
69
|
+
const router = createRouter({ routeTree: machine, history });
|
|
51
70
|
|
|
52
|
-
|
|
53
|
-
const actor = createActor(machine);
|
|
71
|
+
const actor = definePlayer({ machine })();
|
|
54
72
|
actor.start();
|
|
55
73
|
|
|
56
|
-
//
|
|
74
|
+
// Bidirectional sync: actor ↔ browser URL
|
|
57
75
|
const disconnect = connectRouter({ actor, router, routeMap });
|
|
58
76
|
|
|
59
|
-
//
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
});
|
|
77
|
+
// Cleanup on unload
|
|
78
|
+
window.addEventListener("beforeunload", () => {
|
|
79
|
+
disconnect();
|
|
80
|
+
router.destroy();
|
|
81
|
+
actor.stop();
|
|
65
82
|
});
|
|
66
|
-
watcher.watch(actor.currentView);
|
|
67
|
-
|
|
68
|
-
// Later: cleanup
|
|
69
|
-
disconnect();
|
|
70
|
-
router.destroy();
|
|
71
|
-
watcher.unwatch(actor.currentView);
|
|
72
83
|
```
|
|
73
84
|
|
|
74
85
|
## API
|
|
75
86
|
|
|
76
87
|
### `createBrowserHistory(options)`
|
|
77
88
|
|
|
78
|
-
Wraps `window.history` with patch-based pushState
|
|
89
|
+
Wraps `window.history` with patch-based `pushState`/`replaceState` interception and popstate subscription.
|
|
79
90
|
|
|
80
91
|
```typescript
|
|
81
92
|
const history = createBrowserHistory({ window });
|
|
82
93
|
|
|
83
94
|
const unsubscribe = history.subscribe((location) => {
|
|
84
|
-
console.log("URL changed:", location.pathname);
|
|
95
|
+
console.log("URL changed:", location.pathname, location.search, location.hash);
|
|
85
96
|
});
|
|
86
97
|
|
|
87
98
|
history.push("/dashboard");
|
|
88
99
|
history.replace("/login");
|
|
89
|
-
history.back();
|
|
100
|
+
history.back(); // async — popstate fires on next tick
|
|
101
|
+
history.forward();
|
|
102
|
+
history.go(-2);
|
|
90
103
|
|
|
91
|
-
// Cleanup
|
|
104
|
+
// Cleanup — idempotent, safe to call multiple times
|
|
92
105
|
unsubscribe();
|
|
93
|
-
history.destroy();
|
|
106
|
+
history.destroy(); // restores original pushState/replaceState
|
|
94
107
|
```
|
|
95
108
|
|
|
96
|
-
`createBrowserHistory`
|
|
109
|
+
**Architecture:** `createBrowserHistory` patches `window.history.pushState` and `window.history.replaceState` to intercept programmatic navigation. Browser back/forward fires a `popstate` event which the history object listens to via `addEventListener`. Multiple wrappers on the same `window` share one patch via a ref-counted `WeakMap` — the original methods are restored only when the last wrapper is destroyed.
|
|
110
|
+
|
|
111
|
+
`createBrowserHistory` accepts a `BrowserWindow` structural interface, so JSDOM and custom test doubles work without casting:
|
|
112
|
+
|
|
113
|
+
```typescript
|
|
114
|
+
// In tests — no casting needed
|
|
115
|
+
const history = createBrowserHistory({ window: jsdomWindow });
|
|
116
|
+
```
|
|
97
117
|
|
|
98
118
|
### `createRouter(options)`
|
|
99
119
|
|
|
100
|
-
Creates a lightweight router that binds a `BrowserHistory` to a
|
|
120
|
+
Creates a lightweight router that binds a `BrowserHistory` to a route tree extracted from your machine.
|
|
101
121
|
|
|
102
122
|
```typescript
|
|
103
|
-
const router = createRouter({ routeTree, history });
|
|
123
|
+
const router = createRouter({ routeTree: machine, history });
|
|
104
124
|
|
|
105
|
-
// Returns
|
|
106
|
-
|
|
125
|
+
// Returns a VanillaRouter:
|
|
126
|
+
// { history: BrowserHistory, destroy(): void }
|
|
127
|
+
router.destroy(); // removes event listeners, destroys the BrowserHistory
|
|
107
128
|
```
|
|
108
129
|
|
|
109
130
|
### `connectRouter(options)`
|
|
110
131
|
|
|
111
|
-
|
|
132
|
+
Establishes bidirectional synchronization between an actor and a `VanillaRouter`:
|
|
112
133
|
|
|
113
|
-
-
|
|
114
|
-
-
|
|
134
|
+
- `actor.currentRoute` signal → `history.push(url)` (actor-driven URL updates)
|
|
135
|
+
- Browser URL change → `actor.send({ type: "play.route", to: "#stateId" })` (URL-driven state)
|
|
115
136
|
- Single `isProcessingNavigation` guard prevents circular updates
|
|
116
137
|
|
|
117
138
|
```typescript
|
|
118
139
|
const disconnect = connectRouter({ actor, router, routeMap });
|
|
119
140
|
|
|
120
|
-
// Later
|
|
141
|
+
// Later — stop all sync and remove listeners
|
|
121
142
|
disconnect();
|
|
122
143
|
```
|
|
123
144
|
|
|
124
|
-
|
|
145
|
+
### `createRouteMap(machine)`
|
|
125
146
|
|
|
126
|
-
|
|
147
|
+
Builds a `RouteMap` from a machine's `meta.route` declarations. Re-exported from `@xmachines/play-router` for convenience.
|
|
127
148
|
|
|
128
149
|
```typescript
|
|
129
|
-
|
|
130
|
-
|
|
150
|
+
const routeMap = createRouteMap(machine);
|
|
151
|
+
// routeMap maps state IDs ↔ URL patterns
|
|
152
|
+
// Used by connectRouter to translate between actor state and browser URLs
|
|
153
|
+
```
|
|
131
154
|
|
|
132
|
-
|
|
133
|
-
const stopRenderer = PlayRenderer.connect(actor, registry, document.getElementById("app"));
|
|
155
|
+
## Pairing with `@xmachines/play-dom` (rendering)
|
|
134
156
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
157
|
+
Add declarative JSON-render view rendering on top of the routing layer:
|
|
158
|
+
|
|
159
|
+
```typescript
|
|
160
|
+
import {
|
|
161
|
+
createBrowserHistory,
|
|
162
|
+
createRouter,
|
|
163
|
+
connectRouter,
|
|
164
|
+
createRouteMap,
|
|
165
|
+
} from "@xmachines/play-dom-router";
|
|
166
|
+
import { createRenderer, schema } from "@xmachines/play-dom";
|
|
167
|
+
import { defineCatalog } from "@json-render/core";
|
|
168
|
+
import { z } from "zod";
|
|
169
|
+
import type { ComponentFn } from "@xmachines/play-dom";
|
|
170
|
+
|
|
171
|
+
// 1. Define catalog + components
|
|
172
|
+
const catalog = defineCatalog(schema, {
|
|
173
|
+
components: {
|
|
174
|
+
Home: { props: z.object({ title: z.string() }) },
|
|
175
|
+
About: { props: z.object({ title: z.string() }) },
|
|
176
|
+
},
|
|
177
|
+
actions: {
|
|
178
|
+
route: { params: z.object({ to: z.string() }) },
|
|
179
|
+
},
|
|
180
|
+
});
|
|
181
|
+
|
|
182
|
+
const Home: ComponentFn<typeof catalog, "Home"> = ({ props }) => {
|
|
183
|
+
const el = document.createElement("section");
|
|
184
|
+
el.textContent = props.title;
|
|
185
|
+
return el;
|
|
186
|
+
};
|
|
187
|
+
const About: ComponentFn<typeof catalog, "About"> = ({ props }) => {
|
|
188
|
+
const el = document.createElement("section");
|
|
189
|
+
el.textContent = props.title;
|
|
190
|
+
return el;
|
|
191
|
+
};
|
|
192
|
+
|
|
193
|
+
// 2. Create renderer factory
|
|
194
|
+
const mount = createRenderer(catalog, { Home, About });
|
|
195
|
+
|
|
196
|
+
// 3. Wire router + renderer
|
|
197
|
+
const routeMap = createRouteMap(machine);
|
|
198
|
+
const history = createBrowserHistory({ window });
|
|
199
|
+
const router = createRouter({ routeTree: machine, history });
|
|
200
|
+
const actor = definePlayer({ machine })();
|
|
201
|
+
actor.start();
|
|
202
|
+
|
|
203
|
+
const disconnectRouter = connectRouter({ actor, router, routeMap });
|
|
204
|
+
const disconnectRenderer = mount(actor, document.getElementById("app")!);
|
|
205
|
+
|
|
206
|
+
// Cleanup
|
|
207
|
+
window.addEventListener("beforeunload", () => {
|
|
208
|
+
disconnectRenderer();
|
|
209
|
+
disconnectRouter();
|
|
210
|
+
router.destroy();
|
|
211
|
+
actor.stop();
|
|
212
|
+
});
|
|
139
213
|
```
|
|
140
214
|
|
|
215
|
+
## `BrowserHistory` interface
|
|
216
|
+
|
|
217
|
+
```typescript
|
|
218
|
+
interface BrowserHistory {
|
|
219
|
+
readonly location: {
|
|
220
|
+
pathname: string;
|
|
221
|
+
search: string;
|
|
222
|
+
hash: string;
|
|
223
|
+
state: unknown;
|
|
224
|
+
};
|
|
225
|
+
push(path: string, state?: unknown): void;
|
|
226
|
+
replace(path: string, state?: unknown): void;
|
|
227
|
+
go(delta: number): void;
|
|
228
|
+
back(): void;
|
|
229
|
+
forward(): void;
|
|
230
|
+
subscribe(listener: (location: BrowserHistory["location"]) => void): () => void;
|
|
231
|
+
createHref(path: string): string;
|
|
232
|
+
/**
|
|
233
|
+
* Restore original pushState/replaceState. Idempotent. Cooperates with
|
|
234
|
+
* other wrappers sharing the same window — originals restored only after
|
|
235
|
+
* the last wrapper is destroyed.
|
|
236
|
+
*/
|
|
237
|
+
destroy(): void;
|
|
238
|
+
}
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
## Learn More
|
|
242
|
+
|
|
243
|
+
- [Vanilla DOM renderer `@xmachines/play-dom`](../play-dom/README.md)
|
|
244
|
+
- [Router core `@xmachines/play-router`](../play-router/README.md)
|
|
245
|
+
- [Routing Patterns guide](../../packages/docs/examples/routing-patterns.md)
|
|
246
|
+
- [Play RFC](../../packages/docs/rfc/play.md)
|
|
247
|
+
|
|
141
248
|
## Interfaces
|
|
142
249
|
|
|
143
250
|
- [BrowserHistory](interfaces/BrowserHistory.md)
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function connectRouter(options): () => void;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-dom-router/src/connect-router.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [play-dom-router/src/connect-router.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/connect-router.ts#L48)
|
|
10
10
|
|
|
11
11
|
Connect vanilla router to actor (pure browser integration).
|
|
12
12
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function createBrowserHistory(options): BrowserHistory;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:120](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:120](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L120)
|
|
10
10
|
|
|
11
11
|
Create browser history that wraps window.history
|
|
12
12
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function createRouteMap(machine): RouteMap;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-router/src/create-route-map-from-machine.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [play-router/src/create-route-map-from-machine.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-router/src/create-route-map-from-machine.ts#L26)
|
|
10
10
|
|
|
11
11
|
Create a `BaseRouteMap` from an XState state machine.
|
|
12
12
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function createRouter(options): VanillaRouter;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-dom-router/src/create-router.ts:52](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [play-dom-router/src/create-router.ts:52](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-router.ts#L52)
|
|
10
10
|
|
|
11
11
|
Create vanilla router for framework-agnostic routing.
|
|
12
12
|
|
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: BrowserHistory
|
|
4
4
|
|
|
5
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:1](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:1](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L1)
|
|
6
6
|
|
|
7
7
|
## Properties
|
|
8
8
|
|
|
9
9
|
| Property | Modifier | Type | Description | Defined in |
|
|
10
10
|
| ----------------------------------------- | ---------- | --------- | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
11
|
-
| <a id="property-location"></a> `location` | `readonly` | `object` | Get current location state | [play-dom-router/src/create-browser-history.ts:5](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
12
|
-
| `location.hash` | `public` | `string` | - | [play-dom-router/src/create-browser-history.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
13
|
-
| `location.pathname` | `public` | `string` | - | [play-dom-router/src/create-browser-history.ts:6](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
14
|
-
| `location.search` | `public` | `string` | - | [play-dom-router/src/create-browser-history.ts:7](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
15
|
-
| `location.state` | `public` | `unknown` | - | [play-dom-router/src/create-browser-history.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
11
|
+
| <a id="property-location"></a> `location` | `readonly` | `object` | Get current location state | [play-dom-router/src/create-browser-history.ts:5](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L5) |
|
|
12
|
+
| `location.hash` | `public` | `string` | - | [play-dom-router/src/create-browser-history.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L8) |
|
|
13
|
+
| `location.pathname` | `public` | `string` | - | [play-dom-router/src/create-browser-history.ts:6](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L6) |
|
|
14
|
+
| `location.search` | `public` | `string` | - | [play-dom-router/src/create-browser-history.ts:7](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L7) |
|
|
15
|
+
| `location.state` | `public` | `unknown` | - | [play-dom-router/src/create-browser-history.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L9) |
|
|
16
16
|
|
|
17
17
|
## Methods
|
|
18
18
|
|
|
@@ -22,7 +22,7 @@ Defined in: [play-dom-router/src/create-browser-history.ts:1](https://gitlab.com
|
|
|
22
22
|
back(): void;
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
25
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L26)
|
|
26
26
|
|
|
27
27
|
#### Returns
|
|
28
28
|
|
|
@@ -36,7 +36,7 @@ Defined in: [play-dom-router/src/create-browser-history.ts:26](https://gitlab.co
|
|
|
36
36
|
createHref(path): string;
|
|
37
37
|
```
|
|
38
38
|
|
|
39
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
39
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L38)
|
|
40
40
|
|
|
41
41
|
Create href from path
|
|
42
42
|
|
|
@@ -58,7 +58,7 @@ Create href from path
|
|
|
58
58
|
destroy(): void;
|
|
59
59
|
```
|
|
60
60
|
|
|
61
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
61
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L47)
|
|
62
62
|
|
|
63
63
|
Cleanup.
|
|
64
64
|
|
|
@@ -78,7 +78,7 @@ wrapper is destroyed.
|
|
|
78
78
|
forward(): void;
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:27](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
81
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:27](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L27)
|
|
82
82
|
|
|
83
83
|
#### Returns
|
|
84
84
|
|
|
@@ -92,7 +92,7 @@ Defined in: [play-dom-router/src/create-browser-history.ts:27](https://gitlab.co
|
|
|
92
92
|
go(delta): void;
|
|
93
93
|
```
|
|
94
94
|
|
|
95
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:25](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
95
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:25](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L25)
|
|
96
96
|
|
|
97
97
|
Go back/forward
|
|
98
98
|
|
|
@@ -114,7 +114,7 @@ Go back/forward
|
|
|
114
114
|
push(path, state?): void;
|
|
115
115
|
```
|
|
116
116
|
|
|
117
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:15](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
117
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:15](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L15)
|
|
118
118
|
|
|
119
119
|
Push new URL to history
|
|
120
120
|
|
|
@@ -137,7 +137,7 @@ Push new URL to history
|
|
|
137
137
|
replace(path, state?): void;
|
|
138
138
|
```
|
|
139
139
|
|
|
140
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
140
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L20)
|
|
141
141
|
|
|
142
142
|
Replace current URL in history
|
|
143
143
|
|
|
@@ -160,7 +160,7 @@ Replace current URL in history
|
|
|
160
160
|
subscribe(listener): () => void;
|
|
161
161
|
```
|
|
162
162
|
|
|
163
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
163
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L33)
|
|
164
164
|
|
|
165
165
|
Subscribe to history changes
|
|
166
166
|
Returns unsubscribe function
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: BrowserWindow
|
|
4
4
|
|
|
5
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L59)
|
|
6
6
|
|
|
7
7
|
Minimal window interface for createBrowserHistory
|
|
8
8
|
|
|
@@ -14,17 +14,17 @@ Avoids coupling to `Window & typeof globalThis` which varies across environments
|
|
|
14
14
|
|
|
15
15
|
| Property | Modifier | Type | Defined in |
|
|
16
16
|
| ----------------------------------------- | ---------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
17
|
-
| <a id="property-history"></a> `history` | `public` | `object` | [play-dom-router/src/create-browser-history.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
18
|
-
| `history.state` | `readonly` | `unknown` | [play-dom-router/src/create-browser-history.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
19
|
-
| `history.back` | `public` | `void` | [play-dom-router/src/create-browser-history.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
20
|
-
| `history.forward` | `public` | `void` | [play-dom-router/src/create-browser-history.ts:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
21
|
-
| `history.go` | `public` | `void` | [play-dom-router/src/create-browser-history.ts:64](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
22
|
-
| `history.pushState` | `public` | `void` | [play-dom-router/src/create-browser-history.ts:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
23
|
-
| `history.replaceState` | `public` | `void` | [play-dom-router/src/create-browser-history.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
24
|
-
| <a id="property-location"></a> `location` | `public` | `object` | [play-dom-router/src/create-browser-history.ts:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
25
|
-
| `location.hash` | `readonly` | `string` | [play-dom-router/src/create-browser-history.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
26
|
-
| `location.pathname` | `readonly` | `string` | [play-dom-router/src/create-browser-history.ts:69](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
27
|
-
| `location.search` | `readonly` | `string` | [play-dom-router/src/create-browser-history.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
17
|
+
| <a id="property-history"></a> `history` | `public` | `object` | [play-dom-router/src/create-browser-history.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L60) |
|
|
18
|
+
| `history.state` | `readonly` | `unknown` | [play-dom-router/src/create-browser-history.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L61) |
|
|
19
|
+
| `history.back` | `public` | `void` | [play-dom-router/src/create-browser-history.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L65) |
|
|
20
|
+
| `history.forward` | `public` | `void` | [play-dom-router/src/create-browser-history.ts:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L66) |
|
|
21
|
+
| `history.go` | `public` | `void` | [play-dom-router/src/create-browser-history.ts:64](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L64) |
|
|
22
|
+
| `history.pushState` | `public` | `void` | [play-dom-router/src/create-browser-history.ts:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L62) |
|
|
23
|
+
| `history.replaceState` | `public` | `void` | [play-dom-router/src/create-browser-history.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L63) |
|
|
24
|
+
| <a id="property-location"></a> `location` | `public` | `object` | [play-dom-router/src/create-browser-history.ts:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L68) |
|
|
25
|
+
| `location.hash` | `readonly` | `string` | [play-dom-router/src/create-browser-history.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L71) |
|
|
26
|
+
| `location.pathname` | `readonly` | `string` | [play-dom-router/src/create-browser-history.ts:69](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L69) |
|
|
27
|
+
| `location.search` | `readonly` | `string` | [play-dom-router/src/create-browser-history.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L70) |
|
|
28
28
|
|
|
29
29
|
## Methods
|
|
30
30
|
|
|
@@ -34,7 +34,7 @@ Avoids coupling to `Window & typeof globalThis` which varies across environments
|
|
|
34
34
|
addEventListener(type, listener): void;
|
|
35
35
|
```
|
|
36
36
|
|
|
37
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:73](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
37
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:73](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L73)
|
|
38
38
|
|
|
39
39
|
#### Parameters
|
|
40
40
|
|
|
@@ -55,7 +55,7 @@ Defined in: [play-dom-router/src/create-browser-history.ts:73](https://gitlab.co
|
|
|
55
55
|
removeEventListener(type, listener): void;
|
|
56
56
|
```
|
|
57
57
|
|
|
58
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
58
|
+
Defined in: [play-dom-router/src/create-browser-history.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/create-browser-history.ts#L74)
|
|
59
59
|
|
|
60
60
|
#### Parameters
|
|
61
61
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: ConnectRouterOptions
|
|
4
4
|
|
|
5
|
-
Defined in: [play-dom-router/src/connect-router.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-dom-router/src/connect-router.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/connect-router.ts#L20)
|
|
6
6
|
|
|
7
7
|
Options for [connectRouter](../functions/connectRouter.md).
|
|
8
8
|
|
|
@@ -10,6 +10,6 @@ Options for [connectRouter](../functions/connectRouter.md).
|
|
|
10
10
|
|
|
11
11
|
| Property | Modifier | Type | Description | Defined in |
|
|
12
12
|
| ----------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
-
| <a id="property-actor"></a> `actor` | `readonly` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | The actor to synchronize with the browser URL. Must implement `Routable`. | [play-dom-router/src/connect-router.ts:22](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
14
|
-
| <a id="property-routemap"></a> `routeMap` | `readonly` | [`RouteMapLike`](RouteMapLike.md) | Route map used to resolve URL pathnames to machine state IDs. | [play-dom-router/src/connect-router.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
15
|
-
| <a id="property-router"></a> `router` | `readonly` | [`VanillaRouter`](VanillaRouter.md) | The vanilla router created by [createRouter](../functions/createRouter.md). | [play-dom-router/src/connect-router.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
13
|
+
| <a id="property-actor"></a> `actor` | `readonly` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | The actor to synchronize with the browser URL. Must implement `Routable`. | [play-dom-router/src/connect-router.ts:22](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/connect-router.ts#L22) |
|
|
14
|
+
| <a id="property-routemap"></a> `routeMap` | `readonly` | [`RouteMapLike`](RouteMapLike.md) | Route map used to resolve URL pathnames to machine state IDs. | [play-dom-router/src/connect-router.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/connect-router.ts#L26) |
|
|
15
|
+
| <a id="property-router"></a> `router` | `readonly` | [`VanillaRouter`](VanillaRouter.md) | The vanilla router created by [createRouter](../functions/createRouter.md). | [play-dom-router/src/connect-router.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-dom-router/src/connect-router.ts#L24) |
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: PlayRouteEvent
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/types.ts:223](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-router/src/types.ts:223](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-router/src/types.ts#L223)
|
|
6
6
|
|
|
7
7
|
Enhanced routing event with parameter and query support
|
|
8
8
|
|
|
@@ -112,8 +112,8 @@ URLPatternResult for advanced use cases (debugging, pattern analysis).
|
|
|
112
112
|
|
|
113
113
|
| Property | Modifier | Type | Defined in |
|
|
114
114
|
| -------------------------------------- | ---------- | ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------- |
|
|
115
|
-
| <a id="property-match"></a> `match?` | `readonly` | `unknown` | [play-router/src/types.ts:228](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
116
|
-
| <a id="property-params"></a> `params?` | `readonly` | `Record`\<`string`, `string`\> | [play-router/src/types.ts:226](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
117
|
-
| <a id="property-query"></a> `query?` | `readonly` | `Record`\<`string`, `string`\> | [play-router/src/types.ts:227](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
118
|
-
| <a id="property-to"></a> `to` | `readonly` | `string` | [play-router/src/types.ts:225](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
119
|
-
| <a id="property-type"></a> `type` | `readonly` | `"play.route"` | [play-router/src/types.ts:224](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
115
|
+
| <a id="property-match"></a> `match?` | `readonly` | `unknown` | [play-router/src/types.ts:228](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-router/src/types.ts#L228) |
|
|
116
|
+
| <a id="property-params"></a> `params?` | `readonly` | `Record`\<`string`, `string`\> | [play-router/src/types.ts:226](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-router/src/types.ts#L226) |
|
|
117
|
+
| <a id="property-query"></a> `query?` | `readonly` | `Record`\<`string`, `string`\> | [play-router/src/types.ts:227](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-router/src/types.ts#L227) |
|
|
118
|
+
| <a id="property-to"></a> `to` | `readonly` | `string` | [play-router/src/types.ts:225](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-router/src/types.ts#L225) |
|
|
119
|
+
| <a id="property-type"></a> `type` | `readonly` | `"play.route"` | [play-router/src/types.ts:224](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.33/packages/play-router/src/types.ts#L224) |
|