@xmachines/docs 2.1.0 → 2.2.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 (336) hide show
  1. package/README.md +2 -2
  2. package/api/@xmachines/play/README.md +1 -1
  3. package/api/@xmachines/play/classes/NonNullableError.md +4 -4
  4. package/api/@xmachines/play/classes/PlayError.md +4 -4
  5. package/api/@xmachines/play/functions/assertNonNullable.md +1 -1
  6. package/api/@xmachines/play/type-aliases/PlayEvent.md +2 -2
  7. package/api/@xmachines/play-actor/README.md +1 -1
  8. package/api/@xmachines/play-actor/classes/AbstractActor.md +3 -3
  9. package/api/@xmachines/play-actor/functions/attachRenderErrorHandler.md +1 -1
  10. package/api/@xmachines/play-actor/functions/composePlayState.md +1 -1
  11. package/api/@xmachines/play-actor/functions/createViewStoreLifecycle.md +1 -1
  12. package/api/@xmachines/play-actor/functions/guardContextWrites.md +1 -1
  13. package/api/@xmachines/play-actor/functions/refreshContextSubtree.md +1 -1
  14. package/api/@xmachines/play-actor/functions/reuseComposedState.md +1 -1
  15. package/api/@xmachines/play-actor/functions/shallowEqualExcept.md +1 -1
  16. package/api/@xmachines/play-actor/functions/toAtomState.md +1 -1
  17. package/api/@xmachines/play-actor/functions/typedSpec.md +1 -1
  18. package/api/@xmachines/play-actor/interfaces/BaseActorProviderProps.md +5 -5
  19. package/api/@xmachines/play-actor/interfaces/BaseViewContextValue.md +5 -5
  20. package/api/@xmachines/play-actor/interfaces/PlaySpec.md +2 -2
  21. package/api/@xmachines/play-actor/interfaces/ResolveViewStoreOptions.md +2 -2
  22. package/api/@xmachines/play-actor/interfaces/Routable.md +3 -3
  23. package/api/@xmachines/play-actor/interfaces/ViewStoreLifecycle.md +3 -3
  24. package/api/@xmachines/play-actor/interfaces/ViewStoreResolution.md +4 -4
  25. package/api/@xmachines/play-actor/interfaces/Viewable.md +2 -2
  26. package/api/@xmachines/play-actor/variables/CONTEXT_STATE_KEY.md +1 -1
  27. package/api/@xmachines/play-dom/README.md +1 -1
  28. package/api/@xmachines/play-dom/classes/PlayRenderer.md +4 -4
  29. package/api/@xmachines/play-dom/functions/createPlayUI.md +1 -1
  30. package/api/@xmachines/play-dom/functions/createRenderer.md +1 -1
  31. package/api/@xmachines/play-dom/interfaces/CreatePlayUIOptions.md +2 -2
  32. package/api/@xmachines/play-dom/interfaces/MountOptions.md +3 -3
  33. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +4 -4
  34. package/api/@xmachines/play-dom/type-aliases/MountFn.md +1 -1
  35. package/api/@xmachines/play-dom-router/README.md +3 -1
  36. package/api/@xmachines/play-dom-router/classes/DomRouterBridge.md +149 -7
  37. package/api/@xmachines/play-dom-router/functions/connectRouter.md +6 -5
  38. package/api/@xmachines/play-dom-router/functions/createBrowserHistory.md +1 -1
  39. package/api/@xmachines/play-dom-router/functions/createRouteMap.md +1 -1
  40. package/api/@xmachines/play-dom-router/functions/createRouter.md +1 -1
  41. package/api/@xmachines/play-dom-router/interfaces/BasePathOptions.md +32 -0
  42. package/api/@xmachines/play-dom-router/interfaces/BrowserHistory.md +14 -14
  43. package/api/@xmachines/play-dom-router/interfaces/BrowserWindow.md +14 -14
  44. package/api/@xmachines/play-dom-router/interfaces/ConnectRouterOptions.md +12 -6
  45. package/api/@xmachines/play-dom-router/interfaces/PlayRouteEvent.md +6 -6
  46. package/api/@xmachines/play-dom-router/interfaces/RoutableActor.md +4 -4
  47. package/api/@xmachines/play-dom-router/interfaces/RouteLookupContract.md +3 -3
  48. package/api/@xmachines/play-dom-router/interfaces/RouteMap.md +3 -3
  49. package/api/@xmachines/play-dom-router/interfaces/RouteMapOptions.md +2 -2
  50. package/api/@xmachines/play-dom-router/interfaces/RouteMapping.md +3 -3
  51. package/api/@xmachines/play-dom-router/interfaces/RouterBridge.md +3 -3
  52. package/api/@xmachines/play-dom-router/interfaces/RouterConnection.md +76 -0
  53. package/api/@xmachines/play-dom-router/interfaces/VanillaRouter.md +4 -4
  54. package/api/@xmachines/play-react/README.md +1 -1
  55. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +5 -5
  56. package/api/@xmachines/play-react/functions/useActor.md +1 -1
  57. package/api/@xmachines/play-react/functions/usePlayView.md +1 -1
  58. package/api/@xmachines/play-react/functions/useSignalEffect.md +1 -1
  59. package/api/@xmachines/play-react/interfaces/ActorProviderProps.md +8 -8
  60. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +4 -4
  61. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +3 -3
  62. package/api/@xmachines/play-react/interfaces/PlayUIProviderProps.md +8 -8
  63. package/api/@xmachines/play-react/interfaces/ViewContextValue.md +5 -5
  64. package/api/@xmachines/play-react/type-aliases/AnyPlayActor.md +1 -1
  65. package/api/@xmachines/play-react/type-aliases/PlayRendererProps.md +1 -1
  66. package/api/@xmachines/play-react/variables/ActorProvider.md +1 -1
  67. package/api/@xmachines/play-react/variables/PlayRenderer.md +1 -1
  68. package/api/@xmachines/play-react/variables/PlayUIProvider.md +1 -1
  69. package/api/@xmachines/play-react-router/README.md +2 -2
  70. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +172 -15
  71. package/api/@xmachines/play-react-router/classes/RouteMap.md +4 -4
  72. package/api/@xmachines/play-react-router/functions/createPlayRouterProvider.md +7 -18
  73. package/api/@xmachines/play-react-router/functions/createRouteMap.md +1 -1
  74. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +1 -1
  75. package/api/@xmachines/play-react-router/interfaces/PlayActor.md +5 -5
  76. package/api/@xmachines/play-react-router/interfaces/PlayRouteEvent.md +6 -6
  77. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +10 -8
  78. package/api/@xmachines/play-react-router/interfaces/RouteMapOptions.md +2 -2
  79. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
  80. package/api/@xmachines/play-react-router/interfaces/RouterBridge.md +3 -3
  81. package/api/@xmachines/play-react-router/type-aliases/PlayRouterBridgeConstructor.md +15 -9
  82. package/api/@xmachines/play-react-router/type-aliases/PlayRouterProviderBaseProps.md +26 -0
  83. package/api/@xmachines/play-react-router/variables/PlayRouterProvider.md +4 -4
  84. package/api/@xmachines/play-router/README.md +297 -11
  85. package/api/@xmachines/play-router/classes/RouteMap.md +4 -4
  86. package/api/@xmachines/play-router/classes/RouterBridgeBase.md +178 -19
  87. package/api/@xmachines/play-router/functions/buildPlayRouteEvent.md +1 -1
  88. package/api/@xmachines/play-router/functions/buildRouteTree.md +1 -1
  89. package/api/@xmachines/play-router/functions/cleanFrameworkParams.md +40 -0
  90. package/api/@xmachines/play-router/functions/createRouteMap.md +1 -1
  91. package/api/@xmachines/play-router/functions/createRouteMapFromTree.md +1 -1
  92. package/api/@xmachines/play-router/functions/createRouterConnection.md +21 -0
  93. package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +1 -1
  94. package/api/@xmachines/play-router/functions/extractMachineRoutes.md +1 -1
  95. package/api/@xmachines/play-router/functions/extractQuery.md +1 -1
  96. package/api/@xmachines/play-router/functions/extractRouteParams.md +1 -1
  97. package/api/@xmachines/play-router/functions/findRouteById.md +1 -1
  98. package/api/@xmachines/play-router/functions/findRouteByPath.md +1 -1
  99. package/api/@xmachines/play-router/functions/getNavigableRoutes.md +1 -1
  100. package/api/@xmachines/play-router/functions/getPatternParamNames.md +24 -0
  101. package/api/@xmachines/play-router/functions/getRequiredPatternParamNames.md +36 -0
  102. package/api/@xmachines/play-router/functions/getRoutableRoutes.md +1 -1
  103. package/api/@xmachines/play-router/functions/getRouteMappings.md +67 -0
  104. package/api/@xmachines/play-router/functions/getTransitionReachableRoutes.md +1 -1
  105. package/api/@xmachines/play-router/functions/isMountableBridge.md +26 -0
  106. package/api/@xmachines/play-router/functions/isRouteReachable.md +1 -1
  107. package/api/@xmachines/play-router/functions/joinBasePath.md +37 -0
  108. package/api/@xmachines/play-router/functions/machineToGraph.md +1 -1
  109. package/api/@xmachines/play-router/functions/mountKey.md +28 -0
  110. package/api/@xmachines/play-router/functions/normalizeBasePath.md +43 -0
  111. package/api/@xmachines/play-router/functions/openProviderBridge.md +41 -0
  112. package/api/@xmachines/play-router/functions/pickOwnParams.md +41 -0
  113. package/api/@xmachines/play-router/functions/repointProviderBridge.md +27 -0
  114. package/api/@xmachines/play-router/functions/resolveBasePath.md +51 -0
  115. package/api/@xmachines/play-router/functions/resolveFrameworkParams.md +51 -0
  116. package/api/@xmachines/play-router/functions/routeExists.md +1 -1
  117. package/api/@xmachines/play-router/functions/sanitizePathname.md +1 -1
  118. package/api/@xmachines/play-router/functions/stripBasePath.md +44 -0
  119. package/api/@xmachines/play-router/functions/validateRouteFormat.md +1 -1
  120. package/api/@xmachines/play-router/functions/validateStateExists.md +1 -1
  121. package/api/@xmachines/play-router/interfaces/BasePathOptions.md +32 -0
  122. package/api/@xmachines/play-router/interfaces/BuildPlayRouteEventOptions.md +4 -4
  123. package/api/@xmachines/play-router/interfaces/FrameworkParamsSource.md +47 -0
  124. package/api/@xmachines/play-router/interfaces/LocationLike.md +3 -3
  125. package/api/@xmachines/play-router/interfaces/MachineEdgeData.md +3 -3
  126. package/api/@xmachines/play-router/interfaces/MachineNodeData.md +5 -5
  127. package/api/@xmachines/play-router/interfaces/MountableRouterBridge.md +130 -0
  128. package/api/@xmachines/play-router/interfaces/OpenProviderBridgeArgs.md +28 -0
  129. package/api/@xmachines/play-router/interfaces/PlayActor.md +5 -5
  130. package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +6 -6
  131. package/api/@xmachines/play-router/interfaces/PlayRouterProviderBaseProps.md +33 -0
  132. package/api/@xmachines/play-router/interfaces/ResolvedBasePath.md +14 -0
  133. package/api/@xmachines/play-router/interfaces/ResolvedRoutePath.md +3 -3
  134. package/api/@xmachines/play-router/interfaces/RoutableActor.md +4 -4
  135. package/api/@xmachines/play-router/interfaces/RouteInfo.md +8 -8
  136. package/api/@xmachines/play-router/interfaces/RouteMapOptions.md +2 -2
  137. package/api/@xmachines/play-router/interfaces/RouteMapping.md +3 -3
  138. package/api/@xmachines/play-router/interfaces/RouteMatch.md +3 -3
  139. package/api/@xmachines/play-router/interfaces/RouteNode.md +10 -10
  140. package/api/@xmachines/play-router/interfaces/RouteObject.md +2 -2
  141. package/api/@xmachines/play-router/interfaces/RouteTree.md +5 -5
  142. package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +3 -3
  143. package/api/@xmachines/play-router/interfaces/RouterBridge.md +7 -3
  144. package/api/@xmachines/play-router/interfaces/RouterConnection.md +76 -0
  145. package/api/@xmachines/play-router/interfaces/WindowLike.md +3 -3
  146. package/api/@xmachines/play-router/type-aliases/BaseRouteMapping.md +1 -1
  147. package/api/@xmachines/play-router/type-aliases/MachineGraph.md +1 -1
  148. package/api/@xmachines/play-router/type-aliases/PlayRouterBridgeConstructor.md +36 -0
  149. package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +1 -1
  150. package/api/@xmachines/play-router/variables/NO_BASE_PATH.md +18 -0
  151. package/api/@xmachines/play-signals/README.md +1 -1
  152. package/api/@xmachines/play-signals/functions/watchSignal.md +1 -1
  153. package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +2 -2
  154. package/api/@xmachines/play-signals/interfaces/SignalComputed.md +2 -2
  155. package/api/@xmachines/play-signals/interfaces/SignalOptions.md +2 -2
  156. package/api/@xmachines/play-signals/interfaces/SignalState.md +3 -3
  157. package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +4 -4
  158. package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +1 -1
  159. package/api/@xmachines/play-solid/README.md +1 -1
  160. package/api/@xmachines/play-solid/functions/useActor.md +1 -1
  161. package/api/@xmachines/play-solid/functions/usePlayView.md +1 -1
  162. package/api/@xmachines/play-solid/interfaces/ActorProviderProps.md +8 -8
  163. package/api/@xmachines/play-solid/interfaces/PlayUIProviderProps.md +8 -8
  164. package/api/@xmachines/play-solid/interfaces/ViewContextValue.md +5 -5
  165. package/api/@xmachines/play-solid/type-aliases/AnyPlayActor.md +1 -1
  166. package/api/@xmachines/play-solid/variables/ActorContext.md +1 -1
  167. package/api/@xmachines/play-solid/variables/ActorProvider.md +1 -1
  168. package/api/@xmachines/play-solid/variables/PlayRenderer.md +1 -1
  169. package/api/@xmachines/play-solid/variables/PlayUIProvider.md +1 -1
  170. package/api/@xmachines/play-solid-router/README.md +19 -3
  171. package/api/@xmachines/play-solid-router/classes/RouteMap.md +4 -4
  172. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +166 -18
  173. package/api/@xmachines/play-solid-router/functions/createPlayRouterProvider.md +8 -18
  174. package/api/@xmachines/play-solid-router/functions/createRouteMap.md +1 -1
  175. package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +3 -3
  176. package/api/@xmachines/play-solid-router/interfaces/PlayActor.md +5 -5
  177. package/api/@xmachines/play-solid-router/interfaces/PlayRouteEvent.md +6 -6
  178. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +10 -8
  179. package/api/@xmachines/play-solid-router/interfaces/RouteMapOptions.md +2 -2
  180. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +3 -3
  181. package/api/@xmachines/play-solid-router/interfaces/RouterBridge.md +3 -3
  182. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterBridgeConstructor.md +14 -12
  183. package/api/@xmachines/play-solid-router/type-aliases/PlayRouterProviderBaseProps.md +26 -0
  184. package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +1 -1
  185. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
  186. package/api/@xmachines/play-solid-router/variables/PlayRouterProvider.md +4 -4
  187. package/api/@xmachines/play-svelte/README.md +1 -1
  188. package/api/@xmachines/play-svelte/functions/defineRegistry.md +1 -1
  189. package/api/@xmachines/play-svelte/functions/getActorContext.md +1 -1
  190. package/api/@xmachines/play-svelte/functions/getPlayViewContext.md +1 -1
  191. package/api/@xmachines/play-svelte/functions/setActorContext.md +1 -1
  192. package/api/@xmachines/play-svelte/interfaces/ActorProviderProps.md +8 -8
  193. package/api/@xmachines/play-svelte/interfaces/DefineRegistryOptions.md +4 -4
  194. package/api/@xmachines/play-svelte/interfaces/PlayUIProviderProps.md +11 -11
  195. package/api/@xmachines/play-svelte/interfaces/ViewContextValue.md +5 -5
  196. package/api/@xmachines/play-svelte/type-aliases/AnyPlayActor.md +1 -1
  197. package/api/@xmachines/play-svelte-spa-router/README.md +3 -1
  198. package/api/@xmachines/play-svelte-spa-router/classes/RouteMap.md +4 -4
  199. package/api/@xmachines/play-svelte-spa-router/classes/SvelteSpaRouterBridge.md +148 -6
  200. package/api/@xmachines/play-svelte-spa-router/functions/connectRouter.md +3 -3
  201. package/api/@xmachines/play-svelte-spa-router/functions/createRouteMap.md +1 -1
  202. package/api/@xmachines/play-svelte-spa-router/interfaces/BasePathOptions.md +32 -0
  203. package/api/@xmachines/play-svelte-spa-router/interfaces/ConnectRouterOptions.md +12 -6
  204. package/api/@xmachines/play-svelte-spa-router/interfaces/PlayRouteEvent.md +6 -6
  205. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapOptions.md +2 -2
  206. package/api/@xmachines/play-svelte-spa-router/interfaces/RouteMapping.md +3 -3
  207. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterBridge.md +3 -3
  208. package/api/@xmachines/play-svelte-spa-router/interfaces/RouterConnection.md +76 -0
  209. package/api/@xmachines/play-svelte-spa-router/interfaces/WindowLike.md +3 -3
  210. package/api/@xmachines/play-svelte-spa-router/type-aliases/RoutableActor.md +1 -1
  211. package/api/@xmachines/play-sveltekit-router/README.md +3 -1
  212. package/api/@xmachines/play-sveltekit-router/classes/RouteMap.md +4 -4
  213. package/api/@xmachines/play-sveltekit-router/classes/SvelteKitRouterBridge.md +148 -6
  214. package/api/@xmachines/play-sveltekit-router/functions/connectRouter.md +3 -3
  215. package/api/@xmachines/play-sveltekit-router/functions/createRouteMap.md +1 -1
  216. package/api/@xmachines/play-sveltekit-router/interfaces/BasePathOptions.md +32 -0
  217. package/api/@xmachines/play-sveltekit-router/interfaces/ConnectRouterOptions.md +28 -6
  218. package/api/@xmachines/play-sveltekit-router/interfaces/LocationLike.md +3 -3
  219. package/api/@xmachines/play-sveltekit-router/interfaces/PlayRouteEvent.md +6 -6
  220. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapOptions.md +2 -2
  221. package/api/@xmachines/play-sveltekit-router/interfaces/RouteMapping.md +3 -3
  222. package/api/@xmachines/play-sveltekit-router/interfaces/RouterBridge.md +3 -3
  223. package/api/@xmachines/play-sveltekit-router/interfaces/RouterConnection.md +76 -0
  224. package/api/@xmachines/play-sveltekit-router/type-aliases/RoutableActor.md +1 -1
  225. package/api/@xmachines/play-tanstack-react-router/README.md +3 -2
  226. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +4 -4
  227. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +148 -6
  228. package/api/@xmachines/play-tanstack-react-router/functions/createPlayRouterProvider.md +7 -18
  229. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +1 -1
  230. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +1 -1
  231. package/api/@xmachines/play-tanstack-react-router/functions/extractMachineRoutes.md +1 -1
  232. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayActor.md +5 -5
  233. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouteEvent.md +6 -6
  234. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +10 -8
  235. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapOptions.md +2 -2
  236. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +3 -3
  237. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +3 -3
  238. package/api/@xmachines/play-tanstack-react-router/interfaces/RouterBridge.md +3 -3
  239. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterBridgeConstructor.md +15 -9
  240. package/api/@xmachines/play-tanstack-react-router/type-aliases/PlayRouterProviderBaseProps.md +26 -0
  241. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  242. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +59 -11
  243. package/api/@xmachines/play-tanstack-react-router/variables/PlayRouterProvider.md +4 -4
  244. package/api/@xmachines/play-tanstack-router/README.md +19 -1
  245. package/api/@xmachines/play-tanstack-router/classes/TanStackRouterBridgeBase.md +153 -11
  246. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouteMapLike.md +3 -3
  247. package/api/@xmachines/play-tanstack-router/type-aliases/TanStackRouterLike.md +59 -11
  248. package/api/@xmachines/play-tanstack-solid-router/README.md +3 -2
  249. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +4 -4
  250. package/api/@xmachines/play-tanstack-solid-router/classes/TanStackSolidRouterBridge.md +149 -7
  251. package/api/@xmachines/play-tanstack-solid-router/functions/createPlayRouterProvider.md +7 -17
  252. package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +1 -1
  253. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayActor.md +5 -5
  254. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouteEvent.md +6 -6
  255. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +10 -8
  256. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapOptions.md +2 -2
  257. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
  258. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouterBridge.md +3 -3
  259. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterBridgeConstructor.md +15 -9
  260. package/api/@xmachines/play-tanstack-solid-router/type-aliases/PlayRouterProviderBaseProps.md +26 -0
  261. package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +1 -1
  262. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  263. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +59 -11
  264. package/api/@xmachines/play-tanstack-solid-router/variables/PlayRouterProvider.md +4 -4
  265. package/api/@xmachines/play-vue/README.md +1 -1
  266. package/api/@xmachines/play-vue/functions/defineRegistry.md +1 -1
  267. package/api/@xmachines/play-vue/functions/useActor.md +1 -1
  268. package/api/@xmachines/play-vue/functions/usePlayView.md +1 -1
  269. package/api/@xmachines/play-vue/interfaces/ActorProviderProps.md +5 -5
  270. package/api/@xmachines/play-vue/interfaces/PlayUIProviderProps.md +8 -8
  271. package/api/@xmachines/play-vue/interfaces/ViewContextValue.md +5 -5
  272. package/api/@xmachines/play-vue/interfaces/VisibilityProviderProps.md +1 -1
  273. package/api/@xmachines/play-vue/type-aliases/AnyPlayActor.md +1 -1
  274. package/api/@xmachines/play-vue/type-aliases/ComponentEntry.md +1 -1
  275. package/api/@xmachines/play-vue/type-aliases/ComponentsMap.md +1 -1
  276. package/api/@xmachines/play-vue/type-aliases/DefineRegistryOptions.md +2 -2
  277. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  278. package/api/@xmachines/play-vue/variables/getPlayViewContext.md +1 -1
  279. package/api/@xmachines/play-vue-router/README.md +1 -1
  280. package/api/@xmachines/play-vue-router/classes/RouteMap.md +4 -4
  281. package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +154 -12
  282. package/api/@xmachines/play-vue-router/functions/createRouteMap.md +1 -1
  283. package/api/@xmachines/play-vue-router/interfaces/PlayActor.md +5 -5
  284. package/api/@xmachines/play-vue-router/interfaces/PlayRouteEvent.md +6 -6
  285. package/api/@xmachines/play-vue-router/interfaces/RouteMapOptions.md +2 -2
  286. package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +3 -3
  287. package/api/@xmachines/play-vue-router/interfaces/RouterBridge.md +3 -3
  288. package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +1 -1
  289. package/api/@xmachines/play-vue-router/type-aliases/VueRouteMap.md +1 -1
  290. package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +25 -2
  291. package/api/@xmachines/play-vue-router/variables/VueRouteMap.md +1 -1
  292. package/api/@xmachines/play-xstate/README.md +1 -1
  293. package/api/@xmachines/play-xstate/classes/PlayerActor.md +16 -16
  294. package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +1 -1
  295. package/api/@xmachines/play-xstate/functions/composeGuards.md +1 -1
  296. package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +1 -1
  297. package/api/@xmachines/play-xstate/functions/contextFieldMatches.md +1 -1
  298. package/api/@xmachines/play-xstate/functions/definePlayer.md +1 -1
  299. package/api/@xmachines/play-xstate/functions/deriveRoute.md +1 -1
  300. package/api/@xmachines/play-xstate/functions/eventMatches.md +1 -1
  301. package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +1 -1
  302. package/api/@xmachines/play-xstate/functions/hasContext.md +1 -1
  303. package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +1 -1
  304. package/api/@xmachines/play-xstate/functions/negateGuard.md +1 -1
  305. package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +3 -3
  306. package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +2 -2
  307. package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +7 -7
  308. package/api/@xmachines/play-xstate/interfaces/RouteContext.md +5 -5
  309. package/api/@xmachines/play-xstate/interfaces/RouteObject.md +2 -2
  310. package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +1 -1
  311. package/api/@xmachines/play-xstate/type-aliases/Guard.md +1 -1
  312. package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +1 -1
  313. package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +1 -1
  314. package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +4 -4
  315. package/api/@xmachines/play-xstate/type-aliases/RouteMetadata.md +1 -1
  316. package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +4 -4
  317. package/api/@xmachines/shared/vite-aliases/functions/xmAliases.md +1 -1
  318. package/api/@xmachines/shared/vite-aliases/functions/xmCacheDir.md +1 -1
  319. package/api/@xmachines/shared/vite-aliases/functions/xmOptimizeDeps.md +1 -1
  320. package/api/@xmachines/shared/vite-aliases/functions/xmResolve.md +1 -1
  321. package/api/@xmachines/shared/vite-aliases/functions/xmSvelteRunes.md +2 -2
  322. package/api/@xmachines/shared/vitest/functions/defineXmBrowserConfig.md +1 -1
  323. package/api/@xmachines/shared/vitest/functions/defineXmVitestConfig.md +1 -1
  324. package/api/@xmachines/shared/vitest/interfaces/XmBrowserConfigOptions.md +4 -4
  325. package/contributing/configuration.md +1 -1
  326. package/contributing/development.md +16 -16
  327. package/contributing/testing.md +31 -4
  328. package/examples/README.md +1 -1
  329. package/examples/multi-router-integration.md +126 -1
  330. package/examples/routing-patterns.md +1 -1
  331. package/guides/inspector.md +1 -1
  332. package/package.json +1 -1
  333. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderBaseProps.md +0 -32
  334. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderBaseProps.md +0 -30
  335. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderBaseProps.md +0 -32
  336. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderBaseProps.md +0 -31
