@xmachines/docs 1.0.0-beta.15 → 1.0.0-beta.17

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 (197) hide show
  1. package/api/@xmachines/play/README.md +56 -17
  2. package/api/@xmachines/play/classes/PlayError.md +240 -0
  3. package/api/@xmachines/play/type-aliases/PlayEvent.md +4 -4
  4. package/api/@xmachines/play-actor/README.md +32 -31
  5. package/api/@xmachines/play-actor/classes/AbstractActor.md +65 -53
  6. package/api/@xmachines/play-actor/interfaces/PlaySpec.md +37 -0
  7. package/api/@xmachines/play-actor/interfaces/Routable.md +5 -4
  8. package/api/@xmachines/play-actor/interfaces/ViewMetadata.md +6 -6
  9. package/api/@xmachines/play-actor/interfaces/Viewable.md +8 -8
  10. package/api/@xmachines/play-dom/README.md +36 -0
  11. package/api/@xmachines/play-dom/classes/PlayRenderer.md +83 -0
  12. package/api/@xmachines/play-dom/functions/connectRenderer.md +51 -0
  13. package/api/@xmachines/play-dom/functions/renderSpec.md +28 -0
  14. package/api/@xmachines/play-dom/interfaces/ConnectRendererOptions.md +18 -0
  15. package/api/@xmachines/play-dom/interfaces/DomRenderContext.md +18 -0
  16. package/api/@xmachines/play-dom/interfaces/PlayDomOptions.md +14 -0
  17. package/api/@xmachines/play-dom/type-aliases/DomComponentRenderer.md +23 -0
  18. package/api/@xmachines/play-dom/type-aliases/DomRegistry.md +11 -0
  19. package/api/@xmachines/play-react/README.md +226 -305
  20. package/api/@xmachines/play-react/classes/PlayErrorBoundary.md +12 -38
  21. package/api/@xmachines/play-react/functions/defineRegistry.md +47 -0
  22. package/api/@xmachines/play-react/functions/useActor.md +13 -0
  23. package/api/@xmachines/play-react/functions/useSignalEffect.md +1 -1
  24. package/api/@xmachines/play-react/functions/useStateBinding.md +32 -0
  25. package/api/@xmachines/play-react/interfaces/ComponentContext.md +35 -0
  26. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryProps.md +4 -4
  27. package/api/@xmachines/play-react/interfaces/PlayErrorBoundaryState.md +3 -3
  28. package/api/@xmachines/play-react/interfaces/PlayRendererProps.md +15 -7
  29. package/api/@xmachines/play-react/type-aliases/ComponentFn.md +34 -0
  30. package/api/@xmachines/play-react/type-aliases/PlayActor.md +9 -0
  31. package/api/@xmachines/play-react/variables/PlayRenderer.md +18 -30
  32. package/api/@xmachines/play-react-router/classes/ReactRouterBridge.md +32 -32
  33. package/api/@xmachines/play-react-router/classes/RouteMap.md +5 -5
  34. package/api/@xmachines/play-react-router/functions/PlayRouterProvider.md +11 -5
  35. package/api/@xmachines/play-react-router/functions/createRouteMapFromTree.md +1 -1
  36. package/api/@xmachines/play-react-router/interfaces/PlayRouterProviderProps.md +14 -8
  37. package/api/@xmachines/play-react-router/interfaces/RouteMapping.md +3 -3
  38. package/api/@xmachines/play-router/README.md +51 -0
  39. package/api/@xmachines/play-router/classes/BaseRouteMap.md +6 -6
  40. package/api/@xmachines/play-router/classes/RouterBridgeBase.md +44 -40
  41. package/api/@xmachines/play-router/functions/buildRouteTree.md +1 -1
  42. package/api/@xmachines/play-router/functions/connectRouter.md +1 -1
  43. package/api/@xmachines/play-router/functions/crawlMachine.md +1 -1
  44. package/api/@xmachines/play-router/functions/createBrowserHistory.md +4 -1
  45. package/api/@xmachines/play-router/functions/createRouteMap.md +3 -3
  46. package/api/@xmachines/play-router/functions/createRouter.md +1 -1
  47. package/api/@xmachines/play-router/functions/detectDuplicateRoutes.md +1 -1
  48. package/api/@xmachines/play-router/functions/extractMachineRoutes.md +1 -1
  49. package/api/@xmachines/play-router/functions/extractRoute.md +1 -1
  50. package/api/@xmachines/play-router/functions/findRouteById.md +1 -1
  51. package/api/@xmachines/play-router/functions/findRouteByPath.md +1 -1
  52. package/api/@xmachines/play-router/functions/getNavigableRoutes.md +1 -1
  53. package/api/@xmachines/play-router/functions/getRoutableRoutes.md +1 -1
  54. package/api/@xmachines/play-router/functions/routeExists.md +1 -1
  55. package/api/@xmachines/play-router/functions/validateRouteFormat.md +1 -1
  56. package/api/@xmachines/play-router/functions/validateStateExists.md +1 -1
  57. package/api/@xmachines/play-router/interfaces/BaseRouteMapping.md +3 -3
  58. package/api/@xmachines/play-router/interfaces/BrowserHistory.md +19 -15
  59. package/api/@xmachines/play-router/interfaces/BrowserWindow.md +14 -14
  60. package/api/@xmachines/play-router/interfaces/ConnectRouterOptions.md +6 -6
  61. package/api/@xmachines/play-router/interfaces/PlayRouteEvent.md +6 -6
  62. package/api/@xmachines/play-router/interfaces/RouteInfo.md +8 -8
  63. package/api/@xmachines/play-router/interfaces/RouteMap.md +4 -4
  64. package/api/@xmachines/play-router/interfaces/RouteNode.md +10 -10
  65. package/api/@xmachines/play-router/interfaces/RouteObject.md +2 -2
  66. package/api/@xmachines/play-router/interfaces/RouteTree.md +4 -4
  67. package/api/@xmachines/play-router/interfaces/RouteWatcherHandle.md +55 -0
  68. package/api/@xmachines/play-router/interfaces/RouterBridge.md +3 -3
  69. package/api/@xmachines/play-router/interfaces/StateVisit.md +4 -4
  70. package/api/@xmachines/play-router/interfaces/VanillaRouter.md +4 -4
  71. package/api/@xmachines/play-router/type-aliases/RouteMetadata.md +1 -1
  72. package/api/@xmachines/play-signals/README.md +22 -10
  73. package/api/@xmachines/play-signals/functions/watchSignal.md +35 -0
  74. package/api/@xmachines/play-signals/interfaces/ComputedOptions.md +2 -2
  75. package/api/@xmachines/play-signals/interfaces/SignalComputed.md +2 -2
  76. package/api/@xmachines/play-signals/interfaces/SignalOptions.md +2 -2
  77. package/api/@xmachines/play-signals/interfaces/SignalState.md +3 -3
  78. package/api/@xmachines/play-signals/interfaces/SignalWatcher.md +4 -4
  79. package/api/@xmachines/play-signals/namespaces/Signal/classes/Computed.md +3 -9
  80. package/api/@xmachines/play-signals/namespaces/Signal/classes/State.md +3 -11
  81. package/api/@xmachines/play-signals/namespaces/Signal/interfaces/Options.md +5 -7
  82. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/classes/Watcher.md +3 -13
  83. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/currentComputed.md +0 -2
  84. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSinks.md +0 -2
  85. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/hasSources.md +0 -2
  86. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSinks.md +0 -2
  87. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/introspectSources.md +0 -2
  88. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/functions/untrack.md +0 -2
  89. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/unwatched.md +0 -2
  90. package/api/@xmachines/play-signals/namespaces/Signal/namespaces/subtle/variables/watched.md +0 -2
  91. package/api/@xmachines/play-signals/namespaces/Signal/variables/isComputed.md +0 -2
  92. package/api/@xmachines/play-signals/namespaces/Signal/variables/isState.md +0 -2
  93. package/api/@xmachines/play-signals/namespaces/Signal/variables/isWatcher.md +0 -2
  94. package/api/@xmachines/play-signals/type-aliases/WatcherNotify.md +1 -1
  95. package/api/@xmachines/play-solid/README.md +193 -219
  96. package/api/@xmachines/play-solid/functions/defineRegistry.md +47 -0
  97. package/api/@xmachines/play-solid/functions/useActor.md +13 -0
  98. package/api/@xmachines/play-solid/functions/useStateBinding.md +23 -0
  99. package/api/@xmachines/play-solid/interfaces/ComponentContext.md +35 -0
  100. package/api/@xmachines/play-solid/interfaces/PlayRendererProps.md +15 -7
  101. package/api/@xmachines/play-solid/type-aliases/ComponentFn.md +34 -0
  102. package/api/@xmachines/play-solid/type-aliases/PlayActor.md +9 -0
  103. package/api/@xmachines/play-solid/variables/PlayRenderer.md +15 -43
  104. package/api/@xmachines/play-solid-router/README.md +2 -0
  105. package/api/@xmachines/play-solid-router/classes/RouteMap.md +6 -6
  106. package/api/@xmachines/play-solid-router/classes/SolidRouterBridge.md +37 -37
  107. package/api/@xmachines/play-solid-router/functions/PlayRouterProvider.md +11 -5
  108. package/api/@xmachines/play-solid-router/functions/createRouteMap.md +1 -1
  109. package/api/@xmachines/play-solid-router/interfaces/AbstractActor.md +65 -51
  110. package/api/@xmachines/play-solid-router/interfaces/PlayRouterProviderProps.md +14 -8
  111. package/api/@xmachines/play-solid-router/interfaces/RouteMapping.md +3 -3
  112. package/api/@xmachines/play-solid-router/type-aliases/RoutableActor.md +3 -1
  113. package/api/@xmachines/play-solid-router/type-aliases/SolidRouterHooks.md +4 -4
  114. package/api/@xmachines/play-tanstack-react-router/README.md +1 -5
  115. package/api/@xmachines/play-tanstack-react-router/classes/RouteMap.md +5 -5
  116. package/api/@xmachines/play-tanstack-react-router/classes/TanStackReactRouterBridge.md +45 -33
  117. package/api/@xmachines/play-tanstack-react-router/functions/PlayRouterProvider.md +11 -5
  118. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMap.md +2 -2
  119. package/api/@xmachines/play-tanstack-react-router/functions/createRouteMapFromTree.md +1 -1
  120. package/api/@xmachines/play-tanstack-react-router/functions/extractParams.md +1 -1
  121. package/api/@xmachines/play-tanstack-react-router/functions/extractQueryParams.md +1 -1
  122. package/api/@xmachines/play-tanstack-react-router/interfaces/PlayRouterProviderProps.md +14 -8
  123. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteMapping.md +3 -3
  124. package/api/@xmachines/play-tanstack-react-router/interfaces/RouteNavigateEvent.md +3 -3
  125. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterInstance.md +1 -1
  126. package/api/@xmachines/play-tanstack-react-router/type-aliases/TanStackRouterLike.md +24 -4
  127. package/api/@xmachines/play-tanstack-solid-router/classes/RouteMap.md +6 -6
  128. package/api/@xmachines/play-tanstack-solid-router/classes/SolidRouterBridge.md +33 -33
  129. package/api/@xmachines/play-tanstack-solid-router/functions/PlayRouterProvider.md +11 -5
  130. package/api/@xmachines/play-tanstack-solid-router/functions/createRouteMap.md +1 -1
  131. package/api/@xmachines/play-tanstack-solid-router/interfaces/PlayRouterProviderProps.md +14 -8
  132. package/api/@xmachines/play-tanstack-solid-router/interfaces/RouteMapping.md +3 -3
  133. package/api/@xmachines/play-tanstack-solid-router/type-aliases/RoutableActor.md +3 -1
  134. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterInstance.md +1 -1
  135. package/api/@xmachines/play-tanstack-solid-router/type-aliases/TanStackRouterLike.md +4 -4
  136. package/api/@xmachines/play-vue/README.md +216 -209
  137. package/api/@xmachines/play-vue/functions/defineRegistry.md +32 -0
  138. package/api/@xmachines/play-vue/functions/useActor.md +13 -0
  139. package/api/@xmachines/play-vue/functions/useStateBinding.md +30 -0
  140. package/api/@xmachines/play-vue/interfaces/ComponentContext.md +35 -0
  141. package/api/@xmachines/play-vue/interfaces/PlayRendererProps.md +14 -6
  142. package/api/@xmachines/play-vue/type-aliases/ComponentFn.md +33 -0
  143. package/api/@xmachines/play-vue/type-aliases/PlayActor.md +9 -0
  144. package/api/@xmachines/play-vue/variables/PlayRenderer.md +1 -1
  145. package/api/@xmachines/play-vue-router/README.md +21 -0
  146. package/api/@xmachines/play-vue-router/classes/RouteMap.md +7 -7
  147. package/api/@xmachines/play-vue-router/classes/VueBaseRouteMap.md +7 -7
  148. package/api/@xmachines/play-vue-router/classes/VueRouterBridge.md +46 -49
  149. package/api/@xmachines/play-vue-router/functions/createRouteMap.md +1 -1
  150. package/api/@xmachines/play-vue-router/interfaces/RouteMapping.md +4 -4
  151. package/api/@xmachines/play-vue-router/type-aliases/RoutableActor.md +3 -1
  152. package/api/@xmachines/play-vue-router/variables/PlayRouterProvider.md +7 -1
  153. package/api/@xmachines/play-xstate/README.md +250 -107
  154. package/api/@xmachines/play-xstate/classes/PlayerActor.md +77 -55
  155. package/api/@xmachines/play-xstate/functions/buildRouteUrl.md +24 -18
  156. package/api/@xmachines/play-xstate/functions/composeGuards.md +1 -1
  157. package/api/@xmachines/play-xstate/functions/composeGuardsOr.md +1 -1
  158. package/api/@xmachines/play-xstate/functions/definePlayer.md +12 -61
  159. package/api/@xmachines/play-xstate/functions/deriveRoute.md +1 -1
  160. package/api/@xmachines/play-xstate/functions/eventMatches.md +1 -1
  161. package/api/@xmachines/play-xstate/functions/formatPlayRouteTransitions.md +1 -1
  162. package/api/@xmachines/play-xstate/functions/hasContext.md +1 -1
  163. package/api/@xmachines/play-xstate/functions/isAbsoluteRoute.md +1 -1
  164. package/api/@xmachines/play-xstate/functions/negateGuard.md +1 -1
  165. package/api/@xmachines/play-xstate/functions/stateMatches.md +1 -1
  166. package/api/@xmachines/play-xstate/interfaces/PlayerConfig.md +9 -13
  167. package/api/@xmachines/play-xstate/interfaces/PlayerFactoryResumeOptions.md +22 -0
  168. package/api/@xmachines/play-xstate/interfaces/PlayerOptions.md +8 -9
  169. package/api/@xmachines/play-xstate/interfaces/RouteContext.md +5 -5
  170. package/api/@xmachines/play-xstate/type-aliases/ComposedGuard.md +1 -1
  171. package/api/@xmachines/play-xstate/type-aliases/Guard.md +1 -1
  172. package/api/@xmachines/play-xstate/type-aliases/GuardArray.md +1 -1
  173. package/api/@xmachines/play-xstate/type-aliases/PlayerFactory.md +6 -5
  174. package/api/@xmachines/play-xstate/type-aliases/RouteMachineConfig.md +14 -4
  175. package/api/@xmachines/play-xstate/type-aliases/RouteStateNode.md +19 -4
  176. package/api/@xmachines/shared/functions/defineXmVitestConfig.md +2 -2
  177. package/api/@xmachines/shared/functions/xmAliases.md +1 -1
  178. package/api/README.md +1 -1
  179. package/api/llms.txt +11 -5
  180. package/examples/README.md +20 -6
  181. package/examples/multi-router-integration.md +33 -24
  182. package/examples/routing-patterns.md +2 -3
  183. package/package.json +3 -3
  184. package/api/@xmachines/play-catalog/README.md +0 -331
  185. package/api/@xmachines/play-catalog/functions/defineCatalog.md +0 -98
  186. package/api/@xmachines/play-catalog/functions/defineComponents.md +0 -134
  187. package/api/@xmachines/play-catalog/type-aliases/Catalog.md +0 -48
  188. package/api/@xmachines/play-catalog/type-aliases/ComponentsFor.md +0 -20
  189. package/api/@xmachines/play-catalog/type-aliases/InferComponentProps.md +0 -65
  190. package/api/@xmachines/play-catalog/type-aliases/NoExtraKeys.md +0 -17
  191. package/api/@xmachines/play-xstate/functions/mergeViewProps.md +0 -26
  192. package/api/@xmachines/play-xstate/functions/validateComponentBinding.md +0 -39
  193. package/api/@xmachines/play-xstate/functions/validateViewProps.md +0 -80
  194. package/api/@xmachines/play-xstate/interfaces/CatalogEntry.md +0 -16
  195. package/api/@xmachines/play-xstate/type-aliases/Catalog.md +0 -21
  196. package/api/@xmachines/play-xstate/type-aliases/ValidationResult.md +0 -17
  197. package/api/@xmachines/play-xstate/type-aliases/ViewMergeContext.md +0 -35
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Abstract Class: RouterBridgeBase
4
4
 
