// Metro module 5606 (f5607). import { useState } from "react"; import { StyleSheet, Platform } from "react-native"; import memoize from "./memoize_5607"; import { HeaderBackButton, getDefaultHeaderHeight, Header, HeaderTitle } from "./Module5579"; const _excluded = ["progress", "layout", "modal", "onGoBack", "headerTitle", "headerLeft", "headerRight", "headerBackImage", "headerBackTitle", "headerBackTitleVisible", "headerTruncatedBackTitle", "headerBackAccessibilityLabel", "headerBackTestID", "headerBackAllowFontScaling", "headerBackTitleStyle", "headerTitleContainerStyle", "headerLeftContainerStyle", "headerRightContainerStyle", "headerBackgroundContainerStyle", "headerStyle", "headerStatusBarHeight", "styleInterpolator"]; Platform; export default function HeaderSegment(props) { let handleLeftLabelLayout2, layout, onGoBack, headerTitle, c14940_9, headerRight, headerBackImage, headerBackTitle, headerTruncatedBackTitle, headerBackAccessibilityLabel, headerBackTestID, headerBackAllowFontScaling, headerBackTitleStyle, leftLabelStyle; const [state, setState] = useState(void 0); const [state2, setState2] = useState(void 0); const handleTitleLayout2 = (a0) => { const layout2 = a0.nativeEvent.layout; const { height, width } = layout2; setState2((prevState2) => prevState2 && (height === prevState2.height && width === prevState2.width) ? prevState2 : { height, width }); }; handleLeftLabelLayout2 = (a0) => { const layout2 = a0.nativeEvent.layout; const { height: height2, width: width2 } = layout2; if (!((state ? height2 === state.height : state) && width2 === state.width)) { setState({ height: height2, width: width2 }); } }; const r24 = memoize((a0, a1, a2, a3, a4, a5, a6) => a0({ current: { progress: a2 }, next: a3 ? { progress: a3 } : a3, layouts: { header: { height: a6, width: a1.width }, screen: a1, title: a4, leftLabel: a5 } })); const progress = props.progress; layout = props.layout; const modal = props.modal; onGoBack = props.onGoBack; headerTitle = props.headerTitle; let headerLeft = props.headerLeft; if (headerLeft === void 0) { headerLeft = onGoBack ? (a0) => : void 0; } c14940_9 = headerLeft; headerRight = props.headerRight; headerBackImage = props.headerBackImage; headerBackTitle = props.headerBackTitle; const headerBackTitleVisible = props.headerBackTitleVisible; const headerLeftLabelVisible = headerBackTitleVisible !== void 0 && headerBackTitleVisible; headerTruncatedBackTitle = props.headerTruncatedBackTitle; headerBackAccessibilityLabel = props.headerBackAccessibilityLabel; headerBackTestID = props.headerBackTestID; headerBackAllowFontScaling = props.headerBackAllowFontScaling; headerBackTitleStyle = props.headerBackTitleStyle; const { headerTitleContainerStyle, headerLeftContainerStyle, headerRightContainerStyle, headerBackgroundContainerStyle, headerStyle, headerStatusBarHeight, styleInterpolator, ...rest } = props; let r67 = getDefaultHeaderHeight(layout, modal, headerStatusBarHeight); let height2 = StyleSheet.flatten(headerStyle || {}).height; if (height2 === void 0) { height2 = r67; } const { current, next } = progress; const r73 = headerBackTitle ? state : void 0; if (typeof height2 === "number") { r67 = height2; } const r74 = r24(styleInterpolator, layout, current, next, state2, r73, r67); const { titleStyle, leftButtonStyle } = r74; leftLabelStyle = r74.leftLabelStyle; const rightButtonStyle = r74.rightButtonStyle; return
: (a0) => headerTitle({ ...a0, onLayout: handleTitleLayout2 })} headerLeft={headerLeft ? (a0) => c14940_9({ ...a0, backImage: headerBackImage, accessibilityLabel: headerBackAccessibilityLabel, testID: headerBackTestID, allowFontScaling: headerBackAllowFontScaling, onPress: onGoBack, label: headerBackTitle, truncatedLabel: headerTruncatedBackTitle, labelStyle: [leftLabelStyle, headerBackTitleStyle], onLabelLayout: handleLeftLabelLayout2, screenLayout: layout, titleLayout: state2, canGoBack: Boolean(onGoBack) }) : void 0} headerLeftLabelVisible={headerLeftLabelVisible} headerRight={headerRight ? (a0) => headerRight({ ...a0, canGoBack: Boolean(onGoBack) }) : void 0} headerTitleContainerStyle={[titleStyle, headerTitleContainerStyle]} headerLeftContainerStyle={[leftButtonStyle, headerLeftContainerStyle]} headerRightContainerStyle={[rightButtonStyle, headerRightContainerStyle]} headerBackgroundContainerStyle={[r74.backgroundStyle, headerBackgroundContainerStyle]} headerStyle={headerStyle} headerStatusBarHeight={headerStatusBarHeight} {...rest} />; };