@xmachines/docs 3.0.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -16
- package/api/@xmachines/play/README.md +11 -100
- package/api/@xmachines/play/errors/README.md +8 -0
- package/api/@xmachines/play/{classes → errors/classes}/NonNullableError.md +6 -6
- package/api/@xmachines/play/{classes → errors/classes}/PlayError.md +35 -10
- package/api/@xmachines/play/index/README.md +75 -0
- package/api/@xmachines/play/{functions → index/functions}/asCleanup.md +2 -2
- package/api/@xmachines/play/{functions → index/functions}/assertNonNullable.md +2 -2
- package/api/@xmachines/{play-actor → play/index}/functions/shallowEqualExcept.md +3 -3
- package/api/@xmachines/play/{type-aliases → index/type-aliases}/Cleanup.md +3 -3
- package/api/@xmachines/play/{type-aliases → index/type-aliases}/DisposeKey.md +2 -2
- package/api/@xmachines/play/{type-aliases → index/type-aliases}/PlayEvent.md +4 -4
- package/api/@xmachines/play/{variables → index/variables}/DISPOSE.md +2 -2
- package/api/@xmachines/play-actor/README.md +78 -229
- package/api/@xmachines/play-actor/interfaces/ActorEvent.md +18 -0
- package/api/@xmachines/play-actor/interfaces/PlayActor.md +73 -0
- package/api/@xmachines/play-dom/README.md +28 -40
- package/api/@xmachines/play-dom/classes/PlayRenderer.md +12 -11
- package/api/@xmachines/play-dom/functions/asCleanup.md +78 -0
- package/api/@xmachines/play-dom/functions/createPlayUI.md +4 -4
- 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 +2 -2
- package/api/@xmachines/play-dom/type-aliases/MountFn.md +29 -12
- package/api/@xmachines/play-dom-router/README.md +70 -70
- package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +22 -21
- package/api/@xmachines/{play-vue-router → play-dom-router}/classes/RouteMap.md +12 -6
- package/api/@xmachines/play-dom-router/functions/asCleanup.md +78 -0
- package/api/@xmachines/play-dom-router/functions/connectRouter.md +3 -8
- package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +9 -3
- package/api/@xmachines/play-dom-router/functions/createRouter.md +8 -14
- package/api/@xmachines/play-dom-router/interfaces/BasePathOptions.md +5 -5
- package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +70 -26
- package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +14 -14
- package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +8 -8
- package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +24 -21
- package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-dom-router/interfaces/RouterConnection.md +8 -8
- package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +36 -23
- package/api/@xmachines/play-dom-router/type-aliases/Cleanup.md +2 -2
- package/api/@xmachines/play-dom-router/variables/DISPOSE.md +2 -2
- package/api/@xmachines/play-react/README.md +17 -39
- package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +14 -10
- package/api/@xmachines/play-react/functions/useActor.md +1 -1
- package/api/@xmachines/play-react/functions/usePlayView.md +1 -1
- package/api/@xmachines/play-react/functions/useSignalEffect.md +1 -1
- package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +11 -11
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +6 -6
- package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +4 -4
- package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +13 -13
- package/api/@xmachines/play-react/interfaces/ViewContextValue.md +8 -8
- package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +11 -3
- package/api/@xmachines/play-react/variables/ActorProvider.md +1 -1
- package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-react/variables/PlayUIProvider.md +1 -1
- package/api/@xmachines/play-react/variables/schema.md +52 -0
- package/api/@xmachines/play-react-router/README.md +22 -50
- package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +17 -16
- package/api/@xmachines/play-react-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +11 -8
- package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +16 -9
- package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +10 -10
- package/api/@xmachines/play-react-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +17 -7
- package/api/@xmachines/play-react-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
- package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +4 -4
- package/api/@xmachines/play-router/README.md +104 -196
- package/api/@xmachines/play-router/errors/README.md +15 -0
- package/api/@xmachines/play-router/errors/classes/DuplicateBridgeError.md +191 -0
- package/api/@xmachines/play-router/errors/classes/DuplicateRoutePathError.md +175 -0
- package/api/@xmachines/play-router/errors/classes/EmptyRoutePathError.md +175 -0
- package/api/@xmachines/play-router/errors/classes/InvalidBasePathError.md +200 -0
- package/api/@xmachines/play-router/errors/classes/InvalidRoutePatternError.md +203 -0
- package/api/@xmachines/play-router/errors/classes/InvalidStateIdError.md +175 -0
- package/api/@xmachines/play-router/errors/classes/MissingBasePathParamError.md +199 -0
- package/api/@xmachines/play-router/errors/classes/RouterSyncError.md +192 -0
- package/api/@xmachines/play-router/errors/classes/UnknownStateTypeError.md +182 -0
- package/api/@xmachines/play-router/index/README.md +75 -0
- package/api/@xmachines/play-router/{classes → index/classes}/RouteMap.md +12 -6
- package/api/@xmachines/play-router/{classes → index/classes}/RouterBridgeBase.md +19 -17
- package/api/@xmachines/play-router/{functions → index/functions}/buildPlayRouteEvent.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/buildRouteTree.md +14 -4
- package/api/@xmachines/play-router/{functions → index/functions}/cleanFrameworkParams.md +3 -4
- package/api/@xmachines/play-router/{functions → index/functions}/createRouteMapFromTree.md +13 -6
- package/api/@xmachines/play-router/{functions → index/functions}/createRouterConnection.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/detectDuplicateRoutes.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/extractQuery.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/extractRouteParams.md +3 -3
- package/api/@xmachines/play-router/{functions → index/functions}/findRouteById.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/findRouteByPath.md +2 -2
- package/api/@xmachines/play-router/index/functions/getPatternParamNames.md +29 -0
- package/api/@xmachines/play-router/index/functions/getRequiredPatternParamNames.md +39 -0
- package/api/@xmachines/play-router/{functions → index/functions}/isMountableBridge.md +2 -2
- package/api/@xmachines/play-router/index/functions/joinBasePath.md +37 -0
- package/api/@xmachines/play-router/{functions → index/functions}/mountKey.md +2 -2
- package/api/@xmachines/play-router/index/functions/normalizeBasePath.md +43 -0
- package/api/@xmachines/play-router/{functions → index/functions}/openProviderBridge.md +14 -14
- package/api/@xmachines/play-router/index/functions/pickOwnParams.md +41 -0
- package/api/@xmachines/play-router/{functions → index/functions}/repointProviderBridge.md +2 -2
- package/api/@xmachines/play-router/index/functions/resolveBasePath.md +51 -0
- package/api/@xmachines/play-router/{functions → index/functions}/resolveFrameworkParams.md +11 -13
- package/api/@xmachines/play-router/{functions → index/functions}/sanitizePathname.md +2 -2
- package/api/@xmachines/play-router/index/functions/stripBasePath.md +44 -0
- package/api/@xmachines/play-router/{functions → index/functions}/validateRouteFormat.md +2 -2
- package/api/@xmachines/play-router/{functions → index/functions}/validateStateExists.md +2 -2
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/BasePathOptions.md +6 -6
- package/api/@xmachines/play-router/index/interfaces/BuildPlayRouteEventOptions.md +13 -0
- package/api/@xmachines/play-router/index/interfaces/FrameworkParamsSource.md +47 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/LocationLike.md +6 -6
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/MountableRouterBridge.md +9 -9
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/OpenProviderBridgeArgs.md +13 -13
- package/api/@xmachines/play-router/index/interfaces/PlayRouteEvent.md +130 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/PlayRouterProviderBaseProps.md +15 -15
- package/api/@xmachines/play-router/index/interfaces/ResolvedBasePath.md +14 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/ResolvedRoutePath.md +6 -6
- package/api/@xmachines/play-router/index/interfaces/Routable.md +26 -0
- package/api/@xmachines/play-router/index/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouteInfo.md +11 -11
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouteMapOptions.md +5 -5
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouteMapping.md +6 -6
- package/api/@xmachines/play-router/index/interfaces/RouteMatch.md +12 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouteNode.md +13 -13
- package/api/@xmachines/play-router/index/interfaces/RouteObject.md +34 -0
- package/api/@xmachines/play-router/index/interfaces/RouteTree.md +27 -0
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouteWatcherHandle.md +7 -7
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouterBridge.md +5 -5
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/RouterConnection.md +10 -10
- package/api/@xmachines/play-router/{interfaces → index/interfaces}/WindowLike.md +4 -4
- package/api/@xmachines/play-router/index/type-aliases/PlayRouterBridgeConstructor.md +46 -0
- package/api/@xmachines/play-router/index/type-aliases/RouteData.md +12 -0
- package/api/@xmachines/play-router/index/type-aliases/RouteDataResolver.md +31 -0
- package/api/@xmachines/play-router/index/type-aliases/RouteMetadata.md +11 -0
- package/api/@xmachines/{play-xstate → play-router/index}/variables/DISPOSE.md +3 -3
- package/api/@xmachines/play-router/index/variables/NO_BASE_PATH.md +18 -0
- package/api/@xmachines/play-router/index/variables/ROOT_NODE_ID.md +18 -0
- package/api/@xmachines/play-router/xstate/README.md +53 -0
- package/api/@xmachines/play-router/{functions → xstate/functions}/createRouteMap.md +8 -6
- package/api/@xmachines/play-router/{functions → xstate/functions}/extractMachineRoutes.md +4 -4
- package/api/@xmachines/play-router/xstate/functions/getNavigableRoutes.md +35 -0
- package/api/@xmachines/play-router/{functions → xstate/functions}/getRoutableRoutes.md +6 -6
- package/api/@xmachines/play-router/{functions → xstate/functions}/getRouteMappings.md +7 -7
- package/api/@xmachines/play-router/{functions → xstate/functions}/getTransitionReachableRoutes.md +2 -2
- package/api/@xmachines/play-router/{functions → xstate/functions}/isRouteReachable.md +2 -2
- package/api/@xmachines/play-router/{functions → xstate/functions}/machineToGraph.md +2 -2
- package/api/@xmachines/play-router/xstate/functions/routeExists.md +26 -0
- package/api/@xmachines/play-router/xstate/interfaces/MachineEdgeData.md +15 -0
- package/api/@xmachines/play-router/xstate/interfaces/MachineNodeData.md +17 -0
- package/api/@xmachines/play-router/{type-aliases → xstate/type-aliases}/MachineGraph.md +2 -2
- package/api/@xmachines/play-signals/README.md +2 -24
- package/api/@xmachines/play-signals/functions/watchSignal.md +1 -1
- package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalComputed.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalOptions.md +2 -2
- package/api/@xmachines/play-signals/interfaces/SignalState.md +3 -3
- package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +4 -4
- package/api/@xmachines/play-signals/type-aliases/Cleanup.md +2 -2
- package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +1 -1
- package/api/@xmachines/play-solid/README.md +14 -31
- 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 +11 -11
- package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +13 -13
- package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +8 -8
- package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +11 -3
- package/api/@xmachines/play-solid/variables/ActorContext.md +1 -1
- package/api/@xmachines/play-solid/variables/ActorProvider.md +1 -1
- package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-solid/variables/PlayUIProvider.md +1 -1
- package/api/@xmachines/play-solid/variables/schema.md +71 -0
- package/api/@xmachines/play-solid-router/README.md +31 -52
- package/api/@xmachines/play-solid-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +30 -53
- package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +9 -8
- package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +38 -35
- package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +12 -12
- package/api/@xmachines/play-solid-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +5 -5
- package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +17 -7
- package/api/@xmachines/play-solid-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
- package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
- package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +4 -4
- package/api/@xmachines/play-svelte/README.md +11 -26
- 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 +12 -12
- package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +4 -4
- package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +14 -14
- package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +8 -8
- package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +11 -3
- package/api/@xmachines/play-svelte/variables/schema.md +16 -0
- package/api/@xmachines/play-svelte-spa-router/README.md +22 -41
- package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +22 -21
- package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +3 -2
- package/api/@xmachines/play-svelte-spa-router/interfaces/BasePathOptions.md +5 -5
- package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +8 -8
- package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-svelte-spa-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-svelte-spa-router/interfaces/RouterConnection.md +8 -8
- package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +3 -3
- package/api/@xmachines/play-sveltekit-router/README.md +17 -35
- package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +22 -21
- package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +3 -2
- package/api/@xmachines/play-sveltekit-router/interfaces/BasePathOptions.md +5 -5
- package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +8 -8
- package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +3 -3
- package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-sveltekit-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-sveltekit-router/interfaces/RouterConnection.md +8 -8
- package/api/@xmachines/play-tanstack-react-router/README.md +19 -43
- package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +18 -17
- package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +11 -8
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +16 -9
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +10 -10
- package/api/@xmachines/play-tanstack-react-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +17 -7
- package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
- package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +5 -5
- package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +4 -4
- package/api/@xmachines/play-tanstack-router/README.md +6 -4
- package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +17 -20
- package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +3 -3
- package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +5 -5
- package/api/@xmachines/play-tanstack-solid-router/README.md +26 -52
- package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +11 -5
- package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +49 -45
- package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +9 -8
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +9 -14
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +10 -10
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +4 -4
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +3 -3
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +17 -7
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterProviderBaseProps.md +5 -5
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +5 -5
- package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +4 -4
- package/api/@xmachines/play-url/README.md +69 -0
- package/api/@xmachines/play-url/errors/README.md +17 -0
- package/api/@xmachines/play-url/errors/classes/InvalidBasePathError.md +200 -0
- package/api/@xmachines/play-url/errors/classes/InvalidRoutePatternError.md +203 -0
- package/api/@xmachines/play-url/errors/classes/MissingBasePathParamError.md +199 -0
- package/api/@xmachines/play-url/index/README.md +65 -0
- package/api/@xmachines/play-url/index/functions/cleanFrameworkParams.md +39 -0
- package/api/@xmachines/play-url/index/functions/getCandidates.md +29 -0
- package/api/@xmachines/play-url/index/functions/getCompiledPattern.md +31 -0
- package/api/@xmachines/play-url/index/functions/getIndexKey.md +30 -0
- package/api/@xmachines/play-url/index/functions/getNormalizedParamNameMap.md +32 -0
- package/api/@xmachines/play-url/index/functions/getPatternParamNames.md +29 -0
- package/api/@xmachines/play-url/index/functions/getRequiredPatternParamNames.md +39 -0
- package/api/@xmachines/play-url/index/functions/holdsUnsubstitutedParam.md +36 -0
- package/api/@xmachines/play-url/index/functions/isParameterizedPattern.md +36 -0
- package/api/@xmachines/{play-router → play-url/index}/functions/joinBasePath.md +2 -2
- package/api/@xmachines/{play-router → play-url/index}/functions/normalizeBasePath.md +2 -2
- package/api/@xmachines/play-url/index/functions/normalizeParamNames.md +36 -0
- package/api/@xmachines/play-url/index/functions/parsePattern.md +27 -0
- package/api/@xmachines/{play-router → play-url/index}/functions/pickOwnParams.md +4 -4
- package/api/@xmachines/{play-router → play-url/index}/functions/resolveBasePath.md +2 -2
- package/api/@xmachines/play-url/index/functions/resolveFrameworkParams.md +49 -0
- package/api/@xmachines/{play-router → play-url/index}/functions/stripBasePath.md +2 -2
- package/api/@xmachines/play-url/index/interfaces/BasePathOptions.md +28 -0
- package/api/@xmachines/{play-router → play-url/index}/interfaces/FrameworkParamsSource.md +9 -9
- package/api/@xmachines/play-url/index/interfaces/GroupPart.md +15 -0
- package/api/@xmachines/play-url/index/interfaces/LiteralPart.md +14 -0
- package/api/@xmachines/play-url/index/interfaces/ParamPart.md +21 -0
- package/api/@xmachines/play-url/index/interfaces/ParsedPattern.md +23 -0
- package/api/@xmachines/play-url/index/interfaces/PatternParam.md +15 -0
- package/api/@xmachines/{play-router → play-url/index}/interfaces/ResolvedBasePath.md +6 -6
- package/api/@xmachines/play-url/index/type-aliases/PatternModifier.md +11 -0
- package/api/@xmachines/play-url/index/type-aliases/PatternPart.md +9 -0
- package/api/@xmachines/play-url/index/type-aliases/URLPatternCtor.md +22 -0
- package/api/@xmachines/play-url/index/type-aliases/URLPatternLike.md +68 -0
- package/api/@xmachines/{play-router → play-url/index}/variables/NO_BASE_PATH.md +2 -2
- package/api/@xmachines/play-url/index/variables/URLPattern.md +21 -0
- package/api/@xmachines/play-view/README.md +165 -0
- package/api/@xmachines/play-view/errors/README.md +17 -0
- package/api/@xmachines/play-view/errors/classes/ReadOnlyContextError.md +192 -0
- package/api/@xmachines/play-view/index/README.md +55 -0
- package/api/@xmachines/{play-actor → play-view/index}/functions/attachRenderErrorHandler.md +6 -6
- package/api/@xmachines/{play-actor → play-view/index}/functions/composePlayState.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/createFailureLatch.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/createReportGuard.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/createViewStoreLifecycle.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/guardContextWrites.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/refreshContextSubtree.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/reuseComposedState.md +3 -3
- package/api/@xmachines/{play-actor → play-view/index}/functions/sameViewInputs.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/toAtomState.md +2 -2
- package/api/@xmachines/{play-actor → play-view/index}/functions/typedSpec.md +2 -2
- package/api/@xmachines/play-view/index/interfaces/BaseActorProviderProps.md +49 -0
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/BaseViewContextValue.md +12 -12
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/FailureLatch.md +6 -5
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/PlaySpec.md +8 -8
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ReportGuard.md +6 -6
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ReportGuardMessages.md +6 -6
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ResolveViewStoreOptions.md +5 -5
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ViewInputs.md +7 -7
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ViewStoreLifecycle.md +6 -5
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/ViewStoreResolution.md +7 -7
- package/api/@xmachines/{play-actor → play-view/index}/interfaces/Viewable.md +5 -5
- package/api/@xmachines/play-view/index/type-aliases/ViewActor.md +26 -0
- package/api/@xmachines/{play-actor → play-view/index}/variables/CONTEXT_STATE_KEY.md +2 -2
- package/api/@xmachines/play-vue/README.md +15 -33
- 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 +9 -9
- package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +11 -11
- package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +8 -8
- package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +11 -3
- package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
- package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
- package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
- package/api/@xmachines/play-vue/variables/schema.md +71 -0
- package/api/@xmachines/play-vue-router/README.md +34 -77
- package/api/@xmachines/play-vue-router/errors/README.md +8 -0
- package/api/@xmachines/play-vue-router/errors/classes/VueRouterNavigationError.md +193 -0
- package/api/@xmachines/play-vue-router/errors/classes/VueRouterSendError.md +177 -0
- package/api/@xmachines/play-vue-router/index/README.md +20 -0
- package/api/@xmachines/play-vue-router/index/classes/RouteMap.md +157 -0
- package/api/@xmachines/play-vue-router/{classes → index/classes}/VueRouterBridge.md +24 -43
- package/api/@xmachines/play-vue-router/index/interfaces/PlayRouteEvent.md +130 -0
- package/api/@xmachines/play-vue-router/index/interfaces/RoutableActor.md +72 -0
- package/api/@xmachines/play-vue-router/{interfaces → index/interfaces}/RouteMapOptions.md +5 -5
- package/api/@xmachines/play-vue-router/{interfaces → index/interfaces}/RouteMapping.md +6 -6
- package/api/@xmachines/play-vue-router/{interfaces → index/interfaces}/RouterBridge.md +5 -5
- package/api/@xmachines/play-vue-router/{variables → index/variables}/PlayRouterProvider.md +4 -4
- package/api/@xmachines/play-xstate/README.md +153 -105
- package/api/@xmachines/play-xstate/errors/README.md +13 -0
- package/api/@xmachines/play-xstate/errors/classes/ActorThrewNonErrorError.md +199 -0
- package/api/@xmachines/play-xstate/errors/classes/InvalidEventError.md +198 -0
- package/api/@xmachines/play-xstate/errors/classes/InvalidMachineError.md +169 -0
- package/api/@xmachines/play-xstate/errors/classes/InvalidRouteHandlerError.md +197 -0
- package/api/@xmachines/play-xstate/errors/classes/InvalidRouteMetadataError.md +176 -0
- package/api/@xmachines/play-xstate/errors/classes/MissingRouteParamError.md +199 -0
- package/api/@xmachines/play-xstate/errors/classes/MissingStateIdError.md +203 -0
- package/api/@xmachines/play-xstate/index/README.md +38 -0
- package/api/@xmachines/play-xstate/index/classes/PlayerActor.md +584 -0
- package/api/@xmachines/play-xstate/index/functions/compose.md +224 -0
- package/api/@xmachines/play-xstate/index/functions/definePlayer.md +158 -0
- package/api/@xmachines/play-xstate/index/interfaces/PlayerConfig.md +22 -0
- package/api/@xmachines/play-xstate/{interfaces → index/interfaces}/PlayerFactoryResumeOptions.md +3 -3
- package/api/@xmachines/play-xstate/{interfaces → index/interfaces}/PlayerOptions.md +8 -8
- package/api/@xmachines/play-xstate/index/type-aliases/Capability.md +33 -0
- package/api/@xmachines/play-xstate/index/type-aliases/PlayerConstructor.md +39 -0
- package/api/@xmachines/play-xstate/index/type-aliases/PlayerFactory.md +27 -0
- package/api/@xmachines/{play-router → play-xstate/index}/variables/DISPOSE.md +3 -3
- package/api/@xmachines/play-xstate/with-routing/README.md +46 -0
- package/api/@xmachines/play-xstate/{functions → with-routing/functions}/buildRouteUrl.md +2 -2
- package/api/@xmachines/play-xstate/{functions → with-routing/functions}/deriveRoute.md +4 -4
- package/api/@xmachines/play-xstate/{functions → with-routing/functions}/formatPlayRouteTransitions.md +2 -2
- package/api/@xmachines/play-xstate/{functions → with-routing/functions}/isAbsoluteRoute.md +3 -3
- package/api/@xmachines/play-xstate/with-routing/functions/withRouting.md +36 -0
- package/api/@xmachines/play-xstate/{interfaces → with-routing/interfaces}/RouteContext.md +6 -6
- package/api/@xmachines/play-xstate/with-routing/interfaces/RouteObject.md +34 -0
- package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteData.md +12 -0
- package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteDataResolver.md +31 -0
- package/api/@xmachines/play-xstate/{type-aliases → with-routing/type-aliases}/RouteMachineConfig.md +5 -5
- package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMetadata.md +11 -0
- package/api/@xmachines/play-xstate/{type-aliases → with-routing/type-aliases}/RouteStateNode.md +21 -7
- package/api/@xmachines/play-xstate/with-view/README.md +31 -0
- package/api/@xmachines/play-xstate/with-view/functions/withView.md +32 -0
- package/api/@xmachines/shared/README.md +10 -32
- package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
- package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +2 -2
- package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
- package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +2 -1
- package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +4 -4
- package/api/README.md +2 -0
- package/api/llms.txt +15 -10
- package/contributing/architecture.md +94 -66
- package/contributing/configuration.md +85 -26
- package/contributing/deployment.md +30 -28
- package/contributing/development.md +51 -10
- package/contributing/testing.md +87 -28
- package/examples/README.md +9 -7
- package/examples/form-validation.md +3 -2
- package/examples/multi-router-integration.md +61 -39
- package/examples/routing-patterns.md +15 -14
- package/examples/traffic-light.md +11 -5
- package/guides/README.md +1 -0
- package/guides/actor-model.md +35 -26
- package/guides/getting-started.md +49 -46
- package/guides/inspector.md +4 -4
- package/guides/routing.md +245 -0
- package/guides/state-machines.md +16 -17
- package/package.json +10 -9
- package/rfc/play.md +35 -22
- package/api/@xmachines/play-actor/classes/AbstractActor.md +0 -505
- package/api/@xmachines/play-actor/interfaces/BaseActorProviderProps.md +0 -48
- package/api/@xmachines/play-actor/interfaces/Routable.md +0 -14
- package/api/@xmachines/play-dom/type-aliases/DisposablePlayUI.md +0 -36
- package/api/@xmachines/play-dom-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-dom-router/interfaces/DisposableBrowserHistory.md +0 -262
- package/api/@xmachines/play-dom-router/interfaces/DisposableVanillaRouter.md +0 -80
- package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +0 -122
- package/api/@xmachines/play-react/type-aliases/PlayRendererProps.md +0 -13
- package/api/@xmachines/play-react-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-react-router/interfaces/PlayActor.md +0 -70
- package/api/@xmachines/play-router/functions/getNavigableRoutes.md +0 -35
- package/api/@xmachines/play-router/functions/getPatternParamNames.md +0 -24
- package/api/@xmachines/play-router/functions/getRequiredPatternParamNames.md +0 -36
- package/api/@xmachines/play-router/functions/routeExists.md +0 -26
- package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +0 -13
- package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +0 -15
- package/api/@xmachines/play-router/interfaces/MachineNodeData.md +0 -17
- package/api/@xmachines/play-router/interfaces/PlayActor.md +0 -70
- package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +0 -135
- package/api/@xmachines/play-router/interfaces/RoutableActor.md +0 -65
- package/api/@xmachines/play-router/interfaces/RouteMatch.md +0 -12
- package/api/@xmachines/play-router/interfaces/RouteObject.md +0 -21
- package/api/@xmachines/play-router/interfaces/RouteTree.md +0 -21
- package/api/@xmachines/play-router/type-aliases/BaseRouteMapping.md +0 -13
- package/api/@xmachines/play-router/type-aliases/PlayRouterBridgeConstructor.md +0 -36
- package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +0 -11
- package/api/@xmachines/play-solid-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +0 -471
- package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +0 -13
- package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +0 -9
- package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +0 -9
- package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +0 -29
- package/api/@xmachines/play-tanstack-react-router/interfaces/PlayActor.md +0 -70
- package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +0 -31
- package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayActor.md +0 -70
- package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +0 -13
- package/api/@xmachines/play-vue/interfaces/VisibilityProviderProps.md +0 -9
- package/api/@xmachines/play-vue/variables/getPlayViewContext.md +0 -39
- package/api/@xmachines/play-vue-router/functions/createRouteMap.md +0 -40
- package/api/@xmachines/play-vue-router/interfaces/PlayActor.md +0 -70
- package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +0 -135
- package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +0 -13
- package/api/@xmachines/play-vue-router/type-aliases/VueRouteMap.md +0 -13
- package/api/@xmachines/play-vue-router/variables/VueRouteMap.md +0 -13
- package/api/@xmachines/play-xstate/classes/PlayerActor.md +0 -568
- package/api/@xmachines/play-xstate/functions/composeGuards.md +0 -86
- package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +0 -72
- package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +0 -43
- package/api/@xmachines/play-xstate/functions/definePlayer.md +0 -78
- package/api/@xmachines/play-xstate/functions/eventMatches.md +0 -45
- package/api/@xmachines/play-xstate/functions/hasContext.md +0 -45
- package/api/@xmachines/play-xstate/functions/negateGuard.md +0 -67
- package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +0 -20
- package/api/@xmachines/play-xstate/interfaces/RouteObject.md +0 -17
- package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +0 -19
- package/api/@xmachines/play-xstate/type-aliases/Guard.md +0 -36
- package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +0 -23
- package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +0 -26
- package/api/@xmachines/play-xstate/type-aliases/RouteMetadata.md +0 -9
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
[API](../../../README.md) / [@xmachines/play-actor](../README.md) / BaseActorProviderProps
|
|
2
|
-
|
|
3
|
-
# Interface: BaseActorProviderProps\<TRegistry\>
|
|
4
|
-
|
|
5
|
-
Defined in: [packages/play-actor/src/abstract-actor.ts:159](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-actor/src/abstract-actor.ts#L159)
|
|
6
|
-
|
|
7
|
-
The framework-agnostic base props. Every `ActorProvider` implementation shares
|
|
8
|
-
them: React, Vue, Solid, and Svelte. `TRegistry` holds the
|
|
9
|
-
`DefineRegistryResult` type of the framework. `RenderErrorHandler` comes from
|
|
10
|
-
`@xmachines/json-render-core`, and a second generic parameter is therefore not
|
|
11
|
-
necessary.
|
|
12
|
-
|
|
13
|
-
Each framework package extends this interface with its `fallback` field, its
|
|
14
|
-
`onError` field, and its `children` field.
|
|
15
|
-
|
|
16
|
-
## Example
|
|
17
|
-
|
|
18
|
-
```ts
|
|
19
|
-
import type { BaseActorProviderProps } from "@xmachines/play-actor";
|
|
20
|
-
import type { DefineRegistryResult } from "@xmachines/json-render-react";
|
|
21
|
-
|
|
22
|
-
interface ActorProviderProps extends BaseActorProviderProps<DefineRegistryResult> {
|
|
23
|
-
fallback?: React.ReactNode;
|
|
24
|
-
children: React.ReactNode;
|
|
25
|
-
}
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
## Extended by
|
|
29
|
-
|
|
30
|
-
- [`ActorProviderProps`](../../play-react/interfaces/ActorProviderProps.md)
|
|
31
|
-
- [`ActorProviderProps`](../../play-solid/interfaces/ActorProviderProps.md)
|
|
32
|
-
- [`ActorProviderProps`](../../play-svelte/interfaces/ActorProviderProps.md)
|
|
33
|
-
- [`ActorProviderProps`](../../play-vue/interfaces/ActorProviderProps.md)
|
|
34
|
-
|
|
35
|
-
## Type Parameters
|
|
36
|
-
|
|
37
|
-
| Type Parameter | Description |
|
|
38
|
-
| ------------------------------ | ------------------------------------------------- |
|
|
39
|
-
| `TRegistry` _extends_ `object` | The `DefineRegistryResult` type of the framework. |
|
|
40
|
-
|
|
41
|
-
## Properties
|
|
42
|
-
|
|
43
|
-
| Property | Type | Description | Defined in |
|
|
44
|
-
| ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
45
|
-
| <a id="property-actor"></a> `actor` | [`AbstractActor`](../classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Viewable`](Viewable.md) | The actor instance with the currentView signal. It requires the Viewable capability. | [packages/play-actor/src/abstract-actor.ts:163](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-actor/src/abstract-actor.ts#L163) |
|
|
46
|
-
| <a id="property-onrendererror"></a> `onRenderError?` | [`RenderErrorHandler`](../../play-dom/type-aliases/RenderErrorHandler.md) | The provider calls it when one catalog component throws during a render. This handler replaces every onRenderError of defineRegistry. | [packages/play-actor/src/abstract-actor.ts:177](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-actor/src/abstract-actor.ts#L177) |
|
|
47
|
-
| <a id="property-registryresult"></a> `registryResult` | `TRegistry` | The complete result of defineRegistry(). It holds the component registry and the factory of the action handlers. | [packages/play-actor/src/abstract-actor.ts:165](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-actor/src/abstract-actor.ts#L165) |
|
|
48
|
-
| <a id="property-store"></a> `store?` | `StateStore` | The optional external StateStore, which is the controlled mode. With this option, the provider ignores spec.state, and this store is the single source of truth. Without it, the provider makes a new @xstate/store atom for each view transition, with the values of spec.state. | [packages/play-actor/src/abstract-actor.ts:172](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-actor/src/abstract-actor.ts#L172) |
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
[API](../../../README.md) / [@xmachines/play-actor](../README.md) / Routable
|
|
2
|
-
|
|
3
|
-
# Interface: Routable
|
|
4
|
-
|
|
5
|
-
Defined in: [packages/play-actor/src/abstract-actor.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-actor/src/abstract-actor.ts#L33)
|
|
6
|
-
|
|
7
|
-
An optional capability: the routing support
|
|
8
|
-
|
|
9
|
-
## Properties
|
|
10
|
-
|
|
11
|
-
| Property | Modifier | Type | Defined in |
|
|
12
|
-
| ------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
13
|
-
| <a id="property-currentroute"></a> `currentRoute` | `readonly` | [`Computed`](../../play-signals/namespaces/Signal/classes/Computed.md)\<`string` \| `null`\> | [packages/play-actor/src/abstract-actor.ts:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-actor/src/abstract-actor.ts#L34) |
|
|
14
|
-
| <a id="property-initialroute"></a> `initialRoute` | `readonly` | `string` \| `null` | [packages/play-actor/src/abstract-actor.ts:35](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-actor/src/abstract-actor.ts#L35) |
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
[API](../../../README.md) / [@xmachines/play-dom](../README.md) / DisposablePlayUI
|
|
2
|
-
|
|
3
|
-
# Type Alias: DisposablePlayUI
|
|
4
|
-
|
|
5
|
-
```ts
|
|
6
|
-
type DisposablePlayUI = (...args) => Cleanup;
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
Defined in: [packages/play-dom/src/create-play-ui.ts:102](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom/src/create-play-ui.ts#L102)
|
|
10
|
-
|
|
11
|
-
The mount function that [createPlayUI](../functions/createPlayUI.md) builds.
|
|
12
|
-
|
|
13
|
-
It IS a [MountFn](MountFn.md), and it says one thing more: the mount hands back a
|
|
14
|
-
[Cleanup](Cleanup.md), so a caller may release it with `using` and write no teardown.
|
|
15
|
-
|
|
16
|
-
```ts
|
|
17
|
-
const mount = createPlayUI(registryResult);
|
|
18
|
-
{
|
|
19
|
-
using stop = mount(actor, container);
|
|
20
|
-
// stop() runs at the end of the scope, and after an exception too
|
|
21
|
-
}
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
A narrowed return and not a narrowed `MountFn`: the return type of a function may
|
|
25
|
-
narrow, so this costs a consumer that writes a `MountFn` nothing. The parameters come
|
|
26
|
-
from `MountFn` through `Parameters`, so the two signatures cannot drift.
|
|
27
|
-
|
|
28
|
-
## Parameters
|
|
29
|
-
|
|
30
|
-
| Parameter | Type |
|
|
31
|
-
| --------- | --------------------------------------- |
|
|
32
|
-
| ...`args` | `Parameters`\<[`MountFn`](MountFn.md)\> |
|
|
33
|
-
|
|
34
|
-
## Returns
|
|
35
|
-
|
|
36
|
-
[`Cleanup`](Cleanup.md)
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
[API](../../../README.md) / [@xmachines/play-dom-router](../README.md) / createRouteMap
|
|
2
|
-
|
|
3
|
-
# Function: createRouteMap()
|
|
4
|
-
|
|
5
|
-
```ts
|
|
6
|
-
function createRouteMap(machine, options?): RouteMap;
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
Defined in: [play-router/src/create-route-map.ts:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-router/src/create-route-map.ts#L47)
|
|
10
|
-
|
|
11
|
-
Creates a `RouteMap` from an XState state machine.
|
|
12
|
-
|
|
13
|
-
The function reads every state with a route, which means each state with a
|
|
14
|
-
`meta.route` field. It then builds the lookup structure between a path and a
|
|
15
|
-
stateId, for both directions. A subclass of `RouterBridgeBase` uses the map: it
|
|
16
|
-
converts each change of the browser URL into a `play.route` actor event, and each
|
|
17
|
-
actor route into a URL.
|
|
18
|
-
|
|
19
|
-
## Parameters
|
|
20
|
-
|
|
21
|
-
| Parameter | Type | Description |
|
|
22
|
-
| ---------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
|
|
23
|
-
| `machine` | [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | The XState v5 state machine, with a `meta.route` annotation on each state with a route. |
|
|
24
|
-
| `options?` | [`RouteMapOptions`](../interfaces/RouteMapOptions.md) | The optional configuration. Give `{ cacheSize }` to change the default size of the LRU cache of the parameterized path lookups. |
|
|
25
|
-
|
|
26
|
-
## Returns
|
|
27
|
-
|
|
28
|
-
[`RouteMap`](../interfaces/RouteMap.md)
|
|
29
|
-
|
|
30
|
-
A `RouteMap` for each adapter on `RouterBridgeBase`.
|
|
31
|
-
|
|
32
|
-
## Example
|
|
33
|
-
|
|
34
|
-
```typescript
|
|
35
|
-
import { createRouteMap } from "@xmachines/play-router";
|
|
36
|
-
import { connectRouter } from "@xmachines/play-dom-router";
|
|
37
|
-
|
|
38
|
-
const routeMap = createRouteMap(myMachine);
|
|
39
|
-
const disconnect = connectRouter({ actor, router, routeMap });
|
|
40
|
-
```
|
|
@@ -1,262 +0,0 @@
|
|
|
1
|
-
[API](../../../README.md) / [@xmachines/play-dom-router](../README.md) / DisposableBrowserHistory
|
|
2
|
-
|
|
3
|
-
# Interface: DisposableBrowserHistory
|
|
4
|
-
|
|
5
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:87](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L87)
|
|
6
|
-
|
|
7
|
-
The history that [createBrowserHistory](../functions/createBrowserHistory.md) builds.
|
|
8
|
-
|
|
9
|
-
It IS a [BrowserHistory](BrowserHistory.md), and it says one thing more: `subscribe` hands back a
|
|
10
|
-
[Cleanup](../type-aliases/Cleanup.md), so a caller may release it with `using` and write no teardown.
|
|
11
|
-
|
|
12
|
-
```ts
|
|
13
|
-
const history = createBrowserHistory({ window });
|
|
14
|
-
{
|
|
15
|
-
using stop = history.subscribe((location) => render(location));
|
|
16
|
-
// stop() runs at the end of the scope, and after an exception too
|
|
17
|
-
}
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
The history itself is a `Disposable` too, and [BrowserHistory.destroy](BrowserHistory.md#destroy) is what it
|
|
21
|
-
releases. `destroy()` unpatches `history.pushState` and `history.replaceState` of the
|
|
22
|
-
window, so a scope that drops the history without it leaves the global patched:
|
|
23
|
-
|
|
24
|
-
```ts
|
|
25
|
-
{
|
|
26
|
-
using history = createBrowserHistory({ window });
|
|
27
|
-
history.push("/first");
|
|
28
|
-
// destroy() runs at the end of the scope, and after an exception too
|
|
29
|
-
}
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
A narrowed return and not a narrowed interface: the return type of a method may narrow
|
|
33
|
-
in an extension, so this costs an implementer of `BrowserHistory` nothing. The dispose
|
|
34
|
-
key is added here, and not on `BrowserHistory`, for the same reason.
|
|
35
|
-
|
|
36
|
-
## Extends
|
|
37
|
-
|
|
38
|
-
- [`BrowserHistory`](BrowserHistory.md)
|
|
39
|
-
|
|
40
|
-
## Properties
|
|
41
|
-
|
|
42
|
-
| Property | Modifier | Type | Description | Inherited from | Defined in |
|
|
43
|
-
| ----------------------------------------- | ---------- | --------- | ----------------------------------------- | --------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
44
|
-
| <a id="property-location"></a> `location` | `readonly` | `object` | Returns the state of the current location | [`BrowserHistory`](BrowserHistory.md).[`location`](BrowserHistory.md#property-location) | [play-dom-router/src/create-browser-history.ts:7](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L7) |
|
|
45
|
-
| `location.hash` | `public` | `string` | - | - | [play-dom-router/src/create-browser-history.ts:10](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L10) |
|
|
46
|
-
| `location.pathname` | `public` | `string` | - | - | [play-dom-router/src/create-browser-history.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L8) |
|
|
47
|
-
| `location.search` | `public` | `string` | - | - | [play-dom-router/src/create-browser-history.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L9) |
|
|
48
|
-
| `location.state` | `public` | `unknown` | - | - | [play-dom-router/src/create-browser-history.ts:11](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L11) |
|
|
49
|
-
|
|
50
|
-
## Methods
|
|
51
|
-
|
|
52
|
-
### \[dispose\]()
|
|
53
|
-
|
|
54
|
-
```ts
|
|
55
|
-
dispose: void;
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:91](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L91)
|
|
59
|
-
|
|
60
|
-
Releases the history with [BrowserHistory.destroy](BrowserHistory.md#destroy). It is idempotent.
|
|
61
|
-
|
|
62
|
-
#### Returns
|
|
63
|
-
|
|
64
|
-
`void`
|
|
65
|
-
|
|
66
|
-
---
|
|
67
|
-
|
|
68
|
-
### back()
|
|
69
|
-
|
|
70
|
-
```ts
|
|
71
|
-
back(): void;
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L28)
|
|
75
|
-
|
|
76
|
-
#### Returns
|
|
77
|
-
|
|
78
|
-
`void`
|
|
79
|
-
|
|
80
|
-
#### Inherited from
|
|
81
|
-
|
|
82
|
-
[`BrowserHistory`](BrowserHistory.md).[`back`](BrowserHistory.md#back)
|
|
83
|
-
|
|
84
|
-
---
|
|
85
|
-
|
|
86
|
-
### createHref()
|
|
87
|
-
|
|
88
|
-
```ts
|
|
89
|
-
createHref(path): string;
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:46](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L46)
|
|
93
|
-
|
|
94
|
-
Creates an href from a path
|
|
95
|
-
|
|
96
|
-
#### Parameters
|
|
97
|
-
|
|
98
|
-
| Parameter | Type |
|
|
99
|
-
| --------- | -------- |
|
|
100
|
-
| `path` | `string` |
|
|
101
|
-
|
|
102
|
-
#### Returns
|
|
103
|
-
|
|
104
|
-
`string`
|
|
105
|
-
|
|
106
|
-
#### Inherited from
|
|
107
|
-
|
|
108
|
-
[`BrowserHistory`](BrowserHistory.md).[`createHref`](BrowserHistory.md#createhref)
|
|
109
|
-
|
|
110
|
-
---
|
|
111
|
-
|
|
112
|
-
### destroy()
|
|
113
|
-
|
|
114
|
-
```ts
|
|
115
|
-
destroy(): void;
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:54](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L54)
|
|
119
|
-
|
|
120
|
-
Cleans up.
|
|
121
|
-
|
|
122
|
-
A second call is safe. When more than one wrapper shares the same
|
|
123
|
-
`window.history`, the last wrapper restores the original methods.
|
|
124
|
-
|
|
125
|
-
#### Returns
|
|
126
|
-
|
|
127
|
-
`void`
|
|
128
|
-
|
|
129
|
-
#### Inherited from
|
|
130
|
-
|
|
131
|
-
[`BrowserHistory`](BrowserHistory.md).[`destroy`](BrowserHistory.md#destroy)
|
|
132
|
-
|
|
133
|
-
---
|
|
134
|
-
|
|
135
|
-
### forward()
|
|
136
|
-
|
|
137
|
-
```ts
|
|
138
|
-
forward(): void;
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:29](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L29)
|
|
142
|
-
|
|
143
|
-
#### Returns
|
|
144
|
-
|
|
145
|
-
`void`
|
|
146
|
-
|
|
147
|
-
#### Inherited from
|
|
148
|
-
|
|
149
|
-
[`BrowserHistory`](BrowserHistory.md).[`forward`](BrowserHistory.md#forward)
|
|
150
|
-
|
|
151
|
-
---
|
|
152
|
-
|
|
153
|
-
### go()
|
|
154
|
-
|
|
155
|
-
```ts
|
|
156
|
-
go(delta): void;
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:27](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L27)
|
|
160
|
-
|
|
161
|
-
Moves back or forward in the history
|
|
162
|
-
|
|
163
|
-
#### Parameters
|
|
164
|
-
|
|
165
|
-
| Parameter | Type |
|
|
166
|
-
| --------- | -------- |
|
|
167
|
-
| `delta` | `number` |
|
|
168
|
-
|
|
169
|
-
#### Returns
|
|
170
|
-
|
|
171
|
-
`void`
|
|
172
|
-
|
|
173
|
-
#### Inherited from
|
|
174
|
-
|
|
175
|
-
[`BrowserHistory`](BrowserHistory.md).[`go`](BrowserHistory.md#go)
|
|
176
|
-
|
|
177
|
-
---
|
|
178
|
-
|
|
179
|
-
### push()
|
|
180
|
-
|
|
181
|
-
```ts
|
|
182
|
-
push(path, state?): void;
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:17](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L17)
|
|
186
|
-
|
|
187
|
-
Pushes a new URL to the history
|
|
188
|
-
|
|
189
|
-
#### Parameters
|
|
190
|
-
|
|
191
|
-
| Parameter | Type |
|
|
192
|
-
| --------- | --------- |
|
|
193
|
-
| `path` | `string` |
|
|
194
|
-
| `state?` | `unknown` |
|
|
195
|
-
|
|
196
|
-
#### Returns
|
|
197
|
-
|
|
198
|
-
`void`
|
|
199
|
-
|
|
200
|
-
#### Inherited from
|
|
201
|
-
|
|
202
|
-
[`BrowserHistory`](BrowserHistory.md).[`push`](BrowserHistory.md#push)
|
|
203
|
-
|
|
204
|
-
---
|
|
205
|
-
|
|
206
|
-
### replace()
|
|
207
|
-
|
|
208
|
-
```ts
|
|
209
|
-
replace(path, state?): void;
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:22](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L22)
|
|
213
|
-
|
|
214
|
-
Replaces the current URL in the history
|
|
215
|
-
|
|
216
|
-
#### Parameters
|
|
217
|
-
|
|
218
|
-
| Parameter | Type |
|
|
219
|
-
| --------- | --------- |
|
|
220
|
-
| `path` | `string` |
|
|
221
|
-
| `state?` | `unknown` |
|
|
222
|
-
|
|
223
|
-
#### Returns
|
|
224
|
-
|
|
225
|
-
`void`
|
|
226
|
-
|
|
227
|
-
#### Inherited from
|
|
228
|
-
|
|
229
|
-
[`BrowserHistory`](BrowserHistory.md).[`replace`](BrowserHistory.md#replace)
|
|
230
|
-
|
|
231
|
-
---
|
|
232
|
-
|
|
233
|
-
### subscribe()
|
|
234
|
-
|
|
235
|
-
```ts
|
|
236
|
-
subscribe(...args): Cleanup;
|
|
237
|
-
```
|
|
238
|
-
|
|
239
|
-
Defined in: [play-dom-router/src/create-browser-history.ts:88](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-browser-history.ts#L88)
|
|
240
|
-
|
|
241
|
-
Subscribes to the history changes.
|
|
242
|
-
It returns a function that cancels the subscription.
|
|
243
|
-
|
|
244
|
-
The return is a plain function here, because a consumer IMPLEMENTS this interface
|
|
245
|
-
to inject its own history for a test or for SSR. A `Cleanup` return would refuse
|
|
246
|
-
every implementation that hands a plain function back.
|
|
247
|
-
DisposableBrowserHistory narrows it for the value that
|
|
248
|
-
[createBrowserHistory](../functions/createBrowserHistory.md) builds, which nothing implements.
|
|
249
|
-
|
|
250
|
-
#### Parameters
|
|
251
|
-
|
|
252
|
-
| Parameter | Type |
|
|
253
|
-
| --------- | -------------------------- |
|
|
254
|
-
| ...`args` | \[(`location`) => `void`\] |
|
|
255
|
-
|
|
256
|
-
#### Returns
|
|
257
|
-
|
|
258
|
-
[`Cleanup`](../type-aliases/Cleanup.md)
|
|
259
|
-
|
|
260
|
-
#### Overrides
|
|
261
|
-
|
|
262
|
-
[`BrowserHistory`](BrowserHistory.md).[`subscribe`](BrowserHistory.md#subscribe)
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
[API](../../../README.md) / [@xmachines/play-dom-router](../README.md) / DisposableVanillaRouter
|
|
2
|
-
|
|
3
|
-
# Interface: DisposableVanillaRouter\<History\>
|
|
4
|
-
|
|
5
|
-
Defined in: [play-dom-router/src/create-router.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-router.ts#L59)
|
|
6
|
-
|
|
7
|
-
The router that [createRouter](../functions/createRouter.md) returns: a [VanillaRouter](VanillaRouter.md) that a `using`
|
|
8
|
-
scope can hold.
|
|
9
|
-
|
|
10
|
-
The router OWNS the history, and the history patches `window.history.pushState`. It was
|
|
11
|
-
the one release of this package that a scope could not hold: the history, a
|
|
12
|
-
subscription of it, and the connection of the router each carry the protocol, and the
|
|
13
|
-
router itself carried none, so a scope that forgot `destroy()` left the global patched.
|
|
14
|
-
|
|
15
|
-
The release covers the HISTORY alone, exactly as `destroy()` always did. `connectRouter`
|
|
16
|
-
hands back its own `RouterConnection`, and a scope that ends releases no connection for
|
|
17
|
-
the caller: release the connection first, then the router.
|
|
18
|
-
|
|
19
|
-
```ts
|
|
20
|
-
using router = createRouter({ routeTree, history });
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
The key sits on THIS type and not on [VanillaRouter](VanillaRouter.md), exactly as
|
|
24
|
-
`DisposableBrowserHistory` sits beside `BrowserHistory`: a caller that builds a router
|
|
25
|
-
of its own — a test double, or a router of another history — keeps a type that asks for
|
|
26
|
-
no dispose key.
|
|
27
|
-
|
|
28
|
-
A caller that keeps `destroy()` keeps it: the two release the same work, and the
|
|
29
|
-
release is idempotent because `BrowserHistory.destroy` is.
|
|
30
|
-
|
|
31
|
-
## Extends
|
|
32
|
-
|
|
33
|
-
- [`VanillaRouter`](VanillaRouter.md)\<`History`\>
|
|
34
|
-
|
|
35
|
-
## Type Parameters
|
|
36
|
-
|
|
37
|
-
| Type Parameter | Default type |
|
|
38
|
-
| --------------------------------------------------------- | ------------------------------------- |
|
|
39
|
-
| `History` _extends_ [`BrowserHistory`](BrowserHistory.md) | [`BrowserHistory`](BrowserHistory.md) |
|
|
40
|
-
|
|
41
|
-
## Properties
|
|
42
|
-
|
|
43
|
-
| Property | Modifier | Type | Description | Inherited from | Defined in |
|
|
44
|
-
| ------------------------------------------- | ---------- | -------------------------------------------------------- | ----------------------------------------------- | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
45
|
-
| <a id="property-history"></a> `history` | `readonly` | `History` | The history instance | [`VanillaRouter`](VanillaRouter.md).[`history`](VanillaRouter.md#property-history) | [play-dom-router/src/create-router.ts:21](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-router.ts#L21) |
|
|
46
|
-
| <a id="property-routetree"></a> `routeTree` | `readonly` | [`RouteTree`](../../play-router/interfaces/RouteTree.md) | The route tree, as a reference to the structure | [`VanillaRouter`](VanillaRouter.md).[`routeTree`](VanillaRouter.md#property-routetree) | [play-dom-router/src/create-router.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-router.ts#L26) |
|
|
47
|
-
|
|
48
|
-
## Methods
|
|
49
|
-
|
|
50
|
-
### \[dispose\]()
|
|
51
|
-
|
|
52
|
-
```ts
|
|
53
|
-
dispose: void;
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
Defined in: [play-dom-router/src/create-router.ts:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-router.ts#L62)
|
|
57
|
-
|
|
58
|
-
#### Returns
|
|
59
|
-
|
|
60
|
-
`void`
|
|
61
|
-
|
|
62
|
-
---
|
|
63
|
-
|
|
64
|
-
### destroy()
|
|
65
|
-
|
|
66
|
-
```ts
|
|
67
|
-
destroy(): void;
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
Defined in: [play-dom-router/src/create-router.ts:31](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-dom-router/src/create-router.ts#L31)
|
|
71
|
-
|
|
72
|
-
Cleans up
|
|
73
|
-
|
|
74
|
-
#### Returns
|
|
75
|
-
|
|
76
|
-
`void`
|
|
77
|
-
|
|
78
|
-
#### Inherited from
|
|
79
|
-
|
|
80
|
-
[`VanillaRouter`](VanillaRouter.md).[`destroy`](VanillaRouter.md#destroy)
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
[API](../../../README.md) / [@xmachines/play-dom-router](../README.md) / RouteMap
|
|
2
|
-
|
|
3
|
-
# Interface: RouteMap
|
|
4
|
-
|
|
5
|
-
Defined in: [play-router/src/base-route-map.ts:105](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-router/src/base-route-map.ts#L105)
|
|
6
|
-
|
|
7
|
-
The shared base class of the route map for both directions.
|
|
8
|
-
|
|
9
|
-
Every framework adapter uses this class as its route map. An adapter adds no logic
|
|
10
|
-
of its own, and it inherits the complete public API from here.
|
|
11
|
-
|
|
12
|
-
**The strategy of a lookup:**
|
|
13
|
-
|
|
14
|
-
- A static path, without a `:param` → a `Map` lookup in O(1)
|
|
15
|
-
- A dynamic path → a scan of the bucket index in O(k), with `URLPattern`, where
|
|
16
|
-
`k` is the number of the routes with the same first path segment
|
|
17
|
-
- The class keeps each result of a first match in an LRU cache. The default size
|
|
18
|
-
is 500 entries, and the `cacheSize` constructor option changes it
|
|
19
|
-
|
|
20
|
-
**The syntax of a pattern** (`:param`, `:param?`, and `*`):
|
|
21
|
-
|
|
22
|
-
- `:param` — a necessary segment. It matches exactly one segment without a `/`
|
|
23
|
-
- `:param?` — an optional segment. It matches zero segments or one segment without a `/`
|
|
24
|
-
- `*` — a wildcard. It matches each number of segments, as URLPattern defines
|
|
25
|
-
|
|
26
|
-
**The forms of a stateId:** you can register a stateId, and you can look one up,
|
|
27
|
-
in the form `"#stateId"` or in the form `"stateId"`. `RouteMap` makes the
|
|
28
|
-
canonical form itself. `getStateIdByPath` returns the stateId exactly as you
|
|
29
|
-
registered it, and `getPathByStateId` accepts both forms. A registration of the
|
|
30
|
-
same stateId in both forms gives one entry, and the later registration wins for
|
|
31
|
-
the lookup in the other direction.
|
|
32
|
-
|
|
33
|
-
## Example
|
|
34
|
-
|
|
35
|
-
```typescript
|
|
36
|
-
import { RouteMap } from "@xmachines/play-router";
|
|
37
|
-
|
|
38
|
-
const map = new RouteMap([
|
|
39
|
-
{ stateId: "home", path: "/" },
|
|
40
|
-
{ stateId: "profile", path: "/profile/:userId" },
|
|
41
|
-
{ stateId: "settings", path: "/settings/:section?" },
|
|
42
|
-
]);
|
|
43
|
-
|
|
44
|
-
map.getStateIdByPath("/"); // "home"
|
|
45
|
-
map.getStateIdByPath("/profile/123"); // "profile"
|
|
46
|
-
map.getStateIdByPath("/settings"); // "settings"
|
|
47
|
-
map.getStateIdByPath("/unknown"); // null
|
|
48
|
-
|
|
49
|
-
map.getPathByStateId("profile"); // "/profile/:userId"
|
|
50
|
-
map.getPathByStateId("missing"); // null
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## Methods
|
|
54
|
-
|
|
55
|
-
### getPathByStateId()
|
|
56
|
-
|
|
57
|
-
```ts
|
|
58
|
-
getPathByStateId(stateId): string | null;
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
Defined in: [play-router/src/base-route-map.ts:229](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-router/src/base-route-map.ts#L229)
|
|
62
|
-
|
|
63
|
-
Returns the path pattern of a state ID.
|
|
64
|
-
|
|
65
|
-
The method accepts the stateId in the form `"#stateId"` and in the form
|
|
66
|
-
`"stateId"`, and the form of the registration has no effect. The method makes the
|
|
67
|
-
canonical form itself. Therefore a consumer tries never both forms.
|
|
68
|
-
|
|
69
|
-
#### Parameters
|
|
70
|
-
|
|
71
|
-
| Parameter | Type | Description |
|
|
72
|
-
| --------- | -------- | --------------------------------------------------------------------------- |
|
|
73
|
-
| `stateId` | `string` | The state ID of the state machine, for example `"profile"` or `"#settings"` |
|
|
74
|
-
|
|
75
|
-
#### Returns
|
|
76
|
-
|
|
77
|
-
`string` \| `null`
|
|
78
|
-
|
|
79
|
-
The registered path pattern, or `null` when the state ID is unknown
|
|
80
|
-
|
|
81
|
-
#### Example
|
|
82
|
-
|
|
83
|
-
```typescript
|
|
84
|
-
map.getPathByStateId("profile"); // "/profile/:userId"
|
|
85
|
-
map.getPathByStateId("#profile"); // "/profile/:userId" — the same entry
|
|
86
|
-
map.getPathByStateId("missing"); // null
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
---
|
|
90
|
-
|
|
91
|
-
### getStateIdByPath()
|
|
92
|
-
|
|
93
|
-
```ts
|
|
94
|
-
getStateIdByPath(path): string | null;
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
Defined in: [play-router/src/base-route-map.ts:189](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-router/src/base-route-map.ts#L189)
|
|
98
|
-
|
|
99
|
-
Resolves a URL path to its state ID.
|
|
100
|
-
|
|
101
|
-
The method removes the query string and the hash fragment before the match. It
|
|
102
|
-
tries an exact lookup in O(1) first, then it uses the pattern match on the bucket
|
|
103
|
-
index. It keeps each result of a first pattern match in the cache.
|
|
104
|
-
|
|
105
|
-
#### Parameters
|
|
106
|
-
|
|
107
|
-
| Parameter | Type | Description |
|
|
108
|
-
| --------- | -------- | -------------------------------------------------------------------------------------- |
|
|
109
|
-
| `path` | `string` | The URL pathname. It can hold a query and a hash, for example `"/profile/123?ref=nav"` |
|
|
110
|
-
|
|
111
|
-
#### Returns
|
|
112
|
-
|
|
113
|
-
`string` \| `null`
|
|
114
|
-
|
|
115
|
-
The state ID of the path, or `null` when no route matches
|
|
116
|
-
|
|
117
|
-
#### Example
|
|
118
|
-
|
|
119
|
-
```typescript
|
|
120
|
-
map.getStateIdByPath("/profile/123"); // "profile"
|
|
121
|
-
map.getStateIdByPath("/unknown"); // null
|
|
122
|
-
```
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
[API](../../../README.md) / [@xmachines/play-react](../README.md) / PlayRendererProps
|
|
2
|
-
|
|
3
|
-
# ~~Type Alias: PlayRendererProps~~
|
|
4
|
-
|
|
5
|
-
```ts
|
|
6
|
-
type PlayRendererProps = ActorProviderProps;
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
Defined in: [packages/play-react/src/index.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-react/src/index.ts#L71)
|
|
10
|
-
|
|
11
|
-
## Deprecated
|
|
12
|
-
|
|
13
|
-
Use [ActorProviderProps](../interfaces/ActorProviderProps.md). Will be removed in the next major.
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
[API](../../../README.md) / [@xmachines/play-react-router](../README.md) / createRouteMap
|
|
2
|
-
|
|
3
|
-
# Function: createRouteMap()
|
|
4
|
-
|
|
5
|
-
```ts
|
|
6
|
-
function createRouteMap(machine, options?): RouteMap;
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
Defined in: [play-router/src/create-route-map.ts:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v3.0.0/packages/play-router/src/create-route-map.ts#L47)
|
|
10
|
-
|
|
11
|
-
Creates a `RouteMap` from an XState state machine.
|
|
12
|
-
|
|
13
|
-
The function reads every state with a route, which means each state with a
|
|
14
|
-
`meta.route` field. It then builds the lookup structure between a path and a
|
|
15
|
-
stateId, for both directions. A subclass of `RouterBridgeBase` uses the map: it
|
|
16
|
-
converts each change of the browser URL into a `play.route` actor event, and each
|
|
17
|
-
actor route into a URL.
|
|
18
|
-
|
|
19
|
-
## Parameters
|
|
20
|
-
|
|
21
|
-
| Parameter | Type | Description |
|
|
22
|
-
| ---------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
|
|
23
|
-
| `machine` | [`AnyStateMachine`](https://www.jsdocs.io/package/xstate#AnyStateMachine) | The XState v5 state machine, with a `meta.route` annotation on each state with a route. |
|
|
24
|
-
| `options?` | [`RouteMapOptions`](../interfaces/RouteMapOptions.md) | The optional configuration. Give `{ cacheSize }` to change the default size of the LRU cache of the parameterized path lookups. |
|
|
25
|
-
|
|
26
|
-
## Returns
|
|
27
|
-
|
|
28
|
-
[`RouteMap`](../classes/RouteMap.md)
|
|
29
|
-
|
|
30
|
-
A `RouteMap` for each adapter on `RouterBridgeBase`.
|
|
31
|
-
|
|
32
|
-
## Example
|
|
33
|
-
|
|
34
|
-
```typescript
|
|
35
|
-
import { createRouteMap } from "@xmachines/play-router";
|
|
36
|
-
import { connectRouter } from "@xmachines/play-dom-router";
|
|
37
|
-
|
|
38
|
-
const routeMap = createRouteMap(myMachine);
|
|
39
|
-
const disconnect = connectRouter({ actor, router, routeMap });
|
|
40
|
-
```
|