react-native-ethiopian-calendar
Version:
A react native calendar component which is mainly intended for applications which require Ethiopian calendar.
72 lines • 2.44 kB
JavaScript
import React from 'react';
import { Image, Text, TouchableOpacity, View } from 'react-native';
import { getDaysNameOfTheWeek, getMonthsName } from '../../../utils/locals';
import { makeStyle } from './style';
import { LocalsDropDown, SwitchMode } from '../../../commons/components';
export const Header = /*#__PURE__*/React.memo(props => {
const {
currentDay,
today,
prev,
next,
month,
year,
locals = 'AMH',
mode,
theme,
onModeChange,
onLanguageChange,
hideHeaderButtons
} = props;
const styles = makeStyle(theme);
return /*#__PURE__*/React.createElement(View, null, !hideHeaderButtons && /*#__PURE__*/React.createElement(View, {
style: styles.headerButtonsWrapper
}, /*#__PURE__*/React.createElement(SwitchMode, {
theme: theme,
mode: mode,
onModeChange: onModeChange
}), /*#__PURE__*/React.createElement(View, {
style: styles.todayButton
}, /*#__PURE__*/React.createElement(TouchableOpacity, {
onPress: today,
activeOpacity: 0.9
}, /*#__PURE__*/React.createElement(Text, {
style: styles.todayText
}, currentDay))), mode === 'EC' && /*#__PURE__*/React.createElement(LocalsDropDown, {
theme: theme,
locals: locals,
onLanguageChange: onLanguageChange
})), /*#__PURE__*/React.createElement(View, {
style: styles.mainHeader
}, /*#__PURE__*/React.createElement(TouchableOpacity, {
onPress: prev,
style: styles.arrow
}, /*#__PURE__*/React.createElement(Image, {
source: require('../../images/left_icon.png'),
style: styles.arrowImage
})), /*#__PURE__*/React.createElement(View, {
style: styles.headerTitle
}, /*#__PURE__*/React.createElement(Text, {
style: styles.titleText
}, getMonthsName({
locals,
mode
})[month - 1]), /*#__PURE__*/React.createElement(View, {
style: styles.space
}), /*#__PURE__*/React.createElement(Text, {
style: styles.titleText
}, year)), /*#__PURE__*/React.createElement(TouchableOpacity, {
onPress: next,
style: styles.arrow
}, /*#__PURE__*/React.createElement(Image, {
source: require('../../images/right_icon.png'),
style: styles.arrowImage
}))), /*#__PURE__*/React.createElement(View, {
style: styles.daysHeader
}, getDaysNameOfTheWeek(locals).map((item, i) => /*#__PURE__*/React.createElement(Text, {
style: styles.dayText,
key: i,
numberOfLines: 1
}, item))));
});
//# sourceMappingURL=index.js.map