@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
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: ParamPart
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-
|
|
5
|
+
Defined in: [packages/play-pattern/src/pattern-grammar.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L71)
|
|
6
6
|
|
|
7
7
|
A param: `:name`, `(\d+)`, or `*`.
|
|
8
8
|
|
|
@@ -11,11 +11,11 @@ this library reports it to no machine — see [ParsedPattern.params](ParsedPatte
|
|
|
11
11
|
|
|
12
12
|
## Properties
|
|
13
13
|
|
|
14
|
-
| Property | Modifier | Type | Description | Defined in
|
|
15
|
-
| ------------------------------------------- | ---------- | ------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
16
|
-
| <a id="property-groupname"></a> `groupName` | `readonly` | `string` \| `null` | The name that URLPattern compiles, with each hyphen rewritten to an underscore, or `null` for an anonymous param. The rewrite happens ONE time, here, and [ParsedPattern.normalized](ParsedPattern.md#property-normalized) carries the same characters. A caller that needs the group name of a param reads this field, and it rewrites nothing of its own. | [packages/play-
|
|
17
|
-
| <a id="property-kind"></a> `kind` | `readonly` | `"param"` | - | [packages/play-
|
|
18
|
-
| <a id="property-modifier"></a> `modifier` | `readonly` | [`PatternModifier`](../type-aliases/PatternModifier.md) | - | [packages/play-
|
|
19
|
-
| <a id="property-name"></a> `name` | `readonly` | `string` \| `null` | The declared name, with each hyphen kept, or `null` for an anonymous param. | [packages/play-
|
|
20
|
-
| <a id="property-prefix"></a> `prefix` | `readonly` | `string` | The `/` that the param absorbed from the literal before it, or `""`. | [packages/play-
|
|
21
|
-
| <a id="property-regexp"></a> `regexp` | `readonly` | `string` \| `null` | The source of the constraint of `:id(\d+)`, or `null` when the param declares none. | [packages/play-
|
|
14
|
+
| Property | Modifier | Type | Description | Defined in |
|
|
15
|
+
| ------------------------------------------- | ---------- | ------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
16
|
+
| <a id="property-groupname"></a> `groupName` | `readonly` | `string` \| `null` | The name that URLPattern compiles, with each hyphen rewritten to an underscore, or `null` for an anonymous param. The rewrite happens ONE time, here, and [ParsedPattern.normalized](ParsedPattern.md#property-normalized) carries the same characters. A caller that needs the group name of a param reads this field, and it rewrites nothing of its own. | [packages/play-pattern/src/pattern-grammar.ts:83](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L83) |
|
|
17
|
+
| <a id="property-kind"></a> `kind` | `readonly` | `"param"` | - | [packages/play-pattern/src/pattern-grammar.ts:72](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L72) |
|
|
18
|
+
| <a id="property-modifier"></a> `modifier` | `readonly` | [`PatternModifier`](../type-aliases/PatternModifier.md) | - | [packages/play-pattern/src/pattern-grammar.ts:88](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L88) |
|
|
19
|
+
| <a id="property-name"></a> `name` | `readonly` | `string` \| `null` | The declared name, with each hyphen kept, or `null` for an anonymous param. | [packages/play-pattern/src/pattern-grammar.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L74) |
|
|
20
|
+
| <a id="property-prefix"></a> `prefix` | `readonly` | `string` | The `/` that the param absorbed from the literal before it, or `""`. | [packages/play-pattern/src/pattern-grammar.ts:87](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L87) |
|
|
21
|
+
| <a id="property-regexp"></a> `regexp` | `readonly` | `string` \| `null` | The source of the constraint of `:id(\d+)`, or `null` when the param declares none. | [packages/play-pattern/src/pattern-grammar.ts:85](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L85) |
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-url](../../README.md) / [index](../README.md) / ParseOptions
|
|
2
|
+
|
|
3
|
+
# Interface: ParseOptions
|
|
4
|
+
|
|
5
|
+
Defined in: [packages/play-pattern/src/cache.ts:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/cache.ts#L34)
|
|
6
|
+
|
|
7
|
+
The options that every read of the pattern language takes.
|
|
8
|
+
|
|
9
|
+
It is ONE field today, and it is an object rather than a positional argument so that a
|
|
10
|
+
caller holds one object and hands it to every call — `parsePattern`, `buildPath`,
|
|
11
|
+
`getCompiledPattern`, `findRouteByPath`, a route map and a bridge all take it, and
|
|
12
|
+
`CompileOptions` and `RouteMapOptions` extend it with the caches of their own layer. A
|
|
13
|
+
positional argument gave each layer a different position to remember.
|
|
14
|
+
|
|
15
|
+
## Extended by
|
|
16
|
+
|
|
17
|
+
- [`CompileOptions`](CompileOptions.md)
|
|
18
|
+
- [`FrameworkParamsSource`](FrameworkParamsSource.md)
|
|
19
|
+
|
|
20
|
+
## Properties
|
|
21
|
+
|
|
22
|
+
| Property | Modifier | Type | Description | Defined in |
|
|
23
|
+
| -------------------------------------------------- | ---------- | ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- |
|
|
24
|
+
| <a id="property-patterncache"></a> `patternCache?` | `readonly` | [`PatternCache`](PatternCache.md)\<[`ParsedPattern`](ParsedPattern.md)\> | The cache of the PARSE of a pattern. The default is the cache that this package shares with every caller of the process. | [packages/play-pattern/src/cache.ts:40](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/cache.ts#L40) |
|
|
@@ -2,22 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: ParsedPattern
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-
|
|
5
|
+
Defined in: [packages/play-pattern/src/pattern-grammar.ts:117](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L117)
|
|
6
6
|
|
|
7
7
|
Everything that this library reads from one route pattern.
|
|
8
8
|
|
|
9
9
|
## Properties
|
|
10
10
|
|
|
11
|
-
| Property | Modifier | Type | Description | Defined in
|
|
12
|
-
| --------------------------------------------------- | ---------- | ---------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
-
| <a id="property-bareform"></a> `bareForm` | `readonly` | `string` \| `null` | The path that the pattern matches when every optional part is absent, or `null` when the pattern holds a part that a path must fill. `/settings/:section?` gives `/settings`, `/a/{b}?/c` gives `/a//c`, and `/profile/:userId` gives `null`. | [packages/play-
|
|
14
|
-
| <a id="property-declarednames"></a> `declaredNames` | `readonly` | `ReadonlyMap`\<`string`, `string`\> | The map from each rewritten group name back to the name that the pattern declares, for example `cat_id` to `cat-id`. The map holds an entry only for a name that the rewrite changed. It is empty for most patterns, and a caller that reads a group name falls back to the name itself. | [packages/play-
|
|
15
|
-
| <a id="property-indexkey"></a> `indexKey` | `readonly` | `string` | The key of the bucket index: the first path segment, or `"*"` when a param can stand in the first segment. | [packages/play-
|
|
16
|
-
| <a id="property-literalpath"></a> `literalPath` | `readonly` | `string` \| `null` | The ONE path that the pattern matches, with each escape resolved, or `null` when the pattern describes a SET of paths. `/users` gives `/users`, `/tags/c\+\+` gives `/tags/c++`, `/x{y}z` gives `/xyz`, and `/profile/:userId` gives `null`. A bridge writes a real browser URL from this field. The SOURCE of the pattern is no substitute for it: `/tags/c\+\+` carries two backslashes that the address bar must not hold, and a location that carries them matches the route never. | [packages/play-
|
|
17
|
-
| <a id="property-names"></a> `names` | `readonly` | readonly `string`[] | The name of every param of [params](#property-params), in the same order. `resolveFrameworkParams` runs on EVERY navigation and it needs this list each time. The parse holds it, so a navigation allocates none. A caller that hands the array to somebody else copies it: the cache holds this one. | [packages/play-
|
|
18
|
-
| <a id="property-normalized"></a> `normalized` | `readonly` | `string` | The pattern in the form that URLPattern compiles: each param name that holds a hyphen carries an underscore instead. | [packages/play-
|
|
19
|
-
| <a id="property-parameterized"></a> `parameterized` | `readonly` | `boolean` | True when the pattern needs a URLPattern match, and false when it is a literal path. A malformed pattern reports `true`, so that it reaches the URLPattern constructor and fails there with the error of the API. A parser that called it static would send it to the exact-match map instead, where it matches nothing and reports no fault. | [packages/play-
|
|
20
|
-
| <a id="property-params"></a> `params` | `readonly` | readonly [`PatternParam`](PatternParam.md)[] | The NAMED params, in the order that the pattern declares them. | [packages/play-
|
|
21
|
-
| <a id="property-parts"></a> `parts` | `readonly` | readonly [`PatternPart`](../type-aliases/PatternPart.md)[] | The parts, in the order that the pattern declares them. | [packages/play-
|
|
22
|
-
| <a id="property-requirednames"></a> `requiredNames` | `readonly` | readonly `string`[] | The name of every param that a path must fill, in the order of [params](#property-params). The same rule as [names](#property-names): the parse holds the array, and a navigation reads it. | [packages/play-
|
|
23
|
-
| <a id="property-source"></a> `source` | `readonly` | `string` | The pattern as the caller wrote it. | [packages/play-
|
|
11
|
+
| Property | Modifier | Type | Description | Defined in |
|
|
12
|
+
| --------------------------------------------------- | ---------- | ---------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
+
| <a id="property-bareform"></a> `bareForm` | `readonly` | `string` \| `null` | The path that the pattern matches when every optional part is absent, or `null` when the pattern holds a part that a path must fill. `/settings/:section?` gives `/settings`, `/a/{b}?/c` gives `/a//c`, and `/profile/:userId` gives `null`. | [packages/play-pattern/src/pattern-grammar.ts:154](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L154) |
|
|
14
|
+
| <a id="property-declarednames"></a> `declaredNames` | `readonly` | `ReadonlyMap`\<`string`, `string`\> | The map from each rewritten group name back to the name that the pattern declares, for example `cat_id` to `cat-id`. The map holds an entry only for a name that the rewrite changed. It is empty for most patterns, and a caller that reads a group name falls back to the name itself. | [packages/play-pattern/src/pattern-grammar.ts:184](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L184) |
|
|
15
|
+
| <a id="property-indexkey"></a> `indexKey` | `readonly` | `string` | The key of the bucket index: the first path segment, or `"*"` when a param can stand in the first segment. | [packages/play-pattern/src/pattern-grammar.ts:171](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L171) |
|
|
16
|
+
| <a id="property-literalpath"></a> `literalPath` | `readonly` | `string` \| `null` | The ONE path that the pattern matches, with each escape resolved, or `null` when the pattern describes a SET of paths. `/users` gives `/users`, `/tags/c\+\+` gives `/tags/c++`, `/x{y}z` gives `/xyz`, and `/profile/:userId` gives `null`. A bridge writes a real browser URL from this field. The SOURCE of the pattern is no substitute for it: `/tags/c\+\+` carries two backslashes that the address bar must not hold, and a location that carries them matches the route never. | [packages/play-pattern/src/pattern-grammar.ts:166](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L166) |
|
|
17
|
+
| <a id="property-names"></a> `names` | `readonly` | readonly `string`[] | The name of every param of [params](#property-params), in the same order. `resolveFrameworkParams` runs on EVERY navigation and it needs this list each time. The parse holds it, so a navigation allocates none. A caller that hands the array to somebody else copies it: the cache holds this one. | [packages/play-pattern/src/pattern-grammar.ts:131](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L131) |
|
|
18
|
+
| <a id="property-normalized"></a> `normalized` | `readonly` | `string` | The pattern in the form that URLPattern compiles: each param name that holds a hyphen carries an underscore instead. | [packages/play-pattern/src/pattern-grammar.ts:176](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L176) |
|
|
19
|
+
| <a id="property-parameterized"></a> `parameterized` | `readonly` | `boolean` | True when the pattern needs a URLPattern match, and false when it is a literal path. A malformed pattern reports `true`, so that it reaches the URLPattern constructor and fails there with the error of the API. A parser that called it static would send it to the exact-match map instead, where it matches nothing and reports no fault. | [packages/play-pattern/src/pattern-grammar.ts:146](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L146) |
|
|
20
|
+
| <a id="property-params"></a> `params` | `readonly` | readonly [`PatternParam`](PatternParam.md)[] | The NAMED params, in the order that the pattern declares them. | [packages/play-pattern/src/pattern-grammar.ts:123](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L123) |
|
|
21
|
+
| <a id="property-parts"></a> `parts` | `readonly` | readonly [`PatternPart`](../type-aliases/PatternPart.md)[] | The parts, in the order that the pattern declares them. | [packages/play-pattern/src/pattern-grammar.ts:121](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L121) |
|
|
22
|
+
| <a id="property-requirednames"></a> `requiredNames` | `readonly` | readonly `string`[] | The name of every param that a path must fill, in the order of [params](#property-params). The same rule as [names](#property-names): the parse holds the array, and a navigation reads it. | [packages/play-pattern/src/pattern-grammar.ts:137](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L137) |
|
|
23
|
+
| <a id="property-source"></a> `source` | `readonly` | `string` | The pattern as the caller wrote it. | [packages/play-pattern/src/pattern-grammar.ts:119](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L119) |
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-url](../../README.md) / [index](../README.md) / PatternCache
|
|
2
|
+
|
|
3
|
+
# Interface: PatternCache\<V\>
|
|
4
|
+
|
|
5
|
+
Defined in: [packages/play-pattern/src/cache.ts:53](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/cache.ts#L53)
|
|
6
|
+
|
|
7
|
+
What this package needs from a cache: a read and a write, both by a string key.
|
|
8
|
+
|
|
9
|
+
The contract is this small on purpose. A `Map` satisfies it, and so does an LRU of any
|
|
10
|
+
library — a caller that wants a time to live or an eviction callback brings the module
|
|
11
|
+
that has one, and this package needs to know nothing about it.
|
|
12
|
+
|
|
13
|
+
A cache may forget an entry at any time, and it may forget none. Both are correct: the
|
|
14
|
+
parser runs again for an entry that is absent.
|
|
15
|
+
|
|
16
|
+
## Type Parameters
|
|
17
|
+
|
|
18
|
+
| Type Parameter |
|
|
19
|
+
| -------------- |
|
|
20
|
+
| `V` |
|
|
21
|
+
|
|
22
|
+
## Methods
|
|
23
|
+
|
|
24
|
+
### get()
|
|
25
|
+
|
|
26
|
+
```ts
|
|
27
|
+
get(key): V | undefined;
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Defined in: [packages/play-pattern/src/cache.ts:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/cache.ts#L55)
|
|
31
|
+
|
|
32
|
+
Reads one entry, or `undefined` when the cache holds none for the key.
|
|
33
|
+
|
|
34
|
+
#### Parameters
|
|
35
|
+
|
|
36
|
+
| Parameter | Type |
|
|
37
|
+
| --------- | -------- |
|
|
38
|
+
| `key` | `string` |
|
|
39
|
+
|
|
40
|
+
#### Returns
|
|
41
|
+
|
|
42
|
+
`V` \| `undefined`
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
### set()
|
|
47
|
+
|
|
48
|
+
```ts
|
|
49
|
+
set(key, value): void;
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Defined in: [packages/play-pattern/src/cache.ts:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/cache.ts#L57)
|
|
53
|
+
|
|
54
|
+
Writes one entry.
|
|
55
|
+
|
|
56
|
+
#### Parameters
|
|
57
|
+
|
|
58
|
+
| Parameter | Type |
|
|
59
|
+
| --------- | -------- |
|
|
60
|
+
| `key` | `string` |
|
|
61
|
+
| `value` | `V` |
|
|
62
|
+
|
|
63
|
+
#### Returns
|
|
64
|
+
|
|
65
|
+
`void`
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: PatternParam
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-
|
|
5
|
+
Defined in: [packages/play-pattern/src/pattern-grammar.ts:101](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L101)
|
|
6
6
|
|
|
7
7
|
One named param of a pattern, with the question that every caller asks about it.
|
|
8
8
|
|
|
9
9
|
## Properties
|
|
10
10
|
|
|
11
|
-
| Property | Modifier | Type | Description | Defined in
|
|
12
|
-
| ------------------------------------------- | ---------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
-
| <a id="property-groupname"></a> `groupName` | `readonly` | `string` | The name that URLPattern compiles, for example `cat_id`. | [packages/play-
|
|
14
|
-
| <a id="property-name"></a> `name` | `readonly` | `string` | The name as the pattern declares it, for example `cat-id`. | [packages/play-
|
|
15
|
-
| <a id="property-optional"></a> `optional` | `readonly` | `boolean` | True when a matching path can carry no value for this param. The modifier `?` and the modifier `*` make a param optional, and so does EVERY group above it that carries one of the two. The modifier `+` does not: it repeats a param that one value must still fill. | [packages/play-
|
|
11
|
+
| Property | Modifier | Type | Description | Defined in |
|
|
12
|
+
| ------------------------------------------- | ---------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
+
| <a id="property-groupname"></a> `groupName` | `readonly` | `string` | The name that URLPattern compiles, for example `cat_id`. | [packages/play-pattern/src/pattern-grammar.ts:105](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L105) |
|
|
14
|
+
| <a id="property-name"></a> `name` | `readonly` | `string` | The name as the pattern declares it, for example `cat-id`. | [packages/play-pattern/src/pattern-grammar.ts:103](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L103) |
|
|
15
|
+
| <a id="property-optional"></a> `optional` | `readonly` | `boolean` | True when a matching path can carry no value for this param. The modifier `?` and the modifier `*` make a param optional, and so does EVERY group above it that carries one of the two. The modifier `+` does not: it repeats a param that one value must still fill. | [packages/play-pattern/src/pattern-grammar.ts:113](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L113) |
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Interface: ResolvedBasePath
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-url/src/base-path.ts:
|
|
5
|
+
Defined in: [packages/play-url/src/base-path.ts:82](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/base-path.ts#L82)
|
|
6
6
|
|
|
7
7
|
A base path that is ready for a use in both directions.
|
|
8
8
|
|
|
@@ -10,5 +10,5 @@ A base path that is ready for a use in both directions.
|
|
|
10
10
|
|
|
11
11
|
| Property | Modifier | Type | Description | Defined in |
|
|
12
12
|
| ------------------------------------- | ---------- | ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
-
| <a id="property-params"></a> `params` | `readonly` | `Record`\<`string`, `string`\> | The values of each `:param` of the prefix, for the `params` of a `play.route` event. The object is empty for a prefix without a param, and for a pattern that nothing resolved. | [packages/play-url/src/base-path.ts:
|
|
14
|
-
| <a id="property-path"></a> `path` | `readonly` | `string` | The normalized prefix: it starts with `/`, it carries no trailing `/`, and it holds no duplicate slash. The empty string means "no prefix". | [packages/play-url/src/base-path.ts:
|
|
13
|
+
| <a id="property-params"></a> `params` | `readonly` | `Record`\<`string`, `string`\> | The values of each `:param` of the prefix, for the `params` of a `play.route` event. The object is empty for a prefix without a param, and for a pattern that nothing resolved. | [packages/play-url/src/base-path.ts:93](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/base-path.ts#L93) |
|
|
14
|
+
| <a id="property-path"></a> `path` | `readonly` | `string` | The normalized prefix: it starts with `/`, it carries no trailing `/`, and it holds no duplicate slash. The empty string means "no prefix". | [packages/play-url/src/base-path.ts:87](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/base-path.ts#L87) |
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-url](../../README.md) / [index](../README.md) / SplitLocation
|
|
2
|
+
|
|
3
|
+
# Interface: SplitLocation
|
|
4
|
+
|
|
5
|
+
Defined in: [packages/play-url/src/location.ts:17](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/location.ts#L17)
|
|
6
|
+
|
|
7
|
+
The parts of one location string.
|
|
8
|
+
|
|
9
|
+
## Properties
|
|
10
|
+
|
|
11
|
+
| Property | Modifier | Type | Description | Defined in |
|
|
12
|
+
| ----------------------------------------- | ---------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
+
| <a id="property-fragment"></a> `fragment` | `readonly` | `string` | The fragment, WITH its leading `#`. It is `""` when the location carries none. | [packages/play-url/src/location.ts:23](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/location.ts#L23) |
|
|
14
|
+
| <a id="property-pathname"></a> `pathname` | `readonly` | `string` | The pathname, with no query and no fragment. | [packages/play-url/src/location.ts:19](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/location.ts#L19) |
|
|
15
|
+
| <a id="property-query"></a> `query` | `readonly` | `string` | The query, with no leading `?`. It is `""` when the location carries none. | [packages/play-url/src/location.ts:21](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/location.ts#L21) |
|
|
16
|
+
| <a id="property-suffix"></a> `suffix` | `readonly` | `string` | Every character behind the pathname, as the location wrote them. A caller that rebuilds a location keeps this string rather than the two parts above, because it carries the `?` and the order of the two marks without a change. | [packages/play-url/src/location.ts:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/location.ts#L30) |
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-url](../../README.md) / [index](../README.md) / PathBuildResult
|
|
2
|
+
|
|
3
|
+
# Type Alias: PathBuildResult
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type PathBuildResult =
|
|
7
|
+
| {
|
|
8
|
+
ok: true;
|
|
9
|
+
path: string;
|
|
10
|
+
}
|
|
11
|
+
| {
|
|
12
|
+
missing: string;
|
|
13
|
+
ok: false;
|
|
14
|
+
reason: "missing";
|
|
15
|
+
}
|
|
16
|
+
| {
|
|
17
|
+
ok: false;
|
|
18
|
+
param: string;
|
|
19
|
+
reason: "unresolvable";
|
|
20
|
+
value: string;
|
|
21
|
+
};
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Defined in: [packages/play-pattern/src/pattern-grammar.ts:651](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L651)
|
|
25
|
+
|
|
26
|
+
The answer of [buildPath](../functions/buildPath.md).
|
|
27
|
+
|
|
28
|
+
## Union Members
|
|
29
|
+
|
|
30
|
+
### Type Literal
|
|
31
|
+
|
|
32
|
+
```ts
|
|
33
|
+
{
|
|
34
|
+
ok: true;
|
|
35
|
+
path: string;
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
The pattern built a path, and every part that needs a value has one.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
### Type Literal
|
|
44
|
+
|
|
45
|
+
```ts
|
|
46
|
+
{
|
|
47
|
+
missing: string;
|
|
48
|
+
ok: false;
|
|
49
|
+
reason: "missing";
|
|
50
|
+
}
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
A part needs a value that the caller did not give.
|
|
54
|
+
|
|
55
|
+
`missing` names the param as the PATTERN declares it, with each hyphen kept, so a
|
|
56
|
+
caller reports the name that its author wrote.
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
### Type Literal
|
|
61
|
+
|
|
62
|
+
```ts
|
|
63
|
+
{
|
|
64
|
+
ok: false;
|
|
65
|
+
param: string;
|
|
66
|
+
reason: "unresolvable";
|
|
67
|
+
value: string;
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
A param carries a value that no path can hold, so the pattern matches the result
|
|
72
|
+
back never. `param` names the param, and `value` holds what the caller gave.
|
|
73
|
+
|
|
74
|
+
A dot segment is the one such value today: see [isDotSegment](../functions/isDotSegment.md).
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
[API](../../../../README.md) / [@xmachines/play-url](../../README.md) / [index](../README.md) / PathParams
|
|
2
|
+
|
|
3
|
+
# Type Alias: PathParams
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type PathParams = Readonly<Record<string, unknown>>;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Defined in: [packages/play-pattern/src/pattern-grammar.ts:681](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L681)
|
|
10
|
+
|
|
11
|
+
The values that a caller gives, keyed by the declared name of the param.
|
|
12
|
+
|
|
13
|
+
The value is `unknown`, because a caller reads it from the context of an actor and that
|
|
14
|
+
context carries whatever the machine put there. [buildPath](../functions/buildPath.md) calls `String` on a
|
|
15
|
+
value that is neither `undefined` nor `null`.
|
|
@@ -6,6 +6,6 @@
|
|
|
6
6
|
type PatternModifier = "" | "?" | "+" | "*";
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-
|
|
9
|
+
Defined in: [packages/play-pattern/src/pattern-grammar.ts:56](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L56)
|
|
10
10
|
|
|
11
11
|
The modifier of a part. `""` means that the part carries none.
|
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
type PatternPart = LiteralPart | ParamPart | GroupPart;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-
|
|
9
|
+
Defined in: [packages/play-pattern/src/pattern-grammar.ts:98](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-pattern/src/pattern-grammar.ts#L98)
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
type URLPatternCtor = (init) => URLPatternLike;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-url/src/url-pattern-utils.ts:
|
|
9
|
+
Defined in: [packages/play-url/src/url-pattern-utils.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/url-pattern-utils.ts#L59)
|
|
10
10
|
|
|
11
11
|
The constructor type of a URLPatternLike instance.
|
|
12
12
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
type URLPatternLike = object;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-url/src/url-pattern-utils.ts:
|
|
9
|
+
Defined in: [packages/play-url/src/url-pattern-utils.ts:51](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/url-pattern-utils.ts#L51)
|
|
10
10
|
|
|
11
11
|
The minimal structural type of the part of URLPattern that this package uses.
|
|
12
12
|
|
|
@@ -28,7 +28,7 @@ exec(input):
|
|
|
28
28
|
| null;
|
|
29
29
|
```
|
|
30
30
|
|
|
31
|
-
Defined in: [packages/play-url/src/url-pattern-utils.ts:
|
|
31
|
+
Defined in: [packages/play-url/src/url-pattern-utils.ts:52](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/url-pattern-utils.ts#L52)
|
|
32
32
|
|
|
33
33
|
#### Parameters
|
|
34
34
|
|
|
@@ -54,7 +54,7 @@ Defined in: [packages/play-url/src/url-pattern-utils.ts:53](https://gitlab.com/x
|
|
|
54
54
|
test(input): boolean;
|
|
55
55
|
```
|
|
56
56
|
|
|
57
|
-
Defined in: [packages/play-url/src/url-pattern-utils.ts:
|
|
57
|
+
Defined in: [packages/play-url/src/url-pattern-utils.ts:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/url-pattern-utils.ts#L55)
|
|
58
58
|
|
|
59
59
|
#### Parameters
|
|
60
60
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
const NO_BASE_PATH: ResolvedBasePath;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-url/src/base-path.ts:
|
|
9
|
+
Defined in: [packages/play-url/src/base-path.ts:106](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/base-path.ts#L106)
|
|
10
10
|
|
|
11
11
|
The base path of a bridge that has no `basePath` option.
|
|
12
12
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
const URLPattern: URLPatternCtor;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-url/src/url-pattern-utils.ts:
|
|
9
|
+
Defined in: [packages/play-url/src/url-pattern-utils.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-url/src/url-pattern-utils.ts#L74)
|
|
10
10
|
|
|
11
11
|
The URLPattern constructor that this library uses: the native API when the runtime
|
|
12
12
|
carries one, and the polyfill when it does not.
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
The shared view half of every renderer of the XMachines Play Architecture.
|
|
6
6
|
|
|
7
|
-
[](https://opensource.org/licenses/MIT) [](https://opensource.org/licenses/MIT) [](https://www.npmjs.com/package/@xmachines/play-view)
|
|
8
8
|
|
|
9
9
|
## Installation
|
|
10
10
|
|
|
@@ -15,9 +15,13 @@ pnpm add @xmachines/play-view
|
|
|
15
15
|
**Peer dependencies.** Install them with the package:
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
|
-
pnpm add @xmachines/json-render-core
|
|
18
|
+
pnpm add @xmachines/json-render-core @xmachines/play @xmachines/play-atom
|
|
19
19
|
```
|
|
20
20
|
|
|
21
|
+
- [`@xmachines/play`](../play/README.md) — the core protocol. This package reads `shallowEqualExcept` from it.
|
|
22
|
+
- [`@xmachines/play-atom`](../play-atom/README.md) — the atom primitives. The view store holds the spec in a `ReadonlyAtom`.
|
|
23
|
+
- `@xmachines/json-render-core` — the spec type that `PlaySpec` extends.
|
|
24
|
+
|
|
21
25
|
A renderer of a framework depends on this package already. Install it directly when you write a renderer of your own.
|
|
22
26
|
|
|
23
27
|
## Overview
|
|
@@ -28,7 +32,7 @@ It also holds `Viewable` and `PlaySpec`. Every type here names a type of `@xmach
|
|
|
28
32
|
|
|
29
33
|
| Export | Description |
|
|
30
34
|
| ------------------------------------------------ | --------------------------------------------------------------------- |
|
|
31
|
-
| `Viewable` | The capability of an actor that publishes a `currentView`
|
|
35
|
+
| `Viewable` | The capability of an actor that publishes a `currentView` atom |
|
|
32
36
|
| `PlaySpec`, `typedSpec` | The spec that an actor publishes, and its identity helper |
|
|
33
37
|
| `BaseActorProviderProps`, `BaseViewContextValue` | The framework-free half of the props and of the context of a provider |
|
|
34
38
|
| `createViewStoreLifecycle` | The lifecycle of the state store of one view |
|
|
@@ -120,16 +124,23 @@ const spec: PlaySpec = {
|
|
|
120
124
|
|
|
121
125
|
### `Viewable`
|
|
122
126
|
|
|
123
|
-
Interface for actors that expose a renderable view
|
|
127
|
+
Interface for actors that expose a renderable view atom.
|
|
128
|
+
|
|
129
|
+
`currentView` is a `ReadonlyAtom`, because an actor DERIVES the view from its state. Only
|
|
130
|
+
the actor decides what the view is, and that rule is in the type rather than in prose. A
|
|
131
|
+
writable `Atom` still satisfies the interface structurally, so a test double drives a
|
|
132
|
+
renderer by holding its own writable reference:
|
|
124
133
|
|
|
125
134
|
```ts
|
|
126
135
|
import type { Viewable } from "@xmachines/play-view";
|
|
127
136
|
import type { PlaySpec } from "@xmachines/play-view";
|
|
128
|
-
import {
|
|
137
|
+
import { createAtom } from "@xmachines/play-atom";
|
|
138
|
+
|
|
139
|
+
// The real actor derives this atom. A double writes its own.
|
|
140
|
+
const atom = createAtom<PlaySpec | null>(null);
|
|
141
|
+
const viewable: Viewable = { currentView: atom };
|
|
129
142
|
|
|
130
|
-
//
|
|
131
|
-
const signal = new Signal.State<PlaySpec | null>(null);
|
|
132
|
-
const viewable: Viewable = { currentView: signal };
|
|
143
|
+
atom.set(spec); // the double drives the renderer through ITS reference
|
|
133
144
|
```
|
|
134
145
|
|
|
135
146
|
### `BaseActorProviderProps<TRegistry>`
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Class: ReadOnlyContextError
|
|
4
4
|
|
|
5
|
-
Defined in: [packages/play-view/src/errors.ts:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/
|
|
5
|
+
Defined in: [packages/play-view/src/errors.ts:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-view/src/errors.ts#L34)
|
|
6
6
|
|
|
7
7
|
A write reached the context projection of the view store.
|
|
8
8
|
|
|
@@ -37,7 +37,7 @@ try {
|
|
|
37
37
|
new ReadOnlyContextError(path, stateKey): ReadOnlyContextError;
|
|
38
38
|
```
|
|
39
39
|
|
|
40
|
-
Defined in: [packages/play-view/src/errors.ts:42](https://gitlab.com/xmachin-es/xmachines-js/-/blob/
|
|
40
|
+
Defined in: [packages/play-view/src/errors.ts:42](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-view/src/errors.ts#L42)
|
|
41
41
|
|
|
42
42
|
#### Parameters
|
|
43
43
|
|
|
@@ -59,11 +59,11 @@ Defined in: [packages/play-view/src/errors.ts:42](https://gitlab.com/xmachin-es/
|
|
|
59
59
|
| Property | Modifier | Type | Description | Inherited from | Defined in |
|
|
60
60
|
| ------------------------------------------------------- | ---------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
|
|
61
61
|
| <a id="property-cause"></a> `cause?` | `public` | `unknown` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`cause`](../../../play/errors/classes/PlayError.md#property-cause) | - |
|
|
62
|
-
| <a id="property-code"></a> `code` | `readonly` | `string` | A stable, machine-readable identifier of the error. An error code follows the naming convention `PLAY_<PACKAGE>_<DESCRIPTION>`. It stays the same across each patch release and each minor release of one major version. Never match on `.message`. Always match on `.code`, or on the subclass. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`code`](../../../play/errors/classes/PlayError.md#property-code) | [packages/play/src/errors.ts:76](https://gitlab.com/xmachin-es/xmachines-js/-/blob/
|
|
62
|
+
| <a id="property-code"></a> `code` | `readonly` | `string` | A stable, machine-readable identifier of the error. An error code follows the naming convention `PLAY_<PACKAGE>_<DESCRIPTION>`. It stays the same across each patch release and each minor release of one major version. Never match on `.message`. Always match on `.code`, or on the subclass. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`code`](../../../play/errors/classes/PlayError.md#property-code) | [packages/play/src/errors.ts:76](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play/src/errors.ts#L76) |
|
|
63
63
|
| <a id="property-message"></a> `message` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`message`](../../../play/errors/classes/PlayError.md#property-message) | - |
|
|
64
64
|
| <a id="property-name"></a> `name` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`name`](../../../play/errors/classes/PlayError.md#property-name) | - |
|
|
65
|
-
| <a id="property-path"></a> `path` | `readonly` | `string` | The JSON pointer of the write that the store refused, as the caller gave it. | - | [packages/play-view/src/errors.ts:36](https://gitlab.com/xmachin-es/xmachines-js/-/blob/
|
|
66
|
-
| <a id="property-scope"></a> `scope` | `readonly` | `string` | The class or the module that threw this error, for example `"RouterBridgeBase"`. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`scope`](../../../play/errors/classes/PlayError.md#property-scope) | [packages/play/src/errors.ts:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/
|
|
65
|
+
| <a id="property-path"></a> `path` | `readonly` | `string` | The JSON pointer of the write that the store refused, as the caller gave it. | - | [packages/play-view/src/errors.ts:36](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-view/src/errors.ts#L36) |
|
|
66
|
+
| <a id="property-scope"></a> `scope` | `readonly` | `string` | The class or the module that threw this error, for example `"RouterBridgeBase"`. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`scope`](../../../play/errors/classes/PlayError.md#property-scope) | [packages/play/src/errors.ts:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play/src/errors.ts#L66) |
|
|
67
67
|
| <a id="property-stack"></a> `stack?` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`stack`](../../../play/errors/classes/PlayError.md#property-stack) | - |
|
|
68
68
|
| <a id="property-stacktracelimit"></a> `stackTraceLimit` | `static` | `number` | The `Error.stackTraceLimit` property specifies the number of stack frames collected by a stack trace (whether generated by `new Error().stack` or `Error.captureStackTrace(obj)`). The default value is `10` but may be set to any valid JavaScript number. Changes will affect any stack trace captured _after_ the value has been changed. If set to a non-number value, or set to a negative number, stack traces will not capture any frames. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`stackTraceLimit`](../../../play/errors/classes/PlayError.md#property-stacktracelimit) | - |
|
|
69
69
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function attachRenderErrorHandler<TRegistry>(registry, handler): TRegistry;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-view/src/provider-guards.ts:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/
|
|
9
|
+
Defined in: [packages/play-view/src/provider-guards.ts:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-view/src/provider-guards.ts#L68)
|
|
10
10
|
|
|
11
11
|
Copies a component registry, and puts an `onRenderError` handler into the copy.
|
|
12
12
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
function composePlayState(authoredState, slice): Record<string, unknown> | undefined;
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Defined in: [packages/play-view/src/context-projection.ts:
|
|
9
|
+
Defined in: [packages/play-view/src/context-projection.ts:208](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.1/packages/play-view/src/context-projection.ts#L208)
|
|
10
10
|
|
|
11
11
|
Composes the effective state of a view: the authored `spec.state` and the
|
|
12
12
|
`/context` slice.
|