UNPKG

@oslokommune/punkt-react

Version:

React komponentbibliotek til Punkt, et designsystem laget av Oslo Origo

1,776 lines 268 kB
if (typeof window === 'undefined') { globalThis.window = globalThis; } import { Children as e, cloneElement as t, createContext as n, createRef as r, forwardRef as i, isValidElement as a, useCallback as o, useContext as s, useEffect as c, useId as l, useImperativeHandle as u, useLayoutEffect as d, useMemo as f, useRef as p, useState as m } from "react"; import { Fragment as h, jsx as g, jsxs as _ } from "react/jsx-runtime"; import { Link as v } from "react-router-dom"; //#region \0rolldown/runtime.js var y = Object.create, b = Object.defineProperty, x = Object.getOwnPropertyDescriptor, S = Object.getOwnPropertyNames, C = Object.getPrototypeOf, w = Object.prototype.hasOwnProperty, T = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), e = null), t.exports), E = (e, t, n, r) => { if (t && typeof t == "object" || typeof t == "function") for (var i = S(t), a = 0, o = i.length, s; a < o; a++) s = i[a], !w.call(e, s) && s !== n && b(e, s, { get: ((e) => t[e]).bind(null, s), enumerable: !(r = x(t, s)) || r.enumerable }); return e; }, D = (e, t, n) => (n = e == null ? {} : y(C(e)), E(t || !e || !e.__esModule ? b(n, "default", { value: e, enumerable: !0 }) : n, e)), O = n({}), k = () => s(O), ee = i(({ compact: e = !1, skin: t = "borderless", ariaLabelledBy: n, children: r, name: i, className: a }, o) => { let s = [ "pkt-accordion", e && "pkt-accordion--compact", t && `pkt-accordion--${t}`, a ].filter(Boolean).join(" "); return /* @__PURE__ */ g(O.Provider, { value: { name: i, skin: t }, children: /* @__PURE__ */ g("div", { ref: o, className: s, "data-testid": "pkt-accordion", "aria-labelledby": n || void 0, children: r }) }); }); ee.displayName = "PktAccordion"; //#endregion //#region src/components/icon/Icon.tsx var A = /* @__PURE__ */ D((/* @__PURE__ */ T(((e, t) => { (function() { var e = {}.hasOwnProperty; function n() { for (var e = "", t = 0; t < arguments.length; t++) { var n = arguments[t]; n && (e = i(e, r(n))); } return e; } function r(t) { if (typeof t == "string" || typeof t == "number") return t; if (typeof t != "object") return ""; if (Array.isArray(t)) return n.apply(null, t); if (t.toString !== Object.prototype.toString && !t.toString.toString().includes("[native code]")) return t.toString(); var r = ""; for (var a in t) e.call(t, a) && t[a] && (r = i(r, a)); return r; } function i(e, t) { return t ? e ? e + " " + t : e + t : e; } t !== void 0 && t.exports ? (n.default = n, t.exports = n) : typeof define == "function" && typeof define.amd == "object" && define.amd ? define("classnames", [], function() { return n; }) : window.classNames = n; })(); })))(), 1), j = "https://punkt-cdn.oslo.kommune.no/17.0/icons/"; typeof window < "u" && (window.pktFetch = window.pktFetch === void 0 ? fetch : window.pktFetch, window.pktIconPath = window.pktIconPath || j); var M = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 32 32\"></svg>", te = {}, ne = 2, re = 1500, N = typeof Storage < "u" && typeof sessionStorage < "u", ie = typeof window < "u" ? d : c, ae = (e, t) => !e || !N ? "" : sessionStorage.getItem(t + e + ".svg") ?? "", oe = (e) => window.pktFetch(e).then((t) => { if (!t.ok) throw Error("Missing icon: " + e); return t.text(); }), se = async (e, t = ne) => { try { return await oe(e); } catch { return t > 0 ? (await new Promise((e) => setTimeout(e, re)), se(e, t - 1)) : (console.error("Failed to fetch icon: " + e), M); } }, ce = async (e, t) => { let n = t + e + ".svg"; return N && sessionStorage.getItem(n) ? sessionStorage.getItem(n) : n in te ? te[n] : typeof window < "u" && typeof window.pktFetch == "function" ? (te[n] = se(n).then((e) => (e !== M && N && sessionStorage.setItem(n, e), delete te[n], e)), te[n]) : M; }, le = (e) => { if (e !== void 0) return e === !0 || e === "true"; }, P = i(function({ name: e = "", path: t, className: n, ariaHidden: r, ariaLabel: i, "aria-hidden": a, "aria-label": o, ...s }, c) { let l = t ?? (typeof window < "u" ? window.pktIconPath : j), u = p(null), d = le(r) ?? le(a), f = i ?? o, m = d === void 0 ? !f : d, h = m ? void 0 : f || e; ie(() => { let t = u.current; if (!t) return; let n = (e) => { let t = e.querySelector("svg"); t && (t.setAttribute("aria-hidden", String(m)), h ? t.setAttribute("aria-label", h) : t.removeAttribute("aria-label")); }; if (!e) { t.innerHTML = ""; return; } let r = ae(e, l); if (r) { t.innerHTML = r, n(t); return; } let i = !1; return ce(e, l).then((e) => { if (i) return; let t = u.current; t && (t.innerHTML = e || M, n(t)); }), () => { i = !0; }; }, [ e, l, m, h ]); let _ = (e) => { u.current = e, typeof c == "function" ? c(e) : c && (c.current = e); }; return /* @__PURE__ */ g("span", { ...s, ref: _, className: (0, A.default)("pkt-icon", n), ...e ? { name: e } : {}, "data-path": l }); }); P.displayName = "PktIcon"; //#endregion //#region src/components/accordion/AccordionItem.tsx var F = i(({ defaultOpen: e = !1, id: t, title: n, skin: r, compact: i = !1, isOpen: a, children: o, name: s, className: c, onClick: l, onToggle: u }, d) => { let [f, p] = m(e), { name: v, skin: y } = k(), b = s || v, x = r || y, S = a === void 0 ? f : a; return /* @__PURE__ */ _("details", { ref: d, className: [ "pkt-accordion-item", i && "pkt-accordion-item--compact", r && `pkt-accordion-item--${r}`, c ].filter(Boolean).join(" "), id: t, open: S, onClick: (e) => { setTimeout(() => { l?.(e); }, 0); }, name: b, onToggle: (e) => { let t = e.currentTarget.open; t !== S && (a === void 0 && p(t), u?.(e)); }, children: [/* @__PURE__ */ _("summary", { className: "pkt-accordion-item__title", id: `pkt-accordion-item-summary-${t}`, children: [n, x === "plus-minus" ? /* @__PURE__ */ _(h, { children: [/* @__PURE__ */ g(P, { name: "plus-sign", className: "pkt-accordion-item__icon pkt-accordion-item__icon--plus", "aria-hidden": "true" }), /* @__PURE__ */ g(P, { name: "minus-sign", className: "pkt-accordion-item__icon pkt-accordion-item__icon--minus", "aria-hidden": "true" })] }) : /* @__PURE__ */ g(P, { name: "chevron-thin-down", className: "pkt-accordion-item__icon", "aria-hidden": "true" })] }), /* @__PURE__ */ g("div", { className: "pkt-accordion-item__content", id: `pkt-accordion-item__content-${t}`, role: "region", children: /* @__PURE__ */ g("div", { className: "pkt-accordion-item__content-inner", children: o }) })] }); }); //#endregion //#region src/components/button/Button.tsx F.displayName = "PktAccordionItem", typeof window < "u" && (window.pktAnimationPath = window.pktAnimationPath || "https://punkt-cdn.oslo.kommune.no/17.0/animations/"); var I = i(({ children: e, className: t, iconName: n = "user", secondIconName: r = "user", iconPath: i, secondIconPath: a, size: o = "medium", fullWidth: s = !1, fullWidthOnMobile: c = !1, skin: l = "primary", type: u = "button", variant: d = "label-only", state: f, color: p, isLoading: m = void 0, disabled: h = void 0, loadingAnimationPath: v = window.pktAnimationPath, ...y }, b) => { let x = [ t, "pkt-btn", o && `pkt-btn--${o}`, s && "pkt-btn--full", c && "pkt-btn--full-small", l && `pkt-btn--${l}`, d && `pkt-btn--${d}`, p && `pkt-btn--${p}`, f && `pkt-btn--${f}`, m && "pkt-btn--isLoading" ].filter(Boolean).join(" "); return /* @__PURE__ */ _("button", { ...y, "aria-busy": m || void 0, "aria-disabled": h || void 0, disabled: h, className: x, type: u, ref: b, children: [ m && /* @__PURE__ */ g(P, { className: "pkt-btn__icon pkt-btn__spinner", name: "spinner-blue", path: v }), d !== "label-only" && /* @__PURE__ */ g(P, { className: "pkt-btn__icon", name: n, ...i && { path: i } }), /* @__PURE__ */ g("span", { className: "pkt-btn__text", children: e }), d === "icons-right-and-left" && /* @__PURE__ */ g(P, { className: "pkt-btn__icon", name: r, ...a && { path: a } }) ] }); }); I.displayName = "PktButton"; //#endregion //#region src/components/alert/Alert.tsx var L = ({ children: e, closeAlert: t, compact: n, size: r = n ? "small" : "medium", title: i, date: a, ariaLive: s, "aria-live": c = "polite", role: l = "status", skin: u = "info", className: d, ...f }) => { let [p, h] = m(!1), v = { "pkt-alert": !0, [`pkt-alert--${r}`]: r, [`pkt-alert--${u}`]: u, "pkt-hide": p }, y = { "pkt-alert__grid": !0, "pkt-alert__noTitle": !i, "pkt-alert__noDate": !a }, b = o(() => { h(!0), f.onClose && f.onClose(new CustomEvent("close", { detail: { origin: event }, bubbles: !0, composed: !0 })); }, [f.onClose, h]), x = s || c; return /* @__PURE__ */ g("div", { ...f, "aria-live": x, role: l, className: (0, A.default)(v, d), children: /* @__PURE__ */ _("div", { className: (0, A.default)(y), children: [ /* @__PURE__ */ g(P, { className: "pkt-alert__icon", "aria-hidden": "true", name: u === "info" ? "alert-information" : `alert-${u}` }), t && /* @__PURE__ */ g("div", { className: "pkt-alert__close", children: /* @__PURE__ */ g(I, { tabIndex: 0, "aria-label": "close", size: r, type: "button", skin: "tertiary", iconName: "close", variant: "icon-only", onClick: b, children: /* @__PURE__ */ g("span", { className: "sr-only", children: "Lukk" }) }) }), i && /* @__PURE__ */ g("div", { className: "pkt-alert__title", children: i }), /* @__PURE__ */ g("div", { className: "pkt-alert__text", children: e }), a && /* @__PURE__ */ _("div", { className: "pkt-alert__date", children: ["Sist oppdatert: ", a] }) ] }) }); }; L.displayName = "PktAlert"; //#endregion //#region src/components/backlink/BackLink.tsx var R = i(({ href: e = "/", text: t = "Forsiden", ariaLabel: n, renderLink: r, className: i, ...a }, o) => { let s = /* @__PURE__ */ _(h, { children: [/* @__PURE__ */ g(P, { className: "pkt-back-link__icon pkt-icon pkt-link__icon", name: "chevron-thin-left", "aria-hidden": "true" }), /* @__PURE__ */ g("span", { className: "pkt-back-link__text", children: t })] }), c = r || (({ href: e, className: t, children: n, props: r }) => /* @__PURE__ */ g("a", { href: e, className: t, ...r, children: n })); return /* @__PURE__ */ g("nav", { className: ["pkt-back-link", i].filter(Boolean).join(" "), "aria-label": n || "Gå tilbake til forrige side", ref: o, children: c({ href: e, className: "pkt-link pkt-link--icon-left", children: s, props: a }) }); }); R.displayName = "PktBackLink"; //#endregion //#region src/components/breadcrumbs/Breadcrumbs.tsx var z = i(({ breadcrumbs: e, navigationType: t, renderLink: n, className: r, ...i }, a) => { let o = e, s = o[o.length - 2], c = [r, "pkt-breadcrumbs"].filter(Boolean).join(" "), l = n || (t === "router" ? ({ href: e, className: t, children: n, props: r }) => /* @__PURE__ */ g(v, { to: e, className: t, ...r, children: n }) : ({ href: e, className: t, children: n, props: r }) => /* @__PURE__ */ g("a", { href: e, className: t, ...r, children: n })); return /* @__PURE__ */ _("nav", { ref: a, "aria-label": "brødsmulemeny", className: c, children: [/* @__PURE__ */ g("ol", { className: "pkt-breadcrumbs__list pkt-breadcrumbs--desktop", children: o.map((e, t) => /* @__PURE__ */ g("li", { className: "pkt-breadcrumbs__item", children: t === o.length - 1 ? /* @__PURE__ */ g("span", { className: "pkt-breadcrumbs__label", "aria-current": "true", children: /* @__PURE__ */ g("span", { className: "pkt-breadcrumbs__text", children: e.text }) }) : l({ href: e.href, className: "pkt-link pkt-link--icon-right pkt-breadcrumbs__label pkt-breadcrumbs__link", children: /* @__PURE__ */ _(h, { children: [/* @__PURE__ */ g(P, { className: "pkt-icon pkt-breadcrumbs__icon pkt-link__icon", name: "chevron-thin-right" }), /* @__PURE__ */ g("span", { className: "pkt-breadcrumbs__text", children: e.text })] }), props: i }) }, `breadcrumb-${t}`)) }), l({ href: s.href, className: "pkt-link pkt-link--icon-left pkt-breadcrumbs--mobile", children: /* @__PURE__ */ _(h, { children: [/* @__PURE__ */ g(P, { className: "pkt-back-link__icon pkt-icon pkt-link__icon", name: "chevron-thin-left" }), /* @__PURE__ */ g("span", { className: "pkt-breadcrumbs__text", children: s.text })] }), props: i })] }); }); z.displayName = "PktBreadcrumbs"; //#endregion //#region ../../node_modules/date-fns/constants.js var ue = 365.2425, B = 6048e5, V = 864e5, H = 3600 * 24; H * 7, H * ue / 12 * 3; var U = Symbol.for("constructDateFrom"); //#endregion //#region ../../node_modules/date-fns/constructFrom.js function W(e, t) { return typeof e == "function" ? e(t) : e && typeof e == "object" && U in e ? e[U](t) : e instanceof Date ? new e.constructor(t) : new Date(t); } //#endregion //#region ../../node_modules/date-fns/toDate.js function G(e, t) { return W(t || e, e); } //#endregion //#region ../../node_modules/date-fns/addDays.js function K(e, t, n) { let r = G(e, n?.in); return isNaN(t) ? W(n?.in || e, NaN) : (t && r.setDate(r.getDate() + t), r); } //#endregion //#region ../../node_modules/date-fns/_lib/defaultOptions.js var de = {}; function fe() { return de; } //#endregion //#region ../../node_modules/date-fns/startOfWeek.js function q(e, t) { let n = fe(), r = t?.weekStartsOn ?? t?.locale?.options?.weekStartsOn ?? n.weekStartsOn ?? n.locale?.options?.weekStartsOn ?? 0, i = G(e, t?.in), a = i.getDay(), o = (a < r ? 7 : 0) + a - r; return i.setDate(i.getDate() - o), i.setHours(0, 0, 0, 0), i; } //#endregion //#region ../../node_modules/date-fns/startOfISOWeek.js function J(e, t) { return q(e, { ...t, weekStartsOn: 1 }); } //#endregion //#region ../../node_modules/date-fns/getISOWeekYear.js function pe(e, t) { let n = G(e, t?.in), r = n.getFullYear(), i = W(n, 0); i.setFullYear(r + 1, 0, 4), i.setHours(0, 0, 0, 0); let a = J(i), o = W(n, 0); o.setFullYear(r, 0, 4), o.setHours(0, 0, 0, 0); let s = J(o); return n.getTime() >= a.getTime() ? r + 1 : n.getTime() >= s.getTime() ? r : r - 1; } //#endregion //#region ../../node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js function Y(e) { let t = G(e), n = new Date(Date.UTC(t.getFullYear(), t.getMonth(), t.getDate(), t.getHours(), t.getMinutes(), t.getSeconds(), t.getMilliseconds())); return n.setUTCFullYear(t.getFullYear()), e - +n; } //#endregion //#region ../../node_modules/date-fns/_lib/normalizeDates.js function X(e, ...t) { let n = W.bind(null, e || t.find((e) => typeof e == "object")); return t.map(n); } //#endregion //#region ../../node_modules/date-fns/startOfDay.js function Z(e, t) { let n = G(e, t?.in); return n.setHours(0, 0, 0, 0), n; } //#endregion //#region ../../node_modules/date-fns/differenceInCalendarDays.js function Q(e, t, n) { let [r, i] = X(n?.in, e, t), a = Z(r), o = Z(i), s = +a - Y(a), c = +o - Y(o); return Math.round((s - c) / V); } //#endregion //#region ../../node_modules/date-fns/startOfISOWeekYear.js function me(e, t) { let n = pe(e, t), r = W(t?.in || e, 0); return r.setFullYear(n, 0, 4), r.setHours(0, 0, 0, 0), J(r); } //#endregion //#region ../../node_modules/date-fns/isDate.js function he(e) { return e instanceof Date || typeof e == "object" && Object.prototype.toString.call(e) === "[object Date]"; } //#endregion //#region ../../node_modules/date-fns/isValid.js function ge(e) { return !(!he(e) && typeof e != "number" || isNaN(+G(e))); } //#endregion //#region ../../node_modules/date-fns/endOfDay.js function _e(e, t) { let n = G(e, t?.in); return n.setHours(23, 59, 59, 999), n; } //#endregion //#region ../../node_modules/date-fns/_lib/normalizeInterval.js function ve(e, t) { let [n, r] = X(e, t.start, t.end); return { start: n, end: r }; } //#endregion //#region ../../node_modules/date-fns/eachDayOfInterval.js function ye(e, t) { let { start: n, end: r } = ve(t?.in, e), i = +n > +r, a = i ? +n : +r, o = i ? r : n; o.setHours(0, 0, 0, 0); let s = t?.step ?? 1; if (!s) return []; s < 0 && (s = -s, i = !i); let c = []; for (; +o <= a;) c.push(W(n, o)), o.setDate(o.getDate() + s), o.setHours(0, 0, 0, 0); return i ? c.reverse() : c; } //#endregion //#region ../../node_modules/date-fns/startOfYear.js function be(e, t) { let n = G(e, t?.in); return n.setFullYear(n.getFullYear(), 0, 1), n.setHours(0, 0, 0, 0), n; } //#endregion //#region ../../node_modules/date-fns/locale/en-US/_lib/formatDistance.js var xe = { 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" } }, Se = (e, t, n) => { let r, i = xe[e]; return r = typeof i == "string" ? i : t === 1 ? i.one : i.other.replace("{{count}}", t.toString()), n?.addSuffix ? n.comparison && n.comparison > 0 ? "in " + r : r + " ago" : r; }; //#endregion //#region ../../node_modules/date-fns/locale/_lib/buildFormatLongFn.js function Ce(e) { return (t = {}) => { let n = t.width ? String(t.width) : e.defaultWidth; return e.formats[n] || e.formats[e.defaultWidth]; }; } var we = { date: Ce({ formats: { full: "EEEE, MMMM do, y", long: "MMMM do, y", medium: "MMM d, y", short: "MM/dd/yyyy" }, defaultWidth: "full" }), time: Ce({ formats: { full: "h:mm:ss a zzzz", long: "h:mm:ss a z", medium: "h:mm:ss a", short: "h:mm a" }, defaultWidth: "full" }), dateTime: Ce({ formats: { full: "{{date}} 'at' {{time}}", long: "{{date}} 'at' {{time}}", medium: "{{date}}, {{time}}", short: "{{date}}, {{time}}" }, defaultWidth: "full" }) }, Te = { lastWeek: "'last' eeee 'at' p", yesterday: "'yesterday at' p", today: "'today at' p", tomorrow: "'tomorrow at' p", nextWeek: "eeee 'at' p", other: "P" }, Ee = (e, t, n, r) => Te[e]; //#endregion //#region ../../node_modules/date-fns/locale/_lib/buildLocalizeFn.js function De(e) { return (t, n) => { let r = n?.context ? String(n.context) : "standalone", i; if (r === "formatting" && e.formattingValues) { let t = e.defaultFormattingWidth || e.defaultWidth, r = n?.width ? String(n.width) : t; i = e.formattingValues[r] || e.formattingValues[t]; } else { let t = e.defaultWidth, r = n?.width ? String(n.width) : e.defaultWidth; i = e.values[r] || e.values[t]; } let a = e.argumentCallback ? e.argumentCallback(t) : t; return i[a]; }; } var Oe = { ordinalNumber: (e, t) => { let n = Number(e), r = n % 100; if (r > 20 || r < 10) switch (r % 10) { case 1: return n + "st"; case 2: return n + "nd"; case 3: return n + "rd"; } return n + "th"; }, era: De({ values: { narrow: ["B", "A"], abbreviated: ["BC", "AD"], wide: ["Before Christ", "Anno Domini"] }, defaultWidth: "wide" }), quarter: De({ values: { narrow: [ "1", "2", "3", "4" ], abbreviated: [ "Q1", "Q2", "Q3", "Q4" ], wide: [ "1st quarter", "2nd quarter", "3rd quarter", "4th quarter" ] }, defaultWidth: "wide", argumentCallback: (e) => e - 1 }), month: De({ values: { 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" ] }, defaultWidth: "wide" }), day: De({ values: { 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" ] }, defaultWidth: "wide" }), dayPeriod: De({ values: { 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" } }, defaultWidth: "wide", formattingValues: { 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" } }, defaultFormattingWidth: "wide" }) }; //#endregion //#region ../../node_modules/date-fns/locale/_lib/buildMatchFn.js function ke(e) { return (t, n = {}) => { let r = n.width, i = r && e.matchPatterns[r] || e.matchPatterns[e.defaultMatchWidth], a = t.match(i); if (!a) return null; let o = a[0], s = r && e.parsePatterns[r] || e.parsePatterns[e.defaultParseWidth], c = Array.isArray(s) ? je(s, (e) => e.test(o)) : Ae(s, (e) => e.test(o)), l; l = e.valueCallback ? e.valueCallback(c) : c, l = n.valueCallback ? n.valueCallback(l) : l; let u = t.slice(o.length); return { value: l, rest: u }; }; } function Ae(e, t) { for (let n in e) if (Object.prototype.hasOwnProperty.call(e, n) && t(e[n])) return n; } function je(e, t) { for (let n = 0; n < e.length; n++) if (t(e[n])) return n; } //#endregion //#region ../../node_modules/date-fns/locale/_lib/buildMatchPatternFn.js function Me(e) { return (t, n = {}) => { let r = t.match(e.matchPattern); if (!r) return null; let i = r[0], a = t.match(e.parsePattern); if (!a) return null; let o = e.valueCallback ? e.valueCallback(a[0]) : a[0]; o = n.valueCallback ? n.valueCallback(o) : o; let s = t.slice(i.length); return { value: o, rest: s }; }; } //#endregion //#region ../../node_modules/date-fns/locale/en-US.js var Ne = { code: "en-US", formatDistance: Se, formatLong: we, formatRelative: Ee, localize: Oe, match: { ordinalNumber: Me({ matchPattern: /^(\d+)(th|st|nd|rd)?/i, parsePattern: /\d+/i, valueCallback: (e) => parseInt(e, 10) }), era: ke({ matchPatterns: { 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 }, defaultMatchWidth: "wide", parsePatterns: { any: [/^b/i, /^(a|c)/i] }, defaultParseWidth: "any" }), quarter: ke({ matchPatterns: { narrow: /^[1234]/i, abbreviated: /^q[1234]/i, wide: /^[1234](th|st|nd|rd)? quarter/i }, defaultMatchWidth: "wide", parsePatterns: { any: [ /1/i, /2/i, /3/i, /4/i ] }, defaultParseWidth: "any", valueCallback: (e) => e + 1 }), month: ke({ matchPatterns: { 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 }, defaultMatchWidth: "wide", parsePatterns: { 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 ] }, defaultParseWidth: "any" }), day: ke({ matchPatterns: { 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 }, defaultMatchWidth: "wide", parsePatterns: { 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 ] }, defaultParseWidth: "any" }), dayPeriod: ke({ matchPatterns: { 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 }, defaultMatchWidth: "any", parsePatterns: { 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 } }, defaultParseWidth: "any" }) }, options: { weekStartsOn: 0, firstWeekContainsDate: 1 } }; //#endregion //#region ../../node_modules/date-fns/getDayOfYear.js function Pe(e, t) { let n = G(e, t?.in); return Q(n, be(n)) + 1; } //#endregion //#region ../../node_modules/date-fns/getISOWeek.js function Fe(e, t) { let n = G(e, t?.in), r = J(n) - +me(n); return Math.round(r / B) + 1; } //#endregion //#region ../../node_modules/date-fns/getWeekYear.js function Ie(e, t) { let n = G(e, t?.in), r = n.getFullYear(), i = fe(), a = t?.firstWeekContainsDate ?? t?.locale?.options?.firstWeekContainsDate ?? i.firstWeekContainsDate ?? i.locale?.options?.firstWeekContainsDate ?? 1, o = W(t?.in || e, 0); o.setFullYear(r + 1, 0, a), o.setHours(0, 0, 0, 0); let s = q(o, t), c = W(t?.in || e, 0); c.setFullYear(r, 0, a), c.setHours(0, 0, 0, 0); let l = q(c, t); return +n >= +s ? r + 1 : +n >= +l ? r : r - 1; } //#endregion //#region ../../node_modules/date-fns/startOfWeekYear.js function Le(e, t) { let n = fe(), r = t?.firstWeekContainsDate ?? t?.locale?.options?.firstWeekContainsDate ?? n.firstWeekContainsDate ?? n.locale?.options?.firstWeekContainsDate ?? 1, i = Ie(e, t), a = W(t?.in || e, 0); return a.setFullYear(i, 0, r), a.setHours(0, 0, 0, 0), q(a, t); } //#endregion //#region ../../node_modules/date-fns/getWeek.js function Re(e, t) { let n = G(e, t?.in), r = q(n, t) - +Le(n, t); return Math.round(r / B) + 1; } //#endregion //#region ../../node_modules/date-fns/_lib/addLeadingZeros.js function $(e, t) { return (e < 0 ? "-" : "") + Math.abs(e).toString().padStart(t, "0"); } //#endregion //#region ../../node_modules/date-fns/_lib/format/lightFormatters.js var ze = { y(e, t) { let n = e.getFullYear(), r = n > 0 ? n : 1 - n; return $(t === "yy" ? r % 100 : r, t.length); }, M(e, t) { let n = e.getMonth(); return t === "M" ? String(n + 1) : $(n + 1, 2); }, d(e, t) { return $(e.getDate(), t.length); }, a(e, t) { let n = e.getHours() / 12 >= 1 ? "pm" : "am"; switch (t) { case "a": case "aa": return n.toUpperCase(); case "aaa": return n; case "aaaaa": return n[0]; default: return n === "am" ? "a.m." : "p.m."; } }, h(e, t) { return $(e.getHours() % 12 || 12, t.length); }, H(e, t) { return $(e.getHours(), t.length); }, m(e, t) { return $(e.getMinutes(), t.length); }, s(e, t) { return $(e.getSeconds(), t.length); }, S(e, t) { let n = t.length, r = e.getMilliseconds(); return $(Math.trunc(r * 10 ** (n - 3)), t.length); } }, Be = { am: "am", pm: "pm", midnight: "midnight", noon: "noon", morning: "morning", afternoon: "afternoon", evening: "evening", night: "night" }, Ve = { G: function(e, t, n) { let r = +(e.getFullYear() > 0); switch (t) { case "G": case "GG": case "GGG": return n.era(r, { width: "abbreviated" }); case "GGGGG": return n.era(r, { width: "narrow" }); default: return n.era(r, { width: "wide" }); } }, y: function(e, t, n) { if (t === "yo") { let t = e.getFullYear(), r = t > 0 ? t : 1 - t; return n.ordinalNumber(r, { unit: "year" }); } return ze.y(e, t); }, Y: function(e, t, n, r) { let i = Ie(e, r), a = i > 0 ? i : 1 - i; return t === "YY" ? $(a % 100, 2) : t === "Yo" ? n.ordinalNumber(a, { unit: "year" }) : $(a, t.length); }, R: function(e, t) { return $(pe(e), t.length); }, u: function(e, t) { return $(e.getFullYear(), t.length); }, Q: function(e, t, n) { let r = Math.ceil((e.getMonth() + 1) / 3); switch (t) { case "Q": return String(r); case "QQ": return $(r, 2); case "Qo": return n.ordinalNumber(r, { unit: "quarter" }); case "QQQ": return n.quarter(r, { width: "abbreviated", context: "formatting" }); case "QQQQQ": return n.quarter(r, { width: "narrow", context: "formatting" }); default: return n.quarter(r, { width: "wide", context: "formatting" }); } }, q: function(e, t, n) { let r = Math.ceil((e.getMonth() + 1) / 3); switch (t) { case "q": return String(r); case "qq": return $(r, 2); case "qo": return n.ordinalNumber(r, { unit: "quarter" }); case "qqq": return n.quarter(r, { width: "abbreviated", context: "standalone" }); case "qqqqq": return n.quarter(r, { width: "narrow", context: "standalone" }); default: return n.quarter(r, { width: "wide", context: "standalone" }); } }, M: function(e, t, n) { let r = e.getMonth(); switch (t) { case "M": case "MM": return ze.M(e, t); case "Mo": return n.ordinalNumber(r + 1, { unit: "month" }); case "MMM": return n.month(r, { width: "abbreviated", context: "formatting" }); case "MMMMM": return n.month(r, { width: "narrow", context: "formatting" }); default: return n.month(r, { width: "wide", context: "formatting" }); } }, L: function(e, t, n) { let r = e.getMonth(); switch (t) { case "L": return String(r + 1); case "LL": return $(r + 1, 2); case "Lo": return n.ordinalNumber(r + 1, { unit: "month" }); case "LLL": return n.month(r, { width: "abbreviated", context: "standalone" }); case "LLLLL": return n.month(r, { width: "narrow", context: "standalone" }); default: return n.month(r, { width: "wide", context: "standalone" }); } }, w: function(e, t, n, r) { let i = Re(e, r); return t === "wo" ? n.ordinalNumber(i, { unit: "week" }) : $(i, t.length); }, I: function(e, t, n) { let r = Fe(e); return t === "Io" ? n.ordinalNumber(r, { unit: "week" }) : $(r, t.length); }, d: function(e, t, n) { return t === "do" ? n.ordinalNumber(e.getDate(), { unit: "date" }) : ze.d(e, t); }, D: function(e, t, n) { let r = Pe(e); return t === "Do" ? n.ordinalNumber(r, { unit: "dayOfYear" }) : $(r, t.length); }, E: function(e, t, n) { let r = e.getDay(); switch (t) { case "E": case "EE": case "EEE": return n.day(r, { width: "abbreviated", context: "formatting" }); case "EEEEE": return n.day(r, { width: "narrow", context: "formatting" }); case "EEEEEE": return n.day(r, { width: "short", context: "formatting" }); default: return n.day(r, { width: "wide", context: "formatting" }); } }, e: function(e, t, n, r) { let i = e.getDay(), a = (i - r.weekStartsOn + 8) % 7 || 7; switch (t) { case "e": return String(a); case "ee": return $(a, 2); case "eo": return n.ordinalNumber(a, { unit: "day" }); case "eee": return n.day(i, { width: "abbreviated", context: "formatting" }); case "eeeee": return n.day(i, { width: "narrow", context: "formatting" }); case "eeeeee": return n.day(i, { width: "short", context: "formatting" }); default: return n.day(i, { width: "wide", context: "formatting" }); } }, c: function(e, t, n, r) { let i = e.getDay(), a = (i - r.weekStartsOn + 8) % 7 || 7; switch (t) { case "c": return String(a); case "cc": return $(a, t.length); case "co": return n.ordinalNumber(a, { unit: "day" }); case "ccc": return n.day(i, { width: "abbreviated", context: "standalone" }); case "ccccc": return n.day(i, { width: "narrow", context: "standalone" }); case "cccccc": return n.day(i, { width: "short", context: "standalone" }); default: return n.day(i, { width: "wide", context: "standalone" }); } }, i: function(e, t, n) { let r = e.getDay(), i = r === 0 ? 7 : r; switch (t) { case "i": return String(i); case "ii": return $(i, t.length); case "io": return n.ordinalNumber(i, { unit: "day" }); case "iii": return n.day(r, { width: "abbreviated", context: "formatting" }); case "iiiii": return n.day(r, { width: "narrow", context: "formatting" }); case "iiiiii": return n.day(r, { width: "short", context: "formatting" }); default: return n.day(r, { width: "wide", context: "formatting" }); } }, a: function(e, t, n) { let r = e.getHours() / 12 >= 1 ? "pm" : "am"; switch (t) { case "a": case "aa": return n.dayPeriod(r, { width: "abbreviated", context: "formatting" }); case "aaa": return n.dayPeriod(r, { width: "abbreviated", context: "formatting" }).toLowerCase(); case "aaaaa": return n.dayPeriod(r, { width: "narrow", context: "formatting" }); default: return n.dayPeriod(r, { width: "wide", context: "formatting" }); } }, b: function(e, t, n) { let r = e.getHours(), i; switch (i = r === 12 ? Be.noon : r === 0 ? Be.midnight : r / 12 >= 1 ? "pm" : "am", t) { case "b": case "bb": return n.dayPeriod(i, { width: "abbreviated", context: "formatting" }); case "bbb": return n.dayPeriod(i, { width: "abbreviated", context: "formatting" }).toLowerCase(); case "bbbbb": return n.dayPeriod(i, { width: "narrow", context: "formatting" }); default: return n.dayPeriod(i, { width: "wide", context: "formatting" }); } }, B: function(e, t, n) { let r = e.getHours(), i; switch (i = r >= 17 ? Be.evening : r >= 12 ? Be.afternoon : r >= 4 ? Be.morning : Be.night, t) { case "B": case "BB": case "BBB": return n.dayPeriod(i, { width: "abbreviated", context: "formatting" }); case "BBBBB": return n.dayPeriod(i, { width: "narrow", context: "formatting" }); default: return n.dayPeriod(i, { width: "wide", context: "formatting" }); } }, h: function(e, t, n) { if (t === "ho") { let t = e.getHours() % 12; return t === 0 && (t = 12), n.ordinalNumber(t, { unit: "hour" }); } return ze.h(e, t); }, H: function(e, t, n) { return t === "Ho" ? n.ordinalNumber(e.getHours(), { unit: "hour" }) : ze.H(e, t); }, K: function(e, t, n) { let r = e.getHours() % 12; return t === "Ko" ? n.ordinalNumber(r, { unit: "hour" }) : $(r, t.length); }, k: function(e, t, n) { let r = e.getHours(); return r === 0 && (r = 24), t === "ko" ? n.ordinalNumber(r, { unit: "hour" }) : $(r, t.length); }, m: function(e, t, n) { return t === "mo" ? n.ordinalNumber(e.getMinutes(), { unit: "minute" }) : ze.m(e, t); }, s: function(e, t, n) { return t === "so" ? n.ordinalNumber(e.getSeconds(), { unit: "second" }) : ze.s(e, t); }, S: function(e, t) { return ze.S(e, t); }, X: function(e, t, n) { let r = e.getTimezoneOffset(); if (r === 0) return "Z"; switch (t) { case "X": return Ue(r); case "XXXX": case "XX": return We(r); default: return We(r, ":"); } }, x: function(e, t, n) { let r = e.getTimezoneOffset(); switch (t) { case "x": return Ue(r); case "xxxx": case "xx": return We(r); default: return We(r, ":"); } }, O: function(e, t, n) { let r = e.getTimezoneOffset(); switch (t) { case "O": case "OO": case "OOO": return "GMT" + He(r, ":"); default: return "GMT" + We(r, ":"); } }, z: function(e, t, n) { let r = e.getTimezoneOffset(); switch (t) { case "z": case "zz": case "zzz": return "GMT" + He(r, ":"); default: return "GMT" + We(r, ":"); } }, t: function(e, t, n) { return $(Math.trunc(e / 1e3), t.length); }, T: function(e, t, n) { return $(+e, t.length); } }; function He(e, t = "") { let n = e > 0 ? "-" : "+", r = Math.abs(e), i = Math.trunc(r / 60), a = r % 60; return a === 0 ? n + String(i) : n + String(i) + t + $(a, 2); } function Ue(e, t) { return e % 60 == 0 ? (e > 0 ? "-" : "+") + $(Math.abs(e) / 60, 2) : We(e, t); } function We(e, t = "") { let n = e > 0 ? "-" : "+", r = Math.abs(e), i = $(Math.trunc(r / 60), 2), a = $(r % 60, 2); return n + i + t + a; } //#endregion //#region ../../node_modules/date-fns/_lib/format/longFormatters.js var Ge = (e, t) => { switch (e) { case "P": return t.date({ width: "short" }); case "PP": return t.date({ width: "medium" }); case "PPP": return t.date({ width: "long" }); default: return t.date({ width: "full" }); } }, Ke = (e, t) => { switch (e) { case "p": return t.time({ width: "short" }); case "pp": return t.time({ width: "medium" }); case "ppp": return t.time({ width: "long" }); default: return t.time({ width: "full" }); } }, qe = { p: Ke, P: (e, t) => { let n = e.match(/(P+)(p+)?/) || [], r = n[1], i = n[2]; if (!i) return Ge(e, t); let a; switch (r) { case "P": a = t.dateTime({ width: "short" }); break; case "PP": a = t.dateTime({ width: "medium" }); break; case "PPP": a = t.dateTime({ width: "long" }); break; default: a = t.dateTime({ width: "full" }); break; } return a.replace("{{date}}", Ge(r, t)).replace("{{time}}", Ke(i, t)); } }, Je = /^D+$/, Ye = /^Y+$/, Xe = [ "D", "DD", "YY", "YYYY" ]; function Ze(e) { return Je.test(e); } function Qe(e) { return Ye.test(e); } function $e(e, t, n) { let r = et(e, t, n); if (console.warn(r), Xe.includes(e)) throw RangeError(r); } function et(e, t, n) { let r = e[0] === "Y" ? "years" : "days of the month"; return `Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`; } //#endregion //#region ../../node_modules/date-fns/format.js var tt = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g, nt = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g, rt = /^'([^]*?)'?$/, it = /''/g, at = /[a-zA-Z]/; function ot(e, t, n) { let r = fe(), i = n?.locale ?? r.locale ?? Ne, a = n?.firstWeekContainsDate ?? n?.locale?.options?.firstWeekContainsDate ?? r.firstWeekContainsDate ?? r.locale?.options?.firstWeekContainsDate ?? 1, o = n?.weekStartsOn ?? n?.locale?.options?.weekStartsOn ?? r.weekStartsOn ?? r.locale?.options?.weekStartsOn ?? 0, s = G(e, n?.in); if (!ge(s)) throw RangeError("Invalid time value"); let c = t.match(nt).map((e) => { let t = e[0]; if (t === "p" || t === "P") { let n = qe[t]; return n(e, i.formatLong); } return e; }).join("").match(tt).map((e) => { if (e === "''") return { isToken: !1, value: "'" }; let t = e[0]; if (t === "'") return { isToken: !1, value: st(e) }; if (Ve[t]) return { isToken: !0, value: e }; if (t.match(at)) throw RangeError("Format string contains an unescaped latin alphabet character `" + t + "`"); return { isToken: !1, value: e }; }); i.localize.preprocessor && (c = i.localize.preprocessor(s, c)); let l = { firstWeekContainsDate: a, weekStartsOn: o, locale: i }; return c.map((r) => { if (!r.isToken) return r.value; let a = r.value; (!n?.useAdditionalWeekYearTokens && Qe(a) || !n?.useAdditionalDayOfYearTokens && Ze(a)) && $e(a, t, String(e)); let o = Ve[a[0]]; return o(s, a, i.localize, l); }).join(""); } function st(e) { let t = e.match(rt); return t ? t[1].replace(it, "'") : e; } //#endregion //#region ../../node_modules/date-fns/getISODay.js function ct(e, t) { let n = G(e, t?.in).getDay(); return n === 0 ? 7 : n; } //#endregion //#region ../../node_modules/@date-fns/tz/tzName/index.js function lt(e, t, n = "long") { return new Intl.DateTimeFormat("en-US", { hour: "numeric", timeZone: e, timeZoneName: n }).format(t).split(/\s/g).slice(2).join(" "); } //#endregion //#region ../../node_modules/@date-fns/tz/tzOffset/index.js var ut = {}, dt = {}; function ft(e, t) { try { let n = (ut[e] ||= new Intl.DateTimeFormat("en-US", { timeZone: e, timeZoneName: "longOffset" }).format)(t).split("GMT")[1]; return n in dt ? dt[n] : mt(n, n.split(":")); } catch { if (e in dt) return dt[e]; let t = e?.match(pt); return t ? mt(e, t.slice(1)) : NaN; } } var pt = /([+-]\d\d):?(\d\d)?/; function mt(e, t) { let n = +(t[0] || 0), r = +(t[1] || 0), i = (t[2] || 0) / 60; return dt[e] = n * 60 + r > 0 ? n * 60 + r + i : n * 60 - r - i; } //#endregion //#region ../../node_modules/@date-fns/tz/date/mini.js var ht = class e extends Date { constructor(...e) { super(), e.length > 1 && typeof e[e.length - 1] == "string" && (this.timeZone = e.pop()), this.internal = /* @__PURE__ */ new Date(), isNaN(ft(this.timeZone, this)) ? this.setTime(NaN) : e.length ? typeof e[0] == "number" && (e.length === 1 || e.length === 2 && typeof e[1] != "number") ? this.setTime(e[0]) : typeof e[0] == "string" ? this.setTime(+new Date(e[0])) : e[0] instanceof Date ? this.setTime(+e[0]) : (this.setTime(+new Date(...e)), yt(this, e)) : this.setTime(Date.now()); } static tz(t, ...n) { return n.length ? new e(...n, t) : new e(Date.now(), t); } withTimeZone(t) { return new e(+this, t); } getTimezoneOffset() { let e = -ft(this.timeZone, this); return e > 0 ? Math.floor(e) : Math.ceil(e); } setTime(e) { return Date.prototype.setTime.apply(this, arguments), _t(this), +this; } [Symbol.for("constructDateFrom")](t) { return new e(+new Date(t), this.timeZone); } }, gt = /^(get|set)(?!UTC)/; Object.getOwnPropertyNames(Date.prototype).forEach((e) => { if (!gt.test(e)) return; let t = e.replace(gt, "$1UTC"); ht.prototype[t] && (e.startsWith("get") ? ht.prototype[e] = function() { return this.internal[t](); } : (ht.prototype[e] = function() { return Date.prototype[t].apply(this.internal, arguments), vt(this), +this; }, ht.prototype[t] = function() { return Date.prototype[t].apply(this, arguments), _t(this), +this; })); }); function _t(e) { e.internal.setTime(+e), e.internal.setUTCSeconds(e.internal.getUTCSeconds() - Math.round(-ft(e.timeZone, e) * 60)); } function vt(e) { Date.prototype.setFullYear.call(e, e.internal.getUTCFullYear(), e.internal.getUTCMonth(), e.internal.getUTCDate()), Date.prototype.setHours.call(e, e.internal.getUTCHours(), e.internal.getUTCMinutes(), e.internal.getUTCSeconds(), e.internal.getUTCMilliseconds()), yt(e); } function yt(e, t) { let n = Array.isArray(t) ? bt(t) : +e.internal, r = ft(e.timeZone, e), i = r > 0 ? Math.floor(r) : Math.ceil(r), a = /* @__PURE__ */ new Date(+e); a.setUTCHours(a.getUTCHours() - 1); let o = -(/* @__PURE__ */ new Date(+e)).getTimezoneOffset(), s = -(/* @__PURE__ */ new Date(+a)).getTimezoneOffset(), c = o - s, l = o; if (c && o !== i && Date.prototype.getHours.apply(e) !== (Array.isArray(t) ? t[3] || 0 : e.internal.getUTCHours())) { let t = /* @__PURE__ */ new Date(+e), n = o - i; n && t.setUTCMinutes(t.getUTCMinutes() + n); let r = ft(e.timeZone, t); (r > 0 ? Math.floor(r) : Math.ceil(r)) === i && (l = s); } let u = l - i; u && Date.prototype.setUTCMinutes.call(e, Date.prototype.getUTCMinutes.call(e) + u); let d = /* @__PURE__ */ new Date(+e); d.setUTCSeconds(0); let f = o > 0 ? d.getSeconds() : (d.getSeconds() - 60) % 60, p = Math.round(-(ft(e.timeZone, e) * 60)) % 60; (p || f) && Date.prototype.setUTCSeconds.call(e, Date.prototype.getUTCSeconds.call(e) + p + f); let m = ft(e.timeZone, e), h = m > 0 ? Math.floor(m) : Math.ceil(m), g = -(/* @__PURE__ */ new Date(+e)).getTimezoneOffset() - h, _ = h !== i, v = g - u, y = h - i, b = n - h * 60 * 1e3, x = y > 0 && xt(e) - n === y * 60 * 1e3 && xt(e, b) !== n; if (_ && v && !x) { Date.prototype.setUTCMinutes.call(e, Date.prototype.getUTCMinutes.call(e) + v); let t = ft(e.timeZone, e), n = h - (t > 0 ? Math.floor(t) : Math.ceil(t)); n && v < 0 && Date.prototype.setUTCMinutes.call(e, Date.prototype.getUTCMinutes.call(e) + n); } _t(e); let S = (t ? n : n + p * 1e3) - +e.internal; S && Math.abs(S) < 1800 * 1e3 && (Date.prototype.setTime.call(e, +e + S), _t(e)); } function bt(e) { return Date.UTC(e[0], e.length > 1 ? e[1] : 0, e.length > 2 ? e[2] : 1, ...e.slice(3)); } function xt(e, t) { let n = new Date(t ?? +e); return n.setUTCSeconds(n.getUTCSeconds() - Math.round(-ft(e.timeZone, n) * 60)), +n; } //#endregion //#region ../../node_modules/@date-fns/tz/date/index.js var St = class e extends ht { static tz(t, ...n) { return n.length ? new e(...n, t) : new e(Date.now(), t); } toISOString() { let [e, t, n] = this.tzComponents(), r = `${e}${t}:${n}`; return this.internal.toISOString().slice(0, -1) + r; } toString() { return `${this.toDateString()} ${this.toTimeString()}`; } toDateString() { let [e, t, n, r] = this.internal.toUTCString().split(" "); return `${e?.slice(0, -1)} ${n} ${t} ${r}`; } toTimeString() { let e = this.internal.toUTCString().split(" ")[4], [t, n, r] = this.tzComponents(); return `${e} GMT${t}${n}${r} (${lt(this.timeZone, this)})`; } toLocaleString(e, t) { return Date.prototype.toLocaleString.call(this, e, { ...t, timeZone: t?.timeZone || this.timeZone }); } toLocaleDateString(e, t) { return Date.prototype.toLocaleDateString.call(this, e, { ...t, timeZone: t?.timeZone || this.timeZone }); } toLocaleTimeString(e, t) { return Date.prototype.toLocaleTimeString.call(this, e, { ...t, timeZone: t?.timeZone || this.timeZone }); } tzComponents() { let e = this.getTimezoneOffset(); return [ e > 0 ? "-" : "+", String(Math.floor(Math.abs(e) / 60)).padStart(2, "0"), String(Math.abs(e) % 60).padStart(2, "0") ]; } withTimeZone(t) { return new e(+this, t); } [Symbol.for("constructDateFrom")](t) { return new e(+new Date(t), this.timeZone); } }; //#endregion //#region ../../shared-utils/date-utils.ts typeof window < "u" && (window.pktTz = window.pktTz === void 0 ? "Europe/Oslo" : window.pktTz); var Ct = () => typeof window < "u" && window.pktTz || "Europe/Oslo", wt = (e = Ct()) => { let t = new St((/* @__PURE__ */ new Date()).toISOString(), e); return t.setHours(0, 0, 0, 0), isNaN(t.getTime()) ? /* @__PURE__ */ new Date() : new Date(t.getFullYear(), t.getMonth(), t.getDate()); }; function Tt(e) { if (!e || e === "") return /* @__PURE__ */ new Date(); if (/^\d{4}-\d{2}-\d{2}$/.test(e)) { let [t, n, r] = e.split("-").map(Number); return new Date(t, n - 1, r); } if (/^\d{4}-\d{2}$/.test(e)) { let [t, n] = e.split("-").map(Number); return new Date(t, n - 1, 1); } return /^\d{4}$/.test(e) ? new Date(Number(e), 0, 1) : new Date(e); } var Et = (e) => !e || isNaN(e.getTime()) ? "" : `${e.getFullYear()}-${String(e.getMonth() + 1).padStart(2, "0")}-${String(e.getDate()).padStart(2, "0")}`, Dt = (e) => { if (!e) return null; let t = Tt(e); return isNaN(t.getTime()) ? null : t; }, Ot = (e, t) => { let n = kt(e); return isNaN(n.getTime()) ? "" : ot(n, t); }, kt = (e = "", t) => { let n = typeof e == "string" ? Tt(e) : e; return !n || isNaN(n.getTime()) ? /* @__PURE__ */ new Date() : t ? t === "end" ? _e(n) : Z(n) : n; }, At = (e, t, n = 1) => { if (typeof e != "number" || typeof t != "number" || typeof n != "number" || isNaN(e) || isNaN(t) || isNaN(n)) return /* @__PURE__ */ new Date(); let r = new Date(e, t, n); return isNaN(r.getTime()) ? /* @__PURE__ */ new Date() : r; }, jt = (e) => { let t; return t = new St(e, Ct()), t.setHours(12, 0, 0, 0), t; }, Mt = null, Nt = void 0, Pt = (e) => { if (!e || isNaN(e.getTime())) return ""; let t = typeof window < "u" ? window.pktTz : void 0; return (!Mt || Nt !== t) && (Mt = new Intl.DateTimeFormat("no", { dateStyle: "full", timeZone: t }), Nt = t), Mt.format(e); }, Ft = (e, t, n) => { if (!e || isNaN(e.getTime())) return !1; let r = t ? kt(t) : null, i = n ? kt(n) : null; return !(r && e < r || i && e > i); }, It = (e, t) => { if (!e || isNaN(e.getTime()) || !Array.isArray(t)) return !1; let n = Et(e); return t.includes(n); }, Lt = (e, t) => { if (!e || isNaN(e.getTime()) || !Array.isArray(t)) return !1; let n = e.getDay().toString(); return t.includes(n); }, Rt = (e, t, n, r, i) => !(!e || isNaN(e.getTime())