@@ -6,7 +6,7 @@
6
6
  type TanStackRouterLike = object;
7
7
  ```
8
8
 
9
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:37](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L37)
9
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:39](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L39)
10
10
 
11
11
  The type-only interface of the TanStack Router surface that
12
12
  `TanStackRouterBridgeBase` uses. An instance of `@tanstack/react-router` and an
@@ -20,7 +20,7 @@ instance of `@tanstack/solid-router` both satisfy it.
20
20
  history: object;
21
21
  ```
22
22
 
23
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:46](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L46)
23
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:72](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L72)
24
24
 
25
25
  #### location
26
26
 
@@ -61,6 +61,40 @@ subscribe(handler): () => void;
61
61
 
62
62
  () => `void`
63
63
 
64
+ ---
65
+
66
+ ### options?
67
+
68
+ ```ts
69
+ optional options?: object;
70
+ ```
71
+
72
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:58](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L58)
73
+
74
+ The options of the router. The bridge reads `parseSearch` only.
75
+
76
+ TanStack owns the encoding of a query: its default `stringifySearch` writes each
77
+ value through `JSON.stringify`, so a plain string arrives in the URL with quotes
78
+ around it. `parseSearch` is the inverse, and it is therefore the only correct way
79
+ to turn a query string of the URL into the `search` object that `navigate`
80
+ accepts. A router double may hold neither.
81
+
82
+ #### parseSearch()?
83
+
84
+ ```ts
85
+ optional parseSearch(search): Record<string, unknown>;
86
+ ```
87
+
88
+ ##### Parameters
89
+
90
+ | Parameter | Type |
91
+ | --------- | -------- |
92
+ | `search` | `string` |
93
+
94
+ ##### Returns
95
+
96
+ `Record`\<`string`, `unknown`\>
97
+
64
98
  ## Methods
