@xmachines/docs 6.0.0 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (538) hide show
  1. package/README.md +6 -5
  2. package/api/@xmachines/core/README.md +1 -1
  3. package/api/@xmachines/core/cache/functions/createLruCache.md +1 -1
  4. package/api/@xmachines/core/cache/interfaces/KeyValueCache.md +3 -3
  5. package/api/@xmachines/core/errors/classes/BaseError.md +4 -4
  6. package/api/@xmachines/core/errors/classes/DisposeConflictError.md +4 -4
  7. package/api/@xmachines/core/utils/functions/asDisposable.md +2 -2
  8. package/api/@xmachines/core/utils/functions/createNullRecord.md +1 -1
  9. package/api/@xmachines/core/utils/functions/createWarnOnce.md +1 -1
  10. package/api/@xmachines/core/utils/functions/describeValue.md +1 -1
  11. package/api/@xmachines/core/utils/functions/isError.md +1 -1
  12. package/api/@xmachines/core/utils/functions/isThenable.md +1 -1
  13. package/api/@xmachines/core/utils/functions/releaseQuietly.md +1 -1
  14. package/api/@xmachines/core/utils/functions/rethrowLater.md +1 -1
  15. package/api/@xmachines/core/utils/functions/safeString.md +1 -1
  16. package/api/@xmachines/core/utils/functions/shallowEqualExcept.md +1 -1
  17. package/api/@xmachines/core/utils/type-aliases/DisposeKey.md +1 -1
  18. package/api/@xmachines/core/utils/type-aliases/DisposeMember.md +1 -1
  19. package/api/@xmachines/core/utils/variables/DISPOSE.md +1 -1
  20. package/api/@xmachines/play/README.md +1 -1
  21. package/api/@xmachines/play/errors/classes/NonNullableError.md +4 -4
  22. package/api/@xmachines/play/errors/classes/PlayError.md +5 -4
  23. package/api/@xmachines/play/index/functions/assertNonNullable.md +1 -1
  24. package/api/@xmachines/play/index/type-aliases/PlayEvent.md +2 -2
  25. package/api/@xmachines/play-actor/README.md +1 -1
  26. package/api/@xmachines/play-actor/interfaces/ActorEvent.md +2 -2
  27. package/api/@xmachines/play-actor/interfaces/PlayActor.md +3 -3
  28. package/api/@xmachines/play-atom/README.md +2 -2
  29. package/api/@xmachines/play-atom/functions/watchAtom.md +1 -1
  30. package/api/@xmachines/play-atom/interfaces/AsyncAtomOptions.md +2 -2
  31. package/api/@xmachines/play-atom/interfaces/Atom.md +6 -6
  32. package/api/@xmachines/play-atom/interfaces/AtomObserver.md +4 -4
  33. package/api/@xmachines/play-atom/interfaces/AtomOptions.md +2 -2
  34. package/api/@xmachines/play-atom/interfaces/AtomSubscription.md +2 -2
  35. package/api/@xmachines/play-atom/interfaces/BaseAtom.md +4 -4
  36. package/api/@xmachines/play-atom/interfaces/CreateAtom.md +3 -3
  37. package/api/@xmachines/play-atom/interfaces/Readable.md +4 -4
  38. package/api/@xmachines/play-atom/interfaces/ReadonlyAtom.md +4 -4
  39. package/api/@xmachines/play-atom/type-aliases/AnyAtom.md +1 -1
  40. package/api/@xmachines/play-atom/type-aliases/AsyncAtomState.md +1 -1
  41. package/api/@xmachines/play-atom/variables/createAsyncAtom.md +1 -1
  42. package/api/@xmachines/play-atom/variables/createAtom.md +1 -1
  43. package/api/@xmachines/play-atom/variables/createWritableAtom.md +1 -1
  44. package/api/@xmachines/play-dom/README.md +9 -14
  45. package/api/@xmachines/play-dom/classes/PlayRenderer.md +4 -4
  46. package/api/@xmachines/play-dom/functions/createPlayUI.md +1 -1
  47. package/api/@xmachines/play-dom/functions/createRenderer.md +1 -1
  48. package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +11 -11
  49. package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +2 -2
  50. package/api/@xmachines/play-dom/interfaces/MountOptions.md +3 -3
  51. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +14 -14
  52. package/api/@xmachines/play-dom/type-aliases/MountFn.md +1 -1
  53. package/api/@xmachines/play-dom-router/README.md +1 -1
  54. package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +7 -7
  55. package/api/@xmachines/play-dom-router/classes/RouteMap.md +4 -4
  56. package/api/@xmachines/play-dom-router/functions/connectRouter.md +1 -1
  57. package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +1 -1
  58. package/api/@xmachines/play-dom-router/functions/createRouter.md +1 -1
  59. package/api/@xmachines/play-dom-router/interfaces/BasePathOptions.md +3 -3
  60. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +14 -14
  61. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +14 -14
  62. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +8 -8
  63. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +7 -7
  64. package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +4 -4
  65. package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +3 -3
  66. package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +4 -4
  67. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +3 -3
  68. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +3 -3
  69. package/api/@xmachines/play-dom-router/interfaces/RouterConnection.md +6 -6
  70. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +4 -4
  71. package/api/@xmachines/play-pattern/README.md +1 -1
  72. package/api/@xmachines/play-pattern/functions/buildPath.md +1 -1
  73. package/api/@xmachines/play-pattern/functions/createLruCache.md +1 -1
  74. package/api/@xmachines/play-pattern/functions/getIndexKey.md +1 -1
  75. package/api/@xmachines/play-pattern/functions/isDotSegment.md +1 -1
  76. package/api/@xmachines/play-pattern/functions/parsePattern.md +1 -1
  77. package/api/@xmachines/play-pattern/interfaces/GroupPart.md +4 -4
  78. package/api/@xmachines/play-pattern/interfaces/KeyValueCache.md +3 -3
  79. package/api/@xmachines/play-pattern/interfaces/LiteralPart.md +3 -3
  80. package/api/@xmachines/play-pattern/interfaces/ParamPart.md +7 -7
  81. package/api/@xmachines/play-pattern/interfaces/ParseOptions.md +2 -2
  82. package/api/@xmachines/play-pattern/interfaces/ParsedPattern.md +12 -12
  83. package/api/@xmachines/play-pattern/interfaces/PatternParam.md +4 -4
  84. package/api/@xmachines/play-pattern/type-aliases/PathBuildResult.md +1 -1
  85. package/api/@xmachines/play-pattern/type-aliases/PathParams.md +1 -1
  86. package/api/@xmachines/play-pattern/type-aliases/PatternModifier.md +1 -1
  87. package/api/@xmachines/play-pattern/type-aliases/PatternPart.md +1 -1
  88. package/api/@xmachines/play-react/README.md +2 -2
  89. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +6 -6
  90. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  91. package/api/@xmachines/play-react/functions/useAtomEffect.md +1 -1
  92. package/api/@xmachines/play-react/functions/usePlayView.md +1 -1
  93. package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +8 -8
  94. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +6 -6
  95. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +4 -4
  96. package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +8 -8
  97. package/api/@xmachines/play-react/interfaces/ViewContextValue.md +5 -5
  98. package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +1 -1
  99. package/api/@xmachines/play-react/variables/ActorProvider.md +1 -1
  100. package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
  101. package/api/@xmachines/play-react/variables/PlayUIProvider.md +1 -1
  102. package/api/@xmachines/play-react-router/README.md +1 -1
  103. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +7 -7
  104. package/api/@xmachines/play-react-router/classes/RouteMap.md +4 -4
  105. package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +1 -1
  106. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +1 -1
  107. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +7 -7
  108. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +9 -9
  109. package/api/@xmachines/play-react-router/interfaces/RoutableActor.md +4 -4
  110. package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +4 -4
  111. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
  112. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +3 -3
  113. package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  114. package/api/@xmachines/play-react-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  115. package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +1 -1
  116. package/api/@xmachines/play-router/README.md +7 -8
  117. package/api/@xmachines/play-router/errors/classes/DuplicateBridgeError.md +4 -4
  118. package/api/@xmachines/play-router/errors/classes/DuplicateRoutePathError.md +5 -5
  119. package/api/@xmachines/play-router/errors/classes/EmptyRoutePathError.md +5 -5
  120. package/api/@xmachines/play-router/errors/classes/InvalidBasePathError.md +5 -5
  121. package/api/@xmachines/play-router/errors/classes/InvalidRoutePatternError.md +5 -5
  122. package/api/@xmachines/play-router/errors/classes/InvalidStateIdError.md +5 -5
  123. package/api/@xmachines/play-router/errors/classes/MissingBasePathParamError.md +6 -6
  124. package/api/@xmachines/play-router/errors/classes/RouterSyncError.md +4 -4
  125. package/api/@xmachines/play-router/errors/classes/UnknownStateTypeError.md +6 -6
  126. package/api/@xmachines/play-router/index/classes/RouteMap.md +4 -4
  127. package/api/@xmachines/play-router/index/classes/RouterBridgeBase.md +7 -7
  128. package/api/@xmachines/play-router/index/functions/buildPlayRouteEvent.md +1 -1
  129. package/api/@xmachines/play-router/index/functions/buildRouteTree.md +1 -1
  130. package/api/@xmachines/play-router/index/functions/cleanFrameworkParams.md +1 -1
  131. package/api/@xmachines/play-router/index/functions/createLruCache.md +1 -1
  132. package/api/@xmachines/play-router/index/functions/createRouteMapFromTree.md +1 -1
  133. package/api/@xmachines/play-router/index/functions/createRouterConnection.md +1 -1
  134. package/api/@xmachines/play-router/index/functions/detectDuplicateRoutes.md +1 -1
  135. package/api/@xmachines/play-router/index/functions/extractQuery.md +1 -1
  136. package/api/@xmachines/play-router/index/functions/extractRouteParams.md +1 -1
  137. package/api/@xmachines/play-router/index/functions/findRouteById.md +1 -1
  138. package/api/@xmachines/play-router/index/functions/findRouteByPath.md +1 -1
  139. package/api/@xmachines/play-router/index/functions/isMountableBridge.md +1 -1
  140. package/api/@xmachines/play-router/index/functions/joinBasePath.md +1 -1
  141. package/api/@xmachines/play-router/index/functions/mountKey.md +1 -1
  142. package/api/@xmachines/play-router/index/functions/normalizeBasePath.md +1 -1
  143. package/api/@xmachines/play-router/index/functions/openProviderBridge.md +3 -3
  144. package/api/@xmachines/play-router/index/functions/parsePattern.md +1 -1
  145. package/api/@xmachines/play-router/index/functions/pickOwnParams.md +1 -1
  146. package/api/@xmachines/play-router/index/functions/repointProviderBridge.md +1 -1
  147. package/api/@xmachines/play-router/index/functions/resolveBasePath.md +1 -1
  148. package/api/@xmachines/play-router/index/functions/resolveFrameworkParams.md +1 -1
  149. package/api/@xmachines/play-router/index/functions/sanitizePathname.md +1 -1
  150. package/api/@xmachines/play-router/index/functions/splitLocation.md +1 -1
  151. package/api/@xmachines/play-router/index/functions/stripBasePath.md +1 -1
  152. package/api/@xmachines/play-router/index/functions/validateRouteFormat.md +1 -1
  153. package/api/@xmachines/play-router/index/functions/validateStateExists.md +1 -1
  154. package/api/@xmachines/play-router/index/interfaces/BasePathOptions.md +3 -3
  155. package/api/@xmachines/play-router/index/interfaces/BuildPlayRouteEventOptions.md +4 -4
  156. package/api/@xmachines/play-router/index/interfaces/CompileOptions.md +3 -3
  157. package/api/@xmachines/play-router/index/interfaces/FrameworkParamsSource.md +7 -7
  158. package/api/@xmachines/play-router/index/interfaces/KeyValueCache.md +3 -3
  159. package/api/@xmachines/play-router/index/interfaces/LocationLike.md +3 -3
  160. package/api/@xmachines/play-router/index/interfaces/MountableRouterBridge.md +6 -6
  161. package/api/@xmachines/play-router/index/interfaces/OpenProviderBridgeArgs.md +8 -8
  162. package/api/@xmachines/play-router/index/interfaces/ParseOptions.md +2 -2
  163. package/api/@xmachines/play-router/index/interfaces/ParsedPattern.md +12 -12
  164. package/api/@xmachines/play-router/index/interfaces/PlayRouteEvent.md +7 -7
  165. package/api/@xmachines/play-router/index/interfaces/PlayRouterProviderBaseProps.md +9 -9
  166. package/api/@xmachines/play-router/index/interfaces/ResolvedBasePath.md +3 -3
  167. package/api/@xmachines/play-router/index/interfaces/ResolvedRoutePath.md +3 -3
  168. package/api/@xmachines/play-router/index/interfaces/Routable.md +3 -3
  169. package/api/@xmachines/play-router/index/interfaces/RoutableActor.md +4 -4
  170. package/api/@xmachines/play-router/index/interfaces/RouteInfo.md +8 -8
  171. package/api/@xmachines/play-router/index/interfaces/RouteMapOptions.md +4 -4
  172. package/api/@xmachines/play-router/index/interfaces/RouteMapping.md +3 -3
  173. package/api/@xmachines/play-router/index/interfaces/RouteMatch.md +3 -3
  174. package/api/@xmachines/play-router/index/interfaces/RouteNode.md +10 -10
  175. package/api/@xmachines/play-router/index/interfaces/RouteObject.md +12 -15
  176. package/api/@xmachines/play-router/index/interfaces/RouteTree.md +5 -5
  177. package/api/@xmachines/play-router/index/interfaces/RouteWatcherHandle.md +3 -3
  178. package/api/@xmachines/play-router/index/interfaces/RouterBridge.md +3 -3
  179. package/api/@xmachines/play-router/index/interfaces/RouterBridgeOptions.md +5 -5
  180. package/api/@xmachines/play-router/index/interfaces/RouterConnection.md +6 -6
  181. package/api/@xmachines/play-router/index/interfaces/SplitLocation.md +5 -5
  182. package/api/@xmachines/play-router/index/interfaces/WindowLike.md +3 -3
  183. package/api/@xmachines/play-router/index/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  184. package/api/@xmachines/play-router/index/type-aliases/RouteData.md +1 -1
  185. package/api/@xmachines/play-router/index/type-aliases/RouteDataResolver.md +1 -1
  186. package/api/@xmachines/play-router/index/type-aliases/RouteMetadata.md +1 -1
  187. package/api/@xmachines/play-router/index/type-aliases/URLPatternLike.md +3 -3
  188. package/api/@xmachines/play-router/index/variables/NO_BASE_PATH.md +1 -1
  189. package/api/@xmachines/play-router/index/variables/ROOT_NODE_ID.md +1 -1
  190. package/api/@xmachines/play-router/xstate/functions/createRouteMap.md +1 -1
  191. package/api/@xmachines/play-router/xstate/functions/extractMachineRoutes.md +1 -1
  192. package/api/@xmachines/play-router/xstate/functions/getNavigableRoutes.md +1 -1
  193. package/api/@xmachines/play-router/xstate/functions/getRoutableRoutes.md +1 -1
  194. package/api/@xmachines/play-router/xstate/functions/getRouteMappings.md +1 -1
  195. package/api/@xmachines/play-router/xstate/functions/getTransitionReachableRoutes.md +1 -1
  196. package/api/@xmachines/play-router/xstate/functions/isRouteReachable.md +1 -1
  197. package/api/@xmachines/play-router/xstate/functions/machineToGraph.md +1 -1
  198. package/api/@xmachines/play-router/xstate/functions/routeExists.md +1 -1
  199. package/api/@xmachines/play-router/xstate/interfaces/MachineEdgeData.md +3 -3
  200. package/api/@xmachines/play-router/xstate/interfaces/MachineNodeData.md +5 -5
  201. package/api/@xmachines/play-router/xstate/type-aliases/MachineGraph.md +1 -1
  202. package/api/@xmachines/play-solid/README.md +1 -4
  203. package/api/@xmachines/play-solid/functions/defineRegistry.md +5 -5
  204. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  205. package/api/@xmachines/play-solid/functions/usePlayView.md +1 -1
  206. package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +8 -8
  207. package/api/@xmachines/play-solid/interfaces/ComponentContext.md +9 -8
  208. package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +8 -8
  209. package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +5 -5
  210. package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +1 -1
  211. package/api/@xmachines/play-solid/variables/ActorContext.md +1 -1
  212. package/api/@xmachines/play-solid/variables/ActorProvider.md +1 -1
  213. package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
  214. package/api/@xmachines/play-solid/variables/PlayUIProvider.md +1 -1
  215. package/api/@xmachines/play-solid/variables/schema.md +35 -54
  216. package/api/@xmachines/play-solid-router/README.md +2 -2
  217. package/api/@xmachines/play-solid-router/classes/RouteMap.md +4 -4
  218. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +8 -8
  219. package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +1 -1
  220. package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +3 -3
  221. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +7 -7
  222. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +9 -9
  223. package/api/@xmachines/play-solid-router/interfaces/RoutableActor.md +4 -4
  224. package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +4 -4
  225. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +3 -3
  226. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +3 -3
  227. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  228. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  229. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
  230. package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +1 -1
  231. package/api/@xmachines/play-svelte/README.md +2 -2
  232. package/api/@xmachines/play-svelte/functions/defineRegistry.md +1 -1
  233. package/api/@xmachines/play-svelte/functions/getActorContext.md +1 -1
  234. package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +1 -1
  235. package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
  236. package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +8 -8
  237. package/api/@xmachines/play-svelte/interfaces/BaseComponentProps.md +10 -8
  238. package/api/@xmachines/play-svelte/interfaces/ComponentContext.md +10 -8
  239. package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +4 -4
  240. package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +11 -11
  241. package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +5 -5
  242. package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +1 -1
  243. package/api/@xmachines/play-svelte-spa-router/README.md +1 -1
  244. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +4 -4
  245. package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +7 -7
  246. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +1 -1
  247. package/api/@xmachines/play-svelte-spa-router/interfaces/BasePathOptions.md +3 -3
  248. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +8 -8
  249. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +7 -7
  250. package/api/@xmachines/play-svelte-spa-router/interfaces/RoutableActor.md +4 -4
  251. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +4 -4
  252. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +3 -3
  253. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +3 -3
  254. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterConnection.md +6 -6
  255. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +3 -3
  256. package/api/@xmachines/play-sveltekit-router/README.md +1 -1
  257. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +4 -4
  258. package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +7 -7
  259. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +1 -1
  260. package/api/@xmachines/play-sveltekit-router/interfaces/BasePathOptions.md +3 -3
  261. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +8 -8
  262. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +3 -3
  263. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +7 -7
  264. package/api/@xmachines/play-sveltekit-router/interfaces/RoutableActor.md +4 -4
  265. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +4 -4
  266. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +3 -3
  267. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +3 -3
  268. package/api/@xmachines/play-sveltekit-router/interfaces/RouterConnection.md +6 -6
  269. package/api/@xmachines/play-tanstack-react-router/README.md +1 -1
  270. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +4 -4
  271. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +7 -7
  272. package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +1 -1
  273. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +1 -1
  274. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +7 -7
  275. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +9 -9
  276. package/api/@xmachines/play-tanstack-react-router/interfaces/RoutableActor.md +4 -4
  277. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +4 -4
  278. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +3 -3
  279. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +3 -3
  280. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  281. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  282. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  283. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +5 -5
  284. package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +1 -1
  285. package/api/@xmachines/play-tanstack-router/README.md +1 -1
  286. package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +7 -7
  287. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +3 -3
  288. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +5 -5
  289. package/api/@xmachines/play-tanstack-solid-router/README.md +1 -1
  290. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +4 -4
  291. package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +7 -7
  292. package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +1 -1
  293. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +7 -7
  294. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +9 -9
  295. package/api/@xmachines/play-tanstack-solid-router/interfaces/RoutableActor.md +4 -4
  296. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +4 -4
  297. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
  298. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +3 -3
  299. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  300. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  301. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  302. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +5 -5
  303. package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +1 -1
  304. package/api/@xmachines/play-url/README.md +1 -1
  305. package/api/@xmachines/play-url/errors/classes/InvalidBasePathError.md +5 -5
  306. package/api/@xmachines/play-url/errors/classes/InvalidRoutePatternError.md +5 -5
  307. package/api/@xmachines/play-url/errors/classes/MissingBasePathParamError.md +6 -6
  308. package/api/@xmachines/play-url/index/functions/buildPath.md +1 -1
  309. package/api/@xmachines/play-url/index/functions/cleanFrameworkParams.md +1 -1
  310. package/api/@xmachines/play-url/index/functions/createLruCache.md +1 -1
  311. package/api/@xmachines/play-url/index/functions/getCandidates.md +1 -1
  312. package/api/@xmachines/play-url/index/functions/getCompiledPattern.md +1 -1
  313. package/api/@xmachines/play-url/index/functions/getIndexKey.md +1 -1
  314. package/api/@xmachines/play-url/index/functions/holdsUnsubstitutedParam.md +1 -1
  315. package/api/@xmachines/play-url/index/functions/isDotSegment.md +1 -1
  316. package/api/@xmachines/play-url/index/functions/joinBasePath.md +1 -1
  317. package/api/@xmachines/play-url/index/functions/normalizeBasePath.md +1 -1
  318. package/api/@xmachines/play-url/index/functions/parsePattern.md +1 -1
  319. package/api/@xmachines/play-url/index/functions/pickOwnParams.md +1 -1
  320. package/api/@xmachines/play-url/index/functions/resolveBasePath.md +1 -1
  321. package/api/@xmachines/play-url/index/functions/resolveFrameworkParams.md +1 -1
  322. package/api/@xmachines/play-url/index/functions/sanitizePathname.md +1 -1
  323. package/api/@xmachines/play-url/index/functions/splitLocation.md +1 -1
  324. package/api/@xmachines/play-url/index/functions/stripBasePath.md +1 -1
  325. package/api/@xmachines/play-url/index/interfaces/BasePathOptions.md +3 -3
  326. package/api/@xmachines/play-url/index/interfaces/CompileOptions.md +3 -3
  327. package/api/@xmachines/play-url/index/interfaces/FrameworkParamsSource.md +7 -7
  328. package/api/@xmachines/play-url/index/interfaces/GroupPart.md +4 -4
  329. package/api/@xmachines/play-url/index/interfaces/KeyValueCache.md +3 -3
  330. package/api/@xmachines/play-url/index/interfaces/LiteralPart.md +3 -3
  331. package/api/@xmachines/play-url/index/interfaces/ParamPart.md +7 -7
  332. package/api/@xmachines/play-url/index/interfaces/ParseOptions.md +2 -2
  333. package/api/@xmachines/play-url/index/interfaces/ParsedPattern.md +12 -12
  334. package/api/@xmachines/play-url/index/interfaces/PatternParam.md +4 -4
  335. package/api/@xmachines/play-url/index/interfaces/ResolvedBasePath.md +3 -3
  336. package/api/@xmachines/play-url/index/interfaces/SplitLocation.md +5 -5
  337. package/api/@xmachines/play-url/index/type-aliases/PathBuildResult.md +1 -1
  338. package/api/@xmachines/play-url/index/type-aliases/PathParams.md +1 -1
  339. package/api/@xmachines/play-url/index/type-aliases/PatternModifier.md +1 -1
  340. package/api/@xmachines/play-url/index/type-aliases/PatternPart.md +1 -1
  341. package/api/@xmachines/play-url/index/type-aliases/URLPatternCtor.md +1 -1
  342. package/api/@xmachines/play-url/index/type-aliases/URLPatternLike.md +3 -3
  343. package/api/@xmachines/play-url/index/variables/NO_BASE_PATH.md +1 -1
  344. package/api/@xmachines/play-url/index/variables/URLPattern.md +1 -1
  345. package/api/@xmachines/play-view/README.md +53 -22
  346. package/api/@xmachines/play-view/errors/README.md +1 -0
  347. package/api/@xmachines/play-view/errors/classes/InvalidViewOutletError.md +204 -0
  348. package/api/@xmachines/play-view/errors/classes/ReadOnlyContextError.md +5 -5
  349. package/api/@xmachines/play-view/index/README.md +6 -0
  350. package/api/@xmachines/play-view/index/functions/attachRenderErrorHandler.md +1 -1
  351. package/api/@xmachines/play-view/index/functions/composePlayState.md +1 -1
  352. package/api/@xmachines/play-view/index/functions/composeViews.md +35 -0
  353. package/api/@xmachines/play-view/index/functions/createFailureLatch.md +1 -1
  354. package/api/@xmachines/play-view/index/functions/createReportGuard.md +1 -1
  355. package/api/@xmachines/play-view/index/functions/createViewStoreLifecycle.md +1 -1
  356. package/api/@xmachines/play-view/index/functions/guardContextWrites.md +1 -1
  357. package/api/@xmachines/play-view/index/functions/refreshContextSubtree.md +1 -1
  358. package/api/@xmachines/play-view/index/functions/reuseComposedState.md +1 -1
  359. package/api/@xmachines/play-view/index/functions/sameViewInputs.md +1 -1
  360. package/api/@xmachines/play-view/index/functions/toAtomState.md +1 -1
  361. package/api/@xmachines/play-view/index/functions/typedSpec.md +11 -11
  362. package/api/@xmachines/play-view/index/interfaces/BaseActorProviderProps.md +5 -5
  363. package/api/@xmachines/play-view/index/interfaces/BaseViewContextValue.md +5 -5
  364. package/api/@xmachines/play-view/index/interfaces/ComposedView.md +16 -0
  365. package/api/@xmachines/play-view/index/interfaces/FailureLatch.md +3 -3
  366. package/api/@xmachines/play-view/index/interfaces/PlaySpec.md +12 -8
  367. package/api/@xmachines/play-view/index/interfaces/ReportGuard.md +5 -5
  368. package/api/@xmachines/play-view/index/interfaces/ReportGuardMessages.md +3 -3
  369. package/api/@xmachines/play-view/index/interfaces/ResolveViewStoreOptions.md +2 -2
  370. package/api/@xmachines/play-view/index/interfaces/ViewInputs.md +4 -4
  371. package/api/@xmachines/play-view/index/interfaces/ViewMeta.md +25 -0
  372. package/api/@xmachines/play-view/index/interfaces/ViewOutlet.md +23 -0
  373. package/api/@xmachines/play-view/index/interfaces/ViewStoreLifecycle.md +3 -3
  374. package/api/@xmachines/play-view/index/interfaces/ViewStoreResolution.md +4 -4
  375. package/api/@xmachines/play-view/index/interfaces/ViewTree.md +15 -0
  376. package/api/@xmachines/play-view/index/interfaces/ViewTreeChild.md +14 -0
  377. package/api/@xmachines/play-view/index/interfaces/Viewable.md +4 -4
  378. package/api/@xmachines/play-view/index/type-aliases/ViewActor.md +1 -1
  379. package/api/@xmachines/play-view/index/variables/CONTEXT_STATE_KEY.md +1 -1
  380. package/api/@xmachines/play-vue/README.md +3 -5
  381. package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
  382. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  383. package/api/@xmachines/play-vue/functions/usePlayView.md +1 -1
  384. package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +8 -8
  385. package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +11 -11
  386. package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +5 -5
  387. package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +1 -1
  388. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
  389. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
  390. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
  391. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  392. package/api/@xmachines/play-vue-router/README.md +1 -1
  393. package/api/@xmachines/play-vue-router/errors/classes/VueRouterNavigationError.md +4 -4
  394. package/api/@xmachines/play-vue-router/errors/classes/VueRouterSendError.md +4 -4
  395. package/api/@xmachines/play-vue-router/index/classes/RouteMap.md +4 -4
  396. package/api/@xmachines/play-vue-router/index/classes/VueRouterBridge.md +7 -7
  397. package/api/@xmachines/play-vue-router/index/interfaces/PlayRouteEvent.md +7 -7
  398. package/api/@xmachines/play-vue-router/index/interfaces/RoutableActor.md +4 -4
  399. package/api/@xmachines/play-vue-router/index/interfaces/RouteMapOptions.md +4 -4
  400. package/api/@xmachines/play-vue-router/index/interfaces/RouteMapping.md +3 -3
  401. package/api/@xmachines/play-vue-router/index/interfaces/RouterBridge.md +3 -3
  402. package/api/@xmachines/play-vue-router/index/variables/PlayRouterProvider.md +1 -1
  403. package/api/@xmachines/play-xstate/README.md +24 -17
  404. package/api/@xmachines/play-xstate/errors/classes/ActorThrewNonErrorError.md +4 -4
  405. package/api/@xmachines/play-xstate/errors/classes/InvalidEventError.md +5 -5
  406. package/api/@xmachines/play-xstate/errors/classes/InvalidMachineError.md +4 -4
  407. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteHandlerError.md +5 -5
  408. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteMetadataError.md +5 -5
  409. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteParamError.md +7 -7
  410. package/api/@xmachines/play-xstate/errors/classes/MissingRouteParamError.md +6 -6
  411. package/api/@xmachines/play-xstate/errors/classes/MissingStateIdError.md +6 -6
  412. package/api/@xmachines/play-xstate/index/classes/PlayerActor.md +10 -10
  413. package/api/@xmachines/play-xstate/index/functions/compose.md +4 -4
  414. package/api/@xmachines/play-xstate/index/functions/definePlayer.md +2 -2
  415. package/api/@xmachines/play-xstate/index/interfaces/PlayerConfig.md +4 -4
  416. package/api/@xmachines/play-xstate/index/interfaces/PlayerFactoryResumeOptions.md +2 -2
  417. package/api/@xmachines/play-xstate/index/interfaces/PlayerOptions.md +7 -7
  418. package/api/@xmachines/play-xstate/index/type-aliases/Capability.md +1 -1
  419. package/api/@xmachines/play-xstate/index/type-aliases/PlayerConstructor.md +1 -1
  420. package/api/@xmachines/play-xstate/index/type-aliases/PlayerFactory.md +1 -1
  421. package/api/@xmachines/play-xstate/with-routing/functions/buildRouteUrl.md +1 -1
  422. package/api/@xmachines/play-xstate/with-routing/functions/deriveRoute.md +1 -1
  423. package/api/@xmachines/play-xstate/with-routing/functions/formatPlayRouteTransitions.md +1 -1
  424. package/api/@xmachines/play-xstate/with-routing/functions/isAbsoluteRoute.md +1 -1
  425. package/api/@xmachines/play-xstate/with-routing/functions/withRouting.md +1 -1
  426. package/api/@xmachines/play-xstate/with-routing/interfaces/RouteContext.md +5 -5
  427. package/api/@xmachines/play-xstate/with-routing/interfaces/RouteObject.md +12 -15
  428. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteData.md +1 -1
  429. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteDataResolver.md +1 -1
  430. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMachineConfig.md +4 -4
  431. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMetadata.md +1 -1
  432. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteStateNode.md +5 -5
  433. package/api/@xmachines/play-xstate/with-view/functions/withView.md +2 -4
  434. package/api/@xmachines/shared/vite-aliases/README.md +7 -0
  435. package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +11 -5
  436. package/api/@xmachines/shared/vite-aliases/functions/xmBuildOutput.md +37 -0
  437. package/api/@xmachines/shared/vite-aliases/functions/xmBuildOutputFile.md +28 -0
  438. package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
  439. package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +1 -1
  440. package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
  441. package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +2 -2
  442. package/api/@xmachines/shared/vite-aliases/functions/xmTestTarget.md +26 -0
  443. package/api/@xmachines/shared/vite-aliases/type-aliases/XmTestTarget.md +15 -0
  444. package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
  445. package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +5 -1
  446. package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +4 -4
  447. package/api/llms.txt +8 -4
  448. package/contributing/architecture.md +18 -8
  449. package/contributing/configuration.md +39 -6
  450. package/contributing/development.md +3 -1
  451. package/contributing/migrating-to-play-atom.md +1 -1
  452. package/contributing/testing.md +33 -4
  453. package/examples/@xmachines/play-dom-demo/functions/createAuthActionHandlers.md +9 -9
  454. package/examples/@xmachines/play-dom-demo/functions/createConfirmDialog.md +1 -1
  455. package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +1 -1
  456. package/examples/@xmachines/play-dom-demo/functions/initShell.md +1 -1
  457. package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +1 -1
  458. package/examples/@xmachines/play-dom-demo/variables/About.md +1 -1
  459. package/examples/@xmachines/play-dom-demo/variables/Button.md +1 -1
  460. package/examples/@xmachines/play-dom-demo/variables/Contact.md +1 -1
  461. package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +1 -1
  462. package/examples/@xmachines/play-dom-demo/variables/Field.md +1 -1
  463. package/examples/@xmachines/play-dom-demo/variables/Home.md +1 -1
  464. package/examples/@xmachines/play-dom-demo/variables/Login.md +1 -1
  465. package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +1 -1
  466. package/examples/@xmachines/play-dom-demo/variables/Navigation.md +1 -1
  467. package/examples/@xmachines/play-dom-demo/variables/Overview.md +1 -1
  468. package/examples/@xmachines/play-dom-demo/variables/Panel.md +1 -1
  469. package/examples/@xmachines/play-dom-demo/variables/Profile.md +1 -1
  470. package/examples/@xmachines/play-dom-demo/variables/Settings.md +1 -1
  471. package/examples/@xmachines/play-dom-demo/variables/Stats.md +1 -1
  472. package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +1 -1
  473. package/examples/@xmachines/play-dom-demo/variables/demoComponents.md +15 -15
  474. package/examples/@xmachines/play-react-demo/functions/createAuthActionHandlers.md +9 -9
  475. package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +1 -1
  476. package/examples/@xmachines/play-react-demo/variables/About.md +1 -1
  477. package/examples/@xmachines/play-react-demo/variables/Button.md +1 -1
  478. package/examples/@xmachines/play-react-demo/variables/Contact.md +1 -1
  479. package/examples/@xmachines/play-react-demo/variables/Dashboard.md +1 -1
  480. package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +1 -1
  481. package/examples/@xmachines/play-react-demo/variables/Field.md +1 -1
  482. package/examples/@xmachines/play-react-demo/variables/Home.md +1 -1
  483. package/examples/@xmachines/play-react-demo/variables/Login.md +1 -1
  484. package/examples/@xmachines/play-react-demo/variables/NavBar.md +1 -1
  485. package/examples/@xmachines/play-react-demo/variables/NavBarView.md +1 -1
  486. package/examples/@xmachines/play-react-demo/variables/Navigation.md +1 -1
  487. package/examples/@xmachines/play-react-demo/variables/Overview.md +1 -1
  488. package/examples/@xmachines/play-react-demo/variables/Panel.md +1 -1
  489. package/examples/@xmachines/play-react-demo/variables/Profile.md +1 -1
  490. package/examples/@xmachines/play-react-demo/variables/Settings.md +1 -1
  491. package/examples/@xmachines/play-react-demo/variables/Shell.md +1 -1
  492. package/examples/@xmachines/play-react-demo/variables/Stats.md +1 -1
  493. package/examples/@xmachines/play-react-demo/variables/authCatalog.md +1 -1
  494. package/examples/@xmachines/play-react-demo/variables/demoComponents.md +15 -15
  495. package/examples/@xmachines/play-solid-demo/functions/createAuthActionHandlers.md +9 -9
  496. package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +1 -1
  497. package/examples/@xmachines/play-solid-demo/variables/About.md +1 -1
  498. package/examples/@xmachines/play-solid-demo/variables/Button.md +1 -1
  499. package/examples/@xmachines/play-solid-demo/variables/Contact.md +1 -1
  500. package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +1 -1
  501. package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +1 -1
  502. package/examples/@xmachines/play-solid-demo/variables/Field.md +1 -1
  503. package/examples/@xmachines/play-solid-demo/variables/Home.md +1 -1
  504. package/examples/@xmachines/play-solid-demo/variables/Login.md +1 -1
  505. package/examples/@xmachines/play-solid-demo/variables/NavBar.md +1 -1
  506. package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +1 -1
  507. package/examples/@xmachines/play-solid-demo/variables/Navigation.md +1 -1
  508. package/examples/@xmachines/play-solid-demo/variables/Overview.md +1 -1
  509. package/examples/@xmachines/play-solid-demo/variables/Panel.md +1 -1
  510. package/examples/@xmachines/play-solid-demo/variables/Profile.md +1 -1
  511. package/examples/@xmachines/play-solid-demo/variables/Settings.md +1 -1
  512. package/examples/@xmachines/play-solid-demo/variables/Shell.md +1 -1
  513. package/examples/@xmachines/play-solid-demo/variables/Stats.md +1 -1
  514. package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +190 -277
  515. package/examples/@xmachines/play-solid-demo/variables/demoComponents.md +17 -17
  516. package/examples/@xmachines/play-svelte-demo/functions/createAuthActionHandlers.md +9 -9
  517. package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +1 -1
  518. package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +190 -277
  519. package/examples/@xmachines/play-svelte-demo/variables/demoComponents.md +15 -15
  520. package/examples/@xmachines/play-vue-demo/functions/createAuthActionHandlers.md +9 -9
  521. package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +1 -1
  522. package/examples/@xmachines/play-vue-demo/variables/App.md +1 -1
  523. package/examples/@xmachines/play-vue-demo/variables/authCatalog.md +1 -1
  524. package/examples/@xmachines/play-vue-demo/variables/demoComponents.md +1 -1
  525. package/examples/README.md +1 -1
  526. package/examples/multi-router-integration.md +1 -1
  527. package/examples/routing-patterns.md +1 -1
  528. package/examples/traffic-light.md +1 -1
  529. package/guides/README.md +5 -4
  530. package/guides/actor-model.md +4 -4
  531. package/guides/atoms.md +4 -4
  532. package/guides/getting-started.md +2 -6
  533. package/guides/inspector.md +1 -1
  534. package/guides/routing.md +41 -45
  535. package/guides/state-machines.md +69 -4
  536. package/guides/views.md +347 -0
  537. package/package.json +1 -1
  538. package/rfc/play.md +24 -8
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: ParseOptions
4
4
 
