@react-navigation/core 7.0.0-alpha.5 → 7.0.0-alpha.7

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 (81) hide show
  1. package/lib/commonjs/BaseNavigationContainer.js +6 -1
  2. package/lib/commonjs/BaseNavigationContainer.js.map +1 -1
  3. package/lib/commonjs/index.js +27 -3
  4. package/lib/commonjs/index.js.map +1 -1
  5. package/lib/commonjs/theming/ThemeContext.js +12 -0
  6. package/lib/commonjs/theming/ThemeContext.js.map +1 -0
  7. package/lib/commonjs/theming/ThemeProvider.js +20 -0
  8. package/lib/commonjs/theming/ThemeProvider.js.map +1 -0
  9. package/lib/commonjs/theming/useTheme.js +18 -0
  10. package/lib/commonjs/theming/useTheme.js.map +1 -0
  11. package/lib/commonjs/types.js.map +1 -1
  12. package/lib/commonjs/useDescriptors.js +79 -16
  13. package/lib/commonjs/useDescriptors.js.map +1 -1
  14. package/lib/commonjs/useNavigationBuilder.js +10 -3
  15. package/lib/commonjs/useNavigationBuilder.js.map +1 -1
  16. package/lib/commonjs/useNavigationCache.js +55 -14
  17. package/lib/commonjs/useNavigationCache.js.map +1 -1
  18. package/lib/commonjs/useOnAction.js +3 -1
  19. package/lib/commonjs/useOnAction.js.map +1 -1
  20. package/lib/commonjs/usePreventRemove.js +2 -2
  21. package/lib/commonjs/usePreventRemove.js.map +1 -1
  22. package/lib/module/BaseNavigationContainer.js +6 -1
  23. package/lib/module/BaseNavigationContainer.js.map +1 -1
  24. package/lib/module/index.js +4 -1
  25. package/lib/module/index.js.map +1 -1
  26. package/lib/module/theming/ThemeContext.js +4 -0
  27. package/lib/module/theming/ThemeContext.js.map +1 -0
  28. package/lib/module/theming/ThemeProvider.js +12 -0
  29. package/lib/module/theming/ThemeProvider.js.map +1 -0
  30. package/lib/module/theming/useTheme.js +10 -0
  31. package/lib/module/theming/useTheme.js.map +1 -0
  32. package/lib/module/types.js.map +1 -1
  33. package/lib/module/useDescriptors.js +79 -16
  34. package/lib/module/useDescriptors.js.map +1 -1
  35. package/lib/module/useNavigationBuilder.js +10 -3
  36. package/lib/module/useNavigationBuilder.js.map +1 -1
  37. package/lib/module/useNavigationCache.js +55 -14
  38. package/lib/module/useNavigationCache.js.map +1 -1
  39. package/lib/module/useOnAction.js +3 -1
  40. package/lib/module/useOnAction.js.map +1 -1
  41. package/lib/module/usePreventRemove.js +1 -1
  42. package/lib/module/usePreventRemove.js.map +1 -1
  43. package/lib/typescript/src/BaseNavigationContainer.d.ts +1 -0
  44. package/lib/typescript/src/BaseNavigationContainer.d.ts.map +1 -1
  45. package/lib/typescript/src/NavigationStateContext.d.ts +2 -18
  46. package/lib/typescript/src/NavigationStateContext.d.ts.map +1 -1
  47. package/lib/typescript/src/findFocusedRoute.d.ts +1 -9
  48. package/lib/typescript/src/findFocusedRoute.d.ts.map +1 -1
  49. package/lib/typescript/src/index.d.ts +4 -1
  50. package/lib/typescript/src/index.d.ts.map +1 -1
  51. package/lib/typescript/src/theming/ThemeContext.d.ts +3 -0
  52. package/lib/typescript/src/theming/ThemeContext.d.ts.map +1 -0
  53. package/lib/typescript/src/theming/ThemeProvider.d.ts +8 -0
  54. package/lib/typescript/src/theming/ThemeProvider.d.ts.map +1 -0
  55. package/lib/typescript/src/theming/useTheme.d.ts +2 -0
  56. package/lib/typescript/src/theming/useTheme.d.ts.map +1 -0
  57. package/lib/typescript/src/types.d.ts +47 -1
  58. package/lib/typescript/src/types.d.ts.map +1 -1
  59. package/lib/typescript/src/useDescriptors.d.ts +106 -54
  60. package/lib/typescript/src/useDescriptors.d.ts.map +1 -1
  61. package/lib/typescript/src/useNavigationBuilder.d.ts +57 -64
  62. package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
  63. package/lib/typescript/src/useNavigationCache.d.ts +52 -2
  64. package/lib/typescript/src/useNavigationCache.d.ts.map +1 -1
  65. package/lib/typescript/src/useNavigationHelpers.d.ts +8 -55
  66. package/lib/typescript/src/useNavigationHelpers.d.ts.map +1 -1
  67. package/lib/typescript/src/useOnAction.d.ts.map +1 -1
  68. package/lib/typescript/src/usePreventRemove.d.ts +1 -1
  69. package/lib/typescript/src/usePreventRemove.d.ts.map +1 -1
  70. package/package.json +3 -3
  71. package/src/BaseNavigationContainer.tsx +6 -1
  72. package/src/index.tsx +4 -1
  73. package/src/theming/ThemeContext.tsx +7 -0
  74. package/src/theming/ThemeProvider.tsx +14 -0
  75. package/src/theming/useTheme.tsx +15 -0
  76. package/src/types.tsx +66 -1
  77. package/src/useDescriptors.tsx +148 -34
  78. package/src/useNavigationBuilder.tsx +18 -4
  79. package/src/useNavigationCache.tsx +84 -23
  80. package/src/useOnAction.tsx +6 -1
  81. package/src/usePreventRemove.tsx +1 -1
@@ -3,6 +3,7 @@ import { NavigationBuilderContext } from './NavigationBuilderContext';
3
3
  import { NavigationContext } from './NavigationContext';
4
4
  import { NavigationRouteContext } from './NavigationRouteContext';
5
5
  import { SceneView } from './SceneView';
6
+ import { ThemeContext } from './theming/ThemeContext';
6
7
  import { useNavigationCache } from './useNavigationCache';
7
8
  import { useRouteCache } from './useRouteCache';
