@xmachines/docs 5.0.2 → 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 (543) 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 +18 -69
  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 +34 -25
  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 +28 -45
  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 +4 -4
  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 +4 -2
  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 +14 -13
  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 +4 -2
  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 +3 -3
  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 +4 -2
  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 +4 -2
  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 +4 -2
  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 +4 -2
  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 +3 -3
  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 +19 -8
  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/vite-aliases/functions/xmAliases.md +1 -1
  430. package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
  431. package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +1 -1
  432. package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
  433. package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +2 -2
  434. package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
  435. package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +1 -1
  436. package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +4 -4
  437. package/api/README.md +1 -0
  438. package/api/llms.txt +1 -0
  439. package/contributing/architecture.md +36 -21
  440. package/contributing/configuration.md +5 -3
  441. package/contributing/development.md +25 -27
  442. package/contributing/migrating-to-play-atom.md +1 -0
  443. package/examples/@xmachines/play-dom-demo/functions/createAuthActionHandlers.md +9 -9
  444. package/examples/@xmachines/play-dom-demo/functions/createConfirmDialog.md +1 -1
  445. package/examples/@xmachines/play-dom-demo/functions/createNavBar.md +1 -1
  446. package/examples/@xmachines/play-dom-demo/functions/initShell.md +1 -1
  447. package/examples/@xmachines/play-dom-demo/type-aliases/AuthCatalog.md +1 -1
  448. package/examples/@xmachines/play-dom-demo/variables/About.md +1 -1
  449. package/examples/@xmachines/play-dom-demo/variables/Button.md +1 -1
  450. package/examples/@xmachines/play-dom-demo/variables/Contact.md +1 -1
  451. package/examples/@xmachines/play-dom-demo/variables/Dashboard.md +1 -1
  452. package/examples/@xmachines/play-dom-demo/variables/Field.md +1 -1
  453. package/examples/@xmachines/play-dom-demo/variables/Home.md +1 -1
  454. package/examples/@xmachines/play-dom-demo/variables/Login.md +1 -1
  455. package/examples/@xmachines/play-dom-demo/variables/NavBarView.md +1 -1
  456. package/examples/@xmachines/play-dom-demo/variables/Navigation.md +1 -1
  457. package/examples/@xmachines/play-dom-demo/variables/Overview.md +1 -1
  458. package/examples/@xmachines/play-dom-demo/variables/Panel.md +1 -1
  459. package/examples/@xmachines/play-dom-demo/variables/Profile.md +1 -1
  460. package/examples/@xmachines/play-dom-demo/variables/Settings.md +1 -1
  461. package/examples/@xmachines/play-dom-demo/variables/Stats.md +1 -1
  462. package/examples/@xmachines/play-dom-demo/variables/authCatalog.md +1 -1
  463. package/examples/@xmachines/play-dom-demo/variables/demoComponents.md +15 -15
  464. package/examples/@xmachines/play-react-demo/functions/createAuthActionHandlers.md +9 -9
  465. package/examples/@xmachines/play-react-demo/type-aliases/AuthCatalog.md +1 -1
  466. package/examples/@xmachines/play-react-demo/variables/About.md +1 -1
  467. package/examples/@xmachines/play-react-demo/variables/Button.md +1 -1
  468. package/examples/@xmachines/play-react-demo/variables/Contact.md +1 -1
  469. package/examples/@xmachines/play-react-demo/variables/Dashboard.md +1 -1
  470. package/examples/@xmachines/play-react-demo/variables/DebugPanel.md +1 -1
  471. package/examples/@xmachines/play-react-demo/variables/Field.md +1 -1
  472. package/examples/@xmachines/play-react-demo/variables/Home.md +1 -1
  473. package/examples/@xmachines/play-react-demo/variables/Login.md +1 -1
  474. package/examples/@xmachines/play-react-demo/variables/NavBar.md +1 -1
  475. package/examples/@xmachines/play-react-demo/variables/NavBarView.md +1 -1
  476. package/examples/@xmachines/play-react-demo/variables/Navigation.md +1 -1
  477. package/examples/@xmachines/play-react-demo/variables/Overview.md +1 -1
  478. package/examples/@xmachines/play-react-demo/variables/Panel.md +1 -1
  479. package/examples/@xmachines/play-react-demo/variables/Profile.md +1 -1
  480. package/examples/@xmachines/play-react-demo/variables/Settings.md +1 -1
  481. package/examples/@xmachines/play-react-demo/variables/Shell.md +1 -1
  482. package/examples/@xmachines/play-react-demo/variables/Stats.md +1 -1
  483. package/examples/@xmachines/play-react-demo/variables/authCatalog.md +1 -1
  484. package/examples/@xmachines/play-react-demo/variables/demoComponents.md +15 -15
  485. package/examples/@xmachines/play-solid-demo/functions/createAuthActionHandlers.md +9 -9
  486. package/examples/@xmachines/play-solid-demo/type-aliases/AuthCatalog.md +1 -1
  487. package/examples/@xmachines/play-solid-demo/variables/About.md +1 -1
  488. package/examples/@xmachines/play-solid-demo/variables/Button.md +1 -1
  489. package/examples/@xmachines/play-solid-demo/variables/Contact.md +1 -1
  490. package/examples/@xmachines/play-solid-demo/variables/Dashboard.md +1 -1
  491. package/examples/@xmachines/play-solid-demo/variables/DebugPanel.md +1 -1
  492. package/examples/@xmachines/play-solid-demo/variables/Field.md +1 -1
  493. package/examples/@xmachines/play-solid-demo/variables/Home.md +1 -1
  494. package/examples/@xmachines/play-solid-demo/variables/Login.md +1 -1
  495. package/examples/@xmachines/play-solid-demo/variables/NavBar.md +1 -1
  496. package/examples/@xmachines/play-solid-demo/variables/NavBarView.md +1 -1
  497. package/examples/@xmachines/play-solid-demo/variables/Navigation.md +1 -1
  498. package/examples/@xmachines/play-solid-demo/variables/Overview.md +1 -1
  499. package/examples/@xmachines/play-solid-demo/variables/Panel.md +1 -1
  500. package/examples/@xmachines/play-solid-demo/variables/Profile.md +1 -1
  501. package/examples/@xmachines/play-solid-demo/variables/Settings.md +1 -1
  502. package/examples/@xmachines/play-solid-demo/variables/Shell.md +1 -1
  503. package/examples/@xmachines/play-solid-demo/variables/Stats.md +1 -1
  504. package/examples/@xmachines/play-solid-demo/variables/authCatalog.md +1 -1
  505. package/examples/@xmachines/play-solid-demo/variables/demoComponents.md +15 -15
  506. package/examples/@xmachines/play-svelte-demo/functions/createAuthActionHandlers.md +9 -9
  507. package/examples/@xmachines/play-svelte-demo/type-aliases/AuthCatalog.md +1 -1
  508. package/examples/@xmachines/play-svelte-demo/variables/authCatalog.md +1 -1
  509. package/examples/@xmachines/play-svelte-demo/variables/demoComponents.md +15 -15
  510. package/examples/@xmachines/play-vue-demo/functions/createAuthActionHandlers.md +9 -9
  511. package/examples/@xmachines/play-vue-demo/type-aliases/AuthCatalog.md +1 -1
  512. package/examples/@xmachines/play-vue-demo/variables/App.md +1 -1
  513. package/examples/@xmachines/play-vue-demo/variables/authCatalog.md +190 -277
  514. package/examples/@xmachines/play-vue-demo/variables/demoComponents.md +1 -1
  515. package/examples/README.md +1 -1
  516. package/guides/atoms.md +24 -12
  517. package/guides/getting-started.md +12 -10
  518. package/package.json +1 -1
  519. package/rfc/broker.md +4 -0
  520. package/rfc/browser.md +4 -0
  521. package/rfc/cli.md +4 -0
  522. package/rfc/git.md +4 -0
  523. package/rfc/mcp.md +4 -0
  524. package/rfc/node.md +4 -0
  525. package/rfc/play.md +1 -1
  526. package/rfc/rest.md +4 -0
  527. package/rfc/run.md +4 -0
  528. package/rfc/streams.md +4 -0
  529. package/api/@xmachines/play/index/functions/asCleanup.md +0 -77
  530. package/api/@xmachines/play/index/functions/shallowEqualExcept.md +0 -29
  531. package/api/@xmachines/play/index/type-aliases/Cleanup.md +0 -38
  532. package/api/@xmachines/play/index/type-aliases/DisposeKey.md +0 -32
  533. package/api/@xmachines/play/index/variables/DISPOSE.md +0 -34
  534. package/api/@xmachines/play-atom/type-aliases/Cleanup.md +0 -38
  535. package/api/@xmachines/play-dom/functions/asCleanup.md +0 -77
  536. package/api/@xmachines/play-dom/type-aliases/Cleanup.md +0 -38
  537. package/api/@xmachines/play-dom-router/functions/asCleanup.md +0 -77
  538. package/api/@xmachines/play-dom-router/type-aliases/Cleanup.md +0 -38
  539. package/api/@xmachines/play-dom-router/variables/DISPOSE.md +0 -34
  540. package/api/@xmachines/play-pattern/interfaces/PatternCache.md +0 -65
  541. package/api/@xmachines/play-router/index/interfaces/PatternCache.md +0 -65
  542. package/api/@xmachines/play-url/index/interfaces/PatternCache.md +0 -65
  543. package/api/@xmachines/play-xstate/index/variables/DISPOSE.md +0 -34
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: ConnectRouterOptions
4
4
 
