@xmachines/docs 3.0.0 → 4.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 +8 -16
- package/api/@xmachines/play/README.md +11 -100
- package/api/@xmachines/play/errors/README.md +8 -0
- package/api/@xmachines/play/{classes → errors/classes}/NonNullableError.md +6 -6
- package/api/@xmachines/play/{classes → errors/classes}/PlayError.md +35 -10
- package/api/@xmachines/play/index/README.md +75 -0
- package/api/@xmachines/play/{functions → index/functions}/asCleanup.md +2 -2
- package/api/@xmachines/play/{functions → index/functions}/assertNonNullable.md +2 -2
- package/api/@xmachines/{play-actor → play/index}/functions/shallowEqualExcept.md +3 -3
- package/api/@xmachines/play/{type-aliases → index/type-aliases}/Cleanup.md +3 -3
- package/api/@xmachines/play/{type-aliases → index/type-aliases}/DisposeKey.md +2 -2
- package/api/@xmachines/play/{type-aliases → index/type-aliases}/PlayEvent.md +4 -4
- package/api/@xmachines/play/{variables → index/variables}/DISPOSE.md +2 -2
- package/api/@xmachines/play-actor/README.md +78 -229
- package/api/@xmachines/play-actor/interfaces/ActorEvent.md +18 -0
- package/api/@xmachines/play-actor/interfaces/PlayActor.md +73 -0
- package/api/@xmachines/play-dom/README.md +28 -40
- package/api/@xmachines/play-dom/classes/PlayRenderer.md +12 -11
- package/api/@xmachines/play-dom/functions/asCleanup.md +78 -0
- package/api/@xmachines/play-dom/functions/createPlayUI.md +4 -4
- package/api/@xmachines/play-dom/functions/createRenderer.md +1 -1
- package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +3 -3
- package/api/@xmachines/play-dom/interfaces/MountOptions.md +3 -3
- package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +6 -6
- package/api/@xmachines/play-dom/type-aliases/Cleanup.md +2 -2
- package/api/@xmachines/play-dom/type-aliases/MountFn.md +29 -12
- package/api/@xmachines/play-dom-router/README.md +70 -70
- package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +22 -21
- package/api/@xmachines/{play-vue-router → play-dom-router}/classes/RouteMap.md +12 -6
- package/api/@xmachines/play-dom-router/functions/asCleanup.md +78 -0
- package/api/@xmachines/play-dom-router/functions/connectRouter.md +3 -8
- package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +9 -3
- package/api/@xmachines/play-dom-router/functions/createRouter.md +8 -14
- package/api/@xmachines/play-dom-router/interfaces/BasePathOptions.md +5 -5
- package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +70 -26
- package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +14 -14
- package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +8 -8
- package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +24 -21
- package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouterConnection.md +8 -8
- package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +36 -23
- package/api/@xmachines/play-dom-router/type-aliases/Cleanup.md +2 -2
- package/api/@xmachines/play-dom-router/variables/DISPOSE.md +2 -2
- package/api/@xmachines/play-react/README.md +17 -39
- package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +14 -10
- package/api/@xmachines/play-react/functions/useActor.md +1 -1
- package/api/@xmachines/play-react/functions/usePlayView.md +1 -1
- package/api/@xmachines/play-react/functions/useSignalEffect.md +1 -1
- package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +11 -11
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +6 -6
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +4 -4
- package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +13 -13
- package/api/@xmachines/play-react/interfaces/ViewContextValue.md +8 -8
- package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +11 -3
- package/api/@xmachines/play-react/variables/ActorProvider.md +1 -1
- package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-react/variables/PlayUIProvider.md +1 -1
- package/api/@xmachines/play-react/variables/schema.md +52 -0
- package/api/@xmachines/play-react-router/README.md +22 -50
- package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +17 -16
- package/api/@xmachines/play-react-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +11 -8
- package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +16 -9
- package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +10 -10
- package/api/@xmachines/play-react-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +17 -7
- package/api/@xmachines/play-react-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
- package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +4 -4
- package/api/@xmachines/play-router/README.md +104 -196
- package/api/@xmachines/play-router/errors/README.md +15 -0
- package/api/@xmachines/play-router/errors/classes/DuplicateBridgeError.md +191 -0
- package/api/@xmachines/play-router/errors/classes/DuplicateRoutePathError.md +175 -0
- package/api/@xmachines/play-router/errors/classes/EmptyRoutePathError.md +175 -0
- package/api/@xmachines/play-router/errors/classes/InvalidBasePathError.md +200 -0
- package/api/@xmachines/play-router/errors/classes/InvalidRoutePatternError.md +203 -0
- package/api/@xmachines/play-router/errors/classes/InvalidStateIdError.md +175 -0
- package/api/@xmachines/play-router/errors/classes/MissingBasePathParamError.md +199 -0
- package/api/@xmachines/play-router/errors/classes/RouterSyncError.md +192 -0
- package/api/@xmachines/play-router/errors/classes/UnknownStateTypeError.md +182 -0
- package/api/@xmachines/play-router/index/README.md +75 -0
- package/api/@xmachines/play-router/{classes → index/classes}/RouteMap.md +12 -6
- package/api/@xmachines/play-router/{classes → index/classes}/RouterBridgeBase.md +19 -17
- package/api/@xmachines/play-router/{functions → index/functions}/buildPlayRouteEvent.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/buildRouteTree.md +14 -4
- package/api/@xmachines/play-router/{functions → index/functions}/cleanFrameworkParams.md +3 -4
- package/api/@xmachines/play-router/{functions → index/functions}/createRouteMapFromTree.md +13 -6
- package/api/@xmachines/play-router/{functions → index/functions}/createRouterConnection.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/detectDuplicateRoutes.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/extractQuery.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/extractRouteParams.md +3 -3
- package/api/@xmachines/play-router/{functions → index/functions}/findRouteById.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/findRouteByPath.md +2 -2
- package/api/@xmachines/play-router/index/functions/getPatternParamNames.md +29 -0
- package/api/@xmachines/play-router/index/functions/getRequiredPatternParamNames.md +39 -0
- package/api/@xmachines/play-router/{functions → index/functions}/isMountableBridge.md +2 -2
- package/api/@xmachines/play-router/index/functions/joinBasePath.md +37 -0
- package/api/@xmachines/play-router/{functions → index/functions}/mountKey.md +2 -2
- package/api/@xmachines/play-router/index/functions/normalizeBasePath.md +43 -0
- package/api/@xmachines/play-router/{functions → index/functions}/openProviderBridge.md +14 -14
- package/api/@xmachines/play-router/index/functions/pickOwnParams.md +41 -0
- package/api/@xmachines/play-router/{functions → index/functions}/repointProviderBridge.md +2 -2
- package/api/@xmachines/play-router/index/functions/resolveBasePath.md +51 -0
- package/api/@xmachines/play-router/{functions → index/functions}/resolveFrameworkParams.md +11 -13
- package/api/@xmachines/play-router/{functions → index/functions}/sanitizePathname.md +2 -2
- package/api/@xmachines/play-router/index/functions/stripBasePath.md +44 -0
- package/api/@xmachines/play-router/{functions → index/functions}/validateRouteFormat.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/validateStateExists.md +2 -2
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/BasePathOptions.md +6 -6
- package/api/@xmachines/play-router/index/interfaces/BuildPlayRouteEventOptions.md +13 -0
- package/api/@xmachines/play-router/index/interfaces/FrameworkParamsSource.md +47 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/LocationLike.md +6 -6
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/MountableRouterBridge.md +9 -9
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/OpenProviderBridgeArgs.md +13 -13
- package/api/@xmachines/play-router/index/interfaces/PlayRouteEvent.md +130 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/PlayRouterProviderBaseProps.md +15 -15
- package/api/@xmachines/play-router/index/interfaces/ResolvedBasePath.md +14 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/ResolvedRoutePath.md +6 -6
- package/api/@xmachines/play-router/index/interfaces/Routable.md +26 -0
- package/api/@xmachines/play-router/index/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouteInfo.md +11 -11
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouteMapOptions.md +5 -5
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouteMapping.md +6 -6
- package/api/@xmachines/play-router/index/interfaces/RouteMatch.md +12 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouteNode.md +13 -13
- package/api/@xmachines/play-router/index/interfaces/RouteObject.md +34 -0
- package/api/@xmachines/play-router/index/interfaces/RouteTree.md +27 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouteWatcherHandle.md +7 -7
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouterBridge.md +5 -5
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouterConnection.md +10 -10
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/WindowLike.md +4 -4
- package/api/@xmachines/play-router/index/type-aliases/PlayRouterBridgeConstructor.md +46 -0
- package/api/@xmachines/play-router/index/type-aliases/RouteData.md +12 -0
- package/api/@xmachines/play-router/index/type-aliases/RouteDataResolver.md +31 -0
- package/api/@xmachines/play-router/index/type-aliases/RouteMetadata.md +11 -0
- package/api/@xmachines/{play-xstate → play-router/index}/variables/DISPOSE.md +3 -3
- package/api/@xmachines/play-router/index/variables/NO_BASE_PATH.md +18 -0
- package/api/@xmachines/play-router/index/variables/ROOT_NODE_ID.md +18 -0
- package/api/@xmachines/play-router/xstate/README.md +53 -0
- package/api/@xmachines/play-router/{functions → xstate/functions}/createRouteMap.md +8 -6
- package/api/@xmachines/play-router/{functions → xstate/functions}/extractMachineRoutes.md +4 -4
- package/api/@xmachines/play-router/xstate/functions/getNavigableRoutes.md +35 -0
- package/api/@xmachines/play-router/{functions → xstate/functions}/getRoutableRoutes.md +6 -6
- package/api/@xmachines/play-router/{functions → xstate/functions}/getRouteMappings.md +7 -7
- package/api/@xmachines/play-router/{functions → xstate/functions}/getTransitionReachableRoutes.md +2 -2
- package/api/@xmachines/play-router/{functions → xstate/functions}/isRouteReachable.md +2 -2
- package/api/@xmachines/play-router/{functions → xstate/functions}/machineToGraph.md +2 -2
- package/api/@xmachines/play-router/xstate/functions/routeExists.md +26 -0
- package/api/@xmachines/play-router/xstate/interfaces/MachineEdgeData.md +15 -0
- package/api/@xmachines/play-router/xstate/interfaces/MachineNodeData.md +17 -0
- package/api/@xmachines/play-router/{type-aliases → xstate/type-aliases}/MachineGraph.md +2 -2
- package/api/@xmachines/play-signals/README.md +2 -24
- package/api/@xmachines/play-signals/functions/watchSignal.md +1 -1
- package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalComputed.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalOptions.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalState.md +3 -3
- package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +4 -4
- package/api/@xmachines/play-signals/type-aliases/Cleanup.md +2 -2
- package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +1 -1
- package/api/@xmachines/play-solid/README.md +14 -31
- package/api/@xmachines/play-solid/functions/useActor.md +1 -1
- package/api/@xmachines/play-solid/functions/usePlayView.md +1 -1
- package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +11 -11
- package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +13 -13
- package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +8 -8
- package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +11 -3
- package/api/@xmachines/play-solid/variables/ActorContext.md +1 -1
- package/api/@xmachines/play-solid/variables/ActorProvider.md +1 -1
- package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-solid/variables/PlayUIProvider.md +1 -1
- package/api/@xmachines/play-solid/variables/schema.md +71 -0
- package/api/@xmachines/play-solid-router/README.md +31 -52
- package/api/@xmachines/play-solid-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +30 -53
- package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +9 -8
- package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +38 -35
- package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +12 -12
- package/api/@xmachines/play-solid-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +5 -5
- package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +17 -7
- package/api/@xmachines/play-solid-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
- package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
- package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +4 -4
- package/api/@xmachines/play-svelte/README.md +11 -26
- package/api/@xmachines/play-svelte/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-svelte/functions/getActorContext.md +1 -1
- package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +1 -1
- package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
- package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +12 -12
- package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +4 -4
- package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +14 -14
- package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +8 -8
- package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +11 -3
- package/api/@xmachines/play-svelte/variables/schema.md +16 -0
- package/api/@xmachines/play-svelte-spa-router/README.md +22 -41
- package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +22 -21
- package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +3 -2
- package/api/@xmachines/play-svelte-spa-router/interfaces/BasePathOptions.md +5 -5
- package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +8 -8
- package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-svelte-spa-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouterConnection.md +8 -8
- package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +3 -3
- package/api/@xmachines/play-sveltekit-router/README.md +17 -35
- package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +22 -21
- package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +3 -2
- package/api/@xmachines/play-sveltekit-router/interfaces/BasePathOptions.md +5 -5
- package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +8 -8
- package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +3 -3
- package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-sveltekit-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-sveltekit-router/interfaces/RouterConnection.md +8 -8
- package/api/@xmachines/play-tanstack-react-router/README.md +19 -43
- package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +18 -17
- package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +11 -8
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +16 -9
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +10 -10
- package/api/@xmachines/play-tanstack-react-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +17 -7
- package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +5 -5
- package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +4 -4
- package/api/@xmachines/play-tanstack-router/README.md +6 -4
- package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +17 -20
- package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +3 -3
- package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +5 -5
- package/api/@xmachines/play-tanstack-solid-router/README.md +26 -52
- package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +49 -45
- package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +9 -8
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +10 -10
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +17 -7
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +5 -5
- package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +4 -4
- package/api/@xmachines/play-url/README.md +69 -0
- package/api/@xmachines/play-url/errors/README.md +17 -0
- package/api/@xmachines/play-url/errors/classes/InvalidBasePathError.md +200 -0
- package/api/@xmachines/play-url/errors/classes/InvalidRoutePatternError.md +203 -0
- package/api/@xmachines/play-url/errors/classes/MissingBasePathParamError.md +199 -0
- package/api/@xmachines/play-url/index/README.md +65 -0
- package/api/@xmachines/play-url/index/functions/cleanFrameworkParams.md +39 -0
- package/api/@xmachines/play-url/index/functions/getCandidates.md +29 -0
- package/api/@xmachines/play-url/index/functions/getCompiledPattern.md +31 -0
- package/api/@xmachines/play-url/index/functions/getIndexKey.md +30 -0
- package/api/@xmachines/play-url/index/functions/getNormalizedParamNameMap.md +32 -0
- package/api/@xmachines/play-url/index/functions/getPatternParamNames.md +29 -0
- package/api/@xmachines/play-url/index/functions/getRequiredPatternParamNames.md +39 -0
- package/api/@xmachines/play-url/index/functions/holdsUnsubstitutedParam.md +36 -0
- package/api/@xmachines/play-url/index/functions/isParameterizedPattern.md +36 -0
- package/api/@xmachines/{play-router → play-url/index}/functions/joinBasePath.md +2 -2
- package/api/@xmachines/{play-router → play-url/index}/functions/normalizeBasePath.md +2 -2
- package/api/@xmachines/play-url/index/functions/normalizeParamNames.md +36 -0
- package/api/@xmachines/play-url/index/functions/parsePattern.md +27 -0
- package/api/@xmachines/{play-router → play-url/index}/functions/pickOwnParams.md +4 -4
- package/api/@xmachines/{play-router → play-url/index}/functions/resolveBasePath.md +2 -2
- package/api/@xmachines/play-url/index/functions/resolveFrameworkParams.md +49 -0
- package/api/@xmachines/{play-router → play-url/index}/functions/stripBasePath.md +2 -2
- package/api/@xmachines/play-url/index/interfaces/BasePathOptions.md +28 -0
- package/api/@xmachines/{play-router → play-url/index}/interfaces/FrameworkParamsSource.md +9 -9
- package/api/@xmachines/play-url/index/interfaces/GroupPart.md +15 -0
- package/api/@xmachines/play-url/index/interfaces/LiteralPart.md +14 -0
- package/api/@xmachines/play-url/index/interfaces/ParamPart.md +21 -0
- package/api/@xmachines/play-url/index/interfaces/ParsedPattern.md +23 -0
- package/api/@xmachines/play-url/index/interfaces/PatternParam.md +15 -0
- package/api/@xmachines/{play-router → play-url/index}/interfaces/ResolvedBasePath.md +6 -6
- package/api/@xmachines/play-url/index/type-aliases/PatternModifier.md +11 -0
- package/api/@xmachines/play-url/index/type-aliases/PatternPart.md +9 -0
- package/api/@xmachines/play-url/index/type-aliases/URLPatternCtor.md +22 -0
- package/api/@xmachines/play-url/index/type-aliases/URLPatternLike.md +68 -0
- package/api/@xmachines/{play-router → play-url/index}/variables/NO_BASE_PATH.md +2 -2
- package/api/@xmachines/play-url/index/variables/URLPattern.md +21 -0
- package/api/@xmachines/play-view/README.md +165 -0
- package/api/@xmachines/play-view/errors/README.md +17 -0
- package/api/@xmachines/play-view/errors/classes/ReadOnlyContextError.md +192 -0
- package/api/@xmachines/play-view/index/README.md +55 -0
- package/api/@xmachines/{play-actor → play-view/index}/functions/attachRenderErrorHandler.md +6 -6
- package/api/@xmachines/{play-actor → play-view/index}/functions/composePlayState.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/createFailureLatch.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/createReportGuard.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/createViewStoreLifecycle.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/guardContextWrites.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/refreshContextSubtree.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/reuseComposedState.md +3 -3
- package/api/@xmachines/{play-actor → play-view/index}/functions/sameViewInputs.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/toAtomState.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/typedSpec.md +2 -2
- package/api/@xmachines/play-view/index/interfaces/BaseActorProviderProps.md +49 -0
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/BaseViewContextValue.md +12 -12
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/FailureLatch.md +6 -5
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/PlaySpec.md +8 -8
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ReportGuard.md +6 -6
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ReportGuardMessages.md +6 -6
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ResolveViewStoreOptions.md +5 -5
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ViewInputs.md +7 -7
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ViewStoreLifecycle.md +6 -5
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ViewStoreResolution.md +7 -7
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/Viewable.md +5 -5
- package/api/@xmachines/play-view/index/type-aliases/ViewActor.md +26 -0
- package/api/@xmachines/{play-actor → play-view/index}/variables/CONTEXT_STATE_KEY.md +2 -2
- package/api/@xmachines/play-vue/README.md +15 -33
- 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/usePlayView.md +1 -1
- package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +9 -9
- package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +11 -11
- package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +8 -8
- package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +11 -3
- package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
- package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-vue/variables/schema.md +71 -0
- package/api/@xmachines/play-vue-router/README.md +34 -77
- package/api/@xmachines/play-vue-router/errors/README.md +8 -0
- package/api/@xmachines/play-vue-router/errors/classes/VueRouterNavigationError.md +193 -0
- package/api/@xmachines/play-vue-router/errors/classes/VueRouterSendError.md +177 -0
- package/api/@xmachines/play-vue-router/index/README.md +20 -0
- package/api/@xmachines/play-vue-router/index/classes/RouteMap.md +157 -0
- package/api/@xmachines/play-vue-router/{classes → index/classes}/VueRouterBridge.md +24 -43
- package/api/@xmachines/play-vue-router/index/interfaces/PlayRouteEvent.md +130 -0
- package/api/@xmachines/play-vue-router/index/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-vue-router/{interfaces → index/interfaces}/RouteMapOptions.md +5 -5
- package/api/@xmachines/play-vue-router/{interfaces → index/interfaces}/RouteMapping.md +6 -6
- package/api/@xmachines/play-vue-router/{interfaces → index/interfaces}/RouterBridge.md +5 -5
- package/api/@xmachines/play-vue-router/{variables → index/variables}/PlayRouterProvider.md +4 -4
- package/api/@xmachines/play-xstate/README.md +153 -105
- package/api/@xmachines/play-xstate/errors/README.md +13 -0
- package/api/@xmachines/play-xstate/errors/classes/ActorThrewNonErrorError.md +199 -0
- package/api/@xmachines/play-xstate/errors/classes/InvalidEventError.md +198 -0
- package/api/@xmachines/play-xstate/errors/classes/InvalidMachineError.md +169 -0
- package/api/@xmachines/play-xstate/errors/classes/InvalidRouteHandlerError.md +197 -0
- package/api/@xmachines/play-xstate/errors/classes/InvalidRouteMetadataError.md +176 -0
- package/api/@xmachines/play-xstate/errors/classes/MissingRouteParamError.md +199 -0
- package/api/@xmachines/play-xstate/errors/classes/MissingStateIdError.md +203 -0
- package/api/@xmachines/play-xstate/index/README.md +38 -0
- package/api/@xmachines/play-xstate/index/classes/PlayerActor.md +584 -0
- package/api/@xmachines/play-xstate/index/functions/compose.md +224 -0
- package/api/@xmachines/play-xstate/index/functions/definePlayer.md +158 -0
- package/api/@xmachines/play-xstate/index/interfaces/PlayerConfig.md +22 -0
- package/api/@xmachines/play-xstate/{interfaces → index/interfaces}/PlayerFactoryResumeOptions.md +3 -3
- package/api/@xmachines/play-xstate/{interfaces → index/interfaces}/PlayerOptions.md +8 -8
- package/api/@xmachines/play-xstate/index/type-aliases/Capability.md +33 -0
- package/api/@xmachines/play-xstate/index/type-aliases/PlayerConstructor.md +39 -0
- package/api/@xmachines/play-xstate/index/type-aliases/PlayerFactory.md +27 -0
- package/api/@xmachines/{play-router → play-xstate/index}/variables/DISPOSE.md +3 -3
- package/api/@xmachines/play-xstate/with-routing/README.md +46 -0
- package/api/@xmachines/play-xstate/{functions → with-routing/functions}/buildRouteUrl.md +2 -2
- package/api/@xmachines/play-xstate/{functions → with-routing/functions}/deriveRoute.md +4 -4
- package/api/@xmachines/play-xstate/{functions → with-routing/functions}/formatPlayRouteTransitions.md +2 -2
- package/api/@xmachines/play-xstate/{functions → with-routing/functions}/isAbsoluteRoute.md +3 -3
- package/api/@xmachines/play-xstate/with-routing/functions/withRouting.md +36 -0
- package/api/@xmachines/play-xstate/{interfaces → with-routing/interfaces}/RouteContext.md +6 -6
- package/api/@xmachines/play-xstate/with-routing/interfaces/RouteObject.md +34 -0
- package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteData.md +12 -0
- package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteDataResolver.md +31 -0
- package/api/@xmachines/play-xstate/{type-aliases → with-routing/type-aliases}/RouteMachineConfig.md +5 -5
- package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMetadata.md +11 -0
- package/api/@xmachines/play-xstate/{type-aliases → with-routing/type-aliases}/RouteStateNode.md +21 -7
- package/api/@xmachines/play-xstate/with-view/README.md +31 -0
- package/api/@xmachines/play-xstate/with-view/functions/withView.md +32 -0
- package/api/@xmachines/shared/README.md +10 -32
- package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +2 -2
- package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
- package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +2 -1
- package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +4 -4
- package/api/README.md +2 -0
- package/api/llms.txt +15 -10
- package/contributing/architecture.md +94 -66
- package/contributing/configuration.md +85 -26
- package/contributing/deployment.md +30 -28
- package/contributing/development.md +51 -10
- package/contributing/testing.md +87 -28
- package/examples/README.md +9 -7
- package/examples/form-validation.md +3 -2
- package/examples/multi-router-integration.md +61 -39
- package/examples/routing-patterns.md +15 -14
- package/examples/traffic-light.md +11 -5
- package/guides/README.md +1 -0
- package/guides/actor-model.md +35 -26
- package/guides/getting-started.md +49 -46
- package/guides/inspector.md +4 -4
- package/guides/routing.md +245 -0
- package/guides/state-machines.md +16 -17
- package/package.json +10 -9
- package/rfc/play.md +35 -22
- package/api/@xmachines/play-actor/classes/AbstractActor.md +0 -505
- package/api/@xmachines/play-actor/interfaces/BaseActorProviderProps.md +0 -48
- package/api/@xmachines/play-actor/interfaces/Routable.md +0 -14
- package/api/@xmachines/play-dom/type-aliases/DisposablePlayUI.md +0 -36
- package/api/@xmachines/play-dom-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-dom-router/interfaces/DisposableBrowserHistory.md +0 -262
- package/api/@xmachines/play-dom-router/interfaces/DisposableVanillaRouter.md +0 -80
- package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +0 -122
- package/api/@xmachines/play-react/type-aliases/PlayRendererProps.md +0 -13
- package/api/@xmachines/play-react-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-react-router/interfaces/PlayActor.md +0 -70
- package/api/@xmachines/play-router/functions/getNavigableRoutes.md +0 -35
- package/api/@xmachines/play-router/functions/getPatternParamNames.md +0 -24
- package/api/@xmachines/play-router/functions/getRequiredPatternParamNames.md +0 -36
- package/api/@xmachines/play-router/functions/routeExists.md +0 -26
- package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +0 -13
- package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +0 -15
- package/api/@xmachines/play-router/interfaces/MachineNodeData.md +0 -17
- package/api/@xmachines/play-router/interfaces/PlayActor.md +0 -70
- package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +0 -135
- package/api/@xmachines/play-router/interfaces/RoutableActor.md +0 -65
- package/api/@xmachines/play-router/interfaces/RouteMatch.md +0 -12
- package/api/@xmachines/play-router/interfaces/RouteObject.md +0 -21
- package/api/@xmachines/play-router/interfaces/RouteTree.md +0 -21
- package/api/@xmachines/play-router/type-aliases/BaseRouteMapping.md +0 -13
- package/api/@xmachines/play-router/type-aliases/PlayRouterBridgeConstructor.md +0 -36
- package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +0 -11
- package/api/@xmachines/play-solid-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +0 -471
- package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +0 -13
- package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +0 -9
- package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +0 -9
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +0 -29
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayActor.md +0 -70
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +0 -31
- package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayActor.md +0 -70
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +0 -13
- package/api/@xmachines/play-vue/interfaces/VisibilityProviderProps.md +0 -9
- package/api/@xmachines/play-vue/variables/getPlayViewContext.md +0 -39
- package/api/@xmachines/play-vue-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-vue-router/interfaces/PlayActor.md +0 -70
- package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +0 -135
- package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +0 -13
- package/api/@xmachines/play-vue-router/type-aliases/VueRouteMap.md +0 -13
- package/api/@xmachines/play-vue-router/variables/VueRouteMap.md +0 -13
- package/api/@xmachines/play-xstate/classes/PlayerActor.md +0 -568
- package/api/@xmachines/play-xstate/functions/composeGuards.md +0 -86
- package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +0 -72
- package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +0 -43
- package/api/@xmachines/play-xstate/functions/definePlayer.md +0 -78
- package/api/@xmachines/play-xstate/functions/eventMatches.md +0 -45
- package/api/@xmachines/play-xstate/functions/hasContext.md +0 -45
- package/api/@xmachines/play-xstate/functions/negateGuard.md +0 -67
- package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +0 -20
- package/api/@xmachines/play-xstate/interfaces/RouteObject.md +0 -17
- package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +0 -19
- package/api/@xmachines/play-xstate/type-aliases/Guard.md +0 -36
- package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +0 -23
- package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +0 -26
- package/api/@xmachines/play-xstate/type-aliases/RouteMetadata.md +0 -9
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / RouteTree
|
|
2
|
+
|
|
3
|
+
# Interface: RouteTree\<TGraph\>
|
|
4
|
+
|
|
5
|
+
Defined in: [packages/play-router/src/types.ts:218](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L218)
|
|
6
|
+
|
|
7
|
+
The complete route tree, with its lookup maps
|
|
8
|
+
|
|
9
|
+
It gives you the map between a state ID and a URL path, in both directions:
|
|
10
|
+
|
|
11
|
+
- byStateId: it maps each state ID to its route node, for the target of a play.route event
|
|
12
|
+
- byPath: it maps each URL path to its route node, for the browser navigation
|
|
13
|
+
|
|
14
|
+
## Type Parameters
|
|
15
|
+
|
|
16
|
+
| Type Parameter | Default type |
|
|
17
|
+
| -------------- | ------------ |
|
|
18
|
+
| `TGraph` | `unknown` |
|
|
19
|
+
|
|
20
|
+
## Properties
|
|
21
|
+
|
|
22
|
+
| Property | Type | Description | Defined in |
|
|
23
|
+
| ------------------------------------------- | ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
|
|
24
|
+
| <a id="property-bypath"></a> `byPath` | `Map`\<`string`, [`RouteNode`](RouteNode.md)\> | The map from a complete path to its route node. It gives you the state ID of a URL path, for the target of a play.route event | [packages/play-router/src/types.ts:230](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L230) |
|
|
25
|
+
| <a id="property-bystateid"></a> `byStateId` | `Map`\<`string`, [`RouteNode`](RouteNode.md)\> | The map from a state ID to its route node. It gives you the URL path of a state ID, for the update of the browser URL | [packages/play-router/src/types.ts:225](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L225) |
|
|
26
|
+
| <a id="property-graph"></a> `graph?` | `TGraph` | The graph of the state machine, for an advanced query. `TGraph` carries its type, and this package names none: a route tree is a map from a path to a state, and the graph of a MACHINE belongs to the package that reads a machine. `extractMachineRoutes` of `@xmachines/play-router/xstate` answers `RouteTree<MachineGraph>`, so a consumer of that function loses no type. **Example** `import { getSuccessors, hasPath } from "@statelyai/graph"; // `tree`comes from`extractMachineRoutes`of`@xmachines/play-router/xstate` const successors = getSuccessors(tree.graph!, "myMachine.home");` | [packages/play-router/src/types.ts:246](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L246) |
|
|
27
|
+
| <a id="property-root"></a> `root` | [`RouteNode`](RouteNode.md) | The root node of the routes | [packages/play-router/src/types.ts:220](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L220) |
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / RouteWatcherHandle
|
|
2
2
|
|
|
3
3
|
# Interface: RouteWatcherHandle
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/router-bridge-base.ts:
|
|
5
|
+
Defined in: [packages/play-router/src/router-bridge-base.ts:80](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/router-bridge-base.ts#L80)
|
|
6
6
|
|
|
7
7
|
The narrow interface of the TC39 Signal watcher. `RouterBridgeBase` uses it to
|
|
8
8
|
observe each change of `actor.currentRoute`.
|
|
@@ -24,7 +24,7 @@ it and manages it internally.
|
|
|
24
24
|
unwatch(): void;
|
|
25
25
|
```
|
|
26
26
|
|
|
27
|
-
Defined in: [play-router/src/router-bridge-base.ts:
|
|
27
|
+
Defined in: [packages/play-router/src/router-bridge-base.ts:84](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/router-bridge-base.ts#L84)
|
|
28
28
|
|
|
29
29
|
Stops the observation and frees the watcher.
|
|
30
30
|
|
|
@@ -40,15 +40,15 @@ Stops the observation and frees the watcher.
|
|
|
40
40
|
watch(signal): void;
|
|
41
41
|
```
|
|
42
42
|
|
|
43
|
-
Defined in: [play-router/src/router-bridge-base.ts:
|
|
43
|
+
Defined in: [packages/play-router/src/router-bridge-base.ts:82](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/router-bridge-base.ts#L82)
|
|
44
44
|
|
|
45
45
|
Arms the watcher on the given signal.
|
|
46
46
|
|
|
47
47
|
#### Parameters
|
|
48
48
|
|
|
49
|
-
| Parameter | Type
|
|
50
|
-
| --------- |
|
|
51
|
-
| `signal` | [`Computed`](
|
|
49
|
+
| Parameter | Type |
|
|
50
|
+
| --------- | ----------------------------------------------------------------------------------------------- |
|
|
51
|
+
| `signal` | [`Computed`](../../../play-signals/namespaces/Signal/classes/Computed.md)\<`string` \| `null`\> |
|
|
52
52
|
|
|
53
53
|
#### Returns
|
|
54
54
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / RouterBridge
|
|
2
2
|
|
|
3
3
|
# Interface: RouterBridge
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/types.ts:
|
|
5
|
+
Defined in: [packages/play-router/src/types.ts:438](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L438)
|
|
6
6
|
|
|
7
7
|
The RouterBridge interface of a runtime infrastructure adapter
|
|
8
8
|
|
|
@@ -46,7 +46,7 @@ class MyRouterBridge implements RouterBridge {
|
|
|
46
46
|
|
|
47
47
|
## See
|
|
48
48
|
|
|
49
|
-
[Play RFC](
|
|
49
|
+
[Play RFC](../../../../../rfc/play.md) - invariant INV-04
|
|
50
50
|
|
|
51
51
|
## Extended by
|
|
52
52
|
|
|
@@ -60,7 +60,7 @@ class MyRouterBridge implements RouterBridge {
|
|
|
60
60
|
connect(): void | Promise<void>;
|
|
61
61
|
```
|
|
62
62
|
|
|
63
|
-
Defined in: [play-router/src/types.ts:
|
|
63
|
+
Defined in: [packages/play-router/src/types.ts:455](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L455)
|
|
64
64
|
|
|
65
65
|
Connects the router bridge to the Actor
|
|
66
66
|
|
|
@@ -90,7 +90,7 @@ await bridge.connect();
|
|
|
90
90
|
disconnect(): void | Promise<void>;
|
|
91
91
|
```
|
|
92
92
|
|
|
93
|
-
Defined in: [play-router/src/types.ts:
|
|
93
|
+
Defined in: [packages/play-router/src/types.ts:471](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L471)
|
|
94
94
|
|
|
95
95
|
Disconnects the router bridge from the Actor
|
|
96
96
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / RouterConnection
|
|
2
2
|
|
|
3
3
|
# Interface: RouterConnection()
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/provider-lifecycle.ts:
|
|
5
|
+
Defined in: [packages/play-router/src/provider-lifecycle.ts:275](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/provider-lifecycle.ts#L275)
|
|
6
6
|
|
|
7
7
|
What `connectRouter` of an adapter returns.
|
|
8
8
|
|
|
@@ -21,7 +21,7 @@ stale.
|
|
|
21
21
|
RouterConnection(): void;
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
-
Defined in: [play-router/src/provider-lifecycle.ts:
|
|
24
|
+
Defined in: [packages/play-router/src/provider-lifecycle.ts:277](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/provider-lifecycle.ts#L277)
|
|
25
25
|
|
|
26
26
|
Stops the synchronization. The same call as [RouterConnection.disconnect](#disconnect).
|
|
27
27
|
|
|
@@ -31,10 +31,10 @@ Stops the synchronization. The same call as [RouterConnection.disconnect](#disco
|
|
|
31
31
|
|
|
32
32
|
## Properties
|
|
33
33
|
|
|
34
|
-
| Property | Modifier | Type | Description | Defined in
|
|
35
|
-
| ----------------------------------------------------- | ---------- | -------------------------------------------- | --------------------------------------------------------------------------------- |
|
|
36
|
-
| <a id="property-basepath"></a> `basePath` | `readonly` | `string` | The resolved prefix of the mount, or `""` when the machine owns the whole router. | [play-router/src/provider-lifecycle.ts:
|
|
37
|
-
| <a id="property-basepathparams"></a> `basePathParams` | `readonly` | `Readonly`\<`Record`\<`string`, `string`\>\> | The values of the `:param` segments of the mount. They travel in no event. | [play-router/src/provider-lifecycle.ts:
|
|
34
|
+
| Property | Modifier | Type | Description | Defined in |
|
|
35
|
+
| ----------------------------------------------------- | ---------- | -------------------------------------------- | --------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
36
|
+
| <a id="property-basepath"></a> `basePath` | `readonly` | `string` | The resolved prefix of the mount, or `""` when the machine owns the whole router. | [packages/play-router/src/provider-lifecycle.ts:298](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/provider-lifecycle.ts#L298) |
|
|
37
|
+
| <a id="property-basepathparams"></a> `basePathParams` | `readonly` | `Readonly`\<`Record`\<`string`, `string`\>\> | The values of the `:param` segments of the mount. They travel in no event. | [packages/play-router/src/provider-lifecycle.ts:300](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/provider-lifecycle.ts#L300) |
|
|
38
38
|
|
|
39
39
|
## Methods
|
|
40
40
|
|
|
@@ -44,7 +44,7 @@ Stops the synchronization. The same call as [RouterConnection.disconnect](#disco
|
|
|
44
44
|
dispose: void;
|
|
45
45
|
```
|
|
46
46
|
|
|
47
|
-
Defined in: [play-router/src/provider-lifecycle.ts:
|
|
47
|
+
Defined in: [packages/play-router/src/provider-lifecycle.ts:296](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/provider-lifecycle.ts#L296)
|
|
48
48
|
|
|
49
49
|
Stops the synchronization when the scope of a `using` declaration ends.
|
|
50
50
|
|
|
@@ -73,7 +73,7 @@ The release is [RouterConnection.disconnect](#disconnect), which is idempotent.
|
|
|
73
73
|
disconnect(): void;
|
|
74
74
|
```
|
|
75
75
|
|
|
76
|
-
Defined in: [play-router/src/provider-lifecycle.ts:
|
|
76
|
+
Defined in: [packages/play-router/src/provider-lifecycle.ts:279](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/provider-lifecycle.ts#L279)
|
|
77
77
|
|
|
78
78
|
Stops the synchronization.
|
|
79
79
|
|
|
@@ -89,7 +89,7 @@ Stops the synchronization.
|
|
|
89
89
|
setBasePath(basePath?, basePathParams?): void;
|
|
90
90
|
```
|
|
91
91
|
|
|
92
|
-
Defined in: [play-router/src/provider-lifecycle.ts:
|
|
92
|
+
Defined in: [packages/play-router/src/provider-lifecycle.ts:302](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/provider-lifecycle.ts#L302)
|
|
93
93
|
|
|
94
94
|
Moves the mount of the live bridge, with no teardown.
|
|
95
95
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / WindowLike
|
|
2
2
|
|
|
3
3
|
# Interface: WindowLike
|
|
4
4
|
|
|
5
|
-
Defined in: [play-router/src/types.ts:
|
|
5
|
+
Defined in: [packages/play-router/src/types.ts:539](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L539)
|
|
6
6
|
|
|
7
7
|
The minimal window interface of an adapter that subscribes to a DOM event, for
|
|
8
8
|
example to `hashchange`. You can inject it for SSR and for a test: give a mock in
|
|
@@ -30,7 +30,7 @@ connectRouter({ actor, routeMap, window: mockWin });
|
|
|
30
30
|
addEventListener(type, listener): void;
|
|
31
31
|
```
|
|
32
32
|
|
|
33
|
-
Defined in: [play-router/src/types.ts:
|
|
33
|
+
Defined in: [packages/play-router/src/types.ts:540](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L540)
|
|
34
34
|
|
|
35
35
|
#### Parameters
|
|
36
36
|
|
|
@@ -51,7 +51,7 @@ Defined in: [play-router/src/types.ts:461](https://gitlab.com/xmachin-es/xmachin
|
|
|
51
51
|
removeEventListener(type, listener): void;
|
|
52
52
|
```
|
|
53
53
|
|
|
54
|
-
Defined in: [play-router/src/types.ts:
|
|
54
|
+
Defined in: [packages/play-router/src/types.ts:541](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L541)
|
|
55
55
|
|
|
56
56
|
#### Parameters
|
|
57
57
|
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / PlayRouterBridgeConstructor
|
|
2
|
+
|
|
3
|
+
# Type Alias: PlayRouterBridgeConstructor\<TRouter, TActor\>
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type PlayRouterBridgeConstructor<TRouter, TActor> = (
|
|
7
|
+
router,
|
|
8
|
+
actor,
|
|
9
|
+
routeMap,
|
|
10
|
+
options?,
|
|
11
|
+
) => RouterBridge;
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
Defined in: [packages/play-router/src/provider-lifecycle.ts:107](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/provider-lifecycle.ts#L107)
|
|
15
|
+
|
|
16
|
+
The constructor shape that a bridge class must satisfy for a provider factory: `(router, actor, routeMap, options?) → RouterBridge`.
|
|
17
|
+
|
|
18
|
+
`TActor` carries the actor type of the caller through to the constructor, so the spec
|
|
19
|
+
type of that actor reaches the bridge whole. A bridge that reads no spec binds nothing
|
|
20
|
+
and receives the default.
|
|
21
|
+
|
|
22
|
+
The return type is `RouterBridge`, the published contract of a bridge, so a
|
|
23
|
+
consumer bridge of its own keeps compiling. Every bridge on `RouterBridgeBase` also
|
|
24
|
+
satisfies `MountableRouterBridge`, and the provider finds that mount API at run
|
|
25
|
+
time: a bridge without it ignores `basePath`, exactly as it did before the option
|
|
26
|
+
existed.
|
|
27
|
+
|
|
28
|
+
## Type Parameters
|
|
29
|
+
|
|
30
|
+
| Type Parameter | Default type |
|
|
31
|
+
| -------------------------------------------------------------------- | ------------------------------------------------- |
|
|
32
|
+
| `TRouter` | - |
|
|
33
|
+
| `TActor` _extends_ [`RoutableActor`](../interfaces/RoutableActor.md) | [`RoutableActor`](../interfaces/RoutableActor.md) |
|
|
34
|
+
|
|
35
|
+
## Parameters
|
|
36
|
+
|
|
37
|
+
| Parameter | Type |
|
|
38
|
+
| ---------- | ----------------------------------------------------- |
|
|
39
|
+
| `router` | `TRouter` |
|
|
40
|
+
| `actor` | `TActor` |
|
|
41
|
+
| `routeMap` | [`RouteMap`](../classes/RouteMap.md) |
|
|
42
|
+
| `options?` | [`BasePathOptions`](../interfaces/BasePathOptions.md) |
|
|
43
|
+
|
|
44
|
+
## Returns
|
|
45
|
+
|
|
46
|
+
[`RouterBridge`](../interfaces/RouterBridge.md)
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / RouteData
|
|
2
|
+
|
|
3
|
+
# Type Alias: RouteData
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type RouteData = Record<string, unknown>;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [packages/play-router/src/types.ts:15](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L15)
|
|
10
|
+
|
|
11
|
+
The resolved extra data of a route. It reaches the consumer on the `data` field of a
|
|
12
|
+
`play.route` event.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / RouteDataResolver
|
|
2
|
+
|
|
3
|
+
# Type Alias: RouteDataResolver
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type RouteDataResolver = (args) => RouteData;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [packages/play-router/src/types.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L28)
|
|
10
|
+
|
|
11
|
+
The function form of [RouteObject.data](../interfaces/RouteObject.md#property-data).
|
|
12
|
+
|
|
13
|
+
The signature mirrors `WithDynamicParams` of XState: the resolver reads the context
|
|
14
|
+
of the machine and the event that asks for the route, and it returns the data.
|
|
15
|
+
|
|
16
|
+
The resolver reads every field of the event, and `event.data` among them: that field
|
|
17
|
+
carries what the SENDER of the event supplied, and the resolver decides how it
|
|
18
|
+
combines with what the state declares. The `data` that the resolver RETURNS goes to
|
|
19
|
+
`context.data`, and it does not go back onto the event.
|
|
20
|
+
|
|
21
|
+
## Parameters
|
|
22
|
+
|
|
23
|
+
| Parameter | Type |
|
|
24
|
+
| -------------- | ----------------------------------------------------------------------------------------- |
|
|
25
|
+
| `args` | \{ `context`: `unknown`; `event`: [`PlayRouteEvent`](../interfaces/PlayRouteEvent.md); \} |
|
|
26
|
+
| `args.context` | `unknown` |
|
|
27
|
+
| `args.event` | [`PlayRouteEvent`](../interfaces/PlayRouteEvent.md) |
|
|
28
|
+
|
|
29
|
+
## Returns
|
|
30
|
+
|
|
31
|
+
[`RouteData`](RouteData.md)
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / RouteMetadata
|
|
2
|
+
|
|
3
|
+
# Type Alias: RouteMetadata
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type RouteMetadata = string | RouteObject;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [packages/play-router/src/types.ts:151](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/types.ts#L151)
|
|
10
|
+
|
|
11
|
+
The route metadata of the `meta.route` field of a state machine.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / DISPOSE
|
|
2
2
|
|
|
3
3
|
# Variable: DISPOSE
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
const DISPOSE: DisposeKey;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play/src/disposable.ts:94](https://gitlab.com/xmachin-es/xmachines-js/-/blob/
|
|
9
|
+
Defined in: [packages/play/src/disposable.ts:94](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play/src/disposable.ts#L94)
|
|
10
10
|
|
|
11
11
|
The key that a release is stored under.
|
|
12
12
|
|
|
@@ -25,7 +25,7 @@ The type assertion states what the fallback IS. `Symbol.for` returns a plain `sy
|
|
|
25
25
|
TypeScript declares `Symbol.dispose` as a `unique symbol`, and no expression produces
|
|
26
26
|
a `unique symbol` other than the declaration itself.
|
|
27
27
|
|
|
28
|
-
This binding resolves ONE time, when the module evaluates. [asCleanup](
|
|
28
|
+
This binding resolves ONE time, when the module evaluates. [asCleanup](../../../play/index/functions/asCleanup.md) therefore
|
|
29
29
|
reads `Symbol.dispose` again at each call and stores the release under both keys, so a
|
|
30
30
|
polyfill that installs the well-known symbol after this module evaluates still finds
|
|
31
31
|
the release. A class or an object literal that writes `[DISPOSE]()` has no such second
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / NO\_BASE\_PATH
|
|
2
|
+
|
|
3
|
+
# Variable: NO\_BASE\_PATH
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
const NO_BASE_PATH: ResolvedBasePath;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [packages/play-url/src/base-path.ts:102](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-url/src/base-path.ts#L102)
|
|
10
|
+
|
|
11
|
+
The base path of a bridge that has no `basePath` option.
|
|
12
|
+
|
|
13
|
+
The object is FROZEN, and both levels of it: [resolveBasePath](../functions/resolveBasePath.md) returns this
|
|
14
|
+
exact instance for every bridge with no mount, and
|
|
15
|
+
`RouterBridgeBase.basePathParams` hands its `params` to the caller.
|
|
16
|
+
`Readonly<Record<string, string>>` is gone at run time, so without the freeze one
|
|
17
|
+
write in consumer code would leak that key into every other unmounted bridge in
|
|
18
|
+
the process.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / ROOT\_NODE\_ID
|
|
2
|
+
|
|
3
|
+
# Variable: ROOT\_NODE\_ID
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
const ROOT_NODE_ID: "__root__" = "__root__";
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [packages/play-router/src/build-tree.ts:14](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/build-tree.ts#L14)
|
|
10
|
+
|
|
11
|
+
The ID and the state ID of the synthetic root node of every `RouteTree`.
|
|
12
|
+
|
|
13
|
+
`buildRouteTree` always makes this node, and no state of a machine declares it. It
|
|
14
|
+
gives the tree one parent for each absolute route, and it holds `routable: false`.
|
|
15
|
+
|
|
16
|
+
A consumer that walks a tree must SKIP this node. `createRouteMapFromTree` skips it,
|
|
17
|
+
and `getRoutableRoutes` of `@xmachines/play-router/xstate` skips it. A walk that keeps
|
|
18
|
+
it maps the path `/` to a state that the machine does not hold.
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-router](../README.md) / xstate
|
|
2
|
+
|
|
3
|
+
# xstate
|
|
4
|
+
|
|
5
|
+
`@xmachines/play-router/xstate` - the routes of an XState machine
|
|
6
|
+
|
|
7
|
+
A route of XMachines is a fact about a STATE. This entry point reads that fact out of an
|
|
8
|
+
XState v5 machine: it walks the machine, collects each `meta.route`, builds the route
|
|
9
|
+
tree, and answers the questions that the tree can be asked — which routes are reachable,
|
|
10
|
+
which are navigable from a state, and which path maps to which state id.
|
|
11
|
+
|
|
12
|
+
The MAIN entry point holds what happens AFTERWARDS: the route map, the match of a
|
|
13
|
+
location, the bridge, and the provider lifecycle. It names no machine, and it reads this
|
|
14
|
+
module never. `xstate` is therefore an OPTIONAL peer of this package, and a bundler drops
|
|
15
|
+
`@statelyai/graph` for a consumer that imports this entry point nowhere.
|
|
16
|
+
|
|
17
|
+
This is the same shape as `@xmachines/play-xstate/routing` and
|
|
18
|
+
`@xmachines/play-xstate/view`: an optional capability behind its own entry point, with
|
|
19
|
+
its own dependency.
|
|
20
|
+
|
|
21
|
+
## Example
|
|
22
|
+
|
|
23
|
+
```typescript
|
|
24
|
+
import { createRouteMap } from "@xmachines/play-router/xstate";
|
|
25
|
+
import { connectRouter } from "@xmachines/play-dom-router";
|
|
26
|
+
|
|
27
|
+
const routeMap = createRouteMap(myMachine);
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## See
|
|
31
|
+
|
|
32
|
+
[Routing guide](../../../../guides/routing.md)
|
|
33
|
+
|
|
34
|
+
## Interfaces
|
|
35
|
+
|
|
36
|
+
- [MachineEdgeData](interfaces/MachineEdgeData.md)
|
|
37
|
+
- [MachineNodeData](interfaces/MachineNodeData.md)
|
|
38
|
+
|
|
39
|
+
## Type Aliases
|
|
40
|
+
|
|
41
|
+
- [MachineGraph](type-aliases/MachineGraph.md)
|
|
42
|
+
|
|
43
|
+
## Functions
|
|
44
|
+
|
|
45
|
+
- [createRouteMap](functions/createRouteMap.md)
|
|
46
|
+
- [extractMachineRoutes](functions/extractMachineRoutes.md)
|
|
47
|
+
- [getNavigableRoutes](functions/getNavigableRoutes.md)
|
|
48
|
+
- [getRoutableRoutes](functions/getRoutableRoutes.md)
|
|
49
|
+
- [getRouteMappings](functions/getRouteMappings.md)
|
|
50
|
+
- [getTransitionReachableRoutes](functions/getTransitionReachableRoutes.md)
|
|
51
|
+
- [isRouteReachable](functions/isRouteReachable.md)
|
|
52
|
+
- [machineToGraph](functions/machineToGraph.md)
|
|
53
|
+
- [routeExists](functions/routeExists.md)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / createRouteMap
|
|
2
2
|
|
|
3
3
|
# Function: createRouteMap()
|
|
4
4
|
|
|
@@ -6,12 +6,14 @@
|
|
|
6
6
|
function createRouteMap(machine, options?): RouteMap;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-router/src/create-route-map.ts:
|
|
9
|
+
Defined in: [packages/play-router/src/xstate/create-route-map.ts:32](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/create-route-map.ts#L32)
|
|
10
10
|
|
|
11
11
|
Creates a `RouteMap` from an XState state machine.
|
|
12
12
|
|
|
13
13
|
The function reads every state with a route, which means each state with a
|
|
14
|
-
`meta.route` field. It
|
|
14
|
+
`meta.route` field. It keeps the routable states alone, and it drops the synthetic
|
|
15
|
+
root of the tree. `createRouteMapFromTree` of the main entry point drops the same
|
|
16
|
+
node, and the two functions therefore answer the same map for the same machine. It then builds the lookup structure between a path and a
|
|
15
17
|
stateId, for both directions. A subclass of `RouterBridgeBase` uses the map: it
|
|
16
18
|
converts each change of the browser URL into a `play.route` actor event, and each
|
|
17
19
|
actor route into a URL.
|
|
@@ -21,18 +23,18 @@ actor route into a URL.
|
|
|
21
23
|
| Parameter | Type | Description |
|
|
22
24
|
| ---------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
|
|
23
25
|
| `machine` | [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | The XState v5 state machine, with a `meta.route` annotation on each state with a route. |
|
|
24
|
-
| `options?` | [`RouteMapOptions`](
|
|
26
|
+
| `options?` | [`RouteMapOptions`](../../index/interfaces/RouteMapOptions.md) | The optional configuration. Give `{ cacheSize }` to change the default size of the LRU cache of the parameterized path lookups. |
|
|
25
27
|
|
|
26
28
|
## Returns
|
|
27
29
|
|
|
28
|
-
[`RouteMap`](
|
|
30
|
+
[`RouteMap`](../../index/classes/RouteMap.md)
|
|
29
31
|
|
|
30
32
|
A `RouteMap` for each adapter on `RouterBridgeBase`.
|
|
31
33
|
|
|
32
34
|
## Example
|
|
33
35
|
|
|
34
36
|
```typescript
|
|
35
|
-
import { createRouteMap } from "@xmachines/play-router";
|
|
37
|
+
import { createRouteMap } from "@xmachines/play-router/xstate";
|
|
36
38
|
import { connectRouter } from "@xmachines/play-dom-router";
|
|
37
39
|
|
|
38
40
|
const routeMap = createRouteMap(myMachine);
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / extractMachineRoutes
|
|
2
2
|
|
|
3
3
|
# Function: extractMachineRoutes()
|
|
4
4
|
|
|
5
5
|
```ts
|
|
6
|
-
function extractMachineRoutes(machine): RouteTree
|
|
6
|
+
function extractMachineRoutes(machine): RouteTree<MachineGraph>;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-router/src/extract-routes.ts:
|
|
9
|
+
Defined in: [packages/play-router/src/xstate/extract-routes.ts:98](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/extract-routes.ts#L98)
|
|
10
10
|
|
|
11
11
|
Reads the complete route tree from the graph of a state machine
|
|
12
12
|
|
|
@@ -24,6 +24,6 @@ needs the transitions.
|
|
|
24
24
|
|
|
25
25
|
## Returns
|
|
26
26
|
|
|
27
|
-
[`RouteTree`](
|
|
27
|
+
[`RouteTree`](../../index/interfaces/RouteTree.md)\<[`MachineGraph`](../type-aliases/MachineGraph.md)\>
|
|
28
28
|
|
|
29
29
|
The route tree, with its root, its byStateId map, its byPath map, and its graph
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / getNavigableRoutes
|
|
2
|
+
|
|
3
|
+
# Function: getNavigableRoutes()
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
function getNavigableRoutes(tree, stateId): RouteNode[];
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [packages/play-router/src/xstate/query.ts:56](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/query.ts#L56)
|
|
10
|
+
|
|
11
|
+
Returns every route of a navigation from the given state
|
|
12
|
+
|
|
13
|
+
The function returns the child routes of the state. A later version also returns
|
|
14
|
+
the sibling routes of a transition.
|
|
15
|
+
|
|
16
|
+
## Parameters
|
|
17
|
+
|
|
18
|
+
| Parameter | Type | Description |
|
|
19
|
+
| --------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------- |
|
|
20
|
+
| `tree` | [`RouteTree`](../../index/interfaces/RouteTree.md)\<[`MachineGraph`](../type-aliases/MachineGraph.md)\> | The route tree, from extractMachineRoutes() |
|
|
21
|
+
| `stateId` | `string` | The ID of the current state |
|
|
22
|
+
|
|
23
|
+
## Returns
|
|
24
|
+
|
|
25
|
+
[`RouteNode`](../../index/interfaces/RouteNode.md)[]
|
|
26
|
+
|
|
27
|
+
The array of the route nodes that the state can reach
|
|
28
|
+
|
|
29
|
+
## Example
|
|
30
|
+
|
|
31
|
+
```typescript
|
|
32
|
+
const tree = extractMachineRoutes(machine);
|
|
33
|
+
const routes = getNavigableRoutes(tree, "dashboard");
|
|
34
|
+
// [{ id: 'overview', path: '/overview', ... }, { id: 'settings', ... }]
|
|
35
|
+
```
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / getRoutableRoutes
|
|
2
2
|
|
|
3
3
|
# Function: getRoutableRoutes()
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function getRoutableRoutes(tree): RouteNode[];
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-router/src/query.ts:
|
|
9
|
+
Defined in: [packages/play-router/src/xstate/query.ts:121](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/query.ts#L121)
|
|
10
10
|
|
|
11
11
|
Returns every route of the tree that has a route, in one flat array
|
|
12
12
|
|
|
@@ -16,13 +16,13 @@ configuration in a framework adapter dynamically.
|
|
|
16
16
|
|
|
17
17
|
## Parameters
|
|
18
18
|
|
|
19
|
-
| Parameter | Type
|
|
20
|
-
| --------- |
|
|
21
|
-
| `tree` | [`RouteTree`](
|
|
19
|
+
| Parameter | Type | Description |
|
|
20
|
+
| --------- | -------------------------------------------------- | ------------------------------------------- |
|
|
21
|
+
| `tree` | [`RouteTree`](../../index/interfaces/RouteTree.md) | The route tree, from extractMachineRoutes() |
|
|
22
22
|
|
|
23
23
|
## Returns
|
|
24
24
|
|
|
25
|
-
[`RouteNode`](
|
|
25
|
+
[`RouteNode`](../../index/interfaces/RouteNode.md)[]
|
|
26
26
|
|
|
27
27
|
The array of the route nodes with a route, with their path and their stateId
|
|
28
28
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / getRouteMappings
|
|
2
2
|
|
|
3
3
|
# Function: getRouteMappings()
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function getRouteMappings(tree, options?): RouteMapping[];
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-router/src/query.ts:
|
|
9
|
+
Defined in: [packages/play-router/src/xstate/query.ts:258](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/query.ts#L258)
|
|
10
10
|
|
|
11
11
|
Returns the `{ stateId, path }` entries that a host router needs, so that it can
|
|
12
12
|
register the routes of a machine under a base path, and remove them again later.
|
|
@@ -30,14 +30,14 @@ those are the params that the route of the host must match.
|
|
|
30
30
|
|
|
31
31
|
## Parameters
|
|
32
32
|
|
|
33
|
-
| Parameter | Type
|
|
34
|
-
| ---------- |
|
|
35
|
-
| `tree` | [`RouteTree`](
|
|
36
|
-
| `options?` | [`BasePathOptions`](
|
|
33
|
+
| Parameter | Type | Description |
|
|
34
|
+
| ---------- | -------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
35
|
+
| `tree` | [`RouteTree`](../../index/interfaces/RouteTree.md) | The route tree of extractMachineRoutes() |
|
|
36
|
+
| `options?` | [`BasePathOptions`](../../index/interfaces/BasePathOptions.md) | The optional `{ basePath, basePathParams }`, the same option as the bridge takes. Each `stateId` comes from the route tree, so it carries NO `#` prefix. A host that keys its route table on the target of a `play.route` event adds the `#` itself, because the event always carries the prefixed form. |
|
|
37
37
|
|
|
38
38
|
## Returns
|
|
39
39
|
|
|
40
|
-
[`RouteMapping`](
|
|
40
|
+
[`RouteMapping`](../../index/interfaces/RouteMapping.md)[]
|
|
41
41
|
|
|
42
42
|
One entry for each state with a route, in the order of the route tree.
|
|
43
43
|
|
package/api/@xmachines/play-router/{functions → xstate/functions}/getTransitionReachableRoutes.md
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / getTransitionReachableRoutes
|
|
2
2
|
|
|
3
3
|
# Function: getTransitionReachableRoutes()
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function getTransitionReachableRoutes(graph, stateId): string[];
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [play-router/src/query.ts:
|
|
9
|
+
Defined in: [packages/play-router/src/xstate/query.ts:173](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/query.ts#L173)
|
|
10
10
|
|
|
11
11
|
Returns the routes that a transition from the current state can reach
|
|
12
12
|
|