@xmachines/docs 1.0.0-beta.9 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +137 -7
- package/api/@xmachines/play/README.md +160 -38
- package/api/@xmachines/play/classes/NonNullableError.md +189 -0
- package/api/@xmachines/play/classes/PlayError.md +251 -0
- package/api/@xmachines/play/functions/assertNonNullable.md +56 -0
- package/api/@xmachines/play/type-aliases/PlayEvent.md +6 -6
- package/api/@xmachines/play-actor/README.md +141 -160
- package/api/@xmachines/play-actor/classes/AbstractActor.md +91 -122
- 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 +54 -0
- 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 +28 -0
- package/api/@xmachines/play-actor/interfaces/Routable.md +6 -21
- package/api/@xmachines/play-actor/interfaces/Viewable.md +12 -6
- package/api/@xmachines/play-dom/README.md +384 -0
- package/api/@xmachines/play-dom/classes/PlayRenderer.md +115 -0
- package/api/@xmachines/play-dom/functions/createPlayUI.md +28 -0
- package/api/@xmachines/play-dom/functions/createRenderer.md +44 -0
- package/api/@xmachines/play-dom/functions/defineRegistry.md +26 -0
- package/api/@xmachines/play-dom/functions/renderSpec.md +67 -0
- package/api/@xmachines/play-dom/interfaces/ComponentContext.md +23 -0
- package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +34 -0
- package/api/@xmachines/play-dom/interfaces/DefineRegistryResult.md +17 -0
- package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +28 -0
- package/api/@xmachines/play-dom/interfaces/EventHandle.md +15 -0
- package/api/@xmachines/play-dom/interfaces/MountOptions.md +18 -0
- package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +30 -0
- package/api/@xmachines/play-dom/interfaces/RenderSpecOptions.md +26 -0
- package/api/@xmachines/play-dom/interfaces/UIProviderOptions.md +32 -0
- package/api/@xmachines/play-dom/type-aliases/ActionFn.md +46 -0
- package/api/@xmachines/play-dom/type-aliases/Actions.md +18 -0
- package/api/@xmachines/play-dom/type-aliases/BaseComponentProps.md +114 -0
- package/api/@xmachines/play-dom/type-aliases/CatalogHasActions.md +25 -0
- package/api/@xmachines/play-dom/type-aliases/ComponentFn.md +26 -0
- package/api/@xmachines/play-dom/type-aliases/ComponentRegistry.md +15 -0
- package/api/@xmachines/play-dom/type-aliases/ConfirmHandler.md +44 -0
- package/api/@xmachines/play-dom/type-aliases/DefineRegistryOptions.md +39 -0
- package/api/@xmachines/play-dom/type-aliases/DomComponentRenderer.md +20 -0
- package/api/@xmachines/play-dom/type-aliases/DomRegistry.md +9 -0
- package/api/@xmachines/play-dom/type-aliases/DomSchema.md +9 -0
- package/api/@xmachines/play-dom/type-aliases/MountFn.md +27 -0
- package/api/@xmachines/play-dom/type-aliases/RenderErrorHandler.md +23 -0
- package/api/@xmachines/play-dom/type-aliases/SetState.md +30 -0
- package/api/@xmachines/play-dom/variables/schema.md +62 -0
- package/api/@xmachines/play-dom-router/README.md +271 -0
- package/api/@xmachines/play-dom-router/functions/connectRouter.md +43 -0
- package/api/@xmachines/{play-router → play-dom-router}/functions/createBrowserHistory.md +10 -2
- package/api/@xmachines/play-dom-router/functions/createRouteMap.md +39 -0
- package/api/@xmachines/play-dom-router/functions/createRouter.md +54 -0
- package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +176 -0
- package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +69 -0
- package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +15 -0
- package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +129 -0
- package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +68 -0
- package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +54 -0
- package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +121 -0
- package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +27 -0
- package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +104 -0
- package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +28 -0
- package/api/@xmachines/play-react/README.md +185 -334
- package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +46 -42
- 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/defineRegistry.md +49 -0
- package/api/@xmachines/play-react/functions/useActor.md +13 -0
- package/api/@xmachines/play-react/functions/useBoundProp.md +45 -0
- package/api/@xmachines/play-react/functions/usePlayView.md +32 -0
- package/api/@xmachines/play-react/functions/useSignalEffect.md +29 -20
- 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/ComponentContext.md +37 -0
- package/api/@xmachines/play-react/interfaces/JSONUIProviderProps.md +22 -0
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +7 -7
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +6 -6
- 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/AnyPlayActor.md +11 -0
- package/api/@xmachines/play-react/type-aliases/ComponentFn.md +36 -0
- package/api/@xmachines/play-react/type-aliases/RenderErrorHandler.md +23 -0
- package/api/@xmachines/play-react/variables/ActorProvider.md +33 -0
- package/api/@xmachines/play-react/variables/PlayRenderer.md +6 -56
- package/api/@xmachines/play-react/variables/PlayUIProvider.md +43 -0
- package/api/@xmachines/play-react-router/README.md +130 -114
- package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +19 -242
- package/api/@xmachines/play-react-router/classes/RouteMap.md +48 -36
- package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +45 -0
- package/api/@xmachines/play-react-router/functions/createRouteMap.md +39 -0
- package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +23 -12
- package/api/@xmachines/play-react-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderBaseProps.md +32 -0
- package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +25 -9
- package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +19 -9
- package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
- package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +32 -0
- package/api/@xmachines/play-router/README.md +275 -353
- package/api/@xmachines/play-router/classes/RouteMap.md +149 -0
- package/api/@xmachines/play-router/classes/RouterBridgeBase.md +21 -221
- package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +32 -0
- package/api/@xmachines/play-router/functions/buildRouteTree.md +12 -2
- package/api/@xmachines/play-router/functions/createRouteMap.md +22 -36
- package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +46 -0
- package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +14 -7
- package/api/@xmachines/play-router/functions/extractMachineRoutes.md +10 -46
- package/api/@xmachines/play-router/functions/extractQuery.md +22 -0
- package/api/@xmachines/play-router/functions/extractRouteParams.md +54 -0
- package/api/@xmachines/play-router/functions/findRouteById.md +2 -2
- package/api/@xmachines/play-router/functions/findRouteByPath.md +2 -2
- package/api/@xmachines/play-router/functions/getNavigableRoutes.md +2 -2
- package/api/@xmachines/play-router/functions/getRoutableRoutes.md +2 -2
- package/api/@xmachines/play-router/functions/getTransitionReachableRoutes.md +43 -0
- package/api/@xmachines/play-router/functions/isRouteReachable.md +38 -0
- package/api/@xmachines/play-router/functions/machineToGraph.md +19 -0
- package/api/@xmachines/play-router/functions/routeExists.md +2 -2
- package/api/@xmachines/play-router/functions/sanitizePathname.md +40 -0
- package/api/@xmachines/play-router/functions/validateRouteFormat.md +10 -9
- package/api/@xmachines/play-router/functions/validateStateExists.md +9 -9
- package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +13 -0
- package/api/@xmachines/play-router/interfaces/LocationLike.md +27 -0
- package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +15 -0
- package/api/@xmachines/play-router/interfaces/MachineNodeData.md +17 -0
- package/api/@xmachines/play-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-router/interfaces/ResolvedRoutePath.md +17 -0
- package/api/@xmachines/play-router/interfaces/RoutableActor.md +64 -0
- package/api/@xmachines/play-router/interfaces/RouteInfo.md +11 -11
- package/api/@xmachines/play-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-router/interfaces/RouteMapping.md +27 -0
- package/api/@xmachines/play-router/interfaces/RouteMatch.md +12 -0
- package/api/@xmachines/play-router/interfaces/RouteNode.md +13 -13
- package/api/@xmachines/play-router/interfaces/RouteObject.md +5 -5
- package/api/@xmachines/play-router/interfaces/RouteTree.md +8 -7
- package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +55 -0
- package/api/@xmachines/play-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-router/interfaces/WindowLike.md +65 -0
- package/api/@xmachines/play-router/type-aliases/MachineGraph.md +20 -0
- package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +2 -2
- package/api/@xmachines/play-signals/README.md +116 -65
- package/api/@xmachines/play-signals/functions/watchSignal.md +42 -0
- package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +7 -5
- package/api/@xmachines/play-signals/interfaces/SignalComputed.md +3 -3
- package/api/@xmachines/play-signals/interfaces/SignalOptions.md +7 -5
- package/api/@xmachines/play-signals/interfaces/SignalState.md +4 -4
- package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +5 -5
- package/api/@xmachines/play-signals/namespaces/Signal/README.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/classes/Computed.md +7 -7
- package/api/@xmachines/play-signals/namespaces/Signal/classes/State.md +8 -8
- package/api/@xmachines/play-signals/namespaces/Signal/interfaces/Options.md +7 -7
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/README.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/classes/Watcher.md +9 -9
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/currentComputed.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSinks.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSources.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSinks.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSources.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/untrack.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/unwatched.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/watched.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isComputed.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isState.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isWatcher.md +2 -2
- package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +2 -2
- package/api/@xmachines/play-solid/README.md +196 -234
- 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 +49 -0
- 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 +13 -0
- package/api/@xmachines/play-solid/functions/useBoundProp.md +45 -0
- 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/ComponentContext.md +37 -0
- package/api/@xmachines/play-solid/interfaces/DefineRegistryResult.md +15 -0
- package/api/@xmachines/play-solid/interfaces/JSONUIProviderProps.md +22 -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/AnyPlayActor.md +11 -0
- package/api/@xmachines/play-solid/type-aliases/ComponentFn.md +36 -0
- package/api/@xmachines/play-solid/type-aliases/ComponentRegistry.md +11 -0
- package/api/@xmachines/play-solid/type-aliases/RenderErrorHandler.md +23 -0
- 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 +6 -62
- package/api/@xmachines/play-solid/variables/PlayUIProvider.md +26 -0
- package/api/@xmachines/play-solid-router/README.md +151 -560
- package/api/@xmachines/play-solid-router/classes/RouteMap.md +31 -32
- package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +27 -242
- package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +44 -0
- package/api/@xmachines/play-solid-router/functions/createRouteMap.md +18 -11
- package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +84 -115
- package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderBaseProps.md +30 -0
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +25 -9
- package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +20 -7
- package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +34 -0
- package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +8 -4
- package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +22 -19
- package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +52 -0
- package/api/@xmachines/play-svelte/README.md +269 -0
- package/api/@xmachines/play-svelte/functions/defineRegistry.md +31 -0
- 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 +44 -0
- package/api/@xmachines/play-svelte/interfaces/BaseComponentProps.md +29 -0
- package/api/@xmachines/play-svelte/interfaces/ComponentContext.md +29 -0
- package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +24 -0
- package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +43 -0
- package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +24 -0
- package/api/@xmachines/play-svelte/type-aliases/ActionFn.md +30 -0
- package/api/@xmachines/play-svelte/type-aliases/Actions.md +17 -0
- package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +11 -0
- package/api/@xmachines/play-svelte/type-aliases/ComponentFn.md +18 -0
- package/api/@xmachines/play-svelte/type-aliases/JSONUIProviderProps.md +7 -0
- package/api/@xmachines/play-svelte/type-aliases/PlayRenderer.md +9 -0
- package/api/@xmachines/play-svelte/type-aliases/RenderErrorHandler.md +23 -0
- package/api/@xmachines/play-svelte/type-aliases/SetState.md +21 -0
- package/api/@xmachines/play-svelte/variables/PlayRenderer.md +9 -0
- package/api/@xmachines/play-svelte-spa-router/README.md +199 -0
- package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +149 -0
- package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +32 -0
- package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +39 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +17 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +129 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +27 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +104 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +65 -0
- package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +9 -0
- package/api/@xmachines/play-sveltekit-router/README.md +211 -0
- package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +149 -0
- package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +32 -0
- package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +39 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +13 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +27 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +129 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +27 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +104 -0
- package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +9 -0
- package/api/@xmachines/play-tanstack-react-router/README.md +155 -126
- package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +48 -36
- package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +31 -252
- package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +45 -0
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +22 -36
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +23 -12
- package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +28 -0
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderBaseProps.md +32 -0
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +25 -9
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +19 -9
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +6 -6
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +2 -2
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +40 -18
- package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +34 -0
- package/api/@xmachines/play-tanstack-router/README.md +58 -0
- package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +131 -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 +215 -175
- package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +31 -32
- package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +121 -0
- package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +44 -0
- package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +18 -11
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderBaseProps.md +31 -0
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +23 -9
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +14 -10
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +8 -4
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +40 -18
- package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +33 -0
- package/api/@xmachines/play-vue/README.md +192 -210
- package/api/@xmachines/play-vue/functions/defineRegistry.md +32 -0
- package/api/@xmachines/play-vue/functions/getPlayViewContext.md +28 -0
- package/api/@xmachines/play-vue/functions/useActor.md +13 -0
- package/api/@xmachines/play-vue/functions/useBoundProp.md +45 -0
- 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/ComponentContext.md +37 -0
- package/api/@xmachines/play-vue/interfaces/DefineRegistryResult.md +15 -0
- package/api/@xmachines/play-vue/interfaces/JSONUIProviderProps.md +21 -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/interfaces/VisibilityProviderProps.md +5 -0
- package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +11 -0
- package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +16 -0
- package/api/@xmachines/play-vue/type-aliases/ComponentFn.md +35 -0
- package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +15 -0
- package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +22 -0
- package/api/@xmachines/play-vue/type-aliases/RenderErrorHandler.md +23 -0
- package/api/@xmachines/play-vue/variables/ActionProvider.md +64 -0
- package/api/@xmachines/play-vue/variables/JSONUIProvider.md +105 -0
- package/api/@xmachines/play-vue/variables/PlayRenderer.md +2 -2
- package/api/@xmachines/play-vue/variables/Renderer.md +88 -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 +173 -487
- package/api/@xmachines/play-vue-router/classes/RouteMap.md +56 -116
- package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +23 -271
- package/api/@xmachines/play-vue-router/functions/createRouteMap.md +26 -6
- package/api/@xmachines/play-vue-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-vue-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +20 -8
- package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +8 -4
- package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +12 -6
- package/api/@xmachines/play-xstate/README.md +178 -347
- package/api/@xmachines/play-xstate/classes/PlayerActor.md +161 -191
- package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +31 -20
- package/api/@xmachines/play-xstate/functions/composeGuards.md +2 -2
- package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +2 -2
- package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +38 -0
- package/api/@xmachines/play-xstate/functions/definePlayer.md +14 -63
- package/api/@xmachines/play-xstate/functions/deriveRoute.md +3 -3
- package/api/@xmachines/play-xstate/functions/eventMatches.md +2 -2
- package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +3 -3
- package/api/@xmachines/play-xstate/functions/hasContext.md +2 -2
- package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +2 -2
- package/api/@xmachines/play-xstate/functions/negateGuard.md +2 -2
- package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +10 -14
- package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +22 -0
- package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +12 -13
- package/api/@xmachines/play-xstate/interfaces/RouteContext.md +15 -13
- package/api/@xmachines/play-xstate/interfaces/RouteObject.md +17 -0
- package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +2 -2
- package/api/@xmachines/play-xstate/type-aliases/Guard.md +2 -2
- package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +3 -3
- package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +10 -9
- package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +15 -5
- package/api/@xmachines/play-xstate/type-aliases/RouteMetadata.md +9 -0
- package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +22 -6
- package/api/@xmachines/shared/README.md +95 -295
- package/api/@xmachines/shared/vite-aliases/README.md +11 -0
- package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +38 -0
- package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +27 -0
- package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +30 -0
- package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +42 -0
- package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +33 -0
- package/api/@xmachines/shared/vitest/README.md +12 -0
- package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +42 -0
- package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +34 -0
- package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +16 -0
- package/api/README.md +6 -7
- package/api/llms.txt +72 -23
- package/contributing/README.md +10 -0
- package/contributing/architecture.md +599 -0
- package/contributing/configuration.md +368 -0
- package/contributing/deployment.md +312 -0
- package/contributing/development.md +464 -0
- package/contributing/testing.md +453 -0
- package/examples/@xmachines/play-dom-demo/README.md +181 -0
- package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +24 -0
- package/examples/@xmachines/play-dom-demo/functions/initShell.md +24 -0
- package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +9 -0
- package/examples/@xmachines/play-dom-demo/variables/About.md +12 -0
- package/examples/@xmachines/play-dom-demo/variables/Contact.md +12 -0
- package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Home.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Login.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +16 -0
- package/examples/@xmachines/play-dom-demo/variables/Navigation.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Overview.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Profile.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Settings.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Stats.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +172 -0
- package/examples/@xmachines/play-dom-router-demo/README.md +145 -0
- package/examples/@xmachines/play-react-demo/README.md +187 -0
- package/examples/@xmachines/play-react-demo/functions/App.md +13 -0
- package/examples/@xmachines/play-react-demo/functions/DebugPanel.md +20 -0
- package/examples/@xmachines/play-react-demo/functions/HeaderNav.md +20 -0
- package/examples/@xmachines/play-react-demo/functions/Shell.md +22 -0
- package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +9 -0
- package/examples/@xmachines/play-react-demo/variables/About.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Contact.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Dashboard.md +15 -0
- package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +15 -0
- package/examples/@xmachines/play-react-demo/variables/Home.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Login.md +16 -0
- package/examples/@xmachines/play-react-demo/variables/NavBar.md +16 -0
- package/examples/@xmachines/play-react-demo/variables/NavBarView.md +15 -0
- package/examples/@xmachines/play-react-demo/variables/Navigation.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Overview.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Profile.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Settings.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Shell.md +18 -0
- package/examples/@xmachines/play-react-demo/variables/Stats.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/authCatalog.md +172 -0
- package/examples/@xmachines/play-react-router-demo/README.md +151 -0
- package/examples/@xmachines/play-solid-demo/README.md +187 -0
- package/examples/@xmachines/play-solid-demo/functions/App.md +13 -0
- package/examples/@xmachines/play-solid-demo/functions/DebugPanel.md +20 -0
- package/examples/@xmachines/play-solid-demo/functions/HeaderNav.md +20 -0
- package/examples/@xmachines/play-solid-demo/functions/Shell.md +22 -0
- package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/About.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Contact.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +15 -0
- package/examples/@xmachines/play-solid-demo/variables/Home.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Login.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/NavBar.md +11 -0
- package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +15 -0
- package/examples/@xmachines/play-solid-demo/variables/Navigation.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Overview.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Profile.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Settings.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Shell.md +17 -0
- package/examples/@xmachines/play-solid-demo/variables/Stats.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +172 -0
- package/examples/@xmachines/play-solid-router-demo/README.md +137 -0
- package/examples/@xmachines/play-svelte-demo/README.md +143 -0
- 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 +129 -0
- package/examples/@xmachines/play-sveltekit-router-demo/README.md +133 -0
- package/examples/@xmachines/play-tanstack-react-router-demo/README.md +156 -0
- package/examples/@xmachines/play-tanstack-solid-router-demo/README.md +139 -0
- package/examples/@xmachines/play-vue-demo/README.md +183 -0
- 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 +139 -0
- package/examples/README.md +78 -30
- package/examples/basic-state-machine.md +75 -31
- package/examples/form-validation.md +261 -118
- package/examples/multi-router-integration.md +314 -194
- package/examples/routing-patterns.md +230 -189
- package/examples/traffic-light.md +114 -65
- package/guides/README.md +9 -21
- package/guides/actor-model.md +180 -0
- package/guides/getting-started.md +619 -137
- package/guides/signals.md +166 -0
- package/guides/state-machines.md +284 -0
- package/package.json +18 -7
- package/rfc/broker.md +100 -0
- package/rfc/browser.md +44 -0
- package/rfc/cli.md +118 -0
- package/rfc/git.md +61 -0
- package/rfc/mcp.md +43 -0
- package/rfc/node.md +36 -0
- package/rfc/play.md +472 -0
- package/rfc/rest.md +102 -0
- package/rfc/run.md +159 -0
- package/rfc/streams.md +168 -0
- package/api/@xmachines/play-actor/interfaces/ViewMetadata.md +0 -17
- package/api/@xmachines/play-catalog/README.md +0 -331
- package/api/@xmachines/play-catalog/functions/defineCatalog.md +0 -98
- package/api/@xmachines/play-catalog/functions/defineComponents.md +0 -134
- package/api/@xmachines/play-catalog/type-aliases/Catalog.md +0 -48
- package/api/@xmachines/play-catalog/type-aliases/ComponentsFor.md +0 -20
- package/api/@xmachines/play-catalog/type-aliases/InferComponentProps.md +0 -65
- package/api/@xmachines/play-catalog/type-aliases/NoExtraKeys.md +0 -17
- package/api/@xmachines/play-react/interfaces/PlayRendererProps.md +0 -15
- package/api/@xmachines/play-react-router/functions/PlayRouterProvider.md +0 -19
- package/api/@xmachines/play-react-router-demo/README.md +0 -137
- package/api/@xmachines/play-router/classes/BaseRouteMap.md +0 -142
- package/api/@xmachines/play-router/functions/connectRouter.md +0 -67
- package/api/@xmachines/play-router/functions/crawlMachine.md +0 -92
- package/api/@xmachines/play-router/functions/createRouter.md +0 -76
- package/api/@xmachines/play-router/functions/extractRoute.md +0 -45
- package/api/@xmachines/play-router/interfaces/BaseRouteMapping.md +0 -27
- package/api/@xmachines/play-router/interfaces/BrowserHistory.md +0 -172
- package/api/@xmachines/play-router/interfaces/BrowserWindow.md +0 -69
- package/api/@xmachines/play-router/interfaces/ConnectRouterOptions.md +0 -13
- package/api/@xmachines/play-router/interfaces/RouteMap.md +0 -56
- package/api/@xmachines/play-router/interfaces/StateVisit.md +0 -15
- package/api/@xmachines/play-router/interfaces/VanillaRouter.md +0 -28
- package/api/@xmachines/play-router-demo/README.md +0 -137
- package/api/@xmachines/play-solid/interfaces/PlayRendererProps.md +0 -15
- package/api/@xmachines/play-solid-router/functions/PlayRouterProvider.md +0 -19
- package/api/@xmachines/play-solid-router-demo/README.md +0 -127
- package/api/@xmachines/play-tanstack-react-router/functions/PlayRouterProvider.md +0 -19
- package/api/@xmachines/play-tanstack-react-router/functions/extractParams.md +0 -38
- package/api/@xmachines/play-tanstack-react-router/functions/extractQueryParams.md +0 -33
- package/api/@xmachines/play-tanstack-react-router/variables/extractMachineRoutes.md +0 -64
- package/api/@xmachines/play-tanstack-react-router-demo/README.md +0 -126
- package/api/@xmachines/play-tanstack-solid-router/classes/SolidRouterBridge.md +0 -343
- package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +0 -19
- package/api/@xmachines/play-tanstack-solid-router-demo/README.md +0 -126
- package/api/@xmachines/play-vue/interfaces/PlayRendererProps.md +0 -14
- package/api/@xmachines/play-vue-router/classes/VueBaseRouteMap.md +0 -201
- package/api/@xmachines/play-vue-router-demo/README.md +0 -133
- package/api/@xmachines/play-xstate/functions/mergeViewProps.md +0 -26
- package/api/@xmachines/play-xstate/functions/stateMatches.md +0 -25
- package/api/@xmachines/play-xstate/functions/validateComponentBinding.md +0 -39
- package/api/@xmachines/play-xstate/functions/validateViewProps.md +0 -80
- package/api/@xmachines/play-xstate/interfaces/CatalogEntry.md +0 -16
- package/api/@xmachines/play-xstate/type-aliases/Catalog.md +0 -21
- package/api/@xmachines/play-xstate/type-aliases/ValidationResult.md +0 -17
- package/api/@xmachines/play-xstate/type-aliases/ViewMergeContext.md +0 -35
- package/api/@xmachines/shared/functions/defineXmVitestConfig.md +0 -29
- package/api/@xmachines/shared/functions/xmAliases.md +0 -24
- package/guides/installation.md +0 -323
|
@@ -1,32 +1,40 @@
|
|
|
1
|
-
[
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-solid-router](../README.md) / RouteMap
|
|
2
2
|
|
|
3
3
|
# Class: RouteMap
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-
|
|
5
|
+
Defined in: [packages/play-router/src/base-route-map.ts:101](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-router/src/base-route-map.ts#L101)
|
|
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:**
|
|
13
13
|
|
|
14
14
|
- Static paths (no `:param`) → O(1) `Map` lookup
|
|
15
|
-
- Dynamic paths → O(k) bucket-indexed scan using `
|
|
15
|
+
- Dynamic paths → O(k) bucket-indexed scan using `URLPattern`, where `k` is the number
|
|
16
16
|
of routes sharing the same first path segment
|
|
17
|
-
- Results are cached after the first match
|
|
17
|
+
- Results are cached after the first match in an LRU cache (default 500 entries,
|
|
18
|
+
configurable via the `cacheSize` constructor option)
|
|
18
19
|
|
|
19
|
-
**Pattern syntax** (`:param` / `:param?`):
|
|
20
|
+
**Pattern syntax** (`:param` / `:param?` / `*`):
|
|
20
21
|
|
|
21
22
|
- `:param` — required segment, matches exactly one non-`/` segment
|
|
22
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).
|
|
23
31
|
|
|
24
32
|
## Example
|
|
25
33
|
|
|
26
34
|
```typescript
|
|
27
|
-
import {
|
|
35
|
+
import { RouteMap } from "@xmachines/play-router";
|
|
28
36
|
|
|
29
|
-
const map = new
|
|
37
|
+
const map = new RouteMap([
|
|
30
38
|
{ stateId: "home", path: "/" },
|
|
31
39
|
{ stateId: "profile", path: "/profile/:userId" },
|
|
32
40
|
{ stateId: "settings", path: "/settings/:section?" },
|
|
@@ -41,40 +49,34 @@ map.getPathByStateId("profile"); // "/profile/:userId"
|
|
|
41
49
|
map.getPathByStateId("missing"); // null
|
|
42
50
|
```
|
|
43
51
|
|
|
44
|
-
## Extends
|
|
45
|
-
|
|
46
|
-
- [`BaseRouteMap`](../../play-router/classes/BaseRouteMap.md)
|
|
47
|
-
|
|
48
52
|
## Constructors
|
|
49
53
|
|
|
50
54
|
### Constructor
|
|
51
55
|
|
|
52
56
|
```ts
|
|
53
|
-
new RouteMap(mappings): RouteMap;
|
|
57
|
+
new RouteMap(mappings, options?): RouteMap;
|
|
54
58
|
```
|
|
55
59
|
|
|
56
|
-
Defined in: packages/play-router/
|
|
60
|
+
Defined in: [packages/play-router/src/base-route-map.ts:127](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-router/src/base-route-map.ts#L127)
|
|
57
61
|
|
|
58
62
|
Build a route map from an array of state ID ↔ path mappings.
|
|
59
63
|
|
|
60
64
|
Static paths (no `:param`) are indexed in an O(1) `Map`.
|
|
61
|
-
Parameterized paths are compiled to `
|
|
65
|
+
Parameterized paths are compiled to `URLPattern` and grouped into first-segment
|
|
62
66
|
buckets for efficient candidate selection.
|
|
63
67
|
|
|
64
68
|
#### Parameters
|
|
65
69
|
|
|
66
|
-
| Parameter
|
|
67
|
-
|
|
|
68
|
-
| `mappings`
|
|
70
|
+
| Parameter | Type | Description |
|
|
71
|
+
| -------------------- | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
72
|
+
| `mappings` | [`RouteMapping`](../interfaces/RouteMapping.md)[] | Array of `{ stateId, path }` entries. Order determines priority when multiple patterns could match the same path. |
|
|
73
|
+
| `options` | \{ `cacheSize?`: `number`; \} | Optional configuration. `options.cacheSize`: Maximum number of resolved parameterized path lookups to cache. Defaults to `500`. Increase for applications with many unique parameterized URL values (e.g. user profile pages with thousands of distinct IDs). After eviction the path falls back to the O(k) bucket pattern scan — correct but slower. Minimum effective value is `1` (QuickLRU constraint). |
|
|
74
|
+
| `options.cacheSize?` | `number` | - |
|
|
69
75
|
|
|
70
76
|
#### Returns
|
|
71
77
|
|
|
72
78
|
`RouteMap`
|
|
73
79
|
|
|
74
|
-
#### Inherited from
|
|
75
|
-
|
|
76
|
-
[`BaseRouteMap`](../../play-router/classes/BaseRouteMap.md).[`constructor`](../../play-router/classes/BaseRouteMap.md#constructor)
|
|
77
|
-
|
|
78
80
|
## Methods
|
|
79
81
|
|
|
80
82
|
### getPathByStateId()
|
|
@@ -83,10 +85,14 @@ buckets for efficient candidate selection.
|
|
|
83
85
|
getPathByStateId(stateId): string | null;
|
|
84
86
|
```
|
|
85
87
|
|
|
86
|
-
Defined in: packages/play-router/
|
|
88
|
+
Defined in: [packages/play-router/src/base-route-map.ts:218](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-router/src/base-route-map.ts#L218)
|
|
87
89
|
|
|
88
90
|
Look up the path pattern registered for a state ID.
|
|
89
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
|
+
|
|
90
96
|
#### Parameters
|
|
91
97
|
|
|
92
98
|
| Parameter | Type | Description |
|
|
@@ -103,13 +109,10 @@ The registered path pattern, or `null` if the state ID is unknown
|
|
|
103
109
|
|
|
104
110
|
```typescript
|
|
105
111
|
map.getPathByStateId("profile"); // "/profile/:userId"
|
|
112
|
+
map.getPathByStateId("#profile"); // "/profile/:userId" (same entry)
|
|
106
113
|
map.getPathByStateId("missing"); // null
|
|
107
114
|
```
|
|
108
115
|
|
|
109
|
-
#### Inherited from
|
|
110
|
-
|
|
111
|
-
[`BaseRouteMap`](../../play-router/classes/BaseRouteMap.md).[`getPathByStateId`](../../play-router/classes/BaseRouteMap.md#getpathbystateid)
|
|
112
|
-
|
|
113
116
|
---
|
|
114
117
|
|
|
115
118
|
### getStateIdByPath()
|
|
@@ -118,7 +121,7 @@ map.getPathByStateId("missing"); // null
|
|
|
118
121
|
getStateIdByPath(path): string | null;
|
|
119
122
|
```
|
|
120
123
|
|
|
121
|
-
Defined in: packages/play-router/
|
|
124
|
+
Defined in: [packages/play-router/src/base-route-map.ts:178](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-router/src/base-route-map.ts#L178)
|
|
122
125
|
|
|
123
126
|
Resolve a URL path to its mapped state ID.
|
|
124
127
|
|
|
@@ -144,7 +147,3 @@ The mapped state ID, or `null` if no route matches
|
|
|
144
147
|
map.getStateIdByPath("/profile/123"); // "profile"
|
|
145
148
|
map.getStateIdByPath("/unknown"); // null
|
|
146
149
|
```
|
|
147
|
-
|
|
148
|
-
#### Inherited from
|
|
149
|
-
|
|
150
|
-
[`BaseRouteMap`](../../play-router/classes/BaseRouteMap.md).[`getStateIdByPath`](../../play-router/classes/BaseRouteMap.md#getstateidbypath)
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
[
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-solid-router](../README.md) / SolidRouterBridge
|
|
2
2
|
|
|
3
3
|
# Class: SolidRouterBridge
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:
|
|
5
|
+
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:54](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-solid-router/src/solid-router-bridge.ts#L54)
|
|
6
6
|
|
|
7
7
|
SolidJS Router integration bridge extending RouterBridgeBase
|
|
8
8
|
|
|
@@ -10,6 +10,10 @@ Implements RouterBridge protocol for SolidJS Router using Solid's reactive
|
|
|
10
10
|
primitives. The actor→router direction uses TC39 Signal watcher (from base class).
|
|
11
11
|
The router→actor direction uses Solid's createEffect for native reactivity.
|
|
12
12
|
|
|
13
|
+
Path parameters are extracted from Solid's `useParams()` reactive proxy rather than
|
|
14
|
+
re-parsing the URL with URLPattern. This means parameterized routes work without the
|
|
15
|
+
URLPattern polyfill — Solid's router has already extracted the values.
|
|
16
|
+
|
|
13
17
|
## Extends
|
|
14
18
|
|
|
15
19
|
- [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md)
|
|
@@ -22,12 +26,12 @@ The router→actor direction uses Solid's createEffect for native reactivity.
|
|
|
22
26
|
new SolidRouterBridge(
|
|
23
27
|
solidNavigate,
|
|
24
28
|
location,
|
|
25
|
-
|
|
29
|
+
params,
|
|
26
30
|
actor,
|
|
27
31
|
routeMap): SolidRouterBridge;
|
|
28
32
|
```
|
|
29
33
|
|
|
30
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:
|
|
34
|
+
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:75](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-solid-router/src/solid-router-bridge.ts#L75)
|
|
31
35
|
|
|
32
36
|
Create a SolidJS Router bridge
|
|
33
37
|
|
|
@@ -35,15 +39,13 @@ Create a SolidJS Router bridge
|
|
|
35
39
|
|
|
36
40
|
#### Parameters
|
|
37
41
|
|
|
38
|
-
| Parameter
|
|
39
|
-
|
|
|
40
|
-
| `solidNavigate`
|
|
41
|
-
| `location`
|
|
42
|
-
| `
|
|
43
|
-
| `
|
|
44
|
-
| `
|
|
45
|
-
| `actor` | [`AbstractActor`](../interfaces/AbstractActor.md)\<`AnyActorLogic`\> & [`Routable`](../../play-actor/interfaces/Routable.md) | XMachines actor instance |
|
|
46
|
-
| `routeMap` | [`RouteMap`](RouteMap.md) | Bidirectional state ID ↔ path mapping |
|
|
42
|
+
| Parameter | Type | Description |
|
|
43
|
+
| --------------- | -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
44
|
+
| `solidNavigate` | `Navigator` | Result of useNavigate() hook |
|
|
45
|
+
| `location` | [`LocationLike`](../../play-router/interfaces/LocationLike.md) | Result of useLocation() hook |
|
|
46
|
+
| `params` | `Params` | Result of useParams() hook — used directly for path parameter extraction, avoiding the URLPattern polyfill requirement for parameterized routes |
|
|
47
|
+
| `actor` | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md) | XMachines actor instance |
|
|
48
|
+
| `routeMap` | [`RouteMap`](RouteMap.md) | Bidirectional state ID ↔ path mapping |
|
|
47
49
|
|
|
48
50
|
#### Returns
|
|
49
51
|
|
|
@@ -53,20 +55,6 @@ Create a SolidJS Router bridge
|
|
|
53
55
|
|
|
54
56
|
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`constructor`](../../play-router/classes/RouterBridgeBase.md#constructor)
|
|
55
57
|
|
|
56
|
-
## Properties
|
|
57
|
-
|
|
58
|
-
| Property | Modifier | Type | Description | Inherited from | Defined in |
|
|
59
|
-
| --------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- |
|
|
60
|
-
| <a id="property-actor"></a> `actor` | `readonly` | [`AbstractActor`](../interfaces/AbstractActor.md)\<`AnyActorLogic`\> & [`Routable`](../../play-actor/interfaces/Routable.md) | Actor with currentRoute signal and send method | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`actor`](../../play-router/classes/RouterBridgeBase.md#property-actor) | packages/play-router/dist/router-bridge-base.d.ts:55 |
|
|
61
|
-
| <a id="property-hasconnectedonce"></a> `hasConnectedOnce` | `protected` | `boolean` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`hasConnectedOnce`](../../play-router/classes/RouterBridgeBase.md#property-hasconnectedonce) | packages/play-router/dist/router-bridge-base.d.ts:61 |
|
|
62
|
-
| <a id="property-isconnected"></a> `isConnected` | `protected` | `boolean` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isConnected`](../../play-router/classes/RouterBridgeBase.md#property-isconnected) | packages/play-router/dist/router-bridge-base.d.ts:60 |
|
|
63
|
-
| <a id="property-isprocessingnavigation"></a> `isProcessingNavigation` | `protected` | `boolean` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isProcessingNavigation`](../../play-router/classes/RouterBridgeBase.md#property-isprocessingnavigation) | packages/play-router/dist/router-bridge-base.d.ts:63 |
|
|
64
|
-
| <a id="property-lastsyncedpath"></a> `lastSyncedPath` | `protected` | `string` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`lastSyncedPath`](../../play-router/classes/RouterBridgeBase.md#property-lastsyncedpath) | packages/play-router/dist/router-bridge-base.d.ts:62 |
|
|
65
|
-
| <a id="property-routemap"></a> `routeMap` | `readonly` | `object` | Bidirectional route map for stateId ↔ path resolution | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeMap`](../../play-router/classes/RouterBridgeBase.md#property-routemap) | packages/play-router/dist/router-bridge-base.d.ts:56 |
|
|
66
|
-
| `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | - | - | packages/play-router/dist/router-bridge-base.d.ts:58 |
|
|
67
|
-
| `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | - | - | packages/play-router/dist/router-bridge-base.d.ts:57 |
|
|
68
|
-
| <a id="property-routewatcher"></a> `routeWatcher` | `protected` | \| [`Watcher`](../../play-signals/namespaces/Signal/namespaces/subtle/classes/Watcher.md) \| `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeWatcher`](../../play-router/classes/RouterBridgeBase.md#property-routewatcher) | packages/play-router/dist/router-bridge-base.d.ts:64 |
|
|
69
|
-
|
|
70
58
|
## Methods
|
|
71
59
|
|
|
72
60
|
### connect()
|
|
@@ -75,13 +63,22 @@ Create a SolidJS Router bridge
|
|
|
75
63
|
connect(): void;
|
|
76
64
|
```
|
|
77
65
|
|
|
78
|
-
Defined in: packages/play-router/
|
|
66
|
+
Defined in: [packages/play-router/src/router-bridge-base.ts:151](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-router/src/router-bridge-base.ts#L151)
|
|
79
67
|
|
|
80
68
|
Connect the router bridge to the Actor.
|
|
81
69
|
|
|
82
70
|
Sets up the TC39 Signal watcher for actor → router direction and
|
|
83
71
|
starts watching router changes (framework-specific).
|
|
84
72
|
|
|
73
|
+
Ordering here is part of the bridge contract:
|
|
74
|
+
|
|
75
|
+
- `lastSyncedPath` is seeded in the constructor from `actor.currentRoute`
|
|
76
|
+
- the actor watcher is installed before adapter router subscriptions
|
|
77
|
+
- initial sync then resolves deep-link vs restore using `actor.initialRoute`
|
|
78
|
+
|
|
79
|
+
Adapters that need custom initial-sync behavior should override
|
|
80
|
+
`getInitialRouterPath()` rather than reordering `connect()` steps.
|
|
81
|
+
|
|
85
82
|
#### Returns
|
|
86
83
|
|
|
87
84
|
`void`
|
|
@@ -98,7 +95,7 @@ starts watching router changes (framework-specific).
|
|
|
98
95
|
disconnect(): void;
|
|
99
96
|
```
|
|
100
97
|
|
|
101
|
-
Defined in: packages/play-router/
|
|
98
|
+
Defined in: [packages/play-router/src/router-bridge-base.ts:256](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-router/src/router-bridge-base.ts#L256)
|
|
102
99
|
|
|
103
100
|
Disconnect the router bridge from the Actor.
|
|
104
101
|
|
|
@@ -120,7 +117,7 @@ Stops signal watching and unregisters framework-specific router listener.
|
|
|
120
117
|
dispose(): void;
|
|
121
118
|
```
|
|
122
119
|
|
|
123
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:
|
|
120
|
+
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:187](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-solid-router/src/solid-router-bridge.ts#L187)
|
|
124
121
|
|
|
125
122
|
Dispose the bridge (alias for disconnect).
|
|
126
123
|
|
|
@@ -133,215 +130,3 @@ Dispose the bridge (alias for disconnect).
|
|
|
133
130
|
```tsx
|
|
134
131
|
onCleanup(() => bridge.dispose());
|
|
135
132
|
```
|
|
136
|
-
|
|
137
|
-
---
|
|
138
|
-
|
|
139
|
-
### extractParams()
|
|
140
|
-
|
|
141
|
-
```ts
|
|
142
|
-
protected extractParams(pathname, stateId): Record<string, string>;
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
Defined in: packages/play-router/dist/router-bridge-base.d.ts:134
|
|
146
|
-
|
|
147
|
-
Extract path parameters from URL using the URLPattern API.
|
|
148
|
-
|
|
149
|
-
Accesses `globalThis.URLPattern` at runtime — no polyfill is imported by this
|
|
150
|
-
library. If `URLPattern` is unavailable (Node.js < 24, older browsers without a
|
|
151
|
-
polyfill), this method returns `{}` silently (graceful degradation — routing still
|
|
152
|
-
works, params will be empty).
|
|
153
|
-
|
|
154
|
-
#### Parameters
|
|
155
|
-
|
|
156
|
-
| Parameter | Type | Description |
|
|
157
|
-
| ---------- | -------- | ------------------------------------------------- |
|
|
158
|
-
| `pathname` | `string` | The actual URL path (e.g., '/profile/john') |
|
|
159
|
-
| `stateId` | `string` | The matched state ID for looking up route pattern |
|
|
160
|
-
|
|
161
|
-
#### Returns
|
|
162
|
-
|
|
163
|
-
`Record`\<`string`, `string`\>
|
|
164
|
-
|
|
165
|
-
Extracted path parameters, or empty object if URLPattern is unavailable or no match
|
|
166
|
-
|
|
167
|
-
#### Inherited from
|
|
168
|
-
|
|
169
|
-
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`extractParams`](../../play-router/classes/RouterBridgeBase.md#extractparams)
|
|
170
|
-
|
|
171
|
-
---
|
|
172
|
-
|
|
173
|
-
### extractQuery()
|
|
174
|
-
|
|
175
|
-
```ts
|
|
176
|
-
protected extractQuery(search): Record<string, string>;
|
|
177
|
-
```
|
|
178
|
-
|
|
179
|
-
Defined in: packages/play-router/dist/router-bridge-base.d.ts:141
|
|
180
|
-
|
|
181
|
-
Extract query parameters from URL search string.
|
|
182
|
-
|
|
183
|
-
#### Parameters
|
|
184
|
-
|
|
185
|
-
| Parameter | Type | Description |
|
|
186
|
-
| --------- | -------- | ------------------------------------------------ |
|
|
187
|
-
| `search` | `string` | URL search string (e.g., '?tab=security&page=1') |
|
|
188
|
-
|
|
189
|
-
#### Returns
|
|
190
|
-
|
|
191
|
-
`Record`\<`string`, `string`\>
|
|
192
|
-
|
|
193
|
-
Extracted query parameters or empty object
|
|
194
|
-
|
|
195
|
-
#### Inherited from
|
|
196
|
-
|
|
197
|
-
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`extractQuery`](../../play-router/classes/RouterBridgeBase.md#extractquery)
|
|
198
|
-
|
|
199
|
-
---
|
|
200
|
-
|
|
201
|
-
### getInitialRouterPath()
|
|
202
|
-
|
|
203
|
-
```ts
|
|
204
|
-
protected getInitialRouterPath(): string | null;
|
|
205
|
-
```
|
|
206
|
-
|
|
207
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:82](https://gitlab.com/xmachin-es/xmachines-js/-/blob/00a28432ed57807112288436d1ae4387d9f06919/packages/play-solid-router/src/solid-router-bridge.ts#L82)
|
|
208
|
-
|
|
209
|
-
Get the current router pathname for initial URL -> actor sync on connect.
|
|
210
|
-
|
|
211
|
-
#### Returns
|
|
212
|
-
|
|
213
|
-
`string` \| `null`
|
|
214
|
-
|
|
215
|
-
#### Overrides
|
|
216
|
-
|
|
217
|
-
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`getInitialRouterPath`](../../play-router/classes/RouterBridgeBase.md#getinitialrouterpath)
|
|
218
|
-
|
|
219
|
-
---
|
|
220
|
-
|
|
221
|
-
### navigateRouter()
|
|
222
|
-
|
|
223
|
-
```ts
|
|
224
|
-
protected navigateRouter(path): void;
|
|
225
|
-
```
|
|
226
|
-
|
|
227
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:75](https://gitlab.com/xmachin-es/xmachines-js/-/blob/00a28432ed57807112288436d1ae4387d9f06919/packages/play-solid-router/src/solid-router-bridge.ts#L75)
|
|
228
|
-
|
|
229
|
-
Navigate SolidJS Router to the given path.
|
|
230
|
-
|
|
231
|
-
#### Parameters
|
|
232
|
-
|
|
233
|
-
| Parameter | Type |
|
|
234
|
-
| --------- | -------- |
|
|
235
|
-
| `path` | `string` |
|
|
236
|
-
|
|
237
|
-
#### Returns
|
|
238
|
-
|
|
239
|
-
`void`
|
|
240
|
-
|
|
241
|
-
#### Overrides
|
|
242
|
-
|
|
243
|
-
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`navigateRouter`](../../play-router/classes/RouterBridgeBase.md#navigaterouter)
|
|
244
|
-
|
|
245
|
-
---
|
|
246
|
-
|
|
247
|
-
### syncActorFromRouter()
|
|
248
|
-
|
|
249
|
-
```ts
|
|
250
|
-
protected syncActorFromRouter(pathname, search?): void;
|
|
251
|
-
```
|
|
252
|
-
|
|
253
|
-
Defined in: packages/play-router/dist/router-bridge-base.d.ts:101
|
|
254
|
-
|
|
255
|
-
Sync actor state when router location changes.
|
|
256
|
-
|
|
257
|
-
Sends play.route event to actor with resolved stateId, params, and query.
|
|
258
|
-
Prevents circular updates via isProcessingNavigation flag.
|
|
259
|
-
|
|
260
|
-
#### Parameters
|
|
261
|
-
|
|
262
|
-
| Parameter | Type |
|
|
263
|
-
| ---------- | -------- |
|
|
264
|
-
| `pathname` | `string` |
|
|
265
|
-
| `search?` | `string` |
|
|
266
|
-
|
|
267
|
-
#### Returns
|
|
268
|
-
|
|
269
|
-
`void`
|
|
270
|
-
|
|
271
|
-
#### Inherited from
|
|
272
|
-
|
|
273
|
-
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`syncActorFromRouter`](../../play-router/classes/RouterBridgeBase.md#syncactorfromrouter)
|
|
274
|
-
|
|
275
|
-
---
|
|
276
|
-
|
|
277
|
-
### syncRouterFromActor()
|
|
278
|
-
|
|
279
|
-
```ts
|
|
280
|
-
protected syncRouterFromActor(route): void;
|
|
281
|
-
```
|
|
282
|
-
|
|
283
|
-
Defined in: packages/play-router/dist/router-bridge-base.d.ts:94
|
|
284
|
-
|
|
285
|
-
Sync router location when actor route signal changes.
|
|
286
|
-
|
|
287
|
-
Calls navigateRouter() for framework-specific navigation.
|
|
288
|
-
Prevents circular updates via isProcessingNavigation flag.
|
|
289
|
-
|
|
290
|
-
#### Parameters
|
|
291
|
-
|
|
292
|
-
| Parameter | Type |
|
|
293
|
-
| --------- | --------- |
|
|
294
|
-
| `route` | `unknown` |
|
|
295
|
-
|
|
296
|
-
#### Returns
|
|
297
|
-
|
|
298
|
-
`void`
|
|
299
|
-
|
|
300
|
-
#### Inherited from
|
|
301
|
-
|
|
302
|
-
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`syncRouterFromActor`](../../play-router/classes/RouterBridgeBase.md#syncrouterfromactor)
|
|
303
|
-
|
|
304
|
-
---
|
|
305
|
-
|
|
306
|
-
### unwatchRouterChanges()
|
|
307
|
-
|
|
308
|
-
```ts
|
|
309
|
-
protected unwatchRouterChanges(): void;
|
|
310
|
-
```
|
|
311
|
-
|
|
312
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:111](https://gitlab.com/xmachin-es/xmachines-js/-/blob/00a28432ed57807112288436d1ae4387d9f06919/packages/play-solid-router/src/solid-router-bridge.ts#L111)
|
|
313
|
-
|
|
314
|
-
Stop watching SolidJS Router changes.
|
|
315
|
-
|
|
316
|
-
Solid auto-cleans createEffect subscriptions when component unmounts.
|
|
317
|
-
|
|
318
|
-
#### Returns
|
|
319
|
-
|
|
320
|
-
`void`
|
|
321
|
-
|
|
322
|
-
#### Overrides
|
|
323
|
-
|
|
324
|
-
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`unwatchRouterChanges`](../../play-router/classes/RouterBridgeBase.md#unwatchrouterchanges)
|
|
325
|
-
|
|
326
|
-
---
|
|
327
|
-
|
|
328
|
-
### watchRouterChanges()
|
|
329
|
-
|
|
330
|
-
```ts
|
|
331
|
-
protected watchRouterChanges(): void;
|
|
332
|
-
```
|
|
333
|
-
|
|
334
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:92](https://gitlab.com/xmachin-es/xmachines-js/-/blob/00a28432ed57807112288436d1ae4387d9f06919/packages/play-solid-router/src/solid-router-bridge.ts#L92)
|
|
335
|
-
|
|
336
|
-
Subscribe to SolidJS Router location changes using createEffect.
|
|
337
|
-
|
|
338
|
-
MUST be called inside a Solid reactive owner (component/createRoot).
|
|
339
|
-
Solid auto-cleans createEffect subscriptions on component unmount.
|
|
340
|
-
|
|
341
|
-
#### Returns
|
|
342
|
-
|
|
343
|
-
`void`
|
|
344
|
-
|
|
345
|
-
#### Overrides
|
|
346
|
-
|
|
347
|
-
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`watchRouterChanges`](../../play-router/classes/RouterBridgeBase.md#watchrouterchanges)
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-solid-router](../README.md) / createPlayRouterProvider
|
|
2
|
+
|
|
3
|
+
# Function: createPlayRouterProvider()
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
function createPlayRouterProvider<TRouter>(BridgeCtor): <TActor>(props) => any;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [packages/play-solid-router/src/create-play-router-provider.tsx:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-solid-router/src/create-play-router-provider.tsx#L68)
|
|
10
|
+
|
|
11
|
+
Create a Solid `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 synchronously at component evaluation time (Solid's
|
|
17
|
+
execution model) and torn down via `onCleanup` when the component is disposed.
|
|
18
|
+
Unlike React, prop stability is not a concern — Solid's `props` accessor is
|
|
19
|
+
already reactive and the bridge is created once per component instance.
|
|
20
|
+
|
|
21
|
+
## Type Parameters
|
|
22
|
+
|
|
23
|
+
| Type Parameter |
|
|
24
|
+
| -------------- |
|
|
25
|
+
| `TRouter` |
|
|
26
|
+
|
|
27
|
+
## Parameters
|
|
28
|
+
|
|
29
|
+
| Parameter | Type | Description |
|
|
30
|
+
| ------------ | -------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- |
|
|
31
|
+
| `BridgeCtor` | [`PlayRouterBridgeConstructor`](../type-aliases/PlayRouterBridgeConstructor.md)\<`TRouter`\> | Bridge class constructed as `new BridgeCtor(router, actor, routeMap)`. |
|
|
32
|
+
|
|
33
|
+
## Returns
|
|
34
|
+
|
|
35
|
+
A `PlayRouterProvider` component, generic over the actor type so the
|
|
36
|
+
`renderer` callback receives the same concrete actor type that was passed in.
|
|
37
|
+
|
|
38
|
+
\<`TActor`\>(`props`) => `any`
|
|
39
|
+
|
|
40
|
+
## Example
|
|
41
|
+
|
|
42
|
+
```tsx
|
|
43
|
+
export const PlayRouterProvider = createPlayRouterProvider(MySolidRouterBridge);
|
|
44
|
+
```
|
|
@@ -1,32 +1,39 @@
|
|
|
1
|
-
[
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-solid-router](../README.md) / createRouteMap
|
|
2
2
|
|
|
3
3
|
# Function: createRouteMap()
|
|
4
4
|
|
|
5
5
|
```ts
|
|
6
|
-
function createRouteMap(machine): RouteMap;
|
|
6
|
+
function createRouteMap(machine, options?): RouteMap;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-
|
|
9
|
+
Defined in: [packages/play-router/src/create-route-map.ts:45](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0/packages/play-router/src/create-route-map.ts#L45)
|
|
10
10
|
|
|
11
|
-
Create a RouteMap from an XState machine
|
|
11
|
+
Create a `RouteMap` from an XState state machine.
|
|
12
|
+
|
|
13
|
+
Extracts all routable states (those with `meta.route`) and builds a bidirectional
|
|
14
|
+
path ↔ stateId lookup structure. The returned map is used by `RouterBridgeBase`
|
|
15
|
+
subclasses to translate browser URL changes into `play.route` actor events and
|
|
16
|
+
vice-versa.
|
|
12
17
|
|
|
13
18
|
## Parameters
|
|
14
19
|
|
|
15
|
-
| Parameter
|
|
16
|
-
|
|
|
17
|
-
| `machine`
|
|
20
|
+
| Parameter | Type | Description |
|
|
21
|
+
| ---------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
|
|
22
|
+
| `machine` | [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | XState v5 state machine with `meta.route` annotations on states. |
|
|
23
|
+
| `options?` | [`RouteMapOptions`](../interfaces/RouteMapOptions.md) | Optional configuration. Pass `{ cacheSize }` to override the default LRU cache size for parameterized path lookups. |
|
|
18
24
|
|
|
19
25
|
## Returns
|
|
20
26
|
|
|
21
27
|
[`RouteMap`](../classes/RouteMap.md)
|
|
22
28
|
|
|
23
|
-
RouteMap for
|
|
29
|
+
A `RouteMap` for passing to any `RouterBridgeBase`-based adapter.
|
|
24
30
|
|
|
25
31
|
## Example
|
|
26
32
|
|
|
27
33
|
```typescript
|
|
28
|
-
import { createRouteMap } from "@xmachines/play-
|
|
29
|
-
import {
|
|
34
|
+
import { createRouteMap } from "@xmachines/play-router";
|
|
35
|
+
import { connectRouter } from "@xmachines/play-dom-router";
|
|
30
36
|
|
|
31
|
-
const routeMap = createRouteMap(
|
|
37
|
+
const routeMap = createRouteMap(myMachine);
|
|
38
|
+
const disconnect = connectRouter({ actor, router, routeMap });
|
|
32
39
|
```
|