@xmachines/docs 1.0.0-beta.9 → 1.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 +137 -7
- package/api/@xmachines/play/README.md +160 -38
- 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 +141 -160
- package/api/@xmachines/play-actor/classes/AbstractActor.md +91 -122
- 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 +384 -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 +271 -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 -334
- 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 -114
- 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 -353
- 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 +116 -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 -234
- 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 -560
- 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 +84 -115
- 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 +269 -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 +199 -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 +211 -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 -126
- 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 +58 -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 +215 -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 +192 -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 -487
- 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 +178 -347
- package/api/@xmachines/play-xstate/classes/PlayerActor.md +161 -191
- package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +31 -20
- package/api/@xmachines/play-xstate/functions/composeGuards.md +2 -2
- package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +2 -2
- package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +38 -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 +2 -2
- package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +3 -3
- package/api/@xmachines/play-xstate/functions/hasContext.md +2 -2
- package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +2 -2
- package/api/@xmachines/play-xstate/functions/negateGuard.md +2 -2
- 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 +12 -13
- 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 +2 -2
- package/api/@xmachines/play-xstate/type-aliases/Guard.md +2 -2
- package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +3 -3
- package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +10 -9
- 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 +30 -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 +599 -0
- package/contributing/configuration.md +368 -0
- package/contributing/deployment.md +312 -0
- package/contributing/development.md +464 -0
- package/contributing/testing.md +453 -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 +24 -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 +15 -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 +18 -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 +15 -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 +17 -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 +75 -31
- package/examples/form-validation.md +261 -118
- package/examples/multi-router-integration.md +314 -194
- package/examples/routing-patterns.md +230 -189
- package/examples/traffic-light.md +114 -65
- package/guides/README.md +9 -21
- package/guides/actor-model.md +180 -0
- package/guides/getting-started.md +619 -137
- package/guides/signals.md +166 -0
- package/guides/state-machines.md +284 -0
- package/package.json +18 -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,423 +1,274 @@
|
|
|
1
|
-
[
|
|
1
|
+
[API](../../README.md) / @xmachines/play-react
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
**React renderer consuming signals and UI schema with provider pattern**
|
|
6
|
-
|
|
7
|
-
Signal-driven React rendering layer observing actor state with zero React state for business logic.
|
|
3
|
+
<!-- generated-by: gsd-doc-writer -->
|
|
8
4
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
`@xmachines/play-react` provides `PlayRenderer` and `useSignalEffect` for building React UIs that passively observe actor signals. This package enables framework-swappable architecture where React is just a rendering target subscribing to signal changes — business logic lives entirely in the actor.
|
|
5
|
+
# @xmachines/play-react
|
|
12
6
|
|
|
13
|
-
|
|
7
|
+
React renderer for XMachines Play architecture with signal-driven rendering.
|
|
14
8
|
|
|
15
|
-
|
|
16
|
-
- **Passive Infrastructure (INV-04):** Components observe signals, send events to actor
|
|
9
|
+
Part of the [xmachines-js monorepo](../../README.md).
|
|
17
10
|
|
|
18
|
-
|
|
11
|
+
## Installation
|
|
19
12
|
|
|
20
|
-
|
|
13
|
+
```bash
|
|
14
|
+
pnpm add @xmachines/play-react
|
|
15
|
+
```
|
|
21
16
|
|
|
22
|
-
|
|
17
|
+
**Peer dependencies** (must be installed separately):
|
|
23
18
|
|
|
24
19
|
```bash
|
|
25
|
-
|
|
26
|
-
npm install @xmachines/play-react
|
|
20
|
+
pnpm add react react-dom xstate @xstate/store @xmachines/json-render-react @xmachines/json-render-core @xmachines/json-render-xstate
|
|
27
21
|
```
|
|
28
22
|
|
|
29
|
-
|
|
23
|
+
Supported versions:
|
|
30
24
|
|
|
31
|
-
- `
|
|
32
|
-
- `
|
|
33
|
-
- `
|
|
34
|
-
- `
|
|
35
|
-
- `PlayErrorBoundaryProps` (type)
|
|
25
|
+
- `react` / `react-dom`: `^18.0.0 || ^19.0.0`
|
|
26
|
+
- `xstate`: `^5.31.0`
|
|
27
|
+
- `@xstate/store`: `^3.17.0`
|
|
28
|
+
- `@xmachines/json-render-*`: `^0.18.0`
|
|
36
29
|
|
|
37
|
-
|
|
30
|
+
## Usage
|
|
38
31
|
|
|
39
|
-
|
|
40
|
-
- `react-dom` ^18.0.0 || ^19.0.0 — React DOM renderer
|
|
32
|
+
### Standard usage — `PlayUIProvider` + `PlayRenderer`
|
|
41
33
|
|
|
42
|
-
|
|
34
|
+
The recommended pattern for actor-driven React rendering:
|
|
43
35
|
|
|
44
|
-
```
|
|
45
|
-
import {
|
|
36
|
+
```tsx
|
|
37
|
+
import { PlayUIProvider, PlayRenderer, defineRegistry } from "@xmachines/play-react";
|
|
46
38
|
import { definePlayer } from "@xmachines/play-xstate";
|
|
47
|
-
import { defineCatalog } from "@xmachines/play-catalog";
|
|
48
|
-
import { PlayRenderer } from "@xmachines/play-react";
|
|
49
|
-
import { z } from "zod";
|
|
50
|
-
|
|
51
|
-
// 1. Define catalog (business logic layer)
|
|
52
|
-
const catalog = defineCatalog({
|
|
53
|
-
LoginForm: z.object({ error: z.string().optional() }),
|
|
54
|
-
Dashboard: z.object({
|
|
55
|
-
userId: z.string(),
|
|
56
|
-
username: z.string(),
|
|
57
|
-
}),
|
|
58
|
-
});
|
|
59
39
|
|
|
60
|
-
//
|
|
61
|
-
const
|
|
62
|
-
LoginForm: ({ error, send }) => (
|
|
63
|
-
<form
|
|
64
|
-
onSubmit={(e) => {
|
|
65
|
-
e.preventDefault();
|
|
66
|
-
const data = new FormData(e.currentTarget);
|
|
67
|
-
send({
|
|
68
|
-
type: "auth.login",
|
|
69
|
-
username: data.get("username"),
|
|
70
|
-
});
|
|
71
|
-
}}
|
|
72
|
-
>
|
|
73
|
-
{error && <p style={{ color: "red" }}>{error}</p>}
|
|
74
|
-
<input name="username" required placeholder="Username" />
|
|
75
|
-
<button type="submit">Log In</button>
|
|
76
|
-
</form>
|
|
77
|
-
),
|
|
78
|
-
Dashboard: ({ userId, username, send }) => (
|
|
79
|
-
<div>
|
|
80
|
-
<h1>Welcome, {username}!</h1>
|
|
81
|
-
<p>User ID: {userId}</p>
|
|
82
|
-
<button onClick={() => send({ type: "auth.logout" })}>Log Out</button>
|
|
83
|
-
</div>
|
|
84
|
-
),
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
// 3. Create player actor (business logic runtime)
|
|
88
|
-
const createPlayer = definePlayer({ machine: authMachine, catalog });
|
|
89
|
-
const actor = createPlayer();
|
|
40
|
+
// 1. Create and start the actor
|
|
41
|
+
const actor = definePlayer({ machine: myMachine })();
|
|
90
42
|
actor.start();
|
|
91
43
|
|
|
92
|
-
//
|
|
93
|
-
const
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
Main renderer component subscribing to actor signals and dynamically rendering catalog components:
|
|
44
|
+
// 2. Define the component registry with action handlers
|
|
45
|
+
const registryResult = defineRegistry(myCatalog, {
|
|
46
|
+
components: { Login, Dashboard },
|
|
47
|
+
actions: {
|
|
48
|
+
login: async ({ username }) => actor.send({ type: "auth.login", username }),
|
|
49
|
+
logout: async () => actor.send({ type: "auth.logout" }),
|
|
50
|
+
},
|
|
51
|
+
});
|
|
102
52
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
53
|
+
// 3. Render — signals drive view transitions automatically
|
|
54
|
+
function App() {
|
|
55
|
+
return (
|
|
56
|
+
<PlayUIProvider actor={actor} registryResult={registryResult}>
|
|
57
|
+
<PlayRenderer />
|
|
58
|
+
</PlayUIProvider>
|
|
59
|
+
);
|
|
108
60
|
}
|
|
109
61
|
```
|
|
110
62
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
- `actor` - Actor instance with `currentView` signal
|
|
114
|
-
- `components` - Map of component names to React components
|
|
115
|
-
- `fallback` - Component shown when `currentView` is null (default: `null`)
|
|
116
|
-
|
|
117
|
-
**Behavior:**
|
|
63
|
+
### With optional `JSONUIProvider` props
|
|
118
64
|
|
|
119
|
-
|
|
120
|
-
2. Looks up component from `components` map using `view.component` string
|
|
121
|
-
3. Renders component with props from `view.props` + `send` function
|
|
65
|
+
Pass navigation and validation helpers through `PlayUIProvider`:
|
|
122
66
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
```typescript
|
|
126
|
-
<PlayRenderer
|
|
67
|
+
```tsx
|
|
68
|
+
<PlayUIProvider
|
|
127
69
|
actor={actor}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
### useSignalEffect()
|
|
137
|
-
|
|
138
|
-
Hook for subscribing to signal changes with automatic cleanup:
|
|
139
|
-
|
|
140
|
-
```typescript
|
|
141
|
-
useSignalEffect(() => {
|
|
142
|
-
const value = signal.get();
|
|
143
|
-
// React re-renders when signal changes
|
|
144
|
-
});
|
|
70
|
+
registryResult={registryResult}
|
|
71
|
+
navigate={(path) => router.push(path)}
|
|
72
|
+
validationFunctions={{ isEmail: (v) => /^.+@.+$/.test(String(v)) }}
|
|
73
|
+
>
|
|
74
|
+
<PlayRenderer />
|
|
75
|
+
</PlayUIProvider>
|
|
145
76
|
```
|
|
146
77
|
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
- Tracks signal dependencies automatically via `Signal.Computed` wrapper
|
|
150
|
-
- Uses `Signal.subtle.Watcher` with microtask batching
|
|
151
|
-
- Triggers React state update to force re-render
|
|
152
|
-
- Cleans up watcher on unmount with explicit `unwatch`
|
|
153
|
-
|
|
154
|
-
**Canonical watcher lifecycle:**
|
|
155
|
-
|
|
156
|
-
1. `notify`
|
|
157
|
-
2. `queueMicrotask`
|
|
158
|
-
3. drain pending work (`getPending` and/or `Computed.get`)
|
|
159
|
-
4. run effect + trigger render
|
|
160
|
-
5. re-arm watcher via `watch()`
|
|
161
|
-
|
|
162
|
-
Watcher notification is one-shot, so re-arm and explicit cleanup are both required.
|
|
163
|
-
|
|
164
|
-
**Example:**
|
|
165
|
-
|
|
166
|
-
```typescript
|
|
167
|
-
import { useSignalEffect } from "@xmachines/play-react";
|
|
168
|
-
import { useState } from "react";
|
|
78
|
+
### Escape hatch — custom provider composition
|
|
169
79
|
|
|
170
|
-
|
|
171
|
-
const [route, setRoute] = useState<string | null>(null);
|
|
80
|
+
Use `ActorProvider` directly when you need to compose providers manually:
|
|
172
81
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
setRoute(currentRoute);
|
|
176
|
-
});
|
|
82
|
+
```tsx
|
|
83
|
+
import { ActorProvider, JSONUIProvider, PlayRenderer } from "@xmachines/play-react";
|
|
177
84
|
|
|
178
|
-
|
|
179
|
-
}
|
|
85
|
+
<ActorProvider actor={actor} registryResult={registryResult}>
|
|
86
|
+
<JSONUIProvider registry={registryResult.registry}>
|
|
87
|
+
<PlayRenderer />
|
|
88
|
+
</JSONUIProvider>
|
|
89
|
+
</ActorProvider>;
|
|
180
90
|
```
|
|
181
91
|
|
|
182
|
-
###
|
|
92
|
+
### Accessing the actor from inside the tree
|
|
183
93
|
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
`PlayRenderer` wraps its render output in `PlayErrorBoundary` automatically. You can also use it directly to wrap any component that may throw during render.
|
|
94
|
+
```tsx
|
|
95
|
+
import { useActor } from "@xmachines/play-react";
|
|
187
96
|
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
children: React.ReactNode;
|
|
192
|
-
onError?: (error: Error, info: React.ErrorInfo) => void; // Forward to Sentry, Datadog, etc.
|
|
97
|
+
function SubmitButton() {
|
|
98
|
+
const actor = useActor();
|
|
99
|
+
return <button onClick={() => actor.send({ type: "SUBMIT" })}>Submit</button>;
|
|
193
100
|
}
|
|
194
101
|
```
|
|
195
102
|
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
- `fallback` — ReactNode rendered when a child component throws. Defaults to `null`.
|
|
199
|
-
- `onError` — Optional callback forwarded on every caught error. Use for production observability (Sentry, Datadog, custom logging).
|
|
200
|
-
|
|
201
|
-
**Example:**
|
|
103
|
+
### Subscribing to signals directly
|
|
202
104
|
|
|
203
105
|
```tsx
|
|
204
|
-
import { PlayErrorBoundary } from "@xmachines/play-react";
|
|
205
|
-
|
|
206
|
-
<PlayErrorBoundary
|
|
207
|
-
fallback={<div className="error">Something went wrong.</div>}
|
|
208
|
-
onError={(error) => Sentry.captureException(error)}
|
|
209
|
-
>
|
|
210
|
-
<YourCatalogComponent />
|
|
211
|
-
</PlayErrorBoundary>;
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
Works with React 18 and React 19. Uses the standard class component `componentDidCatch` + `getDerivedStateFromError` pattern.
|
|
215
|
-
|
|
216
|
-
## Examples
|
|
217
|
-
|
|
218
|
-
### Component Receiving Props from Catalog
|
|
219
|
-
|
|
220
|
-
```typescript
|
|
221
|
-
import { PlayRenderer } from "@xmachines/play-react";
|
|
222
|
-
import { defineCatalog } from "@xmachines/play-catalog";
|
|
223
|
-
import { z } from "zod";
|
|
224
|
-
|
|
225
|
-
// Define schema in catalog
|
|
226
|
-
const catalog = defineCatalog({
|
|
227
|
-
UserProfile: z.object({
|
|
228
|
-
userId: z.string(),
|
|
229
|
-
name: z.string(),
|
|
230
|
-
avatar: z.string().url().optional(),
|
|
231
|
-
stats: z.object({
|
|
232
|
-
posts: z.number(),
|
|
233
|
-
followers: z.number(),
|
|
234
|
-
}),
|
|
235
|
-
}),
|
|
236
|
-
});
|
|
237
|
-
|
|
238
|
-
// Component receives type-safe props + send
|
|
239
|
-
const components = {
|
|
240
|
-
UserProfile: ({ userId, name, avatar, stats, send }) => (
|
|
241
|
-
<div>
|
|
242
|
-
{avatar && <img src={avatar} alt={name} />}
|
|
243
|
-
<h1>{name}</h1>
|
|
244
|
-
<p>ID: {userId}</p>
|
|
245
|
-
<div>
|
|
246
|
-
<span>{stats.posts} posts</span>
|
|
247
|
-
<span>{stats.followers} followers</span>
|
|
248
|
-
</div>
|
|
249
|
-
<button
|
|
250
|
-
onClick={() =>
|
|
251
|
-
send({
|
|
252
|
-
type: "profile.edit",
|
|
253
|
-
userId,
|
|
254
|
-
})
|
|
255
|
-
}
|
|
256
|
-
>
|
|
257
|
-
Edit Profile
|
|
258
|
-
</button>
|
|
259
|
-
</div>
|
|
260
|
-
),
|
|
261
|
-
};
|
|
262
|
-
|
|
263
|
-
<PlayRenderer actor={actor} components={components} />;
|
|
264
|
-
```
|
|
265
|
-
|
|
266
|
-
### useSignalEffect for Custom Rendering
|
|
267
|
-
|
|
268
|
-
```typescript
|
|
269
106
|
import { useSignalEffect } from "@xmachines/play-react";
|
|
270
|
-
import { AbstractActor } from "@xmachines/play-actor";
|
|
271
107
|
|
|
272
|
-
function
|
|
108
|
+
function MyComponent({ actor }) {
|
|
273
109
|
const [view, setView] = useState(null);
|
|
274
110
|
|
|
275
|
-
// Subscribe to currentView signal
|
|
276
111
|
useSignalEffect(() => {
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
});
|
|
280
|
-
|
|
281
|
-
if (!view) return <div>No view</div>;
|
|
112
|
+
setView(actor.currentView.get());
|
|
113
|
+
}, [actor]); // deps: re-subscribe when the actor prop swaps
|
|
282
114
|
|
|
283
|
-
|
|
284
|
-
if (view.component === "SpecialCase") {
|
|
285
|
-
return <SpecialCaseComponent {...view.props} actor={actor} />;
|
|
286
|
-
}
|
|
287
|
-
|
|
288
|
-
// Fallback to standard rendering
|
|
289
|
-
return <DefaultComponent view={view} actor={actor} />;
|
|
115
|
+
return <div>{view?.component}</div>;
|
|
290
116
|
}
|
|
291
117
|
```
|
|
292
118
|
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
119
|
+
## API Summary
|
|
120
|
+
|
|
121
|
+
### Components
|
|
122
|
+
|
|
123
|
+
| Export | Description |
|
|
124
|
+
| --------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
|
|
125
|
+
| `<PlayUIProvider>` | Batteries-included provider: wraps `ActorProvider` + `JSONUIProvider`. Standard entry point. |
|
|
126
|
+
| `<PlayRenderer>` | Zero-prop leaf component. Reads the current actor view from context and renders it. Must be inside `PlayUIProvider` or `ActorProvider`. |
|
|
127
|
+
| `<ActorProvider>` | Escape-hatch primitive. Owns actor bridging, signal subscription, and per-view `StateStore` lifecycle. |
|
|
128
|
+
| `<PlayErrorBoundary>` | React class error boundary for catching catalog component render errors. |
|
|
129
|
+
|
|
130
|
+
### Hooks
|
|
131
|
+
|
|
132
|
+
| Export | Description |
|
|
133
|
+
| ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
134
|
+
| `useSignalEffect(callback, deps?)` | Subscribes to TC39 signal changes; re-runs the callback when any accessed signal changes (re-render via the callback's own setState). Optional `deps` recreates the subscription, like `useEffect`. Cleanup is automatic on unmount. |
|
|
135
|
+
| `useActor()` | Returns the raw actor instance. Must be called inside an `ActorProvider`/`PlayUIProvider` tree. |
|
|
136
|
+
| `usePlayView()` | Returns `{ spec, handlers, registry, store }` for the current view. Must be called inside an `ActorProvider`/`PlayUIProvider` tree. |
|
|
137
|
+
|
|
138
|
+
### Types
|
|
139
|
+
|
|
140
|
+
| Export | Description |
|
|
141
|
+
| ------------------------ | ---------------------------------------------------------------------------------------------- |
|
|
142
|
+
| `PlayUIProviderProps` | Props for `<PlayUIProvider>` |
|
|
143
|
+
| `ActorProviderProps` | Props for `<ActorProvider>` (also exported as `PlayRendererProps` for migration compatibility) |
|
|
144
|
+
| `PlayErrorBoundaryProps` | Props for `<PlayErrorBoundary>` |
|
|
145
|
+
| `PlayErrorBoundaryState` | State shape for `<PlayErrorBoundary>` |
|
|
146
|
+
| `AnyPlayActor` | Type alias for `AbstractActor<AnyActorLogic>` — the bare actor type used by context providers |
|
|
147
|
+
| `ViewContextValue` | Value shape returned by `usePlayView()` |
|
|
148
|
+
| `RenderErrorHandler` | Error handler callback type for render errors |
|
|
149
|
+
|
|
150
|
+
### Re-exports from `@xmachines/json-render-react`
|
|
151
|
+
|
|
152
|
+
`@xmachines/play-react` re-exports the full `@xmachines/json-render-react` surface so consumers only need one import:
|
|
153
|
+
|
|
154
|
+
```ts
|
|
155
|
+
import {
|
|
156
|
+
defineRegistry,
|
|
157
|
+
useBoundProp,
|
|
158
|
+
JSONUIProvider,
|
|
159
|
+
StateProvider,
|
|
160
|
+
ActionProvider,
|
|
161
|
+
VisibilityProvider,
|
|
162
|
+
ValidationProvider,
|
|
163
|
+
Renderer,
|
|
164
|
+
} from "@xmachines/play-react";
|
|
333
165
|
```
|
|
334
166
|
|
|
335
|
-
##
|
|
336
|
-
|
|
337
|
-
This package implements **Signal-Only Reactivity (INV-05)** and **Passive Infrastructure (INV-04)**:
|
|
167
|
+
## Key Principle
|
|
338
168
|
|
|
339
|
-
|
|
340
|
-
- No useState/useReducer for business state
|
|
341
|
-
- No useEffect for side effects
|
|
342
|
-
- React only triggers renders, doesn't control state
|
|
169
|
+
React state is **never** used for business logic — only for triggering React's render cycle. Signals (`@xmachines/play-signals`) are the source of truth. `PlayUIProvider` passively observes actor signals via `useSignalEffect` and re-renders when the current view changes. Rapid signal updates are batched via microtasks to prevent unnecessary React renders.
|
|
343
170
|
|
|
344
|
-
|
|
345
|
-
- `actor.currentView.get()` provides UI structure
|
|
346
|
-
- `actor.currentRoute.get()` provides navigation state
|
|
347
|
-
- Components observe signals via `useSignalEffect`
|
|
171
|
+
## Testing
|
|
348
172
|
|
|
349
|
-
|
|
350
|
-
- Components receive `send` function via props
|
|
351
|
-
- User actions send events to actor (e.g., `{ type: "auth.login" }`)
|
|
352
|
-
- Actor guards validate and process events
|
|
173
|
+
Run unit tests (jsdom environment):
|
|
353
174
|
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
- Single React render per microtask batch
|
|
358
|
-
|
|
359
|
-
5. **Explicit Disposal Contract:**
|
|
360
|
-
- Component teardown must call watcher `unwatch` in cleanup
|
|
361
|
-
- Do not rely on GC-only cleanup
|
|
362
|
-
|
|
363
|
-
**Pattern:**
|
|
364
|
-
|
|
365
|
-
- Renderer receives actor via props (provider pattern)
|
|
366
|
-
- Enables composition with navigation, headers, footers
|
|
367
|
-
- Supports multiple renderers in same app
|
|
368
|
-
|
|
369
|
-
**Architectural Invariants:**
|
|
175
|
+
```bash
|
|
176
|
+
pnpm --filter @xmachines/play-react test
|
|
177
|
+
```
|
|
370
178
|
|
|
371
|
-
|
|
372
|
-
- **Passive Infrastructure (INV-04):** Components reflect, never decide
|
|
179
|
+
Run tests with coverage:
|
|
373
180
|
|
|
374
|
-
|
|
181
|
+
```bash
|
|
182
|
+
pnpm --filter @xmachines/play-react run test:coverage
|
|
183
|
+
```
|
|
375
184
|
|
|
376
|
-
|
|
377
|
-
- **Type Safety:** Props validated against catalog schemas
|
|
378
|
-
- **Simple Testing:** Test actors without React renderer
|
|
379
|
-
- **Performance:** Microtask batching reduces unnecessary renders
|
|
380
|
-
- **Composability:** Renderer prop enables complex layouts ()
|
|
185
|
+
Run browser integration tests (requires Chromium):
|
|
381
186
|
|
|
382
|
-
|
|
187
|
+
```bash
|
|
188
|
+
pnpm --filter @xmachines/play-react run test:browser
|
|
189
|
+
```
|
|
383
190
|
|
|
384
|
-
|
|
385
|
-
- **[@xmachines/play-catalog](../play-catalog/README.md)** - UI schema validation
|
|
386
|
-
- **[@xmachines/play-tanstack-react-router](../play-tanstack-react-router/README.md)** - TanStack Router integration
|
|
387
|
-
- **[@xmachines/play-actor](../play-actor/README.md)** - Actor base
|
|
388
|
-
- **[@xmachines/play-signals](../play-signals/README.md)** - TC39 Signals primitives
|
|
191
|
+
Coverage thresholds: 80% lines, functions, branches, and statements.
|
|
389
192
|
|
|
390
193
|
## License
|
|
391
194
|
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
This work is licensed under the terms of the MIT license.
|
|
395
|
-
For a copy, see <https://opensource.org/licenses/MIT>.
|
|
195
|
+
MIT — see [LICENSE](./LICENSE).
|
|
396
196
|
|
|
397
197
|
@xmachines/play-react - React renderer for XMachines Play architecture
|
|
398
198
|
|
|
399
|
-
Provides a
|
|
400
|
-
and renders UI components
|
|
199
|
+
Provides a provider-based React rendering layer that passively observes actor signals
|
|
200
|
+
and renders UI components via @xmachines/json-render-react. This package enables
|
|
401
201
|
framework-swappable architecture where React is just a rendering target
|
|
402
202
|
that subscribes to signal changes.
|
|
403
203
|
|
|
404
204
|
**Key principle:** React state is NEVER used for business logic—only for
|
|
405
205
|
triggering React's render cycle. Signals are the source of truth.
|
|
406
206
|
|
|
207
|
+
**Standard usage:**
|
|
208
|
+
|
|
209
|
+
```tsx
|
|
210
|
+
<PlayUIProvider actor={actor} registryResult={registryResult}>
|
|
211
|
+
<PlayRenderer />
|
|
212
|
+
</PlayUIProvider>
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
**Escape hatch (custom composition):**
|
|
216
|
+
|
|
217
|
+
```tsx
|
|
218
|
+
<ActorProvider actor={actor} registryResult={registryResult}>
|
|
219
|
+
<JSONUIProvider registry={registryResult.registry}>
|
|
220
|
+
<PlayRenderer />
|
|
221
|
+
</JSONUIProvider>
|
|
222
|
+
</ActorProvider>
|
|
223
|
+
```
|
|
224
|
+
|
|
407
225
|
## Classes
|
|
408
226
|
|
|
409
227
|
- [PlayErrorBoundary](classes/PlayErrorBoundary.md)
|
|
410
228
|
|
|
411
229
|
## Interfaces
|
|
412
230
|
|
|
231
|
+
- [ActionProviderProps](interfaces/ActionProviderProps.md)
|
|
232
|
+
- [ActorProviderProps](interfaces/ActorProviderProps.md)
|
|
233
|
+
- [ComponentContext](interfaces/ComponentContext.md)
|
|
234
|
+
- [JSONUIProviderProps](interfaces/JSONUIProviderProps.md)
|
|
413
235
|
- [PlayErrorBoundaryProps](interfaces/PlayErrorBoundaryProps.md)
|
|
414
236
|
- [PlayErrorBoundaryState](interfaces/PlayErrorBoundaryState.md)
|
|
415
|
-
- [
|
|
237
|
+
- [PlayUIProviderProps](interfaces/PlayUIProviderProps.md)
|
|
238
|
+
- [RendererProps](interfaces/RendererProps.md)
|
|
239
|
+
- [StateProviderProps](interfaces/StateProviderProps.md)
|
|
240
|
+
- [ValidationProviderProps](interfaces/ValidationProviderProps.md)
|
|
241
|
+
- [ViewContextValue](interfaces/ViewContextValue.md)
|
|
242
|
+
- [VisibilityProviderProps](interfaces/VisibilityProviderProps.md)
|
|
243
|
+
|
|
244
|
+
## Type Aliases
|
|
245
|
+
|
|
246
|
+
- [AnyPlayActor](type-aliases/AnyPlayActor.md)
|
|
247
|
+
- [ComponentFn](type-aliases/ComponentFn.md)
|
|
248
|
+
- [RenderErrorHandler](type-aliases/RenderErrorHandler.md)
|
|
416
249
|
|
|
417
250
|
## Variables
|
|
418
251
|
|
|
252
|
+
- [ActorProvider](variables/ActorProvider.md)
|
|
419
253
|
- [PlayRenderer](variables/PlayRenderer.md)
|
|
254
|
+
- [PlayUIProvider](variables/PlayUIProvider.md)
|
|
420
255
|
|
|
421
256
|
## Functions
|
|
422
257
|
|
|
258
|
+
- [ActionProvider](functions/ActionProvider.md)
|
|
259
|
+
- [defineRegistry](functions/defineRegistry.md)
|
|
260
|
+
- [JSONUIProvider](functions/JSONUIProvider.md)
|
|
261
|
+
- [Renderer](functions/Renderer.md)
|
|
262
|
+
- [StateProvider](functions/StateProvider.md)
|
|
263
|
+
- [useActor](functions/useActor.md)
|
|
264
|
+
- [useBoundProp](functions/useBoundProp.md)
|
|
265
|
+
- [usePlayView](functions/usePlayView.md)
|
|
423
266
|
- [useSignalEffect](functions/useSignalEffect.md)
|
|
267
|
+
- [ValidationProvider](functions/ValidationProvider.md)
|
|
268
|
+
- [VisibilityProvider](functions/VisibilityProvider.md)
|
|
269
|
+
|
|
270
|
+
## References
|
|
271
|
+
|
|
272
|
+
### PlayRendererProps
|
|
273
|
+
|
|
274
|
+
Renames and re-exports [ActorProviderProps](interfaces/ActorProviderProps.md)
|