You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
308 lines
11 KiB
308 lines
11 KiB
!(function (t, e) { |
|
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = e() : typeof define === 'function' |
|
&& define.amd ? define(e) : t.dayjs = e() |
|
}(this, () => { |
|
'use strict' |
|
|
|
const t = 'millisecond' |
|
const e = 'second' |
|
const n = 'minute' |
|
const r = 'hour' |
|
const i = 'day' |
|
const s = 'week' |
|
const u = 'month' |
|
const a = 'quarter' |
|
const o = 'year' |
|
const f = 'date' |
|
const h = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d+)?$/ |
|
const c = /\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g |
|
const d = { |
|
name: 'en', |
|
weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'), |
|
months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_') |
|
} |
|
const $ = function (t, e, n) { |
|
const r = String(t) |
|
return !r || r.length >= e ? t : `${Array(e + 1 - r.length).join(n)}${t}` |
|
} |
|
const l = { |
|
s: $, |
|
z(t) { |
|
const e = -t.utcOffset() |
|
const n = Math.abs(e) |
|
const r = Math.floor(n / 60) |
|
const i = n % 60 |
|
return `${(e <= 0 ? '+' : '-') + $(r, 2, '0')}:${$(i, 2, '0')}` |
|
}, |
|
m: function t(e, n) { |
|
if (e.date() < n.date()) return -t(n, e) |
|
const r = 12 * (n.year() - e.year()) + (n.month() - e.month()) |
|
const i = e.clone().add(r, u) |
|
const s = n - i < 0 |
|
const a = e.clone().add(r + (s ? -1 : 1), u) |
|
return +(-(r + (n - i) / (s ? i - a : a - i)) || 0) |
|
}, |
|
a(t) { |
|
return t < 0 ? Math.ceil(t) || 0 : Math.floor(t) |
|
}, |
|
p(h) { |
|
return { |
|
M: u, |
|
y: o, |
|
w: s, |
|
d: i, |
|
D: f, |
|
h: r, |
|
m: n, |
|
s: e, |
|
ms: t, |
|
Q: a |
|
}[h] || String(h || '').toLowerCase().replace(/s$/, '') |
|
}, |
|
u(t) { |
|
return void 0 === t |
|
} |
|
} |
|
let y = 'en' |
|
const M = {} |
|
M[y] = d |
|
const m = function (t) { |
|
return t instanceof S |
|
} |
|
const D = function (t, e, n) { |
|
let r |
|
if (!t) return y |
|
if (typeof t === 'string') M[t] && (r = t), e && (M[t] = e, r = t) |
|
else { |
|
const i = t.name |
|
M[i] = t, r = i |
|
} |
|
return !n && r && (y = r), r || !n && y |
|
} |
|
const v = function (t, e) { |
|
if (m(t)) return t.clone() |
|
const n = typeof e === 'object' ? e : {} |
|
return n.date = t, n.args = arguments, new S(n) |
|
} |
|
const g = l |
|
g.l = D, g.i = m, g.w = function (t, e) { |
|
return v(t, { |
|
locale: e.$L, |
|
utc: e.$u, |
|
x: e.$x, |
|
$offset: e.$offset |
|
}) |
|
} |
|
var S = (function () { |
|
function d(t) { |
|
this.$L = D(t.locale, null, !0), this.parse(t) |
|
} |
|
const $ = d.prototype |
|
return $.parse = function (t) { |
|
this.$d = (function (t) { |
|
const e = t.date |
|
const n = t.utc |
|
if (e === null) return new Date(NaN) |
|
if (g.u(e)) return new Date() |
|
if (e instanceof Date) return new Date(e) |
|
if (typeof e === 'string' && !/Z$/i.test(e)) { |
|
const r = e.match(h) |
|
if (r) { |
|
const i = r[2] - 1 || 0 |
|
const s = (r[7] || '0').substring(0, 3) |
|
return n ? new Date(Date.UTC(r[1], i, r[3] || 1, r[4] || 0, r[5] || 0, r[6] || 0, s)) : new Date(r[1], i, r[3] |
|
|| 1, r[4] || 0, r[5] || 0, r[6] || 0, s) |
|
} |
|
} |
|
return new Date(e) |
|
}(t)), this.$x = t.x || {}, this.init() |
|
}, $.init = function () { |
|
const t = this.$d |
|
this.$y = t.getFullYear(), this.$M = t.getMonth(), this.$D = t.getDate(), this.$W = t.getDay(), this.$H = t.getHours(), |
|
this.$m = t.getMinutes(), this.$s = t.getSeconds(), this.$ms = t.getMilliseconds() |
|
}, $.$utils = function () { |
|
return g |
|
}, $.isValid = function () { |
|
return !(this.$d.toString() === 'Invalid Date') |
|
}, $.isSame = function (t, e) { |
|
const n = v(t) |
|
return this.startOf(e) <= n && n <= this.endOf(e) |
|
}, $.isAfter = function (t, e) { |
|
return v(t) < this.startOf(e) |
|
}, $.isBefore = function (t, e) { |
|
return this.endOf(e) < v(t) |
|
}, $.$g = function (t, e, n) { |
|
return g.u(t) ? this[e] : this.set(n, t) |
|
}, $.unix = function () { |
|
return Math.floor(this.valueOf() / 1e3) |
|
}, $.valueOf = function () { |
|
return this.$d.getTime() |
|
}, $.startOf = function (t, a) { |
|
const h = this |
|
const c = !!g.u(a) || a |
|
const d = g.p(t) |
|
const $ = function (t, e) { |
|
const n = g.w(h.$u ? Date.UTC(h.$y, e, t) : new Date(h.$y, e, t), h) |
|
return c ? n : n.endOf(i) |
|
} |
|
const l = function (t, e) { |
|
return g.w(h.toDate()[t].apply(h.toDate('s'), (c ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(e)), h) |
|
} |
|
const y = this.$W |
|
const M = this.$M |
|
const m = this.$D |
|
const D = `set${this.$u ? 'UTC' : ''}` |
|
switch (d) { |
|
case o: |
|
return c ? $(1, 0) : $(31, 11) |
|
case u: |
|
return c ? $(1, M) : $(0, M + 1) |
|
case s: |
|
var v = this.$locale().weekStart || 0 |
|
var S = (y < v ? y + 7 : y) - v |
|
return $(c ? m - S : m + (6 - S), M) |
|
case i: |
|
case f: |
|
return l(`${D}Hours`, 0) |
|
case r: |
|
return l(`${D}Minutes`, 1) |
|
case n: |
|
return l(`${D}Seconds`, 2) |
|
case e: |
|
return l(`${D}Milliseconds`, 3) |
|
default: |
|
return this.clone() |
|
} |
|
}, $.endOf = function (t) { |
|
return this.startOf(t, !1) |
|
}, $.$set = function (s, a) { |
|
let h; const c = g.p(s) |
|
const d = `set${this.$u ? 'UTC' : ''}` |
|
const $ = (h = {}, h[i] = `${d}Date`, h[f] = `${d}Date`, h[u] = `${d}Month`, h[o] = `${d}FullYear`, h[r] = `${d}Hours`, |
|
h[n] = `${d}Minutes`, h[e] = `${d}Seconds`, h[t] = `${d}Milliseconds`, h)[c] |
|
const l = c === i ? this.$D + (a - this.$W) : a |
|
if (c === u || c === o) { |
|
const y = this.clone().set(f, 1) |
|
y.$d[$](l), y.init(), this.$d = y.set(f, Math.min(this.$D, y.daysInMonth())).$d |
|
} else $ && this.$d[$](l) |
|
return this.init(), this |
|
}, $.set = function (t, e) { |
|
return this.clone().$set(t, e) |
|
}, $.get = function (t) { |
|
return this[g.p(t)]() |
|
}, $.add = function (t, a) { |
|
let f; const |
|
h = this |
|
t = Number(t) |
|
const c = g.p(a) |
|
const d = function (e) { |
|
const n = v(h) |
|
return g.w(n.date(n.date() + Math.round(e * t)), h) |
|
} |
|
if (c === u) return this.set(u, this.$M + t) |
|
if (c === o) return this.set(o, this.$y + t) |
|
if (c === i) return d(1) |
|
if (c === s) return d(7) |
|
const $ = (f = {}, f[n] = 6e4, f[r] = 36e5, f[e] = 1e3, f)[c] || 1 |
|
const l = this.$d.getTime() + t * $ |
|
return g.w(l, this) |
|
}, $.subtract = function (t, e) { |
|
return this.add(-1 * t, e) |
|
}, $.format = function (t) { |
|
const e = this |
|
if (!this.isValid()) return 'Invalid Date' |
|
const n = t || 'YYYY-MM-DDTHH:mm:ssZ' |
|
const r = g.z(this) |
|
const i = this.$locale() |
|
const s = this.$H |
|
const u = this.$m |
|
const a = this.$M |
|
const o = i.weekdays |
|
const f = i.months |
|
const h = function (t, r, i, s) { |
|
return t && (t[r] || t(e, n)) || i[r].substr(0, s) |
|
} |
|
const d = function (t) { |
|
return g.s(s % 12 || 12, t, '0') |
|
} |
|
const $ = i.meridiem || function (t, e, n) { |
|
const r = t < 12 ? 'AM' : 'PM' |
|
return n ? r.toLowerCase() : r |
|
} |
|
const l = { |
|
YY: String(this.$y).slice(-2), |
|
YYYY: this.$y, |
|
M: a + 1, |
|
MM: g.s(a + 1, 2, '0'), |
|
MMM: h(i.monthsShort, a, f, 3), |
|
MMMM: h(f, a), |
|
D: this.$D, |
|
DD: g.s(this.$D, 2, '0'), |
|
d: String(this.$W), |
|
dd: h(i.weekdaysMin, this.$W, o, 2), |
|
ddd: h(i.weekdaysShort, this.$W, o, 3), |
|
dddd: o[this.$W], |
|
H: String(s), |
|
HH: g.s(s, 2, '0'), |
|
h: d(1), |
|
hh: d(2), |
|
a: $(s, u, !0), |
|
A: $(s, u, !1), |
|
m: String(u), |
|
mm: g.s(u, 2, '0'), |
|
s: String(this.$s), |
|
ss: g.s(this.$s, 2, '0'), |
|
SSS: g.s(this.$ms, 3, '0'), |
|
Z: r |
|
} |
|
return n.replace(c, (t, e) => e || l[t] || r.replace(':', '')) |
|
}, $.utcOffset = function () { |
|
return 15 * -Math.round(this.$d.getTimezoneOffset() / 15) |
|
}, $.diff = function (t, f, h) { |
|
let c; const d = g.p(f) |
|
const $ = v(t) |
|
const l = 6e4 * ($.utcOffset() - this.utcOffset()) |
|
const y = this - $ |
|
let M = g.m(this, $) |
|
return M = (c = {}, c[o] = M / 12, c[u] = M, c[a] = M / 3, c[s] = (y - l) / 6048e5, c[i] = (y - l) / 864e5, c[r] = y / 36e5, c[n] = y / 6e4, c[e] = y / 1e3, c)[d] || y, h ? M : g.a(M) |
|
}, $.daysInMonth = function () { |
|
return this.endOf(u).$D |
|
}, $.$locale = function () { |
|
return M[this.$L] |
|
}, $.locale = function (t, e) { |
|
if (!t) return this.$L |
|
const n = this.clone() |
|
const r = D(t, e, !0) |
|
return r && (n.$L = r), n |
|
}, $.clone = function () { |
|
return g.w(this.$d, this) |
|
}, $.toDate = function () { |
|
return new Date(this.valueOf()) |
|
}, $.toJSON = function () { |
|
return this.isValid() ? this.toISOString() : null |
|
}, $.toISOString = function () { |
|
return this.$d.toISOString() |
|
}, $.toString = function () { |
|
return this.$d.toUTCString() |
|
}, d |
|
}()) |
|
const p = S.prototype |
|
return v.prototype = p, [ |
|
['$ms', t], |
|
['$s', e], |
|
['$m', n], |
|
['$H', r], |
|
['$W', i], |
|
['$M', u], |
|
['$y', o], |
|
['$D', f] |
|
].forEach((t) => { |
|
p[t[1]] = function (e) { |
|
return this.$g(e, t[0], t[1]) |
|
} |
|
}), v.extend = function (t, e) { |
|
return t.$i || (t(e, S, v), t.$i = !0), v |
|
}, v.locale = D, v.isDayjs = m, v.unix = function (t) { |
|
return v(1e3 * t) |
|
}, v.en = M[y], v.Ls = M, v.p = {}, v |
|
}))
|
|
|