UNPKG

fui-fancyui

Version:
73 lines (72 loc) 1.62 kB
import h from "../createDayFunction.js"; const M = (r) => { const { monthIdx: n, year: a, selectedDates: i, disabledDateSetting: c, isRangePicking: l, externalMonthWithDays: u, fillAdjacentMonths: D = !0, weekStartsOn: g = 1 // Default is Monday } = r, p = y(n + 1, a); let s = new Date(a, n, 1).getDay() - g; s < 0 && (s += 7); const d = []; let t = []; if (s > 0) { const e = y(n, a); for (let o = 0; o < s; o++) { if (D) { const m = e - s + o + 1; t.push( h({ dayNumber: m, month: n - 1, year: a, selectedDates: i, disabledDateSetting: !0, isRangePicking: l, externalDate: void 0 }) ); } t.push(null); } } for (let e = 1; e <= p; e++) { const o = h({ dayNumber: e, month: n, year: a, selectedDates: i, disabledDateSetting: c, isRangePicking: l, externalDate: u ? u[e - 1] : void 0 }); (e + s - 1) % 7 === 0 && e > 1 && (d.push(t), t = []), t.push(o); } const f = 7 - t.length; if (f > 0) { if (D) for (let e = 1; e <= f; e++) t.push( h({ dayNumber: e, month: n + 1, year: a, selectedDates: i, disabledDateSetting: !0, isRangePicking: l, externalDate: void 0 }) ); } else for (; t.length < 7; ) t.push(null); return d.push(t), d; }, y = (r, n) => new Date(n, r, 0).getDate(); export { M as default };