fui-fancyui
Version:
FancyUI Libary
17 lines (16 loc) • 859 B
JavaScript
function l(t) {
const { day: s, monthIndex: r, selectedYear: m, selectedDates: n, selectFromTo: f, handleSwitchFromTo: i } = t, o = new Date(m, r, s.number);
let e = [...n];
if (e[0] && o < e[0] && (e[0] = o), f === "to" && n[0] === void 0 && (i == null || i("from")), f === "from" || f === void 0 ? (e = [o, n[1]], e[1] && o > e[1] && (e[1] = void 0, i && i("to")), i && i("to")) : f === "to" && (e = [n[0], o]), n[0] && n[1] && o.getTime() === n[0].getTime() && o.getTime() === n[1].getTime())
e = [o, void 0], i && i("to");
else if (a(e))
if (g(e)) {
const c = e[1];
c.setDate(c.getDate() + 1), e = [e[0], c];
} else e[0].getTime() > e[1].getTime() && (e[0] = o, e[1] = void 0);
return e;
}
const a = (t) => !!(t[0] && t[1]), g = (t) => t[0] && t[1] && t[0].getTime() === t[1].getTime();
export {
l as selectDayRange
};