@react-navigation/core 7.17.2 → 7.17.4

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 (40) hide show
  1. package/lib/module/StaticNavigation.js +0 -19
  2. package/lib/module/StaticNavigation.js.map +1 -1
  3. package/lib/module/checkSerializable.js +11 -4
  4. package/lib/module/checkSerializable.js.map +1 -1
  5. package/lib/module/getActionFromState.js +15 -2
  6. package/lib/module/getActionFromState.js.map +1 -1
  7. package/lib/module/getStateFromPath.js +98 -74
  8. package/lib/module/getStateFromPath.js.map +1 -1
  9. package/lib/module/index.js.map +1 -1
  10. package/lib/module/types.js +55 -0
  11. package/lib/module/types.js.map +1 -1
  12. package/lib/module/useEventEmitter.js +28 -29
  13. package/lib/module/useEventEmitter.js.map +1 -1
  14. package/lib/module/useNavigationBuilder.js +48 -47
  15. package/lib/module/useNavigationBuilder.js.map +1 -1
  16. package/lib/module/useRouteCache.js +2 -1
  17. package/lib/module/useRouteCache.js.map +1 -1
  18. package/lib/typescript/src/StaticNavigation.d.ts +2 -63
  19. package/lib/typescript/src/StaticNavigation.d.ts.map +1 -1
  20. package/lib/typescript/src/checkSerializable.d.ts +5 -3
  21. package/lib/typescript/src/checkSerializable.d.ts.map +1 -1
  22. package/lib/typescript/src/getActionFromState.d.ts.map +1 -1
  23. package/lib/typescript/src/getStateFromPath.d.ts.map +1 -1
  24. package/lib/typescript/src/index.d.ts +1 -1
  25. package/lib/typescript/src/index.d.ts.map +1 -1
  26. package/lib/typescript/src/types.d.ts +102 -2
  27. package/lib/typescript/src/types.d.ts.map +1 -1
  28. package/lib/typescript/src/useEventEmitter.d.ts.map +1 -1
  29. package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
  30. package/lib/typescript/src/useRouteCache.d.ts.map +1 -1
  31. package/package.json +3 -3
  32. package/src/StaticNavigation.tsx +1 -91
  33. package/src/checkSerializable.tsx +22 -12
  34. package/src/getActionFromState.tsx +20 -4
  35. package/src/getStateFromPath.tsx +147 -100
  36. package/src/index.tsx +0 -1
  37. package/src/types.tsx +138 -4
  38. package/src/useEventEmitter.tsx +33 -38
  39. package/src/useNavigationBuilder.tsx +77 -76
  40. package/src/useRouteCache.tsx +2 -1
@@ -4,29 +4,10 @@ import * as React from 'react';
4
4
  import { isValidElementType } from 'react-is';
5
5
  import { useRoute } from "./useRoute.js";
6
6
 
7
- /**
8
- * Flatten a type to remove all type alias names, unions etc.
9
- * This will show a plain object when hovering over the type.
10
- */
11
-
12
- /**
13
- * keyof T doesn't work for union types. We can use distributive conditional types instead.
14
- * https://www.typescriptlang.org/docs/handbook/2/conditional-types.html#distributive-conditional-types
15
- */
16
-
17
- /**
18
- * We get a union type when using keyof, but we want an intersection instead.
19
- * https://stackoverflow.com/a/50375286/1665026
20
- */
21
-
22
7
  /**
23
8
  * Props for a screen component which is rendered by a static navigator.
24
9
  * Takes the route params as a generic argument.
25
10
  */
26
-
27
- /**
28
- * Infer the param list from the static navigation config.
29
- */
30
11
  import { jsx as _jsx } from "react/jsx-runtime";
