@xmachines/docs 1.0.0-beta.9 → 1.1.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 +135 -7
- package/api/@xmachines/play/README.md +159 -39
- package/api/@xmachines/play/classes/NonNullableError.md +189 -0
- package/api/@xmachines/play/classes/PlayError.md +251 -0
- package/api/@xmachines/play/functions/assertNonNullable.md +56 -0
- package/api/@xmachines/play/type-aliases/PlayEvent.md +6 -6
- package/api/@xmachines/play-actor/README.md +153 -160
- package/api/@xmachines/play-actor/classes/AbstractActor.md +106 -121
- package/api/@xmachines/play-actor/functions/attachRenderErrorHandler.md +40 -0
- package/api/@xmachines/play-actor/functions/toAtomState.md +33 -0
- package/api/@xmachines/play-actor/functions/typedSpec.md +54 -0
- package/api/@xmachines/play-actor/interfaces/BaseActorProviderProps.md +46 -0
- package/api/@xmachines/play-actor/interfaces/BaseViewContextValue.md +33 -0
- package/api/@xmachines/play-actor/interfaces/PlaySpec.md +28 -0
- package/api/@xmachines/play-actor/interfaces/Routable.md +6 -21
- package/api/@xmachines/play-actor/interfaces/Viewable.md +12 -6
- package/api/@xmachines/play-dom/README.md +385 -0
- package/api/@xmachines/play-dom/classes/PlayRenderer.md +115 -0
- package/api/@xmachines/play-dom/functions/createPlayUI.md +28 -0
- package/api/@xmachines/play-dom/functions/createRenderer.md +44 -0
- package/api/@xmachines/play-dom/functions/defineRegistry.md +26 -0
- package/api/@xmachines/play-dom/functions/renderSpec.md +67 -0
- package/api/@xmachines/play-dom/interfaces/ComponentContext.md +23 -0
- package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +34 -0
- package/api/@xmachines/play-dom/interfaces/DefineRegistryResult.md +17 -0
- package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +28 -0
- package/api/@xmachines/play-dom/interfaces/EventHandle.md +15 -0
- package/api/@xmachines/play-dom/interfaces/MountOptions.md +18 -0
- package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +30 -0
- package/api/@xmachines/play-dom/interfaces/RenderSpecOptions.md +26 -0
- package/api/@xmachines/play-dom/interfaces/UIProviderOptions.md +32 -0
- package/api/@xmachines/play-dom/type-aliases/ActionFn.md +46 -0
- package/api/@xmachines/play-dom/type-aliases/Actions.md +18 -0
- package/api/@xmachines/play-dom/type-aliases/BaseComponentProps.md +114 -0
- package/api/@xmachines/play-dom/type-aliases/CatalogHasActions.md +25 -0
- package/api/@xmachines/play-dom/type-aliases/ComponentFn.md +26 -0
- package/api/@xmachines/play-dom/type-aliases/ComponentRegistry.md +15 -0
- package/api/@xmachines/play-dom/type-aliases/ConfirmHandler.md +44 -0
- package/api/@xmachines/play-dom/type-aliases/DefineRegistryOptions.md +39 -0
- package/api/@xmachines/play-dom/type-aliases/DomComponentRenderer.md +20 -0
- package/api/@xmachines/play-dom/type-aliases/DomRegistry.md +9 -0
- package/api/@xmachines/play-dom/type-aliases/DomSchema.md +9 -0
- package/api/@xmachines/play-dom/type-aliases/MountFn.md +27 -0
- package/api/@xmachines/play-dom/type-aliases/RenderErrorHandler.md +23 -0
- package/api/@xmachines/play-dom/type-aliases/SetState.md +30 -0
- package/api/@xmachines/play-dom/variables/schema.md +62 -0
- package/api/@xmachines/play-dom-router/README.md +272 -0
- package/api/@xmachines/play-dom-router/functions/connectRouter.md +43 -0
- package/api/@xmachines/{play-router → play-dom-router}/functions/createBrowserHistory.md +10 -2
- package/api/@xmachines/play-dom-router/functions/createRouteMap.md +39 -0
- package/api/@xmachines/play-dom-router/functions/createRouter.md +54 -0
- package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +176 -0
- package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +69 -0
- package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +15 -0
- package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +129 -0
- package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +68 -0
- package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +54 -0
- package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +121 -0
- package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +27 -0
- package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +104 -0
- package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +28 -0
- package/api/@xmachines/play-react/README.md +185 -333
- package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +46 -42
- package/api/@xmachines/play-react/functions/ActionProvider.md +21 -0
- package/api/@xmachines/play-react/functions/JSONUIProvider.md +21 -0
- package/api/@xmachines/play-react/functions/Renderer.md +21 -0
- package/api/@xmachines/play-react/functions/StateProvider.md +27 -0
- package/api/@xmachines/play-react/functions/ValidationProvider.md +21 -0
- package/api/@xmachines/play-react/functions/VisibilityProvider.md +21 -0
- package/api/@xmachines/play-react/functions/defineRegistry.md +49 -0
- package/api/@xmachines/play-react/functions/useActor.md +13 -0
- package/api/@xmachines/play-react/functions/useBoundProp.md +45 -0
- package/api/@xmachines/play-react/functions/usePlayView.md +32 -0
- package/api/@xmachines/play-react/functions/useSignalEffect.md +29 -20
- package/api/@xmachines/play-react/interfaces/ActionProviderProps.md +15 -0
- package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +27 -0
- package/api/@xmachines/play-react/interfaces/ComponentContext.md +37 -0
- package/api/@xmachines/play-react/interfaces/JSONUIProviderProps.md +22 -0
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +7 -7
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +6 -6
- package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +26 -0
- package/api/@xmachines/play-react/interfaces/RendererProps.md +17 -0
- package/api/@xmachines/play-react/interfaces/StateProviderProps.md +16 -0
- package/api/@xmachines/play-react/interfaces/ValidationProviderProps.md +14 -0
- package/api/@xmachines/play-react/interfaces/ViewContextValue.md +20 -0
- package/api/@xmachines/play-react/interfaces/VisibilityProviderProps.md +13 -0
- package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +11 -0
- package/api/@xmachines/play-react/type-aliases/ComponentFn.md +36 -0
- package/api/@xmachines/play-react/type-aliases/RenderErrorHandler.md +23 -0
- package/api/@xmachines/play-react/variables/ActorProvider.md +33 -0
- package/api/@xmachines/play-react/variables/PlayRenderer.md +6 -56
- package/api/@xmachines/play-react/variables/PlayUIProvider.md +43 -0
- package/api/@xmachines/play-react-router/README.md +130 -115
- package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +19 -242
- package/api/@xmachines/play-react-router/classes/RouteMap.md +48 -36
- package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +45 -0
- package/api/@xmachines/play-react-router/functions/createRouteMap.md +39 -0
- package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +23 -12
- package/api/@xmachines/play-react-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderBaseProps.md +32 -0
- package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +25 -9
- package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +19 -9
- package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
- package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +32 -0
- package/api/@xmachines/play-router/README.md +275 -352
- package/api/@xmachines/play-router/classes/RouteMap.md +149 -0
- package/api/@xmachines/play-router/classes/RouterBridgeBase.md +21 -221
- package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +32 -0
- package/api/@xmachines/play-router/functions/buildRouteTree.md +12 -2
- package/api/@xmachines/play-router/functions/createRouteMap.md +22 -36
- package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +46 -0
- package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +14 -7
- package/api/@xmachines/play-router/functions/extractMachineRoutes.md +10 -46
- package/api/@xmachines/play-router/functions/extractQuery.md +22 -0
- package/api/@xmachines/play-router/functions/extractRouteParams.md +54 -0
- package/api/@xmachines/play-router/functions/findRouteById.md +2 -2
- package/api/@xmachines/play-router/functions/findRouteByPath.md +2 -2
- package/api/@xmachines/play-router/functions/getNavigableRoutes.md +2 -2
- package/api/@xmachines/play-router/functions/getRoutableRoutes.md +2 -2
- package/api/@xmachines/play-router/functions/getTransitionReachableRoutes.md +43 -0
- package/api/@xmachines/play-router/functions/isRouteReachable.md +38 -0
- package/api/@xmachines/play-router/functions/machineToGraph.md +19 -0
- package/api/@xmachines/play-router/functions/routeExists.md +2 -2
- package/api/@xmachines/play-router/functions/sanitizePathname.md +40 -0
- package/api/@xmachines/play-router/functions/validateRouteFormat.md +10 -9
- package/api/@xmachines/play-router/functions/validateStateExists.md +9 -9
- package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +13 -0
- package/api/@xmachines/play-router/interfaces/LocationLike.md +27 -0
- package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +15 -0
- package/api/@xmachines/play-router/interfaces/MachineNodeData.md +17 -0
- package/api/@xmachines/play-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-router/interfaces/ResolvedRoutePath.md +17 -0
- package/api/@xmachines/play-router/interfaces/RoutableActor.md +64 -0
- package/api/@xmachines/play-router/interfaces/RouteInfo.md +11 -11
- package/api/@xmachines/play-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-router/interfaces/RouteMapping.md +27 -0
- package/api/@xmachines/play-router/interfaces/RouteMatch.md +12 -0
- package/api/@xmachines/play-router/interfaces/RouteNode.md +13 -13
- package/api/@xmachines/play-router/interfaces/RouteObject.md +5 -5
- package/api/@xmachines/play-router/interfaces/RouteTree.md +8 -7
- package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +55 -0
- package/api/@xmachines/play-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-router/interfaces/WindowLike.md +65 -0
- package/api/@xmachines/play-router/type-aliases/MachineGraph.md +20 -0
- package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +2 -2
- package/api/@xmachines/play-signals/README.md +117 -65
- package/api/@xmachines/play-signals/functions/watchSignal.md +42 -0
- package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +7 -5
- package/api/@xmachines/play-signals/interfaces/SignalComputed.md +3 -3
- package/api/@xmachines/play-signals/interfaces/SignalOptions.md +7 -5
- package/api/@xmachines/play-signals/interfaces/SignalState.md +4 -4
- package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +5 -5
- package/api/@xmachines/play-signals/namespaces/Signal/README.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/classes/Computed.md +7 -7
- package/api/@xmachines/play-signals/namespaces/Signal/classes/State.md +8 -8
- package/api/@xmachines/play-signals/namespaces/Signal/interfaces/Options.md +7 -7
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/README.md +1 -1
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/classes/Watcher.md +9 -9
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/currentComputed.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSinks.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSources.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSinks.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSources.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/untrack.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/unwatched.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/watched.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isComputed.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isState.md +2 -2
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isWatcher.md +2 -2
- package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +2 -2
- package/api/@xmachines/play-solid/README.md +196 -233
- package/api/@xmachines/play-solid/functions/ActionProvider.md +19 -0
- package/api/@xmachines/play-solid/functions/JSONUIProvider.md +21 -0
- package/api/@xmachines/play-solid/functions/Renderer.md +21 -0
- package/api/@xmachines/play-solid/functions/StateProvider.md +19 -0
- package/api/@xmachines/play-solid/functions/ValidationProvider.md +19 -0
- package/api/@xmachines/play-solid/functions/VisibilityProvider.md +20 -0
- package/api/@xmachines/play-solid/functions/defineRegistry.md +49 -0
- package/api/@xmachines/play-solid/functions/useAction.md +24 -0
- package/api/@xmachines/play-solid/functions/useActions.md +13 -0
- package/api/@xmachines/play-solid/functions/useActor.md +13 -0
- package/api/@xmachines/play-solid/functions/useBoundProp.md +45 -0
- package/api/@xmachines/play-solid/functions/useFieldValidation.md +29 -0
- package/api/@xmachines/play-solid/functions/useIsVisible.md +19 -0
- package/api/@xmachines/play-solid/functions/useOptionalValidation.md +13 -0
- package/api/@xmachines/play-solid/functions/usePlayView.md +30 -0
- package/api/@xmachines/play-solid/functions/useStateBinding.md +25 -0
- package/api/@xmachines/play-solid/functions/useStateStore.md +13 -0
- package/api/@xmachines/play-solid/functions/useStateValue.md +25 -0
- package/api/@xmachines/play-solid/functions/useVisibility.md +13 -0
- package/api/@xmachines/play-solid/interfaces/ActionProviderProps.md +12 -0
- package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +30 -0
- package/api/@xmachines/play-solid/interfaces/ComponentContext.md +37 -0
- package/api/@xmachines/play-solid/interfaces/DefineRegistryResult.md +15 -0
- package/api/@xmachines/play-solid/interfaces/JSONUIProviderProps.md +22 -0
- package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +26 -0
- package/api/@xmachines/play-solid/interfaces/RendererProps.md +17 -0
- package/api/@xmachines/play-solid/interfaces/StateProviderProps.md +13 -0
- package/api/@xmachines/play-solid/interfaces/ValidationProviderProps.md +11 -0
- package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +21 -0
- package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +11 -0
- package/api/@xmachines/play-solid/type-aliases/ComponentFn.md +36 -0
- package/api/@xmachines/play-solid/type-aliases/ComponentRegistry.md +11 -0
- package/api/@xmachines/play-solid/type-aliases/RenderErrorHandler.md +23 -0
- package/api/@xmachines/play-solid/type-aliases/SetState.md +21 -0
- package/api/@xmachines/play-solid/type-aliases/VisibilityProviderProps.md +9 -0
- package/api/@xmachines/play-solid/variables/ActorContext.md +13 -0
- package/api/@xmachines/play-solid/variables/ActorProvider.md +27 -0
- package/api/@xmachines/play-solid/variables/PlayRenderer.md +6 -62
- package/api/@xmachines/play-solid/variables/PlayUIProvider.md +26 -0
- package/api/@xmachines/play-solid-router/README.md +151 -559
- package/api/@xmachines/play-solid-router/classes/RouteMap.md +31 -32
- package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +27 -242
- package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +44 -0
- package/api/@xmachines/play-solid-router/functions/createRouteMap.md +18 -11
- package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +99 -114
- package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderBaseProps.md +30 -0
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +25 -9
- package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +20 -7
- package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +34 -0
- package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +8 -4
- package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +22 -19
- package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +52 -0
- package/api/@xmachines/play-svelte/README.md +270 -0
- package/api/@xmachines/play-svelte/functions/defineRegistry.md +31 -0
- package/api/@xmachines/play-svelte/functions/getActorContext.md +21 -0
- package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +19 -0
- package/api/@xmachines/play-svelte/functions/setActorContext.md +19 -0
- package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +44 -0
- package/api/@xmachines/play-svelte/interfaces/BaseComponentProps.md +29 -0
- package/api/@xmachines/play-svelte/interfaces/ComponentContext.md +29 -0
- package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +24 -0
- package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +43 -0
- package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +24 -0
- package/api/@xmachines/play-svelte/type-aliases/ActionFn.md +30 -0
- package/api/@xmachines/play-svelte/type-aliases/Actions.md +17 -0
- package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +11 -0
- package/api/@xmachines/play-svelte/type-aliases/ComponentFn.md +18 -0
- package/api/@xmachines/play-svelte/type-aliases/JSONUIProviderProps.md +7 -0
- package/api/@xmachines/play-svelte/type-aliases/PlayRenderer.md +9 -0
- package/api/@xmachines/play-svelte/type-aliases/RenderErrorHandler.md +23 -0
- package/api/@xmachines/play-svelte/type-aliases/SetState.md +21 -0
- package/api/@xmachines/play-svelte/variables/PlayRenderer.md +9 -0
- package/api/@xmachines/play-svelte-spa-router/README.md +197 -0
- package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +149 -0
- package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +32 -0
- package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +39 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +17 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +129 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +27 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +104 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +65 -0
- package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +9 -0
- package/api/@xmachines/play-sveltekit-router/README.md +212 -0
- package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +149 -0
- package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +32 -0
- package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +39 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +13 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +27 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +129 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +27 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +104 -0
- package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +9 -0
- package/api/@xmachines/play-tanstack-react-router/README.md +155 -125
- package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +48 -36
- package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +31 -252
- package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +45 -0
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +22 -36
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +23 -12
- package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +28 -0
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderBaseProps.md +32 -0
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +25 -9
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +19 -9
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +6 -6
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +2 -2
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +40 -18
- package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +34 -0
- package/api/@xmachines/play-tanstack-router/README.md +61 -0
- package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +131 -0
- package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +57 -0
- package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +100 -0
- package/api/@xmachines/play-tanstack-solid-router/README.md +216 -175
- package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +31 -32
- package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +121 -0
- package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +44 -0
- package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +18 -11
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderBaseProps.md +31 -0
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +23 -9
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +14 -10
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +30 -0
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +8 -4
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +40 -18
- package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +33 -0
- package/api/@xmachines/play-vue/README.md +190 -210
- package/api/@xmachines/play-vue/functions/defineRegistry.md +32 -0
- package/api/@xmachines/play-vue/functions/getPlayViewContext.md +28 -0
- package/api/@xmachines/play-vue/functions/useActor.md +13 -0
- package/api/@xmachines/play-vue/functions/useBoundProp.md +45 -0
- package/api/@xmachines/play-vue/interfaces/ActionProviderProps.md +12 -0
- package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +25 -0
- package/api/@xmachines/play-vue/interfaces/ComponentContext.md +37 -0
- package/api/@xmachines/play-vue/interfaces/DefineRegistryResult.md +15 -0
- package/api/@xmachines/play-vue/interfaces/JSONUIProviderProps.md +21 -0
- package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +24 -0
- package/api/@xmachines/play-vue/interfaces/RendererProps.md +17 -0
- package/api/@xmachines/play-vue/interfaces/StateProviderProps.md +15 -0
- package/api/@xmachines/play-vue/interfaces/ValidationProviderProps.md +11 -0
- package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +21 -0
- package/api/@xmachines/play-vue/interfaces/VisibilityProviderProps.md +5 -0
- package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +11 -0
- package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +16 -0
- package/api/@xmachines/play-vue/type-aliases/ComponentFn.md +35 -0
- package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +15 -0
- package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +22 -0
- package/api/@xmachines/play-vue/type-aliases/RenderErrorHandler.md +23 -0
- package/api/@xmachines/play-vue/variables/ActionProvider.md +64 -0
- package/api/@xmachines/play-vue/variables/JSONUIProvider.md +105 -0
- package/api/@xmachines/play-vue/variables/PlayRenderer.md +2 -2
- package/api/@xmachines/play-vue/variables/Renderer.md +88 -0
- package/api/@xmachines/play-vue/variables/StateProvider.md +79 -0
- package/api/@xmachines/play-vue/variables/ValidationProvider.md +55 -0
- package/api/@xmachines/play-vue/variables/VisibilityProvider.md +40 -0
- package/api/@xmachines/play-vue-router/README.md +173 -486
- package/api/@xmachines/play-vue-router/classes/RouteMap.md +56 -116
- package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +23 -271
- package/api/@xmachines/play-vue-router/functions/createRouteMap.md +26 -6
- package/api/@xmachines/play-vue-router/interfaces/PlayActor.md +68 -0
- package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +22 -12
- package/api/@xmachines/play-vue-router/interfaces/RouteMapOptions.md +13 -0
- package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +20 -8
- package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +8 -8
- package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +8 -4
- package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +12 -6
- package/api/@xmachines/play-xstate/README.md +203 -354
- package/api/@xmachines/play-xstate/classes/PlayerActor.md +195 -201
- package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +24 -20
- package/api/@xmachines/play-xstate/functions/composeGuards.md +8 -3
- package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +8 -3
- package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +43 -0
- package/api/@xmachines/play-xstate/functions/definePlayer.md +14 -63
- package/api/@xmachines/play-xstate/functions/deriveRoute.md +3 -3
- package/api/@xmachines/play-xstate/functions/eventMatches.md +8 -3
- package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +3 -3
- package/api/@xmachines/play-xstate/functions/hasContext.md +8 -5
- package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +2 -2
- package/api/@xmachines/play-xstate/functions/negateGuard.md +8 -3
- package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +10 -14
- package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +22 -0
- package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +14 -16
- package/api/@xmachines/play-xstate/interfaces/RouteContext.md +15 -13
- package/api/@xmachines/play-xstate/interfaces/RouteObject.md +17 -0
- package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +8 -3
- package/api/@xmachines/play-xstate/type-aliases/Guard.md +8 -6
- package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +9 -7
- package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +15 -18
- package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +15 -5
- package/api/@xmachines/play-xstate/type-aliases/RouteMetadata.md +9 -0
- package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +22 -6
- package/api/@xmachines/shared/README.md +95 -295
- package/api/@xmachines/shared/vite-aliases/README.md +11 -0
- package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +38 -0
- package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +27 -0
- package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +35 -0
- package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +42 -0
- package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +33 -0
- package/api/@xmachines/shared/vitest/README.md +12 -0
- package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +42 -0
- package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +34 -0
- package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +16 -0
- package/api/README.md +6 -7
- package/api/llms.txt +72 -23
- package/contributing/README.md +10 -0
- package/contributing/architecture.md +601 -0
- package/contributing/configuration.md +368 -0
- package/contributing/deployment.md +333 -0
- package/contributing/development.md +503 -0
- package/contributing/testing.md +461 -0
- package/examples/@xmachines/play-dom-demo/README.md +181 -0
- package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +24 -0
- package/examples/@xmachines/play-dom-demo/functions/initShell.md +25 -0
- package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +9 -0
- package/examples/@xmachines/play-dom-demo/variables/About.md +12 -0
- package/examples/@xmachines/play-dom-demo/variables/Contact.md +12 -0
- package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Home.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Login.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +16 -0
- package/examples/@xmachines/play-dom-demo/variables/Navigation.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Overview.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Profile.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Settings.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/Stats.md +13 -0
- package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +172 -0
- package/examples/@xmachines/play-dom-router-demo/README.md +145 -0
- package/examples/@xmachines/play-react-demo/README.md +187 -0
- package/examples/@xmachines/play-react-demo/functions/App.md +13 -0
- package/examples/@xmachines/play-react-demo/functions/DebugPanel.md +20 -0
- package/examples/@xmachines/play-react-demo/functions/HeaderNav.md +20 -0
- package/examples/@xmachines/play-react-demo/functions/Shell.md +22 -0
- package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +9 -0
- package/examples/@xmachines/play-react-demo/variables/About.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Contact.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Dashboard.md +15 -0
- package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +16 -0
- package/examples/@xmachines/play-react-demo/variables/Home.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Login.md +16 -0
- package/examples/@xmachines/play-react-demo/variables/NavBar.md +16 -0
- package/examples/@xmachines/play-react-demo/variables/NavBarView.md +15 -0
- package/examples/@xmachines/play-react-demo/variables/Navigation.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Overview.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Profile.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Settings.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/Shell.md +19 -0
- package/examples/@xmachines/play-react-demo/variables/Stats.md +14 -0
- package/examples/@xmachines/play-react-demo/variables/authCatalog.md +172 -0
- package/examples/@xmachines/play-react-router-demo/README.md +151 -0
- package/examples/@xmachines/play-solid-demo/README.md +187 -0
- package/examples/@xmachines/play-solid-demo/functions/App.md +13 -0
- package/examples/@xmachines/play-solid-demo/functions/DebugPanel.md +20 -0
- package/examples/@xmachines/play-solid-demo/functions/HeaderNav.md +20 -0
- package/examples/@xmachines/play-solid-demo/functions/Shell.md +22 -0
- package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/About.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Contact.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +17 -0
- package/examples/@xmachines/play-solid-demo/variables/Home.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Login.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/NavBar.md +11 -0
- package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +15 -0
- package/examples/@xmachines/play-solid-demo/variables/Navigation.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Overview.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Profile.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Settings.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/Shell.md +18 -0
- package/examples/@xmachines/play-solid-demo/variables/Stats.md +9 -0
- package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +172 -0
- package/examples/@xmachines/play-solid-router-demo/README.md +137 -0
- package/examples/@xmachines/play-svelte-demo/README.md +143 -0
- package/examples/@xmachines/play-svelte-demo/type-aliases/App.md +9 -0
- package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +9 -0
- package/examples/@xmachines/play-svelte-demo/variables/App.md +9 -0
- package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +172 -0
- package/examples/@xmachines/play-svelte-spa-router-demo/README.md +129 -0
- package/examples/@xmachines/play-sveltekit-router-demo/README.md +133 -0
- package/examples/@xmachines/play-tanstack-react-router-demo/README.md +156 -0
- package/examples/@xmachines/play-tanstack-solid-router-demo/README.md +139 -0
- package/examples/@xmachines/play-vue-demo/README.md +183 -0
- package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +9 -0
- package/examples/@xmachines/play-vue-demo/variables/App.md +9 -0
- package/examples/@xmachines/play-vue-demo/variables/authCatalog.md +172 -0
- package/examples/@xmachines/play-vue-router-demo/README.md +139 -0
- package/examples/README.md +78 -30
- package/examples/basic-state-machine.md +73 -31
- package/examples/form-validation.md +259 -118
- package/examples/multi-router-integration.md +312 -194
- package/examples/routing-patterns.md +228 -189
- package/examples/traffic-light.md +112 -65
- package/guides/README.md +7 -21
- package/guides/actor-model.md +180 -0
- package/guides/getting-started.md +627 -137
- package/guides/signals.md +166 -0
- package/guides/state-machines.md +284 -0
- package/package.json +21 -7
- package/rfc/broker.md +100 -0
- package/rfc/browser.md +44 -0
- package/rfc/cli.md +118 -0
- package/rfc/git.md +61 -0
- package/rfc/mcp.md +43 -0
- package/rfc/node.md +36 -0
- package/rfc/play.md +472 -0
- package/rfc/rest.md +102 -0
- package/rfc/run.md +159 -0
- package/rfc/streams.md +168 -0
- package/api/@xmachines/play-actor/interfaces/ViewMetadata.md +0 -17
- package/api/@xmachines/play-catalog/README.md +0 -331
- package/api/@xmachines/play-catalog/functions/defineCatalog.md +0 -98
- package/api/@xmachines/play-catalog/functions/defineComponents.md +0 -134
- package/api/@xmachines/play-catalog/type-aliases/Catalog.md +0 -48
- package/api/@xmachines/play-catalog/type-aliases/ComponentsFor.md +0 -20
- package/api/@xmachines/play-catalog/type-aliases/InferComponentProps.md +0 -65
- package/api/@xmachines/play-catalog/type-aliases/NoExtraKeys.md +0 -17
- package/api/@xmachines/play-react/interfaces/PlayRendererProps.md +0 -15
- package/api/@xmachines/play-react-router/functions/PlayRouterProvider.md +0 -19
- package/api/@xmachines/play-react-router-demo/README.md +0 -137
- package/api/@xmachines/play-router/classes/BaseRouteMap.md +0 -142
- package/api/@xmachines/play-router/functions/connectRouter.md +0 -67
- package/api/@xmachines/play-router/functions/crawlMachine.md +0 -92
- package/api/@xmachines/play-router/functions/createRouter.md +0 -76
- package/api/@xmachines/play-router/functions/extractRoute.md +0 -45
- package/api/@xmachines/play-router/interfaces/BaseRouteMapping.md +0 -27
- package/api/@xmachines/play-router/interfaces/BrowserHistory.md +0 -172
- package/api/@xmachines/play-router/interfaces/BrowserWindow.md +0 -69
- package/api/@xmachines/play-router/interfaces/ConnectRouterOptions.md +0 -13
- package/api/@xmachines/play-router/interfaces/RouteMap.md +0 -56
- package/api/@xmachines/play-router/interfaces/StateVisit.md +0 -15
- package/api/@xmachines/play-router/interfaces/VanillaRouter.md +0 -28
- package/api/@xmachines/play-router-demo/README.md +0 -137
- package/api/@xmachines/play-solid/interfaces/PlayRendererProps.md +0 -15
- package/api/@xmachines/play-solid-router/functions/PlayRouterProvider.md +0 -19
- package/api/@xmachines/play-solid-router-demo/README.md +0 -127
- package/api/@xmachines/play-tanstack-react-router/functions/PlayRouterProvider.md +0 -19
- package/api/@xmachines/play-tanstack-react-router/functions/extractParams.md +0 -38
- package/api/@xmachines/play-tanstack-react-router/functions/extractQueryParams.md +0 -33
- package/api/@xmachines/play-tanstack-react-router/variables/extractMachineRoutes.md +0 -64
- package/api/@xmachines/play-tanstack-react-router-demo/README.md +0 -126
- package/api/@xmachines/play-tanstack-solid-router/classes/SolidRouterBridge.md +0 -343
- package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +0 -19
- package/api/@xmachines/play-tanstack-solid-router-demo/README.md +0 -126
- package/api/@xmachines/play-vue/interfaces/PlayRendererProps.md +0 -14
- package/api/@xmachines/play-vue-router/classes/VueBaseRouteMap.md +0 -201
- package/api/@xmachines/play-vue-router-demo/README.md +0 -133
- package/api/@xmachines/play-xstate/functions/mergeViewProps.md +0 -26
- package/api/@xmachines/play-xstate/functions/stateMatches.md +0 -25
- package/api/@xmachines/play-xstate/functions/validateComponentBinding.md +0 -39
- package/api/@xmachines/play-xstate/functions/validateViewProps.md +0 -80
- package/api/@xmachines/play-xstate/interfaces/CatalogEntry.md +0 -16
- package/api/@xmachines/play-xstate/type-aliases/Catalog.md +0 -21
- package/api/@xmachines/play-xstate/type-aliases/ValidationResult.md +0 -17
- package/api/@xmachines/play-xstate/type-aliases/ViewMergeContext.md +0 -35
- package/api/@xmachines/shared/functions/defineXmVitestConfig.md +0 -29
- package/api/@xmachines/shared/functions/xmAliases.md +0 -24
- package/guides/installation.md +0 -323
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
[
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-xstate](../README.md) / PlayerActor
|
|
2
2
|
|
|
3
3
|
# Class: PlayerActor\<TMachine\>
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-xstate/src/player-actor.ts:
|
|
5
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:193](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L193)
|
|
6
6
|
|
|
7
7
|
Concrete XState actor implementing Play Architecture signal protocol
|
|
8
8
|
|
|
9
|
-
Extends [@xmachines/play-actor!AbstractActor](../../play-actor/classes/AbstractActor.md)
|
|
10
|
-
while maintaining ecosystem compatibility (XState
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
Extends [@xmachines/play-actor!AbstractActor](../../play-actor/classes/AbstractActor.md) — and so XState's own `Actor` —
|
|
10
|
+
to provide XState v5 integration while maintaining ecosystem compatibility (XState
|
|
11
|
+
inspection, devtools). The machine is handed to the base constructor, so a
|
|
12
|
+
`PlayerActor` **is** the XState actor rather than a wrapper around one: everything
|
|
13
|
+
XState's `Actor` exposes operates on this instance's own state, and the class adds
|
|
14
|
+
TC39 Signal-based reactive state for Infrastructure observation on top.
|
|
13
15
|
|
|
14
16
|
**Capabilities:** Implements both [@xmachines/play-actor!Routable](../../play-actor/interfaces/Routable.md) and
|
|
15
17
|
[@xmachines/play-actor!Viewable](../../play-actor/interfaces/Viewable.md) interfaces, providing routing and view
|
|
@@ -32,7 +34,14 @@ const machine = setup({}).createMachine({
|
|
|
32
34
|
initial: "idle",
|
|
33
35
|
states: {
|
|
34
36
|
idle: {
|
|
35
|
-
meta: {
|
|
37
|
+
meta: {
|
|
38
|
+
route: "/",
|
|
39
|
+
// A view spec needs `root` and `elements` — other shapes derive null.
|
|
40
|
+
view: {
|
|
41
|
+
root: "home",
|
|
42
|
+
elements: { home: { type: "HomePage", props: {}, children: [] } },
|
|
43
|
+
},
|
|
44
|
+
},
|
|
36
45
|
},
|
|
37
46
|
},
|
|
38
47
|
});
|
|
@@ -43,10 +52,10 @@ actor.start();
|
|
|
43
52
|
|
|
44
53
|
// Observe signals
|
|
45
54
|
console.log(actor.currentRoute.get()); // '/'
|
|
46
|
-
console.log(actor.currentView.get()); //
|
|
55
|
+
console.log(actor.currentView.get()?.root); // 'home'
|
|
47
56
|
```
|
|
48
57
|
|
|
49
|
-
Signal lifecycle with watchers
|
|
58
|
+
Signal lifecycle with watchers
|
|
50
59
|
|
|
51
60
|
```typescript
|
|
52
61
|
import { Signal } from "@xmachines/play-signals";
|
|
@@ -60,12 +69,12 @@ const watcher = new Signal.subtle.Watcher(() => {
|
|
|
60
69
|
|
|
61
70
|
watcher.watch(actor.state);
|
|
62
71
|
actor.send({ type: "play.route", to: "#about" });
|
|
63
|
-
// Watcher notification scheduled via microtask
|
|
72
|
+
// Watcher notification scheduled via microtask by the watcher itself
|
|
64
73
|
```
|
|
65
74
|
|
|
66
75
|
## See
|
|
67
76
|
|
|
68
|
-
- [
|
|
77
|
+
- [Play RFC](../../../../rfc/play.md)
|
|
69
78
|
- [definePlayer](../functions/definePlayer.md) for factory creation
|
|
70
79
|
- [@xmachines/play-actor!AbstractActor](../../play-actor/classes/AbstractActor.md) for signal protocol
|
|
71
80
|
- [@xmachines/play-actor!Routable](../../play-actor/interfaces/Routable.md) for routing capability
|
|
@@ -83,13 +92,13 @@ cached and updated at state entry, not computed on every read.
|
|
|
83
92
|
|
|
84
93
|
## Extends
|
|
85
94
|
|
|
86
|
-
- [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<`
|
|
95
|
+
- [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventFromLogic`](https://www.jsdocs.io/package/xstate#EventFromLogic)\<`TMachine`\>\>
|
|
87
96
|
|
|
88
97
|
## Type Parameters
|
|
89
98
|
|
|
90
|
-
| Type Parameter
|
|
91
|
-
|
|
|
92
|
-
| `TMachine` _extends_ `AnyStateMachine` | XState v5 state machine type |
|
|
99
|
+
| Type Parameter | Description |
|
|
100
|
+
| ---------------------------------------------------------------------------------------------- | ---------------------------- |
|
|
101
|
+
| `TMachine` _extends_ [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | XState v5 state machine type |
|
|
93
102
|
|
|
94
103
|
## Implements
|
|
95
104
|
|
|
@@ -103,21 +112,21 @@ cached and updated at state entry, not computed on every read.
|
|
|
103
112
|
```ts
|
|
104
113
|
new PlayerActor<TMachine>(
|
|
105
114
|
machine,
|
|
106
|
-
catalog,
|
|
107
115
|
options,
|
|
108
|
-
input
|
|
116
|
+
input?,
|
|
117
|
+
restoredSnapshot?): PlayerActor<TMachine>;
|
|
109
118
|
```
|
|
110
119
|
|
|
111
|
-
Defined in: [packages/play-xstate/src/player-actor.ts:
|
|
120
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:343](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L343)
|
|
112
121
|
|
|
113
122
|
#### Parameters
|
|
114
123
|
|
|
115
|
-
| Parameter
|
|
116
|
-
|
|
|
117
|
-
| `machine`
|
|
118
|
-
| `
|
|
119
|
-
| `
|
|
120
|
-
| `
|
|
124
|
+
| Parameter | Type |
|
|
125
|
+
| ------------------- | --------------------------------------------------------------------------- |
|
|
126
|
+
| `machine` | `TMachine` |
|
|
127
|
+
| `options` | [`PlayerOptions`](../interfaces/PlayerOptions.md)\<`TMachine`\> |
|
|
128
|
+
| `input?` | [`InputFrom`](https://www.jsdocs.io/package/xstate#InputFrom)\<`TMachine`\> |
|
|
129
|
+
| `restoredSnapshot?` | [`Snapshot`](https://www.jsdocs.io/package/xstate#Snapshot)\<`unknown`\> |
|
|
121
130
|
|
|
122
131
|
#### Returns
|
|
123
132
|
|
|
@@ -129,22 +138,22 @@ Defined in: [packages/play-xstate/src/player-actor.ts:142](https://gitlab.com/xm
|
|
|
129
138
|
|
|
130
139
|
## Properties
|
|
131
140
|
|
|
132
|
-
| Property | Modifier
|
|
133
|
-
| ------------------------------------------------- |
|
|
134
|
-
| <a id="property-_parent"></a> `_parent?` | `public`
|
|
135
|
-
| <a id="property-
|
|
136
|
-
| <a id="property-
|
|
137
|
-
| <a id="property-
|
|
138
|
-
| <a id="property-
|
|
139
|
-
| <a id="property-
|
|
140
|
-
| <a id="property-logic"></a> `logic` | `public`
|
|
141
|
-
| <a id="property-options"></a> `options` | `public`
|
|
142
|
-
| <a id="property-ref"></a> `ref` | `public`
|
|
143
|
-
| <a id="property-sessionid"></a> `sessionId` | `public`
|
|
144
|
-
| <a id="property-src"></a> `src` | `public`
|
|
145
|
-
| <a id="property-state"></a> `state` | `public`
|
|
146
|
-
| <a id="property-system"></a> `system` | `public`
|
|
147
|
-
| <a id="property-systemid"></a> `systemId` | `public`
|
|
141
|
+
| Property | Modifier | Type | Description | Overrides | Inherited from | Defined in |
|
|
142
|
+
| ------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
143
|
+
| <a id="property-_parent"></a> `_parent?` | `public` | [`AnyActorRef`](https://www.jsdocs.io/package/xstate#AnyActorRef) | - | - | [`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`_parent`](../../play-actor/classes/AbstractActor.md#property-_parent) | - |
|
|
144
|
+
| <a id="property-clock"></a> `clock` | `public` | [`Clock`](https://www.jsdocs.io/package/xstate#Clock) | The clock that is responsible for setting and clearing timeouts, such as delayed events and transitions. | - | [`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`clock`](../../play-actor/classes/AbstractActor.md#property-clock) | - |
|
|
145
|
+
| <a id="property-currentroute"></a> `currentRoute` | `public` | [`Computed`](../../play-signals/namespaces/Signal/classes/Computed.md)\<`string` \| `null`\> | A TC39 `Signal.Computed` that derives the current URL path from the active machine state's `meta.route` template and the actor's context. Returns `null` when the current state has no `meta.route`, or when the route template cannot be fully resolved — a required `:param` absent from context is caught internally (`MissingRouteParamError` never escapes `get()`): the condition is transient mid-transition and the signal recomputes on the next snapshot. **Example** `// Returns "/profile/alice" when context.params.userId === "alice", // and null while the param is still missing. const route = actor.currentRoute.get();` | - | - | [packages/play-xstate/src/player-actor.ts:292](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L292) |
|
|
146
|
+
| <a id="property-currentview"></a> `currentView` | `readonly` | [`State`](../../play-signals/namespaces/Signal/classes/State.md)\<[`PlaySpec`](../../play-actor/interfaces/PlaySpec.md) \| `null`\> | Reactive signal containing the current view spec derived from the active state's `meta.view` metadata. Emits a **fresh object reference** whenever the rendered view actually changes — a different state's view, or a param/context change that alters the resolved spec (including `reenter: true` re-entries with new params). Snapshots that do not change the rendered view (e.g. context-only assigns) keep the previous reference so downstream providers do not remount the UI on every event. The emitted `PlaySpec` has its element `props` enriched with `context.params` before emission — URL path parameters (e.g. `:section?`) flow into component props automatically. See `mergeRouteParamsIntoProps` for the merge priority rules. Returns `null` when the current state has no `meta.view` metadata. Two states declaring separate but structurally identical `meta.view` literals emit distinct references on a transition between them (a provider remount); hoist the shared literal into one `typedSpec` constant to deduplicate by identity. **Example** `const view = actor.currentView.get(); if (view) { console.log(view.root); // e.g. "root" console.log(view.elements); // @xmachines/json-render-core Spec elements }` | - | - | [packages/play-xstate/src/player-actor.ts:341](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L341) |
|
|
147
|
+
| <a id="property-id"></a> `id` | `public` | `string` | The unique identifier for this actor relative to its parent. | - | [`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`id`](../../play-actor/classes/AbstractActor.md#property-id) | - |
|
|
148
|
+
| <a id="property-initialroute"></a> `initialRoute` | `readonly` | `string` \| `null` | The route derived from the machine's initial state — fixed at construction, never changes even when the actor is restored from a snapshot. Router bridges compare this against the browser URL to distinguish a deep-link (non-initial URL → router wins) from a restore (initial URL + actor at a different restored route → actor wins). Derived statically from the machine definition via `deriveInitialRoute` (XState's pure `initialTransition` helper): the initial state chain and its `meta.route` templates are fixed at machine definition time, while `:param` substitution uses the machine's real initial context for this actor's `input`. No extra actor is ever created, and a restored snapshot never influences the value — it is always the machine's **default** initial route. | - | - | [packages/play-xstate/src/player-actor.ts:309](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L309) |
|
|
149
|
+
| <a id="property-logic"></a> `logic` | `public` | [`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic) | - | - | [`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`logic`](../../play-actor/classes/AbstractActor.md#property-logic) | - |
|
|
150
|
+
| <a id="property-options"></a> `options` | `public` | `Readonly`\<[`ActorOptions`](https://www.jsdocs.io/package/xstate#ActorOptions)\<`TLogic`\>\> | - | - | [`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`options`](../../play-actor/classes/AbstractActor.md#property-options) | - |
|
|
151
|
+
| <a id="property-ref"></a> `ref` | `public` | [`ActorRef`](https://www.jsdocs.io/package/xstate#ActorRef)\<`any`, `any`, `any`\> | - | - | [`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`ref`](../../play-actor/classes/AbstractActor.md#property-ref) | - |
|
|
152
|
+
| <a id="property-sessionid"></a> `sessionId` | `public` | `string` | The globally unique process ID for this invocation. | - | [`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`sessionId`](../../play-actor/classes/AbstractActor.md#property-sessionid) | - |
|
|
153
|
+
| <a id="property-src"></a> `src` | `public` | \| `string` \| [`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic) | - | - | [`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`src`](../../play-actor/classes/AbstractActor.md#property-src) | - |
|
|
154
|
+
| <a id="property-state"></a> `state` | `public` | [`State`](../../play-signals/namespaces/Signal/classes/State.md)\<`ReturnType`\<`TMachine`\[`"transition"`\]\>\> | Reactive snapshot of current actor state. Infrastructure observes this signal to react to state changes without directly coupling to the actor's internal state machine implementation. | [`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`state`](../../play-actor/classes/AbstractActor.md#property-state) | - | [packages/play-xstate/src/player-actor.ts:252](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L252) |
|
|
155
|
+
| <a id="property-system"></a> `system` | `public` | [`AnyActorSystem`](https://www.jsdocs.io/package/xstate#AnyActorSystem) | The system to which this actor belongs. | - | [`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`system`](../../play-actor/classes/AbstractActor.md#property-system) | - |
|
|
156
|
+
| <a id="property-systemid"></a> `systemId` | `public` | `string` \| `undefined` | - | - | [`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`systemId`](../../play-actor/classes/AbstractActor.md#property-systemid) | - |
|
|
148
157
|
|
|
149
158
|
## Methods
|
|
150
159
|
|
|
@@ -154,11 +163,11 @@ Defined in: [packages/play-xstate/src/player-actor.ts:142](https://gitlab.com/xm
|
|
|
154
163
|
observable: InteropSubscribable<any>;
|
|
155
164
|
```
|
|
156
165
|
|
|
157
|
-
Defined in:
|
|
166
|
+
Defined in: `xstate`
|
|
158
167
|
|
|
159
168
|
#### Returns
|
|
160
169
|
|
|
161
|
-
`InteropSubscribable
|
|
170
|
+
[`InteropSubscribable`](https://www.jsdocs.io/package/xstate#InteropSubscribable)\<`any`\>
|
|
162
171
|
|
|
163
172
|
#### Inherited from
|
|
164
173
|
|
|
@@ -166,53 +175,77 @@ Defined in: node_modules/xstate/dist/declarations/src/createActor.d.ts:153
|
|
|
166
175
|
|
|
167
176
|
---
|
|
168
177
|
|
|
169
|
-
###
|
|
178
|
+
### can()
|
|
170
179
|
|
|
171
180
|
```ts
|
|
172
|
-
|
|
181
|
+
can(event): boolean;
|
|
173
182
|
```
|
|
174
183
|
|
|
175
|
-
Defined in: [packages/play-xstate/src/player-actor.ts:
|
|
184
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:265](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L265)
|
|
176
185
|
|
|
177
|
-
|
|
186
|
+
Returns whether the actor's current state can accept the given event.
|
|
178
187
|
|
|
179
|
-
|
|
188
|
+
Typed to the machine's event union — passing an unknown event type is a
|
|
189
|
+
compile error. Evaluated against the current snapshot signal.
|
|
190
|
+
|
|
191
|
+
#### Parameters
|
|
192
|
+
|
|
193
|
+
| Parameter | Type |
|
|
194
|
+
| --------- | ------------------------------------------------------------------------------------- |
|
|
195
|
+
| `event` | [`EventFromLogic`](https://www.jsdocs.io/package/xstate#EventFromLogic)\<`TMachine`\> |
|
|
180
196
|
|
|
181
197
|
#### Returns
|
|
182
198
|
|
|
183
|
-
`
|
|
199
|
+
`boolean`
|
|
200
|
+
|
|
201
|
+
#### Example
|
|
202
|
+
|
|
203
|
+
```typescript
|
|
204
|
+
if (actor.can({ type: "auth.logout" })) { ... }
|
|
205
|
+
```
|
|
184
206
|
|
|
185
207
|
---
|
|
186
208
|
|
|
187
|
-
###
|
|
209
|
+
### dispose()
|
|
188
210
|
|
|
189
211
|
```ts
|
|
190
|
-
|
|
212
|
+
dispose(): void;
|
|
191
213
|
```
|
|
192
214
|
|
|
193
|
-
Defined in:
|
|
215
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:719](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L719)
|
|
194
216
|
|
|
195
|
-
|
|
217
|
+
Convenience dispose method for cleanup — an alias for [stop](#stop).
|
|
196
218
|
|
|
197
219
|
#### Returns
|
|
198
220
|
|
|
199
|
-
`
|
|
221
|
+
`void`
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
### getPersistedSnapshot()
|
|
226
|
+
|
|
227
|
+
```ts
|
|
228
|
+
getPersistedSnapshot(options?): Snapshot<unknown>;
|
|
229
|
+
```
|
|
200
230
|
|
|
201
|
-
|
|
231
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:672](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L672)
|
|
202
232
|
|
|
203
|
-
|
|
233
|
+
Get this actor's persisted snapshot.
|
|
204
234
|
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
the actor, while snapshots represent the actor's last emitted value.
|
|
235
|
+
Suitable for serialization and later restoration via the factory's
|
|
236
|
+
`restore.snapshot` option.
|
|
208
237
|
|
|
209
|
-
|
|
238
|
+
#### Parameters
|
|
210
239
|
|
|
211
|
-
|
|
240
|
+
| Parameter | Type |
|
|
241
|
+
| ---------- | --------- |
|
|
242
|
+
| `options?` | `unknown` |
|
|
212
243
|
|
|
213
|
-
|
|
244
|
+
#### Returns
|
|
214
245
|
|
|
215
|
-
|
|
246
|
+
[`Snapshot`](https://www.jsdocs.io/package/xstate#Snapshot)\<`unknown`\>
|
|
247
|
+
|
|
248
|
+
#### Overrides
|
|
216
249
|
|
|
217
250
|
[`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`getPersistedSnapshot`](../../play-actor/classes/AbstractActor.md#getpersistedsnapshot)
|
|
218
251
|
|
|
@@ -224,13 +257,13 @@ https://stately.ai/docs/persistence
|
|
|
224
257
|
getSnapshot(): SnapshotFrom<TMachine>;
|
|
225
258
|
```
|
|
226
259
|
|
|
227
|
-
Defined in: [packages/play-xstate/src/player-actor.ts:
|
|
260
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:570](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L570)
|
|
228
261
|
|
|
229
262
|
Get current snapshot
|
|
230
263
|
|
|
231
264
|
#### Returns
|
|
232
265
|
|
|
233
|
-
`SnapshotFrom
|
|
266
|
+
[`SnapshotFrom`](https://www.jsdocs.io/package/xstate#SnapshotFrom)\<`TMachine`\>
|
|
234
267
|
|
|
235
268
|
#### Overrides
|
|
236
269
|
|
|
@@ -244,7 +277,9 @@ Get current snapshot
|
|
|
244
277
|
on<TType>(type, handler): Subscription;
|
|
245
278
|
```
|
|
246
279
|
|
|
247
|
-
Defined in:
|
|
280
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:657](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L657)
|
|
281
|
+
|
|
282
|
+
Listen for events this actor emits via the `emit` action.
|
|
248
283
|
|
|
249
284
|
#### Type Parameters
|
|
250
285
|
|
|
@@ -254,48 +289,86 @@ Defined in: node_modules/xstate/dist/declarations/src/createActor.d.ts:115
|
|
|
254
289
|
|
|
255
290
|
#### Parameters
|
|
256
291
|
|
|
257
|
-
| Parameter | Type |
|
|
258
|
-
| --------- | --------------------- |
|
|
259
|
-
| `type` | `TType` |
|
|
260
|
-
| `handler` | (`emitted`) => `void` |
|
|
292
|
+
| Parameter | Type | Description |
|
|
293
|
+
| --------- | --------------------- | --------------------------------------------------- |
|
|
294
|
+
| `type` | `TType` | Emitted event type to listen for, or `"*"` for all. |
|
|
295
|
+
| `handler` | (`emitted`) => `void` | Called with each matching emitted event. |
|
|
261
296
|
|
|
262
297
|
#### Returns
|
|
263
298
|
|
|
264
|
-
`Subscription`
|
|
299
|
+
[`Subscription`](https://www.jsdocs.io/package/xstate#Subscription)
|
|
265
300
|
|
|
266
|
-
|
|
301
|
+
Subscription with an `unsubscribe()` method.
|
|
302
|
+
|
|
303
|
+
#### Overrides
|
|
267
304
|
|
|
268
305
|
[`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`on`](../../play-actor/classes/AbstractActor.md#on)
|
|
269
306
|
|
|
270
307
|
---
|
|
271
308
|
|
|
309
|
+
### select()
|
|
310
|
+
|
|
311
|
+
```ts
|
|
312
|
+
select<TSelected>(selector, equalityFn?): Readable<TSelected>;
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
Defined in: `xstate`
|
|
316
|
+
|
|
317
|
+
#### Type Parameters
|
|
318
|
+
|
|
319
|
+
| Type Parameter |
|
|
320
|
+
| -------------- |
|
|
321
|
+
| `TSelected` |
|
|
322
|
+
|
|
323
|
+
#### Parameters
|
|
324
|
+
|
|
325
|
+
| Parameter | Type |
|
|
326
|
+
| ------------- | --------------------------- |
|
|
327
|
+
| `selector` | (`snapshot`) => `TSelected` |
|
|
328
|
+
| `equalityFn?` | (`a`, `b`) => `boolean` |
|
|
329
|
+
|
|
330
|
+
#### Returns
|
|
331
|
+
|
|
332
|
+
`Readable`\<`TSelected`\>
|
|
333
|
+
|
|
334
|
+
#### Inherited from
|
|
335
|
+
|
|
336
|
+
[`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`select`](../../play-actor/classes/AbstractActor.md#select)
|
|
337
|
+
|
|
338
|
+
---
|
|
339
|
+
|
|
272
340
|
### send()
|
|
273
341
|
|
|
274
342
|
```ts
|
|
275
343
|
send(event): void;
|
|
276
344
|
```
|
|
277
345
|
|
|
278
|
-
Defined in: [packages/play-xstate/src/player-actor.ts:
|
|
346
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:532](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L532)
|
|
279
347
|
|
|
280
|
-
Send event to actor
|
|
348
|
+
Send an event to this actor.
|
|
281
349
|
|
|
282
|
-
|
|
283
|
-
|
|
350
|
+
The actor's state machine guards decide whether the event causes a transition.
|
|
351
|
+
Pass any event from the machine's event union — domain events, routing events, etc.
|
|
284
352
|
|
|
285
353
|
#### Parameters
|
|
286
354
|
|
|
287
|
-
| Parameter | Type
|
|
288
|
-
| --------- |
|
|
289
|
-
| `event` | [`
|
|
355
|
+
| Parameter | Type | Description |
|
|
356
|
+
| --------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------- |
|
|
357
|
+
| `event` | [`EventFromLogic`](https://www.jsdocs.io/package/xstate#EventFromLogic)\<`TMachine`\> | An event from the machine's `EventFromLogic<TMachine>` union. |
|
|
290
358
|
|
|
291
359
|
#### Returns
|
|
292
360
|
|
|
293
361
|
`void`
|
|
294
362
|
|
|
363
|
+
#### Throws
|
|
364
|
+
|
|
365
|
+
When `event` is not a plain object (`null`, `undefined`,
|
|
366
|
+
a string, number, etc.). Import the class from `@xmachines/play-xstate/errors`.
|
|
367
|
+
|
|
295
368
|
#### Example
|
|
296
369
|
|
|
297
370
|
```typescript
|
|
298
|
-
// Domain event
|
|
371
|
+
// Domain event (typed to machine's event union)
|
|
299
372
|
actor.send({ type: "auth.login", userId: "123" });
|
|
300
373
|
|
|
301
374
|
// Routing event
|
|
@@ -314,11 +387,15 @@ actor.send({ type: "play.route", to: "#home" });
|
|
|
314
387
|
start(): this;
|
|
315
388
|
```
|
|
316
389
|
|
|
317
|
-
Defined in: [packages/play-xstate/src/player-actor.ts:
|
|
390
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:460](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L460)
|
|
318
391
|
|
|
319
|
-
Start the actor
|
|
392
|
+
Start the actor.
|
|
320
393
|
|
|
321
|
-
|
|
394
|
+
Fires `onStart` on each real start — every transition from not-running to
|
|
395
|
+
running, including a start after a stop, which XState allows (its own
|
|
396
|
+
`start()` bails only while the actor is already RUNNING). A repeated call
|
|
397
|
+
while running does not re-fire it, so a defensive double mount does not
|
|
398
|
+
re-run `onStart` side effects for one actual start.
|
|
322
399
|
|
|
323
400
|
#### Returns
|
|
324
401
|
|
|
@@ -336,9 +413,16 @@ Per RESEARCH.md Pitfall 1: Always call start() after creation
|
|
|
336
413
|
stop(): this;
|
|
337
414
|
```
|
|
338
415
|
|
|
339
|
-
Defined in: [packages/play-xstate/src/player-actor.ts:
|
|
416
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:490](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L490)
|
|
340
417
|
|
|
341
|
-
Stop the actor and
|
|
418
|
+
Stop the actor and clean up.
|
|
419
|
+
|
|
420
|
+
Fires `onStop` only when the actor was actually running — mirroring
|
|
421
|
+
XState, where stopping a never-started or already-stopped actor is a
|
|
422
|
+
no-op with zero teardown — so paired cleanup never runs twice, nor
|
|
423
|
+
against resources `onStart` never acquired. Stopping does not close the
|
|
424
|
+
actor for good: a later `start()` is a fresh lifecycle and fires
|
|
425
|
+
`onStart` again.
|
|
342
426
|
|
|
343
427
|
#### Returns
|
|
344
428
|
|
|
@@ -358,70 +442,25 @@ Stop the actor and cleanup
|
|
|
358
442
|
subscribe(observer): Subscription;
|
|
359
443
|
```
|
|
360
444
|
|
|
361
|
-
Defined in:
|
|
445
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:594](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L594)
|
|
446
|
+
|
|
447
|
+
Subscribe to this actor's snapshot updates.
|
|
362
448
|
|
|
363
|
-
|
|
449
|
+
Accepts an observer object, exactly like XState's `Actor.subscribe`.
|
|
364
450
|
|
|
365
451
|
##### Parameters
|
|
366
452
|
|
|
367
|
-
| Parameter | Type
|
|
368
|
-
| ---------- |
|
|
369
|
-
| `observer` | `Observer
|
|
453
|
+
| Parameter | Type | Description |
|
|
454
|
+
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------- |
|
|
455
|
+
| `observer` | [`Observer`](https://www.jsdocs.io/package/xstate#Observer)\<[`SnapshotFrom`](https://www.jsdocs.io/package/xstate#SnapshotFrom)\<`TMachine`\>\> | Observer with `next`/`error`/`complete` handlers. |
|
|
370
456
|
|
|
371
457
|
##### Returns
|
|
372
458
|
|
|
373
|
-
`Subscription`
|
|
374
|
-
|
|
375
|
-
##### Remarks
|
|
376
|
-
|
|
377
|
-
The observer will receive the actor’s snapshot value when it is emitted.
|
|
378
|
-
The observer can be:
|
|
379
|
-
|
|
380
|
-
- A plain function that receives the latest snapshot, or
|
|
381
|
-
- An observer object whose `.next(snapshot)` method receives the latest
|
|
382
|
-
snapshot
|
|
383
|
-
|
|
384
|
-
##### Examples
|
|
385
|
-
|
|
386
|
-
```ts
|
|
387
|
-
// Observer as a plain function
|
|
388
|
-
const subscription = actor.subscribe((snapshot) => {
|
|
389
|
-
console.log(snapshot);
|
|
390
|
-
});
|
|
391
|
-
```
|
|
392
|
-
|
|
393
|
-
```ts
|
|
394
|
-
// Observer as an object
|
|
395
|
-
const subscription = actor.subscribe({
|
|
396
|
-
next(snapshot) {
|
|
397
|
-
console.log(snapshot);
|
|
398
|
-
},
|
|
399
|
-
error(err) {
|
|
400
|
-
// ...
|
|
401
|
-
},
|
|
402
|
-
complete() {
|
|
403
|
-
// ...
|
|
404
|
-
},
|
|
405
|
-
});
|
|
406
|
-
```
|
|
407
|
-
|
|
408
|
-
The return value of `actor.subscribe(observer)` is a subscription object
|
|
409
|
-
that has an `.unsubscribe()` method. You can call
|
|
410
|
-
`subscription.unsubscribe()` to unsubscribe the observer:
|
|
411
|
-
|
|
412
|
-
```ts
|
|
413
|
-
const subscription = actor.subscribe((snapshot) => {
|
|
414
|
-
// ...
|
|
415
|
-
});
|
|
416
|
-
|
|
417
|
-
// Unsubscribe the observer
|
|
418
|
-
subscription.unsubscribe();
|
|
419
|
-
```
|
|
459
|
+
[`Subscription`](https://www.jsdocs.io/package/xstate#Subscription)
|
|
420
460
|
|
|
421
|
-
|
|
422
|
-
unsubscribed.
|
|
461
|
+
Subscription with an `unsubscribe()` method.
|
|
423
462
|
|
|
424
|
-
#####
|
|
463
|
+
##### Overrides
|
|
425
464
|
|
|
426
465
|
[`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`subscribe`](../../play-actor/classes/AbstractActor.md#subscribe)
|
|
427
466
|
|
|
@@ -434,72 +473,27 @@ subscribe(
|
|
|
434
473
|
completeListener?): Subscription;
|
|
435
474
|
```
|
|
436
475
|
|
|
437
|
-
Defined in:
|
|
476
|
+
Defined in: [packages/play-xstate/src/player-actor.ts:605](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.1.0/packages/play-xstate/src/player-actor.ts#L605)
|
|
477
|
+
|
|
478
|
+
Subscribe to this actor's snapshot updates.
|
|
438
479
|
|
|
439
|
-
|
|
480
|
+
Accepts listener functions, exactly like XState's `Actor.subscribe`.
|
|
440
481
|
|
|
441
482
|
##### Parameters
|
|
442
483
|
|
|
443
|
-
| Parameter | Type |
|
|
444
|
-
| ------------------- | ---------------------- |
|
|
445
|
-
| `nextListener?` | (`snapshot`) => `void` |
|
|
446
|
-
| `errorListener?` | (`error`) => `void` |
|
|
447
|
-
| `completeListener?` | () => `void` |
|
|
484
|
+
| Parameter | Type | Description |
|
|
485
|
+
| ------------------- | ---------------------- | -------------------------------------------------------- |
|
|
486
|
+
| `nextListener?` | (`snapshot`) => `void` | Snapshot listener function. |
|
|
487
|
+
| `errorListener?` | (`error`) => `void` | Called when the actor errors. |
|
|
488
|
+
| `completeListener?` | () => `void` | Called when the actor completes (reaches a final state). |
|
|
448
489
|
|
|
449
490
|
##### Returns
|
|
450
491
|
|
|
451
|
-
`Subscription`
|
|
452
|
-
|
|
453
|
-
##### Remarks
|
|
454
|
-
|
|
455
|
-
The observer will receive the actor’s snapshot value when it is emitted.
|
|
456
|
-
The observer can be:
|
|
457
|
-
|
|
458
|
-
- A plain function that receives the latest snapshot, or
|
|
459
|
-
- An observer object whose `.next(snapshot)` method receives the latest
|
|
460
|
-
snapshot
|
|
461
|
-
|
|
462
|
-
##### Examples
|
|
463
|
-
|
|
464
|
-
```ts
|
|
465
|
-
// Observer as a plain function
|
|
466
|
-
const subscription = actor.subscribe((snapshot) => {
|
|
467
|
-
console.log(snapshot);
|
|
468
|
-
});
|
|
469
|
-
```
|
|
470
|
-
|
|
471
|
-
```ts
|
|
472
|
-
// Observer as an object
|
|
473
|
-
const subscription = actor.subscribe({
|
|
474
|
-
next(snapshot) {
|
|
475
|
-
console.log(snapshot);
|
|
476
|
-
},
|
|
477
|
-
error(err) {
|
|
478
|
-
// ...
|
|
479
|
-
},
|
|
480
|
-
complete() {
|
|
481
|
-
// ...
|
|
482
|
-
},
|
|
483
|
-
});
|
|
484
|
-
```
|
|
485
|
-
|
|
486
|
-
The return value of `actor.subscribe(observer)` is a subscription object
|
|
487
|
-
that has an `.unsubscribe()` method. You can call
|
|
488
|
-
`subscription.unsubscribe()` to unsubscribe the observer:
|
|
489
|
-
|
|
490
|
-
```ts
|
|
491
|
-
const subscription = actor.subscribe((snapshot) => {
|
|
492
|
-
// ...
|
|
493
|
-
});
|
|
494
|
-
|
|
495
|
-
// Unsubscribe the observer
|
|
496
|
-
subscription.unsubscribe();
|
|
497
|
-
```
|
|
492
|
+
[`Subscription`](https://www.jsdocs.io/package/xstate#Subscription)
|
|
498
493
|
|
|
499
|
-
|
|
500
|
-
unsubscribed.
|
|
494
|
+
Subscription with an `unsubscribe()` method.
|
|
501
495
|
|
|
502
|
-
#####
|
|
496
|
+
##### Overrides
|
|
503
497
|
|
|
504
498
|
[`AbstractActor`](../../play-actor/classes/AbstractActor.md).[`subscribe`](../../play-actor/classes/AbstractActor.md#subscribe)
|
|
505
499
|
|
|
@@ -511,16 +505,16 @@ unsubscribed.
|
|
|
511
505
|
toJSON(): object;
|
|
512
506
|
```
|
|
513
507
|
|
|
514
|
-
Defined in:
|
|
508
|
+
Defined in: `xstate`
|
|
515
509
|
|
|
516
510
|
#### Returns
|
|
517
511
|
|
|
518
512
|
`object`
|
|
519
513
|
|
|
520
|
-
| Name | Type | Defined in
|
|
521
|
-
| -------------- | -------- |
|
|
522
|
-
| `id` | `string` |
|
|
523
|
-
| `xstate$$type` | `number` |
|
|
514
|
+
| Name | Type | Defined in |
|
|
515
|
+
| -------------- | -------- | ---------- |
|
|
516
|
+
| `id` | `string` | - |
|
|
517
|
+
| `xstate$$type` | `number` | - |
|
|
524
518
|
|
|
525
519
|
#### Inherited from
|
|
526
520
|
|