@xmachines/docs 5.0.2 → 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 (572) hide show
  1. package/README.md +9 -5
  2. package/api/@xmachines/core/README.md +209 -0
  3. package/api/@xmachines/core/cache/README.md +17 -0
  4. package/api/@xmachines/core/cache/functions/createLruCache.md +52 -0
  5. package/api/@xmachines/core/cache/interfaces/KeyValueCache.md +61 -0
  6. package/api/@xmachines/core/errors/README.md +11 -0
  7. package/api/@xmachines/core/errors/classes/BaseError.md +226 -0
  8. package/api/@xmachines/core/errors/classes/DisposeConflictError.md +177 -0
  9. package/api/@xmachines/core/utils/README.md +33 -0
  10. package/api/@xmachines/core/utils/functions/asDisposable.md +139 -0
  11. package/api/@xmachines/core/utils/functions/createNullRecord.md +39 -0
  12. package/api/@xmachines/core/utils/functions/createWarnOnce.md +39 -0
  13. package/api/@xmachines/core/utils/functions/describeValue.md +39 -0
  14. package/api/@xmachines/core/utils/functions/isError.md +46 -0
  15. package/api/@xmachines/core/utils/functions/isThenable.md +43 -0
  16. package/api/@xmachines/core/utils/functions/releaseQuietly.md +37 -0
  17. package/api/@xmachines/core/utils/functions/rethrowLater.md +43 -0
  18. package/api/@xmachines/core/utils/functions/safeString.md +36 -0
  19. package/api/@xmachines/core/utils/functions/shallowEqualExcept.md +42 -0
  20. package/api/@xmachines/core/utils/type-aliases/DisposeKey.md +28 -0
  21. package/api/@xmachines/core/utils/type-aliases/DisposeMember.md +14 -0
  22. package/api/@xmachines/{play-router/index → core/utils}/variables/DISPOSE.md +9 -9
  23. package/api/@xmachines/play/README.md +18 -69
  24. package/api/@xmachines/play/errors/classes/NonNullableError.md +4 -4
  25. package/api/@xmachines/play/errors/classes/PlayError.md +31 -34
  26. package/api/@xmachines/play/index/README.md +0 -8
  27. package/api/@xmachines/play/index/functions/assertNonNullable.md +1 -1
  28. package/api/@xmachines/play/index/type-aliases/PlayEvent.md +2 -2
  29. package/api/@xmachines/play-actor/README.md +1 -1
  30. package/api/@xmachines/play-actor/interfaces/ActorEvent.md +2 -2
  31. package/api/@xmachines/play-actor/interfaces/PlayActor.md +3 -3
  32. package/api/@xmachines/play-atom/README.md +35 -26
  33. package/api/@xmachines/play-atom/functions/watchAtom.md +8 -8
  34. package/api/@xmachines/play-atom/interfaces/AsyncAtomOptions.md +4 -4
  35. package/api/@xmachines/play-atom/interfaces/Atom.md +6 -6
  36. package/api/@xmachines/play-atom/interfaces/AtomObserver.md +6 -6
  37. package/api/@xmachines/play-atom/interfaces/AtomOptions.md +4 -4
  38. package/api/@xmachines/play-atom/interfaces/AtomSubscription.md +2 -2
  39. package/api/@xmachines/play-atom/interfaces/BaseAtom.md +4 -4
  40. package/api/@xmachines/play-atom/interfaces/CreateAtom.md +3 -3
  41. package/api/@xmachines/play-atom/interfaces/Readable.md +4 -4
  42. package/api/@xmachines/play-atom/interfaces/ReadonlyAtom.md +4 -4
  43. package/api/@xmachines/play-atom/type-aliases/AnyAtom.md +1 -1
  44. package/api/@xmachines/play-atom/type-aliases/AsyncAtomState.md +1 -1
  45. package/api/@xmachines/play-atom/variables/createAsyncAtom.md +1 -1
  46. package/api/@xmachines/play-atom/variables/createAtom.md +1 -1
  47. package/api/@xmachines/play-atom/variables/createWritableAtom.md +1 -1
  48. package/api/@xmachines/play-dom/README.md +40 -47
  49. package/api/@xmachines/play-dom/classes/PlayRenderer.md +4 -4
  50. package/api/@xmachines/play-dom/functions/createPlayUI.md +1 -1
  51. package/api/@xmachines/play-dom/functions/createRenderer.md +3 -3
  52. package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +11 -11
  53. package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +2 -2
  54. package/api/@xmachines/play-dom/interfaces/MountOptions.md +3 -3
  55. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +14 -14
  56. package/api/@xmachines/play-dom/type-aliases/MountFn.md +6 -17
  57. package/api/@xmachines/play-dom-router/README.md +28 -45
  58. package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +13 -13
  59. package/api/@xmachines/play-dom-router/classes/RouteMap.md +5 -6
  60. package/api/@xmachines/play-dom-router/functions/connectRouter.md +1 -1
  61. package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +5 -3
  62. package/api/@xmachines/play-dom-router/functions/createRouter.md +5 -3
  63. package/api/@xmachines/play-dom-router/interfaces/BasePathOptions.md +3 -3
  64. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +21 -67
  65. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +16 -16
  66. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +10 -10
  67. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +7 -7
  68. package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +4 -4
  69. package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +3 -3
  70. package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +6 -6
  71. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +3 -3
  72. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +5 -5
  73. package/api/@xmachines/play-dom-router/interfaces/RouterConnection.md +12 -31
  74. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +12 -27
  75. package/api/@xmachines/play-pattern/README.md +10 -6
  76. package/api/@xmachines/play-pattern/functions/buildPath.md +1 -1
  77. package/api/@xmachines/play-pattern/functions/{createPatternCache.md → createLruCache.md} +19 -14
  78. package/api/@xmachines/play-pattern/functions/getIndexKey.md +1 -1
  79. package/api/@xmachines/play-pattern/functions/isDotSegment.md +1 -1
  80. package/api/@xmachines/play-pattern/functions/parsePattern.md +1 -1
  81. package/api/@xmachines/play-pattern/interfaces/GroupPart.md +6 -6
  82. package/api/@xmachines/play-pattern/interfaces/KeyValueCache.md +61 -0
  83. package/api/@xmachines/play-pattern/interfaces/LiteralPart.md +5 -5
  84. package/api/@xmachines/play-pattern/interfaces/ParamPart.md +9 -9
  85. package/api/@xmachines/play-pattern/interfaces/ParseOptions.md +4 -4
  86. package/api/@xmachines/play-pattern/interfaces/ParsedPattern.md +14 -14
  87. package/api/@xmachines/play-pattern/interfaces/PatternParam.md +6 -6
  88. package/api/@xmachines/play-pattern/type-aliases/PathBuildResult.md +1 -1
  89. package/api/@xmachines/play-pattern/type-aliases/PathParams.md +1 -1
  90. package/api/@xmachines/play-pattern/type-aliases/PatternModifier.md +1 -1
  91. package/api/@xmachines/play-pattern/type-aliases/PatternPart.md +1 -1
  92. package/api/@xmachines/play-react/README.md +4 -4
  93. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +6 -6
  94. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  95. package/api/@xmachines/play-react/functions/useAtomEffect.md +1 -1
  96. package/api/@xmachines/play-react/functions/usePlayView.md +1 -1
  97. package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +10 -10
  98. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +6 -6
  99. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +4 -4
  100. package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +13 -13
  101. package/api/@xmachines/play-react/interfaces/ViewContextValue.md +5 -5
  102. package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +1 -1
  103. package/api/@xmachines/play-react/variables/ActorProvider.md +1 -1
  104. package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
  105. package/api/@xmachines/play-react/variables/PlayUIProvider.md +1 -1
  106. package/api/@xmachines/play-react-router/README.md +4 -2
  107. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +7 -7
  108. package/api/@xmachines/play-react-router/classes/RouteMap.md +5 -6
  109. package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +1 -1
  110. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +1 -1
  111. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +7 -7
  112. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  113. package/api/@xmachines/play-react-router/interfaces/RoutableActor.md +4 -4
  114. package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +6 -6
  115. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
  116. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +5 -5
  117. package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  118. package/api/@xmachines/play-react-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  119. package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +1 -1
  120. package/api/@xmachines/play-router/README.md +20 -20
  121. package/api/@xmachines/play-router/errors/classes/DuplicateBridgeError.md +4 -4
  122. package/api/@xmachines/play-router/errors/classes/DuplicateRoutePathError.md +5 -5
  123. package/api/@xmachines/play-router/errors/classes/EmptyRoutePathError.md +5 -5
  124. package/api/@xmachines/play-router/errors/classes/InvalidBasePathError.md +5 -5
  125. package/api/@xmachines/play-router/errors/classes/InvalidRoutePatternError.md +5 -5
  126. package/api/@xmachines/play-router/errors/classes/InvalidStateIdError.md +5 -5
  127. package/api/@xmachines/play-router/errors/classes/MissingBasePathParamError.md +6 -6
  128. package/api/@xmachines/play-router/errors/classes/RouterSyncError.md +4 -4
  129. package/api/@xmachines/play-router/errors/classes/UnknownStateTypeError.md +6 -6
  130. package/api/@xmachines/play-router/index/README.md +2 -3
  131. package/api/@xmachines/play-router/index/classes/RouteMap.md +5 -6
  132. package/api/@xmachines/play-router/index/classes/RouterBridgeBase.md +7 -7
  133. package/api/@xmachines/play-router/index/functions/buildPlayRouteEvent.md +1 -1
  134. package/api/@xmachines/play-router/index/functions/buildRouteTree.md +1 -1
  135. package/api/@xmachines/play-router/index/functions/cleanFrameworkParams.md +1 -1
  136. package/api/@xmachines/play-router/index/functions/{createPatternCache.md → createLruCache.md} +19 -14
  137. package/api/@xmachines/play-router/index/functions/createRouteMapFromTree.md +1 -1
  138. package/api/@xmachines/play-router/index/functions/createRouterConnection.md +1 -1
  139. package/api/@xmachines/play-router/index/functions/detectDuplicateRoutes.md +1 -1
  140. package/api/@xmachines/play-router/index/functions/extractQuery.md +1 -1
  141. package/api/@xmachines/play-router/index/functions/extractRouteParams.md +1 -1
  142. package/api/@xmachines/play-router/index/functions/findRouteById.md +1 -1
  143. package/api/@xmachines/play-router/index/functions/findRouteByPath.md +3 -3
  144. package/api/@xmachines/play-router/index/functions/isMountableBridge.md +1 -1
  145. package/api/@xmachines/play-router/index/functions/joinBasePath.md +1 -1
  146. package/api/@xmachines/play-router/index/functions/mountKey.md +1 -1
  147. package/api/@xmachines/play-router/index/functions/normalizeBasePath.md +1 -1
  148. package/api/@xmachines/play-router/index/functions/openProviderBridge.md +3 -3
  149. package/api/@xmachines/play-router/index/functions/parsePattern.md +1 -1
  150. package/api/@xmachines/play-router/index/functions/pickOwnParams.md +1 -1
  151. package/api/@xmachines/play-router/index/functions/repointProviderBridge.md +1 -1
  152. package/api/@xmachines/play-router/index/functions/resolveBasePath.md +1 -1
  153. package/api/@xmachines/play-router/index/functions/resolveFrameworkParams.md +1 -1
  154. package/api/@xmachines/play-router/index/functions/sanitizePathname.md +1 -1
  155. package/api/@xmachines/play-router/index/functions/splitLocation.md +1 -1
  156. package/api/@xmachines/play-router/index/functions/stripBasePath.md +1 -1
  157. package/api/@xmachines/play-router/index/functions/validateRouteFormat.md +1 -1
  158. package/api/@xmachines/play-router/index/functions/validateStateExists.md +1 -1
  159. package/api/@xmachines/play-router/index/interfaces/BasePathOptions.md +3 -3
  160. package/api/@xmachines/play-router/index/interfaces/BuildPlayRouteEventOptions.md +4 -4
  161. package/api/@xmachines/play-router/index/interfaces/CompileOptions.md +5 -5
  162. package/api/@xmachines/play-router/index/interfaces/FrameworkParamsSource.md +9 -9
  163. package/api/@xmachines/play-router/index/interfaces/KeyValueCache.md +61 -0
  164. package/api/@xmachines/play-router/index/interfaces/LocationLike.md +3 -3
  165. package/api/@xmachines/play-router/index/interfaces/MountableRouterBridge.md +6 -6
  166. package/api/@xmachines/play-router/index/interfaces/OpenProviderBridgeArgs.md +10 -10
  167. package/api/@xmachines/play-router/index/interfaces/ParseOptions.md +4 -4
  168. package/api/@xmachines/play-router/index/interfaces/ParsedPattern.md +12 -12
  169. package/api/@xmachines/play-router/index/interfaces/PlayRouteEvent.md +7 -7
  170. package/api/@xmachines/play-router/index/interfaces/PlayRouterProviderBaseProps.md +11 -11
  171. package/api/@xmachines/play-router/index/interfaces/ResolvedBasePath.md +3 -3
  172. package/api/@xmachines/play-router/index/interfaces/ResolvedRoutePath.md +3 -3
  173. package/api/@xmachines/play-router/index/interfaces/Routable.md +3 -3
  174. package/api/@xmachines/play-router/index/interfaces/RoutableActor.md +4 -4
  175. package/api/@xmachines/play-router/index/interfaces/RouteInfo.md +8 -8
  176. package/api/@xmachines/play-router/index/interfaces/RouteMapOptions.md +6 -6
  177. package/api/@xmachines/play-router/index/interfaces/RouteMapping.md +3 -3
  178. package/api/@xmachines/play-router/index/interfaces/RouteMatch.md +3 -3
  179. package/api/@xmachines/play-router/index/interfaces/RouteNode.md +10 -10
  180. package/api/@xmachines/play-router/index/interfaces/RouteObject.md +12 -15
  181. package/api/@xmachines/play-router/index/interfaces/RouteTree.md +5 -5
  182. package/api/@xmachines/play-router/index/interfaces/RouteWatcherHandle.md +3 -3
  183. package/api/@xmachines/play-router/index/interfaces/RouterBridge.md +5 -5
  184. package/api/@xmachines/play-router/index/interfaces/RouterBridgeOptions.md +7 -7
  185. package/api/@xmachines/play-router/index/interfaces/RouterConnection.md +12 -31
  186. package/api/@xmachines/play-router/index/interfaces/SplitLocation.md +5 -5
  187. package/api/@xmachines/play-router/index/interfaces/WindowLike.md +3 -3
  188. package/api/@xmachines/play-router/index/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  189. package/api/@xmachines/play-router/index/type-aliases/RouteData.md +1 -1
  190. package/api/@xmachines/play-router/index/type-aliases/RouteDataResolver.md +1 -1
  191. package/api/@xmachines/play-router/index/type-aliases/RouteMetadata.md +1 -1
  192. package/api/@xmachines/play-router/index/type-aliases/URLPatternLike.md +3 -3
  193. package/api/@xmachines/play-router/index/variables/NO_BASE_PATH.md +1 -1
  194. package/api/@xmachines/play-router/index/variables/ROOT_NODE_ID.md +1 -1
  195. package/api/@xmachines/play-router/xstate/functions/createRouteMap.md +1 -1
  196. package/api/@xmachines/play-router/xstate/functions/extractMachineRoutes.md +1 -1
  197. package/api/@xmachines/play-router/xstate/functions/getNavigableRoutes.md +1 -1
  198. package/api/@xmachines/play-router/xstate/functions/getRoutableRoutes.md +1 -1
  199. package/api/@xmachines/play-router/xstate/functions/getRouteMappings.md +1 -1
  200. package/api/@xmachines/play-router/xstate/functions/getTransitionReachableRoutes.md +1 -1
  201. package/api/@xmachines/play-router/xstate/functions/isRouteReachable.md +1 -1
  202. package/api/@xmachines/play-router/xstate/functions/machineToGraph.md +1 -1
  203. package/api/@xmachines/play-router/xstate/functions/routeExists.md +1 -1
  204. package/api/@xmachines/play-router/xstate/interfaces/MachineEdgeData.md +3 -3
  205. package/api/@xmachines/play-router/xstate/interfaces/MachineNodeData.md +5 -5
  206. package/api/@xmachines/play-router/xstate/type-aliases/MachineGraph.md +1 -1
  207. package/api/@xmachines/play-solid/README.md +2 -5
  208. package/api/@xmachines/play-solid/functions/defineRegistry.md +5 -5
  209. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  210. package/api/@xmachines/play-solid/functions/usePlayView.md +1 -1
  211. package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +10 -10
  212. package/api/@xmachines/play-solid/interfaces/ComponentContext.md +9 -8
  213. package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +13 -13
  214. package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +5 -5
  215. package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +1 -1
  216. package/api/@xmachines/play-solid/variables/ActorContext.md +1 -1
  217. package/api/@xmachines/play-solid/variables/ActorProvider.md +1 -1
  218. package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
  219. package/api/@xmachines/play-solid/variables/PlayUIProvider.md +1 -1
  220. package/api/@xmachines/play-solid/variables/schema.md +35 -54
  221. package/api/@xmachines/play-solid-router/README.md +5 -3
  222. package/api/@xmachines/play-solid-router/classes/RouteMap.md +5 -6
  223. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +8 -8
  224. package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +1 -1
  225. package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +3 -3
  226. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +7 -7
  227. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +11 -11
  228. package/api/@xmachines/play-solid-router/interfaces/RoutableActor.md +4 -4
  229. package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +6 -6
  230. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +3 -3
  231. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +5 -5
  232. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  233. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  234. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
  235. package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +1 -1
  236. package/api/@xmachines/play-svelte/README.md +3 -3
  237. package/api/@xmachines/play-svelte/functions/defineRegistry.md +1 -1
  238. package/api/@xmachines/play-svelte/functions/getActorContext.md +1 -1
  239. package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +1 -1
  240. package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
  241. package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +10 -10
  242. package/api/@xmachines/play-svelte/interfaces/BaseComponentProps.md +10 -8
  243. package/api/@xmachines/play-svelte/interfaces/ComponentContext.md +10 -8
  244. package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +4 -4
  245. package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +13 -13
  246. package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +5 -5
  247. package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +1 -1
  248. package/api/@xmachines/play-svelte-spa-router/README.md +4 -2
  249. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +5 -6
  250. package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +7 -7
  251. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +1 -1
  252. package/api/@xmachines/play-svelte-spa-router/interfaces/BasePathOptions.md +3 -3
  253. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +10 -10
  254. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +7 -7
  255. package/api/@xmachines/play-svelte-spa-router/interfaces/RoutableActor.md +4 -4
  256. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +6 -6
  257. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +3 -3
  258. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +5 -5
  259. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterConnection.md +12 -31
  260. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +3 -3
  261. package/api/@xmachines/play-sveltekit-router/README.md +4 -2
  262. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +5 -6
  263. package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +7 -7
  264. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +1 -1
  265. package/api/@xmachines/play-sveltekit-router/interfaces/BasePathOptions.md +3 -3
  266. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +10 -10
  267. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +3 -3
  268. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +7 -7
  269. package/api/@xmachines/play-sveltekit-router/interfaces/RoutableActor.md +4 -4
  270. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +6 -6
  271. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +3 -3
  272. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +5 -5
  273. package/api/@xmachines/play-sveltekit-router/interfaces/RouterConnection.md +12 -31
  274. package/api/@xmachines/play-tanstack-react-router/README.md +4 -2
  275. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +5 -6
  276. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +7 -7
  277. package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +1 -1
  278. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +1 -1
  279. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +7 -7
  280. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  281. package/api/@xmachines/play-tanstack-react-router/interfaces/RoutableActor.md +4 -4
  282. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +6 -6
  283. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +3 -3
  284. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +5 -5
  285. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  286. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  287. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  288. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +5 -5
  289. package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +1 -1
  290. package/api/@xmachines/play-tanstack-router/README.md +11 -1
  291. package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +7 -7
  292. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +3 -3
  293. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +5 -5
  294. package/api/@xmachines/play-tanstack-solid-router/README.md +4 -2
  295. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +5 -6
  296. package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +7 -7
  297. package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +1 -1
  298. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +7 -7
  299. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +11 -11
  300. package/api/@xmachines/play-tanstack-solid-router/interfaces/RoutableActor.md +4 -4
  301. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +6 -6
  302. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
  303. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +5 -5
  304. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  305. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  306. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  307. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +5 -5
  308. package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +1 -1
  309. package/api/@xmachines/play-url/README.md +3 -3
  310. package/api/@xmachines/play-url/errors/classes/InvalidBasePathError.md +5 -5
  311. package/api/@xmachines/play-url/errors/classes/InvalidRoutePatternError.md +5 -5
  312. package/api/@xmachines/play-url/errors/classes/MissingBasePathParamError.md +6 -6
  313. package/api/@xmachines/play-url/index/README.md +2 -2
  314. package/api/@xmachines/play-url/index/functions/buildPath.md +1 -1
  315. package/api/@xmachines/play-url/index/functions/cleanFrameworkParams.md +1 -1
  316. package/api/@xmachines/play-url/index/functions/{createPatternCache.md → createLruCache.md} +19 -14
  317. package/api/@xmachines/play-url/index/functions/getCandidates.md +1 -1
  318. package/api/@xmachines/play-url/index/functions/getCompiledPattern.md +1 -1
  319. package/api/@xmachines/play-url/index/functions/getIndexKey.md +1 -1
  320. package/api/@xmachines/play-url/index/functions/holdsUnsubstitutedParam.md +1 -1
  321. package/api/@xmachines/play-url/index/functions/isDotSegment.md +1 -1
  322. package/api/@xmachines/play-url/index/functions/joinBasePath.md +1 -1
  323. package/api/@xmachines/play-url/index/functions/normalizeBasePath.md +1 -1
  324. package/api/@xmachines/play-url/index/functions/parsePattern.md +1 -1
  325. package/api/@xmachines/play-url/index/functions/pickOwnParams.md +1 -1
  326. package/api/@xmachines/play-url/index/functions/resolveBasePath.md +1 -1
  327. package/api/@xmachines/play-url/index/functions/resolveFrameworkParams.md +1 -1
  328. package/api/@xmachines/play-url/index/functions/sanitizePathname.md +1 -1
  329. package/api/@xmachines/play-url/index/functions/splitLocation.md +1 -1
  330. package/api/@xmachines/play-url/index/functions/stripBasePath.md +1 -1
  331. package/api/@xmachines/play-url/index/interfaces/BasePathOptions.md +3 -3
  332. package/api/@xmachines/play-url/index/interfaces/CompileOptions.md +5 -5
  333. package/api/@xmachines/play-url/index/interfaces/FrameworkParamsSource.md +9 -9
  334. package/api/@xmachines/play-url/index/interfaces/GroupPart.md +4 -4
  335. package/api/@xmachines/play-url/index/interfaces/KeyValueCache.md +61 -0
  336. package/api/@xmachines/play-url/index/interfaces/LiteralPart.md +3 -3
  337. package/api/@xmachines/play-url/index/interfaces/ParamPart.md +7 -7
  338. package/api/@xmachines/play-url/index/interfaces/ParseOptions.md +4 -4
  339. package/api/@xmachines/play-url/index/interfaces/ParsedPattern.md +12 -12
  340. package/api/@xmachines/play-url/index/interfaces/PatternParam.md +4 -4
  341. package/api/@xmachines/play-url/index/interfaces/ResolvedBasePath.md +3 -3
  342. package/api/@xmachines/play-url/index/interfaces/SplitLocation.md +5 -5
  343. package/api/@xmachines/play-url/index/type-aliases/PathBuildResult.md +1 -1
  344. package/api/@xmachines/play-url/index/type-aliases/PathParams.md +1 -1
  345. package/api/@xmachines/play-url/index/type-aliases/PatternModifier.md +1 -1
  346. package/api/@xmachines/play-url/index/type-aliases/PatternPart.md +1 -1
  347. package/api/@xmachines/play-url/index/type-aliases/URLPatternCtor.md +1 -1
  348. package/api/@xmachines/play-url/index/type-aliases/URLPatternLike.md +3 -3
  349. package/api/@xmachines/play-url/index/variables/NO_BASE_PATH.md +1 -1
  350. package/api/@xmachines/play-url/index/variables/URLPattern.md +1 -1
  351. package/api/@xmachines/play-view/README.md +56 -24
  352. package/api/@xmachines/play-view/errors/README.md +2 -1
  353. package/api/@xmachines/play-view/errors/classes/InvalidViewOutletError.md +204 -0
  354. package/api/@xmachines/play-view/errors/classes/ReadOnlyContextError.md +5 -5
  355. package/api/@xmachines/play-view/index/README.md +6 -0
  356. package/api/@xmachines/play-view/index/functions/attachRenderErrorHandler.md +1 -1
  357. package/api/@xmachines/play-view/index/functions/composePlayState.md +1 -1
  358. package/api/@xmachines/play-view/index/functions/composeViews.md +35 -0
  359. package/api/@xmachines/play-view/index/functions/createFailureLatch.md +1 -1
  360. package/api/@xmachines/play-view/index/functions/createReportGuard.md +1 -1
  361. package/api/@xmachines/play-view/index/functions/createViewStoreLifecycle.md +1 -1
  362. package/api/@xmachines/play-view/index/functions/guardContextWrites.md +1 -1
  363. package/api/@xmachines/play-view/index/functions/refreshContextSubtree.md +1 -1
  364. package/api/@xmachines/play-view/index/functions/reuseComposedState.md +2 -2
  365. package/api/@xmachines/play-view/index/functions/sameViewInputs.md +1 -1
  366. package/api/@xmachines/play-view/index/functions/toAtomState.md +1 -1
  367. package/api/@xmachines/play-view/index/functions/typedSpec.md +11 -11
  368. package/api/@xmachines/play-view/index/interfaces/BaseActorProviderProps.md +5 -5
  369. package/api/@xmachines/play-view/index/interfaces/BaseViewContextValue.md +5 -5
  370. package/api/@xmachines/play-view/index/interfaces/ComposedView.md +16 -0
  371. package/api/@xmachines/play-view/index/interfaces/FailureLatch.md +3 -3
  372. package/api/@xmachines/play-view/index/interfaces/PlaySpec.md +12 -8
  373. package/api/@xmachines/play-view/index/interfaces/ReportGuard.md +5 -5
  374. package/api/@xmachines/play-view/index/interfaces/ReportGuardMessages.md +5 -5
  375. package/api/@xmachines/play-view/index/interfaces/ResolveViewStoreOptions.md +2 -2
  376. package/api/@xmachines/play-view/index/interfaces/ViewInputs.md +4 -4
  377. package/api/@xmachines/play-view/index/interfaces/ViewMeta.md +25 -0
  378. package/api/@xmachines/play-view/index/interfaces/ViewOutlet.md +23 -0
  379. package/api/@xmachines/play-view/index/interfaces/ViewStoreLifecycle.md +3 -3
  380. package/api/@xmachines/play-view/index/interfaces/ViewStoreResolution.md +4 -4
  381. package/api/@xmachines/play-view/index/interfaces/ViewTree.md +15 -0
  382. package/api/@xmachines/play-view/index/interfaces/ViewTreeChild.md +14 -0
  383. package/api/@xmachines/play-view/index/interfaces/Viewable.md +4 -4
  384. package/api/@xmachines/play-view/index/type-aliases/ViewActor.md +1 -1
  385. package/api/@xmachines/play-view/index/variables/CONTEXT_STATE_KEY.md +1 -1
  386. package/api/@xmachines/play-vue/README.md +4 -6
  387. package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
  388. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  389. package/api/@xmachines/play-vue/functions/usePlayView.md +1 -1
  390. package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +8 -8
  391. package/api/@xmachines/play-vue/interfaces/ComponentContext.md +1 -0
  392. package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +11 -11
  393. package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +5 -5
  394. package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +1 -1
  395. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
  396. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
  397. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
  398. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  399. package/api/@xmachines/play-vue/variables/schema.md +35 -54
  400. package/api/@xmachines/play-vue-router/README.md +4 -2
  401. package/api/@xmachines/play-vue-router/errors/classes/VueRouterNavigationError.md +4 -4
  402. package/api/@xmachines/play-vue-router/errors/classes/VueRouterSendError.md +4 -4
  403. package/api/@xmachines/play-vue-router/index/classes/RouteMap.md +5 -6
  404. package/api/@xmachines/play-vue-router/index/classes/VueRouterBridge.md +7 -7
  405. package/api/@xmachines/play-vue-router/index/interfaces/PlayRouteEvent.md +7 -7
  406. package/api/@xmachines/play-vue-router/index/interfaces/RoutableActor.md +4 -4
  407. package/api/@xmachines/play-vue-router/index/interfaces/RouteMapOptions.md +6 -6
  408. package/api/@xmachines/play-vue-router/index/interfaces/RouteMapping.md +3 -3
  409. package/api/@xmachines/play-vue-router/index/interfaces/RouterBridge.md +5 -5
  410. package/api/@xmachines/play-vue-router/index/variables/PlayRouterProvider.md +7 -7
  411. package/api/@xmachines/play-xstate/README.md +42 -24
  412. package/api/@xmachines/play-xstate/errors/classes/ActorThrewNonErrorError.md +4 -4
  413. package/api/@xmachines/play-xstate/errors/classes/InvalidEventError.md +5 -5
  414. package/api/@xmachines/play-xstate/errors/classes/InvalidMachineError.md +4 -4
  415. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteHandlerError.md +5 -5
  416. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteMetadataError.md +5 -5
  417. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteParamError.md +14 -14
  418. package/api/@xmachines/play-xstate/errors/classes/MissingRouteParamError.md +6 -6
  419. package/api/@xmachines/play-xstate/errors/classes/MissingStateIdError.md +6 -6
  420. package/api/@xmachines/play-xstate/index/README.md +0 -4
  421. package/api/@xmachines/play-xstate/index/classes/PlayerActor.md +10 -45
  422. package/api/@xmachines/play-xstate/index/functions/compose.md +4 -4
  423. package/api/@xmachines/play-xstate/index/functions/definePlayer.md +2 -2
  424. package/api/@xmachines/play-xstate/index/interfaces/PlayerConfig.md +4 -4
  425. package/api/@xmachines/play-xstate/index/interfaces/PlayerFactoryResumeOptions.md +2 -2
  426. package/api/@xmachines/play-xstate/index/interfaces/PlayerOptions.md +7 -7
  427. package/api/@xmachines/play-xstate/index/type-aliases/Capability.md +1 -1
  428. package/api/@xmachines/play-xstate/index/type-aliases/PlayerConstructor.md +1 -1
  429. package/api/@xmachines/play-xstate/index/type-aliases/PlayerFactory.md +1 -1
  430. package/api/@xmachines/play-xstate/with-routing/functions/buildRouteUrl.md +1 -1
  431. package/api/@xmachines/play-xstate/with-routing/functions/deriveRoute.md +1 -1
  432. package/api/@xmachines/play-xstate/with-routing/functions/formatPlayRouteTransitions.md +1 -1
  433. package/api/@xmachines/play-xstate/with-routing/functions/isAbsoluteRoute.md +1 -1
  434. package/api/@xmachines/play-xstate/with-routing/functions/withRouting.md +1 -1
  435. package/api/@xmachines/play-xstate/with-routing/interfaces/RouteContext.md +5 -5
  436. package/api/@xmachines/play-xstate/with-routing/interfaces/RouteObject.md +12 -15
  437. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteData.md +1 -1
  438. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteDataResolver.md +1 -1
  439. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMachineConfig.md +4 -4
  440. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMetadata.md +1 -1
  441. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteStateNode.md +5 -5
  442. package/api/@xmachines/play-xstate/with-view/functions/withView.md +2 -4
  443. package/api/@xmachines/shared/vite-aliases/README.md +7 -0
  444. package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +11 -5
  445. package/api/@xmachines/shared/vite-aliases/functions/xmBuildOutput.md +37 -0
  446. package/api/@xmachines/shared/vite-aliases/functions/xmBuildOutputFile.md +28 -0
  447. package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
  448. package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +1 -1
  449. package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
  450. package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +2 -2
  451. package/api/@xmachines/shared/vite-aliases/functions/xmTestTarget.md +26 -0
  452. package/api/@xmachines/shared/vite-aliases/type-aliases/XmTestTarget.md +15 -0
  453. package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
  454. package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +5 -1
  455. package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +4 -4
  456. package/api/README.md +1 -0
  457. package/api/llms.txt +9 -4
  458. package/contributing/architecture.md +54 -29
  459. package/contributing/configuration.md +44 -9
  460. package/contributing/development.md +28 -28
  461. package/contributing/migrating-to-play-atom.md +2 -1
  462. package/contributing/testing.md +33 -4
  463. package/examples/@xmachines/play-dom-demo/functions/createAuthActionHandlers.md +9 -9
  464. package/examples/@xmachines/play-dom-demo/functions/createConfirmDialog.md +1 -1
  465. package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +1 -1
  466. package/examples/@xmachines/play-dom-demo/functions/initShell.md +1 -1
  467. package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +1 -1
  468. package/examples/@xmachines/play-dom-demo/variables/About.md +1 -1
  469. package/examples/@xmachines/play-dom-demo/variables/Button.md +1 -1
  470. package/examples/@xmachines/play-dom-demo/variables/Contact.md +1 -1
  471. package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +1 -1
  472. package/examples/@xmachines/play-dom-demo/variables/Field.md +1 -1
  473. package/examples/@xmachines/play-dom-demo/variables/Home.md +1 -1
  474. package/examples/@xmachines/play-dom-demo/variables/Login.md +1 -1
  475. package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +1 -1
  476. package/examples/@xmachines/play-dom-demo/variables/Navigation.md +1 -1
  477. package/examples/@xmachines/play-dom-demo/variables/Overview.md +1 -1
  478. package/examples/@xmachines/play-dom-demo/variables/Panel.md +1 -1
  479. package/examples/@xmachines/play-dom-demo/variables/Profile.md +1 -1
  480. package/examples/@xmachines/play-dom-demo/variables/Settings.md +1 -1
  481. package/examples/@xmachines/play-dom-demo/variables/Stats.md +1 -1
  482. package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +1 -1
  483. package/examples/@xmachines/play-dom-demo/variables/demoComponents.md +15 -15
  484. package/examples/@xmachines/play-react-demo/functions/createAuthActionHandlers.md +9 -9
  485. package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +1 -1
  486. package/examples/@xmachines/play-react-demo/variables/About.md +1 -1
  487. package/examples/@xmachines/play-react-demo/variables/Button.md +1 -1
  488. package/examples/@xmachines/play-react-demo/variables/Contact.md +1 -1
  489. package/examples/@xmachines/play-react-demo/variables/Dashboard.md +1 -1
  490. package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +1 -1
  491. package/examples/@xmachines/play-react-demo/variables/Field.md +1 -1
  492. package/examples/@xmachines/play-react-demo/variables/Home.md +1 -1
  493. package/examples/@xmachines/play-react-demo/variables/Login.md +1 -1
  494. package/examples/@xmachines/play-react-demo/variables/NavBar.md +1 -1
  495. package/examples/@xmachines/play-react-demo/variables/NavBarView.md +1 -1
  496. package/examples/@xmachines/play-react-demo/variables/Navigation.md +1 -1
  497. package/examples/@xmachines/play-react-demo/variables/Overview.md +1 -1
  498. package/examples/@xmachines/play-react-demo/variables/Panel.md +1 -1
  499. package/examples/@xmachines/play-react-demo/variables/Profile.md +1 -1
  500. package/examples/@xmachines/play-react-demo/variables/Settings.md +1 -1
  501. package/examples/@xmachines/play-react-demo/variables/Shell.md +1 -1
  502. package/examples/@xmachines/play-react-demo/variables/Stats.md +1 -1
  503. package/examples/@xmachines/play-react-demo/variables/authCatalog.md +1 -1
  504. package/examples/@xmachines/play-react-demo/variables/demoComponents.md +15 -15
  505. package/examples/@xmachines/play-solid-demo/functions/createAuthActionHandlers.md +9 -9
  506. package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +1 -1
  507. package/examples/@xmachines/play-solid-demo/variables/About.md +1 -1
  508. package/examples/@xmachines/play-solid-demo/variables/Button.md +1 -1
  509. package/examples/@xmachines/play-solid-demo/variables/Contact.md +1 -1
  510. package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +1 -1
  511. package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +1 -1
  512. package/examples/@xmachines/play-solid-demo/variables/Field.md +1 -1
  513. package/examples/@xmachines/play-solid-demo/variables/Home.md +1 -1
  514. package/examples/@xmachines/play-solid-demo/variables/Login.md +1 -1
  515. package/examples/@xmachines/play-solid-demo/variables/NavBar.md +1 -1
  516. package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +1 -1
  517. package/examples/@xmachines/play-solid-demo/variables/Navigation.md +1 -1
  518. package/examples/@xmachines/play-solid-demo/variables/Overview.md +1 -1
  519. package/examples/@xmachines/play-solid-demo/variables/Panel.md +1 -1
  520. package/examples/@xmachines/play-solid-demo/variables/Profile.md +1 -1
  521. package/examples/@xmachines/play-solid-demo/variables/Settings.md +1 -1
  522. package/examples/@xmachines/play-solid-demo/variables/Shell.md +1 -1
  523. package/examples/@xmachines/play-solid-demo/variables/Stats.md +1 -1
  524. package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +190 -277
  525. package/examples/@xmachines/play-solid-demo/variables/demoComponents.md +17 -17
  526. package/examples/@xmachines/play-svelte-demo/functions/createAuthActionHandlers.md +9 -9
  527. package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +1 -1
  528. package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +190 -277
  529. package/examples/@xmachines/play-svelte-demo/variables/demoComponents.md +15 -15
  530. package/examples/@xmachines/play-vue-demo/functions/createAuthActionHandlers.md +9 -9
  531. package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +1 -1
  532. package/examples/@xmachines/play-vue-demo/variables/App.md +1 -1
  533. package/examples/@xmachines/play-vue-demo/variables/authCatalog.md +190 -277
  534. package/examples/@xmachines/play-vue-demo/variables/demoComponents.md +1 -1
  535. package/examples/README.md +2 -2
  536. package/examples/multi-router-integration.md +1 -1
  537. package/examples/routing-patterns.md +1 -1
  538. package/examples/traffic-light.md +1 -1
  539. package/guides/README.md +5 -4
  540. package/guides/actor-model.md +4 -4
  541. package/guides/atoms.md +28 -16
  542. package/guides/getting-started.md +14 -16
  543. package/guides/inspector.md +1 -1
  544. package/guides/routing.md +41 -45
  545. package/guides/state-machines.md +69 -4
  546. package/guides/views.md +347 -0
  547. package/package.json +1 -1
  548. package/rfc/broker.md +4 -0
  549. package/rfc/browser.md +4 -0
  550. package/rfc/cli.md +4 -0
  551. package/rfc/git.md +4 -0
  552. package/rfc/mcp.md +4 -0
  553. package/rfc/node.md +4 -0
  554. package/rfc/play.md +25 -9
  555. package/rfc/rest.md +4 -0
  556. package/rfc/run.md +4 -0
  557. package/rfc/streams.md +4 -0
  558. package/api/@xmachines/play/index/functions/asCleanup.md +0 -77
  559. package/api/@xmachines/play/index/functions/shallowEqualExcept.md +0 -29
  560. package/api/@xmachines/play/index/type-aliases/Cleanup.md +0 -38
  561. package/api/@xmachines/play/index/type-aliases/DisposeKey.md +0 -32
  562. package/api/@xmachines/play/index/variables/DISPOSE.md +0 -34
  563. package/api/@xmachines/play-atom/type-aliases/Cleanup.md +0 -38
  564. package/api/@xmachines/play-dom/functions/asCleanup.md +0 -77
  565. package/api/@xmachines/play-dom/type-aliases/Cleanup.md +0 -38
  566. package/api/@xmachines/play-dom-router/functions/asCleanup.md +0 -77
  567. package/api/@xmachines/play-dom-router/type-aliases/Cleanup.md +0 -38
  568. package/api/@xmachines/play-dom-router/variables/DISPOSE.md +0 -34
  569. package/api/@xmachines/play-pattern/interfaces/PatternCache.md +0 -65
  570. package/api/@xmachines/play-router/index/interfaces/PatternCache.md +0 -65
  571. package/api/@xmachines/play-url/index/interfaces/PatternCache.md +0 -65
  572. package/api/@xmachines/play-xstate/index/variables/DISPOSE.md +0 -34
