@react-navigation/core 6.4.5 → 7.0.0-alpha.0

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 (135) hide show
  1. package/README.md +1 -1
  2. package/lib/commonjs/BaseNavigationContainer.js +44 -33
  3. package/lib/commonjs/BaseNavigationContainer.js.map +1 -1
  4. package/lib/commonjs/DeprecatedNavigationInChildContext.js +16 -0
  5. package/lib/commonjs/DeprecatedNavigationInChildContext.js.map +1 -0
  6. package/lib/commonjs/NavigationIndependentTree.js +33 -0
  7. package/lib/commonjs/NavigationIndependentTree.js.map +1 -0
  8. package/lib/commonjs/NavigationIndependentTreeContext.js +16 -0
  9. package/lib/commonjs/NavigationIndependentTreeContext.js.map +1 -0
  10. package/lib/commonjs/StaticNavigation.js +160 -0
  11. package/lib/commonjs/StaticNavigation.js.map +1 -0
  12. package/lib/commonjs/createNavigatorFactory.js +16 -7
  13. package/lib/commonjs/createNavigatorFactory.js.map +1 -1
  14. package/lib/commonjs/getActionFromState.js.map +1 -1
  15. package/lib/commonjs/index.js +52 -0
  16. package/lib/commonjs/index.js.map +1 -1
  17. package/lib/commonjs/types.js.map +1 -1
  18. package/lib/commonjs/useDescriptors.js +21 -18
  19. package/lib/commonjs/useDescriptors.js.map +1 -1
  20. package/lib/commonjs/useNavigationBuilder.js +1 -1
  21. package/lib/commonjs/useNavigationBuilder.js.map +1 -1
  22. package/lib/commonjs/useNavigationCache.js +9 -7
  23. package/lib/commonjs/useNavigationCache.js.map +1 -1
  24. package/lib/commonjs/useNavigationIndependentTree.js +15 -0
  25. package/lib/commonjs/useNavigationIndependentTree.js.map +1 -0
  26. package/lib/commonjs/useOnAction.js +11 -7
  27. package/lib/commonjs/useOnAction.js.map +1 -1
  28. package/lib/module/BaseNavigationContainer.js +44 -33
  29. package/lib/module/BaseNavigationContainer.js.map +1 -1
  30. package/lib/module/DeprecatedNavigationInChildContext.js +8 -0
  31. package/lib/module/DeprecatedNavigationInChildContext.js.map +1 -0
  32. package/lib/module/NavigationIndependentTree.js +25 -0
  33. package/lib/module/NavigationIndependentTree.js.map +1 -0
  34. package/lib/module/NavigationIndependentTreeContext.js +8 -0
  35. package/lib/module/NavigationIndependentTreeContext.js.map +1 -0
  36. package/lib/module/StaticNavigation.js +156 -0
  37. package/lib/module/StaticNavigation.js.map +1 -0
  38. package/lib/module/createNavigatorFactory.js +16 -7
  39. package/lib/module/createNavigatorFactory.js.map +1 -1
  40. package/lib/module/getActionFromState.js.map +1 -1
  41. package/lib/module/index.js +3 -0
  42. package/lib/module/index.js.map +1 -1
  43. package/lib/module/types.js.map +1 -1
  44. package/lib/module/useDescriptors.js +21 -18
  45. package/lib/module/useDescriptors.js.map +1 -1
  46. package/lib/module/useNavigationBuilder.js +1 -1
  47. package/lib/module/useNavigationBuilder.js.map +1 -1
  48. package/lib/module/useNavigationCache.js +9 -7
  49. package/lib/module/useNavigationCache.js.map +1 -1
  50. package/lib/module/useNavigationIndependentTree.js +6 -0
  51. package/lib/module/useNavigationIndependentTree.js.map +1 -0
  52. package/lib/module/useOnAction.js +11 -7
  53. package/lib/module/useOnAction.js.map +1 -1
  54. package/lib/typescript/src/BaseNavigationContainer.d.ts +2 -0
  55. package/lib/typescript/src/BaseNavigationContainer.d.ts.map +1 -1
  56. package/lib/typescript/src/DeprecatedNavigationInChildContext.d.ts +7 -0
  57. package/lib/typescript/src/DeprecatedNavigationInChildContext.d.ts.map +1 -0
  58. package/lib/typescript/src/EnsureSingleNavigator.d.ts +1 -1
  59. package/lib/typescript/src/EnsureSingleNavigator.d.ts.map +1 -1
  60. package/lib/typescript/src/NavigationBuilderContext.d.ts +9 -9
  61. package/lib/typescript/src/NavigationBuilderContext.d.ts.map +1 -1
  62. package/lib/typescript/src/NavigationIndependentTree.d.ts +8 -0
  63. package/lib/typescript/src/NavigationIndependentTree.d.ts.map +1 -0
  64. package/lib/typescript/src/NavigationIndependentTreeContext.d.ts +7 -0
  65. package/lib/typescript/src/NavigationIndependentTreeContext.d.ts.map +1 -0
  66. package/lib/typescript/src/PreventRemoveContext.d.ts +1 -1
  67. package/lib/typescript/src/PreventRemoveContext.d.ts.map +1 -1
  68. package/lib/typescript/src/PreventRemoveProvider.d.ts +1 -1
  69. package/lib/typescript/src/PreventRemoveProvider.d.ts.map +1 -1
  70. package/lib/typescript/src/SceneView.d.ts +1 -1
  71. package/lib/typescript/src/SceneView.d.ts.map +1 -1
  72. package/lib/typescript/src/StaticNavigation.d.ts +159 -0
  73. package/lib/typescript/src/StaticNavigation.d.ts.map +1 -0
  74. package/lib/typescript/src/createNavigatorFactory.d.ts +8 -2
  75. package/lib/typescript/src/createNavigatorFactory.d.ts.map +1 -1
  76. package/lib/typescript/src/getActionFromState.d.ts +2 -2
  77. package/lib/typescript/src/getActionFromState.d.ts.map +1 -1
  78. package/lib/typescript/src/getPathFromState.d.ts +2 -2
  79. package/lib/typescript/src/getPathFromState.d.ts.map +1 -1
  80. package/lib/typescript/src/getStateFromPath.d.ts +2 -2
  81. package/lib/typescript/src/getStateFromPath.d.ts.map +1 -1
  82. package/lib/typescript/src/index.d.ts +3 -0
  83. package/lib/typescript/src/index.d.ts.map +1 -1
  84. package/lib/typescript/src/types.d.ts +109 -57
  85. package/lib/typescript/src/types.d.ts.map +1 -1
  86. package/lib/typescript/src/useComponent.d.ts +1 -1
  87. package/lib/typescript/src/useComponent.d.ts.map +1 -1
  88. package/lib/typescript/src/useCurrentRender.d.ts +1 -1
  89. package/lib/typescript/src/useCurrentRender.d.ts.map +1 -1
  90. package/lib/typescript/src/useDescriptors.d.ts +11 -9
  91. package/lib/typescript/src/useDescriptors.d.ts.map +1 -1
  92. package/lib/typescript/src/useEventEmitter.d.ts +1 -1
  93. package/lib/typescript/src/useEventEmitter.d.ts.map +1 -1
  94. package/lib/typescript/src/useFocusEffect.d.ts +1 -1
  95. package/lib/typescript/src/useFocusEffect.d.ts.map +1 -1
  96. package/lib/typescript/src/useFocusEvents.d.ts +1 -1
  97. package/lib/typescript/src/useFocusEvents.d.ts.map +1 -1
  98. package/lib/typescript/src/useFocusedListenersChildrenAdapter.d.ts +1 -1
  99. package/lib/typescript/src/useFocusedListenersChildrenAdapter.d.ts.map +1 -1
  100. package/lib/typescript/src/useNavigationBuilder.d.ts +33 -17
  101. package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
  102. package/lib/typescript/src/useNavigationCache.d.ts +4 -4
  103. package/lib/typescript/src/useNavigationCache.d.ts.map +1 -1
  104. package/lib/typescript/src/useNavigationHelpers.d.ts +11 -9
  105. package/lib/typescript/src/useNavigationHelpers.d.ts.map +1 -1
  106. package/lib/typescript/src/useNavigationIndependentTree.d.ts +2 -0
  107. package/lib/typescript/src/useNavigationIndependentTree.d.ts.map +1 -0
  108. package/lib/typescript/src/useNavigationState.d.ts +1 -1
  109. package/lib/typescript/src/useNavigationState.d.ts.map +1 -1
  110. package/lib/typescript/src/useOnAction.d.ts +1 -1
  111. package/lib/typescript/src/useOnAction.d.ts.map +1 -1
  112. package/lib/typescript/src/useOnGetState.d.ts +1 -1
  113. package/lib/typescript/src/useOnGetState.d.ts.map +1 -1
  114. package/lib/typescript/src/useOnPreventRemove.d.ts +1 -1
  115. package/lib/typescript/src/useOnPreventRemove.d.ts.map +1 -1
  116. package/lib/typescript/src/useOnRouteFocus.d.ts +1 -1
  117. package/lib/typescript/src/useOnRouteFocus.d.ts.map +1 -1
  118. package/lib/typescript/src/useOptionsGetters.d.ts +1 -1
  119. package/lib/typescript/src/useOptionsGetters.d.ts.map +1 -1
  120. package/package.json +11 -11
  121. package/src/BaseNavigationContainer.tsx +68 -64
  122. package/src/DeprecatedNavigationInChildContext.tsx +8 -0
  123. package/src/NavigationIndependentTree.tsx +25 -0
  124. package/src/NavigationIndependentTreeContext.tsx +8 -0
  125. package/src/StaticNavigation.tsx +401 -0
  126. package/src/createNavigatorFactory.tsx +38 -9
  127. package/src/getActionFromState.tsx +2 -8
  128. package/src/getPathFromState.tsx +1 -1
  129. package/src/index.tsx +9 -0
  130. package/src/types.tsx +111 -40
  131. package/src/useDescriptors.tsx +24 -19
  132. package/src/useNavigationBuilder.tsx +26 -5
  133. package/src/useNavigationCache.tsx +8 -4
  134. package/src/useNavigationIndependentTree.tsx +7 -0
  135. package/src/useOnAction.tsx +13 -5
