@react-navigation/core 8.0.0-alpha.7 → 8.0.0-alpha.9

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 (35) hide show
  1. package/lib/module/ConsumedParamsContext.js +5 -0
  2. package/lib/module/ConsumedParamsContext.js.map +1 -0
  3. package/lib/module/SceneView.js +39 -16
  4. package/lib/module/SceneView.js.map +1 -1
  5. package/lib/module/StaticNavigation.js +17 -3
  6. package/lib/module/StaticNavigation.js.map +1 -1
  7. package/lib/module/createNavigatorFactory.js +22 -1
  8. package/lib/module/createNavigatorFactory.js.map +1 -1
  9. package/lib/module/index.js +1 -1
  10. package/lib/module/index.js.map +1 -1
  11. package/lib/module/types.js.map +1 -1
  12. package/lib/module/useNavigationBuilder.js +7 -10
  13. package/lib/module/useNavigationBuilder.js.map +1 -1
  14. package/lib/typescript/src/ConsumedParamsContext.d.ts +8 -0
  15. package/lib/typescript/src/ConsumedParamsContext.d.ts.map +1 -0
  16. package/lib/typescript/src/SceneView.d.ts.map +1 -1
  17. package/lib/typescript/src/StaticContainer.d.ts +1 -1
  18. package/lib/typescript/src/StaticContainer.d.ts.map +1 -1
  19. package/lib/typescript/src/StaticNavigation.d.ts +26 -14
  20. package/lib/typescript/src/StaticNavigation.d.ts.map +1 -1
  21. package/lib/typescript/src/createNavigatorFactory.d.ts +1 -1
  22. package/lib/typescript/src/createNavigatorFactory.d.ts.map +1 -1
  23. package/lib/typescript/src/index.d.ts +1 -1
  24. package/lib/typescript/src/index.d.ts.map +1 -1
  25. package/lib/typescript/src/types.d.ts +13 -3
  26. package/lib/typescript/src/types.d.ts.map +1 -1
  27. package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
  28. package/package.json +4 -4
  29. package/src/ConsumedParamsContext.tsx +10 -0
  30. package/src/SceneView.tsx +52 -18
  31. package/src/StaticNavigation.tsx +64 -25
  32. package/src/createNavigatorFactory.tsx +35 -4
  33. package/src/index.tsx +0 -1
  34. package/src/types.tsx +46 -18
  35. package/src/useNavigationBuilder.tsx +9 -11
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ import * as React from 'react';
4
+ export const ConsumedParamsContext = /*#__PURE__*/React.createContext(undefined);
5
+ //# sourceMappingURL=ConsumedParamsContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","ConsumedParamsContext","createContext","undefined"],"sourceRoot":"../../src","sources":["ConsumedParamsContext.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAO9B,OAAO,MAAMC,qBAAqB,gBAAGD,KAAK,CAACE,aAAa,CAEtDC,SAAS,CAAC","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import * as React from 'react';
4
+ import { ConsumedParamsContext } from "./ConsumedParamsContext.js";
4
5
  import { EnsureSingleNavigator } from "./EnsureSingleNavigator.js";
5
6
  import { isArrayEqual } from "./isArrayEqual.js";
6
7
  import { NavigationFocusedRouteStateContext } from "./NavigationFocusedRouteStateContext.js";
@@ -68,6 +69,25 @@ export function SceneView({
68
69
  // eslint-disable-next-line react-hooks/exhaustive-deps
69
70
  }, []);
70
71
  const getIsInitial = React.useCallback(() => isInitialRef.current, []);
72
+ const [consumedParams, setConsumedParams] = React.useState(null);
73
+ const consumedParamsContext = React.useMemo(() => ({
74
+ isConsumed: params => {
75
+ if (consumedParams) {
76
+ return consumedParams.has(params);
77
+ }
78
+ return false;
79
+ },
80
+ setConsumed: params => {
81
+ setConsumedParams(prev => {
82
+ if (prev && prev.has(params)) {
83
+ return prev;
84
+ }
85
+ const map = new WeakMap();
86
+ map.set(params, true);
87
+ return map;
88
+ });
89
+ }
90
+ }), [consumedParams]);
71
91
  const parentFocusedRouteState = React.use(NavigationFocusedRouteStateContext);
