@xmachines/docs 5.0.1 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (564) hide show
  1. package/README.md +4 -1
  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 +19 -70
  24. package/api/@xmachines/play/errors/classes/NonNullableError.md +4 -4
  25. package/api/@xmachines/play/errors/classes/PlayError.md +30 -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 +32 -34
  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/MountOptions.md +3 -3
  54. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +14 -14
  55. package/api/@xmachines/play-dom/type-aliases/MountFn.md +6 -17
  56. package/api/@xmachines/play-dom-router/README.md +35 -49
  57. package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +13 -13
  58. package/api/@xmachines/play-dom-router/classes/RouteMap.md +5 -6
  59. package/api/@xmachines/play-dom-router/functions/connectRouter.md +1 -1
  60. package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +5 -3
  61. package/api/@xmachines/play-dom-router/functions/createRouter.md +5 -3
  62. package/api/@xmachines/play-dom-router/interfaces/BasePathOptions.md +3 -3
  63. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +21 -67
  64. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +16 -16
  65. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +10 -10
  66. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +7 -7
  67. package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +4 -4
  68. package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +3 -3
  69. package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +6 -6
  70. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +3 -3
  71. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +5 -5
  72. package/api/@xmachines/play-dom-router/interfaces/RouterConnection.md +12 -31
  73. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +12 -27
  74. package/api/@xmachines/play-pattern/README.md +10 -6
  75. package/api/@xmachines/play-pattern/functions/buildPath.md +1 -1
  76. package/api/@xmachines/play-pattern/functions/{createPatternCache.md → createLruCache.md} +19 -14
  77. package/api/@xmachines/play-pattern/functions/getIndexKey.md +1 -1
  78. package/api/@xmachines/play-pattern/functions/isDotSegment.md +1 -1
  79. package/api/@xmachines/play-pattern/functions/parsePattern.md +1 -1
  80. package/api/@xmachines/play-pattern/interfaces/GroupPart.md +6 -6
  81. package/api/@xmachines/play-pattern/interfaces/KeyValueCache.md +61 -0
  82. package/api/@xmachines/play-pattern/interfaces/LiteralPart.md +5 -5
  83. package/api/@xmachines/play-pattern/interfaces/ParamPart.md +9 -9
  84. package/api/@xmachines/play-pattern/interfaces/ParseOptions.md +4 -4
  85. package/api/@xmachines/play-pattern/interfaces/ParsedPattern.md +14 -14
  86. package/api/@xmachines/play-pattern/interfaces/PatternParam.md +6 -6
  87. package/api/@xmachines/play-pattern/type-aliases/PathBuildResult.md +1 -1
  88. package/api/@xmachines/play-pattern/type-aliases/PathParams.md +1 -1
  89. package/api/@xmachines/play-pattern/type-aliases/PatternModifier.md +1 -1
  90. package/api/@xmachines/play-pattern/type-aliases/PatternPart.md +1 -1
  91. package/api/@xmachines/play-react/README.md +5 -5
  92. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +6 -6
  93. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  94. package/api/@xmachines/play-react/functions/useAtomEffect.md +1 -1
  95. package/api/@xmachines/play-react/functions/usePlayView.md +1 -1
  96. package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +10 -10
  97. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +6 -6
  98. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +4 -4
  99. package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +13 -13
  100. package/api/@xmachines/play-react/interfaces/ViewContextValue.md +5 -5
  101. package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +1 -1
  102. package/api/@xmachines/play-react/variables/ActorProvider.md +1 -1
  103. package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
  104. package/api/@xmachines/play-react/variables/PlayUIProvider.md +1 -1
  105. package/api/@xmachines/play-react-router/README.md +5 -3
  106. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +7 -7
  107. package/api/@xmachines/play-react-router/classes/RouteMap.md +5 -6
  108. package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +1 -1
  109. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +1 -1
  110. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +7 -7
  111. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  112. package/api/@xmachines/play-react-router/interfaces/RoutableActor.md +4 -4
  113. package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +6 -6
  114. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
  115. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +5 -5
  116. package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  117. package/api/@xmachines/play-react-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  118. package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +1 -1
  119. package/api/@xmachines/play-router/README.md +15 -14
  120. package/api/@xmachines/play-router/errors/classes/DuplicateBridgeError.md +4 -4
  121. package/api/@xmachines/play-router/errors/classes/DuplicateRoutePathError.md +5 -5
  122. package/api/@xmachines/play-router/errors/classes/EmptyRoutePathError.md +5 -5
  123. package/api/@xmachines/play-router/errors/classes/InvalidBasePathError.md +5 -5
  124. package/api/@xmachines/play-router/errors/classes/InvalidRoutePatternError.md +5 -5
  125. package/api/@xmachines/play-router/errors/classes/InvalidStateIdError.md +5 -5
  126. package/api/@xmachines/play-router/errors/classes/MissingBasePathParamError.md +6 -6
  127. package/api/@xmachines/play-router/errors/classes/RouterSyncError.md +4 -4
  128. package/api/@xmachines/play-router/errors/classes/UnknownStateTypeError.md +6 -6
  129. package/api/@xmachines/play-router/index/README.md +2 -3
  130. package/api/@xmachines/play-router/index/classes/RouteMap.md +5 -6
  131. package/api/@xmachines/play-router/index/classes/RouterBridgeBase.md +7 -7
  132. package/api/@xmachines/play-router/index/functions/buildPlayRouteEvent.md +1 -1
  133. package/api/@xmachines/play-router/index/functions/buildRouteTree.md +1 -1
  134. package/api/@xmachines/play-router/index/functions/cleanFrameworkParams.md +1 -1
  135. package/api/@xmachines/play-router/index/functions/{createPatternCache.md → createLruCache.md} +19 -14
  136. package/api/@xmachines/play-router/index/functions/createRouteMapFromTree.md +1 -1
  137. package/api/@xmachines/play-router/index/functions/createRouterConnection.md +1 -1
  138. package/api/@xmachines/play-router/index/functions/detectDuplicateRoutes.md +1 -1
  139. package/api/@xmachines/play-router/index/functions/extractQuery.md +1 -1
  140. package/api/@xmachines/play-router/index/functions/extractRouteParams.md +1 -1
  141. package/api/@xmachines/play-router/index/functions/findRouteById.md +1 -1
  142. package/api/@xmachines/play-router/index/functions/findRouteByPath.md +3 -3
  143. package/api/@xmachines/play-router/index/functions/isMountableBridge.md +1 -1
  144. package/api/@xmachines/play-router/index/functions/joinBasePath.md +1 -1
  145. package/api/@xmachines/play-router/index/functions/mountKey.md +1 -1
  146. package/api/@xmachines/play-router/index/functions/normalizeBasePath.md +1 -1
  147. package/api/@xmachines/play-router/index/functions/openProviderBridge.md +3 -3
  148. package/api/@xmachines/play-router/index/functions/parsePattern.md +1 -1
  149. package/api/@xmachines/play-router/index/functions/pickOwnParams.md +1 -1
  150. package/api/@xmachines/play-router/index/functions/repointProviderBridge.md +1 -1
  151. package/api/@xmachines/play-router/index/functions/resolveBasePath.md +1 -1
  152. package/api/@xmachines/play-router/index/functions/resolveFrameworkParams.md +1 -1
  153. package/api/@xmachines/play-router/index/functions/sanitizePathname.md +1 -1
  154. package/api/@xmachines/play-router/index/functions/splitLocation.md +1 -1
  155. package/api/@xmachines/play-router/index/functions/stripBasePath.md +1 -1
  156. package/api/@xmachines/play-router/index/functions/validateRouteFormat.md +1 -1
  157. package/api/@xmachines/play-router/index/functions/validateStateExists.md +1 -1
  158. package/api/@xmachines/play-router/index/interfaces/BasePathOptions.md +3 -3
  159. package/api/@xmachines/play-router/index/interfaces/BuildPlayRouteEventOptions.md +4 -4
  160. package/api/@xmachines/play-router/index/interfaces/CompileOptions.md +5 -5
  161. package/api/@xmachines/play-router/index/interfaces/FrameworkParamsSource.md +9 -9
  162. package/api/@xmachines/play-router/index/interfaces/KeyValueCache.md +61 -0
  163. package/api/@xmachines/play-router/index/interfaces/LocationLike.md +3 -3
  164. package/api/@xmachines/play-router/index/interfaces/MountableRouterBridge.md +6 -6
  165. package/api/@xmachines/play-router/index/interfaces/OpenProviderBridgeArgs.md +10 -10
  166. package/api/@xmachines/play-router/index/interfaces/ParseOptions.md +4 -4
  167. package/api/@xmachines/play-router/index/interfaces/ParsedPattern.md +12 -12
  168. package/api/@xmachines/play-router/index/interfaces/PlayRouteEvent.md +7 -7
  169. package/api/@xmachines/play-router/index/interfaces/PlayRouterProviderBaseProps.md +11 -11
  170. package/api/@xmachines/play-router/index/interfaces/ResolvedBasePath.md +3 -3
  171. package/api/@xmachines/play-router/index/interfaces/ResolvedRoutePath.md +3 -3
  172. package/api/@xmachines/play-router/index/interfaces/Routable.md +3 -3
  173. package/api/@xmachines/play-router/index/interfaces/RoutableActor.md +4 -4
  174. package/api/@xmachines/play-router/index/interfaces/RouteInfo.md +8 -8
  175. package/api/@xmachines/play-router/index/interfaces/RouteMapOptions.md +6 -6
  176. package/api/@xmachines/play-router/index/interfaces/RouteMapping.md +3 -3
  177. package/api/@xmachines/play-router/index/interfaces/RouteMatch.md +3 -3
  178. package/api/@xmachines/play-router/index/interfaces/RouteNode.md +10 -10
  179. package/api/@xmachines/play-router/index/interfaces/RouteObject.md +5 -5
  180. package/api/@xmachines/play-router/index/interfaces/RouteTree.md +5 -5
  181. package/api/@xmachines/play-router/index/interfaces/RouteWatcherHandle.md +3 -3
  182. package/api/@xmachines/play-router/index/interfaces/RouterBridge.md +5 -5
  183. package/api/@xmachines/play-router/index/interfaces/RouterBridgeOptions.md +7 -7
  184. package/api/@xmachines/play-router/index/interfaces/RouterConnection.md +12 -31
  185. package/api/@xmachines/play-router/index/interfaces/SplitLocation.md +5 -5
  186. package/api/@xmachines/play-router/index/interfaces/WindowLike.md +3 -3
  187. package/api/@xmachines/play-router/index/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  188. package/api/@xmachines/play-router/index/type-aliases/RouteData.md +1 -1
  189. package/api/@xmachines/play-router/index/type-aliases/RouteDataResolver.md +1 -1
  190. package/api/@xmachines/play-router/index/type-aliases/RouteMetadata.md +1 -1
  191. package/api/@xmachines/play-router/index/type-aliases/URLPatternLike.md +3 -3
  192. package/api/@xmachines/play-router/index/variables/NO_BASE_PATH.md +1 -1
  193. package/api/@xmachines/play-router/index/variables/ROOT_NODE_ID.md +1 -1
  194. package/api/@xmachines/play-router/xstate/functions/createRouteMap.md +1 -1
  195. package/api/@xmachines/play-router/xstate/functions/extractMachineRoutes.md +1 -1
  196. package/api/@xmachines/play-router/xstate/functions/getNavigableRoutes.md +1 -1
  197. package/api/@xmachines/play-router/xstate/functions/getRoutableRoutes.md +1 -1
  198. package/api/@xmachines/play-router/xstate/functions/getRouteMappings.md +1 -1
  199. package/api/@xmachines/play-router/xstate/functions/getTransitionReachableRoutes.md +1 -1
  200. package/api/@xmachines/play-router/xstate/functions/isRouteReachable.md +1 -1
  201. package/api/@xmachines/play-router/xstate/functions/machineToGraph.md +1 -1
  202. package/api/@xmachines/play-router/xstate/functions/routeExists.md +1 -1
  203. package/api/@xmachines/play-router/xstate/interfaces/MachineEdgeData.md +3 -3
  204. package/api/@xmachines/play-router/xstate/interfaces/MachineNodeData.md +5 -5
  205. package/api/@xmachines/play-router/xstate/type-aliases/MachineGraph.md +1 -1
  206. package/api/@xmachines/play-solid/README.md +2 -2
  207. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  208. package/api/@xmachines/play-solid/functions/usePlayView.md +1 -1
  209. package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +10 -10
  210. package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +13 -13
  211. package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +5 -5
  212. package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +1 -1
  213. package/api/@xmachines/play-solid/variables/ActorContext.md +1 -1
  214. package/api/@xmachines/play-solid/variables/ActorProvider.md +1 -1
  215. package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
  216. package/api/@xmachines/play-solid/variables/PlayUIProvider.md +1 -1
  217. package/api/@xmachines/play-solid-router/README.md +5 -3
  218. package/api/@xmachines/play-solid-router/classes/RouteMap.md +5 -6
  219. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +7 -7
  220. package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +1 -1
  221. package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +3 -3
  222. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +7 -7
  223. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +11 -11
  224. package/api/@xmachines/play-solid-router/interfaces/RoutableActor.md +4 -4
  225. package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +6 -6
  226. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +3 -3
  227. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +5 -5
  228. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  229. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  230. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
  231. package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +1 -1
  232. package/api/@xmachines/play-svelte/README.md +4 -4
  233. package/api/@xmachines/play-svelte/functions/defineRegistry.md +1 -1
  234. package/api/@xmachines/play-svelte/functions/getActorContext.md +1 -1
  235. package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +1 -1
  236. package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
  237. package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +10 -10
  238. package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +4 -4
  239. package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +13 -13
  240. package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +5 -5
  241. package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +1 -1
  242. package/api/@xmachines/play-svelte-spa-router/README.md +5 -3
  243. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +5 -6
  244. package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +7 -7
  245. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +1 -1
  246. package/api/@xmachines/play-svelte-spa-router/interfaces/BasePathOptions.md +3 -3
  247. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +10 -10
  248. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +7 -7
  249. package/api/@xmachines/play-svelte-spa-router/interfaces/RoutableActor.md +4 -4
  250. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +6 -6
  251. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +3 -3
  252. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +5 -5
  253. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterConnection.md +12 -31
  254. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +3 -3
  255. package/api/@xmachines/play-sveltekit-router/README.md +5 -3
  256. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +5 -6
  257. package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +7 -7
  258. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +1 -1
  259. package/api/@xmachines/play-sveltekit-router/interfaces/BasePathOptions.md +3 -3
  260. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +10 -10
  261. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +3 -3
  262. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +7 -7
  263. package/api/@xmachines/play-sveltekit-router/interfaces/RoutableActor.md +4 -4
  264. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +6 -6
  265. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +3 -3
  266. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +5 -5
  267. package/api/@xmachines/play-sveltekit-router/interfaces/RouterConnection.md +12 -31
  268. package/api/@xmachines/play-tanstack-react-router/README.md +5 -3
  269. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +5 -6
  270. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +7 -7
  271. package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +1 -1
  272. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +1 -1
  273. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +7 -7
  274. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +11 -11
  275. package/api/@xmachines/play-tanstack-react-router/interfaces/RoutableActor.md +4 -4
  276. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +6 -6
  277. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +3 -3
  278. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +5 -5
  279. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  280. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  281. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  282. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +5 -5
  283. package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +1 -1
  284. package/api/@xmachines/play-tanstack-router/README.md +11 -1
  285. package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +7 -7
  286. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +3 -3
  287. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +5 -5
  288. package/api/@xmachines/play-tanstack-solid-router/README.md +5 -3
  289. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +5 -6
  290. package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +7 -7
  291. package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +1 -1
  292. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +7 -7
  293. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +11 -11
  294. package/api/@xmachines/play-tanstack-solid-router/interfaces/RoutableActor.md +4 -4
  295. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +6 -6
  296. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
  297. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +5 -5
  298. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +1 -1
  299. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterProviderBaseProps.md +1 -1
  300. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  301. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +5 -5
  302. package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +1 -1
  303. package/api/@xmachines/play-url/README.md +3 -3
  304. package/api/@xmachines/play-url/errors/classes/InvalidBasePathError.md +5 -5
  305. package/api/@xmachines/play-url/errors/classes/InvalidRoutePatternError.md +5 -5
  306. package/api/@xmachines/play-url/errors/classes/MissingBasePathParamError.md +6 -6
  307. package/api/@xmachines/play-url/index/README.md +2 -2
  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/{createPatternCache.md → createLruCache.md} +19 -14
  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 +5 -5
  327. package/api/@xmachines/play-url/index/interfaces/FrameworkParamsSource.md +9 -9
  328. package/api/@xmachines/play-url/index/interfaces/GroupPart.md +4 -4
  329. package/api/@xmachines/play-url/index/interfaces/KeyValueCache.md +61 -0
  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 +4 -4
  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 +4 -3
  346. package/api/@xmachines/play-view/errors/README.md +1 -1
  347. package/api/@xmachines/play-view/errors/classes/ReadOnlyContextError.md +5 -5
  348. package/api/@xmachines/play-view/index/functions/attachRenderErrorHandler.md +1 -1
  349. package/api/@xmachines/play-view/index/functions/composePlayState.md +1 -1
  350. package/api/@xmachines/play-view/index/functions/createFailureLatch.md +1 -1
  351. package/api/@xmachines/play-view/index/functions/createReportGuard.md +1 -1
  352. package/api/@xmachines/play-view/index/functions/createViewStoreLifecycle.md +1 -1
  353. package/api/@xmachines/play-view/index/functions/guardContextWrites.md +1 -1
  354. package/api/@xmachines/play-view/index/functions/refreshContextSubtree.md +1 -1
  355. package/api/@xmachines/play-view/index/functions/reuseComposedState.md +2 -2
  356. package/api/@xmachines/play-view/index/functions/sameViewInputs.md +1 -1
  357. package/api/@xmachines/play-view/index/functions/toAtomState.md +1 -1
  358. package/api/@xmachines/play-view/index/functions/typedSpec.md +1 -1
  359. package/api/@xmachines/play-view/index/interfaces/BaseActorProviderProps.md +5 -5
  360. package/api/@xmachines/play-view/index/interfaces/BaseViewContextValue.md +5 -5
  361. package/api/@xmachines/play-view/index/interfaces/FailureLatch.md +3 -3
  362. package/api/@xmachines/play-view/index/interfaces/PlaySpec.md +2 -2
  363. package/api/@xmachines/play-view/index/interfaces/ReportGuard.md +5 -5
  364. package/api/@xmachines/play-view/index/interfaces/ReportGuardMessages.md +5 -5
  365. package/api/@xmachines/play-view/index/interfaces/ResolveViewStoreOptions.md +2 -2
  366. package/api/@xmachines/play-view/index/interfaces/ViewInputs.md +4 -4
  367. package/api/@xmachines/play-view/index/interfaces/ViewStoreLifecycle.md +3 -3
  368. package/api/@xmachines/play-view/index/interfaces/ViewStoreResolution.md +4 -4
  369. package/api/@xmachines/play-view/index/interfaces/Viewable.md +2 -2
  370. package/api/@xmachines/play-view/index/type-aliases/ViewActor.md +1 -1
  371. package/api/@xmachines/play-view/index/variables/CONTEXT_STATE_KEY.md +1 -1
  372. package/api/@xmachines/play-vue/README.md +4 -4
  373. package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
  374. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  375. package/api/@xmachines/play-vue/functions/usePlayView.md +1 -1
  376. package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +8 -8
  377. package/api/@xmachines/play-vue/interfaces/ComponentContext.md +1 -0
  378. package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +11 -11
  379. package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +5 -5
  380. package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +1 -1
  381. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
  382. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
  383. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
  384. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  385. package/api/@xmachines/play-vue/variables/schema.md +35 -54
  386. package/api/@xmachines/play-vue-router/README.md +4 -2
  387. package/api/@xmachines/play-vue-router/errors/classes/VueRouterNavigationError.md +4 -4
  388. package/api/@xmachines/play-vue-router/errors/classes/VueRouterSendError.md +4 -4
  389. package/api/@xmachines/play-vue-router/index/classes/RouteMap.md +5 -6
  390. package/api/@xmachines/play-vue-router/index/classes/VueRouterBridge.md +7 -7
  391. package/api/@xmachines/play-vue-router/index/interfaces/PlayRouteEvent.md +7 -7
  392. package/api/@xmachines/play-vue-router/index/interfaces/RoutableActor.md +4 -4
  393. package/api/@xmachines/play-vue-router/index/interfaces/RouteMapOptions.md +6 -6
  394. package/api/@xmachines/play-vue-router/index/interfaces/RouteMapping.md +3 -3
  395. package/api/@xmachines/play-vue-router/index/interfaces/RouterBridge.md +5 -5
  396. package/api/@xmachines/play-vue-router/index/variables/PlayRouterProvider.md +7 -7
  397. package/api/@xmachines/play-xstate/README.md +20 -9
  398. package/api/@xmachines/play-xstate/errors/classes/ActorThrewNonErrorError.md +4 -4
  399. package/api/@xmachines/play-xstate/errors/classes/InvalidEventError.md +5 -5
  400. package/api/@xmachines/play-xstate/errors/classes/InvalidMachineError.md +4 -4
  401. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteHandlerError.md +5 -5
  402. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteMetadataError.md +5 -5
  403. package/api/@xmachines/play-xstate/errors/classes/InvalidRouteParamError.md +14 -14
  404. package/api/@xmachines/play-xstate/errors/classes/MissingRouteParamError.md +6 -6
  405. package/api/@xmachines/play-xstate/errors/classes/MissingStateIdError.md +6 -6
  406. package/api/@xmachines/play-xstate/index/README.md +0 -4
  407. package/api/@xmachines/play-xstate/index/classes/PlayerActor.md +10 -45
  408. package/api/@xmachines/play-xstate/index/functions/compose.md +4 -4
  409. package/api/@xmachines/play-xstate/index/functions/definePlayer.md +2 -2
  410. package/api/@xmachines/play-xstate/index/interfaces/PlayerConfig.md +4 -4
  411. package/api/@xmachines/play-xstate/index/interfaces/PlayerFactoryResumeOptions.md +2 -2
  412. package/api/@xmachines/play-xstate/index/interfaces/PlayerOptions.md +7 -7
  413. package/api/@xmachines/play-xstate/index/type-aliases/Capability.md +1 -1
  414. package/api/@xmachines/play-xstate/index/type-aliases/PlayerConstructor.md +1 -1
  415. package/api/@xmachines/play-xstate/index/type-aliases/PlayerFactory.md +1 -1
  416. package/api/@xmachines/play-xstate/with-routing/functions/buildRouteUrl.md +1 -1
  417. package/api/@xmachines/play-xstate/with-routing/functions/deriveRoute.md +1 -1
  418. package/api/@xmachines/play-xstate/with-routing/functions/formatPlayRouteTransitions.md +1 -1
  419. package/api/@xmachines/play-xstate/with-routing/functions/isAbsoluteRoute.md +1 -1
  420. package/api/@xmachines/play-xstate/with-routing/functions/withRouting.md +1 -1
  421. package/api/@xmachines/play-xstate/with-routing/interfaces/RouteContext.md +5 -5
  422. package/api/@xmachines/play-xstate/with-routing/interfaces/RouteObject.md +5 -5
  423. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteData.md +1 -1
  424. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteDataResolver.md +1 -1
  425. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMachineConfig.md +4 -4
  426. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteMetadata.md +1 -1
  427. package/api/@xmachines/play-xstate/with-routing/type-aliases/RouteStateNode.md +5 -5
  428. package/api/@xmachines/play-xstate/with-view/functions/withView.md +1 -1
  429. package/api/@xmachines/shared/README.md +1 -1
  430. package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +1 -1
  431. package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
  432. package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +1 -1
  433. package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
  434. package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +2 -2
  435. package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
  436. package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +1 -1
  437. package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +4 -4
  438. package/api/README.md +1 -0
  439. package/api/llms.txt +1 -0
  440. package/contributing/architecture.md +36 -21
  441. package/contributing/configuration.md +7 -5
  442. package/contributing/deployment.md +23 -7
  443. package/contributing/development.md +26 -27
  444. package/contributing/migrating-to-play-atom.md +2 -1
  445. package/examples/@xmachines/play-dom-demo/README.md +6 -2
  446. package/examples/@xmachines/play-dom-demo/functions/createAuthActionHandlers.md +9 -9
  447. package/examples/@xmachines/play-dom-demo/functions/createConfirmDialog.md +1 -1
  448. package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +1 -1
  449. package/examples/@xmachines/play-dom-demo/functions/initShell.md +1 -1
  450. package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +1 -1
  451. package/examples/@xmachines/play-dom-demo/variables/About.md +1 -1
  452. package/examples/@xmachines/play-dom-demo/variables/Button.md +1 -1
  453. package/examples/@xmachines/play-dom-demo/variables/Contact.md +1 -1
  454. package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +1 -1
  455. package/examples/@xmachines/play-dom-demo/variables/Field.md +1 -1
  456. package/examples/@xmachines/play-dom-demo/variables/Home.md +1 -1
  457. package/examples/@xmachines/play-dom-demo/variables/Login.md +1 -1
  458. package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +1 -1
  459. package/examples/@xmachines/play-dom-demo/variables/Navigation.md +1 -1
  460. package/examples/@xmachines/play-dom-demo/variables/Overview.md +1 -1
  461. package/examples/@xmachines/play-dom-demo/variables/Panel.md +1 -1
  462. package/examples/@xmachines/play-dom-demo/variables/Profile.md +1 -1
  463. package/examples/@xmachines/play-dom-demo/variables/Settings.md +1 -1
  464. package/examples/@xmachines/play-dom-demo/variables/Stats.md +1 -1
  465. package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +1 -1
  466. package/examples/@xmachines/play-dom-demo/variables/demoComponents.md +17 -17
  467. package/examples/@xmachines/play-dom-router-demo/README.md +9 -10
  468. package/examples/@xmachines/play-react-demo/functions/createAuthActionHandlers.md +9 -9
  469. package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +1 -1
  470. package/examples/@xmachines/play-react-demo/variables/About.md +2 -2
  471. package/examples/@xmachines/play-react-demo/variables/Button.md +1 -1
  472. package/examples/@xmachines/play-react-demo/variables/Contact.md +2 -2
  473. package/examples/@xmachines/play-react-demo/variables/Dashboard.md +2 -2
  474. package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +1 -1
  475. package/examples/@xmachines/play-react-demo/variables/Field.md +1 -1
  476. package/examples/@xmachines/play-react-demo/variables/Home.md +2 -2
  477. package/examples/@xmachines/play-react-demo/variables/Login.md +1 -1
  478. package/examples/@xmachines/play-react-demo/variables/NavBar.md +1 -1
  479. package/examples/@xmachines/play-react-demo/variables/NavBarView.md +1 -1
  480. package/examples/@xmachines/play-react-demo/variables/Navigation.md +2 -2
  481. package/examples/@xmachines/play-react-demo/variables/Overview.md +1 -1
  482. package/examples/@xmachines/play-react-demo/variables/Panel.md +1 -1
  483. package/examples/@xmachines/play-react-demo/variables/Profile.md +2 -2
  484. package/examples/@xmachines/play-react-demo/variables/Settings.md +2 -2
  485. package/examples/@xmachines/play-react-demo/variables/Shell.md +1 -1
  486. package/examples/@xmachines/play-react-demo/variables/Stats.md +1 -1
  487. package/examples/@xmachines/play-react-demo/variables/authCatalog.md +1 -1
  488. package/examples/@xmachines/play-react-demo/variables/demoComponents.md +17 -17
  489. package/examples/@xmachines/play-react-router-demo/README.md +1 -1
  490. package/examples/@xmachines/play-solid-demo/functions/createAuthActionHandlers.md +9 -9
  491. package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +1 -1
  492. package/examples/@xmachines/play-solid-demo/variables/About.md +1 -1
  493. package/examples/@xmachines/play-solid-demo/variables/Button.md +1 -1
  494. package/examples/@xmachines/play-solid-demo/variables/Contact.md +1 -1
  495. package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +1 -1
  496. package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +1 -1
  497. package/examples/@xmachines/play-solid-demo/variables/Field.md +1 -1
  498. package/examples/@xmachines/play-solid-demo/variables/Home.md +1 -1
  499. package/examples/@xmachines/play-solid-demo/variables/Login.md +1 -1
  500. package/examples/@xmachines/play-solid-demo/variables/NavBar.md +1 -1
  501. package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +1 -1
  502. package/examples/@xmachines/play-solid-demo/variables/Navigation.md +1 -1
  503. package/examples/@xmachines/play-solid-demo/variables/Overview.md +1 -1
  504. package/examples/@xmachines/play-solid-demo/variables/Panel.md +1 -1
  505. package/examples/@xmachines/play-solid-demo/variables/Profile.md +1 -1
  506. package/examples/@xmachines/play-solid-demo/variables/Settings.md +1 -1
  507. package/examples/@xmachines/play-solid-demo/variables/Shell.md +1 -1
  508. package/examples/@xmachines/play-solid-demo/variables/Stats.md +1 -1
  509. package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +1 -1
  510. package/examples/@xmachines/play-solid-demo/variables/demoComponents.md +17 -17
  511. package/examples/@xmachines/play-solid-router-demo/README.md +1 -1
  512. package/examples/@xmachines/play-svelte-demo/functions/createAuthActionHandlers.md +9 -9
  513. package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +1 -1
  514. package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +1 -1
  515. package/examples/@xmachines/play-svelte-demo/variables/demoComponents.md +15 -15
  516. package/examples/@xmachines/play-svelte-spa-router-demo/README.md +1 -1
  517. package/examples/@xmachines/play-sveltekit-router-demo/README.md +1 -1
  518. package/examples/@xmachines/play-tanstack-react-router-demo/README.md +1 -1
  519. package/examples/@xmachines/play-tanstack-solid-router-demo/README.md +1 -1
  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 +190 -277
  524. package/examples/@xmachines/play-vue-demo/variables/demoComponents.md +1 -1
  525. package/examples/README.md +1 -1
  526. package/examples/form-validation.md +6 -3
  527. package/examples/multi-router-integration.md +6 -3
  528. package/examples/routing-patterns.md +6 -3
  529. package/guides/atoms.md +24 -12
  530. package/guides/getting-started.md +20 -14
  531. package/package.json +2 -1
  532. package/rfc/broker.md +4 -0
  533. package/rfc/browser.md +4 -0
  534. package/rfc/cli.md +4 -0
  535. package/rfc/git.md +4 -0
  536. package/rfc/mcp.md +4 -0
  537. package/rfc/node.md +4 -0
  538. package/rfc/play.md +1 -1
  539. package/rfc/rest.md +4 -0
  540. package/rfc/run.md +4 -0
  541. package/rfc/streams.md +4 -0
  542. package/api/@xmachines/play/index/functions/asCleanup.md +0 -77
  543. package/api/@xmachines/play/index/functions/shallowEqualExcept.md +0 -29
  544. package/api/@xmachines/play/index/type-aliases/Cleanup.md +0 -38
  545. package/api/@xmachines/play/index/type-aliases/DisposeKey.md +0 -32
  546. package/api/@xmachines/play/index/variables/DISPOSE.md +0 -34
  547. package/api/@xmachines/play-atom/type-aliases/Cleanup.md +0 -38
  548. package/api/@xmachines/play-dom/functions/asCleanup.md +0 -77
  549. package/api/@xmachines/play-dom/type-aliases/Cleanup.md +0 -38
  550. package/api/@xmachines/play-dom-router/functions/asCleanup.md +0 -77
  551. package/api/@xmachines/play-dom-router/type-aliases/Cleanup.md +0 -38
  552. package/api/@xmachines/play-dom-router/variables/DISPOSE.md +0 -34
  553. package/api/@xmachines/play-pattern/interfaces/PatternCache.md +0 -65
  554. package/api/@xmachines/play-router/index/interfaces/PatternCache.md +0 -65
  555. package/api/@xmachines/play-url/index/interfaces/PatternCache.md +0 -65
  556. package/api/@xmachines/play-xstate/index/variables/DISPOSE.md +0 -34
  557. package/examples/@xmachines/play-react-demo/functions/App.md +0 -13
  558. package/examples/@xmachines/play-react-demo/functions/DebugPanel.md +0 -20
  559. package/examples/@xmachines/play-react-demo/functions/HeaderNav.md +0 -20
  560. package/examples/@xmachines/play-react-demo/functions/Shell.md +0 -22
  561. package/examples/@xmachines/play-solid-demo/functions/App.md +0 -13
  562. package/examples/@xmachines/play-solid-demo/functions/DebugPanel.md +0 -20
  563. package/examples/@xmachines/play-solid-demo/functions/HeaderNav.md +0 -20
  564. package/examples/@xmachines/play-solid-demo/functions/Shell.md +0 -22
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  > Documentation, guides, RFCs, and generated API reference for XMachines.
4
4
 
