TP-64336 | Multi plan feature (#10813)

Co-authored-by: sangaraboinarishvik <rishvik.vardhan@navi.com>
This commit is contained in:
Mayank Singh
2024-05-14 23:40:14 +05:30
committed by GitHub
parent 5f86a299ae
commit 9527976c41
72 changed files with 1846 additions and 279 deletions

View File

@@ -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>
);
};