TP-64336 | Multi plan feature (#10813)
Co-authored-by: sangaraboinarishvik <rishvik.vardhan@navi.com>
This commit is contained in:
@@ -1,37 +1,59 @@
|
||||
import { TouchableOpacity } from "react-native-gesture-handler";
|
||||
import { View } from "react-native";
|
||||
import { BackHandler, View } from "react-native";
|
||||
import { CtaData } from "../../../App/common/interface";
|
||||
import { styles } from "./StaticHeaderStyle";
|
||||
import { ImageName } from "../../../App/common/constants/StringConstant";
|
||||
import { AppImage } from "../../AppImage";
|
||||
import { useEffect } from "react";
|
||||
|
||||
export const StaticHeader = ({
|
||||
handleClick,
|
||||
leftIcon,
|
||||
rightIcon,
|
||||
leftIconCta,
|
||||
rightIconCta,
|
||||
}: {
|
||||
handleClick?: (ctaData: CtaData) => void;
|
||||
leftIconCta?: CtaData;
|
||||
rightIconCta?: CtaData;
|
||||
leftIcon?: keyof typeof ImageName;
|
||||
rightIcon?: keyof typeof ImageName;
|
||||
leftIconCta?: CtaData | null;
|
||||
rightIconCta?: CtaData | null;
|
||||
}) => {
|
||||
const handleBackButtonClick = () => {
|
||||
handleClick && leftIconCta && handleClick(leftIconCta);
|
||||
return true;
|
||||
};
|
||||
useEffect(() => {
|
||||
BackHandler.addEventListener("hardwareBackPress", handleBackButtonClick);
|
||||
return () => {
|
||||
BackHandler.removeEventListener(
|
||||
"hardwareBackPress",
|
||||
handleBackButtonClick,
|
||||
);
|
||||
};
|
||||
}, [leftIconCta]);
|
||||
return (
|
||||
<View style={styles.container}>
|
||||
<TouchableOpacity
|
||||
onPress={() => {
|
||||
handleClick && leftIconCta && handleClick(leftIconCta);
|
||||
}}
|
||||
activeOpacity={1}
|
||||
>
|
||||
{AppImage(ImageName.CROSS, styles.leftImageStyle)}
|
||||
</TouchableOpacity>
|
||||
<TouchableOpacity
|
||||
onPress={() => {
|
||||
handleClick && rightIconCta && handleClick(rightIconCta);
|
||||
}}
|
||||
activeOpacity={1}
|
||||
>
|
||||
{AppImage(ImageName.HELP, styles.rightImageStyle)}
|
||||
</TouchableOpacity>
|
||||
{!!leftIconCta && (
|
||||
<TouchableOpacity
|
||||
onPress={() => {
|
||||
handleClick && leftIconCta && handleClick(leftIconCta);
|
||||
}}
|
||||
activeOpacity={1}
|
||||
>
|
||||
{AppImage(leftIcon || ImageName.CROSS, styles.leftImageStyle)}
|
||||
</TouchableOpacity>
|
||||
)}
|
||||
{!!rightIconCta && (
|
||||
<TouchableOpacity
|
||||
onPress={() => {
|
||||
handleClick && rightIconCta && handleClick(rightIconCta);
|
||||
}}
|
||||
activeOpacity={1}
|
||||
>
|
||||
{AppImage(rightIcon || ImageName.HELP, styles.rightImageStyle)}
|
||||
</TouchableOpacity>
|
||||
)}
|
||||
</View>
|
||||
);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user