65
99
 
66
100
  ### load()?
@@ -69,12 +103,18 @@ subscribe(handler): () => void;
69
103
  optional load(): void | Promise<void>;
70
104
  ```
71
105
 
72
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:45](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L45)
106
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L71)
73
107
 
74
108
  Runs the TanStack route matching and the loaders again for the current location.
75
- This method is optional. The bridge calls it after every navigation, and it does
76
- not wait for the result. The matching and the loaders therefore stay correct,
77
- also when no `<RouterProvider>` is mounted.
109
+ This method is optional. The bridge calls it after every navigation. The matching
110
+ and the loaders therefore stay correct, also when no `<RouterProvider>` is
111
+ mounted.
112
+
113
+ The real implementation returns a promise. `watchRouterChanges` waits for that
114
+ promise before it synchronizes the actor, because `router.load()` is the only
115
+ public point that also runs `router.updateLatestLocation()`. See
116
+ `watchRouterChanges` for the reason. A test double may return `void`, and the
117
+ bridge then synchronizes synchronously.
78
118
 
79
119
  #### Returns
80
120
 
@@ -88,14 +128,22 @@ also when no `<RouterProvider>` is mounted.
88
128
  navigate(args): void;
89
129
  ```
90
130
 
91
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L38)
131
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L48)
132
+
133
+ Navigates to a location. `search` carries the query of the target.
134
+
135
+ The bridge passes `search` whenever the route of the actor holds a query. A
136
+ `navigate({ to })` call with no `search` makes TanStack rebuild the query from
137
+ `validateSearch({})` of the matched route, and a route that injects a default
138
+ then commits a different href than the bridge asked for.
92
139
 
