ant-design-vue
Version:
An enterprise-class UI design language and Vue-based implementation
45 lines (44 loc) • 1.82 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getLastDay = getLastDay;
exports.getLowerBoundTime = getLowerBoundTime;
exports.setDateTime = setDateTime;
exports.setTime = setTime;
function setTime(generateConfig, date, hour, minute, second) {
let nextTime = generateConfig.setHour(date, hour);
nextTime = generateConfig.setMinute(nextTime, minute);
nextTime = generateConfig.setSecond(nextTime, second);
return nextTime;
}
function setDateTime(generateConfig, date, defaultDate) {
if (!defaultDate) {
return date;
}
let newDate = date;
newDate = generateConfig.setHour(newDate, generateConfig.getHour(defaultDate));
newDate = generateConfig.setMinute(newDate, generateConfig.getMinute(defaultDate));
newDate = generateConfig.setSecond(newDate, generateConfig.getSecond(defaultDate));
return newDate;
}
function getLowerBoundTime(hour, minute, second, hourStep, minuteStep, secondStep) {
const lowerBoundHour = Math.floor(hour / hourStep) * hourStep;
if (lowerBoundHour < hour) {
return [lowerBoundHour, 60 - minuteStep, 60 - secondStep];
}
const lowerBoundMinute = Math.floor(minute / minuteStep) * minuteStep;
if (lowerBoundMinute < minute) {
return [lowerBoundHour, lowerBoundMinute, 60 - secondStep];
}
const lowerBoundSecond = Math.floor(second / secondStep) * secondStep;
return [lowerBoundHour, lowerBoundMinute, lowerBoundSecond];
}
function getLastDay(generateConfig, date) {
const year = generateConfig.getYear(date);
const month = generateConfig.getMonth(date) + 1;
const endDate = generateConfig.getEndDate(generateConfig.getFixedDate(`${year}-${month}-01`));
const lastDay = generateConfig.getDate(endDate);
const monthShow = month < 10 ? `0${month}` : `${month}`;
return `${year}-${monthShow}-${lastDay}`;
}
;