UNPKG

tdesign-react

Version:
93 lines (89 loc) 2.84 kB
/** * tdesign v1.16.2 * (c) 2025 tdesign * @license MIT */ import dayjs from 'dayjs'; var blockName = "calendar"; var controlSectionSize = "medium"; var minYear = 1970; var getDay = function getDay(dt) { var day = dayjs(dt).day(); if (day === 0) { day = 7; } return day; }; var createDateList = function createDateList(year, month, firstDayOfWeek, currentValue, format) { var createCellData = function createCellData(belongTo, isCurrent, date, weekOrder) { var day = getDay(date); return { mode: "month", belongTo: belongTo, isCurrent: isCurrent, day: day, weekOrder: weekOrder, date: date, formattedDate: dayjs(date).format(format), filterDate: null, formattedFilterDate: null, isShowWeekend: true }; }; var monthFirstDay = dayjs("".concat(year, "-").concat(month)); var rowList = []; var list = []; var weekCount = 1; var lastMonthDaysCount = (getDay(monthFirstDay.toDate()) - firstDayOfWeek + 7) % 7; for (var i = 0; i < lastMonthDaysCount; i++) { var dayObj = monthFirstDay.subtract(i + 1, "day"); list.unshift(createCellData(-1, false, dayObj.toDate(), weekCount)); } var monthDaysCount = monthFirstDay.endOf("month").daysInMonth(); for (var _i = 0; _i < monthDaysCount; _i++) { var _dayObj = monthFirstDay.add(_i, "day"); list.push(createCellData(0, currentValue.isSame(_dayObj), _dayObj.toDate(), weekCount)); if (list.length === 7) { rowList.push(list); list = []; weekCount += 1; } } if (list.length) { var monthLastDay = dayjs("".concat(year, "-").concat(month)).endOf("month"); var nextMonthDaysCount = 7 - list.length; for (var _i2 = 0; _i2 < nextMonthDaysCount; _i2++) { var _dayObj2 = monthLastDay.add(_i2 + 1, "day"); list.push(createCellData(1, false, _dayObj2.toDate(), weekCount)); } rowList.push(list); } return rowList; }; var createMonthList = function createMonthList(year, currentValue, format) { var rowNum = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 4; var monthsArr = []; var isCurYear = currentValue.year() === year; var tmpArr = []; for (var i = 1; i <= 12; i++) { var date = new Date(year, i - 1); var curDateMon = parseInt(currentValue.format("M"), 10); var isCurrent = isCurYear && curDateMon === i; tmpArr.push({ mode: "year", isCurrent: isCurrent, date: date, formattedDate: dayjs(date).format(format), filterDate: null, formattedFilterDate: null, isShowWeekend: true }); if (tmpArr.length === rowNum) { monthsArr.push(tmpArr); tmpArr = []; } } return monthsArr; }; export { blockName, controlSectionSize, createDateList, createMonthList, getDay, minYear }; //# sourceMappingURL=_util.js.map