2026-07-25 08:10:48 +00:00
// Module ID: 9043
2026-07-27 11:26:19 +00:00
// Function ID: 71095
2026-07-20 16:05:17 +00:00
// Name: NativeStackViewInner
2026-07-25 08:10:48 +00:00
// Dependencies: [57, 31, 27, 33, 1457, 4488, 9044, 4479, 1560, 5526, 9045, 9048, 9049]
2026-07-20 16:05:17 +00:00
// Exports: default
2026-07-25 08:10:48 +00:00
// Module 9043 (NativeStackViewInner)
2026-07-23 10:11:24 +00:00
import _slicedToArray from "_slicedToArray" ;
import result from "result" ;
import get _ActivityIndicator from "get ActivityIndicator" ;
import jsxProd from "jsxProd" ;
2026-07-20 16:05:17 +00:00
let Platform ;
let StyleSheet ;
2026-07-23 10:11:24 +00:00
let closure _7 ;
let closure _8 ;
const require = arg1 ;
2026-07-20 16:05:17 +00:00
function NativeStackViewInner ( state ) {
let descriptors ;
2026-07-23 10:11:24 +00:00
let importDefault ;
2026-07-20 16:05:17 +00:00
state = state . state ;
2026-07-23 10:11:24 +00:00
( { navigation : importDefault , descriptors } = state ) ;
const setNextDismissedKey = importDefault ( descriptors [ 11 ] ) ( state ) . setNextDismissedKey ;
importDefault ( descriptors [ 12 ] ) ( descriptors ) ;
let obj = { style : closure _11 . container } ;
2026-07-20 16:05:17 +00:00
const routes = state . routes ;
obj . children = routes . map ( ( key , index ) => {
const state = key ;
key = undefined ;
if ( null != state . routes [ index - 1 ] ) {
key = tmp . key ;
}
let key1 ;
if ( null != state . routes [ index + 1 ] ) {
key1 = tmp3 . key ;
}
let tmp5 ;
if ( key ) {
tmp5 = descriptors [ key ] ;
}
let tmp7 ;
if ( key1 ) {
tmp7 = descriptors [ key1 ] ;
}
const obj = {
index ,
focused : state . index === index ,
descriptor : descriptors [ key . key ] ,
previousDescriptor : tmp5 ,
nextDescriptor : tmp7 ,
2026-07-23 10:11:24 +00:00
onWillDisappear ( onDidDisappear , arg1 ) {
outer1 _1 . emit ( { type : "transitionStart" , data : { closing : true } , target : key . key } ) ;
2026-07-20 16:05:17 +00:00
} ,
onWillAppear ( arg0 ) {
2026-07-23 10:11:24 +00:00
outer1 _1 . emit ( { type : "transitionStart" , data : { closing : false } , target : key . key } ) ;
2026-07-20 16:05:17 +00:00
} ,
onAppear ( ) {
2026-07-23 10:11:24 +00:00
outer1 _1 . emit ( { type : "transitionEnd" , data : { closing : false } , target : key . key } ) ;
2026-07-20 16:05:17 +00:00
} ,
onDisappear ( ) {
2026-07-23 10:11:24 +00:00
outer1 _1 . emit ( { type : "transitionEnd" , data : { closing : true } , target : key . key } ) ;
2026-07-20 16:05:17 +00:00
} ,
onDismissed ( nativeEvent ) {
2026-07-23 10:11:24 +00:00
const StackActions = state ( descriptors [ 4 ] ) . StackActions ;
outer1 _1 . dispatch ( Object . assign ( { } , StackActions . pop ( nativeEvent . nativeEvent . dismissCount ) , { source : key . key , target : key . key } ) ) ;
outer1 _3 ( key . key ) ;
2026-07-20 16:05:17 +00:00
} ,
onHeaderBackButtonClicked ( ) {
2026-07-23 10:11:24 +00:00
const StackActions = state ( descriptors [ 4 ] ) . StackActions ;
outer1 _1 . dispatch ( Object . assign ( { } , StackActions . pop ( ) , { source : key . key , target : key . key } ) ) ;
2026-07-20 16:05:17 +00:00
} ,
onNativeDismissCancelled ( nativeEvent ) {
2026-07-23 10:11:24 +00:00
const StackActions = state ( descriptors [ 4 ] ) . StackActions ;
outer1 _1 . dispatch ( Object . assign ( { } , StackActions . pop ( nativeEvent . nativeEvent . dismissCount ) , { source : key . key , target : key . key } ) ) ;
2026-07-20 16:05:17 +00:00
} ,
onGestureCancel ( ) {
2026-07-23 10:11:24 +00:00
outer1 _1 . emit ( { type : "gestureCancel" , target : key . key } ) ;
2026-07-20 16:05:17 +00:00
}
} ;
2026-07-23 10:11:24 +00:00
return outer1 _7 ( outer1 _10 , obj , key . key ) ;
2026-07-20 16:05:17 +00:00
} ) ;
2026-07-23 10:11:24 +00:00
return callback2 ( state ( descriptors [ 7 ] ) . ScreenStack , obj ) ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
( { Platform , StyleSheet } = get _ActivityIndicator ) ;
const View = get _ActivityIndicator . View ;
( { jsx : closure _7 , jsxs : closure _8 } = jsxProd ) ;
2026-07-20 16:05:17 +00:00
function MaybeNestedStack ( children ) {
let header ;
let headerHeight ;
let headerShown ;
let headerTopInsetEnabled ;
let options ;
let presentation ;
let route ;
( { options , route } = children ) ;
( { presentation , headerHeight , headerTopInsetEnabled } = children ) ;
2026-07-23 10:11:24 +00:00
let obj = route ( 1457 ) ;
2026-07-20 16:05:17 +00:00
( { header , headerShown } = options ) ;
let tmp = undefined === headerShown ;
if ( ! tmp ) {
tmp = headerShown ;
}
const importDefault = tmp ;
2026-07-23 10:11:24 +00:00
const dependencyMap = React . useRef ( tmp ) ;
2026-07-20 16:05:17 +00:00
const items = [ tmp , presentation , route . name ] ;
const effect = React . useEffect ( ( ) => {
2026-07-23 10:11:24 +00:00
tmp = tmp ( table [ 5 ] ) ;
2026-07-20 16:05:17 +00:00
tmp ( false , "Dynamically changing 'headerShown' in modals will result in remounting the screen and losing all local state. See options for the screen '" + route . name + "'." ) ;
2026-07-23 10:11:24 +00:00
table . current = tmp ;
2026-07-20 16:05:17 +00:00
} , items ) ;
obj = { } ;
const items1 = [ closure _11 . container , , ] ;
let tmp5 = "transparentModal" !== presentation ;
if ( tmp5 ) {
tmp5 = "containedTransparentModal" !== presentation ;
}
if ( tmp5 ) {
obj = { } ;
obj . backgroundColor = obj . useTheme ( ) . colors . background ;
tmp5 = obj ;
}
items1 [ 1 ] = tmp5 ;
items1 [ 2 ] = options . contentStyle ;
obj . style = items1 ;
let str2 = "push" ;
if ( "card" !== presentation ) {
str2 = presentation ;
}
obj . stackPresentation = str2 ;
obj . children = children . children ;
2026-07-25 08:10:48 +00:00
return closure _7 ( importDefault ( 9044 ) , obj ) ;
2026-07-20 16:05:17 +00:00
}
function SceneView ( arg0 ) {
let animation ;
let autoHideHomeIndicator ;
let customAnimationOnGesture ;
let descriptor ;
let focused ;
let freezeOnBlur ;
let fullScreenGestureEnabled ;
let gestureEnabled ;
let gestureResponseDistance ;
let header ;
let headerBackButtonMenuEnabled ;
let headerBackground ;
let headerShown ;
let headerTransparent ;
let height ;
let index ;
let keyboardHandlingEnabled ;
let navigation ;
let navigationBarColor ;
let navigationBarHidden ;
let nextDescriptor ;
let onAppear ;
let onDisappear ;
let onDismissed ;
let onGestureCancel ;
let onHeaderBackButtonClicked ;
let onNativeDismissCancelled ;
let onWillAppear ;
let onWillDisappear ;
let options ;
let orientation ;
let presentation ;
let previousDescriptor ;
let route ;
let sheetAllowedDetents ;
let statusBarAnimation ;
let statusBarColor ;
let statusBarHidden ;
let statusBarStyle ;
let statusBarTranslucent ;
let width ;
( { focused , descriptor , previousDescriptor , nextDescriptor } = arg0 ) ;
( { route , navigation , options } = descriptor ) ;
( { index , onWillDisappear , onWillAppear , onAppear , onDisappear , onDismissed , onHeaderBackButtonClicked , onNativeDismissCancelled , onGestureCancel } = arg0 ) ;
2026-07-25 08:10:48 +00:00
let obj = _require ( 4479 ) ;
2026-07-20 16:05:17 +00:00
const UNSTABLE _headerInsets = options . UNSTABLE _headerInsets ;
let left ;
if ( null != UNSTABLE _headerInsets ) {
left = UNSTABLE _headerInsets . left ;
}
const UNSTABLE _headerInsets2 = options . UNSTABLE _headerInsets ;
let right ;
if ( null != UNSTABLE _headerInsets2 ) {
right = UNSTABLE _headerInsets2 . right ;
}
const UNSTABLE _headerInsets3 = options . UNSTABLE _headerInsets ;
let bottom ;
if ( null != UNSTABLE _headerInsets3 ) {
bottom = UNSTABLE _headerInsets3 . bottom ;
}
const animationTypeForReplace = options . animationTypeForReplace ;
let str = "push" ;
let str2 = "push" ;
if ( undefined !== animationTypeForReplace ) {
str2 = animationTypeForReplace ;
}
const fullScreenGestureShadowEnabled = options . fullScreenGestureShadowEnabled ;
( { gestureEnabled , header , headerBackButtonMenuEnabled , headerShown , headerBackground , headerTransparent , sheetAllowedDetents } = options ) ;
let str3 = "large" ;
( { gestureResponseDistance , autoHideHomeIndicator , keyboardHandlingEnabled , navigationBarColor , navigationBarHidden , orientation } = options ) ;
if ( undefined !== sheetAllowedDetents ) {
str3 = sheetAllowedDetents ;
}
const sheetLargestUndimmedDetent = options . sheetLargestUndimmedDetent ;
let str4 = "all" ;
if ( undefined !== sheetLargestUndimmedDetent ) {
str4 = sheetLargestUndimmedDetent ;
}
const sheetGrabberVisible = options . sheetGrabberVisible ;
const sheetCornerRadius = options . sheetCornerRadius ;
let num = - 1 ;
if ( undefined !== sheetCornerRadius ) {
num = sheetCornerRadius ;
}
const sheetExpandsWhenScrolledToEdge = options . sheetExpandsWhenScrolledToEdge ;
( { statusBarTranslucent , presentation } = options ) ;
let str5 = "card" ;
( { statusBarAnimation , statusBarHidden , statusBarStyle , statusBarColor , freezeOnBlur , animation , customAnimationOnGesture , fullScreenGestureEnabled } = options ) ;
if ( undefined !== presentation ) {
str5 = presentation ;
}
let gestureDirection = options . gestureDirection ;
if ( undefined === gestureDirection ) {
let str6 = "vertical" ;
if ( "card" === str5 ) {
str6 = "horizontal" ;
}
gestureDirection = str6 ;
}
gestureDirection = undefined ;
if ( null != nextDescriptor ) {
gestureDirection = nextDescriptor . options . gestureDirection ;
}
if ( 0 === index ) {
str5 = "card" ;
}
2026-07-23 10:11:24 +00:00
let obj1 = _require ( 1560 ) ;
2026-07-20 16:05:17 +00:00
const safeAreaInsets = obj1 . useSafeAreaInsets ( ) ;
2026-07-23 10:11:24 +00:00
let obj2 = _require ( 1560 ) ;
2026-07-20 16:05:17 +00:00
const safeAreaFrame = obj2 . useSafeAreaFrame ( ) ;
let tmp10 = "modal" === str5 ;
if ( ! tmp10 ) {
tmp10 = "formSheet" === str5 ;
}
( { width , height } = safeAreaFrame ) ;
2026-07-24 07:16:23 +00:00
let context = React . useContext ( _require ( 5526 ) . HeaderShownContext ) ;
const context1 = React . useContext ( _require ( 5526 ) . HeaderHeightContext ) ;
2026-07-20 16:05:17 +00:00
let num2 = 0 ;
2026-07-24 07:16:23 +00:00
const context2 = React . useContext ( _require ( 5526 ) . HeaderBackContext ) ;
2026-07-20 16:05:17 +00:00
if ( ! context ) {
num2 = safeAreaInsets . top ;
}
2026-07-23 10:11:24 +00:00
let obj3 = _require ( 1457 ) ;
2026-07-24 07:16:23 +00:00
let obj4 = _require ( 5526 ) ;
2026-07-20 16:05:17 +00:00
let defaultHeaderHeight = obj4 . getDefaultHeaderHeight ( safeAreaFrame , tmp10 , num2 ) ;
2026-07-23 10:11:24 +00:00
const tmp15 = callback ( React . useState ( defaultHeaderHeight ) , 2 ) ;
_require = tmp15 [ 1 ] ;
2026-07-20 16:05:17 +00:00
let tmp16 = statusBarTranslucent ;
if ( "boolean" !== typeof statusBarTranslucent ) {
tmp16 = 0 !== num2 ;
}
if ( header ) {
defaultHeaderHeight = tmp15 [ 0 ] ;
}
let tmp17 = context2 ;
if ( previousDescriptor ) {
obj = { } ;
2026-07-24 07:16:23 +00:00
let obj6 = _require ( 5526 ) ;
2026-07-20 16:05:17 +00:00
obj . title = obj6 . getHeaderTitle ( previousDescriptor . options , previousDescriptor . route . name ) ;
tmp17 = obj ;
}
const tmp20 = obj3 . usePreventRemoveContext ( ) . preventedRoutes [ route . key ] ;
let preventRemove ;
if ( null != tmp20 ) {
preventRemove = tmp20 . preventRemove ;
}
2026-07-23 10:11:24 +00:00
obj = { enabled : true , isNativeStack : true , style : StyleSheet . absoluteFill } ;
2026-07-20 16:05:17 +00:00
const headerLargeTitle = options . headerLargeTitle ;
let tmp23 = null != headerLargeTitle ;
if ( tmp23 ) {
tmp23 = headerLargeTitle ;
}
obj . hasLargeHeader = tmp23 ;
obj . customAnimationOnSwipe = customAnimationOnGesture ;
obj . fullScreenSwipeEnabled = fullScreenGestureEnabled ;
obj . fullScreenSwipeShadowEnabled = undefined !== fullScreenGestureShadowEnabled && fullScreenGestureShadowEnabled ;
obj . gestureEnabled = false ;
obj . homeIndicatorHidden = autoHideHomeIndicator ;
obj . hideKeyboardOnSwipe = keyboardHandlingEnabled ;
obj . navigationBarColor = navigationBarColor ;
obj . navigationBarHidden = navigationBarHidden ;
obj . replaceAnimation = str2 ;
if ( "card" !== str5 ) {
str = str5 ;
}
obj . stackPresentation = str ;
obj . stackAnimation = animation ;
obj . screenOrientation = orientation ;
obj . sheetAllowedDetents = str3 ;
obj . sheetLargestUndimmedDetent = str4 ;
obj . sheetGrabberVisible = undefined !== sheetGrabberVisible && sheetGrabberVisible ;
obj . sheetCornerRadius = num ;
obj . sheetExpandsWhenScrolledToEdge = undefined === sheetExpandsWhenScrolledToEdge || sheetExpandsWhenScrolledToEdge ;
obj . statusBarAnimation = statusBarAnimation ;
obj . statusBarHidden = statusBarHidden ;
obj . statusBarStyle = statusBarStyle ;
obj . statusBarColor = statusBarColor ;
obj . statusBarTranslucent = statusBarTranslucent ;
obj . swipeDirection = gestureDirection ;
obj . transitionDuration = options . animationDuration ;
obj . onWillDisappear = onWillDisappear ;
obj . onWillAppear = onWillAppear ;
obj . onAppear = onAppear ;
obj . onDisappear = onDisappear ;
obj . onDismissed = onDismissed ;
obj . onGestureCancel = onGestureCancel ;
obj . gestureResponseDistance = gestureResponseDistance ;
obj . nativeBackButtonDismissalEnabled = false ;
obj . onHeaderBackButtonClicked = onHeaderBackButtonClicked ;
obj . preventNativeDismiss = preventRemove ;
obj . onNativeDismissCancelled = onNativeDismissCancelled ;
obj . freezeOnBlur = freezeOnBlur ;
obj1 = { value : navigation } ;
obj2 = { value : route } ;
obj3 = { } ;
if ( ! context ) {
context = false !== headerShown ;
}
obj3 . value = context ;
obj4 = { } ;
let tmp29 = defaultHeaderHeight ;
if ( false === headerShown ) {
let num3 = 0 ;
if ( null != context1 ) {
num3 = context1 ;
}
tmp29 = num3 ;
}
obj4 . value = tmp29 ;
let tmp31Result = null ;
if ( null != headerBackground ) {
const obj5 = { } ;
const items = [ closure _11 . background , , ] ;
let translucent = null ;
if ( headerTransparent ) {
translucent = closure _11 . translucent ;
}
items [ 1 ] = translucent ;
obj6 = { height : defaultHeaderHeight } ;
items [ 2 ] = obj6 ;
obj5 . style = items ;
obj5 . children = headerBackground ( ) ;
2026-07-23 10:11:24 +00:00
tmp31Result = callback2 ( View , obj5 ) ;
const tmp31 = callback2 ;
2026-07-20 16:05:17 +00:00
const tmp32 = View ;
}
const items1 = [ tmp31Result , , ] ;
const obj7 = { accessibilityElementsHidden : ! focused } ;
let str8 = "no-hide-descendants" ;
if ( focused ) {
str8 = "auto" ;
}
obj7 . importantForAccessibility = str8 ;
obj7 . style = closure _11 . scene ;
const obj8 = { options , route , presentation : str5 , headerHeight : defaultHeaderHeight , headerTopInsetEnabled : tmp16 } ;
const obj9 = { value : tmp17 } ;
const obj10 = { value : obj . useEdgeInsetApplication ( false === left , false === right , false === bottom ) . nextContextValue , children : descriptor . render ( ) } ;
2026-07-25 08:10:48 +00:00
obj9 . children = callback2 ( _require ( 4479 ) . EdgeInsetApplicationContext . Provider , obj10 ) ;
2026-07-24 07:16:23 +00:00
obj8 . children = callback2 ( _require ( 5526 ) . HeaderBackContext . Provider , obj9 ) ;
2026-07-23 10:11:24 +00:00
const items2 = [ callback2 ( MaybeNestedStack , obj8 ) , ] ;
2026-07-20 16:05:17 +00:00
let tmp39Result = null ;
if ( undefined !== header ) {
tmp39Result = null ;
if ( tmp28 ) {
const obj11 = {
onLayout ( nativeEvent ) {
callback ( nativeEvent . nativeEvent . layout . height ) ;
}
} ;
let absolute = null ;
if ( headerTransparent ) {
absolute = closure _11 . absolute ;
}
obj11 . style = absolute ;
const obj12 = { back : tmp17 , options , route , navigation } ;
obj11 . children = header ( obj12 ) ;
2026-07-23 10:11:24 +00:00
tmp39Result = callback2 ( View , obj11 ) ;
const tmp39 = callback2 ;
2026-07-20 16:05:17 +00:00
const tmp40 = View ;
}
}
items2 [ 1 ] = tmp39Result ;
obj7 . children = items2 ;
items1 [ 1 ] = closure _8 ( View , obj7 ) ;
const obj13 = { route } ;
if ( undefined !== preventRemove ) {
headerBackButtonMenuEnabled = ! preventRemove ;
}
obj13 . headerBackButtonMenuEnabled = headerBackButtonMenuEnabled ;
obj13 . headerShown = undefined === header && headerShown ;
obj13 . headerHeight = defaultHeaderHeight ;
let headerBackTitle ;
if ( undefined !== options . headerBackTitle ) {
headerBackTitle = options . headerBackTitle ;
}
obj13 . headerBackTitle = headerBackTitle ;
obj13 . headerTopInsetEnabled = tmp16 ;
obj13 . canGoBack = undefined !== tmp17 ;
2026-07-25 08:10:48 +00:00
items1 [ 2 ] = callback2 ( importDefault ( 9045 ) , Object . assign ( { } , options , obj13 ) ) ;
2026-07-20 16:05:17 +00:00
obj4 . children = items1 ;
2026-07-24 07:16:23 +00:00
obj3 . children = closure _8 ( _require ( 5526 ) . HeaderHeightContext . Provider , obj4 ) ;
obj2 . children = callback2 ( _require ( 5526 ) . HeaderShownContext . Provider , obj3 ) ;
2026-07-23 10:11:24 +00:00
obj1 . children = callback2 ( _require ( 1457 ) . NavigationRouteContext . Provider , obj2 ) ;
obj . children = callback2 ( _require ( 1457 ) . NavigationContext . Provider , obj1 ) ;
2026-07-25 08:10:48 +00:00
return callback2 ( _require ( 4479 ) . Screen , obj , route . key ) ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
const styles = StyleSheet . create ( { container : { flex : 1 } , scene : { flex : 1 , flexDirection : "column-reverse" } , absolute : { position : "absolute" , top : 0 , left : 0 , right : 0 } , translucent : { position : "absolute" , top : 0 , left : 0 , right : 0 , zIndex : 1 , elevation : 1 } , background : { overflow : "hidden" } } ) ;
2026-07-20 16:05:17 +00:00
export default function NativeStackView ( arg0 ) {
2026-07-23 10:11:24 +00:00
const obj = { children : callback2 ( NativeStackViewInner , Object . assign ( { } , arg0 ) ) } ;
2026-07-24 07:16:23 +00:00
return callback2 ( require ( 5526 ) /* Background */ . SafeAreaProviderCompat , obj ) ;
2026-07-20 16:05:17 +00:00
} ;