@xmachines/docs 1.0.0-beta.52 → 1.0.0-beta.54
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/README.md +1 -1
- package/api/@xmachines/play/classes/NonNullableError.md +7 -7
- package/api/@xmachines/play/classes/PlayError.md +7 -7
- 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 +2 -0
- package/api/@xmachines/play-actor/classes/AbstractActor.md +14 -14
- package/api/@xmachines/play-actor/functions/attachRenderErrorHandler.md +40 -0
- package/api/@xmachines/play-actor/functions/toAtomState.md +33 -0
- package/api/@xmachines/play-actor/functions/typedSpec.md +1 -1
- package/api/@xmachines/play-actor/interfaces/BaseActorProviderProps.md +5 -5
- package/api/@xmachines/play-actor/interfaces/BaseViewContextValue.md +5 -5
- 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 +2 -2
- package/api/@xmachines/play-dom/README.md +2 -0
- package/api/@xmachines/play-dom/classes/PlayRenderer.md +28 -4
- package/api/@xmachines/play-dom/functions/createPlayUI.md +1 -1
- package/api/@xmachines/play-dom/functions/createRenderer.md +1 -1
- package/api/@xmachines/play-dom/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-dom/functions/renderSpec.md +12 -30
- package/api/@xmachines/play-dom/interfaces/ComponentContext.md +7 -7
- package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +7 -6
- package/api/@xmachines/play-dom/interfaces/DefineRegistryResult.md +4 -4
- package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +16 -15
- package/api/@xmachines/play-dom/interfaces/EventHandle.md +4 -4
- package/api/@xmachines/play-dom/interfaces/MountOptions.md +3 -3
- package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +9 -8
- package/api/@xmachines/play-dom/interfaces/RenderSpecOptions.md +28 -0
- package/api/@xmachines/play-dom/interfaces/UIProviderOptions.md +6 -5
- 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/ConfirmHandler.md +44 -0
- package/api/@xmachines/play-dom/type-aliases/DefineRegistryOptions.md +2 -2
- 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 +1 -1
- package/api/@xmachines/play-dom/type-aliases/RenderErrorHandler.md +1 -1
- 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/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 +16 -6
- package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +4 -4
- package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +7 -3
- package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +16 -4
- package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +2 -2
- package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +6 -6
- package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +4 -4
- package/api/@xmachines/play-react/README.md +6 -6
- package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +18 -18
- package/api/@xmachines/play-react/functions/ActionProvider.md +1 -1
- package/api/@xmachines/play-react/functions/JSONUIProvider.md +1 -1
- package/api/@xmachines/play-react/functions/Renderer.md +1 -1
- package/api/@xmachines/play-react/functions/StateProvider.md +1 -1
- package/api/@xmachines/play-react/functions/ValidationProvider.md +1 -1
- package/api/@xmachines/play-react/functions/VisibilityProvider.md +1 -1
- package/api/@xmachines/play-react/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-react/functions/useActor.md +1 -1
- package/api/@xmachines/play-react/functions/useBoundProp.md +1 -1
- package/api/@xmachines/play-react/functions/usePlayView.md +1 -1
- package/api/@xmachines/play-react/functions/useSignalEffect.md +28 -26
- package/api/@xmachines/play-react/interfaces/ActionProviderProps.md +1 -1
- package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +8 -8
- package/api/@xmachines/play-react/interfaces/ComponentContext.md +1 -1
- package/api/@xmachines/play-react/interfaces/JSONUIProviderProps.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/PlayUIProviderProps.md +8 -8
- package/api/@xmachines/play-react/interfaces/RendererProps.md +1 -1
- package/api/@xmachines/play-react/interfaces/StateProviderProps.md +1 -1
- package/api/@xmachines/play-react/interfaces/ValidationProviderProps.md +1 -1
- package/api/@xmachines/play-react/interfaces/ViewContextValue.md +5 -5
- package/api/@xmachines/play-react/interfaces/VisibilityProviderProps.md +1 -1
- package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +1 -1
- package/api/@xmachines/play-react/type-aliases/ComponentFn.md +1 -1
- package/api/@xmachines/play-react/type-aliases/RenderErrorHandler.md +1 -1
- package/api/@xmachines/play-react/variables/ActorProvider.md +1 -1
- package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-react/variables/PlayUIProvider.md +1 -1
- package/api/@xmachines/play-react-router/README.md +10 -1
- package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +45 -32
- package/api/@xmachines/play-react-router/classes/RouteMap.md +17 -5
- package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +45 -0
- package/api/@xmachines/play-react-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +2 -2
- package/api/@xmachines/play-react-router/interfaces/PlayActor.md +7 -7
- package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +16 -6
- package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderBaseProps.md +32 -0
- package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +17 -7
- package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +2 -2
- package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +6 -6
- package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
- package/api/@xmachines/play-react-router/{functions → variables}/PlayRouterProvider.md +6 -6
- package/api/@xmachines/play-router/README.md +6 -8
- package/api/@xmachines/play-router/classes/RouteMap.md +17 -5
- package/api/@xmachines/play-router/classes/RouterBridgeBase.md +50 -37
- package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +1 -1
- package/api/@xmachines/play-router/functions/buildRouteTree.md +11 -1
- package/api/@xmachines/play-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +2 -2
- package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +13 -6
- 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 +9 -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 +7 -2
- 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/PlayActor.md +7 -7
- package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +16 -6
- package/api/@xmachines/play-router/interfaces/RoutableActor.md +4 -4
- package/api/@xmachines/play-router/interfaces/RouteInfo.md +8 -8
- package/api/@xmachines/play-router/interfaces/RouteMapOptions.md +2 -2
- 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 +6 -6
- 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 +4 -2
- package/api/@xmachines/play-signals/interfaces/SignalComputed.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalOptions.md +4 -2
- package/api/@xmachines/play-signals/interfaces/SignalState.md +3 -3
- package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +4 -4
- package/api/@xmachines/play-signals/namespaces/Signal/classes/Computed.md +3 -3
- package/api/@xmachines/play-signals/namespaces/Signal/classes/State.md +4 -4
- package/api/@xmachines/play-signals/namespaces/Signal/interfaces/Options.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/classes/Watcher.md +5 -5
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/currentComputed.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSinks.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSources.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSinks.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSources.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/untrack.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/unwatched.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/watched.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isComputed.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isState.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isWatcher.md +1 -1
- package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +1 -1
- package/api/@xmachines/play-solid/functions/ActionProvider.md +1 -1
- package/api/@xmachines/play-solid/functions/JSONUIProvider.md +1 -1
- package/api/@xmachines/play-solid/functions/Renderer.md +1 -1
- package/api/@xmachines/play-solid/functions/StateProvider.md +1 -1
- package/api/@xmachines/play-solid/functions/ValidationProvider.md +1 -1
- package/api/@xmachines/play-solid/functions/VisibilityProvider.md +1 -1
- package/api/@xmachines/play-solid/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-solid/functions/useAction.md +1 -1
- package/api/@xmachines/play-solid/functions/useActions.md +1 -1
- package/api/@xmachines/play-solid/functions/useActor.md +1 -1
- package/api/@xmachines/play-solid/functions/useBoundProp.md +1 -1
- package/api/@xmachines/play-solid/functions/useFieldValidation.md +1 -1
- package/api/@xmachines/play-solid/functions/useIsVisible.md +1 -1
- package/api/@xmachines/play-solid/functions/useOptionalValidation.md +1 -1
- package/api/@xmachines/play-solid/functions/usePlayView.md +1 -1
- package/api/@xmachines/play-solid/functions/useStateBinding.md +1 -1
- package/api/@xmachines/play-solid/functions/useStateStore.md +1 -1
- package/api/@xmachines/play-solid/functions/useStateValue.md +1 -1
- package/api/@xmachines/play-solid/functions/useVisibility.md +1 -1
- package/api/@xmachines/play-solid/interfaces/ActionProviderProps.md +1 -1
- package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +8 -8
- package/api/@xmachines/play-solid/interfaces/ComponentContext.md +1 -1
- package/api/@xmachines/play-solid/interfaces/DefineRegistryResult.md +1 -1
- package/api/@xmachines/play-solid/interfaces/JSONUIProviderProps.md +1 -1
- package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +8 -8
- package/api/@xmachines/play-solid/interfaces/RendererProps.md +1 -1
- package/api/@xmachines/play-solid/interfaces/StateProviderProps.md +1 -1
- package/api/@xmachines/play-solid/interfaces/ValidationProviderProps.md +1 -1
- package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +5 -5
- package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +1 -1
- package/api/@xmachines/play-solid/type-aliases/ComponentFn.md +1 -1
- package/api/@xmachines/play-solid/type-aliases/ComponentRegistry.md +1 -1
- package/api/@xmachines/play-solid/type-aliases/RenderErrorHandler.md +1 -1
- package/api/@xmachines/play-solid/type-aliases/SetState.md +1 -1
- package/api/@xmachines/play-solid/type-aliases/VisibilityProviderProps.md +1 -1
- package/api/@xmachines/play-solid/variables/ActorContext.md +1 -1
- package/api/@xmachines/play-solid/variables/ActorProvider.md +1 -1
- package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-solid/variables/PlayUIProvider.md +1 -1
- package/api/@xmachines/play-solid-router/README.md +7 -1
- package/api/@xmachines/play-solid-router/classes/RouteMap.md +17 -5
- package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +40 -33
- package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +44 -0
- package/api/@xmachines/play-solid-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +13 -13
- package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +7 -7
- package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +16 -6
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderBaseProps.md +30 -0
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +17 -7
- package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +2 -2
- package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +6 -6
- package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +34 -0
- package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
- package/api/@xmachines/play-solid-router/{functions → variables}/PlayRouterProvider.md +6 -6
- package/api/@xmachines/play-svelte/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-svelte/functions/getActorContext.md +1 -1
- package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +1 -1
- package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
- package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +8 -8
- package/api/@xmachines/play-svelte/interfaces/BaseComponentProps.md +1 -1
- package/api/@xmachines/play-svelte/interfaces/ComponentContext.md +1 -1
- package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +6 -6
- package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +11 -11
- package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +5 -5
- package/api/@xmachines/play-svelte/type-aliases/ActionFn.md +1 -1
- package/api/@xmachines/play-svelte/type-aliases/Actions.md +1 -1
- package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +1 -1
- package/api/@xmachines/play-svelte/type-aliases/ComponentFn.md +1 -1
- package/api/@xmachines/play-svelte/type-aliases/PlayRenderer.md +1 -1
- package/api/@xmachines/play-svelte/type-aliases/SetState.md +1 -1
- package/api/@xmachines/play-svelte/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +17 -5
- 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 +6 -6
- package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +16 -6
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +2 -2
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +6 -6
- 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 +17 -5
- 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 +16 -6
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +2 -2
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +6 -6
- package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/README.md +7 -1
- package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +17 -5
- package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +69 -52
- package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +45 -0
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +2 -2
- package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayActor.md +7 -7
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +16 -6
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderBaseProps.md +32 -0
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +17 -7
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +2 -2
- 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 +6 -6
- package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +12 -4
- package/api/@xmachines/play-tanstack-react-router/{functions → variables}/PlayRouterProvider.md +8 -6
- package/api/@xmachines/play-tanstack-router/README.md +58 -0
- package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +511 -0
- package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +57 -0
- package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +100 -0
- package/api/@xmachines/play-tanstack-solid-router/README.md +7 -1
- package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +17 -5
- package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +106 -79
- package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +44 -0
- package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayActor.md +7 -7
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +16 -6
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderBaseProps.md +31 -0
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +15 -7
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +2 -2
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +6 -6
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
- 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 +30 -7
- package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +33 -0
- package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-vue/functions/getPlayViewContext.md +1 -1
- package/api/@xmachines/play-vue/functions/useActor.md +1 -1
- package/api/@xmachines/play-vue/functions/useBoundProp.md +1 -1
- package/api/@xmachines/play-vue/interfaces/ActionProviderProps.md +1 -1
- package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +5 -5
- package/api/@xmachines/play-vue/interfaces/ComponentContext.md +1 -1
- package/api/@xmachines/play-vue/interfaces/DefineRegistryResult.md +1 -1
- package/api/@xmachines/play-vue/interfaces/JSONUIProviderProps.md +1 -1
- package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +8 -8
- package/api/@xmachines/play-vue/interfaces/RendererProps.md +1 -1
- package/api/@xmachines/play-vue/interfaces/StateProviderProps.md +1 -1
- package/api/@xmachines/play-vue/interfaces/ValidationProviderProps.md +1 -1
- package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +5 -5
- package/api/@xmachines/play-vue/interfaces/VisibilityProviderProps.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/ComponentFn.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/RenderErrorHandler.md +1 -1
- package/api/@xmachines/play-vue/variables/ActionProvider.md +1 -1
- package/api/@xmachines/play-vue/variables/JSONUIProvider.md +1 -1
- package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-vue/variables/Renderer.md +1 -1
- package/api/@xmachines/play-vue/variables/StateProvider.md +1 -1
- package/api/@xmachines/play-vue/variables/ValidationProvider.md +1 -1
- package/api/@xmachines/play-vue/variables/VisibilityProvider.md +1 -1
- package/api/@xmachines/play-vue-router/classes/RouteMap.md +17 -5
- package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +74 -63
- package/api/@xmachines/play-vue-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-vue-router/interfaces/PlayActor.md +7 -7
- package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +16 -6
- package/api/@xmachines/play-vue-router/interfaces/RouteMapOptions.md +2 -2
- package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +6 -6
- package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +3 -3
- package/api/@xmachines/play-xstate/classes/PlayerActor.md +72 -169
- 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/interfaces/RouteObject.md +2 -2
- 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/RouteMetadata.md +1 -1
- package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +4 -4
- package/api/@xmachines/shared/vite-aliases/README.md +1 -0
- package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +7 -3
- package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +6 -5
- package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +33 -0
- package/api/@xmachines/shared/vitest/README.md +5 -0
- package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +42 -0
- package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +1 -1
- package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +16 -0
- package/api/README.md +1 -0
- package/api/llms.txt +4 -3
- package/contributing/architecture.md +74 -74
- package/contributing/configuration.md +2 -17
- package/contributing/deployment.md +8 -8
- package/contributing/development.md +2 -2
- 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-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-svelte-demo/type-aliases/App.md +1 -1
- package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +1 -1
- package/examples/@xmachines/play-svelte-demo/variables/App.md +1 -1
- package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +1 -1
- package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +1 -1
- package/examples/@xmachines/play-vue-demo/variables/App.md +1 -1
- package/examples/@xmachines/play-vue-demo/variables/authCatalog.md +1 -1
- package/guides/README.md +6 -44
- package/guides/getting-started.md +37 -37
- package/package.json +6 -3
- package/api/@xmachines/play-router/functions/createRouteMatcher.md +0 -53
- package/api/@xmachines/play-router/interfaces/RouteMatcher.md +0 -56
- package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +0 -33
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Class: RouteMap
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/base-route-map.ts:
|
|
5
|
+
Defined in: [play-router/src/base-route-map.ts:101](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/base-route-map.ts#L101)
|
|
6
6
|
|
|
7
7
|
Shared bidirectional route map base class.
|
|
8
8
|
|
|
@@ -17,10 +17,17 @@ own and inherit the full public API from here.
|
|
|
17
17
|
- Results are cached after the first match in an LRU cache (default 500 entries,
|
|
18
18
|
configurable via the `cacheSize` constructor option)
|
|
19
19
|
|
|
20
|
-
**Pattern syntax** (`:param` / `:param?`):
|
|
20
|
+
**Pattern syntax** (`:param` / `:param?` / `*`):
|
|
21
21
|
|
|
22
22
|
- `:param` — required segment, matches exactly one non-`/` segment
|
|
23
23
|
- `:param?` — optional segment, matches zero or one non-`/` segment
|
|
24
|
+
- `*` — wildcard, matches any number of segments (URLPattern semantics)
|
|
25
|
+
|
|
26
|
+
**StateId forms:** stateIds may be registered and looked up in either
|
|
27
|
+
`"#stateId"` or `"stateId"` form — `RouteMap` canonicalizes internally.
|
|
28
|
+
`getStateIdByPath` returns the stateId exactly as registered;
|
|
29
|
+
`getPathByStateId` accepts both forms. Registering the same stateId in both
|
|
30
|
+
forms refers to one entry (the later registration wins for reverse lookup).
|
|
24
31
|
|
|
25
32
|
## Example
|
|
26
33
|
|
|
@@ -50,7 +57,7 @@ map.getPathByStateId("missing"); // null
|
|
|
50
57
|
new RouteMap(mappings, options?): RouteMap;
|
|
51
58
|
```
|
|
52
59
|
|
|
53
|
-
Defined in: [play-router/src/base-route-map.ts:
|
|
60
|
+
Defined in: [play-router/src/base-route-map.ts:127](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/base-route-map.ts#L127)
|
|
54
61
|
|
|
55
62
|
Build a route map from an array of state ID ↔ path mappings.
|
|
56
63
|
|
|
@@ -78,10 +85,14 @@ buckets for efficient candidate selection.
|
|
|
78
85
|
getPathByStateId(stateId): string | null;
|
|
79
86
|
```
|
|
80
87
|
|
|
81
|
-
Defined in: [play-router/src/base-route-map.ts:
|
|
88
|
+
Defined in: [play-router/src/base-route-map.ts:218](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/base-route-map.ts#L218)
|
|
82
89
|
|
|
83
90
|
Look up the path pattern registered for a state ID.
|
|
84
91
|
|
|
92
|
+
Accepts the stateId in either `"#stateId"` or `"stateId"` form regardless of
|
|
93
|
+
which form was used at registration — lookups are canonicalized internally,
|
|
94
|
+
so consumers never need to try both forms.
|
|
95
|
+
|
|
85
96
|
#### Parameters
|
|
86
97
|
|
|
87
98
|
| Parameter | Type | Description |
|
|
@@ -98,6 +109,7 @@ The registered path pattern, or `null` if the state ID is unknown
|
|
|
98
109
|
|
|
99
110
|
```typescript
|
|
100
111
|
map.getPathByStateId("profile"); // "/profile/:userId"
|
|
112
|
+
map.getPathByStateId("#profile"); // "/profile/:userId" (same entry)
|
|
101
113
|
map.getPathByStateId("missing"); // null
|
|
102
114
|
```
|
|
103
115
|
|
|
@@ -109,7 +121,7 @@ map.getPathByStateId("missing"); // null
|
|
|
109
121
|
getStateIdByPath(path): string | null;
|
|
110
122
|
```
|
|
111
123
|
|
|
112
|
-
Defined in: [play-router/src/base-route-map.ts:
|
|
124
|
+
Defined in: [play-router/src/base-route-map.ts:178](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/base-route-map.ts#L178)
|
|
113
125
|
|
|
114
126
|
Resolve a URL path to its mapped state ID.
|
|
115
127
|
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-react-router](../README.md) / createPlayRouterProvider
|
|
2
|
+
|
|
3
|
+
# Function: createPlayRouterProvider()
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
function createPlayRouterProvider<TRouter>(BridgeCtor): <TActor>(__namedParameters) => Element;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [play-react-router/src/create-play-router-provider.tsx:81](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/create-play-router-provider.tsx#L81)
|
|
10
|
+
|
|
11
|
+
Create a React `PlayRouterProvider` component bound to a specific bridge class.
|
|
12
|
+
|
|
13
|
+
The returned component connects a `PlayerActor` to the framework router,
|
|
14
|
+
keeping actor state and browser URL in sync bidirectionally.
|
|
15
|
+
|
|
16
|
+
The bridge is created once on mount and torn down on unmount. It is also
|
|
17
|
+
rebuilt if `actor`, `router`, or `routeMap` change identity — so all three
|
|
18
|
+
props must be **stable references** (created outside JSX or memoized).
|
|
19
|
+
Under React `<StrictMode>` the effect runs twice on mount
|
|
20
|
+
(connect → disconnect → connect), which the bridges support.
|
|
21
|
+
|
|
22
|
+
## Type Parameters
|
|
23
|
+
|
|
24
|
+
| Type Parameter |
|
|
25
|
+
| -------------- |
|
|
26
|
+
| `TRouter` |
|
|
27
|
+
|
|
28
|
+
## Parameters
|
|
29
|
+
|
|
30
|
+
| Parameter | Type | Description |
|
|
31
|
+
| ------------ | -------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- |
|
|
32
|
+
| `BridgeCtor` | [`PlayRouterBridgeConstructor`](../type-aliases/PlayRouterBridgeConstructor.md)\<`TRouter`\> | Bridge class constructed as `new BridgeCtor(router, actor, routeMap)`. |
|
|
33
|
+
|
|
34
|
+
## Returns
|
|
35
|
+
|
|
36
|
+
A `PlayRouterProvider` component, generic over the actor type so the
|
|
37
|
+
`renderer` callback receives the same concrete actor type that was passed in.
|
|
38
|
+
|
|
39
|
+
\<`TActor`\>(`__namedParameters`) => `Element`
|
|
40
|
+
|
|
41
|
+
## Example
|
|
42
|
+
|
|
43
|
+
```tsx
|
|
44
|
+
export const PlayRouterProvider = createPlayRouterProvider(ReactRouterBridge);
|
|
45
|
+
```
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function createRouteMap(machine, options?): RouteMap;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-router/src/create-route-map.ts:45](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [play-router/src/create-route-map.ts:45](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/create-route-map.ts#L45)
|
|
10
10
|
|
|
11
11
|
Create a `RouteMap` from an XState state machine.
|
|
12
12
|
|
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
function createRouteMapFromTree(routeTree, options?): RouteMap;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-router/src/create-route-map-from-tree.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
9
|
+
Defined in: [play-router/src/create-route-map-from-tree.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/create-route-map-from-tree.ts#L33)
|
|
10
10
|
|
|
11
11
|
Create a `RouteMap` from a `RouteTree` node structure.
|
|
12
12
|
|
|
13
|
-
Used by framework-router adapters
|
|
13
|
+
Used by framework-router adapters that pass a
|
|
14
14
|
`RouteTree` produced by `extractMachineRoutes()` rather than calling
|
|
15
15
|
`createRouteMap()` directly.
|
|
16
16
|
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: PlayActor
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/types.ts:297](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-router/src/types.ts:297](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L297)
|
|
6
6
|
|
|
7
7
|
Full actor shape used by `PlayRouterProvider` components across all framework
|
|
8
|
-
adapters (`play-solid-router`, `play-
|
|
9
|
-
|
|
8
|
+
adapters (`play-solid-router`, `play-vue-router`, `play-react-router`, and the
|
|
9
|
+
adapters built on the shared framework-router bridge bases).
|
|
10
10
|
|
|
11
11
|
Extends `RoutableActor` with `currentView` — the provider renders the current
|
|
12
12
|
view spec in addition to synchronizing routes, so it needs both capabilities.
|
|
@@ -37,9 +37,9 @@ function MyRouterProvider({ actor }: { actor: PlayActor }) {
|
|
|
37
37
|
|
|
38
38
|
| Property | Modifier | Type | Description | Inherited from | Defined in |
|
|
39
39
|
| ------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
|
|
40
|
-
| <a id="property-currentroute"></a> `currentRoute` | `readonly` | [`Computed`](../../play-signals/namespaces/Signal/classes/Computed.md)\<`string` \| `null`\> | TC39 Signal exposing the actor's current URL path (or state ID). | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md).[`currentRoute`](../../play-dom-router/interfaces/RoutableActor.md#property-currentroute) | [play-router/src/types.ts:261](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
41
|
-
| <a id="property-currentview"></a> `currentView` | `readonly` | [`State`](../../play-signals/namespaces/Signal/classes/State.md)\<[`PlaySpec`](../../play-actor/interfaces/PlaySpec.md) \| `null`\> | TC39 Signal exposing the actor's current view spec, or `null` when inactive. | - | [play-router/src/types.ts:299](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
42
|
-
| <a id="property-initialroute"></a> `initialRoute` | `readonly` | `string` \| `null` | The route derived from the machine's initial state — fixed at construction. Router bridges compare this against the browser URL to distinguish a deep-link (router wins) from a session restore (actor wins). | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md).[`initialRoute`](../../play-dom-router/interfaces/RoutableActor.md#property-initialroute) | [play-router/src/types.ts:267](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
40
|
+
| <a id="property-currentroute"></a> `currentRoute` | `readonly` | [`Computed`](../../play-signals/namespaces/Signal/classes/Computed.md)\<`string` \| `null`\> | TC39 Signal exposing the actor's current URL path (or state ID). | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md).[`currentRoute`](../../play-dom-router/interfaces/RoutableActor.md#property-currentroute) | [play-router/src/types.ts:261](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L261) |
|
|
41
|
+
| <a id="property-currentview"></a> `currentView` | `readonly` | [`State`](../../play-signals/namespaces/Signal/classes/State.md)\<[`PlaySpec`](../../play-actor/interfaces/PlaySpec.md) \| `null`\> | TC39 Signal exposing the actor's current view spec, or `null` when inactive. | - | [play-router/src/types.ts:299](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L299) |
|
|
42
|
+
| <a id="property-initialroute"></a> `initialRoute` | `readonly` | `string` \| `null` | The route derived from the machine's initial state — fixed at construction. Router bridges compare this against the browser URL to distinguish a deep-link (router wins) from a session restore (actor wins). | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md).[`initialRoute`](../../play-dom-router/interfaces/RoutableActor.md#property-initialroute) | [play-router/src/types.ts:267](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L267) |
|
|
43
43
|
|
|
44
44
|
## Methods
|
|
45
45
|
|
|
@@ -49,7 +49,7 @@ function MyRouterProvider({ actor }: { actor: PlayActor }) {
|
|
|
49
49
|
send(event): void;
|
|
50
50
|
```
|
|
51
51
|
|
|
52
|
-
Defined in: [play-router/src/types.ts:269](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
52
|
+
Defined in: [play-router/src/types.ts:269](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L269)
|
|
53
53
|
|
|
54
54
|
Send a route navigation event to the actor.
|
|
55
55
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: PlayRouteEvent
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/types.ts:225](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-router/src/types.ts:225](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L225)
|
|
6
6
|
|
|
7
7
|
Enhanced routing event with parameter and query support
|
|
8
8
|
|
|
@@ -22,22 +22,32 @@ via `play.route` events, Actor decides via state machine transitions.
|
|
|
22
22
|
|
|
23
23
|
## Param
|
|
24
24
|
|
|
25
|
+
**type**
|
|
26
|
+
|
|
25
27
|
Event discriminator (always "play.route")
|
|
26
28
|
|
|
27
29
|
## Param
|
|
28
30
|
|
|
31
|
+
**to**
|
|
32
|
+
|
|
29
33
|
Target state ID with # prefix (e.g., '#home', '#profile')
|
|
30
34
|
|
|
31
35
|
## Param
|
|
32
36
|
|
|
37
|
+
**params**
|
|
38
|
+
|
|
33
39
|
Path-only route parameters extracted from the URL path (e.g., `{ userId: '123' }` from `/profile/123`). Query parameters are kept separate in `query`.
|
|
34
40
|
|
|
35
41
|
## Param
|
|
36
42
|
|
|
43
|
+
**query**
|
|
44
|
+
|
|
37
45
|
Query parameters only (isolated from path params)
|
|
38
46
|
|
|
39
47
|
## Param
|
|
40
48
|
|
|
49
|
+
**match**
|
|
50
|
+
|
|
41
51
|
Full URLPattern match result for debugging/observability (optional)
|
|
42
52
|
|
|
43
53
|
## Examples
|
|
@@ -112,8 +122,8 @@ URLPatternResult for advanced use cases (debugging, pattern analysis).
|
|
|
112
122
|
|
|
113
123
|
| Property | Modifier | Type | Defined in |
|
|
114
124
|
| -------------------------------------- | ---------- | ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------- |
|
|
115
|
-
| <a id="property-match"></a> `match?` | `readonly` | `unknown` | [play-router/src/types.ts:230](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:228](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:229](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:227](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:226](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
125
|
+
| <a id="property-match"></a> `match?` | `readonly` | `unknown` | [play-router/src/types.ts:230](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L230) |
|
|
126
|
+
| <a id="property-params"></a> `params?` | `readonly` | `Record`\<`string`, `string`\> | [play-router/src/types.ts:228](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L228) |
|
|
127
|
+
| <a id="property-query"></a> `query?` | `readonly` | `Record`\<`string`, `string`\> | [play-router/src/types.ts:229](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L229) |
|
|
128
|
+
| <a id="property-to"></a> `to` | `readonly` | `string` | [play-router/src/types.ts:227](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L227) |
|
|
129
|
+
| <a id="property-type"></a> `type` | `readonly` | `"play.route"` | [play-router/src/types.ts:226](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L226) |
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-react-router](../README.md) / PlayRouterProviderBaseProps
|
|
2
|
+
|
|
3
|
+
# Interface: PlayRouterProviderBaseProps\<TRouter, TActor\>
|
|
4
|
+
|
|
5
|
+
Defined in: [play-react-router/src/create-play-router-provider.tsx:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/create-play-router-provider.tsx#L34)
|
|
6
|
+
|
|
7
|
+
Props shared by every factory-created React `PlayRouterProvider`.
|
|
8
|
+
|
|
9
|
+
Adapter packages re-export a concrete alias with `TRouter` bound to their
|
|
10
|
+
router instance type (e.g. `PlayRouterProviderProps<TActor>` in
|
|
11
|
+
`@xmachines/play-react-router` binds `TRouter` to the `createBrowserRouter`
|
|
12
|
+
return type).
|
|
13
|
+
|
|
14
|
+
## Extended by
|
|
15
|
+
|
|
16
|
+
- [`PlayRouterProviderProps`](PlayRouterProviderProps.md)
|
|
17
|
+
|
|
18
|
+
## Type Parameters
|
|
19
|
+
|
|
20
|
+
| Type Parameter | Default type |
|
|
21
|
+
| ---------------------------------------------- | --------------------------- |
|
|
22
|
+
| `TRouter` | - |
|
|
23
|
+
| `TActor` _extends_ [`PlayActor`](PlayActor.md) | [`PlayActor`](PlayActor.md) |
|
|
24
|
+
|
|
25
|
+
## Properties
|
|
26
|
+
|
|
27
|
+
| Property | Type | Description | Defined in |
|
|
28
|
+
| ----------------------------------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
29
|
+
| <a id="property-actor"></a> `actor` | `TActor` | The actor to sync with the 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/create-play-router-provider.tsx:40](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/create-play-router-provider.tsx#L40) |
|
|
30
|
+
| <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/create-play-router-provider.tsx:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/create-play-router-provider.tsx#L57) |
|
|
31
|
+
| <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. `createRouteMapFromTree(routeTree)` in JSX), a new object is produced on every render and the bridge reconnects every render. Memoize with `useMemo`: `const routeMap = useMemo(() => createRouteMapFromTree(routeTree), [routeTree]);` | [play-react-router/src/create-play-router-provider.tsx:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/create-play-router-provider.tsx#L55) |
|
|
32
|
+
| <a id="property-router"></a> `router` | `TRouter` | The router instance the bridge synchronizes with. Must be a stable reference. | [play-react-router/src/create-play-router-provider.tsx:42](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/create-play-router-provider.tsx#L42) |
|
|
@@ -2,7 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: PlayRouterProviderProps\<TActor\>
|
|
4
4
|
|
|
5
|
-
Defined in: [play-react-router/src/play-router-provider.tsx:
|
|
5
|
+
Defined in: [play-react-router/src/play-router-provider.tsx:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/play-router-provider.tsx#L26)
|
|
6
|
+
|
|
7
|
+
Props for the React Router `PlayRouterProvider`.
|
|
8
|
+
|
|
9
|
+
`router` is the React Router instance returned by `createBrowserRouter`.
|
|
10
|
+
See `PlayRouterProviderBaseProps` for the stable-reference requirements on
|
|
11
|
+
`actor`, `router`, and `routeMap`.
|
|
12
|
+
|
|
13
|
+
## Extends
|
|
14
|
+
|
|
15
|
+
- [`PlayRouterProviderBaseProps`](PlayRouterProviderBaseProps.md)\<`BrowserRouterInstance`, `TActor`\>
|
|
6
16
|
|
|
7
17
|
## Type Parameters
|
|
8
18
|
|
|
@@ -12,9 +22,9 @@ Defined in: [play-react-router/src/play-router-provider.tsx:9](https://gitlab.co
|
|
|
12
22
|
|
|
13
23
|
## Properties
|
|
14
24
|
|
|
15
|
-
| Property | Type | Description | Defined in
|
|
16
|
-
| ----------------------------------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
17
|
-
| <a id="property-actor"></a> `actor` | `TActor` | The actor to sync with
|
|
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:
|
|
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. `createRouteMapFromTree(routeTree)` in JSX), a new object is produced on every render and the bridge reconnects every render. Memoize with `useMemo`: `const routeMap = useMemo(() => createRouteMapFromTree(routeTree), [routeTree]);` | [play-react-router/src/play-router-provider.tsx:
|
|
20
|
-
| <a id="property-router"></a> `router` | `Router` | The
|
|
25
|
+
| Property | Type | Description | Inherited from | Defined in |
|
|
26
|
+
| ----------------------------------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
27
|
+
| <a id="property-actor"></a> `actor` | `TActor` | The actor to sync with the 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. | [`PlayRouterProviderBaseProps`](PlayRouterProviderBaseProps.md).[`actor`](PlayRouterProviderBaseProps.md#property-actor) | [play-react-router/src/create-play-router-provider.tsx:40](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/create-play-router-provider.tsx#L40) |
|
|
28
|
+
| <a id="property-renderer"></a> `renderer` | (`actor`, `router`) => `ReactNode` | Renderer callback receives the same concrete actor type that was passed in. | [`PlayRouterProviderBaseProps`](PlayRouterProviderBaseProps.md).[`renderer`](PlayRouterProviderBaseProps.md#property-renderer) | [play-react-router/src/create-play-router-provider.tsx:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/create-play-router-provider.tsx#L57) |
|
|
29
|
+
| <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. `createRouteMapFromTree(routeTree)` in JSX), a new object is produced on every render and the bridge reconnects every render. Memoize with `useMemo`: `const routeMap = useMemo(() => createRouteMapFromTree(routeTree), [routeTree]);` | [`PlayRouterProviderBaseProps`](PlayRouterProviderBaseProps.md).[`routeMap`](PlayRouterProviderBaseProps.md#property-routemap) | [play-react-router/src/create-play-router-provider.tsx:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/create-play-router-provider.tsx#L55) |
|
|
30
|
+
| <a id="property-router"></a> `router` | `Router` | The router instance the bridge synchronizes with. Must be a stable reference. | [`PlayRouterProviderBaseProps`](PlayRouterProviderBaseProps.md).[`router`](PlayRouterProviderBaseProps.md#property-router) | [play-react-router/src/create-play-router-provider.tsx:42](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/create-play-router-provider.tsx#L42) |
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: RouteMapOptions
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/create-route-map.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-router/src/create-route-map.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/create-route-map.ts#L9)
|
|
6
6
|
|
|
7
7
|
Options for `createRouteMap` and `createRouteMapFromTree`.
|
|
8
8
|
|
|
@@ -10,4 +10,4 @@ Options for `createRouteMap` and `createRouteMapFromTree`.
|
|
|
10
10
|
|
|
11
11
|
| Property | Type | Description | Defined in |
|
|
12
12
|
| -------------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
-
| <a id="property-cachesize"></a> `cacheSize?` | `number` | Maximum number of resolved parameterized path lookups to cache. `RouteMap.getStateIdByPath()` resolves parameterized patterns (e.g. `/profile/:userId`) via URLPattern on every call. Frequently visited paths are cached in an LRU so subsequent lookups are O(1). Increase this value for applications with large parameterized route sets or high navigation frequency. Default: `500`. | [play-router/src/create-route-map.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
13
|
+
| <a id="property-cachesize"></a> `cacheSize?` | `number` | Maximum number of resolved parameterized path lookups to cache. `RouteMap.getStateIdByPath()` resolves parameterized patterns (e.g. `/profile/:userId`) via URLPattern on every call. Frequently visited paths are cached in an LRU so subsequent lookups are O(1). Increase this value for applications with large parameterized route sets or high navigation frequency. Default: `500`. | [play-router/src/create-route-map.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/create-route-map.ts#L20) |
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: RouteMapping
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/base-route-map.ts:
|
|
5
|
+
Defined in: [play-router/src/base-route-map.ts:51](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/base-route-map.ts#L51)
|
|
6
6
|
|
|
7
7
|
A single state ID ↔ path mapping entry.
|
|
8
8
|
|
|
@@ -23,5 +23,5 @@ const optionalMapping: RouteMapping = { stateId: "settings", path: "/settings/:s
|
|
|
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:
|
|
27
|
-
| <a id="property-stateid"></a> `stateId` | `readonly` | `string` | State machine state ID (e.g., `"home"`, `"#profile"`) | [play-router/src/base-route-map.ts:
|
|
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:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/base-route-map.ts#L55) |
|
|
27
|
+
| <a id="property-stateid"></a> `stateId` | `readonly` | `string` | State machine state ID (e.g., `"home"`, `"#profile"`) | [play-router/src/base-route-map.ts:53](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/base-route-map.ts#L53) |
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: RouterBridge
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/types.ts:341](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
5
|
+
Defined in: [play-router/src/types.ts:341](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L341)
|
|
6
6
|
|
|
7
7
|
RouterBridge interface for runtime infrastructure adapters
|
|
8
8
|
|
|
9
|
-
Defines the lifecycle connection between Infrastructure (e.g.,
|
|
9
|
+
Defines the lifecycle connection between Infrastructure (e.g., a framework router) and
|
|
10
10
|
the Actor. Infrastructure "bridges" to the Actor by observing its signals and
|
|
11
11
|
managing its own lifecycle accordingly.
|
|
12
12
|
|
|
@@ -16,13 +16,13 @@ a unidirectional observation pattern. Infrastructure connects to observe Actor s
|
|
|
16
16
|
|
|
17
17
|
## Example
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
Framework router bridge implementation
|
|
20
20
|
|
|
21
21
|
```typescript
|
|
22
22
|
import type { RouterBridge } from "@xmachines/play-router";
|
|
23
23
|
import { Signal } from "@xmachines/play-signals";
|
|
24
24
|
|
|
25
|
-
class
|
|
25
|
+
class MyRouterBridge implements RouterBridge {
|
|
26
26
|
private watcher: Signal.Watcher | null = null;
|
|
27
27
|
|
|
28
28
|
async connect(): Promise<void> {
|
|
@@ -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:357](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
57
|
+
Defined in: [play-router/src/types.ts:357](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L357)
|
|
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:373](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.
|
|
86
|
+
Defined in: [play-router/src/types.ts:373](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/types.ts#L373)
|
|
87
87
|
|
|
88
88
|
Disconnect the router bridge from the Actor
|
|
89
89
|
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-react-router](../README.md) / PlayRouterBridgeConstructor
|
|
2
|
+
|
|
3
|
+
# Type Alias: PlayRouterBridgeConstructor\<TRouter\>
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type PlayRouterBridgeConstructor<TRouter> = (router, actor, routeMap) => RouterBridge;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [play-react-router/src/create-play-router-provider.tsx:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/create-play-router-provider.tsx#L20)
|
|
10
|
+
|
|
11
|
+
Constructor shape a bridge class must satisfy to be used with
|
|
12
|
+
`createPlayRouterProvider`: `(router, actor, routeMap) → RouterBridge`.
|
|
13
|
+
|
|
14
|
+
## Type Parameters
|
|
15
|
+
|
|
16
|
+
| Type Parameter |
|
|
17
|
+
| -------------- |
|
|
18
|
+
| `TRouter` |
|
|
19
|
+
|
|
20
|
+
## Parameters
|
|
21
|
+
|
|
22
|
+
| Parameter | Type |
|
|
23
|
+
| ---------- | ----------------------------------------- |
|
|
24
|
+
| `router` | `TRouter` |
|
|
25
|
+
| `actor` | [`PlayActor`](../interfaces/PlayActor.md) |
|
|
26
|
+
| `routeMap` | [`RouteMap`](../classes/RouteMap.md) |
|
|
27
|
+
|
|
28
|
+
## Returns
|
|
29
|
+
|
|
30
|
+
[`RouterBridge`](../interfaces/RouterBridge.md)
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
[API](../../../README.md) / [@xmachines/play-react-router](../README.md) / PlayRouterProvider
|
|
2
2
|
|
|
3
|
-
#
|
|
3
|
+
# Variable: PlayRouterProvider
|
|
4
4
|
|
|
5
5
|
```ts
|
|
6
|
-
|
|
6
|
+
const PlayRouterProvider: <TActor>(__namedParameters) => Element;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-react-router/src/play-router-provider.tsx:
|
|
9
|
+
Defined in: [play-react-router/src/play-router-provider.tsx:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-react-router/src/play-router-provider.tsx#L38)
|
|
10
10
|
|
|
11
11
|
Connects a `PlayerActor` to React Router, keeping actor state and browser URL
|
|
12
12
|
in sync bidirectionally.
|
|
@@ -23,9 +23,9 @@ props must be **stable references** (created outside JSX or memoized).
|
|
|
23
23
|
|
|
24
24
|
## Parameters
|
|
25
25
|
|
|
26
|
-
| Parameter | Type
|
|
27
|
-
| ------------------- |
|
|
28
|
-
| `__namedParameters` | [`
|
|
26
|
+
| Parameter | Type |
|
|
27
|
+
| ------------------- | --------------------------------------------------------------------------------------------------- |
|
|
28
|
+
| `__namedParameters` | [`PlayRouterProviderBaseProps`](../interfaces/PlayRouterProviderBaseProps.md)\<`Router`, `TActor`\> |
|
|
29
29
|
|
|
30
30
|
## Returns
|
|
31
31
|
|
|
@@ -189,7 +189,6 @@ bridge.disconnect();
|
|
|
189
189
|
|
|
190
190
|
| Export | Description |
|
|
191
191
|
| ----------------------------- | ------------------------------------------------------------------------------------------ |
|
|
192
|
-
| `createRouteMatcher(tree)` | Create a `RouteMatcher` that matches URL paths to `#stateId` values and extracts params |
|
|
193
192
|
| `RouteMap` | Bidirectional `stateId ↔ path` lookup class; supports O(1) exact and O(k) pattern matching |
|
|
194
193
|
| `findRouteById(tree, id)` | Look up a `RouteNode` by state ID |
|
|
195
194
|
| `findRouteByPath(tree, path)` | Look up a `RouteNode` by URL path (supports dynamic patterns) |
|
|
@@ -216,11 +215,11 @@ bridge.disconnect();
|
|
|
216
215
|
|
|
217
216
|
### Validation
|
|
218
217
|
|
|
219
|
-
| Export | Description
|
|
220
|
-
| ---------------------------------------- |
|
|
221
|
-
| `validateRouteFormat(route, stateId)` | Assert route path is non-empty
|
|
222
|
-
| `validateStateExists(stateId, stateIds)` | Assert a state ID is present in the machine graph
|
|
223
|
-
| `detectDuplicateRoutes(routes)` | Throw if any two states
|
|
218
|
+
| Export | Description |
|
|
219
|
+
| ---------------------------------------- | ----------------------------------------------------- |
|
|
220
|
+
| `validateRouteFormat(route, stateId)` | Assert route path is non-empty |
|
|
221
|
+
| `validateStateExists(stateId, stateIds)` | Assert a state ID is present in the machine graph |
|
|
222
|
+
| `detectDuplicateRoutes(routes)` | Throw if any two states resolve to the same full path |
|
|
224
223
|
|
|
225
224
|
### Key Types
|
|
226
225
|
|
|
@@ -351,6 +350,7 @@ runBridgeContractTests({
|
|
|
351
350
|
- **[@xmachines/play-actor](../play-actor/README.md)** — Abstract actor base class (`AbstractActor`, `Routable`); all `AbstractActor` subclasses satisfy `RoutableActor` structurally
|
|
352
351
|
- **[@xmachines/play-signals](../play-signals/README.md)** — TC39 Signals polyfill used for actor route observation
|
|
353
352
|
- **[@xmachines/play-xstate](../play-xstate/README.md)** — XState v5 logic adapter that integrates with route trees
|
|
353
|
+
- **[@xmachines/play-tanstack-router](../play-tanstack-router/README.md)** — Shared TanStack Router bridge base (framework-agnostic)
|
|
354
354
|
- **[@xmachines/play-tanstack-react-router](../play-tanstack-react-router/README.md)** — TanStack Router adapter (React)
|
|
355
355
|
- **[@xmachines/play-tanstack-solid-router](../play-tanstack-solid-router/README.md)** — TanStack Router adapter (SolidJS)
|
|
356
356
|
- **[@xmachines/play-react-router](../play-react-router/README.md)** — React Router v7 adapter
|
|
@@ -379,7 +379,6 @@ MIT — see [LICENSE](LICENSE).
|
|
|
379
379
|
- [RouteMapOptions](interfaces/RouteMapOptions.md)
|
|
380
380
|
- [RouteMapping](interfaces/RouteMapping.md)
|
|
381
381
|
- [RouteMatch](interfaces/RouteMatch.md)
|
|
382
|
-
- [RouteMatcher](interfaces/RouteMatcher.md)
|
|
383
382
|
- [RouteNode](interfaces/RouteNode.md)
|
|
384
383
|
- [RouteObject](interfaces/RouteObject.md)
|
|
385
384
|
- [RouterBridge](interfaces/RouterBridge.md)
|
|
@@ -398,7 +397,6 @@ MIT — see [LICENSE](LICENSE).
|
|
|
398
397
|
- [buildRouteTree](functions/buildRouteTree.md)
|
|
399
398
|
- [createRouteMap](functions/createRouteMap.md)
|
|
400
399
|
- [createRouteMapFromTree](functions/createRouteMapFromTree.md)
|
|
401
|
-
- [createRouteMatcher](functions/createRouteMatcher.md)
|
|
402
400
|
- [detectDuplicateRoutes](functions/detectDuplicateRoutes.md)
|
|
403
401
|
- [extractMachineRoutes](functions/extractMachineRoutes.md)
|
|
404
402
|
- [extractQuery](functions/extractQuery.md)
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Class: RouteMap
|
|
4
4
|
|
|
5
|
-
Defined in: [base-route-map.ts:
|
|
5
|
+
Defined in: [base-route-map.ts:101](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/base-route-map.ts#L101)
|
|
6
6
|
|
|
7
7
|
Shared bidirectional route map base class.
|
|
8
8
|
|
|
@@ -17,10 +17,17 @@ own and inherit the full public API from here.
|
|
|
17
17
|
- Results are cached after the first match in an LRU cache (default 500 entries,
|
|
18
18
|
configurable via the `cacheSize` constructor option)
|
|
19
19
|
|
|
20
|
-
**Pattern syntax** (`:param` / `:param?`):
|
|
20
|
+
**Pattern syntax** (`:param` / `:param?` / `*`):
|
|
21
21
|
|
|
22
22
|
- `:param` — required segment, matches exactly one non-`/` segment
|
|
23
23
|
- `:param?` — optional segment, matches zero or one non-`/` segment
|
|
24
|
+
- `*` — wildcard, matches any number of segments (URLPattern semantics)
|
|
25
|
+
|
|
26
|
+
**StateId forms:** stateIds may be registered and looked up in either
|
|
27
|
+
`"#stateId"` or `"stateId"` form — `RouteMap` canonicalizes internally.
|
|
28
|
+
`getStateIdByPath` returns the stateId exactly as registered;
|
|
29
|
+
`getPathByStateId` accepts both forms. Registering the same stateId in both
|
|
30
|
+
forms refers to one entry (the later registration wins for reverse lookup).
|
|
24
31
|
|
|
25
32
|
## Example
|
|
26
33
|
|
|
@@ -50,7 +57,7 @@ map.getPathByStateId("missing"); // null
|
|
|
50
57
|
new RouteMap(mappings, options?): RouteMap;
|
|
51
58
|
```
|
|
52
59
|
|
|
53
|
-
Defined in: [base-route-map.ts:
|
|
60
|
+
Defined in: [base-route-map.ts:127](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/base-route-map.ts#L127)
|
|
54
61
|
|
|
55
62
|
Build a route map from an array of state ID ↔ path mappings.
|
|
56
63
|
|
|
@@ -78,10 +85,14 @@ buckets for efficient candidate selection.
|
|
|
78
85
|
getPathByStateId(stateId): string | null;
|
|
79
86
|
```
|
|
80
87
|
|
|
81
|
-
Defined in: [base-route-map.ts:
|
|
88
|
+
Defined in: [base-route-map.ts:218](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/base-route-map.ts#L218)
|
|
82
89
|
|
|
83
90
|
Look up the path pattern registered for a state ID.
|
|
84
91
|
|
|
92
|
+
Accepts the stateId in either `"#stateId"` or `"stateId"` form regardless of
|
|
93
|
+
which form was used at registration — lookups are canonicalized internally,
|
|
94
|
+
so consumers never need to try both forms.
|
|
95
|
+
|
|
85
96
|
#### Parameters
|
|
86
97
|
|
|
87
98
|
| Parameter | Type | Description |
|
|
@@ -98,6 +109,7 @@ The registered path pattern, or `null` if the state ID is unknown
|
|
|
98
109
|
|
|
99
110
|
```typescript
|
|
100
111
|
map.getPathByStateId("profile"); // "/profile/:userId"
|
|
112
|
+
map.getPathByStateId("#profile"); // "/profile/:userId" (same entry)
|
|
101
113
|
map.getPathByStateId("missing"); // null
|
|
102
114
|
```
|
|
103
115
|
|
|
@@ -109,7 +121,7 @@ map.getPathByStateId("missing"); // null
|
|
|
109
121
|
getStateIdByPath(path): string | null;
|
|
110
122
|
```
|
|
111
123
|
|
|
112
|
-
Defined in: [base-route-map.ts:
|
|
124
|
+
Defined in: [base-route-map.ts:178](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.54/packages/play-router/src/base-route-map.ts#L178)
|
|
113
125
|
|
|
114
126
|
Resolve a URL path to its mapped state ID.
|
|
115
127
|
|