5
- Defined in: [router-bridge-base.ts:56](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L56)
5
+ Defined in: [router-bridge-base.ts:82](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L82)
6
6
 
7
7
  Abstract base class for all `@xmachines` router adapter bridges.
8
8
 
@@ -30,18 +30,16 @@ between frameworks.
30
30
  new RouterBridgeBase(actor, routeMap): RouterBridgeBase;
31
31
  ```
32
32
 
33
- Defined in: [router-bridge-base.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L70)
34
-
35
- Constructor receives the 3 things all bridges need.
33
+ Defined in: [router-bridge-base.ts:96](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L96)
36
34
 
37
35
  #### Parameters
38
36
 
39
- | Parameter | Type | Description |
40
- | --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
41
- | `actor` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | Actor with currentRoute signal and send method |
42
- | `routeMap` | \{ `getPathByStateId`: `string` \| `null` \| `undefined`; `getStateIdByPath`: `string` \| `null` \| `undefined`; \} | Bidirectional route map for stateId ↔ path resolution |
43
- | `routeMap.getPathByStateId` | - |
44
- | `routeMap.getStateIdByPath` | - |
37
+ | Parameter | Type | Description |
38
+ | --------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
39
+ | `actor` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | A `Routable` actor exposing `currentRoute` and `send`. |
40
+ | `routeMap` | \{ `getPathByStateId`: `string` \| `null` \| `undefined`; `getStateIdByPath`: `string` \| `null` \| `undefined`; \} | Bidirectional route map for `stateId ↔ path` resolution. Provide `getStateIdByPath` and `getPathByStateId`. Framework adapters typically wrap the result of `createRouteMap()` or an equivalent. |
41
+ | `routeMap.getPathByStateId` | - |
42
+ | `routeMap.getStateIdByPath` | - |
45
43
 
46
44
  #### Returns
47
45
 
@@ -49,17 +47,17 @@ Constructor receives the 3 things all bridges need.
49
47
 
50
48
  ## Properties
51
49
 
52
- | Property | Modifier | Type | Default value | Description | Defined in |
53
- | --------------------------------------------------------------------- | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
54
- | <a id="property-actor"></a> `actor` | `readonly` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | `undefined` | Actor with currentRoute signal and send method | [router-bridge-base.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L71) |
55
- | <a id="property-hasconnectedonce"></a> `hasConnectedOnce` | `protected` | `boolean` | `false` | - | [router-bridge-base.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L59) |
56
- | <a id="property-isconnected"></a> `isConnected` | `protected` | `boolean` | `false` | - | [router-bridge-base.ts:58](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L58) |
57
- | <a id="property-isprocessingnavigation"></a> `isProcessingNavigation` | `protected` | `boolean` | `false` | - | [router-bridge-base.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L61) |
58
- | <a id="property-lastsyncedpath"></a> `lastSyncedPath` | `protected` | `string` | `""` | - | [router-bridge-base.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L60) |
59
- | <a id="property-routemap"></a> `routeMap` | `readonly` | `object` | `undefined` | Bidirectional route map for stateId ↔ path resolution | [router-bridge-base.ts:72](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L72) |
60
- | `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | [router-bridge-base.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L74) |
61
- | `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | [router-bridge-base.ts:73](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L73) |
62
- | <a id="property-routewatcher"></a> `routeWatcher` | `protected` | \| [`Watcher`](../../play-signals/namespaces/Signal/namespaces/subtle/classes/Watcher.md) \| `null` | `null` | - | [router-bridge-base.ts:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L62) |
50
+ | Property | Modifier | Type | Default value | Description | Defined in |
51
+ | --------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
52
+ | <a id="property-actor"></a> `actor` | `readonly` | [`AbstractActor`](../../play-actor/classes/AbstractActor.md)\<[`AnyActorLogic`](https://www.jsdocs.io/package/xstate#AnyActorLogic), [`EventObject`](https://www.jsdocs.io/package/xstate#EventObject)\> & [`Routable`](../../play-actor/interfaces/Routable.md) | `undefined` | A `Routable` actor exposing `currentRoute` and `send`. | [router-bridge-base.ts:97](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L97) |
53
+ | <a id="property-hasconnectedonce"></a> `hasConnectedOnce` | `protected` | `boolean` | `false` | - | [router-bridge-base.ts:85](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L85) |
54
+ | <a id="property-isconnected"></a> `isConnected` | `protected` | `boolean` | `false` | - | [router-bridge-base.ts:84](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L84) |
55
+ | <a id="property-isprocessingnavigation"></a> `isProcessingNavigation` | `protected` | `boolean` | `false` | - | [router-bridge-base.ts:87](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L87) |
56
+ | <a id="property-lastsyncedpath"></a> `lastSyncedPath` | `protected` | `string` \| `null` | `null` | - | [router-bridge-base.ts:86](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L86) |
57
+ | <a id="property-routemap"></a> `routeMap` | `readonly` | `object` | `undefined` | Bidirectional route map for `stateId ↔ path` resolution. Provide `getStateIdByPath` and `getPathByStateId`. Framework adapters typically wrap the result of `createRouteMap()` or an equivalent. | [router-bridge-base.ts:98](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L98) |
58
+ | `routeMap.getPathByStateId` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | [router-bridge-base.ts:100](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L100) |
59
+ | `routeMap.getStateIdByPath` | `public` | `string` \| `null` \| `undefined` | `undefined` | - | [router-bridge-base.ts:99](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L99) |
60
+ | <a id="property-routewatcher"></a> `routeWatcher` | `protected` | [`RouteWatcherHandle`](../interfaces/RouteWatcherHandle.md) \| `null` | `null` | - | [router-bridge-base.ts:88](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L88) |
63
61
 
64
62
  ## Methods
65
63
 
@@ -69,7 +67,7 @@ Constructor receives the 3 things all bridges need.
69
67
  connect(): void;
70
68
  ```