5
- [![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.1-blue)](https://www.npmjs.com/package/@xmachines/docs)
5
+ [![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/docs)
6
6
 
7
7
  ## Overview
8
8
 
@@ -70,6 +70,8 @@ Architectural specifications that define the XMachines system:
70
70
  | [`rfc/rest.md`](rfc/rest.md) | REST | REST adapter specification |
71
71
  | [`rfc/mcp.md`](rfc/mcp.md) | MCP | Model Context Protocol adapter |
72
72
 
73
+ An RFC that describes work with no published package carries `status: planned` in its frontmatter. The documentation site reads the key and shows a "Planned" badge on the page and in the menu. Remove the key from the RFC in the change that publishes the package. The `**Status:**` line in the body gives the state of the specification, and not the state of the implementation.
74
+
73
75
  ### Guides
74
76
 
75
77
  Concept guides and tutorials that show how to use XMachines:
@@ -117,6 +119,7 @@ The documented packages:
117
119
  - [`@xmachines/play-actor`](../play-actor/README.md) — `PlayActor`
118
120
  - [`@xmachines/play-view`](../play-view/README.md) — `Viewable`, `PlaySpec`, the view store lifecycle
119
121
  - [`@xmachines/play-atom`](../play-atom/README.md) — the atom primitives, `watchAtom`
122
+ - [`@xmachines/core`](../core/README.md) — `BaseError` on `/errors`, the release protocol (`asDisposable`, `DISPOSE`) and helpers on `/utils`, a key-value cache on `/cache`
120
123
  - [`@xmachines/play-router`](../play-router/README.md) — `RouterBridgeBase`, `RouteMap`, `Routable`
121
124
  - [`@xmachines/play-router/xstate`](../play-router/README.md) — `extractMachineRoutes`, `createRouteMap`
122
125
  - [`@xmachines/play-pattern`](../play-pattern/README.md) — the route pattern language: one parse, and the path that `buildPath` writes back
@@ -0,0 +1,209 @@
1
+ [API](../../README.md) / @xmachines/core
2
+
3
+ # @xmachines/core
4
+
5
+ The base of the XMachines packages: the error base class, the release protocol, and a cache.
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/core)
8
+
9
+ Code that more than one `@xmachines/*` package can use, and that belongs to no layer of the Play Architecture. The package reads no workspace package. [`@xmachines/play`](../play/README.md) reads it, and so can every package above the protocol layer.
10
+
11
+ ## What this package is
12
+
13
+ The package has no root entry. It has three subpaths:
14
+
15
+ - **`@xmachines/core/errors`** — `BaseError`, the base class of every typed error of the workspace, and `DisposeConflictError`.
16
+ - **`@xmachines/core/utils`** — the release protocol, and small helpers for values and errors.
17
+ - **`@xmachines/core/cache`** — a key-value cache contract, and an LRU cache.
18
+
19
+ A subscription of the XMachines packages hands back a plain release: a function, or an object with a release method. A caller that wants a `using` scope publishes the release with `asDisposable`. A caller that does not pays nothing.
20
+
21
+ - **`asDisposable(release)`** — makes a release function a `Disposable`. The function is its own release.
22
+ - **`asDisposable(target, release)`** — makes an object a `Disposable`, with the release that the caller names.
23
+ - **`DISPOSE`** — the symbol key that a release sits under.
24
+ - **`DisposeKey`** and **`DisposeMember`** — the types of that key and of the member.
25
+
26
+ The package keeps no module state, so `DISPOSE` resolves to the same symbol in each copy. It must still exist one time in an install, because `err instanceof BaseError` answers `false` for an error of a second copy. Each package that reads it therefore names it as a peer.
27
+
28
+ ## Installation
29
+
30
+ ```bash
31
+ pnpm add @xmachines/core
32
+ ```
33
+
34
+ ## Errors
35
+
36
+ `BaseError` gives each error two stable fields: `scope`, the class or the module that threw it, and `code`, a machine-readable identifier. `PlayError` of [`@xmachines/play`](../play/README.md) extends it, so `err instanceof BaseError` matches every typed error of the workspace. Branch on the class or on `code`, and never on `message`.
37
+
38
+ ```ts
39
+ import { BaseError } from "@xmachines/core/errors";
40
+
41
+ try {
42
+ start();
43
+ } catch (err) {
44
+ if (err instanceof BaseError) {
45
+ console.error(`[${err.scope}:${err.code}] ${err.message}`);
46
+ } else {
47
+ throw err;
48
+ }
49
+ }
50
+ ```
51
+
52
+ A package below the Play protocol extends `BaseError` directly. This package throws one such error: `DisposeConflictError`, with the code `CORE_DISPOSE_CONFLICT`.
53
+
54
+ ## Usage
55
+
56
+ ### A release function
57
+
58
+ `asDisposable` gives the SAME function back with the dispose key added. Nothing wraps it, so a caller that runs the release keeps that code:
59
+
60
+ ```ts
61
+ import { watchAtom } from "@xmachines/play-atom";
62
+ import { asDisposable } from "@xmachines/core/utils";
63
+
64
+ // The explicit form.
65
+ const stop = watchAtom(count, render);
66
+ stop();
67
+
68
+ // The scoped form. The scope releases it, and an exception releases it too.
69
+ {
70
+ using stop = asDisposable(watchAtom(count, render));
71
+ render(count.get());
72
+ }
73
+ ```
74
+
75
+ ### An object
76
+
77
+ An object names its release. The object comes back as itself, and it keeps every member that it had:
78
+
79
+ ```ts
80
+ import { createBrowserHistory } from "@xmachines/play-dom-router";
81
+ import { asDisposable } from "@xmachines/core/utils";
82
+
83
+ {
84
+ const plain = createBrowserHistory({ window });
85
+ using history = asDisposable(plain, () => plain.destroy());
86
+ history.push("/first");
87
+ } // destroy() runs here
88
+ ```
89
+
90
+ ### A value that is a `Disposable` already
91
+
92
+ `asDisposable` adds the key only where it is absent. `asDisposable(release)` gives a value that carries a dispose member already, own or inherited, back unchanged, and a second call changes nothing. A Vitest mock is such a value: its dispose restores the mock.
93
+
94
+ A named release does not replace that member. `asDisposable(target, release)` throws a `DisposeConflictError` when the target has a dispose member already, because the scope would run that member and never the release. A second call with the same release is not a conflict, and it returns the target. Each form fills a well-known key that a polyfill installed after the first call.
95
+
96
+ ### The rules of a release
97
+
98
+ - **Idempotent.** A caller that runs the release AND lets the scope end runs it two times.
99
+ - **Synchronous.** The type rejects a release that returns a value, a promise above all. A `Disposable` serves `using` and `await using`, while an `AsyncDisposable` raises a TypeError under a plain `using`.
100
+
101
+ The key is not enumerable, so a spread of the value does not copy it.
102
+
103
+ Use `DISPOSE` and not a bare `Symbol.dispose` when a class implements the protocol itself. A bundler that downlevels `using` for a target below Chrome 134 emits a helper that reads `object[Symbol.dispose || Symbol.for("Symbol.dispose")]`, and `DISPOSE` is that same pair:
104
+
105
+ ```ts
106
+ import { DISPOSE } from "@xmachines/core/utils";
107
+
108
+ class Session {
109
+ close(): void {}
110
+ [DISPOSE](): void {
111
+ this.close();
112
+ }
113
+ }
114
+ ```
115
+
116
+ > **The `using` form needs `"lib": ["ESNext"]`.** A consumer on a lower `lib` reads `DisposeMember` as an empty type, and every call site keeps compiling.
117
+
118
+ ### `releaseQuietly(release, onFailure)`
119
+
120
+ Runs one release, and gives a throw of it to `onFailure`. A teardown that runs several releases in a row runs each one through it, so a throw of the first release skips none of the others. `null` and `undefined` do nothing.
121
+
122
+ ## Value helpers
123
+
124
+ ### `isError(value)`
125
+
126
+ Tells if a value is an `Error` of any realm. The function tries `instanceof` first, so an object that inherits from `Error.prototype` answers `true`. `instanceof` misses an error from an iframe or from `node:vm`, so for such a value the function uses `Error.isError` where the runtime has it, and it tests the brand elsewhere. It can throw for a revoked Proxy, so wrap it in `try` inside an error path.
127
+
128
+ ### `safeString(value)` and `describeValue(value)`
129
+
130
+ Two ways to put an unknown value in the message of an error, and neither one throws. `safeString` gives the `String()` of the value, and it falls back to the brand for an object with a null prototype or a conversion that throws. `describeValue` gives the JSON text, and it names the type for a value that JSON drops or cannot write, such as `[function]`.
131
+
132
+ ### `isThenable(value)`
133
+
134
+ Tells if a value has a callable `then`, which is the test that `await` applies. Use it where a declared `void | Promise<void>` says nothing at run time.
135
+
136
+ ### `createNullRecord()`
137
+
138
+ Builds an empty record with no prototype. A record that collects keys from outside the program — the params of a URL, the query of a location — takes any key that the outside sends. In an ordinary `{}`, a key such as `__proto__` writes the prototype and not an entry.
139
+
140
+ ### `rethrowLater(error)`
141
+
142
+ Throws an error again from a microtask of its own, and returns at once. The throw reaches the global handler of the runtime, and it touches the current stack not. A host escalates a failure this way from the `onError` handler of a renderer: each renderer contains a handler that throws, so a plain `throw` there reaches no caller.
143
+
144
+ ### `createWarnOnce()`
145
+
146
+ Builds a function of `(anchor, message)` that writes one `console.warn` for each anchor object. A diagnostic that a hot path finds — a stale field of a static config, read on every event — reports one time for that config, and not at the rate of the path. Each function keeps a memory of its own, so the package keeps no module state.
147
+
148
+ ### `shallowEqualExcept(a, b, except?)`
149
+
150
+ Compares the own keys of two objects with `Object.is`, and it can ignore one key on both sides. A key that one side carries and the other lacks makes the two unequal. The emission dedup of the Play packages reads it.
151
+
152
+ ## The cache, on `@xmachines/core/cache`
153
+
154
+ The cache has a subpath of its own, because it is cache code alone.
155
+
156
+ - **`KeyValueCache<V>`** — a read and a write by a string key. A `Map` satisfies it, and so does an LRU of any library. A cache may forget an entry at any time.
157
+ - **`createLruCache<V>(maxSize = 500)`** — a cache that forgets its least recently used entries. It holds two generations, so it holds `2 * maxSize + 1` entries at most. A size below `1` reads as `1`, a fraction rounds down, and a size that is not a finite number reads as the default.
158
+
159
+ ```ts
160
+ import { createLruCache } from "@xmachines/core/cache";
161
+
162
+ const pathCache = createLruCache<string | null>(5000);
163
+ ```
164
+
165
+ The route map of [`@xmachines/play-router`](../play-router/README.md) and the parse of [`@xmachines/play-pattern`](../play-pattern/README.md) take such a cache, and those packages re-export both names.
166
+
167
+ ## API Summary
168
+
169
+ ### Exported from `@xmachines/core/errors`
170
+
171
+ | Export | Kind | Description |
172
+ | ---------------------- | ------- | ------------------------------------------------------------------- |
173
+ | `BaseError` | `class` | The base of every typed error: a `scope` and a `code` |
174
+ | `DisposeConflictError` | `class` | `asDisposable` refuses a named release that the scope would not run |
175
+
176
+ ### Exported from `@xmachines/core/utils`
177
+
178
+ | Export | Kind | Description |
179
+ | -------------------- | ---------- | ------------------------------------------------------------------------ |
180
+ | `asDisposable` | `function` | Makes one function or object a `Disposable`. It changes the value itself |
181
+ | `DISPOSE` | `const` | The symbol key that a release sits under |
182
+ | `DisposeKey` | `type` | The type of that key, and `never` where the consumer omits the lib |
183
+ | `DisposeMember` | `type` | The dispose member of a `Disposable`, and none where the lib is absent |
184
+ | `releaseQuietly` | `function` | Runs one release, and gives a throw of it to `onFailure` |
185
+ | `rethrowLater` | `function` | Throws an error again from a microtask of its own |
186
+ | `createWarnOnce` | `function` | Builds a function that warns one time for each anchor object |
187
+ | `isError` | `function` | Tells if a value is an `Error` of any realm |
188
+ | `safeString` | `function` | The `String()` of a value, and it throws never |
189
+ | `describeValue` | `function` | The JSON text of a value, or its type in brackets |
190
+ | `isThenable` | `function` | Tells if a value has a callable `then` |
191
+ | `createNullRecord` | `function` | An empty record with no prototype |
192
+ | `shallowEqualExcept` | `function` | The shallow equality of the own keys, and it can ignore one key |
193
+
194
+ ### Exported from `@xmachines/core/cache`
195
+
196
+ | Export | Kind | Description |
197
+ | ------------------ | ----------- | ---------------------------------------------------- |
198
+ | `KeyValueCache<V>` | `interface` | A read and a write by a string key |
199
+ | `createLruCache` | `function` | A cache that forgets its least recently used entries |
200
+
201
+ ## License
202
+
203
+ MIT
204
+
205
+ ## Modules
206
+
207
+ - [cache](cache/README.md)
208
+ - [errors](errors/README.md)
209
+ - [utils](utils/README.md)
@@ -0,0 +1,17 @@
1
+ [API](../../../README.md) / [@xmachines/core](../README.md) / cache
2
+
3
+ # cache
4
+
5
+ A cache contract by a string key, and a default implementation of it.
6
+
7
+ The contract is two methods, so a `Map` satisfies it, and so does an LRU of any
8
+ library. A caller that wants a time to live or an eviction callback brings the module
9
+ that has one, and the code that reads the cache needs to know nothing about it.
10
+
11
+ ## Interfaces
12
+
13
+ - [KeyValueCache](interfaces/KeyValueCache.md)
14
+
15
+ ## Functions
16
+
17
+ - [createLruCache](functions/createLruCache.md)
@@ -0,0 +1,52 @@
1
+ [API](../../../../README.md) / [@xmachines/core](../../README.md) / [cache](../README.md) / createLruCache
2
+
3
+ # Function: createLruCache()
4
+
5
+ ```ts
6
+ function createLruCache<V>(maxSize?): KeyValueCache<V>;
7
+ ```
8
+
9
+ Defined in: [packages/core/src/cache.ts:54](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/core/src/cache.ts#L54)
10
+
11
+ Builds a cache that forgets its least recently used entries.
12
+
13
+ ## The algorithm
14
+
15
+ Two maps, and no list. `recent` takes every write. When a write takes `recent` past
16
+ `maxSize` entries, it becomes `old` and a new `recent` opens, which drops the previous
17
+ `old` whole. A read of a key of `old` moves the entry into `recent`, and THAT is what
18
+ makes the eviction an LRU one rather than a FIFO one: an entry that every lookup reads
19
+ moves forward, and an entry that nothing reads falls out with the map that holds it.
20
+
21
+ The cache therefore holds `2 * maxSize + 1` entries at most: `old` holds `maxSize + 1`,
22
+ and `recent` holds `maxSize`. It does no bookkeeping for a read that hits `recent`.
23
+
24
+ A stored `undefined` reads as a miss. Store `null` for "no value".
25
+
26
+ ## Type Parameters
27
+
28
+ | Type Parameter |
29
+ | -------------- |
30
+ | `V` |
31
+
32
+ ## Parameters
33
+
34
+ | Parameter | Type | Default value | Description |
35
+ | --------- | -------- | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
36
+ | `maxSize` | `number` | `500` | The number of entries that `recent` holds. It is `1` at the least, and the default is `500`. A value that is not a finite number reads as the default, so a cache with no eviction at all cannot happen by accident. |
37
+
38
+ ## Returns
39
+
40
+ [`KeyValueCache`](../interfaces/KeyValueCache.md)\<`V`\>
41
+
42
+ A cache. It is not shared: each call builds one.
43
+
44
+ ## Example
45
+
46
+ ```typescript
47
+ import { createLruCache } from "@xmachines/core/cache";
48
+
49
+ const cache = createLruCache<string>(50);
50
+ cache.set("/profile/:userId", "profile");
51
+ cache.get("/profile/:userId"); // "profile"
52
+ ```
@@ -0,0 +1,61 @@
1
+ [API](../../../../README.md) / [@xmachines/core](../../README.md) / [cache](../README.md) / KeyValueCache
2
+
3
+ # Interface: KeyValueCache\<V\>
4
+
5
+ Defined in: [packages/core/src/cache.ts:17](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/core/src/cache.ts#L17)
6
+
7
+ What a reader needs from a cache: a read and a write, both by a string key.
8
+
9
+ A cache may forget an entry at any time, and it may forget none. Both are correct for a
10
+ reader that computes the value again for an entry that is absent.
11
+
12
+ ## Type Parameters
13
+
14
+ | Type Parameter |
15
+ | -------------- |
16
+ | `V` |
17
+
18
+ ## Methods
19
+
20
+ ### get()
21
+
22
+ ```ts
23
+ get(key): V | undefined;
24
+ ```
25
+
26
+ Defined in: [packages/core/src/cache.ts:19](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/core/src/cache.ts#L19)
27
+
28
+ Reads one entry, or `undefined` when the cache holds none for the key.
29
+
30
+ #### Parameters
31
+
32
+ | Parameter | Type |
33
+ | --------- | -------- |
34
+ | `key` | `string` |
35
+
36
+ #### Returns
37
+
38
+ `V` \| `undefined`
39
+
40
+ ---
41
+
42
+ ### set()
43
+
44
+ ```ts
45
+ set(key, value): void;
46
+ ```
47
+
48
+ Defined in: [packages/core/src/cache.ts:21](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/core/src/cache.ts#L21)
49
+
50
+ Writes one entry.
51
+
52
+ #### Parameters
53
+
54
+ | Parameter | Type |
55
+ | --------- | -------- |
56
+ | `key` | `string` |
57
+ | `value` | `V` |
58
+
59
+ #### Returns
60
+
61
+ `void`
@@ -0,0 +1,11 @@
1
+ [API](../../../README.md) / [@xmachines/core](../README.md) / errors
2
+
3
+ # errors
4
+
5
+ The error base of the XMachines packages: [BaseError](classes/BaseError.md), and
6
+ [DisposeConflictError](classes/DisposeConflictError.md), the one error that `@xmachines/core` throws.
7
+
8
+ ## Classes
9
+
10
+ - [BaseError](classes/BaseError.md)
11
+ - [DisposeConflictError](classes/DisposeConflictError.md)
@@ -0,0 +1,226 @@
1
+ [API](../../../../README.md) / [@xmachines/core](../../README.md) / [errors](../README.md) / BaseError
2
+
3
+ # Class: BaseError
4
+
5
+ Defined in: [packages/core/src/errors.ts:44](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/core/src/errors.ts#L44)
6
+
7
+ The base class of every typed runtime error of an `@xmachines/*` package.
8
+
9
+ `BaseError` gives each error two structured fields:
10
+
11
+ - `scope` — the class or the module that threw the error, for example `"asDisposable"`
12
+ - `code` — a stable, machine-readable identifier, for example `"CORE_DISPOSE_CONFLICT"`
13
+
14
+ Your application code therefore branches on the type of an error, and it does not
15
+ parse the `.message` string. A message changes between releases.
16
+
17
+ `PlayError` of `@xmachines/play/errors` extends this class, and every error of a Play
18
+ package extends `PlayError`. A package below the Play protocol, such as this one,
19
+ extends `BaseError` directly. `err instanceof BaseError` therefore matches every
20
+ typed error of the workspace.
21
+
22
+ ## How to catch an error by its type
23
+
24
+ ```typescript
25
+ import { BaseError, DisposeConflictError } from "@xmachines/core/errors";
26
+ import { asDisposable } from "@xmachines/core/utils";
27
+
28
+ try {
29
+ using handle = asDisposable(target, release);
30
+ } catch (err) {
31
+ if (err instanceof DisposeConflictError) {
32
+ // err.scope === "asDisposable"
33
+ // err.code === "CORE_DISPOSE_CONFLICT"
34
+ } else if (err instanceof BaseError) {
35
+ // Every other @xmachines/* error
36
+ console.error(`[${err.scope}:${err.code}] ${err.message}`);
37
+ } else {
38
+ throw err; // Throw an unknown error again
39
+ }
40
+ }
41
+ ```
42
+
43
+ ## Extends
44
+
45
+ - `Error`
46
+
47
+ ## Extended by
48
+
49
+ - [`DisposeConflictError`](DisposeConflictError.md)
50
+ - [`PlayError`](../../../play/errors/classes/PlayError.md)
51
+
52
+ ## Constructors
53
+
54
+ ### Constructor
55
+
56
+ ```ts
57
+ new BaseError(
58
+ scope,
59
+ code,
60
+ message,
61
+ options?
62
+ ): BaseError;
63
+ ```
64
+
65
+ Defined in: [packages/core/src/errors.ts:64](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/core/src/errors.ts#L64)
66
+
67
+ #### Parameters
68
+
69
+ | Parameter | Type | Description |
70
+ | ---------- | -------------- | --------------------------------------------------------------------------------------- |
71
+ | `scope` | `string` | The class or the module that throws this error. |
72
+ | `code` | `string` | The machine-readable identifier of the error, for example `"CORE_DISPOSE_CONFLICT"`. |
73
+ | `message` | `string` | The description for a person. Never match on it in your code. |
74
+ | `options?` | `ErrorOptions` | The standard `ErrorOptions`. Give `{ cause: originalError }` to make a chain of errors. |
75
+
76
+ #### Returns
77
+
78
+ `BaseError`
79
+
80
+ #### Overrides
81
+
82
+ ```ts
83
+ Error.constructor;
84
+ ```
85
+
86
+ ## Properties
87
+
88
+ | Property | Modifier | Type | Description | Inherited from | Defined in |
89
+ | ------------------------------------------------------- | ---------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- | -------------------------------------------------------------------------------------------------------------------------- |
90
+ | <a id="property-cause"></a> `cause?` | `public` | `unknown` | - | `Error.cause` | - |
91
+ | <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. | - | [packages/core/src/errors.ts:56](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/core/src/errors.ts#L56) |
92
+ | <a id="property-message"></a> `message` | `public` | `string` | - | `Error.message` | - |
93
+ | <a id="property-name"></a> `name` | `public` | `string` | - | `Error.name` | - |
94
+ | <a id="property-scope"></a> `scope` | `readonly` | `string` | The class or the module that threw this error, for example `"asDisposable"`. | - | [packages/core/src/errors.ts:46](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/core/src/errors.ts#L46) |
95
+ | <a id="property-stack"></a> `stack?` | `public` | `string` | - | `Error.stack` | - |
96
+ | <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. | `Error.stackTraceLimit` | - |
97
+
98
+ ## Methods
99
+
100
+ ### captureStackTrace()
101
+
102
+ ```ts
103
+ static captureStackTrace(targetObject, constructorOpt?): void;
104
+ ```
105
+
106
+ Defined in: `@types/node`
107
+
108
+ Creates a `.stack` property on `targetObject`, which when accessed returns
109
+ a string representing the location in the code at which
110
+ `Error.captureStackTrace()` was called.
111
+
112
+ ```js
113
+ const myObject = {};
114
+ Error.captureStackTrace(myObject);
115
+ myObject.stack; // Similar to `new Error().stack`
116
+ ```
117
+
118
+ The first line of the trace will be prefixed with
119
+ `${myObject.name}: ${myObject.message}`.
120
+
121
+ The optional `constructorOpt` argument accepts a function. If given, all frames
122
+ above `constructorOpt`, including `constructorOpt`, will be omitted from the
123
+ generated stack trace.
124
+
125
+ The `constructorOpt` argument is useful for hiding implementation
126
+ details of error generation from the user. For instance:
127
+
128
+ ```js
129
+ function a() {
130
+ b();
131
+ }
132
+
133
+ function b() {
134
+ c();
135
+ }
136
+
137
+ function c() {
138
+ // Create an error without stack trace to avoid calculating the stack trace twice.
139
+ const { stackTraceLimit } = Error;
140
+ Error.stackTraceLimit = 0;
141
+ const error = new Error();
142
+ Error.stackTraceLimit = stackTraceLimit;
143
+
144
+ // Capture the stack trace above function b
145
+ Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
146
+ throw error;
147
+ }
148
+
149
+ a();
150
+ ```
151
+
152
+ #### Parameters
153
+
154
+ | Parameter | Type |
155
+ | ----------------- | ---------- |
156
+ | `targetObject` | `object` |
157
+ | `constructorOpt?` | `Function` |
158
+
159
+ #### Returns
160
+
161
+ `void`
162
+
163
+ #### Inherited from
164
+
165
+ ```ts
166
+ Error.captureStackTrace;
167
+ ```
168
+
169
+ ---
170
+
171
+ ### isError()
172
+
173
+ ```ts
174
+ static isError(error): error is Error;
175
+ ```
176
+
177
+ Defined in: `typescript`
178
+
179
+ Indicates whether the argument provided is a built-in Error instance or not.
180
+
181
+ #### Parameters
182
+
183
+ | Parameter | Type |
184
+ | --------- | --------- |
185
+ | `error` | `unknown` |
186
+
187
+ #### Returns
188
+
189
+ `error is Error`
190
+
191
+ #### Inherited from
192
+
193
+ ```ts
194
+ Error.isError;
195
+ ```
196
+
197
+ ---
198
+
199
+ ### prepareStackTrace()
200
+
201
+ ```ts
202
+ static prepareStackTrace(err, stackTraces): any;
203
+ ```
204
+
205
+ Defined in: `@types/node`
206
+
207
+ #### Parameters
208
+
209
+ | Parameter | Type |
210
+ | ------------- | ------------ |
211
+ | `err` | `Error` |
212
+ | `stackTraces` | `CallSite`[] |
213
+
214
+ #### Returns
215
+
216
+ `any`
217
+
218
+ #### See
219
+
220
+ https://v8.dev/docs/stack-trace-api#customizing-stack-traces
221
+
222
+ #### Inherited from
223
+
224
+ ```ts
225
+ Error.prepareStackTrace;
226
+ ```