@@ -0,0 +1,159 @@
1
+ import type { NavigationState, ParamListBase } from '@react-navigation/routers';
2
+ import * as React from 'react';
3
+ import type { DefaultNavigatorOptions, EventMapBase, NavigatorScreenParams, PathConfig, RouteConfig, RouteGroupConfig } from './types';
4
+ /**
5
+ * Flatten a type to remove all type alias names, unions etc.
6
+ * This will show a plain object when hovering over the type.
7
+ */
8
+ type FlatType<T> = {
9
+ [K in keyof T]: T[K];
10
+ } & {};
11
+ /**
12
+ * keyof T doesn't work for union types. We can use distributive conditional types instead.
13
+ * https://www.typescriptlang.org/docs/handbook/2/conditional-types.html#distributive-conditional-types
14
+ */
15
+ type KeysOf<T> = T extends any ? keyof T : never;
16
+ type UnknownToUndefined<T> = unknown extends T ? undefined : T;
17
+ type ParamsForScreenComponent<T> = T extends {
18
+ screen: React.ComponentType<{
19
+ route: {
20
+ params: infer P;
21
+ };
22
+ }>;
23
+ } ? P : T extends React.ComponentType<{
24
+ route: {
25
+ params: infer P;
26
+ };
27
+ }> ? P : undefined;
28
+ type ParamsForScreen<T> = T extends {
29
+ screen: StaticNavigation<any, any, any>;
30
+ } ? NavigatorScreenParams<StaticParamList<T['screen']>> | undefined : T extends StaticNavigation<any, any, any> ? NavigatorScreenParams<StaticParamList<T>> | undefined : UnknownToUndefined<ParamsForScreenComponent<T>>;
31
+ type ParamListForScreens<Screens extends StaticConfigScreens<ParamListBase, NavigationState, {}, EventMapBase>> = {
32
+ [Key in KeysOf<Screens>]: ParamsForScreen<Screens[Key]>;
33
+ };
34
+ type ParamListForGroups<Groups extends Readonly<{
35
+ [key: string]: {
36
+ screens: StaticConfigScreens<ParamListBase, NavigationState, {}, EventMapBase>;
37
+ };
38
+ }> | undefined> = Groups extends {
39
+ [key: string]: {
40
+ screens: StaticConfigScreens<ParamListBase, NavigationState, {}, EventMapBase>;
41
+ };
42
+ } ? ParamListForScreens<Groups[keyof Groups]['screens']> : {};
43
+ type StaticConfigScreens<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase> = {
44
+ [key in keyof ParamList]: React.ComponentType<any> | StaticNavigation<any, any, any> | (Omit<RouteConfig<ParamList, keyof ParamList, State, ScreenOptions, EventMap>, 'name' | 'component' | 'getComponent' | 'children'> & {
45
+ /**
46
+ * Callback to determine whether the screen should be rendered or not.
47
+ * This can be useful for conditional rendering of screens,
48
+ * e.g. - if you want to render a different screen for logged in users.
49
+ *
50
+ * You can use a custom hook to use custom logic to determine the return value.
51
+ *
52
+ * @example
53
+ * ```js
54
+ * if: useIsLoggedIn
55
+ * ```
56
+ */
57
+ if?: () => boolean;
58
+ /**
59
+ * Linking config for the screen.
60
+ * This can be a string to specify the path, or an object with more options.
61
+ *
62
+ * @example
63
+ * ```js
64
+ * linking: {
65
+ * path: 'profile/:id',
66
+ * exact: true,
67
+ * },
68
+ * ```
69
+ */
70
+ linking?: FlatType<Pick<PathConfig<ParamList>, 'path' | 'exact' | 'parse' | 'stringify'>> | string;
71
+ /**
72
+ * Static navigation config or Component to render for the screen.
73
+ */
74
+ screen: StaticNavigation<any, any, any> | React.ComponentType<any>;
75
+ });
76
+ };
77
+ type GroupConfig<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase> = Omit<RouteGroupConfig<ParamList, ScreenOptions>, 'screens' | 'children'> & {
78
+ /**
79
+ * Callback to determine whether the screens in the group should be rendered or not.
80
+ * This can be useful for conditional rendering of group of screens.
81
+ */
82
+ if?: () => boolean;
83
+ /**
84
+ * Static navigation config or Component to render for the screen.
85
+ */
86
+ screens: StaticConfigScreens<ParamList, State, ScreenOptions, EventMap>;
87
+ };
88
+ export type StaticConfig<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, Navigator extends React.ComponentType<{}>> = Omit<Omit<React.ComponentProps<Navigator>, keyof DefaultNavigatorOptions<ParamListBase, NavigationState, {}, EventMapBase>> & DefaultNavigatorOptions<ParamList, State, ScreenOptions, EventMap>, 'screens' | 'children'> & {
89
+ /**
90
+ * Screens to render in the navigator and their configuration.
91
+ */
92
+ screens: StaticConfigScreens<ParamList, State, ScreenOptions, EventMap>;
93
+ /**
94
+ * Groups of screens to render in the navigator and their configuration.
95
+ */
96
+ groups?: {
97
+ [key: string]: GroupConfig<ParamList, State, ScreenOptions, EventMap>;
98
+ };
99
+ };
100
+ /**
101
+ * Props for a screen component which is rendered by a static navigator.
102
+ * Takes the route params as a generic argument.
103
+ */
104
+ export type StaticScreenProps<T extends Record<string, unknown> | undefined> = {
105
+ route: {
106
+ params: T;
107
+ };
108
+ };
109
+ /**
110
+ * Infer the param list from the static navigation config.
111
+ */
112
+ export type StaticParamList<T extends {
113
+ readonly config: {
114
+ readonly screens: Record<string, any>;
115
+ readonly groups?: {
116
+ [key: string]: {
117
+ screens: Record<string, any>;
118
+ };
119
+ };
120
+ };
121
+ }> = FlatType<ParamListForScreens<T['config']['screens']> & ParamListForGroups<T['config']['groups']>>;
122
+ export type StaticNavigation<NavigatorProps, GroupProps, ScreenProps> = {
123
+ Navigator: React.ComponentType<NavigatorProps>;
124
+ Group: React.ComponentType<GroupProps>;
125
+ Screen: React.ComponentType<ScreenProps>;
126
+ config: StaticConfig<ParamListBase, NavigationState, {}, EventMapBase, React.ComponentType<any>>;
127
+ };
128
+ /**
129
+ * Create a component that renders a navigator based on the static configuration.
130
+ *
131
+ * @param tree Static navigation config.
132
+ * @param displayName Name of the component to be displayed in React DevTools.
133
+ * @returns A component which renders the navigator.
134
+ */
135
+ export declare function createComponentForStaticNavigation(tree: StaticNavigation<any, any, any>, displayName: string): React.ComponentType<{}>;
136
+ /**
137
+ * Create a path config object from a static navigation config for deep linking.
138
+ *
139
+ * @param tree Static navigation config.
140
+ * @returns Path config object to use in linking config.
141
+ *
142
+ * @example
143
+ * ```js
144
+ * const config = {
145
+ * screens: {
146
+ * Home: {
147
+ * screens: createPathConfigForStaticNavigation(HomeTabs),
148
+ * },
149
+ * },
150
+ * };
151
+ * ```
152
+ */
153
+ export declare function createPathConfigForStaticNavigation(tree: {
154
+ config: {
155
+ screens: StaticConfigScreens<ParamListBase, NavigationState, {}, EventMapBase>;
156
+ };
157
+ }): Record<string, PathConfig<ParamListBase>>;
158
+ export {};
159
+ //# sourceMappingURL=StaticNavigation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StaticNavigation.d.ts","sourceRoot":"","sources":["../../../src/StaticNavigation.tsx"],"names":[],"mappings":"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"}
@@ -1,12 +1,18 @@
1
1
  import type { NavigationState, ParamListBase } from '@react-navigation/routers';
