@anoki/fse-marche-ui
Version:
FSE UI components library
38 lines (37 loc) • 1.23 kB
JavaScript
import d from "./index.es3.js";
function h(i, s) {
const f = (r) => r.toUTC(0, { keepLocalTime: !0 }).startOf("day").valueOf(), a = f(s) - f(i);
return Math.floor(d.fromMillis(a).as("days"));
}
function y(i, s, f) {
const a = [
["years", (e, t) => t.year - e.year],
["quarters", (e, t) => t.quarter - e.quarter + (t.year - e.year) * 4],
["months", (e, t) => t.month - e.month + (t.year - e.year) * 12],
[
"weeks",
(e, t) => {
const u = h(e, t);
return (u - u % 7) / 7;
}
],
["days", h]
], r = {}, o = i;
let l, n;
for (const [e, t] of a)
f.indexOf(e) >= 0 && (l = e, r[e] = t(i, s), n = o.plus(r), n > s ? (r[e]--, i = o.plus(r), i > s && (n = i, r[e]--, i = o.plus(r))) : i = n);
return [i, r, n, l];
}
function O(i, s, f, a) {
let [r, o, l, n] = y(i, s, f);
const e = s - r, t = f.filter(
(m) => ["hours", "minutes", "seconds", "milliseconds"].indexOf(m) >= 0
);
t.length === 0 && (l < s && (l = r.plus({ [n]: 1 })), l !== r && (o[n] = (o[n] || 0) + e / (l - r)));
const u = d.fromObject(o, a);
return t.length > 0 ? d.fromMillis(e, a).shiftTo(...t).plus(u) : u;
}
export {
O as default
};
//# sourceMappingURL=index.es126.js.map