UNPKG

vuux

Version:

Vue3 Nuxt3 Nuxt4 组件库

175 lines (174 loc) 5.83 kB
import w from "./en.mjs"; import _ from "./utils.mjs"; import { MS as H, S as k, MIN as b, H as f, W as M, D as y, M as T, Y as h, INVALID_DATE_STRING as Y, DATE as L, MILLISECONDS_A_SECOND as A, MILLISECONDS_A_MINUTE as E, MILLISECONDS_A_HOUR as N, MILLISECONDS_A_DAY as C, MILLISECONDS_A_WEEK as x } from "./constant.mjs"; let p = "en"; const g = {}; g[p] = w; const O = "$isDayjsObject", u = (a) => a && a[O] === !0, D = _, I = (a, n, e) => { let o; if (!a) return p; if (typeof a == "string") { const i = a.toLowerCase(); g[i] && (o = i), n && (g[i] = n, o = i); const m = a.split("-"); if (!o && m.length > 1) return I(m[0]); } else { const { name: i } = a; g[i] = a, o = i; } return !e && o && (p = o), o || !e && p; }, l = (a = {}) => { const n = a.date ? new Date(a.date) : /* @__PURE__ */ new Date(), e = { $d: n, $L: I(a.locale, null, !0), $x: a.x || {}, $u: a.u, $offset: a.$offset, $y: n.getFullYear(), $M: n.getMonth(), $D: n.getDate(), $W: n.getDay(), $H: n.getHours(), $m: n.getMinutes(), $s: n.getSeconds(), $ms: n.getMilliseconds(), [O]: !0 }, o = () => { e.$d = new Date(e.$y, e.$M, e.$D, e.$H, e.$m, e.$s, e.$ms); }; e.year = (t) => t === void 0 ? e.$y : (e.$y = t, o(), e), e.month = (t) => t === void 0 ? e.$M : (e.$M = t, o(), e), e.date = (t) => t === void 0 ? e.$D : (e.$D = t, o(), e), e.hour = (t) => t === void 0 ? e.$H : (e.$H = t, o(), e), e.minute = (t) => t === void 0 ? e.$m : (e.$m = t, o(), e), e.second = (t) => t === void 0 ? e.$s : (e.$s = t, o(), e), e.millisecond = (t) => t === void 0 ? e.$ms : (e.$ms = t, o(), e), e.add = (t, r) => { switch (D.p(r)) { case h: e.year(e.$y + t); break; case T: e.month(e.$M + t); break; case y: e.date(e.$D + t); break; case M: e.date(e.$D + t * 7); break; case f: e.hour(e.$H + t); break; case b: e.minute(e.$m + t); break; case k: e.second(e.$s + t); break; case H: e.millisecond(e.$ms + t); break; } return e; }, e.subtract = (t, r) => e.add(-t, r), e.clone = () => l({ date: e.$d, locale: e.$L, x: e.$x, u: e.$u }); const i = (t, r) => { const s = t.clone(); switch (D.p(r)) { case h: s.month(0).date(1).hour(0).minute(0).second(0).millisecond(0); break; case T: s.date(1).hour(0).minute(0).second(0).millisecond(0); break; case M: { const $ = s.$L.weekStart || 0, d = (s.$W < $ ? s.$W + 7 : s.$W) - $; s.date(s.$D - d).hour(0).minute(0).second(0).millisecond(0); break; } case y: case L: s.hour(0).minute(0).second(0).millisecond(0); break; case f: s.minute(0).second(0).millisecond(0); break; case b: s.second(0).millisecond(0); break; case k: s.millisecond(0); break; } return s; }, m = (t, r) => { const s = i(t, r); switch (D.p(r)) { case h: s.month(11).date(31).hour(23).minute(59).second(59).millisecond(999); break; case T: s.date(new Date(s.year(), s.month() + 1, 0).getDate()).hour(23).minute(59).second(59).millisecond(999); break; case M: s.date(s.$D + 6).hour(23).minute(59).second(59).millisecond(999); break; case y: case L: s.hour(23).minute(59).second(59).millisecond(999); break; case f: s.minute(59).second(59).millisecond(999); break; case b: s.second(59).millisecond(999); break; case k: s.millisecond(999); break; } return s; }; return e.startOf = (t) => i(e, t), e.endOf = (t) => m(e, t), e.isSame = (t, r) => { const s = u(t) ? t : l({ date: t }); return r ? i(e, r).$d.getTime() === i(s, r).$d.getTime() : e.$d.getTime() === s.$d.getTime(); }, e.isBefore = (t, r) => { const s = u(t) ? t : l({ date: t }); return r ? i(e, r).$d.getTime() < i(s, r).$d.getTime() : e.$d.getTime() < s.$d.getTime(); }, e.isAfter = (t, r) => { const s = u(t) ? t : l({ date: t }); return r ? m(e, r).$d.getTime() > m(s, r).$d.getTime() : e.$d.getTime() > s.$d.getTime(); }, e.diff = (t, r, s) => { const $ = u(t) ? t : l({ date: t }), d = e.$d.getTime() - $.$d.getTime(); let c = d; switch (D.p(r)) { case h: c = e.year() - $.year(); break; case T: c = e.month() - $.month() + (e.year() - $.year()) * 12; break; case M: c = d / x; break; case y: c = d / C; break; case f: c = d / N; break; case b: c = d / E; break; case k: c = d / A; break; } return s ? c : D.a(c); }, e.daysInMonth = () => new Date(e.year(), e.month() + 1, 0).getDate(), e.format = (t) => { let s = t || "YYYY-MM-DD HH:mm:ss"; return s = s.replace("YYYY", String(e.year())), s = s.replace("MM", String(e.month() + 1).padStart(2, "0")), s = s.replace("DD", String(e.date()).padStart(2, "0")), s = s.replace("HH", String(e.hour()).padStart(2, "0")), s = s.replace("mm", String(e.minute()).padStart(2, "0")), s = s.replace("ss", String(e.second()).padStart(2, "0")), s; }, e.toDate = () => new Date(e.$d.getTime()), e.toISOString = () => e.$d.toISOString(), e.toJSON = () => e.$d.toString() === Y ? null : e.$d.toISOString(), e.toString = () => e.$d.toUTCString(), e.unix = () => Math.floor(e.$d.getTime() / 1e3), e; }, S = (a, n) => u(a) ? a : l({ date: a, ...n }); S.isDayjs = u; S.locale = I; S.Ls = g; S.extend = (a, n) => (a.$i || (a(n, S), a.$i = !0), S); export { S as default };