2
2
  import type * as React from 'react';
3
+ import type { StaticConfig } from './StaticNavigation';
3
4
  import type { EventMapBase, TypedNavigator } from './types';
4
5
  /**
5
6
  * Higher order component to create a `Navigator` and `Screen` pair.
6
7
  * Custom navigators should wrap the navigator component in `createNavigator` before exporting.
7
8
  *
8
- * @param Navigator The navigtor component to wrap.
9
+ * @param Navigator The navigator component to wrap.
9
10
  * @returns Factory method to create a `Navigator` and `Screen` pair.
10
11
  */
11
- export default function createNavigatorFactory<State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigatorComponent extends React.ComponentType<any>>(Navigator: NavigatorComponent): <ParamList extends ParamListBase>() => TypedNavigator<ParamList, State, ScreenOptions, EventMap, NavigatorComponent>;
12
+ export default function createNavigatorFactory<State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigatorComponent extends React.ComponentType<any>>(Navigator: NavigatorComponent): {
13
+ <ParamList extends ParamListBase>(): TypedNavigator<ParamList, State, ScreenOptions, EventMap, NavigatorComponent>;
14
+ <ParamList_1 extends ParamListBase, Config extends StaticConfig<ParamList_1, State, ScreenOptions, EventMap, NavigatorComponent>>(config: Config): TypedNavigator<ParamList_1, State, ScreenOptions, EventMap, NavigatorComponent> & {
15
+ config: Config;
16
+ };
17
+ };
12
18
  //# sourceMappingURL=createNavigatorFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createNavigatorFactory.d.ts","sourceRoot":"","sources":["../../../src/createNavigatorFactory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAIpC,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE5D;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,YAAY,EAC7B,kBAAkB,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EACnD,SAAS,EAAE,kBAAkB,wHAoB9B"}
