@xmachines/docs 1.0.0-beta.25 → 1.0.0-beta.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api/@xmachines/play/classes/PlayError.md +10 -4
- package/api/@xmachines/play/type-aliases/PlayEvent.md +2 -2
- package/api/@xmachines/play-actor/README.md +4 -0
- package/api/@xmachines/play-actor/classes/AbstractActor.md +49 -92
- package/api/@xmachines/play-actor/functions/typedSpec.md +57 -0
- package/api/@xmachines/play-actor/interfaces/PlaySpec.md +9 -18
- package/api/@xmachines/play-actor/interfaces/Routable.md +5 -21
- package/api/@xmachines/play-actor/interfaces/ViewMetadata.md +6 -6
- package/api/@xmachines/play-actor/interfaces/Viewable.md +5 -6
- package/api/@xmachines/play-dom/classes/PlayRenderer.md +4 -4
- package/api/@xmachines/play-dom/functions/connectRenderer.md +1 -1
- package/api/@xmachines/play-dom/functions/renderSpec.md +1 -1
- package/api/@xmachines/play-dom/interfaces/ConnectRendererOptions.md +7 -7
- package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +7 -7
- package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +3 -3
- 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-router/README.md +10 -0
- package/api/@xmachines/play-dom-router/functions/connectRouter.md +18 -46
- package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +1 -1
- package/api/@xmachines/play-dom-router/functions/createRouteMap.md +38 -0
- package/api/@xmachines/play-dom-router/functions/createRouter.md +1 -1
- package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +16 -16
- package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +16 -16
- package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +6 -6
- package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +119 -0
- package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +114 -0
- package/api/@xmachines/play-dom-router/interfaces/RouteMapLike.md +50 -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 +6 -6
- package/api/@xmachines/play-dom-router/type-aliases/RoutableActor.md +9 -0
- package/api/@xmachines/play-react/README.md +4 -4
- package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +31 -5
- package/api/@xmachines/play-react/functions/defineRegistry.md +2 -0
- package/api/@xmachines/play-react/functions/useActor.md +1 -1
- package/api/@xmachines/play-react/functions/useBoundProp.md +2 -0
- package/api/@xmachines/play-react/functions/useSignalEffect.md +1 -1
- package/api/@xmachines/play-react/functions/useStateBinding.md +2 -0
- package/api/@xmachines/play-react/interfaces/ComponentContext.md +2 -0
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +4 -4
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +3 -3
- package/api/@xmachines/play-react/interfaces/PlayRendererProps.md +7 -7
- package/api/@xmachines/play-react/type-aliases/ComponentFn.md +2 -0
- package/api/@xmachines/play-react/type-aliases/PlayActor.md +1 -1
- package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-react-router/README.md +5 -1
- package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +102 -25
- package/api/@xmachines/play-react-router/classes/RouteMap.md +17 -33
- package/api/@xmachines/play-react-router/functions/PlayRouterProvider.md +8 -1
- package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +21 -11
- package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +8 -8
- package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +7 -7
- package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +18 -8
- package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-router/README.md +42 -5
- package/api/@xmachines/play-router/classes/BaseRouteMap.md +12 -19
- package/api/@xmachines/play-router/classes/RouterBridgeBase.md +100 -25
- package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +1 -1
- package/api/@xmachines/play-router/functions/buildRouteTree.md +1 -1
- package/api/@xmachines/play-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-router/functions/createRouteMapFromMachine.md +38 -0
- package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +45 -0
- package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +1 -1
- package/api/@xmachines/play-router/functions/extractMachineRoutes.md +1 -1
- package/api/@xmachines/play-router/functions/extractQuery.md +1 -1
- package/api/@xmachines/play-router/functions/extractRouteParams.md +46 -0
- package/api/@xmachines/play-router/functions/findRouteById.md +1 -1
- package/api/@xmachines/play-router/functions/findRouteByPath.md +1 -1
- package/api/@xmachines/play-router/functions/getNavigableRoutes.md +1 -1
- package/api/@xmachines/play-router/functions/getRoutableRoutes.md +1 -1
- package/api/@xmachines/play-router/functions/getTransitionReachableRoutes.md +1 -1
- package/api/@xmachines/play-router/functions/isRouteReachable.md +1 -1
- package/api/@xmachines/play-router/functions/machineToGraph.md +1 -1
- package/api/@xmachines/play-router/functions/routeExists.md +1 -1
- package/api/@xmachines/play-router/functions/sanitizePathname.md +1 -1
- package/api/@xmachines/play-router/functions/validateRouteFormat.md +1 -1
- package/api/@xmachines/play-router/functions/validateStateExists.md +1 -1
- package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +4 -4
- package/api/@xmachines/play-router/interfaces/LocationLike.md +27 -0
- package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +3 -3
- package/api/@xmachines/play-router/interfaces/MachineNodeData.md +5 -5
- package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +8 -8
- package/api/@xmachines/play-router/interfaces/RouteInfo.md +8 -8
- package/api/@xmachines/play-router/interfaces/RouteMap.md +4 -4
- package/api/@xmachines/play-router/interfaces/{BaseRouteMapping.md → RouteMapping.md} +5 -5
- package/api/@xmachines/play-router/interfaces/RouteMatch.md +5 -5
- package/api/@xmachines/play-router/interfaces/RouteNode.md +12 -12
- package/api/@xmachines/play-router/interfaces/RouteObject.md +2 -2
- package/api/@xmachines/play-router/interfaces/RouteTree.md +5 -5
- package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +3 -3
- package/api/@xmachines/play-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-router/interfaces/WindowLike.md +65 -0
- package/api/@xmachines/play-router/type-aliases/MachineGraph.md +1 -1
- package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +1 -1
- package/api/@xmachines/play-signals/functions/watchSignal.md +1 -1
- package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalComputed.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalOptions.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalState.md +3 -3
- package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +4 -4
- package/api/@xmachines/play-signals/namespaces/Signal/classes/Computed.md +6 -0
- package/api/@xmachines/play-signals/namespaces/Signal/classes/State.md +8 -0
- package/api/@xmachines/play-signals/namespaces/Signal/interfaces/Options.md +2 -0
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/classes/Watcher.md +10 -0
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/currentComputed.md +2 -0
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSinks.md +2 -0
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSources.md +2 -0
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSinks.md +2 -0
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSources.md +2 -0
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/untrack.md +2 -0
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/unwatched.md +2 -0
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/watched.md +2 -0
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isComputed.md +2 -0
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isState.md +2 -0
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isWatcher.md +2 -0
- package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +1 -1
- package/api/@xmachines/play-solid/README.md +4 -4
- package/api/@xmachines/play-solid/functions/defineRegistry.md +2 -0
- package/api/@xmachines/play-solid/functions/useActor.md +1 -1
- package/api/@xmachines/play-solid/functions/useStateBinding.md +2 -0
- package/api/@xmachines/play-solid/interfaces/ComponentContext.md +2 -0
- package/api/@xmachines/play-solid/interfaces/PlayRendererProps.md +7 -7
- package/api/@xmachines/play-solid/type-aliases/ComponentFn.md +2 -0
- package/api/@xmachines/play-solid/type-aliases/PlayActor.md +1 -1
- package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-solid-router/README.md +2 -2
- package/api/@xmachines/play-solid-router/classes/RouteMap.md +13 -26
- package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +121 -46
- package/api/@xmachines/play-solid-router/functions/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-solid-router/functions/createRouteMap.md +15 -9
- package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +47 -92
- package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +8 -8
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +5 -5
- package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +19 -6
- package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +21 -18
- package/api/@xmachines/play-svelte/README.md +28 -0
- package/api/@xmachines/play-svelte/functions/defineRegistry.md +2 -0
- package/api/@xmachines/play-svelte/interfaces/BaseComponentProps.md +2 -0
- package/api/@xmachines/play-svelte/interfaces/ComponentContext.md +2 -0
- package/api/@xmachines/play-svelte/interfaces/PlayRendererProps.md +9 -9
- package/api/@xmachines/play-svelte/type-aliases/ComponentFn.md +2 -0
- package/api/@xmachines/play-svelte/type-aliases/PlayRenderer.md +2 -0
- package/api/@xmachines/play-svelte/variables/PlayRenderer.md +2 -0
- package/api/@xmachines/play-svelte-spa-router/README.md +1 -0
- package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +13 -26
- package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +14 -1
- package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +23 -4
- package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +6 -5
- package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +10 -10
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +20 -5
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +65 -0
- package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-sveltekit-router/README.md +2 -1
- package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +46 -24
- package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +14 -1
- package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +23 -4
- package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +6 -5
- package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +27 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +10 -10
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +20 -5
- package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/README.md +5 -3
- package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +17 -33
- package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +93 -25
- package/api/@xmachines/play-tanstack-react-router/functions/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +21 -11
- package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +8 -8
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +5 -5
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +18 -8
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +3 -3
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +6 -26
- package/api/@xmachines/play-tanstack-solid-router/README.md +8 -8
- package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +13 -26
- package/api/@xmachines/play-tanstack-solid-router/classes/SolidRouterBridge.md +101 -36
- package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +15 -9
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +8 -8
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +5 -5
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +13 -9
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +23 -24
- package/api/@xmachines/play-vue/README.md +4 -4
- package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-vue/functions/useActor.md +1 -1
- package/api/@xmachines/play-vue/functions/useStateBinding.md +2 -0
- package/api/@xmachines/play-vue/interfaces/ComponentContext.md +2 -0
- package/api/@xmachines/play-vue/interfaces/PlayRendererProps.md +5 -5
- package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/ComponentFn.md +2 -0
- package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
- package/api/@xmachines/play-vue/type-aliases/PlayActor.md +1 -1
- package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-vue-router/README.md +2 -2
- package/api/@xmachines/play-vue-router/classes/RouteMap.md +18 -108
- package/api/@xmachines/play-vue-router/classes/VueBaseRouteMap.md +44 -104
- package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +127 -62
- package/api/@xmachines/play-vue-router/functions/createRouteMap.md +1 -1
- package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +8 -8
- package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +19 -7
- package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +1 -1
- package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-xstate/README.md +15 -15
- package/api/@xmachines/play-xstate/classes/PlayerActor.md +46 -30
- package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +20 -15
- 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 +2 -2
- 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 +14 -12
- package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +1 -1
- package/api/@xmachines/play-xstate/type-aliases/Guard.md +1 -1
- package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +1 -1
- package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +1 -1
- package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +4 -4
- package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +4 -4
- package/api/@xmachines/shared/functions/defineXmVitestConfig.md +2 -2
- package/api/@xmachines/shared/functions/xmAliases.md +1 -1
- package/api/README.md +4 -4
- package/api/llms.txt +3 -3
- package/examples/README.md +5 -0
- package/examples/routing-patterns.md +6 -4
- package/package.json +2 -2
- package/api/@xmachines/play-tanstack-react-router/functions/extractParams.md +0 -38
- package/api/@xmachines/play-tanstack-react-router/functions/extractQueryParams.md +0 -33
|
@@ -2,7 +2,7 @@
|
|
|
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:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L55)
|
|
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:76](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L76)
|
|
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`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`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` | [`AbstractActor`](../interfaces/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | XMachines actor instance |
|
|
48
|
+
| `routeMap` | [`RouteMap`](RouteMap.md) | Bidirectional state ID ↔ path mapping |
|
|
47
49
|
|
|
48
50
|
#### Returns
|
|
49
51
|
|
|
@@ -57,15 +59,15 @@ Create a SolidJS Router bridge
|
|
|
57
59
|
|
|
58
60
|
| Property | Modifier | Type | Default value | Description | Inherited from | Defined in |
|
|
59
61
|
| --------------------------------------------------------------------- | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
60
|
-
| <a id="property-actor"></a> `actor` | `readonly` | [`AbstractActor`](../interfaces/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | `undefined` | A `Routable` actor exposing `currentRoute` and `send`. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`actor`](../../play-router/classes/RouterBridgeBase.md#property-actor) | [packages/play-router/src/router-bridge-base.ts:
|
|
61
|
-
| <a id="property-hasconnectedonce"></a> `hasConnectedOnce` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`hasConnectedOnce`](../../play-router/classes/RouterBridgeBase.md#property-hasconnectedonce) | [packages/play-router/src/router-bridge-base.ts:
|
|
62
|
-
| <a id="property-isconnected"></a> `isConnected` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isConnected`](../../play-router/classes/RouterBridgeBase.md#property-isconnected) | [packages/play-router/src/router-bridge-base.ts:
|
|
63
|
-
| <a id="property-isprocessingnavigation"></a> `isProcessingNavigation` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isProcessingNavigation`](../../play-router/classes/RouterBridgeBase.md#property-isprocessingnavigation) | [packages/play-router/src/router-bridge-base.ts:
|
|
64
|
-
| <a id="property-lastsyncedpath"></a> `lastSyncedPath` | `protected` | `string` \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`lastSyncedPath`](../../play-router/classes/RouterBridgeBase.md#property-lastsyncedpath) | [packages/play-router/src/router-bridge-base.ts:
|
|
65
|
-
| <a id="property-routemap"></a> `routeMap` | `readonly` | `object` | `undefined` | Bidirectional route map for `stateId ↔ path` resolution. Provide `getStateIdByPath` and `getPathByStateId`. Framework adapters typically wrap the result of `createRouteMap()` or an equivalent. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeMap`](../../play-router/classes/RouterBridgeBase.md#property-routemap) | [packages/play-router/src/router-bridge-base.ts:
|
|
66
|
-
| `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [packages/play-router/src/router-bridge-base.ts:
|
|
67
|
-
| `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [packages/play-router/src/router-bridge-base.ts:
|
|
68
|
-
| <a id="property-routewatcher"></a> `routeWatcher` | `protected` | \| [`RouteWatcherHandle`](../../play-router/interfaces/RouteWatcherHandle.md) \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeWatcher`](../../play-router/classes/RouterBridgeBase.md#property-routewatcher) | [packages/play-router/src/router-bridge-base.ts:
|
|
62
|
+
| <a id="property-actor"></a> `actor` | `readonly` | [`AbstractActor`](../interfaces/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | `undefined` | A `Routable` actor exposing `currentRoute` and `send`. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`actor`](../../play-router/classes/RouterBridgeBase.md#property-actor) | [packages/play-router/src/router-bridge-base.ts:99](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L99) |
|
|
63
|
+
| <a id="property-hasconnectedonce"></a> `hasConnectedOnce` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`hasConnectedOnce`](../../play-router/classes/RouterBridgeBase.md#property-hasconnectedonce) | [packages/play-router/src/router-bridge-base.ts:87](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L87) |
|
|
64
|
+
| <a id="property-isconnected"></a> `isConnected` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isConnected`](../../play-router/classes/RouterBridgeBase.md#property-isconnected) | [packages/play-router/src/router-bridge-base.ts:86](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L86) |
|
|
65
|
+
| <a id="property-isprocessingnavigation"></a> `isProcessingNavigation` | `protected` | `boolean` | `false` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`isProcessingNavigation`](../../play-router/classes/RouterBridgeBase.md#property-isprocessingnavigation) | [packages/play-router/src/router-bridge-base.ts:89](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L89) |
|
|
66
|
+
| <a id="property-lastsyncedpath"></a> `lastSyncedPath` | `protected` | `string` \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`lastSyncedPath`](../../play-router/classes/RouterBridgeBase.md#property-lastsyncedpath) | [packages/play-router/src/router-bridge-base.ts:88](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L88) |
|
|
67
|
+
| <a id="property-routemap"></a> `routeMap` | `readonly` | `object` | `undefined` | Bidirectional route map for `stateId ↔ path` resolution. Provide `getStateIdByPath` and `getPathByStateId`. Framework adapters typically wrap the result of `createRouteMap()` or an equivalent. | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeMap`](../../play-router/classes/RouterBridgeBase.md#property-routemap) | [packages/play-router/src/router-bridge-base.ts:100](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L100) |
|
|
68
|
+
| `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [packages/play-router/src/router-bridge-base.ts:102](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L102) |
|
|
69
|
+
| `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | - | [packages/play-router/src/router-bridge-base.ts:101](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L101) |
|
|
70
|
+
| <a id="property-routewatcher"></a> `routeWatcher` | `protected` | \| [`RouteWatcherHandle`](../../play-router/interfaces/RouteWatcherHandle.md) \| `null` | `null` | - | [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`routeWatcher`](../../play-router/classes/RouterBridgeBase.md#property-routewatcher) | [packages/play-router/src/router-bridge-base.ts:90](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L90) |
|
|
69
71
|
|
|
70
72
|
## Methods
|
|
71
73
|
|
|
@@ -75,7 +77,7 @@ Create a SolidJS Router bridge
|
|
|
75
77
|
connect(): void;
|
|
76
78
|
```
|
|
77
79
|
|
|
78
|
-
Defined in: [packages/play-router/src/router-bridge-base.ts:
|
|
80
|
+
Defined in: [packages/play-router/src/router-bridge-base.ts:126](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L126)
|
|
79
81
|
|
|
80
82
|
Connect the router bridge to the Actor.
|
|
81
83
|
|
|
@@ -107,7 +109,7 @@ Adapters that need custom initial-sync behavior should override
|
|
|
107
109
|
disconnect(): void;
|
|
108
110
|
```
|
|
109
111
|
|
|
110
|
-
Defined in: [packages/play-router/src/router-bridge-base.ts:
|
|
112
|
+
Defined in: [packages/play-router/src/router-bridge-base.ts:209](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L209)
|
|
111
113
|
|
|
112
114
|
Disconnect the router bridge from the Actor.
|
|
113
115
|
|
|
@@ -129,7 +131,7 @@ Stops signal watching and unregisters framework-specific router listener.
|
|
|
129
131
|
dispose(): void;
|
|
130
132
|
```
|
|
131
133
|
|
|
132
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:
|
|
134
|
+
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:188](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L188)
|
|
133
135
|
|
|
134
136
|
Dispose the bridge (alias for disconnect).
|
|
135
137
|
|
|
@@ -151,29 +153,32 @@ onCleanup(() => bridge.dispose());
|
|
|
151
153
|
protected extractParams(pathname, stateId): Record<string, string>;
|
|
152
154
|
```
|
|
153
155
|
|
|
154
|
-
Defined in: [packages/play-router/src/router-bridge
|
|
156
|
+
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:105](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L105)
|
|
157
|
+
|
|
158
|
+
Extract path parameters using Solid's pre-parsed `useParams()` values.
|
|
155
159
|
|
|
156
|
-
|
|
160
|
+
Solid's router has already extracted all named parameters for the matched route
|
|
161
|
+
segment. Reading `this.solidParams` inside the createEffect callback that drives
|
|
162
|
+
`syncActorFromRouter` is safe — the reactive proxy always reflects the current
|
|
163
|
+
route at the time the effect runs.
|
|
157
164
|
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
polyfill), this method returns `{}` silently (graceful degradation — routing still
|
|
161
|
-
works, params will be empty).
|
|
165
|
+
Falls back to URLPattern-based extraction (base class) only when Solid provided
|
|
166
|
+
no params for this route (i.e. the route has no `:param` segments).
|
|
162
167
|
|
|
163
168
|
#### Parameters
|
|
164
169
|
|
|
165
|
-
| Parameter | Type | Description
|
|
166
|
-
| ---------- | -------- |
|
|
167
|
-
| `pathname` | `string` | The actual URL path (
|
|
168
|
-
| `stateId` | `string` | The matched state ID
|
|
170
|
+
| Parameter | Type | Description |
|
|
171
|
+
| ---------- | -------- | ----------------------------------------------------------------- |
|
|
172
|
+
| `pathname` | `string` | The actual URL path (unused — params already extracted by Solid) |
|
|
173
|
+
| `stateId` | `string` | The matched state ID (unused — params already extracted by Solid) |
|
|
169
174
|
|
|
170
175
|
#### Returns
|
|
171
176
|
|
|
172
177
|
`Record`\<`string`, `string`\>
|
|
173
178
|
|
|
174
|
-
|
|
179
|
+
Normalized path parameters with undefined/empty values filtered out
|
|
175
180
|
|
|
176
|
-
####
|
|
181
|
+
#### Overrides
|
|
177
182
|
|
|
178
183
|
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`extractParams`](../../play-router/classes/RouterBridgeBase.md#extractparams)
|
|
179
184
|
|
|
@@ -185,7 +190,7 @@ Extracted path parameters, or empty object if URLPattern is unavailable or no ma
|
|
|
185
190
|
protected extractQuery(search): Record<string, string>;
|
|
186
191
|
```
|
|
187
192
|
|
|
188
|
-
Defined in: [packages/play-router/src/router-bridge-base.ts:
|
|
193
|
+
Defined in: [packages/play-router/src/router-bridge-base.ts:355](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L355)
|
|
189
194
|
|
|
190
195
|
Extract query parameters from URL search string.
|
|
191
196
|
|
|
@@ -213,7 +218,7 @@ Extracted query parameters or empty object
|
|
|
213
218
|
protected getInitialRouterPath(): string | null;
|
|
214
219
|
```
|
|
215
220
|
|
|
216
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:
|
|
221
|
+
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:127](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L127)
|
|
217
222
|
|
|
218
223
|
Get the current router pathname for initial URL -> actor sync on connect.
|
|
219
224
|
|
|
@@ -227,13 +232,37 @@ Get the current router pathname for initial URL -> actor sync on connect.
|
|
|
227
232
|
|
|
228
233
|
---
|
|
229
234
|
|
|
235
|
+
### getInitialRouterSearch()
|
|
236
|
+
|
|
237
|
+
```ts
|
|
238
|
+
protected getInitialRouterSearch(): string | undefined;
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:138](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L138)
|
|
242
|
+
|
|
243
|
+
Return the initial URL search string for query-param forwarding on `connect()`.
|
|
244
|
+
|
|
245
|
+
Reads `this.location.search` from Solid's `useLocation()` reactive object —
|
|
246
|
+
the same source used by `getInitialRouterPath()`. An empty string (no query
|
|
247
|
+
params) returns `undefined` so `syncActorFromRouter` produces `query: {}`.
|
|
248
|
+
|
|
249
|
+
#### Returns
|
|
250
|
+
|
|
251
|
+
`string` \| `undefined`
|
|
252
|
+
|
|
253
|
+
#### Overrides
|
|
254
|
+
|
|
255
|
+
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`getInitialRouterSearch`](../../play-router/classes/RouterBridgeBase.md#getinitialroutersearch)
|
|
256
|
+
|
|
257
|
+
---
|
|
258
|
+
|
|
230
259
|
### navigateRouter()
|
|
231
260
|
|
|
232
261
|
```ts
|
|
233
262
|
protected navigateRouter(path): void;
|
|
234
263
|
```
|
|
235
264
|
|
|
236
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:
|
|
265
|
+
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:120](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L120)
|
|
237
266
|
|
|
238
267
|
Navigate SolidJS Router to the given path.
|
|
239
268
|
|
|
@@ -253,13 +282,52 @@ Navigate SolidJS Router to the given path.
|
|
|
253
282
|
|
|
254
283
|
---
|
|
255
284
|
|
|
285
|
+
### resolveNavigationPath()
|
|
286
|
+
|
|
287
|
+
```ts
|
|
288
|
+
protected resolveNavigationPath(route): string | null;
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
Defined in: [packages/play-router/src/router-bridge-base.ts:340](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L340)
|
|
292
|
+
|
|
293
|
+
Resolve an actor route value to a concrete URL path for navigation.
|
|
294
|
+
|
|
295
|
+
Bridges that receive raw `actor.currentRoute` values in `navigateRouter`
|
|
296
|
+
can call this to normalize stateIds (with or without `#` prefix) to paths.
|
|
297
|
+
Returns `null` when navigation is not possible:
|
|
298
|
+
|
|
299
|
+
- unknown stateId with no route map entry
|
|
300
|
+
- parameterized pattern (e.g. `/profile/:id`) — no concrete values available
|
|
301
|
+
- non-path string that isn't a known stateId
|
|
302
|
+
|
|
303
|
+
Route maps may store stateIds with or without the `#` prefix; both forms
|
|
304
|
+
are tried automatically.
|
|
305
|
+
|
|
306
|
+
#### Parameters
|
|
307
|
+
|
|
308
|
+
| Parameter | Type | Description |
|
|
309
|
+
| --------- | -------- | -------------------------------------------------------------- |
|
|
310
|
+
| `route` | `string` | Raw actor route value (stateId, `#`-stateId, or concrete path) |
|
|
311
|
+
|
|
312
|
+
#### Returns
|
|
313
|
+
|
|
314
|
+
`string` \| `null`
|
|
315
|
+
|
|
316
|
+
Concrete URL path, or `null` if navigation should be skipped
|
|
317
|
+
|
|
318
|
+
#### Inherited from
|
|
319
|
+
|
|
320
|
+
[`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`resolveNavigationPath`](../../play-router/classes/RouterBridgeBase.md#resolvenavigationpath)
|
|
321
|
+
|
|
322
|
+
---
|
|
323
|
+
|
|
256
324
|
### syncActorFromRouter()
|
|
257
325
|
|
|
258
326
|
```ts
|
|
259
327
|
protected syncActorFromRouter(pathname, search?): void;
|
|
260
328
|
```
|
|
261
329
|
|
|
262
|
-
Defined in: [packages/play-router/src/router-bridge-base.ts:
|
|
330
|
+
Defined in: [packages/play-router/src/router-bridge-base.ts:260](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L260)
|
|
263
331
|
|
|
264
332
|
Sync actor state when router location changes.
|
|
265
333
|
|
|
@@ -289,7 +357,7 @@ Prevents circular updates via isProcessingNavigation flag.
|
|
|
289
357
|
protected syncRouterFromActor(route): void;
|
|
290
358
|
```
|
|
291
359
|
|
|
292
|
-
Defined in: [packages/play-router/src/router-bridge-base.ts:
|
|
360
|
+
Defined in: [packages/play-router/src/router-bridge-base.ts:240](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/router-bridge-base.ts#L240)
|
|
293
361
|
|
|
294
362
|
Sync router location when actor route signal changes.
|
|
295
363
|
|
|
@@ -322,11 +390,13 @@ suppressed as circular echoes.
|
|
|
322
390
|
protected unwatchRouterChanges(): void;
|
|
323
391
|
```
|
|
324
392
|
|
|
325
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:
|
|
393
|
+
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:175](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L175)
|
|
326
394
|
|
|
327
395
|
Stop watching SolidJS Router changes.
|
|
328
396
|
|
|
329
|
-
|
|
397
|
+
Calls the `dispose` function returned by `createRoot()` in `watchRouterChanges()`,
|
|
398
|
+
tearing down the reactive effect and freeing the isolated owner. This is the only
|
|
399
|
+
cleanup path — component unmount does NOT trigger this automatically.
|
|
330
400
|
|
|
331
401
|
#### Returns
|
|
332
402
|
|
|
@@ -344,12 +414,17 @@ Solid auto-cleans createEffect subscriptions when component unmounts.
|
|
|
344
414
|
protected watchRouterChanges(): void;
|
|
345
415
|
```
|
|
346
416
|
|
|
347
|
-
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:
|
|
417
|
+
Defined in: [packages/play-solid-router/src/solid-router-bridge.ts:153](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/solid-router-bridge.ts#L153)
|
|
348
418
|
|
|
349
419
|
Subscribe to SolidJS Router location changes using createEffect.
|
|
350
420
|
|
|
351
|
-
MUST be called inside a Solid reactive owner (component
|
|
352
|
-
|
|
421
|
+
MUST be called inside a Solid reactive owner (component or createRoot).
|
|
422
|
+
|
|
423
|
+
The effect runs inside `createRoot()` to give it a stable owner independent
|
|
424
|
+
of the calling component's lifecycle — this prevents the effect from being
|
|
425
|
+
disposed if the component re-renders while the bridge should stay active.
|
|
426
|
+
The trade-off is that component unmount does NOT automatically clean up the
|
|
427
|
+
effect; `disconnect()` (or `dispose()`) MUST be called explicitly to avoid a leak.
|
|
353
428
|
|
|
354
429
|
#### Returns
|
|
355
430
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function PlayRouterProvider<TActor>(props): any;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-solid-router/src/play-router-provider.tsx:
|
|
9
|
+
Defined in: [packages/play-solid-router/src/play-router-provider.tsx:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-solid-router/src/play-router-provider.tsx#L41)
|
|
10
10
|
|
|
11
11
|
## Type Parameters
|
|
12
12
|
|
|
@@ -6,27 +6,33 @@
|
|
|
6
6
|
function createRouteMap(machine): RouteMap;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-
|
|
9
|
+
Defined in: [packages/play-router/src/create-route-map-from-machine.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.26/packages/play-router/src/create-route-map-from-machine.ts#L26)
|
|
10
10
|
|
|
11
|
-
Create a
|
|
11
|
+
Create a `BaseRouteMap` 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 | Type | Description
|
|
16
|
-
| --------- | ------------------------------------------------------------------------- |
|
|
17
|
-
| `machine` | [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | XState machine with route
|
|
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. |
|
|
18
23
|
|
|
19
24
|
## Returns
|
|
20
25
|
|
|
21
26
|
[`RouteMap`](../classes/RouteMap.md)
|
|
22
27
|
|
|
23
|
-
|
|
28
|
+
A `BaseRouteMap` for passing to any `RouterBridgeBase`-based adapter.
|
|
24
29
|
|
|
25
30
|
## Example
|
|
26
31
|
|
|
27
32
|
```typescript
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
33
|
+
import { createRouteMapFromMachine } from "@xmachines/play-router";
|
|
34
|
+
import { connectRouter } from "@xmachines/play-dom-router";
|
|
30
35
|
|
|
31
|
-
const routeMap =
|
|
36
|
+
const routeMap = createRouteMapFromMachine(myMachine);
|
|
37
|
+
const disconnect = connectRouter({ actor, router, routeMap });
|
|
32
38
|
```
|