鍒濆鎻愪氦锛氱墰鍙暟鎹鐞嗙郴缁?- 鍖呭惈鍚庣Spring Boot鍜屽墠绔疺ue3椤圭洰
This commit is contained in:
134
admin-system/node_modules/element-plus/lib/components/date-picker-panel/src/utils.js
generated
vendored
Normal file
134
admin-system/node_modules/element-plus/lib/components/date-picker-panel/src/utils.js
generated
vendored
Normal file
@@ -0,0 +1,134 @@
|
||||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, '__esModule', { value: true });
|
||||
|
||||
var dayjs = require('dayjs');
|
||||
var shared = require('@vue/shared');
|
||||
var utils = require('../../time-picker/src/utils.js');
|
||||
|
||||
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
||||
|
||||
var dayjs__default = /*#__PURE__*/_interopDefaultLegacy(dayjs);
|
||||
|
||||
const isValidRange = (range) => {
|
||||
if (!shared.isArray(range))
|
||||
return false;
|
||||
const [left, right] = range;
|
||||
return dayjs__default["default"].isDayjs(left) && dayjs__default["default"].isDayjs(right) && dayjs__default["default"](left).isValid() && dayjs__default["default"](right).isValid() && left.isSameOrBefore(right);
|
||||
};
|
||||
const getDefaultValue = (defaultValue, { lang, step = 1, unit, unlinkPanels }) => {
|
||||
let start;
|
||||
if (shared.isArray(defaultValue)) {
|
||||
let [left, right] = defaultValue.map((d) => dayjs__default["default"](d).locale(lang));
|
||||
if (!unlinkPanels) {
|
||||
right = left.add(step, unit);
|
||||
}
|
||||
return [left, right];
|
||||
} else if (defaultValue) {
|
||||
start = dayjs__default["default"](defaultValue);
|
||||
} else {
|
||||
start = dayjs__default["default"]();
|
||||
}
|
||||
start = start.locale(lang);
|
||||
return [start, start.add(step, unit)];
|
||||
};
|
||||
const buildPickerTable = (dimension, rows, {
|
||||
columnIndexOffset,
|
||||
startDate,
|
||||
nextEndDate,
|
||||
now,
|
||||
unit,
|
||||
relativeDateGetter,
|
||||
setCellMetadata,
|
||||
setRowMetadata
|
||||
}) => {
|
||||
for (let rowIndex = 0; rowIndex < dimension.row; rowIndex++) {
|
||||
const row = rows[rowIndex];
|
||||
for (let columnIndex = 0; columnIndex < dimension.column; columnIndex++) {
|
||||
let cell = row[columnIndex + columnIndexOffset];
|
||||
if (!cell) {
|
||||
cell = {
|
||||
row: rowIndex,
|
||||
column: columnIndex,
|
||||
type: "normal",
|
||||
inRange: false,
|
||||
start: false,
|
||||
end: false
|
||||
};
|
||||
}
|
||||
const index = rowIndex * dimension.column + columnIndex;
|
||||
const nextStartDate = relativeDateGetter(index);
|
||||
cell.dayjs = nextStartDate;
|
||||
cell.date = nextStartDate.toDate();
|
||||
cell.timestamp = nextStartDate.valueOf();
|
||||
cell.type = "normal";
|
||||
cell.inRange = !!(startDate && nextStartDate.isSameOrAfter(startDate, unit) && nextEndDate && nextStartDate.isSameOrBefore(nextEndDate, unit)) || !!(startDate && nextStartDate.isSameOrBefore(startDate, unit) && nextEndDate && nextStartDate.isSameOrAfter(nextEndDate, unit));
|
||||
if (startDate == null ? void 0 : startDate.isSameOrAfter(nextEndDate)) {
|
||||
cell.start = !!nextEndDate && nextStartDate.isSame(nextEndDate, unit);
|
||||
cell.end = startDate && nextStartDate.isSame(startDate, unit);
|
||||
} else {
|
||||
cell.start = !!startDate && nextStartDate.isSame(startDate, unit);
|
||||
cell.end = !!nextEndDate && nextStartDate.isSame(nextEndDate, unit);
|
||||
}
|
||||
const isToday = nextStartDate.isSame(now, unit);
|
||||
if (isToday) {
|
||||
cell.type = "today";
|
||||
}
|
||||
setCellMetadata == null ? void 0 : setCellMetadata(cell, { rowIndex, columnIndex });
|
||||
row[columnIndex + columnIndexOffset] = cell;
|
||||
}
|
||||
setRowMetadata == null ? void 0 : setRowMetadata(row);
|
||||
}
|
||||
};
|
||||
const datesInMonth = (date, year, month, lang) => {
|
||||
const firstDay = dayjs__default["default"]().locale(lang).startOf("month").month(month).year(year).hour(date.hour()).minute(date.minute()).second(date.second());
|
||||
const numOfDays = firstDay.daysInMonth();
|
||||
return utils.rangeArr(numOfDays).map((n) => firstDay.add(n, "day").toDate());
|
||||
};
|
||||
const getValidDateOfMonth = (date, year, month, lang, disabledDate) => {
|
||||
const _value = dayjs__default["default"]().year(year).month(month).startOf("month").hour(date.hour()).minute(date.minute()).second(date.second());
|
||||
const _date = datesInMonth(date, year, month, lang).find((date2) => {
|
||||
return !(disabledDate == null ? void 0 : disabledDate(date2));
|
||||
});
|
||||
if (_date) {
|
||||
return dayjs__default["default"](_date).locale(lang);
|
||||
}
|
||||
return _value.locale(lang);
|
||||
};
|
||||
const getValidDateOfYear = (value, lang, disabledDate) => {
|
||||
const year = value.year();
|
||||
if (!(disabledDate == null ? void 0 : disabledDate(value.toDate()))) {
|
||||
return value.locale(lang);
|
||||
}
|
||||
const month = value.month();
|
||||
if (!datesInMonth(value, year, month, lang).every(disabledDate)) {
|
||||
return getValidDateOfMonth(value, year, month, lang, disabledDate);
|
||||
}
|
||||
for (let i = 0; i < 12; i++) {
|
||||
if (!datesInMonth(value, year, i, lang).every(disabledDate)) {
|
||||
return getValidDateOfMonth(value, year, i, lang, disabledDate);
|
||||
}
|
||||
}
|
||||
return value;
|
||||
};
|
||||
const correctlyParseUserInput = (value, format, lang, defaultFormat) => {
|
||||
if (shared.isArray(value)) {
|
||||
return value.map((v) => correctlyParseUserInput(v, format, lang, defaultFormat));
|
||||
}
|
||||
if (shared.isString(value)) {
|
||||
const dayjsValue = (defaultFormat == null ? void 0 : defaultFormat.value) ? dayjs__default["default"](value) : dayjs__default["default"](value, format);
|
||||
if (!dayjsValue.isValid()) {
|
||||
return dayjsValue;
|
||||
}
|
||||
}
|
||||
return dayjs__default["default"](value, format).locale(lang);
|
||||
};
|
||||
|
||||
exports.buildPickerTable = buildPickerTable;
|
||||
exports.correctlyParseUserInput = correctlyParseUserInput;
|
||||
exports.datesInMonth = datesInMonth;
|
||||
exports.getDefaultValue = getDefaultValue;
|
||||
exports.getValidDateOfMonth = getValidDateOfMonth;
|
||||
exports.getValidDateOfYear = getValidDateOfYear;
|
||||
exports.isValidRange = isValidRange;
|
||||
//# sourceMappingURL=utils.js.map
|
||||
Reference in New Issue
Block a user