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,261 +1,86 @@
1
- import { validatePathConfig } from "@react-navigation/core";
2
- import { matchDeepDynamicRouteName, matchDynamicName, matchGroupName, testNotFound } from "../router/matchers";
3
- var DEFAULT_SCREENS = {}, getActiveRoute = function(state) {
1
+ import { getPathWithConventionsCollapsed, appendBaseUrl } from "./getPathFromState-mods";
2
+ import { validatePathConfig } from "./validatePathConfig";
3
+ var getActiveRoute = function(state) {
4
4
  var route = typeof state.index == "number" ? state.routes[state.index] : state.routes[state.routes.length - 1];
5
- return route.state ? getActiveRoute(route.state) : route && isInvalidParams(route.params) ? getActiveRoute(createFakeState(route.params)) : route;
5
+ return route.state ? getActiveRoute(route.state) : route;
6
+ }, cachedNormalizedConfigs = /* @__PURE__ */ new WeakMap(), getNormalizedConfigs = function(options) {
7
+ if (!options?.screens) return {};
8
+ var cached = cachedNormalizedConfigs.get(options?.screens);
9
+ if (cached) return cached;
10
+ var normalizedConfigs = createNormalizedConfigs(options.screens);
11
+ return cachedNormalizedConfigs.set(options.screens, normalizedConfigs), normalizedConfigs;
6
12
  };
7
- function createFakeState(params) {
8
- return {
9
- stale: !1,
10
- type: "UNKNOWN",
11
- key: "UNKNOWN",
12
- index: 0,
13
- routeNames: [],
14
- routes: [
15
- {
16
- key: "UNKNOWN",
17
- name: params.screen,
18
- params: params.params,
19
- path: params.path
20
- }
21
- ]
22
- };
23
- }
24
- function segmentMatchesConvention(segment) {
25
- return segment === "index" || matchDynamicName(segment) != null || matchGroupName(segment) != null || matchDeepDynamicRouteName(segment) != null;
26
- }
27
- function encodeURIComponentPreservingBrackets(str) {
28
- return encodeURIComponent(str).replace(/%5B/g, "[").replace(/%5D/g, "]");
29
- }
30
- function getPathFromState(state, _options) {
31
- return getPathDataFromState(state, _options).path;
32
- }
33
- function getPathDataFromState(state) {
34
- var _options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
35
- screens: DEFAULT_SCREENS
36
- };
37
- if (state == null)
38
- throw Error("Got 'undefined' for the navigation state. You must pass a valid state object.");
39
- var { preserveGroups, preserveDynamicRoutes, ...options } = _options;
40
- if (validatePathConfig(options), Object.is(options.screens, DEFAULT_SCREENS))
41
- throw Error("You must pass a 'screens' object to 'getPathFromState' to generate a path.");
42
- return getPathFromResolvedState(
43
- state,
44
- // Create a normalized configs object which will be easier to use
45
- createNormalizedConfigs(options.screens),
46
- {
47
- preserveGroups,
48
- preserveDynamicRoutes
49
- }
50
- );
13
+ function getPathFromState(state, options) {
14
+ return getPathDataFromState(state, options).path;
51
15
  }
52
- function processParamsWithUserSettings(configItem, params) {
53
- var stringify = configItem?.stringify;
54
- return Object.fromEntries(Object.entries(params).map(function(param) {
55
- var [key, value] = param;
56
- return [
57
- key,
58
- // TODO: Strip nullish values here.
59
- stringify?.[key] ? stringify[key](value) : (
60
- // Preserve rest params
61
- Array.isArray(value) ? value : String(value)
62
- )
63
- ];
64
- }));
65
- }
66
- function deepEqual(a, b) {
67
- if (a === b)
68
- return !0;
69
- if (Array.isArray(a) && Array.isArray(b)) {
70
- if (a.length !== b.length)
71
- return !1;
72
- for (var i = 0; i < a.length; i++)
73
- if (!deepEqual(a[i], b[i]))
74
- return !1;
75
- return !0;
76
- }
77
- if (typeof a == "object" && typeof b == "object") {
78
- var keysA = Object.keys(a), keysB = Object.keys(b);
79
- if (keysA.length !== keysB.length)
80
- return !1;
81
- var _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
82
- try {
83
- for (var _iterator = keysA[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
84
- var key = _step.value;
85
- if (!deepEqual(a[key], b[key]))
86
- return !1;
16
+ function getPathDataFromState(state, options) {
17
+ var _loop = function() {
18
+ for (var _loop2 = function() {
19
+ if (pattern = currentOptions[route.name].pattern, nestedRouteNames.push(route.name), route.params) {
20
+ var _currentOptions_route_name, stringify = (_currentOptions_route_name = currentOptions[route.name]) === null || _currentOptions_route_name === void 0 ? void 0 : _currentOptions_route_name.stringify, currentParams = Object.fromEntries(Object.entries(route.params).flatMap(function(param2) {
21
+ var [key, value] = param2;
22
+ return key === "screen" || key === "params" ? [] : [
23
+ [
24
+ key,
25
+ stringify?.[key] ? stringify[key](value) : Array.isArray(value) ? value.map(String) : String(value)
26
+ ]
27
+ ];
28
+ }));
29
+ Object.assign(allParams, currentParams), focusedRoute === route && (focusedParams = {
30
+ ...currentParams
31
+ }, pattern?.split("/").filter(function(p) {
32
+ return p.startsWith(":");
33
+ }).forEach(function(p) {
34
+ var name = getParamName(p);
35
+ focusedParams && delete focusedParams[name];
36
+ }));
87
37
  }
88
- } catch (err) {
89
- _didIteratorError = !0, _iteratorError = err;
90
- } finally {
91
- try {
92
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
93
- } finally {
94
- if (_didIteratorError)
95
- throw _iteratorError;
38
+ if (!currentOptions[route.name].screens || route.state === void 0) {
39
+ var _route_params_screen, _currentOptions_route_name_screens, screens = currentOptions[route.name].screens, screen = route.params && "screen" in route.params ? (_route_params_screen = route.params.screen) === null || _route_params_screen === void 0 ? void 0 : _route_params_screen.toString() : screens ? Object.keys(screens)[0] : void 0;
40
+ screen && screens && (!((_currentOptions_route_name_screens = currentOptions[route.name].screens) === null || _currentOptions_route_name_screens === void 0) && _currentOptions_route_name_screens[screen]) ? (route = {
41
+ ...screens[screen],
42
+ name: screen,
43
+ key: screen
44
+ }, currentOptions = screens) : hasNext = !1;
45
+ } else {
46
+ index = typeof route.state.index == "number" ? route.state.index : route.state.routes.length - 1;
47
+ var nextRoute = route.state.routes[index], nestedConfig = currentOptions[route.name].screens;
48
+ nestedConfig && nextRoute.name in nestedConfig ? (route = nextRoute, currentOptions = nestedConfig) : hasNext = !1;
96
49
  }
97
- }
98
- return !0;
99
- }
100
- return !1;
101
- }
102
- function walkConfigItems(route, focusedRoute, configs, param) {
103
- var { preserveDynamicRoutes } = param;
104
- !route.state && isInvalidParams(route.params);
105
- for (var pattern = null, focusedParams, hash, collectedParams = {}; route.name in configs; ) {
106
- var configItem = configs[route.name], inputPattern = configItem.pattern;
107
- if (inputPattern == null)
108
- throw new Error("Unexpected: No pattern found for route " + route.name);
109
- if (pattern = inputPattern, route.params) {
110
- route.params["#"] && (hash = route.params["#"], delete route.params["#"]);
111
- var params = processParamsWithUserSettings(configItem, route.params);
112
- pattern != null && Object.assign(collectedParams, params), deepEqual(focusedRoute, route) && (preserveDynamicRoutes ? focusedParams = params : focusedParams = getParamsWithConventionsCollapsed({
113
- params,
50
+ }, index = typeof current.index == "number" ? current.index : 0, route = current.routes[index], pattern = void 0, focusedParams = void 0, focusedRoute = getActiveRoute(state), currentOptions = configs, nestedRouteNames = [], hasNext = !0; route.name in currentOptions && hasNext; ) _loop2();
51
+ if (currentOptions[route.name] !== void 0) {
52
+ var _configs_route_name;
53
+ pattern === void 0 && (pattern = nestedRouteNames.join("/")), path += getPathWithConventionsCollapsed({
54
+ ...options,
114
55
  pattern,
115
- routeName: route.name
116
- }));
117
- }
118
- if (!route.state && isInvalidParams(route.params), !configItem.screens || route.state === void 0) {
119
- var _configItem_screens_configItem_initialRouteName;
120
- if (configItem.initialRouteName && configItem.screens && configItem.initialRouteName in configItem.screens && (!((_configItem_screens_configItem_initialRouteName = configItem.screens[configItem.initialRouteName]) === null || _configItem_screens_configItem_initialRouteName === void 0) && _configItem_screens_configItem_initialRouteName.pattern)) {
121
- var initialRouteConfig = configItem.screens[configItem.initialRouteName];
122
- pattern = initialRouteConfig.pattern, focusedParams && (preserveDynamicRoutes || (focusedParams = getParamsWithConventionsCollapsed({
123
- params: focusedParams,
124
- pattern,
125
- routeName: route.name
126
- })));
127
- }
128
- break;
56
+ route,
57
+ params: allParams,
58
+ initialRouteName: (_configs_route_name = configs[route.name]) === null || _configs_route_name === void 0 ? void 0 : _configs_route_name.initialRouteName
59
+ });
60
+ } else
61
+ route.name.startsWith("+") || (path += encodeURIComponent(route.name));
62
+ if (focusedParams || (focusedParams = focusedRoute.params), route.state)
63
+ path += "/";
64
+ else if (focusedParams) {
65
+ for (var param in focusedParams)
66
+ focusedParams[param] === "undefined" && delete focusedParams[param];
67
+ delete focusedParams["#"];
68
+ var query = new URLSearchParams(focusedParams).toString();
69
+ query && (path += `?${query}`);
129
70
  }
130
- var _route_state_index, index = (_route_state_index = route.state.index) !== null && _route_state_index !== void 0 ? _route_state_index : route.state.routes.length - 1, nextRoute = route.state.routes[index], nestedScreens = configItem.screens;
131
- if (nestedScreens && nextRoute.name in nestedScreens)
132
- route = nextRoute, configs = nestedScreens;
133
- else
134
- break;
135
- }
136
- if (pattern == null)
137
- throw new Error(`No pattern found for route "${route.name}". Options are: ${Object.keys(configs).join(", ")}.`);
138
- return pattern && !focusedParams && focusedRoute.params && (preserveDynamicRoutes ? focusedParams = focusedRoute.params : focusedParams = getParamsWithConventionsCollapsed({
139
- params: focusedRoute.params,
140
- pattern,
141
- routeName: route.name
142
- }), focusedParams = {
143
- ...focusedParams,
144
- ...collectedParams
145
- }), {
146
- pattern,
147
- nextRoute: route,
148
- focusedParams,
149
- hash,
150
- params: collectedParams
71
+ current = route.state;
151
72
  };
152
- }
153
- function getPathFromResolvedState(state, configs, param) {
154
- for (var { preserveGroups, preserveDynamicRoutes } = param, path = "", current = state, hash, allParams = {}; current; ) {
155
- var _configs_nextRoute_name, _nextRoute_state_routes_, _nextRoute_state, _nextRoute_state_routes;
156
- path += "/";
157
- var _current_index, route = current.routes[(_current_index = current.index) !== null && _current_index !== void 0 ? _current_index : 0];
158
- !route.state && isInvalidParams(route.params);
159
- var { pattern, params, nextRoute, focusedParams, hash: $hash } = walkConfigItems(route, getActiveRoute(current), {
160
- ...configs
161
- }, {
162
- preserveDynamicRoutes
163
- });
164
- $hash && (hash = $hash), Object.assign(allParams, params), path += getPathWithConventionsCollapsed({
165
- pattern,
166
- routePath: nextRoute.path,
167
- params: allParams,
168
- initialRouteName: (_configs_nextRoute_name = configs[nextRoute.name]) === null || _configs_nextRoute_name === void 0 ? void 0 : _configs_nextRoute_name.initialRouteName,
169
- preserveGroups,
170
- preserveDynamicRoutes
171
- });
172
- var _nextRoute_state_index;
173
- if (nextRoute.state && // NOTE: The upstream implementation allows for sending in synthetic states (states that weren't generated by `getStateFromPath`)
174
- // and any invalid routes will simply be ignored.
175
- // Because of this, we need to check if the next route is valid before continuing, otherwise our more strict
176
- // implementation will throw an error.
177
- configs[(_nextRoute_state_routes = nextRoute.state.routes) === null || _nextRoute_state_routes === void 0 || (_nextRoute_state_routes_ = _nextRoute_state_routes[(_nextRoute_state_index = (_nextRoute_state = nextRoute.state) === null || _nextRoute_state === void 0 ? void 0 : _nextRoute_state.index) !== null && _nextRoute_state_index !== void 0 ? _nextRoute_state_index : 0]) === null || _nextRoute_state_routes_ === void 0 ? void 0 : _nextRoute_state_routes_.name])
178
- current = nextRoute.state;
179
- else {
180
- if (focusedParams && // note: using [...route] is returning an array which shouldn't go on search, this is just
181
- // an initial hacky test to work around this as we dont want to pass that to search
182
- !Array.isArray(focusedParams)) {
183
- for (var _$param in focusedParams)
184
- focusedParams[_$param] === "undefined" && delete focusedParams[_$param];
185
- var query = new URLSearchParams(focusedParams).toString();
186
- query && (path += `?${query}`);
187
- }
188
- break;
189
- }
190
- }
191
- hash && (allParams["#"] = hash, path += `#${hash}`);
192
- var params1 = decodeParams(allParams);
193
- return {
194
- path: appendBaseUrl(basicSanitizePath(path)),
195
- params: params1
73
+ if (state == null)
74
+ throw Error("Got 'undefined' for the navigation state. You must pass a valid state object.");
75
+ options && validatePathConfig(options);
76
+ for (var configs = getNormalizedConfigs(options), path = "/", current = state, allParams = {}; current; ) _loop();
77
+ 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["#"]}`), {
78
+ path,
79
+ params: allParams
196
80
  };
197
81
  }
198
- function decodeParams(params) {
199
- var parsed = {}, _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
200
- try {
201
- for (var _iterator = Object.entries(params)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
202
- var [key, value] = _step.value;
203
- try {
204
- Array.isArray(value) ? parsed[key] = value.map(function(v) {
205
- return decodeURIComponent(v);
206
- }) : parsed[key] = decodeURIComponent(value);
207
- } catch {
208
- parsed[key] = value;
209
- }
210
- }
211
- } catch (err) {
212
- _didIteratorError = !0, _iteratorError = err;
213
- } finally {
214
- try {
215
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
216
- } finally {
217
- if (_didIteratorError)
218
- throw _iteratorError;
219
- }
220
- }
221
- return parsed;
222
- }
223
- function getPathWithConventionsCollapsed(param) {
224
- var { pattern, routePath, params, preserveGroups, preserveDynamicRoutes, initialRouteName } = param, segments = pattern.split("/");
225
- return segments.map(function(p, i) {
226
- var name = getParamName(p);
227
- 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);
228
- }).map(function(v) {
229
- return v ?? "";
230
- }).join("/");
231
- }
232
- function getParamsWithConventionsCollapsed(param) {
233
- var { pattern, routeName, params } = param, processedParams = {
234
- ...params
235
- }, segments = pattern.split("/");
236
- if (segments.filter(function(segment) {
237
- return segment.startsWith(":");
238
- }).forEach(function(segment) {
239
- var name2 = getParamName(segment);
240
- delete processedParams[name2];
241
- }), segments.some(function(segment) {
242
- return segment.startsWith("*");
243
- })) {
244
- var _matchDeepDynamicRouteName, name = testNotFound(routeName) ? "not-found" : (_matchDeepDynamicRouteName = matchDeepDynamicRouteName(routeName)) !== null && _matchDeepDynamicRouteName !== void 0 ? _matchDeepDynamicRouteName : routeName;
245
- delete processedParams[name];
246
- }
247
- return processedParams;
248
- }
249
- function basicSanitizePath(path) {
250
- var simplifiedPath = path.replace(/\/+/g, "/");
251
- return simplifiedPath.length <= 1 ? simplifiedPath : simplifiedPath.replace(/\/$/, "");
252
- }
253
- function isInvalidParams(params) {
254
- return params ? "params" in params && typeof params.params == "object" && params.params ? !0 : "initial" in params && typeof params.initial == "boolean" && // "path" in params &&
255
- "screen" in params : !1;
256
- }
257
82
  var getParamName = function(pattern) {
258
- return pattern.replace(/^[:*]/, "").replace(/\?$/, "");
83
+ return pattern.replace(/^:/, "").replace(/\?$/, "");
259
84
  }, joinPaths = function() {
260
85
  for (var _len = arguments.length, paths = new Array(_len), _key = 0; _key < _len; _key++)
261
86
  paths[_key] = arguments[_key];
@@ -276,26 +101,20 @@ var getParamName = function(pattern) {
276
101
  // Normalize pattern to remove any leading, trailing slashes, duplicate slashes etc.
277
102
  pattern: pattern1?.split("/").filter(Boolean).join("/"),
278
103
  stringify: config.stringify,
279
- screens,
280
- initialRouteName: config.initialRouteName
104
+ screens
281
105
  };
282
106
  }, createNormalizedConfigs = function(options, pattern) {
283
107
  return Object.fromEntries(Object.entries(options).map(function(param) {
284
- var [name, c] = param;
108
+ var [name, c] = param, result = createConfigItem(c, pattern);
285
109
  return [
286
110
  name,
287
- createConfigItem(c, pattern)
111
+ result
288
112
  ];
289
113
  }));
290
- };
291
- function appendBaseUrl(path) {
292
- var baseUrl = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : process.env.EXPO_BASE_URL;
293
- return process.env.NODE_ENV !== "development" && baseUrl ? `/${baseUrl.replace(/^\/+/, "").replace(/\/$/, "")}${path}` : path;
294
- }
114
+ }, getPathFromState_default = getPathFromState;
295
115
  export {
296
- appendBaseUrl,
297
- deepEqual,
298
- getPathFromState as default,
299
- getPathDataFromState
116
+ getPathFromState_default as default,
117
+ getPathDataFromState,
118
+ getPathFromState
300
119
  };
301
120
  //# sourceMappingURL=getPathFromState.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/fork/Users/n8/one/packages/one/src/fork/getPathFromState.ts"],
4
- "mappings": "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",
5
- "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", "_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", "undefined", "initialRouteName", "initialRouteConfig", "nextRoute", "nestedScreens", "join", "current", "allParams", "$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"]
4
+ "mappings": "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",
5
+ "names": ["getPathWithConventionsCollapsed", "appendBaseUrl", "validatePathConfig", "getActiveRoute", "state", "route", "index", "routes", "length", "cachedNormalizedConfigs", "WeakMap", "getNormalizedConfigs", "options", "screens", "cached", "get", "normalizedConfigs", "createNormalizedConfigs", "set", "getPathFromState", "getPathDataFromState", "path", "pattern", "currentOptions", "name", "nestedRouteNames", "push", "params", "stringify", "currentParams", "Object", "fromEntries", "entries", "flatMap", "param", "key", "value", "Array", "isArray", "map", "String", "assign", "allParams", "focusedRoute", "focusedParams", "split", "filter", "p", "startsWith", "forEach", "getParamName", "undefined", "screen", "toString", "keys", "hasNext", "nextRoute", "nestedConfig", "current", "configs", "join", "initialRouteName", "encodeURIComponent", "query", "URLSearchParams", "Error", "replace", "joinPaths", "paths", "concat", "Boolean", "createConfigItem", "config", "parentPattern", "exact", "c", "result"]
6
6
  }
@@ -0,0 +1,176 @@
1
+ import escape_ from "escape-string-regexp";
2
+ import { matchGroupName, stripGroupSegmentsFromPath } from "../router/matchers";
3
+ function getUrlWithReactNavigationConcessions(path, baseUrl = process.env.EXPO_BASE_URL) {
4
+ let parsed;
5
+ try {
6
+ parsed = new URL(path, "https://phony.example");
7
+ } catch {
8
+ return {
9
+ path,
10
+ cleanUrl: "",
11
+ nonstandardPathname: "",
12
+ url: new URL("https://phony.example")
13
+ };
14
+ }
15
+ const pathname = parsed.pathname, withoutBaseUrl = stripBaseUrl(pathname, baseUrl), pathWithoutGroups = stripGroupSegmentsFromPath(stripBaseUrl(path, baseUrl));
16
+ return {
17
+ // The slashes are at the end, not the beginning
18
+ path,
19
+ nonstandardPathname: withoutBaseUrl.replace(/^\/+/g, "").replace(/\/+$/g, "") + "/",
20
+ url: parsed,
21
+ pathWithoutGroups
22
+ };
23
+ }
24
+ function matchForEmptyPath(configs) {
25
+ const leafNodes = configs.filter((config) => !config.hasChildren).map((value) => ({
26
+ ...value,
27
+ // Collapse all levels of group segments before testing.
28
+ // This enables `app/(one)/(two)/index.js` to be matched.
29
+ path: stripGroupSegmentsFromPath(value.path)
30
+ }));
31
+ return leafNodes.find(
32
+ (config) => (
33
+ // NOTE: Test leaf node index routes that either don't have a regex or match an empty string.
34
+ config.path === "" && (!config.regex || config.regex.test(""))
35
+ )
36
+ ) ?? leafNodes.find(
37
+ (config) => (
38
+ // NOTE: Test leaf node dynamic routes that match an empty string.
39
+ config.path.startsWith(":") && config.regex.test("")
40
+ )
41
+ ) ?? // NOTE: Test leaf node deep dynamic routes that match a slash.
42
+ // This should be done last to enable dynamic routes having a higher priority.
43
+ leafNodes.find((config) => config.path.startsWith("*") && config.regex.test("/"));
44
+ }
45
+ function appendIsInitial(initialRoutes) {
46
+ const resolvedInitialPatterns = initialRoutes.map(
47
+ (route) => joinPaths(...route.parentScreens, route.initialRouteName)
48
+ );
49
+ return (config) => (config.isInitial = resolvedInitialPatterns.includes(config.routeNames.join("/")), config);
50
+ }
51
+ const joinPaths = (...paths) => [].concat(...paths.map((p) => p.split("/"))).filter(Boolean).join("/");
52
+ function getRouteConfigSorter(previousSegments = []) {
53
+ return function(a, b) {
54
+ if (a.pattern === b.pattern)
55
+ return b.routeNames.join(">").localeCompare(a.routeNames.join(">"));
56
+ if (a.pattern.startsWith(b.pattern) && !b.isIndex)
57
+ return -1;
58
+ if (b.pattern.startsWith(a.pattern) && !a.isIndex)
59
+ return 1;
60
+ if (a.type === "static" && b.type !== "static")
61
+ return -1;
62
+ if (a.type !== "static" && b.type === "static")
63
+ return 1;
64
+ const similarToPreviousA = previousSegments.filter((value, index) => value === a.expandedRouteNames[index] && value.startsWith("(") && value.endsWith(")")), similarToPreviousB = previousSegments.filter((value, index) => value === b.expandedRouteNames[index] && value.startsWith("(") && value.endsWith(")"));
65
+ if ((similarToPreviousA.length > 0 || similarToPreviousB.length > 0) && similarToPreviousA.length !== similarToPreviousB.length)
66
+ return similarToPreviousB.length - similarToPreviousA.length;
67
+ for (let i = 0; i < Math.max(a.parts.length, b.parts.length); i++) {
68
+ if (a.parts[i] == null)
69
+ return 1;
70
+ if (b.parts[i] == null)
71
+ return -1;
72
+ const aWildCard = a.parts[i].startsWith("*"), bWildCard = b.parts[i].startsWith("*");
73
+ if (aWildCard && bWildCard) {
74
+ const aNotFound = a.parts[i].match(/^[*]not-found$/), bNotFound = b.parts[i].match(/^[*]not-found$/);
75
+ if (aNotFound && bNotFound)
76
+ continue;
77
+ if (aNotFound)
78
+ return 1;
79
+ if (bNotFound)
80
+ return -1;
81
+ continue;
82
+ }
83
+ if (aWildCard)
84
+ return 1;
85
+ if (bWildCard)
86
+ return -1;
87
+ const aSlug = a.parts[i].startsWith(":"), bSlug = b.parts[i].startsWith(":");
88
+ if (aSlug && bSlug) {
89
+ const aNotFound = a.parts[i].match(/^[*]not-found$/), bNotFound = b.parts[i].match(/^[*]not-found$/);
90
+ if (aNotFound && bNotFound)
91
+ continue;
92
+ if (aNotFound)
93
+ return 1;
94
+ if (bNotFound)
95
+ return -1;
96
+ continue;
97
+ }
98
+ if (aSlug)
99
+ return 1;
100
+ if (bSlug)
101
+ return -1;
102
+ }
103
+ return a.isInitial && !b.isInitial ? -1 : !a.isInitial && b.isInitial ? 1 : b.parts.length - a.parts.length;
104
+ };
105
+ }
106
+ function formatRegexPattern(it) {
107
+ return it = it.replace(" ", "%20"), it.startsWith(":") ? `(([^/]+\\/)${it.endsWith("?") ? "?" : ""})` : it.startsWith("*") ? `((.*\\/)${it.endsWith("?") ? "?" : ""})` : matchGroupName(it) != null ? `(?:${escape(it)}\\/)?` : escape_(it) + "\\/";
108
+ }
109
+ function decodeURIComponentSafe(str) {
110
+ try {
111
+ return decodeURIComponent(str);
112
+ } catch {
113
+ return str;
114
+ }
115
+ }
116
+ function getParamValue(p, value) {
117
+ if (p.startsWith("*")) {
118
+ const values = value.split("/").filter((v) => v !== "");
119
+ return values.length === 0 && p.endsWith("?") ? void 0 : values;
120
+ }
121
+ return value;
122
+ }
123
+ function populateParams(routes, params) {
124
+ if (!(!routes || !params || Object.keys(params).length === 0)) {
125
+ for (const route of routes)
126
+ Object.assign(route, { params });
127
+ return routes;
128
+ }
129
+ }
130
+ function createConfigItemAdditionalProperties(screen, pattern, routeNames, config = {}) {
131
+ const parts = [];
132
+ let isDynamic = !1;
133
+ const isIndex = screen === "index" || screen.endsWith("/index");
134
+ for (const part of pattern.split("/"))
135
+ part && (isDynamic ||= part.startsWith(":") || part.startsWith("*") || part.includes("*not-found"), matchGroupName(part) || parts.push(part));
136
+ const hasChildren = config.screens ? !!Object.keys(config.screens)?.length : !1, type = hasChildren ? "layout" : isDynamic ? "dynamic" : "static";
137
+ return isIndex && parts.push("index"), {
138
+ type,
139
+ isIndex,
140
+ hasChildren,
141
+ parts,
142
+ userReadableName: [...routeNames.slice(0, -1), config.path || screen].join("/"),
143
+ expandedRouteNames: routeNames.flatMap((name) => name.split("/"))
144
+ };
145
+ }
146
+ function parseQueryParamsExtended(path, route, parseConfig, hash) {
147
+ const searchParams = new URL(path, "https://phony.example").searchParams, params = /* @__PURE__ */ Object.create(null);
148
+ hash && (params["#"] = hash.slice(1));
149
+ for (const name of searchParams.keys())
150
+ if (route.params?.[name])
151
+ process.env.NODE_ENV !== "production" && console.warn(
152
+ `Route '/${route.name}' with param '${name}' was specified both in the path and as a param, removing from path`
153
+ );
154
+ else {
155
+ const values = parseConfig?.hasOwnProperty(name) ? searchParams.getAll(name).map((value) => parseConfig[name](value)) : searchParams.getAll(name);
156
+ params[name] = values.length === 1 ? values[0] : values;
157
+ }
158
+ return Object.keys(params).length ? params : void 0;
159
+ }
160
+ function stripBaseUrl(path, baseUrl = process.env.EXPO_BASE_URL) {
161
+ return process.env.NODE_ENV !== "development" && baseUrl ? path.replace(/^\/+/g, "/").replace(new RegExp(`^\\/?${escape(baseUrl)}`, "g"), "") : path;
162
+ }
163
+ export {
164
+ appendIsInitial,
165
+ createConfigItemAdditionalProperties,
166
+ decodeURIComponentSafe,
167
+ formatRegexPattern,
168
+ getParamValue,
169
+ getRouteConfigSorter,
170
+ getUrlWithReactNavigationConcessions,
171
+ matchForEmptyPath,
172
+ parseQueryParamsExtended,
173
+ populateParams,
174
+ stripBaseUrl
175
+ };
176
+ //# sourceMappingURL=getStateFromPath-mods.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fork/getStateFromPath-mods.ts"],
4
+ "mappings": "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",
5
+ "names": []
6
+ }