@@ -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/v5.0.2/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/v5.0.2/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/v5.0.2/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/v5.0.2/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:106](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-url/src/base-path.ts#L106)
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/v5.0.2/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-5.0.2-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
 
@@ -15,10 +15,11 @@ pnpm add @xmachines/play-view
15
15
  **Peer dependencies.** Install them with the package:
16
16
 
17
17
  ```bash
18
- pnpm add @xmachines/json-render-core @xmachines/play @xmachines/play-atom
18
+ pnpm add @xmachines/core @xmachines/json-render-core @xmachines/play @xmachines/play-atom
19
19
  ```
20
20
 
21
- - [`@xmachines/play`](../play/README.md) — the core protocol. This package reads `shallowEqualExcept` from it.
21
+ - [`@xmachines/core`](../core/README.md) — the base package. This package reads the helpers of its `utils` subpath.
22
+ - [`@xmachines/play`](../play/README.md) — the core protocol. This package reads the error classes from its `errors` subpath.
22
23
  - [`@xmachines/play-atom`](../play-atom/README.md) — the atom primitives. The view store holds the spec in a `ReadonlyAtom`.
23
24
  - `@xmachines/json-render-core` — the spec type that `PlaySpec` extends.
24
25
 
@@ -30,21 +31,23 @@ A renderer of a framework is two things: the view lifecycle, and the code that b
30
31
 
31
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.
32
33
 
33
- | Export | Description |
34
- | ------------------------------------------------ | --------------------------------------------------------------------- |
35
- | `Viewable` | The capability of an actor that publishes a `currentView` atom |
36
- | `PlaySpec`, `typedSpec` | The spec that an actor publishes, and its identity helper |
37
- | `BaseActorProviderProps`, `BaseViewContextValue` | The framework-free half of the props and of the context of a provider |
38
- | `createViewStoreLifecycle` | The lifecycle of the state store of one view |
39
- | `createFailureLatch`, `createReportGuard` | The report of a render failure, one time for each view |
40
- | `toAtomState`, `attachRenderErrorHandler` | The guards that a provider puts around a registry |
41
- | `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 |
42
45
 
43
46
  ## API Summary
44
47
 
45
48
  ### `typedSpec(spec)`
46
49
 
47
- 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
48
51
  XState `meta` field has the type `Record<string, unknown>`. Therefore this helper is the place
49
52
  where the spec shape receives the compile-time check and the IDE autocomplete. The helper has no
50
53
  cost at run time.
@@ -67,9 +70,14 @@ meta: {
67
70
  }
68
71
  ```
69
72
 
70
- ### `PlaySpec`
73
+ ### `ViewMeta` and `PlaySpec`
71
74
 
72
- 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
73
81
  the complete machine context in its state store, under the read-only **`/context` subtree**. A
74
82
  spec therefore reads the context through the ordinary `{ $state: "/context/…" }` grammar: in a
75
83
  prop, in a `visible` condition, and in `repeat.statePath`.
@@ -98,9 +106,9 @@ high-frequency ephemeral data, such as a draft for each keystroke or a timer, in
98
106
  keystroke does not.
99
107
 
100
108
  ```ts
101
- import type { PlaySpec } from "@xmachines/play-view";
109
+ import type { ViewMeta } from "@xmachines/play-view";
102
110
 
103
- const spec: PlaySpec = {
111
+ const spec: ViewMeta = {
104
112
  root: "root",
105
113
  elements: {
106
114
  root: {
@@ -112,16 +120,40 @@ const spec: PlaySpec = {
112
120
  };
113
121
  ```
114
122
 
115
- > Historical note: an earlier version had a `contextProps` field. At first the field drove an
116
- > implicit prop-enrichment pass. That pass merged the allowlisted context fields and the URL
117
- > params into the props of every element. We removed it, because it put values into components
118
- > that never asked for them, and it let URL data from the user hide machine-owned state. The
119
- > field was then a projection filter for a short time. We removed that filter too, because a
120
- > limit on what a view can read added machinery without a real problem to solve. Always
121
- > 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
122
124
  > `state` of the derived spec carries the projection, so a tool such as `validateSpec` sees a
123
125
  > spec that is consistent with itself.
124
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
+
125
157
  ### `Viewable`
126
158
 
127
159
  Interface for actors that expose a renderable view atom.
@@ -4,7 +4,7 @@
4
4
 
5
5
  The errors of the view half.
6
6
 
7
- Every error of this workspace extends `PlayError` of `@xmachines/play`, and it carries
7
+ Every error of a Play package extends `PlayError` of `@xmachines/play`, and it carries
8
8
  a `scope` and a `code` that stay the same across a patch release and a minor release.
9
9
  Match on the `code`, or on the class. Match on the `message` never.
10
10
 
@@ -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)
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Class: ReadOnlyContextError
4
4
 