93
140
  #### Parameters
94
141
 
95
- | Parameter | Type |
96
- | --------- | --------------------- |
97
- | `args` | \{ `to`: `string`; \} |
98
- | `args.to` | `string` |
142
+ | Parameter | Type |
143
+ | -------------- | ----------------------------------------------------------------- |
144
+ | `args` | \{ `search?`: `Record`\<`string`, `unknown`\>; `to`: `string`; \} |
145
+ | `args.search?` | `Record`\<`string`, `unknown`\> |
146
+ | `args.to` | `string` |
99
147
 
100
148
  #### Returns
101
149
 
@@ -6,7 +6,7 @@
6
6
  const PlayRouterProvider: <TActor>(__namedParameters) => Element;
7
7
  ```
8
8
 
9
- Defined in: [play-tanstack-react-router/src/play-router-provider.tsx:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-react-router/src/play-router-provider.tsx#L60)
9
+ Defined in: [play-tanstack-react-router/src/play-router-provider.tsx:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-react-router/src/play-router-provider.tsx#L60)
10
10
 
11
11
  Connects a `PlayerActor` to TanStack React Router. It keeps the actor state and the
12
12
  browser URL in step, in both directions.
@@ -26,9 +26,9 @@ connect), and the bridge supports this.
26
26
 
27
27
  ## Parameters
28
28
 
29
- | Parameter | Type |
30
- | ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
31
- | `__namedParameters` | [`PlayRouterProviderBaseProps`](../interfaces/PlayRouterProviderBaseProps.md)\<[`TanStackRouterLike`](../type-aliases/TanStackRouterLike.md), `TActor`\> |
29
+ | Parameter | Type |
30
+ | ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
31
+ | `__namedParameters` | [`PlayRouterProviderBaseProps`](../type-aliases/PlayRouterProviderBaseProps.md)\<[`TanStackRouterLike`](../type-aliases/TanStackRouterLike.md), `TActor`\> |
32
32
 
33
33
  ## Returns
34
34
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  Shared, framework-agnostic TanStack Router bridge base for XMachines Play.
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-2.1.0-blue)](https://www.npmjs.com/package/@xmachines/play-tanstack-router)
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Version](https://img.shields.io/badge/version-2.2.0-blue)](https://www.npmjs.com/package/@xmachines/play-tanstack-router)
8
8
 
9
9
  TanStack Router gives React and Solid the same `navigate`, `load`, and `history`
10
10
  surface. Therefore the complete bridge implementation lives here, in
@@ -53,6 +53,24 @@ bridge.connect();
53
53
  bridge.disconnect();
54
54
  ```
