welcome-ui
Version:
Customizable design system with react, typescript, tailwindcss and ariakit.
1,973 lines • 225 kB
JavaScript
"use client";
var sn = Object.defineProperty;
var cn = (a, n, t) => n in a ? sn(a, n, { enumerable: !0, configurable: !0, writable: !0, value: t }) : a[n] = t;
var w = (a, n, t) => cn(a, typeof n != "symbol" ? n + "" : n, t);
import * as S from "react";
import f, { useLayoutEffect as Er, cloneElement as Or, createRef as xe, Component as z, useRef as Lt, useCallback as ln, useEffect as un, createElement as dn } from "react";
import { jsxs as pn, jsx as je } from "react/jsx-runtime";
import * as fn from "react-dom";
import hn from "react-dom";
import { A as mn, L as vn, g as Gt, N as gn, B as Dn } from "./floating-ui.dom.browser.min-Bza9K_UR.js";
function Tr(a) {
var n, t, e = "";
if (typeof a == "string" || typeof a == "number") e += a;
else if (typeof a == "object") if (Array.isArray(a)) {
var r = a.length;
for (n = 0; n < r; n++) a[n] && (t = Tr(a[n])) && (e && (e += " "), e += t);
} else for (t in a) a[t] && (e && (e += " "), e += t);
return e;
}
function J() {
for (var a, n, t = 0, e = "", r = arguments.length; t < r; t++) (a = arguments[t]) && (n = Tr(a)) && (e && (e += " "), e += n);
return e;
}
const Nr = 6048e5, wn = 864e5, _t = 6e4, Mt = 36e5, yn = 1e3, zt = Symbol.for("constructDateFrom");
function H(a, n) {
return typeof a == "function" ? a(n) : a && typeof a == "object" && zt in a ? a[zt](n) : a instanceof Date ? new a.constructor(n) : new Date(n);
}
function k(a, n) {
return H(n || a, a);
}
function se(a, n, t) {
const e = k(a, t == null ? void 0 : t.in);
return isNaN(n) ? H((t == null ? void 0 : t.in) || a, NaN) : (n && e.setDate(e.getDate() + n), e);
}
function ce(a, n, t) {
const e = k(a, t == null ? void 0 : t.in);
if (isNaN(n)) return H(a, NaN);
if (!n)
return e;
const r = e.getDate(), o = H(a, e.getTime());
o.setMonth(e.getMonth() + n + 1, 0);
const i = o.getDate();
return r >= i ? o : (e.setFullYear(
o.getFullYear(),
o.getMonth(),
r
), e);
}
function Yr(a, n, t) {
return H(a, +k(a) + n);
}
function bn(a, n, t) {
return Yr(a, n * Mt);
}
let kn = {};
function Ie() {
return kn;
}
function be(a, n) {
var s, c, u, l;
const t = Ie(), e = (n == null ? void 0 : n.weekStartsOn) ?? ((c = (s = n == null ? void 0 : n.locale) == null ? void 0 : s.options) == null ? void 0 : c.weekStartsOn) ?? t.weekStartsOn ?? ((l = (u = t.locale) == null ? void 0 : u.options) == null ? void 0 : l.weekStartsOn) ?? 0, r = k(a, n == null ? void 0 : n.in), o = r.getDay(), i = (o < e ? 7 : 0) + o - e;
return r.setDate(r.getDate() - i), r.setHours(0, 0, 0, 0), r;
}
function Ae(a, n) {
return be(a, { ...n, weekStartsOn: 1 });
}
function Rr(a, n) {
const t = k(a, n == null ? void 0 : n.in), e = t.getFullYear(), r = H(t, 0);
r.setFullYear(e + 1, 0, 4), r.setHours(0, 0, 0, 0);
const o = Ae(r), i = H(t, 0);
i.setFullYear(e, 0, 4), i.setHours(0, 0, 0, 0);
const s = Ae(i);
return t.getTime() >= o.getTime() ? e + 1 : t.getTime() >= s.getTime() ? e : e - 1;
}
function ft(a) {
const n = k(a), t = new Date(
Date.UTC(
n.getFullYear(),
n.getMonth(),
n.getDate(),
n.getHours(),
n.getMinutes(),
n.getSeconds(),
n.getMilliseconds()
)
);
return t.setUTCFullYear(n.getFullYear()), +a - +t;
}
function ke(a, ...n) {
const t = H.bind(
null,
n.find((e) => typeof e == "object")
);
return n.map(t);
}
function Ye(a, n) {
const t = k(a, n == null ? void 0 : n.in);
return t.setHours(0, 0, 0, 0), t;
}
function He(a, n, t) {
const [e, r] = ke(
t == null ? void 0 : t.in,
a,
n
), o = Ye(e), i = Ye(r), s = +o - ft(o), c = +i - ft(i);
return Math.round((s - c) / wn);
}
function _n(a, n) {
const t = Rr(a, n), e = H(a, 0);
return e.setFullYear(t, 0, 4), e.setHours(0, 0, 0, 0), Ae(e);
}
function Ft(a, n, t) {
const e = k(a, t == null ? void 0 : t.in);
return e.setTime(e.getTime() + n * _t), e;
}
function Bt(a, n, t) {
return ce(a, n * 3, t);
}
function Mn(a, n, t) {
return Yr(a, n * 1e3);
}
function ht(a, n, t) {
return se(a, n * 7, t);
}
function ve(a, n, t) {
return ce(a, n * 12, t);
}
function Zt(a, n) {
let t, e = n == null ? void 0 : n.in;
return a.forEach((r) => {
!e && typeof r == "object" && (e = H.bind(null, r));
const o = k(r, e);
(!t || t < o || isNaN(+o)) && (t = o);
}), H(e, t || NaN);
}
function Jt(a, n) {
let t, e = n == null ? void 0 : n.in;
return a.forEach((r) => {
!e && typeof r == "object" && (e = H.bind(null, r));
const o = k(r, e);
(!t || t > o || isNaN(+o)) && (t = o);
}), H(e, t || NaN);
}
function Cn(a, n, t) {
const [e, r] = ke(
t == null ? void 0 : t.in,
a,
n
);
return +Ye(e) == +Ye(r);
}
function ge(a) {
return a instanceof Date || typeof a == "object" && Object.prototype.toString.call(a) === "[object Date]";
}
function mt(a) {
return !(!ge(a) && typeof a != "number" || isNaN(+k(a)));
}
function vt(a, n, t) {
const [e, r] = ke(
t == null ? void 0 : t.in,
a,
n
), o = e.getFullYear() - r.getFullYear(), i = e.getMonth() - r.getMonth();
return o * 12 + i;
}
function Te(a, n) {
const t = k(a, n == null ? void 0 : n.in);
return Math.trunc(t.getMonth() / 3) + 1;
}
function gt(a, n, t) {
const [e, r] = ke(
t == null ? void 0 : t.in,
a,
n
), o = e.getFullYear() - r.getFullYear(), i = Te(e) - Te(r);
return o * 4 + i;
}
function Dt(a, n, t) {
const [e, r] = ke(
t == null ? void 0 : t.in,
a,
n
);
return e.getFullYear() - r.getFullYear();
}
function Sn(a, n, t) {
const [e, r] = ke(
t == null ? void 0 : t.in,
a,
n
), o = er(e, r), i = Math.abs(
He(e, r)
);
e.setDate(e.getDate() - o * i);
const s = +(er(e, r) === -o), c = o * (i - s);
return c === 0 ? 0 : c;
}
function er(a, n) {
const t = a.getFullYear() - n.getFullYear() || a.getMonth() - n.getMonth() || a.getDate() - n.getDate() || a.getHours() - n.getHours() || a.getMinutes() - n.getMinutes() || a.getSeconds() - n.getSeconds() || a.getMilliseconds() - n.getMilliseconds();
return t < 0 ? -1 : t > 0 ? 1 : t;
}
function Ir(a, n) {
const t = k(a, n == null ? void 0 : n.in);
return t.setHours(23, 59, 59, 999), t;
}
function Lr(a, n) {
const t = k(a, n == null ? void 0 : n.in), e = t.getMonth();
return t.setFullYear(t.getFullYear(), e + 1, 0), t.setHours(23, 59, 59, 999), t;
}
function Wt(a, n) {
const t = k(a, n == null ? void 0 : n.in), e = t.getMonth(), r = e - e % 3;
return t.setMonth(r, 1), t.setHours(0, 0, 0, 0), t;
}
function Fr(a, n) {
const t = k(a, n == null ? void 0 : n.in);
return t.setDate(1), t.setHours(0, 0, 0, 0), t;
}
function Wr(a, n) {
const t = k(a, n == null ? void 0 : n.in), e = t.getFullYear();
return t.setFullYear(e + 1, 0, 0), t.setHours(23, 59, 59, 999), t;
}
function Ct(a, n) {
const t = k(a, n == null ? void 0 : n.in);
return t.setFullYear(t.getFullYear(), 0, 1), t.setHours(0, 0, 0, 0), t;
}
function xn(a, n) {
var s, c;
const t = Ie(), e = t.weekStartsOn ?? ((c = (s = t.locale) == null ? void 0 : s.options) == null ? void 0 : c.weekStartsOn) ?? 0, r = k(a, n == null ? void 0 : n.in), o = r.getDay(), i = (o < e ? -7 : 0) + 6 - (o - e);
return r.setDate(r.getDate() + i), r.setHours(23, 59, 59, 999), r;
}
const Pn = {
lessThanXSeconds: {
one: "less than a second",
other: "less than {{count}} seconds"
},
xSeconds: {
one: "1 second",
other: "{{count}} seconds"
},
halfAMinute: "half a minute",
lessThanXMinutes: {
one: "less than a minute",
other: "less than {{count}} minutes"
},
xMinutes: {
one: "1 minute",
other: "{{count}} minutes"
},
aboutXHours: {
one: "about 1 hour",
other: "about {{count}} hours"
},
xHours: {
one: "1 hour",
other: "{{count}} hours"
},
xDays: {
one: "1 day",
other: "{{count}} days"
},
aboutXWeeks: {
one: "about 1 week",
other: "about {{count}} weeks"
},
xWeeks: {
one: "1 week",
other: "{{count}} weeks"
},
aboutXMonths: {
one: "about 1 month",
other: "about {{count}} months"
},
xMonths: {
one: "1 month",
other: "{{count}} months"
},
aboutXYears: {
one: "about 1 year",
other: "about {{count}} years"
},
xYears: {
one: "1 year",
other: "{{count}} years"
},
overXYears: {
one: "over 1 year",
other: "over {{count}} years"
},
almostXYears: {
one: "almost 1 year",
other: "almost {{count}} years"
}
}, En = (a, n, t) => {
let e;
const r = Pn[a];
return typeof r == "string" ? e = r : n === 1 ? e = r.one : e = r.other.replace("{{count}}", n.toString()), t != null && t.addSuffix ? t.comparison && t.comparison > 0 ? "in " + e : e + " ago" : e;
};
function Pt(a) {
return (n = {}) => {
const t = n.width ? String(n.width) : a.defaultWidth;
return a.formats[t] || a.formats[a.defaultWidth];
};
}
const On = {
full: "EEEE, MMMM do, y",
long: "MMMM do, y",
medium: "MMM d, y",
short: "MM/dd/yyyy"
}, Tn = {
full: "h:mm:ss a zzzz",
long: "h:mm:ss a z",
medium: "h:mm:ss a",
short: "h:mm a"
}, Nn = {
full: "{{date}} 'at' {{time}}",
long: "{{date}} 'at' {{time}}",
medium: "{{date}}, {{time}}",
short: "{{date}}, {{time}}"
}, Yn = {
date: Pt({
formats: On,
defaultWidth: "full"
}),
time: Pt({
formats: Tn,
defaultWidth: "full"
}),
dateTime: Pt({
formats: Nn,
defaultWidth: "full"
})
}, Rn = {
lastWeek: "'last' eeee 'at' p",
yesterday: "'yesterday at' p",
today: "'today at' p",
tomorrow: "'tomorrow at' p",
nextWeek: "eeee 'at' p",
other: "P"
}, In = (a, n, t, e) => Rn[a];
function Ke(a) {
return (n, t) => {
const e = t != null && t.context ? String(t.context) : "standalone";
let r;
if (e === "formatting" && a.formattingValues) {
const i = a.defaultFormattingWidth || a.defaultWidth, s = t != null && t.width ? String(t.width) : i;
r = a.formattingValues[s] || a.formattingValues[i];
} else {
const i = a.defaultWidth, s = t != null && t.width ? String(t.width) : a.defaultWidth;
r = a.values[s] || a.values[i];
}
const o = a.argumentCallback ? a.argumentCallback(n) : n;
return r[o];
};
}
const Ln = {
narrow: ["B", "A"],
abbreviated: ["BC", "AD"],
wide: ["Before Christ", "Anno Domini"]
}, Fn = {
narrow: ["1", "2", "3", "4"],
abbreviated: ["Q1", "Q2", "Q3", "Q4"],
wide: ["1st quarter", "2nd quarter", "3rd quarter", "4th quarter"]
}, Wn = {
narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
abbreviated: [
"Jan",
"Feb",
"Mar",
"Apr",
"May",
"Jun",
"Jul",
"Aug",
"Sep",
"Oct",
"Nov",
"Dec"
],
wide: [
"January",
"February",
"March",
"April",
"May",
"June",
"July",
"August",
"September",
"October",
"November",
"December"
]
}, An = {
narrow: ["S", "M", "T", "W", "T", "F", "S"],
short: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
abbreviated: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
wide: [
"Sunday",
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday"
]
}, Hn = {
narrow: {
am: "a",
pm: "p",
midnight: "mi",
noon: "n",
morning: "morning",
afternoon: "afternoon",
evening: "evening",
night: "night"
},
abbreviated: {
am: "AM",
pm: "PM",
midnight: "midnight",
noon: "noon",
morning: "morning",
afternoon: "afternoon",
evening: "evening",
night: "night"
},
wide: {
am: "a.m.",
pm: "p.m.",
midnight: "midnight",
noon: "noon",
morning: "morning",
afternoon: "afternoon",
evening: "evening",
night: "night"
}
}, Qn = {
narrow: {
am: "a",
pm: "p",
midnight: "mi",
noon: "n",
morning: "in the morning",
afternoon: "in the afternoon",
evening: "in the evening",
night: "at night"
},
abbreviated: {
am: "AM",
pm: "PM",
midnight: "midnight",
noon: "noon",
morning: "in the morning",
afternoon: "in the afternoon",
evening: "in the evening",
night: "at night"
},
wide: {
am: "a.m.",
pm: "p.m.",
midnight: "midnight",
noon: "noon",
morning: "in the morning",
afternoon: "in the afternoon",
evening: "in the evening",
night: "at night"
}
}, Bn = (a, n) => {
const t = Number(a), e = t % 100;
if (e > 20 || e < 10)
switch (e % 10) {
case 1:
return t + "st";
case 2:
return t + "nd";
case 3:
return t + "rd";
}
return t + "th";
}, Kn = {
ordinalNumber: Bn,
era: Ke({
values: Ln,
defaultWidth: "wide"
}),
quarter: Ke({
values: Fn,
defaultWidth: "wide",
argumentCallback: (a) => a - 1
}),
month: Ke({
values: Wn,
defaultWidth: "wide"
}),
day: Ke({
values: An,
defaultWidth: "wide"
}),
dayPeriod: Ke({
values: Hn,
defaultWidth: "wide",
formattingValues: Qn,
defaultFormattingWidth: "wide"
})
};
function qe(a) {
return (n, t = {}) => {
const e = t.width, r = e && a.matchPatterns[e] || a.matchPatterns[a.defaultMatchWidth], o = n.match(r);
if (!o)
return null;
const i = o[0], s = e && a.parsePatterns[e] || a.parsePatterns[a.defaultParseWidth], c = Array.isArray(s) ? Vn(s, (d) => d.test(i)) : (
// [TODO] -- I challenge you to fix the type
qn(s, (d) => d.test(i))
);
let u;
u = a.valueCallback ? a.valueCallback(c) : c, u = t.valueCallback ? (
// [TODO] -- I challenge you to fix the type
t.valueCallback(u)
) : u;
const l = n.slice(i.length);
return { value: u, rest: l };
};
}
function qn(a, n) {
for (const t in a)
if (Object.prototype.hasOwnProperty.call(a, t) && n(a[t]))
return t;
}
function Vn(a, n) {
for (let t = 0; t < a.length; t++)
if (n(a[t]))
return t;
}
function Un(a) {
return (n, t = {}) => {
const e = n.match(a.matchPattern);
if (!e) return null;
const r = e[0], o = n.match(a.parsePattern);
if (!o) return null;
let i = a.valueCallback ? a.valueCallback(o[0]) : o[0];
i = t.valueCallback ? t.valueCallback(i) : i;
const s = n.slice(r.length);
return { value: i, rest: s };
};
}
const jn = /^(\d+)(th|st|nd|rd)?/i, $n = /\d+/i, Xn = {
narrow: /^(b|a)/i,
abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,
wide: /^(before christ|before common era|anno domini|common era)/i
}, Gn = {
any: [/^b/i, /^(a|c)/i]
}, zn = {
narrow: /^[1234]/i,
abbreviated: /^q[1234]/i,
wide: /^[1234](th|st|nd|rd)? quarter/i
}, Zn = {
any: [/1/i, /2/i, /3/i, /4/i]
}, Jn = {
narrow: /^[jfmasond]/i,
abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,
wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i
}, ea = {
narrow: [
/^j/i,
/^f/i,
/^m/i,
/^a/i,
/^m/i,
/^j/i,
/^j/i,
/^a/i,
/^s/i,
/^o/i,
/^n/i,
/^d/i
],
any: [
/^ja/i,
/^f/i,
/^mar/i,
/^ap/i,
/^may/i,
/^jun/i,
/^jul/i,
/^au/i,
/^s/i,
/^o/i,
/^n/i,
/^d/i
]
}, ta = {
narrow: /^[smtwf]/i,
short: /^(su|mo|tu|we|th|fr|sa)/i,
abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,
wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i
}, ra = {
narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],
any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]
}, na = {
narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,
any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i
}, aa = {
any: {
am: /^a/i,
pm: /^p/i,
midnight: /^mi/i,
noon: /^no/i,
morning: /morning/i,
afternoon: /afternoon/i,
evening: /evening/i,
night: /night/i
}
}, oa = {
ordinalNumber: Un({
matchPattern: jn,
parsePattern: $n,
valueCallback: (a) => parseInt(a, 10)
}),
era: qe({
matchPatterns: Xn,
defaultMatchWidth: "wide",
parsePatterns: Gn,
defaultParseWidth: "any"
}),
quarter: qe({
matchPatterns: zn,
defaultMatchWidth: "wide",
parsePatterns: Zn,
defaultParseWidth: "any",
valueCallback: (a) => a + 1
}),
month: qe({
matchPatterns: Jn,
defaultMatchWidth: "wide",
parsePatterns: ea,
defaultParseWidth: "any"
}),
day: qe({
matchPatterns: ta,
defaultMatchWidth: "wide",
parsePatterns: ra,
defaultParseWidth: "any"
}),
dayPeriod: qe({
matchPatterns: na,
defaultMatchWidth: "any",
parsePatterns: aa,
defaultParseWidth: "any"
})
}, Ar = {
code: "en-US",
formatDistance: En,
formatLong: Yn,
formatRelative: In,
localize: Kn,
match: oa,
options: {
weekStartsOn: 0,
firstWeekContainsDate: 1
}
};
function ia(a, n) {
const t = k(a, n == null ? void 0 : n.in);
return He(t, Ct(t)) + 1;
}
function Kt(a, n) {
const t = k(a, n == null ? void 0 : n.in), e = +Ae(t) - +_n(t);
return Math.round(e / Nr) + 1;
}
function qt(a, n) {
var l, d, p, h;
const t = k(a, n == null ? void 0 : n.in), e = t.getFullYear(), r = Ie(), o = (n == null ? void 0 : n.firstWeekContainsDate) ?? ((d = (l = n == null ? void 0 : n.locale) == null ? void 0 : l.options) == null ? void 0 : d.firstWeekContainsDate) ?? r.firstWeekContainsDate ?? ((h = (p = r.locale) == null ? void 0 : p.options) == null ? void 0 : h.firstWeekContainsDate) ?? 1, i = H((n == null ? void 0 : n.in) || a, 0);
i.setFullYear(e + 1, 0, o), i.setHours(0, 0, 0, 0);
const s = be(i, n), c = H((n == null ? void 0 : n.in) || a, 0);
c.setFullYear(e, 0, o), c.setHours(0, 0, 0, 0);
const u = be(c, n);
return +t >= +s ? e + 1 : +t >= +u ? e : e - 1;
}
function sa(a, n) {
var s, c, u, l;
const t = Ie(), e = (n == null ? void 0 : n.firstWeekContainsDate) ?? ((c = (s = n == null ? void 0 : n.locale) == null ? void 0 : s.options) == null ? void 0 : c.firstWeekContainsDate) ?? t.firstWeekContainsDate ?? ((l = (u = t.locale) == null ? void 0 : u.options) == null ? void 0 : l.firstWeekContainsDate) ?? 1, r = qt(a, n), o = H((n == null ? void 0 : n.in) || a, 0);
return o.setFullYear(r, 0, e), o.setHours(0, 0, 0, 0), be(o, n);
}
function Hr(a, n) {
const t = k(a, n == null ? void 0 : n.in), e = +be(t, n) - +sa(t, n);
return Math.round(e / Nr) + 1;
}
function A(a, n) {
const t = a < 0 ? "-" : "", e = Math.abs(a).toString().padStart(n, "0");
return t + e;
}
const _e = {
// Year
y(a, n) {
const t = a.getFullYear(), e = t > 0 ? t : 1 - t;
return A(n === "yy" ? e % 100 : e, n.length);
},
// Month
M(a, n) {
const t = a.getMonth();
return n === "M" ? String(t + 1) : A(t + 1, 2);
},
// Day of the month
d(a, n) {
return A(a.getDate(), n.length);
},
// AM or PM
a(a, n) {
const t = a.getHours() / 12 >= 1 ? "pm" : "am";
switch (n) {
case "a":
case "aa":
return t.toUpperCase();
case "aaa":
return t;
case "aaaaa":
return t[0];
case "aaaa":
default:
return t === "am" ? "a.m." : "p.m.";
}
},
// Hour [1-12]
h(a, n) {
return A(a.getHours() % 12 || 12, n.length);
},
// Hour [0-23]
H(a, n) {
return A(a.getHours(), n.length);
},
// Minute
m(a, n) {
return A(a.getMinutes(), n.length);
},
// Second
s(a, n) {
return A(a.getSeconds(), n.length);
},
// Fraction of second
S(a, n) {
const t = n.length, e = a.getMilliseconds(), r = Math.trunc(
e * Math.pow(10, t - 3)
);
return A(r, n.length);
}
}, Le = {
midnight: "midnight",
noon: "noon",
morning: "morning",
afternoon: "afternoon",
evening: "evening",
night: "night"
}, tr = {
// Era
G: function(a, n, t) {
const e = a.getFullYear() > 0 ? 1 : 0;
switch (n) {
// AD, BC
case "G":
case "GG":
case "GGG":
return t.era(e, { width: "abbreviated" });
// A, B
case "GGGGG":
return t.era(e, { width: "narrow" });
// Anno Domini, Before Christ
case "GGGG":
default:
return t.era(e, { width: "wide" });
}
},
// Year
y: function(a, n, t) {
if (n === "yo") {
const e = a.getFullYear(), r = e > 0 ? e : 1 - e;
return t.ordinalNumber(r, { unit: "year" });
}
return _e.y(a, n);
},
// Local week-numbering year
Y: function(a, n, t, e) {
const r = qt(a, e), o = r > 0 ? r : 1 - r;
if (n === "YY") {
const i = o % 100;
return A(i, 2);
}
return n === "Yo" ? t.ordinalNumber(o, { unit: "year" }) : A(o, n.length);
},
// ISO week-numbering year
R: function(a, n) {
const t = Rr(a);
return A(t, n.length);
},
// Extended year. This is a single number designating the year of this calendar system.
// The main difference between `y` and `u` localizers are B.C. years:
// | Year | `y` | `u` |
// |------|-----|-----|
// | AC 1 | 1 | 1 |
// | BC 1 | 1 | 0 |
// | BC 2 | 2 | -1 |
// Also `yy` always returns the last two digits of a year,
// while `uu` pads single digit years to 2 characters and returns other years unchanged.
u: function(a, n) {
const t = a.getFullYear();
return A(t, n.length);
},
// Quarter
Q: function(a, n, t) {
const e = Math.ceil((a.getMonth() + 1) / 3);
switch (n) {
// 1, 2, 3, 4
case "Q":
return String(e);
// 01, 02, 03, 04
case "QQ":
return A(e, 2);
// 1st, 2nd, 3rd, 4th
case "Qo":
return t.ordinalNumber(e, { unit: "quarter" });
// Q1, Q2, Q3, Q4
case "QQQ":
return t.quarter(e, {
width: "abbreviated",
context: "formatting"
});
// 1, 2, 3, 4 (narrow quarter; could be not numerical)
case "QQQQQ":
return t.quarter(e, {
width: "narrow",
context: "formatting"
});
// 1st quarter, 2nd quarter, ...
case "QQQQ":
default:
return t.quarter(e, {
width: "wide",
context: "formatting"
});
}
},
// Stand-alone quarter
q: function(a, n, t) {
const e = Math.ceil((a.getMonth() + 1) / 3);
switch (n) {
// 1, 2, 3, 4
case "q":
return String(e);
// 01, 02, 03, 04
case "qq":
return A(e, 2);
// 1st, 2nd, 3rd, 4th
case "qo":
return t.ordinalNumber(e, { unit: "quarter" });
// Q1, Q2, Q3, Q4
case "qqq":
return t.quarter(e, {
width: "abbreviated",
context: "standalone"
});
// 1, 2, 3, 4 (narrow quarter; could be not numerical)
case "qqqqq":
return t.quarter(e, {
width: "narrow",
context: "standalone"
});
// 1st quarter, 2nd quarter, ...
case "qqqq":
default:
return t.quarter(e, {
width: "wide",
context: "standalone"
});
}
},
// Month
M: function(a, n, t) {
const e = a.getMonth();
switch (n) {
case "M":
case "MM":
return _e.M(a, n);
// 1st, 2nd, ..., 12th
case "Mo":
return t.ordinalNumber(e + 1, { unit: "month" });
// Jan, Feb, ..., Dec
case "MMM":
return t.month(e, {
width: "abbreviated",
context: "formatting"
});
// J, F, ..., D
case "MMMMM":
return t.month(e, {
width: "narrow",
context: "formatting"
});
// January, February, ..., December
case "MMMM":
default:
return t.month(e, { width: "wide", context: "formatting" });
}
},
// Stand-alone month
L: function(a, n, t) {
const e = a.getMonth();
switch (n) {
// 1, 2, ..., 12
case "L":
return String(e + 1);
// 01, 02, ..., 12
case "LL":
return A(e + 1, 2);
// 1st, 2nd, ..., 12th
case "Lo":
return t.ordinalNumber(e + 1, { unit: "month" });
// Jan, Feb, ..., Dec
case "LLL":
return t.month(e, {
width: "abbreviated",
context: "standalone"
});
// J, F, ..., D
case "LLLLL":
return t.month(e, {
width: "narrow",
context: "standalone"
});
// January, February, ..., December
case "LLLL":
default:
return t.month(e, { width: "wide", context: "standalone" });
}
},
// Local week of year
w: function(a, n, t, e) {
const r = Hr(a, e);
return n === "wo" ? t.ordinalNumber(r, { unit: "week" }) : A(r, n.length);
},
// ISO week of year
I: function(a, n, t) {
const e = Kt(a);
return n === "Io" ? t.ordinalNumber(e, { unit: "week" }) : A(e, n.length);
},
// Day of the month
d: function(a, n, t) {
return n === "do" ? t.ordinalNumber(a.getDate(), { unit: "date" }) : _e.d(a, n);
},
// Day of year
D: function(a, n, t) {
const e = ia(a);
return n === "Do" ? t.ordinalNumber(e, { unit: "dayOfYear" }) : A(e, n.length);
},
// Day of week
E: function(a, n, t) {
const e = a.getDay();
switch (n) {
// Tue
case "E":
case "EE":
case "EEE":
return t.day(e, {
width: "abbreviated",
context: "formatting"
});
// T
case "EEEEE":
return t.day(e, {
width: "narrow",
context: "formatting"
});
// Tu
case "EEEEEE":
return t.day(e, {
width: "short",
context: "formatting"
});
// Tuesday
case "EEEE":
default:
return t.day(e, {
width: "wide",
context: "formatting"
});
}
},
// Local day of week
e: function(a, n, t, e) {
const r = a.getDay(), o = (r - e.weekStartsOn + 8) % 7 || 7;
switch (n) {
// Numerical value (Nth day of week with current locale or weekStartsOn)
case "e":
return String(o);
// Padded numerical value
case "ee":
return A(o, 2);
// 1st, 2nd, ..., 7th
case "eo":
return t.ordinalNumber(o, { unit: "day" });
case "eee":
return t.day(r, {
width: "abbreviated",
context: "formatting"
});
// T
case "eeeee":
return t.day(r, {
width: "narrow",
context: "formatting"
});
// Tu
case "eeeeee":
return t.day(r, {
width: "short",
context: "formatting"
});
// Tuesday
case "eeee":
default:
return t.day(r, {
width: "wide",
context: "formatting"
});
}
},
// Stand-alone local day of week
c: function(a, n, t, e) {
const r = a.getDay(), o = (r - e.weekStartsOn + 8) % 7 || 7;
switch (n) {
// Numerical value (same as in `e`)
case "c":
return String(o);
// Padded numerical value
case "cc":
return A(o, n.length);
// 1st, 2nd, ..., 7th
case "co":
return t.ordinalNumber(o, { unit: "day" });
case "ccc":
return t.day(r, {
width: "abbreviated",
context: "standalone"
});
// T
case "ccccc":
return t.day(r, {
width: "narrow",
context: "standalone"
});
// Tu
case "cccccc":
return t.day(r, {
width: "short",
context: "standalone"
});
// Tuesday
case "cccc":
default:
return t.day(r, {
width: "wide",
context: "standalone"
});
}
},
// ISO day of week
i: function(a, n, t) {
const e = a.getDay(), r = e === 0 ? 7 : e;
switch (n) {
// 2
case "i":
return String(r);
// 02
case "ii":
return A(r, n.length);
// 2nd
case "io":
return t.ordinalNumber(r, { unit: "day" });
// Tue
case "iii":
return t.day(e, {
width: "abbreviated",
context: "formatting"
});
// T
case "iiiii":
return t.day(e, {
width: "narrow",
context: "formatting"
});
// Tu
case "iiiiii":
return t.day(e, {
width: "short",
context: "formatting"
});
// Tuesday
case "iiii":
default:
return t.day(e, {
width: "wide",
context: "formatting"
});
}
},
// AM or PM
a: function(a, n, t) {
const r = a.getHours() / 12 >= 1 ? "pm" : "am";
switch (n) {
case "a":
case "aa":
return t.dayPeriod(r, {
width: "abbreviated",
context: "formatting"
});
case "aaa":
return t.dayPeriod(r, {
width: "abbreviated",
context: "formatting"
}).toLowerCase();
case "aaaaa":
return t.dayPeriod(r, {
width: "narrow",
context: "formatting"
});
case "aaaa":
default:
return t.dayPeriod(r, {
width: "wide",
context: "formatting"
});
}
},
// AM, PM, midnight, noon
b: function(a, n, t) {
const e = a.getHours();
let r;
switch (e === 12 ? r = Le.noon : e === 0 ? r = Le.midnight : r = e / 12 >= 1 ? "pm" : "am", n) {
case "b":
case "bb":
return t.dayPeriod(r, {
width: "abbreviated",
context: "formatting"
});
case "bbb":
return t.dayPeriod(r, {
width: "abbreviated",
context: "formatting"
}).toLowerCase();
case "bbbbb":
return t.dayPeriod(r, {
width: "narrow",
context: "formatting"
});
case "bbbb":
default:
return t.dayPeriod(r, {
width: "wide",
context: "formatting"
});
}
},
// in the morning, in the afternoon, in the evening, at night
B: function(a, n, t) {
const e = a.getHours();
let r;
switch (e >= 17 ? r = Le.evening : e >= 12 ? r = Le.afternoon : e >= 4 ? r = Le.morning : r = Le.night, n) {
case "B":
case "BB":
case "BBB":
return t.dayPeriod(r, {
width: "abbreviated",
context: "formatting"
});
case "BBBBB":
return t.dayPeriod(r, {
width: "narrow",
context: "formatting"
});
case "BBBB":
default:
return t.dayPeriod(r, {
width: "wide",
context: "formatting"
});
}
},
// Hour [1-12]
h: function(a, n, t) {
if (n === "ho") {
let e = a.getHours() % 12;
return e === 0 && (e = 12), t.ordinalNumber(e, { unit: "hour" });
}
return _e.h(a, n);
},
// Hour [0-23]
H: function(a, n, t) {
return n === "Ho" ? t.ordinalNumber(a.getHours(), { unit: "hour" }) : _e.H(a, n);
},
// Hour [0-11]
K: function(a, n, t) {
const e = a.getHours() % 12;
return n === "Ko" ? t.ordinalNumber(e, { unit: "hour" }) : A(e, n.length);
},
// Hour [1-24]
k: function(a, n, t) {
let e = a.getHours();
return e === 0 && (e = 24), n === "ko" ? t.ordinalNumber(e, { unit: "hour" }) : A(e, n.length);
},
// Minute
m: function(a, n, t) {
return n === "mo" ? t.ordinalNumber(a.getMinutes(), { unit: "minute" }) : _e.m(a, n);
},
// Second
s: function(a, n, t) {
return n === "so" ? t.ordinalNumber(a.getSeconds(), { unit: "second" }) : _e.s(a, n);
},
// Fraction of second
S: function(a, n) {
return _e.S(a, n);
},
// Timezone (ISO-8601. If offset is 0, output is always `'Z'`)
X: function(a, n, t) {
const e = a.getTimezoneOffset();
if (e === 0)
return "Z";
switch (n) {
// Hours and optional minutes
case "X":
return nr(e);
// Hours, minutes and optional seconds without `:` delimiter
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
// so this token always has the same output as `XX`
case "XXXX":
case "XX":
return Ee(e);
// Hours, minutes and optional seconds with `:` delimiter
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
// so this token always has the same output as `XXX`
case "XXXXX":
case "XXX":
// Hours and minutes with `:` delimiter
default:
return Ee(e, ":");
}
},
// Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)
x: function(a, n, t) {
const e = a.getTimezoneOffset();
switch (n) {
// Hours and optional minutes
case "x":
return nr(e);
// Hours, minutes and optional seconds without `:` delimiter
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
// so this token always has the same output as `xx`
case "xxxx":
case "xx":
return Ee(e);
// Hours, minutes and optional seconds with `:` delimiter
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
// so this token always has the same output as `xxx`
case "xxxxx":
case "xxx":
// Hours and minutes with `:` delimiter
default:
return Ee(e, ":");
}
},
// Timezone (GMT)
O: function(a, n, t) {
const e = a.getTimezoneOffset();
switch (n) {
// Short
case "O":
case "OO":
case "OOO":
return "GMT" + rr(e, ":");
// Long
case "OOOO":
default:
return "GMT" + Ee(e, ":");
}
},
// Timezone (specific non-location)
z: function(a, n, t) {
const e = a.getTimezoneOffset();
switch (n) {
// Short
case "z":
case "zz":
case "zzz":
return "GMT" + rr(e, ":");
// Long
case "zzzz":
default:
return "GMT" + Ee(e, ":");
}
},
// Seconds timestamp
t: function(a, n, t) {
const e = Math.trunc(+a / 1e3);
return A(e, n.length);
},
// Milliseconds timestamp
T: function(a, n, t) {
return A(+a, n.length);
}
};
function rr(a, n = "") {
const t = a > 0 ? "-" : "+", e = Math.abs(a), r = Math.trunc(e / 60), o = e % 60;
return o === 0 ? t + String(r) : t + String(r) + n + A(o, 2);
}
function nr(a, n) {
return a % 60 === 0 ? (a > 0 ? "-" : "+") + A(Math.abs(a) / 60, 2) : Ee(a, n);
}
function Ee(a, n = "") {
const t = a > 0 ? "-" : "+", e = Math.abs(a), r = A(Math.trunc(e / 60), 2), o = A(e % 60, 2);
return t + r + n + o;
}
const ar = (a, n) => {
switch (a) {
case "P":
return n.date({ width: "short" });
case "PP":
return n.date({ width: "medium" });
case "PPP":
return n.date({ width: "long" });
case "PPPP":
default:
return n.date({ width: "full" });
}
}, Qr = (a, n) => {
switch (a) {
case "p":
return n.time({ width: "short" });
case "pp":
return n.time({ width: "medium" });
case "ppp":
return n.time({ width: "long" });
case "pppp":
default:
return n.time({ width: "full" });
}
}, ca = (a, n) => {
const t = a.match(/(P+)(p+)?/) || [], e = t[1], r = t[2];
if (!r)
return ar(a, n);
let o;
switch (e) {
case "P":
o = n.dateTime({ width: "short" });
break;
case "PP":
o = n.dateTime({ width: "medium" });
break;
case "PPP":
o = n.dateTime({ width: "long" });
break;
case "PPPP":
default:
o = n.dateTime({ width: "full" });
break;
}
return o.replace("{{date}}", ar(e, n)).replace("{{time}}", Qr(r, n));
}, At = {
p: Qr,
P: ca
}, la = /^D+$/, ua = /^Y+$/, da = ["D", "DD", "YY", "YYYY"];
function pa(a) {
return la.test(a);
}
function fa(a) {
return ua.test(a);
}
function ha(a, n, t) {
const e = ma(a, n, t);
if (console.warn(e), da.includes(a)) throw new RangeError(e);
}
function ma(a, n, t) {
const e = a[0] === "Y" ? "years" : "days of the month";
return `Use \`${a.toLowerCase()}\` instead of \`${a}\` (in \`${n}\`) for formatting ${e} to the input \`${t}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`;
}
const va = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g, ga = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g, Da = /^'([^]*?)'?$/, wa = /''/g, ya = /[a-zA-Z]/;
function or(a, n, t) {
var l, d, p, h, m, g, v, b;
const e = Ie(), r = (t == null ? void 0 : t.locale) ?? e.locale ?? Ar, o = (t == null ? void 0 : t.firstWeekContainsDate) ?? ((d = (l = t == null ? void 0 : t.locale) == null ? void 0 : l.options) == null ? void 0 : d.firstWeekContainsDate) ?? e.firstWeekContainsDate ?? ((h = (p = e.locale) == null ? void 0 : p.options) == null ? void 0 : h.firstWeekContainsDate) ?? 1, i = (t == null ? void 0 : t.weekStartsOn) ?? ((g = (m = t == null ? void 0 : t.locale) == null ? void 0 : m.options) == null ? void 0 : g.weekStartsOn) ?? e.weekStartsOn ?? ((b = (v = e.locale) == null ? void 0 : v.options) == null ? void 0 : b.weekStartsOn) ?? 0, s = k(a, t == null ? void 0 : t.in);
if (!mt(s))
throw new RangeError("Invalid time value");
let c = n.match(ga).map((C) => {
const _ = C[0];
if (_ === "p" || _ === "P") {
const x = At[_];
return x(C, r.formatLong);
}
return C;
}).join("").match(va).map((C) => {
if (C === "''")
return { isToken: !1, value: "'" };
const _ = C[0];
if (_ === "'")
return { isToken: !1, value: ba(C) };
if (tr[_])
return { isToken: !0, value: C };
if (_.match(ya))
throw new RangeError(
"Format string contains an unescaped latin alphabet character `" + _ + "`"
);
return { isToken: !1, value: C };
});
r.localize.preprocessor && (c = r.localize.preprocessor(s, c));
const u = {
firstWeekContainsDate: o,
weekStartsOn: i,
locale: r
};
return c.map((C) => {
if (!C.isToken) return C.value;
const _ = C.value;
(!(t != null && t.useAdditionalWeekYearTokens) && fa(_) || !(t != null && t.useAdditionalDayOfYearTokens) && pa(_)) && ha(_, n, String(a));
const x = tr[_[0]];
return x(s, _, r.localize, u);
}).join("");
}
function ba(a) {
const n = a.match(Da);
return n ? n[1].replace(wa, "'") : a;
}
function ir(a, n) {
return k(a, n == null ? void 0 : n.in).getDate();
}
function ka(a, n) {
return k(a, n == null ? void 0 : n.in).getDay();
}
function _a(a, n) {
const t = k(a, n == null ? void 0 : n.in), e = t.getFullYear(), r = t.getMonth(), o = H(t, 0);
return o.setFullYear(e, r + 1, 0), o.setHours(0, 0, 0, 0), o.getDate();
}
function Ma() {
return Object.assign({}, Ie());
}
function De(a, n) {
return k(a, n == null ? void 0 : n.in).getHours();
}
function Ca(a, n) {
const t = k(a, n == null ? void 0 : n.in).getDay();
return t === 0 ? 7 : t;
}
function we(a, n) {
return k(a, n == null ? void 0 : n.in).getMinutes();
}
function ee(a, n) {
return k(a, n == null ? void 0 : n.in).getMonth();
}
function Ce(a) {
return k(a).getSeconds();
}
function Ht(a) {
return +k(a);
}
function P(a, n) {
return k(a, n == null ? void 0 : n.in).getFullYear();
}
function Pe(a, n) {
return +k(a) > +k(n);
}
function Re(a, n) {
return +k(a) < +k(n);
}
function Sa(a, n) {
return +k(a) == +k(n);
}
function xa(a, n) {
const t = Pa(n) ? new n(0) : H(n, 0);
return t.setFullYear(a.getFullYear(), a.getMonth(), a.getDate()), t.setHours(
a.getHours(),
a.getMinutes(),
a.getSeconds(),
a.getMilliseconds()
), t;
}
function Pa(a) {
var n;
return typeof a == "function" && ((n = a.prototype) == null ? void 0 : n.constructor) === a;
}
const Ea = 10;
class Br {
constructor() {
w(this, "subPriority", 0);
}
validate(n, t) {
return !0;
}
}
class Oa extends Br {
constructor(n, t, e, r, o) {
super(), this.value = n, this.validateValue = t, this.setValue = e, this.priority = r, o && (this.subPriority = o);
}
validate(n, t) {
return this.validateValue(n, this.value, t);
}
set(n, t, e) {
return this.setValue(n, t, this.value, e);
}
}
class Ta extends Br {
constructor(t, e) {
super();
w(this, "priority", Ea);
w(this, "subPriority", -1);
this.context = t || ((r) => H(e, r));
}
set(t, e) {
return e.timestampIsSet ? t : H(t, xa(t, this.context));
}
}
class R {
run(n, t, e, r) {
const o = this.parse(n, t, e, r);
return o ? {
setter: new Oa(
o.value,
this.validate,
this.set,
this.priority,
this.subPriority
),
rest: o.rest
} : null;
}
validate(n, t, e) {
return !0;
}
}
class Na extends R {
constructor() {
super(...arguments);
w(this, "priority", 140);
w(this, "incompatibleTokens", ["R", "u", "t", "T"]);
}
parse(t, e, r) {
switch (e) {
// AD, BC
case "G":
case "GG":
case "GGG":
return r.era(t, { width: "abbreviated" }) || r.era(t, { width: "narrow" });
// A, B
case "GGGGG":
return r.era(t, { width: "narrow" });
// Anno Domini, Before Christ
case "GGGG":
default:
return r.era(t, { width: "wide" }) || r.era(t, { width: "abbreviated" }) || r.era(t, { width: "narrow" });
}
}
set(t, e, r) {
return e.era = r, t.setFullYear(r, 0, 1), t.setHours(0, 0, 0, 0), t;
}
}
const X = {
month: /^(1[0-2]|0?\d)/,
// 0 to 12
date: /^(3[0-1]|[0-2]?\d)/,
// 0 to 31
dayOfYear: /^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/,
// 0 to 366
week: /^(5[0-3]|[0-4]?\d)/,
// 0 to 53
hour23h: /^(2[0-3]|[0-1]?\d)/,
// 0 to 23
hour24h: /^(2[0-4]|[0-1]?\d)/,
// 0 to 24
hour11h: /^(1[0-1]|0?\d)/,
// 0 to 11
hour12h: /^(1[0-2]|0?\d)/,
// 0 to 12
minute: /^[0-5]?\d/,
// 0 to 59
second: /^[0-5]?\d/,
// 0 to 59
singleDigit: /^\d/,
// 0 to 9
twoDigits: /^\d{1,2}/,
// 0 to 99
threeDigits: /^\d{1,3}/,
// 0 to 999
fourDigits: /^\d{1,4}/,
// 0 to 9999
anyDigitsSigned: /^-?\d+/,
singleDigitSigned: /^-?\d/,
// 0 to 9, -0 to -9
twoDigitsSigned: /^-?\d{1,2}/,
// 0 to 99, -0 to -99
threeDigitsSigned: /^-?\d{1,3}/,
// 0 to 999, -0 to -999
fourDigitsSigned: /^-?\d{1,4}/
// 0 to 9999, -0 to -9999
}, pe = {
basicOptionalMinutes: /^([+-])(\d{2})(\d{2})?|Z/,
basic: /^([+-])(\d{2})(\d{2})|Z/,
basicOptionalSeconds: /^([+-])(\d{2})(\d{2})((\d{2}))?|Z/,
extended: /^([+-])(\d{2}):(\d{2})|Z/,
extendedOptionalSeconds: /^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/
};
function G(a, n) {
return a && {
value: n(a.value),
rest: a.rest
};
}
function V(a, n) {
const t = n.match(a);
return t ? {
value: parseInt(t[0], 10),
rest: n.slice(t[0].length)
} : null;
}
function fe(a, n) {
const t = n.match(a);
if (!t)
return null;
if (t[0] === "Z")
return {
value: 0,
rest: n.slice(1)
};
const e = t[1] === "+" ? 1 : -1, r = t[2] ? parseInt(t[2], 10) : 0, o = t[3] ? parseInt(t[3], 10) : 0, i = t[5] ? parseInt(t[5], 10) : 0;
return {
value: e * (r * Mt + o * _t + i * yn),
rest: n.slice(t[0].length)
};
}
function Kr(a) {
return V(X.anyDigitsSigned, a);
}
function U(a, n) {
switch (a) {
case 1:
return V(X.singleDigit, n);
case 2:
return V(X.twoDigits, n);
case 3:
return V(X.threeDigits, n);
case 4:
return V(X.fourDigits, n);
default:
return V(new RegExp("^\\d{1," + a + "}"), n);
}
}
function wt(a, n) {
switch (a) {
case 1:
return V(X.singleDigitSigned, n);
case 2:
return V(X.twoDigitsSigned, n);
case 3:
return V(X.threeDigitsSigned, n);
case 4:
return V(X.fourDigitsSigned, n);
default:
return V(new RegExp("^-?\\d{1," + a + "}"), n);
}
}
function Vt(a) {
switch (a) {
case "morning":
return 4;
case "evening":
return 17;
case "pm":
case "noon":
case "afternoon":
return 12;
case "am":
case "midnight":
case "night":
default:
return 0;
}
}
function qr(a, n) {
const t = n > 0, e = t ? n : 1 - n;
let r;
if (e <= 50)
r = a || 100;
else {
const o = e + 50, i = Math.trunc(o / 100) * 100, s = a >= o % 100;
r = a + i - (s ? 100 : 0);
}
return t ? r : 1 - r;
}
function Vr(a) {
return a % 400 === 0 || a % 4 === 0 && a % 100 !== 0;
}
class Ya extends R {
constructor() {
super(...arguments);
w(this, "priority", 130);
w(this, "incompatibleTokens", ["Y", "R", "u", "w", "I", "i", "e", "c", "t", "T"]);
}
parse(t, e, r) {
const o = (i) => ({
year: i,
isTwoDigitYear: e === "yy"
});
switch (e) {
case "y":
return G(U(4, t), o);
case "yo":
return G(
r.ordinalNumber(t, {
unit: "year"
}),
o
);
default:
return G(U(e.length, t), o);
}
}
validate(t, e) {
return e.isTwoDigitYear || e.year > 0;
}
set(t, e, r) {
const o = t.getFullYear();
if (r.isTwoDigitYear) {
const s = qr(
r.year,
o
);
return t.setFullYear(s, 0, 1), t.setHours(0, 0, 0, 0), t;
}
const i = !("era" in e) || e.era === 1 ? r.year : 1 - r.year;
return t.setFullYear(i, 0, 1), t.setHours(0, 0, 0, 0), t;
}
}
class Ra extends R {
constructor() {
super(...arguments);
w(this, "priority", 130);
w(this, "incompatibleTokens", [
"y",
"R",
"u",
"Q",
"q",
"M",
"L",
"I",
"d",
"D",
"i",
"t",
"T"
]);
}
parse(t, e, r) {
const o = (i) => ({
year: i,
isTwoDigitYear: e === "YY"
});
switch (e) {
case "Y":
return G(U(4, t), o);
case "Yo":
return G(
r.ordinalNumber(t, {
unit: "year"
}),
o
);
default:
return G(U(e.length, t), o);
}
}
validate(t, e) {
return e.isTwoDigitYear || e.year > 0;
}
set(t, e, r, o) {
const i = qt(t, o);
if (r.isTwoDigitYear) {
const c = qr(
r.year,
i
);
return t.setFullYear(
c,
0,
o.firstWeekContainsDate
), t.setHours(0, 0, 0, 0), be(t, o);
}
const s = !("era" in e) || e.era === 1 ? r.year : 1 - r.year;
return t.setFullYear(s, 0, o.firstWeekContainsDate), t.setHours(0, 0, 0, 0), be(t, o);
}
}
class Ia extends R {
constructor() {
super(...arguments);
w(this, "priority", 130);
w(this, "incompatibleTokens", [
"G",
"y",
"Y",
"u",
"Q",
"q",
"M",
"L",
"w",
"d",
"D",
"e",
"c",
"t",
"T"
]);
}
parse(t, e) {
return wt(e === "R" ? 4 : e.length, t);
}
set(t, e, r) {
const o = H(t, 0);
return o.setFullYear(r, 0, 4), o.setHours(0, 0, 0, 0), Ae(o);
}
}
class La extends R {
constructor() {
super(...arguments);
w(this, "priority", 130);
w(this, "incompatibleTokens", ["G", "y", "Y", "R", "w", "I", "i", "e", "c", "t", "T"]);
}
parse(t, e) {
return wt(e === "u" ? 4 : e.length, t);
}
set(t, e, r) {
return t.setFullYear(r, 0, 1), t.setHours(0, 0, 0, 0), t;
}
}
class Fa extends R {
constructor() {
super(...arguments);
w(this, "priority", 120);
w(this, "incompatibleTokens", [
"Y",
"R",
"q",
"M",
"L",
"w",
"I",
"d",
"D",
"i",
"e",
"c",
"t",
"T"
]);
}
parse(t, e, r) {
switch (e) {
// 1, 2, 3, 4
case "Q":
case "QQ":
return U(e.length, t);
// 1st, 2nd, 3rd, 4th
case "Qo":
return r.ordinalNumber(t, { unit: "quarter" });
// Q1, Q2, Q3, Q4
case "QQQ":
return r.quarter(t, {
width: "abbreviated",
context: "formatting"
}) || r.quarter(t, {
width: "narrow",
context: "formatting"
});
// 1, 2, 3, 4 (narrow quarter; could be not numerical)
case "QQQQQ":
return r.quarter(t, {
width: "narrow",
context: "formatting"
});
// 1st quarter, 2nd quarter, ...
case "QQQQ":
default:
return r.quarter(t, {
width: "wide",
context: "formatting"
}) || r.quarter(t, {
width: "abbreviated",
context: "formatting"
}) || r.quarter(t, {
width: "narrow",
context: "formatting"
});
}
}
validate(t, e) {
return e >= 1 && e <= 4;
}
set(t, e, r) {
return t.setMonth((r - 1) * 3, 1), t.setHours(0, 0, 0, 0), t;
}
}
class Wa extends R {
constructor() {
super(...arguments);
w(this, "priority", 120);
w(this, "incompatibleTokens", [
"Y",
"R",
"Q",
"M",
"L",
"w",
"I",
"d",
"D",
"i",
"e",
"c",
"t",
"T"
]);
}
parse(t, e, r) {
switch (e) {
// 1, 2, 3, 4
case "q":
case "qq":
return U(e.length, t);
// 1st, 2nd, 3rd, 4th
case "qo":
return r.ordinalNumber(t, { unit: "quarter" });
// Q1, Q2, Q3, Q4
case "qqq":
return r.quarter(t, {
width: "abbreviated",
context: "standalone"
}) || r.quarter(t, {
width: "narrow",
context: "standalone"
});
// 1, 2, 3, 4 (narrow quarter; could be not numerical)
case "qqqqq":
return r.quarter(t, {
width: "narrow",
context: "standalone"
});
// 1st quarter, 2nd quarter, ...
case "qqqq":
default:
return r.quarter(t, {
width: "wide",
context: "standalone"
}) || r.quarter(t, {
width: "abbreviated",
context: "standalone"
}) || r.quarter(t, {
width: "narrow",
context: "standalone"
});
}
}
validate(t, e) {
return e >= 1 && e <= 4;
}
set(t, e, r) {
return t.setMonth((r - 1) * 3, 1), t.setHours(0, 0, 0, 0), t;
}
}
class Aa extends R {
constructor() {
super(...a