react-native-easy-calendar
Version:
Customizable, easy-to-use, performant calendar components for React Native
58 lines (43 loc) • 1.54 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _dayjs = _interopRequireDefault(require("dayjs"));
var _utc = _interopRequireDefault(require("dayjs/plugin/utc"));
var _reactNative = require("react-native");
var _Constants = require("../Constants");
var _Contexts = require("../Contexts");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
_dayjs.default.extend(_utc.default);
const Title = ({
activeView,
date,
onPress,
isDisabled,
locale
}) => {
const theme = _react.default.useContext(_Contexts.ThemeContext);
const _date = (0, _dayjs.default)(date).locale(locale).local();
const title = activeView === _Constants.VIEW.MONTH ? _date.format('MMMM YYYY') : _date.format('YYYY');
const _onPress = _react.default.useCallback(() => onPress(date), [date, onPress]);
return /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
testID: 'title',
accessibilityRole: 'button',
accessibilityHint: 'Press to switch calendar views',
accessibilityLabel: title,
accessibilityState: {
disabled: isDisabled
},
style: theme.titleContainer,
disabled: isDisabled,
onPress: _onPress
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
testID: 'title-text',
style: theme.titleText
}, title));
};
var _default = Title;
exports.default = _default;
//# sourceMappingURL=Title.js.map