tdesign-vue-next
Version:
TDesign Component for vue-next
199 lines (191 loc) • 7.72 kB
JavaScript
/**
* tdesign v1.19.2
* (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-35e23c2b.js');
var configProvider_hooks_useConfig = require('../../config-provider/hooks/useConfig.js');
require('@babel/runtime/helpers/slicedToArray');
require('../../_chunks/dep-0989c3be.js');
require('@babel/runtime/helpers/defineProperty');
var dayjs = require('dayjs');
var utils = require('../../_chunks/dep-1035a9b6.js');
var isArray = require('../../_chunks/dep-4cb26289.js');
var isFunction = require('../../_chunks/dep-2dcf9237.js');
require('../../_chunks/dep-4a7162e7.js');
require('../../_chunks/dep-be1af85d.js');
require('../../_chunks/dep-db9c85b1.js');
require('../../_chunks/dep-82fe2026.js');
require('../../_chunks/dep-33b46a52.js');
require('../../_chunks/dep-930a2de5.js');
require('../../_chunks/dep-22dc294c.js');
require('../../_chunks/dep-bf76dead.js');
require('../../_chunks/dep-c3bbd06c.js');
require('../../_chunks/dep-6d87f74d.js');
require('../../_chunks/dep-281f7eb2.js');
require('../../_chunks/dep-f8f7b1af.js');
require('../../_chunks/dep-66d3f30f.js');
require('../../_chunks/dep-e1d22111.js');
require('../../_chunks/dep-754c0523.js');
require('../../_chunks/dep-7076a08a.js');
require('../../_chunks/dep-631750cd.js');
require('../../_chunks/dep-2fc884aa.js');
require('../../_chunks/dep-75d6da05.js');
require('../../_chunks/dep-274369eb.js');
require('../../_chunks/dep-df6e14a0.js');
require('@babel/runtime/helpers/createClass');
require('@babel/runtime/helpers/classCallCheck');
require('@babel/runtime/helpers/objectDestructuringEmpty');
require('@babel/runtime/helpers/extends');
require('../../_chunks/dep-58022b88.js');
require('../../_chunks/dep-9bee89d3.js');
require('../../_chunks/dep-027cd76f.js');
require('../../_chunks/dep-80a41429.js');
require('../../_chunks/dep-484d5d62.js');
require('../../_chunks/dep-4d6191e3.js');
require('../../_chunks/dep-692bdebe.js');
require('../../_chunks/dep-0b92e695.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