expo-router 56.2.12 → 56.2.13

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 (39) hide show
  1. package/android/build.gradle +2 -2
  2. package/build/react-navigation/native-stack/views/NativeStackView.native.d.ts.map +1 -1
  3. package/build/react-navigation/native-stack/views/NativeStackView.native.js +2 -1
  4. package/build/react-navigation/native-stack/views/NativeStackView.native.js.map +1 -1
  5. package/expo-module.config.json +1 -1
  6. package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12.module → 56.2.13/expo.modules.router-56.2.13.module} +7 -7
  7. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.13/expo.modules.router-56.2.13.module.md5 +1 -0
  8. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.13/expo.modules.router-56.2.13.module.sha1 +1 -0
  9. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.13/expo.modules.router-56.2.13.module.sha256 +1 -0
  10. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.13/expo.modules.router-56.2.13.module.sha512 +1 -0
  11. package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12.pom → 56.2.13/expo.modules.router-56.2.13.pom} +1 -1
  12. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.13/expo.modules.router-56.2.13.pom.md5 +1 -0
  13. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.13/expo.modules.router-56.2.13.pom.sha1 +1 -0
  14. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.13/expo.modules.router-56.2.13.pom.sha256 +1 -0
  15. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.13/expo.modules.router-56.2.13.pom.sha512 +1 -0
  16. package/local-maven-repo/expo/modules/router/expo.modules.router/maven-metadata.xml +4 -4
  17. package/local-maven-repo/expo/modules/router/expo.modules.router/maven-metadata.xml.md5 +1 -1
  18. package/local-maven-repo/expo/modules/router/expo.modules.router/maven-metadata.xml.sha1 +1 -1
  19. package/local-maven-repo/expo/modules/router/expo.modules.router/maven-metadata.xml.sha256 +1 -1
  20. package/local-maven-repo/expo/modules/router/expo.modules.router/maven-metadata.xml.sha512 +1 -1
  21. package/package.json +7 -7
  22. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.12/expo.modules.router-56.2.12.module.md5 +0 -1
  23. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.12/expo.modules.router-56.2.12.module.sha1 +0 -1
  24. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.12/expo.modules.router-56.2.12.module.sha256 +0 -1
  25. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.12/expo.modules.router-56.2.12.module.sha512 +0 -1
  26. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.12/expo.modules.router-56.2.12.pom.md5 +0 -1
  27. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.12/expo.modules.router-56.2.12.pom.sha1 +0 -1
  28. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.12/expo.modules.router-56.2.12.pom.sha256 +0 -1
  29. package/local-maven-repo/expo/modules/router/expo.modules.router/56.2.12/expo.modules.router-56.2.12.pom.sha512 +0 -1
  30. /package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12-sources.jar → 56.2.13/expo.modules.router-56.2.13-sources.jar} +0 -0
  31. /package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12-sources.jar.md5 → 56.2.13/expo.modules.router-56.2.13-sources.jar.md5} +0 -0
  32. /package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12-sources.jar.sha1 → 56.2.13/expo.modules.router-56.2.13-sources.jar.sha1} +0 -0
  33. /package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12-sources.jar.sha256 → 56.2.13/expo.modules.router-56.2.13-sources.jar.sha256} +0 -0
  34. /package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12-sources.jar.sha512 → 56.2.13/expo.modules.router-56.2.13-sources.jar.sha512} +0 -0
  35. /package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12.aar → 56.2.13/expo.modules.router-56.2.13.aar} +0 -0
  36. /package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12.aar.md5 → 56.2.13/expo.modules.router-56.2.13.aar.md5} +0 -0
  37. /package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12.aar.sha1 → 56.2.13/expo.modules.router-56.2.13.aar.sha1} +0 -0
  38. /package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12.aar.sha256 → 56.2.13/expo.modules.router-56.2.13.aar.sha256} +0 -0
  39. /package/local-maven-repo/expo/modules/router/expo.modules.router/{56.2.12/expo.modules.router-56.2.12.aar.sha512 → 56.2.13/expo.modules.router-56.2.13.aar.sha512} +0 -0
@@ -4,13 +4,13 @@ plugins {
4
4
  }
5
5
 
6
6
  group = 'expo.modules.router'
7
- version = '56.2.12'
7
+ version = '56.2.13'
8
8
 
9
9
  android {
10
10
  namespace "expo.modules.router"
11
11
  defaultConfig {
12
12
  versionCode 1
13
- versionName "56.2.12"
13
+ versionName "56.2.13"
14
14
  }
15
15
  lintOptions {
16
16
  abortOnError false
@@ -1 +1 @@
1
- {"version":3,"file":"NativeStackView.native.d.ts","sourceRoot":"","sources":["../../../../src/react-navigation/native-stack/views/NativeStackView.native.tsx"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,qBAAqB,EACrB,wBAAwB,EACxB,4BAA4B,EAC7B,MAAM,UAAU,CAAC;AAElB,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,SAAS,EAEd,KAAK,oBAAoB,EAG1B,MAAM,cAAc,CAAC;AAgatB,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,UAAU,EAAE,4BAA4B,CAAC;IACzC,WAAW,EAAE,wBAAwB,CAAC;IACtC,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,EAAE,WAAW,EAAE,OAAO,KAAK,qBAAqB,CAAC;CAC5F,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,KAAK,2CA2HlF"}
1
+ {"version":3,"file":"NativeStackView.native.d.ts","sourceRoot":"","sources":["../../../../src/react-navigation/native-stack/views/NativeStackView.native.tsx"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,qBAAqB,EACrB,wBAAwB,EACxB,4BAA4B,EAC7B,MAAM,UAAU,CAAC;AAElB,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,SAAS,EAEd,KAAK,oBAAoB,EAG1B,MAAM,cAAc,CAAC;AAgatB,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,UAAU,EAAE,4BAA4B,CAAC;IACzC,WAAW,EAAE,wBAAwB,CAAC;IACtC,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,EAAE,WAAW,EAAE,OAAO,KAAK,qBAAqB,CAAC;CAC5F,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,KAAK,2CA8HlF"}
@@ -240,6 +240,7 @@ const SceneView = ({ index, focused, shouldFreeze, descriptor, previousDescripto
240
240
  }) })) : null, (0, jsx_runtime_1.jsx)(elements_1.HeaderShownContext.Provider, { value: isParentHeaderShown || headerShown !== false, children: (0, jsx_runtime_1.jsx)(elements_1.HeaderBackContext.Provider, { value: headerBack, children: render() }) })] }) }) }) }));
241
241
  };
242
242
  function NativeStackView({ state, navigation, descriptors, describe }) {
243
+ const { colors } = (0, native_1.useTheme)();
243
244
  const { setNextDismissedKey } = (0, useDismissedRouteError_1.useDismissedRouteError)(state);
244
245
  (0, useInvalidPreventRemoveError_1.useInvalidPreventRemoveError)(descriptors);
245
246
  const modalRouteKeys = (0, getModalRoutesKeys_1.getModalRouteKeys)(state.routes, descriptors);
@@ -247,7 +248,7 @@ function NativeStackView({ state, navigation, descriptors, describe }) {
247
248
  acc[route.key] = acc[route.key] || describe(route, true);
248
249
  return acc;
249
250
  }, {});
