UNPKG

@chayns-components/date

Version:

A set of beautiful React components for developing your own applications with chayns.

97 lines (96 loc) 3.78 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireWildcard(require("react")); var _MonthYearPickers = _interopRequireDefault(require("../../month-year-pickers/MonthYearPickers")); var _DayWrapper = _interopRequireDefault(require("./day-wrapper/DayWrapper")); var _Month = require("./Month.styles"); var _WeekdayWrapper = _interopRequireDefault(require("./weekday-wrapper/WeekdayWrapper")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } const minSwipeDistance = 50; const Month = ({ month, year, locale, highlightedDates, selectedDate, onSelect, categories, height, minDate, maxDate, customThumbColors, shouldShowHighlightsInMonthOverlay, type, hoveringDay, setHoveringDay, disabledDates, setCurrentDate, displayIndex, showMonthYearPickers, handleLeftArrowClick, handleRightArrowClick, currentDateBackgroundColor }) => { const [touchStart, setTouchStart] = (0, _react.useState)(); const [touchEnd, setTouchEnd] = (0, _react.useState)(); const onTouchStart = e => { var _e$targetTouches$; setTouchEnd(undefined); setTouchStart((_e$targetTouches$ = e.targetTouches[0]) === null || _e$targetTouches$ === void 0 ? void 0 : _e$targetTouches$.clientX); }; const onTouchMove = e => { var _e$targetTouches$2; setTouchEnd((_e$targetTouches$2 = e.targetTouches[0]) === null || _e$targetTouches$2 === void 0 ? void 0 : _e$targetTouches$2.clientX); }; const onTouchEnd = () => { if (!touchStart || !touchEnd) return; const distance = touchStart - touchEnd; if (distance < -minSwipeDistance) { handleLeftArrowClick(); } if (distance > minSwipeDistance) { handleRightArrowClick(); } }; return /*#__PURE__*/_react.default.createElement(_Month.StyledMonth, { $height: height, onTouchStart: onTouchStart, onTouchMove: onTouchMove, onTouchEnd: onTouchEnd }, /*#__PURE__*/_react.default.createElement(_Month.StyledMonthHead, null, /*#__PURE__*/_react.default.createElement(_MonthYearPickers.default, { month: month, year: year, locale: locale, minDate: minDate, maxDate: maxDate, setCurrentDate: setCurrentDate, displayIndex: displayIndex, showMonthYearPickers: showMonthYearPickers })), /*#__PURE__*/_react.default.createElement(_WeekdayWrapper.default, { locale: locale }), /*#__PURE__*/_react.default.createElement(_DayWrapper.default, { key: `day-wrapper-${month}`, categories: categories, selectedDate: selectedDate, customThumbColors: customThumbColors, month: month, year: year, onSelect: onSelect, shouldShowHighlightsInMonthOverlay: shouldShowHighlightsInMonthOverlay, highlightedDates: highlightedDates, minDate: minDate, maxDate: maxDate, type: type, hoveringDay: hoveringDay, setHoveringDay: setHoveringDay, disabledDates: disabledDates, currentDateBackgroundColor: currentDateBackgroundColor })); }; Month.displayName = 'Month'; var _default = exports.default = Month; //# sourceMappingURL=Month.js.map