71
69
 
72
- Defined in: [router-bridge-base.ts:90](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L90)
70
+ Defined in: [router-bridge-base.ts:116](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L116)
73
71
 
74
72
  Connect the router bridge to the Actor.
75
73
 
@@ -92,7 +90,7 @@ starts watching router changes (framework-specific).
92
90
  disconnect(): void;
93
91
  ```
94
92
 
95
- Defined in: [router-bridge-base.ts:140](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L140)
93
+ Defined in: [router-bridge-base.ts:184](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L184)
96
94
 
97
95
  Disconnect the router bridge from the Actor.
98
96
 
@@ -114,7 +112,7 @@ Stops signal watching and unregisters framework-specific router listener.
114
112
  protected extractParams(pathname, stateId): Record<string, string>;
115
113
  ```
116
114
 
117
- Defined in: [router-bridge-base.ts:276](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L276)
115
+ Defined in: [router-bridge-base.ts:283](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L283)
118
116
 
119
117
  Extract path parameters from URL using the URLPattern API.
120
118
 
@@ -125,10 +123,10 @@ works, params will be empty).
125
123
 
126
124
  #### Parameters
127
125
 
128
- | Parameter | Type | Description |
129
- | ---------- | -------- | ------------------------------------------------- |
130
- | `pathname` | `string` | The actual URL path (e.g., '/profile/john') |
131
- | `stateId` | `string` | The matched state ID for looking up route pattern |
126
+ | Parameter | Type | Description |
127
+ | ---------- | -------- | ----------------------------------------------------- |
128
+ | `pathname` | `string` | The actual URL path (e.g., '/profile/john') |
129
+ | `stateId` | `string` | The matched state ID for looking up the route pattern |
132
130
 