250
- return ((0, jsx_runtime_1.jsx)(elements_1.SafeAreaProviderCompat, { children: (0, jsx_runtime_1.jsx)(react_native_screens_1.ScreenStack, { style: styles.container, children: state.routes.concat(state.preloadedRoutes).map((route, index) => {
251
+ return ((0, jsx_runtime_1.jsx)(elements_1.SafeAreaProviderCompat, { children: (0, jsx_runtime_1.jsx)(react_native_screens_1.ScreenStack, { nativeContainerStyle: { backgroundColor: colors.background }, style: styles.container, children: state.routes.concat(state.preloadedRoutes).map((route, index) => {
251
252
  const descriptor = (descriptors[route.key] ?? preloadedDescriptors[route.key]);
252
253
  const isFocused = state.index === index;
253
254
  const isBelowFocused = state.index - 1 === index;
@@ -1 +1 @@
1
- {"version":3,"file":"NativeStackView.native.js","sourceRoot":"","sources":["../../../../src/react-navigation/native-stack/views/NativeStackView.native.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client';\nimport * as React from 'react';\nimport { use } from 'react';\nimport { Animated, Platform, StatusBar, StyleSheet, useAnimatedValue, View } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\nimport {\n compatibilityFlags,\n type ScreenProps,\n ScreenStack,\n ScreenStackItem,\n} from 'react-native-screens';\n\nimport {\n getDefaultHeaderHeight,\n getHeaderTitle,\n HeaderBackContext,\n HeaderHeightContext,\n HeaderShownContext,\n SafeAreaProviderCompat,\n useFrameSize,\n} from '../../elements';\nimport type {\n NativeStackDescriptor,\n NativeStackDescriptorMap,\n NativeStackNavigationHelpers,\n} from '../types';\nimport { useHeaderConfigProps } from './useHeaderConfigProps';\nimport {\n NavigationProvider,\n type ParamListBase,\n type RouteProp,\n StackActions,\n type StackNavigationState,\n usePreventRemoveContext,\n useTheme,\n} from '../../native';\nimport { debounce } from '../utils/debounce';\nimport { getModalRouteKeys } from '../utils/getModalRoutesKeys';\nimport { AnimatedHeaderHeightContext } from '../utils/useAnimatedHeaderHeight';\nimport { useDismissedRouteError } from '../utils/useDismissedRouteError';\nimport { useInvalidPreventRemoveError } from '../utils/useInvalidPreventRemoveError';\n\nconst ANDROID_DEFAULT_HEADER_HEIGHT = 56;\n\nfunction isFabric() {\n return 'nativeFabricUIManager' in global;\n}\n\ntype SceneViewProps = {\n index: number;\n focused: boolean;\n shouldFreeze: boolean;\n descriptor: NativeStackDescriptor;\n previousDescriptor?: NativeStackDescriptor;\n nextDescriptor?: NativeStackDescriptor;\n isPresentationModal?: boolean;\n isPreloaded?: boolean;\n onWillDisappear: () => void;\n onWillAppear: () => void;\n onAppear: () => void;\n onDisappear: () => void;\n onDismissed: ScreenProps['onDismissed'];\n onHeaderBackButtonClicked: ScreenProps['onHeaderBackButtonClicked'];\n onNativeDismissCancelled: ScreenProps['onDismissed'];\n onGestureCancel: ScreenProps['onGestureCancel'];\n onSheetDetentChanged: ScreenProps['onSheetDetentChanged'];\n};\n\nconst useNativeDriver = Platform.OS !== 'web';\n\nconst SceneView = ({\n index,\n focused,\n shouldFreeze,\n descriptor,\n previousDescriptor,\n nextDescriptor,\n isPresentationModal,\n isPreloaded,\n onWillDisappear,\n onWillAppear,\n onAppear,\n onDisappear,\n onDismissed,\n onHeaderBackButtonClicked,\n onNativeDismissCancelled,\n onGestureCancel,\n onSheetDetentChanged,\n}: SceneViewProps) => {\n const { route, navigation, options, render } = descriptor;\n\n let {\n animation,\n animationMatchesGesture,\n presentation = isPresentationModal ? 'modal' : 'card',\n fullScreenGestureEnabled,\n } = options;\n\n const {\n animationDuration,\n animationTypeForReplace = 'push',\n fullScreenGestureShadowEnabled = true,\n gestureEnabled,\n gestureDirection = presentation === 'card' ? 'horizontal' : 'vertical',\n gestureResponseDistance,\n header,\n headerBackButtonMenuEnabled,\n headerShown,\n headerBackground,\n headerTransparent,\n autoHideHomeIndicator,\n keyboardHandlingEnabled,\n navigationBarColor,\n navigationBarTranslucent,\n navigationBarHidden,\n orientation,\n sheetAllowedDetents = [1.0],\n sheetLargestUndimmedDetentIndex = -1,\n sheetGrabberVisible = false,\n sheetCornerRadius = -1.0,\n sheetElevation = 24,\n sheetExpandsWhenScrolledToEdge = true,\n sheetInitialDetentIndex = 0,\n sheetShouldOverflowTopInset = false,\n sheetResizeAnimationEnabled = true,\n statusBarAnimation,\n statusBarHidden,\n statusBarStyle,\n statusBarTranslucent,\n statusBarBackgroundColor,\n unstable_sheetFooter,\n scrollEdgeEffects,\n freezeOnBlur,\n contentStyle,\n } = options;\n\n if (gestureDirection === 'vertical' && Platform.OS === 'ios') {\n // for `vertical` direction to work, we need to set `fullScreenGestureEnabled` to `true`\n // so the screen can be dismissed from any point on screen.\n // `animationMatchesGesture` needs to be set to `true` so the `animation` set by user can be used,\n // otherwise `simple_push` will be used.\n // Also, the default animation for this direction seems to be `slide_from_bottom`.\n if (fullScreenGestureEnabled === undefined) {\n fullScreenGestureEnabled = true;\n }\n\n if (animationMatchesGesture === undefined) {\n animationMatchesGesture = true;\n }\n\n if (animation === undefined) {\n animation = 'slide_from_bottom';\n }\n }\n\n // workaround for rn-screens where gestureDirection has to be set on both\n // current and previous screen - software-mansion/react-native-screens/pull/1509\n const nextGestureDirection = nextDescriptor?.options.gestureDirection;\n const gestureDirectionOverride =\n nextGestureDirection != null ? nextGestureDirection : gestureDirection;\n\n if (index === 0) {\n // first screen should always be treated as `card`, it resolves problems with no header animation\n // for navigator with first screen as `modal` and the next as `card`\n presentation = 'card';\n }\n\n const { colors } = useTheme();\n const insets = useSafeAreaInsets();\n\n // `modal`, `formSheet` and `pageSheet` presentations do not take whole screen, so should not take the inset.\n const isModal =\n presentation === 'modal' || presentation === 'formSheet' || presentation === 'pageSheet';\n\n // Modals are fullscreen in landscape only on iPhone\n const isIPhone = Platform.OS === 'ios' && !(Platform.isPad || Platform.isTV);\n\n const isParentHeaderShown = use(HeaderShownContext);\n const parentHeaderHeight = use(HeaderHeightContext);\n const parentHeaderBack = use(HeaderBackContext);\n\n const isLandscape = useFrameSize((frame) => frame.width > frame.height);\n\n const topInset =\n isParentHeaderShown || (Platform.OS === 'ios' && isModal) || (isIPhone && isLandscape)\n ? 0\n : insets.top;\n\n const defaultHeaderHeight = useFrameSize((frame) =>\n Platform.select({\n // FIXME: Currently screens isn't using Material 3\n // So our `getDefaultHeaderHeight` doesn't return the correct value\n // So we hardcode the value here for now until screens is updated\n android: ANDROID_DEFAULT_HEADER_HEIGHT + topInset,\n default: getDefaultHeaderHeight(frame, isModal, topInset),\n })\n );\n\n const { preventedRoutes } = usePreventRemoveContext();\n\n const [headerHeight, setHeaderHeight] = React.useState(defaultHeaderHeight);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const setHeaderHeightDebounced = React.useCallback(\n // Debounce the header height updates to avoid excessive re-renders\n debounce(setHeaderHeight, 100),\n []\n );\n\n const hasCustomHeader = header != null;\n\n const usesNewAndroidHeaderHeightImplementation =\n 'usesNewAndroidHeaderHeightImplementation' in compatibilityFlags &&\n compatibilityFlags['usesNewAndroidHeaderHeightImplementation'] === true;\n\n let headerHeightCorrectionOffset = 0;\n\n if (Platform.OS === 'android' && !hasCustomHeader && !usesNewAndroidHeaderHeightImplementation) {\n const statusBarHeight = StatusBar.currentHeight ?? 0;\n\n // On Android, the native header height is not correctly calculated\n // It includes status bar height even if statusbar is not translucent\n // And the statusbar value itself doesn't match the actual status bar height\n // So we subtract the bogus status bar height and add the actual top inset\n headerHeightCorrectionOffset = -statusBarHeight + topInset;\n }\n\n const rawAnimatedHeaderHeight = useAnimatedValue(defaultHeaderHeight);\n const animatedHeaderHeight = React.useMemo(\n () => Animated.add<number>(rawAnimatedHeaderHeight, headerHeightCorrectionOffset),\n [headerHeightCorrectionOffset, rawAnimatedHeaderHeight]\n );\n\n // During the very first render topInset is > 0 when running\n // in non edge-to-edge mode on Android, while on every consecutive render\n // topInset === 0, causing header content to jump, as we add padding on the first frame,\n // just to remove it in next one. To prevent this, when statusBarTranslucent is set,\n // we apply additional padding in header only if its true.\n // For more details see: https://github.com/react-navigation/react-navigation/pull/12014\n const headerTopInsetEnabled =\n typeof statusBarTranslucent === 'boolean' ? statusBarTranslucent : topInset !== 0;\n\n const canGoBack = previousDescriptor != null || parentHeaderBack != null;\n const backTitle = previousDescriptor\n ? getHeaderTitle(previousDescriptor.options, previousDescriptor.route.name)\n : parentHeaderBack?.title;\n\n const headerBack = React.useMemo(() => {\n if (canGoBack) {\n return {\n href: undefined, // No href needed for native\n title: backTitle,\n };\n }\n\n return undefined;\n }, [canGoBack, backTitle]);\n\n const isRemovePrevented = preventedRoutes[route.key]?.preventRemove;\n\n const headerConfig = useHeaderConfigProps({\n ...options,\n route,\n headerBackButtonMenuEnabled:\n isRemovePrevented !== undefined ? !isRemovePrevented : headerBackButtonMenuEnabled,\n headerBackTitle: options.headerBackTitle !== undefined ? options.headerBackTitle : undefined,\n headerHeight,\n headerShown: header !== undefined ? false : headerShown,\n headerTopInsetEnabled,\n headerTransparent,\n headerBack,\n });\n\n const onHeaderHeightChange = hasCustomHeader\n ? // If we have a custom header, don't use native header height\n undefined\n : // On Fabric, there's a bug where native event drivers for Animated objects\n // are created after the first notifications about the header height\n // from the native side, `onHeaderHeightChange` event does not notify\n // `animatedHeaderHeight` about initial values on appearing screens at the moment.\n Animated.event(\n [\n {\n nativeEvent: {\n headerHeight: rawAnimatedHeaderHeight,\n },\n },\n ],\n {\n useNativeDriver,\n listener: (e) => {\n if (\n e.nativeEvent &&\n typeof e.nativeEvent === 'object' &&\n 'headerHeight' in e.nativeEvent &&\n typeof e.nativeEvent.headerHeight === 'number'\n ) {\n const headerHeight = e.nativeEvent.headerHeight;\n\n // Only debounce if header has large title or search bar\n // As it's the only case where the header height can change frequently\n const doesHeaderAnimate =\n Platform.OS === 'ios' &&\n (options.headerLargeTitleEnabled || options.headerSearchBarOptions);\n\n if (doesHeaderAnimate) {\n setHeaderHeightDebounced(headerHeight);\n } else {\n if (\n Platform.OS === 'android' &&\n headerHeight !== 0 &&\n // On some devices, height maybe slightly off (e.g. 56.17 instead of 56)\n Math.round(headerHeight) <= ANDROID_DEFAULT_HEADER_HEIGHT\n ) {\n // FIXME: On Android, events may get delivered out-of-order\n // https://github.com/facebook/react-native/issues/54636\n // We seem to get header height without status bar height first,\n // and then the correct height with status bar height included\n // But due to out-of-order delivery, we may get the correct height first\n // and then the one without status bar height\n // This is hack to include status bar height if it's not already included\n // It only works because header height doesn't change dynamically on Android\n setHeaderHeight(headerHeight + insets.top);\n } else {\n setHeaderHeight(headerHeight);\n }\n }\n }\n },\n }\n );\n\n return (\n <NavigationProvider route={route} navigation={navigation}>\n <ScreenStackItem\n screenId={route.key}\n activityState={isPreloaded ? 0 : 2}\n style={StyleSheet.absoluteFill}\n aria-hidden={!focused}\n customAnimationOnSwipe={animationMatchesGesture}\n fullScreenSwipeEnabled={fullScreenGestureEnabled}\n fullScreenSwipeShadowEnabled={fullScreenGestureShadowEnabled}\n freezeOnBlur={freezeOnBlur}\n gestureEnabled={\n Platform.OS === 'android'\n ? // This prop enables handling of system back gestures on Android\n // Since we handle them in JS side, we disable this\n false\n : gestureEnabled\n }\n homeIndicatorHidden={autoHideHomeIndicator}\n hideKeyboardOnSwipe={keyboardHandlingEnabled}\n navigationBarColor={navigationBarColor}\n navigationBarTranslucent={navigationBarTranslucent}\n navigationBarHidden={navigationBarHidden}\n replaceAnimation={animationTypeForReplace}\n stackPresentation={presentation === 'card' ? 'push' : presentation}\n stackAnimation={animation}\n screenOrientation={orientation}\n sheetAllowedDetents={sheetAllowedDetents}\n sheetLargestUndimmedDetentIndex={sheetLargestUndimmedDetentIndex}\n sheetGrabberVisible={sheetGrabberVisible}\n sheetInitialDetentIndex={sheetInitialDetentIndex}\n sheetCornerRadius={sheetCornerRadius}\n sheetElevation={sheetElevation}\n sheetExpandsWhenScrolledToEdge={sheetExpandsWhenScrolledToEdge}\n sheetShouldOverflowTopInset={sheetShouldOverflowTopInset}\n sheetDefaultResizeAnimationEnabled={sheetResizeAnimationEnabled}\n statusBarAnimation={statusBarAnimation}\n statusBarHidden={statusBarHidden}\n statusBarStyle={statusBarStyle}\n statusBarColor={statusBarBackgroundColor}\n statusBarTranslucent={statusBarTranslucent}\n swipeDirection={gestureDirectionOverride}\n transitionDuration={animationDuration}\n onWillAppear={onWillAppear}\n onWillDisappear={onWillDisappear}\n onAppear={onAppear}\n onDisappear={onDisappear}\n onDismissed={onDismissed}\n onGestureCancel={onGestureCancel}\n onSheetDetentChanged={onSheetDetentChanged}\n gestureResponseDistance={gestureResponseDistance}\n nativeBackButtonDismissalEnabled={false} // on Android\n onHeaderBackButtonClicked={onHeaderBackButtonClicked}\n preventNativeDismiss={isRemovePrevented} // on iOS\n scrollEdgeEffects={{\n bottom: scrollEdgeEffects?.bottom ?? 'automatic',\n top: scrollEdgeEffects?.top ?? 'automatic',\n left: scrollEdgeEffects?.left ?? 'automatic',\n right: scrollEdgeEffects?.right ?? 'automatic',\n }}\n onNativeDismissCancelled={onNativeDismissCancelled}\n onHeaderHeightChange={onHeaderHeightChange}\n contentStyle={[\n presentation !== 'transparentModal' &&\n presentation !== 'containedTransparentModal' && {\n backgroundColor: colors.background,\n },\n contentStyle,\n ]}\n headerConfig={headerConfig}\n unstable_sheetFooter={unstable_sheetFooter}\n // When ts-expect-error is added, it affects all the props below it\n // So we keep any props that need it at the end\n // Otherwise invalid props may not be caught by TypeScript\n shouldFreeze={shouldFreeze}>\n <AnimatedHeaderHeightContext.Provider value={animatedHeaderHeight}>\n <HeaderHeightContext.Provider\n value={headerShown !== false ? headerHeight : (parentHeaderHeight ?? 0)}>\n {headerBackground != null ? (\n /**\n * To show a custom header background, we render it at the top of the screen below the header\n * The header also needs to be positioned absolutely (with `translucent` style)\n */\n <View\n style={[\n styles.background,\n headerTransparent ? styles.translucent : null,\n { height: headerHeight },\n ]}>\n {headerBackground()}\n </View>\n ) : null}\n {header != null && headerShown !== false ? (\n <View\n onLayout={(e) => {\n const headerHeight = e.nativeEvent.layout.height;\n\n setHeaderHeight(headerHeight);\n rawAnimatedHeaderHeight.setValue(headerHeight);\n }}\n style={[styles.header, headerTransparent ? styles.absolute : null]}>\n {header({\n back: headerBack,\n options,\n route,\n navigation,\n })}\n </View>\n ) : null}\n <HeaderShownContext.Provider value={isParentHeaderShown || headerShown !== false}>\n <HeaderBackContext.Provider value={headerBack}>{render()}</HeaderBackContext.Provider>\n </HeaderShownContext.Provider>\n </HeaderHeightContext.Provider>\n </AnimatedHeaderHeightContext.Provider>\n </ScreenStackItem>\n </NavigationProvider>\n );\n};\n\ntype Props = {\n state: StackNavigationState<ParamListBase>;\n navigation: NativeStackNavigationHelpers;\n descriptors: NativeStackDescriptorMap;\n describe: (route: RouteProp<ParamListBase>, placeholder: boolean) => NativeStackDescriptor;\n};\n\nexport function NativeStackView({ state, navigation, descriptors, describe }: Props) {\n const { setNextDismissedKey } = useDismissedRouteError(state);\n\n useInvalidPreventRemoveError(descriptors);\n\n const modalRouteKeys = getModalRouteKeys(state.routes, descriptors);\n\n const preloadedDescriptors = state.preloadedRoutes.reduce<NativeStackDescriptorMap>(\n (acc, route) => {\n acc[route.key] = acc[route.key] || describe(route, true);\n return acc;\n },\n {}\n );\n\n return (\n <SafeAreaProviderCompat>\n <ScreenStack style={styles.container}>\n {state.routes.concat(state.preloadedRoutes).map((route, index) => {\n const descriptor = (descriptors[route.key] ?? preloadedDescriptors[route.key])!;\n const isFocused = state.index === index;\n const isBelowFocused = state.index - 1 === index;\n const previousKey = state.routes[index - 1]?.key;\n const nextKey = state.routes[index + 1]?.key;\n const previousDescriptor = previousKey ? descriptors[previousKey] : undefined;\n const nextDescriptor = nextKey ? descriptors[nextKey] : undefined;\n\n const isModal = modalRouteKeys.includes(route.key);\n const isModalOnIos = isModal && Platform.OS === 'ios';\n\n const isPreloaded =\n preloadedDescriptors[route.key] !== undefined && descriptors[route.key] === undefined;\n\n // On Fabric, when screen is frozen, animated and reanimated values are not updated\n // due to component being unmounted. To avoid this, we don't freeze the previous screen there\n const shouldFreeze = isFabric()\n ? !isPreloaded && !isFocused && !isBelowFocused && !isModalOnIos\n : !isPreloaded && !isFocused && !isModalOnIos;\n\n return (\n <SceneView\n key={route.key}\n index={index}\n focused={isFocused}\n shouldFreeze={shouldFreeze}\n descriptor={descriptor}\n previousDescriptor={previousDescriptor}\n nextDescriptor={nextDescriptor}\n isPresentationModal={isModal}\n isPreloaded={isPreloaded}\n onWillDisappear={() => {\n navigation.emit({\n type: 'transitionStart',\n data: { closing: true },\n target: route.key,\n });\n }}\n onWillAppear={() => {\n navigation.emit({\n type: 'transitionStart',\n data: { closing: false },\n target: route.key,\n });\n }}\n onAppear={() => {\n navigation.emit({\n type: 'transitionEnd',\n data: { closing: false },\n target: route.key,\n });\n }}\n onDisappear={() => {\n navigation.emit({\n type: 'transitionEnd',\n data: { closing: true },\n target: route.key,\n });\n }}\n onDismissed={(event) => {\n navigation.dispatch({\n ...StackActions.pop(event.nativeEvent.dismissCount),\n source: route.key,\n target: state.key,\n });\n\n setNextDismissedKey(route.key);\n }}\n onHeaderBackButtonClicked={() => {\n navigation.dispatch({\n ...StackActions.pop(),\n source: route.key,\n target: state.key,\n });\n }}\n onNativeDismissCancelled={(event) => {\n navigation.dispatch({\n ...StackActions.pop(event.nativeEvent.dismissCount),\n source: route.key,\n target: state.key,\n });\n }}\n onGestureCancel={() => {\n navigation.emit({\n type: 'gestureCancel',\n target: route.key,\n });\n }}\n onSheetDetentChanged={(event) => {\n navigation.emit({\n type: 'sheetDetentChange',\n target: route.key,\n data: {\n index: event.nativeEvent.index,\n stable: event.nativeEvent.isStable,\n },\n });\n }}\n />\n );\n })}\n </ScreenStack>\n </SafeAreaProviderCompat>\n );\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n header: {\n zIndex: 1,\n },\n absolute: {\n position: 'absolute',\n top: 0,\n start: 0,\n end: 0,\n },\n translucent: {\n position: 'absolute',\n top: 0,\n start: 0,\n end: 0,\n zIndex: 1,\n elevation: 1,\n },\n background: {\n overflow: 'hidden',\n },\n});\n"]}
1
+ {"version":3,"file":"NativeStackView.native.js","sourceRoot":"","sources":["../../../../src/react-navigation/native-stack/views/NativeStackView.native.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client';\nimport * as React from 'react';\nimport { use } from 'react';\nimport { Animated, Platform, StatusBar, StyleSheet, useAnimatedValue, View } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\nimport {\n compatibilityFlags,\n type ScreenProps,\n ScreenStack,\n ScreenStackItem,\n} from 'react-native-screens';\n\nimport {\n getDefaultHeaderHeight,\n getHeaderTitle,\n HeaderBackContext,\n HeaderHeightContext,\n HeaderShownContext,\n SafeAreaProviderCompat,\n useFrameSize,\n} from '../../elements';\nimport type {\n NativeStackDescriptor,\n NativeStackDescriptorMap,\n NativeStackNavigationHelpers,\n} from '../types';\nimport { useHeaderConfigProps } from './useHeaderConfigProps';\nimport {\n NavigationProvider,\n type ParamListBase,\n type RouteProp,\n StackActions,\n type StackNavigationState,\n usePreventRemoveContext,\n useTheme,\n} from '../../native';\nimport { debounce } from '../utils/debounce';\nimport { getModalRouteKeys } from '../utils/getModalRoutesKeys';\nimport { AnimatedHeaderHeightContext } from '../utils/useAnimatedHeaderHeight';\nimport { useDismissedRouteError } from '../utils/useDismissedRouteError';\nimport { useInvalidPreventRemoveError } from '../utils/useInvalidPreventRemoveError';\n\nconst ANDROID_DEFAULT_HEADER_HEIGHT = 56;\n\nfunction isFabric() {\n return 'nativeFabricUIManager' in global;\n}\n\ntype SceneViewProps = {\n index: number;\n focused: boolean;\n shouldFreeze: boolean;\n descriptor: NativeStackDescriptor;\n previousDescriptor?: NativeStackDescriptor;\n nextDescriptor?: NativeStackDescriptor;\n isPresentationModal?: boolean;\n isPreloaded?: boolean;\n onWillDisappear: () => void;\n onWillAppear: () => void;\n onAppear: () => void;\n onDisappear: () => void;\n onDismissed: ScreenProps['onDismissed'];\n onHeaderBackButtonClicked: ScreenProps['onHeaderBackButtonClicked'];\n onNativeDismissCancelled: ScreenProps['onDismissed'];\n onGestureCancel: ScreenProps['onGestureCancel'];\n onSheetDetentChanged: ScreenProps['onSheetDetentChanged'];\n};\n\nconst useNativeDriver = Platform.OS !== 'web';\n\nconst SceneView = ({\n index,\n focused,\n shouldFreeze,\n descriptor,\n previousDescriptor,\n nextDescriptor,\n isPresentationModal,\n isPreloaded,\n onWillDisappear,\n onWillAppear,\n onAppear,\n onDisappear,\n onDismissed,\n onHeaderBackButtonClicked,\n onNativeDismissCancelled,\n onGestureCancel,\n onSheetDetentChanged,\n}: SceneViewProps) => {\n const { route, navigation, options, render } = descriptor;\n\n let {\n animation,\n animationMatchesGesture,\n presentation = isPresentationModal ? 'modal' : 'card',\n fullScreenGestureEnabled,\n } = options;\n\n const {\n animationDuration,\n animationTypeForReplace = 'push',\n fullScreenGestureShadowEnabled = true,\n gestureEnabled,\n gestureDirection = presentation === 'card' ? 'horizontal' : 'vertical',\n gestureResponseDistance,\n header,\n headerBackButtonMenuEnabled,\n headerShown,\n headerBackground,\n headerTransparent,\n autoHideHomeIndicator,\n keyboardHandlingEnabled,\n navigationBarColor,\n navigationBarTranslucent,\n navigationBarHidden,\n orientation,\n sheetAllowedDetents = [1.0],\n sheetLargestUndimmedDetentIndex = -1,\n sheetGrabberVisible = false,\n sheetCornerRadius = -1.0,\n sheetElevation = 24,\n sheetExpandsWhenScrolledToEdge = true,\n sheetInitialDetentIndex = 0,\n sheetShouldOverflowTopInset = false,\n sheetResizeAnimationEnabled = true,\n statusBarAnimation,\n statusBarHidden,\n statusBarStyle,\n statusBarTranslucent,\n statusBarBackgroundColor,\n unstable_sheetFooter,\n scrollEdgeEffects,\n freezeOnBlur,\n contentStyle,\n } = options;\n\n if (gestureDirection === 'vertical' && Platform.OS === 'ios') {\n // for `vertical` direction to work, we need to set `fullScreenGestureEnabled` to `true`\n // so the screen can be dismissed from any point on screen.\n // `animationMatchesGesture` needs to be set to `true` so the `animation` set by user can be used,\n // otherwise `simple_push` will be used.\n // Also, the default animation for this direction seems to be `slide_from_bottom`.\n if (fullScreenGestureEnabled === undefined) {\n fullScreenGestureEnabled = true;\n }\n\n if (animationMatchesGesture === undefined) {\n animationMatchesGesture = true;\n }\n\n if (animation === undefined) {\n animation = 'slide_from_bottom';\n }\n }\n\n // workaround for rn-screens where gestureDirection has to be set on both\n // current and previous screen - software-mansion/react-native-screens/pull/1509\n const nextGestureDirection = nextDescriptor?.options.gestureDirection;\n const gestureDirectionOverride =\n nextGestureDirection != null ? nextGestureDirection : gestureDirection;\n\n if (index === 0) {\n // first screen should always be treated as `card`, it resolves problems with no header animation\n // for navigator with first screen as `modal` and the next as `card`\n presentation = 'card';\n }\n\n const { colors } = useTheme();\n const insets = useSafeAreaInsets();\n\n // `modal`, `formSheet` and `pageSheet` presentations do not take whole screen, so should not take the inset.\n const isModal =\n presentation === 'modal' || presentation === 'formSheet' || presentation === 'pageSheet';\n\n // Modals are fullscreen in landscape only on iPhone\n const isIPhone = Platform.OS === 'ios' && !(Platform.isPad || Platform.isTV);\n\n const isParentHeaderShown = use(HeaderShownContext);\n const parentHeaderHeight = use(HeaderHeightContext);\n const parentHeaderBack = use(HeaderBackContext);\n\n const isLandscape = useFrameSize((frame) => frame.width > frame.height);\n\n const topInset =\n isParentHeaderShown || (Platform.OS === 'ios' && isModal) || (isIPhone && isLandscape)\n ? 0\n : insets.top;\n\n const defaultHeaderHeight = useFrameSize((frame) =>\n Platform.select({\n // FIXME: Currently screens isn't using Material 3\n // So our `getDefaultHeaderHeight` doesn't return the correct value\n // So we hardcode the value here for now until screens is updated\n android: ANDROID_DEFAULT_HEADER_HEIGHT + topInset,\n default: getDefaultHeaderHeight(frame, isModal, topInset),\n })\n );\n\n const { preventedRoutes } = usePreventRemoveContext();\n\n const [headerHeight, setHeaderHeight] = React.useState(defaultHeaderHeight);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const setHeaderHeightDebounced = React.useCallback(\n // Debounce the header height updates to avoid excessive re-renders\n debounce(setHeaderHeight, 100),\n []\n );\n\n const hasCustomHeader = header != null;\n\n const usesNewAndroidHeaderHeightImplementation =\n 'usesNewAndroidHeaderHeightImplementation' in compatibilityFlags &&\n compatibilityFlags['usesNewAndroidHeaderHeightImplementation'] === true;\n\n let headerHeightCorrectionOffset = 0;\n\n if (Platform.OS === 'android' && !hasCustomHeader && !usesNewAndroidHeaderHeightImplementation) {\n const statusBarHeight = StatusBar.currentHeight ?? 0;\n\n // On Android, the native header height is not correctly calculated\n // It includes status bar height even if statusbar is not translucent\n // And the statusbar value itself doesn't match the actual status bar height\n // So we subtract the bogus status bar height and add the actual top inset\n headerHeightCorrectionOffset = -statusBarHeight + topInset;\n }\n\n const rawAnimatedHeaderHeight = useAnimatedValue(defaultHeaderHeight);\n const animatedHeaderHeight = React.useMemo(\n () => Animated.add<number>(rawAnimatedHeaderHeight, headerHeightCorrectionOffset),\n [headerHeightCorrectionOffset, rawAnimatedHeaderHeight]\n );\n\n // During the very first render topInset is > 0 when running\n // in non edge-to-edge mode on Android, while on every consecutive render\n // topInset === 0, causing header content to jump, as we add padding on the first frame,\n // just to remove it in next one. To prevent this, when statusBarTranslucent is set,\n // we apply additional padding in header only if its true.\n // For more details see: https://github.com/react-navigation/react-navigation/pull/12014\n const headerTopInsetEnabled =\n typeof statusBarTranslucent === 'boolean' ? statusBarTranslucent : topInset !== 0;\n\n const canGoBack = previousDescriptor != null || parentHeaderBack != null;\n const backTitle = previousDescriptor\n ? getHeaderTitle(previousDescriptor.options, previousDescriptor.route.name)\n : parentHeaderBack?.title;\n\n const headerBack = React.useMemo(() => {\n if (canGoBack) {\n return {\n href: undefined, // No href needed for native\n title: backTitle,\n };\n }\n\n return undefined;\n }, [canGoBack, backTitle]);\n\n const isRemovePrevented = preventedRoutes[route.key]?.preventRemove;\n\n const headerConfig = useHeaderConfigProps({\n ...options,\n route,\n headerBackButtonMenuEnabled:\n isRemovePrevented !== undefined ? !isRemovePrevented : headerBackButtonMenuEnabled,\n headerBackTitle: options.headerBackTitle !== undefined ? options.headerBackTitle : undefined,\n headerHeight,\n headerShown: header !== undefined ? false : headerShown,\n headerTopInsetEnabled,\n headerTransparent,\n headerBack,\n });\n\n const onHeaderHeightChange = hasCustomHeader\n ? // If we have a custom header, don't use native header height\n undefined\n : // On Fabric, there's a bug where native event drivers for Animated objects\n // are created after the first notifications about the header height\n // from the native side, `onHeaderHeightChange` event does not notify\n // `animatedHeaderHeight` about initial values on appearing screens at the moment.\n Animated.event(\n [\n {\n nativeEvent: {\n headerHeight: rawAnimatedHeaderHeight,\n },\n },\n ],\n {\n useNativeDriver,\n listener: (e) => {\n if (\n e.nativeEvent &&\n typeof e.nativeEvent === 'object' &&\n 'headerHeight' in e.nativeEvent &&\n typeof e.nativeEvent.headerHeight === 'number'\n ) {\n const headerHeight = e.nativeEvent.headerHeight;\n\n // Only debounce if header has large title or search bar\n // As it's the only case where the header height can change frequently\n const doesHeaderAnimate =\n Platform.OS === 'ios' &&\n (options.headerLargeTitleEnabled || options.headerSearchBarOptions);\n\n if (doesHeaderAnimate) {\n setHeaderHeightDebounced(headerHeight);\n } else {\n if (\n Platform.OS === 'android' &&\n headerHeight !== 0 &&\n // On some devices, height maybe slightly off (e.g. 56.17 instead of 56)\n Math.round(headerHeight) <= ANDROID_DEFAULT_HEADER_HEIGHT\n ) {\n // FIXME: On Android, events may get delivered out-of-order\n // https://github.com/facebook/react-native/issues/54636\n // We seem to get header height without status bar height first,\n // and then the correct height with status bar height included\n // But due to out-of-order delivery, we may get the correct height first\n // and then the one without status bar height\n // This is hack to include status bar height if it's not already included\n // It only works because header height doesn't change dynamically on Android\n setHeaderHeight(headerHeight + insets.top);\n } else {\n setHeaderHeight(headerHeight);\n }\n }\n }\n },\n }\n );\n\n return (\n <NavigationProvider route={route} navigation={navigation}>\n <ScreenStackItem\n screenId={route.key}\n activityState={isPreloaded ? 0 : 2}\n style={StyleSheet.absoluteFill}\n aria-hidden={!focused}\n customAnimationOnSwipe={animationMatchesGesture}\n fullScreenSwipeEnabled={fullScreenGestureEnabled}\n fullScreenSwipeShadowEnabled={fullScreenGestureShadowEnabled}\n freezeOnBlur={freezeOnBlur}\n gestureEnabled={\n Platform.OS === 'android'\n ? // This prop enables handling of system back gestures on Android\n // Since we handle them in JS side, we disable this\n false\n : gestureEnabled\n }\n homeIndicatorHidden={autoHideHomeIndicator}\n hideKeyboardOnSwipe={keyboardHandlingEnabled}\n navigationBarColor={navigationBarColor}\n navigationBarTranslucent={navigationBarTranslucent}\n navigationBarHidden={navigationBarHidden}\n replaceAnimation={animationTypeForReplace}\n stackPresentation={presentation === 'card' ? 'push' : presentation}\n stackAnimation={animation}\n screenOrientation={orientation}\n sheetAllowedDetents={sheetAllowedDetents}\n sheetLargestUndimmedDetentIndex={sheetLargestUndimmedDetentIndex}\n sheetGrabberVisible={sheetGrabberVisible}\n sheetInitialDetentIndex={sheetInitialDetentIndex}\n sheetCornerRadius={sheetCornerRadius}\n sheetElevation={sheetElevation}\n sheetExpandsWhenScrolledToEdge={sheetExpandsWhenScrolledToEdge}\n sheetShouldOverflowTopInset={sheetShouldOverflowTopInset}\n sheetDefaultResizeAnimationEnabled={sheetResizeAnimationEnabled}\n statusBarAnimation={statusBarAnimation}\n statusBarHidden={statusBarHidden}\n statusBarStyle={statusBarStyle}\n statusBarColor={statusBarBackgroundColor}\n statusBarTranslucent={statusBarTranslucent}\n swipeDirection={gestureDirectionOverride}\n transitionDuration={animationDuration}\n onWillAppear={onWillAppear}\n onWillDisappear={onWillDisappear}\n onAppear={onAppear}\n onDisappear={onDisappear}\n onDismissed={onDismissed}\n onGestureCancel={onGestureCancel}\n onSheetDetentChanged={onSheetDetentChanged}\n gestureResponseDistance={gestureResponseDistance}\n nativeBackButtonDismissalEnabled={false} // on Android\n onHeaderBackButtonClicked={onHeaderBackButtonClicked}\n preventNativeDismiss={isRemovePrevented} // on iOS\n scrollEdgeEffects={{\n bottom: scrollEdgeEffects?.bottom ?? 'automatic',\n top: scrollEdgeEffects?.top ?? 'automatic',\n left: scrollEdgeEffects?.left ?? 'automatic',\n right: scrollEdgeEffects?.right ?? 'automatic',\n }}\n onNativeDismissCancelled={onNativeDismissCancelled}\n onHeaderHeightChange={onHeaderHeightChange}\n contentStyle={[\n presentation !== 'transparentModal' &&\n presentation !== 'containedTransparentModal' && {\n backgroundColor: colors.background,\n },\n contentStyle,\n ]}\n headerConfig={headerConfig}\n unstable_sheetFooter={unstable_sheetFooter}\n // When ts-expect-error is added, it affects all the props below it\n // So we keep any props that need it at the end\n // Otherwise invalid props may not be caught by TypeScript\n shouldFreeze={shouldFreeze}>\n <AnimatedHeaderHeightContext.Provider value={animatedHeaderHeight}>\n <HeaderHeightContext.Provider\n value={headerShown !== false ? headerHeight : (parentHeaderHeight ?? 0)}>\n {headerBackground != null ? (\n /**\n * To show a custom header background, we render it at the top of the screen below the header\n * The header also needs to be positioned absolutely (with `translucent` style)\n */\n <View\n style={[\n styles.background,\n headerTransparent ? styles.translucent : null,\n { height: headerHeight },\n ]}>\n {headerBackground()}\n </View>\n ) : null}\n {header != null && headerShown !== false ? (\n <View\n onLayout={(e) => {\n const headerHeight = e.nativeEvent.layout.height;\n\n setHeaderHeight(headerHeight);\n rawAnimatedHeaderHeight.setValue(headerHeight);\n }}\n style={[styles.header, headerTransparent ? styles.absolute : null]}>\n {header({\n back: headerBack,\n options,\n route,\n navigation,\n })}\n </View>\n ) : null}\n <HeaderShownContext.Provider value={isParentHeaderShown || headerShown !== false}>\n <HeaderBackContext.Provider value={headerBack}>{render()}</HeaderBackContext.Provider>\n </HeaderShownContext.Provider>\n </HeaderHeightContext.Provider>\n </AnimatedHeaderHeightContext.Provider>\n </ScreenStackItem>\n </NavigationProvider>\n );\n};\n\ntype Props = {\n state: StackNavigationState<ParamListBase>;\n navigation: NativeStackNavigationHelpers;\n descriptors: NativeStackDescriptorMap;\n describe: (route: RouteProp<ParamListBase>, placeholder: boolean) => NativeStackDescriptor;\n};\n\nexport function NativeStackView({ state, navigation, descriptors, describe }: Props) {\n const { colors } = useTheme();\n const { setNextDismissedKey } = useDismissedRouteError(state);\n\n useInvalidPreventRemoveError(descriptors);\n\n const modalRouteKeys = getModalRouteKeys(state.routes, descriptors);\n\n const preloadedDescriptors = state.preloadedRoutes.reduce<NativeStackDescriptorMap>(\n (acc, route) => {\n acc[route.key] = acc[route.key] || describe(route, true);\n return acc;\n },\n {}\n );\n\n return (\n <SafeAreaProviderCompat>\n <ScreenStack\n nativeContainerStyle={{ backgroundColor: colors.background }}\n style={styles.container}>\n {state.routes.concat(state.preloadedRoutes).map((route, index) => {\n const descriptor = (descriptors[route.key] ?? preloadedDescriptors[route.key])!;\n const isFocused = state.index === index;\n const isBelowFocused = state.index - 1 === index;\n const previousKey = state.routes[index - 1]?.key;\n const nextKey = state.routes[index + 1]?.key;\n const previousDescriptor = previousKey ? descriptors[previousKey] : undefined;\n const nextDescriptor = nextKey ? descriptors[nextKey] : undefined;\n\n const isModal = modalRouteKeys.includes(route.key);\n const isModalOnIos = isModal && Platform.OS === 'ios';\n\n const isPreloaded =\n preloadedDescriptors[route.key] !== undefined && descriptors[route.key] === undefined;\n\n // On Fabric, when screen is frozen, animated and reanimated values are not updated\n // due to component being unmounted. To avoid this, we don't freeze the previous screen there\n const shouldFreeze = isFabric()\n ? !isPreloaded && !isFocused && !isBelowFocused && !isModalOnIos\n : !isPreloaded && !isFocused && !isModalOnIos;\n\n return (\n <SceneView\n key={route.key}\n index={index}\n focused={isFocused}\n shouldFreeze={shouldFreeze}\n descriptor={descriptor}\n previousDescriptor={previousDescriptor}\n nextDescriptor={nextDescriptor}\n isPresentationModal={isModal}\n isPreloaded={isPreloaded}\n onWillDisappear={() => {\n navigation.emit({\n type: 'transitionStart',\n data: { closing: true },\n target: route.key,\n });\n }}\n onWillAppear={() => {\n navigation.emit({\n type: 'transitionStart',\n data: { closing: false },\n target: route.key,\n });\n }}\n onAppear={() => {\n navigation.emit({\n type: 'transitionEnd',\n data: { closing: false },\n target: route.key,\n });\n }}\n onDisappear={() => {\n navigation.emit({\n type: 'transitionEnd',\n data: { closing: true },\n target: route.key,\n });\n }}\n onDismissed={(event) => {\n navigation.dispatch({\n ...StackActions.pop(event.nativeEvent.dismissCount),\n source: route.key,\n target: state.key,\n });\n\n setNextDismissedKey(route.key);\n }}\n onHeaderBackButtonClicked={() => {\n navigation.dispatch({\n ...StackActions.pop(),\n source: route.key,\n target: state.key,\n });\n }}\n onNativeDismissCancelled={(event) => {\n navigation.dispatch({\n ...StackActions.pop(event.nativeEvent.dismissCount),\n source: route.key,\n target: state.key,\n });\n }}\n onGestureCancel={() => {\n navigation.emit({\n type: 'gestureCancel',\n target: route.key,\n });\n }}\n onSheetDetentChanged={(event) => {\n navigation.emit({\n type: 'sheetDetentChange',\n target: route.key,\n data: {\n index: event.nativeEvent.index,\n stable: event.nativeEvent.isStable,\n },\n });\n }}\n />\n );\n })}\n </ScreenStack>\n </SafeAreaProviderCompat>\n );\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n header: {\n zIndex: 1,\n },\n absolute: {\n position: 'absolute',\n top: 0,\n start: 0,\n end: 0,\n },\n translucent: {\n position: 'absolute',\n top: 0,\n start: 0,\n end: 0,\n zIndex: 1,\n elevation: 1,\n },\n background: {\n overflow: 'hidden',\n },\n});\n"]}
@@ -9,7 +9,7 @@
9
9
  "publication": {
10
10
  "groupId": "expo.modules.router",
11
11
  "artifactId": "expo.modules.router",
12
- "version": "56.2.12",
12
+ "version": "56.2.13",
13
13
  "repository": "local-maven-repo"
14
14
  }
15
15
  }
@@ -3,7 +3,7 @@
3
3
  "component": {
4
4
  "group": "expo.modules.router",
5
5
  "module": "expo.modules.router",
6
- "version": "56.2.12",
6
+ "version": "56.2.13",
7
7
  "attributes": {
8
8
  "org.gradle.status": "release"
9
9
  }
@@ -24,8 +24,8 @@
24
24
  },
25
25
  "files": [
26
26
  {
27
- "name": "expo.modules.router-56.2.12.aar",
28
- "url": "expo.modules.router-56.2.12.aar",
27
+ "name": "expo.modules.router-56.2.13.aar",
28
+ "url": "expo.modules.router-56.2.13.aar",
29
29
  "size": 15835,
30
30
  "sha512": "72b5be73401c4b0a8807373f01bd79e202212f07713d071019c24eb27227a4c8568d6148d0a48338f6955f9dbe713f56e7877d8e3fe0acec28dbb68533953d90",
31
31
  "sha256": "7c41d508ab24d199ead0eb06525957cdd227a73925863865bf2956d48cb707ef",
@@ -74,8 +74,8 @@
74
74
  ],
75
75
  "files": [
76
76
  {
77
- "name": "expo.modules.router-56.2.12.aar",
78
- "url": "expo.modules.router-56.2.12.aar",
77
+ "name": "expo.modules.router-56.2.13.aar",
78
+ "url": "expo.modules.router-56.2.13.aar",
79
79
  "size": 15835,
80
80
  "sha512": "72b5be73401c4b0a8807373f01bd79e202212f07713d071019c24eb27227a4c8568d6148d0a48338f6955f9dbe713f56e7877d8e3fe0acec28dbb68533953d90",
81
81
  "sha256": "7c41d508ab24d199ead0eb06525957cdd227a73925863865bf2956d48cb707ef",
@@ -94,8 +94,8 @@
94
94
  },
95
95
  "files": [
96
96
  {
97
- "name": "expo.modules.router-56.2.12-sources.jar",
98
- "url": "expo.modules.router-56.2.12-sources.jar",
97
+ "name": "expo.modules.router-56.2.13-sources.jar",
98
+ "url": "expo.modules.router-56.2.13-sources.jar",
99
99
  "size": 2326,
100
100
  "sha512": "a1a1537b57bc0d66efbf2bdfd5f514684400b9598e549eaf53c528d1bf32ff42b7826e74fb6e115f8ec0490b9e06ffbb3c3efe9f2f703652c13291ef82b0fa03",
101
101
  "sha256": "2add0f802e663eb9b5f90e086dca0e0e337a1442e15fb372a05945e01ee0d289",
@@ -0,0 +1 @@
1
+ c5a4f66745311b02d022c7e332059c2bac604e9b8fe5f517d3290a2918d93b89
@@ -0,0 +1 @@
1
+ a85aad55fb60be09c9d5865cc0ceea58d26abb2e00022556c934a89c4f90e0d75a781f918785a2c256f2cda53ed9986d2c98ae82da26e91b2b739bbc63fde2d4
@@ -9,7 +9,7 @@
9
9
  <modelVersion>4.0.0</modelVersion>
10
10
  <groupId>expo.modules.router</groupId>
11
11
  <artifactId>expo.modules.router</artifactId>
12
- <version>56.2.12</version>
12
+ <version>56.2.13</version>
13
13
  <packaging>aar</packaging>
14
14
  <name>expo.modules.router</name>
15
15
  <url>https://github.com/expo/expo</url>
@@ -0,0 +1 @@
1
+ 63ad545f90cafcaccfec2dffdbddd4c46a9ba7e48494677a377eb52db93b7b61
@@ -0,0 +1 @@
1
+ 89e97094198b9dd2ea42f17d3957382bab3c5fe639a0ef9b465cd8f148de91595945921384ed3dff0a04f302fbcb3cf4f7862fafc048c859c34d65d0b3f0cc98
@@ -3,11 +3,11 @@
3
3
  <groupId>expo.modules.router</groupId>
4
4
  <artifactId>expo.modules.router</artifactId>
5
5
  <versioning>
6
- <latest>56.2.12</latest>
7
- <release>56.2.12</release>
6
+ <latest>56.2.13</latest>
7
+ <release>56.2.13</release>
8
8
  <versions>
9
- <version>56.2.12</version>
9
+ <version>56.2.13</version>
10
10
  </versions>
11
- <lastUpdated>20260701091744</lastUpdated>
11
+ <lastUpdated>20260703084624</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- 7dc8bce69104f3e8f6cdcac113009728
1
+ aba6890edb2e18853cef83091d6c6dc6
@@ -1 +1 @@
1
- b94aaaef39a31f2c9c1891d31ab4fcb041e4ff23
1
+ de7b4d7983ebac2d0ffc579f5d41c6c0b1d02692
@@ -1 +1 @@
1
- f813bf089435440f9b78c14e97c18af4afd832cb55830045bdd36c4466e62cd0
1
+ 4815597525a37d40e815aa2ccf735ca4f8a8fbe20513a49be41548fd204e15a9
@@ -1 +1 @@
1
- 0475ee6fff0a1760b0c68f04cef2ca80fa51d87ae95eada6c0d40b3b0e9799bc21b849dbf3cad1a2722a2606072404b4390714d124e763cf4aaa8ee3fafab155
1
+ fc873bde994303283f43d480e4fcafc04a85021aff129ac129d724adf52cad4b26756455018d9c500c7ad3cb36a3f929facd7edc718d972fd25b86ebf81cd9d1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-router",
3
- "version": "56.2.12",
3
+ "version": "56.2.13",
4
4
  "description": "Expo Router is a file-based router for React Native and web applications.",
5
5
  "author": "650 Industries, Inc.",
6
6
  "license": "MIT",
@@ -82,8 +82,8 @@
82
82
  "@expo/metro-runtime": "^56.0.16",
83
83
  "@testing-library/react-native": ">= 13.2.0",
84
84
  "expo": "*",
85
- "expo-constants": "^56.0.19",
86
- "expo-linking": "^56.0.14",
85
+ "expo-constants": "^56.0.20",
86
+ "expo-linking": "^56.0.15",
87
87
  "react": "*",
88
88
  "react-dom": "*",
89
89
  "react-native": "*",
@@ -136,13 +136,13 @@
136
136
  "react-native-web": "~0.21.0",
137
137
  "react-server-dom-webpack": "~19.0.6",
138
138
  "tsd": "^0.33.0",
139
- "expo": "56.0.13"
139
+ "expo": "56.0.14"
140
140
  },
141
141
  "dependencies": {
142
142
  "@expo/log-box": "^56.0.14",
143
143
  "@expo/metro-runtime": "^56.0.16",
144
- "@expo/schema-utils": "^56.0.0",
145
- "@expo/ui": "^56.0.19",
144
+ "@expo/schema-utils": "^56.0.2",
145
+ "@expo/ui": "^56.0.20",
146
146
  "@radix-ui/react-slot": "^1.2.0",
147
147
  "@radix-ui/react-tabs": "^1.1.12",
148
148
  "@react-native-masked-view/masked-view": "^0.3.2",
@@ -169,7 +169,7 @@
169
169
  "standard-navigation": "^0.0.5",
170
170
  "vaul": "^1.1.2"
171
171
  },
172
- "gitHead": "b293744c7b199c6cbe910188863e93a174c21250",
172
+ "gitHead": "b2e161a54f90a778ab7e5560c0c8f021bbfcaae2",
173
173
  "scripts": {
174
174
  "build": "node ./scripts/build.js",
175
175
  "clean": "expo-module clean",
@@ -1 +0,0 @@
1
- dea4e35d2cb00025ae5ecf75a3c902428935c9338ec2c97fe81edb5b870ca167
@@ -1 +0,0 @@
1
- 8e73a987984ee5b46432b2d01528afa3f974c9bddcf94501463e6f5dd20e2306a3dcaa3df7e3386a95ce4646e97befb0bfbe4fb4160319c97744bd53927a9a38
@@ -1 +0,0 @@
1
- 59217d6c23060751b24bcb730a03bf862dc47436cce85dc9ba657e613b200b49
@@ -1 +0,0 @@
1
- 01e3a84285c739f18f38cc1af80795d6c3b93c5f9c2d1f60be7850abb6150e045ba460450b517450a54c3e22d0a722b5111e3355d1e40d8db002f0f59dcab54e