72
92
  const focusedRouteState = React.useMemo(() => {
73
93
  const state = {
@@ -104,23 +124,26 @@ export function SceneView({
104
124
  addOptionsGetter
105
125
  }), [routeState, getCurrentState, setCurrentState, getKey, setKey, getIsInitial, addOptionsGetter]);
106
126
  const ScreenComponent = screen.getComponent ? screen.getComponent() : screen.component;
107
- return /*#__PURE__*/_jsx(NavigationStateContext.Provider, {
108
- value: context,
109
- children: /*#__PURE__*/_jsx(NavigationFocusedRouteStateContext.Provider, {
110
- value: focusedRouteState,
111
- children: /*#__PURE__*/_jsx(EnsureSingleNavigator, {
112
- children: /*#__PURE__*/_jsx(StaticContainer, {
113
- name: screen.name,
114
- render: ScreenComponent || screen.children,
115
- navigation: navigation,
116
- route: route,
117
- children: ScreenComponent !== undefined ? /*#__PURE__*/_jsx(ScreenComponent, {
127
+ return /*#__PURE__*/_jsx(ConsumedParamsContext.Provider, {
128
+ value: consumedParamsContext,
129
+ children: /*#__PURE__*/_jsx(NavigationStateContext.Provider, {
130
+ value: context,
131
+ children: /*#__PURE__*/_jsx(NavigationFocusedRouteStateContext.Provider, {
132
+ value: focusedRouteState,
133
+ children: /*#__PURE__*/_jsx(EnsureSingleNavigator, {
134
+ children: /*#__PURE__*/_jsx(StaticContainer, {
135
+ name: screen.name,
136
+ render: ScreenComponent || screen.children,
118
137
  navigation: navigation,
119
- route: route
120
- }) : screen.children !== undefined ? screen.children({
121
- navigation,
122
- route
123
- }) : null
138
+ route: route,
139
+ children: ScreenComponent !== undefined ? /*#__PURE__*/_jsx(ScreenComponent, {
140
+ navigation: navigation,
141
+ route: route
142
+ }) : screen.children !== undefined ? screen.children({
143
+ navigation,
144
+ route
145
+ }) : null
146
+ })
124
147
  })
125
148
  })
126
149
  })
@@ -1 +1 @@
1
- {"version":3,"names":["React","EnsureSingleNavigator","isArrayEqual","NavigationFocusedRouteStateContext","NavigationStateContext","StaticContainer","useOptionsGetters","jsx","_jsx","SceneView","screen","route","navigation","routeState","getState","setState","options","clearOptions","navigatorKeyRef","useRef","undefined","getKey","useCallback","current","addOptionsGetter","key","setKey","getCurrentState","state","currentRoute","routes","find","r","setCurrentState","child","map","isInitialRef","useEffect","getIsInitial","parentFocusedRouteState","use","focusedRouteState","useMemo","name","params","path","addState","parent","parentRoute","context","ScreenComponent","getComponent","component","Provider","value","children","render"],"sourceRoot":"../../src","sources":["SceneView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","ConsumedParamsContext","EnsureSingleNavigator","isArrayEqual","NavigationFocusedRouteStateContext","NavigationStateContext","StaticContainer","useOptionsGetters","jsx","_jsx","SceneView","screen","route","navigation","routeState","getState","setState","options","clearOptions","navigatorKeyRef","useRef","undefined","getKey","useCallback","current","addOptionsGetter","key","setKey","getCurrentState","state","currentRoute","routes","find","r","setCurrentState","child","map","isInitialRef","useEffect","getIsInitial","consumedParams","setConsumedParams","useState","consumedParamsContext","useMemo","isConsumed","params","has","setConsumed","prev","WeakMap","set","parentFocusedRouteState","use","focusedRouteState","name","path","addState","parent","parentRoute","context","ScreenComponent","getComponent","component","Provider","value","children","render"],"sourceRoot":"../../src","sources":["SceneView.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,9 @@ import * as React from 'react';
4
4
  import { isValidElementType } from 'react-is';
5
5
  import { useRoute } from "./useRoute.js";
6
6
 
7
+ // If every nested route's params include `undefined`, the nested navigator
8
+ // itself can be omitted. Otherwise, require `NavigatorScreenParams`.
9
+
7
10
  /**
8
11
  * Inferred params type based on both linking config and screen.
9
12
  * - When linking is undefined: infers params from screen
@@ -48,13 +51,13 @@ const getItemsFromScreens = (Screen, screens) => {
48
51
  component = screen;
49
52
  } else if ('config' in screen) {
50
53
  isNavigator = true;
51
- component = createComponentForStaticNavigation(screen, `${name}Navigator`);
54
+ component = screen.getComponent();
52
55
  }
53
56
  } else if (isValidElementType(item)) {
54
57
  component = item;
55
58
  } else if ('config' in item) {
56
59
  isNavigator = true;
57
- component = createComponentForStaticNavigation(item, `${name}Navigator`);
60
+ component = item.getComponent();
58
61
  }
59
62
  if (component == null) {
60
63
  throw new Error(`Couldn't find a 'screen' property for the screen '${name}'. This can happen if you passed 'undefined'. You likely forgot to export your component from the file it's defined in, or mixed up default import and named import when importing.`);
@@ -83,7 +86,7 @@ const getItemsFromScreens = (Screen, screens) => {
83
86
  * @param displayName Name of the component to be displayed in React DevTools.
84
87
  * @returns A component which renders the navigator.
85
88
  */
86
- export function createComponentForStaticNavigation(tree, displayName) {
89
+ export function createComponentForStaticConfig(tree, displayName) {
87
90
  const {
88
91
  Navigator,
89
92
  Group,
@@ -128,6 +131,9 @@ export function createComponentForStaticNavigation(tree, displayName) {
128
131
  }));
129
132
  }
130
133
  }
134
+ if (items.length === 0) {
135
+ throw new Error("Couldn't find any screens in the 'screens' or 'groups' property. Make sure to define at least one screen in the configuration.");
136
+ }
131
137
  const NavigatorComponent = ({
132
138
  children: _,
133
139
  ...props
@@ -140,10 +146,18 @@ export function createComponentForStaticNavigation(tree, displayName) {
140
146
  ...rest.screenOptions,
141
147
  ...props.screenOptions
142
148
  };
149
+ const screenListeners = typeof props.screenListeners === 'function' || typeof rest.screenListeners === 'function' ? options => ({
150
+ ...(typeof rest.screenListeners === 'function' ? rest.screenListeners(options) : rest.screenListeners),
151
+ ...(typeof props.screenListeners === 'function' ? props.screenListeners(options) : props.screenListeners)
152
+ }) : {
153
+ ...rest.screenListeners,
154
+ ...props.screenListeners
155
+ };
143
156
  return /*#__PURE__*/_jsx(Navigator, {
144
157
  ...rest,
145
158
  ...props,
146
159
  screenOptions: screenOptions,
160
+ screenListeners: screenListeners,
147
161
  children: children
148
162
  });
149
163
  };
@@ -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","createComponentForStaticNavigation","Error","element","shouldRender","tree","Navigator","Group","config","groups","items","key","push","group","groupItems","navigationKey","NavigatorComponent","_","screenOptions","options","createPathConfigForStaticNavigation","auto","initialScreenHasPath","initialScreenConfig","createPathConfigForTree","t","o","skipInitialDetection","createPathConfigForScreens","groupLinking","initialRouteName","fromEntries","sort","a","b","screenConfig","groupPath","path","normalizePath","replace","linking","assign","parse","stringify","skipInitialDetectionInChild","undefined","toLowerCase","filter","keys","length","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","createComponentForStaticConfig","tree","Navigator","Group","config","groups","items","key","push","group","groupItems","navigationKey","length","NavigatorComponent","_","screenOptions","options","screenListeners","createPathConfigForStaticNavigation","auto","initialScreenHasPath","initialScreenConfig","createPathConfigForTree","t","o","skipInitialDetection","createPathConfigForScreens","groupLinking","initialRouteName","fromEntries","sort","a","b","screenConfig","groupPath","path","normalizePath","replace","linking","assign","parse","stringify","skipInitialDetectionInChild","undefined","toLowerCase","filter","keys","forEach"],"sourceRoot":"../../src","sources":["StaticNavigation.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
 
3
+ import * as React from 'react';
3
4
  import { Group } from "./Group.js";
4
5
  import { Screen } from "./Screen.js";
6
+ import { createComponentForStaticConfig } from "./StaticNavigation.js";
5
7
 
6
8
  /**
7
9
  * Higher order component to create a `Navigator` and `Screen` pair.
@@ -11,13 +13,32 @@ import { Screen } from "./Screen.js";
11
13
  * @returns Factory method to create a `Navigator` and `Screen` pair.
12
14
  */
13
15
  export function createNavigatorFactory(Navigator) {
16
+ const displayName = Navigator.displayName ?? Navigator.name ?? 'Navigator';
14
17
  function createNavigator(config) {
15
18
  if (config != null) {
16
- return {
19
+ const NavigatorComponent = createComponentForStaticConfig({
17
20
  Navigator,
18
21
  Screen,
19
22
  Group,
20
23
  config
24
+ }, displayName);
25
+ return {
26
+ config,
27
+ with(DecoratorComponent) {
28
+ const WithComponent = () => {
29
+ return /*#__PURE__*/React.createElement(DecoratorComponent, {
30
+ Navigator: NavigatorComponent
31
+ });
32
+ };
33
+ WithComponent.displayName = `${displayName}With`;
34
+ return {
35
+ config,
36
+ getComponent: () => WithComponent
37
+ };
38
+ },
39
+ getComponent() {
40
+ return NavigatorComponent;
41
+ }
21
42
  };
22
43
  }
23
44
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["Group","Screen","createNavigatorFactory","Navigator","createNavigator","config"],"sourceRoot":"../../src","sources":["createNavigatorFactory.tsx"],"mappings":";;AAEA,SAASA,KAAK,QAAQ,YAAS;AAC/B,SAASC,MAAM,QAAQ,aAAU;;AAEjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,sBAAsBA,CAACC,SAAmC,EAAE;EAC1E,SAASC,eAAeA,CAACC,MAAY,EAAO;IAC1C,IAAIA,MAAM,IAAI,IAAI,EAAE;MAClB,OAAO;QACLF,SAAS;QACTF,MAAM;QACND,KAAK;QACLK;MACF,CAAC;IACH;IAEA,OAAO;MACLF,SAAS;MACTF,MAAM;MACND;IACF,CAAC;EACH;EAEA,OAAOI,eAAe;AACxB","ignoreList":[]}
1
+ {"version":3,"names":["React","Group","Screen","createComponentForStaticConfig","createNavigatorFactory","Navigator","displayName","name","createNavigator","config","NavigatorComponent","with","DecoratorComponent","WithComponent","createElement","getComponent"],"sourceRoot":"../../src","sources":["createNavigatorFactory.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAASC,KAAK,QAAQ,YAAS;AAC/B,SAASC,MAAM,QAAQ,aAAU;AACjC,SAASC,8BAA8B,QAAQ,uBAAoB;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,sBAAsBA,CAACC,SAAmC,EAAE;EAC1E,MAAMC,WAAW,GAAGD,SAAS,CAACC,WAAW,IAAID,SAAS,CAACE,IAAI,IAAI,WAAW;EAE1E,SAASC,eAAeA,CAACC,MAAY,EAAO;IAC1C,IAAIA,MAAM,IAAI,IAAI,EAAE;MAClB,MAAMC,kBAAkB,GAAGP,8BAA8B,CACvD;QACEE,SAAS;QACTH,MAAM;QACND,KAAK;QACLQ;MACF,CAAC,EACDH,WACF,CAAC;MAED,OAAO;QACLG,MAAM;QACNE,IAAIA,CACFC,kBAEE,EACF;UACA,MAAMC,aAAa,GAAGA,CAAA,KAAM;YAC1B,oBAAOb,KAAK,CAACc,aAAa,CAACF,kBAAkB,EAAE;cAC7CP,SAAS,EAAEK;YACb,CAAC,CAAC;UACJ,CAAC;UAEDG,aAAa,CAACP,WAAW,GAAG,GAAGA,WAAW,MAAM;UAEhD,OAAO;YACLG,MAAM;YACNM,YAAY,EAAEA,CAAA,KAAMF;UACtB,CAAC;QACH,CAAC;QACDE,YAAYA,CAAA,EAAG;UACb,OAAOL,kBAAkB;QAC3B;MACF,CAAC;IACH;IAEA,OAAO;MACLL,SAAS;MACTH,MAAM;MACND;IACF,CAAC;EACH;EAEA,OAAOO,eAAe;AACxB","ignoreList":[]}
@@ -16,7 +16,7 @@ export { NavigationMetaContext } from "./NavigationMetaContext.js";
16
16
  export { NavigationContext, NavigationProvider, NavigationRouteContext } from "./NavigationProvider.js";
17
17
  export { PreventRemoveContext } from "./PreventRemoveContext.js";
18
18
  export { PreventRemoveProvider } from "./PreventRemoveProvider.js";
19
- export { createComponentForStaticNavigation, createPathConfigForStaticNavigation } from "./StaticNavigation.js";
19
+ export { createPathConfigForStaticNavigation } from "./StaticNavigation.js";
20
20
  export { ThemeContext } from "./theming/ThemeContext.js";
21
21
  export { ThemeProvider } from "./theming/ThemeProvider.js";
22
22
  export { useTheme } from "./theming/useTheme.js";
@@ -1 +1 @@
1
- {"version":3,"names":["BaseNavigationContainer","createNavigationContainerRef","createNavigatorFactory","CurrentRenderContext","findFocusedRoute","getActionFromState","getFocusedRouteNameFromRoute","getPathFromState","getStateFromPath","NavigationContainerRefContext","NavigationHelpersContext","NavigationIndependentTree","NavigationMetaContext","NavigationContext","NavigationProvider","NavigationRouteContext","PreventRemoveContext","PreventRemoveProvider","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,wBAAwB,QAAQ,+BAA4B;AACrE,SAASC,yBAAyB,QAAQ,gCAA6B;AACvE,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SACEC,iBAAiB,EACjBC,kBAAkB,EAClBC,sBAAsB,QACjB,yBAAsB;AAC7B,SAASC,oBAAoB,QAAQ,2BAAwB;AAC7D,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SACEC,kCAAkC,EAClCC,mCAAmC,QAQ9B,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;AAEnD,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,cAAc,2BAA2B","ignoreList":[]}
1
+ {"version":3,"names":["BaseNavigationContainer","createNavigationContainerRef","createNavigatorFactory","CurrentRenderContext","findFocusedRoute","getActionFromState","getFocusedRouteNameFromRoute","getPathFromState","getStateFromPath","NavigationContainerRefContext","NavigationHelpersContext","NavigationIndependentTree","NavigationMetaContext","NavigationContext","NavigationProvider","NavigationRouteContext","PreventRemoveContext","PreventRemoveProvider","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,wBAAwB,QAAQ,+BAA4B;AACrE,SAASC,yBAAyB,QAAQ,gCAA6B;AACvE,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SACEC,iBAAiB,EACjBC,kBAAkB,EAClBC,sBAAsB,QACjB,yBAAsB;AAC7B,SAASC,oBAAoB,QAAQ,2BAAwB;AAC7D,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SACEC,mCAAmC,QAQ9B,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;AAEnD,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,cAAc,2BAA2B","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["PrivateValueStore"],"sourceRoot":"../../src","sources":["types.tsx"],"mappings":";;AAoBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAoOA,OAAO,MAAMA,iBAAiB,CAA4B;;AAwmB1D;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
1
+ {"version":3,"names":["PrivateValueStore"],"sourceRoot":"../../src","sources":["types.tsx"],"mappings":";;AAoBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA+NA,OAAO,MAAMA,iBAAiB,CAA4B;;AAwmB1D;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
@@ -5,6 +5,7 @@ import deepEqual from 'fast-deep-equal';
5
5
  import * as React from 'react';
6
6
  import { isValidElementType } from 'react-is';
7
7
  import useLatestCallback from 'use-latest-callback';
8
+ import { ConsumedParamsContext } from "./ConsumedParamsContext.js";
8
9
  import { deepFreeze } from "./deepFreeze.js";
9
10
  import { Group } from "./Group.js";
10
11
  import { isArrayEqual } from "./isArrayEqual.js";
@@ -40,7 +41,6 @@ import { useScheduleUpdate } from "./useScheduleUpdate.js";
40
41
  // eslint-disable-next-line @typescript-eslint/no-unused-expressions
41
42
  import { jsx as _jsx } from "react/jsx-runtime";
42
43
  PrivateValueStore;
43
- const CONSUMED_PARAMS = Symbol('CONSUMED_PARAMS');
44
44
  const isScreen = child => {
45
45
  return child.type === Screen;
46
46
  };
@@ -163,7 +163,8 @@ const getStateFromParams = params => {
163
163
  export function useNavigationBuilder(createRouter, options) {
164
164
  const navigatorKey = useRegisterNavigator();
165
165
  const route = React.use(NavigationRouteContext);
166
- const isNestedParamsConsumed = typeof route?.params === 'object' && route.params != null ? CONSUMED_PARAMS in route.params && route.params[CONSUMED_PARAMS] === route.params : false;
166
+ const consumedParams = React.use(ConsumedParamsContext);
167
+ const isNestedParamsConsumed = typeof route?.params === 'object' && route.params != null ? consumedParams?.isConsumed(route.params) : false;
167
168
  const {
168
169
  children,
169
170
  layout,
@@ -382,16 +383,12 @@ export function useNavigationBuilder(createRouter, options) {
382
383
  routeGetIdList
383
384
  }) : nextState;
384
385
  }
386
+ const setConsumedParams = consumedParams?.setConsumed;
385
387
  React.useEffect(() => {
386
- if (didConsumeNestedParams && typeof route?.params === 'object' && route.params != null) {
387
- // Track whether the params have been already consumed
388
- // Set it to the same object, so merged params can be handled again
389
- Object.defineProperty(route.params, CONSUMED_PARAMS, {
390
- value: route.params,
391
- enumerable: false
392
- });
388
+ if (setConsumedParams && didConsumeNestedParams && typeof route?.params === 'object' && route.params != null) {
389
+ setConsumedParams(route.params);
393
390
  }
394
- }, [didConsumeNestedParams, route?.params]);
391
+ }, [didConsumeNestedParams, route?.params, setConsumedParams]);
395
392
  const shouldUpdate = state !== nextState;
396
393
  useScheduleUpdate(() => {
397
394
  if (shouldUpdate) {
@@ -1 +1 @@
1
- {"version":3,"names":["CommonActions","deepEqual","React","isValidElementType","useLatestCallback","deepFreeze","Group","isArrayEqual","isRecordEqual","NavigationBuilderContext","NavigationHelpersContext","NavigationMetaContext","NavigationRouteContext","NavigationStateContext","PreventRemoveProvider","Screen","PrivateValueStore","UnhandledActionContext","useChildListeners","useComponent","useCurrentRender","useDescriptors","useEventEmitter","useFocusedListenersChildrenAdapter","useFocusEvents","FocusedRouteKeyContext","useKeyedChildListeners","useLazyValue","useNavigationHelpers","NavigationStateListenerProvider","useOnAction","useOnGetState","useOnRouteFocus","useRegisterNavigator","useScheduleUpdate","jsx","_jsx","CONSUMED_PARAMS","Symbol","isScreen","child","type","isGroup","Fragment","isValidKey","key","undefined","getRouteConfigsFromChildren","children","groupKey","groupOptions","groupLayout","configs","Children","toArray","reduce","acc","isValidElement","props","Error","name","JSON","stringify","navigationKey","push","keys","options","layout","screenOptions","screenLayout","String","process","env","NODE_ENV","forEach","config","component","getComponent","console","warn","test","getStateFromParams","params","state","screen","initial","routes","path","useNavigationBuilder","createRouter","navigatorKey","route","use","isNestedParamsConsumed","screenListeners","router","routerOverrides","rest","routeConfigs","initialRouteName","every","original","overrides","screens","routeNames","map","routeKeyList","curr","join","routeParamList","initialParams","routeGetIdList","Object","assign","getId","length","isStateValid","useCallback","isStateInitialized","stale","doesStateHaveOnlyInvalidRoutes","r","includes","currentState","getState","getCurrentState","setState","setCurrentState","setKey","getKey","getIsInitial","stateCleanupRef","useRef","lastStateRef","current","stateBeforeInitialization","initializedState","isFirstStateInitialization","paramsUsedForInitialization","useMemo","getRehydratedState","initialRouteParamList","initialParamsFromParams","getInitialState","paramsForState","stateFromParams","hydratedState","routeNamesChangeBehavior","previousRouteKeyListRef","useEffect","previousRouteKeyList","unhandledState","setUnhandledState","useState","nextState","shouldClearUnhandledState","getStateForRouteNamesChange","routeKeyChanges","filter","didConsumeNestedParams","action","reset","navigate","merge","pop","updatedState","getStateForAction","defineProperty","value","enumerable","shouldUpdate","lastNotifiedStateRef","stateRef","useLayoutEffect","onEmitEvent","emitter","e","target","find","index","navigation","descriptors","listeners","concat","cb","i","self","lastIndexOf","listener","data","defaultPrevented","emit","childListeners","addListener","keyedListeners","addKeyedListener","onAction","actionListeners","beforeRemoveListeners","beforeRemove","routerConfigOptions","onRouteFocus","onUnhandledActionParent","onUnhandledAction","payload","focusedListeners","focus","getStateListeners","getRoutesFromState","NavigationContent","element","Provider"],"sourceRoot":"../../src","sources":["useNavigationBuilder.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["CommonActions","deepEqual","React","isValidElementType","useLatestCallback","ConsumedParamsContext","deepFreeze","Group","isArrayEqual","isRecordEqual","NavigationBuilderContext","NavigationHelpersContext","NavigationMetaContext","NavigationRouteContext","NavigationStateContext","PreventRemoveProvider","Screen","PrivateValueStore","UnhandledActionContext","useChildListeners","useComponent","useCurrentRender","useDescriptors","useEventEmitter","useFocusedListenersChildrenAdapter","useFocusEvents","FocusedRouteKeyContext","useKeyedChildListeners","useLazyValue","useNavigationHelpers","NavigationStateListenerProvider","useOnAction","useOnGetState","useOnRouteFocus","useRegisterNavigator","useScheduleUpdate","jsx","_jsx","isScreen","child","type","isGroup","Fragment","isValidKey","key","undefined","getRouteConfigsFromChildren","children","groupKey","groupOptions","groupLayout","configs","Children","toArray","reduce","acc","isValidElement","props","Error","name","JSON","stringify","navigationKey","push","keys","options","layout","screenOptions","screenLayout","String","process","env","NODE_ENV","forEach","config","component","getComponent","console","warn","test","getStateFromParams","params","state","screen","initial","routes","path","useNavigationBuilder","createRouter","navigatorKey","route","use","consumedParams","isNestedParamsConsumed","isConsumed","screenListeners","router","routerOverrides","rest","routeConfigs","initialRouteName","every","original","overrides","screens","routeNames","map","routeKeyList","curr","join","routeParamList","initialParams","routeGetIdList","Object","assign","getId","length","isStateValid","useCallback","isStateInitialized","stale","doesStateHaveOnlyInvalidRoutes","r","includes","currentState","getState","getCurrentState","setState","setCurrentState","setKey","getKey","getIsInitial","stateCleanupRef","useRef","lastStateRef","current","stateBeforeInitialization","initializedState","isFirstStateInitialization","paramsUsedForInitialization","useMemo","getRehydratedState","initialRouteParamList","initialParamsFromParams","getInitialState","paramsForState","stateFromParams","hydratedState","routeNamesChangeBehavior","previousRouteKeyListRef","useEffect","previousRouteKeyList","unhandledState","setUnhandledState","useState","nextState","shouldClearUnhandledState","getStateForRouteNamesChange","routeKeyChanges","filter","didConsumeNestedParams","action","reset","navigate","merge","pop","updatedState","getStateForAction","setConsumedParams","setConsumed","shouldUpdate","lastNotifiedStateRef","stateRef","useLayoutEffect","onEmitEvent","emitter","e","target","find","index","navigation","descriptors","listeners","concat","cb","i","self","lastIndexOf","listener","data","defaultPrevented","emit","childListeners","addListener","keyedListeners","addKeyedListener","onAction","actionListeners","beforeRemoveListeners","beforeRemove","routerConfigOptions","onRouteFocus","onUnhandledActionParent","onUnhandledAction","payload","focusedListeners","focus","getStateListeners","getRoutesFromState","NavigationContent","element","Provider","value"],"sourceRoot":"../../src","sources":["useNavigationBuilder.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ type ConsumedParamsContextValue = {
3
+ isConsumed: (params: object) => boolean;
4
+ setConsumed: (params: object) => void;
5
+ };
6
+ export declare const ConsumedParamsContext: React.Context<ConsumedParamsContextValue | undefined>;
7
+ export {};
8
+ //# sourceMappingURL=ConsumedParamsContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConsumedParamsContext.d.ts","sourceRoot":"","sources":["../../../src/ConsumedParamsContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,KAAK,0BAA0B,GAAG;IAChC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IACxC,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC,CAAC;AAEF,eAAO,MAAM,qBAAqB,uDAEtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SceneView.d.ts","sourceRoot":"","sources":["../../../src/SceneView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,YAAY,EACZ,KAAK,EACN,MAAM,2BAA2B,CAAC;AAWnC,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAGpE,KAAK,KAAK,CAAC,KAAK,SAAS,eAAe,EAAE,aAAa,SAAS,EAAE,IAAI;IACpE,MAAM,EAAE,oBAAoB,CAAC,aAAa,EAAE,MAAM,CAAC,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE,UAAU,EAAE,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;IACxE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,UAAU,EAAE,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;IACxE,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,IAAI,CAAC;CAC1B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,SAAS,CACvB,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,EACA,MAAM,EACN,KAAK,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,YAAY,GACb,EAAE,KAAK,CAAC,KAAK,EAAE,aAAa,CAAC,2CAoJ7B"}
1
+ {"version":3,"file":"SceneView.d.ts","sourceRoot":"","sources":["../../../src/SceneView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,YAAY,EACZ,KAAK,EACN,MAAM,2BAA2B,CAAC;AAYnC,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAGpE,KAAK,KAAK,CAAC,KAAK,SAAS,eAAe,EAAE,aAAa,SAAS,EAAE,IAAI;IACpE,MAAM,EAAE,oBAAoB,CAAC,aAAa,EAAE,MAAM,CAAC,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE,UAAU,EAAE,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;IACxE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,UAAU,EAAE,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;IACxE,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,IAAI,CAAC;CAC1B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,SAAS,CACvB,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,EACA,MAAM,EACN,KAAK,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,YAAY,GACb,EAAE,KAAK,CAAC,KAAK,EAAE,aAAa,CAAC,2CAqL7B"}
@@ -2,5 +2,5 @@ import * as React from 'react';
2
2
  /**
3
3
  * Component which prevents updates for children if no props changed
4
4
  */
5
- export declare const StaticContainer: React.NamedExoticComponent<any>;
5
+ export declare const StaticContainer: React.MemoExoticComponent<(props: any) => any>;
6
6
  //# sourceMappingURL=StaticContainer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StaticContainer.d.ts","sourceRoot":"","sources":["../../../src/StaticContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,eAAO,MAAM,eAAe,iCAwB3B,CAAC"}
1
+ {"version":3,"file":"StaticContainer.d.ts","sourceRoot":"","sources":["../../../src/StaticContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,eAAO,MAAM,eAAe,oCACM,GAAG,SAuBpC,CAAC"}
@@ -11,9 +11,18 @@ type ParamsForScreenComponent<T> = T extends (...args: any[]) => any ? HasArgume
11
11
  params: infer Params;
12
12
  };
13
13
  }> ? Params : undefined;
14
+ type ParamsForNestedNavigator<T extends {
15
+ config: StaticConfig<NavigatorTypeBagBase>;
16
+ }, ParamList extends {} = StaticParamList<T>> = {
17
+ [RouteName in keyof ParamList]-?: undefined extends ParamList[RouteName] ? never : RouteName;
18
+ }[keyof ParamList] extends never ? NavigatorScreenParams<ParamList> | undefined : NavigatorScreenParams<ParamList>;
14
19
  type ParamsForScreen<T> = T extends {
15
- screen: StaticNavigationBase;
16
- } ? NavigatorScreenParams<StaticParamList<T['screen']>> | undefined : T extends StaticNavigationBase ? NavigatorScreenParams<StaticParamList<T>> | undefined : T extends {
20
+ screen: {
21
+ config: StaticConfig<NavigatorTypeBagBase>;
22
+ };
23
+ } ? ParamsForNestedNavigator<T['screen']> : T extends {
24
+ config: StaticConfig<NavigatorTypeBagBase>;
25
+ } ? ParamsForNestedNavigator<T> : T extends {
17
26
  screen: React.ComponentType<any>;
18
27
  } ? ParamsForScreenComponent<T['screen']> : ParamsForScreenComponent<T>;
19
28
  type ParamsForLinking<Linking> = Linking extends {
@@ -27,7 +36,9 @@ type ParamsForLinking<Linking> = Linking extends {
27
36
  */
28
37
  type ParamsForConfig<Linking, Screen> = undefined extends Linking ? ParamsForScreen<Screen> : Linking extends ValidPathPattern | {
29
38
  path: ValidPathPattern;
30
- } ? Screen extends StaticNavigationBase ? FlatType<ParamsForLinking<Linking>> & ParamsForScreen<Screen> : undefined extends ParamsForScreen<Screen> ? FlatType<ParamsForLinking<Linking>> : FlatType<ParamsForLinking<Linking> & ParamsForScreen<Screen>> : ParamsForScreen<Screen>;
39
+ } ? Screen extends {
40
+ config: StaticConfig<NavigatorTypeBagBase>;
41
+ } ? FlatType<ParamsForLinking<Linking>> & ParamsForScreen<Screen> : undefined extends ParamsForScreen<Screen> ? FlatType<ParamsForLinking<Linking>> : FlatType<ParamsForLinking<Linking> & ParamsForScreen<Screen>> : ParamsForScreen<Screen>;
31
42
  type ParamListForScreens<Screens> = {
32
43
  [Key in KeysOf<Screens>]: Screens[Key] extends StaticScreenConfig<infer Linking, infer Screen, any, any, any, any> ? ParamsForConfig<Linking, Screen> : ParamsForScreen<Screens[Key]>;
33
44
  };
@@ -94,7 +105,7 @@ export type StaticScreenConfigLinking = string | (StaticScreenConfigLinkingAlias
94
105
  */
95
106
  alias?: (string | StaticScreenConfigLinkingAlias)[];
96
107
  }) | undefined;
97
- export type StaticScreenConfigScreen = React.ComponentType<any> | StaticNavigation<any, any, any>;
108
+ export type StaticScreenConfigScreen = React.ComponentType<any> | StaticNavigation<any>;
98
109
  export type StaticScreenConfig<Linking extends StaticScreenConfigLinking, Screen, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, Navigation, Params = ParamsForConfig<Linking, Screen>> = {
99
110
  /**
100
111
  * Static navigation config or Component to render for the screen.
@@ -210,10 +221,10 @@ export type StaticScreenConfig<Linking extends StaticScreenConfigLinking, Screen
210
221
  navigationKey?: string;
211
222
  };
212
223
  type StaticConfigScreens<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigationList extends NavigationListBase<ParamList>> = {
213
- [RouteName in keyof ParamList]: React.ComponentType<any> | StaticNavigation<any, any, any> | StaticScreenConfig<{
224
+ [RouteName in keyof ParamList]: React.ComponentType<any> | StaticNavigation<any> | StaticScreenConfig<{
214
225
  path: string;
215
226
  parse?: Record<string, ((value: string) => any) | StandardSchemaV1<any, any>>;
216
- } | string | undefined, StaticNavigation<any, any, any> | React.ComponentType<any>, State, ScreenOptions, EventMap, NavigationList[RouteName], any>;
227
+ } | string | undefined, StaticNavigation<any> | React.ComponentType<any>, State, ScreenOptions, EventMap, NavigationList[RouteName], any>;
217
228
  };
218
229
  type StaticConfigGroup<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigationList extends NavigationListBase<ParamList>> = Omit<RouteGroupConfig<ParamList, ScreenOptions, NavigationList[keyof ParamList]>, 'screens' | 'children'> & {
219
230
  /**
@@ -286,13 +297,9 @@ export type StaticScreenProps<T extends Record<string, unknown> | undefined> = {
286
297
  export type StaticParamList<T extends {
287
298
  readonly config: any;
288
299
  }> = FlatType<ParamListForScreens<T['config']['screens']> & ParamListForGroups<T['config']['groups']>>;
289
- type StaticNavigationBase = {
290
- config: StaticConfig<NavigatorTypeBagBase>;
291
- };
292
- export type StaticNavigation<NavigatorProps, GroupProps, ScreenProps> = StaticNavigationBase & {
293
- Navigator: React.ComponentType<NavigatorProps>;
294
- Group: React.ComponentType<GroupProps>;
295
- Screen: React.ComponentType<ScreenProps>;
300
+ export type StaticNavigation<NavigatorTypeBag extends NavigatorTypeBagBase> = {
301
+ config: StaticConfig<NavigatorTypeBag>;
302
+ getComponent: () => React.ComponentType<{}>;
296
303
  };
297
304
  /**
298
305
  * Create a component that renders a navigator based on the static configuration.
@@ -301,7 +308,12 @@ export type StaticNavigation<NavigatorProps, GroupProps, ScreenProps> = StaticNa
301
308
  * @param displayName Name of the component to be displayed in React DevTools.
302
309
  * @returns A component which renders the navigator.
303
310
  */
304
- export declare function createComponentForStaticNavigation<T extends StaticNavigation<any, any, any>>(tree: T, displayName: string): React.ComponentType<Omit<React.ComponentProps<T['Navigator']>, 'children'>>;
311
+ export declare function createComponentForStaticConfig<T extends {
312
+ Navigator: React.ComponentType<any>;
313
+ Group: React.ComponentType<any>;
314
+ Screen: React.ComponentType<any>;
315
+ config: StaticConfig<NavigatorTypeBagBase>;
316
+ }>(tree: T, displayName: string): React.ComponentType<Omit<React.ComponentProps<T['Navigator']>, 'children'>>;
305
317
  type LinkingForGroup = Pick<PathConfig<any>, 'path' | 'stringify' | 'parse'> | string;
306
318
  type TreeForPathConfig = {
307
319
  config: {