@react-navigation/core 7.0.0-alpha.1 → 7.0.0-alpha.10
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.
- package/lib/commonjs/BaseNavigationContainer.js +25 -30
- package/lib/commonjs/BaseNavigationContainer.js.map +1 -1
- package/lib/commonjs/CurrentRenderContext.js +3 -4
- package/lib/commonjs/CurrentRenderContext.js.map +1 -1
- package/lib/commonjs/DeprecatedNavigationInChildContext.js +3 -4
- package/lib/commonjs/DeprecatedNavigationInChildContext.js.map +1 -1
- package/lib/commonjs/EnsureSingleNavigator.js +3 -4
- package/lib/commonjs/EnsureSingleNavigator.js.map +1 -1
- package/lib/commonjs/Group.js.map +1 -1
- package/lib/commonjs/NavigationBuilderContext.js +3 -4
- package/lib/commonjs/NavigationBuilderContext.js.map +1 -1
- package/lib/commonjs/NavigationContainerRefContext.js +3 -4
- package/lib/commonjs/NavigationContainerRefContext.js.map +1 -1
- package/lib/commonjs/NavigationContext.js +3 -4
- package/lib/commonjs/NavigationContext.js.map +1 -1
- package/lib/commonjs/NavigationHelpersContext.js +3 -4
- package/lib/commonjs/NavigationHelpersContext.js.map +1 -1
- package/lib/commonjs/NavigationIndependentTree.js +2 -2
- package/lib/commonjs/NavigationIndependentTree.js.map +1 -1
- package/lib/commonjs/NavigationIndependentTreeContext.js +3 -4
- package/lib/commonjs/NavigationIndependentTreeContext.js.map +1 -1
- package/lib/commonjs/NavigationRouteContext.js +3 -4
- package/lib/commonjs/NavigationRouteContext.js.map +1 -1
- package/lib/commonjs/NavigationStateContext.js +3 -4
- package/lib/commonjs/NavigationStateContext.js.map +1 -1
- package/lib/commonjs/PreventRemoveContext.js +8 -4
- package/lib/commonjs/PreventRemoveContext.js.map +1 -1
- package/lib/commonjs/PreventRemoveProvider.js +8 -10
- package/lib/commonjs/PreventRemoveProvider.js.map +1 -1
- package/lib/commonjs/SceneView.js +2 -2
- package/lib/commonjs/SceneView.js.map +1 -1
- package/lib/commonjs/Screen.js.map +1 -1
- package/lib/commonjs/StaticContainer.js +3 -4
- package/lib/commonjs/StaticContainer.js.map +1 -1
- package/lib/commonjs/StaticNavigation.js +34 -7
- package/lib/commonjs/StaticNavigation.js.map +1 -1
- package/lib/commonjs/UnhandledActionContext.js +3 -4
- package/lib/commonjs/UnhandledActionContext.js.map +1 -1
- package/lib/commonjs/checkDuplicateRouteNames.js +1 -2
- package/lib/commonjs/checkDuplicateRouteNames.js.map +1 -1
- package/lib/commonjs/checkSerializable.js.map +1 -1
- package/lib/commonjs/createNavigationContainerRef.js +1 -2
- package/lib/commonjs/createNavigationContainerRef.js.map +1 -1
- package/lib/commonjs/createNavigatorFactory.js +0 -3
- package/lib/commonjs/createNavigatorFactory.js.map +1 -1
- package/lib/commonjs/findFocusedRoute.js +2 -4
- package/lib/commonjs/findFocusedRoute.js.map +1 -1
- package/lib/commonjs/getActionFromState.js +6 -8
- package/lib/commonjs/getActionFromState.js.map +1 -1
- package/lib/commonjs/getFocusedRouteNameFromRoute.js +1 -1
- package/lib/commonjs/getFocusedRouteNameFromRoute.js.map +1 -1
- package/lib/commonjs/getPathFromState.js +21 -21
- package/lib/commonjs/getPathFromState.js.map +1 -1
- package/lib/commonjs/getStateFromPath.js +24 -17
- package/lib/commonjs/getStateFromPath.js.map +1 -1
- package/lib/commonjs/index.js +27 -3
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/isArrayEqual.js.map +1 -1
- package/lib/commonjs/isRecordEqual.js.map +1 -1
- package/lib/commonjs/theming/ThemeContext.js +12 -0
- package/lib/commonjs/theming/ThemeContext.js.map +1 -0
- package/lib/commonjs/theming/ThemeProvider.js +20 -0
- package/lib/commonjs/theming/ThemeProvider.js.map +1 -0
- package/lib/commonjs/theming/useTheme.js +18 -0
- package/lib/commonjs/theming/useTheme.js.map +1 -0
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/useChildListeners.js +2 -2
- package/lib/commonjs/useChildListeners.js.map +1 -1
- package/lib/commonjs/useComponent.js +2 -2
- package/lib/commonjs/useComponent.js.map +1 -1
- package/lib/commonjs/useCurrentRender.js +2 -2
- package/lib/commonjs/useCurrentRender.js.map +1 -1
- package/lib/commonjs/useDescriptors.js +83 -31
- package/lib/commonjs/useDescriptors.js.map +1 -1
- package/lib/commonjs/useEventEmitter.js +5 -6
- package/lib/commonjs/useEventEmitter.js.map +1 -1
- package/lib/commonjs/useFocusEffect.js +4 -2
- package/lib/commonjs/useFocusEffect.js.map +1 -1
- package/lib/commonjs/useFocusEvents.js +4 -4
- package/lib/commonjs/useFocusEvents.js.map +1 -1
- package/lib/commonjs/useFocusedListenersChildrenAdapter.js +3 -3
- package/lib/commonjs/useFocusedListenersChildrenAdapter.js.map +1 -1
- package/lib/commonjs/useIsFocused.js +5 -4
- package/lib/commonjs/useIsFocused.js.map +1 -1
- package/lib/commonjs/useIsomorphicLayoutEffect.js +12 -0
- package/lib/commonjs/useIsomorphicLayoutEffect.js.map +1 -0
- package/lib/commonjs/useIsomorphicLayoutEffect.native.js +9 -0
- package/lib/commonjs/useIsomorphicLayoutEffect.native.js.map +1 -0
- package/lib/commonjs/useKeyedChildListeners.js +2 -2
- package/lib/commonjs/useKeyedChildListeners.js.map +1 -1
- package/lib/commonjs/useNavigation.js +2 -2
- package/lib/commonjs/useNavigation.js.map +1 -1
- package/lib/commonjs/useNavigationBuilder.js +78 -68
- package/lib/commonjs/useNavigationBuilder.js.map +1 -1
- package/lib/commonjs/useNavigationCache.js +57 -16
- package/lib/commonjs/useNavigationCache.js.map +1 -1
- package/lib/commonjs/useNavigationContainerRef.js +2 -2
- package/lib/commonjs/useNavigationContainerRef.js.map +1 -1
- package/lib/commonjs/useNavigationHelpers.js +4 -5
- package/lib/commonjs/useNavigationHelpers.js.map +1 -1
- package/lib/commonjs/useNavigationIndependentTree.js +2 -2
- package/lib/commonjs/useNavigationIndependentTree.js.map +1 -1
- package/lib/commonjs/useNavigationState.js +2 -2
- package/lib/commonjs/useNavigationState.js.map +1 -1
- package/lib/commonjs/useOnAction.js +6 -4
- package/lib/commonjs/useOnAction.js.map +1 -1
- package/lib/commonjs/useOnGetState.js +4 -5
- package/lib/commonjs/useOnGetState.js.map +1 -1
- package/lib/commonjs/useOnPreventRemove.js +5 -6
- package/lib/commonjs/useOnPreventRemove.js.map +1 -1
- package/lib/commonjs/useOnRouteFocus.js +2 -2
- package/lib/commonjs/useOnRouteFocus.js.map +1 -1
- package/lib/commonjs/useOptionsGetters.js +9 -10
- package/lib/commonjs/useOptionsGetters.js.map +1 -1
- package/lib/commonjs/usePreventRemove.js +5 -5
- package/lib/commonjs/usePreventRemove.js.map +1 -1
- package/lib/commonjs/usePreventRemoveContext.js +2 -2
- package/lib/commonjs/usePreventRemoveContext.js.map +1 -1
- package/lib/commonjs/useRegisterNavigator.js +2 -2
- package/lib/commonjs/useRegisterNavigator.js.map +1 -1
- package/lib/commonjs/useRoute.js +2 -2
- package/lib/commonjs/useRoute.js.map +1 -1
- package/lib/commonjs/useRouteCache.js +19 -16
- package/lib/commonjs/useRouteCache.js.map +1 -1
- package/lib/commonjs/useSyncState.js +27 -56
- package/lib/commonjs/useSyncState.js.map +1 -1
- package/lib/commonjs/validatePathConfig.js +37 -10
- package/lib/commonjs/validatePathConfig.js.map +1 -1
- package/lib/module/BaseNavigationContainer.js +22 -26
- package/lib/module/BaseNavigationContainer.js.map +1 -1
- package/lib/module/CurrentRenderContext.js.map +1 -1
- package/lib/module/DeprecatedNavigationInChildContext.js.map +1 -1
- package/lib/module/EnsureSingleNavigator.js.map +1 -1
- package/lib/module/Group.js.map +1 -1
- package/lib/module/NavigationBuilderContext.js.map +1 -1
- package/lib/module/NavigationContainerRefContext.js.map +1 -1
- package/lib/module/NavigationContext.js.map +1 -1
- package/lib/module/NavigationHelpersContext.js.map +1 -1
- package/lib/module/NavigationIndependentTree.js.map +1 -1
- package/lib/module/NavigationIndependentTreeContext.js.map +1 -1
- package/lib/module/NavigationRouteContext.js.map +1 -1
- package/lib/module/NavigationStateContext.js.map +1 -1
- package/lib/module/PreventRemoveContext.js.map +1 -1
- package/lib/module/PreventRemoveProvider.js +6 -8
- package/lib/module/PreventRemoveProvider.js.map +1 -1
- package/lib/module/SceneView.js.map +1 -1
- package/lib/module/Screen.js.map +1 -1
- package/lib/module/StaticContainer.js.map +1 -1
- package/lib/module/StaticNavigation.js +27 -5
- package/lib/module/StaticNavigation.js.map +1 -1
- package/lib/module/UnhandledActionContext.js.map +1 -1
- package/lib/module/checkDuplicateRouteNames.js +1 -2
- package/lib/module/checkDuplicateRouteNames.js.map +1 -1
- package/lib/module/checkSerializable.js.map +1 -1
- package/lib/module/createNavigationContainerRef.js.map +1 -1
- package/lib/module/createNavigatorFactory.js +0 -3
- package/lib/module/createNavigatorFactory.js.map +1 -1
- package/lib/module/findFocusedRoute.js +2 -4
- package/lib/module/findFocusedRoute.js.map +1 -1
- package/lib/module/getActionFromState.js +6 -8
- package/lib/module/getActionFromState.js.map +1 -1
- package/lib/module/getFocusedRouteNameFromRoute.js +1 -1
- package/lib/module/getFocusedRouteNameFromRoute.js.map +1 -1
- package/lib/module/getPathFromState.js +19 -19
- package/lib/module/getPathFromState.js.map +1 -1
- package/lib/module/getStateFromPath.js +22 -15
- package/lib/module/getStateFromPath.js.map +1 -1
- package/lib/module/index.js +4 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/isArrayEqual.js.map +1 -1
- package/lib/module/isRecordEqual.js.map +1 -1
- package/lib/module/theming/ThemeContext.js +4 -0
- package/lib/module/theming/ThemeContext.js.map +1 -0
- package/lib/module/theming/ThemeProvider.js +12 -0
- package/lib/module/theming/ThemeProvider.js.map +1 -0
- package/lib/module/theming/useTheme.js +10 -0
- package/lib/module/theming/useTheme.js.map +1 -0
- package/lib/module/types.js.map +1 -1
- package/lib/module/useChildListeners.js.map +1 -1
- package/lib/module/useComponent.js.map +1 -1
- package/lib/module/useCurrentRender.js.map +1 -1
- package/lib/module/useDescriptors.js +81 -29
- package/lib/module/useDescriptors.js.map +1 -1
- package/lib/module/useEventEmitter.js +3 -4
- package/lib/module/useEventEmitter.js.map +1 -1
- package/lib/module/useFocusEffect.js +2 -0
- package/lib/module/useFocusEffect.js.map +1 -1
- package/lib/module/useFocusEvents.js +2 -2
- package/lib/module/useFocusEvents.js.map +1 -1
- package/lib/module/useFocusedListenersChildrenAdapter.js +1 -1
- package/lib/module/useFocusedListenersChildrenAdapter.js.map +1 -1
- package/lib/module/useIsFocused.js.map +1 -1
- package/lib/module/useIsomorphicLayoutEffect.js +7 -0
- package/lib/module/useIsomorphicLayoutEffect.js.map +1 -0
- package/lib/module/useIsomorphicLayoutEffect.native.js +3 -0
- package/lib/module/useIsomorphicLayoutEffect.native.js.map +1 -0
- package/lib/module/useKeyedChildListeners.js.map +1 -1
- package/lib/module/useNavigation.js.map +1 -1
- package/lib/module/useNavigationBuilder.js +75 -66
- package/lib/module/useNavigationBuilder.js.map +1 -1
- package/lib/module/useNavigationCache.js +55 -14
- package/lib/module/useNavigationCache.js.map +1 -1
- package/lib/module/useNavigationContainerRef.js.map +1 -1
- package/lib/module/useNavigationHelpers.js +2 -3
- package/lib/module/useNavigationHelpers.js.map +1 -1
- package/lib/module/useNavigationIndependentTree.js.map +1 -1
- package/lib/module/useNavigationState.js.map +1 -1
- package/lib/module/useOnAction.js +4 -2
- package/lib/module/useOnAction.js.map +1 -1
- package/lib/module/useOnGetState.js +2 -3
- package/lib/module/useOnGetState.js.map +1 -1
- package/lib/module/useOnPreventRemove.js +3 -4
- package/lib/module/useOnPreventRemove.js.map +1 -1
- package/lib/module/useOnRouteFocus.js.map +1 -1
- package/lib/module/useOptionsGetters.js +7 -8
- package/lib/module/useOptionsGetters.js.map +1 -1
- package/lib/module/usePreventRemove.js +2 -2
- package/lib/module/usePreventRemove.js.map +1 -1
- package/lib/module/usePreventRemoveContext.js.map +1 -1
- package/lib/module/useRegisterNavigator.js.map +1 -1
- package/lib/module/useRoute.js.map +1 -1
- package/lib/module/useRouteCache.js +16 -12
- package/lib/module/useRouteCache.js.map +1 -1
- package/lib/module/useSyncState.js +25 -54
- package/lib/module/useSyncState.js.map +1 -1
- package/lib/module/validatePathConfig.js +37 -10
- package/lib/module/validatePathConfig.js.map +1 -1
- package/lib/typescript/src/BaseNavigationContainer.d.ts +2 -1
- package/lib/typescript/src/BaseNavigationContainer.d.ts.map +1 -1
- package/lib/typescript/src/EnsureSingleNavigator.d.ts +1 -1
- package/lib/typescript/src/EnsureSingleNavigator.d.ts.map +1 -1
- package/lib/typescript/src/NavigationContext.d.ts +1 -17
- package/lib/typescript/src/NavigationContext.d.ts.map +1 -1
- package/lib/typescript/src/NavigationHelpersContext.d.ts +1 -1
- package/lib/typescript/src/NavigationHelpersContext.d.ts.map +1 -1
- package/lib/typescript/src/NavigationIndependentTree.d.ts +1 -1
- package/lib/typescript/src/NavigationIndependentTree.d.ts.map +1 -1
- package/lib/typescript/src/NavigationRouteContext.d.ts +1 -1
- package/lib/typescript/src/NavigationRouteContext.d.ts.map +1 -1
- package/lib/typescript/src/NavigationStateContext.d.ts +2 -18
- package/lib/typescript/src/NavigationStateContext.d.ts.map +1 -1
- package/lib/typescript/src/PreventRemoveProvider.d.ts +1 -1
- package/lib/typescript/src/PreventRemoveProvider.d.ts.map +1 -1
- package/lib/typescript/src/SceneView.d.ts +2 -2
- package/lib/typescript/src/SceneView.d.ts.map +1 -1
- package/lib/typescript/src/StaticNavigation.d.ts +12 -5
- package/lib/typescript/src/StaticNavigation.d.ts.map +1 -1
- package/lib/typescript/src/createNavigatorFactory.d.ts.map +1 -1
- package/lib/typescript/src/findFocusedRoute.d.ts +1 -9
- package/lib/typescript/src/findFocusedRoute.d.ts.map +1 -1
- package/lib/typescript/src/getPathFromState.d.ts +1 -0
- package/lib/typescript/src/getPathFromState.d.ts.map +1 -1
- package/lib/typescript/src/getStateFromPath.d.ts +1 -0
- package/lib/typescript/src/getStateFromPath.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +5 -2
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/theming/ThemeContext.d.ts +3 -0
- package/lib/typescript/src/theming/ThemeContext.d.ts.map +1 -0
- package/lib/typescript/src/theming/ThemeProvider.d.ts +8 -0
- package/lib/typescript/src/theming/ThemeProvider.d.ts.map +1 -0
- package/lib/typescript/src/theming/useTheme.d.ts +2 -0
- package/lib/typescript/src/theming/useTheme.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +80 -1
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/useComponent.d.ts +1 -1
- package/lib/typescript/src/useComponent.d.ts.map +1 -1
- package/lib/typescript/src/useDescriptors.d.ts +107 -59
- package/lib/typescript/src/useDescriptors.d.ts.map +1 -1
- package/lib/typescript/src/useFocusEffect.d.ts.map +1 -1
- package/lib/typescript/src/useFocusedListenersChildrenAdapter.d.ts +1 -1
- package/lib/typescript/src/useFocusedListenersChildrenAdapter.d.ts.map +1 -1
- package/lib/typescript/src/useIsomorphicLayoutEffect.d.ts +6 -0
- package/lib/typescript/src/useIsomorphicLayoutEffect.d.ts.map +1 -0
- package/lib/typescript/src/useIsomorphicLayoutEffect.native.d.ts +3 -0
- package/lib/typescript/src/useIsomorphicLayoutEffect.native.d.ts.map +1 -0
- package/lib/typescript/src/useNavigation.d.ts +4 -1
- package/lib/typescript/src/useNavigation.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationBuilder.d.ts +99 -63
- package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationCache.d.ts +53 -3
- package/lib/typescript/src/useNavigationCache.d.ts.map +1 -1
- package/lib/typescript/src/useNavigationHelpers.d.ts +25 -55
- package/lib/typescript/src/useNavigationHelpers.d.ts.map +1 -1
- package/lib/typescript/src/useOnAction.d.ts +1 -1
- package/lib/typescript/src/useOnAction.d.ts.map +1 -1
- package/lib/typescript/src/useOnGetState.d.ts +1 -1
- package/lib/typescript/src/useOnGetState.d.ts.map +1 -1
- package/lib/typescript/src/useOnPreventRemove.d.ts +1 -1
- package/lib/typescript/src/useOnPreventRemove.d.ts.map +1 -1
- package/lib/typescript/src/usePreventRemove.d.ts +1 -1
- package/lib/typescript/src/usePreventRemove.d.ts.map +1 -1
- package/lib/typescript/src/useRouteCache.d.ts +1 -1
- package/lib/typescript/src/useRouteCache.d.ts.map +1 -1
- package/lib/typescript/src/useSyncState.d.ts +1 -4
- package/lib/typescript/src/useSyncState.d.ts.map +1 -1
- package/lib/typescript/src/validatePathConfig.d.ts +1 -1
- package/lib/typescript/src/validatePathConfig.d.ts.map +1 -1
- package/lib/typescript/utils/usePrevious.d.ts +6 -0
- package/lib/typescript/utils/usePrevious.d.ts.map +1 -0
- package/package.json +14 -14
- package/src/BaseNavigationContainer.tsx +35 -36
- package/src/Group.tsx +1 -1
- package/src/PreventRemoveProvider.tsx +4 -1
- package/src/SceneView.tsx +1 -1
- package/src/Screen.tsx +1 -1
- package/src/StaticNavigation.tsx +34 -32
- package/src/checkDuplicateRouteNames.tsx +1 -1
- package/src/createNavigationContainerRef.tsx +1 -1
- package/src/createNavigatorFactory.tsx +2 -4
- package/src/getActionFromState.tsx +1 -1
- package/src/getFocusedRouteNameFromRoute.tsx +3 -3
- package/src/getPathFromState.tsx +14 -11
- package/src/getStateFromPath.tsx +22 -3
- package/src/index.tsx +6 -3
- package/src/theming/ThemeContext.tsx +7 -0
- package/src/theming/ThemeProvider.tsx +14 -0
- package/src/theming/useTheme.tsx +15 -0
- package/src/types.tsx +133 -17
- package/src/useDescriptors.tsx +153 -59
- package/src/useFocusEffect.tsx +1 -0
- package/src/useFocusedListenersChildrenAdapter.tsx +2 -2
- package/src/useIsomorphicLayoutEffect.native.tsx +3 -0
- package/src/useIsomorphicLayoutEffect.tsx +7 -0
- package/src/useNavigation.tsx +4 -1
- package/src/useNavigationBuilder.tsx +119 -100
- package/src/useNavigationCache.tsx +91 -30
- package/src/useNavigationContainerRef.tsx +1 -1
- package/src/useNavigationHelpers.tsx +6 -7
- package/src/useOnAction.tsx +8 -3
- package/src/useOnGetState.tsx +1 -1
- package/src/useOnPreventRemove.tsx +1 -1
- package/src/useOptionsGetters.tsx +2 -2
- package/src/usePreventRemove.tsx +1 -1
- package/src/useRouteCache.tsx +17 -16
- package/src/useSyncState.tsx +31 -59
- package/src/validatePathConfig.tsx +58 -14
- package/lib/commonjs/fromEntries.js +0 -18
- package/lib/commonjs/fromEntries.js.map +0 -1
- package/lib/commonjs/useScheduleUpdate.js +0 -37
- package/lib/commonjs/useScheduleUpdate.js.map +0 -1
- package/lib/module/fromEntries.js +0 -12
- package/lib/module/fromEntries.js.map +0 -1
- package/lib/module/useScheduleUpdate.js +0 -27
- package/lib/module/useScheduleUpdate.js.map +0 -1
- package/lib/typescript/src/fromEntries.d.ts +0 -2
- package/lib/typescript/src/fromEntries.d.ts.map +0 -1
- package/lib/typescript/src/useScheduleUpdate.d.ts +0 -14
- package/lib/typescript/src/useScheduleUpdate.d.ts.map +0 -1
- package/src/fromEntries.tsx +0 -11
- package/src/useScheduleUpdate.tsx +0 -32
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { NavigationAction, NavigationState, ParamListBase, Router } from '@react-navigation/routers';
|
|
2
|
-
import { NavigationHelpers, PrivateValueStore } from './types';
|
|
1
|
+
import { type NavigationAction, type NavigationState, type ParamListBase, type Router } from '@react-navigation/routers';
|
|
2
|
+
import { type NavigationHelpers, PrivateValueStore } from './types';
|
|
3
3
|
import type { NavigationEventEmitter } from './useEventEmitter';
|
|
4
4
|
type Options<State extends NavigationState, Action extends NavigationAction> = {
|
|
5
5
|
id: string | undefined;
|
|
@@ -23,19 +23,7 @@ export declare function useNavigationHelpers<State extends NavigationState, Acti
|
|
|
23
23
|
index: number;
|
|
24
24
|
routeNames: string[];
|
|
25
25
|
history?: unknown[] | undefined;
|
|
26
|
-
|
|
27
|
-
* Navigation object with helper methods to be used by a navigator.
|
|
28
|
-
* This object includes methods for common actions as well as methods the parent screen's navigation object.
|
|
29
|
-
*/
|
|
30
|
-
routes: (Readonly<{
|
|
31
|
-
key: string;
|
|
32
|
-
name: string;
|
|
33
|
-
path?: string | undefined;
|
|
34
|
-
}> & Readonly<{
|
|
35
|
-
params?: Readonly<object | undefined>;
|
|
36
|
-
}> & {
|
|
37
|
-
state?: Readonly<any> | import("@react-navigation/routers").PartialState<Readonly<any>> | undefined;
|
|
38
|
-
})[];
|
|
26
|
+
routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
|
|
39
27
|
type: string;
|
|
40
28
|
stale: false;
|
|
41
29
|
}>>) => Readonly<{
|
|
@@ -57,24 +45,13 @@ export declare function useNavigationHelpers<State extends NavigationState, Acti
|
|
|
57
45
|
params: object | undefined;
|
|
58
46
|
merge?: boolean | undefined;
|
|
59
47
|
} : never): void;
|
|
48
|
+
preload<RouteName_4 extends string>(...args: RouteName_4 extends unknown ? [screen: RouteName_4] | [screen: RouteName_4, params: object | undefined] : never): void;
|
|
60
49
|
reset(state: Readonly<{
|
|
61
50
|
key: string;
|
|
62
51
|
index: number;
|
|
63
52
|
routeNames: string[];
|
|
64
53
|
history?: unknown[] | undefined;
|
|
65
|
-
|
|
66
|
-
* Navigation object with helper methods to be used by a navigator.
|
|
67
|
-
* This object includes methods for common actions as well as methods the parent screen's navigation object.
|
|
68
|
-
*/
|
|
69
|
-
routes: (Readonly<{
|
|
70
|
-
key: string;
|
|
71
|
-
name: string;
|
|
72
|
-
path?: string | undefined;
|
|
73
|
-
}> & Readonly<{
|
|
74
|
-
params?: Readonly<object | undefined>;
|
|
75
|
-
}> & {
|
|
76
|
-
state?: Readonly<any> | import("@react-navigation/routers").PartialState<Readonly<any>> | undefined;
|
|
77
|
-
})[];
|
|
54
|
+
routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
|
|
78
55
|
type: string;
|
|
79
56
|
stale: false;
|
|
80
57
|
}> | import("@react-navigation/routers").PartialState<Readonly<{
|
|
@@ -82,19 +59,7 @@ export declare function useNavigationHelpers<State extends NavigationState, Acti
|
|
|
82
59
|
index: number;
|
|
83
60
|
routeNames: string[];
|
|
84
61
|
history?: unknown[] | undefined;
|
|
85
|
-
|
|
86
|
-
* Navigation object with helper methods to be used by a navigator.
|
|
87
|
-
* This object includes methods for common actions as well as methods the parent screen's navigation object.
|
|
88
|
-
*/
|
|
89
|
-
routes: (Readonly<{
|
|
90
|
-
key: string;
|
|
91
|
-
name: string;
|
|
92
|
-
path?: string | undefined;
|
|
93
|
-
}> & Readonly<{
|
|
94
|
-
params?: Readonly<object | undefined>;
|
|
95
|
-
}> & {
|
|
96
|
-
state?: Readonly<any> | import("@react-navigation/routers").PartialState<Readonly<any>> | undefined;
|
|
97
|
-
})[];
|
|
62
|
+
routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
|
|
98
63
|
type: string;
|
|
99
64
|
stale: false;
|
|
100
65
|
}>>): void;
|
|
@@ -108,24 +73,29 @@ export declare function useNavigationHelpers<State extends NavigationState, Acti
|
|
|
108
73
|
index: number;
|
|
109
74
|
routeNames: string[];
|
|
110
75
|
history?: unknown[] | undefined;
|
|
111
|
-
|
|
112
|
-
* Navigation object with helper methods to be used by a navigator.
|
|
113
|
-
* This object includes methods for common actions as well as methods the parent screen's navigation object.
|
|
114
|
-
*/
|
|
115
|
-
routes: (Readonly<{
|
|
116
|
-
key: string;
|
|
117
|
-
name: string;
|
|
118
|
-
path?: string | undefined;
|
|
119
|
-
}> & Readonly<{
|
|
120
|
-
params?: Readonly<object | undefined>;
|
|
121
|
-
}> & {
|
|
122
|
-
state?: Readonly<any> | import("@react-navigation/routers").PartialState<Readonly<any>> | undefined;
|
|
123
|
-
})[];
|
|
76
|
+
routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
|
|
124
77
|
type: string;
|
|
125
78
|
stale: false;
|
|
126
79
|
}>;
|
|
80
|
+
setStateForNextRouteNamesChange(state: Readonly<{
|
|
81
|
+
key: string;
|
|
82
|
+
index: number;
|
|
83
|
+
routeNames: string[];
|
|
84
|
+
history?: unknown[] | undefined;
|
|
85
|
+
routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
|
|
86
|
+
type: string;
|
|
87
|
+
stale: false;
|
|
88
|
+
}> | import("@react-navigation/routers").PartialState<Readonly<{
|
|
89
|
+
key: string;
|
|
90
|
+
index: number;
|
|
91
|
+
routeNames: string[];
|
|
92
|
+
history?: unknown[] | undefined;
|
|
93
|
+
routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
|
|
94
|
+
type: string;
|
|
95
|
+
stale: false;
|
|
96
|
+
}>>): void;
|
|
127
97
|
} & PrivateValueStore<[ParamListBase, unknown, unknown]> & import("./types").EventEmitter<EventMap> & {
|
|
128
|
-
setParams<
|
|
98
|
+
setParams<RouteName_5 extends string>(params: Partial<object | undefined>): void;
|
|
129
99
|
} & ActionHelpers;
|
|
130
100
|
export {};
|
|
131
101
|
//# sourceMappingURL=useNavigationHelpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useNavigationHelpers.d.ts","sourceRoot":"","sources":["../../../src/useNavigationHelpers.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"useNavigationHelpers.d.ts","sourceRoot":"","sources":["../../../src/useNavigationHelpers.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,MAAM,EACZ,MAAM,2BAA2B,CAAC;AAInC,OAAO,EAAE,KAAK,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEpE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAKhE,KAAK,OAAO,CAAC,KAAK,SAAS,eAAe,EAAE,MAAM,SAAS,gBAAgB,IAAI;IAC7E,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC;IACvB,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC;IAChD,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,OAAO,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;CAC/B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,EAChD,MAAM,SAAS,gBAAgB,EAC/B,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,EACA,EAAE,EAAE,WAAW,EACf,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,GACP,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA0ExB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { NavigationAction, NavigationState, PartialState, Router, RouterConfigOptions } from '@react-navigation/routers';
|
|
2
|
-
import { ChildActionListener, ChildBeforeRemoveListener } from './NavigationBuilderContext';
|
|
2
|
+
import { type ChildActionListener, type ChildBeforeRemoveListener } from './NavigationBuilderContext';
|
|
3
3
|
import type { EventMapCore } from './types';
|
|
4
4
|
import type { NavigationEventEmitter } from './useEventEmitter';
|
|
5
5
|
type Options = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useOnAction.d.ts","sourceRoot":"","sources":["../../../src/useOnAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,MAAM,EACN,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AAInC,OAAO,EACL,mBAAmB,
|
|
1
|
+
{"version":3,"file":"useOnAction.d.ts","sourceRoot":"","sources":["../../../src/useOnAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,MAAM,EACN,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AAInC,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAE/B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAGhE,KAAK,OAAO,GAAG;IACb,MAAM,EAAE,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;IAClD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,eAAe,CAAC;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IAC3E,eAAe,EAAE,mBAAmB,EAAE,CAAC;IACvC,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,GAAG,SAAS,CAAC,CAAC;IAC7E,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,OAAO,EAAE,sBAAsB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;CACpD,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,GAAG,EACH,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,OAAO,GACR,EAAE,OAAO,YAoBI,gBAAgB,sBACL,IAAI,MAAM,CAAC,aA8GnC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { NavigationState } from '@react-navigation/routers';
|
|
2
|
-
import { GetStateListener } from './NavigationBuilderContext';
|
|
2
|
+
import { type GetStateListener } from './NavigationBuilderContext';
|
|
3
3
|
type Options = {
|
|
4
4
|
getState: () => NavigationState;
|
|
5
5
|
getStateListeners: Record<string, GetStateListener | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useOnGetState.d.ts","sourceRoot":"","sources":["../../../src/useOnGetState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAIjE,OAAO,EACL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"useOnGetState.d.ts","sourceRoot":"","sources":["../../../src/useOnGetState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAIjE,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,4BAA4B,CAAC;AAGpC,KAAK,OAAO,GAAG;IACb,QAAQ,EAAE,MAAM,eAAe,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,SAAS,CAAC,CAAC;CACjE,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,EAAE,OAAO,QA6BrE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { NavigationAction, NavigationState } from '@react-navigation/routers';
|
|
2
|
-
import { ChildBeforeRemoveListener } from './NavigationBuilderContext';
|
|
2
|
+
import { type ChildBeforeRemoveListener } from './NavigationBuilderContext';
|
|
3
3
|
import type { EventMapCore } from './types';
|
|
4
4
|
import type { NavigationEventEmitter } from './useEventEmitter';
|
|
5
5
|
type Options = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useOnPreventRemove.d.ts","sourceRoot":"","sources":["../../../src/useOnPreventRemove.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EAChB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,yBAAyB,
|
|
1
|
+
{"version":3,"file":"useOnPreventRemove.d.ts","sourceRoot":"","sources":["../../../src/useOnPreventRemove.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EAChB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,KAAK,yBAAyB,EAE/B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEhE,KAAK,OAAO,GAAG;IACb,QAAQ,EAAE,MAAM,eAAe,CAAC;IAChC,OAAO,EAAE,sBAAsB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IACnD,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,GAAG,SAAS,CAAC,CAAC;CAC9E,CAAC;AAIF,eAAO,MAAM,mBAAmB,YACrB,uBAAuB,aAAa,GAAG,CAAC,CAAC,yBAC3B,OAAO,MAAM,EAAE,yBAAyB,GAAG,SAAS,CAAC,iBAC7D;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,EAAE,cACpB;IAAE,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,EAAE,UAClC,gBAAgB,YA8CzB,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,OAAO,EACP,qBAAqB,GACtB,EAAE,OAAO,QAoBT"}
|
|
@@ -5,7 +5,7 @@ import type { NavigationAction } from '@react-navigation/routers';
|
|
|
5
5
|
* @param preventRemove Boolean indicating whether to prevent screen from being removed.
|
|
6
6
|
* @param callback Function which is executed when screen was prevented from being removed.
|
|
7
7
|
*/
|
|
8
|
-
export declare function
|
|
8
|
+
export declare function usePreventRemove(preventRemove: boolean, callback: (options: {
|
|
9
9
|
data: {
|
|
10
10
|
action: NavigationAction;
|
|
11
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePreventRemove.d.ts","sourceRoot":"","sources":["../../../src/usePreventRemove.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAUlE;;;;;GAKG;AACH,wBAAgB,
|
|
1
|
+
{"version":3,"file":"usePreventRemove.d.ts","sourceRoot":"","sources":["../../../src/usePreventRemove.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAUlE;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,aAAa,EAAE,OAAO,EACtB,QAAQ,EAAE,CAAC,OAAO,EAAE;IAAE,IAAI,EAAE;QAAE,MAAM,EAAE,gBAAgB,CAAA;KAAE,CAAA;CAAE,KAAK,IAAI,QAgCpE"}
|
|
@@ -10,5 +10,5 @@ export declare const CHILD_STATE: unique symbol;
|
|
|
10
10
|
* Hook to cache route props for each screen in the navigator.
|
|
11
11
|
* This lets add warnings and modifications to the route object but keep references between renders.
|
|
12
12
|
*/
|
|
13
|
-
export declare function useRouteCache<State extends NavigationState>(routes: State['routes']): RouteProp<ParamListBase
|
|
13
|
+
export declare function useRouteCache<State extends NavigationState>(routes: State['routes']): RouteProp<ParamListBase>[];
|
|
14
14
|
//# sourceMappingURL=useRouteCache.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRouteCache.d.ts","sourceRoot":"","sources":["../../../src/useRouteCache.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"useRouteCache.d.ts","sourceRoot":"","sources":["../../../src/useRouteCache.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAIhF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAIzC;;;;GAIG;AACH,eAAO,MAAM,WAAW,eAAwB,CAAC;AAEjD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,SAAS,eAAe,EACzD,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,8BAmCxB"}
|
|
@@ -1,5 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
* This is definitely not compatible with concurrent mode, but we don't have a solution for sync state yet.
|
|
3
|
-
*/
|
|
4
|
-
export declare function useSyncState<T>(initialState?: (() => T) | T): readonly [T, () => T, (state: T) => void, (callback: () => void) => void, () => void];
|
|
1
|
+
export declare function useSyncState<T>(getInitialState: () => T): readonly [T, () => T, (newState: T) => void];
|
|
5
2
|
//# sourceMappingURL=useSyncState.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSyncState.d.ts","sourceRoot":"","sources":["../../../src/useSyncState.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useSyncState.d.ts","sourceRoot":"","sources":["../../../src/useSyncState.tsx"],"names":[],"mappings":"AAiCA,wBAAgB,YAAY,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,gDAYvD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function validatePathConfig(config:
|
|
1
|
+
export declare function validatePathConfig(config: unknown, root?: boolean): void;
|
|
2
2
|
//# sourceMappingURL=validatePathConfig.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validatePathConfig.d.ts","sourceRoot":"","sources":["../../../src/validatePathConfig.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"validatePathConfig.d.ts","sourceRoot":"","sources":["../../../src/validatePathConfig.tsx"],"names":[],"mappings":"AAKA,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,UAAO,QAsE9D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePrevious.d.ts","sourceRoot":"","sources":["../../../utils/usePrevious.tsx"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS,CAMtD"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-navigation/core",
|
|
3
3
|
"description": "Core utilities for building navigators",
|
|
4
|
-
"version": "7.0.0-alpha.
|
|
4
|
+
"version": "7.0.0-alpha.10",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
7
7
|
"react-native",
|
|
@@ -35,23 +35,23 @@
|
|
|
35
35
|
"clean": "del lib"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@react-navigation/routers": "^7.0.0-alpha.
|
|
38
|
+
"@react-navigation/routers": "^7.0.0-alpha.6",
|
|
39
39
|
"escape-string-regexp": "^4.0.0",
|
|
40
|
-
"nanoid": "
|
|
40
|
+
"nanoid": "3.3.7",
|
|
41
41
|
"query-string": "^7.1.3",
|
|
42
42
|
"react-is": "^18.2.0",
|
|
43
|
-
"use-latest-callback": "^0.1.
|
|
43
|
+
"use-latest-callback": "^0.1.9"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@testing-library/react-native": "^
|
|
47
|
-
"@types/react": "~18.
|
|
48
|
-
"@types/react-is": "^
|
|
49
|
-
"del-cli": "^5.
|
|
50
|
-
"immer": "^
|
|
51
|
-
"react": "18.
|
|
52
|
-
"react-native-builder-bob": "^0.
|
|
53
|
-
"react-test-renderer": "18.
|
|
54
|
-
"typescript": "^
|
|
46
|
+
"@testing-library/react-native": "^12.4.3",
|
|
47
|
+
"@types/react": "~18.2.45",
|
|
48
|
+
"@types/react-is": "^18.2.3",
|
|
49
|
+
"del-cli": "^5.1.0",
|
|
50
|
+
"immer": "^10.0.3",
|
|
51
|
+
"react": "18.2.0",
|
|
52
|
+
"react-native-builder-bob": "^0.23.2",
|
|
53
|
+
"react-test-renderer": "18.2.0",
|
|
54
|
+
"typescript": "^5.3.3"
|
|
55
55
|
},
|
|
56
56
|
"peerDependencies": {
|
|
57
57
|
"react": "*"
|
|
@@ -70,5 +70,5 @@
|
|
|
70
70
|
]
|
|
71
71
|
]
|
|
72
72
|
},
|
|
73
|
-
"gitHead": "
|
|
73
|
+
"gitHead": "b407411496a2eaeeeb29b563d66294e79ae31311"
|
|
74
74
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CommonActions,
|
|
3
|
-
InitialState,
|
|
4
|
-
NavigationAction,
|
|
5
|
-
NavigationState,
|
|
6
|
-
ParamListBase,
|
|
7
|
-
PartialState,
|
|
8
|
-
Route,
|
|
3
|
+
type InitialState,
|
|
4
|
+
type NavigationAction,
|
|
5
|
+
type NavigationState,
|
|
6
|
+
type ParamListBase,
|
|
7
|
+
type PartialState,
|
|
8
|
+
type Route,
|
|
9
9
|
} from '@react-navigation/routers';
|
|
10
10
|
import * as React from 'react';
|
|
11
11
|
import useLatestCallback from 'use-latest-callback';
|
|
@@ -20,6 +20,7 @@ import { NavigationBuilderContext } from './NavigationBuilderContext';
|
|
|
20
20
|
import { NavigationContainerRefContext } from './NavigationContainerRefContext';
|
|
21
21
|
import { NavigationIndependentTreeContext } from './NavigationIndependentTreeContext';
|
|
22
22
|
import { NavigationStateContext } from './NavigationStateContext';
|
|
23
|
+
import { ThemeProvider } from './theming/ThemeProvider';
|
|
23
24
|
import type {
|
|
24
25
|
NavigationContainerEventMap,
|
|
25
26
|
NavigationContainerProps,
|
|
@@ -31,7 +32,6 @@ import { useEventEmitter } from './useEventEmitter';
|
|
|
31
32
|
import { useKeyedChildListeners } from './useKeyedChildListeners';
|
|
32
33
|
import { useNavigationIndependentTree } from './useNavigationIndependentTree';
|
|
33
34
|
import { useOptionsGetters } from './useOptionsGetters';
|
|
34
|
-
import { ScheduleUpdateContext } from './useScheduleUpdate';
|
|
35
35
|
import { useSyncState } from './useSyncState';
|
|
36
36
|
|
|
37
37
|
type State = NavigationState | PartialState<NavigationState> | undefined;
|
|
@@ -77,6 +77,7 @@ const getPartialState = (
|
|
|
77
77
|
* @param props.onReady Callback which is called after the navigation tree mounts.
|
|
78
78
|
* @param props.onStateChange Callback which is called with the latest navigation state when it changes.
|
|
79
79
|
* @param props.onUnhandledAction Callback which is called when an action is not handled.
|
|
80
|
+
* @param props.theme Theme object for the UI elements.
|
|
80
81
|
* @param props.children Child elements to render the content.
|
|
81
82
|
* @param props.ref Ref object which refers to the navigation object containing helper methods.
|
|
82
83
|
*/
|
|
@@ -88,6 +89,7 @@ export const BaseNavigationContainer = React.forwardRef(
|
|
|
88
89
|
onReady,
|
|
89
90
|
onUnhandledAction,
|
|
90
91
|
navigationInChildEnabled = false,
|
|
92
|
+
theme,
|
|
91
93
|
children,
|
|
92
94
|
}: NavigationContainerProps,
|
|
93
95
|
ref?: React.Ref<NavigationContainerRef<ParamListBase>>
|
|
@@ -101,10 +103,9 @@ export const BaseNavigationContainer = React.forwardRef(
|
|
|
101
103
|
);
|
|
102
104
|
}
|
|
103
105
|
|
|
104
|
-
const [state, getState, setState
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
);
|
|
106
|
+
const [state, getState, setState] = useSyncState<State>(() =>
|
|
107
|
+
getPartialState(initialState == null ? undefined : initialState)
|
|
108
|
+
);
|
|
108
109
|
|
|
109
110
|
const isFirstMountRef = React.useRef<boolean>(true);
|
|
110
111
|
|
|
@@ -203,11 +204,14 @@ export const BaseNavigationContainer = React.forwardRef(
|
|
|
203
204
|
isFocused: () => true,
|
|
204
205
|
canGoBack,
|
|
205
206
|
getParent: () => undefined,
|
|
206
|
-
getState
|
|
207
|
+
getState,
|
|
207
208
|
getRootState,
|
|
208
209
|
getCurrentRoute,
|
|
209
210
|
getCurrentOptions,
|
|
210
211
|
isReady,
|
|
212
|
+
setOptions: () => {
|
|
213
|
+
throw new Error('Cannot call setOptions outside a screen');
|
|
214
|
+
},
|
|
211
215
|
}),
|
|
212
216
|
[
|
|
213
217
|
canGoBack,
|
|
@@ -216,6 +220,7 @@ export const BaseNavigationContainer = React.forwardRef(
|
|
|
216
220
|
getCurrentOptions,
|
|
217
221
|
getCurrentRoute,
|
|
218
222
|
getRootState,
|
|
223
|
+
getState,
|
|
219
224
|
isReady,
|
|
220
225
|
resetRoot,
|
|
221
226
|
]
|
|
@@ -260,11 +265,6 @@ export const BaseNavigationContainer = React.forwardRef(
|
|
|
260
265
|
[addListener, addKeyedListener, onDispatchAction, onOptionsChange]
|
|
261
266
|
);
|
|
262
267
|
|
|
263
|
-
const scheduleContext = React.useMemo(
|
|
264
|
-
() => ({ scheduleUpdate, flushUpdates }),
|
|
265
|
-
[scheduleUpdate, flushUpdates]
|
|
266
|
-
);
|
|
267
|
-
|
|
268
268
|
const isInitialRef = React.useRef(true);
|
|
269
269
|
|
|
270
270
|
const getIsInitial = React.useCallback(() => isInitialRef.current, []);
|
|
@@ -292,22 +292,21 @@ export const BaseNavigationContainer = React.forwardRef(
|
|
|
292
292
|
|
|
293
293
|
const onReadyRef = React.useRef(onReady);
|
|
294
294
|
const onStateChangeRef = React.useRef(onStateChange);
|
|
295
|
-
const stateRef = React.useRef(state);
|
|
296
295
|
|
|
297
296
|
React.useEffect(() => {
|
|
298
297
|
isInitialRef.current = false;
|
|
299
298
|
onStateChangeRef.current = onStateChange;
|
|
300
299
|
onReadyRef.current = onReady;
|
|
301
|
-
stateRef.current = state;
|
|
302
300
|
});
|
|
303
301
|
|
|
304
|
-
const
|
|
302
|
+
const onReadyCalledRef = React.useRef(false);
|
|
305
303
|
|
|
306
304
|
React.useEffect(() => {
|
|
307
|
-
if (
|
|
305
|
+
if (!onReadyCalledRef.current && isReady()) {
|
|
306
|
+
onReadyCalledRef.current = true;
|
|
308
307
|
onReadyRef.current?.();
|
|
309
308
|
}
|
|
310
|
-
}, [
|
|
309
|
+
}, [state, isReady]);
|
|
311
310
|
|
|
312
311
|
React.useEffect(() => {
|
|
313
312
|
const hydratedState = getRootState();
|
|
@@ -433,21 +432,21 @@ export const BaseNavigationContainer = React.forwardRef(
|
|
|
433
432
|
return (
|
|
434
433
|
<NavigationIndependentTreeContext.Provider value={false}>
|
|
435
434
|
<NavigationContainerRefContext.Provider value={navigation}>
|
|
436
|
-
<
|
|
437
|
-
<
|
|
438
|
-
<
|
|
439
|
-
|
|
440
|
-
|
|
435
|
+
<NavigationBuilderContext.Provider value={builderContext}>
|
|
436
|
+
<NavigationStateContext.Provider value={context}>
|
|
437
|
+
<UnhandledActionContext.Provider
|
|
438
|
+
value={onUnhandledAction ?? defaultOnUnhandledAction}
|
|
439
|
+
>
|
|
440
|
+
<DeprecatedNavigationInChildContext.Provider
|
|
441
|
+
value={navigationInChildEnabled}
|
|
441
442
|
>
|
|
442
|
-
<
|
|
443
|
-
value={
|
|
444
|
-
>
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
</NavigationBuilderContext.Provider>
|
|
450
|
-
</ScheduleUpdateContext.Provider>
|
|
443
|
+
<EnsureSingleNavigator>
|
|
444
|
+
<ThemeProvider value={theme}>{children}</ThemeProvider>
|
|
445
|
+
</EnsureSingleNavigator>
|
|
446
|
+
</DeprecatedNavigationInChildContext.Provider>
|
|
447
|
+
</UnhandledActionContext.Provider>
|
|
448
|
+
</NavigationStateContext.Provider>
|
|
449
|
+
</NavigationBuilderContext.Provider>
|
|
451
450
|
</NavigationContainerRefContext.Provider>
|
|
452
451
|
</NavigationIndependentTreeContext.Provider>
|
|
453
452
|
);
|
package/src/Group.tsx
CHANGED
|
@@ -7,7 +7,7 @@ import type { RouteGroupConfig } from './types';
|
|
|
7
7
|
*/
|
|
8
8
|
export function Group<
|
|
9
9
|
ParamList extends ParamListBase,
|
|
10
|
-
ScreenOptions extends {}
|
|
10
|
+
ScreenOptions extends {},
|
|
11
11
|
>(_: RouteGroupConfig<ParamList, ScreenOptions>) {
|
|
12
12
|
/* istanbul ignore next */
|
|
13
13
|
return null;
|
|
@@ -4,7 +4,10 @@ import useLatestCallback from 'use-latest-callback';
|
|
|
4
4
|
|
|
5
5
|
import { NavigationHelpersContext } from './NavigationHelpersContext';
|
|
6
6
|
import { NavigationRouteContext } from './NavigationRouteContext';
|
|
7
|
-
import {
|
|
7
|
+
import {
|
|
8
|
+
type PreventedRoutes,
|
|
9
|
+
PreventRemoveContext,
|
|
10
|
+
} from './PreventRemoveContext';
|
|
8
11
|
|
|
9
12
|
type Props = {
|
|
10
13
|
children: React.ReactNode;
|
package/src/SceneView.tsx
CHANGED
package/src/Screen.tsx
CHANGED
|
@@ -10,7 +10,7 @@ export function Screen<
|
|
|
10
10
|
RouteName extends keyof ParamList,
|
|
11
11
|
State extends NavigationState,
|
|
12
12
|
ScreenOptions extends {},
|
|
13
|
-
EventMap extends EventMapBase
|
|
13
|
+
EventMap extends EventMapBase,
|
|
14
14
|
>(_: RouteConfig<ParamList, RouteName, State, ScreenOptions, EventMap>) {
|
|
15
15
|
/* istanbul ignore next */
|
|
16
16
|
return null;
|