5
- Defined in: [packages/play-pattern/src/cache.ts:35](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/cache.ts#L35)
5
+ Defined in: [packages/play-pattern/src/cache.ts:35](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-pattern/src/cache.ts#L35)
6
6
 
7
7
  The options that every read of the pattern language takes.
8
8
 
@@ -21,4 +21,4 @@ positional argument gave each layer a different position to remember.
21
21
 
22
22
  | Property | Modifier | Type | Description | Defined in |
23
23
  | -------------------------------------------------- | ---------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- |
24
- | <a id="property-patterncache"></a> `patternCache?` | `readonly` | [`KeyValueCache`](KeyValueCache.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:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/cache.ts#L41) |
24
+ | <a id="property-patterncache"></a> `patternCache?` | `readonly` | [`KeyValueCache`](KeyValueCache.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:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-pattern/src/cache.ts#L41) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: ParsedPattern
4
4
 
5
- Defined in: [packages/play-pattern/src/pattern-grammar.ts:117](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/pattern-grammar.ts#L117)
5
+ Defined in: [packages/play-pattern/src/pattern-grammar.ts:117](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-pattern/src/pattern-grammar.ts#L117)
6
6
 
7
7
  Everything that this library reads from one route pattern.
8
8
 
@@ -10,14 +10,14 @@ Everything that this library reads from one route pattern.
10
10
 
11
11
  | Property | Modifier | Type | Description | Defined in |
12
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/v6.0.0/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/v6.0.0/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/v6.0.0/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/v6.0.0/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/v6.0.0/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/v6.0.0/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/v6.0.0/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/v6.0.0/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/v6.0.0/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/v6.0.0/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/v6.0.0/packages/play-pattern/src/pattern-grammar.ts#L119) |
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/v6.1.0/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/v6.1.0/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/v6.1.0/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/v6.1.0/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/v6.1.0/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/v6.1.0/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/v6.1.0/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/v6.1.0/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/v6.1.0/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/v6.1.0/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/v6.1.0/packages/play-pattern/src/pattern-grammar.ts#L119) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: PatternParam
4
4
 
5
- Defined in: [packages/play-pattern/src/pattern-grammar.ts:101](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/pattern-grammar.ts#L101)
5
+ Defined in: [packages/play-pattern/src/pattern-grammar.ts:101](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/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
 
@@ -10,6 +10,6 @@ One named param of a pattern, with the question that every caller asks about it.
10
10
 
11
11
  | Property | Modifier | Type | Description | Defined in |
12
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/v6.0.0/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/v6.0.0/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/v6.0.0/packages/play-pattern/src/pattern-grammar.ts#L113) |
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/v6.1.0/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/v6.1.0/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/v6.1.0/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:83](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/base-path.ts#L83)
5
+ Defined in: [packages/play-url/src/base-path.ts:82](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/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:94](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/base-path.ts#L94) |
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:88](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/base-path.ts#L88) |
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/v6.1.0/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/v6.1.0/packages/play-url/src/base-path.ts#L87) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: SplitLocation
4
4
 
5
- Defined in: [packages/play-url/src/location.ts:17](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/location.ts#L17)
5
+ Defined in: [packages/play-url/src/location.ts:17](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-url/src/location.ts#L17)
6
6
 
7
7
  The parts of one location string.
8
8
 
@@ -10,7 +10,7 @@ The parts of one location string.
10
10
 
11
11
  | Property | Modifier | Type | Description | Defined in |
12
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/v6.0.0/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/v6.0.0/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/v6.0.0/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/v6.0.0/packages/play-url/src/location.ts#L30) |
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/v6.1.0/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/v6.1.0/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/v6.1.0/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/v6.1.0/packages/play-url/src/location.ts#L30) |
@@ -21,7 +21,7 @@ type PathBuildResult =
21
21
  };
22
22
  ```
23
23
 
24
- Defined in: [packages/play-pattern/src/pattern-grammar.ts:651](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/pattern-grammar.ts#L651)
24
+ Defined in: [packages/play-pattern/src/pattern-grammar.ts:651](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-pattern/src/pattern-grammar.ts#L651)
25
25
 
26
26
  The answer of [buildPath](../functions/buildPath.md).
27
27
 
@@ -6,7 +6,7 @@
6
6
  type PathParams = Readonly<Record<string, unknown>>;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-pattern/src/pattern-grammar.ts:681](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/pattern-grammar.ts#L681)
9
+ Defined in: [packages/play-pattern/src/pattern-grammar.ts:681](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-pattern/src/pattern-grammar.ts#L681)
10
10
 
11
11
  The values that a caller gives, keyed by the declared name of the param.
12
12
 
@@ -6,6 +6,6 @@
6
6
  type PatternModifier = "" | "?" | "+" | "*";
7
7
  ```
8
8
 
9
- Defined in: [packages/play-pattern/src/pattern-grammar.ts:56](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/pattern-grammar.ts#L56)
9
+ Defined in: [packages/play-pattern/src/pattern-grammar.ts:56](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/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-pattern/src/pattern-grammar.ts:98](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/pattern-grammar.ts#L98)
9
+ Defined in: [packages/play-pattern/src/pattern-grammar.ts:98](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/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:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/url-pattern-utils.ts#L59)
9
+ Defined in: [packages/play-url/src/url-pattern-utils.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/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:51](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/url-pattern-utils.ts#L51)
9
+ Defined in: [packages/play-url/src/url-pattern-utils.ts:51](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/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:52](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/url-pattern-utils.ts#L52)
31
+ Defined in: [packages/play-url/src/url-pattern-utils.ts:52](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/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:52](https://gitlab.com/x
54
54
  test(input): boolean;
55
55
  ```
56
56
 
57
- Defined in: [packages/play-url/src/url-pattern-utils.ts:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/url-pattern-utils.ts#L55)
57
+ Defined in: [packages/play-url/src/url-pattern-utils.ts:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/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:107](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/base-path.ts#L107)
9
+ Defined in: [packages/play-url/src/base-path.ts:106](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/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:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/url-pattern-utils.ts#L74)
9
+ Defined in: [packages/play-url/src/url-pattern-utils.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/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
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Version](https://img.shields.io/badge/version-6.0.0-blue)](https://www.npmjs.com/package/@xmachines/play-view)
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Version](https://img.shields.io/badge/version-6.1.0-blue)](https://www.npmjs.com/package/@xmachines/play-view)
8
8
 
9
9
  ## Installation
10
10
 
@@ -31,21 +31,23 @@ A renderer of a framework is two things: the view lifecycle, and the code that b
31
31
 
32
32
  It also holds `Viewable` and `PlaySpec`. Every type here names a type of `@xmachines/json-render-core`, and that is the reason they are here and not in [`@xmachines/play-actor`](../play-actor/README.md): an application that routes and renders no view installs this package never, and json-render never.
33
33
 
34
- | Export | Description |
35
- | ------------------------------------------------ | --------------------------------------------------------------------- |
36
- | `Viewable` | The capability of an actor that publishes a `currentView` atom |
37
- | `PlaySpec`, `typedSpec` | The spec that an actor publishes, and its identity helper |
38
- | `BaseActorProviderProps`, `BaseViewContextValue` | The framework-free half of the props and of the context of a provider |
39
- | `createViewStoreLifecycle` | The lifecycle of the state store of one view |
40
- | `createFailureLatch`, `createReportGuard` | The report of a render failure, one time for each view |
41
- | `toAtomState`, `attachRenderErrorHandler` | The guards that a provider puts around a registry |
42
- | `composePlayState`, `refreshContextSubtree`, … | The projection of the machine context into the store |
34
+ | Export | Description |
35
+ | ------------------------------------------------ | ---------------------------------------------------------------------- |
36
+ | `Viewable` | The capability of an actor that publishes a `currentView` atom |
37
+ | `ViewMeta`, `typedSpec` | The view that an author writes in `meta.view`, and its identity helper |
38
+ | `PlaySpec` | The spec that an actor publishes, and that a renderer receives |
39
+ | `ViewOutlet`, `composeViews` | The composition of a parent view and the views of its substates |
40
+ | `BaseActorProviderProps`, `BaseViewContextValue` | The framework-free half of the props and of the context of a provider |
41
+ | `createViewStoreLifecycle` | The lifecycle of the state store of one view |
42
+ | `createFailureLatch`, `createReportGuard` | The report of a render failure, one time for each view |
43
+ | `toAtomState`, `attachRenderErrorHandler` | The guards that a provider puts around a registry |
44
+ | `composePlayState`, `refreshContextSubtree`, … | The projection of the machine context into the store |
43
45
 
44
46
  ## API Summary
45
47
 
46
48
  ### `typedSpec(spec)`
47
49
 
48
- This identity helper gives a view-spec literal the type `PlaySpec` at the definition site. The
50
+ This identity helper gives a view-spec literal the type `ViewMeta` at the definition site. The
49
51
  XState `meta` field has the type `Record<string, unknown>`. Therefore this helper is the place
50
52
  where the spec shape receives the compile-time check and the IDE autocomplete. The helper has no
51
53
  cost at run time.
@@ -68,9 +70,14 @@ meta: {
68
70
  }
69
71
  ```
70
72
 
71
- ### `PlaySpec`
73
+ ### `ViewMeta` and `PlaySpec`
72
74
 
73
- This type extends the `Spec` type of `@xmachines/json-render-core`. Each derived view receives
75
+ `ViewMeta` is the view that you write in `meta.view`: the `Spec` type of
76
+ `@xmachines/json-render-core`, and the `outlets` of a parent view. `PlaySpec` is the view that the
77
+ actor derives from it, and that a renderer receives: it carries `viewKey`, the `/context`
78
+ projection, and `viewParts` for a composed view, and no `outlets`.
79
+
80
+ `PlaySpec` extends the `Spec` type of `@xmachines/json-render-core`. Each derived view receives
74
81
  the complete machine context in its state store, under the read-only **`/context` subtree**. A
75
82
  spec therefore reads the context through the ordinary `{ $state: "/context/…" }` grammar: in a
76
83
  prop, in a `visible` condition, and in `repeat.statePath`.
@@ -99,9 +106,9 @@ high-frequency ephemeral data, such as a draft for each keystroke or a timer, in
99
106
  keystroke does not.
100
107
 
101
108
  ```ts
102
- import type { PlaySpec } from "@xmachines/play-view";
109
+ import type { ViewMeta } from "@xmachines/play-view";
103
110
 
104
- const spec: PlaySpec = {
111
+ const spec: ViewMeta = {
105
112
  root: "root",
106
113
  elements: {
107
114
  root: {
@@ -113,16 +120,40 @@ const spec: PlaySpec = {
113
120
  };
114
121
  ```
115
122
 
116
- > Historical note: an earlier version had a `contextProps` field. At first the field drove an
117
- > implicit prop-enrichment pass. That pass merged the allowlisted context fields and the URL
118
- > params into the props of every element. We removed it, because it put values into components
119
- > that never asked for them, and it let URL data from the user hide machine-owned state. The
120
- > field was then a projection filter for a short time. We removed that filter too, because a
121
- > limit on what a view can read added machinery without a real problem to solve. Always
122
- > validate the **derived** view (`actor.currentView.get()`), not the raw `meta.view`. The
123
+ > Always validate the **derived** view (`actor.currentView.get()`), not the raw `meta.view`. The
123
124
  > `state` of the derived spec carries the projection, so a tool such as `validateSpec` sees a
124
125
  > spec that is consistent with itself.
125
126
 
127
+ ### `outlets` and `composeViews(tree)`
128
+
129
+ A `meta.view` that declares `outlets` shares the screen with the views of its active substates.
130
+ Each outlet is a `ViewOutlet`: the `element` of the parent view that receives the view of a
131
+ child, and an optional named `slot` of that element. Without `slot`, the child view goes into the
132
+ `children` of the element.
133
+
134
+ ```ts
135
+ outlets: {
136
+ menu: { element: "shell", slot: "sidebar" }, // the child state "menu"
137
+ "*": { element: "shell" }, // every other active child
138
+ }
139
+ ```
140
+
141
+ The view derivation of [`@xmachines/play-xstate`](../play-xstate/README.md) resolves the active
142
+ views into a `ViewTree`, and `composeViews` grafts that tree into one flat spec. The keys of the
143
+ outer view stay as the author wrote them, and each key of a child view gets the id of its state
144
+ as a prefix (`"app.page/root"`). The function returns the same object for the same tree, so the
145
+ emit gate of the actor sees no change on a context assign. An outlet that names an absent element
146
+ throws `InvalidViewOutletError` from `@xmachines/play-view/errors`.
147
+
148
+ A composed spec carries `viewParts`, the ids of the composed states, and its `viewKey` is the id
149
+ of the outermost view. `createViewStoreLifecycle` therefore keeps the store when a page changes,
150
+ and it writes the authored keys of the new page that the store does not hold yet. In the
151
+ controlled mode, the caller owns the seed, so the lifecycle writes no authored key. It refreshes
152
+ `/context` only.
153
+
154
+ The [State Machines guide](../../../guides/state-machines.md#a-layout-and-its-pages-outlets)
155
+ shows a complete machine.
156
+
126
157
  ### `Viewable`
127
158
 
128
159
  Interface for actors that expose a renderable view atom.
@@ -14,4 +14,5 @@ Match on the `code`, or on the class. Match on the `message` never.
14
14
 
15
15
  ## Classes
16
16
 
17
+ - [InvalidViewOutletError](classes/InvalidViewOutletError.md)
17
18
  - [ReadOnlyContextError](classes/ReadOnlyContextError.md)
@@ -0,0 +1,204 @@
1
+ [API](../../../../README.md) / [@xmachines/play-view](../../README.md) / [errors](../README.md) / InvalidViewOutletError
2
+
3
+ # Class: InvalidViewOutletError
4
+
5
+ Defined in: [packages/play-view/src/errors.ts:81](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/errors.ts#L81)
6
+
7
+ An outlet of a `meta.view` names an element that the view does not hold.
8
+
9
+ The view derivation puts the view of a child state into the element that the outlet
10
+ names. With no such element, the child view has no place on the screen, so the
11
+ derivation refuses the composition. The actor reports the error through its `onError`
12
+ option and keeps the last good view.
13
+
14
+ ## Example
15
+
16
+ ```typescript
17
+ import { definePlayer, compose, PlayerActor } from "@xmachines/play-xstate";
18
+ import { withView } from "@xmachines/play-xstate/view";
19
+ import { InvalidViewOutletError } from "@xmachines/play-view/errors";
20
+
21
+ const createPlayer = definePlayer({
22
+ machine,
23
+ actor: compose(PlayerActor, withView),
24
+ options: {
25
+ onError: (_actor, error) => {
26
+ if (error instanceof InvalidViewOutletError) {
27
+ console.error(`Fix meta.view.outlets of "${error.stateId}"`);
28
+ }
29
+ },
30
+ },
31
+ });
32
+ ```
33
+
34
+ ## Extends
35
+
36
+ - [`PlayError`](../../../play/errors/classes/PlayError.md)
37
+
38
+ ## Constructors
39
+
40
+ ### Constructor
41
+
42
+ ```ts
43
+ new InvalidViewOutletError(
44
+ stateId,
45
+ outlet,
46
+ element
47
+ ): InvalidViewOutletError;
48
+ ```
49
+
50
+ Defined in: [packages/play-view/src/errors.ts:92](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/errors.ts#L92)
51
+
52
+ #### Parameters
53
+
54
+ | Parameter | Type | Description |
55
+ | --------- | -------- | -------------------------------------------------- |
56
+ | `stateId` | `string` | The id of the state node that declares the outlet. |
57
+ | `outlet` | `string` | The key of the outlet. |
58
+ | `element` | `string` | The element key that the outlet names. |
59
+
60
+ #### Returns
61
+
62
+ `InvalidViewOutletError`
63
+
64
+ #### Overrides
65
+
66
+ [`PlayError`](../../../play/errors/classes/PlayError.md).[`constructor`](../../../play/errors/classes/PlayError.md#constructor)
67
+
68
+ ## Properties
69
+
70
+ | Property | Modifier | Type | Description | Inherited from | Defined in |
71
+ | ------------------------------------------------------- | ---------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
72
+ | <a id="property-cause"></a> `cause?` | `public` | `unknown` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`cause`](../../../play/errors/classes/PlayError.md#property-cause) | - |
73
+ | <a id="property-code"></a> `code` | `readonly` | `string` | A stable, machine-readable identifier of the error. An error code follows the naming convention `<PACKAGE>_<DESCRIPTION>`, and a Play package writes `PLAY_<PACKAGE>_<DESCRIPTION>`. A code 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/core/src/errors.ts:56](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/core/src/errors.ts#L56) |
74
+ | <a id="property-message"></a> `message` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`message`](../../../play/errors/classes/PlayError.md#property-message) | - |
75
+ | <a id="property-name"></a> `name` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`name`](../../../play/errors/classes/PlayError.md#property-name) | - |
76
+ | <a id="property-outlet"></a> `outlet` | `readonly` | `string` | The key of the outlet: a child state key, or `"*"`. | - | [packages/play-view/src/errors.ts:85](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/errors.ts#L85) |
77
+ | <a id="property-scope"></a> `scope` | `readonly` | `string` | The class or the module that threw this error, for example `"asDisposable"`. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`scope`](../../../play/errors/classes/PlayError.md#property-scope) | [packages/core/src/errors.ts:46](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/core/src/errors.ts#L46) |
78
+ | <a id="property-stack"></a> `stack?` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`stack`](../../../play/errors/classes/PlayError.md#property-stack) | - |
79
+ | <a id="property-stateid"></a> `stateId` | `readonly` | `string` | The id of the state node whose `meta.view` declares the outlet. | - | [packages/play-view/src/errors.ts:83](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/errors.ts#L83) |
80
+ | <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) | - |
81
+
82
+ ## Methods
83
+
84
+ ### captureStackTrace()
85
+
86
+ ```ts
87
+ static captureStackTrace(targetObject, constructorOpt?): void;
88
+ ```
89
+
90
+ Defined in: `@types/node`
91
+
92
+ Creates a `.stack` property on `targetObject`, which when accessed returns
93
+ a string representing the location in the code at which
94
+ `Error.captureStackTrace()` was called.
95
+
96
+ ```js
97
+ const myObject = {};
98
+ Error.captureStackTrace(myObject);
99
+ myObject.stack; // Similar to `new Error().stack`
100
+ ```
101
+
102
+ The first line of the trace will be prefixed with
103
+ `${myObject.name}: ${myObject.message}`.
104
+
105
+ The optional `constructorOpt` argument accepts a function. If given, all frames
106
+ above `constructorOpt`, including `constructorOpt`, will be omitted from the
107
+ generated stack trace.
108
+
109
+ The `constructorOpt` argument is useful for hiding implementation
110
+ details of error generation from the user. For instance:
111
+
112
+ ```js
113
+ function a() {
114
+ b();
115
+ }
116
+
117
+ function b() {
118
+ c();
119
+ }
120
+
121
+ function c() {
122
+ // Create an error without stack trace to avoid calculating the stack trace twice.
123
+ const { stackTraceLimit } = Error;
124
+ Error.stackTraceLimit = 0;
125
+ const error = new Error();
126
+ Error.stackTraceLimit = stackTraceLimit;
127
+
128
+ // Capture the stack trace above function b
129
+ Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
130
+ throw error;
131
+ }
132
+
133
+ a();
134
+ ```
135
+
136
+ #### Parameters
137
+
138
+ | Parameter | Type |
139
+ | ----------------- | ---------- |
140
+ | `targetObject` | `object` |
141
+ | `constructorOpt?` | `Function` |
142
+
143
+ #### Returns
144
+
145
+ `void`
146
+
147
+ #### Inherited from
148
+
149
+ [`PlayError`](../../../play/errors/classes/PlayError.md).[`captureStackTrace`](../../../play/errors/classes/PlayError.md#capturestacktrace)
150
+
151
+ ---
152
+
153
+ ### isError()
154
+
155
+ ```ts
156
+ static isError(error): error is Error;
157
+ ```
158
+
159
+ Defined in: `typescript`
160
+
161
+ Indicates whether the argument provided is a built-in Error instance or not.
162
+
163
+ #### Parameters
164
+
165
+ | Parameter | Type |
166
+ | --------- | --------- |
167
+ | `error` | `unknown` |
168
+
169
+ #### Returns
170
+
171
+ `error is Error`
172
+
173
+ #### Inherited from
174
+
175
+ [`PlayError`](../../../play/errors/classes/PlayError.md).[`isError`](../../../play/errors/classes/PlayError.md#iserror)
176
+
177
+ ---
178
+
179
+ ### prepareStackTrace()
180
+
181
+ ```ts
182
+ static prepareStackTrace(err, stackTraces): any;
183
+ ```
184
+
185
+ Defined in: `@types/node`
186
+
187
+ #### Parameters
188
+
189
+ | Parameter | Type |
190
+ | ------------- | ------------ |
191
+ | `err` | `Error` |
192
+ | `stackTraces` | `CallSite`[] |
193
+
194
+ #### Returns
195
+
196
+ `any`
197
+
198
+ #### See
199
+
200
+ https://v8.dev/docs/stack-trace-api#customizing-stack-traces
201
+
202
+ #### Inherited from
203
+
204
+ [`PlayError`](../../../play/errors/classes/PlayError.md).[`prepareStackTrace`](../../../play/errors/classes/PlayError.md#preparestacktrace)