@xmachines/docs 1.0.0-beta.33 → 1.0.0-beta.35
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/NonNullableError.md +4 -4
- package/api/@xmachines/play/classes/PlayError.md +4 -4
- package/api/@xmachines/play/functions/assertNonNullable.md +1 -1
- package/api/@xmachines/play/type-aliases/PlayEvent.md +2 -2
- package/api/@xmachines/play-actor/README.md +18 -19
- package/api/@xmachines/play-actor/classes/AbstractActor.md +3 -3
- package/api/@xmachines/play-actor/functions/typedSpec.md +7 -10
- package/api/@xmachines/play-actor/interfaces/BaseActorProviderProps.md +46 -0
- package/api/@xmachines/play-actor/interfaces/BaseViewContextValue.md +33 -0
- 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/Viewable.md +4 -4
- package/api/@xmachines/play-dom/README.md +102 -18
- 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/createPlayUI.md +28 -0
- package/api/@xmachines/play-dom/functions/createRenderer.md +1 -1
- package/api/@xmachines/play-dom/functions/defineRegistry.md +1 -23
- package/api/@xmachines/play-dom/functions/renderSpec.md +1 -1
- package/api/@xmachines/play-dom/interfaces/ComponentContext.md +9 -9
- package/api/@xmachines/play-dom/interfaces/ConnectRendererOptions.md +19 -11
- package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +29 -0
- package/api/@xmachines/play-dom/interfaces/DefineRegistryResult.md +6 -6
- package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +14 -14
- package/api/@xmachines/play-dom/interfaces/EventHandle.md +6 -6
- package/api/@xmachines/play-dom/interfaces/MountOptions.md +14 -0
- package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +7 -7
- package/api/@xmachines/play-dom/interfaces/UIProviderOptions.md +27 -0
- package/api/@xmachines/play-dom/type-aliases/ActionFn.md +1 -1
- package/api/@xmachines/play-dom/type-aliases/Actions.md +1 -1
- package/api/@xmachines/play-dom/type-aliases/BaseComponentProps.md +7 -7
- package/api/@xmachines/play-dom/type-aliases/CatalogHasActions.md +1 -1
- 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 +4 -4
- 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/MountFn.md +25 -0
- package/api/@xmachines/play-dom/type-aliases/RenderErrorHandler.md +23 -0
- package/api/@xmachines/play-dom/type-aliases/SetState.md +1 -1
- package/api/@xmachines/play-dom/variables/schema.md +1 -1
- package/api/@xmachines/play-dom-router/README.md +3 -3
- 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 +3 -3
- 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/{RouteMapLike.md → RouteLookupContract.md} +7 -7
- package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +6 -11
- package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +8 -8
- 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 +165 -48
- package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +5 -5
- package/api/@xmachines/play-react/functions/ActionProvider.md +21 -0
- package/api/@xmachines/play-react/functions/JSONUIProvider.md +21 -0
- package/api/@xmachines/play-react/functions/Renderer.md +21 -0
- package/api/@xmachines/play-react/functions/StateProvider.md +27 -0
- package/api/@xmachines/play-react/functions/ValidationProvider.md +21 -0
- package/api/@xmachines/play-react/functions/VisibilityProvider.md +21 -0
- package/api/@xmachines/play-react/functions/useActor.md +1 -1
- package/api/@xmachines/play-react/functions/usePlayView.md +32 -0
- package/api/@xmachines/play-react/functions/useSignalEffect.md +1 -1
- package/api/@xmachines/play-react/interfaces/ActionProviderProps.md +15 -0
- package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +27 -0
- package/api/@xmachines/play-react/interfaces/JSONUIProviderProps.md +21 -0
- 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/PlayUIProviderProps.md +26 -0
- package/api/@xmachines/play-react/interfaces/RendererProps.md +17 -0
- package/api/@xmachines/play-react/interfaces/StateProviderProps.md +16 -0
- package/api/@xmachines/play-react/interfaces/ValidationProviderProps.md +14 -0
- package/api/@xmachines/play-react/interfaces/ViewContextValue.md +20 -0
- package/api/@xmachines/play-react/interfaces/VisibilityProviderProps.md +13 -0
- package/api/@xmachines/play-react/type-aliases/PlayActor.md +1 -1
- package/api/@xmachines/play-react/type-aliases/RenderErrorHandler.md +3 -2
- package/api/@xmachines/play-react/variables/ActorProvider.md +33 -0
- package/api/@xmachines/play-react/variables/PlayRenderer.md +5 -50
- package/api/@xmachines/play-react/variables/PlayUIProvider.md +43 -0
- package/api/@xmachines/play-react-router/README.md +1 -0
- package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +24 -24
- package/api/@xmachines/play-react-router/classes/RouteMap.md +38 -22
- package/api/@xmachines/play-react-router/functions/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-react-router/functions/createRouteMap.md +21 -0
- package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +5 -5
- 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 +8 -8
- package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-router/README.md +6 -6
- package/api/@xmachines/play-router/classes/{BaseRouteMap.md → RouteMap.md} +11 -11
- package/api/@xmachines/play-router/classes/RouterBridgeBase.md +24 -24
- package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +2 -2
- package/api/@xmachines/play-router/functions/buildRouteTree.md +1 -1
- package/api/@xmachines/play-router/functions/createRouteMap.md +6 -6
- package/api/@xmachines/play-router/functions/createRouteMapFromMachine.md +5 -5
- package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +6 -6
- 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/RouteMapping.md +8 -8
- package/api/@xmachines/play-router/interfaces/RouteMatch.md +3 -3
- package/api/@xmachines/play-router/interfaces/{RouteMap.md → RouteMatcher.md} +13 -13
- 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 +158 -42
- package/api/@xmachines/play-solid/functions/ActionProvider.md +19 -0
- package/api/@xmachines/play-solid/functions/JSONUIProvider.md +21 -0
- package/api/@xmachines/play-solid/functions/Renderer.md +21 -0
- package/api/@xmachines/play-solid/functions/StateProvider.md +19 -0
- package/api/@xmachines/play-solid/functions/ValidationProvider.md +19 -0
- package/api/@xmachines/play-solid/functions/VisibilityProvider.md +20 -0
- package/api/@xmachines/play-solid/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-solid/functions/useAction.md +24 -0
- package/api/@xmachines/play-solid/functions/useActions.md +13 -0
- package/api/@xmachines/play-solid/functions/useActor.md +1 -1
- package/api/@xmachines/play-solid/functions/useFieldValidation.md +29 -0
- package/api/@xmachines/play-solid/functions/useIsVisible.md +19 -0
- package/api/@xmachines/play-solid/functions/useOptionalValidation.md +13 -0
- package/api/@xmachines/play-solid/functions/usePlayView.md +30 -0
- package/api/@xmachines/play-solid/functions/useStateBinding.md +25 -0
- package/api/@xmachines/play-solid/functions/useStateStore.md +13 -0
- package/api/@xmachines/play-solid/functions/useStateValue.md +25 -0
- package/api/@xmachines/play-solid/functions/useVisibility.md +13 -0
- package/api/@xmachines/play-solid/interfaces/ActionProviderProps.md +12 -0
- package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +30 -0
- package/api/@xmachines/play-solid/interfaces/DefineRegistryResult.md +15 -0
- package/api/@xmachines/play-solid/interfaces/JSONUIProviderProps.md +21 -0
- package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +26 -0
- package/api/@xmachines/play-solid/interfaces/RendererProps.md +17 -0
- package/api/@xmachines/play-solid/interfaces/StateProviderProps.md +13 -0
- package/api/@xmachines/play-solid/interfaces/ValidationProviderProps.md +11 -0
- package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +21 -0
- package/api/@xmachines/play-solid/type-aliases/ComponentRegistry.md +17 -0
- package/api/@xmachines/play-solid/type-aliases/PlayActor.md +1 -1
- package/api/@xmachines/play-solid/type-aliases/RenderErrorHandler.md +3 -2
- package/api/@xmachines/play-solid/type-aliases/SetState.md +21 -0
- package/api/@xmachines/play-solid/type-aliases/VisibilityProviderProps.md +9 -0
- package/api/@xmachines/play-solid/variables/ActorContext.md +13 -0
- package/api/@xmachines/play-solid/variables/ActorProvider.md +27 -0
- package/api/@xmachines/play-solid/variables/PlayRenderer.md +5 -18
- package/api/@xmachines/play-solid/variables/PlayUIProvider.md +26 -0
- package/api/@xmachines/play-solid-router/README.md +2 -2
- package/api/@xmachines/play-solid-router/classes/RouteMap.md +9 -9
- package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +25 -25
- package/api/@xmachines/play-solid-router/functions/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-solid-router/functions/createRouteMap.md +3 -3
- 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 +5 -5
- package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +8 -8
- 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 +105 -25
- package/api/@xmachines/play-svelte/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-svelte/functions/getActorContext.md +21 -0
- package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +19 -0
- package/api/@xmachines/play-svelte/functions/setActorContext.md +19 -0
- package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +40 -0
- package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +6 -6
- package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +24 -0
- package/api/@xmachines/play-svelte/type-aliases/PlayActor.md +9 -0
- package/api/@xmachines/play-svelte/type-aliases/RenderErrorHandler.md +1 -17
- package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +9 -9
- package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +1 -1
- package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +3 -3
- 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 +8 -8
- 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 +9 -9
- package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +1 -1
- package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +3 -3
- 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 +8 -8
- 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/README.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +38 -22
- package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +24 -24
- package/api/@xmachines/play-tanstack-react-router/functions/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +7 -39
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +5 -5
- 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 +8 -8
- 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/README.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +9 -9
- package/api/@xmachines/play-tanstack-solid-router/classes/SolidRouterBridge.md +25 -25
- package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +3 -3
- 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 +8 -8
- 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 +136 -40
- package/api/@xmachines/play-vue/functions/defineRegistry.md +2 -2
- package/api/@xmachines/play-vue/functions/getPlayViewContext.md +28 -0
- package/api/@xmachines/play-vue/functions/useActor.md +1 -1
- package/api/@xmachines/play-vue/interfaces/ActionProviderProps.md +12 -0
- package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +25 -0
- package/api/@xmachines/play-vue/interfaces/DefineRegistryResult.md +15 -0
- package/api/@xmachines/play-vue/interfaces/JSONUIProviderProps.md +20 -0
- package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +24 -0
- package/api/@xmachines/play-vue/interfaces/RendererProps.md +17 -0
- package/api/@xmachines/play-vue/interfaces/StateProviderProps.md +15 -0
- package/api/@xmachines/play-vue/interfaces/ValidationProviderProps.md +11 -0
- package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +21 -0
- 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 +3 -2
- package/api/@xmachines/play-vue/variables/ActionProvider.md +64 -0
- package/api/@xmachines/play-vue/variables/JSONUIProvider.md +96 -0
- package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-vue/variables/Renderer.md +79 -0
- package/api/@xmachines/play-vue/variables/StateProvider.md +79 -0
- package/api/@xmachines/play-vue/variables/ValidationProvider.md +55 -0
- package/api/@xmachines/play-vue/variables/VisibilityProvider.md +40 -0
- package/api/@xmachines/play-vue-router/README.md +9 -4
- package/api/@xmachines/play-vue-router/classes/RouteMap.md +38 -20
- package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +25 -25
- 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 +8 -8
- 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/README.md +1 -1
- package/api/@xmachines/play-xstate/classes/PlayerActor.md +26 -26
- 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/llms.txt +4 -2
- package/examples/@xmachines/play-dom-demo/README.md +44 -24
- package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +4 -3
- package/examples/@xmachines/play-dom-demo/functions/initShell.md +5 -1
- package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/About.md +4 -1
- package/examples/@xmachines/play-dom-demo/variables/Contact.md +4 -1
- package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +5 -1
- package/examples/@xmachines/play-dom-demo/variables/Home.md +5 -1
- package/examples/@xmachines/play-dom-demo/variables/Login.md +5 -1
- package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +8 -1
- package/examples/@xmachines/play-dom-demo/variables/Navigation.md +5 -1
- package/examples/@xmachines/play-dom-demo/variables/Overview.md +5 -1
- package/examples/@xmachines/play-dom-demo/variables/Profile.md +5 -1
- package/examples/@xmachines/play-dom-demo/variables/Settings.md +5 -1
- package/examples/@xmachines/play-dom-demo/variables/Stats.md +5 -1
- package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +1 -1
- package/examples/@xmachines/play-dom-router-demo/README.md +26 -22
- package/examples/@xmachines/play-react-demo/README.md +55 -48
- 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 +6 -1
- package/examples/@xmachines/play-react-demo/variables/Contact.md +6 -1
- package/examples/@xmachines/play-react-demo/variables/Dashboard.md +7 -1
- package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +5 -1
- package/examples/@xmachines/play-react-demo/variables/Home.md +6 -1
- package/examples/@xmachines/play-react-demo/variables/Login.md +8 -1
- package/examples/@xmachines/play-react-demo/variables/NavBar.md +6 -1
- package/examples/@xmachines/play-react-demo/variables/NavBarView.md +7 -1
- package/examples/@xmachines/play-react-demo/variables/Navigation.md +6 -1
- package/examples/@xmachines/play-react-demo/variables/Overview.md +6 -1
- package/examples/@xmachines/play-react-demo/variables/Profile.md +6 -1
- package/examples/@xmachines/play-react-demo/variables/Settings.md +6 -1
- package/examples/@xmachines/play-react-demo/variables/Shell.md +6 -1
- package/examples/@xmachines/play-react-demo/variables/Stats.md +6 -1
- package/examples/@xmachines/play-react-demo/variables/authCatalog.md +1 -1
- package/examples/@xmachines/play-react-router-demo/README.md +5 -3
- package/examples/@xmachines/play-solid-demo/README.md +55 -36
- 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 +5 -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 +6 -3
- 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 +5 -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 +6 -4
- package/examples/@xmachines/play-svelte-demo/README.md +34 -21
- package/examples/@xmachines/play-svelte-demo/type-aliases/App.md +9 -0
- package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +9 -0
- package/examples/@xmachines/play-svelte-demo/variables/App.md +9 -0
- package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +172 -0
- package/examples/@xmachines/play-svelte-spa-router-demo/README.md +10 -12
- package/examples/@xmachines/play-sveltekit-router-demo/README.md +12 -14
- package/examples/@xmachines/play-tanstack-react-router-demo/README.md +3 -3
- package/examples/@xmachines/play-tanstack-solid-router-demo/README.md +4 -4
- package/examples/@xmachines/play-vue-demo/README.md +66 -39
- package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +9 -0
- package/examples/@xmachines/play-vue-demo/variables/App.md +9 -0
- package/examples/@xmachines/play-vue-demo/variables/authCatalog.md +172 -0
- package/examples/@xmachines/play-vue-router-demo/README.md +21 -24
- package/examples/README.md +2 -0
- package/examples/form-validation.md +33 -42
- package/guides/README.md +8 -0
- package/guides/actor-model.md +180 -0
- package/guides/getting-started.md +18 -14
- package/guides/signals.md +166 -0
- package/guides/state-machines.md +288 -0
- package/package.json +2 -2
- package/rfc/play.md +81 -54
- package/api/@xmachines/play-actor/interfaces/ViewMetadata.md +0 -17
- package/api/@xmachines/play-react/interfaces/PlayRendererProps.md +0 -24
- package/api/@xmachines/play-solid/interfaces/PlayRendererProps.md +0 -24
- package/api/@xmachines/play-svelte/interfaces/PlayRendererProps.md +0 -22
- package/api/@xmachines/play-svelte/variables/getBoundProp.md +0 -7
- package/api/@xmachines/play-vue/interfaces/PlayRendererProps.md +0 -22
- package/api/@xmachines/play-vue-router/classes/VueBaseRouteMap.md +0 -141
- package/api/_media/README.md +0 -321
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Class: ReactRouterBridge
|
|
4
4
|
|
|
5
|
-
Defined in: [play-react-router/src/react-router-bridge.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-react-router/src/react-router-bridge.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/react-router-bridge.ts#L28)
|
|
6
6
|
|
|
7
7
|
Abstract base class for all `@xmachines` router adapter bridges.
|
|
8
8
|
|
|
@@ -25,7 +25,7 @@ new ReactRouterBridge(
|
|
|
25
25
|
routeMap): ReactRouterBridge;
|
|
26
26
|
```
|
|
27
27
|
|
|
28
|
-
Defined in: [play-react-router/src/react-router-bridge.ts:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
28
|
+
Defined in: [play-react-router/src/react-router-bridge.ts:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/react-router-bridge.ts#L31)
|
|
29
29
|
|
|
30
30
|
#### Parameters
|
|
31
31
|
|
|
@@ -47,15 +47,15 @@ Defined in: [play-react-router/src/react-router-bridge.ts:31](https://gitlab.com
|
|
|
47
47
|
|
|
48
48
|
| Property | Modifier | Type | Default value | Description | Inherited from | Defined in |
|
|
49
49
|
| --------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
50
|
-
| <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) | `undefined` | A `Routable` actor exposing `currentRoute` and `send`. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`actor`](../../play-router/classes/RouterBridgeBase.md#property-actor) | [play-router/src/router-bridge-base.ts:
|
|
51
|
-
| <a id="property-hasconnectedonce"></a> `hasConnectedOnce` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`hasConnectedOnce`](../../play-router/classes/RouterBridgeBase.md#property-hasconnectedonce) | [play-router/src/router-bridge-base.ts:
|
|
52
|
-
| <a id="property-isconnected"></a> `isConnected` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isConnected`](../../play-router/classes/RouterBridgeBase.md#property-isconnected) | [play-router/src/router-bridge-base.ts:
|
|
53
|
-
| <a id="property-isprocessingnavigation"></a> `isProcessingNavigation` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isProcessingNavigation`](../../play-router/classes/RouterBridgeBase.md#property-isprocessingnavigation) | [play-router/src/router-bridge-base.ts:
|
|
54
|
-
| <a id="property-lastsyncedpath"></a> `lastSyncedPath` | `protected` | `string` \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`lastSyncedPath`](../../play-router/classes/RouterBridgeBase.md#property-lastsyncedpath) | [play-router/src/router-bridge-base.ts:
|
|
55
|
-
| <a id="property-routemap"></a> `routeMap` | `readonly` | `object` | `undefined` | Bidirectional route map for `stateId ↔ path` resolution. Provide `getStateIdByPath` and `getPathByStateId`. Framework adapters typically wrap the result of `createRouteMap()` or an equivalent. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeMap`](../../play-router/classes/RouterBridgeBase.md#property-routemap) | [play-router/src/router-bridge-base.ts:
|
|
56
|
-
| `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [play-router/src/router-bridge-base.ts:
|
|
57
|
-
| `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [play-router/src/router-bridge-base.ts:
|
|
58
|
-
| <a id="property-routewatcher"></a> `routeWatcher` | `protected` | \| [`RouteWatcherHandle`](../../play-router/interfaces/RouteWatcherHandle.md) \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeWatcher`](../../play-router/classes/RouterBridgeBase.md#property-routewatcher) | [play-router/src/router-bridge-base.ts:
|
|
50
|
+
| <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) | `undefined` | A `Routable` actor exposing `currentRoute` and `send`. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`actor`](../../play-router/classes/RouterBridgeBase.md#property-actor) | [play-router/src/router-bridge-base.ts:104](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L104) |
|
|
51
|
+
| <a id="property-hasconnectedonce"></a> `hasConnectedOnce` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`hasConnectedOnce`](../../play-router/classes/RouterBridgeBase.md#property-hasconnectedonce) | [play-router/src/router-bridge-base.ts:92](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L92) |
|
|
52
|
+
| <a id="property-isconnected"></a> `isConnected` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isConnected`](../../play-router/classes/RouterBridgeBase.md#property-isconnected) | [play-router/src/router-bridge-base.ts:91](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L91) |
|
|
53
|
+
| <a id="property-isprocessingnavigation"></a> `isProcessingNavigation` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isProcessingNavigation`](../../play-router/classes/RouterBridgeBase.md#property-isprocessingnavigation) | [play-router/src/router-bridge-base.ts:94](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L94) |
|
|
54
|
+
| <a id="property-lastsyncedpath"></a> `lastSyncedPath` | `protected` | `string` \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`lastSyncedPath`](../../play-router/classes/RouterBridgeBase.md#property-lastsyncedpath) | [play-router/src/router-bridge-base.ts:93](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L93) |
|
|
55
|
+
| <a id="property-routemap"></a> `routeMap` | `readonly` | `object` | `undefined` | Bidirectional route map for `stateId ↔ path` resolution. Provide `getStateIdByPath` and `getPathByStateId`. Framework adapters typically wrap the result of `createRouteMap()` or an equivalent. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeMap`](../../play-router/classes/RouterBridgeBase.md#property-routemap) | [play-router/src/router-bridge-base.ts:105](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L105) |
|
|
56
|
+
| `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [play-router/src/router-bridge-base.ts:107](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L107) |
|
|
57
|
+
| `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [play-router/src/router-bridge-base.ts:106](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L106) |
|
|
58
|
+
| <a id="property-routewatcher"></a> `routeWatcher` | `protected` | \| [`RouteWatcherHandle`](../../play-router/interfaces/RouteWatcherHandle.md) \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeWatcher`](../../play-router/classes/RouterBridgeBase.md#property-routewatcher) | [play-router/src/router-bridge-base.ts:95](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L95) |
|
|
59
59
|
|
|
60
60
|
## Methods
|
|
61
61
|
|
|
@@ -65,7 +65,7 @@ Defined in: [play-react-router/src/react-router-bridge.ts:31](https://gitlab.com
|
|
|
65
65
|
connect(): void;
|
|
66
66
|
```
|
|
67
67
|
|
|
68
|
-
Defined in: [play-router/src/router-bridge-base.ts:
|
|
68
|
+
Defined in: [play-router/src/router-bridge-base.ts:131](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L131)
|
|
69
69
|
|
|
70
70
|
Connect the router bridge to the Actor.
|
|
71
71
|
|
|
@@ -97,7 +97,7 @@ Adapters that need custom initial-sync behavior should override
|
|
|
97
97
|
disconnect(): void;
|
|
98
98
|
```
|
|
99
99
|
|
|
100
|
-
Defined in: [play-router/src/router-bridge-base.ts:
|
|
100
|
+
Defined in: [play-router/src/router-bridge-base.ts:218](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L218)
|
|
101
101
|
|
|
102
102
|
Disconnect the router bridge from the Actor.
|
|
103
103
|
|
|
@@ -119,7 +119,7 @@ Stops signal watching and unregisters framework-specific router listener.
|
|
|
119
119
|
protected extractParams(pathname, stateId): Record<string, string>;
|
|
120
120
|
```
|
|
121
121
|
|
|
122
|
-
Defined in: [play-router/src/router-bridge-base.ts:
|
|
122
|
+
Defined in: [play-router/src/router-bridge-base.ts:326](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L326)
|
|
123
123
|
|
|
124
124
|
Extract path parameters from URL using the URLPattern API.
|
|
125
125
|
|
|
@@ -157,7 +157,7 @@ When URLPattern is absent and the route is parameterized
|
|
|
157
157
|
protected extractQuery(search): Record<string, string>;
|
|
158
158
|
```
|
|
159
159
|
|
|
160
|
-
Defined in: [play-router/src/router-bridge-base.ts:
|
|
160
|
+
Defined in: [play-router/src/router-bridge-base.ts:363](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L363)
|
|
161
161
|
|
|
162
162
|
Extract query parameters from URL search string.
|
|
163
163
|
|
|
@@ -185,7 +185,7 @@ Extracted query parameters or empty object
|
|
|
185
185
|
protected getInitialRouterPath(): string | null;
|
|
186
186
|
```
|
|
187
187
|
|
|
188
|
-
Defined in: [play-react-router/src/react-router-bridge.ts:49](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
188
|
+
Defined in: [play-react-router/src/react-router-bridge.ts:49](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/react-router-bridge.ts#L49)
|
|
189
189
|
|
|
190
190
|
Return the router's current pathname so connect() can sync the actor to
|
|
191
191
|
the URL on initial load. router.subscribe() only fires on future navigations
|
|
@@ -208,7 +208,7 @@ the page on /about would leave the actor in its default "home" state.
|
|
|
208
208
|
protected getInitialRouterSearch(): string | undefined;
|
|
209
209
|
```
|
|
210
210
|
|
|
211
|
-
Defined in: [play-react-router/src/react-router-bridge.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
211
|
+
Defined in: [play-react-router/src/react-router-bridge.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/react-router-bridge.ts#L60)
|
|
212
212
|
|
|
213
213
|
Return the initial URL search string for query-param forwarding on `connect()`.
|
|
214
214
|
|
|
@@ -232,7 +232,7 @@ so `syncActorFromRouter` produces `query: {}` rather than parsing an empty strin
|
|
|
232
232
|
protected navigateRouter(path): void;
|
|
233
233
|
```
|
|
234
234
|
|
|
235
|
-
Defined in: [play-react-router/src/react-router-bridge.ts:39](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
235
|
+
Defined in: [play-react-router/src/react-router-bridge.ts:39](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/react-router-bridge.ts#L39)
|
|
236
236
|
|
|
237
237
|
Navigate the framework router to the given path.
|
|
238
238
|
|
|
@@ -261,7 +261,7 @@ Must trigger the framework router's navigation (e.g., router.navigate(path)).
|
|
|
261
261
|
protected resolveNavigationPath(route): string | null;
|
|
262
262
|
```
|
|
263
263
|
|
|
264
|
-
Defined in: [play-router/src/router-bridge-base.ts:
|
|
264
|
+
Defined in: [play-router/src/router-bridge-base.ts:348](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L348)
|
|
265
265
|
|
|
266
266
|
Resolve an actor route value to a concrete URL path for navigation.
|
|
267
267
|
|
|
@@ -300,11 +300,11 @@ Concrete URL path, or `null` if navigation should be skipped
|
|
|
300
300
|
protected syncActorFromRouter(pathname, search?): void;
|
|
301
301
|
```
|
|
302
302
|
|
|
303
|
-
Defined in: [play-router/src/router-bridge-base.ts:
|
|
303
|
+
Defined in: [play-router/src/router-bridge-base.ts:268](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L268)
|
|
304
304
|
|
|
305
305
|
Sync actor state when router location changes.
|
|
306
306
|
|
|
307
|
-
Sends play.route event to actor with
|
|
307
|
+
Sends play.route event to actor with matched stateId, params, and query.
|
|
308
308
|
Prevents circular updates via isProcessingNavigation flag.
|
|
309
309
|
|
|
310
310
|
#### Parameters
|
|
@@ -330,7 +330,7 @@ Prevents circular updates via isProcessingNavigation flag.
|
|
|
330
330
|
protected syncRouterFromActor(route): void;
|
|
331
331
|
```
|
|
332
332
|
|
|
333
|
-
Defined in: [play-router/src/router-bridge-base.ts:
|
|
333
|
+
Defined in: [play-router/src/router-bridge-base.ts:248](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/router-bridge-base.ts#L248)
|
|
334
334
|
|
|
335
335
|
Sync router location when actor route signal changes.
|
|
336
336
|
|
|
@@ -363,7 +363,7 @@ suppressed as circular echoes.
|
|
|
363
363
|
protected unwatchRouterChanges(): void;
|
|
364
364
|
```
|
|
365
365
|
|
|
366
|
-
Defined in: [play-react-router/src/react-router-bridge.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
366
|
+
Defined in: [play-react-router/src/react-router-bridge.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/react-router-bridge.ts#L70)
|
|
367
367
|
|
|
368
368
|
Stop watching for router location changes.
|
|
369
369
|
|
|
@@ -385,7 +385,7 @@ Called by disconnect(). Should clean up the framework-specific subscription.
|
|
|
385
385
|
protected watchRouterChanges(): void;
|
|
386
386
|
```
|
|
387
387
|
|
|
388
|
-
Defined in: [play-react-router/src/react-router-bridge.ts:64](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
388
|
+
Defined in: [play-react-router/src/react-router-bridge.ts:64](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/react-router-bridge.ts#L64)
|
|
389
389
|
|
|
390
390
|
Start watching for router location changes.
|
|
391
391
|
|
|
@@ -2,15 +2,45 @@
|
|
|
2
2
|
|
|
3
3
|
# Class: RouteMap
|
|
4
4
|
|
|
5
|
-
Defined in: [play-
|
|
5
|
+
Defined in: [play-router/src/base-route-map.ts:100](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/base-route-map.ts#L100)
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Shared bidirectional route map base class.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
All framework adapters use this class as their route map — they add no logic of their
|
|
10
|
+
own and inherit the full public API from here.
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
**Lookup strategy:**
|
|
12
13
|
|
|
13
|
-
-
|
|
14
|
+
- Static paths (no `:param`) → O(1) `Map` lookup
|
|
15
|
+
- Dynamic paths → O(k) bucket-indexed scan using `URLPattern`, where `k` is the number
|
|
16
|
+
of routes sharing the same first path segment
|
|
17
|
+
- Results are cached after the first match in an LRU cache (default 500 entries,
|
|
18
|
+
configurable via the `cacheSize` constructor option)
|
|
19
|
+
|
|
20
|
+
**Pattern syntax** (`:param` / `:param?`):
|
|
21
|
+
|
|
22
|
+
- `:param` — required segment, matches exactly one non-`/` segment
|
|
23
|
+
- `:param?` — optional segment, matches zero or one non-`/` segment
|
|
24
|
+
|
|
25
|
+
## Example
|
|
26
|
+
|
|
27
|
+
```typescript
|
|
28
|
+
import { RouteMap } from "@xmachines/play-router";
|
|
29
|
+
|
|
30
|
+
const map = new RouteMap([
|
|
31
|
+
{ stateId: "home", path: "/" },
|
|
32
|
+
{ stateId: "profile", path: "/profile/:userId" },
|
|
33
|
+
{ stateId: "settings", path: "/settings/:section?" },
|
|
34
|
+
]);
|
|
35
|
+
|
|
36
|
+
map.getStateIdByPath("/"); // "home"
|
|
37
|
+
map.getStateIdByPath("/profile/123"); // "profile"
|
|
38
|
+
map.getStateIdByPath("/settings"); // "settings"
|
|
39
|
+
map.getStateIdByPath("/unknown"); // null
|
|
40
|
+
|
|
41
|
+
map.getPathByStateId("profile"); // "/profile/:userId"
|
|
42
|
+
map.getPathByStateId("missing"); // null
|
|
43
|
+
```
|
|
14
44
|
|
|
15
45
|
## Constructors
|
|
16
46
|
|
|
@@ -20,7 +50,7 @@ Alias for [BaseRouteMap](../../play-dom-router/interfaces/RouteMap.md) from `@xm
|
|
|
20
50
|
new RouteMap(mappings, options?): RouteMap;
|
|
21
51
|
```
|
|
22
52
|
|
|
23
|
-
Defined in: [play-router/src/base-route-map.ts:125](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
53
|
+
Defined in: [play-router/src/base-route-map.ts:125](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/base-route-map.ts#L125)
|
|
24
54
|
|
|
25
55
|
Build a route map from an array of state ID ↔ path mappings.
|
|
26
56
|
|
|
@@ -40,12 +70,6 @@ buckets for efficient candidate selection.
|
|
|
40
70
|
|
|
41
71
|
`RouteMap`
|
|
42
72
|
|
|
43
|
-
#### Inherited from
|
|
44
|
-
|
|
45
|
-
```ts
|
|
46
|
-
BaseRouteMap.constructor;
|
|
47
|
-
```
|
|
48
|
-
|
|
49
73
|
## Methods
|
|
50
74
|
|
|
51
75
|
### getPathByStateId()
|
|
@@ -54,7 +78,7 @@ BaseRouteMap.constructor;
|
|
|
54
78
|
getPathByStateId(stateId): string | null;
|
|
55
79
|
```
|
|
56
80
|
|
|
57
|
-
Defined in: [play-router/src/base-route-map.ts:209](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
81
|
+
Defined in: [play-router/src/base-route-map.ts:209](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/base-route-map.ts#L209)
|
|
58
82
|
|
|
59
83
|
Look up the path pattern registered for a state ID.
|
|
60
84
|
|
|
@@ -77,10 +101,6 @@ map.getPathByStateId("profile"); // "/profile/:userId"
|
|
|
77
101
|
map.getPathByStateId("missing"); // null
|
|
78
102
|
```
|
|
79
103
|
|
|
80
|
-
#### Inherited from
|
|
81
|
-
|
|
82
|
-
[`RouteMap`](../../play-dom-router/interfaces/RouteMap.md).[`getPathByStateId`](../../play-dom-router/interfaces/RouteMap.md#getpathbystateid)
|
|
83
|
-
|
|
84
104
|
---
|
|
85
105
|
|
|
86
106
|
### getStateIdByPath()
|
|
@@ -89,7 +109,7 @@ map.getPathByStateId("missing"); // null
|
|
|
89
109
|
getStateIdByPath(path): string | null;
|
|
90
110
|
```
|
|
91
111
|
|
|
92
|
-
Defined in: [play-router/src/base-route-map.ts:174](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
112
|
+
Defined in: [play-router/src/base-route-map.ts:174](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/base-route-map.ts#L174)
|
|
93
113
|
|
|
94
114
|
Resolve a URL path to its mapped state ID.
|
|
95
115
|
|
|
@@ -115,7 +135,3 @@ The mapped state ID, or `null` if no route matches
|
|
|
115
135
|
map.getStateIdByPath("/profile/123"); // "profile"
|
|
116
136
|
map.getStateIdByPath("/unknown"); // null
|
|
117
137
|
```
|
|
118
|
-
|
|
119
|
-
#### Inherited from
|
|
120
|
-
|
|
121
|
-
[`RouteMap`](../../play-dom-router/interfaces/RouteMap.md).[`getStateIdByPath`](../../play-dom-router/interfaces/RouteMap.md#getstateidbypath)
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function PlayRouterProvider<TActor>(__namedParameters): Element;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-react-router/src/play-router-provider.tsx:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [play-react-router/src/play-router-provider.tsx:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/play-router-provider.tsx#L47)
|
|
10
10
|
|
|
11
11
|
Connects a `PlayerActor` to React Router, keeping actor state and browser URL
|
|
12
12
|
in sync bidirectionally.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
[Documentation](../../../README.md) / [@xmachines/play-react-router](../README.md) / createRouteMap
|
|
2
|
+
|
|
3
|
+
# Function: createRouteMap()
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
function createRouteMap(machine): RouteMap;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [play-react-router/src/route-map.ts:15](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/route-map.ts#L15)
|
|
10
|
+
|
|
11
|
+
Create a [RouteMap](../classes/RouteMap.md) from an XState machine.
|
|
12
|
+
|
|
13
|
+
## Parameters
|
|
14
|
+
|
|
15
|
+
| Parameter | Type | Description |
|
|
16
|
+
| --------- | ------------------------------------------------------------------------- | ------------------------------------------------ |
|
|
17
|
+
| `machine` | [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | XState v5 machine with `meta.route` annotations. |
|
|
18
|
+
|
|
19
|
+
## Returns
|
|
20
|
+
|
|
21
|
+
[`RouteMap`](../classes/RouteMap.md)
|
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
function createRouteMapFromTree(routeTree): RouteMap;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-router/src/create-route-map-from-tree.ts:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [play-router/src/create-route-map-from-tree.ts:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/create-route-map-from-tree.ts#L31)
|
|
10
10
|
|
|
11
|
-
Create a `
|
|
11
|
+
Create a `RouteMap` from a `RouteTree` node structure.
|
|
12
12
|
|
|
13
13
|
Used by framework-router adapters (React Router, TanStack Router) that pass a
|
|
14
14
|
`RouteTree` produced by `extractMachineRoutes()` rather than calling
|
|
@@ -16,7 +16,7 @@ Used by framework-router adapters (React Router, TanStack Router) that pass a
|
|
|
16
16
|
|
|
17
17
|
Traverses all nodes collecting `{ stateId: node.id, path: node.fullPath }` pairs.
|
|
18
18
|
`node.fullPath` is always the absolute resolved path (e.g. `"/dashboard/overview"`),
|
|
19
|
-
which is what `
|
|
19
|
+
which is what `RouteMap` needs for browser URL matching. This matches the
|
|
20
20
|
behaviour of `createRouteMapFromMachine`, which also uses `node.fullPath`.
|
|
21
21
|
|
|
22
22
|
## Parameters
|
|
@@ -27,9 +27,9 @@ behaviour of `createRouteMapFromMachine`, which also uses `node.fullPath`.
|
|
|
27
27
|
|
|
28
28
|
## Returns
|
|
29
29
|
|
|
30
|
-
[`RouteMap`](
|
|
30
|
+
[`RouteMap`](../classes/RouteMap.md)
|
|
31
31
|
|
|
32
|
-
A `
|
|
32
|
+
A `RouteMap` for use with any `RouterBridgeBase`-based adapter.
|
|
33
33
|
|
|
34
34
|
## Example
|
|
35
35
|
|
|
@@ -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.35/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.35/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.35/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.35/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.35/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.35/packages/play-router/src/types.ts#L224) |
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: PlayRouterProviderProps\<TActor\>
|
|
4
4
|
|
|
5
|
-
Defined in: [play-react-router/src/play-router-provider.tsx:10](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-react-router/src/play-router-provider.tsx:10](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/play-router-provider.tsx#L10)
|
|
6
6
|
|
|
7
7
|
## Type Parameters
|
|
8
8
|
|
|
@@ -14,7 +14,7 @@ Defined in: [play-react-router/src/play-router-provider.tsx:10](https://gitlab.c
|
|
|
14
14
|
|
|
15
15
|
| Property | Type | Description | Defined in |
|
|
16
16
|
| ----------------------------------------- | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
17
|
-
| <a id="property-actor"></a> `actor` | `TActor` | The actor to sync with React Router. Must be a stable reference — pass the same actor instance across renders. Creating the actor inline or re-creating it on every render will cause the bridge to disconnect and reconnect each time. | [play-react-router/src/play-router-provider.tsx:19](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
18
|
-
| <a id="property-renderer"></a> `renderer` | (`actor`, `router`) => `ReactNode` | Renderer callback receives the same concrete actor type that was passed in. | [play-react-router/src/play-router-provider.tsx:36](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
19
|
-
| <a id="property-routemap"></a> `routeMap` | [`RouteMap`](../classes/RouteMap.md) | Bidirectional route map for state ID ↔ URL path lookups. **Must be a stable reference.** The bridge is rebuilt whenever `routeMap` changes identity. If constructed inline (e.g. `createRouteMap(routeTree)` in JSX), a new object is produced on every render and the bridge reconnects every render. Memoize with `useMemo`: `const routeMap = useMemo(() => createRouteMap(routeTree), [routeTree]);` | [play-react-router/src/play-router-provider.tsx:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
20
|
-
| <a id="property-router"></a> `router` | `Router` | The React Router instance returned by `createBrowserRouter`. | [play-react-router/src/play-router-provider.tsx:21](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
17
|
+
| <a id="property-actor"></a> `actor` | `TActor` | The actor to sync with React Router. Must be a stable reference — pass the same actor instance across renders. Creating the actor inline or re-creating it on every render will cause the bridge to disconnect and reconnect each time. | [play-react-router/src/play-router-provider.tsx:19](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/play-router-provider.tsx#L19) |
|
|
18
|
+
| <a id="property-renderer"></a> `renderer` | (`actor`, `router`) => `ReactNode` | Renderer callback receives the same concrete actor type that was passed in. | [play-react-router/src/play-router-provider.tsx:36](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/play-router-provider.tsx#L36) |
|
|
19
|
+
| <a id="property-routemap"></a> `routeMap` | [`RouteMap`](../classes/RouteMap.md) | Bidirectional route map for state ID ↔ URL path lookups. **Must be a stable reference.** The bridge is rebuilt whenever `routeMap` changes identity. If constructed inline (e.g. `createRouteMap(routeTree)` in JSX), a new object is produced on every render and the bridge reconnects every render. Memoize with `useMemo`: `const routeMap = useMemo(() => createRouteMap(routeTree), [routeTree]);` | [play-react-router/src/play-router-provider.tsx:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/play-router-provider.tsx#L34) |
|
|
20
|
+
| <a id="property-router"></a> `router` | `Router` | The React Router instance returned by `createBrowserRouter`. | [play-react-router/src/play-router-provider.tsx:21](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-react-router/src/play-router-provider.tsx#L21) |
|
|
@@ -2,26 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: RouteMapping
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/base-route-map.ts:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-router/src/base-route-map.ts:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/base-route-map.ts#L57)
|
|
6
6
|
|
|
7
7
|
A single state ID ↔ path mapping entry.
|
|
8
8
|
|
|
9
|
-
Both fields are `readonly` — mappings are immutable once passed to `
|
|
9
|
+
Both fields are `readonly` — mappings are immutable once passed to `RouteMap`.
|
|
10
10
|
Adapter packages re-export a structurally compatible `RouteMapping` type under
|
|
11
11
|
their own name. This type is published from `@xmachines/play-router` as
|
|
12
|
-
`
|
|
12
|
+
`RouteMapping` to avoid name collisions with those adapter-local types.
|
|
13
13
|
|
|
14
14
|
## Example
|
|
15
15
|
|
|
16
16
|
```typescript
|
|
17
|
-
const mapping:
|
|
18
|
-
const paramMapping:
|
|
19
|
-
const optionalMapping:
|
|
17
|
+
const mapping: RouteMapping = { stateId: "home", path: "/" };
|
|
18
|
+
const paramMapping: RouteMapping = { stateId: "profile", path: "/profile/:userId" };
|
|
19
|
+
const optionalMapping: RouteMapping = { stateId: "settings", path: "/settings/:section?" };
|
|
20
20
|
```
|
|
21
21
|
|
|
22
22
|
## Properties
|
|
23
23
|
|
|
24
24
|
| Property | Modifier | Type | Description | Defined in |
|
|
25
25
|
| --------------------------------------- | ---------- | -------- | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
26
|
-
| <a id="property-path"></a> `path` | `readonly` | `string` | URL path pattern (e.g., `"/"`, `"/profile/:userId"`, `"/settings/:section?"`) | [play-router/src/base-route-map.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
27
|
-
| <a id="property-stateid"></a> `stateId` | `readonly` | `string` | State machine state ID (e.g., `"home"`, `"#profile"`) | [play-router/src/base-route-map.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
26
|
+
| <a id="property-path"></a> `path` | `readonly` | `string` | URL path pattern (e.g., `"/"`, `"/profile/:userId"`, `"/settings/:section?"`) | [play-router/src/base-route-map.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/base-route-map.ts#L61) |
|
|
27
|
+
| <a id="property-stateid"></a> `stateId` | `readonly` | `string` | State machine state ID (e.g., `"home"`, `"#profile"`) | [play-router/src/base-route-map.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/base-route-map.ts#L59) |
|
|
@@ -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.35/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.35/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.35/packages/play-router/src/types.ts#L303)
|
|
87
87
|
|
|
88
88
|
Disconnect the router bridge from the Actor
|
|
89
89
|
|
|
@@ -126,7 +126,7 @@ Open http://localhost:5174/ and explore:
|
|
|
126
126
|
```typescript
|
|
127
127
|
// Extract routes from machine
|
|
128
128
|
const routeTree = extractMachineRoutes(authMachine);
|
|
129
|
-
const
|
|
129
|
+
const routeMatcher = createRouteMap(routeTree);
|
|
130
130
|
|
|
131
131
|
// Actor → URL sync
|
|
132
132
|
const watcher = new Signal.subtle.Watcher(() => {
|
|
@@ -143,7 +143,7 @@ const watcher = new Signal.subtle.Watcher(() => {
|
|
|
143
143
|
// URL → Actor sync (with pattern matching)
|
|
144
144
|
window.addEventListener("popstate", () => {
|
|
145
145
|
const path = window.location.pathname;
|
|
146
|
-
const { to, params } =
|
|
146
|
+
const { to, params } = routeMatcher.match(path);
|
|
147
147
|
if (to) {
|
|
148
148
|
actor.send({ type: "play.route", to, params });
|
|
149
149
|
}
|
|
@@ -152,7 +152,7 @@ window.addEventListener("popstate", () => {
|
|
|
152
152
|
// Initial URL handling
|
|
153
153
|
const initialPath = window.location.pathname;
|
|
154
154
|
if (initialPath !== "/") {
|
|
155
|
-
const { to, params } =
|
|
155
|
+
const { to, params } = routeMatcher.match(initialPath);
|
|
156
156
|
if (to) {
|
|
157
157
|
actor.send({ type: "play.route", to, params });
|
|
158
158
|
}
|
|
@@ -181,7 +181,7 @@ Bridge teardown must be explicit and deterministic:
|
|
|
181
181
|
- Do not rely on GC-only cleanup guidance.
|
|
182
182
|
- Infrastructure remains passive: bridges observe and forward intents, actors decide validity.
|
|
183
183
|
- `createBrowserHistory().destroy()` (from `@xmachines/play-dom-router`) is idempotent and restores shared `window.history` patches only after the last wrapper for that window is removed.
|
|
184
|
-
|
|
184
|
+
- **Note**: `createBrowserHistory()` mutates global `window.history` methods (`pushState` and `replaceState`) and coordinates wrappers with shared ref-count state. To reduce leakage, create one history wrapper per browser window at the application boundary and always pair it with `destroy()` during teardown.
|
|
185
185
|
|
|
186
186
|
## Bridge Sync Ordering
|
|
187
187
|
|
|
@@ -602,7 +602,7 @@ For a copy, see <https://opensource.org/licenses/MIT>.
|
|
|
602
602
|
|
|
603
603
|
## Classes
|
|
604
604
|
|
|
605
|
-
- [
|
|
605
|
+
- [RouteMap](classes/RouteMap.md)
|
|
606
606
|
- [RouterBridgeBase](classes/RouterBridgeBase.md)
|
|
607
607
|
|
|
608
608
|
## Interfaces
|
|
@@ -613,9 +613,9 @@ For a copy, see <https://opensource.org/licenses/MIT>.
|
|
|
613
613
|
- [MachineNodeData](interfaces/MachineNodeData.md)
|
|
614
614
|
- [PlayRouteEvent](interfaces/PlayRouteEvent.md)
|
|
615
615
|
- [RouteInfo](interfaces/RouteInfo.md)
|
|
616
|
-
- [RouteMap](interfaces/RouteMap.md)
|
|
617
616
|
- [RouteMapping](interfaces/RouteMapping.md)
|
|
618
617
|
- [RouteMatch](interfaces/RouteMatch.md)
|
|
618
|
+
- [RouteMatcher](interfaces/RouteMatcher.md)
|
|
619
619
|
- [RouteNode](interfaces/RouteNode.md)
|
|
620
620
|
- [RouteObject](interfaces/RouteObject.md)
|
|
621
621
|
- [RouterBridge](interfaces/RouterBridge.md)
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
[Documentation](../../../README.md) / [@xmachines/play-router](../README.md) /
|
|
1
|
+
[Documentation](../../../README.md) / [@xmachines/play-router](../README.md) / RouteMap
|
|
2
2
|
|
|
3
|
-
# Class:
|
|
3
|
+
# Class: RouteMap
|
|
4
4
|
|
|
5
|
-
Defined in: [base-route-map.ts:100](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [base-route-map.ts:100](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/base-route-map.ts#L100)
|
|
6
6
|
|
|
7
7
|
Shared bidirectional route map base class.
|
|
8
8
|
|
|
9
|
-
All framework
|
|
9
|
+
All framework adapters use this class as their route map — they add no logic of their
|
|
10
10
|
own and inherit the full public API from here.
|
|
11
11
|
|
|
12
12
|
**Lookup strategy:**
|
|
@@ -25,9 +25,9 @@ own and inherit the full public API from here.
|
|
|
25
25
|
## Example
|
|
26
26
|
|
|
27
27
|
```typescript
|
|
28
|
-
import {
|
|
28
|
+
import { RouteMap } from "@xmachines/play-router";
|
|
29
29
|
|
|
30
|
-
const map = new
|
|
30
|
+
const map = new RouteMap([
|
|
31
31
|
{ stateId: "home", path: "/" },
|
|
32
32
|
{ stateId: "profile", path: "/profile/:userId" },
|
|
33
33
|
{ stateId: "settings", path: "/settings/:section?" },
|
|
@@ -47,10 +47,10 @@ map.getPathByStateId("missing"); // null
|
|
|
47
47
|
### Constructor
|
|
48
48
|
|
|
49
49
|
```ts
|
|
50
|
-
new
|
|
50
|
+
new RouteMap(mappings, options?): RouteMap;
|
|
51
51
|
```
|
|
52
52
|
|
|
53
|
-
Defined in: [base-route-map.ts:125](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
53
|
+
Defined in: [base-route-map.ts:125](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/base-route-map.ts#L125)
|
|
54
54
|
|
|
55
55
|
Build a route map from an array of state ID ↔ path mappings.
|
|
56
56
|
|
|
@@ -68,7 +68,7 @@ buckets for efficient candidate selection.
|
|
|
68
68
|
|
|
69
69
|
#### Returns
|
|
70
70
|
|
|
71
|
-
`
|
|
71
|
+
`RouteMap`
|
|
72
72
|
|
|
73
73
|
## Methods
|
|
74
74
|
|
|
@@ -78,7 +78,7 @@ buckets for efficient candidate selection.
|
|
|
78
78
|
getPathByStateId(stateId): string | null;
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
-
Defined in: [base-route-map.ts:209](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
81
|
+
Defined in: [base-route-map.ts:209](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/base-route-map.ts#L209)
|
|
82
82
|
|
|
83
83
|
Look up the path pattern registered for a state ID.
|
|
84
84
|
|
|
@@ -109,7 +109,7 @@ map.getPathByStateId("missing"); // null
|
|
|
109
109
|
getStateIdByPath(path): string | null;
|
|
110
110
|
```
|
|
111
111
|
|
|
112
|
-
Defined in: [base-route-map.ts:174](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
112
|
+
Defined in: [base-route-map.ts:174](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.35/packages/play-router/src/base-route-map.ts#L174)
|
|
113
113
|
|
|
114
114
|
Resolve a URL path to its mapped state ID.
|
|
115
115
|
|