@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
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
# @xmachines/play-vue-router
|
|
4
4
|
|
|
5
|
-
Vue Router 4
|
|
5
|
+
Vue Router 4/5 adapter for the XMachines Universal Player Architecture. It keeps Vue Router and an XMachines state machine in step, in both directions, with the reactive primitives of Vue.
|
|
6
6
|
|
|
7
|
-
[](https://opensource.org/licenses/MIT) [](https://opensource.org/licenses/MIT) [](https://www.npmjs.com/package/@xmachines/play-vue-router)
|
|
8
8
|
|
|
9
9
|
## Installation
|
|
10
10
|
|
|
11
11
|
```bash
|
|
12
|
-
pnpm add @xmachines/play-vue-router
|
|
12
|
+
pnpm add @xmachines/play-vue-router @xmachines/play-router
|
|
13
13
|
```
|
|
14
14
|
|
|
15
15
|
**Peer dependencies:**
|
|
@@ -17,7 +17,6 @@ pnpm add @xmachines/play-vue-router
|
|
|
17
17
|
- `vue` ^3.5.0 — Vue runtime
|
|
18
18
|
- `@vue/reactivity` ^3.5.0 — Vue reactivity primitives
|
|
19
19
|
- `vue-router` ^4.0.0 || ^5.0.0 — Vue Router library
|
|
20
|
-
- `xstate` ^5.31.0 — XState v5 state machine runtime
|
|
21
20
|
|
|
22
21
|
## Usage
|
|
23
22
|
|
|
@@ -29,7 +28,8 @@ pnpm add @xmachines/play-vue-router
|
|
|
29
28
|
import { createRouter, createWebHistory } from "vue-router";
|
|
30
29
|
import { h } from "vue";
|
|
31
30
|
import { VueRouterBridge, RouteMap } from "@xmachines/play-vue-router";
|
|
32
|
-
import { definePlayer } from "@xmachines/play-xstate";
|
|
31
|
+
import { definePlayer, compose, PlayerActor } from "@xmachines/play-xstate";
|
|
32
|
+
import { withRouting } from "@xmachines/play-xstate/routing";
|
|
33
33
|
import { machine } from "./machine.js"; // your routable machine (states carry meta.route)
|
|
34
34
|
|
|
35
35
|
// 1. Define routes — a single catch-all with a stub host component;
|
|
@@ -48,16 +48,17 @@ const routeMap = new RouteMap([
|
|
|
48
48
|
{ stateId: "settings", path: "/settings/:section?" },
|
|
49
49
|
]);
|
|
50
50
|
|
|
51
|
-
// 3. Start the actor, then the bridge after the router is ready
|
|
52
|
-
|
|
51
|
+
// 3. Start the actor, then the bridge after the router is ready.
|
|
52
|
+
// The bridge needs the routing capability.
|
|
53
|
+
const actor = definePlayer({ machine, actor: compose(PlayerActor, withRouting) })();
|
|
53
54
|
actor.start();
|
|
54
55
|
|
|
55
56
|
await router.isReady();
|
|
56
57
|
const bridge = new VueRouterBridge(router, actor, routeMap);
|
|
57
58
|
bridge.connect();
|
|
58
59
|
|
|
59
|
-
// 4.
|
|
60
|
-
bridge.
|
|
60
|
+
// 4. Disconnect when tearing down (e.g. onUnmounted)
|
|
61
|
+
bridge.disconnect();
|
|
61
62
|
```
|
|
62
63
|
|
|
63
64
|
### PlayRouterProvider — Vue component wrapper
|
|
@@ -69,7 +70,8 @@ bridge.dispose();
|
|
|
69
70
|
import { h, markRaw } from "vue";
|
|
70
71
|
import { useRouter } from "vue-router";
|
|
71
72
|
import { PlayRouterProvider, RouteMap } from "@xmachines/play-vue-router";
|
|
72
|
-
import { definePlayer } from "@xmachines/play-xstate";
|
|
73
|
+
import { definePlayer, compose, PlayerActor } from "@xmachines/play-xstate";
|
|
74
|
+
import { withRouting } from "@xmachines/play-xstate/routing";
|
|
73
75
|
import { machine } from "./machine.js"; // your routable machine (states carry meta.route)
|
|
74
76
|
// AppShell: your root component — a real app renders PlayUIProvider + PlayRenderer
|
|
75
77
|
// from @xmachines/play-vue (see the workspace-only @xmachines/play-vue-demo Shell)
|
|
@@ -83,7 +85,8 @@ const routeMap = new RouteMap([
|
|
|
83
85
|
|
|
84
86
|
// markRaw prevents Vue from wrapping the actor in a reactive proxy,
|
|
85
87
|
// which would break TC39 Signal receivers.
|
|
86
|
-
|
|
88
|
+
// PlayRouterProvider needs the routing capability
|
|
89
|
+
const actor = markRaw(definePlayer({ machine, actor: compose(PlayerActor, withRouting) })());
|
|
87
90
|
actor.start();
|
|
88
91
|
</script>
|
|
89
92
|
|
|
@@ -127,7 +130,6 @@ class VueRouterBridge {
|
|
|
127
130
|
constructor(vueRouter: Router, actor: RoutableActor, routeMap: RouteMap);
|
|
128
131
|
connect(): void;
|
|
129
132
|
disconnect(): void;
|
|
130
|
-
dispose(): void; // alias for disconnect()
|
|
131
133
|
}
|
|
132
134
|
```
|
|
133
135
|
|
|
@@ -143,34 +145,33 @@ class VueRouterBridge {
|
|
|
143
145
|
|
|
144
146
|
- `connect()` — starts the work in both directions. It first sets the actor state from the current path of the router, which supports a cold load and a direct URL. It uses `watch(router.currentRoute, …)` from `@vue/reactivity`, not from `@vue/runtime-core`. Therefore a watcher error goes to the caller, and the global error handler of Vue does not hide it.
|
|
145
147
|
- `disconnect()` — stops every watcher and stops the Vue effect scope.
|
|
146
|
-
- `dispose()` — the alias of `disconnect()`. Use it in `onUnmounted(() => bridge.dispose())`.
|
|
147
148
|
|
|
148
149
|
### `PlayRouterProvider`
|
|
149
150
|
|
|
150
151
|
This Vue component wraps `VueRouterBridge` in the component lifecycle hooks.
|
|
151
152
|
|
|
152
153
|
```typescript
|
|
153
|
-
import type {
|
|
154
|
+
import type { RoutableActor } from "@xmachines/play-vue-router";
|
|
154
155
|
|
|
155
156
|
defineComponent({
|
|
156
157
|
name: "PlayRouterProvider",
|
|
157
158
|
props: {
|
|
158
|
-
actor: { type: Object as PropType<
|
|
159
|
+
actor: { type: Object as PropType<RoutableActor>, required: true },
|
|
159
160
|
routeMap: { type: Object as PropType<RouteMap>, required: true },
|
|
160
161
|
router: { type: Object as PropType<Router>, required: true },
|
|
161
162
|
renderer: {
|
|
162
|
-
type: Function as PropType<(actor:
|
|
163
|
+
type: Function as PropType<(actor: RoutableActor, router: Router) => VNodeChild>,
|
|
163
164
|
required: true,
|
|
164
165
|
},
|
|
165
166
|
},
|
|
166
167
|
});
|
|
167
168
|
```
|
|
168
169
|
|
|
169
|
-
The `actor` prop requires a `
|
|
170
|
+
The `actor` prop requires a `RoutableActor`, which is `currentRoute`, `initialRoute` and `send`. It names the view NOWHERE: routing implies no rendering. The `renderer` callback receives the concrete actor type of the caller, so a callback that reads `currentView` still reports the exact spec of that actor.
|
|
170
171
|
|
|
171
|
-
### `RouteMap`
|
|
172
|
+
### `RouteMap`
|
|
172
173
|
|
|
173
|
-
`RouteMap` comes from `@xmachines/play-router`. It is the bidirectional map between the state IDs and the paths, and the bridge uses it.
|
|
174
|
+
`RouteMap` comes from `@xmachines/play-router`. It is the bidirectional map between the state IDs and the paths, and the bridge uses it.
|
|
174
175
|
|
|
175
176
|
```typescript
|
|
176
177
|
import { RouteMap } from "@xmachines/play-vue-router";
|
|
@@ -184,29 +185,23 @@ const routeMap = new RouteMap([
|
|
|
184
185
|
```
|
|
185
186
|
|
|
186
187
|
```typescript
|
|
187
|
-
import { createRouteMap } from "@xmachines/play-
|
|
188
|
-
|
|
188
|
+
import { createRouteMap } from "@xmachines/play-router/xstate";
|
|
189
189
|
// Or derive from an XState machine
|
|
190
190
|
const routeMap = createRouteMap(machine); // machine: your routable machine (states carry meta.route)
|
|
191
191
|
```
|
|
192
192
|
|
|
193
193
|
### Exported error classes (`@xmachines/play-vue-router/errors`)
|
|
194
194
|
|
|
195
|
-
Every runtime error extends `PlayError` from `@xmachines/play`. The `./errors` subpath exports them:
|
|
195
|
+
Every runtime error extends `PlayError` from `@xmachines/play/errors`. The `./errors` subpath exports them:
|
|
196
196
|
|
|
197
197
|
```typescript
|
|
198
|
-
import {
|
|
199
|
-
VueRouterCorrectionError,
|
|
200
|
-
VueRouterNavigationError,
|
|
201
|
-
VueRouterSendError,
|
|
202
|
-
} from "@xmachines/play-vue-router/errors";
|
|
198
|
+
import { VueRouterNavigationError, VueRouterSendError } from "@xmachines/play-vue-router/errors";
|
|
203
199
|
```
|
|
204
200
|
|
|
205
|
-
| Class | Error code
|
|
206
|
-
| -------------------------- |
|
|
207
|
-
| `
|
|
208
|
-
| `
|
|
209
|
-
| `VueRouterSendError` | `PLAY_VUE_ROUTER_SEND_FAILED` | The Vue Router watcher callback cannot send `play.route` to the actor |
|
|
201
|
+
| Class | Error code | When thrown |
|
|
202
|
+
| -------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------ |
|
|
203
|
+
| `VueRouterNavigationError` | `PLAY_VUE_ROUTER_NAV_FAILED` | `router.push()` refused the navigation: a navigation guard stopped it, or a redirect replaced it |
|
|
204
|
+
| `VueRouterSendError` | `PLAY_VUE_ROUTER_SEND_FAILED` | The Vue Router watcher callback cannot send `play.route` to the actor |
|
|
210
205
|
|
|
211
206
|
Each class holds the original Vue Router error in its `cause` property.
|
|
212
207
|
|
|
@@ -221,12 +216,11 @@ export type {
|
|
|
221
216
|
RoutableActor,
|
|
222
217
|
} from "@xmachines/play-router";
|
|
223
218
|
|
|
224
|
-
// Provider-level (routing
|
|
225
|
-
export type {
|
|
226
|
-
// RoutableActor is also exported as a deprecated alias for PlayActor
|
|
219
|
+
// Provider-level (routing alone) — RoutableActor re-exported from @xmachines/play-router:
|
|
220
|
+
export type { RoutableActor } from "@xmachines/play-vue-router";
|
|
227
221
|
```
|
|
228
222
|
|
|
229
|
-
`
|
|
223
|
+
`RoutableActor` is `currentRoute`, `initialRoute` and `send`, and it names no view and no engine. `PlayRouterProvider` constrains its actor to this shape, and a constraint keeps the concrete type whole — so a `renderer` callback that reads `currentView` still reports the exact spec of that actor.
|
|
230
224
|
|
|
231
225
|
## Architecture
|
|
232
226
|
|
|
@@ -254,46 +248,9 @@ The bridge sets `lastSyncedPath` before every `router.push()` call. The Vue watc
|
|
|
254
248
|
|
|
255
249
|
### Vue effect scope
|
|
256
250
|
|
|
257
|
-
The `watch` watcher runs inside its own `effectScope()`. `disconnect()`
|
|
258
|
-
|
|
259
|
-
## Testing
|
|
260
|
-
|
|
261
|
-
```bash
|
|
262
|
-
# Run all tests for this package
|
|
263
|
-
pnpm --filter @xmachines/play-vue-router test
|
|
264
|
-
|
|
265
|
-
# Watch mode
|
|
266
|
-
pnpm --filter @xmachines/play-vue-router run test:watch
|
|
267
|
-
|
|
268
|
-
# With coverage (80 % threshold on lines/functions/branches/statements)
|
|
269
|
-
pnpm --filter @xmachines/play-vue-router run test:coverage
|
|
270
|
-
```
|
|
271
|
-
|
|
272
|
-
The test files use Vitest with jsdom and `@vue/test-utils`. The integration tests (`test/integration.test.ts`) use a real Vue Router instance with an SFC fixture.
|
|
273
|
-
|
|
274
|
-
## Classes
|
|
275
|
-
|
|
276
|
-
- [RouteMap](classes/RouteMap.md)
|
|
277
|
-
- [VueRouterBridge](classes/VueRouterBridge.md)
|
|
278
|
-
|
|
279
|
-
## Interfaces
|
|
280
|
-
|
|
281
|
-
- [PlayActor](interfaces/PlayActor.md)
|
|
282
|
-
- [PlayRouteEvent](interfaces/PlayRouteEvent.md)
|
|
283
|
-
- [RouteMapOptions](interfaces/RouteMapOptions.md)
|
|
284
|
-
- [RouteMapping](interfaces/RouteMapping.md)
|
|
285
|
-
- [RouterBridge](interfaces/RouterBridge.md)
|
|
286
|
-
|
|
287
|
-
## Type Aliases
|
|
288
|
-
|
|
289
|
-
- [~~RoutableActor~~](type-aliases/RoutableActor.md)
|
|
290
|
-
- [~~VueRouteMap~~](type-aliases/VueRouteMap.md)
|
|
291
|
-
|
|
292
|
-
## Variables
|
|
293
|
-
|
|
294
|
-
- [PlayRouterProvider](variables/PlayRouterProvider.md)
|
|
295
|
-
- [~~VueRouteMap~~](variables/VueRouteMap.md)
|
|
251
|
+
The `watch` watcher runs inside its own `effectScope()`. `disconnect()` calls `scope.stop()`. This removes the watcher completely, and nothing stays in the global Vue effect scope.
|
|
296
252
|
|
|
297
|
-
##
|
|
253
|
+
## Modules
|
|
298
254
|
|
|
299
|
-
- [
|
|
255
|
+
- [errors](errors/README.md)
|
|
256
|
+
- [index](index/README.md)
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-vue-router](../../README.md) / [errors](../README.md) / VueRouterNavigationError
|
|
2
|
+
|
|
3
|
+
# Class: VueRouterNavigationError
|
|
4
|
+
|
|
5
|
+
Defined in: [packages/play-vue-router/src/errors.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-vue-router/src/errors.ts#L26)
|
|
6
|
+
|
|
7
|
+
The bridge throws this error when Vue Router cannot navigate to the path or to
|
|
8
|
+
the state ID that the actor requested.
|
|
9
|
+
|
|
10
|
+
The error wraps a rejected `router.push()` promise. The `cause` property holds the
|
|
11
|
+
original Vue Router error, for example the rejection of a navigation guard.
|
|
12
|
+
|
|
13
|
+
**Error code:** `PLAY_VUE_ROUTER_NAV_FAILED`
|
|
14
|
+
|
|
15
|
+
## Example
|
|
16
|
+
|
|
17
|
+
```typescript
|
|
18
|
+
import { VueRouterNavigationError } from "@xmachines/play-vue-router/errors";
|
|
19
|
+
|
|
20
|
+
try {
|
|
21
|
+
actor.send({ type: "play.route", to: "#settings" });
|
|
22
|
+
} catch (err) {
|
|
23
|
+
if (err instanceof VueRouterNavigationError) {
|
|
24
|
+
// Vue Router refused the push: a guard stopped it, a redirect replaced it, and so on.
|
|
25
|
+
console.error("Navigation rejected:", err.cause);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Extends
|
|
31
|
+
|
|
32
|
+
- [`PlayError`](../../../play/errors/classes/PlayError.md)
|
|
33
|
+
|
|
34
|
+
## Constructors
|
|
35
|
+
|
|
36
|
+
### Constructor
|
|
37
|
+
|
|
38
|
+
```ts
|
|
39
|
+
new VueRouterNavigationError(message, options?): VueRouterNavigationError;
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Defined in: [packages/play-vue-router/src/errors.ts:27](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-vue-router/src/errors.ts#L27)
|
|
43
|
+
|
|
44
|
+
#### Parameters
|
|
45
|
+
|
|
46
|
+
| Parameter | Type |
|
|
47
|
+
| ---------- | -------------- |
|
|
48
|
+
| `message` | `string` |
|
|
49
|
+
| `options?` | `ErrorOptions` |
|
|
50
|
+
|
|
51
|
+
#### Returns
|
|
52
|
+
|
|
53
|
+
`VueRouterNavigationError`
|
|
54
|
+
|
|
55
|
+
#### Overrides
|
|
56
|
+
|
|
57
|
+
[`PlayError`](../../../play/errors/classes/PlayError.md).[`constructor`](../../../play/errors/classes/PlayError.md#constructor)
|
|
58
|
+
|
|
59
|
+
## Properties
|
|
60
|
+
|
|
61
|
+
| Property | Modifier | Type | Description | Inherited from | Defined in |
|
|
62
|
+
| ------------------------------------------------------- | ---------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------- |
|
|
63
|
+
| <a id="property-cause"></a> `cause?` | `public` | `unknown` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`cause`](../../../play/errors/classes/PlayError.md#property-cause) | - |
|
|
64
|
+
| <a id="property-code"></a> `code` | `readonly` | `string` | A stable, machine-readable identifier of the error. An error code follows the naming convention `PLAY_<PACKAGE>_<DESCRIPTION>`. It stays the same across each patch release and each minor release of one major version. Never match on `.message`. Always match on `.code`, or on the subclass. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`code`](../../../play/errors/classes/PlayError.md#property-code) | [packages/play/src/errors.ts:76](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play/src/errors.ts#L76) |
|
|
65
|
+
| <a id="property-message"></a> `message` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`message`](../../../play/errors/classes/PlayError.md#property-message) | - |
|
|
66
|
+
| <a id="property-name"></a> `name` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`name`](../../../play/errors/classes/PlayError.md#property-name) | - |
|
|
67
|
+
| <a id="property-scope"></a> `scope` | `readonly` | `string` | The class or the module that threw this error, for example `"RouterBridgeBase"`. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`scope`](../../../play/errors/classes/PlayError.md#property-scope) | [packages/play/src/errors.ts:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play/src/errors.ts#L66) |
|
|
68
|
+
| <a id="property-stack"></a> `stack?` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`stack`](../../../play/errors/classes/PlayError.md#property-stack) | - |
|
|
69
|
+
| <a id="property-stacktracelimit"></a> `stackTraceLimit` | `static` | `number` | The `Error.stackTraceLimit` property specifies the number of stack frames collected by a stack trace (whether generated by `new Error().stack` or `Error.captureStackTrace(obj)`). The default value is `10` but may be set to any valid JavaScript number. Changes will affect any stack trace captured _after_ the value has been changed. If set to a non-number value, or set to a negative number, stack traces will not capture any frames. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`stackTraceLimit`](../../../play/errors/classes/PlayError.md#property-stacktracelimit) | - |
|
|
70
|
+
|
|
71
|
+
## Methods
|
|
72
|
+
|
|
73
|
+
### captureStackTrace()
|
|
74
|
+
|
|
75
|
+
```ts
|
|
76
|
+
static captureStackTrace(targetObject, constructorOpt?): void;
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Defined in: `@types/node`
|
|
80
|
+
|
|
81
|
+
Creates a `.stack` property on `targetObject`, which when accessed returns
|
|
82
|
+
a string representing the location in the code at which
|
|
83
|
+
`Error.captureStackTrace()` was called.
|
|
84
|
+
|
|
85
|
+
```js
|
|
86
|
+
const myObject = {};
|
|
87
|
+
Error.captureStackTrace(myObject);
|
|
88
|
+
myObject.stack; // Similar to `new Error().stack`
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
The first line of the trace will be prefixed with
|
|
92
|
+
`${myObject.name}: ${myObject.message}`.
|
|
93
|
+
|
|
94
|
+
The optional `constructorOpt` argument accepts a function. If given, all frames
|
|
95
|
+
above `constructorOpt`, including `constructorOpt`, will be omitted from the
|
|
96
|
+
generated stack trace.
|
|
97
|
+
|
|
98
|
+
The `constructorOpt` argument is useful for hiding implementation
|
|
99
|
+
details of error generation from the user. For instance:
|
|
100
|
+
|
|
101
|
+
```js
|
|
102
|
+
function a() {
|
|
103
|
+
b();
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
function b() {
|
|
107
|
+
c();
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
function c() {
|
|
111
|
+
// Create an error without stack trace to avoid calculating the stack trace twice.
|
|
112
|
+
const { stackTraceLimit } = Error;
|
|
113
|
+
Error.stackTraceLimit = 0;
|
|
114
|
+
const error = new Error();
|
|
115
|
+
Error.stackTraceLimit = stackTraceLimit;
|
|
116
|
+
|
|
117
|
+
// Capture the stack trace above function b
|
|
118
|
+
Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
|
|
119
|
+
throw error;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
a();
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
#### Parameters
|
|
126
|
+
|
|
127
|
+
| Parameter | Type |
|
|
128
|
+
| ----------------- | ---------- |
|
|
129
|
+
| `targetObject` | `object` |
|
|
130
|
+
| `constructorOpt?` | `Function` |
|
|
131
|
+
|
|
132
|
+
#### Returns
|
|
133
|
+
|
|
134
|
+
`void`
|
|
135
|
+
|
|
136
|
+
#### Inherited from
|
|
137
|
+
|
|
138
|
+
[`PlayError`](../../../play/errors/classes/PlayError.md).[`captureStackTrace`](../../../play/errors/classes/PlayError.md#capturestacktrace)
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
### isError()
|
|
143
|
+
|
|
144
|
+
```ts
|
|
145
|
+
static isError(error): error is Error;
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
Defined in: `typescript`
|
|
149
|
+
|
|
150
|
+
Indicates whether the argument provided is a built-in Error instance or not.
|
|
151
|
+
|
|
152
|
+
#### Parameters
|
|
153
|
+
|
|
154
|
+
| Parameter | Type |
|
|
155
|
+
| --------- | --------- |
|
|
156
|
+
| `error` | `unknown` |
|
|
157
|
+
|
|
158
|
+
#### Returns
|
|
159
|
+
|
|
160
|
+
`error is Error`
|
|
161
|
+
|
|
162
|
+
#### Inherited from
|
|
163
|
+
|
|
164
|
+
[`PlayError`](../../../play/errors/classes/PlayError.md).[`isError`](../../../play/errors/classes/PlayError.md#iserror)
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
### prepareStackTrace()
|
|
169
|
+
|
|
170
|
+
```ts
|
|
171
|
+
static prepareStackTrace(err, stackTraces): any;
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
Defined in: `@types/node`
|
|
175
|
+
|
|
176
|
+
#### Parameters
|
|
177
|
+
|
|
178
|
+
| Parameter | Type |
|
|
179
|
+
| ------------- | ------------ |
|
|
180
|
+
| `err` | `Error` |
|
|
181
|
+
| `stackTraces` | `CallSite`[] |
|
|
182
|
+
|
|
183
|
+
#### Returns
|
|
184
|
+
|
|
185
|
+
`any`
|
|
186
|
+
|
|
187
|
+
#### See
|
|
188
|
+
|
|
189
|
+
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
|
|
190
|
+
|
|
191
|
+
#### Inherited from
|
|
192
|
+
|
|
193
|
+
[`PlayError`](../../../play/errors/classes/PlayError.md).[`prepareStackTrace`](../../../play/errors/classes/PlayError.md#preparestacktrace)
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-vue-router](../../README.md) / [errors](../README.md) / VueRouterSendError
|
|
2
|
+
|
|
3
|
+
# Class: VueRouterSendError
|
|
4
|
+
|
|
5
|
+
Defined in: [packages/play-vue-router/src/errors.ts:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-vue-router/src/errors.ts#L41)
|
|
6
|
+
|
|
7
|
+
The bridge throws this error when its Vue Router `afterEach` hook cannot build
|
|
8
|
+
or send the `play.route` event to the actor after a navigation that succeeded.
|
|
9
|
+
|
|
10
|
+
The `cause` property holds the error below it.
|
|
11
|
+
|
|
12
|
+
**Error code:** `PLAY_VUE_ROUTER_SEND_FAILED`
|
|
13
|
+
|
|
14
|
+
## Extends
|
|
15
|
+
|
|
16
|
+
- [`PlayError`](../../../play/errors/classes/PlayError.md)
|
|
17
|
+
|
|
18
|
+
## Constructors
|
|
19
|
+
|
|
20
|
+
### Constructor
|
|
21
|
+
|
|
22
|
+
```ts
|
|
23
|
+
new VueRouterSendError(message, options?): VueRouterSendError;
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Defined in: [packages/play-vue-router/src/errors.ts:42](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play-vue-router/src/errors.ts#L42)
|
|
27
|
+
|
|
28
|
+
#### Parameters
|
|
29
|
+
|
|
30
|
+
| Parameter | Type |
|
|
31
|
+
| ---------- | -------------- |
|
|
32
|
+
| `message` | `string` |
|
|
33
|
+
| `options?` | `ErrorOptions` |
|
|
34
|
+
|
|
35
|
+
#### Returns
|
|
36
|
+
|
|
37
|
+
`VueRouterSendError`
|
|
38
|
+
|
|
39
|
+
#### Overrides
|
|
40
|
+
|
|
41
|
+
[`PlayError`](../../../play/errors/classes/PlayError.md).[`constructor`](../../../play/errors/classes/PlayError.md#constructor)
|
|
42
|
+
|
|
43
|
+
## Properties
|
|
44
|
+
|
|
45
|
+
| Property | Modifier | Type | Description | Inherited from | Defined in |
|
|
46
|
+
| ------------------------------------------------------- | ---------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------- |
|
|
47
|
+
| <a id="property-cause"></a> `cause?` | `public` | `unknown` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`cause`](../../../play/errors/classes/PlayError.md#property-cause) | - |
|
|
48
|
+
| <a id="property-code"></a> `code` | `readonly` | `string` | A stable, machine-readable identifier of the error. An error code follows the naming convention `PLAY_<PACKAGE>_<DESCRIPTION>`. It stays the same across each patch release and each minor release of one major version. Never match on `.message`. Always match on `.code`, or on the subclass. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`code`](../../../play/errors/classes/PlayError.md#property-code) | [packages/play/src/errors.ts:76](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play/src/errors.ts#L76) |
|
|
49
|
+
| <a id="property-message"></a> `message` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`message`](../../../play/errors/classes/PlayError.md#property-message) | - |
|
|
50
|
+
| <a id="property-name"></a> `name` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`name`](../../../play/errors/classes/PlayError.md#property-name) | - |
|
|
51
|
+
| <a id="property-scope"></a> `scope` | `readonly` | `string` | The class or the module that threw this error, for example `"RouterBridgeBase"`. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`scope`](../../../play/errors/classes/PlayError.md#property-scope) | [packages/play/src/errors.ts:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v4.0.0/packages/play/src/errors.ts#L66) |
|
|
52
|
+
| <a id="property-stack"></a> `stack?` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`stack`](../../../play/errors/classes/PlayError.md#property-stack) | - |
|
|
53
|
+
| <a id="property-stacktracelimit"></a> `stackTraceLimit` | `static` | `number` | The `Error.stackTraceLimit` property specifies the number of stack frames collected by a stack trace (whether generated by `new Error().stack` or `Error.captureStackTrace(obj)`). The default value is `10` but may be set to any valid JavaScript number. Changes will affect any stack trace captured _after_ the value has been changed. If set to a non-number value, or set to a negative number, stack traces will not capture any frames. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`stackTraceLimit`](../../../play/errors/classes/PlayError.md#property-stacktracelimit) | - |
|
|
54
|
+
|
|
55
|
+
## Methods
|
|
56
|
+
|
|
57
|
+
### captureStackTrace()
|
|
58
|
+
|
|
59
|
+
```ts
|
|
60
|
+
static captureStackTrace(targetObject, constructorOpt?): void;
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Defined in: `@types/node`
|
|
64
|
+
|
|
65
|
+
Creates a `.stack` property on `targetObject`, which when accessed returns
|
|
66
|
+
a string representing the location in the code at which
|
|
67
|
+
`Error.captureStackTrace()` was called.
|
|
68
|
+
|
|
69
|
+
```js
|
|
70
|
+
const myObject = {};
|
|
71
|
+
Error.captureStackTrace(myObject);
|
|
72
|
+
myObject.stack; // Similar to `new Error().stack`
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
The first line of the trace will be prefixed with
|
|
76
|
+
`${myObject.name}: ${myObject.message}`.
|
|
77
|
+
|
|
78
|
+
The optional `constructorOpt` argument accepts a function. If given, all frames
|
|
79
|
+
above `constructorOpt`, including `constructorOpt`, will be omitted from the
|
|
80
|
+
generated stack trace.
|
|
81
|
+
|
|
82
|
+
The `constructorOpt` argument is useful for hiding implementation
|
|
83
|
+
details of error generation from the user. For instance:
|
|
84
|
+
|
|
85
|
+
```js
|
|
86
|
+
function a() {
|
|
87
|
+
b();
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
function b() {
|
|
91
|
+
c();
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
function c() {
|
|
95
|
+
// Create an error without stack trace to avoid calculating the stack trace twice.
|
|
96
|
+
const { stackTraceLimit } = Error;
|
|
97
|
+
Error.stackTraceLimit = 0;
|
|
98
|
+
const error = new Error();
|
|
99
|
+
Error.stackTraceLimit = stackTraceLimit;
|
|
100
|
+
|
|
101
|
+
// Capture the stack trace above function b
|
|
102
|
+
Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
|
|
103
|
+
throw error;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
a();
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
#### Parameters
|
|
110
|
+
|
|
111
|
+
| Parameter | Type |
|
|
112
|
+
| ----------------- | ---------- |
|
|
113
|
+
| `targetObject` | `object` |
|
|
114
|
+
| `constructorOpt?` | `Function` |
|
|
115
|
+
|
|
116
|
+
#### Returns
|
|
117
|
+
|
|
118
|
+
`void`
|
|
119
|
+
|
|
120
|
+
#### Inherited from
|
|
121
|
+
|
|
122
|
+
[`PlayError`](../../../play/errors/classes/PlayError.md).[`captureStackTrace`](../../../play/errors/classes/PlayError.md#capturestacktrace)
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
### isError()
|
|
127
|
+
|
|
128
|
+
```ts
|
|
129
|
+
static isError(error): error is Error;
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
Defined in: `typescript`
|
|
133
|
+
|
|
134
|
+
Indicates whether the argument provided is a built-in Error instance or not.
|
|
135
|
+
|
|
136
|
+
#### Parameters
|
|
137
|
+
|
|
138
|
+
| Parameter | Type |
|
|
139
|
+
| --------- | --------- |
|
|
140
|
+
| `error` | `unknown` |
|
|
141
|
+
|
|
142
|
+
#### Returns
|
|
143
|
+
|
|
144
|
+
`error is Error`
|
|
145
|
+
|
|
146
|
+
#### Inherited from
|
|
147
|
+
|
|
148
|
+
[`PlayError`](../../../play/errors/classes/PlayError.md).[`isError`](../../../play/errors/classes/PlayError.md#iserror)
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
### prepareStackTrace()
|
|
153
|
+
|
|
154
|
+
```ts
|
|
155
|
+
static prepareStackTrace(err, stackTraces): any;
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
Defined in: `@types/node`
|
|
159
|
+
|
|
160
|
+
#### Parameters
|
|
161
|
+
|
|
162
|
+
| Parameter | Type |
|
|
163
|
+
| ------------- | ------------ |
|
|
164
|
+
| `err` | `Error` |
|
|
165
|
+
| `stackTraces` | `CallSite`[] |
|
|
166
|
+
|
|
167
|
+
#### Returns
|
|
168
|
+
|
|
169
|
+
`any`
|
|
170
|
+
|
|
171
|
+
#### See
|
|
172
|
+
|
|
173
|
+
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
|
|
174
|
+
|
|
175
|
+
#### Inherited from
|
|
176
|
+
|
|
177
|
+
[`PlayError`](../../../play/errors/classes/PlayError.md).[`prepareStackTrace`](../../../play/errors/classes/PlayError.md#preparestacktrace)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-vue-router](../README.md) / index
|
|
2
|
+
|
|
3
|
+
# index
|
|
4
|
+
|
|
5
|
+
## Classes
|
|
6
|
+
|
|
7
|
+
- [RouteMap](classes/RouteMap.md)
|
|
8
|
+
- [VueRouterBridge](classes/VueRouterBridge.md)
|
|
9
|
+
|
|
10
|
+
## Interfaces
|
|
11
|
+
|
|
12
|
+
- [PlayRouteEvent](interfaces/PlayRouteEvent.md)
|
|
13
|
+
- [RoutableActor](interfaces/RoutableActor.md)
|
|
14
|
+
- [RouteMapOptions](interfaces/RouteMapOptions.md)
|
|
15
|
+
- [RouteMapping](interfaces/RouteMapping.md)
|
|
16
|
+
- [RouterBridge](interfaces/RouterBridge.md)
|
|
17
|
+
|
|
18
|
+
## Variables
|
|
19
|
+
|
|
20
|
+
- [PlayRouterProvider](variables/PlayRouterProvider.md)
|