@xmachines/docs 4.0.0 → 5.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -6
- package/api/@xmachines/play/README.md +21 -21
- package/api/@xmachines/play/errors/classes/NonNullableError.md +4 -4
- package/api/@xmachines/play/errors/classes/PlayError.md +5 -4
- package/api/@xmachines/play/index/README.md +2 -2
- package/api/@xmachines/play/index/functions/asCleanup.md +4 -5
- package/api/@xmachines/play/index/functions/assertNonNullable.md +1 -1
- package/api/@xmachines/play/index/functions/shallowEqualExcept.md +1 -1
- package/api/@xmachines/play/index/type-aliases/Cleanup.md +3 -3
- package/api/@xmachines/play/index/type-aliases/DisposeKey.md +1 -1
- package/api/@xmachines/play/index/type-aliases/PlayEvent.md +2 -2
- package/api/@xmachines/play/index/variables/DISPOSE.md +1 -1
- package/api/@xmachines/play-actor/README.md +9 -9
- package/api/@xmachines/play-actor/interfaces/ActorEvent.md +2 -2
- package/api/@xmachines/play-actor/interfaces/PlayActor.md +6 -6
- package/api/@xmachines/play-atom/README.md +281 -0
- package/api/@xmachines/play-atom/functions/watchAtom.md +79 -0
- package/api/@xmachines/play-atom/interfaces/AsyncAtomOptions.md +16 -0
- package/api/@xmachines/play-atom/interfaces/Atom.md +149 -0
- package/api/@xmachines/play-atom/interfaces/AtomObserver.md +25 -0
- package/api/@xmachines/play-atom/interfaces/AtomOptions.md +33 -0
- package/api/@xmachines/play-atom/interfaces/AtomSubscription.md +23 -0
- package/api/@xmachines/play-atom/interfaces/BaseAtom.md +97 -0
- package/api/@xmachines/play-atom/interfaces/CreateAtom.md +91 -0
- package/api/@xmachines/play-atom/interfaces/Readable.md +93 -0
- package/api/@xmachines/play-atom/interfaces/ReadonlyAtom.md +108 -0
- package/api/@xmachines/play-atom/type-aliases/AnyAtom.md +13 -0
- package/api/@xmachines/play-atom/type-aliases/AsyncAtomState.md +32 -0
- package/api/@xmachines/{play-signals → play-atom}/type-aliases/Cleanup.md +4 -4
- package/api/@xmachines/play-atom/variables/createAsyncAtom.md +42 -0
- package/api/@xmachines/play-atom/variables/createAtom.md +18 -0
- package/api/@xmachines/play-atom/variables/createWritableAtom.md +70 -0
- package/api/@xmachines/play-dom/README.md +21 -17
- package/api/@xmachines/play-dom/classes/PlayRenderer.md +10 -10
- package/api/@xmachines/play-dom/functions/asCleanup.md +4 -5
- package/api/@xmachines/play-dom/functions/createPlayUI.md +1 -1
- package/api/@xmachines/play-dom/functions/createRenderer.md +1 -1
- package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +3 -3
- package/api/@xmachines/play-dom/interfaces/MountOptions.md +3 -3
- package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +6 -6
- package/api/@xmachines/play-dom/type-aliases/Cleanup.md +3 -3
- package/api/@xmachines/play-dom/type-aliases/MountFn.md +1 -1
- package/api/@xmachines/play-dom-router/README.md +24 -24
- package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +15 -15
- package/api/@xmachines/play-dom-router/classes/RouteMap.md +11 -11
- package/api/@xmachines/play-dom-router/functions/asCleanup.md +4 -5
- package/api/@xmachines/play-dom-router/functions/connectRouter.md +1 -1
- package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +1 -1
- package/api/@xmachines/play-dom-router/functions/createRouter.md +1 -1
- package/api/@xmachines/play-dom-router/interfaces/BasePathOptions.md +3 -7
- package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +15 -15
- package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +14 -14
- package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +11 -9
- package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +7 -7
- package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +6 -6
- package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +10 -4
- package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +15 -17
- package/api/@xmachines/play-dom-router/interfaces/RouterConnection.md +7 -7
- package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +5 -5
- package/api/@xmachines/play-dom-router/type-aliases/Cleanup.md +3 -3
- package/api/@xmachines/play-dom-router/variables/DISPOSE.md +1 -1
- package/api/@xmachines/play-pattern/README.md +115 -0
- package/api/@xmachines/play-pattern/functions/buildPath.md +46 -0
- package/api/@xmachines/play-pattern/functions/createPatternCache.md +47 -0
- package/api/@xmachines/play-pattern/functions/getIndexKey.md +30 -0
- package/api/@xmachines/play-pattern/functions/isDotSegment.md +40 -0
- package/api/@xmachines/play-pattern/functions/parsePattern.md +28 -0
- package/api/@xmachines/play-pattern/interfaces/GroupPart.md +15 -0
- package/api/@xmachines/play-pattern/interfaces/LiteralPart.md +14 -0
- package/api/@xmachines/play-pattern/interfaces/ParamPart.md +21 -0
- package/api/@xmachines/play-pattern/interfaces/ParseOptions.md +19 -0
- package/api/@xmachines/play-pattern/interfaces/ParsedPattern.md +23 -0
- package/api/@xmachines/play-pattern/interfaces/PatternCache.md +65 -0
- package/api/@xmachines/play-pattern/interfaces/PatternParam.md +15 -0
- package/api/@xmachines/play-pattern/type-aliases/PathBuildResult.md +74 -0
- package/api/@xmachines/play-pattern/type-aliases/PathParams.md +15 -0
- package/api/@xmachines/play-pattern/type-aliases/PatternModifier.md +11 -0
- package/api/@xmachines/play-pattern/type-aliases/PatternPart.md +9 -0
- package/api/@xmachines/play-react/README.md +31 -21
- package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +6 -6
- package/api/@xmachines/play-react/functions/useActor.md +1 -1
- package/api/@xmachines/play-react/functions/useAtomEffect.md +103 -0
- package/api/@xmachines/play-react/functions/usePlayView.md +1 -1
- package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +8 -8
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +6 -6
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +4 -4
- package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +8 -8
- package/api/@xmachines/play-react/interfaces/ViewContextValue.md +5 -5
- package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +1 -1
- package/api/@xmachines/play-react/variables/ActorProvider.md +2 -2
- package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-react/variables/PlayUIProvider.md +1 -1
- package/api/@xmachines/play-react-router/README.md +3 -3
- package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +15 -15
- package/api/@xmachines/play-react-router/classes/RouteMap.md +11 -11
- package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +1 -1
- package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +5 -5
- package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +7 -7
- package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +11 -9
- package/api/@xmachines/play-react-router/interfaces/RoutableActor.md +6 -6
- package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +10 -4
- package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +15 -17
- package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +14 -7
- package/api/@xmachines/play-react-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
- package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-router/README.md +25 -14
- package/api/@xmachines/play-router/errors/classes/DuplicateBridgeError.md +4 -4
- package/api/@xmachines/play-router/errors/classes/DuplicateRoutePathError.md +5 -5
- package/api/@xmachines/play-router/errors/classes/EmptyRoutePathError.md +5 -5
- package/api/@xmachines/play-router/errors/classes/InvalidBasePathError.md +5 -5
- package/api/@xmachines/play-router/errors/classes/InvalidRoutePatternError.md +5 -5
- package/api/@xmachines/play-router/errors/classes/InvalidStateIdError.md +5 -5
- package/api/@xmachines/play-router/errors/classes/MissingBasePathParamError.md +6 -6
- package/api/@xmachines/play-router/errors/classes/RouterSyncError.md +4 -4
- package/api/@xmachines/play-router/errors/classes/UnknownStateTypeError.md +6 -6
- package/api/@xmachines/play-router/index/README.md +10 -2
- package/api/@xmachines/play-router/index/classes/RouteMap.md +11 -11
- package/api/@xmachines/play-router/index/classes/RouterBridgeBase.md +10 -10
- package/api/@xmachines/play-router/index/functions/buildPlayRouteEvent.md +1 -1
- package/api/@xmachines/play-router/index/functions/buildRouteTree.md +1 -1
- package/api/@xmachines/play-router/index/functions/cleanFrameworkParams.md +1 -1
- package/api/@xmachines/play-router/index/functions/createPatternCache.md +47 -0
- package/api/@xmachines/play-router/index/functions/createRouteMapFromTree.md +5 -5
- package/api/@xmachines/play-router/index/functions/createRouterConnection.md +1 -1
- package/api/@xmachines/play-router/index/functions/detectDuplicateRoutes.md +1 -1
- package/api/@xmachines/play-router/index/functions/extractQuery.md +1 -1
- package/api/@xmachines/play-router/index/functions/extractRouteParams.md +7 -6
- package/api/@xmachines/play-router/index/functions/findRouteById.md +1 -1
- package/api/@xmachines/play-router/index/functions/findRouteByPath.md +13 -6
- package/api/@xmachines/play-router/index/functions/isMountableBridge.md +1 -1
- package/api/@xmachines/play-router/index/functions/joinBasePath.md +2 -1
- package/api/@xmachines/play-router/index/functions/mountKey.md +1 -1
- package/api/@xmachines/play-router/index/functions/normalizeBasePath.md +1 -1
- package/api/@xmachines/play-router/index/functions/openProviderBridge.md +3 -3
- package/api/@xmachines/play-router/index/functions/parsePattern.md +28 -0
- package/api/@xmachines/play-router/index/functions/pickOwnParams.md +1 -1
- package/api/@xmachines/play-router/index/functions/repointProviderBridge.md +1 -1
- package/api/@xmachines/play-router/index/functions/resolveBasePath.md +1 -1
- package/api/@xmachines/play-router/index/functions/resolveFrameworkParams.md +5 -5
- package/api/@xmachines/play-router/index/functions/sanitizePathname.md +9 -24
- package/api/@xmachines/play-router/index/functions/splitLocation.md +37 -0
- package/api/@xmachines/play-router/index/functions/stripBasePath.md +1 -1
- package/api/@xmachines/play-router/index/functions/validateRouteFormat.md +1 -1
- package/api/@xmachines/play-router/index/functions/validateStateExists.md +1 -1
- package/api/@xmachines/play-router/index/interfaces/BasePathOptions.md +4 -4
- package/api/@xmachines/play-router/index/interfaces/BuildPlayRouteEventOptions.md +4 -4
- package/api/@xmachines/play-router/index/interfaces/CompileOptions.md +35 -0
- package/api/@xmachines/play-router/index/interfaces/FrameworkParamsSource.md +13 -8
- package/api/@xmachines/play-router/index/interfaces/LocationLike.md +3 -3
- package/api/@xmachines/play-router/index/interfaces/MountableRouterBridge.md +9 -9
- package/api/@xmachines/play-router/index/interfaces/OpenProviderBridgeArgs.md +11 -9
- package/api/@xmachines/play-router/index/interfaces/ParseOptions.md +24 -0
- package/api/@xmachines/play-router/index/interfaces/ParsedPattern.md +23 -0
- package/api/@xmachines/play-router/index/interfaces/PatternCache.md +65 -0
- package/api/@xmachines/play-router/index/interfaces/PlayRouteEvent.md +7 -7
- package/api/@xmachines/play-router/index/interfaces/PlayRouterProviderBaseProps.md +15 -9
- package/api/@xmachines/play-router/index/interfaces/ResolvedBasePath.md +3 -3
- package/api/@xmachines/play-router/index/interfaces/ResolvedRoutePath.md +3 -3
- package/api/@xmachines/play-router/index/interfaces/Routable.md +5 -5
- package/api/@xmachines/play-router/index/interfaces/RoutableActor.md +6 -6
- package/api/@xmachines/play-router/index/interfaces/RouteInfo.md +8 -8
- package/api/@xmachines/play-router/index/interfaces/RouteMapOptions.md +10 -4
- package/api/@xmachines/play-router/index/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-router/index/interfaces/RouteMatch.md +3 -3
- package/api/@xmachines/play-router/index/interfaces/RouteNode.md +10 -10
- package/api/@xmachines/play-router/index/interfaces/RouteObject.md +5 -5
- package/api/@xmachines/play-router/index/interfaces/RouteTree.md +5 -5
- package/api/@xmachines/play-router/index/interfaces/RouteWatcherHandle.md +11 -11
- package/api/@xmachines/play-router/index/interfaces/RouterBridge.md +15 -17
- package/api/@xmachines/play-router/index/interfaces/RouterBridgeOptions.md +31 -0
- package/api/@xmachines/play-router/index/interfaces/RouterConnection.md +7 -7
- package/api/@xmachines/play-router/index/interfaces/SplitLocation.md +16 -0
- package/api/@xmachines/play-router/index/interfaces/WindowLike.md +3 -3
- package/api/@xmachines/play-router/index/type-aliases/PlayRouterBridgeConstructor.md +14 -7
- package/api/@xmachines/play-router/index/type-aliases/RouteData.md +1 -1
- package/api/@xmachines/play-router/index/type-aliases/RouteDataResolver.md +1 -1
- package/api/@xmachines/play-router/index/type-aliases/RouteMetadata.md +1 -1
- package/api/@xmachines/play-router/index/type-aliases/URLPatternLike.md +68 -0
- package/api/@xmachines/play-router/index/variables/DISPOSE.md +1 -1
- package/api/@xmachines/play-router/index/variables/NO_BASE_PATH.md +1 -1
- package/api/@xmachines/play-router/index/variables/ROOT_NODE_ID.md +1 -1
- package/api/@xmachines/play-router/xstate/functions/createRouteMap.md +5 -5
- package/api/@xmachines/play-router/xstate/functions/extractMachineRoutes.md +6 -5
- package/api/@xmachines/play-router/xstate/functions/getNavigableRoutes.md +1 -1
- package/api/@xmachines/play-router/xstate/functions/getRoutableRoutes.md +1 -1
- package/api/@xmachines/play-router/xstate/functions/getRouteMappings.md +1 -1
- package/api/@xmachines/play-router/xstate/functions/getTransitionReachableRoutes.md +1 -1
- package/api/@xmachines/play-router/xstate/functions/isRouteReachable.md +1 -1
- package/api/@xmachines/play-router/xstate/functions/machineToGraph.md +1 -1
- package/api/@xmachines/play-router/xstate/functions/routeExists.md +1 -1
- package/api/@xmachines/play-router/xstate/interfaces/MachineEdgeData.md +3 -3
- package/api/@xmachines/play-router/xstate/interfaces/MachineNodeData.md +5 -5
- package/api/@xmachines/play-router/xstate/type-aliases/MachineGraph.md +1 -1
- package/api/@xmachines/play-solid/README.md +9 -5
- package/api/@xmachines/play-solid/functions/useActor.md +1 -1
- package/api/@xmachines/play-solid/functions/usePlayView.md +1 -1
- package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +8 -8
- package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +8 -8
- package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +5 -5
- package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +1 -1
- package/api/@xmachines/play-solid/variables/ActorContext.md +1 -1
- package/api/@xmachines/play-solid/variables/ActorProvider.md +2 -2
- package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-solid/variables/PlayUIProvider.md +1 -1
- package/api/@xmachines/play-solid-router/README.md +14 -14
- package/api/@xmachines/play-solid-router/classes/RouteMap.md +11 -11
- package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +18 -18
- package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +1 -1
- package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +6 -6
- package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +7 -7
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +11 -9
- package/api/@xmachines/play-solid-router/interfaces/RoutableActor.md +6 -6
- package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +10 -4
- package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +15 -17
- package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +14 -7
- package/api/@xmachines/play-solid-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
- package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
- package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-svelte/README.md +11 -7
- package/api/@xmachines/play-svelte/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-svelte/functions/getActorContext.md +1 -1
- package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +1 -1
- package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
- package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +8 -8
- package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +4 -4
- package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +11 -11
- package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +5 -5
- package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +1 -1
- package/api/@xmachines/play-svelte-spa-router/README.md +14 -14
- package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +11 -11
- package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +15 -15
- package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +1 -1
- package/api/@xmachines/play-svelte-spa-router/interfaces/BasePathOptions.md +3 -7
- package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +11 -9
- package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +7 -7
- package/api/@xmachines/play-svelte-spa-router/interfaces/RoutableActor.md +6 -6
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +10 -4
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +15 -17
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouterConnection.md +7 -7
- package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +3 -3
- package/api/@xmachines/play-sveltekit-router/README.md +17 -17
- package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +11 -11
- package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +15 -15
- package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +1 -1
- package/api/@xmachines/play-sveltekit-router/interfaces/BasePathOptions.md +3 -7
- package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +15 -23
- package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +3 -3
- package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +7 -7
- package/api/@xmachines/play-sveltekit-router/interfaces/RoutableActor.md +6 -6
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +10 -4
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +15 -17
- package/api/@xmachines/play-sveltekit-router/interfaces/RouterConnection.md +7 -7
- package/api/@xmachines/play-tanstack-react-router/README.md +7 -7
- package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +11 -11
- package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +11 -11
- package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +5 -5
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +7 -7
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +11 -9
- package/api/@xmachines/play-tanstack-react-router/interfaces/RoutableActor.md +6 -6
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +10 -4
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +15 -17
- package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +14 -7
- package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +5 -5
- package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-tanstack-router/README.md +1 -1
- package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +16 -16
- package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +3 -3
- package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +5 -5
- package/api/@xmachines/play-tanstack-solid-router/README.md +7 -7
- package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +11 -11
- package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +11 -11
- package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +7 -7
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +11 -9
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RoutableActor.md +6 -6
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +10 -4
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +15 -17
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +14 -7
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +5 -5
- package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +1 -1
- package/api/@xmachines/play-url/README.md +21 -15
- package/api/@xmachines/play-url/errors/classes/InvalidBasePathError.md +5 -5
- package/api/@xmachines/play-url/errors/classes/InvalidRoutePatternError.md +5 -5
- package/api/@xmachines/play-url/errors/classes/MissingBasePathParamError.md +6 -6
- package/api/@xmachines/play-url/index/README.md +15 -8
- package/api/@xmachines/play-url/index/functions/buildPath.md +46 -0
- package/api/@xmachines/play-url/index/functions/cleanFrameworkParams.md +1 -1
- package/api/@xmachines/play-url/index/functions/createPatternCache.md +47 -0
- package/api/@xmachines/play-url/index/functions/getCandidates.md +1 -1
- package/api/@xmachines/play-url/index/functions/getCompiledPattern.md +8 -7
- package/api/@xmachines/play-url/index/functions/getIndexKey.md +1 -1
- package/api/@xmachines/play-url/index/functions/holdsUnsubstitutedParam.md +2 -2
- package/api/@xmachines/play-url/index/functions/isDotSegment.md +40 -0
- package/api/@xmachines/play-url/index/functions/joinBasePath.md +2 -1
- package/api/@xmachines/play-url/index/functions/normalizeBasePath.md +1 -1
- package/api/@xmachines/play-url/index/functions/parsePattern.md +6 -5
- package/api/@xmachines/play-url/index/functions/pickOwnParams.md +1 -1
- package/api/@xmachines/play-url/index/functions/resolveBasePath.md +1 -1
- package/api/@xmachines/play-url/index/functions/resolveFrameworkParams.md +5 -5
- package/api/@xmachines/play-url/index/functions/sanitizePathname.md +27 -0
- package/api/@xmachines/play-url/index/functions/splitLocation.md +37 -0
- package/api/@xmachines/play-url/index/functions/stripBasePath.md +1 -1
- package/api/@xmachines/play-url/index/interfaces/BasePathOptions.md +3 -3
- package/api/@xmachines/play-url/index/interfaces/CompileOptions.md +21 -0
- package/api/@xmachines/play-url/index/interfaces/FrameworkParamsSource.md +13 -8
- package/api/@xmachines/play-url/index/interfaces/GroupPart.md +6 -6
- package/api/@xmachines/play-url/index/interfaces/LiteralPart.md +5 -5
- package/api/@xmachines/play-url/index/interfaces/ParamPart.md +9 -9
- package/api/@xmachines/play-url/index/interfaces/ParseOptions.md +24 -0
- package/api/@xmachines/play-url/index/interfaces/ParsedPattern.md +14 -14
- package/api/@xmachines/play-url/index/interfaces/PatternCache.md +65 -0
- package/api/@xmachines/play-url/index/interfaces/PatternParam.md +6 -6
- package/api/@xmachines/play-url/index/interfaces/ResolvedBasePath.md +3 -3
- package/api/@xmachines/play-url/index/interfaces/SplitLocation.md +16 -0
- package/api/@xmachines/play-url/index/type-aliases/PathBuildResult.md +74 -0
- package/api/@xmachines/play-url/index/type-aliases/PathParams.md +15 -0
- package/api/@xmachines/play-url/index/type-aliases/PatternModifier.md +1 -1
- package/api/@xmachines/play-url/index/type-aliases/PatternPart.md +1 -1
- package/api/@xmachines/play-url/index/type-aliases/URLPatternCtor.md +1 -1
- package/api/@xmachines/play-url/index/type-aliases/URLPatternLike.md +3 -3
- package/api/@xmachines/play-url/index/variables/NO_BASE_PATH.md +1 -1
- package/api/@xmachines/play-url/index/variables/URLPattern.md +1 -1
- package/api/@xmachines/play-view/README.md +19 -8
- package/api/@xmachines/play-view/errors/classes/ReadOnlyContextError.md +5 -5
- package/api/@xmachines/play-view/index/functions/attachRenderErrorHandler.md +1 -1
- package/api/@xmachines/play-view/index/functions/composePlayState.md +1 -1
- package/api/@xmachines/play-view/index/functions/createFailureLatch.md +1 -1
- package/api/@xmachines/play-view/index/functions/createReportGuard.md +1 -1
- package/api/@xmachines/play-view/index/functions/createViewStoreLifecycle.md +1 -1
- package/api/@xmachines/play-view/index/functions/guardContextWrites.md +4 -28
- package/api/@xmachines/play-view/index/functions/refreshContextSubtree.md +1 -1
- package/api/@xmachines/play-view/index/functions/reuseComposedState.md +1 -1
- package/api/@xmachines/play-view/index/functions/sameViewInputs.md +1 -1
- package/api/@xmachines/play-view/index/functions/toAtomState.md +1 -1
- package/api/@xmachines/play-view/index/functions/typedSpec.md +1 -1
- package/api/@xmachines/play-view/index/interfaces/BaseActorProviderProps.md +5 -5
- package/api/@xmachines/play-view/index/interfaces/BaseViewContextValue.md +5 -5
- package/api/@xmachines/play-view/index/interfaces/FailureLatch.md +3 -3
- package/api/@xmachines/play-view/index/interfaces/PlaySpec.md +2 -2
- package/api/@xmachines/play-view/index/interfaces/ReportGuard.md +5 -5
- package/api/@xmachines/play-view/index/interfaces/ReportGuardMessages.md +3 -3
- package/api/@xmachines/play-view/index/interfaces/ResolveViewStoreOptions.md +2 -2
- package/api/@xmachines/play-view/index/interfaces/ViewInputs.md +4 -4
- package/api/@xmachines/play-view/index/interfaces/ViewStoreLifecycle.md +3 -3
- package/api/@xmachines/play-view/index/interfaces/ViewStoreResolution.md +4 -4
- package/api/@xmachines/play-view/index/interfaces/Viewable.md +5 -5
- package/api/@xmachines/play-view/index/type-aliases/ViewActor.md +1 -1
- package/api/@xmachines/play-view/index/variables/CONTEXT_STATE_KEY.md +1 -1
- package/api/@xmachines/play-vue/README.md +13 -9
- package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
- package/api/@xmachines/play-vue/functions/useActor.md +1 -1
- package/api/@xmachines/play-vue/functions/usePlayView.md +1 -1
- package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +6 -6
- package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +9 -9
- package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +5 -5
- package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
- package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-vue-router/README.md +12 -11
- package/api/@xmachines/play-vue-router/errors/classes/VueRouterNavigationError.md +4 -4
- package/api/@xmachines/play-vue-router/errors/classes/VueRouterSendError.md +4 -4
- package/api/@xmachines/play-vue-router/index/classes/RouteMap.md +11 -11
- package/api/@xmachines/play-vue-router/index/classes/VueRouterBridge.md +15 -15
- package/api/@xmachines/play-vue-router/index/interfaces/PlayRouteEvent.md +7 -7
- package/api/@xmachines/play-vue-router/index/interfaces/RoutableActor.md +6 -6
- package/api/@xmachines/play-vue-router/index/interfaces/RouteMapOptions.md +10 -4
- package/api/@xmachines/play-vue-router/index/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-vue-router/index/interfaces/RouterBridge.md +15 -17
- package/api/@xmachines/play-vue-router/index/variables/PlayRouterProvider.md +23 -1
- package/api/@xmachines/play-xstate/README.md +61 -30
- package/api/@xmachines/play-xstate/errors/README.md +1 -0
- package/api/@xmachines/play-xstate/errors/classes/ActorThrewNonErrorError.md +4 -4
- package/api/@xmachines/play-xstate/errors/classes/InvalidEventError.md +5 -5
- package/api/@xmachines/play-xstate/errors/classes/InvalidMachineError.md +4 -4
- package/api/@xmachines/play-xstate/errors/classes/InvalidRouteHandlerError.md +5 -5
- package/api/@xmachines/play-xstate/errors/classes/InvalidRouteMetadataError.md +5 -5
- package/api/@xmachines/play-xstate/errors/classes/InvalidRouteParamError.md +207 -0
- package/api/@xmachines/play-xstate/errors/classes/MissingRouteParamError.md +6 -6
- package/api/@xmachines/play-xstate/errors/classes/MissingStateIdError.md +6 -6
- package/api/@xmachines/play-xstate/index/README.md +2 -2
- package/api/@xmachines/play-xstate/index/classes/PlayerActor.md +41 -42
- package/api/@xmachines/play-xstate/index/functions/compose.md +4 -4
- package/api/@xmachines/play-xstate/index/functions/definePlayer.md +2 -2
- package/api/@xmachines/play-xstate/index/interfaces/PlayerConfig.md +4 -4
- package/api/@xmachines/play-xstate/index/interfaces/PlayerFactoryResumeOptions.md +2 -2
- package/api/@xmachines/play-xstate/index/interfaces/PlayerOptions.md +9 -9
- package/api/@xmachines/play-xstate/index/type-aliases/Capability.md +1 -1
- package/api/@xmachines/play-xstate/index/type-aliases/PlayerConstructor.md +1 -1
- package/api/@xmachines/play-xstate/index/type-aliases/PlayerFactory.md +1 -1
- package/api/@xmachines/play-xstate/index/variables/DISPOSE.md +1 -1
- package/api/@xmachines/play-xstate/with-routing/functions/buildRouteUrl.md +13 -6
- package/api/@xmachines/play-xstate/with-routing/functions/deriveRoute.md +1 -1
- package/api/@xmachines/play-xstate/with-routing/functions/formatPlayRouteTransitions.md +1 -1
- package/api/@xmachines/play-xstate/with-routing/functions/isAbsoluteRoute.md +1 -1
- package/api/@xmachines/play-xstate/with-routing/functions/withRouting.md +1 -1
- package/api/@xmachines/play-xstate/with-routing/interfaces/RouteContext.md +5 -5
- package/api/@xmachines/play-xstate/with-routing/interfaces/RouteObject.md +5 -5
- package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteData.md +1 -1
- package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteDataResolver.md +1 -1
- package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMachineConfig.md +4 -4
- package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMetadata.md +1 -1
- package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteStateNode.md +5 -5
- package/api/@xmachines/play-xstate/with-view/functions/withView.md +6 -5
- package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +2 -2
- package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
- package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +1 -1
- package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +4 -4
- package/api/README.md +2 -1
- package/api/llms.txt +4 -3
- package/contributing/architecture.md +105 -124
- package/contributing/configuration.md +15 -15
- package/contributing/deployment.md +82 -6
- package/contributing/development.md +58 -30
- package/contributing/migrating-to-play-atom.md +209 -0
- package/contributing/testing.md +61 -64
- package/examples/@xmachines/play-dom-demo/README.md +40 -63
- package/examples/@xmachines/play-dom-demo/functions/createAuthActionHandlers.md +35 -0
- package/examples/@xmachines/play-dom-demo/functions/createConfirmDialog.md +27 -0
- package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +2 -2
- package/examples/@xmachines/play-dom-demo/functions/initShell.md +7 -6
- package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/About.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Button.md +12 -0
- package/examples/@xmachines/play-dom-demo/variables/Contact.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Field.md +19 -0
- package/examples/@xmachines/play-dom-demo/variables/Home.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Login.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Navigation.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Overview.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Panel.md +14 -0
- package/examples/@xmachines/play-dom-demo/variables/Profile.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Settings.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/Stats.md +1 -1
- package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +190 -165
- package/examples/@xmachines/play-dom-demo/variables/demoComponents.md +30 -0
- package/examples/@xmachines/play-dom-router-demo/README.md +20 -27
- package/examples/@xmachines/play-react-demo/README.md +33 -57
- package/examples/@xmachines/play-react-demo/functions/createAuthActionHandlers.md +35 -0
- package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/About.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Button.md +12 -0
- package/examples/@xmachines/play-react-demo/variables/Contact.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Dashboard.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +4 -3
- package/examples/@xmachines/play-react-demo/variables/Field.md +18 -0
- package/examples/@xmachines/play-react-demo/variables/Home.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Login.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/NavBar.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/NavBarView.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Navigation.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Overview.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Panel.md +15 -0
- package/examples/@xmachines/play-react-demo/variables/Profile.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Settings.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/Shell.md +2 -1
- package/examples/@xmachines/play-react-demo/variables/Stats.md +1 -1
- package/examples/@xmachines/play-react-demo/variables/authCatalog.md +190 -165
- package/examples/@xmachines/play-react-demo/variables/demoComponents.md +30 -0
- package/examples/@xmachines/play-react-router-demo/README.md +32 -32
- package/examples/@xmachines/play-solid-demo/README.md +33 -57
- package/examples/@xmachines/play-solid-demo/functions/createAuthActionHandlers.md +35 -0
- package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/About.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Button.md +11 -0
- package/examples/@xmachines/play-solid-demo/variables/Contact.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +5 -3
- package/examples/@xmachines/play-solid-demo/variables/Field.md +11 -0
- package/examples/@xmachines/play-solid-demo/variables/Home.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Login.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/NavBar.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Navigation.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Overview.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Panel.md +11 -0
- package/examples/@xmachines/play-solid-demo/variables/Profile.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Settings.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/Shell.md +2 -1
- package/examples/@xmachines/play-solid-demo/variables/Stats.md +1 -1
- package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +114 -2
- package/examples/@xmachines/play-solid-demo/variables/demoComponents.md +30 -0
- package/examples/@xmachines/play-solid-router-demo/README.md +20 -23
- package/examples/@xmachines/play-svelte-demo/README.md +38 -44
- package/examples/@xmachines/play-svelte-demo/functions/createAuthActionHandlers.md +35 -0
- package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +1 -1
- package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +114 -2
- package/examples/@xmachines/play-svelte-demo/variables/demoComponents.md +30 -0
- package/examples/@xmachines/play-svelte-spa-router-demo/README.md +20 -26
- package/examples/@xmachines/play-sveltekit-router-demo/README.md +20 -26
- package/examples/@xmachines/play-tanstack-react-router-demo/README.md +29 -31
- package/examples/@xmachines/play-tanstack-solid-router-demo/README.md +25 -27
- package/examples/@xmachines/play-vue-demo/README.md +36 -60
- package/examples/@xmachines/play-vue-demo/functions/createAuthActionHandlers.md +35 -0
- package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +1 -1
- package/examples/@xmachines/play-vue-demo/variables/App.md +1 -1
- package/examples/@xmachines/play-vue-demo/variables/authCatalog.md +114 -2
- package/examples/@xmachines/play-vue-demo/variables/demoComponents.md +11 -0
- package/examples/@xmachines/play-vue-router-demo/README.md +12 -23
- package/examples/README.md +3 -3
- package/examples/basic-state-machine.md +4 -4
- package/examples/form-validation.md +1 -1
- package/examples/multi-router-integration.md +23 -23
- package/examples/routing-patterns.md +5 -5
- package/examples/traffic-light.md +6 -6
- package/guides/README.md +1 -1
- package/guides/actor-model.md +26 -17
- package/guides/atoms.md +264 -0
- package/guides/getting-started.md +52 -17
- package/guides/inspector.md +3 -3
- package/guides/routing.md +67 -47
- package/guides/state-machines.md +4 -4
- package/package.json +3 -3
- package/rfc/play.md +83 -52
- package/api/@xmachines/play-react/functions/useSignalEffect.md +0 -77
- package/api/@xmachines/play-router/index/functions/getPatternParamNames.md +0 -29
- package/api/@xmachines/play-router/index/functions/getRequiredPatternParamNames.md +0 -39
- package/api/@xmachines/play-signals/README.md +0 -209
- package/api/@xmachines/play-signals/functions/watchSignal.md +0 -65
- package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +0 -36
- package/api/@xmachines/play-signals/interfaces/SignalComputed.md +0 -49
- package/api/@xmachines/play-signals/interfaces/SignalOptions.md +0 -37
- package/api/@xmachines/play-signals/interfaces/SignalState.md +0 -68
- package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +0 -97
- package/api/@xmachines/play-signals/namespaces/Signal/README.md +0 -22
- package/api/@xmachines/play-signals/namespaces/Signal/classes/Computed.md +0 -52
- package/api/@xmachines/play-signals/namespaces/Signal/classes/State.md +0 -72
- package/api/@xmachines/play-signals/namespaces/Signal/interfaces/Options.md +0 -19
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/README.md +0 -21
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/classes/Watcher.md +0 -85
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/currentComputed.md +0 -13
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSinks.md +0 -19
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSources.md +0 -19
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSinks.md +0 -19
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSources.md +0 -19
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/untrack.md +0 -25
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/unwatched.md +0 -9
- package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/watched.md +0 -9
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isComputed.md +0 -19
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isState.md +0 -19
- package/api/@xmachines/play-signals/namespaces/Signal/variables/isWatcher.md +0 -19
- package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +0 -33
- package/api/@xmachines/play-url/index/functions/getNormalizedParamNameMap.md +0 -32
- package/api/@xmachines/play-url/index/functions/getPatternParamNames.md +0 -29
- package/api/@xmachines/play-url/index/functions/getRequiredPatternParamNames.md +0 -39
- package/api/@xmachines/play-url/index/functions/isParameterizedPattern.md +0 -36
- package/api/@xmachines/play-url/index/functions/normalizeParamNames.md +0 -36
- package/guides/signals.md +0 -209
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-atom](../README.md) / BaseAtom
|
|
2
|
+
|
|
3
|
+
# Interface: BaseAtom\<T\>
|
|
4
|
+
|
|
5
|
+
Defined in: [play-atom/src/types.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L74)
|
|
6
|
+
|
|
7
|
+
The common base of a writable atom and a computed atom
|
|
8
|
+
|
|
9
|
+
Use it for a value that a caller reads and observes, when the caller must accept
|
|
10
|
+
both kinds.
|
|
11
|
+
|
|
12
|
+
## Extends
|
|
13
|
+
|
|
14
|
+
- [`Readable`](Readable.md)\<`T`\>
|
|
15
|
+
|
|
16
|
+
## Extended by
|
|
17
|
+
|
|
18
|
+
- [`Atom`](Atom.md)
|
|
19
|
+
- [`ReadonlyAtom`](ReadonlyAtom.md)
|
|
20
|
+
|
|
21
|
+
## Type Parameters
|
|
22
|
+
|
|
23
|
+
| Type Parameter |
|
|
24
|
+
| -------------- |
|
|
25
|
+
| `T` |
|
|
26
|
+
|
|
27
|
+
## Methods
|
|
28
|
+
|
|
29
|
+
### get()
|
|
30
|
+
|
|
31
|
+
```ts
|
|
32
|
+
get(): T;
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Defined in: [play-atom/src/types.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L59)
|
|
36
|
+
|
|
37
|
+
#### Returns
|
|
38
|
+
|
|
39
|
+
`T`
|
|
40
|
+
|
|
41
|
+
#### Inherited from
|
|
42
|
+
|
|
43
|
+
[`Readable`](Readable.md).[`get`](Readable.md#get)
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
### subscribe()
|
|
48
|
+
|
|
49
|
+
#### Call Signature
|
|
50
|
+
|
|
51
|
+
```ts
|
|
52
|
+
subscribe(observer): AtomSubscription;
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Defined in: [play-atom/src/types.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L60)
|
|
56
|
+
|
|
57
|
+
##### Parameters
|
|
58
|
+
|
|
59
|
+
| Parameter | Type |
|
|
60
|
+
| ---------- | ---------------------------------------- |
|
|
61
|
+
| `observer` | [`AtomObserver`](AtomObserver.md)\<`T`\> |
|
|
62
|
+
|
|
63
|
+
##### Returns
|
|
64
|
+
|
|
65
|
+
[`AtomSubscription`](AtomSubscription.md)
|
|
66
|
+
|
|
67
|
+
##### Inherited from
|
|
68
|
+
|
|
69
|
+
[`Readable`](Readable.md).[`subscribe`](Readable.md#subscribe)
|
|
70
|
+
|
|
71
|
+
#### Call Signature
|
|
72
|
+
|
|
73
|
+
```ts
|
|
74
|
+
subscribe(
|
|
75
|
+
next,
|
|
76
|
+
error?,
|
|
77
|
+
complete?
|
|
78
|
+
): AtomSubscription;
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Defined in: [play-atom/src/types.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L61)
|
|
82
|
+
|
|
83
|
+
##### Parameters
|
|
84
|
+
|
|
85
|
+
| Parameter | Type |
|
|
86
|
+
| ----------- | ------------------- |
|
|
87
|
+
| `next` | (`value`) => `void` |
|
|
88
|
+
| `error?` | (`error`) => `void` |
|
|
89
|
+
| `complete?` | () => `void` |
|
|
90
|
+
|
|
91
|
+
##### Returns
|
|
92
|
+
|
|
93
|
+
[`AtomSubscription`](AtomSubscription.md)
|
|
94
|
+
|
|
95
|
+
##### Inherited from
|
|
96
|
+
|
|
97
|
+
[`Readable`](Readable.md).[`subscribe`](Readable.md#subscribe)
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-atom](../README.md) / CreateAtom
|
|
2
|
+
|
|
3
|
+
# Interface: CreateAtom()
|
|
4
|
+
|
|
5
|
+
Defined in: [play-atom/src/create-atom.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/create-atom.ts#L33)
|
|
6
|
+
|
|
7
|
+
The two forms of `createAtom`
|
|
8
|
+
|
|
9
|
+
A function argument builds a COMPUTED atom, which reads its dependencies and gives a
|
|
10
|
+
`ReadonlyAtom`. Any other argument builds a WRITABLE atom, which holds the value and
|
|
11
|
+
gives an `Atom`.
|
|
12
|
+
|
|
13
|
+
A computed getter reads each dependency with the `get` of that dependency, and the
|
|
14
|
+
engine records the edge as it reads. Its one parameter is the PREVIOUS value, which is
|
|
15
|
+
`undefined` on the first derivation. `@xstate/store` 3 passed a `read` helper in that
|
|
16
|
+
first position and the previous value in the second; version 4 dropped the helper,
|
|
17
|
+
because `get` tracked the edge already.
|
|
18
|
+
|
|
19
|
+
## Call Signature
|
|
20
|
+
|
|
21
|
+
```ts
|
|
22
|
+
CreateAtom<T>(getValue, options?): ReadonlyAtom<T>;
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Defined in: [play-atom/src/create-atom.ts:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/create-atom.ts#L34)
|
|
26
|
+
|
|
27
|
+
The two forms of `createAtom`
|
|
28
|
+
|
|
29
|
+
A function argument builds a COMPUTED atom, which reads its dependencies and gives a
|
|
30
|
+
`ReadonlyAtom`. Any other argument builds a WRITABLE atom, which holds the value and
|
|
31
|
+
gives an `Atom`.
|
|
32
|
+
|
|
33
|
+
A computed getter reads each dependency with the `get` of that dependency, and the
|
|
34
|
+
engine records the edge as it reads. Its one parameter is the PREVIOUS value, which is
|
|
35
|
+
`undefined` on the first derivation. `@xstate/store` 3 passed a `read` helper in that
|
|
36
|
+
first position and the previous value in the second; version 4 dropped the helper,
|
|
37
|
+
because `get` tracked the edge already.
|
|
38
|
+
|
|
39
|
+
### Type Parameters
|
|
40
|
+
|
|
41
|
+
| Type Parameter |
|
|
42
|
+
| -------------- |
|
|
43
|
+
| `T` |
|
|
44
|
+
|
|
45
|
+
### Parameters
|
|
46
|
+
|
|
47
|
+
| Parameter | Type |
|
|
48
|
+
| ---------- | -------------------------------------- |
|
|
49
|
+
| `getValue` | (`previous?`) => `T` |
|
|
50
|
+
| `options?` | [`AtomOptions`](AtomOptions.md)\<`T`\> |
|
|
51
|
+
|
|
52
|
+
### Returns
|
|
53
|
+
|
|
54
|
+
[`ReadonlyAtom`](ReadonlyAtom.md)\<`T`\>
|
|
55
|
+
|
|
56
|
+
## Call Signature
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
CreateAtom<T>(initialValue, options?): Atom<T>;
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Defined in: [play-atom/src/create-atom.ts:35](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/create-atom.ts#L35)
|
|
63
|
+
|
|
64
|
+
The two forms of `createAtom`
|
|
65
|
+
|
|
66
|
+
A function argument builds a COMPUTED atom, which reads its dependencies and gives a
|
|
67
|
+
`ReadonlyAtom`. Any other argument builds a WRITABLE atom, which holds the value and
|
|
68
|
+
gives an `Atom`.
|
|
69
|
+
|
|
70
|
+
A computed getter reads each dependency with the `get` of that dependency, and the
|
|
71
|
+
engine records the edge as it reads. Its one parameter is the PREVIOUS value, which is
|
|
72
|
+
`undefined` on the first derivation. `@xstate/store` 3 passed a `read` helper in that
|
|
73
|
+
first position and the previous value in the second; version 4 dropped the helper,
|
|
74
|
+
because `get` tracked the edge already.
|
|
75
|
+
|
|
76
|
+
### Type Parameters
|
|
77
|
+
|
|
78
|
+
| Type Parameter |
|
|
79
|
+
| -------------- |
|
|
80
|
+
| `T` |
|
|
81
|
+
|
|
82
|
+
### Parameters
|
|
83
|
+
|
|
84
|
+
| Parameter | Type |
|
|
85
|
+
| -------------- | -------------------------------------- |
|
|
86
|
+
| `initialValue` | `T` |
|
|
87
|
+
| `options?` | [`AtomOptions`](AtomOptions.md)\<`T`\> |
|
|
88
|
+
|
|
89
|
+
### Returns
|
|
90
|
+
|
|
91
|
+
[`Atom`](Atom.md)\<`T`\>
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-atom](../README.md) / Readable
|
|
2
|
+
|
|
3
|
+
# Interface: Readable\<T\>
|
|
4
|
+
|
|
5
|
+
Defined in: [play-atom/src/types.ts:58](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L58)
|
|
6
|
+
|
|
7
|
+
The read side of an atom
|
|
8
|
+
|
|
9
|
+
`Readable` holds `get()` and `subscribe()`. A function that only READS an atom takes
|
|
10
|
+
this type, and it therefore accepts an `Atom`, a `ReadonlyAtom`, and a store
|
|
11
|
+
selection alike.
|
|
12
|
+
|
|
13
|
+
## Example
|
|
14
|
+
|
|
15
|
+
```typescript
|
|
16
|
+
import { createAtom, type Readable } from "@xmachines/play-atom";
|
|
17
|
+
|
|
18
|
+
function show(source: Readable<string>): string {
|
|
19
|
+
return source.get();
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
show(createAtom("ready")); // "ready"
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Extended by
|
|
26
|
+
|
|
27
|
+
- [`BaseAtom`](BaseAtom.md)
|
|
28
|
+
|
|
29
|
+
## Type Parameters
|
|
30
|
+
|
|
31
|
+
| Type Parameter |
|
|
32
|
+
| -------------- |
|
|
33
|
+
| `T` |
|
|
34
|
+
|
|
35
|
+
## Methods
|
|
36
|
+
|
|
37
|
+
### get()
|
|
38
|
+
|
|
39
|
+
```ts
|
|
40
|
+
get(): T;
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Defined in: [play-atom/src/types.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L59)
|
|
44
|
+
|
|
45
|
+
#### Returns
|
|
46
|
+
|
|
47
|
+
`T`
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
### subscribe()
|
|
52
|
+
|
|
53
|
+
#### Call Signature
|
|
54
|
+
|
|
55
|
+
```ts
|
|
56
|
+
subscribe(observer): AtomSubscription;
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Defined in: [play-atom/src/types.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L60)
|
|
60
|
+
|
|
61
|
+
##### Parameters
|
|
62
|
+
|
|
63
|
+
| Parameter | Type |
|
|
64
|
+
| ---------- | ---------------------------------------- |
|
|
65
|
+
| `observer` | [`AtomObserver`](AtomObserver.md)\<`T`\> |
|
|
66
|
+
|
|
67
|
+
##### Returns
|
|
68
|
+
|
|
69
|
+
[`AtomSubscription`](AtomSubscription.md)
|
|
70
|
+
|
|
71
|
+
#### Call Signature
|
|
72
|
+
|
|
73
|
+
```ts
|
|
74
|
+
subscribe(
|
|
75
|
+
next,
|
|
76
|
+
error?,
|
|
77
|
+
complete?
|
|
78
|
+
): AtomSubscription;
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Defined in: [play-atom/src/types.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L61)
|
|
82
|
+
|
|
83
|
+
##### Parameters
|
|
84
|
+
|
|
85
|
+
| Parameter | Type |
|
|
86
|
+
| ----------- | ------------------- |
|
|
87
|
+
| `next` | (`value`) => `void` |
|
|
88
|
+
| `error?` | (`error`) => `void` |
|
|
89
|
+
| `complete?` | () => `void` |
|
|
90
|
+
|
|
91
|
+
##### Returns
|
|
92
|
+
|
|
93
|
+
[`AtomSubscription`](AtomSubscription.md)
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-atom](../README.md) / ReadonlyAtom
|
|
2
|
+
|
|
3
|
+
# Interface: ReadonlyAtom\<T\>
|
|
4
|
+
|
|
5
|
+
Defined in: [play-atom/src/types.ts:97](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L97)
|
|
6
|
+
|
|
7
|
+
The computed atom. It evaluates late, and it memoizes the result
|
|
8
|
+
|
|
9
|
+
`createAtom` returns this type for a function argument. The atom tracks each
|
|
10
|
+
dependency when it runs the function, and it runs the function again only after a
|
|
11
|
+
dependency changes. The atom therefore tracks each dependency for you, and you
|
|
12
|
+
manage no subscription.
|
|
13
|
+
|
|
14
|
+
## Example
|
|
15
|
+
|
|
16
|
+
```typescript
|
|
17
|
+
import { createAtom } from "@xmachines/play-atom";
|
|
18
|
+
|
|
19
|
+
const count = createAtom(0);
|
|
20
|
+
const doubled = createAtom(() => count.get() * 2);
|
|
21
|
+
|
|
22
|
+
console.log(doubled.get()); // 0
|
|
23
|
+
count.set(5);
|
|
24
|
+
console.log(doubled.get()); // 10 (the atom computed it again)
|
|
25
|
+
console.log(doubled.get()); // 10 (from the memory, with no new computation)
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Extends
|
|
29
|
+
|
|
30
|
+
- [`BaseAtom`](BaseAtom.md)\<`T`\>
|
|
31
|
+
|
|
32
|
+
## Type Parameters
|
|
33
|
+
|
|
34
|
+
| Type Parameter |
|
|
35
|
+
| -------------- |
|
|
36
|
+
| `T` |
|
|
37
|
+
|
|
38
|
+
## Methods
|
|
39
|
+
|
|
40
|
+
### get()
|
|
41
|
+
|
|
42
|
+
```ts
|
|
43
|
+
get(): T;
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Defined in: [play-atom/src/types.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L59)
|
|
47
|
+
|
|
48
|
+
#### Returns
|
|
49
|
+
|
|
50
|
+
`T`
|
|
51
|
+
|
|
52
|
+
#### Inherited from
|
|
53
|
+
|
|
54
|
+
[`BaseAtom`](BaseAtom.md).[`get`](BaseAtom.md#get)
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
### subscribe()
|
|
59
|
+
|
|
60
|
+
#### Call Signature
|
|
61
|
+
|
|
62
|
+
```ts
|
|
63
|
+
subscribe(observer): AtomSubscription;
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Defined in: [play-atom/src/types.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L60)
|
|
67
|
+
|
|
68
|
+
##### Parameters
|
|
69
|
+
|
|
70
|
+
| Parameter | Type |
|
|
71
|
+
| ---------- | ---------------------------------------- |
|
|
72
|
+
| `observer` | [`AtomObserver`](AtomObserver.md)\<`T`\> |
|
|
73
|
+
|
|
74
|
+
##### Returns
|
|
75
|
+
|
|
76
|
+
[`AtomSubscription`](AtomSubscription.md)
|
|
77
|
+
|
|
78
|
+
##### Inherited from
|
|
79
|
+
|
|
80
|
+
[`BaseAtom`](BaseAtom.md).[`subscribe`](BaseAtom.md#subscribe)
|
|
81
|
+
|
|
82
|
+
#### Call Signature
|
|
83
|
+
|
|
84
|
+
```ts
|
|
85
|
+
subscribe(
|
|
86
|
+
next,
|
|
87
|
+
error?,
|
|
88
|
+
complete?
|
|
89
|
+
): AtomSubscription;
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Defined in: [play-atom/src/types.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L61)
|
|
93
|
+
|
|
94
|
+
##### Parameters
|
|
95
|
+
|
|
96
|
+
| Parameter | Type |
|
|
97
|
+
| ----------- | ------------------- |
|
|
98
|
+
| `next` | (`value`) => `void` |
|
|
99
|
+
| `error?` | (`error`) => `void` |
|
|
100
|
+
| `complete?` | () => `void` |
|
|
101
|
+
|
|
102
|
+
##### Returns
|
|
103
|
+
|
|
104
|
+
[`AtomSubscription`](AtomSubscription.md)
|
|
105
|
+
|
|
106
|
+
##### Inherited from
|
|
107
|
+
|
|
108
|
+
[`BaseAtom`](BaseAtom.md).[`subscribe`](BaseAtom.md#subscribe)
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-atom](../README.md) / AnyAtom
|
|
2
|
+
|
|
3
|
+
# Type Alias: AnyAtom
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type AnyAtom = BaseAtom<unknown>;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [play-atom/src/types.ts:129](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L129)
|
|
10
|
+
|
|
11
|
+
An atom of an unknown value type
|
|
12
|
+
|
|
13
|
+
Use it for a collection that holds atoms of mixed types.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-atom](../README.md) / AsyncAtomState
|
|
2
|
+
|
|
3
|
+
# Type Alias: AsyncAtomState\<TData, TError\>
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type AsyncAtomState<TData, TError> =
|
|
7
|
+
| {
|
|
8
|
+
status: "pending";
|
|
9
|
+
}
|
|
10
|
+
| {
|
|
11
|
+
data: TData;
|
|
12
|
+
status: "done";
|
|
13
|
+
}
|
|
14
|
+
| {
|
|
15
|
+
error: TError;
|
|
16
|
+
status: "error";
|
|
17
|
+
};
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Defined in: [play-atom/src/types.ts:157](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/types.ts#L157)
|
|
21
|
+
|
|
22
|
+
The state of an atom that reads a promise
|
|
23
|
+
|
|
24
|
+
`createAsyncAtom` holds this shape. Read `status` first, and the compiler then gives
|
|
25
|
+
you `data` or `error`.
|
|
26
|
+
|
|
27
|
+
## Type Parameters
|
|
28
|
+
|
|
29
|
+
| Type Parameter | Default type |
|
|
30
|
+
| -------------- | ------------ |
|
|
31
|
+
| `TData` | - |
|
|
32
|
+
| `TError` | `unknown` |
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[API](../../../README.md) / [@xmachines/play-
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-atom](../README.md) / Cleanup
|
|
2
2
|
|
|
3
3
|
# Type Alias: Cleanup
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
type Cleanup = () => void & { [Key in DisposeKey]: () => void };
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [
|
|
9
|
+
Defined in: [play/src/disposable.ts:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play/src/disposable.ts#L66)
|
|
10
10
|
|
|
11
11
|
The release of a subscription. A caller runs it, or a scope releases it.
|
|
12
12
|
|
|
@@ -16,12 +16,12 @@ caller inside one scope writes `using` and writes no teardown at all:
|
|
|
16
16
|
|
|
17
17
|
```ts
|
|
18
18
|
// The explicit form. It stays correct.
|
|
19
|
-
const stop =
|
|
19
|
+
const stop = watchAtom(count, render);
|
|
20
20
|
stop();
|
|
21
21
|
|
|
22
22
|
// The scoped form. The scope releases it, and an exception releases it too.
|
|
23
23
|
{
|
|
24
|
-
using stop =
|
|
24
|
+
using stop = watchAtom(count, render);
|
|
25
25
|
render(count.get());
|
|
26
26
|
}
|
|
27
27
|
```
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-atom](../README.md) / createAsyncAtom
|
|
2
|
+
|
|
3
|
+
# Variable: createAsyncAtom
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
const createAsyncAtom: <T>(getValue, options?) => ReadonlyAtom<AsyncAtomState<T>> =
|
|
7
|
+
createEngineAsyncAtom;
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
Defined in: [play-atom/src/create-atom.ts:64](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/create-atom.ts#L64)
|
|
11
|
+
|
|
12
|
+
Builds a read-only atom that holds the state of a promise
|
|
13
|
+
|
|
14
|
+
The atom starts at `pending`, and it moves to `done` or to `error`.
|
|
15
|
+
|
|
16
|
+
The getter receives an `AbortSignal`. The engine aborts it when the atom derives again
|
|
17
|
+
before the run settles, so a stale answer reaches the atom never. A getter that needs no
|
|
18
|
+
signal takes no parameter.
|
|
19
|
+
|
|
20
|
+
## Type Parameters
|
|
21
|
+
|
|
22
|
+
| Type Parameter |
|
|
23
|
+
| -------------- |
|
|
24
|
+
| `T` |
|
|
25
|
+
|
|
26
|
+
## Parameters
|
|
27
|
+
|
|
28
|
+
| Parameter | Type |
|
|
29
|
+
| ---------- | ------------------------------------------------------------------------------------------------------------- |
|
|
30
|
+
| `getValue` | (`options`) => `Promise`\<`T`\> |
|
|
31
|
+
| `options?` | [`AtomOptions`](../interfaces/AtomOptions.md)\<[`AsyncAtomState`](../type-aliases/AsyncAtomState.md)\<`T`\>\> |
|
|
32
|
+
|
|
33
|
+
## Returns
|
|
34
|
+
|
|
35
|
+
[`ReadonlyAtom`](../interfaces/ReadonlyAtom.md)\<[`AsyncAtomState`](../type-aliases/AsyncAtomState.md)\<`T`\>\>
|
|
36
|
+
|
|
37
|
+
## Example
|
|
38
|
+
|
|
39
|
+
```typescript
|
|
40
|
+
const user = createAsyncAtom(() => fetch("/me").then((response) => response.json()));
|
|
41
|
+
if (user.get().status === "done") console.log("ready");
|
|
42
|
+
```
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-atom](../README.md) / createAtom
|
|
2
|
+
|
|
3
|
+
# Variable: createAtom
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
const createAtom: CreateAtom = createEngineAtom;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [play-atom/src/create-atom.ts:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/create-atom.ts#L47)
|
|
10
|
+
|
|
11
|
+
Builds a writable atom from a value, and a computed atom from a function
|
|
12
|
+
|
|
13
|
+
## Example
|
|
14
|
+
|
|
15
|
+
```typescript
|
|
16
|
+
const count = createAtom(0);
|
|
17
|
+
const doubled = createAtom(() => count.get() * 2);
|
|
18
|
+
```
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
[API](../../../README.md) / [@xmachines/play-atom](../README.md) / createWritableAtom
|
|
2
|
+
|
|
3
|
+
# Variable: createWritableAtom
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
const createWritableAtom: <T>(initialValue, options?) => Atom<T> = createAtom;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [play-atom/src/create-writable-atom.ts:50](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-atom/src/create-writable-atom.ts#L50)
|
|
10
|
+
|
|
11
|
+
Builds a WRITABLE atom, and never a computed one.
|
|
12
|
+
|
|
13
|
+
`createAtom` carries two signatures: a function argument builds a computed atom, and
|
|
14
|
+
a value argument builds a writable one. TypeScript reads the signatures in order, so
|
|
15
|
+
it needs to prove that the argument is NOT a function before it reaches the second
|
|
16
|
+
one. For a concrete type it proves that at once, and `createAtom` is then the right
|
|
17
|
+
call.
|
|
18
|
+
|
|
19
|
+
For an UNRESOLVED type the proof fails. `ReturnType<TMachine["transition"]>` inside a
|
|
20
|
+
generic class is a conditional type that TypeScript cannot evaluate yet, so it cannot
|
|
21
|
+
rule a function out, it picks the first signature, and the call returns a
|
|
22
|
+
`ReadonlyAtom` that carries no `set`. The error arrives at the assignment, and it
|
|
23
|
+
names a type that the reader never wrote.
|
|
24
|
+
|
|
25
|
+
This function states the one signature. The assignment below checks that the
|
|
26
|
+
signature belongs to `createAtom`, so the two stay in step and no cast hides a
|
|
27
|
+
mistake.
|
|
28
|
+
|
|
29
|
+
Use `createAtom` everywhere else. Reach for this function when the value type is a
|
|
30
|
+
type parameter, or a conditional type over one.
|
|
31
|
+
|
|
32
|
+
A CAUTION: the signature states ONE overload, and the implementation is `createAtom`
|
|
33
|
+
itself, which reads a FUNCTION argument as a computed atom. A `T` that a function
|
|
34
|
+
satisfies therefore gets a `ReadonlyAtom` at run time while the type says `Atom`, and
|
|
35
|
+
the first `set` call throws. Hold a function in a wrapper — `createWritableAtom({ fn })`
|
|
36
|
+
— as the value types of this workspace already do.
|
|
37
|
+
|
|
38
|
+
## Type Parameters
|
|
39
|
+
|
|
40
|
+
| Type Parameter |
|
|
41
|
+
| -------------- |
|
|
42
|
+
| `T` |
|
|
43
|
+
|
|
44
|
+
## Parameters
|
|
45
|
+
|
|
46
|
+
| Parameter | Type | Description |
|
|
47
|
+
| -------------- | ---------------------------------------------------- | ------------------------------------------------------------ |
|
|
48
|
+
| `initialValue` | `T` | The first value of the atom. It must not be a function. |
|
|
49
|
+
| `options?` | [`AtomOptions`](../interfaces/AtomOptions.md)\<`T`\> | The optional `compare` function. The default is `Object.is`. |
|
|
50
|
+
|
|
51
|
+
## Returns
|
|
52
|
+
|
|
53
|
+
[`Atom`](../interfaces/Atom.md)\<`T`\>
|
|
54
|
+
|
|
55
|
+
The writable atom.
|
|
56
|
+
|
|
57
|
+
## Example
|
|
58
|
+
|
|
59
|
+
```typescript
|
|
60
|
+
import { createWritableAtom, type Atom } from "@xmachines/play-atom";
|
|
61
|
+
|
|
62
|
+
class Holder<T extends { value: unknown }> {
|
|
63
|
+
// `createAtom(seed)` would give a ReadonlyAtom<T["value"]> here.
|
|
64
|
+
public readonly state: Atom<T["value"]>;
|
|
65
|
+
|
|
66
|
+
constructor(seed: T["value"]) {
|
|
67
|
+
this.state = createWritableAtom(seed);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
```
|