55
55
 
56
+ ## Corrective navigation and a mounted `<RouterProvider>`
57
+
58
+ The bridge subscribes to `router.history`, and it calls `router.load()` for every
59
+ history event. The bridge waits for that `load()` promise before it synchronizes
60
+ the actor. The wait is necessary for a mounted `<RouterProvider>`: its
61
+ `Transitioner` component defers `router.updateLatestLocation()` into the
62
+ `startTransition` of the framework. Without the wait, `router.latestLocation`
63
+ still holds the previous href while the bridge runs. A corrective navigation for a
64
+ refused URL then looks like a navigation to the same URL, and `commitLocation` of
65
+ TanStack writes nothing to the browser history. The refused URL then stays in the
66
+ address bar. With the wait, `router.latestLocation` is current, and the correction
67
+ reaches the history. The bridge therefore works with a mounted `<RouterProvider>`
68
+ and also without one.
69
+
70
+ A burst of history events keeps its order: each event takes a sequence number, and
71
+ a deferred synchronization runs only while its number is still the newest one. A
72
+ `disconnect()` call retires every synchronization that still waits.
73
+
56
74
  ## Exports
57
75
 
58
76
  - `TanStackRouterBridgeBase` — the concrete bridge base class. Use it directly, or make a subclass of it
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Class: TanStackRouterBridgeBase
4
4
 