8
9
  /**
@@ -19,6 +20,7 @@ export function useDescriptors(_ref) {
19
20
  screens,
20
21
  navigation,
21
22
  screenOptions,
23
+ screenLayout,
22
24
  onAction,
23
25
  getState,
24
26
  setState,
@@ -28,6 +30,7 @@ export function useDescriptors(_ref) {
28
30
  router,
29
31
  emitter
30
32
  } = _ref;
33
+ const theme = React.useContext(ThemeContext);
31
34
  const [options, setOptions] = React.useState({});
32
35
  const {
33
36
  onDispatchAction,
@@ -44,7 +47,10 @@ export function useDescriptors(_ref) {
44
47
  onOptionsChange,
45
48
  stackRef
46
49
  }), [navigation, onAction, addListener, addKeyedListener, onRouteFocus, onDispatchAction, onOptionsChange, stackRef]);
47
- const navigations = useNavigationCache({
50
+ const {
51
+ base,
52
+ navigations
53
+ } = useNavigationCache({
48
54
  state,
49
55
  getState,
50
56
  navigation,
@@ -53,10 +59,9 @@ export function useDescriptors(_ref) {
53
59
  emitter
54
60
  });
55
61
  const routes = useRouteCache(state.routes);
56
- return routes.reduce((acc, route, i) => {
62
+ const getOptions = (route, navigation, overrides) => {
57
63
  const config = screens[route.name];
58
64
  const screen = config.props;
59
- const navigation = navigations[route.key];
60
65
  const optionsList = [
61
66
  // The default `screenOptions` passed to the navigator
62
67
  screenOptions,
@@ -65,13 +70,18 @@ export function useDescriptors(_ref) {
65
70
  // The `options` prop passed to `Screen` elements,
66
71
  screen.options,
67
72
  // The options set via `navigation.setOptions`
68
- options[route.key]];
69
- const customOptions = optionsList.reduce((acc, curr) => Object.assign(acc,
73
+ overrides];
74
+ return optionsList.reduce((acc, curr) => Object.assign(acc,
70
75
  // @ts-expect-error: we check for function but TS still complains
71
76
  typeof curr !== 'function' ? curr : curr({
72
77
  route,
73
- navigation
78
+ navigation,
79
+ theme
74
80
  })), {});
81
+ };
82
+ const render = (route, navigation, customOptions, routeState) => {
83
+ const config = screens[route.name];
84
+ const screen = config.props;
75
85
  const clearOptions = () => setOptions(o => {
76
86
  if (route.key in o) {
77
87
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -83,23 +93,45 @@ export function useDescriptors(_ref) {
83
93
  }
84
94
  return o;
85
95
  });
86
- const element = /*#__PURE__*/React.createElement(NavigationBuilderContext.Provider, {
87
- key: route.key,
88
- value: context
89
- }, /*#__PURE__*/React.createElement(NavigationContext.Provider, {
90
- value: navigation
91
- }, /*#__PURE__*/React.createElement(NavigationRouteContext.Provider, {
92
- value: route
93
- }, /*#__PURE__*/React.createElement(SceneView, {
96
+ const layout =
97
+ // The `layout` prop passed to `Screen` elements,
98
+ screen.layout ??
99
+ // The `screenLayout` props passed to `Group` elements
100
+ config.layout ??
101
+ // The default `screenLayout` passed to the navigator
102
+ screenLayout;
103
+ let element = /*#__PURE__*/React.createElement(SceneView, {
94
104
  navigation: navigation,
95
105
  route: route,
96
106
  screen: screen,
97
- routeState: state.routes[i].state,
107
+ routeState: routeState,
98
108
  getState: getState,
99
109
  setState: setState,
100
110
  options: customOptions,
101
111
  clearOptions: clearOptions
102
- }))));
112
+ });
113
+ if (layout != null) {
114
+ element = layout({
115
+ route,
116
+ navigation,
117
+ // @ts-expect-error: in practice `theme` will be defined
118
+ theme,
119
+ children: element
120
+ });
121
+ }
122
+ return /*#__PURE__*/React.createElement(NavigationBuilderContext.Provider, {
123
+ key: route.key,
124
+ value: context
125
+ }, /*#__PURE__*/React.createElement(NavigationContext.Provider, {
126
+ value: navigation
127
+ }, /*#__PURE__*/React.createElement(NavigationRouteContext.Provider, {
128
+ value: route
129
+ }, element)));
130
+ };
131
+ const descriptors = routes.reduce((acc, route, i) => {
132
+ const navigation = navigations[route.key];
133
+ const customOptions = getOptions(route, navigation, options[route.key]);
134
+ const element = render(route, navigation, customOptions, state.routes[i].state);
103
135
  acc[route.key] = {
104
136
  route,
105
137
  // @ts-expect-error: it's missing action helpers, fix later
@@ -111,5 +143,36 @@ export function useDescriptors(_ref) {
111
143
  };
112
144
  return acc;
113
145
  }, {});
146
+
147
+ /**
148
+ * Create a descriptor object for a route.
149
+ *
150
+ * @param route Route object for which the descriptor should be created
151
+ * @param placeholder Whether the descriptor should be a placeholder, e.g. for a route not yet in the state
152
+ * @returns Descriptor object
153
+ */
154
+ const describe = (route, placeholder) => {
155
+ if (!placeholder) {
156
+ if (!(route.key in descriptors)) {
157
+ throw new Error(`Couldn't find a route with the key ${route.key}.`);
158
+ }
159
+ return descriptors[route.key];
160
+ }
161
+ const navigation = base;
162
+ const customOptions = getOptions(route, navigation, {});
163
+ const element = render(route, navigation, customOptions, undefined);
164
+ return {
165
+ route,
166
+ navigation,
167
+ render() {
168
+ return element;
169
+ },
170
+ options: customOptions
171
+ };
172
+ };
173
+ return {
174
+ describe,
175
+ descriptors
176
+ };
114
177
  }
115
178
  //# sourceMappingURL=useDescriptors.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","NavigationBuilderContext","NavigationContext","NavigationRouteContext","SceneView","useNavigationCache","useRouteCache","useDescriptors","_ref","state","screens","navigation","screenOptions","onAction","getState","setState","addListener","addKeyedListener","onRouteFocus","router","emitter","options","setOptions","useState","onDispatchAction","onOptionsChange","stackRef","useContext","context","useMemo","navigations","routes","reduce","acc","route","i","config","name","screen","props","key","optionsList","filter","Boolean","customOptions","curr","Object","assign","clearOptions","o","_","rest","element","createElement","Provider","value","routeState","render"],"sourceRoot":"../../src","sources":["useDescriptors.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","NavigationBuilderContext","NavigationContext","NavigationRouteContext","SceneView","ThemeContext","useNavigationCache","useRouteCache","useDescriptors","_ref","state","screens","navigation","screenOptions","screenLayout","onAction","getState","setState","addListener","addKeyedListener","onRouteFocus","router","emitter","theme","useContext","options","setOptions","useState","onDispatchAction","onOptionsChange","stackRef","context","useMemo","base","navigations","routes","getOptions","route","overrides","config","name","screen","props","optionsList","filter","Boolean","reduce","acc","curr","Object","assign","render","customOptions","routeState","clearOptions","o","key","_","rest","layout","element","createElement","children","Provider","value","descriptors","i","describe","placeholder","Error","undefined"],"sourceRoot":"../../src","sources":["useDescriptors.tsx"],"mappings":"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"}
@@ -35,7 +35,7 @@ const isValidKey = key => key === undefined || typeof key === 'string' && key !=
35
35
  *
36
36
  * @param children React Elements to extract the config from.
37
37
  */
