UNPKG

rsuite

Version:

A suite of react components

86 lines (63 loc) 2.85 kB
"use strict"; exports.__esModule = true; exports.getCalendarDate = getCalendarDate; exports.getWeekHoverRange = exports.getMonthHoverRange = exports.isSameRange = exports.getDefaultRanges = exports.setTimingMargin = void 0; var _utils = require("../utils"); var setTimingMargin = function setTimingMargin(date, way) { if (way === void 0) { way = 'left'; } return way === 'right' ? _utils.DateUtils.endOfDay(date) : _utils.DateUtils.startOfDay(date); }; exports.setTimingMargin = setTimingMargin; function getCalendarDate(_ref) { var _value; var value = _ref.value; // Update calendarDate if the value is not null value = (_value = value) !== null && _value !== void 0 ? _value : []; if (value[0] && value[1]) { var sameMonth = _utils.DateUtils.isSameMonth(value[0], value[1]); return [value[0], sameMonth ? _utils.DateUtils.addMonths(value[1], 1) : value[1]]; // If only the start date } else if (value[0]) { return [value[0], _utils.DateUtils.addMonths(value[0], 1)]; } var todayDate = new Date(); return [todayDate, _utils.DateUtils.addMonths(todayDate, 1)]; } var getDefaultRanges = function getDefaultRanges() { var todayDate = new Date(); return [{ label: 'today', value: [setTimingMargin(todayDate), setTimingMargin(todayDate, 'right')] }, { label: 'yesterday', value: [setTimingMargin(_utils.DateUtils.addDays(todayDate, -1)), setTimingMargin(_utils.DateUtils.addDays(todayDate, -1), 'right')] }, { label: 'last7Days', value: [setTimingMargin(_utils.DateUtils.subDays(todayDate, 6)), setTimingMargin(todayDate, 'right')] }]; }; exports.getDefaultRanges = getDefaultRanges; var isSameRange = function isSameRange(source, dest, format) { // If both are null, reguard as same if (null === source && null === dest) return true; // If only one is null, regard as different if (null === source || null === dest) return false; var result = _utils.DateUtils.isSameDay(source[0], dest[0]) && _utils.DateUtils.isSameDay(source[1], dest[1]); if (_utils.DateUtils.shouldTime(format)) { result && (result = _utils.DateUtils.isSameSecond(source[0], dest[0]) && _utils.DateUtils.isSameSecond(source[1], dest[1])); } return result; }; exports.isSameRange = isSameRange; var getMonthHoverRange = function getMonthHoverRange(date) { return [_utils.DateUtils.startOfMonth(date), _utils.DateUtils.endOfMonth(date)]; }; exports.getMonthHoverRange = getMonthHoverRange; var getWeekHoverRange = function getWeekHoverRange(isoWeek, date) { if (isoWeek) { // set to the first day of this week according to ISO 8601, 12:00 am return [_utils.DateUtils.startOfISOWeek(date), _utils.DateUtils.endOfISOWeek(date)]; } return [_utils.DateUtils.startOfWeek(date), _utils.DateUtils.endOfWeek(date)]; }; exports.getWeekHoverRange = getWeekHoverRange;