5
- Defined in: [packages/play-view/src/errors.ts:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-view/src/errors.ts#L34)
5
+ Defined in: [packages/play-view/src/errors.ts:34](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/errors.ts#L34)
6
6
 
7
7
  A write reached the context projection of the view store.
8
8
 
@@ -37,7 +37,7 @@ try {
37
37
  new ReadOnlyContextError(path, stateKey): ReadOnlyContextError;
38
38
  ```
39
39
 
40
- Defined in: [packages/play-view/src/errors.ts:42](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-view/src/errors.ts#L42)
40
+ Defined in: [packages/play-view/src/errors.ts:42](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/errors.ts#L42)
41
41
 
42
42
  #### Parameters
43
43
 
@@ -59,11 +59,11 @@ Defined in: [packages/play-view/src/errors.ts:42](https://gitlab.com/xmachin-es/
59
59
  | Property | Modifier | Type | Description | Inherited from | Defined in |
60
60
  | ------------------------------------------------------- | ---------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
61
61
  | <a id="property-cause"></a> `cause?` | `public` | `unknown` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`cause`](../../../play/errors/classes/PlayError.md#property-cause) | - |
62
- | <a id="property-code"></a> `code` | `readonly` | `string` | A stable, machine-readable identifier of the error. An error code follows the naming convention `PLAY_<PACKAGE>_<DESCRIPTION>`. It stays the same across each patch release and each minor release of one major version. Never match on `.message`. Always match on `.code`, or on the subclass. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`code`](../../../play/errors/classes/PlayError.md#property-code) | [packages/play/src/errors.ts:76](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play/src/errors.ts#L76) |
62
+ | <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) |
63
63
  | <a id="property-message"></a> `message` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`message`](../../../play/errors/classes/PlayError.md#property-message) | - |
64
64
  | <a id="property-name"></a> `name` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`name`](../../../play/errors/classes/PlayError.md#property-name) | - |
65
- | <a id="property-path"></a> `path` | `readonly` | `string` | The JSON pointer of the write that the store refused, as the caller gave it. | - | [packages/play-view/src/errors.ts:36](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-view/src/errors.ts#L36) |
66
- | <a id="property-scope"></a> `scope` | `readonly` | `string` | The class or the module that threw this error, for example `"RouterBridgeBase"`. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`scope`](../../../play/errors/classes/PlayError.md#property-scope) | [packages/play/src/errors.ts:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play/src/errors.ts#L66) |
65
+ | <a id="property-path"></a> `path` | `readonly` | `string` | The JSON pointer of the write that the store refused, as the caller gave it. | - | [packages/play-view/src/errors.ts:36](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/errors.ts#L36) |
66
+ | <a id="property-scope"></a> `scope` | `readonly` | `string` | The class or the module that threw this error, for example `"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) |
67
67
  | <a id="property-stack"></a> `stack?` | `public` | `string` | - | [`PlayError`](../../../play/errors/classes/PlayError.md).[`stack`](../../../play/errors/classes/PlayError.md#property-stack) | - |
68
68
  | <a id="property-stacktracelimit"></a> `stackTraceLimit` | `static` | `number` | The `Error.stackTraceLimit` property specifies the number of stack frames collected by a stack trace (whether generated by `new Error().stack` or `Error.captureStackTrace(obj)`). The default value is `10` but may be set to any valid JavaScript number. Changes will affect any stack trace captured _after_ the value has been changed. If set to a non-number value, or set to a negative number, stack traces will not capture any frames. | [`PlayError`](../../../play/errors/classes/PlayError.md).[`stackTraceLimit`](../../../play/errors/classes/PlayError.md#property-stacktracelimit) | - |
69
69
 
@@ -22,6 +22,7 @@ package never, and json-render never.
22
22
 
23
23
  - [BaseActorProviderProps](interfaces/BaseActorProviderProps.md)
24
24
  - [BaseViewContextValue](interfaces/BaseViewContextValue.md)
25
+ - [ComposedView](interfaces/ComposedView.md)
25
26
  - [FailureLatch](interfaces/FailureLatch.md)
26
27
  - [PlaySpec](interfaces/PlaySpec.md)
27
28
  - [ReportGuard](interfaces/ReportGuard.md)
@@ -29,8 +30,12 @@ package never, and json-render never.
29
30
  - [ResolveViewStoreOptions](interfaces/ResolveViewStoreOptions.md)
30
31
  - [Viewable](interfaces/Viewable.md)
31
32
  - [ViewInputs](interfaces/ViewInputs.md)
33
+ - [ViewMeta](interfaces/ViewMeta.md)
34
+ - [ViewOutlet](interfaces/ViewOutlet.md)
32
35
  - [ViewStoreLifecycle](interfaces/ViewStoreLifecycle.md)
33
36
  - [ViewStoreResolution](interfaces/ViewStoreResolution.md)
37
+ - [ViewTree](interfaces/ViewTree.md)
38
+ - [ViewTreeChild](interfaces/ViewTreeChild.md)
34
39
 
35
40
  ## Type Aliases
36
41
 
@@ -44,6 +49,7 @@ package never, and json-render never.
44
49
 
45
50
  - [attachRenderErrorHandler](functions/attachRenderErrorHandler.md)
46
51
  - [composePlayState](functions/composePlayState.md)
52
+ - [composeViews](functions/composeViews.md)
47
53
  - [createFailureLatch](functions/createFailureLatch.md)
48
54
  - [createReportGuard](functions/createReportGuard.md)
49
55
  - [createViewStoreLifecycle](functions/createViewStoreLifecycle.md)
@@ -6,7 +6,7 @@
6
6
  function attachRenderErrorHandler<TRegistry>(registry, handler): TRegistry;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-view/src/provider-guards.ts:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-view/src/provider-guards.ts#L68)
9
+ Defined in: [packages/play-view/src/provider-guards.ts:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/provider-guards.ts#L68)
10
10
 
11
11
  Copies a component registry, and puts an `onRenderError` handler into the copy.
12
12
 
@@ -6,7 +6,7 @@
6
6
  function composePlayState(authoredState, slice): Record<string, unknown> | undefined;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-view/src/context-projection.ts:208](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-view/src/context-projection.ts#L208)
9
+ Defined in: [packages/play-view/src/context-projection.ts:203](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/context-projection.ts#L203)
10
10
 
11
11
  Composes the effective state of a view: the authored `spec.state` and the
12
12
  `/context` slice.
@@ -0,0 +1,35 @@
1
+ [API](../../../../README.md) / [@xmachines/play-view](../../README.md) / [index](../README.md) / composeViews
2
+
3
+ # Function: composeViews()
4
+
5
+ ```ts
6
+ function composeViews(tree): ComposedView;
7
+ ```
8
+
9
+ Defined in: [packages/play-view/src/compose-views.ts:180](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/compose-views.ts#L180)
10
+
11
+ Grafts the views of a [ViewTree](../interfaces/ViewTree.md) into one flat spec.
12
+
13
+ Each child view goes into the outlet of its key, or into the `"*"` outlet. A child
14
+ with neither outlet stays off the screen. The child root lands at the END of the
15
+ `children` or of the named slot of the outlet element, after the elements that the
16
+ parent put there itself, and the children of a parallel state land in the order of
17
+ the machine.
18
+
19
+ The function returns the SAME object for the same tree of the same view objects.
20
+
21
+ ## Parameters
22
+
23
+ | Parameter | Type | Description |
24
+ | --------- | --------------------------------------- | ------------------------------------------------------------------ |
25
+ | `tree` | [`ViewTree`](../interfaces/ViewTree.md) | The resolved views, from the outermost view that declares outlets. |
26
+
27
+ ## Returns
28
+
29
+ [`ComposedView`](../interfaces/ComposedView.md)
30
+
31
+ The static half of the composed view.
32
+
33
+ ## Throws
34
+
35
+ When an outlet names an element that its view does not hold.
@@ -6,7 +6,7 @@
6
6
  function createFailureLatch(): FailureLatch;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-view/src/failure-latch.ts:202](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-view/src/failure-latch.ts#L202)
9
+ Defined in: [packages/play-view/src/failure-latch.ts:202](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/failure-latch.ts#L202)
10
10
 
11
11
  Makes a [FailureLatch](../interfaces/FailureLatch.md).
12
12
 
@@ -6,7 +6,7 @@
6
6
  function createReportGuard(messages): ReportGuard;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-view/src/failure-latch.ts:134](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-view/src/failure-latch.ts#L134)
9
+ Defined in: [packages/play-view/src/failure-latch.ts:134](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/failure-latch.ts#L134)
10
10
 
11
11
  Makes a [ReportGuard](../interfaces/ReportGuard.md).
12
12
 
@@ -6,7 +6,7 @@
6
6
  function createViewStoreLifecycle(createStore): ViewStoreLifecycle;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-view/src/view-store-lifecycle.ts:94](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-view/src/view-store-lifecycle.ts#L94)
9
+ Defined in: [packages/play-view/src/view-store-lifecycle.ts:124](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/view-store-lifecycle.ts#L124)
10
10
 
11
11
  Creates a coordinator of the lifecycle.
12
12
 
@@ -6,7 +6,7 @@
6
6
  function guardContextWrites(store): StateStore;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-view/src/context-projection.ts:137](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-view/src/context-projection.ts#L137)
9
+ Defined in: [packages/play-view/src/context-projection.ts:132](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/context-projection.ts#L132)
10
10
 
11
11
  ## Parameters
12
12
 
@@ -6,7 +6,7 @@
6
6
  function refreshContextSubtree(store, view): void;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-view/src/context-projection.ts:190](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-view/src/context-projection.ts#L190)
9
+ Defined in: [packages/play-view/src/context-projection.ts:185](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/context-projection.ts#L185)
10
10
 
11
11
  Refreshes the `/context` subtree of a live store from the composed state of a
12
12
  derived view. An emission with the same `viewKey` means that only the projection
@@ -6,7 +6,7 @@
6
6
  function reuseComposedState(prev, next): PlaySpec | null;
7
7
  ```
8
8
 
9
- Defined in: [packages/play-view/src/context-projection.ts:73](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-view/src/context-projection.ts#L73)
9
+ Defined in: [packages/play-view/src/context-projection.ts:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.1.0/packages/play-view/src/context-projection.ts#L68)
10
10
 
11
11
  Reuses the composed `state` of the previous emission, or the complete previous
12
12
  spec, when the value of the projection did not change.
@@ -16,7 +16,7 @@ on each call, and the XState function `assign` makes a new context object on
16
16
  every event. Without this reuse, every event therefore presents a new `state`
17
17
  reference, and the `Object.is` test of each field in the emit gate emits the view
18
18
  again and remounts it, without an end. The function compares the slices field by
19
- field ([shallowEqualExcept](../../../play/index/functions/shallowEqualExcept.md)), because the XState function `assign` makes a
19
+ field ([shallowEqualExcept](../../../core/utils/functions/shallowEqualExcept.md)), because the XState function `assign` makes a
20
20
  new context object for each event, and a test of the identity of the whole object
21
21
  therefore reports a change every time. The authored fields come from the static
22
22
  `meta.view.state` through a spread. Therefore their references are stable for an