38
- const getRouteConfigsFromChildren = (children, groupKey, groupOptions) => {
38
+ const getRouteConfigsFromChildren = (children, groupKey, groupOptions, groupLayout) => {
39
39
  const configs = React.Children.toArray(children).reduce((acc, child) => {
40
40
  if ( /*#__PURE__*/React.isValidElement(child)) {
41
41
  if (child.type === Screen) {
@@ -48,6 +48,7 @@ const getRouteConfigsFromChildren = (children, groupKey, groupOptions) => {
48
48
  acc.push({
49
49
  keys: [groupKey, child.props.navigationKey],
50
50
  options: groupOptions,
51
+ layout: groupLayout,
51
52
  props: child.props
52
53
  });
53
54
  return acc;
@@ -59,7 +60,7 @@ const getRouteConfigsFromChildren = (children, groupKey, groupOptions) => {
59
60
 
60
61
  // When we encounter a fragment or group, we need to dive into its children to extract the configs
61
62
  // This is handy to conditionally define a group of screens
62
- acc.push(...getRouteConfigsFromChildren(child.props.children, child.props.navigationKey, child.type !== Group ? groupOptions : groupOptions != null ? [...groupOptions, child.props.screenOptions] : [child.props.screenOptions]));
63
+ acc.push(...getRouteConfigsFromChildren(child.props.children, child.props.navigationKey, child.type !== Group ? groupOptions : groupOptions != null ? [...groupOptions, child.props.screenOptions] : [child.props.screenOptions], child.props.screenLayout ?? groupLayout));
63
64
  return acc;
64
65
  }
65
66
  }
@@ -127,6 +128,7 @@ export function useNavigationBuilder(createRouter, options) {
127
128
  children,
128
129
  layout,
129
130
  screenOptions,
131
+ screenLayout,
130
132
  screenListeners,
131
133
  ...rest
132
134
  } = options;
@@ -410,11 +412,15 @@ export function useNavigationBuilder(createRouter, options) {
410
412
  getState,
411
413
  getStateListeners: keyedListeners.getState
412
414
  });
413
- const descriptors = useDescriptors({
415
+ const {
416
+ describe,
417
+ descriptors
418
+ } = useDescriptors({
414
419
  state,
415
420
  screens,
416
421
  navigation,
417
422
  screenOptions,
423
+ screenLayout,
418
424
  onAction,
419
425
  getState,
420
426
  setState,
@@ -444,6 +450,7 @@ export function useNavigationBuilder(createRouter, options) {
444
450
  return {
445
451
  state,
446
452
  navigation,
453
+ describe,
447
454
  descriptors,
448
455
  NavigationContent
449
456
  };
@@ -1 +1 @@
1
- {"version":3,"names":["CommonActions","React","isValidElementType","useLatestCallback","Group","isArrayEqual","isRecordEqual","NavigationHelpersContext","NavigationRouteContext","NavigationStateContext","PreventRemoveProvider","Screen","PrivateValueStore","useChildListeners","useComponent","useCurrentRender","useDescriptors","useEventEmitter","useFocusedListenersChildrenAdapter","useFocusEvents","useIsomorphicLayoutEffect","useKeyedChildListeners","useNavigationHelpers","useOnAction","useOnGetState","useOnRouteFocus","useRegisterNavigator","isValidKey","key","undefined","getRouteConfigsFromChildren","children","groupKey","groupOptions","configs","Children","toArray","reduce","acc","child","isValidElement","type","props","navigationKey","Error","JSON","stringify","name","push","keys","options","Fragment","screenOptions","String","process","env","NODE_ENV","forEach","config","component","getComponent","console","warn","test","useNavigationBuilder","createRouter","navigatorKey","route","useContext","layout","screenListeners","rest","current","router","useRef","routeConfigs","screens","routeNames","map","routeKeyList","curr","join","routeParamList","initialParams","routeGetIdList","Object","assign","getId","length","isStateValid","useCallback","state","isStateInitialized","stale","currentState","getState","getCurrentState","setState","setCurrentState","setKey","getKey","getIsInitial","stateCleanedUp","initializedState","isFirstStateInitialization","useMemo","initialRouteParamList","initialParamsFromParams","params","initial","screen","getInitialState","stateFromParams","index","routes","path","getRehydratedState","previousRouteKeyListRef","useEffect","previousRouteKeyList","nextState","navigatorStateForNextRouteNamesChange","getStateForRouteNamesChange","routeKeyChanges","filter","previousNestedParamsRef","previousParams","action","reset","navigate","updatedState","getStateForAction","shouldUpdate","emitter","e","target","find","navigation","descriptors","listeners","concat","cb","i","self","lastIndexOf","listener","emit","data","childListeners","addListener","keyedListeners","addKeyedListener","onAction","actionListeners","beforeRemoveListeners","beforeRemove","routerConfigOptions","onRouteFocus","id","focusedListeners","focus","getStateListeners","NavigationContent","element","createElement","Provider","value"],"sourceRoot":"../../src","sources":["useNavigationBuilder.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["CommonActions","React","isValidElementType","useLatestCallback","Group","isArrayEqual","isRecordEqual","NavigationHelpersContext","NavigationRouteContext","NavigationStateContext","PreventRemoveProvider","Screen","PrivateValueStore","useChildListeners","useComponent","useCurrentRender","useDescriptors","useEventEmitter","useFocusedListenersChildrenAdapter","useFocusEvents","useIsomorphicLayoutEffect","useKeyedChildListeners","useNavigationHelpers","useOnAction","useOnGetState","useOnRouteFocus","useRegisterNavigator","isValidKey","key","undefined","getRouteConfigsFromChildren","children","groupKey","groupOptions","groupLayout","configs","Children","toArray","reduce","acc","child","isValidElement","type","props","navigationKey","Error","JSON","stringify","name","push","keys","options","layout","Fragment","screenOptions","screenLayout","String","process","env","NODE_ENV","forEach","config","component","getComponent","console","warn","test","useNavigationBuilder","createRouter","navigatorKey","route","useContext","screenListeners","rest","current","router","useRef","routeConfigs","screens","routeNames","map","routeKeyList","curr","join","routeParamList","initialParams","routeGetIdList","Object","assign","getId","length","isStateValid","useCallback","state","isStateInitialized","stale","currentState","getState","getCurrentState","setState","setCurrentState","setKey","getKey","getIsInitial","stateCleanedUp","initializedState","isFirstStateInitialization","useMemo","initialRouteParamList","initialParamsFromParams","params","initial","screen","getInitialState","stateFromParams","index","routes","path","getRehydratedState","previousRouteKeyListRef","useEffect","previousRouteKeyList","nextState","navigatorStateForNextRouteNamesChange","getStateForRouteNamesChange","routeKeyChanges","filter","previousNestedParamsRef","previousParams","action","reset","navigate","updatedState","getStateForAction","shouldUpdate","emitter","e","target","find","navigation","descriptors","listeners","concat","cb","i","self","lastIndexOf","listener","emit","data","childListeners","addListener","keyedListeners","addKeyedListener","onAction","actionListeners","beforeRemoveListeners","beforeRemove","routerConfigOptions","onRouteFocus","id","focusedListeners","focus","getStateListeners","describe","NavigationContent","element","createElement","Provider","value"],"sourceRoot":"../../src","sources":["useNavigationBuilder.tsx"],"mappings":"AAAA,SACEA,aAAa,QAUR,2BAA2B;AAClC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAASC,kBAAkB,QAAQ,UAAU;AAC7C,OAAOC,iBAAiB,MAAM,qBAAqB;AAEnD,SAASC,KAAK,QAAQ,SAAS;AAC/B,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,wBAAwB,QAAQ,4BAA4B;AACrE,SAASC,sBAAsB,QAAQ,0BAA0B;AACjE,SAASC,sBAAsB,QAAQ,0BAA0B;AACjE,SAASC,qBAAqB,QAAQ,yBAAyB;AAC/D,SAASC,MAAM,QAAQ,UAAU;AACjC,SAKEC,iBAAiB,QAEZ,SAAS;AAChB,SAASC,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAAsCC,cAAc,QAAQ,kBAAkB;AAC9E,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,kCAAkC,QAAQ,sCAAsC;AACzF,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,yBAAyB,QAAQ,6BAA6B;AACvE,SAASC,sBAAsB,QAAQ,0BAA0B;AACjE,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,oBAAoB,QAAQ,wBAAwB;;AAE7D;AACAd,iBAAiB;AAOjB,MAAMe,UAAU,GAAIC,GAAY,IAC9BA,GAAG,KAAKC,SAAS,IAAK,OAAOD,GAAG,KAAK,QAAQ,IAAIA,GAAG,KAAK,EAAG;;AAE9D;AACA;AACA;AACA;AACA;AACA,MAAME,2BAA2B,GAAGA,CAKlCC,QAAyB,EACzBC,QAAiB,EACjBC,YAIY,EACZC,WAA8E,KAC3E;EACH,MAAMC,OAAO,GAAGlC,KAAK,CAACmC,QAAQ,CAACC,OAAO,CAACN,QAAQ,CAAC,CAACO,MAAM,CAErD,CAACC,GAAG,EAAEC,KAAK,KAAK;IAChB,kBAAIvC,KAAK,CAACwC,cAAc,CAACD,KAAK,CAAC,EAAE;MAC/B,IAAIA,KAAK,CAACE,IAAI,KAAK/B,MAAM,EAAE;QACzB;QACA;;QAEA,IAAI,CAACgB,UAAU,CAACa,KAAK,CAACG,KAAK,CAACC,aAAa,CAAC,EAAE;UAC1C,MAAM,IAAIC,KAAK,CACZ,wCAAuCC,IAAI,CAACC,SAAS,CACpDP,KAAK,CAACG,KAAK,CAACC,aACd,CAAE,qBACAJ,KAAK,CAACG,KAAK,CAACK,IACb,kDACH,CAAC;QACH;QAEAT,GAAG,CAACU,IAAI,CAAC;UACPC,IAAI,EAAE,CAAClB,QAAQ,EAAEQ,KAAK,CAACG,KAAK,CAACC,aAAa,CAAC;UAC3CO,OAAO,EAAElB,YAAY;UACrBmB,MAAM,EAAElB,WAAW;UACnBS,KAAK,EAAEH,KAAK,CAACG;QAOf,CAAC,CAAC;QAEF,OAAOJ,GAAG;MACZ;MAEA,IAAIC,KAAK,CAACE,IAAI,KAAKzC,KAAK,CAACoD,QAAQ,IAAIb,KAAK,CAACE,IAAI,KAAKtC,KAAK,EAAE;QACzD,IAAI,CAACuB,UAAU,CAACa,KAAK,CAACG,KAAK,CAACC,aAAa,CAAC,EAAE;UAC1C,MAAM,IAAIC,KAAK,CACZ,wCAAuCC,IAAI,CAACC,SAAS,CACpDP,KAAK,CAACG,KAAK,CAACC,aACd,CAAE,gEACJ,CAAC;QACH;;QAEA;QACA;QACAL,GAAG,CAACU,IAAI,CACN,GAAGnB,2BAA2B,CAC5BU,KAAK,CAACG,KAAK,CAACZ,QAAQ,EACpBS,KAAK,CAACG,KAAK,CAACC,aAAa,EACzBJ,KAAK,CAACE,IAAI,KAAKtC,KAAK,GAChB6B,YAAY,GACZA,YAAY,IAAI,IAAI,GACpB,CAAC,GAAGA,YAAY,EAAEO,KAAK,CAACG,KAAK,CAACW,aAAa,CAAC,GAC5C,CAACd,KAAK,CAACG,KAAK,CAACW,aAAa,CAAC,EAC/Bd,KAAK,CAACG,KAAK,CAACY,YAAY,IAAIrB,WAC9B,CACF,CAAC;QACD,OAAOK,GAAG;MACZ;IACF;IAEA,MAAM,IAAIM,KAAK,CACZ,oGACC,aAAA5C,KAAK,CAACwC,cAAc,CAACD,KAAK,CAAC,GACtB,IACC,OAAOA,KAAK,CAACE,IAAI,KAAK,QAAQ,GAAGF,KAAK,CAACE,IAAI,GAAGF,KAAK,CAACE,IAAI,EAAEM,IAC3D,IACCR,KAAK,CAACG,KAAK,IAAI,IAAI,IACnB,OAAOH,KAAK,CAACG,KAAK,KAAK,QAAQ,IAC/B,MAAM,IAAIH,KAAK,CAACG,KAAK,IACrBH,KAAK,CAACG,KAAK,EAAEK,IAAI,GACZ,oBAAmBR,KAAK,CAACG,KAAK,CAACK,IAAK,GAAE,GACvC,EACL,EAAC,GACF,OAAOR,KAAK,KAAK,QAAQ,GACzBM,IAAI,CAACC,SAAS,CAACP,KAAK,CAAC,GACpB,IAAGgB,MAAM,CAAChB,KAAK,CAAE,GACvB,4FACH,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,IAAIiB,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;IACzCxB,OAAO,CAACyB,OAAO,CAAEC,MAAM,IAAK;MAC1B,MAAM;QAAEb,IAAI;QAAEjB,QAAQ;QAAE+B,SAAS;QAAEC;MAAa,CAAC,GAAGF,MAAM,CAAClB,KAAK;MAEhE,IAAI,OAAOK,IAAI,KAAK,QAAQ,IAAI,CAACA,IAAI,EAAE;QACrC,MAAM,IAAIH,KAAK,CACZ,wBAAuBC,IAAI,CAACC,SAAS,CACpCC,IACF,CAAE,kDACJ,CAAC;MACH;MAEA,IACEjB,QAAQ,IAAI,IAAI,IAChB+B,SAAS,KAAKjC,SAAS,IACvBkC,YAAY,KAAKlC,SAAS,EAC1B;QACA,IAAIE,QAAQ,IAAI,IAAI,IAAI+B,SAAS,KAAKjC,SAAS,EAAE;UAC/C,MAAM,IAAIgB,KAAK,CACZ,6DAA4DG,IAAK,oCACpE,CAAC;QACH;QAEA,IAAIjB,QAAQ,IAAI,IAAI,IAAIgC,YAAY,KAAKlC,SAAS,EAAE;UAClD,MAAM,IAAIgB,KAAK,CACZ,gEAA+DG,IAAK,oCACvE,CAAC;QACH;QAEA,IAAIc,SAAS,KAAKjC,SAAS,IAAIkC,YAAY,KAAKlC,SAAS,EAAE;UACzD,MAAM,IAAIgB,KAAK,CACZ,iEAAgEG,IAAK,oCACxE,CAAC;QACH;QAEA,IAAIjB,QAAQ,IAAI,IAAI,IAAI,OAAOA,QAAQ,KAAK,UAAU,EAAE;UACtD,MAAM,IAAIc,KAAK,CACZ,4DAA2DG,IAAK,qDACnE,CAAC;QACH;QAEA,IAAIc,SAAS,KAAKjC,SAAS,IAAI,CAAC3B,kBAAkB,CAAC4D,SAAS,CAAC,EAAE;UAC7D,MAAM,IAAIjB,KAAK,CACZ,6DAA4DG,IAAK,wCACpE,CAAC;QACH;QAEA,IAAIe,YAAY,KAAKlC,SAAS,IAAI,OAAOkC,YAAY,KAAK,UAAU,EAAE;UACpE,MAAM,IAAIlB,KAAK,CACZ,gEAA+DG,IAAK,uDACvE,CAAC;QACH;QAEA,IAAI,OAAOc,SAAS,KAAK,UAAU,EAAE;UACnC,IAAIA,SAAS,CAACd,IAAI,KAAK,WAAW,EAAE;YAClC;YACA;YACA;YACAgB,OAAO,CAACC,IAAI,CACT,qFAAoFjB,IAAK,uRAC5F,CAAC;UACH,CAAC,MAAM,IAAI,QAAQ,CAACkB,IAAI,CAACJ,SAAS,CAACd,IAAI,CAAC,EAAE;YACxCgB,OAAO,CAACC,IAAI,CACT,kCAAiCH,SAAS,CAACd,IAAK,qBAAoBA,IAAK,yMAC5E,CAAC;UACH;QACF;MACF,CAAC,MAAM;QACL,MAAM,IAAIH,KAAK,CACZ,kFAAiFG,IAAK,qLACzF,CAAC;MACH;IACF,CAAC,CAAC;EACJ;EAEA,OAAOb,OAAO;AAChB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASgC,oBAAoBA,CAOlCC,YAAsD,EACtDjB,OAMe,EACf;EACA,MAAMkB,YAAY,GAAG3C,oBAAoB,CAAC,CAAC;EAE3C,MAAM4C,KAAK,GAAGrE,KAAK,CAACsE,UAAU,CAAC/D,sBAAsB,CAExC;EAEb,MAAM;IACJuB,QAAQ;IACRqB,MAAM;IACNE,aAAa;IACbC,YAAY;IACZiB,eAAe;IACf,GAAGC;EACL,CAAC,GAAGtB,OAAO;EAEX,MAAM;IAAEuB,OAAO,EAAEC;EAAO,CAAC,GAAG1E,KAAK,CAAC2E,MAAM,CACtCR,YAAY,CAACK,IAAgC,CAC/C,CAAC;EAED,MAAMI,YAAY,GAAG/C,2BAA2B,CAI9CC,QAAQ,CAAC;EAEX,MAAM+C,OAAO,GAAGD,YAAY,CAACvC,MAAM,CAEjC,CAACC,GAAG,EAAEsB,MAAM,KAAK;IACjB,IAAIA,MAAM,CAAClB,KAAK,CAACK,IAAI,IAAIT,GAAG,EAAE;MAC5B,MAAM,IAAIM,KAAK,CACZ,6GAA4GgB,MAAM,CAAClB,KAAK,CAACK,IAAK,IACjI,CAAC;IACH;IAEAT,GAAG,CAACsB,MAAM,CAAClB,KAAK,CAACK,IAAI,CAAC,GAAGa,MAAM;IAC/B,OAAOtB,GAAG;EACZ,CAAC,EAAE,CAAC,CAAC,CAAC;EAEN,MAAMwC,UAAU,GAAGF,YAAY,CAACG,GAAG,CAAEnB,MAAM,IAAKA,MAAM,CAAClB,KAAK,CAACK,IAAI,CAAC;EAClE,MAAMiC,YAAY,GAAGF,UAAU,CAACzC,MAAM,CACpC,CAACC,GAAG,EAAE2C,IAAI,KAAK;IACb3C,GAAG,CAAC2C,IAAI,CAAC,GAAGJ,OAAO,CAACI,IAAI,CAAC,CAAChC,IAAI,CAAC8B,GAAG,CAAEpD,GAAG,IAAKA,GAAG,IAAI,EAAE,CAAC,CAACuD,IAAI,CAAC,GAAG,CAAC;IAChE,OAAO5C,GAAG;EACZ,CAAC,EACD,CAAC,CACH,CAAC;EACD,MAAM6C,cAAc,GAAGL,UAAU,CAACzC,MAAM,CACtC,CAACC,GAAG,EAAE2C,IAAI,KAAK;IACb,MAAM;MAAEG;IAAc,CAAC,GAAGP,OAAO,CAACI,IAAI,CAAC,CAACvC,KAAK;IAC7CJ,GAAG,CAAC2C,IAAI,CAAC,GAAGG,aAAa;IACzB,OAAO9C,GAAG;EACZ,CAAC,EACD,CAAC,CACH,CAAC;EACD,MAAM+C,cAAc,GAAGP,UAAU,CAACzC,MAAM,CAGtC,CAACC,GAAG,EAAE2C,IAAI,KACRK,MAAM,CAACC,MAAM,CAACjD,GAAG,EAAE;IACjB,CAAC2C,IAAI,GAAGJ,OAAO,CAACI,IAAI,CAAC,CAACvC,KAAK,CAAC8C;EAC9B,CAAC,CAAC,EACJ,CAAC,CACH,CAAC;EAED,IAAI,CAACV,UAAU,CAACW,MAAM,EAAE;IACtB,MAAM,IAAI7C,KAAK,CACb,4FACF,CAAC;EACH;EAEA,MAAM8C,YAAY,GAAG1F,KAAK,CAAC2F,WAAW,CACnCC,KAAsD,IACrDA,KAAK,CAACnD,IAAI,KAAKb,SAAS,IAAIgE,KAAK,CAACnD,IAAI,KAAKiC,MAAM,CAACjC,IAAI,EACxD,CAACiC,MAAM,CAACjC,IAAI,CACd,CAAC;EAED,MAAMoD,kBAAkB,GAAG7F,KAAK,CAAC2F,WAAW,CACzCC,KAAkE,IACjEA,KAAK,KAAKhE,SAAS,IAAIgE,KAAK,CAACE,KAAK,KAAK,KAAK,IAAIJ,YAAY,CAACE,KAAK,CAAC,EACrE,CAACF,YAAY,CACf,CAAC;EAED,MAAM;IACJE,KAAK,EAAEG,YAAY;IACnBC,QAAQ,EAAEC,eAAe;IACzBC,QAAQ,EAAEC,eAAe;IACzBC,MAAM;IACNC,MAAM;IACNC;EACF,CAAC,GAAGtG,KAAK,CAACsE,UAAU,CAAC9D,sBAAsB,CAAC;EAE5C,MAAM+F,cAAc,GAAGvG,KAAK,CAAC2E,MAAM,CAAC,KAAK,CAAC;EAE1C,MAAMuB,QAAQ,GAAGhG,iBAAiB,CAC/B0F,KAAkE,IAAK;IACtE,IAAIW,cAAc,CAAC9B,OAAO,EAAE;MAC1B;MACA;MACA;MACA;IACF;IAEA0B,eAAe,CAACP,KAAK,CAAC;EACxB,CACF,CAAC;EAED,MAAM,CAACY,gBAAgB,EAAEC,0BAA0B,CAAC,GAAGzG,KAAK,CAAC0G,OAAO,CAAC,MAAM;IACzE,MAAMC,qBAAqB,GAAG7B,UAAU,CAACzC,MAAM,CAE7C,CAACC,GAAG,EAAE2C,IAAI,KAAK;MACf,MAAM;QAAEG;MAAc,CAAC,GAAGP,OAAO,CAACI,IAAI,CAAC,CAACvC,KAAK;MAC7C,MAAMkE,uBAAuB,GAC3BvC,KAAK,EAAEwC,MAAM,EAAEjB,KAAK,IAAI,IAAI,IAC5BvB,KAAK,EAAEwC,MAAM,EAAEC,OAAO,KAAK,KAAK,IAChCzC,KAAK,EAAEwC,MAAM,EAAEE,MAAM,KAAK9B,IAAI,GAC1BZ,KAAK,CAACwC,MAAM,CAACA,MAAM,GACnBjF,SAAS;MAEfU,GAAG,CAAC2C,IAAI,CAAC,GACPG,aAAa,KAAKxD,SAAS,IAAIgF,uBAAuB,KAAKhF,SAAS,GAChE;QACE,GAAGwD,aAAa;QAChB,GAAGwB;MACL,CAAC,GACDhF,SAAS;MAEf,OAAOU,GAAG;IACZ,CAAC,EAAE,CAAC,CAAC,CAAC;;IAEN;IACA;IACA;IACA;IACA,IACE,CAACyD,YAAY,KAAKnE,SAAS,IAAI,CAAC8D,YAAY,CAACK,YAAY,CAAC,KAC1D1B,KAAK,EAAEwC,MAAM,EAAEjB,KAAK,IAAI,IAAI,IAC5B,EACE,OAAOvB,KAAK,EAAEwC,MAAM,EAAEE,MAAM,KAAK,QAAQ,IACzC1C,KAAK,EAAEwC,MAAM,EAAEC,OAAO,KAAK,KAAK,CACjC,EACD;MACA,OAAO,CACLpC,MAAM,CAACsC,eAAe,CAAC;QACrBlC,UAAU;QACVK,cAAc,EAAEwB,qBAAqB;QACrCtB;MACF,CAAC,CAAC,EACF,IAAI,CACL;IACH,CAAC,MAAM;MACL,IAAI4B,eAAe;MAEnB,IAAI5C,KAAK,EAAEwC,MAAM,EAAEjB,KAAK,IAAI,IAAI,EAAE;QAChCqB,eAAe,GAAG5C,KAAK,CAACwC,MAAM,CAACjB,KAAK;MACtC,CAAC,MAAM,IACL,OAAOvB,KAAK,EAAEwC,MAAM,EAAEE,MAAM,KAAK,QAAQ,IACzC1C,KAAK,EAAEwC,MAAM,EAAEC,OAAO,KAAK,KAAK,EAChC;QACAG,eAAe,GAAG;UAChBC,KAAK,EAAE,CAAC;UACRC,MAAM,EAAE,CACN;YACEpE,IAAI,EAAEsB,KAAK,CAACwC,MAAM,CAACE,MAAM;YACzBF,MAAM,EAAExC,KAAK,CAACwC,MAAM,CAACA,MAAM;YAC3BO,IAAI,EAAE/C,KAAK,CAACwC,MAAM,CAACO;UACrB,CAAC;QAEL,CAAC;MACH;MAEA,OAAO,CACL1C,MAAM,CAAC2C,kBAAkB,CACtBJ,eAAe,IAAIlB,YAAY,EAChC;QACEjB,UAAU;QACVK,cAAc,EAAEwB,qBAAqB;QACrCtB;MACF,CACF,CAAC,EACD,KAAK,CACN;IACH;IACA;IACA;IACA;IACA;IACA;IACA;EACF,CAAC,EAAE,CAACU,YAAY,EAAErB,MAAM,EAAEgB,YAAY,CAAC,CAAC;EAExC,MAAM4B,uBAAuB,GAAGtH,KAAK,CAAC2E,MAAM,CAACK,YAAY,CAAC;EAE1DhF,KAAK,CAACuH,SAAS,CAAC,MAAM;IACpBD,uBAAuB,CAAC7C,OAAO,GAAGO,YAAY;EAChD,CAAC,CAAC;EAEF,MAAMwC,oBAAoB,GAAGF,uBAAuB,CAAC7C,OAAO;EAE5D,IAAImB,KAAK;EACP;EACA;EACA;EACAC,kBAAkB,CAACE,YAAY,CAAC,GAC3BA,YAAY,GACZS,gBAA0B;EAEjC,IAAIiB,SAAgB,GAAG7B,KAAK;EAE5B,IACE,CAACxF,YAAY,CAACwF,KAAK,CAACd,UAAU,EAAEA,UAAU,CAAC,IAC3C,CAACzE,aAAa,CAAC2E,YAAY,EAAEwC,oBAAoB,CAAC,EAClD;IACA,MAAME,qCAAqC,GACzCxE,OAAO,CAACyE,2BAA2B,GAAG/B,KAAK,CAAC;IAC9C;IACA6B,SAAS,GAAGC,qCAAqC;IAC7C;IACAhD,MAAM,CAAC2C,kBAAkB,CAACK,qCAAqC,EAAE;MAC/D5C,UAAU;MACVK,cAAc;MACdE;IACF,CAAC,CAAC,GACFX,MAAM,CAACiD,2BAA2B,CAAC/B,KAAK,EAAE;MACxCd,UAAU;MACVK,cAAc;MACdE,cAAc;MACduC,eAAe,EAAEtC,MAAM,CAACrC,IAAI,CAAC+B,YAAY,CAAC,CAAC6C,MAAM,CAC9C9E,IAAI,IACHA,IAAI,IAAIyE,oBAAoB,IAC5BxC,YAAY,CAACjC,IAAI,CAAC,KAAKyE,oBAAoB,CAACzE,IAAI,CACpD;IACF,CAAC,CAAC;EACR;EAEA,MAAM+E,uBAAuB,GAAG9H,KAAK,CAAC2E,MAAM,CAACN,KAAK,EAAEwC,MAAM,CAAC;EAE3D7G,KAAK,CAACuH,SAAS,CAAC,MAAM;IACpBO,uBAAuB,CAACrD,OAAO,GAAGJ,KAAK,EAAEwC,MAAM;EACjD,CAAC,EAAE,CAACxC,KAAK,EAAEwC,MAAM,CAAC,CAAC;EAEnB,IAAIxC,KAAK,EAAEwC,MAAM,EAAE;IACjB,MAAMkB,cAAc,GAAGD,uBAAuB,CAACrD,OAAO;IAEtD,IAAIuD,MAAwC;IAE5C,IACE,OAAO3D,KAAK,CAACwC,MAAM,CAACjB,KAAK,KAAK,QAAQ,IACtCvB,KAAK,CAACwC,MAAM,CAACjB,KAAK,IAAI,IAAI,IAC1BvB,KAAK,CAACwC,MAAM,KAAKkB,cAAc,EAC/B;MACA;MACAC,MAAM,GAAGjI,aAAa,CAACkI,KAAK,CAAC5D,KAAK,CAACwC,MAAM,CAACjB,KAAK,CAAC;IAClD,CAAC,MAAM,IACL,OAAOvB,KAAK,CAACwC,MAAM,CAACE,MAAM,KAAK,QAAQ,KACrC1C,KAAK,CAACwC,MAAM,CAACC,OAAO,KAAK,KAAK,IAAIL,0BAA0B,IAC5DpC,KAAK,CAACwC,MAAM,KAAKkB,cAAc,CAAC,EAClC;MACA;MACAC,MAAM,GAAGjI,aAAa,CAACmI,QAAQ,CAAC;QAC9BnF,IAAI,EAAEsB,KAAK,CAACwC,MAAM,CAACE,MAAM;QACzBF,MAAM,EAAExC,KAAK,CAACwC,MAAM,CAACA,MAAM;QAC3BO,IAAI,EAAE/C,KAAK,CAACwC,MAAM,CAACO;MACrB,CAAC,CAAC;IACJ;;IAEA;IACA,MAAMe,YAAY,GAAGH,MAAM,GACvBtD,MAAM,CAAC0D,iBAAiB,CAACX,SAAS,EAAEO,MAAM,EAAE;MAC1ClD,UAAU;MACVK,cAAc;MACdE;IACF,CAAC,CAAC,GACF,IAAI;IAERoC,SAAS,GACPU,YAAY,KAAK,IAAI,GACjBzD,MAAM,CAAC2C,kBAAkB,CAACc,YAAY,EAAE;MACtCrD,UAAU;MACVK,cAAc;MACdE;IACF,CAAC,CAAC,GACFoC,SAAS;EACjB;EAEA,MAAMY,YAAY,GAAGzC,KAAK,KAAK6B,SAAS;EAExCtG,yBAAyB,CAAC,MAAM;IAC9B,IAAIkH,YAAY,EAAE;MAChB;MACAnC,QAAQ,CAACuB,SAAS,CAAC;IACrB;EACF,CAAC,CAAC;;EAEF;EACA;EACA;EACA7B,KAAK,GAAG6B,SAAS;EAEjBzH,KAAK,CAACuH,SAAS,CAAC,MAAM;IACpBnB,MAAM,CAAChC,YAAY,CAAC;IAEpB,IAAI,CAACkC,YAAY,CAAC,CAAC,EAAE;MACnB;MACA;MACA;MACAJ,QAAQ,CAACuB,SAAS,CAAC;IACrB;IAEA,OAAO,MAAM;MACX;MACA,IAAIxB,eAAe,CAAC,CAAC,KAAKrE,SAAS,IAAIyE,MAAM,CAAC,CAAC,KAAKjC,YAAY,EAAE;QAChE+B,eAAe,CAACvE,SAAS,CAAC;QAC1B2E,cAAc,CAAC9B,OAAO,GAAG,IAAI;MAC/B;IACF,CAAC;IACD;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMuB,QAAQ,GAAG9F,iBAAiB,CAAC,MAAa;IAC9C,MAAM6F,YAAY,GAAGsC,YAAY,GAAGZ,SAAS,GAAGxB,eAAe,CAAC,CAAC;IAEjE,OACEJ,kBAAkB,CAACE,YAAY,CAAC,GAAGA,YAAY,GAAGS,gBAAgB;EAEtE,CAAC,CAAC;EAEF,MAAM8B,OAAO,GAAGtH,eAAe,CAAuBuH,CAAC,IAAK;IAC1D,MAAMzD,UAAU,GAAG,EAAE;IAErB,IAAIT,KAAgC;IAEpC,IAAIkE,CAAC,CAACC,MAAM,EAAE;MACZnE,KAAK,GAAGuB,KAAK,CAACuB,MAAM,CAACsB,IAAI,CAAEpE,KAAK,IAAKA,KAAK,CAAC1C,GAAG,KAAK4G,CAAC,CAACC,MAAM,CAAC;MAE5D,IAAInE,KAAK,EAAEtB,IAAI,EAAE;QACf+B,UAAU,CAAC9B,IAAI,CAACqB,KAAK,CAACtB,IAAI,CAAC;MAC7B;IACF,CAAC,MAAM;MACLsB,KAAK,GAAGuB,KAAK,CAACuB,MAAM,CAACvB,KAAK,CAACsB,KAAK,CAAC;MACjCpC,UAAU,CAAC9B,IAAI,CACb,GAAGsC,MAAM,CAACrC,IAAI,CAAC4B,OAAO,CAAC,CAACgD,MAAM,CAAE9E,IAAI,IAAKsB,KAAK,EAAEtB,IAAI,KAAKA,IAAI,CAC/D,CAAC;IACH;IAEA,IAAIsB,KAAK,IAAI,IAAI,EAAE;MACjB;IACF;IAEA,MAAMqE,UAAU,GAAGC,WAAW,CAACtE,KAAK,CAAC1C,GAAG,CAAC,CAAC+G,UAAU;IAEpD,MAAME,SAAS,GAAI,EAAE,CAClBC,MAAM;IACL;IACA,GAAG,CACDtE,eAAe,EACf,GAAGO,UAAU,CAACC,GAAG,CAAEhC,IAAI,IAAK;MAC1B,MAAM;QAAE6F;MAAU,CAAC,GAAG/D,OAAO,CAAC9B,IAAI,CAAC,CAACL,KAAK;MACzC,OAAOkG,SAAS;IAClB,CAAC,CAAC,CACH,CAAC7D,GAAG,CAAE6D,SAAS,IAAK;MACnB,MAAM7D,GAAG,GACP,OAAO6D,SAAS,KAAK,UAAU,GAC3BA,SAAS,CAAC;QAAEvE,KAAK,EAAEA,KAAY;QAAEqE;MAAW,CAAC,CAAC,GAC9CE,SAAS;MAEf,OAAO7D,GAAG,GACNO,MAAM,CAACrC,IAAI,CAAC8B,GAAG,CAAC,CACb8C,MAAM,CAAEpF,IAAI,IAAKA,IAAI,KAAK8F,CAAC,CAAC9F,IAAI,CAAC,CACjCsC,GAAG,CAAEtC,IAAI,IAAKsC,GAAG,GAAGtC,IAAI,CAAC,CAAC,GAC7Bb,SAAS;IACf,CAAC,CACH;IACA;IACA;IAAA,CACCiG,MAAM,CAAC,CAACiB,EAAE,EAAEC,CAAC,EAAEC,IAAI,KAAKF,EAAE,IAAIE,IAAI,CAACC,WAAW,CAACH,EAAE,CAAC,KAAKC,CAAC,CAAC;IAE5DH,SAAS,CAACjF,OAAO,CAAEuF,QAAQ,IAAKA,QAAQ,GAAGX,CAAC,CAAC,CAAC;EAChD,CAAC,CAAC;EAEFrH,cAAc,CAAC;IAAE0E,KAAK;IAAE0C;EAAQ,CAAC,CAAC;EAElCtI,KAAK,CAACuH,SAAS,CAAC,MAAM;IACpBe,OAAO,CAACa,IAAI,CAAC;MAAE1G,IAAI,EAAE,OAAO;MAAE2G,IAAI,EAAE;QAAExD;MAAM;IAAE,CAAC,CAAC;EAClD,CAAC,EAAE,CAAC0C,OAAO,EAAE1C,KAAK,CAAC,CAAC;EAEpB,MAAM;IAAEgD,SAAS,EAAES,cAAc;IAAEC;EAAY,CAAC,GAAG1I,iBAAiB,CAAC,CAAC;EAEtE,MAAM;IAAE2I,cAAc;IAAEC;EAAiB,CAAC,GAAGpI,sBAAsB,CAAC,CAAC;EAErE,MAAMqI,QAAQ,GAAGnI,WAAW,CAAC;IAC3BoD,MAAM;IACNsB,QAAQ;IACRE,QAAQ;IACRvE,GAAG,EAAE0C,KAAK,EAAE1C,GAAG;IACf+H,eAAe,EAAEL,cAAc,CAACrB,MAAM;IACtC2B,qBAAqB,EAAEJ,cAAc,CAACK,YAAY;IAClDC,mBAAmB,EAAE;MACnB/E,UAAU;MACVK,cAAc;MACdE;IACF,CAAC;IACDiD;EACF,CAAC,CAAC;EAEF,MAAMwB,YAAY,GAAGtI,eAAe,CAAC;IACnCkD,MAAM;IACN/C,GAAG,EAAE0C,KAAK,EAAE1C,GAAG;IACfqE,QAAQ;IACRE;EACF,CAAC,CAAC;EAEF,MAAMwC,UAAU,GAAGrH,oBAAoB,CAKrC;IACA0I,EAAE,EAAE7G,OAAO,CAAC6G,EAAE;IACdN,QAAQ;IACRzD,QAAQ;IACRsC,OAAO;IACP5D;EACF,CAAC,CAAC;EAEFzD,kCAAkC,CAAC;IACjCyH,UAAU;IACVsB,gBAAgB,EAAEX,cAAc,CAACY;EACnC,CAAC,CAAC;EAEF1I,aAAa,CAAC;IACZyE,QAAQ;IACRkE,iBAAiB,EAAEX,cAAc,CAACvD;EACpC,CAAC,CAAC;EAEF,MAAM;IAAEmE,QAAQ;IAAExB;EAAY,CAAC,GAAG5H,cAAc,CAK9C;IACA6E,KAAK;IACLf,OAAO;IACP6D,UAAU;IACVrF,aAAa;IACbC,YAAY;IACZmG,QAAQ;IACRzD,QAAQ;IACRE,QAAQ;IACR4D,YAAY;IACZR,WAAW;IACXE,gBAAgB;IAChB9E,MAAM;IACN;IACA4D;EACF,CAAC,CAAC;EAEFxH,gBAAgB,CAAC;IACf8E,KAAK;IACL8C,UAAU;IACVC;EACF,CAAC,CAAC;EAEF,MAAMyB,iBAAiB,GAAGvJ,YAAY,CAAEiB,QAAyB,IAAK;IACpE,MAAMuI,OAAO,GACXlH,MAAM,IAAI,IAAI,GACVA,MAAM,CAAC;MACLyC,KAAK;MACL+C,WAAW;MACXD,UAAU;MACV5G;IACF,CAAC,CAAC,GACFA,QAAQ;IAEd,oBACE9B,KAAA,CAAAsK,aAAA,CAAChK,wBAAwB,CAACiK,QAAQ;MAACC,KAAK,EAAE9B;IAAW,gBACnD1I,KAAA,CAAAsK,aAAA,CAAC7J,qBAAqB,QAAE4J,OAA+B,CACtB,CAAC;EAExC,CAAC,CAAC;EAEF,OAAO;IACLzE,KAAK;IACL8C,UAAU;IACVyB,QAAQ;IACRxB,WAAW;IACXyB;EACF,CAAC;AACH"}
@@ -18,6 +18,49 @@ export function useNavigationCache(_ref) {
18
18
  const {
19
19
  stackRef
20
20
  } = React.useContext(NavigationBuilderContext);
21
+ const base = React.useMemo(() => {
22
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
23
+ const {
24
+ emit,
25
+ ...rest
26
+ } = navigation;
27
+ const actions = {
28
+ ...router.actionCreators,
29
+ ...CommonActions
30
+ };
31
+ const dispatch = () => {
32
+ throw new Error('Actions cannot be dispatched from a placeholder screen.');
33
+ };
34
+ const helpers = Object.keys(actions).reduce((acc, name) => {
35
+ acc[name] = dispatch;
36
+ return acc;
37
+ }, {});
38
+ return {
39
+ ...rest,
40
+ ...helpers,
41
+ addListener: () => {
42
+ // Event listeners are not supported for placeholder screens
43
+
44
+ return () => {
45
+ // Empty function
46
+ };
47
+ },
48
+ removeListener: () => {
49
+ // Event listeners are not supported for placeholder screens
50
+ },
51
+ dispatch,
52
+ getParent: id => {
53
+ if (id !== undefined && id === rest.getId()) {
54
+ return base;
55
+ }
56
+ return rest.getParent(id);
57
+ },
58
+ setOptions: () => {
59
+ throw new Error('Options cannot be set from a placeholder screen.');
60
+ },
61
+ isFocused: () => false
62
+ };
63
+ }, [navigation, router.actionCreators]);
21
64
 
22
65
  // Cache object which holds navigation objects for each screen
23
66
  // We use `React.useMemo` instead of `React.useRef` coz we want to invalidate it when deps change
@@ -26,22 +69,13 @@ export function useNavigationCache(_ref) {
26
69
  current: {}
27
70
  }),
28
71
  // eslint-disable-next-line react-hooks/exhaustive-deps
29
- [getState, navigation, setOptions, router, emitter]);
30
- const actions = {
31
- ...router.actionCreators,
32
- ...CommonActions
33
- };
72
+ [base, getState, navigation, setOptions, emitter]);
34
73
  cache.current = state.routes.reduce((acc, route) => {
35
74
  const previous = cache.current[route.key];
36
75
  if (previous) {
37
76
  // If a cached navigation object already exists, reuse it
38
77
  acc[route.key] = previous;
39
78
  } else {
40
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
41
- const {
42
- emit,
43
- ...rest
44
- } = navigation;
45
79
  const dispatch = thunk => {
46
80
  const action = typeof thunk === 'function' ? thunk(getState()) : thunk;
47
81
  if (action != null) {
@@ -66,6 +100,10 @@ export function useNavigationCache(_ref) {
66
100
  }
67
101
  }
68
102
  };
103
+ const actions = {
104
+ ...router.actionCreators,
105
+ ...CommonActions
106
+ };
69
107
  const helpers = Object.keys(actions).reduce((acc, name) => {
70
108
  acc[name] = function () {
71
109
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
@@ -78,18 +116,18 @@ export function useNavigationCache(_ref) {
78
116
  return acc;
79
117
  }, {});
80
118
  acc[route.key] = {
81
- ...rest,
119
+ ...base,
82
120
  ...helpers,
83
121
  // FIXME: too much work to fix the types for now
84
122
  ...emitter.create(route.key),
85
123
  dispatch: thunk => withStack(() => dispatch(thunk)),
86
124
  getParent: id => {
87
- if (id !== undefined && id === rest.getId()) {
125
+ if (id !== undefined && id === base.getId()) {
88
126
  // If the passed id is the same as the current navigation id,
89
127
  // we return the cached navigation object for the relevant route
90
128
  return acc[route.key];
91
129
  }
92
- return rest.getParent(id);
130
+ return base.getParent(id);
93
131
  },
94
132
  setOptions: options => {
95
133
  setOptions(o => ({
@@ -114,6 +152,9 @@ export function useNavigationCache(_ref) {
114
152
  }
115
153
  return acc;
116
154
  }, {});
117
- return cache.current;
155
+ return {
156
+ base,
157
+ navigations: cache.current
158
+ };
118
159
  }
119
160
  //# sourceMappingURL=useNavigationCache.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["CommonActions","React","NavigationBuilderContext","useNavigationCache","_ref","state","getState","navigation","setOptions","router","emitter","stackRef","useContext","cache","useMemo","current","actions","actionCreators","routes","reduce","acc","route","previous","key","emit","rest","dispatch","thunk","action","source","withStack","callback","isStackSet","process","env","NODE_ENV","Error","stack","undefined","helpers","Object","keys","name","_len","arguments","length","args","Array","_key","create","getParent","id","getId","options","o","isFocused","index"],"sourceRoot":"../../src","sources":["useNavigationCache.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["CommonActions","React","NavigationBuilderContext","useNavigationCache","_ref","state","getState","navigation","setOptions","router","emitter","stackRef","useContext","base","useMemo","emit","rest","actions","actionCreators","dispatch","Error","helpers","Object","keys","reduce","acc","name","addListener","removeListener","getParent","id","undefined","getId","isFocused","cache","current","routes","route","previous","key","thunk","action","source","withStack","callback","isStackSet","process","env","NODE_ENV","stack","_len","arguments","length","args","Array","_key","create","options","o","index","navigations"],"sourceRoot":"../../src","sources":["useNavigationCache.tsx"],"mappings":"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"}
@@ -75,7 +75,9 @@ export function useOnAction(_ref) {
75
75
  return true;
76
76
  }
77
77
  }
78
- if (typeof action.target === 'string' || navigationInChildEnabled) {
78
+ if (typeof action.target === 'string' ||
79
+ // For backward compatibility
80
+ action.type === 'NAVIGATE_DEPRECATED' || navigationInChildEnabled) {
79
81
  // If the action wasn't handled by current navigator or a parent navigator, let children handle it
80
82
  // Handling this when target isn't specified is deprecated and will be removed in the future
81
83
  for (let i = actionListeners.length - 1; i >= 0; i--) {
@@ -1 +1 @@
1
- {"version":3,"names":["React","DeprecatedNavigationInChildContext","NavigationBuilderContext","shouldPreventRemove","useOnPreventRemove","useOnAction","_ref","router","getState","setState","key","actionListeners","beforeRemoveListeners","routerConfigOptions","emitter","onAction","onActionParent","onRouteFocus","onRouteFocusParent","addListener","addListenerParent","onDispatchAction","useContext","navigationInChildEnabled","routerConfigOptionsRef","useRef","useEffect","current","useCallback","action","visitedNavigators","arguments","length","undefined","Set","state","has","add","target","result","getStateForAction","isPrevented","routes","shouldFocus","shouldActionChangeFocus","i","listener"],"sourceRoot":"../../src","sources":["useOnAction.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","DeprecatedNavigationInChildContext","NavigationBuilderContext","shouldPreventRemove","useOnPreventRemove","useOnAction","_ref","router","getState","setState","key","actionListeners","beforeRemoveListeners","routerConfigOptions","emitter","onAction","onActionParent","onRouteFocus","onRouteFocusParent","addListener","addListenerParent","onDispatchAction","useContext","navigationInChildEnabled","routerConfigOptionsRef","useRef","useEffect","current","useCallback","action","visitedNavigators","arguments","length","undefined","Set","state","has","add","target","result","getStateForAction","isPrevented","routes","shouldFocus","shouldActionChangeFocus","type","i","listener"],"sourceRoot":"../../src","sources":["useOnAction.tsx"],"mappings":"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"}
@@ -11,7 +11,7 @@ import { useRoute } from './useRoute';
11
11
  * @param preventRemove Boolean indicating whether to prevent screen from being removed.
12
12
  * @param callback Function which is executed when screen was prevented from being removed.
13
13
  */
14
- export function UNSTABLE_usePreventRemove(preventRemove, callback) {
14
+ export function usePreventRemove(preventRemove, callback) {
15
15
  const [id] = React.useState(() => nanoid());
16
16
  const navigation = useNavigation();
17
17
  const {
@@ -1 +1 @@
1
- {"version":3,"names":["nanoid","React","useLatestCallback","useNavigation","usePreventRemoveContext","useRoute","UNSTABLE_usePreventRemove","preventRemove","callback","id","useState","navigation","key","routeKey","setPreventRemove","useEffect","beforeRemoveListener","e","preventDefault","data","addListener"],"sourceRoot":"../../src","sources":["usePreventRemove.tsx"],"mappings":"AACA,SAASA,MAAM,QAAQ,mBAAmB;AAC1C,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,OAAOC,iBAAiB,MAAM,qBAAqB;AAGnD,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,QAAQ,QAAQ,YAAY;;AAErC;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,yBAAyBA,CACvCC,aAAsB,EACtBC,QAAmE,EACnE;EACA,MAAM,CAACC,EAAE,CAAC,GAAGR,KAAK,CAACS,QAAQ,CAAC,MAAMV,MAAM,CAAC,CAAC,CAAC;EAE3C,MAAMW,UAAU,GAAGR,aAAa,CAAC,CAAC;EAClC,MAAM;IAAES,GAAG,EAAEC;EAAS,CAAC,GAAGR,QAAQ,CAAC,CAAC;EAEpC,MAAM;IAAES;EAAiB,CAAC,GAAGV,uBAAuB,CAAC,CAAC;EAEtDH,KAAK,CAACc,SAAS,CAAC,MAAM;IACpBD,gBAAgB,CAACL,EAAE,EAAEI,QAAQ,EAAEN,aAAa,CAAC;IAC7C,OAAO,MAAM;MACXO,gBAAgB,CAACL,EAAE,EAAEI,QAAQ,EAAE,KAAK,CAAC;IACvC,CAAC;EACH,CAAC,EAAE,CAACC,gBAAgB,EAAEL,EAAE,EAAEI,QAAQ,EAAEN,aAAa,CAAC,CAAC;EAEnD,MAAMS,oBAAoB,GAAGd,iBAAiB,CAE3Ce,CAAC,IAAK;IACP,IAAI,CAACV,aAAa,EAAE;MAClB;IACF;IAEAU,CAAC,CAACC,cAAc,CAAC,CAAC;IAElBV,QAAQ,CAAC;MAAEW,IAAI,EAAEF,CAAC,CAACE;IAAK,CAAC,CAAC;EAC5B,CAAC,CAAC;EAEFlB,KAAK,CAACc,SAAS,CACb,MAAMJ,UAAU,EAAES,WAAW,CAAC,cAAc,EAAEJ,oBAAoB,CAAC,EACnE,CAACL,UAAU,EAAEK,oBAAoB,CACnC,CAAC;AACH"}
1
+ {"version":3,"names":["nanoid","React","useLatestCallback","useNavigation","usePreventRemoveContext","useRoute","usePreventRemove","preventRemove","callback","id","useState","navigation","key","routeKey","setPreventRemove","useEffect","beforeRemoveListener","e","preventDefault","data","addListener"],"sourceRoot":"../../src","sources":["usePreventRemove.tsx"],"mappings":"AACA,SAASA,MAAM,QAAQ,mBAAmB;AAC1C,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,OAAOC,iBAAiB,MAAM,qBAAqB;AAGnD,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,QAAQ,QAAQ,YAAY;;AAErC;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAC9BC,aAAsB,EACtBC,QAAmE,EACnE;EACA,MAAM,CAACC,EAAE,CAAC,GAAGR,KAAK,CAACS,QAAQ,CAAC,MAAMV,MAAM,CAAC,CAAC,CAAC;EAE3C,MAAMW,UAAU,GAAGR,aAAa,CAAC,CAAC;EAClC,MAAM;IAAES,GAAG,EAAEC;EAAS,CAAC,GAAGR,QAAQ,CAAC,CAAC;EAEpC,MAAM;IAAES;EAAiB,CAAC,GAAGV,uBAAuB,CAAC,CAAC;EAEtDH,KAAK,CAACc,SAAS,CAAC,MAAM;IACpBD,gBAAgB,CAACL,EAAE,EAAEI,QAAQ,EAAEN,aAAa,CAAC;IAC7C,OAAO,MAAM;MACXO,gBAAgB,CAACL,EAAE,EAAEI,QAAQ,EAAE,KAAK,CAAC;IACvC,CAAC;EACH,CAAC,EAAE,CAACC,gBAAgB,EAAEL,EAAE,EAAEI,QAAQ,EAAEN,aAAa,CAAC,CAAC;EAEnD,MAAMS,oBAAoB,GAAGd,iBAAiB,CAE3Ce,CAAC,IAAK;IACP,IAAI,CAACV,aAAa,EAAE;MAClB;IACF;IAEAU,CAAC,CAACC,cAAc,CAAC,CAAC;IAElBV,QAAQ,CAAC;MAAEW,IAAI,EAAEF,CAAC,CAACE;IAAK,CAAC,CAAC;EAC5B,CAAC,CAAC;EAEFlB,KAAK,CAACc,SAAS,CACb,MAAMJ,UAAU,EAAES,WAAW,CAAC,cAAc,EAAEJ,oBAAoB,CAAC,EACnE,CAACL,UAAU,EAAEK,oBAAoB,CACnC,CAAC;AACH"}
@@ -9,6 +9,7 @@ import type { NavigationContainerProps, NavigationContainerRef } from './types';
9
9
  * @param props.onReady Callback which is called after the navigation tree mounts.
10
10
  * @param props.onStateChange Callback which is called with the latest navigation state when it changes.
11
11
  * @param props.onUnhandledAction Callback which is called when an action is not handled.
12
+ * @param props.theme Theme object for the UI elements.
12
13
  * @param props.children Child elements to render the content.
13
14
  * @param props.ref Ref object which refers to the navigation object containing helper methods.
14
15
  */
@@ -1 +1 @@
1
- {"version":3,"file":"BaseNavigationContainer.d.ts","sourceRoot":"","sources":["../../../src/BaseNavigationContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,aAAa,EAGnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,OAAO,KAAK,EAEV,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,SAAS,CAAC;AA4CjB;;;;;;;;;;GAUG;AACH,eAAO,MAAM,uBAAuB,wHA4WnC,CAAC"}
1
+ {"version":3,"file":"BaseNavigationContainer.d.ts","sourceRoot":"","sources":["../../../src/BaseNavigationContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,aAAa,EAGnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAc/B,OAAO,KAAK,EAEV,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,SAAS,CAAC;AA4CjB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,wHA+WnC,CAAC"}
@@ -7,15 +7,7 @@ export declare const NavigationStateContext: React.Context<{
7
7
  index: number;
8
8
  routeNames: string[];
9
9
  history?: unknown[] | undefined;
10
- routes: (Readonly<{
11
- key: string;
12
- name: string;
13
- path?: string | undefined;
14
- }> & Readonly<{
15
- params?: Readonly<object | undefined>;
16
- }> & {
17
- state?: Readonly<any> | PartialState<Readonly<any>> | undefined;
18
- })[];
10
+ routes: import("@react-navigation/routers").NavigationRoute<import("@react-navigation/routers").ParamListBase, string>[];
19
11
  type: string;
20
12
  stale: false;
21
13
  }> | PartialState<Readonly<{
@@ -23,15 +15,7 @@ export declare const NavigationStateContext: React.Context<{
23
15
  index: number;
24
16
  routeNames: string[];
25
17
  history?: unknown[] | undefined;
26
- routes: (Readonly<{
27
- key: string;
28
- name: string;
29
- path?: string | undefined;
30
- }> & Readonly<{
31
- params?: Readonly<object | undefined>;
32
- }> & {
33
- state?: Readonly<any> | PartialState<Readonly<any>> | undefined;
34
- })[];
18
+ routes: import("@react-navigation/routers").NavigationRoute<import("@react-navigation/routers").ParamListBase, string>[];
35
19
  type: string;
36
20
  stale: false;
37
21
  }>> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationStateContext.d.ts","sourceRoot":"","sources":["../../../src/NavigationStateContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAGzB,MAAM,MAAM,GAAG,SAAS;kBAClB,MAAM,KAAK,IAAI;cACnB,MAAM,eAAe,GAAG,aAAa,eAAe,CAAC,GAAG,SAAS;sBAElE,eAAe,GAAG,aAAa,eAAe,CAAC,GAAG,SAAS,KAC/D,IAAI;kBACK,MAAM,OAAO;8BAEpB,MAAM,UACH,MAAM,MAAM,GAAG,SAAS,GAAG,IAAI,KACpC,IAAI;EAmBT,CAAC"}
1
+ {"version":3,"file":"NavigationStateContext.d.ts","sourceRoot":"","sources":["../../../src/NavigationStateContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;YAGzB,MAAM,MAAM,GAAG,SAAS;kBAClB,MAAM,KAAK,IAAI;cACnB,MAAM,eAAe,GAAG,aAAa,eAAe,CAAC,GAAG,SAAS;sBAElE,eAAe,GAAG,aAAa,eAAe,CAAC,GAAG,SAAS,KAC/D,IAAI;kBACK,MAAM,OAAO;8BAEpB,MAAM,UACH,MAAM,MAAM,GAAG,SAAS,GAAG,IAAI,KACpC,IAAI;EAmBT,CAAC"}
@@ -5,15 +5,7 @@ export declare function findFocusedRoute(state: InitialState): (Omit<import("@re
5
5
  index: number;
6
6
  routeNames: string[];
7
7
  history?: unknown[] | undefined;
8
- routes: (Readonly<{
9
- key: string;
10
- name: string;
11
- path?: string | undefined;
12
- }> & Readonly<{
13
- params?: Readonly<object | undefined>;
14
- }> & {
15
- state?: Readonly<any> | import("@react-navigation/routers").PartialState<Readonly<any>> | undefined;
16
- })[];
8
+ routes: import("@react-navigation/routers").NavigationRoute<import("@react-navigation/routers").ParamListBase, string>[];
17
9
  type: string;
18
10
  stale: false;
19
11
  }>, "stale" | "routes">> & {
@@ -1 +1 @@
1
- {"version":3,"file":"findFocusedRoute.d.ts","sourceRoot":"","sources":["../../../src/findFocusedRoute.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY;;;;;;;;;;;;;;;;;;;;eAUnD"}
1
+ {"version":3,"file":"findFocusedRoute.d.ts","sourceRoot":"","sources":["../../../src/findFocusedRoute.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY;;;;;;;;;;;;eAUnD"}