UNPKG

tdesign-mobile-vue

Version:
929 lines (900 loc) 35 kB
/** * tdesign v1.7.0 * (c) 2024 TDesign Group * @license MIT */ 'use strict'; var isString = require('lodash/isString'); var dayjs = require('dayjs'); var _commonjsHelpers = require('./dep-a20a5149.js'); var _slicedToArray = require('@babel/runtime/helpers/slicedToArray'); var _objectDestructuringEmpty = require('@babel/runtime/helpers/objectDestructuringEmpty'); var _extends = require('@babel/runtime/helpers/extends'); var _defineProperty = require('@babel/runtime/helpers/defineProperty'); var isFunction = require('lodash/isFunction'); var advancedFormat = require('./dep-15ba3b40.js'); var customParseFormat = require('./dep-c84a1297.js'); var chunk = require('lodash/chunk'); var _common_js_log_log = require('../_common/js/log/log.js'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var isString__default = /*#__PURE__*/_interopDefaultLegacy(isString); var dayjs__default = /*#__PURE__*/_interopDefaultLegacy(dayjs); var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray); var _objectDestructuringEmpty__default = /*#__PURE__*/_interopDefaultLegacy(_objectDestructuringEmpty); var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends); var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty); var isFunction__default = /*#__PURE__*/_interopDefaultLegacy(isFunction); var chunk__default = /*#__PURE__*/_interopDefaultLegacy(chunk); var isoWeeksInYear$1 = {exports: {}}; (function (module, exports) { !function (e, n) { module.exports = n() ; }(_commonjsHelpers.commonjsGlobal, function () { return function (e, n) { n.prototype.isoWeeksInYear = function () { var e = this.isLeapYear(), n = this.endOf("y").day(); return 4 === n || e && 5 === n ? 53 : 52; }; }; }); })(isoWeeksInYear$1); var isoWeeksInYear = isoWeeksInYear$1.exports; var isLeapYear$1 = {exports: {}}; (function (module, exports) { !function (e, t) { module.exports = t() ; }(_commonjsHelpers.commonjsGlobal, function () { return function (e, t) { t.prototype.isLeapYear = function () { return this.$y % 4 == 0 && this.$y % 100 != 0 || this.$y % 400 == 0; }; }; }); })(isLeapYear$1); var isLeapYear = isLeapYear$1.exports; var isBetween = {exports: {}}; (function (module, exports) { !function (e, i) { module.exports = i() ; }(_commonjsHelpers.commonjsGlobal, function () { return function (e, i, t) { i.prototype.isBetween = function (e, i, s, f) { var n = t(e), o = t(i), r = "(" === (f = f || "()")[0], u = ")" === f[1]; return (r ? this.isAfter(n, s) : !this.isBefore(n, s)) && (u ? this.isBefore(o, s) : !this.isAfter(o, s)) || (r ? this.isBefore(n, s) : !this.isAfter(n, s)) && (u ? this.isAfter(o, s) : !this.isBefore(o, s)); }; }; }); })(isBetween); var dayJsIsBetween = isBetween.exports; var weekOfYear$1 = {exports: {}}; (function (module, exports) { !function (e, t) { module.exports = t() ; }(_commonjsHelpers.commonjsGlobal, function () { var e = "week", t = "year"; return function (i, n, r) { var f = n.prototype; f.week = function (i) { if (void 0 === i && (i = null), null !== i) return this.add(7 * (i - this.week()), "day"); var n = this.$locale().yearStart || 1; if (11 === this.month() && this.date() > 25) { var f = r(this).startOf(t).add(1, t).date(n), s = r(this).endOf(e); if (f.isBefore(s)) return 1; } var a = r(this).startOf(t).date(n).startOf(e).subtract(1, "millisecond"), o = this.diff(a, e, !0); return o < 0 ? r(this).startOf("week").week() : Math.ceil(o); }, f.weeks = function (e) { return void 0 === e && (e = null), this.week(e); }; }; }); })(weekOfYear$1); var weekOfYear = weekOfYear$1.exports; var weekYear$1 = {exports: {}}; (function (module, exports) { !function (e, t) { module.exports = t() ; }(_commonjsHelpers.commonjsGlobal, function () { return function (e, t) { t.prototype.weekYear = function () { var e = this.month(), t = this.week(), n = this.year(); return 1 === t && 11 === e ? n + 1 : 0 === e && t >= 52 ? n - 1 : n; }; }; }); })(weekYear$1); var weekYear = weekYear$1.exports; var localeData$1 = {exports: {}}; (function (module, exports) { !function (n, e) { module.exports = e() ; }(_commonjsHelpers.commonjsGlobal, function () { return function (n, e, t) { var r = e.prototype, o = function o(n) { return n && (n.indexOf ? n : n.s); }, u = function u(n, e, t, r, _u) { var i = n.name ? n : n.$locale(), a = o(i[e]), s = o(i[t]), f = a || s.map(function (n) { return n.slice(0, r); }); if (!_u) return f; var d = i.weekStart; return f.map(function (n, e) { return f[(e + (d || 0)) % 7]; }); }, i = function i() { return t.Ls[t.locale()]; }, a = function a(n, e) { return n.formats[e] || function (n) { return n.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g, function (n, e, t) { return e || t.slice(1); }); }(n.formats[e.toUpperCase()]); }, s = function s() { var n = this; return { months: function months(e) { return e ? e.format("MMMM") : u(n, "months"); }, monthsShort: function monthsShort(e) { return e ? e.format("MMM") : u(n, "monthsShort", "months", 3); }, firstDayOfWeek: function firstDayOfWeek() { return n.$locale().weekStart || 0; }, weekdays: function weekdays(e) { return e ? e.format("dddd") : u(n, "weekdays"); }, weekdaysMin: function weekdaysMin(e) { return e ? e.format("dd") : u(n, "weekdaysMin", "weekdays", 2); }, weekdaysShort: function weekdaysShort(e) { return e ? e.format("ddd") : u(n, "weekdaysShort", "weekdays", 3); }, longDateFormat: function longDateFormat(e) { return a(n.$locale(), e); }, meridiem: this.$locale().meridiem, ordinal: this.$locale().ordinal }; }; r.localeData = function () { return s.bind(this)(); }, t.localeData = function () { var n = i(); return { firstDayOfWeek: function firstDayOfWeek() { return n.weekStart || 0; }, weekdays: function weekdays() { return t.weekdays(); }, weekdaysShort: function weekdaysShort() { return t.weekdaysShort(); }, weekdaysMin: function weekdaysMin() { return t.weekdaysMin(); }, months: function months() { return t.months(); }, monthsShort: function monthsShort() { return t.monthsShort(); }, longDateFormat: function longDateFormat(e) { return a(n, e); }, meridiem: n.meridiem, ordinal: n.ordinal }; }, t.months = function () { return u(i(), "months"); }, t.monthsShort = function () { return u(i(), "monthsShort", "months", 3); }, t.weekdays = function (n) { return u(i(), "weekdays", null, null, n); }, t.weekdaysShort = function (n) { return u(i(), "weekdaysShort", "weekdays", 3, n); }, t.weekdaysMin = function (n) { return u(i(), "weekdaysMin", "weekdays", 2, n); }; }; }); })(localeData$1); var localeData = localeData$1.exports; var quarterOfYear$1 = {exports: {}}; (function (module, exports) { !function (t, n) { module.exports = n() ; }(_commonjsHelpers.commonjsGlobal, function () { var t = "month", n = "quarter"; return function (e, i) { var r = i.prototype; r.quarter = function (t) { return this.$utils().u(t) ? Math.ceil((this.month() + 1) / 3) : this.month(this.month() % 3 + 3 * (t - 1)); }; var s = r.add; r.add = function (e, i) { return e = Number(e), this.$utils().p(i) === n ? this.add(3 * e, t) : s.bind(this)(e, i); }; var u = r.startOf; r.startOf = function (e, i) { var r = this.$utils(), s = !!r.u(i) || i; if (r.p(e) === n) { var o = this.quarter() - 1; return s ? this.month(3 * o).startOf(t).startOf("day") : this.month(3 * o + 2).endOf(t).endOf("day"); } return u.bind(this)(e, i); }; }; }); })(quarterOfYear$1); var quarterOfYear = quarterOfYear$1.exports; function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty__default["default"](e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } dayjs__default["default"].extend(weekOfYear); dayjs__default["default"].extend(weekYear); dayjs__default["default"].extend(localeData); dayjs__default["default"].extend(quarterOfYear); dayjs__default["default"].extend(advancedFormat.advancedFormat); dayjs__default["default"].extend(customParseFormat.customParseFormat); dayjs__default["default"].extend(dayJsIsBetween); function firstUpperCase(str) { if (!str) return str; return str[0].toUpperCase().concat(str.substring(1, str.length)); } function getFirstDayOfMonth(_ref) { var year = _ref.year, month = _ref.month; return new Date(year, month, 1); } function getDaysInMonth(_ref2) { var year = _ref2.year, month = _ref2.month; return new Date(year, month + 1, 0).getDate(); } function getLastDayOfMonth(_ref3) { var year = _ref3.year, month = _ref3.month; return new Date(year, month, getDaysInMonth({ year: year, month: month })); } function isSameYear(date1, date2) { return date1.getFullYear() === date2.getFullYear(); } function isSameQuarter(date1, date2) { return isSameYear(date1, date2) && dayjs__default["default"](date1).quarter() === dayjs__default["default"](date2).quarter(); } function isSameMonth(date1, date2) { return isSameYear(date1, date2) && date1.getMonth() === date2.getMonth(); } function isSameWeek(date1, date2) { var dayjsLocale = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "zh-cn"; return isSameMonth(date1, date2) && dayjs__default["default"](date1).locale(dayjsLocale).week() === dayjs__default["default"](date2).locale(dayjsLocale).week(); } function isSameDate(date1, date2) { return isSameMonth(date1, date2) && date1.getDate() === date2.getDate(); } function compareAsc(date1, date2) { var d1 = date1.getTime(); var d2 = date2.getTime(); if (d1 < d2) return -1; if (d1 > d2) return 1; return 0; } function isSame(date1, date2) { var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "date"; var dayjsLocale = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "zh-cn"; var func = { isSameYear: isSameYear, isSameQuarter: isSameQuarter, isSameMonth: isSameMonth, isSameWeek: isSameWeek, isSameDate: isSameDate }; return func["isSame".concat(firstUpperCase(type))](date1, date2, dayjsLocale); } function outOfRanges(d, min, max) { return min && compareAsc(d, min) === -1 || max && compareAsc(d, max) === 1; } function getToday() { var now = new Date(); return new Date(now.getFullYear(), now.getMonth(), now.getDate(), 0, 0, 0); } function getDateObj(date) { var tempDate = date; if (!(date instanceof Date)) { tempDate = getToday(); } return { year: tempDate.getFullYear(), month: tempDate.getMonth(), date: tempDate.getDate(), hours: tempDate.getHours(), minutes: tempDate.getMinutes(), seconds: tempDate.getSeconds(), milliseconds: tempDate.getMilliseconds(), meridiem: tempDate.getHours() > 11 ? "PM" : "AM" }; } function setDateTime(date, hours, minutes, seconds, milliseconds) { return dayjs__default["default"](date).hour(hours).minute(minutes).second(seconds).millisecond(milliseconds).toDate(); } function subtractMonth(date, num) { return dayjs__default["default"](date).subtract(num, "month").toDate(); } function addMonth(date, num) { return dayjs__default["default"](date).add(num, "month").toDate(); } function getWeeks(_ref4, _ref5) { var year = _ref4.year, month = _ref4.month; var firstDayOfWeek = _ref5.firstDayOfWeek, _ref5$showWeekOfYear = _ref5.showWeekOfYear, showWeekOfYear = _ref5$showWeekOfYear === void 0 ? false : _ref5$showWeekOfYear, _ref5$disableDate = _ref5.disableDate, disableDate = _ref5$disableDate === void 0 ? function () { return false; } : _ref5$disableDate, minDate = _ref5.minDate, maxDate = _ref5.maxDate, _ref5$dayjsLocale = _ref5.dayjsLocale, dayjsLocale = _ref5$dayjsLocale === void 0 ? "zh-cn" : _ref5$dayjsLocale, _ref5$cancelRangeSele = _ref5.cancelRangeSelectLimit, cancelRangeSelectLimit = _ref5$cancelRangeSele === void 0 ? false : _ref5$cancelRangeSele; var prependDay = getFirstDayOfMonth({ year: year, month: month }); var appendDay = getLastDayOfMonth({ year: year, month: month }); var maxDays = getDaysInMonth({ year: year, month: month }); var daysArr = []; var i = 1; var today = getToday(); for (i; i <= maxDays; i++) { var currentDay = new Date(year, month, i); daysArr.push({ text: i, active: false, value: currentDay, disabled: isFunction__default["default"](disableDate) && disableDate(currentDay) || !cancelRangeSelectLimit && outOfRanges(currentDay, minDate, maxDate), now: isSame(today, currentDay), firstDayOfMonth: i === 1, lastDayOfMonth: i === maxDays, type: "current-month", dayjsObj: dayjs__default["default"](currentDay).locale(dayjsLocale) }); } if (prependDay.getDay() !== firstDayOfWeek) { prependDay.setDate(0); while (true) { daysArr.unshift({ text: prependDay.getDate().toString(), active: false, value: new Date(prependDay), disabled: isFunction__default["default"](disableDate) && disableDate(prependDay) || !cancelRangeSelectLimit && outOfRanges(prependDay, minDate, maxDate), additional: true, type: "prev-month", dayjsObj: dayjs__default["default"](prependDay).locale(dayjsLocale) }); prependDay.setDate(prependDay.getDate() - 1); if (prependDay.getDay() === Math.abs(firstDayOfWeek + 6) % 7) break; } } var LEN = 42; while (daysArr.length < LEN) { appendDay.setDate(appendDay.getDate() + 1); daysArr.push({ text: appendDay.getDate(), active: false, value: new Date(appendDay), disabled: isFunction__default["default"](disableDate) && disableDate(appendDay) || !cancelRangeSelectLimit && outOfRanges(appendDay, minDate, maxDate), additional: true, type: "next-month", dayjsObj: dayjs__default["default"](appendDay).locale(dayjsLocale) }); } var dataList = chunk__default["default"](daysArr, 7); if (showWeekOfYear) { dataList.forEach(function (d) { d.unshift(_objectSpread(_objectSpread({}, d[0]), {}, { active: false, value: d[0].value, text: dayjs__default["default"](d[0].value).locale(dayjsLocale).week(), dayjsObj: dayjs__default["default"](d[0].value).locale(dayjsLocale) })); }); } return dataList; } function getQuarters(year, _ref6) { var _ref6$disableDate = _ref6.disableDate, disableDate = _ref6$disableDate === void 0 ? function () { return false; } : _ref6$disableDate, minDate = _ref6.minDate, maxDate = _ref6.maxDate, quarterLocal = _ref6.quarterLocal, _ref6$dayjsLocale = _ref6.dayjsLocale, dayjsLocale = _ref6$dayjsLocale === void 0 ? "zh-cn" : _ref6$dayjsLocale, _ref6$cancelRangeSele = _ref6.cancelRangeSelectLimit, cancelRangeSelectLimit = _ref6$cancelRangeSele === void 0 ? false : _ref6$cancelRangeSele; var quarterArr = []; var today = getToday(); for (var i = 1; i <= 4; i++) { var date = dayjs__default["default"](new Date(year, 0)).quarter(i).toDate(); quarterArr.push({ value: date, now: isSame(date, today, "quarter"), disabled: isFunction__default["default"](disableDate) && disableDate(date) || !cancelRangeSelectLimit && outOfRanges(date, minDate, maxDate), active: false, text: quarterLocal[i - 1], dayjsObj: dayjs__default["default"](date).locale(dayjsLocale) }); } return chunk__default["default"](quarterArr, 4); } function getYears(year, _ref7) { var _ref7$disableDate = _ref7.disableDate, disableDate = _ref7$disableDate === void 0 ? function () { return false; } : _ref7$disableDate, minDate = _ref7.minDate, maxDate = _ref7.maxDate, _ref7$dayjsLocale = _ref7.dayjsLocale, dayjsLocale = _ref7$dayjsLocale === void 0 ? "zh-cn" : _ref7$dayjsLocale, _ref7$cancelRangeSele = _ref7.cancelRangeSelectLimit, cancelRangeSelectLimit = _ref7$cancelRangeSele === void 0 ? false : _ref7$cancelRangeSele; var startYear = parseInt((year / 10).toString(), 10) * 10; var endYear = startYear + 9; var yearArr = []; var today = getToday(); for (var i = startYear; i <= endYear; i++) { var date = new Date(i, 1); yearArr.push({ value: date, now: isSame(date, today, "year"), disabled: isFunction__default["default"](disableDate) && disableDate(date) || !cancelRangeSelectLimit && outOfRanges(date, minDate, maxDate), active: false, text: "".concat(date.getFullYear()), dayjsObj: dayjs__default["default"](date).locale(dayjsLocale) }); } return chunk__default["default"](yearArr, 3); } function getMonths(year, params) { var _params$disableDate = params.disableDate, disableDate = _params$disableDate === void 0 ? function () { return false; } : _params$disableDate, minDate = params.minDate, maxDate = params.maxDate, monthLocal = params.monthLocal, _params$dayjsLocale = params.dayjsLocale, dayjsLocale = _params$dayjsLocale === void 0 ? "zh-cn" : _params$dayjsLocale, _params$cancelRangeSe = params.cancelRangeSelectLimit, cancelRangeSelectLimit = _params$cancelRangeSe === void 0 ? false : _params$cancelRangeSe; var MonthArr = []; var today = getToday(); for (var i = 0; i <= 11; i++) { var date = new Date(year, i); MonthArr.push({ value: date, now: isSame(date, today, "month"), disabled: isFunction__default["default"](disableDate) && disableDate(date) || !cancelRangeSelectLimit && outOfRanges(date, minDate, maxDate), active: false, text: monthLocal[date.getMonth()], dayjsObj: dayjs__default["default"](date).locale(dayjsLocale) }); } return chunk__default["default"](MonthArr, 3); } function flagActive(data, _ref8) { var args = _extends__default["default"]({}, (_objectDestructuringEmpty__default["default"](_ref8), _ref8)); var start = args.start, end = args.end, hoverStart = args.hoverStart, hoverEnd = args.hoverEnd, _args$type = args.type, type = _args$type === void 0 ? "date" : _args$type, _args$isRange = args.isRange, isRange = _args$isRange === void 0 ? false : _args$isRange, value = args.value, _args$multiple = args.multiple, multiple = _args$multiple === void 0 ? false : _args$multiple; if (type === "week") return data; if (!isRange) { return data.map(function (row) { return row.map(function (item) { var _item = item; if (multiple) { var _value$some; _item.active = value === null || value === void 0 || (_value$some = value.some) === null || _value$some === void 0 ? void 0 : _value$some.call(value, function (val) { return isSame(dayjs__default["default"](val).toDate(), _item.value, type) && !_item.additional; }); } else { _item.active = start && isSame(item.value, start, type) && !_item.additional; } return _item; }); }); } return data.map(function (row) { return row.map(function (item) { var _item = item; var date = item.value; var isStart = start && isSame(start, date, type); var isHoverStart = hoverStart && isSame(hoverStart, date, type); var isEnd = end && isSame(end, date, type); var isHoverEnd = hoverEnd && isSame(hoverEnd, date, type); _item.active = (isStart || isEnd) && !_item.additional; if (start && end) { _item.highlight = dayjs__default["default"](date).isBetween(start, end, type, "[]") && !_item.additional; _item.startOfRange = isStart; _item.endOfRange = isEnd; } if (hoverStart && hoverEnd) { _item.hoverHighlight = dayjs__default["default"](date).isBetween(hoverStart, hoverEnd, type, "[]") && !_item.additional; _item.hoverStartOfRange = isHoverStart; _item.hoverEndOfRange = isHoverEnd; } return _item; }); }); } function extractTimeFormat() { var dateFormat = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ""; return dateFormat.replace(/\W?Y{2,4}|\W?D{1,2}|\W?Do|\W?d{1,4}|\W?M{1,4}|\W?y{2,4}/g, "").trim(); } function extractTimeObj() { var timeFormat = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ""; var matchedMeridiem = timeFormat.match(/[ap]m/i) || [""]; var timeReg = /\d{1,2}(:\d{1,2})?(:\d{1,2})?(:\d{1,3})?/; var matchedTimeStr = timeFormat.match(timeReg) || ["0:0:0:0"]; var _matchedTimeStr$0$spl = matchedTimeStr[0].split(":"), _matchedTimeStr$0$spl2 = _slicedToArray__default["default"](_matchedTimeStr$0$spl, 4), _matchedTimeStr$0$spl3 = _matchedTimeStr$0$spl2[0], hours = _matchedTimeStr$0$spl3 === void 0 ? 0 : _matchedTimeStr$0$spl3, _matchedTimeStr$0$spl4 = _matchedTimeStr$0$spl2[1], minutes = _matchedTimeStr$0$spl4 === void 0 ? 0 : _matchedTimeStr$0$spl4, _matchedTimeStr$0$spl5 = _matchedTimeStr$0$spl2[2], seconds = _matchedTimeStr$0$spl5 === void 0 ? 0 : _matchedTimeStr$0$spl5, _matchedTimeStr$0$spl6 = _matchedTimeStr$0$spl2[3], milliseconds = _matchedTimeStr$0$spl6 === void 0 ? 0 : _matchedTimeStr$0$spl6; return { hours: +hours, minutes: +minutes, seconds: +seconds, milliseconds: +milliseconds, meridiem: matchedMeridiem[0] }; } function isEnabledDate(_ref9) { var value = _ref9.value, disableDate = _ref9.disableDate, mode = _ref9.mode, format = _ref9.format; if (!disableDate) return true; var availableMode = mode === "quarter" ? "date" : mode; var isEnabled = true; if (isFunction__default["default"](disableDate)) { return !disableDate(value); } if (Array.isArray(disableDate)) { var formattedDisabledDate = disableDate.map(function (item) { return parseToDayjs(item, format); }); var isIncludes = formattedDisabledDate.some(function (item) { return item.isSame(dayjs__default["default"](value)); }); return !isIncludes; } var from = disableDate.from, to = disableDate.to, before = disableDate.before, after = disableDate.after; if (from && to) { var compareMin = dayjs__default["default"](new Date(from)); var compareMax = dayjs__default["default"](new Date(to)); return !dayjs__default["default"](value).isBetween(compareMin, compareMax, availableMode, "[]"); } var min = before ? new Date(before) : null; var max = after ? new Date(after) : null; if (max && min) { var _compareMin = dayjs__default["default"](new Date(min)); var _compareMax = dayjs__default["default"](new Date(max)); isEnabled = dayjs__default["default"](value).isBetween(_compareMin, _compareMax, availableMode, "[]"); } else if (min) { var _compareMin2 = dayjs__default["default"](new Date(min)); isEnabled = !dayjs__default["default"](value).isBefore(_compareMin2, availableMode); } else if (max) { var _compareMax2 = dayjs__default["default"](new Date(max)); isEnabled = !dayjs__default["default"](value).isAfter(_compareMax2, availableMode); } return isEnabled; } function covertToDate(value, valueType) { return valueType === "time-stamp" ? new Date(value) : dayjs__default["default"](value, valueType).toDate(); } dayjs__default["default"].extend(isoWeeksInYear); dayjs__default["default"].extend(isLeapYear); var TIME_FORMAT = "HH:mm:ss"; function parseToDayjs(value, format, timeOfDay, dayjsLocale) { if (value === "" || value === null) return dayjs__default["default"](); var dateText = value; if (/[w|W]/g.test(format)) { if (!isString__default["default"](dateText)) { dateText = dayjs__default["default"](dateText).locale(dayjsLocale || "zh-cn").format(format); } var yearStr = dateText.split(/[-/.\s]/)[0]; var weekStr = dateText.split(/[-/.\s]/)[1]; var weekFormatStr = format.split(/[-/.\s]/)[1]; var firstWeek = dayjs__default["default"](yearStr, "YYYY").locale(dayjsLocale || "zh-cn").startOf("year"); if (firstWeek.day() > 4 || firstWeek.day() === 0) firstWeek = firstWeek.add(1, "week"); var weekCounts = dayjs__default["default"](yearStr, "YYYY").locale(dayjsLocale || "zh-cn").isoWeeksInYear(); for (var i = 0; i <= weekCounts; i += 1) { var nextWeek = firstWeek.add(i, "week"); if (timeOfDay === "start") nextWeek = nextWeek.subtract(5, "day"); if (nextWeek.format(weekFormatStr) === weekStr) { return nextWeek; } } } if (/Q/g.test(format)) { if (!isString__default["default"](dateText)) { dateText = dayjs__default["default"](dateText).locale(dayjsLocale || "zh-cn").format(format); } var _yearStr = dateText.split(/[-/.\s]/)[0]; var quarterStr = dateText.split(/[-/.\s]/)[1]; var quarterFormatStr = format.split(/[-/.\s]/)[1]; var firstQuarter = dayjs__default["default"](_yearStr, "YYYY").startOf("year"); for (var _i = 0; _i < 4; _i += 1) { var nextQuarter = firstQuarter.add(_i, "quarter"); if (nextQuarter.format(quarterFormatStr) === quarterStr) { return nextQuarter; } } } var result = dayjs__default["default"](dateText, format).isValid() ? dayjs__default["default"](dateText, format) : dayjs__default["default"](dateText); if (!result.isValid()) { _common_js_log_log["default"].error("DatePicker", "Check whether the format\u3001value format is valid.\n value: '".concat(value, "', format: '").concat(format, "'")); return dayjs__default["default"](); } return result; } function formatRange(_ref) { var newDate = _ref.newDate, format = _ref.format, dayjsLocale = _ref.dayjsLocale, targetFormat = _ref.targetFormat, autoSwap = _ref.autoSwap; if (!newDate || !Array.isArray(newDate)) return []; var dayjsDateList = newDate.map(function (d) { return d && parseToDayjs(d, format).locale(dayjsLocale); }); if (autoSwap && dayjsDateList[0] && dayjsDateList[1] && dayjsDateList[0].toDate().getTime() > dayjsDateList[1].toDate().getTime()) { dayjsDateList = [dayjsDateList[1], dayjsDateList[0]]; } if (dayjsDateList.some(function (r) { return r && !r.isValid(); })) { _common_js_log_log["default"].error("DatePicker", "Check whether the value\u3001format\u3001valueType format is valid.\nformat: '".concat(format, "' value: '").concat(newDate, "' valueType: '").concat(targetFormat, "'")); return []; } if (targetFormat === "time-stamp") return dayjsDateList.map(function (da) { return da && da.toDate().getTime(); }); if (targetFormat === "Date") return dayjsDateList.map(function (da) { return da && da.toDate(); }); return dayjsDateList.map(function (da) { return da && da.format(targetFormat || format); }); } function formatSingle(_ref2) { var newDate = _ref2.newDate, format = _ref2.format, targetFormat = _ref2.targetFormat, dayjsLocale = _ref2.dayjsLocale; if (!newDate) return ""; var dayJsDate = parseToDayjs(newDate, format).locale(dayjsLocale); if (!dayJsDate.isValid()) { _common_js_log_log["default"].error("DatePicker", "Check whether the format\u3001value format is valid.\nformat: '".concat(format, "' value: '").concat(newDate, "'")); return ""; } if (targetFormat === "time-stamp") return dayJsDate.toDate().getTime(); if (targetFormat === "Date") return dayJsDate.toDate(); return dayJsDate.format(targetFormat || format); } function isValidDate(value, format) { if (Array.isArray(value)) { return value.every(function (v) { if (v === "") return true; return dayjs__default["default"](v, format).isValid() || dayjs__default["default"](v).isValid(); }); } if (value === "") return true; return dayjs__default["default"](value, format).isValid() || dayjs__default["default"](value).isValid(); } function formatDate(newDate, _ref3) { var format = _ref3.format, targetFormat = _ref3.targetFormat, _ref3$dayjsLocale = _ref3.dayjsLocale, dayjsLocale = _ref3$dayjsLocale === void 0 ? "zh-cn" : _ref3$dayjsLocale, autoSwap = _ref3.autoSwap; var result; if (Array.isArray(newDate)) { result = formatRange({ newDate: newDate, format: format, dayjsLocale: dayjsLocale, targetFormat: targetFormat, autoSwap: autoSwap }); } else { result = formatSingle({ newDate: newDate, format: format, dayjsLocale: dayjsLocale, targetFormat: targetFormat }); } return result; } function calcFormatTime(time, timeFormat) { if (time && timeFormat) { var timeArr = time.split(":"); var timeFormatArr = timeFormat.split(":"); return timeArr.slice(0, timeFormatArr.length).join(":"); } return time; } function formatTime(value, format, timeFormat, defaultTime) { var _result; var result = Array.isArray(value) ? value : [value]; defaultTime = Array.isArray(defaultTime) ? defaultTime : [defaultTime, defaultTime]; result = result.map(function (v, i) { if (v) return dayjs__default["default"](v, typeof v === "string" ? format : void 0).format(timeFormat); return calcFormatTime(defaultTime[i], timeFormat); }); result = result.length ? result : defaultTime.map(function (t) { return calcFormatTime(t, timeFormat); }); return Array.isArray(value) ? result : (_result = result) === null || _result === void 0 ? void 0 : _result[0]; } function getDefaultFormat(_ref4) { var _ref4$mode = _ref4.mode, mode = _ref4$mode === void 0 ? "date" : _ref4$mode, format = _ref4.format, valueType = _ref4.valueType, enableTimePicker = _ref4.enableTimePicker; if (mode === "year") { return { format: format || "YYYY", valueType: valueType || format || "YYYY", timeFormat: TIME_FORMAT }; } if (mode === "month") { return { format: format || "YYYY-MM", valueType: valueType || format || "YYYY-MM", timeFormat: TIME_FORMAT }; } if (mode === "quarter") { return { format: format || "YYYY-[Q]Q", valueType: valueType || format || "YYYY-[Q]Q", timeFormat: TIME_FORMAT }; } if (mode === "week") { return { format: format || "gggg-wo", valueType: valueType || format || "gggg-wo", timeFormat: TIME_FORMAT }; } if (mode === "date") { return { format: format || "YYYY-MM-DD".concat(enableTimePicker ? " HH:mm:ss" : ""), valueType: valueType || format || "YYYY-MM-DD".concat(enableTimePicker ? " HH:mm:ss" : ""), timeFormat: extractTimeFormat(format || "YYYY-MM-DD".concat(enableTimePicker ? " HH:mm:ss" : "")) || TIME_FORMAT }; } _common_js_log_log["default"].error("DatePicker", "Invalid mode: ".concat(mode)); return {}; } function initYearMonthTime(_ref5) { var value = _ref5.value, _ref5$mode = _ref5.mode, mode = _ref5$mode === void 0 ? "date" : _ref5$mode, format = _ref5.format, _ref5$timeFormat = _ref5.timeFormat, timeFormat = _ref5$timeFormat === void 0 ? "HH:mm:ss" : _ref5$timeFormat, enableTimePicker = _ref5.enableTimePicker; var defaultYearMonthTime = { year: [dayjs__default["default"]().year(), dayjs__default["default"]().year()], month: [dayjs__default["default"]().month(), dayjs__default["default"]().month()], time: [dayjs__default["default"]().format(timeFormat), dayjs__default["default"]().format(timeFormat)] }; if (mode === "year") { defaultYearMonthTime.year[1] += 10; } else if (mode === "month" || mode === "quarter") { defaultYearMonthTime.year[1] += 1; } else if ((mode === "date" || mode === "week") && !enableTimePicker) { if (defaultYearMonthTime.month[0] === 11) { defaultYearMonthTime.year[1] += 1; defaultYearMonthTime.month[1] = 0; } else { defaultYearMonthTime.month[1] += 1; } } if (!value || !Array.isArray(value) || !value.length) { return defaultYearMonthTime; } return { year: value.map(function (v) { return parseToDayjs(v, format).year(); }), month: value.map(function (v) { return parseToDayjs(v, format).month(); }), time: value.map(function (v) { return parseToDayjs(v, format).format(timeFormat); }) }; } exports.TIME_FORMAT = TIME_FORMAT; exports.addMonth = addMonth; exports.calcFormatTime = calcFormatTime; exports.covertToDate = covertToDate; exports.extractTimeFormat = extractTimeFormat; exports.extractTimeObj = extractTimeObj; exports.firstUpperCase = firstUpperCase; exports.flagActive = flagActive; exports.formatDate = formatDate; exports.formatTime = formatTime; exports.getDateObj = getDateObj; exports.getDefaultFormat = getDefaultFormat; exports.getMonths = getMonths; exports.getQuarters = getQuarters; exports.getToday = getToday; exports.getWeeks = getWeeks; exports.getYears = getYears; exports.initYearMonthTime = initYearMonthTime; exports.isEnabledDate = isEnabledDate; exports.isSame = isSame; exports.isValidDate = isValidDate; exports.outOfRanges = outOfRanges; exports.parseToDayjs = parseToDayjs; exports.setDateTime = setDateTime; exports.subtractMonth = subtractMonth; //# sourceMappingURL=dep-769819c1.js.map