1
+ {"version":3,"file":"createNavigatorFactory.d.ts","sourceRoot":"","sources":["../../../src/createNavigatorFactory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAIpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE5D;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,YAAY,EAC7B,kBAAkB,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EACnD,SAAS,EAAE,kBAAkB;;;;;EAgD9B"}
@@ -1,10 +1,10 @@
1
1
  import type { CommonActions, NavigationState, PartialState } from '@react-navigation/routers';
2
2
  import type { NavigatorScreenParams, PathConfigMap } from './types';
3
- declare type Options = {
3
+ type Options = {
4
4
  initialRouteName?: string;
5
5
  screens: PathConfigMap<object>;
6
6
  };
7
- declare type NavigateAction<State extends NavigationState> = {
7
+ type NavigateAction<State extends NavigationState> = {
8
8
  type: 'NAVIGATE';
9
9
  payload: {
10
10
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"getActionFromState.d.ts","sourceRoot":"","sources":["../../../src/getActionFromState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EAGf,YAAY,EAEb,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAE,qBAAqB,EAAc,aAAa,EAAE,MAAM,SAAS,CAAC;AAOhF,aAAK,OAAO,GAAG;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAChC,CAAC;AAEF,aAAK,cAAc,CAAC,KAAK,SAAS,eAAe,IAAI;IACnD,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,KAAK,EAAE,YAAY,CAAC,eAAe,CAAC,EACpC,OAAO,CAAC,EAAE,OAAO,GAChB,cAAc,CAAC,eAAe,CAAC,GAAG,aAAa,CAAC,MAAM,GAAG,SAAS,CAuGpE"}
1
+ {"version":3,"file":"getActionFromState.d.ts","sourceRoot":"","sources":["../../../src/getActionFromState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EAGf,YAAY,EAEb,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAE,qBAAqB,EAAc,aAAa,EAAE,MAAM,SAAS,CAAC;AAOhF,KAAK,OAAO,GAAG;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAChC,CAAC;AAEF,KAAK,cAAc,CAAC,KAAK,SAAS,eAAe,IAAI;IACnD,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,KAAK,EAAE,YAAY,CAAC,eAAe,CAAC,EACpC,OAAO,CAAC,EAAE,OAAO,GAChB,cAAc,CAAC,eAAe,CAAC,GAAG,aAAa,CAAC,MAAM,GAAG,SAAS,CAiGpE"}
@@ -1,10 +1,10 @@
1
1
  import type { NavigationState, PartialState } from '@react-navigation/routers';
2
2
  import type { PathConfigMap } from './types';
3
- declare type Options<ParamList> = {
3
+ type Options<ParamList extends {}> = {
4
4
  initialRouteName?: string;
5
5
  screens: PathConfigMap<ParamList>;
6
6
  };
7
- declare type State = NavigationState | Omit<PartialState<NavigationState>, 'stale'>;
7
+ type State = NavigationState | Omit<PartialState<NavigationState>, 'stale'>;
8
8
  /**
9
9
  * Utility to serialize a navigation state object to a path string.
10
10
  *
@@ -1 +1 @@
1
- {"version":3,"file":"getPathFromState.d.ts","sourceRoot":"","sources":["../../../src/getPathFromState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EAEb,MAAM,2BAA2B,CAAC;AAInC,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,SAAS,CAAC;AAGzD,aAAK,OAAO,CAAC,SAAS,IAAI;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACnC,CAAC;AAEF,aAAK,KAAK,GAAG,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC,CAAC;AAuB5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,SAAS,SAAS,EAAE,EAC3D,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC3B,MAAM,CAsKR"}
1
+ {"version":3,"file":"getPathFromState.d.ts","sourceRoot":"","sources":["../../../src/getPathFromState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EAEb,MAAM,2BAA2B,CAAC;AAInC,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,SAAS,CAAC;AAGzD,KAAK,OAAO,CAAC,SAAS,SAAS,EAAE,IAAI;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACnC,CAAC;AAEF,KAAK,KAAK,GAAG,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC,CAAC;AAuB5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,SAAS,SAAS,EAAE,EAC3D,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC3B,MAAM,CAsKR"}
@@ -1,10 +1,10 @@
1
1
  import type { NavigationState, PartialState } from '@react-navigation/routers';
2
2
  import type { PathConfigMap } from './types';
3
- declare type Options<ParamList extends {}> = {
3
+ type Options<ParamList extends {}> = {
4
4
  initialRouteName?: string;
5
5
  screens: PathConfigMap<ParamList>;
6
6
  };
7
- declare type ResultState = PartialState<NavigationState> & {
7
+ type ResultState = PartialState<NavigationState> & {
8
8
  state?: ResultState;
9
9
  };
10
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"getStateFromPath.d.ts","sourceRoot":"","sources":["../../../src/getStateFromPath.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,eAAe,EACf,YAAY,EACb,MAAM,2BAA2B,CAAC;AAKnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,aAAK,OAAO,CAAC,SAAS,SAAS,EAAE,IAAI;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACnC,CAAC;AAkBF,aAAK,WAAW,GAAG,YAAY,CAAC,eAAe,CAAC,GAAG;IACjD,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB,CAAC;AAQF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,SAAS,SAAS,EAAE,EAC3D,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC3B,WAAW,GAAG,SAAS,CAwLzB"}
1
+ {"version":3,"file":"getStateFromPath.d.ts","sourceRoot":"","sources":["../../../src/getStateFromPath.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,eAAe,EACf,YAAY,EACb,MAAM,2BAA2B,CAAC;AAKnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,KAAK,OAAO,CAAC,SAAS,SAAS,EAAE,IAAI;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACnC,CAAC;AAkBF,KAAK,WAAW,GAAG,YAAY,CAAC,eAAe,CAAC,GAAG;IACjD,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB,CAAC;AAQF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,SAAS,SAAS,EAAE,EAC3D,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC3B,WAAW,GAAG,SAAS,CAwLzB"}
@@ -10,15 +10,18 @@ export { default as getStateFromPath } from './getStateFromPath';
10
10
  export { default as NavigationContainerRefContext } from './NavigationContainerRefContext';
11
11
  export { default as NavigationContext } from './NavigationContext';
12
12
  export { default as NavigationHelpersContext } from './NavigationHelpersContext';
13
+ export { default as NavigationIndependentTree } from './NavigationIndependentTree';
13
14
  export { default as NavigationRouteContext } from './NavigationRouteContext';
14
15
  export { default as PreventRemoveContext } from './PreventRemoveContext';
15
16
  export { default as PreventRemoveProvider } from './PreventRemoveProvider';
17
+ export { createComponentForStaticNavigation, createPathConfigForStaticNavigation, StaticNavigation, StaticParamList, StaticScreenProps, } from './StaticNavigation';
16
18
  export * from './types';
17
19
  export { default as useFocusEffect } from './useFocusEffect';
18
20
  export { default as useIsFocused } from './useIsFocused';
19
21
  export { default as useNavigation } from './useNavigation';
20
22
  export { default as useNavigationBuilder } from './useNavigationBuilder';
21
23
  export { default as useNavigationContainerRef } from './useNavigationContainerRef';
24
+ export { default as useNavigationIndependentTree } from './useNavigationIndependentTree';
22
25
  export { default as useNavigationState } from './useNavigationState';
23
26
  export { default as UNSTABLE_usePreventRemove } from './usePreventRemove';
24
27
  export { default as usePreventRemoveContext } from './usePreventRemoveContext';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EACL,kCAAkC,EAClC,mCAAmC,EACnC,gBAAgB,EAChB,eAAe,EACf,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,cAAc,2BAA2B,CAAC"}