133
131
  #### Returns
134
132
 
@@ -144,7 +142,7 @@ Extracted path parameters, or empty object if URLPattern is unavailable or no ma
144
142
  protected extractQuery(search): Record<string, string>;
145
143
  ```
146
144
 
147
- Defined in: [router-bridge-base.ts:303](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L303)
145
+ Defined in: [router-bridge-base.ts:310](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L310)
148
146
 
149
147
  Extract query parameters from URL search string.
150
148
 
@@ -165,12 +163,12 @@ Extracted query parameters or empty object
165
163
  ### getInitialRouterPath()
166
164
 
167
165
  ```ts
168
- protected getInitialRouterPath(): string | null;
166
+ protected getInitialRouterPath(): string | null | undefined;
169
167
  ```
170
168
 
171
- Defined in: [router-bridge-base.ts:353](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L353)
169
+ Defined in: [router-bridge-base.ts:357](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L357)
172
170
 
173
- Return the router's current pathname at connect() time, or null if unavailable.
171
+ Return the router's current pathname at connect() time.
174
172
 
175
173
  Called once during connect() to perform the initial URL → actor sync.
176
174
  router.subscribe() only fires on _future_ navigation events; it does not
@@ -179,12 +177,18 @@ current location synchronously (e.g. `router.state.location.pathname`)
179
177
  should override this method so that deep-link / direct-URL loads drive the
180
178
  actor to the correct state instead of leaving it at its machine default.
181
179
 
182
- The default returns null (no initial router → actor sync), preserving the
183
- previous behaviour for bridges that have not yet implemented this hook.
180
+ Return semantics:
181
+
182
+ - `string` → router has a current path; base connect() will sync actor from router
183
+ - `null` → router is active but has no current path yet; base connect() will sync router from actor
184
+ - `undefined` → adapter handles initial sync itself and base connect() should stay out of the way
185
+
186
+ The default returns `undefined`, preserving the previous behaviour for
187
+ bridges that have not yet implemented this hook.
184
188
 
185
189
  #### Returns
186
190
 
187
- `string` \| `null`
191
+ `string` \| `null` \| `undefined`
188
192
 
189
193
  ---
190
194
 
@@ -194,7 +198,7 @@ previous behaviour for bridges that have not yet implemented this hook.
194
198
  abstract protected navigateRouter(path): void;
195
199
  ```