5
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:107](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L107)
5
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:133](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L133)
6
6
 
7
7
  The shared TanStack Router adapter. It implements the RouterBridge protocol through RouterBridgeBase
8
8
 
@@ -55,20 +55,22 @@ return () => bridge.disconnect();
55
55
  new TanStackRouterBridgeBase(
56
56
  router,
57
57
  actor,
58
- routeMap): TanStackRouterBridgeBase;
58
+ routeMap,
59
+ options?): TanStackRouterBridgeBase;
59
60
  ```
60
61
 
61
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:117](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L117)
62
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:151](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L151)
62
63
 
63
64
  Creates a TanStack Router bridge
64
65
 
65
66
  #### Parameters
66
67
 
67
- | Parameter | Type | Description |
68
- | ---------- | -------------------------------------------------------------------- | --------------------------------------------------------- |
69
- | `router` | [`TanStackRouterLike`](../type-aliases/TanStackRouterLike.md) | The TanStack Router instance from `createRouter` |
70
- | `actor` | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md) | The XMachines actor instance |
71
- | `routeMap` | [`TanStackRouteMapLike`](../type-aliases/TanStackRouteMapLike.md) | The bidirectional map between the state IDs and the paths |
68
+ | Parameter | Type | Description |
69
+ | ---------- | ------------------------------------------------------------------------ | --------------------------------------------------------- |
70
+ | `router` | [`TanStackRouterLike`](../type-aliases/TanStackRouterLike.md) | The TanStack Router instance from `createRouter` |
71
+ | `actor` | [`RoutableActor`](../../play-dom-router/interfaces/RoutableActor.md) | The XMachines actor instance |
72
+ | `routeMap` | [`TanStackRouteMapLike`](../type-aliases/TanStackRouteMapLike.md) | The bidirectional map between the state IDs and the paths |
73
+ | `options?` | [`BasePathOptions`](../../play-dom-router/interfaces/BasePathOptions.md) | - |
72
74
 
73
75
  #### Returns
74
76
 
@@ -78,6 +80,84 @@ Creates a TanStack Router bridge
78
80
 
79
81
  [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`constructor`](../../play-router/classes/RouterBridgeBase.md#constructor)
80
82
 
83
+ ## Accessors
84
+
85
+ ### basePath
86
+
87
+ #### Get Signature
88
+
89
+ ```ts
90
+ get basePath(): string;
91
+ ```
92
+
93
+ Defined in: play-router/dist/router-bridge-base.d.ts:195
94
+
95
+ The resolved URL prefix that the machine of this bridge is mounted under, or `""`
96
+ when the machine owns the complete router.
97
+
98
+ ##### Returns
99
+
100
+ `string`
101
+
102
+ The resolved URL prefix of the mount, or `""` when the machine owns the complete router.
103
+
104
+ #### Inherited from
105
+
106
+ [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`basePath`](../../play-router/classes/RouterBridgeBase.md#basepath)
107
+
108
+ ---
109
+
110
+ ### basePathParams
111
+
112
+ #### Get Signature
113
+
114
+ ```ts
115
+ get basePathParams(): Readonly<Record<string, string>>;
116
+ ```
117
+
118
+ Defined in: play-router/dist/router-bridge-base.d.ts:221
119
+
120
+ The resolved values of the `:param` segments of the mount, or `{}` for a prefix
121
+ without a param.
122
+
123
+ These params belong to the HOST: the host wrote the prefix and resolved the
124
+ values, and they describe the route of the host and not the route of the machine.
125
+ They therefore travel in NO `play.route` event. The machine is authoritative over
126
+ its own params, and `event.params` holds what the pattern of the machine
127
+ declares, and nothing else.
128
+
129
+ They live here instead, because a value that reached the actor on a navigation
130
+ ALONE would go stale: `setBasePath()` can move the mount while the machine stays
131
+ on the same route, no event goes out, and `event.params` would then contradict
132
+ `basePath`. A read of this accessor cannot go stale.
133
+
134
+ A machine that needs the identity of its host — a `machineId`, a tenant — takes
135
+ it through the `input` of the actor, where it belongs: that identity decides
136
+ WHICH machine runs, and it is not a param of a route inside the machine.
137
+
138
+ ##### Example
139
+
140
+ ```typescript
141
+ bridge.basePath; // "/abc123/play"
142
+ bridge.basePathParams; // { machineId: "abc123" }
143
+ ```
144
+
145
+ ##### Returns
146
+
147
+ `Readonly`\<`Record`\<`string`, `string`\>\>
148
+
149
+ The resolved values of the `:param` segments of the mount, or `{}` for a prefix
150
+ without a param.
151
+
152
+ These params belong to the HOST, so they travel in NO `play.route` event — the
153
+ machine is authoritative over its own params. This accessor is therefore the one
154
+ way a host reads them back, and it cannot go stale: `setBasePath()` can move the
155
+ mount while the machine stays on the same route, and no event goes out.
156
+
157
+ #### Inherited from
158
+
159
+ [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`basePathParams`](../../play-router/classes/RouterBridgeBase.md#basepathparams)
160
+
81
161
  ## Methods
82
162
 
83
163
  ### connect()
@@ -86,7 +166,7 @@ Creates a TanStack Router bridge
86
166
  connect(): void;
87
167
  ```
88
168
 
89
- Defined in: play-router/dist/router-bridge-base.d.ts:124
169
+ Defined in: play-router/dist/router-bridge-base.d.ts:313
90
170
 
91
171
  Connects the router bridge to the Actor.
92
172
 
@@ -96,7 +176,7 @@ in its own way.
96
176
 
97
177
  The order of these steps is part of the contract of the bridge:
