import React, { useMemo, useState } from 'react'; import { View } from 'react-native'; import CalendarPicker, { CustomDatesStylesFunc, CustomDayHeaderStylesFunc } from 'react-native-calendar-picker'; import moment from 'moment'; import { Modal } from '../../Modal'; import Navigation from './Navigation'; import { styles } from './style'; import { Colors } from '../../../theme'; export default function RangeCalendar( { isModalVisible, closeModal }: { isModalVisible: boolean, closeModal: () => void } ) { const [selectedStartDate, setSelectedStartDate] = useState(null); const [selectedEndDate, setSelectedEndDate] = useState(null); const handleOnDateChange = (date: Date, type: string) => { if (type === 'END_DATE') { setSelectedEndDate(date); } else { setSelectedStartDate(date); setSelectedEndDate(null); } }; const customDayHeaderStyles: CustomDayHeaderStylesFunc = () => { return { textStyle: styles.dayHeader, }; }; const customSelectedDatesStyles: CustomDatesStylesFunc = useMemo(() => { return (date: moment.Moment) => { if (date.isSame(moment(), 'day')) { return { containerStyle: {}, textStyle: { borderWidth: 1, borderColor: Colors.DARK_BLUE, borderRadius: 17, height: 34, width: 34, textAlign: 'center', verticalAlign: 'middle', }, style: { backgroundColor: Colors.WHITE, } }; } return { containerStyle: {}, textStyle: {}, }; }; }, []); const resetSelections = () => { closeModal(); setSelectedStartDate(null); setSelectedEndDate(null); }; const prevNavigationComponent = useMemo(() => , []); const nextNavigationComponent = useMemo(() => , []); return ( ); }