@xmachines/docs 2.2.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 +75 -97
- 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/index/functions/asCleanup.md +78 -0
- 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/index/type-aliases/Cleanup.md +38 -0
- package/api/@xmachines/play/index/type-aliases/DisposeKey.md +32 -0
- package/api/@xmachines/play/{type-aliases → index/type-aliases}/PlayEvent.md +4 -4
- package/api/@xmachines/play/index/variables/DISPOSE.md +34 -0
- package/api/@xmachines/play-actor/README.md +78 -222
- 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 +99 -43
- 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 +6 -6
- package/api/@xmachines/play-dom/functions/createRenderer.md +3 -3
- package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +17 -11
- package/api/@xmachines/play-dom/interfaces/MountOptions.md +5 -4
- package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +14 -12
- package/api/@xmachines/play-dom/type-aliases/Cleanup.md +38 -0
- package/api/@xmachines/play-dom/type-aliases/MountFn.md +30 -8
- package/api/@xmachines/play-dom-router/README.md +99 -73
- 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 +7 -1
- package/api/@xmachines/play-dom-router/functions/createRouter.md +12 -6
- package/api/@xmachines/play-dom-router/interfaces/BasePathOptions.md +5 -5
- package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +73 -19
- package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +16 -16
- 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 +36 -7
- package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +40 -6
- package/api/@xmachines/play-dom-router/type-aliases/Cleanup.md +38 -0
- package/api/@xmachines/play-dom-router/variables/DISPOSE.md +34 -0
- package/api/@xmachines/play-react/README.md +18 -40
- package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +50 -11
- 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 +8 -6
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +6 -5
- 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 +108 -189
- 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 +38 -9
- 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-router/index/variables/DISPOSE.md +34 -0
- 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-dom-router → play-router/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 +5 -25
- package/api/@xmachines/play-signals/functions/watchSignal.md +27 -4
- 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 +38 -0
- package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +1 -1
- package/api/@xmachines/play-solid/README.md +36 -35
- package/api/@xmachines/play-solid/functions/useActor.md +1 -1
- package/api/@xmachines/play-solid/functions/usePlayView.md +14 -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 +16 -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 +13 -28
- 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 +7 -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 +36 -7
- 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 +36 -7
- 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-view/index/functions/createFailureLatch.md +20 -0
- package/api/@xmachines/play-view/index/functions/createReportGuard.md +26 -0
- 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-view/index/functions/sameViewInputs.md +25 -0
- 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-view/index/interfaces/FailureLatch.md +60 -0
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/PlaySpec.md +8 -8
- package/api/@xmachines/play-view/index/interfaces/ReportGuard.md +92 -0
- package/api/@xmachines/play-view/index/interfaces/ReportGuardMessages.md +18 -0
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ResolveViewStoreOptions.md +5 -5
- package/api/@xmachines/play-view/index/interfaces/ViewInputs.md +19 -0
- 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 +46 -42
- 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 +6 -1
- package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +13 -8
- package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +15 -10
- 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 +163 -98
- 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-xstate/index/variables/DISPOSE.md +34 -0
- 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 +97 -65
- package/contributing/configuration.md +142 -41
- package/contributing/deployment.md +30 -28
- package/contributing/development.md +94 -31
- package/contributing/testing.md +90 -31
- 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 +47 -44
- package/guides/inspector.md +4 -4
- package/guides/routing.md +245 -0
- package/guides/signals.md +43 -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-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/createRouteMap.md +0 -40
- 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 -34
- 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 -532
- 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,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.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [index](../README.md) / DISPOSE
|
|
2
|
+
|
|
3
|
+
# Variable: DISPOSE
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
const DISPOSE: DisposeKey;
|
|
7
|
+
```
|
|
8
|
+
|
|
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
|
+
|
|
11
|
+
The key that a release is stored under.
|
|
12
|
+
|
|
13
|
+
`Symbol.dispose` where the runtime has it, and `Symbol.for("Symbol.dispose")` where it
|
|
14
|
+
does not. This is not a convenience — it is the difference between a `using` that
|
|
15
|
+
releases and one that raises.
|
|
16
|
+
|
|
17
|
+
A bundler that downlevels `using` for a target below Chrome 134 emits a helper that
|
|
18
|
+
reads `object[Symbol.dispose || Symbol.for("Symbol.dispose")]`. A release stored under
|
|
19
|
+
a bare `[Symbol.dispose]` lands on the string key `"undefined"` in that runtime,
|
|
20
|
+
because the well-known symbol is absent and the computed key takes the value
|
|
21
|
+
`undefined`. The helper then looks up the registered symbol, finds nothing, and throws
|
|
22
|
+
`TypeError: Object is not disposable`. Storing under the same fallback closes the gap.
|
|
23
|
+
|
|
24
|
+
The type assertion states what the fallback IS. `Symbol.for` returns a plain `symbol`,
|
|
25
|
+
TypeScript declares `Symbol.dispose` as a `unique symbol`, and no expression produces
|
|
26
|
+
a `unique symbol` other than the declaration itself.
|
|
27
|
+
|
|
28
|
+
This binding resolves ONE time, when the module evaluates. [asCleanup](../../../play/index/functions/asCleanup.md) therefore
|
|
29
|
+
reads `Symbol.dispose` again at each call and stores the release under both keys, so a
|
|
30
|
+
polyfill that installs the well-known symbol after this module evaluates still finds
|
|
31
|
+
the release. A class or an object literal that writes `[DISPOSE]()` has no such second
|
|
32
|
+
chance: it carries the key that existed when it was defined. Install an Explicit
|
|
33
|
+
Resource Management polyfill before the first import of `@xmachines/play`, which is the
|
|
34
|
+
ordinary contract of a polyfill.
|
|
@@ -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: [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: [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: [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: [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
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / isRouteReachable
|
|
2
2
|
|
|
3
3
|
# Function: isRouteReachable()
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function isRouteReachable(graph, fromStateId, toStateId): boolean;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [query.ts:
|
|
9
|
+
Defined in: [packages/play-router/src/xstate/query.ts:201](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/query.ts#L201)
|
|
10
10
|
|
|
11
11
|
Tells you if a transition from the current state can reach a route
|
|
12
12
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / machineToGraph
|
|
2
2
|
|
|
3
3
|
# Function: machineToGraph()
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function machineToGraph(machine): MachineGraph;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [machine-to-graph.ts:73](https://gitlab.com/xmachin-es/xmachines-js/-/blob/
|
|
9
|
+
Defined in: [packages/play-router/src/xstate/machine-to-graph.ts:73](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/machine-to-graph.ts#L73)
|
|
10
10
|
|
|
11
11
|
## Parameters
|
|
12
12
|
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / routeExists
|
|
2
|
+
|
|
3
|
+
# Function: routeExists()
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
function routeExists(tree, path): boolean;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [packages/play-router/src/xstate/query.ts:143](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/query.ts#L143)
|
|
10
|
+
|
|
11
|
+
Tells you if a route path is in the tree
|
|
12
|
+
|
|
13
|
+
The function tests if the path has a state with a `meta.route` field.
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
| Parameter | Type | Description |
|
|
18
|
+
| --------- | -------------------------------------------------- | ---------------------------------------------------------- |
|
|
19
|
+
| `tree` | [`RouteTree`](../../index/interfaces/RouteTree.md) | The route tree, from extractMachineRoutes() |
|
|
20
|
+
| `path` | `string` | The complete route path, for example '/dashboard/settings' |
|
|
21
|
+
|
|
22
|
+
## Returns
|
|
23
|
+
|
|
24
|
+
`boolean`
|
|
25
|
+
|
|
26
|
+
true when the tree holds the path. In every other case, false
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / MachineEdgeData
|
|
2
|
+
|
|
3
|
+
# Interface: MachineEdgeData
|
|
4
|
+
|
|
5
|
+
Defined in: [packages/play-router/src/xstate/machine-types.ts:27](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/machine-types.ts#L27)
|
|
6
|
+
|
|
7
|
+
The data on each edge of the graph that represents the machine.
|
|
8
|
+
It holds the event of the transition and the information of its guard.
|
|
9
|
+
|
|
10
|
+
## Properties
|
|
11
|
+
|
|
12
|
+
| Property | Type | Description | Defined in |
|
|
13
|
+
| -------------------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
14
|
+
| <a id="property-eventtype"></a> `eventType` | `string` | The event type that starts this transition | [packages/play-router/src/xstate/machine-types.ts:29](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/machine-types.ts#L29) |
|
|
15
|
+
| <a id="property-guardtype"></a> `guardType?` | `string` | The guard as a string, when a guard is present XState 5 holds the guard of a transition as a value that `String()` describes, and `machineToGraph` writes that string here. The field carried a "removed in the next major" notice before, and it keeps no such notice now. XState 6 populates it never, so it leaves with the migration to XState 6 and not before: a removal while XState 5 fills it deletes a field that works, and it gives a consumer nothing in its place. | [packages/play-router/src/xstate/machine-types.ts:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/machine-types.ts#L41) |
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / MachineNodeData
|
|
2
|
+
|
|
3
|
+
# Interface: MachineNodeData
|
|
4
|
+
|
|
5
|
+
Defined in: [packages/play-router/src/xstate/machine-types.ts:12](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/machine-types.ts#L12)
|
|
6
|
+
|
|
7
|
+
The data on each node of the graph that represents the machine.
|
|
8
|
+
It holds the state metadata that the route extraction and the queries need.
|
|
9
|
+
|
|
10
|
+
## Properties
|
|
11
|
+
|
|
12
|
+
| Property | Type | Description | Defined in |
|
|
13
|
+
| --------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
14
|
+
| <a id="property-meta"></a> `meta?` | `Record`\<`string`, `unknown`\> | The original meta object of the state | [packages/play-router/src/xstate/machine-types.ts:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/machine-types.ts#L18) |
|
|
15
|
+
| <a id="property-route"></a> `route?` | `string` | The route path of meta.route, in its string form | [packages/play-router/src/xstate/machine-types.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/machine-types.ts#L20) |
|
|
16
|
+
| <a id="property-stateid"></a> `stateId` | `string` | The XState state ID, for example "test.dashboard.overview" | [packages/play-router/src/xstate/machine-types.ts:14](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/machine-types.ts#L14) |
|
|
17
|
+
| <a id="property-type"></a> `type` | `"atomic"` \| `"compound"` \| `"parallel"` \| `"final"` \| `"history"` | The state type of XState | [packages/play-router/src/xstate/machine-types.ts:16](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/machine-types.ts#L16) |
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[API](
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-router](../../README.md) / [xstate](../README.md) / MachineGraph
|
|
2
2
|
|
|
3
3
|
# Type Alias: MachineGraph
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
type MachineGraph = Graph<MachineNodeData, MachineEdgeData>;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [machine-to-graph.ts:19](https://gitlab.com/xmachin-es/xmachines-js/-/blob/
|
|
9
|
+
Defined in: [packages/play-router/src/xstate/machine-to-graph.ts:19](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-router/src/xstate/machine-to-graph.ts#L19)
|
|
10
10
|
|
|
11
11
|
The typed Graph of @statelyai/graph that represents a state machine.
|
|
12
12
|
It gives you the queries of the hierarchy, the algorithms of a walk, and the tests
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
TC39 Signals polyfill for XMachines. It gives the Play Architecture fine-grained reactive state primitives. The primitives propagate state without a glitch and without a subscription.
|
|
6
6
|
|
|
7
|
-
[](https://opensource.org/licenses/MIT) [](https://opensource.org/licenses/MIT) [](https://www.npmjs.com/package/@xmachines/play-signals)
|
|
8
8
|
|
|
9
9
|
## Installation
|
|
10
10
|
|
|
@@ -117,39 +117,18 @@ person.set({ name: "Alice", age: 30 });
|
|
|
117
117
|
| Export | Kind | Description |
|
|
118
118
|
| ------------------------------ | --------- | ------------------------------------------------------------------------------------------------------ |
|
|
119
119
|
| `Signal` | namespace | Full TC39 Signals namespace (`State`, `Computed`, `subtle.Watcher`) re-exported from `signal-polyfill` |
|
|
120
|
-
| `watchSignal(signal, onValue)` | function | The memory-safe subscription helper. It returns a
|
|
120
|
+
| `watchSignal(signal, onValue)` | function | The memory-safe subscription helper. It returns a `Cleanup` |
|
|
121
121
|
| `SignalState<T>` | interface | Shape of `Signal.State<T>` (`.get()`, `.set()`) |
|
|
122
122
|
| `SignalComputed<T>` | interface | Shape of `Signal.Computed<T>` (`.get()`) |
|
|
123
123
|
| `SignalWatcher` | interface | Shape of `Signal.subtle.Watcher` (`.watch()`, `.unwatch()`, `.getPending()`) |
|
|
124
124
|
| `SignalOptions<T>` | interface | The options object for the `Signal.State` constructor (`equals?`) |
|
|
125
125
|
| `ComputedOptions<T>` | interface | The options object for the `Signal.Computed` constructor (`equals?`) |
|
|
126
126
|
| `WatcherNotify` | type | The callback signature of the `Signal.subtle.Watcher` notify function |
|
|
127
|
-
|
|
128
|
-
## Testing
|
|
129
|
-
|
|
130
|
-
Run tests for this package in isolation:
|
|
131
|
-
|
|
132
|
-
```bash
|
|
133
|
-
# From this package directory
|
|
134
|
-
pnpm test
|
|
135
|
-
|
|
136
|
-
# Watch mode
|
|
137
|
-
pnpm test -- --watch
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
From the monorepo root:
|
|
141
|
-
|
|
142
|
-
```bash
|
|
143
|
-
# Run tests for this package
|
|
144
|
-
pnpm --filter @xmachines/play-signals test
|
|
145
|
-
|
|
146
|
-
# Run with coverage (lines ≥ 90 %, functions ≥ 90 %, branches ≥ 85 %, statements ≥ 90 %)
|
|
147
|
-
pnpm run test:coverage
|
|
148
|
-
```
|
|
127
|
+
| `Cleanup` | type | The release that `watchSignal` returns, re-exported from `@xmachines/play` |
|
|
149
128
|
|
|
150
129
|
## Requirements
|
|
151
130
|
|
|
152
|
-
- **Node.js** `>=
|
|
131
|
+
- **Node.js** `>= 24.0.0`
|
|
153
132
|
- **TypeScript** `5.7+` (for a consumer that uses TypeScript)
|
|
154
133
|
|
|
155
134
|
## License
|
|
@@ -222,6 +201,7 @@ the code from a change of the Stage 1 API.
|
|
|
222
201
|
|
|
223
202
|
## Type Aliases
|
|
224
203
|
|
|
204
|
+
- [Cleanup](type-aliases/Cleanup.md)
|
|
225
205
|
- [WatcherNotify](type-aliases/WatcherNotify.md)
|
|
226
206
|
|
|
227
207
|
## Functions
|