98
178
 
99
- - The constructor seeds `lastSyncedPath` from `actor.currentRoute`
179
+ - The constructor seeds `lastActorRoute` from `actor.currentRoute`, and it records no location
100
180
  - The method installs the actor watcher before the router subscriptions of the adapter
101
181
  - The first synchronization then separates a deep link from a restore, with `actor.initialRoute`
102
182
 
@@ -120,7 +200,7 @@ An adapter that needs a different behavior of the first synchronization override
120
200
  disconnect(): void;
121
201
  ```
122
202
 
123
- Defined in: play-router/dist/router-bridge-base.d.ts:131
203
+ Defined in: play-router/dist/router-bridge-base.d.ts:347
124
204
 
125
205
  Disconnects the router bridge from the Actor.
126
206
 
@@ -134,3 +214,65 @@ framework.
134
214
  #### Inherited from
135
215
 
136
216
  [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`disconnect`](../../play-router/classes/RouterBridgeBase.md#disconnect)
217
+
218
+ ---
219
+
220
+ ### setBasePath()
221
+
222
+ ```ts
223
+ setBasePath(basePath?, basePathParams?): void;
224
+ ```
225
+
226
+ Defined in: play-router/dist/router-bridge-base.d.ts:258
227
+
228
+ Moves the machine to a different mount point, while it stays connected.
229
+
230
+ This is the "load and unload" half of a shared router. It moves WHERE an actor is
231
+ mounted, and never WHICH actor is mounted: the actor, the route map, and its LRU
232
+ cache all stay, and nothing goes away.
233
+
234
+ An actor never changes identity. A prefix that IDENTIFIES the actor — a
235
+ `machineId` that names the document it runs — therefore never moves through this
236
+ method: a new identity is a new actor, and a new actor takes a new bridge, because
237
+ `connect()` permits one bridge for each actor. The segments that move here are the
238
+ ones that LOCATE: a region, a locale, a tenant, a workspace slug.
239
+
240
+ The call then brings the location in step with the NEW prefix. A location inside
241
+ the new mount runs the same first-synchronization decision as `connect()`: it
242
+ drives the actor, and a restore keeps the route of the actor. A location OUTSIDE
243
+ the new mount is the old mount in practice, so the bridge writes the new one
244
+ itself, and it keeps the route of the actor while it does so — nothing else moves
245
+ the address bar. A call that resolves to the current prefix changes no location,
246
+ and it therefore reconciles nothing.
247
+
248
+ #### Parameters
249
+
250
+ | Parameter | Type | Description |
251
+ | ----------------- | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
252
+ | `basePath?` | `string` | The new prefix, as a pattern or as a concrete path. An absent value, `""`, and `"/"` all remove the prefix, and they give the machine the complete router again. |
253
+ | `basePathParams?` | `Record`\<`string`, `string` \| `number`\> | The values of the `:param` segments of `basePath`. |
254
+
255
+ #### Returns
256
+
257
+ `void`
258
+
259
+ #### Throws
260
+
261
+ For a prefix that resolves to one concrete path never.
262
+
263
+ #### Throws
264
+
265
+ When a `:param` of the prefix has no value.
266
+
267
+ #### Example
268
+
269
+ ```typescript
270
+ // The host moved this actor to another place in its URL space. `machineId` names
271
+ // WHICH document the actor runs, and it does not change: a new identity is a new
272
+ // actor, and therefore a new bridge, because one actor takes one bridge.
273
+ bridge.setBasePath("/:region/:machineId/play", { region: "us", machineId });
274
+ ```
275
+
276
+ #### Inherited from
277
+
278
+ [`RouterBridgeBase`](../../play-router/classes/RouterBridgeBase.md).[`setBasePath`](../../play-router/classes/RouterBridgeBase.md#setbasepath)
@@ -6,7 +6,7 @@
6
6
  type TanStackRouteMapLike = object;
7
7
  ```
8
8
 
9
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:69](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L69)
9
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:95](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L95)
10
10
 
11
11
  The narrow route-map surface that `TanStackRouterBridgeBase` requires.
12
12
  `RouteMap` from `@xmachines/play-router` satisfies it. The bridge converts a
@@ -24,7 +24,7 @@ that holds one form only still resolves the path.
24
24
  getPathByStateId(id): string | null | undefined;
25
25
  ```
26
26
 
27
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L71)
27
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:97](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L97)
28
28
 
29
29
  #### Parameters
30
30
 
@@ -44,7 +44,7 @@ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:71](https:/
44
44
  getStateIdByPath(path): string | null | undefined;
45
45
  ```
46
46
 
47
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L70)
47
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:96](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L96)
48
48
 
49
49
  #### Parameters
50
50
 
@@ -6,7 +6,7 @@
6
6
  type TanStackRouterLike = object;
7
7
  ```
8
8
 
9
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:37](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L37)
9
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:39](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L39)
10
10
 
11
11
  The type-only interface of the TanStack Router surface that
12
12
  `TanStackRouterBridgeBase` uses. An instance of `@tanstack/react-router` and an
@@ -20,7 +20,7 @@ instance of `@tanstack/solid-router` both satisfy it.
20
20
  history: object;
21
21
  ```
22
22
 
23
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:46](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L46)
23
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:72](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L72)
24
24
 
25
25
  #### location
26
26
 
@@ -61,6 +61,40 @@ subscribe(handler): () => void;
61
61
 
62
62
  () => `void`
63
63
 
64
+ ---
65
+
66
+ ### options?
67
+
68
+ ```ts
69
+ optional options?: object;
70
+ ```
71
+
72
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:58](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L58)
73
+
74
+ The options of the router. The bridge reads `parseSearch` only.
75
+
76
+ TanStack owns the encoding of a query: its default `stringifySearch` writes each
77
+ value through `JSON.stringify`, so a plain string arrives in the URL with quotes
78
+ around it. `parseSearch` is the inverse, and it is therefore the only correct way
79
+ to turn a query string of the URL into the `search` object that `navigate`
80
+ accepts. A router double may hold neither.
81
+
82
+ #### parseSearch()?
83
+
84
+ ```ts
85
+ optional parseSearch(search): Record<string, unknown>;
86
+ ```
87
+
88
+ ##### Parameters
89
+
90
+ | Parameter | Type |
91
+ | --------- | -------- |
92
+ | `search` | `string` |
93
+
94
+ ##### Returns
95
+
96
+ `Record`\<`string`, `unknown`\>
97
+
64
98
  ## Methods
65
99
 
66
100
  ### load()?
@@ -69,12 +103,18 @@ subscribe(handler): () => void;
69
103
  optional load(): void | Promise<void>;