196
200
 
197
- Defined in: [router-bridge-base.ts:323](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L323)
201
+ Defined in: [router-bridge-base.ts:322](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L322)
198
202
 
199
203
  Navigate the framework router to the given path.
200
204
 
@@ -219,7 +223,7 @@ Must trigger the framework router's navigation (e.g., router.navigate(path)).
219
223
  protected syncActorFromRouter(pathname, search?): void;
220
224
  ```
221
225
 
222
- Defined in: [router-bridge-base.ts:187](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L187)
226
+ Defined in: [router-bridge-base.ts:231](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L231)
223
227
 
224
228
  Sync actor state when router location changes.
225
229
 
@@ -245,7 +249,7 @@ Prevents circular updates via isProcessingNavigation flag.
245
249
  protected syncRouterFromActor(route): void;
246
250
  ```
247
251
 
248
- Defined in: [router-bridge-base.ts:167](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L167)
252
+ Defined in: [router-bridge-base.ts:211](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L211)
249
253
 
250
254
  Sync router location when actor route signal changes.
251
255
 
@@ -270,7 +274,7 @@ Prevents circular updates via isProcessingNavigation flag.
270
274
  abstract protected unwatchRouterChanges(): void;
271
275
  ```
272
276
 
273
- Defined in: [router-bridge-base.ts:338](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L338)
277
+ Defined in: [router-bridge-base.ts:337](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L337)
274
278
 
275
279
  Stop watching for router location changes.
276
280
 
@@ -288,7 +292,7 @@ Called by disconnect(). Should clean up the framework-specific subscription.
288
292
  abstract protected watchRouterChanges(): void;
289
293
  ```
