one 1.1.390 → 1.1.392

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 (294) hide show
  1. package/dist/cjs/Root.cjs +6 -17
  2. package/dist/cjs/Root.js +9 -13
  3. package/dist/cjs/Root.js.map +1 -1
  4. package/dist/cjs/Root.native.js +4 -12
  5. package/dist/cjs/Root.native.js.map +1 -1
  6. package/dist/cjs/cli/build.cjs +2 -3
  7. package/dist/cjs/cli/build.js +2 -3
  8. package/dist/cjs/cli/build.js.map +1 -1
  9. package/dist/cjs/cli/build.native.js +2 -3
  10. package/dist/cjs/cli/build.native.js.map +2 -2
  11. package/dist/cjs/constants.cjs +9 -1
  12. package/dist/cjs/constants.js +7 -1
  13. package/dist/cjs/constants.js.map +1 -1
  14. package/dist/cjs/constants.native.js +9 -1
  15. package/dist/cjs/constants.native.js.map +2 -2
  16. package/dist/cjs/fork/NavigationContainer.cjs +49 -31
  17. package/dist/cjs/fork/NavigationContainer.js +40 -21
  18. package/dist/cjs/fork/NavigationContainer.js.map +2 -2
  19. package/dist/cjs/fork/NavigationContainer.native.js +51 -29
  20. package/dist/cjs/fork/NavigationContainer.native.js.map +2 -2
  21. package/dist/cjs/fork/createMemoryHistory.cjs +4 -3
  22. package/dist/cjs/fork/createMemoryHistory.js +3 -2
  23. package/dist/cjs/fork/createMemoryHistory.js.map +1 -1
  24. package/dist/cjs/fork/createMemoryHistory.native.js +8 -4
  25. package/dist/cjs/fork/createMemoryHistory.native.js.map +2 -2
  26. package/dist/cjs/fork/extractPathFromURL.cjs +48 -28
  27. package/dist/cjs/fork/extractPathFromURL.js +44 -21
  28. package/dist/cjs/fork/extractPathFromURL.js.map +2 -2
  29. package/dist/cjs/fork/extractPathFromURL.native.js +58 -26
  30. package/dist/cjs/fork/extractPathFromURL.native.js.map +2 -2
  31. package/dist/cjs/fork/findFocusedRoute.js.map +1 -1
  32. package/dist/cjs/fork/findFocusedRoute.native.js.map +1 -1
  33. package/dist/cjs/fork/getPathFromState-mods.cjs +65 -0
  34. package/dist/cjs/fork/getPathFromState-mods.js +56 -0
  35. package/dist/cjs/fork/getPathFromState-mods.js.map +6 -0
  36. package/dist/cjs/fork/getPathFromState-mods.native.js +70 -0
  37. package/dist/cjs/fork/getPathFromState-mods.native.js.map +6 -0
  38. package/dist/cjs/fork/getPathFromState.cjs +75 -224
  39. package/dist/cjs/fork/getPathFromState.js +68 -223
  40. package/dist/cjs/fork/getPathFromState.js.map +2 -2
  41. package/dist/cjs/fork/getPathFromState.native.js +79 -261
  42. package/dist/cjs/fork/getPathFromState.native.js.map +2 -2
  43. package/dist/cjs/fork/getStateFromPath-mods.cjs +187 -0
  44. package/dist/cjs/fork/getStateFromPath-mods.js +199 -0
  45. package/dist/cjs/fork/getStateFromPath-mods.js.map +6 -0
  46. package/dist/cjs/fork/getStateFromPath-mods.native.js +284 -0
  47. package/dist/cjs/fork/getStateFromPath-mods.native.js.map +6 -0
  48. package/dist/cjs/fork/getStateFromPath.cjs +181 -263
  49. package/dist/cjs/fork/getStateFromPath.js +148 -264
  50. package/dist/cjs/fork/getStateFromPath.js.map +2 -2
  51. package/dist/cjs/fork/getStateFromPath.native.js +164 -304
  52. package/dist/cjs/fork/getStateFromPath.native.js.map +2 -2
  53. package/dist/cjs/fork/useBackButton.js.map +1 -1
  54. package/dist/cjs/fork/useBackButton.native.js.map +1 -1
  55. package/dist/cjs/fork/useDocumentTitle.js +4 -1
  56. package/dist/cjs/fork/useDocumentTitle.js.map +1 -1
  57. package/dist/cjs/fork/useDocumentTitle.native.js +1 -1
  58. package/dist/cjs/fork/useDocumentTitle.native.js.map +2 -2
  59. package/dist/cjs/fork/useLinking.cjs +21 -24
  60. package/dist/cjs/fork/useLinking.js +21 -25
  61. package/dist/cjs/fork/useLinking.js.map +2 -2
  62. package/dist/cjs/fork/useLinking.native.js +68 -66
  63. package/dist/cjs/fork/useLinking.native.js.map +2 -2
  64. package/dist/cjs/fork/useThenable.js.map +1 -1
  65. package/dist/cjs/fork/useThenable.native.js.map +1 -1
  66. package/dist/cjs/fork/validatePathConfig.cjs +32 -11
  67. package/dist/cjs/fork/validatePathConfig.js +41 -11
  68. package/dist/cjs/fork/validatePathConfig.js.map +1 -1
  69. package/dist/cjs/fork/validatePathConfig.native.js +47 -18
  70. package/dist/cjs/fork/validatePathConfig.native.js.map +2 -2
  71. package/dist/cjs/layouts/withLayoutContext.cjs +1 -1
  72. package/dist/cjs/layouts/withLayoutContext.js +1 -1
  73. package/dist/cjs/layouts/withLayoutContext.js.map +1 -1
  74. package/dist/cjs/layouts/withLayoutContext.native.js +1 -1
  75. package/dist/cjs/layouts/withLayoutContext.native.js.map +1 -1
  76. package/dist/cjs/link/linking.cjs +4 -4
  77. package/dist/cjs/link/linking.js +3 -3
  78. package/dist/cjs/link/linking.js.map +2 -2
  79. package/dist/cjs/link/linking.native.js +3 -3
  80. package/dist/cjs/link/linking.native.js.map +1 -1
  81. package/dist/cjs/link/useLinkTo.cjs +2 -2
  82. package/dist/cjs/link/useLinkTo.js +2 -2
  83. package/dist/cjs/link/useLinkTo.js.map +1 -1
  84. package/dist/cjs/link/useLinkTo.native.js +2 -2
  85. package/dist/cjs/link/useLinkTo.native.js.map +1 -1
  86. package/dist/cjs/router/getNormalizedStatePath.cjs +2 -2
  87. package/dist/cjs/router/getNormalizedStatePath.js +2 -2
  88. package/dist/cjs/router/getNormalizedStatePath.js.map +1 -1
  89. package/dist/cjs/router/getNormalizedStatePath.native.js +2 -2
  90. package/dist/cjs/router/getNormalizedStatePath.native.js.map +1 -1
  91. package/dist/cjs/router/router.cjs +19 -3
  92. package/dist/cjs/router/router.js +25 -3
  93. package/dist/cjs/router/router.js.map +1 -1
  94. package/dist/cjs/router/router.native.js +39 -3
  95. package/dist/cjs/router/router.native.js.map +2 -2
  96. package/dist/cjs/utils/serverContext.cjs +7 -7
  97. package/dist/cjs/utils/serverContext.js +7 -7
  98. package/dist/cjs/utils/serverContext.js.map +1 -1
  99. package/dist/cjs/utils/serverContext.native.js +5 -5
  100. package/dist/cjs/utils/serverContext.native.js.map +2 -2
  101. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.cjs +6 -6
  102. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js +3 -4
  103. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js.map +2 -2
  104. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +3 -4
  105. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +2 -2
  106. package/dist/esm/Root.js +6 -2
  107. package/dist/esm/Root.js.map +1 -1
  108. package/dist/esm/Root.mjs +1 -1
  109. package/dist/esm/Root.mjs.map +1 -1
  110. package/dist/esm/Root.native.js +1 -1
  111. package/dist/esm/Root.native.js.map +2 -2
  112. package/dist/esm/cli/build.js +2 -3
  113. package/dist/esm/cli/build.js.map +1 -1
  114. package/dist/esm/cli/build.mjs +2 -3
  115. package/dist/esm/cli/build.mjs.map +1 -1
  116. package/dist/esm/cli/build.native.js +2 -3
  117. package/dist/esm/cli/build.native.js.map +2 -2
  118. package/dist/esm/constants.js +7 -1
  119. package/dist/esm/constants.js.map +1 -1
  120. package/dist/esm/constants.mjs +8 -2
  121. package/dist/esm/constants.mjs.map +1 -1
  122. package/dist/esm/constants.native.js +7 -1
  123. package/dist/esm/constants.native.js.map +2 -2
  124. package/dist/esm/fork/NavigationContainer.js +43 -20
  125. package/dist/esm/fork/NavigationContainer.js.map +1 -1
  126. package/dist/esm/fork/NavigationContainer.mjs +42 -24
  127. package/dist/esm/fork/NavigationContainer.mjs.map +1 -1
  128. package/dist/esm/fork/NavigationContainer.native.js +44 -24
  129. package/dist/esm/fork/NavigationContainer.native.js.map +2 -2
  130. package/dist/esm/fork/createMemoryHistory.js +3 -2
  131. package/dist/esm/fork/createMemoryHistory.js.map +1 -1
  132. package/dist/esm/fork/createMemoryHistory.mjs +4 -3
  133. package/dist/esm/fork/createMemoryHistory.mjs.map +1 -1
  134. package/dist/esm/fork/createMemoryHistory.native.js +4 -4
  135. package/dist/esm/fork/createMemoryHistory.native.js.map +2 -2
  136. package/dist/esm/fork/extractPathFromURL.js +42 -11
  137. package/dist/esm/fork/extractPathFromURL.js.map +1 -1
  138. package/dist/esm/fork/extractPathFromURL.mjs +39 -11
  139. package/dist/esm/fork/extractPathFromURL.mjs.map +1 -1
  140. package/dist/esm/fork/extractPathFromURL.native.js +52 -15
  141. package/dist/esm/fork/extractPathFromURL.native.js.map +2 -2
  142. package/dist/esm/fork/findFocusedRoute.js.map +1 -1
  143. package/dist/esm/fork/findFocusedRoute.mjs.map +1 -1
  144. package/dist/esm/fork/findFocusedRoute.native.js.map +1 -1
  145. package/dist/esm/fork/getPathFromState-mods.js +40 -0
  146. package/dist/esm/fork/getPathFromState-mods.js.map +6 -0
  147. package/dist/esm/fork/getPathFromState-mods.mjs +40 -0
  148. package/dist/esm/fork/getPathFromState-mods.mjs.map +1 -0
  149. package/dist/esm/fork/getPathFromState-mods.native.js +47 -0
  150. package/dist/esm/fork/getPathFromState-mods.native.js.map +6 -0
  151. package/dist/esm/fork/getPathFromState.js +71 -228
  152. package/dist/esm/fork/getPathFromState.js.map +2 -2
  153. package/dist/esm/fork/getPathFromState.mjs +73 -221
  154. package/dist/esm/fork/getPathFromState.mjs.map +1 -1
  155. package/dist/esm/fork/getPathFromState.native.js +79 -260
  156. package/dist/esm/fork/getPathFromState.native.js.map +2 -2
  157. package/dist/esm/fork/getStateFromPath-mods.js +176 -0
  158. package/dist/esm/fork/getStateFromPath-mods.js.map +6 -0
  159. package/dist/esm/fork/getStateFromPath-mods.mjs +143 -0
  160. package/dist/esm/fork/getStateFromPath-mods.mjs.map +1 -0
  161. package/dist/esm/fork/getStateFromPath-mods.native.js +246 -0
  162. package/dist/esm/fork/getStateFromPath-mods.native.js.map +6 -0
  163. package/dist/esm/fork/getStateFromPath.js +160 -265
  164. package/dist/esm/fork/getStateFromPath.js.map +2 -2
  165. package/dist/esm/fork/getStateFromPath.mjs +181 -260
  166. package/dist/esm/fork/getStateFromPath.mjs.map +1 -1
  167. package/dist/esm/fork/getStateFromPath.native.js +164 -302
  168. package/dist/esm/fork/getStateFromPath.native.js.map +2 -2
  169. package/dist/esm/fork/useBackButton.js.map +1 -1
  170. package/dist/esm/fork/useBackButton.mjs.map +1 -1
  171. package/dist/esm/fork/useBackButton.native.js.map +1 -1
  172. package/dist/esm/fork/useDocumentTitle.js +4 -1
  173. package/dist/esm/fork/useDocumentTitle.js.map +1 -1
  174. package/dist/esm/fork/useDocumentTitle.mjs.map +1 -1
  175. package/dist/esm/fork/useDocumentTitle.native.js +1 -1
  176. package/dist/esm/fork/useDocumentTitle.native.js.map +2 -2
  177. package/dist/esm/fork/useLinking.js +22 -26
  178. package/dist/esm/fork/useLinking.js.map +1 -1
  179. package/dist/esm/fork/useLinking.mjs +20 -23
  180. package/dist/esm/fork/useLinking.mjs.map +1 -1
  181. package/dist/esm/fork/useLinking.native.js +65 -67
  182. package/dist/esm/fork/useLinking.native.js.map +2 -2
  183. package/dist/esm/fork/useThenable.js.map +1 -1
  184. package/dist/esm/fork/useThenable.mjs.map +1 -1
  185. package/dist/esm/fork/useThenable.native.js.map +1 -1
  186. package/dist/esm/fork/validatePathConfig.js +41 -11
  187. package/dist/esm/fork/validatePathConfig.js.map +1 -1
  188. package/dist/esm/fork/validatePathConfig.mjs +32 -11
  189. package/dist/esm/fork/validatePathConfig.mjs.map +1 -1
  190. package/dist/esm/fork/validatePathConfig.native.js +43 -18
  191. package/dist/esm/fork/validatePathConfig.native.js.map +2 -2
  192. package/dist/esm/layouts/withLayoutContext.js +1 -1
  193. package/dist/esm/layouts/withLayoutContext.js.map +1 -1
  194. package/dist/esm/layouts/withLayoutContext.mjs +1 -1
  195. package/dist/esm/layouts/withLayoutContext.mjs.map +1 -1
  196. package/dist/esm/layouts/withLayoutContext.native.js +1 -1
  197. package/dist/esm/layouts/withLayoutContext.native.js.map +1 -1
  198. package/dist/esm/link/linking.js +2 -2
  199. package/dist/esm/link/linking.js.map +1 -1
  200. package/dist/esm/link/linking.mjs +2 -2
  201. package/dist/esm/link/linking.mjs.map +1 -1
  202. package/dist/esm/link/linking.native.js +2 -2
  203. package/dist/esm/link/linking.native.js.map +1 -1
  204. package/dist/esm/link/useLinkTo.js +1 -1
  205. package/dist/esm/link/useLinkTo.mjs +1 -1
  206. package/dist/esm/link/useLinkTo.native.js +1 -1
  207. package/dist/esm/router/getNormalizedStatePath.js +1 -1
  208. package/dist/esm/router/getNormalizedStatePath.mjs +1 -1
  209. package/dist/esm/router/getNormalizedStatePath.native.js +1 -1
  210. package/dist/esm/router/router.js +24 -2
  211. package/dist/esm/router/router.js.map +1 -1
  212. package/dist/esm/router/router.mjs +18 -2
  213. package/dist/esm/router/router.mjs.map +1 -1
  214. package/dist/esm/router/router.native.js +38 -2
  215. package/dist/esm/router/router.native.js.map +2 -2
  216. package/dist/esm/utils/serverContext.js +2 -1
  217. package/dist/esm/utils/serverContext.js.map +1 -1
  218. package/dist/esm/utils/serverContext.mjs +1 -1
  219. package/dist/esm/utils/serverContext.mjs.map +1 -1
  220. package/dist/esm/utils/serverContext.native.js +2 -1
  221. package/dist/esm/utils/serverContext.native.js.map +2 -2
  222. package/dist/esm/vite/plugins/fileSystemRouterPlugin.js +3 -3
  223. package/dist/esm/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
  224. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs +3 -3
  225. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
  226. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js +3 -3
  227. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +2 -2
  228. package/package.json +8 -9
  229. package/src/Root.tsx +6 -2
  230. package/src/cli/build.ts +2 -3
  231. package/src/constants.ts +8 -0
  232. package/src/fork/NavigationContainer.tsx +101 -39
  233. package/src/fork/createMemoryHistory.tsx +15 -13
  234. package/src/fork/extractPathFromURL.ts +85 -40
  235. package/src/fork/findFocusedRoute.tsx +9 -1
  236. package/src/fork/getPathFromState-mods.ts +142 -0
  237. package/src/fork/getPathFromState.ts +244 -501
  238. package/src/fork/getStateFromPath-mods.ts +400 -0
  239. package/src/fork/getStateFromPath.ts +447 -538
  240. package/src/fork/useBackButton.native.tsx +16 -2
  241. package/src/fork/useBackButton.tsx +11 -2
  242. package/src/fork/useDocumentTitle.native.tsx +9 -4
  243. package/src/fork/useDocumentTitle.tsx +12 -7
  244. package/src/fork/useLinking.native.ts +71 -63
  245. package/src/fork/useLinking.ts +75 -40
  246. package/src/fork/useThenable.tsx +7 -1
  247. package/src/fork/validatePathConfig.ts +64 -12
  248. package/src/layouts/withLayoutContext.tsx +1 -1
  249. package/src/link/linking.ts +2 -2
  250. package/src/link/useLinkTo.tsx +1 -1
  251. package/src/router/getNormalizedStatePath.tsx +1 -1
  252. package/src/router/router.ts +41 -2
  253. package/src/utils/serverContext.tsx +3 -1
  254. package/src/vite/plugins/fileSystemRouterPlugin.tsx +3 -3
  255. package/types/Root.d.ts.map +1 -1
  256. package/types/cli/build.d.ts.map +1 -1
  257. package/types/constants.d.ts +2 -0
  258. package/types/constants.d.ts.map +1 -1
  259. package/types/fork/NavigationContainer.d.ts +19 -8
  260. package/types/fork/NavigationContainer.d.ts.map +1 -1
  261. package/types/fork/createMemoryHistory.d.ts +10 -1
  262. package/types/fork/createMemoryHistory.d.ts.map +1 -1
  263. package/types/fork/extractPathFromURL.d.ts +7 -1
  264. package/types/fork/extractPathFromURL.d.ts.map +1 -1
  265. package/types/fork/findFocusedRoute.d.ts +9 -0
  266. package/types/fork/findFocusedRoute.d.ts.map +1 -1
  267. package/types/fork/getPathFromState-mods.d.ts +23 -0
  268. package/types/fork/getPathFromState-mods.d.ts.map +1 -0
  269. package/types/fork/getPathFromState.d.ts +15 -14
  270. package/types/fork/getPathFromState.d.ts.map +1 -1
  271. package/types/fork/getStateFromPath-mods.d.ts +58 -0
  272. package/types/fork/getStateFromPath-mods.d.ts.map +1 -0
  273. package/types/fork/getStateFromPath.d.ts +28 -29
  274. package/types/fork/getStateFromPath.d.ts.map +1 -1
  275. package/types/fork/useBackButton.d.ts +6 -0
  276. package/types/fork/useBackButton.d.ts.map +1 -1
  277. package/types/fork/useBackButton.native.d.ts +9 -1
  278. package/types/fork/useBackButton.native.d.ts.map +1 -1
  279. package/types/fork/useDocumentTitle.d.ts +8 -6
  280. package/types/fork/useDocumentTitle.d.ts.map +1 -1
  281. package/types/fork/useDocumentTitle.native.d.ts +5 -2
  282. package/types/fork/useDocumentTitle.native.d.ts.map +1 -1
  283. package/types/fork/useLinking.d.ts +8 -1
  284. package/types/fork/useLinking.d.ts.map +1 -1
  285. package/types/fork/useLinking.native.d.ts +9 -2
  286. package/types/fork/useLinking.native.d.ts.map +1 -1
  287. package/types/fork/useThenable.d.ts +6 -0
  288. package/types/fork/useThenable.d.ts.map +1 -1
  289. package/types/fork/validatePathConfig.d.ts +8 -1
  290. package/types/fork/validatePathConfig.d.ts.map +1 -1
  291. package/types/link/linking.d.ts +2 -2
  292. package/types/link/linking.d.ts.map +1 -1
  293. package/types/utils/serverContext.d.ts.map +1 -1
  294. package/types/vite/plugins/fileSystemRouterPlugin.d.ts.map +1 -1