70
104
  ```
71
105
 
72
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:45](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L45)
106
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L71)
73
107
 
74
108
  Runs the TanStack route matching and the loaders again for the current location.
75
- This method is optional. The bridge calls it after every navigation, and it does
76
- not wait for the result. The matching and the loaders therefore stay correct,
77
- also when no `<RouterProvider>` is mounted.
109
+ This method is optional. The bridge calls it after every navigation. The matching
110
+ and the loaders therefore stay correct, also when no `<RouterProvider>` is
111
+ mounted.
112
+
113
+ The real implementation returns a promise. `watchRouterChanges` waits for that
114
+ promise before it synchronizes the actor, because `router.load()` is the only
115
+ public point that also runs `router.updateLatestLocation()`. See
116
+ `watchRouterChanges` for the reason. A test double may return `void`, and the
117
+ bridge then synchronizes synchronously.
78
118
 
79
119
  #### Returns
80
120
 
@@ -88,14 +128,22 @@ also when no `<RouterProvider>` is mounted.
88
128
  navigate(args): void;
89
129
  ```
90
130
 
91
- Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L38)
131
+ Defined in: [play-tanstack-router/src/tanstack-router-bridge-base.ts:48](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-tanstack-router/src/tanstack-router-bridge-base.ts#L48)
132
+
133
+ Navigates to a location. `search` carries the query of the target.
134
+
135
+ The bridge passes `search` whenever the route of the actor holds a query. A
136
+ `navigate({ to })` call with no `search` makes TanStack rebuild the query from
137
+ `validateSearch({})` of the matched route, and a route that injects a default
138
+ then commits a different href than the bridge asked for.
92
139
 
93
140
  #### Parameters
94
141
 
95
- | Parameter | Type |
96
- | --------- | --------------------- |
97
- | `args` | \{ `to`: `string`; \} |
98
- | `args.to` | `string` |
142
+ | Parameter | Type |
143
+ | -------------- | ----------------------------------------------------------------- |
144
+ | `args` | \{ `search?`: `Record`\<`string`, `unknown`\>; `to`: `string`; \} |
145
+ | `args.search?` | `Record`\<`string`, `unknown`\> |
146
+ | `args.to` | `string` |
99
147
 
100
148
  #### Returns
101
149
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  **TanStack Solid Router adapter for XMachines Universal Player 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-2.1.0-blue)](https://www.npmjs.com/package/@xmachines/play-tanstack-solid-router)
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Version](https://img.shields.io/badge/version-2.2.0-blue)](https://www.npmjs.com/package/@xmachines/play-tanstack-solid-router)
8
8
 
9
9
  This package integrates TanStack Solid Router with the TC39 Signals. The logic then drives the navigation through the Solid.js reactivity.
10
10
 
@@ -132,6 +132,7 @@ class TanStackSolidRouterBridge {
132
132
  - `disconnect()` — cancels the subscription to the history and stops all the synchronization.
133
133
  - It navigates with `router.navigate({ to: path })`.
134
134
  - It subscribes with `router.history.subscribe`. This covers PUSH, POP, BACK, FORWARD, REPLACE, and GO, and it works when no `<RouterProvider>` is mounted.
135
+ - It waits for the `router.load()` of a history event before it synchronizes the actor. A mounted `<RouterProvider>` defers the refresh of `router.latestLocation`, and without the wait TanStack drops the corrective navigation for a refused URL. See the [`@xmachines/play-tanstack-router` README](../play-tanstack-router/README.md) for the details.
135
136
 
136
137
  ### `PlayRouterProvider`
137
138
 
@@ -328,7 +329,6 @@ MIT — see [LICENSE](LICENSE).
328
329
 
329
330
  - [PlayActor](interfaces/PlayActor.md)
330
331
  - [PlayRouteEvent](interfaces/PlayRouteEvent.md)
331
- - [PlayRouterProviderBaseProps](interfaces/PlayRouterProviderBaseProps.md)
332
332
  - [PlayRouterProviderProps](interfaces/PlayRouterProviderProps.md)
333
333
  - [RouteMapOptions](interfaces/RouteMapOptions.md)
334
334
  - [RouteMapping](interfaces/RouteMapping.md)
@@ -337,6 +337,7 @@ MIT — see [LICENSE](LICENSE).
337
337
  ## Type Aliases
338
338
 
339
339
  - [PlayRouterBridgeConstructor](type-aliases/PlayRouterBridgeConstructor.md)
340
+ - [PlayRouterProviderBaseProps](type-aliases/PlayRouterProviderBaseProps.md)
340
341
  - [~~RoutableActor~~](type-aliases/RoutableActor.md)
341
342
  - [TanStackRouterInstance](type-aliases/TanStackRouterInstance.md)
342
343
  - [TanStackRouterLike](type-aliases/TanStackRouterLike.md)
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Class: RouteMap
4
4
 
5
- Defined in: [play-router/src/base-route-map.ts:105](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/base-route-map.ts#L105)
5
+ Defined in: [play-router/src/base-route-map.ts:105](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-router/src/base-route-map.ts#L105)
6
6
 
7
7
  The shared base class of the route map for both directions.
8
8
 
@@ -58,7 +58,7 @@ map.getPathByStateId("missing"); // null
58
58
  new RouteMap(mappings, options?): RouteMap;
59
59
  ```
60
60
 
61
- Defined in: [play-router/src/base-route-map.ts:133](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/base-route-map.ts#L133)
61
+ Defined in: [play-router/src/base-route-map.ts:133](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-router/src/base-route-map.ts#L133)
62
62
 
63
63
  Builds a route map from an array of the mappings between a state ID and a path.
64
64
 
@@ -87,7 +87,7 @@ candidates is therefore efficient.
87
87
  getPathByStateId(stateId): string | null;
88
88
  ```
89
89
 
90
- Defined in: [play-router/src/base-route-map.ts:225](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/base-route-map.ts#L225)
90
+ Defined in: [play-router/src/base-route-map.ts:229](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-router/src/base-route-map.ts#L229)
91
91
 
92
92
  Returns the path pattern of a state ID.
93
93
 
@@ -123,7 +123,7 @@ map.getPathByStateId("missing"); // null
123
123
  getStateIdByPath(path): string | null;
124
124
  ```
125
125
 
126
- Defined in: [play-router/src/base-route-map.ts:185](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.1.0/packages/play-router/src/base-route-map.ts#L185)
126
+ Defined in: [play-router/src/base-route-map.ts:189](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v2.2.0/packages/play-router/src/base-route-map.ts#L189)
127
127
 
128
128
  Resolves a URL path to its state ID.
129
129