31
12
  const MemoizedScreen = /*#__PURE__*/React.memo(({
32
13
  component
@@ -1 +1 @@
1
- {"version":3,"names":["React","isValidElementType","useRoute","jsx","_jsx","MemoizedScreen","memo","component","route","children","createElement","displayName","getItemsFromScreens","Screen","screens","Object","entries","map","name","item","props","useIf","isNavigator","screen","if","_if","rest","getComponent","Error","element","shouldRender","createComponentForStaticNavigation","tree","Navigator","Group","config","groups","items","key","push","group","groupItems","navigationKey","length","NavigatorComponent","screenOptions","options","screenListeners","createComponentForStaticNavigationDeprecated","console","warn","createPathConfigForStaticNavigation","auto","initialScreenHasPath","initialScreenConfig","createPathConfigForTree","t","o","skipInitialDetection","createPathConfigForScreens","initialRouteName","fromEntries","sort","a","b","screenConfig","linking","path","assign","replace","skipInitialDetectionInChild","undefined","toLowerCase","filter","keys","forEach"],"sourceRoot":"../../src","sources":["StaticNavigation.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","isValidElementType","useRoute","jsx","_jsx","MemoizedScreen","memo","component","route","children","createElement","displayName","getItemsFromScreens","Screen","screens","Object","entries","map","name","item","props","useIf","isNavigator","screen","if","_if","rest","getComponent","Error","element","shouldRender","createComponentForStaticNavigation","tree","Navigator","Group","config","groups","items","key","push","group","groupItems","navigationKey","length","NavigatorComponent","screenOptions","options","screenListeners","createComponentForStaticNavigationDeprecated","console","warn","createPathConfigForStaticNavigation","auto","initialScreenHasPath","initialScreenConfig","createPathConfigForTree","t","o","skipInitialDetection","createPathConfigForScreens","initialRouteName","fromEntries","sort","a","b","screenConfig","linking","path","assign","replace","skipInitialDetectionInChild","undefined","toLowerCase","filter","keys","forEach"],"sourceRoot":"../../src","sources":["StaticNavigation.tsx"],"mappings":"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","ignoreList":[]}
@@ -9,7 +9,7 @@ const checkSerializableWithoutCircularReference = (o, seen, location) => {
9
9
  if (Object.prototype.toString.call(o) !== '[object Object]' && !Array.isArray(o)) {
10
10
  return {
11
11
  serializable: false,
12
- location,
12
+ location: location.slice(),
13
13
  reason: typeof o === 'function' ? 'Function' : String(o)
14
14
  };
15
15
  }
@@ -17,25 +17,32 @@ const checkSerializableWithoutCircularReference = (o, seen, location) => {
17
17
  return {
18
18
  serializable: false,
19
19
  reason: 'Circular reference',
20
- location
20
+ location: location.slice()
21
21
  };
22
22
  }
23
23
  seen.add(o);
24
24
  if (Array.isArray(o)) {
25
25
  for (let i = 0; i < o.length; i++) {
26
- const childResult = checkSerializableWithoutCircularReference(o[i], new Set(seen), [...location, i]);
26
+ location.push(i);
27
+ const childResult = checkSerializableWithoutCircularReference(o[i], seen, location);
28
+ location.pop();
27
29
  if (!childResult.serializable) {
30
+ seen.delete(o);
28
31
  return childResult;
29
32
  }
30
33
  }
31
34
  } else {
32
35
  for (const key in o) {
33
- const childResult = checkSerializableWithoutCircularReference(o[key], new Set(seen), [...location, key]);
36
+ location.push(key);
37
+ const childResult = checkSerializableWithoutCircularReference(o[key], seen, location);
38
+ location.pop();
34
39
  if (!childResult.serializable) {
40
+ seen.delete(o);
35
41
  return childResult;
36
42
  }
37
43
  }
38
44
  }
45
+ seen.delete(o);
39
46
  return {
40
47
  serializable: true
41
48
  };
@@ -1 +1 @@
1
- {"version":3,"names":["checkSerializableWithoutCircularReference","o","seen","location","undefined","serializable","Object","prototype","toString","call","Array","isArray","reason","String","has","add","i","length","childResult","Set","key","checkSerializable"],"sourceRoot":"../../src","sources":["checkSerializable.tsx"],"mappings":";;AAAA,MAAMA,yCAAyC,GAAGA,CAChDC,CAAyB,EACzBC,IAAc,EACdC,QAA6B,KAOtB;EACP,IACEF,CAAC,KAAKG,SAAS,IACfH,CAAC,KAAK,IAAI,IACV,OAAOA,CAAC,KAAK,SAAS,IACtB,OAAOA,CAAC,KAAK,QAAQ,IACrB,OAAOA,CAAC,KAAK,QAAQ,EACrB;IACA,OAAO;MAAEI,YAAY,EAAE;IAAK,CAAC;EAC/B;EAEA,IACEC,MAAM,CAACC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACR,CAAC,CAAC,KAAK,iBAAiB,IACvD,CAACS,KAAK,CAACC,OAAO,CAACV,CAAC,CAAC,EACjB;IACA,OAAO;MACLI,YAAY,EAAE,KAAK;MACnBF,QAAQ;MACRS,MAAM,EAAE,OAAOX,CAAC,KAAK,UAAU,GAAG,UAAU,GAAGY,MAAM,CAACZ,CAAC;IACzD,CAAC;EACH;EAEA,IAAIC,IAAI,CAACY,GAAG,CAACb,CAAC,CAAC,EAAE;IACf,OAAO;MACLI,YAAY,EAAE,KAAK;MACnBO,MAAM,EAAE,oBAAoB;MAC5BT;IACF,CAAC;EACH;EAEAD,IAAI,CAACa,GAAG,CAACd,CAAC,CAAC;EAEX,IAAIS,KAAK,CAACC,OAAO,CAACV,CAAC,CAAC,EAAE;IACpB,KAAK,IAAIe,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGf,CAAC,CAACgB,MAAM,EAAED,CAAC,EAAE,EAAE;MACjC,MAAME,WAAW,GAAGlB,yCAAyC,CAC3DC,CAAC,CAACe,CAAC,CAAC,EACJ,IAAIG,GAAG,CAAMjB,IAAI,CAAC,EAClB,CAAC,GAAGC,QAAQ,EAAEa,CAAC,CACjB,CAAC;MAED,IAAI,CAACE,WAAW,CAACb,YAAY,EAAE;QAC7B,OAAOa,WAAW;MACpB;IACF;EACF,CAAC,MAAM;IACL,KAAK,MAAME,GAAG,IAAInB,CAAC,EAAE;MACnB,MAAMiB,WAAW,GAAGlB,yCAAyC,CAC3DC,CAAC,CAACmB,GAAG,CAAC,EACN,IAAID,GAAG,CAAMjB,IAAI,CAAC,EAClB,CAAC,GAAGC,QAAQ,EAAEiB,GAAG,CACnB,CAAC;MAED,IAAI,CAACF,WAAW,CAACb,YAAY,EAAE;QAC7B,OAAOa,WAAW;MACpB;IACF;EACF;EAEA,OAAO;IAAEb,YAAY,EAAE;EAAK,CAAC;AAC/B,CAAC;AAED,OAAO,SAASgB,iBAAiBA,CAACpB,CAAyB,EAAE;EAC3D,OAAOD,yCAAyC,CAACC,CAAC,EAAE,IAAIkB,GAAG,CAAM,CAAC,EAAE,EAAE,CAAC;AACzE","ignoreList":[]}
1
+ {"version":3,"names":["checkSerializableWithoutCircularReference","o","seen","location","undefined","serializable","Object","prototype","toString","call","Array","isArray","slice","reason","String","has","add","i","length","push","childResult","pop","delete","key","checkSerializable","Set"],"sourceRoot":"../../src","sources":["checkSerializable.tsx"],"mappings":";;AAQA,MAAMA,yCAAyC,GAAGA,CAChDC,CAAyB,EACzBC,IAAc,EACdC,QAA6B,KAClB;EACX,IACEF,CAAC,KAAKG,SAAS,IACfH,CAAC,KAAK,IAAI,IACV,OAAOA,CAAC,KAAK,SAAS,IACtB,OAAOA,CAAC,KAAK,QAAQ,IACrB,OAAOA,CAAC,KAAK,QAAQ,EACrB;IACA,OAAO;MAAEI,YAAY,EAAE;IAAK,CAAC;EAC/B;EAEA,IACEC,MAAM,CAACC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACR,CAAC,CAAC,KAAK,iBAAiB,IACvD,CAACS,KAAK,CAACC,OAAO,CAACV,CAAC,CAAC,EACjB;IACA,OAAO;MACLI,YAAY,EAAE,KAAK;MACnBF,QAAQ,EAAEA,QAAQ,CAACS,KAAK,CAAC,CAAC;MAC1BC,MAAM,EAAE,OAAOZ,CAAC,KAAK,UAAU,GAAG,UAAU,GAAGa,MAAM,CAACb,CAAC;IACzD,CAAC;EACH;EAEA,IAAIC,IAAI,CAACa,GAAG,CAACd,CAAC,CAAC,EAAE;IACf,OAAO;MACLI,YAAY,EAAE,KAAK;MACnBQ,MAAM,EAAE,oBAAoB;MAC5BV,QAAQ,EAAEA,QAAQ,CAACS,KAAK,CAAC;IAC3B,CAAC;EACH;EAEAV,IAAI,CAACc,GAAG,CAACf,CAAC,CAAC;EAEX,IAAIS,KAAK,CAACC,OAAO,CAACV,CAAC,CAAC,EAAE;IACpB,KAAK,IAAIgB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGhB,CAAC,CAACiB,MAAM,EAAED,CAAC,EAAE,EAAE;MACjCd,QAAQ,CAACgB,IAAI,CAACF,CAAC,CAAC;MAChB,MAAMG,WAAW,GAAGpB,yCAAyC,CAC3DC,CAAC,CAACgB,CAAC,CAAC,EACJf,IAAI,EACJC,QACF,CAAC;MACDA,QAAQ,CAACkB,GAAG,CAAC,CAAC;MAEd,IAAI,CAACD,WAAW,CAACf,YAAY,EAAE;QAC7BH,IAAI,CAACoB,MAAM,CAACrB,CAAC,CAAC;QACd,OAAOmB,WAAW;MACpB;IACF;EACF,CAAC,MAAM;IACL,KAAK,MAAMG,GAAG,IAAItB,CAAC,EAAE;MACnBE,QAAQ,CAACgB,IAAI,CAACI,GAAG,CAAC;MAClB,MAAMH,WAAW,GAAGpB,yCAAyC,CAC3DC,CAAC,CAACsB,GAAG,CAAC,EACNrB,IAAI,EACJC,QACF,CAAC;MACDA,QAAQ,CAACkB,GAAG,CAAC,CAAC;MAEd,IAAI,CAACD,WAAW,CAACf,YAAY,EAAE;QAC7BH,IAAI,CAACoB,MAAM,CAACrB,CAAC,CAAC;QACd,OAAOmB,WAAW;MACpB;IACF;EACF;EAEAlB,IAAI,CAACoB,MAAM,CAACrB,CAAC,CAAC;EAEd,OAAO;IAAEI,YAAY,EAAE;EAAK,CAAC;AAC/B,CAAC;AAED,OAAO,SAASmB,iBAAiBA,CAACvB,CAAyB,EAAE;EAC3D,OAAOD,yCAAyC,CAACC,CAAC,EAAE,IAAIwB,GAAG,CAAM,CAAC,EAAE,EAAE,CAAC;AACzE","ignoreList":[]}
@@ -1,8 +1,21 @@
1
1
  "use strict";
2
2
 
3
+ // Cache the normalized config across calls for the same `options` reference,
4
+ // so we don't re-walk the config tree on every action conversion.
5
+ const cachedNormalizedConfig = new WeakMap();
3
6
  export function getActionFromState(state, options) {
4
- // Create a normalized configs object which will be easier to use
5
- const normalizedConfig = options ? createNormalizedConfigItem(options) : {};
7
+ let normalizedConfig;
8
+ if (options) {
9
+ const cached = cachedNormalizedConfig.get(options);
10
+ if (cached) {
11
+ normalizedConfig = cached;
12
+ } else {
13
+ normalizedConfig = createNormalizedConfigItem(options);
14
+ cachedNormalizedConfig.set(options, normalizedConfig);
15
+ }
16
+ } else {
17
+ normalizedConfig = {};
18
+ }
6
19
  const routes = state.index != null ? state.routes.slice(0, state.index + 1) : state.routes;
7
20
  if (routes.length === 0) {
8
21
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"names":["getActionFromState","state","options","normalizedConfig","createNormalizedConfigItem","routes","index","slice","length","undefined","key","name","initialRouteName","type","payload","route","current","config","screens","params","path","Object","keys","pop","assign","initial","screen","createNormalizedConfigs","entries","reduce","acc","k","v"],"sourceRoot":"../../src","sources":["getActionFromState.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["cachedNormalizedConfig","WeakMap","getActionFromState","state","options","normalizedConfig","cached","get","createNormalizedConfigItem","set","routes","index","slice","length","undefined","key","name","initialRouteName","type","payload","route","current","config","screens","params","path","Object","keys","pop","assign","initial","screen","createNormalizedConfigs","entries","reduce","acc","k","v"],"sourceRoot":"../../src","sources":["getActionFromState.tsx"],"mappings":"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","ignoreList":[]}
@@ -7,6 +7,12 @@ import { findFocusedRoute } from "./findFocusedRoute.js";
7
7
  import { getPatternParts } from "./getPatternParts.js";
8
8
  import { isArrayEqual } from "./isArrayEqual.js";
9
9
  import { validatePathConfig } from "./validatePathConfig.js";
10
+ const NESTED_SCREEN_PARAM_NAMES = ['screen', 'params', 'initial', 'path', 'merge', 'pop'];
11
+ const getExplicitParamNames = parse => {
12
+ const names = Object.entries(parse ?? {}).map(([name]) => name);
13
+ return names.length ? new Set(names) : undefined;
14
+ };
15
+
10
16
  /**
11
17
  * Utility to parse a path string to initial state object accepted by the container.
12
18
  * This is useful for deep linking when we need to handle the incoming URL.
@@ -31,7 +37,8 @@ import { validatePathConfig } from "./validatePathConfig.js";
31
37
  export function getStateFromPath(path, options) {
32
38
  const {
33
39
  initialRoutes,
34
- configs
40
+ configs,
41
+ configsByScreen
35
42
  } = getConfigResources(options);
36
43
  const screens = options?.screens;
37
44
  let remaining = path.replace(/\/+/g, '/') // Replace multiple slash (//) with single ones
@@ -54,14 +61,22 @@ export function getStateFromPath(path, options) {
54
61
  // Remove the prefix from the path
55
62
  remaining = remaining.replace(normalizedPrefix, '');
56
63
  }
64
+ const decodedSegments = [];
65
+ for (const segment of remaining.split('/')) {
66
+ if (!segment) {
67
+ continue;
68
+ }
69
+ try {
70
+ decodedSegments.push(decodeURIComponent(segment));
71
+ } catch {
72
+ return undefined;
73
+ }
74
+ }
57
75
  if (screens === undefined) {
58
76
  // When no config is specified, use the path segments as route names
59
- const routes = remaining.split('/').filter(Boolean).map(segment => {
60
- const name = decodeURIComponent(segment);
61
- return {
62
- name
63
- };
64
- });
77
+ const routes = decodedSegments.map(name => ({
78
+ name
79
+ }));
65
80
  if (routes.length) {
66
81
  return createNestedStateObject(path, routes, initialRoutes);
67
82
  }
@@ -74,29 +89,21 @@ export function getStateFromPath(path, options) {
74
89
  if (match) {
75
90
  return createNestedStateObject(path, match.routeNames.map(name => ({
76
91
  name
77
- })), initialRoutes, configs);
92
+ })), initialRoutes, match);
78
93
  }
79
94
  return undefined;
80
95
  }
81
- let result;
82
- let current;
83
96
 
84
97
  // We match the whole path against the regex instead of segments
85
98
  // This makes sure matches such as wildcard will catch any unmatched routes, even if nested
86
99
  const {
87
100
  routes,
88
- remainingPath
89
- } = matchAgainstConfigs(remaining, configs);
90
- if (routes !== undefined) {
91
- // This will always be empty if full path matched
92
- current = createNestedStateObject(path, routes, initialRoutes, configs);
93
- remaining = remainingPath;
94
- result = current;
95
- }
96
- if (current == null || result == null) {
101
+ config
102
+ } = matchAgainstConfigs(remaining, configs, configsByScreen);
103
+ if (routes === undefined || config === undefined) {
97
104
  return undefined;
98
105
  }
99
- return result;
106
+ return createNestedStateObject(path, routes, initialRoutes, config);
100
107
  }
101
108
 
102
109
  /**
@@ -118,11 +125,14 @@ function prepareConfigResources(options) {
118
125
  const initialRoutes = getInitialRoutes(options);
119
126
  const configs = getSortedNormalizedConfigs(initialRoutes, options?.screens);
120
127
  checkForDuplicatedConfigs(configs);
121
- const configWithRegexes = getConfigsWithRegexes(configs);
128
+ const configsByScreen = {};
129
+ for (const c of configs) {
130
+ (configsByScreen[c.screen] ??= []).push(c);
131
+ }
122
132
  return {
123
133
  initialRoutes,
124
134
  configs,
125
- configWithRegexes
135
+ configsByScreen
126
136
  };
127
137
  }
128
138
  function getInitialRoutes(options) {
@@ -234,16 +244,10 @@ function checkForDuplicatedConfigs(configs) {
234
244
  });
235
245
  }, {});
236
246
  }
237
- function getConfigsWithRegexes(configs) {
238
- return configs.map(c => ({
239
- ...c,
240
- // Add `$` to the regex to make sure it matches till end of the path and not just beginning
241
- regex: c.regex ? new RegExp(c.regex.source + '$') : undefined
242
- }));
243
- }
244
- const matchAgainstConfigs = (remaining, configs) => {
247
+ const matchAgainstConfigs = (remaining, configs, configsByScreen) => {
245
248
  let routes;
246
249
  let remainingPath = remaining;
250
+ let matchingConfig;
247
251
 
248
252
  // Go through all configs, and see if the next path segment matches our regex
249
253
  for (const config of configs) {
@@ -254,43 +258,59 @@ const matchAgainstConfigs = (remaining, configs) => {
254
258
 
255
259
  // If our regex matches, we need to extract params from the path
256
260
  if (match) {
257
- routes = config.routeNames.map(routeName => {
258
- const routeConfig = configs.find(c => {
259
- // Check matching name AND pattern in case same screen is used at different levels in config
260
- return c.screen === routeName && arrayStartsWith(config.segments, c.segments);
261
- });
262
- const params = routeConfig && match.groups ? Object.fromEntries(Object.entries(match.groups).map(([key, value]) => {
263
- const index = Number(key.replace('param_', ''));
264
- const param = routeConfig.params.find(it => it.index === index);
265
- if (param?.screen === routeName && param?.name) {
266
- return [param.name, value];
261
+ routes = [];
262
+ matchingConfig = config;
263
+ for (const routeName of config.routeNames) {
264
+ // Check matching name AND pattern in case same screen is used at different levels in config
265
+ const routeConfig = configsByScreen[routeName]?.find(c => arrayStartsWith(config.segments, c.segments));
266
+ let params;
267
+ if (routeConfig && match.groups) {
268
+ const paramEntries = [];
269
+ for (const [key, value] of Object.entries(match.groups)) {
270
+ const index = Number(key.replace('param_', ''));
271
+ const param = routeConfig.params.find(it => it.index === index);
272
+ if (param?.screen !== routeName || !param.name) {
273
+ continue;
274
+ }
275
+ if (value == null) {
276
+ paramEntries.push([param.name, undefined]);
277
+ continue;
278
+ }
279
+ let decoded;
280
+ try {
281
+ decoded = decodeURIComponent(value);
282
+ } catch {
283
+ return {
284
+ routes: undefined,
285
+ remainingPath
286
+ };
287
+ }
288
+ const parser = routeConfig.parse?.[param.name];
289
+ paramEntries.push([param.name, parser ? parser(decoded) : decoded]);
267
290
  }
268
- return null;
269
- }).filter(it => it != null).map(([key, value]) => {
270
- if (value == null) {
271
- return [key, undefined];
291
+ if (paramEntries.length) {
292
+ params = Object.fromEntries(paramEntries);
272
293
  }
273
- const decoded = decodeURIComponent(value);
274
- const parsed = routeConfig.parse?.[key] ? routeConfig.parse[key](decoded) : decoded;
275
- return [key, parsed];
276
- })) : undefined;
294
+ }
277
295
  if (params && Object.keys(params).length) {
278
- return {
296
+ routes.push({
279
297
  name: routeName,
280
298
  params
281
- };
299
+ });
300
+ } else {
301
+ routes.push({
302
+ name: routeName
303
+ });
282
304
  }
283
- return {
284
- name: routeName
285
- };
286
- });
305
+ }
287
306
  remainingPath = remainingPath.replace(match[0], '');
288
307
  break;
289
308
  }
290
309
  }
291
310
  return {
292
311
  routes,
293
- remainingPath
312
+ remainingPath,
313
+ config: matchingConfig
294
314
  };
295
315
  };
296
316
  const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScreens, routeNames) => {
@@ -308,6 +328,8 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
308
328
  // if an object is specified as the value (e.g. Foo: { ... }),
309
329
  // it can have `path` property and
310
330
  // it could have `screens` prop which has nested configs
331
+ const nestedScreens = config.screens;
332
+ const hasNestedScreens = !!nestedScreens;
311
333
  if (typeof config.path === 'string') {
312
334
  if (config.exact && config.path == null) {
313
335
  throw new Error(`Screen '${screen}' doesn't specify a 'path'. A 'path' needs to be specified when specifying 'exact: true'. If you don't want this screen in the URL, specify it as empty string, e.g. \`path: ''\`.`);
@@ -322,7 +344,7 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
322
344
  aliasConfigs.push(createConfigItem(screen, [...routeNames], [...paths, {
323
345
  screen,
324
346
  path: alias
325
- }], config.parse));
347
+ }], config.parse, hasNestedScreens));
326
348
  } else if (typeof alias === 'object') {
327
349
  aliasConfigs.push(createConfigItem(screen, [...routeNames], alias.exact ? [{
328
350
  screen,
@@ -330,7 +352,7 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
330
352
  }] : [...paths, {
331
353
  screen,
332
354
  path: alias.path
333
- }], alias.parse));
355
+ }], alias.parse, hasNestedScreens));
334
356
  }
335
357
  }
336
358
  }
@@ -343,13 +365,13 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
343
365
  screen,
344
366
  path: config.path
345
367
  });
346
- configs.push(createConfigItem(screen, [...routeNames], [...paths], config.parse));
368
+ configs.push(createConfigItem(screen, [...routeNames], [...paths], config.parse, hasNestedScreens));
347
369
  configs.push(...aliasConfigs);
348
370
  }
349
371
  if (typeof config !== 'string' && typeof config.path !== 'string' && config.alias?.length) {
350
372
  throw new Error(`Screen '${screen}' doesn't specify a 'path'. A 'path' needs to be specified in order to use 'alias'.`);
351
373
  }
352
- if (config.screens) {
374
+ if (nestedScreens) {
353
375
  // property `initialRouteName` without `screens` has no purpose
354
376
  if (config.initialRouteName) {
355
377
  initials.push({
@@ -357,8 +379,8 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
357
379
  parentScreens
358
380
  });
359
381
  }
360
- Object.keys(config.screens).forEach(nestedConfig => {
361
- const result = createNormalizedConfigs(nestedConfig, config.screens, initials, [...paths], [...parentScreens], routeNames);
382
+ Object.keys(nestedScreens).forEach(nestedConfig => {
383
+ const result = createNormalizedConfigs(nestedConfig, nestedScreens, initials, [...paths], [...parentScreens], routeNames);
362
384
  configs.push(...result);
363
385
  });
364
386
  }
@@ -366,7 +388,7 @@ const createNormalizedConfigs = (screen, routeConfig, initials, paths, parentScr
366
388
  routeNames.pop();
367
389
  return configs;
368
390
  };
369
- const createConfigItem = (screen, routeNames, paths, parse) => {
391
+ const createConfigItem = (screen, routeNames, paths, parse, hasNestedScreens = false) => {
370
392
  const parts = [];
371
393
 
372
394
  // Parse the path string into parts for easier matching
@@ -398,17 +420,11 @@ const createConfigItem = (screen, routeNames, paths, parse) => {
398
420
  segments,
399
421
  params,
400
422
  routeNames,
401
- parse
423
+ parse,
424
+ explicitParamNames: getExplicitParamNames(parse),
425
+ hasNestedScreens
402
426
  };
403
427
  };
404
- const findParseConfigForRoute = (routeName, flatConfig) => {
405
- for (const config of flatConfig) {
406
- if (routeName === config.routeNames[config.routeNames.length - 1]) {
407
- return config.parse;
408
- }
409
- }
410
- return undefined;
411
- };
412
428
 
413
429
  // Try to find an initial route connected with the one passed
414
430
  const findInitialRoute = (routeName, parentScreens, initialRoutes) => {
@@ -470,7 +486,7 @@ const createStateObject = (initialRoute, route, isEmpty) => {
470
486
  }
471
487
  }
472
488
  };
473
- const createNestedStateObject = (path, routes, initialRoutes, flatConfig) => {
489
+ const createNestedStateObject = (path, routes, initialRoutes, routeConfig) => {
474
490
  let route = routes.shift();
475
491
  const parentScreens = [];
476
492
  let initialRoute = findInitialRoute(route.name, parentScreens, initialRoutes);
@@ -490,7 +506,7 @@ const createNestedStateObject = (path, routes, initialRoutes, flatConfig) => {
490
506
  }
491
507
  route = findFocusedRoute(state);
492
508
  route.path = path.replace(/\/$/, '');
493
- const params = parseQueryParams(path, flatConfig ? findParseConfigForRoute(route.name, flatConfig) : undefined);
509
+ const params = parseQueryParams(path, routeConfig?.parse, routeConfig?.explicitParamNames, routeConfig?.hasNestedScreens, route.params);
494
510
  if (params) {
495
511
  route.params = {
496
512
  ...route.params,
@@ -499,7 +515,7 @@ const createNestedStateObject = (path, routes, initialRoutes, flatConfig) => {
499
515
  }
500
516
  return state;
501
517
  };
502
- const parseQueryParams = (path, parseConfig) => {
518
+ const parseQueryParams = (path, parseConfig, explicitParamNames, hasNestedScreens = false, routeParams) => {
503
519
  const query = path.split('?')[1];
504
520
  const params = queryString.parse(query);
505
521
  if (parseConfig) {
@@ -509,6 +525,14 @@ const parseQueryParams = (path, parseConfig) => {
509
525
  }
510
526
  });
511
527
  }
528
+ if (hasNestedScreens && !explicitParamNames?.has('screen') && (typeof params.screen === 'string' || typeof routeParams?.screen === 'string')) {
529
+ for (const name of NESTED_SCREEN_PARAM_NAMES) {
530
+ if (!explicitParamNames?.has(name)) {
531
+ // eslint-disable-next-line @typescript-eslint/no-dynamic-delete
532
+ delete params[name];
533
+ }
534
+ }
535
+ }
512
536
  return Object.keys(params).length ? params : undefined;
513
537
  };
514
538
  //# sourceMappingURL=getStateFromPath.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["escape","queryString","arrayStartsWith","findFocusedRoute","getPatternParts","isArrayEqual","validatePathConfig","getStateFromPath","path","options","initialRoutes","configs","getConfigResources","screens","remaining","replace","endsWith","prefix","normalizedPrefix","startsWith","undefined","routes","split","filter","Boolean","map","segment","name","decodeURIComponent","length","createNestedStateObject","match","find","config","segments","join","routeNames","result","current","remainingPath","matchAgainstConfigs","cachedConfigResources","WeakMap","prepareConfigResources","cached","get","resources","set","getInitialRoutes","getSortedNormalizedConfigs","checkForDuplicatedConfigs","configWithRegexes","getConfigsWithRegexes","initialRouteName","push","parentScreens","concat","Object","keys","key","createNormalizedConfigs","sort","a","b","localeCompare","i","Math","max","aWildCard","bWildCard","aParam","bParam","aRegex","includes","bRegex","reduce","acc","pattern","intersects","every","it","Error","assign","c","regex","RegExp","source","routeName","routeConfig","screen","params","groups","fromEntries","entries","value","index","Number","param","decoded","parsed","parse","initials","paths","createConfigItem","exact","aliasConfigs","alias","forEach","nestedConfig","pop","parts","part","reg","optional","findParseConfigForRoute","flatConfig","findInitialRoute","sameParents","createStateObject","initialRoute","route","isEmpty","state","shift","nestedState","nestedStateIndex","parseQueryParams","parseConfig","query","hasOwnProperty","call"],"sourceRoot":"../../src","sources":["getStateFromPath.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["escape","queryString","arrayStartsWith","findFocusedRoute","getPatternParts","isArrayEqual","validatePathConfig","NESTED_SCREEN_PARAM_NAMES","getExplicitParamNames","parse","names","Object","entries","map","name","length","Set","undefined","getStateFromPath","path","options","initialRoutes","configs","configsByScreen","getConfigResources","screens","remaining","replace","endsWith","prefix","normalizedPrefix","startsWith","decodedSegments","segment","split","push","decodeURIComponent","routes","createNestedStateObject","match","find","config","segments","join","routeNames","matchAgainstConfigs","cachedConfigResources","WeakMap","prepareConfigResources","cached","get","resources","set","getInitialRoutes","getSortedNormalizedConfigs","checkForDuplicatedConfigs","c","screen","initialRouteName","parentScreens","concat","keys","key","createNormalizedConfigs","sort","a","b","localeCompare","i","Math","max","aWildCard","bWildCard","aParam","bParam","aRegex","includes","bRegex","reduce","acc","pattern","intersects","every","it","Error","assign","remainingPath","matchingConfig","regex","routeName","routeConfig","params","groups","paramEntries","value","index","Number","param","decoded","parser","fromEntries","initials","paths","createConfigItem","nestedScreens","hasNestedScreens","exact","aliasConfigs","alias","forEach","nestedConfig","result","pop","parts","part","RegExp","reg","optional","filter","explicitParamNames","findInitialRoute","sameParents","createStateObject","initialRoute","route","isEmpty","state","shift","nestedState","nestedStateIndex","parseQueryParams","parseConfig","routeParams","query","hasOwnProperty","call","has"],"sourceRoot":"../../src","sources":["getStateFromPath.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["BaseNavigationContainer","createNavigationContainerRef","createNavigatorFactory","CurrentRenderContext","findFocusedRoute","getActionFromState","getFocusedRouteNameFromRoute","getPathFromState","getStateFromPath","NavigationContainerRefContext","NavigationContext","NavigationHelpersContext","NavigationIndependentTree","NavigationMetaContext","NavigationProvider","NavigationRouteContext","PreventRemoveContext","PreventRemoveProvider","createComponentForStaticNavigationDeprecated","createComponentForStaticNavigation","createPathConfigForStaticNavigation","ThemeContext","ThemeProvider","useTheme","useFocusEffect","useIsFocused","useNavigation","useNavigationBuilder","useNavigationContainerRef","useNavigationIndependentTree","useNavigationState","usePreventRemove","usePreventRemoveContext","useRoute","useStateForPath","validatePathConfig"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,uBAAuB,QAAQ,8BAA2B;AACnE,SAASC,4BAA4B,QAAQ,mCAAgC;AAC7E,SAASC,sBAAsB,QAAQ,6BAA0B;AACjE,SAASC,oBAAoB,QAAQ,2BAAwB;AAC7D,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,SAASC,4BAA4B,QAAQ,mCAAgC;AAC7E,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,6BAA6B,QAAQ,oCAAiC;AAC/E,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,SAASC,wBAAwB,QAAQ,+BAA4B;AACrE,SAASC,yBAAyB,QAAQ,gCAA6B;AACvE,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SACEC,kBAAkB,EAClBC,sBAAsB,QACjB,yBAAsB;AAC7B,SAASC,oBAAoB,QAAQ,2BAAwB;AAC7D,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SACEC,4CAA4C,IAAIC,kCAAkC,EAClFC,mCAAmC,QAO9B,uBAAoB;AAC3B,SAASC,YAAY,QAAQ,2BAAwB;AACrD,SAASC,aAAa,QAAQ,4BAAyB;AACvD,SAASC,QAAQ,QAAQ,uBAAoB;AAC7C,cAAc,YAAS;AACvB,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,YAAY,QAAQ,mBAAgB;AAC7C,SAASC,aAAa,QAAQ,oBAAiB;AAC/C,SAASC,oBAAoB,QAAQ,2BAAwB;AAC7D,SAASC,yBAAyB,QAAQ,gCAA6B;AACvE,SAASC,4BAA4B,QAAQ,mCAAgC;AAC7E,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,uBAAuB,QAAQ,8BAA2B;AACnE,SAASC,QAAQ,QAAQ,eAAY;AACrC,SAASC,eAAe,QAAQ,sBAAmB;AACnD,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,cAAc,2BAA2B","ignoreList":[]}
1
+ {"version":3,"names":["BaseNavigationContainer","createNavigationContainerRef","createNavigatorFactory","CurrentRenderContext","findFocusedRoute","getActionFromState","getFocusedRouteNameFromRoute","getPathFromState","getStateFromPath","NavigationContainerRefContext","NavigationContext","NavigationHelpersContext","NavigationIndependentTree","NavigationMetaContext","NavigationProvider","NavigationRouteContext","PreventRemoveContext","PreventRemoveProvider","createComponentForStaticNavigationDeprecated","createComponentForStaticNavigation","createPathConfigForStaticNavigation","ThemeContext","ThemeProvider","useTheme","useFocusEffect","useIsFocused","useNavigation","useNavigationBuilder","useNavigationContainerRef","useNavigationIndependentTree","useNavigationState","usePreventRemove","usePreventRemoveContext","useRoute","useStateForPath","validatePathConfig"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,uBAAuB,QAAQ,8BAA2B;AACnE,SAASC,4BAA4B,QAAQ,mCAAgC;AAC7E,SAASC,sBAAsB,QAAQ,6BAA0B;AACjE,SAASC,oBAAoB,QAAQ,2BAAwB;AAC7D,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,SAASC,4BAA4B,QAAQ,mCAAgC;AAC7E,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,6BAA6B,QAAQ,oCAAiC;AAC/E,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,SAASC,wBAAwB,QAAQ,+BAA4B;AACrE,SAASC,yBAAyB,QAAQ,gCAA6B;AACvE,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SACEC,kBAAkB,EAClBC,sBAAsB,QACjB,yBAAsB;AAC7B,SAASC,oBAAoB,QAAQ,2BAAwB;AAC7D,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SACEC,4CAA4C,IAAIC,kCAAkC,EAClFC,mCAAmC,QAM9B,uBAAoB;AAC3B,SAASC,YAAY,QAAQ,2BAAwB;AACrD,SAASC,aAAa,QAAQ,4BAAyB;AACvD,SAASC,QAAQ,QAAQ,uBAAoB;AAC7C,cAAc,YAAS;AACvB,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,YAAY,QAAQ,mBAAgB;AAC7C,SAASC,aAAa,QAAQ,oBAAiB;AAC/C,SAASC,oBAAoB,QAAQ,2BAAwB;AAC7D,SAASC,yBAAyB,QAAQ,gCAA6B;AACvE,SAASC,4BAA4B,QAAQ,mCAAgC;AAC7E,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,uBAAuB,QAAQ,8BAA2B;AACnE,SAASC,QAAQ,QAAQ,eAAY;AACrC,SAASC,eAAe,QAAQ,sBAAmB;AACnD,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,cAAc,2BAA2B","ignoreList":[]}