@@ -1,230 +1,82 @@
1
- import { validatePathConfig } from "@react-navigation/core";
2
- import { matchDeepDynamicRouteName, matchDynamicName, matchGroupName, testNotFound } from "../router/matchers.mjs";
3
- const DEFAULT_SCREENS = {},
4
- getActiveRoute = state => {
1
+ import { getPathWithConventionsCollapsed, appendBaseUrl } from "./getPathFromState-mods.mjs";
2
+ import { validatePathConfig } from "./validatePathConfig.mjs";
3
+ const getActiveRoute = state => {
5
4
  const route = typeof state.index == "number" ? state.routes[state.index] : state.routes[state.routes.length - 1];
6
- return route.state ? getActiveRoute(route.state) : route && isInvalidParams(route.params) ? getActiveRoute(createFakeState(route.params)) : route;
7
- };
8
- function createFakeState(params) {
9
- return {
10
- stale: !1,
11
- type: "UNKNOWN",
12
- key: "UNKNOWN",
13
- index: 0,
14
- routeNames: [],
15
- routes: [{
16
- key: "UNKNOWN",
17
- name: params.screen,
18
- params: params.params,
19
- path: params.path
20
- }]
5
+ return route.state ? getActiveRoute(route.state) : route;
6
+ },
7
+ cachedNormalizedConfigs = /* @__PURE__ */new WeakMap(),
8
+ getNormalizedConfigs = options => {
9
+ if (!options?.screens) return {};
10
+ const cached = cachedNormalizedConfigs.get(options?.screens);
11
+ if (cached) return cached;
12
+ const normalizedConfigs = createNormalizedConfigs(options.screens);
13
+ return cachedNormalizedConfigs.set(options.screens, normalizedConfigs), normalizedConfigs;
21
14
  };
15
+ function getPathFromState(state, options) {
16
+ return getPathDataFromState(state, options).path;
22
17
  }
23
- function segmentMatchesConvention(segment) {
24
- return segment === "index" || matchDynamicName(segment) != null || matchGroupName(segment) != null || matchDeepDynamicRouteName(segment) != null;
25
- }
26
- function encodeURIComponentPreservingBrackets(str) {
27
- return encodeURIComponent(str).replace(/%5B/g, "[").replace(/%5D/g, "]");
28
- }
29
- function getPathFromState(state, _options) {
30
- return getPathDataFromState(state, _options).path;
31
- }
32
- function getPathDataFromState(state, _options = {
33
- screens: DEFAULT_SCREENS
34
- }) {
18
+ function getPathDataFromState(state, options) {
35
19
  if (state == null) throw Error("Got 'undefined' for the navigation state. You must pass a valid state object.");
36
- const {
37
- preserveGroups,
38
- preserveDynamicRoutes,
39
- ...options
40
- } = _options;
41
- if (validatePathConfig(options), Object.is(options.screens, DEFAULT_SCREENS)) throw Error("You must pass a 'screens' object to 'getPathFromState' to generate a path.");
42
- return getPathFromResolvedState(state,
43
- // Create a normalized configs object which will be easier to use
44
- createNormalizedConfigs(options.screens), {
45
- preserveGroups,
46
- preserveDynamicRoutes
47
- });
48
- }
49
- function processParamsWithUserSettings(configItem, params) {
50
- const stringify = configItem?.stringify;
51
- return Object.fromEntries(Object.entries(params).map(([key, value]) => [key,
52
- // TODO: Strip nullish values here.
53
- stringify?.[key] ? stringify[key](value) :
54
- // Preserve rest params
55
- Array.isArray(value) ? value : String(value)]));
56
- }
57
- function deepEqual(a, b) {
58
- if (a === b) return !0;
59
- if (Array.isArray(a) && Array.isArray(b)) {
60
- if (a.length !== b.length) return !1;
61
- for (let i = 0; i < a.length; i++) if (!deepEqual(a[i], b[i])) return !1;
62
- return !0;
63
- }
64
- if (typeof a == "object" && typeof b == "object") {
65
- const keysA = Object.keys(a),
66
- keysB = Object.keys(b);
67
- if (keysA.length !== keysB.length) return !1;
68
- for (const key of keysA) if (!deepEqual(a[key], b[key])) return !1;
69
- return !0;
70
- }
71
- return !1;
72
- }
73
- function walkConfigItems(route, focusedRoute, configs, {
74
- preserveDynamicRoutes
75
- }) {
76
- !route.state && isInvalidParams(route.params);
77
- let pattern = null,
78
- focusedParams,
79
- hash;
80
- const collectedParams = {};
81
- for (; route.name in configs;) {
82
- const configItem = configs[route.name],
83
- inputPattern = configItem.pattern;
84
- if (inputPattern == null) throw new Error("Unexpected: No pattern found for route " + route.name);
85
- if (pattern = inputPattern, route.params) {
86
- route.params["#"] && (hash = route.params["#"], delete route.params["#"]);
87
- const params = processParamsWithUserSettings(configItem, route.params);
88
- pattern != null && Object.assign(collectedParams, params), deepEqual(focusedRoute, route) && (preserveDynamicRoutes ? focusedParams = params : focusedParams = getParamsWithConventionsCollapsed({
89
- params,
90
- pattern,
91
- routeName: route.name
92
- }));
93
- }
94
- if (!route.state && isInvalidParams(route.params), !configItem.screens || route.state === void 0) {
95
- configItem.initialRouteName && configItem.screens && configItem.initialRouteName in configItem.screens && configItem.screens[configItem.initialRouteName]?.pattern && (pattern = configItem.screens[configItem.initialRouteName].pattern, focusedParams && (preserveDynamicRoutes || (focusedParams = getParamsWithConventionsCollapsed({
96
- params: focusedParams,
97
- pattern,
98
- routeName: route.name
99
- }))));
100
- break;
101
- }
102
- const index = route.state.index ?? route.state.routes.length - 1,
103
- nextRoute = route.state.routes[index],
104
- nestedScreens = configItem.screens;
105
- if (nestedScreens && nextRoute.name in nestedScreens) route = nextRoute, configs = nestedScreens;else break;
106
- }
107
- if (pattern == null) throw new Error(`No pattern found for route "${route.name}". Options are: ${Object.keys(configs).join(", ")}.`);
108
- return pattern && !focusedParams && focusedRoute.params && (preserveDynamicRoutes ? focusedParams = focusedRoute.params : focusedParams = getParamsWithConventionsCollapsed({
109
- params: focusedRoute.params,
110
- pattern,
111
- routeName: route.name
112
- }), focusedParams = {
113
- ...focusedParams,
114
- ...collectedParams
115
- }), {
116
- pattern,
117
- nextRoute: route,
118
- focusedParams,
119
- hash,
120
- params: collectedParams
121
- };
122
- }
123
- function getPathFromResolvedState(state, configs, {
124
- preserveGroups,
125
- preserveDynamicRoutes
126
- }) {
127
- let path = "",
128
- current = state,
129
- hash;
20
+ options && validatePathConfig(options);
21
+ const configs = getNormalizedConfigs(options);
22
+ let path = "/",
23
+ current = state;
130
24
  const allParams = {};
131
25
  for (; current;) {
132
- path += "/";
133
- const route = current.routes[current.index ?? 0];
134
- !route.state && isInvalidParams(route.params);
135
- const {
26
+ let index = typeof current.index == "number" ? current.index : 0,
27
+ route = current.routes[index],
136
28
  pattern,
137
- params: params2,
138
- nextRoute,
139
- focusedParams,
140
- hash: $hash
141
- } = walkConfigItems(route, getActiveRoute(current), {
142
- ...configs
143
- }, {
144
- preserveDynamicRoutes
145
- });
146
- if ($hash && (hash = $hash), Object.assign(allParams, params2), path += getPathWithConventionsCollapsed({
29
+ focusedParams;
30
+ const focusedRoute = getActiveRoute(state);
31
+ let currentOptions = configs;
32
+ const nestedRouteNames = [];
33
+ let hasNext = !0;
34
+ for (; route.name in currentOptions && hasNext;) {
35
+ if (pattern = currentOptions[route.name].pattern, nestedRouteNames.push(route.name), route.params) {
36
+ const stringify = currentOptions[route.name]?.stringify,
37
+ currentParams = Object.fromEntries(Object.entries(route.params).flatMap(([key, value]) => key === "screen" || key === "params" ? [] : [[key, stringify?.[key] ? stringify[key](value) : Array.isArray(value) ? value.map(String) : String(value)]]));
38
+ Object.assign(allParams, currentParams), focusedRoute === route && (focusedParams = {
39
+ ...currentParams
40
+ }, pattern?.split("/").filter(p => p.startsWith(":")).forEach(p => {
41
+ const name = getParamName(p);
42
+ focusedParams && delete focusedParams[name];
43
+ }));
44
+ }
45
+ if (!currentOptions[route.name].screens || route.state === void 0) {
46
+ const screens = currentOptions[route.name].screens,
47
+ screen = route.params && "screen" in route.params ? route.params.screen?.toString() : screens ? Object.keys(screens)[0] : void 0;
48
+ screen && screens && currentOptions[route.name].screens?.[screen] ? (route = {
49
+ ...screens[screen],
50
+ name: screen,
51
+ key: screen
52
+ }, currentOptions = screens) : hasNext = !1;
53
+ } else {
54
+ index = typeof route.state.index == "number" ? route.state.index : route.state.routes.length - 1;
55
+ const nextRoute = route.state.routes[index],
56
+ nestedConfig = currentOptions[route.name].screens;
57
+ nestedConfig && nextRoute.name in nestedConfig ? (route = nextRoute, currentOptions = nestedConfig) : hasNext = !1;
58
+ }
59
+ }
60
+ if (currentOptions[route.name] !== void 0 ? (pattern === void 0 && (pattern = nestedRouteNames.join("/")), path += getPathWithConventionsCollapsed({
61
+ ...options,
147
62
  pattern,
148
- routePath: nextRoute.path,
63
+ route,
149
64
  params: allParams,
150
- initialRouteName: configs[nextRoute.name]?.initialRouteName,
151
- preserveGroups,
152
- preserveDynamicRoutes
153
- }), nextRoute.state &&
154
- // NOTE: The upstream implementation allows for sending in synthetic states (states that weren't generated by `getStateFromPath`)
155
- // and any invalid routes will simply be ignored.
156
- // Because of this, we need to check if the next route is valid before continuing, otherwise our more strict
157
- // implementation will throw an error.
158
- configs[nextRoute.state.routes?.[nextRoute.state?.index ?? 0]?.name]) current = nextRoute.state;else {
159
- if (focusedParams &&
160
- // note: using [...route] is returning an array which shouldn't go on search, this is just
161
- // an initial hacky test to work around this as we dont want to pass that to search
162
- !Array.isArray(focusedParams)) {
163
- for (const param in focusedParams) focusedParams[param] === "undefined" && delete focusedParams[param];
164
- const query = new URLSearchParams(focusedParams).toString();
165
- query && (path += `?${query}`);
166
- }
167
- break;
65
+ initialRouteName: configs[route.name]?.initialRouteName
66
+ })) : route.name.startsWith("+") || (path += encodeURIComponent(route.name)), focusedParams || (focusedParams = focusedRoute.params), route.state) path += "/";else if (focusedParams) {
67
+ for (const param in focusedParams) focusedParams[param] === "undefined" && delete focusedParams[param];
68
+ delete focusedParams["#"];
69
+ const query = new URLSearchParams(focusedParams).toString();
70
+ query && (path += `?${query}`);
168
71
  }
72
+ current = route.state;
169
73
  }
170
- hash && (allParams["#"] = hash, path += `#${hash}`);
171
- const params = decodeParams(allParams);
172
- return {
173
- path: appendBaseUrl(basicSanitizePath(path)),
174
- params
74
+ return path = path.replace(/\/+/g, "/"), path = path.length > 1 ? path.replace(/\/$/, "") : path, options?.path && (path = joinPaths(options.path, path)), path = appendBaseUrl(path), allParams["#"] && (path += `#${allParams["#"]}`), {
75
+ path,
76
+ params: allParams
175
77
  };
176
78
  }
177
- function decodeParams(params) {
178
- const parsed = {};
179
- for (const [key, value] of Object.entries(params)) try {
180
- Array.isArray(value) ? parsed[key] = value.map(v => decodeURIComponent(v)) : parsed[key] = decodeURIComponent(value);
181
- } catch {
182
- parsed[key] = value;
183
- }
184
- return parsed;
185
- }
186
- function getPathWithConventionsCollapsed({
187
- pattern,
188
- routePath,
189
- params,
190
- preserveGroups,
191
- preserveDynamicRoutes,
192
- initialRouteName
193
- }) {
194
- const segments = pattern.split("/");
195
- return segments.map((p, i) => {
196
- const name = getParamName(p);
197
- return p.startsWith("*") ? preserveDynamicRoutes ? name === "not-found" ? "+not-found" : `[...${name}]` : params[name] ? Array.isArray(params[name]) ? params[name].join("/") : params[name] : i === 0 ? routePath : routePath?.split("/").slice(i + 1).join("/") : p.startsWith(":") ? preserveDynamicRoutes ? `[${name}]` : params[name] : !preserveGroups && matchGroupName(p) != null ? segments.length - 1 === i && initialRouteName ? segmentMatchesConvention(initialRouteName) ? "" : encodeURIComponentPreservingBrackets(initialRouteName) : "" : encodeURIComponentPreservingBrackets(p);
198
- }).map(v => v ?? "").join("/");
199
- }
200
- function getParamsWithConventionsCollapsed({
201
- pattern,
202
- routeName,
203
- params
204
- }) {
205
- const processedParams = {
206
- ...params
207
- },
208
- segments = pattern.split("/");
209
- if (segments.filter(segment => segment.startsWith(":")).forEach(segment => {
210
- const name = getParamName(segment);
211
- delete processedParams[name];
212
- }), segments.some(segment => segment.startsWith("*"))) {
213
- const name = testNotFound(routeName) ? "not-found" : matchDeepDynamicRouteName(routeName) ?? routeName;
214
- delete processedParams[name];
215
- }
216
- return processedParams;
217
- }
218
- function basicSanitizePath(path) {
219
- const simplifiedPath = path.replace(/\/+/g, "/");
220
- return simplifiedPath.length <= 1 ? simplifiedPath : simplifiedPath.replace(/\/$/, "");
221
- }
222
- function isInvalidParams(params) {
223
- return params ? "params" in params && typeof params.params == "object" && params.params ? !0 : "initial" in params && typeof params.initial == "boolean" &&
224
- // "path" in params &&
225
- "screen" in params : !1;
226
- }
227
- const getParamName = pattern => pattern.replace(/^[:*]/, "").replace(/\?$/, ""),
79
+ const getParamName = pattern => pattern.replace(/^:/, "").replace(/\?$/, ""),
228
80
  joinPaths = (...paths) => [].concat(...paths.map(p => p.split("/"))).filter(Boolean).join("/"),
229
81
  createConfigItem = (config, parentPattern) => {
230
82
  if (typeof config == "string") return {
@@ -237,13 +89,13 @@ const getParamName = pattern => pattern.replace(/^[:*]/, "").replace(/\?$/, ""),
237
89
  // Normalize pattern to remove any leading, trailing slashes, duplicate slashes etc.
238
90
  pattern: pattern?.split("/").filter(Boolean).join("/"),
239
91
  stringify: config.stringify,
240
- screens,
241
- initialRouteName: config.initialRouteName
92
+ screens
242
93
  };
243
94
  },
244
- createNormalizedConfigs = (options, pattern) => Object.fromEntries(Object.entries(options).map(([name, c]) => [name, createConfigItem(c, pattern)]));
245
- function appendBaseUrl(path, baseUrl = process.env.EXPO_BASE_URL) {
246
- return process.env.NODE_ENV !== "development" && baseUrl ? `/${baseUrl.replace(/^\/+/, "").replace(/\/$/, "")}${path}` : path;
247
- }
248
- export { appendBaseUrl, deepEqual, getPathFromState as default, getPathDataFromState };
95
+ createNormalizedConfigs = (options, pattern) => Object.fromEntries(Object.entries(options).map(([name, c]) => {
96
+ const result = createConfigItem(c, pattern);
97
+ return [name, result];
98
+ }));
99
+ var getPathFromState_default = getPathFromState;
100
+ export { getPathFromState_default as default, getPathDataFromState, getPathFromState };
249
101
  //# sourceMappingURL=getPathFromState.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["validatePathConfig","matchDeepDynamicRouteName","matchDynamicName","matchGroupName","testNotFound","DEFAULT_SCREENS","getActiveRoute","state","route","index","routes","length","isInvalidParams","params","createFakeState","stale","type","key","routeNames","name","screen","path","segmentMatchesConvention","segment","encodeURIComponentPreservingBrackets","str","encodeURIComponent","replace","getPathFromState","_options","getPathDataFromState","screens","Error","preserveGroups","preserveDynamicRoutes","options","Object","is","getPathFromResolvedState","createNormalizedConfigs","processParamsWithUserSettings","configItem","stringify","fromEntries","entries","map","value","Array","isArray","String","deepEqual","a","b","i","keysA","keys","keysB","walkConfigItems","focusedRoute","configs","pattern","focusedParams","hash","collectedParams","inputPattern","assign","getParamsWithConventionsCollapsed","routeName","initialRouteName","nextRoute","nestedScreens","join","current","allParams","params2","$hash","getPathWithConventionsCollapsed","routePath","param","query","URLSearchParams","toString","decodeParams","appendBaseUrl","basicSanitizePath","parsed","v","decodeURIComponent","segments","split","p","getParamName","startsWith","slice","processedParams","filter","forEach","some","simplifiedPath","initial","joinPaths","paths","concat","Boolean","createConfigItem","config","parentPattern","exact","c","baseUrl","process","env","EXPO_BASE_URL","NODE_ENV"],"sources":["../../../src/fork/getPathFromState.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["getPathWithConventionsCollapsed","appendBaseUrl","validatePathConfig","getActiveRoute","state","route","index","routes","length","cachedNormalizedConfigs","WeakMap","getNormalizedConfigs","options","screens","cached","get","normalizedConfigs","createNormalizedConfigs","set","getPathFromState","getPathDataFromState","path","Error","configs","current","allParams","pattern","focusedParams","focusedRoute","currentOptions","nestedRouteNames","hasNext","name","push","params","stringify","currentParams","Object","fromEntries","entries","flatMap","key","value","Array","isArray","map","String","assign","split","filter","p","startsWith","forEach","getParamName","screen","toString","keys","nextRoute","nestedConfig","join","initialRouteName","encodeURIComponent","param","query","URLSearchParams","replace","joinPaths","paths","concat","Boolean","createConfigItem","config","parentPattern","exact","c","result","getPathFromState_default"],"sources":["../../../src/fork/getPathFromState.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}