react-native-easy-calendar
Version:
Customizable, easy-to-use, performant calendar components for React Native
50 lines (39 loc) • 1.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _dayjs = _interopRequireDefault(require("dayjs"));
var _reactNative = require("react-native");
var _Contexts = require("../Contexts");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const Month = ({
date,
onPress,
isSelected,
isDisabled,
locale
}) => {
const theme = _react.default.useContext(_Contexts.ThemeContext);
const _onPress = _react.default.useCallback(() => onPress(date), [date, onPress]);
return /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
testID: 'month-container',
accessibilityRole: 'button',
accessibilityLabel: (0, _dayjs.default)(date).locale(locale).format('MMM'),
accessibilityState: {
disabled: isDisabled,
selected: isSelected
},
accessibilityHint: 'Press to select this month and return to calendar month view',
disabled: isDisabled,
onPress: _onPress,
style: [theme.normalMonthContainer, isSelected && theme.selectedMonthContainer, isDisabled && theme.disabledMonthContainer]
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
testID: 'month-text',
style: [theme.normalMonthText, isSelected && theme.selectedMonthText, isDisabled && theme.disabledMonthText]
}, (0, _dayjs.default)(date).locale(locale).format('MMM')));
};
var _default = /*#__PURE__*/_react.default.memo(Month);
exports.default = _default;
//# sourceMappingURL=Month.js.map