UNPKG

tdesign-vue-next

Version:
199 lines (191 loc) 7.72 kB
/** * tdesign v1.20.5 * (c) 2026 tdesign * @license MIT */ 'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); require('vue'); require('@babel/runtime/helpers/toConsumableArray'); require('@babel/runtime/helpers/typeof'); require('../../_chunks/dep-585d6c94.js'); var configProvider_hooks_useConfig = require('../../config-provider/hooks/useConfig.js'); require('@babel/runtime/helpers/slicedToArray'); require('../../_chunks/dep-baf36d63.js'); require('@babel/runtime/helpers/defineProperty'); var dayjs = require('dayjs'); var utils = require('../../_chunks/dep-06484635.js'); var isArray = require('../../_chunks/dep-623344fa.js'); var isFunction = require('../../_chunks/dep-2d37d5cd.js'); require('../../_chunks/dep-cd7082a8.js'); require('../../_chunks/dep-c4cfd635.js'); require('../../_chunks/dep-d126d743.js'); require('../../_chunks/dep-96f790a8.js'); require('../../_chunks/dep-a8736751.js'); require('../../_chunks/dep-33b91282.js'); require('../../_chunks/dep-769d7974.js'); require('../../_chunks/dep-1afc7792.js'); require('../../_chunks/dep-8dbc3afe.js'); require('../../_chunks/dep-c2be3f4f.js'); require('../../_chunks/dep-d22c1428.js'); require('../../_chunks/dep-4c389805.js'); require('../../_chunks/dep-b23043e8.js'); require('../../_chunks/dep-4236e391.js'); require('../../_chunks/dep-761a1054.js'); require('../../_chunks/dep-4ba8d64f.js'); require('../../_chunks/dep-68db1aaa.js'); require('../../_chunks/dep-2a3acdc6.js'); require('../../_chunks/dep-34f739da.js'); require('../../_chunks/dep-6b6b1c14.js'); require('../../_chunks/dep-6a34d9fa.js'); require('@babel/runtime/helpers/createClass'); require('@babel/runtime/helpers/classCallCheck'); require('@babel/runtime/helpers/objectDestructuringEmpty'); require('@babel/runtime/helpers/extends'); require('../../_chunks/dep-e1312b93.js'); require('../../_chunks/dep-94b8b846.js'); require('../../_chunks/dep-3129289c.js'); require('../../_chunks/dep-8ed924be.js'); require('../../_chunks/dep-e0c04f67.js'); require('../../_chunks/dep-1f8947c3.js'); require('../../_chunks/dep-d5d74f83.js'); require('../../_chunks/dep-d078611c.js'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var dayjs__default = /*#__PURE__*/_interopDefaultLegacy(dayjs); function useTableData(props) { var _props$firstDayOfWeek; var _useConfig = configProvider_hooks_useConfig.useConfig("datePicker"), globalConfig = _useConfig.globalConfig; var options = { minDate: props.minDate, maxDate: props.maxDate, disableDate: props.disableDate, firstDayOfWeek: (_props$firstDayOfWeek = props.firstDayOfWeek) !== null && _props$firstDayOfWeek !== void 0 ? _props$firstDayOfWeek : globalConfig.value.firstDayOfWeek, monthLocal: globalConfig.value.months, quarterLocal: globalConfig.value.quarters, showWeekOfYear: props.mode === "week", dayjsLocale: globalConfig.value.dayjsLocale, cancelRangeSelectLimit: props.cancelRangeSelectLimit }; var baseDisableDate = options.disableDate; var finalDisableDate = function finalDisableDate(date) { return baseDisableDate ? !!baseDisableDate(date) : false; }; if (isArray.isArray(props.range)) { var _getRangeBounds = utils.getRangeBounds(props.range), rawMin = _getRangeBounds.min, rawMax = _getRangeBounds.max; var rangeMin = rawMin ? new Date(dayjs__default["default"](rawMin).startOf("day").format()) : null; var rangeMax = rawMax ? new Date(dayjs__default["default"](rawMax).endOf("day").format()) : null; var min = rangeMin; var max = rangeMax; if (["date", "week"].includes(props.mode)) { if (min) { options.minDate = options.minDate ? new Date(Math.max(options.minDate.getTime(), min.getTime())) : min; } if (max) { options.maxDate = options.maxDate ? new Date(Math.min(options.maxDate.getTime(), max.getTime())) : max; } } var intervalOverlap = function intervalOverlap(aStart, aEnd, bStart, bEnd) { var s1 = aStart.getTime(); var e1 = aEnd.getTime(); var s2 = bStart ? bStart.getTime() : -Infinity; var e2 = bEnd ? bEnd.getTime() : Infinity; return !(e1 < s2 || s1 > e2); }; finalDisableDate = function finalDisableDate(date) { var base = baseDisableDate ? !!baseDisableDate(date) : false; if (props.mode === "date" || props.mode === "week") { var t = date.getTime(); var aboveMin = min ? t >= min.getTime() : true; var belowMax = max ? t <= max.getTime() : true; var allowed = aboveMin && belowMax; return base || !allowed; } if (props.mode === "month") { var start = new Date(date.getFullYear(), date.getMonth(), 1); var end = new Date(date.getFullYear(), date.getMonth() + 1, 0); end.setHours(23, 59, 59, 999); var _allowed = intervalOverlap(start, end, min, max); return base || !_allowed; } if (props.mode === "quarter") { var startMonth = Math.floor(date.getMonth() / 3) * 3; var _start = new Date(date.getFullYear(), startMonth, 1); var _end = new Date(date.getFullYear(), startMonth + 3, 0); _end.setHours(23, 59, 59, 999); var _allowed2 = intervalOverlap(_start, _end, min, max); return base || !_allowed2; } if (props.mode === "year") { var _start2 = new Date(date.getFullYear(), 0, 1); var _end2 = new Date(date.getFullYear(), 11, 31); _end2.setHours(23, 59, 59, 999); var _allowed3 = intervalOverlap(_start2, _end2, min, max); return base || !_allowed3; } return base; }; } else if (isFunction.isFunction(props.range)) { var allow = props.range; finalDisableDate = function finalDisableDate(date) { var base = baseDisableDate ? !!baseDisableDate(date) : false; if (props.mode === "date" || props.mode === "week") { var disallowedByRange = !allow(date); return base || disallowedByRange; } if (props.mode === "month") { var allowed = utils.monthHasAnyAllowed(props.range, date.getFullYear(), date.getMonth()); return base || !allowed; } if (props.mode === "quarter") { var startMonth = Math.floor(date.getMonth() / 3) * 3; var _allowed4 = false; for (var m = startMonth; m < startMonth + 3; m++) { if (utils.monthHasAnyAllowed(props.range, date.getFullYear(), m)) { _allowed4 = true; break; } } return base || !_allowed4; } if (props.mode === "year") { var _allowed5 = utils.yearHasAnyAllowed(props.range, date.getFullYear()); return base || !_allowed5; } return base; }; } options.disableDate = finalDisableDate; var data = []; if (props.mode === "date") { data = utils.getWeeks({ year: props.year, month: props.month }, options); } else if (props.mode === "week") { data = utils.getWeeks({ year: props.year, month: props.month }, options); } else if (props.mode === "quarter") { data = utils.getQuarters(props.year, options); } else if (props.mode === "month") { data = utils.getMonths(props.year, options); } else if (props.mode === "year") { data = utils.getYears(props.year, options); } return utils.flagActive(data, { start: props.start, end: props.end, hoverStart: props.hoverStart, hoverEnd: props.hoverEnd, type: props.mode, isRange: props.isRange, value: props.value, multiple: props.multiple }); } exports.useTableData = useTableData; //# sourceMappingURL=useTableData.js.map