From 6d417f81bf76ba67335457f5f4525232c99598f7 Mon Sep 17 00:00:00 2001 From: G Date: Wed, 11 Sep 2024 15:34:16 +0000 Subject: [PATCH] update the modal filter to take advantage of the card custom made. And instead of conditional rendering it on the same screen. the task is offload to the modal context manager to render --- src/screens/TransactionHistoryScreen.tsx | 260 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------------------------------------------------- 1 file changed, 135 insertions(+), 125 deletions(-) diff --git a/src/screens/TransactionHistoryScreen.tsx b/src/screens/TransactionHistoryScreen.tsx index d0a6ef1..63a21a5 100644 --- a/src/screens/TransactionHistoryScreen.tsx +++ b/src/screens/TransactionHistoryScreen.tsx @@ -1,11 +1,14 @@ +import { useModalsManagerContext } from "@/contexts/ModalsManagerContext"; +import BarWithBeasyAndNotificationsIcon from "@components/BarWithBeasyAndNotificationsIcon"; import Button from "@components/Button"; import Input from "@components/Input"; import TransactionInformationsItem from "@components/TransactionInformationsItem"; -import BackgroundWithBeasyIconAndWhiteContentArea from "@components/backgrounds/BackgroundWithBeasyIconAndWhiteContentArea"; import Box from "@components/bases/Box"; import Text from "@components/bases/Text"; +import WrapperWithDefaultBeasyBackgroundAndSafeAreaTopLeftRight from "@components/wrappers/WrapperWithDefaultBeasyBackgroundAndSafeAreaTopLeftRight"; import useTransactionsHistory, { type OperatorsFilter } from "@hooks/useTransactionsHistory"; import { LOG } from "@logger"; +import Card from "@re-card"; import theme from "@themes/Theme"; import { useCallback, useState } from "react"; import { RefreshControl, ScrollView, Switch } from "react-native"; @@ -28,9 +31,13 @@ const TransactionHistoryScreen = () => { setOperatorsFilter, } = useTransactionsHistory(); + const { showModal } = useModalsManagerContext(); + return ( - - <> + + + + {showFiltersModal && ( { /> )} {/* */} - + @@ -56,15 +63,25 @@ const TransactionHistoryScreen = () => { name="filter" size={30} color="black" - onPress={() => setShowFiltersModal(true)} + // onPress={() => setShowFiltersModal(true)} + onPress={() => + showModal( + , + ) + } /> } contentContainerStyle={{ gap: 10, - padding: 10, + padding: 5, // marginTop: 10, paddingBottom: 30, flexDirection: "column", @@ -82,8 +99,8 @@ const TransactionHistoryScreen = () => { /> ))} - - + + ); }; @@ -122,147 +139,140 @@ const FiltersModal: React.FC = ({ }); }, [filterOm, filterMtn, filterFlooz, filterWave, filterCb, setOperatorsFilter]); + const { closeModal } = useModalsManagerContext(); + const saveFilters = useCallback(() => { saveOperatorsFilters(); setShowFiltersModal(false); - }, [saveOperatorsFilters, setShowFiltersModal]); + closeModal(); + }, [saveOperatorsFilters, setShowFiltersModal, closeModal]); return ( - <> - {/* Overlay */} + - - {/* Content */} + backgroundColor={"white"} + width={"90%"} + // height={"70%"} + maxHeight={"80%"} + borderRadius={10} + p={"m"} + flexDirection={"column"} + style={{ margin: "auto" }} + > + + + Paramétrage filtre + + { + closeModal(); + setShowFiltersModal(false); + }} + /> + - + + Opérateurs + + Orange Money + + + + MTN Money + + + - - Paramétrage filtre - - setShowFiltersModal(false)} + Flooz Money + - - - Opérateurs - - - Orange Money - - - - MTN Money - - - - Flooz Money - - - - Wave - - - - Carte Bancaire - - + Wave + - -