UNPKG

react-native-plain-calendar

Version:
45 lines (44 loc) 2.36 kB
import * as React from 'react'; import { Text } from 'react-native'; import { Touchable } from '../Touchable/Touchable'; import { s } from './styles'; function Day({ onPress, isToday, isSelectedDate, isSingleSelectedDate, isStartSelectedDate, isEndSelectedDate, isIntermediateSelectedDate, isDisabledDate, isDisabledParticularDate, date, DayComponent, todayStyle, dayStyle, daySelectedStyle, daySingleSelectedStyle, dayStartSelectedStyle, dayEndSelectedStyle, dayIntermediateSelectedStyle, dayDisabledStyle, dayDisabledParticularStyle, todayTextStyle, dayTextStyle, daySelectedTextStyle, dayDisabledTextStyle, dayDisabledParticularTextStyle, disabledDayPick, }) { if (DayComponent) { return (<DayComponent onPress={onPress} isToday={isToday} isSelectedDate={isSelectedDate} isSingleSelectedDate={isSingleSelectedDate} isStartSelectedDate={isStartSelectedDate} isEndSelectedDate={isEndSelectedDate} isIntermediateSelectedDate={isIntermediateSelectedDate} isDisabledDate={isDisabledDate} isDisabledParticularDate={isDisabledParticularDate} date={date}/>); } const isDisabledTouchable = isDisabledDate || disabledDayPick; return (<Touchable onPress={onPress} disabled={isDisabledTouchable} style={[ s.day, dayStyle, isToday && [s.today, todayStyle], isSelectedDate && daySelectedStyle, isSingleSelectedDate && [ s.singleSelected, daySingleSelectedStyle, ], isStartSelectedDate && [ s.startSelected, dayStartSelectedStyle, ], isEndSelectedDate && [s.endSelected, dayEndSelectedStyle], isIntermediateSelectedDate && [ s.selected, dayIntermediateSelectedStyle, ], isDisabledDate && dayDisabledStyle, isDisabledParticularDate && dayDisabledParticularStyle, ]}> <Text style={[ s.number, dayTextStyle, isToday && todayTextStyle, isDisabledDate && [s.disabledNumber, dayDisabledTextStyle], isDisabledParticularDate && dayDisabledParticularTextStyle, isSelectedDate && daySelectedTextStyle, ]}> {date} </Text> </Touchable>); } const DayMemo = React.memo(Day); export { DayMemo as Day };