290
294
 
291
- Defined in: [router-bridge-base.ts:331](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/router-bridge-base.ts#L331)
295
+ Defined in: [router-bridge-base.ts:330](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/router-bridge-base.ts#L330)
292
296
 
293
297
  Start watching for router location changes.
294
298
 
@@ -6,7 +6,7 @@
6
6
  function buildRouteTree(routes): RouteTree;
7
7
  ```
8
8
 
9
- Defined in: [build-tree.ts:13](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/build-tree.ts#L13)
9
+ Defined in: [build-tree.ts:13](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/build-tree.ts#L13)
10
10
 
11
11
  Build hierarchical route tree from flat route list
12
12
 
@@ -6,7 +6,7 @@
6
6
  function connectRouter(options): () => void;
7
7
  ```
8
8
 
9
- Defined in: [connect-router.ts:58](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/connect-router.ts#L58)
9
+ Defined in: [connect-router.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/connect-router.ts#L59)
10
10
 
11
11
  Connect vanilla router to actor (pure browser integration).
12
12
 
@@ -6,7 +6,7 @@
6
6
  function crawlMachine(machine): StateVisit[];
7
7
  ```
8
8
 
9
- Defined in: [crawl-machine.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/crawl-machine.ts#L74)
9
+ Defined in: [crawl-machine.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/crawl-machine.ts#L74)
10
10
 
11
11
  Crawl state machine graph using breadth-first traversal
12
12
 
@@ -6,7 +6,7 @@
6
6
  function createBrowserHistory(options): BrowserHistory;
7
7
  ```
8
8
 
9
- Defined in: [create-browser-history.ts:99](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L99)
9
+ Defined in: [create-browser-history.ts:115](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L115)
10
10
 
11
11
  Create browser history that wraps window.history
12
12
 
@@ -35,6 +35,9 @@ unsubscribe();
35
35
  history.destroy();
36
36
  ```
37
37
 
38
+ `destroy()` is idempotent and cooperates with other wrappers created for the
39
+ same `window` instance.
40
+
38
41
  ## Parameters
39
42
 
40
43
  | Parameter | Type |
@@ -6,7 +6,7 @@
6
6
  function createRouteMap(routeTree): RouteMap;
7
7
  ```
8
8
 
9
- Defined in: [create-route-map.ts:120](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-route-map.ts#L120)
9
+ Defined in: [create-route-map.ts:121](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-route-map.ts#L121)
10
10
 
11
11
  Create a RouteMap from a RouteTree for efficient path lookups.
12
12
 
@@ -27,8 +27,8 @@ before calling this function:
27
27
  import "urlpattern-polyfill"; // before importing @xmachines/play-router
28
28
  ```
29
29
 
30
- If `URLPattern` is unavailable, parameterized routes will not match and a
31
- `console.warn` is emitted. Static (exact) routes are unaffected.
30
+ If `URLPattern` is unavailable, a `URLPatternUnavailableError` is thrown.
31
+ Static (exact) routes are unaffected by URLPattern availability.
32
32
 
33
33
  Usage:
34
34
 
@@ -6,7 +6,7 @@
6
6
  function createRouter(options): VanillaRouter;
7
7
  ```
8
8
 
9
- Defined in: [create-router.ts:73](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-router.ts#L73)
9
+ Defined in: [create-router.ts:73](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-router.ts#L73)
10
10
 
11
11
  Create vanilla router for framework-agnostic routing.
12
12
 
@@ -6,7 +6,7 @@
6
6
  function detectDuplicateRoutes(routes): void;
7
7
  ```
8
8
 
9
- Defined in: [validate-routes.ts:51](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/validate-routes.ts#L51)
9
+ Defined in: [validate-routes.ts:51](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/validate-routes.ts#L51)
10
10
 
11
11
  Detect duplicate route paths
12
12
 
@@ -6,7 +6,7 @@
6
6
  function extractMachineRoutes(machine): RouteTree;
7
7
  ```
8
8
 
9
- Defined in: [extract-routes.ts:45](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/extract-routes.ts#L45)
9
+ Defined in: [extract-routes.ts:45](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/extract-routes.ts#L45)
10
10
 
11
11
  Extract complete route tree from state machine graph
12
12
 
@@ -6,7 +6,7 @@
6
6
  function extractRoute(node, path, stateMap): RouteInfo | null;
7
7
  ```
8
8
 
9
- Defined in: [extract-route.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/extract-route.ts#L26)
9
+ Defined in: [extract-route.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/extract-route.ts#L26)
10
10
 
11
11
  Extract route information from state node with validation
12
12
 
@@ -6,7 +6,7 @@
6
6
  function findRouteById(tree, id): RouteNode | undefined;
7
7
  ```
8
8
 
9
- Defined in: [index.ts:69](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/index.ts#L69)
9
+ Defined in: [index.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/index.ts#L70)
10
10
 
11
11
  Find route node by state ID
12
12
 
@@ -6,7 +6,7 @@
6
6
  function findRouteByPath(tree, path): RouteNode | undefined;
7
7
  ```
8
8
 
9
- Defined in: [index.ts:161](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/index.ts#L161)
9
+ Defined in: [index.ts:162](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/index.ts#L162)
10
10
 
11
11
  Find route node by URL path
12
12
 
@@ -6,7 +6,7 @@
6
6
  function getNavigableRoutes(tree, stateId): RouteNode[];
7
7
  ```
8
8
 
9
- Defined in: [query.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/query.ts#L20)
9
+ Defined in: [query.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/query.ts#L20)
10
10
 
11
11
  Get all routes navigable from given state
12
12
 
@@ -6,7 +6,7 @@
6
6
  function getRoutableRoutes(tree): RouteNode[];
7
7
  ```
8
8
 
9
- Defined in: [query.ts:50](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/query.ts#L50)
9
+ Defined in: [query.ts:50](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/query.ts#L50)
10
10
 
11
11
  Get all routable routes from tree as flat array
12
12
 
@@ -6,7 +6,7 @@
6
6
  function routeExists(tree, path): boolean;
7
7
  ```
8
8
 
9
- Defined in: [query.ts:72](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/query.ts#L72)
9
+ Defined in: [query.ts:72](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/query.ts#L72)
10
10
 
11
11
  Validate route path exists in tree
12
12
 
@@ -6,7 +6,7 @@
6
6
  function validateRouteFormat(routePath, stateId): void;
7
7
  ```
8
8
 
9
- Defined in: [validate-routes.ts:14](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/validate-routes.ts#L14)
9
+ Defined in: [validate-routes.ts:14](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/validate-routes.ts#L14)
10
10
 
11
11
  Validate route path format
12
12
 
@@ -6,7 +6,7 @@
6
6
  function validateStateExists(stateId, stateMap): void;
7
7
  ```
8
8
 
9
- Defined in: [validate-routes.ts:32](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/validate-routes.ts#L32)
9
+ Defined in: [validate-routes.ts:32](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/validate-routes.ts#L32)
10
10
 
11
11
  Validate state exists in state map
12
12
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: BaseRouteMapping
4
4
 
5
- Defined in: [base-route-map.ts:28](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/base-route-map.ts#L28)
5
+ Defined in: [base-route-map.ts:64](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/base-route-map.ts#L64)
6
6
 
7
7
  A single state ID ↔ path mapping entry.
8
8
 
@@ -23,5 +23,5 @@ const optionalMapping: BaseRouteMapping = { stateId: "settings", path: "/setting
23
23
 
24
24
  | Property | Modifier | Type | Description | Defined in |
25
25
  | --------------------------------------- | ---------- | -------- | ----------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
26
- | <a id="property-path"></a> `path` | `readonly` | `string` | URL path pattern (e.g., `"/"`, `"/profile/:userId"`, `"/settings/:section?"`) | [base-route-map.ts:32](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/base-route-map.ts#L32) |
27
- | <a id="property-stateid"></a> `stateId` | `readonly` | `string` | State machine state ID (e.g., `"home"`, `"#profile"`) | [base-route-map.ts:30](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/base-route-map.ts#L30) |
26
+ | <a id="property-path"></a> `path` | `readonly` | `string` | URL path pattern (e.g., `"/"`, `"/profile/:userId"`, `"/settings/:section?"`) | [base-route-map.ts:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/base-route-map.ts#L68) |
27
+ | <a id="property-stateid"></a> `stateId` | `readonly` | `string` | State machine state ID (e.g., `"home"`, `"#profile"`) | [base-route-map.ts:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/base-route-map.ts#L66) |
@@ -2,17 +2,17 @@
2
2
 
3
3
  # Interface: BrowserHistory
4
4
 
5
- Defined in: [create-browser-history.ts:1](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L1)
5
+ Defined in: [create-browser-history.ts:1](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L1)
6
6
 
7
7
  ## Properties
8
8
 
9
9
  | Property | Modifier | Type | Description | Defined in |
10
10
  | ----------------------------------------- | ---------- | --------- | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
11
- | <a id="property-location"></a> `location` | `readonly` | `object` | Get current location state | [create-browser-history.ts:5](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L5) |
12
- | `location.hash` | `public` | `string` | - | [create-browser-history.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L8) |
13
- | `location.pathname` | `public` | `string` | - | [create-browser-history.ts:6](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L6) |
14
- | `location.search` | `public` | `string` | - | [create-browser-history.ts:7](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L7) |
15
- | `location.state` | `public` | `unknown` | - | [create-browser-history.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L9) |
11
+ | <a id="property-location"></a> `location` | `readonly` | `object` | Get current location state | [create-browser-history.ts:5](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L5) |
12
+ | `location.hash` | `public` | `string` | - | [create-browser-history.ts:8](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L8) |
13
+ | `location.pathname` | `public` | `string` | - | [create-browser-history.ts:6](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L6) |
14
+ | `location.search` | `public` | `string` | - | [create-browser-history.ts:7](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L7) |
15
+ | `location.state` | `public` | `unknown` | - | [create-browser-history.ts:9](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L9) |
16
16
 
17
17
  ## Methods
18
18
 
@@ -22,7 +22,7 @@ Defined in: [create-browser-history.ts:1](https://gitlab.com/xmachin-es/xmachine
22
22
  back(): void;
23
23
  ```
24
24
 
25
- Defined in: [create-browser-history.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L26)
25
+ Defined in: [create-browser-history.ts:26](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L26)
26
26
 
27
27
  #### Returns
28
28
 
@@ -36,7 +36,7 @@ Defined in: [create-browser-history.ts:26](https://gitlab.com/xmachin-es/xmachin
36
36
  createHref(path): string;
37
37
  ```
38
38
 
39
- Defined in: [create-browser-history.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L38)
39
+ Defined in: [create-browser-history.ts:38](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L38)
40
40
 
41
41
  Create href from path
42
42
 
@@ -58,9 +58,13 @@ Create href from path
58
58
  destroy(): void;
59
59
  ```
60
60
 
61
- Defined in: [create-browser-history.ts:43](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L43)
61
+ Defined in: [create-browser-history.ts:47](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L47)
62
62
 
63
- Cleanup
63
+ Cleanup.
64
+
65
+ Safe to call more than once. When multiple wrappers share the same
66
+ `window.history`, the original methods are restored only after the last
67
+ wrapper is destroyed.
64
68
 
65
69
  #### Returns
66
70
 
@@ -74,7 +78,7 @@ Cleanup
74
78
  forward(): void;
75
79
  ```
76
80
 
77
- Defined in: [create-browser-history.ts:27](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L27)
81
+ Defined in: [create-browser-history.ts:27](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L27)
78
82
 
79
83
  #### Returns
80
84
 
@@ -88,7 +92,7 @@ Defined in: [create-browser-history.ts:27](https://gitlab.com/xmachin-es/xmachin
88
92
  go(delta): void;
89
93
  ```
90
94
 
91
- Defined in: [create-browser-history.ts:25](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L25)
95
+ Defined in: [create-browser-history.ts:25](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L25)
92
96
 
93
97
  Go back/forward
94
98
 
@@ -110,7 +114,7 @@ Go back/forward
110
114
  push(path, state?): void;
111
115
  ```
112
116
 
113
- Defined in: [create-browser-history.ts:15](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L15)
117
+ Defined in: [create-browser-history.ts:15](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L15)
114
118
 
115
119
  Push new URL to history
116
120
 
@@ -133,7 +137,7 @@ Push new URL to history
133
137
  replace(path, state?): void;
134
138
  ```
135
139
 
136
- Defined in: [create-browser-history.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L20)
140
+ Defined in: [create-browser-history.ts:20](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L20)
137
141
 
138
142
  Replace current URL in history
139
143
 
@@ -156,7 +160,7 @@ Replace current URL in history
156
160
  subscribe(listener): () => void;
157
161
  ```
158
162
 
159
- Defined in: [create-browser-history.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L33)
163
+ Defined in: [create-browser-history.ts:33](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L33)
160
164
 
161
165
  Subscribe to history changes
162
166
  Returns unsubscribe function
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Interface: BrowserWindow
4
4
 
5
- Defined in: [create-browser-history.ts:55](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L55)
5
+ Defined in: [create-browser-history.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L59)
6
6
 
7
7
  Minimal window interface for createBrowserHistory
8
8
 
@@ -14,17 +14,17 @@ Avoids coupling to `Window & typeof globalThis` which varies across environments
14
14
 
15
15
  | Property | Modifier | Type | Defined in |
16
16
  | ----------------------------------------- | ---------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
17
- | <a id="property-history"></a> `history` | `public` | `object` | [create-browser-history.ts:56](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L56) |
18
- | `history.state` | `readonly` | `unknown` | [create-browser-history.ts:57](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L57) |
19
- | `history.back` | `public` | `void` | [create-browser-history.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L61) |
20
- | `history.forward` | `public` | `void` | [create-browser-history.ts:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L62) |
21
- | `history.go` | `public` | `void` | [create-browser-history.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L60) |
22
- | `history.pushState` | `public` | `void` | [create-browser-history.ts:58](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L58) |
23
- | `history.replaceState` | `public` | `void` | [create-browser-history.ts:59](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L59) |
24
- | <a id="property-location"></a> `location` | `public` | `object` | [create-browser-history.ts:64](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L64) |
25
- | `location.hash` | `readonly` | `string` | [create-browser-history.ts:67](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L67) |
26
- | `location.pathname` | `readonly` | `string` | [create-browser-history.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L65) |
27
- | `location.search` | `readonly` | `string` | [create-browser-history.ts:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L66) |
17
+ | <a id="property-history"></a> `history` | `public` | `object` | [create-browser-history.ts:60](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L60) |
18
+ | `history.state` | `readonly` | `unknown` | [create-browser-history.ts:61](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L61) |
19
+ | `history.back` | `public` | `void` | [create-browser-history.ts:65](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L65) |
20
+ | `history.forward` | `public` | `void` | [create-browser-history.ts:66](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L66) |
21
+ | `history.go` | `public` | `void` | [create-browser-history.ts:64](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L64) |
22
+ | `history.pushState` | `public` | `void` | [create-browser-history.ts:62](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L62) |
23
+ | `history.replaceState` | `public` | `void` | [create-browser-history.ts:63](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L63) |
24
+ | <a id="property-location"></a> `location` | `public` | `object` | [create-browser-history.ts:68](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L68) |
25
+ | `location.hash` | `readonly` | `string` | [create-browser-history.ts:71](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L71) |
26
+ | `location.pathname` | `readonly` | `string` | [create-browser-history.ts:69](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L69) |
27
+ | `location.search` | `readonly` | `string` | [create-browser-history.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L70) |
28
28
 
29
29
  ## Methods
30
30
 
@@ -34,7 +34,7 @@ Avoids coupling to `Window & typeof globalThis` which varies across environments
34
34
  addEventListener(type, listener): void;
35
35
  ```
36
36
 
37
- Defined in: [create-browser-history.ts:69](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L69)
37
+ Defined in: [create-browser-history.ts:73](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L73)
38
38
 
39
39
  #### Parameters
40
40
 
@@ -55,7 +55,7 @@ Defined in: [create-browser-history.ts:69](https://gitlab.com/xmachin-es/xmachin
55
55
  removeEventListener(type, listener): void;
56
56
  ```
57
57
 
58
- Defined in: [create-browser-history.ts:70](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.15/packages/play-router/src/create-browser-history.ts#L70)
58
+ Defined in: [create-browser-history.ts:74](https://gitlab.com/xmachin-es/xmachines-js/-/blob/v1.0.0-beta.17/packages/play-router/src/create-browser-history.ts#L74)
59
59
 
60
60
  #### Parameters
61
61