5
- Defined in: [play-dom-router/src/connect-router.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/connect-router.ts#L24)
5
+ Defined in: [play-dom-router/src/connect-router.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-dom-router/src/connect-router.ts#L24)
6
6
 
7
7
  The options of [connectRouter](../functions/connectRouter.md).
8
8
 
@@ -12,12 +12,12 @@ The options of [connectRouter](../functions/connectRouter.md).
12
12
 
13
13
  ## Properties
14
14
 
15
- | Property | Modifier | Type | Description | Inherited from | Defined in |
16
- | ------------------------------------------------------ | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
17
- | <a id="property-actor"></a> `actor` | `readonly` | [`RoutableActor`](RoutableActor.md) | The actor to keep in step with the browser URL. It must implement `Routable`. | - | [play-dom-router/src/connect-router.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/connect-router.ts#L26) |
18
- | <a id="property-basepath"></a> `basePath?` | `readonly` | `string` | The URL prefix that the routes of the machine hang off, for example `"/admin"` or `"/:machineId/play"`. A `:param` segment is a declarative convenience, so that a host keeps ONE string that mirrors its own route config. Every `:param` must have a value in [BasePathOptions.basePathParams](../../play-router/index/interfaces/BasePathOptions.md#property-basepathparams), because the bridge writes a real URL. An optional segment (`:param?`) and a wildcard (`*`) are therefore refused: neither of them resolves to one concrete prefix. An absent value, `""`, and `"/"` all mean "no prefix", which is the behaviour of every release before this option existed. | [`RouterBridgeOptions`](../../play-router/index/interfaces/RouterBridgeOptions.md).[`basePath`](../../play-router/index/interfaces/RouterBridgeOptions.md#property-basepath) | [play-url/src/base-path.ts:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-url/src/base-path.ts#L62) |
19
- | <a id="property-basepathparams"></a> `basePathParams?` | `readonly` | `Record`\<`string`, `string` \| `number`\> | The values of the `:param` segments of [BasePathOptions.basePath](../../play-router/index/interfaces/BasePathOptions.md#property-basepath). These values belong to the HOST, which wrote the prefix and resolved them, so they travel in NO `play.route` event: the machine is authoritative over its own params, and `event.params` holds what the pattern of the machine declares, and nothing else. A param of the host that shares a name with one of the machine can therefore shadow it never. A host reads them back from `bridge.basePathParams`, where they cannot go stale. A machine that needs the identity of its host takes it through the `input` of the actor, where that identity decides WHICH machine runs. | [`RouterBridgeOptions`](../../play-router/index/interfaces/RouterBridgeOptions.md).[`basePathParams`](../../play-router/index/interfaces/RouterBridgeOptions.md#property-basepathparams) | [play-url/src/base-path.ts:76](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-url/src/base-path.ts#L76) |
20
- | <a id="property-compiledcache"></a> `compiledCache?` | `readonly` | [`PatternCache`](../../play-router/index/interfaces/PatternCache.md)\<[`URLPatternLike`](../../play-router/index/type-aliases/URLPatternLike.md)\> | The cache of the COMPILED `URLPattern`, which is what this function returns. The default is a cache that this module shares with every caller of the process. Pass one to give a tenant or a request a compilation that no other evicts, and pass `{ get: () => undefined, set: () => {} }` to compile each time. A caller that passes `patternCache` for isolation passes this one too. The compiled cache is read FIRST, so a hit on it answers before the parse runs at all — a passed parse cache alone therefore isolates nothing once another caller has compiled the same pattern. | [`RouterBridgeOptions`](../../play-router/index/interfaces/RouterBridgeOptions.md).[`compiledCache`](../../play-router/index/interfaces/RouterBridgeOptions.md#property-compiledcache) | [play-url/src/url-pattern-utils.ts:119](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-url/src/url-pattern-utils.ts#L119) |
21
- | <a id="property-patterncache"></a> `patternCache?` | `readonly` | [`PatternCache`](../../play-router/index/interfaces/PatternCache.md)\<[`ParsedPattern`](../../play-router/index/interfaces/ParsedPattern.md)\> | The cache of the PARSE of a pattern. The default is the cache that this package shares with every caller of the process. | [`RouterBridgeOptions`](../../play-router/index/interfaces/RouterBridgeOptions.md).[`patternCache`](../../play-router/index/interfaces/RouterBridgeOptions.md#property-patterncache) | [play-pattern/src/cache.ts:40](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-pattern/src/cache.ts#L40) |
22
- | <a id="property-routemap"></a> `routeMap` | `readonly` | [`RouteLookupContract`](RouteLookupContract.md) | The route lookup that matches a URL pathname to a machine state ID. | - | [play-dom-router/src/connect-router.ts:40](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/connect-router.ts#L40) |
23
- | <a id="property-router"></a> `router` | `readonly` | `Pick`\<[`VanillaRouter`](VanillaRouter.md), `"history"`\> | The vanilla router from [createRouter](../functions/createRouter.md). The type states the HISTORY alone, because that is what this function reads: the bridge takes `location` for the first synchronization, it writes each navigation with `push`, and it watches the browser with `subscribe`. It calls `destroy` never, and it releases the history never — the owner of the history does that. A whole [VanillaRouter](VanillaRouter.md) satisfies it, and a caller that holds one passes it as it always did. A caller that holds a history and no router passes `{ history }`. | - | [play-dom-router/src/connect-router.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/connect-router.ts#L38) |
15
+ | Property | Modifier | Type | Description | Inherited from | Defined in |
16
+ | ------------------------------------------------------ | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
17
+ | <a id="property-actor"></a> `actor` | `readonly` | [`RoutableActor`](RoutableActor.md) | The actor to keep in step with the browser URL. It must implement `Routable`. | - | [play-dom-router/src/connect-router.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-dom-router/src/connect-router.ts#L26) |
18
+ | <a id="property-basepath"></a> `basePath?` | `readonly` | `string` | The URL prefix that the routes of the machine hang off, for example `"/admin"` or `"/:machineId/play"`. A `:param` segment is a declarative convenience, so that a host keeps ONE string that mirrors its own route config. Every `:param` must have a value in [BasePathOptions.basePathParams](../../play-router/index/interfaces/BasePathOptions.md#property-basepathparams), because the bridge writes a real URL. An optional segment (`:param?`) and a wildcard (`*`) are therefore refused: neither of them resolves to one concrete prefix. An absent value, `""`, and `"/"` all mean "no prefix", which is the behaviour of every release before this option existed. | [`RouterBridgeOptions`](../../play-router/index/interfaces/RouterBridgeOptions.md).[`basePath`](../../play-router/index/interfaces/RouterBridgeOptions.md#property-basepath) | [play-url/src/base-path.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/base-path.ts#L63) |
19
+ | <a id="property-basepathparams"></a> `basePathParams?` | `readonly` | `Record`\<`string`, `string` \| `number`\> | The values of the `:param` segments of [BasePathOptions.basePath](../../play-router/index/interfaces/BasePathOptions.md#property-basepath). These values belong to the HOST, which wrote the prefix and resolved them, so they travel in NO `play.route` event: the machine is authoritative over its own params, and `event.params` holds what the pattern of the machine declares, and nothing else. A param of the host that shares a name with one of the machine can therefore shadow it never. A host reads them back from `bridge.basePathParams`, where they cannot go stale. A machine that needs the identity of its host takes it through the `input` of the actor, where that identity decides WHICH machine runs. | [`RouterBridgeOptions`](../../play-router/index/interfaces/RouterBridgeOptions.md).[`basePathParams`](../../play-router/index/interfaces/RouterBridgeOptions.md#property-basepathparams) | [play-url/src/base-path.ts:77](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/base-path.ts#L77) |
20
+ | <a id="property-compiledcache"></a> `compiledCache?` | `readonly` | [`KeyValueCache`](../../play-router/index/interfaces/KeyValueCache.md)\<[`URLPatternLike`](../../play-router/index/type-aliases/URLPatternLike.md)\> | The cache of the COMPILED `URLPattern`, which is what this function returns. The default is a cache that this module shares with every caller of the process. Pass one to give a tenant or a request a compilation that no other evicts, and pass `{ get: () => undefined, set: () => {} }` to compile each time. A caller that passes `patternCache` for isolation passes this one too. The compiled cache is read FIRST, so a hit on it answers before the parse runs at all — a passed parse cache alone therefore isolates nothing once another caller has compiled the same pattern. | [`RouterBridgeOptions`](../../play-router/index/interfaces/RouterBridgeOptions.md).[`compiledCache`](../../play-router/index/interfaces/RouterBridgeOptions.md#property-compiledcache) | [play-url/src/url-pattern-utils.ts:119](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/url-pattern-utils.ts#L119) |
21
+ | <a id="property-patterncache"></a> `patternCache?` | `readonly` | [`KeyValueCache`](../../play-router/index/interfaces/KeyValueCache.md)\<[`ParsedPattern`](../../play-router/index/interfaces/ParsedPattern.md)\> | The cache of the PARSE of a pattern. The default is the cache that this package shares with every caller of the process. | [`RouterBridgeOptions`](../../play-router/index/interfaces/RouterBridgeOptions.md).[`patternCache`](../../play-router/index/interfaces/RouterBridgeOptions.md#property-patterncache) | [play-pattern/src/cache.ts:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/cache.ts#L41) |
22
+ | <a id="property-routemap"></a> `routeMap` | `readonly` | [`RouteLookupContract`](RouteLookupContract.md) | The route lookup that matches a URL pathname to a machine state ID. | - | [play-dom-router/src/connect-router.ts:40](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-dom-router/src/connect-router.ts#L40) |
23
+ | <a id="property-router"></a> `router` | `readonly` | `Pick`\<[`VanillaRouter`](VanillaRouter.md), `"history"`\> | The vanilla router from [createRouter](../functions/createRouter.md). The type states the HISTORY alone, because that is what this function reads: the bridge takes `location` for the first synchronization, it writes each navigation with `push`, and it watches the browser with `subscribe`. It calls `destroy` never, and it releases the history never — the owner of the history does that. A whole [VanillaRouter](VanillaRouter.md) satisfies it, and a caller that holds one passes it as it always did. A caller that holds a history and no router passes `{ history }`. | - | [play-dom-router/src/connect-router.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-dom-router/src/connect-router.ts#L38) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: PlayRouteEvent
4
4
 
5
- Defined in: [play-router/src/types.ts:336](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L336)
5
+ Defined in: [play-router/src/types.ts:336](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L336)
6
6
 
7
7
  The routing event, with its parameters and its query
8
8
 
@@ -122,9 +122,9 @@ analysis of the pattern.
122
122
 
123
123
  | Property | Modifier | Type | Description | Defined in |
124
124
  | -------------------------------------- | ---------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
125
- | <a id="property-data"></a> `data?` | `readonly` | [`RouteData`](../../play-router/index/type-aliases/RouteData.md) | The extra data that the SENDER of this event supplies: a router bridge, or the code of an application. It is not what the target state declares — that is [RouteObject.data](../../play-router/index/interfaces/RouteObject.md#property-data), and a resolver there reads this field. | [play-router/src/types.ts:346](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L346) |
126
- | <a id="property-match"></a> `match?` | `readonly` | `unknown` | - | [play-router/src/types.ts:347](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L347) |
127
- | <a id="property-params"></a> `params?` | `readonly` | `Record`\<`string`, `string`\> | - | [play-router/src/types.ts:339](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L339) |
128
- | <a id="property-query"></a> `query?` | `readonly` | `Record`\<`string`, `string`\> | - | [play-router/src/types.ts:340](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L340) |
129
- | <a id="property-to"></a> `to` | `readonly` | `string` | - | [play-router/src/types.ts:338](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L338) |
130
- | <a id="property-type"></a> `type` | `readonly` | `"play.route"` | - | [play-router/src/types.ts:337](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L337) |
125
+ | <a id="property-data"></a> `data?` | `readonly` | [`RouteData`](../../play-router/index/type-aliases/RouteData.md) | The extra data that the SENDER of this event supplies: a router bridge, or the code of an application. It is not what the target state declares — that is [RouteObject.data](../../play-router/index/interfaces/RouteObject.md#property-data), and a resolver there reads this field. | [play-router/src/types.ts:346](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L346) |
126
+ | <a id="property-match"></a> `match?` | `readonly` | `unknown` | - | [play-router/src/types.ts:347](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L347) |
127
+ | <a id="property-params"></a> `params?` | `readonly` | `Record`\<`string`, `string`\> | - | [play-router/src/types.ts:339](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L339) |
128
+ | <a id="property-query"></a> `query?` | `readonly` | `Record`\<`string`, `string`\> | - | [play-router/src/types.ts:340](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L340) |
129
+ | <a id="property-to"></a> `to` | `readonly` | `string` | - | [play-router/src/types.ts:338](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L338) |
130
+ | <a id="property-type"></a> `type` | `readonly` | `"play.route"` | - | [play-router/src/types.ts:337](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L337) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: RoutableActor
4
4
 
5
- Defined in: [play-router/src/types.ts:392](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L392)
5
+ Defined in: [play-router/src/types.ts:392](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L392)
6
6
 
7
7
  The minimal actor interface that `RouterBridgeBase` and every framework router
8
8
  adapter require.
@@ -46,8 +46,8 @@ class MyBridge extends RouterBridgeBase {
46
46
 
47
47
  | Property | Modifier | Type | Inherited from | Defined in |
48
48
  | ------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
49
- | <a id="property-currentroute"></a> `currentRoute` | `readonly` | [`ReadonlyAtom`](../../play-atom/interfaces/ReadonlyAtom.md)\<`string` \| `null`\> | [`Routable`](../../play-router/index/interfaces/Routable.md).[`currentRoute`](../../play-router/index/interfaces/Routable.md#property-currentroute) | [play-router/src/types.ts:354](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L354) |
50
- | <a id="property-initialroute"></a> `initialRoute` | `readonly` | `string` \| `null` | [`Routable`](../../play-router/index/interfaces/Routable.md).[`initialRoute`](../../play-router/index/interfaces/Routable.md#property-initialroute) | [play-router/src/types.ts:355](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L355) |
49
+ | <a id="property-currentroute"></a> `currentRoute` | `readonly` | [`ReadonlyAtom`](../../play-atom/interfaces/ReadonlyAtom.md)\<`string` \| `null`\> | [`Routable`](../../play-router/index/interfaces/Routable.md).[`currentRoute`](../../play-router/index/interfaces/Routable.md#property-currentroute) | [play-router/src/types.ts:354](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L354) |
50
+ | <a id="property-initialroute"></a> `initialRoute` | `readonly` | `string` \| `null` | [`Routable`](../../play-router/index/interfaces/Routable.md).[`initialRoute`](../../play-router/index/interfaces/Routable.md#property-initialroute) | [play-router/src/types.ts:355](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L355) |
51
51
 
52
52
  ## Methods
53
53
 
@@ -57,7 +57,7 @@ class MyBridge extends RouterBridgeBase {
57
57
  send(event): void;
58
58
  ```
59
59
 
60
- Defined in: [play-router/src/types.ts:394](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L394)
60
+ Defined in: [play-router/src/types.ts:394](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L394)
61
61
 
62
62
  Sends a route navigation event to the actor.
63
63
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: RouteLookupContract
4
4
 
5
- Defined in: [play-dom-router/src/connect-router.ts:16](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/connect-router.ts#L16)
5
+ Defined in: [play-dom-router/src/connect-router.ts:16](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-dom-router/src/connect-router.ts#L16)
6
6
 
7
7
  The structural route lookup interface that [connectRouter](../functions/connectRouter.md) accepts.
8
8
 
@@ -21,7 +21,7 @@ that holds one form only still resolves the path.
21
21
  getPathByStateId(id): string | null | undefined;
22
22
  ```
23
23
 
24
- Defined in: [play-dom-router/src/connect-router.ts:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/connect-router.ts#L18)
24
+ Defined in: [play-dom-router/src/connect-router.ts:18](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-dom-router/src/connect-router.ts#L18)
25
25
 
26
26
  #### Parameters
27
27
 
@@ -41,7 +41,7 @@ Defined in: [play-dom-router/src/connect-router.ts:18](https://gitlab.com/xmachi
41
41
  getStateIdByPath(path): string | null | undefined;
42
42
  ```
43
43
 
44
- Defined in: [play-dom-router/src/connect-router.ts:17](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/connect-router.ts#L17)
44
+ Defined in: [play-dom-router/src/connect-router.ts:17](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-dom-router/src/connect-router.ts#L17)
45
45
 
46
46
  #### Parameters
47
47
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: RouteMapOptions
4
4
 
5
- Defined in: [play-router/src/types.ts:565](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L565)
5
+ Defined in: [play-router/src/types.ts:565](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L565)
6
6
 
7
7
  The options of `createRouteMap` and of `createRouteMapFromTree`.
8
8
 
@@ -12,8 +12,8 @@ The options of `createRouteMap` and of `createRouteMapFromTree`.
12
12
 
13
13
  ## Properties
14
14
 
15
- | Property | Modifier | Type | Description | Inherited from | Defined in |
16
- | ---------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
17
- | <a id="property-compiledcache"></a> `compiledCache?` | `readonly` | [`PatternCache`](../../play-router/index/interfaces/PatternCache.md)\<[`URLPatternLike`](../../play-router/index/type-aliases/URLPatternLike.md)\> | The cache of the COMPILED `URLPattern`, which is what this function returns. The default is a cache that this module shares with every caller of the process. Pass one to give a tenant or a request a compilation that no other evicts, and pass `{ get: () => undefined, set: () => {} }` to compile each time. A caller that passes `patternCache` for isolation passes this one too. The compiled cache is read FIRST, so a hit on it answers before the parse runs at all — a passed parse cache alone therefore isolates nothing once another caller has compiled the same pattern. | [`CompileOptions`](../../play-router/index/interfaces/CompileOptions.md).[`compiledCache`](../../play-router/index/interfaces/CompileOptions.md#property-compiledcache) | [play-url/src/url-pattern-utils.ts:119](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-url/src/url-pattern-utils.ts#L119) |
18
- | <a id="property-pathcache"></a> `pathCache?` | `public` | [`PatternCache`](../../play-router/index/interfaces/PatternCache.md)\<`string` \| `null`\> | The cache of the state that a VISITED PATH resolves to, or `null` for a path that resolves to none. The default is a cache of this map alone, of 500 entries in each of two generations. Pass one to raise that bound, to share the resolution across maps, or to give it an eviction policy of your own: `createPatternCache(5000)` builds one, and so does any object with a `get` and a `set`. A cache that a caller passes is keyed by the ROUTE TABLE. Two maps built from the same mappings, in the same order, therefore read each other's answers — which is what a server that rebuilds its map for each request wants — and two maps built from different mappings never do, because a map with no route for a path writes `null` for it and a map that holds one must not read that. The keys are the paths that a visitor reaches, so the key space is unbounded: a cache with no bound of its own grows for the life of the process. | - | [play-router/src/types.ts:584](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L584) |
19
- | <a id="property-patterncache"></a> `patternCache?` | `readonly` | [`PatternCache`](../../play-router/index/interfaces/PatternCache.md)\<[`ParsedPattern`](../../play-router/index/interfaces/ParsedPattern.md)\> | The cache of the PARSE of a pattern. The default is the cache that this package shares with every caller of the process. | [`CompileOptions`](../../play-router/index/interfaces/CompileOptions.md).[`patternCache`](../../play-router/index/interfaces/CompileOptions.md#property-patterncache) | [play-pattern/src/cache.ts:40](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-pattern/src/cache.ts#L40) |
15
+ | Property | Modifier | Type | Description | Inherited from | Defined in |
16
+ | ---------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
17
+ | <a id="property-compiledcache"></a> `compiledCache?` | `readonly` | [`KeyValueCache`](../../play-router/index/interfaces/KeyValueCache.md)\<[`URLPatternLike`](../../play-router/index/type-aliases/URLPatternLike.md)\> | The cache of the COMPILED `URLPattern`, which is what this function returns. The default is a cache that this module shares with every caller of the process. Pass one to give a tenant or a request a compilation that no other evicts, and pass `{ get: () => undefined, set: () => {} }` to compile each time. A caller that passes `patternCache` for isolation passes this one too. The compiled cache is read FIRST, so a hit on it answers before the parse runs at all — a passed parse cache alone therefore isolates nothing once another caller has compiled the same pattern. | [`CompileOptions`](../../play-router/index/interfaces/CompileOptions.md).[`compiledCache`](../../play-router/index/interfaces/CompileOptions.md#property-compiledcache) | [play-url/src/url-pattern-utils.ts:119](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-url/src/url-pattern-utils.ts#L119) |
18
+ | <a id="property-pathcache"></a> `pathCache?` | `public` | [`KeyValueCache`](../../play-router/index/interfaces/KeyValueCache.md)\<`string` \| `null`\> | The cache of the state that a VISITED PATH resolves to, or `null` for a path that resolves to none. The default is a cache of this map alone. It keeps two generations, and it holds 1001 entries at most. Pass one to raise that bound, to share the resolution across maps, or to give it an eviction policy of your own: `createLruCache(5000)` builds one, and so does any object with a `get` and a `set`. A cache that a caller passes is keyed by the ROUTE TABLE. Two maps built from the same mappings, in the same order, therefore read each other's answers — which is what a server that rebuilds its map for each request wants — and two maps built from different mappings never do, because a map with no route for a path writes `null` for it and a map that holds one must not read that. The keys are the paths that a visitor reaches, so the key space is unbounded: a cache with no bound of its own grows for the life of the process. | - | [play-router/src/types.ts:584](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L584) |
19
+ | <a id="property-patterncache"></a> `patternCache?` | `readonly` | [`KeyValueCache`](../../play-router/index/interfaces/KeyValueCache.md)\<[`ParsedPattern`](../../play-router/index/interfaces/ParsedPattern.md)\> | The cache of the PARSE of a pattern. The default is the cache that this package shares with every caller of the process. | [`CompileOptions`](../../play-router/index/interfaces/CompileOptions.md).[`patternCache`](../../play-router/index/interfaces/CompileOptions.md#property-patterncache) | [play-pattern/src/cache.ts:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/cache.ts#L41) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: RouteMapping
4
4
 
5
- Defined in: [play-router/src/base-route-map.ts:58](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/base-route-map.ts#L58)
5
+ Defined in: [play-router/src/base-route-map.ts:58](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/base-route-map.ts#L58)
6
6
 
7
7
  One entry of the map between a state ID and a path.
8
8
 
@@ -24,5 +24,5 @@ const optionalMapping: RouteMapping = { stateId: "settings", path: "/settings/:s
24
24
 
25
25
  | Property | Modifier | Type | Description | Defined in |
26
26
  | --------------------------------------- | ---------- | -------- | ------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
27
- | <a id="property-path"></a> `path` | `readonly` | `string` | The pattern of the URL path, for example `"/"`, `"/profile/:userId"`, or `"/settings/:section?"` | [play-router/src/base-route-map.ts:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/base-route-map.ts#L62) |
28
- | <a id="property-stateid"></a> `stateId` | `readonly` | `string` | The state ID of the state machine, for example `"home"` or `"#profile"` | [play-router/src/base-route-map.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/base-route-map.ts#L60) |
27
+ | <a id="property-path"></a> `path` | `readonly` | `string` | The pattern of the URL path, for example `"/"`, `"/profile/:userId"`, or `"/settings/:section?"` | [play-router/src/base-route-map.ts:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/base-route-map.ts#L62) |
28
+ | <a id="property-stateid"></a> `stateId` | `readonly` | `string` | The state ID of the state machine, for example `"home"` or `"#profile"` | [play-router/src/base-route-map.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/base-route-map.ts#L60) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: RouterBridge
4
4
 
5
- Defined in: [play-router/src/types.ts:436](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L436)
5
+ Defined in: [play-router/src/types.ts:436](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L436)
6
6
 
7
7
  The RouterBridge interface of a runtime infrastructure adapter
8
8
 
@@ -22,10 +22,10 @@ The implementation of a framework router bridge
22
22
 
23
23
  ```typescript
24
24
  import type { RouterBridge } from "@xmachines/play-router";
25
- import { watchAtom, type Cleanup } from "@xmachines/play-atom";
25
+ import { watchAtom } from "@xmachines/play-atom";
26
26
 
27
27
  class MyRouterBridge implements RouterBridge {
28
- private stop: Cleanup | null = null;
28
+ private stop: (() => void) | null = null;
29
29
 
30
30
  async connect(): Promise<void> {
31
31
  // Start the observation of the actor.currentRoute atom
@@ -54,7 +54,7 @@ class MyRouterBridge implements RouterBridge {
54
54
  connect(): void | Promise<void>;
55
55
  ```
56
56
 
57
- Defined in: [play-router/src/types.ts:453](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L453)
57
+ Defined in: [play-router/src/types.ts:453](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L453)
58
58
 
59
59
  Connects the router bridge to the Actor
60
60
 
@@ -84,7 +84,7 @@ await bridge.connect();
84
84
  disconnect(): void | Promise<void>;
85
85
  ```
86
86
 
87
- Defined in: [play-router/src/types.ts:469](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/types.ts#L469)
87
+ Defined in: [play-router/src/types.ts:469](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/types.ts#L469)
88
88
 
89
89
  Disconnects the router bridge from the Actor
90
90
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: RouterConnection()
4
4
 
5
- Defined in: [play-router/src/provider-lifecycle.ts:292](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/provider-lifecycle.ts#L292)
5
+ Defined in: [play-router/src/provider-lifecycle.ts:291](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/provider-lifecycle.ts#L291)
6
6
 
7
7
  What `connectRouter` of an adapter returns.
8
8
 
@@ -21,7 +21,7 @@ stale.
21
21
  RouterConnection(): void;
22
22
  ```
23
23
 
24
- Defined in: [play-router/src/provider-lifecycle.ts:294](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/provider-lifecycle.ts#L294)
24
+ Defined in: [play-router/src/provider-lifecycle.ts:293](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/provider-lifecycle.ts#L293)
25
25
 
26
26
  Stops the synchronization. The same call as [RouterConnection.disconnect](#disconnect).
27
27
 
@@ -33,50 +33,31 @@ Stops the synchronization. The same call as [RouterConnection.disconnect](#disco
33
33
 
34
34
  | Property | Modifier | Type | Description | Defined in |
35
35
  | ----------------------------------------------------- | ---------- | -------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
36
- | <a id="property-basepath"></a> `basePath` | `readonly` | `string` | The resolved prefix of the mount, or `""` when the machine owns the whole router. | [play-router/src/provider-lifecycle.ts:315](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/provider-lifecycle.ts#L315) |
37
- | <a id="property-basepathparams"></a> `basePathParams` | `readonly` | `Readonly`\<`Record`\<`string`, `string`\>\> | The values of the `:param` segments of the mount. They travel in no event. | [play-router/src/provider-lifecycle.ts:317](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/provider-lifecycle.ts#L317) |
36
+ | <a id="property-basepath"></a> `basePath` | `readonly` | `string` | The resolved prefix of the mount, or `""` when the machine owns the whole router. | [play-router/src/provider-lifecycle.ts:309](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/provider-lifecycle.ts#L309) |
37
+ | <a id="property-basepathparams"></a> `basePathParams` | `readonly` | `Readonly`\<`Record`\<`string`, `string`\>\> | The values of the `:param` segments of the mount. They travel in no event. | [play-router/src/provider-lifecycle.ts:311](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/provider-lifecycle.ts#L311) |
38
38
 
39
39
  ## Methods
40
40
 
41
- ### \[dispose\]()
41
+ ### disconnect()
42
42
 
43
43
  ```ts
44
- dispose: void;
44
+ disconnect(): void;
45
45
  ```
46
46
 
47
- Defined in: [play-router/src/provider-lifecycle.ts:313](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/provider-lifecycle.ts#L313)
47
+ Defined in: [play-router/src/provider-lifecycle.ts:307](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/provider-lifecycle.ts#L307)
48
48
 
49
- Stops the synchronization when the scope of a `using` declaration ends.
49
+ Stops the synchronization. It is idempotent.
50
50
 
51
- This value IS the release of `connectRouter`, and all eight router adapters return
52
- it, so it carries the protocol of `@xmachines/play` like every other release of the
53
- ecosystem:
51
+ A scope can own the connection: the connection is its own release, so
52
+ `asDisposable` of `@xmachines/core/utils` publishes it with no second argument.
54
53
 
55
54
  ```ts
56
55
  {
57
- using connection = connectRouter({ actor, router, routeMap });
56
+ using connection = asDisposable(connectRouter({ actor, router, routeMap }));
58
57
  // disconnect() runs at the end of the scope, and after an exception too
59
58
  }
60
59
  ```
61
60
 
62
- The release is [RouterConnection.disconnect](#disconnect), which is idempotent.
63
-
64
- #### Returns
65
-
66
- `void`
67
-
68
- ---
69
-
70
- ### disconnect()
71
-
72
- ```ts
73
- disconnect(): void;
74
- ```
75
-
76
- Defined in: [play-router/src/provider-lifecycle.ts:296](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/provider-lifecycle.ts#L296)
77
-
78
- Stops the synchronization.
79
-
80
61
  #### Returns
81
62
 
82
63
  `void`
@@ -89,7 +70,7 @@ Stops the synchronization.
89
70
  setBasePath(basePath?, basePathParams?): void;
90
71
  ```
91
72
 
92
- Defined in: [play-router/src/provider-lifecycle.ts:319](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-router/src/provider-lifecycle.ts#L319)
73
+ Defined in: [play-router/src/provider-lifecycle.ts:313](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-router/src/provider-lifecycle.ts#L313)
93
74
 
94
75
  Moves the mount of the live bridge, with no teardown.
95
76
 
@@ -2,58 +2,43 @@
2
2
 
3
3
  # Interface: VanillaRouter
4
4
 
5
- Defined in: [play-dom-router/src/create-router.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/create-router.ts#L24)
5
+ Defined in: [play-dom-router/src/create-router.ts:24](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-dom-router/src/create-router.ts#L24)
6
6
 
7
7
  The router that [createRouter](../functions/createRouter.md) builds and returns.
8
8
 
9
9
  The router wraps a [BrowserHistory](BrowserHistory.md) and a `RouteTree`, and it does nothing more.
10
- It OWNS the history, and the history patches `window.history.pushState`, so a scope
11
- that drops the router without releasing it leaves the global patched. The dispose key
12
- lets a scope do that work:
10
+ It OWNS the history, and the history patches `window.history.pushState`, so a caller
11
+ that drops the router without `destroy()` leaves the global patched. A scope can do
12
+ that work: publish the router with `asDisposable` of `@xmachines/core/utils`, and name
13
+ `destroy` as the release:
13
14
 
14
15
  ```ts
15
- using router = createRouter({ routeTree, history });
16
+ const plain = createRouter({ routeTree, history });
17
+ using router = asDisposable(plain, () => plain.destroy());
16
18
  ```
17
19
 
18
- The release covers the HISTORY alone, exactly as `destroy()` always did.
20
+ `destroy()` covers the HISTORY alone.
19
21
  `connectRouter` hands back its own `RouterConnection`, and a scope that ends releases
20
22
  no connection for the caller: release the connection first, then the router.
21
23
 
22
- A caller that keeps `destroy()` keeps it: the two release the same work, and the
23
- release is idempotent because [BrowserHistory.destroy](BrowserHistory.md#destroy) is.
24
+ `destroy()` is idempotent, because [BrowserHistory.destroy](BrowserHistory.md#destroy) is.
24
25
 
25
26
  ## Properties
26
27
 
27
28
  | Property | Modifier | Type | Description | Defined in |
28
29
  | ------------------------------------------- | ---------- | -------------------------------------------------------------- | ----------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
29
- | <a id="property-history"></a> `history` | `readonly` | [`BrowserHistory`](BrowserHistory.md) | The history instance | [play-dom-router/src/create-router.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/create-router.ts#L28) |
30
- | <a id="property-routetree"></a> `routeTree` | `readonly` | [`RouteTree`](../../play-router/index/interfaces/RouteTree.md) | The route tree, as a reference to the structure | [play-dom-router/src/create-router.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/create-router.ts#L33) |
30
+ | <a id="property-history"></a> `history` | `readonly` | [`BrowserHistory`](BrowserHistory.md) | The history instance | [play-dom-router/src/create-router.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-dom-router/src/create-router.ts#L28) |
31
+ | <a id="property-routetree"></a> `routeTree` | `readonly` | [`RouteTree`](../../play-router/index/interfaces/RouteTree.md) | The route tree, as a reference to the structure | [play-dom-router/src/create-router.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-dom-router/src/create-router.ts#L33) |
31
32
 
32
33
  ## Methods
33
34
 
34
- ### \[dispose\]()
35
-
36
- ```ts
37
- dispose: void;
38
- ```
39
-
40
- Defined in: [play-dom-router/src/create-router.ts:41](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/create-router.ts#L41)
41
-
42
- Releases the history with [VanillaRouter.destroy](#destroy). It is idempotent.
43
-
44
- #### Returns
45
-
46
- `void`
47
-
48
- ---
49
-
50
35
  ### destroy()
51
36
 
52
37
  ```ts
53
38
  destroy(): void;
54
39
  ```
55
40
 
56
- Defined in: [play-dom-router/src/create-router.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-dom-router/src/create-router.ts#L38)
41
+ Defined in: [play-dom-router/src/create-router.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-dom-router/src/create-router.ts#L38)
57
42
 
58
43
  Cleans up
59
44
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  The route pattern language 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-pattern)
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Version](https://img.shields.io/badge/version-6.0.0-blue)](https://www.npmjs.com/package/@xmachines/play-pattern)
8
8
 
9
9
  One parse of the URLPattern pathname grammar, and the path that it builds back.
10
10
 
@@ -25,13 +25,17 @@ It holds no `URLPattern` API. A parse is string work and it needs no constructor
25
25
 
26
26
  That line is why the package exists. [`@xmachines/play-xstate`](../play-xstate/README.md) BUILDS a URL and matches none, so it reads the grammar and installs no matching machinery for it.
27
27
 
28
- ## Install
28
+ ## Installation
29
29
 
30
30
  ```bash
31
- pnpm add @xmachines/play-pattern
31
+ pnpm add @xmachines/play-pattern @xmachines/core
32
32
  ```
33
33
 
34
- Most applications install it through [`@xmachines/play-url`](../play-url/README.md), which re-exports the language whole. [`@xmachines/play-router`](../play-router/README.md) re-exports the part that a router needs: `parsePattern` and `createPatternCache`.
34
+ **Peer dependencies.** Install them with the package:
35
+
36
+ - [`@xmachines/core`](../core/README.md) — the base package. This package reads the cache of its `cache` subpath.
37
+
38
+ Most applications install it through [`@xmachines/play-url`](../play-url/README.md), which re-exports the language whole. [`@xmachines/play-router`](../play-router/README.md) re-exports the part that a router needs: `parsePattern`, and the cache contract `KeyValueCache` with its default `createLruCache`. The cache belongs to [`@xmachines/core`](../core/README.md) on its `cache` subpath, and this package re-exports it.
35
39
 
36
40
  ## Usage
37
41
 
@@ -92,11 +96,11 @@ it matches none, so it reads the grammar and it installs no matching machinery f
92
96
  ## Interfaces
93
97
 
94
98
  - [GroupPart](interfaces/GroupPart.md)
99
+ - [KeyValueCache](interfaces/KeyValueCache.md)
95
100
  - [LiteralPart](interfaces/LiteralPart.md)
96
101
  - [ParamPart](interfaces/ParamPart.md)
97
102
  - [ParsedPattern](interfaces/ParsedPattern.md)
98
103
  - [ParseOptions](interfaces/ParseOptions.md)
99
- - [PatternCache](interfaces/PatternCache.md)
100
104
  - [PatternParam](interfaces/PatternParam.md)
101
105
 
102
106
  ## Type Aliases
@@ -109,7 +113,7 @@ it matches none, so it reads the grammar and it installs no matching machinery f
109
113
  ## Functions
110
114
 
111
115
  - [buildPath](functions/buildPath.md)
112
- - [createPatternCache](functions/createPatternCache.md)
116
+ - [createLruCache](functions/createLruCache.md)
113
117
  - [getIndexKey](functions/getIndexKey.md)
114
118
  - [isDotSegment](functions/isDotSegment.md)
115
119
  - [parsePattern](functions/parsePattern.md)
@@ -6,7 +6,7 @@
6
6
  function buildPath(pattern, params?, options?): PathBuildResult;
7
7
  ```
8
8
 
9
- Defined in: [pattern-grammar.ts:713](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-pattern/src/pattern-grammar.ts#L713)
9
+ Defined in: [play-pattern/src/pattern-grammar.ts:713](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/pattern-grammar.ts#L713)
10
10
 
11
11
  Builds the path that a pattern describes, with each param filled from `params`.
12
12
 
@@ -1,25 +1,27 @@
1
- [API](../../../README.md) / [@xmachines/play-pattern](../README.md) / createPatternCache
1
+ [API](../../../README.md) / [@xmachines/play-pattern](../README.md) / createLruCache
2
2
 
3
- # Function: createPatternCache()
3
+ # Function: createLruCache()
4
4
 
5
5
  ```ts
6
- function createPatternCache<V>(maxSize?): PatternCache<V>;
6
+ function createLruCache<V>(maxSize?): KeyValueCache<V>;
7
7
  ```
8
8
 
9
- Defined in: [cache.ts:85](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-pattern/src/cache.ts#L85)
9
+ Defined in: [core/src/cache.ts:54](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/core/src/cache.ts#L54)
10
10
 
11
11
  Builds a cache that forgets its least recently used entries.
12
12
 
13
13
  ## The algorithm
14
14
 
15
- Two maps, and no list. `recent` takes every write. When a write fills `recent`, it
16
- becomes `old` and a new `recent` opens, which drops the previous `old` whole. A read of
17
- a key of `old` moves the entry into `recent`, and THAT is what makes the eviction an
18
- LRU one rather than a FIFO one: an entry that every lookup reads moves forward, and an
19
- entry that nothing reads falls out with the map that holds it.
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
20
 
21
- The cache therefore holds between `maxSize` and `2 * maxSize` entries, and it does no
22
- bookkeeping for a read that hits `recent`.
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".
23
25
 
24
26
  ## Type Parameters
25
27
 
@@ -35,13 +37,16 @@ bookkeeping for a read that hits `recent`.
35
37
 
36
38
  ## Returns
37
39
 
38
- [`PatternCache`](../interfaces/PatternCache.md)\<`V`\>
40
+ [`KeyValueCache`](../interfaces/KeyValueCache.md)\<`V`\>
39
41
 
40
42
  A cache. It is not shared: each call builds one.
41
43
 
42
44
  ## Example
43
45
 
44
46
  ```typescript
45
- const cache = createPatternCache<ParsedPattern>(50);
46
- parsePattern("/profile/:userId", { patternCache: cache });
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"
47
52
  ```
@@ -6,7 +6,7 @@
6
6
  function getIndexKey(path): string;
7
7
  ```
8
8
 
9
- Defined in: [pattern-grammar.ts:201](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-pattern/src/pattern-grammar.ts#L201)
9
+ Defined in: [play-pattern/src/pattern-grammar.ts:201](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/pattern-grammar.ts#L201)
10
10
 
11
11
  Computes the key of the bucket index of a concrete PATH.
12
12
 
@@ -6,7 +6,7 @@
6
6
  function isDotSegment(segment): boolean;
7
7
  ```
8
8
 
9
- Defined in: [pattern-grammar.ts:872](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v5.0.2/packages/play-pattern/src/pattern-grammar.ts#L872)
9
+ Defined in: [play-pattern/src/pattern-grammar.ts:872](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v6.0.0/packages/play-pattern/src/pattern-grammar.ts#L872)
10
10
 
11
11
  Answers whether one segment resolves away in a URL, rather than naming itself.
12
12