Files
placeholder-artcraft/frontend/libs/components/settings-modal/dist/index.js
T
Brandon Thomas 0daf83dba9 mirror repo (WIP)
Need to remove secrets before entire repo can be made public.
2025-09-18 22:45:56 -04:00

101328 lines
2.9 MiB
Plaintext

import { jsx as K, jsxs as Te, Fragment as rn } from "react/jsx-runtime";
import * as V from "react";
import ae, { createContext as zt, useState as de, useRef as ne, useEffect as ue, isValidElement as Fi, cloneElement as Li, useContext as nt, useMemo as Ie, useLayoutEffect as pi, forwardRef as sf, useCallback as Ne, useId as ua, Fragment as Ut, useReducer as D4, createElement as vb, useSyncExternalStore as hoe, memo as goe } from "react";
import * as jd from "react-dom";
import LW, { unstable_batchedUpdates as Of, createPortal as C0, flushSync as wu } from "react-dom";
function Ql(e, t, { checkForDefaultPrevented: r = !0 } = {}) {
return function(n) {
if (e == null || e(n), r === !1 || !n.defaultPrevented)
return t == null ? void 0 : t(n);
};
}
function gN(e, t) {
if (typeof e == "function")
return e(t);
e != null && (e.current = t);
}
function zW(...e) {
return (t) => {
let r = !1;
const n = e.map((o) => {
const a = gN(o, t);
return !r && typeof a == "function" && (r = !0), a;
});
if (r)
return () => {
for (let o = 0; o < n.length; o++) {
const a = n[o];
typeof a == "function" ? a() : gN(e[o], null);
}
};
};
}
function lf(...e) {
return V.useCallback(zW(...e), e);
}
function boe(e, t) {
const r = V.createContext(t), n = (a) => {
const { children: i, ...s } = a, u = V.useMemo(() => s, Object.values(s));
return /* @__PURE__ */ K(r.Provider, { value: u, children: i });
};
n.displayName = e + "Provider";
function o(a) {
const i = V.useContext(r);
if (i) return i;
if (t !== void 0) return t;
throw new Error(`\`${a}\` must be used within \`${e}\``);
}
return [n, o];
}
function yoe(e, t = []) {
let r = [];
function n(a, i) {
const s = V.createContext(i), u = r.length;
r = [...r, i];
const c = (l) => {
var f;
const { scope: p, children: y, ...m } = l, h = ((f = p == null ? void 0 : p[e]) == null ? void 0 : f[u]) || s, w = V.useMemo(() => m, Object.values(m));
return /* @__PURE__ */ K(h.Provider, { value: w, children: y });
};
c.displayName = a + "Provider";
function d(l, f) {
var p;
const y = ((p = f == null ? void 0 : f[e]) == null ? void 0 : p[u]) || s, m = V.useContext(y);
if (m) return m;
if (i !== void 0) return i;
throw new Error(`\`${l}\` must be used within \`${a}\``);
}
return [c, d];
}
const o = () => {
const a = r.map((i) => V.createContext(i));
return function(i) {
const s = (i == null ? void 0 : i[e]) || a;
return V.useMemo(
() => ({ [`__scope${e}`]: { ...i, [e]: s } }),
[i, s]
);
};
};
return o.scopeName = e, [n, voe(o, ...t)];
}
function voe(...e) {
const t = e[0];
if (e.length === 1) return t;
const r = () => {
const n = e.map((o) => ({
useScope: o(),
scopeName: o.scopeName
}));
return function(o) {
const a = n.reduce((i, { useScope: s, scopeName: u }) => {
const c = s(o)[`__scope${u}`];
return { ...i, ...c };
}, {});
return V.useMemo(() => ({ [`__scope${t.scopeName}`]: a }), [a]);
};
};
return r.scopeName = t.scopeName, r;
}
var bg = globalThis != null && globalThis.document ? V.useLayoutEffect : () => {
}, xoe = V[" useId ".trim().toString()] || (() => {
}), woe = 0;
function Lw(e) {
const [t, r] = V.useState(xoe());
return bg(() => {
r((n) => n ?? String(woe++));
}, [e]), e || (t ? `radix-${t}` : "");
}
var $oe = V[" useInsertionEffect ".trim().toString()] || bg;
function koe({
prop: e,
defaultProp: t,
onChange: r = () => {
},
caller: n
}) {
const [o, a, i] = _oe({
defaultProp: t,
onChange: r
}), s = e !== void 0, u = s ? e : o;
{
const d = V.useRef(e !== void 0);
V.useEffect(() => {
const l = d.current;
l !== s && console.warn(
`${n} is changing from ${l ? "controlled" : "uncontrolled"} to ${s ? "controlled" : "uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`
), d.current = s;
}, [s, n]);
}
const c = V.useCallback(
(d) => {
var l;
if (s) {
const f = Ooe(d) ? d(e) : d;
f !== e && ((l = i.current) == null || l.call(i, f));
} else
a(d);
},
[s, e, a, i]
);
return [u, c];
}
function _oe({
defaultProp: e,
onChange: t
}) {
const [r, n] = V.useState(e), o = V.useRef(r), a = V.useRef(t);
return $oe(() => {
a.current = t;
}, [t]), V.useEffect(() => {
var i;
o.current !== r && ((i = a.current) == null || i.call(a, r), o.current = r);
}, [r, o]), [r, n, a];
}
function Ooe(e) {
return typeof e == "function";
}
// @__NO_SIDE_EFFECTS__
function WW(e) {
const t = /* @__PURE__ */ Soe(e), r = V.forwardRef((n, o) => {
const { children: a, ...i } = n, s = V.Children.toArray(a), u = s.find(Aoe);
if (u) {
const c = u.props.children, d = s.map((l) => l === u ? V.Children.count(c) > 1 ? V.Children.only(null) : V.isValidElement(c) ? c.props.children : null : l);
return /* @__PURE__ */ K(t, { ...i, ref: o, children: V.isValidElement(c) ? V.cloneElement(c, void 0, d) : null });
}
return /* @__PURE__ */ K(t, { ...i, ref: o, children: a });
});
return r.displayName = `${e}.Slot`, r;
}
// @__NO_SIDE_EFFECTS__
function Soe(e) {
const t = V.forwardRef((r, n) => {
const { children: o, ...a } = r;
if (V.isValidElement(o)) {
const i = Coe(o), s = Poe(a, o.props);
return o.type !== V.Fragment && (s.ref = n ? zW(n, i) : i), V.cloneElement(o, s);
}
return V.Children.count(o) > 1 ? V.Children.only(null) : null;
});
return t.displayName = `${e}.SlotClone`, t;
}
var Eoe = Symbol("radix.slottable");
function Aoe(e) {
return V.isValidElement(e) && typeof e.type == "function" && "__radixId" in e.type && e.type.__radixId === Eoe;
}
function Poe(e, t) {
const r = { ...t };
for (const n in t) {
const o = e[n], a = t[n];
/^on[A-Z]/.test(n) ? o && a ? r[n] = (...i) => {
const s = a(...i);
return o(...i), s;
} : o && (r[n] = o) : n === "style" ? r[n] = { ...o, ...a } : n === "className" && (r[n] = [o, a].filter(Boolean).join(" "));
}
return { ...e, ...r };
}
function Coe(e) {
var t, r;
let n = (t = Object.getOwnPropertyDescriptor(e.props, "ref")) == null ? void 0 : t.get, o = n && "isReactWarning" in n && n.isReactWarning;
return o ? e.ref : (n = (r = Object.getOwnPropertyDescriptor(e, "ref")) == null ? void 0 : r.get, o = n && "isReactWarning" in n && n.isReactWarning, o ? e.props.ref : e.props.ref || e.ref);
}
var Noe = [
"a",
"button",
"div",
"form",
"h2",
"h3",
"img",
"input",
"label",
"li",
"nav",
"ol",
"p",
"select",
"span",
"svg",
"ul"
], mi = Noe.reduce((e, t) => {
const r = /* @__PURE__ */ WW(`Primitive.${t}`), n = V.forwardRef((o, a) => {
const { asChild: i, ...s } = o, u = i ? r : t;
return typeof window < "u" && (window[Symbol.for("radix-ui")] = !0), /* @__PURE__ */ K(u, { ...s, ref: a });
});
return n.displayName = `Primitive.${t}`, { ...e, [t]: n };
}, {});
function Toe(e, t) {
e && jd.flushSync(() => e.dispatchEvent(t));
}
function yg(e) {
const t = V.useRef(e);
return V.useEffect(() => {
t.current = e;
}), V.useMemo(() => (...r) => {
var n;
return (n = t.current) == null ? void 0 : n.call(t, ...r);
}, []);
}
function Ioe(e, t = globalThis == null ? void 0 : globalThis.document) {
const r = yg(e);
V.useEffect(() => {
const n = (o) => {
o.key === "Escape" && r(o);
};
return t.addEventListener("keydown", n, { capture: !0 }), () => t.removeEventListener("keydown", n, { capture: !0 });
}, [r, t]);
}
var joe = "DismissableLayer", Z_ = "dismissableLayer.update", Roe = "dismissableLayer.pointerDownOutside", Moe = "dismissableLayer.focusOutside", bN, VW = V.createContext({
layers: /* @__PURE__ */ new Set(),
layersWithOutsidePointerEventsDisabled: /* @__PURE__ */ new Set(),
branches: /* @__PURE__ */ new Set()
}), HW = V.forwardRef(
(e, t) => {
const {
disableOutsidePointerEvents: r = !1,
onEscapeKeyDown: n,
onPointerDownOutside: o,
onFocusOutside: a,
onInteractOutside: i,
onDismiss: s,
...u
} = e, c = V.useContext(VW), [d, l] = V.useState(null), f = (d == null ? void 0 : d.ownerDocument) ?? (globalThis == null ? void 0 : globalThis.document), [, p] = V.useState({}), y = lf(t, (z) => l(z)), m = Array.from(c.layers), [h] = [...c.layersWithOutsidePointerEventsDisabled].slice(-1), w = m.indexOf(h), $ = d ? m.indexOf(d) : -1, _ = c.layersWithOutsidePointerEventsDisabled.size > 0, S = $ >= w, b = Loe((z) => {
const q = z.target, Y = [...c.branches].some((B) => B.contains(q));
!S || Y || (o == null || o(z), i == null || i(z), z.defaultPrevented || s == null || s());
}, f), F = zoe((z) => {
const q = z.target;
[...c.branches].some((Y) => Y.contains(q)) || (a == null || a(z), i == null || i(z), z.defaultPrevented || s == null || s());
}, f);
return Ioe((z) => {
$ === c.layers.size - 1 && (n == null || n(z), !z.defaultPrevented && s && (z.preventDefault(), s()));
}, f), V.useEffect(() => {
if (d)
return r && (c.layersWithOutsidePointerEventsDisabled.size === 0 && (bN = f.body.style.pointerEvents, f.body.style.pointerEvents = "none"), c.layersWithOutsidePointerEventsDisabled.add(d)), c.layers.add(d), yN(), () => {
r && c.layersWithOutsidePointerEventsDisabled.size === 1 && (f.body.style.pointerEvents = bN);
};
}, [d, f, r, c]), V.useEffect(() => () => {
d && (c.layers.delete(d), c.layersWithOutsidePointerEventsDisabled.delete(d), yN());
}, [d, c]), V.useEffect(() => {
const z = () => p({});
return document.addEventListener(Z_, z), () => document.removeEventListener(Z_, z);
}, []), /* @__PURE__ */ K(
mi.div,
{
...u,
ref: y,
style: {
pointerEvents: _ ? S ? "auto" : "none" : void 0,
...e.style
},
onFocusCapture: Ql(e.onFocusCapture, F.onFocusCapture),
onBlurCapture: Ql(e.onBlurCapture, F.onBlurCapture),
onPointerDownCapture: Ql(
e.onPointerDownCapture,
b.onPointerDownCapture
)
}
);
}
);
HW.displayName = joe;
var Doe = "DismissableLayerBranch", Foe = V.forwardRef((e, t) => {
const r = V.useContext(VW), n = V.useRef(null), o = lf(t, n);
return V.useEffect(() => {
const a = n.current;
if (a)
return r.branches.add(a), () => {
r.branches.delete(a);
};
}, [r.branches]), /* @__PURE__ */ K(mi.div, { ...e, ref: o });
});
Foe.displayName = Doe;
function Loe(e, t = globalThis == null ? void 0 : globalThis.document) {
const r = yg(e), n = V.useRef(!1), o = V.useRef(() => {
});
return V.useEffect(() => {
const a = (s) => {
if (s.target && !n.current) {
let u = function() {
GW(
Roe,
r,
c,
{ discrete: !0 }
);
};
const c = { originalEvent: s };
s.pointerType === "touch" ? (t.removeEventListener("click", o.current), o.current = u, t.addEventListener("click", o.current, { once: !0 })) : u();
} else
t.removeEventListener("click", o.current);
n.current = !1;
}, i = window.setTimeout(() => {
t.addEventListener("pointerdown", a);
}, 0);
return () => {
window.clearTimeout(i), t.removeEventListener("pointerdown", a), t.removeEventListener("click", o.current);
};
}, [t, r]), {
// ensures we check React component tree (not just DOM tree)
onPointerDownCapture: () => n.current = !0
};
}
function zoe(e, t = globalThis == null ? void 0 : globalThis.document) {
const r = yg(e), n = V.useRef(!1);
return V.useEffect(() => {
const o = (a) => {
a.target && !n.current && GW(Moe, r, { originalEvent: a }, {
discrete: !1
});
};
return t.addEventListener("focusin", o), () => t.removeEventListener("focusin", o);
}, [t, r]), {
onFocusCapture: () => n.current = !0,
onBlurCapture: () => n.current = !1
};
}
function yN() {
const e = new CustomEvent(Z_);
document.dispatchEvent(e);
}
function GW(e, t, r, { discrete: n }) {
const o = r.originalEvent.target, a = new CustomEvent(e, { bubbles: !1, cancelable: !0, detail: r });
t && o.addEventListener(e, t, { once: !0 }), n ? Toe(o, a) : o.dispatchEvent(a);
}
var zw = "focusScope.autoFocusOnMount", Ww = "focusScope.autoFocusOnUnmount", vN = { bubbles: !1, cancelable: !0 }, Woe = "FocusScope", UW = V.forwardRef((e, t) => {
const {
loop: r = !1,
trapped: n = !1,
onMountAutoFocus: o,
onUnmountAutoFocus: a,
...i
} = e, [s, u] = V.useState(null), c = yg(o), d = yg(a), l = V.useRef(null), f = lf(t, (m) => u(m)), p = V.useRef({
paused: !1,
pause() {
this.paused = !0;
},
resume() {
this.paused = !1;
}
}).current;
V.useEffect(() => {
if (n) {
let m = function(_) {
if (p.paused || !s) return;
const S = _.target;
s.contains(S) ? l.current = S : Fl(l.current, { select: !0 });
}, h = function(_) {
if (p.paused || !s) return;
const S = _.relatedTarget;
S !== null && (s.contains(S) || Fl(l.current, { select: !0 }));
}, w = function(_) {
if (document.activeElement === document.body)
for (const S of _)
S.removedNodes.length > 0 && Fl(s);
};
document.addEventListener("focusin", m), document.addEventListener("focusout", h);
const $ = new MutationObserver(w);
return s && $.observe(s, { childList: !0, subtree: !0 }), () => {
document.removeEventListener("focusin", m), document.removeEventListener("focusout", h), $.disconnect();
};
}
}, [n, s, p.paused]), V.useEffect(() => {
if (s) {
wN.add(p);
const m = document.activeElement;
if (!s.contains(m)) {
const h = new CustomEvent(zw, vN);
s.addEventListener(zw, c), s.dispatchEvent(h), h.defaultPrevented || (Voe(Yoe(BW(s)), { select: !0 }), document.activeElement === m && Fl(s));
}
return () => {
s.removeEventListener(zw, c), setTimeout(() => {
const h = new CustomEvent(Ww, vN);
s.addEventListener(Ww, d), s.dispatchEvent(h), h.defaultPrevented || Fl(m ?? document.body, { select: !0 }), s.removeEventListener(Ww, d), wN.remove(p);
}, 0);
};
}
}, [s, c, d, p]);
const y = V.useCallback(
(m) => {
if (!r && !n || p.paused) return;
const h = m.key === "Tab" && !m.altKey && !m.ctrlKey && !m.metaKey, w = document.activeElement;
if (h && w) {
const $ = m.currentTarget, [_, S] = Hoe($);
_ && S ? !m.shiftKey && w === S ? (m.preventDefault(), r && Fl(_, { select: !0 })) : m.shiftKey && w === _ && (m.preventDefault(), r && Fl(S, { select: !0 })) : w === $ && m.preventDefault();
}
},
[r, n, p.paused]
);
return /* @__PURE__ */ K(mi.div, { tabIndex: -1, ...i, ref: f, onKeyDown: y });
});
UW.displayName = Woe;
function Voe(e, { select: t = !1 } = {}) {
const r = document.activeElement;
for (const n of e)
if (Fl(n, { select: t }), document.activeElement !== r) return;
}
function Hoe(e) {
const t = BW(e), r = xN(t, e), n = xN(t.reverse(), e);
return [r, n];
}
function BW(e) {
const t = [], r = document.createTreeWalker(e, NodeFilter.SHOW_ELEMENT, {
acceptNode: (n) => {
const o = n.tagName === "INPUT" && n.type === "hidden";
return n.disabled || n.hidden || o ? NodeFilter.FILTER_SKIP : n.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
}
});
for (; r.nextNode(); ) t.push(r.currentNode);
return t;
}
function xN(e, t) {
for (const r of e)
if (!Goe(r, { upTo: t })) return r;
}
function Goe(e, { upTo: t }) {
if (getComputedStyle(e).visibility === "hidden") return !0;
for (; e; ) {
if (t !== void 0 && e === t) return !1;
if (getComputedStyle(e).display === "none") return !0;
e = e.parentElement;
}
return !1;
}
function Uoe(e) {
return e instanceof HTMLInputElement && "select" in e;
}
function Fl(e, { select: t = !1 } = {}) {
if (e && e.focus) {
const r = document.activeElement;
e.focus({ preventScroll: !0 }), e !== r && Uoe(e) && t && e.select();
}
}
var wN = Boe();
function Boe() {
let e = [];
return {
add(t) {
const r = e[0];
t !== r && (r == null || r.pause()), e = $N(e, t), e.unshift(t);
},
remove(t) {
var r;
e = $N(e, t), (r = e[0]) == null || r.resume();
}
};
}
function $N(e, t) {
const r = [...e], n = r.indexOf(t);
return n !== -1 && r.splice(n, 1), r;
}
function Yoe(e) {
return e.filter((t) => t.tagName !== "A");
}
var qoe = "Portal", YW = V.forwardRef((e, t) => {
var r;
const { container: n, ...o } = e, [a, i] = V.useState(!1);
bg(() => i(!0), []);
const s = n || a && ((r = globalThis == null ? void 0 : globalThis.document) == null ? void 0 : r.body);
return s ? LW.createPortal(/* @__PURE__ */ K(mi.div, { ...o, ref: t }), s) : null;
});
YW.displayName = qoe;
function Koe(e, t) {
return V.useReducer((r, n) => t[r][n] ?? r, e);
}
var N0 = (e) => {
const { present: t, children: r } = e, n = Xoe(t), o = typeof r == "function" ? r({ present: n.isPresent }) : V.Children.only(r), a = lf(n.ref, Joe(o));
return typeof r == "function" || n.isPresent ? V.cloneElement(o, { ref: a }) : null;
};
N0.displayName = "Presence";
function Xoe(e) {
const [t, r] = V.useState(), n = V.useRef(null), o = V.useRef(e), a = V.useRef("none"), i = e ? "mounted" : "unmounted", [s, u] = Koe(i, {
mounted: {
UNMOUNT: "unmounted",
ANIMATION_OUT: "unmountSuspended"
},
unmountSuspended: {
MOUNT: "mounted",
ANIMATION_END: "unmounted"
},
unmounted: {
MOUNT: "mounted"
}
});
return V.useEffect(() => {
const c = cy(n.current);
a.current = s === "mounted" ? c : "none";
}, [s]), bg(() => {
const c = n.current, d = o.current;
if (d !== e) {
const l = a.current, f = cy(c);
e ? u("MOUNT") : f === "none" || (c == null ? void 0 : c.display) === "none" ? u("UNMOUNT") : u(d && l !== f ? "ANIMATION_OUT" : "UNMOUNT"), o.current = e;
}
}, [e, u]), bg(() => {
if (t) {
let c;
const d = t.ownerDocument.defaultView ?? window, l = (p) => {
const y = cy(n.current).includes(p.animationName);
if (p.target === t && y && (u("ANIMATION_END"), !o.current)) {
const m = t.style.animationFillMode;
t.style.animationFillMode = "forwards", c = d.setTimeout(() => {
t.style.animationFillMode === "forwards" && (t.style.animationFillMode = m);
});
}
}, f = (p) => {
p.target === t && (a.current = cy(n.current));
};
return t.addEventListener("animationstart", f), t.addEventListener("animationcancel", l), t.addEventListener("animationend", l), () => {
d.clearTimeout(c), t.removeEventListener("animationstart", f), t.removeEventListener("animationcancel", l), t.removeEventListener("animationend", l);
};
} else
u("ANIMATION_END");
}, [t, u]), {
isPresent: ["mounted", "unmountSuspended"].includes(s),
ref: V.useCallback((c) => {
n.current = c ? getComputedStyle(c) : null, r(c);
}, [])
};
}
function cy(e) {
return (e == null ? void 0 : e.animationName) || "none";
}
function Joe(e) {
var t, r;
let n = (t = Object.getOwnPropertyDescriptor(e.props, "ref")) == null ? void 0 : t.get, o = n && "isReactWarning" in n && n.isReactWarning;
return o ? e.ref : (n = (r = Object.getOwnPropertyDescriptor(e, "ref")) == null ? void 0 : r.get, o = n && "isReactWarning" in n && n.isReactWarning, o ? e.props.ref : e.props.ref || e.ref);
}
var Vw = 0;
function Qoe() {
V.useEffect(() => {
const e = document.querySelectorAll("[data-radix-focus-guard]");
return document.body.insertAdjacentElement("afterbegin", e[0] ?? kN()), document.body.insertAdjacentElement("beforeend", e[1] ?? kN()), Vw++, () => {
Vw === 1 && document.querySelectorAll("[data-radix-focus-guard]").forEach((t) => t.remove()), Vw--;
};
}, []);
}
function kN() {
const e = document.createElement("span");
return e.setAttribute("data-radix-focus-guard", ""), e.tabIndex = 0, e.style.outline = "none", e.style.opacity = "0", e.style.position = "fixed", e.style.pointerEvents = "none", e;
}
var Ta = function() {
return Ta = Object.assign || function(e) {
for (var t, r = 1, n = arguments.length; r < n; r++) {
t = arguments[r];
for (var o in t) Object.prototype.hasOwnProperty.call(t, o) && (e[o] = t[o]);
}
return e;
}, Ta.apply(this, arguments);
};
function qW(e, t) {
var r = {};
for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && t.indexOf(n) < 0 && (r[n] = e[n]);
if (e != null && typeof Object.getOwnPropertySymbols == "function")
for (var o = 0, n = Object.getOwnPropertySymbols(e); o < n.length; o++)
t.indexOf(n[o]) < 0 && Object.prototype.propertyIsEnumerable.call(e, n[o]) && (r[n[o]] = e[n[o]]);
return r;
}
function Zoe(e, t, r) {
for (var n = 0, o = t.length, a; n < o; n++)
(a || !(n in t)) && (a || (a = Array.prototype.slice.call(t, 0, n)), a[n] = t[n]);
return e.concat(a || Array.prototype.slice.call(t));
}
var Ov = "right-scroll-bar-position", Sv = "width-before-scroll-bar", eae = "with-scroll-bars-hidden", tae = "--removed-body-scroll-bar-size";
function Hw(e, t) {
return typeof e == "function" ? e(t) : e && (e.current = t), e;
}
function rae(e, t) {
var r = de(function() {
return {
// value
value: e,
// last callback
callback: t,
// "memoized" public interface
facade: {
get current() {
return r.value;
},
set current(n) {
var o = r.value;
o !== n && (r.value = n, r.callback(n, o));
}
}
};
})[0];
return r.callback = t, r.facade;
}
var nae = typeof window < "u" ? V.useLayoutEffect : V.useEffect, _N = /* @__PURE__ */ new WeakMap();
function oae(e, t) {
var r = rae(null, function(n) {
return e.forEach(function(o) {
return Hw(o, n);
});
});
return nae(function() {
var n = _N.get(r);
if (n) {
var o = new Set(n), a = new Set(e), i = r.current;
o.forEach(function(s) {
a.has(s) || Hw(s, null);
}), a.forEach(function(s) {
o.has(s) || Hw(s, i);
});
}
_N.set(r, e);
}, [e]), r;
}
function aae(e) {
return e;
}
function iae(e, t) {
t === void 0 && (t = aae);
var r = [], n = !1, o = {
read: function() {
if (n)
throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");
return r.length ? r[r.length - 1] : e;
},
useMedium: function(a) {
var i = t(a, n);
return r.push(i), function() {
r = r.filter(function(s) {
return s !== i;
});
};
},
assignSyncMedium: function(a) {
for (n = !0; r.length; ) {
var i = r;
r = [], i.forEach(a);
}
r = {
push: function(s) {
return a(s);
},
filter: function() {
return r;
}
};
},
assignMedium: function(a) {
n = !0;
var i = [];
if (r.length) {
var s = r;
r = [], s.forEach(a), i = r;
}
var u = function() {
var d = i;
i = [], d.forEach(a);
}, c = function() {
return Promise.resolve().then(u);
};
c(), r = {
push: function(d) {
i.push(d), c();
},
filter: function(d) {
return i = i.filter(d), r;
}
};
}
};
return o;
}
function sae(e) {
e === void 0 && (e = {});
var t = iae(null);
return t.options = Ta({ async: !0, ssr: !1 }, e), t;
}
var KW = function(e) {
var t = e.sideCar, r = qW(e, ["sideCar"]);
if (!t)
throw new Error("Sidecar: please provide `sideCar` property to import the right car");
var n = t.read();
if (!n)
throw new Error("Sidecar medium not found");
return V.createElement(n, Ta({}, r));
};
KW.isSideCarExport = !0;
function lae(e, t) {
return e.useMedium(t), KW;
}
var XW = sae(), Gw = function() {
}, T0 = V.forwardRef(function(e, t) {
var r = V.useRef(null), n = V.useState({
onScrollCapture: Gw,
onWheelCapture: Gw,
onTouchMoveCapture: Gw
}), o = n[0], a = n[1], i = e.forwardProps, s = e.children, u = e.className, c = e.removeScrollBar, d = e.enabled, l = e.shards, f = e.sideCar, p = e.noRelative, y = e.noIsolation, m = e.inert, h = e.allowPinchZoom, w = e.as, $ = w === void 0 ? "div" : w, _ = e.gapMode, S = qW(e, ["forwardProps", "children", "className", "removeScrollBar", "enabled", "shards", "sideCar", "noRelative", "noIsolation", "inert", "allowPinchZoom", "as", "gapMode"]), b = f, F = oae([r, t]), z = Ta(Ta({}, S), o);
return V.createElement(
V.Fragment,
null,
d && V.createElement(b, { sideCar: XW, removeScrollBar: c, shards: l, noRelative: p, noIsolation: y, inert: m, setCallbacks: a, allowPinchZoom: !!h, lockRef: r, gapMode: _ }),
i ? V.cloneElement(V.Children.only(s), Ta(Ta({}, z), { ref: F })) : V.createElement($, Ta({}, z, { className: u, ref: F }), s)
);
});
T0.defaultProps = {
enabled: !0,
removeScrollBar: !0,
inert: !1
};
T0.classNames = {
fullWidth: Sv,
zeroRight: Ov
};
var cae = function() {
if (typeof __webpack_nonce__ < "u")
return __webpack_nonce__;
};
function uae() {
if (!document)
return null;
var e = document.createElement("style");
e.type = "text/css";
var t = cae();
return t && e.setAttribute("nonce", t), e;
}
function fae(e, t) {
e.styleSheet ? e.styleSheet.cssText = t : e.appendChild(document.createTextNode(t));
}
function dae(e) {
var t = document.head || document.getElementsByTagName("head")[0];
t.appendChild(e);
}
var pae = function() {
var e = 0, t = null;
return {
add: function(r) {
e == 0 && (t = uae()) && (fae(t, r), dae(t)), e++;
},
remove: function() {
e--, !e && t && (t.parentNode && t.parentNode.removeChild(t), t = null);
}
};
}, mae = function() {
var e = pae();
return function(t, r) {
V.useEffect(function() {
return e.add(t), function() {
e.remove();
};
}, [t && r]);
};
}, JW = function() {
var e = mae(), t = function(r) {
var n = r.styles, o = r.dynamic;
return e(n, o), null;
};
return t;
}, hae = {
left: 0,
top: 0,
right: 0,
gap: 0
}, Uw = function(e) {
return parseInt(e || "", 10) || 0;
}, gae = function(e) {
var t = window.getComputedStyle(document.body), r = t[e === "padding" ? "paddingLeft" : "marginLeft"], n = t[e === "padding" ? "paddingTop" : "marginTop"], o = t[e === "padding" ? "paddingRight" : "marginRight"];
return [Uw(r), Uw(n), Uw(o)];
}, bae = function(e) {
if (e === void 0 && (e = "margin"), typeof window > "u")
return hae;
var t = gae(e), r = document.documentElement.clientWidth, n = window.innerWidth;
return {
left: t[0],
top: t[1],
right: t[2],
gap: Math.max(0, n - r + t[2] - t[0])
};
}, yae = JW(), td = "data-scroll-locked", vae = function(e, t, r, n) {
var o = e.left, a = e.top, i = e.right, s = e.gap;
return r === void 0 && (r = "margin"), `
.`.concat(eae, ` {
overflow: hidden `).concat(n, `;
padding-right: `).concat(s, "px ").concat(n, `;
}
body[`).concat(td, `] {
overflow: hidden `).concat(n, `;
overscroll-behavior: contain;
`).concat([
t && "position: relative ".concat(n, ";"),
r === "margin" && `
padding-left: `.concat(o, `px;
padding-top: `).concat(a, `px;
padding-right: `).concat(i, `px;
margin-left:0;
margin-top:0;
margin-right: `).concat(s, "px ").concat(n, `;
`),
r === "padding" && "padding-right: ".concat(s, "px ").concat(n, ";")
].filter(Boolean).join(""), `
}
.`).concat(Ov, ` {
right: `).concat(s, "px ").concat(n, `;
}
.`).concat(Sv, ` {
margin-right: `).concat(s, "px ").concat(n, `;
}
.`).concat(Ov, " .").concat(Ov, ` {
right: 0 `).concat(n, `;
}
.`).concat(Sv, " .").concat(Sv, ` {
margin-right: 0 `).concat(n, `;
}
body[`).concat(td, `] {
`).concat(tae, ": ").concat(s, `px;
}
`);
}, ON = function() {
var e = parseInt(document.body.getAttribute(td) || "0", 10);
return isFinite(e) ? e : 0;
}, xae = function() {
V.useEffect(function() {
return document.body.setAttribute(td, (ON() + 1).toString()), function() {
var e = ON() - 1;
e <= 0 ? document.body.removeAttribute(td) : document.body.setAttribute(td, e.toString());
};
}, []);
}, wae = function(e) {
var t = e.noRelative, r = e.noImportant, n = e.gapMode, o = n === void 0 ? "margin" : n;
xae();
var a = V.useMemo(function() {
return bae(o);
}, [o]);
return V.createElement(yae, { styles: vae(a, !t, o, r ? "" : "!important") });
}, eO = !1;
if (typeof window < "u")
try {
var uy = Object.defineProperty({}, "passive", {
get: function() {
return eO = !0, !0;
}
});
window.addEventListener("test", uy, uy), window.removeEventListener("test", uy, uy);
} catch {
eO = !1;
}
var ff = eO ? { passive: !1 } : !1, $ae = function(e) {
return e.tagName === "TEXTAREA";
}, QW = function(e, t) {
if (!(e instanceof Element))
return !1;
var r = window.getComputedStyle(e);
return (
// not-not-scrollable
r[t] !== "hidden" && // contains scroll inside self
!(r.overflowY === r.overflowX && !$ae(e) && r[t] === "visible")
);
}, kae = function(e) {
return QW(e, "overflowY");
}, _ae = function(e) {
return QW(e, "overflowX");
}, SN = function(e, t) {
var r = t.ownerDocument, n = t;
do {
typeof ShadowRoot < "u" && n instanceof ShadowRoot && (n = n.host);
var o = ZW(e, n);
if (o) {
var a = eV(e, n), i = a[1], s = a[2];
if (i > s)
return !0;
}
n = n.parentNode;
} while (n && n !== r.body);
return !1;
}, Oae = function(e) {
var t = e.scrollTop, r = e.scrollHeight, n = e.clientHeight;
return [
t,
r,
n
];
}, Sae = function(e) {
var t = e.scrollLeft, r = e.scrollWidth, n = e.clientWidth;
return [
t,
r,
n
];
}, ZW = function(e, t) {
return e === "v" ? kae(t) : _ae(t);
}, eV = function(e, t) {
return e === "v" ? Oae(t) : Sae(t);
}, Eae = function(e, t) {
return e === "h" && t === "rtl" ? -1 : 1;
}, Aae = function(e, t, r, n, o) {
var a = Eae(e, window.getComputedStyle(t).direction), i = a * n, s = r.target, u = t.contains(s), c = !1, d = i > 0, l = 0, f = 0;
do {
if (!s)
break;
var p = eV(e, s), y = p[0], m = p[1], h = p[2], w = m - h - a * y;
(y || w) && ZW(e, s) && (l += w, f += y);
var $ = s.parentNode;
s = $ && $.nodeType === Node.DOCUMENT_FRAGMENT_NODE ? $.host : $;
} while (
// portaled content
!u && s !== document.body || // self content
u && (t.contains(s) || t === s)
);
return (d && Math.abs(l) < 1 || !d && Math.abs(f) < 1) && (c = !0), c;
}, fy = function(e) {
return "changedTouches" in e ? [e.changedTouches[0].clientX, e.changedTouches[0].clientY] : [0, 0];
}, EN = function(e) {
return [e.deltaX, e.deltaY];
}, AN = function(e) {
return e && "current" in e ? e.current : e;
}, Pae = function(e, t) {
return e[0] === t[0] && e[1] === t[1];
}, Cae = function(e) {
return `
.block-interactivity-`.concat(e, ` {pointer-events: none;}
.allow-interactivity-`).concat(e, ` {pointer-events: all;}
`);
}, Nae = 0, df = [];
function Tae(e) {
var t = V.useRef([]), r = V.useRef([0, 0]), n = V.useRef(), o = V.useState(Nae++)[0], a = V.useState(JW)[0], i = V.useRef(e);
V.useEffect(function() {
i.current = e;
}, [e]), V.useEffect(function() {
if (e.inert) {
document.body.classList.add("block-interactivity-".concat(o));
var m = Zoe([e.lockRef.current], (e.shards || []).map(AN)).filter(Boolean);
return m.forEach(function(h) {
return h.classList.add("allow-interactivity-".concat(o));
}), function() {
document.body.classList.remove("block-interactivity-".concat(o)), m.forEach(function(h) {
return h.classList.remove("allow-interactivity-".concat(o));
});
};
}
}, [e.inert, e.lockRef.current, e.shards]);
var s = V.useCallback(function(m, h) {
if ("touches" in m && m.touches.length === 2 || m.type === "wheel" && m.ctrlKey)
return !i.current.allowPinchZoom;
var w = fy(m), $ = r.current, _ = "deltaX" in m ? m.deltaX : $[0] - w[0], S = "deltaY" in m ? m.deltaY : $[1] - w[1], b, F = m.target, z = Math.abs(_) > Math.abs(S) ? "h" : "v";
if ("touches" in m && z === "h" && F.type === "range")
return !1;
var q = SN(z, F);
if (!q)
return !0;
if (q ? b = z : (b = z === "v" ? "h" : "v", q = SN(z, F)), !q)
return !1;
if (!n.current && "changedTouches" in m && (_ || S) && (n.current = b), !b)
return !0;
var Y = n.current || b;
return Aae(Y, h, m, Y === "h" ? _ : S);
}, []), u = V.useCallback(function(m) {
var h = m;
if (!(!df.length || df[df.length - 1] !== a)) {
var w = "deltaY" in h ? EN(h) : fy(h), $ = t.current.filter(function(b) {
return b.name === h.type && (b.target === h.target || h.target === b.shadowParent) && Pae(b.delta, w);
})[0];
if ($ && $.should) {
h.cancelable && h.preventDefault();
return;
}
if (!$) {
var _ = (i.current.shards || []).map(AN).filter(Boolean).filter(function(b) {
return b.contains(h.target);
}), S = _.length > 0 ? s(h, _[0]) : !i.current.noIsolation;
S && h.cancelable && h.preventDefault();
}
}
}, []), c = V.useCallback(function(m, h, w, $) {
var _ = { name: m, delta: h, target: w, should: $, shadowParent: Iae(w) };
t.current.push(_), setTimeout(function() {
t.current = t.current.filter(function(S) {
return S !== _;
});
}, 1);
}, []), d = V.useCallback(function(m) {
r.current = fy(m), n.current = void 0;
}, []), l = V.useCallback(function(m) {
c(m.type, EN(m), m.target, s(m, e.lockRef.current));
}, []), f = V.useCallback(function(m) {
c(m.type, fy(m), m.target, s(m, e.lockRef.current));
}, []);
V.useEffect(function() {
return df.push(a), e.setCallbacks({
onScrollCapture: l,
onWheelCapture: l,
onTouchMoveCapture: f
}), document.addEventListener("wheel", u, ff), document.addEventListener("touchmove", u, ff), document.addEventListener("touchstart", d, ff), function() {
df = df.filter(function(m) {
return m !== a;
}), document.removeEventListener("wheel", u, ff), document.removeEventListener("touchmove", u, ff), document.removeEventListener("touchstart", d, ff);
};
}, []);
var p = e.removeScrollBar, y = e.inert;
return V.createElement(
V.Fragment,
null,
y ? V.createElement(a, { styles: Cae(o) }) : null,
p ? V.createElement(wae, { noRelative: e.noRelative, gapMode: e.gapMode }) : null
);
}
function Iae(e) {
for (var t = null; e !== null; )
e instanceof ShadowRoot && (t = e.host, e = e.host), e = e.parentNode;
return t;
}
const jae = lae(XW, Tae);
var tV = V.forwardRef(function(e, t) {
return V.createElement(T0, Ta({}, e, { ref: t, sideCar: jae }));
});
tV.classNames = T0.classNames;
var Rae = function(e) {
if (typeof document > "u")
return null;
var t = Array.isArray(e) ? e[0] : e;
return t.ownerDocument.body;
}, pf = /* @__PURE__ */ new WeakMap(), dy = /* @__PURE__ */ new WeakMap(), py = {}, Bw = 0, rV = function(e) {
return e && (e.host || rV(e.parentNode));
}, Mae = function(e, t) {
return t.map(function(r) {
if (e.contains(r))
return r;
var n = rV(r);
return n && e.contains(n) ? n : (console.error("aria-hidden", r, "in not contained inside", e, ". Doing nothing"), null);
}).filter(function(r) {
return !!r;
});
}, Dae = function(e, t, r, n) {
var o = Mae(t, Array.isArray(e) ? e : [e]);
py[r] || (py[r] = /* @__PURE__ */ new WeakMap());
var a = py[r], i = [], s = /* @__PURE__ */ new Set(), u = new Set(o), c = function(l) {
!l || s.has(l) || (s.add(l), c(l.parentNode));
};
o.forEach(c);
var d = function(l) {
!l || u.has(l) || Array.prototype.forEach.call(l.children, function(f) {
if (s.has(f))
d(f);
else
try {
var p = f.getAttribute(n), y = p !== null && p !== "false", m = (pf.get(f) || 0) + 1, h = (a.get(f) || 0) + 1;
pf.set(f, m), a.set(f, h), i.push(f), m === 1 && y && dy.set(f, !0), h === 1 && f.setAttribute(r, "true"), y || f.setAttribute(n, "true");
} catch (w) {
console.error("aria-hidden: cannot operate on ", f, w);
}
});
};
return d(t), s.clear(), Bw++, function() {
i.forEach(function(l) {
var f = pf.get(l) - 1, p = a.get(l) - 1;
pf.set(l, f), a.set(l, p), f || (dy.has(l) || l.removeAttribute(n), dy.delete(l)), p || l.removeAttribute(r);
}), Bw--, Bw || (pf = /* @__PURE__ */ new WeakMap(), pf = /* @__PURE__ */ new WeakMap(), dy = /* @__PURE__ */ new WeakMap(), py = {});
};
}, Fae = function(e, t, r) {
r === void 0 && (r = "data-aria-hidden");
var n = Array.from(Array.isArray(e) ? e : [e]), o = Rae(e);
return o ? (n.push.apply(n, Array.from(o.querySelectorAll("[aria-live], script"))), Dae(n, o, r, "aria-hidden")) : function() {
return null;
};
}, I0 = "Dialog", [nV, PJe] = yoe(I0), [Lae, fa] = nV(I0), oV = (e) => {
const {
__scopeDialog: t,
children: r,
open: n,
defaultOpen: o,
onOpenChange: a,
modal: i = !0
} = e, s = V.useRef(null), u = V.useRef(null), [c, d] = koe({
prop: n,
defaultProp: o ?? !1,
onChange: a,
caller: I0
});
return /* @__PURE__ */ K(
Lae,
{
scope: t,
triggerRef: s,
contentRef: u,
contentId: Lw(),
titleId: Lw(),
descriptionId: Lw(),
open: c,
onOpenChange: d,
onOpenToggle: V.useCallback(() => d((l) => !l), [d]),
modal: i,
children: r
}
);
};
oV.displayName = I0;
var aV = "DialogTrigger", zae = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, ...n } = e, o = fa(aV, r), a = lf(t, o.triggerRef);
return /* @__PURE__ */ K(
mi.button,
{
type: "button",
"aria-haspopup": "dialog",
"aria-expanded": o.open,
"aria-controls": o.contentId,
"data-state": z4(o.open),
...n,
ref: a,
onClick: Ql(e.onClick, o.onOpenToggle)
}
);
}
);
zae.displayName = aV;
var F4 = "DialogPortal", [Wae, iV] = nV(F4, {
forceMount: void 0
}), sV = (e) => {
const { __scopeDialog: t, forceMount: r, children: n, container: o } = e, a = fa(F4, t);
return /* @__PURE__ */ K(Wae, { scope: t, forceMount: r, children: V.Children.map(n, (i) => /* @__PURE__ */ K(N0, { present: r || a.open, children: /* @__PURE__ */ K(YW, { asChild: !0, container: o, children: i }) })) });
};
sV.displayName = F4;
var h1 = "DialogOverlay", lV = V.forwardRef(
(e, t) => {
const r = iV(h1, e.__scopeDialog), { forceMount: n = r.forceMount, ...o } = e, a = fa(h1, e.__scopeDialog);
return a.modal ? /* @__PURE__ */ K(N0, { present: n || a.open, children: /* @__PURE__ */ K(Hae, { ...o, ref: t }) }) : null;
}
);
lV.displayName = h1;
var Vae = /* @__PURE__ */ WW("DialogOverlay.RemoveScroll"), Hae = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, ...n } = e, o = fa(h1, r);
return (
// Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`
// ie. when `Overlay` and `Content` are siblings
/* @__PURE__ */ K(tV, { as: Vae, allowPinchZoom: !0, shards: [o.contentRef], children: /* @__PURE__ */ K(
mi.div,
{
"data-state": z4(o.open),
...n,
ref: t,
style: { pointerEvents: "auto", ...n.style }
}
) })
);
}
), _u = "DialogContent", cV = V.forwardRef(
(e, t) => {
const r = iV(_u, e.__scopeDialog), { forceMount: n = r.forceMount, ...o } = e, a = fa(_u, e.__scopeDialog);
return /* @__PURE__ */ K(N0, { present: n || a.open, children: a.modal ? /* @__PURE__ */ K(Gae, { ...o, ref: t }) : /* @__PURE__ */ K(Uae, { ...o, ref: t }) });
}
);
cV.displayName = _u;
var Gae = V.forwardRef(
(e, t) => {
const r = fa(_u, e.__scopeDialog), n = V.useRef(null), o = lf(t, r.contentRef, n);
return V.useEffect(() => {
const a = n.current;
if (a) return Fae(a);
}, []), /* @__PURE__ */ K(
uV,
{
...e,
ref: o,
trapFocus: r.open,
disableOutsidePointerEvents: !0,
onCloseAutoFocus: Ql(e.onCloseAutoFocus, (a) => {
var i;
a.preventDefault(), (i = r.triggerRef.current) == null || i.focus();
}),
onPointerDownOutside: Ql(e.onPointerDownOutside, (a) => {
const i = a.detail.originalEvent, s = i.button === 0 && i.ctrlKey === !0;
(i.button === 2 || s) && a.preventDefault();
}),
onFocusOutside: Ql(
e.onFocusOutside,
(a) => a.preventDefault()
)
}
);
}
), Uae = V.forwardRef(
(e, t) => {
const r = fa(_u, e.__scopeDialog), n = V.useRef(!1), o = V.useRef(!1);
return /* @__PURE__ */ K(
uV,
{
...e,
ref: t,
trapFocus: !1,
disableOutsidePointerEvents: !1,
onCloseAutoFocus: (a) => {
var i, s;
(i = e.onCloseAutoFocus) == null || i.call(e, a), a.defaultPrevented || (n.current || (s = r.triggerRef.current) == null || s.focus(), a.preventDefault()), n.current = !1, o.current = !1;
},
onInteractOutside: (a) => {
var i, s;
(i = e.onInteractOutside) == null || i.call(e, a), a.defaultPrevented || (n.current = !0, a.detail.originalEvent.type === "pointerdown" && (o.current = !0));
const u = a.target;
(s = r.triggerRef.current) != null && s.contains(u) && a.preventDefault(), a.detail.originalEvent.type === "focusin" && o.current && a.preventDefault();
}
}
);
}
), uV = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, trapFocus: n, onOpenAutoFocus: o, onCloseAutoFocus: a, ...i } = e, s = fa(_u, r), u = V.useRef(null), c = lf(t, u);
return Qoe(), /* @__PURE__ */ Te(rn, { children: [
/* @__PURE__ */ K(
UW,
{
asChild: !0,
loop: !0,
trapped: n,
onMountAutoFocus: o,
onUnmountAutoFocus: a,
children: /* @__PURE__ */ K(
HW,
{
role: "dialog",
id: s.contentId,
"aria-describedby": s.descriptionId,
"aria-labelledby": s.titleId,
"data-state": z4(s.open),
...i,
ref: c,
onDismiss: () => s.onOpenChange(!1)
}
)
}
),
/* @__PURE__ */ Te(rn, { children: [
/* @__PURE__ */ K(Yae, { titleId: s.titleId }),
/* @__PURE__ */ K(Kae, { contentRef: u, descriptionId: s.descriptionId })
] })
] });
}
), L4 = "DialogTitle", fV = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, ...n } = e, o = fa(L4, r);
return /* @__PURE__ */ K(mi.h2, { id: o.titleId, ...n, ref: t });
}
);
fV.displayName = L4;
var dV = "DialogDescription", pV = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, ...n } = e, o = fa(dV, r);
return /* @__PURE__ */ K(mi.p, { id: o.descriptionId, ...n, ref: t });
}
);
pV.displayName = dV;
var mV = "DialogClose", Bae = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, ...n } = e, o = fa(mV, r);
return /* @__PURE__ */ K(
mi.button,
{
type: "button",
...n,
ref: t,
onClick: Ql(e.onClick, () => o.onOpenChange(!1))
}
);
}
);
Bae.displayName = mV;
function z4(e) {
return e ? "open" : "closed";
}
var hV = "DialogTitleWarning", [CJe, gV] = boe(hV, {
contentName: _u,
titleName: L4,
docsSlug: "dialog"
}), Yae = ({ titleId: e }) => {
const t = gV(hV), r = `\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;
return V.useEffect(() => {
e && (document.getElementById(e) || console.error(r));
}, [r, e]), null;
}, qae = "DialogDescriptionWarning", Kae = ({ contentRef: e, descriptionId: t }) => {
const r = `Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${gV(qae).contentName}}.`;
return V.useEffect(() => {
var n;
const o = (n = e.current) == null ? void 0 : n.getAttribute("aria-describedby");
t && o && (document.getElementById(t) || console.warn(r));
}, [r, e, t]), null;
}, Xae = oV, Jae = sV, Qae = lV, Zae = cV, PN = fV, eie = pV;
const W4 = "-", tie = (e) => {
const t = nie(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(W4);
return a[0] === "" && a.length !== 1 && a.shift(), bV(a, t) || rie(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, bV = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? bV(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(W4);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, CN = /^\[(.+)\]$/, rie = (e) => {
if (CN.test(e)) {
const t = CN.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, nie = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return aie(Object.entries(e.classGroups), r).forEach(([o, a]) => {
tO(a, n, o, t);
}), n;
}, tO = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : NN(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (oie(o)) {
tO(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
tO(i, NN(t, a), r, n);
});
});
}, NN = (e, t) => {
let r = e;
return t.split(W4).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, oie = (e) => e.isThemeGetter, aie = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, iie = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, yV = "!", sie = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith(yV), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, lie = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, cie = (e) => ({
cache: iie(e.cacheSize),
parseClassName: sie(e),
...tie(e)
}), uie = /\s+/, fie = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(uie);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = lie(d).join(":"), w = l ? h + yV : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function die() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = vV(t)) && (n && (n += " "), n += r);
return n;
}
const vV = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = vV(e[n])) && (r && (r += " "), r += t);
return r;
};
function pie(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = cie(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = fie(u, r);
return o(u, d), d;
}
return function() {
return a(die.apply(null, arguments));
};
}
const _r = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, xV = /^\[(?:([a-z-]+):)?(.+)\]$/i, mie = /^\d+\/\d+$/, hie = /* @__PURE__ */ new Set(["px", "full", "screen"]), gie = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, bie = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, yie = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, vie = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, xie = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, yi = (e) => rd(e) || hie.has(e) || mie.test(e), Js = (e) => Zd(e, "length", Aie), rd = (e) => !!e && !Number.isNaN(Number(e)), Yw = (e) => Zd(e, "number", rd), ym = (e) => !!e && Number.isInteger(Number(e)), wie = (e) => e.endsWith("%") && rd(e.slice(0, -1)), ct = (e) => xV.test(e), Qs = (e) => gie.test(e), $ie = /* @__PURE__ */ new Set(["length", "size", "percentage"]), kie = (e) => Zd(e, $ie, wV), _ie = (e) => Zd(e, "position", wV), Oie = /* @__PURE__ */ new Set(["image", "url"]), Sie = (e) => Zd(e, Oie, Cie), Eie = (e) => Zd(e, "", Pie), vm = () => !0, Zd = (e, t, r) => {
const n = xV.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, Aie = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
bie.test(e) && !yie.test(e)
), wV = () => !1, Pie = (e) => vie.test(e), Cie = (e) => xie.test(e), Nie = () => {
const e = _r("colors"), t = _r("spacing"), r = _r("blur"), n = _r("brightness"), o = _r("borderColor"), a = _r("borderRadius"), i = _r("borderSpacing"), s = _r("borderWidth"), u = _r("contrast"), c = _r("grayscale"), d = _r("hueRotate"), l = _r("invert"), f = _r("gap"), p = _r("gradientColorStops"), y = _r("gradientColorStopPositions"), m = _r("inset"), h = _r("margin"), w = _r("opacity"), $ = _r("padding"), _ = _r("saturate"), S = _r("scale"), b = _r("sepia"), F = _r("skew"), z = _r("space"), q = _r("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", ct, t], M = () => [ct, t], te = () => ["", yi, Js], G = () => ["auto", rd, ct], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", ct], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [rd, ct];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [vm],
spacing: [yi, Js],
blur: ["none", "", Qs, ct],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", Qs, ct],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [wie, Js],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", ct]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [Qs]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), ct]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", ym, ct]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", ct]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", ym, ct]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [vm]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", ym, ct]
}, ct]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [vm]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [ym, ct]
}, ct]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", ct]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", ct]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", ct, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [ct, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [ct, t, "none", "full", "min", "max", "fit", "prose", {
screen: [Qs]
}, Qs]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [ct, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [ct, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [ct, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [ct, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", Qs, Js]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", Yw]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [vm]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", ct]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", rd, Yw]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", yi, ct]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", ct]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", ct]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", yi, Js]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", yi, ct]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", ct]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", ct]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), _ie]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", kie]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, Sie]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [yi, ct]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [yi, Js]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [yi, Js]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", Qs, Eie]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [vm]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", Qs, ct]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", ct]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", ct]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", ct]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [ym, ct]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", ct]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", ct]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", ct]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [yi, Js, Yw]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, Sh = /* @__PURE__ */ pie(Nie);
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function Tie(e, t, r) {
return (t = jie(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function TN(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function he(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? TN(Object(r), !0).forEach(function(n) {
Tie(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : TN(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function Iie(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function jie(e) {
var t = Iie(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const IN = () => {
};
let V4 = {}, $V = {}, kV = null, _V = {
mark: IN,
measure: IN
};
try {
typeof window < "u" && (V4 = window), typeof document < "u" && ($V = document), typeof MutationObserver < "u" && (kV = MutationObserver), typeof performance < "u" && (_V = performance);
} catch {
}
const {
userAgent: jN = ""
} = V4.navigator || {}, oc = V4, Mr = $V, RN = kV, my = _V;
oc.document;
const ps = !!Mr.documentElement && !!Mr.head && typeof Mr.addEventListener == "function" && typeof Mr.createElement == "function", OV = ~jN.indexOf("MSIE") || ~jN.indexOf("Trident/");
var Rie = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, Mie = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, SV = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, Die = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, EV = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], vn = "classic", j0 = "duotone", Fie = "sharp", Lie = "sharp-duotone", AV = [vn, j0, Fie, Lie], zie = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, Wie = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, Vie = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), Hie = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, Gie = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], MN = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, Uie = ["kit"], Bie = {
kit: {
"fa-kit": "fak"
}
}, Yie = ["fak", "fakd"], qie = {
kit: {
fak: "fa-kit"
}
}, DN = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, hy = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, Kie = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Xie = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], Jie = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, Qie = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, Zie = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, rO = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, ese = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], nO = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...Kie, ...ese], tse = ["solid", "regular", "light", "thin", "duotone", "brands"], PV = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], rse = PV.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), nse = [...Object.keys(Zie), ...tse, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", hy.GROUP, hy.SWAP_OPACITY, hy.PRIMARY, hy.SECONDARY].concat(PV.map((e) => "".concat(e, "x"))).concat(rse.map((e) => "w-".concat(e))), ose = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const zi = "___FONT_AWESOME___", oO = 16, CV = "fa", NV = "svg-inline--fa", Ou = "data-fa-i2svg", aO = "data-fa-pseudo-element", ase = "data-fa-pseudo-element-pending", H4 = "data-prefix", G4 = "data-icon", FN = "fontawesome-i2svg", ise = "async", sse = ["HTML", "HEAD", "STYLE", "SCRIPT"], TV = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function xb(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[vn];
}
});
}
const IV = he({}, SV);
IV[vn] = he(he(he(he({}, {
"fa-duotone": "duotone"
}), SV[vn]), MN.kit), MN["kit-duotone"]);
const lse = xb(IV), iO = he({}, Hie);
iO[vn] = he(he(he(he({}, {
duotone: "fad"
}), iO[vn]), DN.kit), DN["kit-duotone"]);
const LN = xb(iO), sO = he({}, rO);
sO[vn] = he(he({}, sO[vn]), qie.kit);
const U4 = xb(sO), lO = he({}, Qie);
lO[vn] = he(he({}, lO[vn]), Bie.kit);
xb(lO);
const cse = Rie, jV = "fa-layers-text", use = Mie, fse = he({}, zie);
xb(fse);
const dse = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], qw = Die, pse = [...Uie, ...nse], Eh = oc.FontAwesomeConfig || {};
function mse(e) {
var t = Mr.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function hse(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Mr && typeof Mr.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = hse(mse(t));
n != null && (Eh[r] = n);
});
const RV = {
styleDefault: "solid",
familyDefault: vn,
cssPrefix: CV,
replacementClass: NV,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Eh.familyPrefix && (Eh.cssPrefix = Eh.familyPrefix);
const Rd = he(he({}, RV), Eh);
Rd.autoReplaceSvg || (Rd.observeMutations = !1);
const ze = {};
Object.keys(RV).forEach((e) => {
Object.defineProperty(ze, e, {
enumerable: !0,
set: function(t) {
Rd[e] = t, Ah.forEach((r) => r(ze));
},
get: function() {
return Rd[e];
}
});
});
Object.defineProperty(ze, "familyPrefix", {
enumerable: !0,
set: function(e) {
Rd.cssPrefix = e, Ah.forEach((t) => t(ze));
},
get: function() {
return Rd.cssPrefix;
}
});
oc.FontAwesomeConfig = ze;
const Ah = [];
function gse(e) {
return Ah.push(e), () => {
Ah.splice(Ah.indexOf(e), 1);
};
}
const Zs = oO, ja = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function bse(e) {
if (!e || !ps)
return;
const t = Mr.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Mr.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Mr.head.insertBefore(t, n), e;
}
const yse = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function vg() {
let e = 12, t = "";
for (; e-- > 0; )
t += yse[Math.random() * 62 | 0];
return t;
}
function ep(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function B4(e) {
return e.classList ? ep(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function MV(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function vse(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(MV(e[r]), '" '), "").trim();
}
function R0(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function Y4(e) {
return e.size !== ja.size || e.x !== ja.x || e.y !== ja.y || e.rotate !== ja.rotate || e.flipX || e.flipY;
}
function xse(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function wse(e) {
let {
transform: t,
width: r = oO,
height: n = oO,
startCentered: o = !1
} = e, a = "";
return o && OV ? a += "translate(".concat(t.x / Zs - r / 2, "em, ").concat(t.y / Zs - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / Zs, "em), calc(-50% + ").concat(t.y / Zs, "em)) ") : a += "translate(".concat(t.x / Zs, "em, ").concat(t.y / Zs, "em) "), a += "scale(".concat(t.size / Zs * (t.flipX ? -1 : 1), ", ").concat(t.size / Zs * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var $se = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function DV() {
const e = CV, t = NV, r = ze.cssPrefix, n = ze.replacementClass;
let o = $se;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let zN = !1;
function Kw() {
ze.autoAddCss && !zN && (bse(DV()), zN = !0);
}
var kse = {
mixout() {
return {
dom: {
css: DV,
insertCss: Kw
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
Kw();
},
beforeI2svg() {
Kw();
}
};
}
};
const Wi = oc || {};
Wi[zi] || (Wi[zi] = {});
Wi[zi].styles || (Wi[zi].styles = {});
Wi[zi].hooks || (Wi[zi].hooks = {});
Wi[zi].shims || (Wi[zi].shims = []);
var Ra = Wi[zi];
const FV = [], LV = function() {
Mr.removeEventListener("DOMContentLoaded", LV), g1 = 1, FV.map((e) => e());
};
let g1 = !1;
ps && (g1 = (Mr.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Mr.readyState), g1 || Mr.addEventListener("DOMContentLoaded", LV));
function _se(e) {
ps && (g1 ? setTimeout(e, 0) : FV.push(e));
}
function wb(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? MV(e) : "<".concat(t, " ").concat(vse(r), ">").concat(n.map(wb).join(""), "</").concat(t, ">");
}
function WN(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var Xw = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function Ose(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function zV(e) {
const t = Ose(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function Sse(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function VN(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function cO(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = VN(t);
typeof Ra.hooks.addPack == "function" && !n ? Ra.hooks.addPack(e, VN(t)) : Ra.styles[e] = he(he({}, Ra.styles[e] || {}), o), e === "fas" && cO("fa", t);
}
const {
styles: xg,
shims: Ese
} = Ra, WV = Object.keys(U4), Ase = WV.reduce((e, t) => (e[t] = Object.keys(U4[t]), e), {});
let q4 = null, VV = {}, HV = {}, GV = {}, UV = {}, BV = {};
function Pse(e) {
return ~pse.indexOf(e);
}
function Cse(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !Pse(o) ? o : null;
}
const YV = () => {
const e = (n) => Xw(xg, (o, a, i) => (o[i] = Xw(a, n, {}), o), {});
VV = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), HV = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), BV = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in xg || ze.autoFetchSvg, r = Xw(Ese, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
GV = r.names, UV = r.unicodes, q4 = M0(ze.styleDefault, {
family: ze.familyDefault
});
};
gse((e) => {
q4 = M0(e.styleDefault, {
family: ze.familyDefault
});
});
YV();
function K4(e, t) {
return (VV[e] || {})[t];
}
function Nse(e, t) {
return (HV[e] || {})[t];
}
function ru(e, t) {
return (BV[e] || {})[t];
}
function qV(e) {
return GV[e] || {
prefix: null,
iconName: null
};
}
function Tse(e) {
const t = UV[e], r = K4("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function ac() {
return q4;
}
const KV = () => ({
prefix: null,
iconName: null,
rest: []
});
function Ise(e) {
let t = vn;
const r = WV.reduce((n, o) => (n[o] = "".concat(ze.cssPrefix, "-").concat(o), n), {});
return AV.forEach((n) => {
(e.includes(r[n]) || e.some((o) => Ase[n].includes(o))) && (t = n);
}), t;
}
function M0(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = vn
} = t, n = lse[r][e];
if (r === j0 && !e)
return "fad";
const o = LN[r][e] || LN[r][n], a = e in Ra.styles ? e : null;
return o || a || null;
}
function jse(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = Cse(ze.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function HN(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function D0(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = nO.concat(Xie), a = HN(e.filter((l) => o.includes(l))), i = HN(e.filter((l) => !nO.includes(l))), s = a.filter((l) => (n = l, !EV.includes(l))), [u = null] = s, c = Ise(a), d = he(he({}, jse(i)), {}, {
prefix: M0(u, {
family: c
})
});
return he(he(he({}, d), Fse({
values: e,
family: c,
styles: xg,
config: ze,
canonical: d,
givenPrefix: n
})), Rse(r, n, d));
}
function Rse(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? qV(o) : {}, i = ru(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !xg.far && xg.fas && !ze.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const Mse = AV.filter((e) => e !== vn || e !== j0), Dse = Object.keys(rO).filter((e) => e !== vn).map((e) => Object.keys(rO[e])).flat();
function Fse(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === j0, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && Mse.includes(r) && (Object.keys(a).find((l) => Dse.includes(l)) || i.autoFetchSvg)) {
const l = Vie.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = ru(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = ac() || "fas"), n;
}
let Lse = class {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = he(he({}, this.definitions[a] || {}), o[a]), cO(a, o[a]);
const i = U4[vn][a];
i && cO(i, o[a]), YV();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}, GN = [], Sf = {};
const nd = {}, zse = Object.keys(nd);
function Wse(e, t) {
let {
mixoutsTo: r
} = t;
return GN = e, Sf = {}, Object.keys(nd).forEach((n) => {
zse.indexOf(n) === -1 && delete nd[n];
}), GN.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Sf[i] || (Sf[i] = []), Sf[i].push(a[i]);
});
}
n.provides && n.provides(nd);
}), r;
}
function uO(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Sf[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function Su(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Sf[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function ic() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return nd[e] ? nd[e].apply(null, t) : void 0;
}
function fO(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || ac();
if (t)
return t = ru(r, t) || t, WN(XV.definitions, r, t) || WN(Ra.styles, r, t);
}
const XV = new Lse(), Vse = () => {
ze.autoReplaceSvg = !1, ze.observeMutations = !1, Su("noAuto");
}, Hse = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return ps ? (Su("beforeI2svg", e), ic("pseudoElements2svg", e), ic("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
ze.autoReplaceSvg === !1 && (ze.autoReplaceSvg = !0), ze.observeMutations = !0, _se(() => {
Use({
autoReplaceSvgRoot: t
}), Su("watch", e);
});
}
}, Gse = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: ru(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = M0(e[0]);
return {
prefix: r,
iconName: ru(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(ze.cssPrefix, "-")) > -1 || e.match(cse))) {
const t = D0(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || ac(),
iconName: ru(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = ac();
return {
prefix: t,
iconName: ru(t, e) || e
};
}
}
}, oo = {
noAuto: Vse,
config: ze,
dom: Hse,
parse: Gse,
library: XV,
findIconDefinition: fO,
toHtml: wb
}, Use = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Mr
} = e;
(Object.keys(Ra.styles).length > 0 || ze.autoFetchSvg) && ps && ze.autoReplaceSvg && oo.dom.i2svg({
node: t
});
};
function F0(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => wb(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!ps) return;
const r = Mr.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function Bse(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (Y4(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = R0(he(he({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function Yse(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(ze.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: he(he({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function X4(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = Yie.includes(n), m = [ze.replacementClass, o ? "".concat(ze.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: he(he({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[Ou] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || vg())
},
children: [s]
}), delete h.attributes.title);
const $ = he(he({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: he(he({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? ic("generateAbstractMask", $) || {
children: [],
attributes: {}
} : ic("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? Yse($) : Bse($);
}
function UN(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = he(he(he({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[Ou] = "");
const c = he({}, i.styles);
Y4(o) && (c.transform = wse({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = R0(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function qse(e) {
const {
content: t,
title: r,
extra: n
} = e, o = he(he(he({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = R0(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: Jw
} = Ra;
function dO(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(ze.cssPrefix, "-").concat(qw.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(ze.cssPrefix, "-").concat(qw.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(ze.cssPrefix, "-").concat(qw.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const Kse = {
found: !1,
width: 512,
height: 512
};
function Xse(e, t) {
!TV && !ze.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function pO(e, t) {
let r = t;
return t === "fa" && ze.styleDefault !== null && (t = ac()), new Promise((n, o) => {
if (r === "fa") {
const a = qV(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && Jw[t] && Jw[t][e]) {
const a = Jw[t][e];
return n(dO(a));
}
Xse(e, t), n(he(he({}, Kse), {}, {
icon: ze.showMissingIcons && e ? ic("missingIconAbstract") || {} : {}
}));
});
}
const BN = () => {
}, mO = ze.measurePerformance && my && my.mark && my.measure ? my : {
mark: BN,
measure: BN
}, nh = 'FA "6.7.2"', Jse = (e) => (mO.mark("".concat(nh, " ").concat(e, " begins")), () => JV(e)), JV = (e) => {
mO.mark("".concat(nh, " ").concat(e, " ends")), mO.measure("".concat(nh, " ").concat(e), "".concat(nh, " ").concat(e, " begins"), "".concat(nh, " ").concat(e, " ends"));
};
var J4 = {
begin: Jse,
end: JV
};
const Ev = () => {
};
function YN(e) {
return typeof (e.getAttribute ? e.getAttribute(Ou) : null) == "string";
}
function Qse(e) {
const t = e.getAttribute ? e.getAttribute(H4) : null, r = e.getAttribute ? e.getAttribute(G4) : null;
return t && r;
}
function Zse(e) {
return e && e.classList && e.classList.contains && e.classList.contains(ze.replacementClass);
}
function ele() {
return ze.autoReplaceSvg === !0 ? Av.replace : Av[ze.autoReplaceSvg] || Av.replace;
}
function tle(e) {
return Mr.createElementNS("http://www.w3.org/2000/svg", e);
}
function rle(e) {
return Mr.createElement(e);
}
function QV(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? tle : rle
} = t;
if (typeof e == "string")
return Mr.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(QV(o, {
ceFn: r
}));
}), n;
}
function nle(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const Av = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(QV(r), t);
}), t.getAttribute(Ou) === null && ze.keepOriginalSource) {
let r = Mr.createComment(nle(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~B4(t).indexOf(ze.replacementClass))
return Av.replace(e);
const n = new RegExp("".concat(ze.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === ze.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => wb(a)).join(`
`);
t.setAttribute(Ou, ""), t.innerHTML = o;
}
};
function qN(e) {
e();
}
function ZV(e, t) {
const r = typeof t == "function" ? t : Ev;
if (e.length === 0)
r();
else {
let n = qN;
ze.mutateApproach === ise && (n = oc.requestAnimationFrame || qN), n(() => {
const o = ele(), a = J4.begin("mutate");
e.map(o), a(), r();
});
}
}
let Q4 = !1;
function eH() {
Q4 = !0;
}
function hO() {
Q4 = !1;
}
let b1 = null;
function KN(e) {
if (!RN || !ze.observeMutations)
return;
const {
treeCallback: t = Ev,
nodeCallback: r = Ev,
pseudoElementsCallback: n = Ev,
observeMutationsRoot: o = Mr
} = e;
b1 = new RN((a) => {
if (Q4) return;
const i = ac();
ep(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !YN(s.addedNodes[0]) && (ze.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && ze.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && YN(s.target) && ~dse.indexOf(s.attributeName))
if (s.attributeName === "class" && Qse(s.target)) {
const {
prefix: u,
iconName: c
} = D0(B4(s.target));
s.target.setAttribute(H4, u || i), c && s.target.setAttribute(G4, c);
} else Zse(s.target) && r(s.target);
});
}), ps && b1.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function ole() {
b1 && b1.disconnect();
}
function ale(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function ile(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = D0(B4(e));
return o.prefix || (o.prefix = ac()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = Nse(o.prefix, e.innerText) || K4(o.prefix, zV(e.innerText))), !o.iconName && ze.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function sle(e) {
const t = ep(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return ze.autoA11y && (r ? t["aria-labelledby"] = "".concat(ze.replacementClass, "-title-").concat(n || vg()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function lle() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: ja,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function XN(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = ile(e), a = sle(e), i = uO("parseNodeAttributes", {}, e);
let s = t.styleParser ? ale(e) : [];
return he({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: ja,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: cle
} = Ra;
function tH(e) {
const t = ze.autoReplaceSvg === "nest" ? XN(e, {
styleParser: !1
}) : XN(e);
return ~t.extra.classes.indexOf(jV) ? ic("generateLayersText", e, t) : ic("generateSvgReplacementMutation", e, t);
}
function ule() {
return [...Gie, ...nO];
}
function JN(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!ps) return Promise.resolve();
const r = Mr.documentElement.classList, n = (d) => r.add("".concat(FN, "-").concat(d)), o = (d) => r.remove("".concat(FN, "-").concat(d)), a = ze.autoFetchSvg ? ule() : EV.concat(Object.keys(cle));
a.includes("fa") || a.push("fa");
const i = [".".concat(jV, ":not([").concat(Ou, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(Ou, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = ep(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = J4.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = tH(l);
f && d.push(f);
} catch (f) {
TV || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
ZV(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function fle(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
tH(e).then((r) => {
r && ZV([r], t);
});
}
function dle(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : fO(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : fO(o || {})), e(n, he(he({}, r), {}, {
mask: o
}));
};
}
const ple = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = ja,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return F0(he({
type: "icon"
}, e), () => (Su("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), ze.autoA11y && (i ? c["aria-labelledby"] = "".concat(ze.replacementClass, "-title-").concat(s || vg()) : (c["aria-hidden"] = "true", c.focusable = "false")), X4({
icons: {
main: dO(p),
mask: o ? dO(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: he(he({}, ja), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var mle = {
mixout() {
return {
icon: dle(ple)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = JN, e.nodeCallback = fle, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Mr,
callback: n = () => {
}
} = t;
return JN(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([pO(n, i), c.iconName ? pO(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, X4({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = R0(i);
s.length > 0 && (n.style = s);
let u;
return Y4(a) && (u = ic("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, hle = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return F0({
type: "layer"
}, () => {
Su("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(ze.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, gle = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return F0({
type: "counter",
content: e
}, () => (Su("beforeDOMElementCreation", {
content: e,
params: t
}), qse({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(ze.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, ble = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = ja,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return F0({
type: "text",
content: e
}, () => (Su("beforeDOMElementCreation", {
content: e,
params: t
}), UN({
content: e,
transform: he(he({}, ja), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(ze.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (OV) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return ze.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, UN({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const yle = new RegExp('"', "ug"), QN = [1105920, 1112319], ZN = he(he(he(he({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), Wie), ose), Jie), gO = Object.keys(ZN).reduce((e, t) => (e[t.toLowerCase()] = ZN[t], e), {}), vle = Object.keys(gO).reduce((e, t) => {
const r = gO[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function xle(e) {
const t = e.replace(yle, ""), r = Sse(t, 0), n = r >= QN[0] && r <= QN[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: zV(o ? t[0] : t),
isSecondary: n || o
};
}
function wle(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (gO[r] || {})[o] || vle[r];
}
function eT(e, t) {
const r = "".concat(ase).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = ep(e.children).filter((l) => l.getAttribute(aO) === t)[0], i = oc.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(use), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = wle(s, c);
const {
value: p,
isSecondary: y
} = xle(l), m = u[0].startsWith("FontAwesome");
let h = K4(f, p), w = h;
if (m) {
const $ = Tse(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(H4) !== f || a.getAttribute(G4) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = lle(), {
extra: _
} = $;
_.attributes[aO] = t, pO(h, f).then((S) => {
const b = X4(he(he({}, $), {}, {
icons: {
main: S,
mask: KV()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = Mr.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => wb(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function $le(e) {
return Promise.all([eT(e, "::before"), eT(e, "::after")]);
}
function kle(e) {
return e.parentNode !== document.head && !~sse.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(aO) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function tT(e) {
if (ps)
return new Promise((t, r) => {
const n = ep(e.querySelectorAll("*")).filter(kle).map($le), o = J4.begin("searchPseudoElements");
eH(), Promise.all(n).then(() => {
o(), hO(), t();
}).catch(() => {
o(), hO(), r();
});
});
}
var _le = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = tT, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Mr
} = t;
ze.searchPseudoElements && tT(r);
};
}
};
let rT = !1;
var Ole = {
mixout() {
return {
dom: {
unwatch() {
eH(), rT = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
KN(uO("mutationObserverCallbacks", {}));
},
noAuto() {
ole();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
rT ? hO() : KN(uO("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const nT = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var Sle = {
mixout() {
return {
parse: {
transform: (e) => nT(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = nT(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: he({}, f.outer),
children: [{
tag: "g",
attributes: he({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: he(he({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const Qw = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function oT(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function Ele(e) {
return e.tag === "g" ? e.children : [e];
}
var Ale = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? D0(r.split(" ").map((o) => o.trim())) : KV();
return n.prefix || (n.prefix = ac()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = xse({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: he(he({}, Qw), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(oT)
} : {}, m = {
tag: "g",
attributes: he({}, f.inner),
children: [oT(he({
tag: c.tag,
attributes: he(he({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: he({}, f.outer),
children: [m]
}, w = "mask-".concat(i || vg()), $ = "clip-".concat(i || vg()), _ = {
tag: "mask",
attributes: he(he({}, Qw), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: Ele(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: he({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, Qw)
}), {
children: r,
attributes: n
};
};
}
}, Ple = {
provides(e) {
let t = !1;
oc.matchMedia && (t = oc.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: he(he({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = he(he({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: he(he({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: he(he({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: he(he({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: he(he({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: he(he({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: he(he({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: he(he({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, Cle = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, Nle = [kse, mle, hle, gle, ble, _le, Ole, Sle, Ale, Ple, Cle];
Wse(Nle, {
mixoutsTo: oo
});
oo.noAuto;
oo.config;
oo.library;
oo.dom;
const bO = oo.parse;
oo.findIconDefinition;
oo.toHtml;
const Tle = oo.icon;
oo.layer;
oo.text;
oo.counter;
function Ile(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var gy = { exports: {} }, Zw = { exports: {} }, Bt = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var aT;
function jle() {
if (aT) return Bt;
aT = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return Bt.AsyncMode = u, Bt.ConcurrentMode = c, Bt.ContextConsumer = s, Bt.ContextProvider = i, Bt.Element = t, Bt.ForwardRef = d, Bt.Fragment = n, Bt.Lazy = y, Bt.Memo = p, Bt.Portal = r, Bt.Profiler = a, Bt.StrictMode = o, Bt.Suspense = l, Bt.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, Bt.isConcurrentMode = S, Bt.isContextConsumer = function(b) {
return _(b) === s;
}, Bt.isContextProvider = function(b) {
return _(b) === i;
}, Bt.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, Bt.isForwardRef = function(b) {
return _(b) === d;
}, Bt.isFragment = function(b) {
return _(b) === n;
}, Bt.isLazy = function(b) {
return _(b) === y;
}, Bt.isMemo = function(b) {
return _(b) === p;
}, Bt.isPortal = function(b) {
return _(b) === r;
}, Bt.isProfiler = function(b) {
return _(b) === a;
}, Bt.isStrictMode = function(b) {
return _(b) === o;
}, Bt.isSuspense = function(b) {
return _(b) === l;
}, Bt.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, Bt.typeOf = _, Bt;
}
var ir = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var iT;
function Rle() {
return iT || (iT = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
ir.AsyncMode = b, ir.ConcurrentMode = F, ir.ContextConsumer = z, ir.ContextProvider = q, ir.Element = Y, ir.ForwardRef = B, ir.Fragment = Z, ir.Lazy = M, ir.Memo = te, ir.Portal = G, ir.Profiler = H, ir.StrictMode = U, ir.Suspense = W, ir.isAsyncMode = ee, ir.isConcurrentMode = v, ir.isContextConsumer = g, ir.isContextProvider = O, ir.isElement = P, ir.isForwardRef = A, ir.isFragment = T, ir.isLazy = N, ir.isMemo = C, ir.isPortal = I, ir.isProfiler = j, ir.isStrictMode = R, ir.isSuspense = Q, ir.isValidElementType = _, ir.typeOf = S;
}()), ir;
}
var sT;
function rH() {
return sT || (sT = 1, process.env.NODE_ENV === "production" ? Zw.exports = jle() : Zw.exports = Rle()), Zw.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var e2, lT;
function Mle() {
if (lT) return e2;
lT = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return e2 = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, e2;
}
var t2, cT;
function Z4() {
if (cT) return t2;
cT = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return t2 = e, t2;
}
var uT, fT;
function nH() {
return fT || (fT = 1, uT = Function.call.bind(Object.prototype.hasOwnProperty)), uT;
}
var r2, dT;
function Dle() {
if (dT) return r2;
dT = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ Z4(), r = {}, n = /* @__PURE__ */ nH();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, r2 = o, r2;
}
var n2, pT;
function Fle() {
if (pT) return n2;
pT = 1;
var e = rH(), t = Mle(), r = /* @__PURE__ */ Z4(), n = /* @__PURE__ */ nH(), o = /* @__PURE__ */ Dle(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return n2 = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, n2;
}
var o2, mT;
function Lle() {
if (mT) return o2;
mT = 1;
var e = /* @__PURE__ */ Z4();
function t() {
}
function r() {
}
return r.resetWarningCache = t, o2 = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, o2;
}
var hT;
function zle() {
if (hT) return gy.exports;
if (hT = 1, process.env.NODE_ENV !== "production") {
var e = rH(), t = !0;
gy.exports = /* @__PURE__ */ Fle()(e.isElement, t);
} else
gy.exports = /* @__PURE__ */ Lle()();
return gy.exports;
}
var Wle = /* @__PURE__ */ zle();
const Et = /* @__PURE__ */ Ile(Wle);
function gT(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function ya(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? gT(Object(r), !0).forEach(function(n) {
Ef(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : gT(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function y1(e) {
"@babel/helpers - typeof";
return y1 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, y1(e);
}
function Ef(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function Vle(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function Hle(e, t) {
if (e == null) return {};
var r = Vle(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function yO(e) {
return Gle(e) || Ule(e) || Ble(e) || Yle();
}
function Gle(e) {
if (Array.isArray(e)) return vO(e);
}
function Ule(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function Ble(e, t) {
if (e) {
if (typeof e == "string") return vO(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return vO(e, t);
}
}
function vO(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function Yle() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function qle(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, Ef(t, "fa-".concat(w), typeof w < "u" && w !== null), Ef(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), Ef(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), Ef(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function Kle(e) {
return e = e - 0, e === e;
}
function oH(e) {
return Kle(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var Xle = ["style"];
function Jle(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function Qle(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = oH(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[Jle(o)] = a : t[o] = a, t;
}, {});
}
function aH(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return aH(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = Qle(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[oH(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = Hle(r, Xle);
return o.attrs.style = ya(ya({}, o.attrs.style), i), e.apply(void 0, [t.tag, ya(ya({}, o.attrs), s)].concat(yO(n)));
}
var iH = !1;
try {
iH = process.env.NODE_ENV === "production";
} catch {
}
function Zle() {
if (!iH && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function bT(e) {
if (e && y1(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (bO.icon)
return bO.icon(e);
if (e === null)
return null;
if (e && y1(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function a2(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Ef({}, e, t) : {};
}
var yT = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, wg = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = ya(ya({}, yT), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = bT(n), l = a2("classes", [].concat(yO(qle(r)), yO((i || "").split(" ")))), f = a2("transform", typeof r.transform == "string" ? bO.transform(r.transform) : r.transform), p = a2("mask", bT(o)), y = Tle(d, ya(ya(ya(ya({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return Zle("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
yT.hasOwnProperty(w) || (h[w] = r[w]);
}), ece(m[0], h);
});
wg.displayName = "FontAwesomeIcon";
wg.propTypes = {
beat: Et.bool,
border: Et.bool,
beatFade: Et.bool,
bounce: Et.bool,
className: Et.string,
fade: Et.bool,
flash: Et.bool,
mask: Et.oneOfType([Et.object, Et.array, Et.string]),
maskId: Et.string,
fixedWidth: Et.bool,
inverse: Et.bool,
flip: Et.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: Et.oneOfType([Et.object, Et.array, Et.string]),
listItem: Et.bool,
pull: Et.oneOf(["right", "left"]),
pulse: Et.bool,
rotation: Et.oneOf([0, 90, 180, 270]),
shake: Et.bool,
size: Et.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: Et.bool,
spinPulse: Et.bool,
spinReverse: Et.bool,
symbol: Et.oneOfType([Et.bool, Et.string]),
title: Et.string,
titleId: Et.string,
transform: Et.oneOfType([Et.string, Et.object]),
swapOpacity: Et.bool
};
var ece = aH.bind(null, ae.createElement);
/*!
* Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
* Copyright 2024 Fonticons, Inc.
*/
const tce = {
prefix: "fas",
iconName: "xmark",
icon: [384, 512, [128473, 10005, 10006, 10060, 215, "close", "multiply", "remove", "times"], "f00d", "M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"]
};
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function rce(e, t, r) {
return (t = oce(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function vT(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function ge(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? vT(Object(r), !0).forEach(function(n) {
rce(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : vT(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function nce(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function oce(e) {
var t = nce(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const xT = () => {
};
let e3 = {}, sH = {}, lH = null, cH = {
mark: xT,
measure: xT
};
try {
typeof window < "u" && (e3 = window), typeof document < "u" && (sH = document), typeof MutationObserver < "u" && (lH = MutationObserver), typeof performance < "u" && (cH = performance);
} catch {
}
const {
userAgent: wT = ""
} = e3.navigator || {}, sc = e3, Dr = sH, $T = lH, by = cH;
sc.document;
const ms = !!Dr.documentElement && !!Dr.head && typeof Dr.addEventListener == "function" && typeof Dr.createElement == "function", uH = ~wT.indexOf("MSIE") || ~wT.indexOf("Trident/");
var ace = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, ice = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, fH = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, sce = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, dH = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], xn = "classic", L0 = "duotone", lce = "sharp", cce = "sharp-duotone", pH = [xn, L0, lce, cce], uce = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, fce = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, dce = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), pce = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, mce = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], kT = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, hce = ["kit"], gce = {
kit: {
"fa-kit": "fak"
}
}, bce = ["fak", "fakd"], yce = {
kit: {
fak: "fa-kit"
}
}, _T = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, yy = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, vce = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], xce = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], wce = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, $ce = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, kce = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, xO = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, _ce = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], wO = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...vce, ..._ce], Oce = ["solid", "regular", "light", "thin", "duotone", "brands"], mH = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], Sce = mH.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), Ece = [...Object.keys(kce), ...Oce, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", yy.GROUP, yy.SWAP_OPACITY, yy.PRIMARY, yy.SECONDARY].concat(mH.map((e) => "".concat(e, "x"))).concat(Sce.map((e) => "w-".concat(e))), Ace = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const Vi = "___FONT_AWESOME___", $O = 16, hH = "fa", gH = "svg-inline--fa", Eu = "data-fa-i2svg", kO = "data-fa-pseudo-element", Pce = "data-fa-pseudo-element-pending", t3 = "data-prefix", r3 = "data-icon", OT = "fontawesome-i2svg", Cce = "async", Nce = ["HTML", "HEAD", "STYLE", "SCRIPT"], bH = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function $b(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[xn];
}
});
}
const yH = ge({}, fH);
yH[xn] = ge(ge(ge(ge({}, {
"fa-duotone": "duotone"
}), fH[xn]), kT.kit), kT["kit-duotone"]);
const Tce = $b(yH), _O = ge({}, pce);
_O[xn] = ge(ge(ge(ge({}, {
duotone: "fad"
}), _O[xn]), _T.kit), _T["kit-duotone"]);
const ST = $b(_O), OO = ge({}, xO);
OO[xn] = ge(ge({}, OO[xn]), yce.kit);
const n3 = $b(OO), SO = ge({}, $ce);
SO[xn] = ge(ge({}, SO[xn]), gce.kit);
$b(SO);
const Ice = ace, vH = "fa-layers-text", jce = ice, Rce = ge({}, uce);
$b(Rce);
const Mce = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], i2 = sce, Dce = [...hce, ...Ece], Ph = sc.FontAwesomeConfig || {};
function Fce(e) {
var t = Dr.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function Lce(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Dr && typeof Dr.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = Lce(Fce(t));
n != null && (Ph[r] = n);
});
const xH = {
styleDefault: "solid",
familyDefault: xn,
cssPrefix: hH,
replacementClass: gH,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Ph.familyPrefix && (Ph.cssPrefix = Ph.familyPrefix);
const Md = ge(ge({}, xH), Ph);
Md.autoReplaceSvg || (Md.observeMutations = !1);
const We = {};
Object.keys(xH).forEach((e) => {
Object.defineProperty(We, e, {
enumerable: !0,
set: function(t) {
Md[e] = t, Ch.forEach((r) => r(We));
},
get: function() {
return Md[e];
}
});
});
Object.defineProperty(We, "familyPrefix", {
enumerable: !0,
set: function(e) {
Md.cssPrefix = e, Ch.forEach((t) => t(We));
},
get: function() {
return Md.cssPrefix;
}
});
sc.FontAwesomeConfig = We;
const Ch = [];
function zce(e) {
return Ch.push(e), () => {
Ch.splice(Ch.indexOf(e), 1);
};
}
const el = $O, Ma = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function Wce(e) {
if (!e || !ms)
return;
const t = Dr.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Dr.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Dr.head.insertBefore(t, n), e;
}
const Vce = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function $g() {
let e = 12, t = "";
for (; e-- > 0; )
t += Vce[Math.random() * 62 | 0];
return t;
}
function tp(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function o3(e) {
return e.classList ? tp(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function wH(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function Hce(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(wH(e[r]), '" '), "").trim();
}
function z0(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function a3(e) {
return e.size !== Ma.size || e.x !== Ma.x || e.y !== Ma.y || e.rotate !== Ma.rotate || e.flipX || e.flipY;
}
function Gce(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function Uce(e) {
let {
transform: t,
width: r = $O,
height: n = $O,
startCentered: o = !1
} = e, a = "";
return o && uH ? a += "translate(".concat(t.x / el - r / 2, "em, ").concat(t.y / el - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / el, "em), calc(-50% + ").concat(t.y / el, "em)) ") : a += "translate(".concat(t.x / el, "em, ").concat(t.y / el, "em) "), a += "scale(".concat(t.size / el * (t.flipX ? -1 : 1), ", ").concat(t.size / el * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var Bce = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function $H() {
const e = hH, t = gH, r = We.cssPrefix, n = We.replacementClass;
let o = Bce;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let ET = !1;
function s2() {
We.autoAddCss && !ET && (Wce($H()), ET = !0);
}
var Yce = {
mixout() {
return {
dom: {
css: $H,
insertCss: s2
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
s2();
},
beforeI2svg() {
s2();
}
};
}
};
const Hi = sc || {};
Hi[Vi] || (Hi[Vi] = {});
Hi[Vi].styles || (Hi[Vi].styles = {});
Hi[Vi].hooks || (Hi[Vi].hooks = {});
Hi[Vi].shims || (Hi[Vi].shims = []);
var Da = Hi[Vi];
const kH = [], _H = function() {
Dr.removeEventListener("DOMContentLoaded", _H), v1 = 1, kH.map((e) => e());
};
let v1 = !1;
ms && (v1 = (Dr.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Dr.readyState), v1 || Dr.addEventListener("DOMContentLoaded", _H));
function qce(e) {
ms && (v1 ? setTimeout(e, 0) : kH.push(e));
}
function kb(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? wH(e) : "<".concat(t, " ").concat(Hce(r), ">").concat(n.map(kb).join(""), "</").concat(t, ">");
}
function AT(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var l2 = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function Kce(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function OH(e) {
const t = Kce(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function Xce(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function PT(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function EO(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = PT(t);
typeof Da.hooks.addPack == "function" && !n ? Da.hooks.addPack(e, PT(t)) : Da.styles[e] = ge(ge({}, Da.styles[e] || {}), o), e === "fas" && EO("fa", t);
}
const {
styles: kg,
shims: Jce
} = Da, SH = Object.keys(n3), Qce = SH.reduce((e, t) => (e[t] = Object.keys(n3[t]), e), {});
let i3 = null, EH = {}, AH = {}, PH = {}, CH = {}, NH = {};
function Zce(e) {
return ~Dce.indexOf(e);
}
function eue(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !Zce(o) ? o : null;
}
const TH = () => {
const e = (n) => l2(kg, (o, a, i) => (o[i] = l2(a, n, {}), o), {});
EH = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), AH = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), NH = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in kg || We.autoFetchSvg, r = l2(Jce, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
PH = r.names, CH = r.unicodes, i3 = W0(We.styleDefault, {
family: We.familyDefault
});
};
zce((e) => {
i3 = W0(e.styleDefault, {
family: We.familyDefault
});
});
TH();
function s3(e, t) {
return (EH[e] || {})[t];
}
function tue(e, t) {
return (AH[e] || {})[t];
}
function nu(e, t) {
return (NH[e] || {})[t];
}
function IH(e) {
return PH[e] || {
prefix: null,
iconName: null
};
}
function rue(e) {
const t = CH[e], r = s3("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function lc() {
return i3;
}
const jH = () => ({
prefix: null,
iconName: null,
rest: []
});
function nue(e) {
let t = xn;
const r = SH.reduce((n, o) => (n[o] = "".concat(We.cssPrefix, "-").concat(o), n), {});
return pH.forEach((n) => {
(e.includes(r[n]) || e.some((o) => Qce[n].includes(o))) && (t = n);
}), t;
}
function W0(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = xn
} = t, n = Tce[r][e];
if (r === L0 && !e)
return "fad";
const o = ST[r][e] || ST[r][n], a = e in Da.styles ? e : null;
return o || a || null;
}
function oue(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = eue(We.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function CT(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function V0(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = wO.concat(xce), a = CT(e.filter((l) => o.includes(l))), i = CT(e.filter((l) => !wO.includes(l))), s = a.filter((l) => (n = l, !dH.includes(l))), [u = null] = s, c = nue(a), d = ge(ge({}, oue(i)), {}, {
prefix: W0(u, {
family: c
})
});
return ge(ge(ge({}, d), lue({
values: e,
family: c,
styles: kg,
config: We,
canonical: d,
givenPrefix: n
})), aue(r, n, d));
}
function aue(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? IH(o) : {}, i = nu(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !kg.far && kg.fas && !We.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const iue = pH.filter((e) => e !== xn || e !== L0), sue = Object.keys(xO).filter((e) => e !== xn).map((e) => Object.keys(xO[e])).flat();
function lue(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === L0, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && iue.includes(r) && (Object.keys(a).find((l) => sue.includes(l)) || i.autoFetchSvg)) {
const l = dce.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = nu(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = lc() || "fas"), n;
}
let cue = class {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = ge(ge({}, this.definitions[a] || {}), o[a]), EO(a, o[a]);
const i = n3[xn][a];
i && EO(i, o[a]), TH();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}, NT = [], Af = {};
const od = {}, uue = Object.keys(od);
function fue(e, t) {
let {
mixoutsTo: r
} = t;
return NT = e, Af = {}, Object.keys(od).forEach((n) => {
uue.indexOf(n) === -1 && delete od[n];
}), NT.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Af[i] || (Af[i] = []), Af[i].push(a[i]);
});
}
n.provides && n.provides(od);
}), r;
}
function AO(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Af[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function Au(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Af[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function cc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return od[e] ? od[e].apply(null, t) : void 0;
}
function PO(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || lc();
if (t)
return t = nu(r, t) || t, AT(RH.definitions, r, t) || AT(Da.styles, r, t);
}
const RH = new cue(), due = () => {
We.autoReplaceSvg = !1, We.observeMutations = !1, Au("noAuto");
}, pue = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return ms ? (Au("beforeI2svg", e), cc("pseudoElements2svg", e), cc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
We.autoReplaceSvg === !1 && (We.autoReplaceSvg = !0), We.observeMutations = !0, qce(() => {
hue({
autoReplaceSvgRoot: t
}), Au("watch", e);
});
}
}, mue = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: nu(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = W0(e[0]);
return {
prefix: r,
iconName: nu(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(We.cssPrefix, "-")) > -1 || e.match(Ice))) {
const t = V0(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || lc(),
iconName: nu(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = lc();
return {
prefix: t,
iconName: nu(t, e) || e
};
}
}
}, ao = {
noAuto: due,
config: We,
dom: pue,
parse: mue,
library: RH,
findIconDefinition: PO,
toHtml: kb
}, hue = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Dr
} = e;
(Object.keys(Da.styles).length > 0 || We.autoFetchSvg) && ms && We.autoReplaceSvg && ao.dom.i2svg({
node: t
});
};
function H0(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => kb(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!ms) return;
const r = Dr.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function gue(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (a3(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = z0(ge(ge({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function bue(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(We.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: ge(ge({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function l3(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = bce.includes(n), m = [We.replacementClass, o ? "".concat(We.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: ge(ge({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[Eu] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || $g())
},
children: [s]
}), delete h.attributes.title);
const $ = ge(ge({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: ge(ge({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? cc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : cc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? bue($) : gue($);
}
function TT(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = ge(ge(ge({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[Eu] = "");
const c = ge({}, i.styles);
a3(o) && (c.transform = Uce({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = z0(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function yue(e) {
const {
content: t,
title: r,
extra: n
} = e, o = ge(ge(ge({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = z0(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: c2
} = Da;
function CO(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(We.cssPrefix, "-").concat(i2.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(We.cssPrefix, "-").concat(i2.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(We.cssPrefix, "-").concat(i2.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const vue = {
found: !1,
width: 512,
height: 512
};
function xue(e, t) {
!bH && !We.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function NO(e, t) {
let r = t;
return t === "fa" && We.styleDefault !== null && (t = lc()), new Promise((n, o) => {
if (r === "fa") {
const a = IH(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && c2[t] && c2[t][e]) {
const a = c2[t][e];
return n(CO(a));
}
xue(e, t), n(ge(ge({}, vue), {}, {
icon: We.showMissingIcons && e ? cc("missingIconAbstract") || {} : {}
}));
});
}
const IT = () => {
}, TO = We.measurePerformance && by && by.mark && by.measure ? by : {
mark: IT,
measure: IT
}, oh = 'FA "6.7.2"', wue = (e) => (TO.mark("".concat(oh, " ").concat(e, " begins")), () => MH(e)), MH = (e) => {
TO.mark("".concat(oh, " ").concat(e, " ends")), TO.measure("".concat(oh, " ").concat(e), "".concat(oh, " ").concat(e, " begins"), "".concat(oh, " ").concat(e, " ends"));
};
var c3 = {
begin: wue,
end: MH
};
const Pv = () => {
};
function jT(e) {
return typeof (e.getAttribute ? e.getAttribute(Eu) : null) == "string";
}
function $ue(e) {
const t = e.getAttribute ? e.getAttribute(t3) : null, r = e.getAttribute ? e.getAttribute(r3) : null;
return t && r;
}
function kue(e) {
return e && e.classList && e.classList.contains && e.classList.contains(We.replacementClass);
}
function _ue() {
return We.autoReplaceSvg === !0 ? Cv.replace : Cv[We.autoReplaceSvg] || Cv.replace;
}
function Oue(e) {
return Dr.createElementNS("http://www.w3.org/2000/svg", e);
}
function Sue(e) {
return Dr.createElement(e);
}
function DH(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? Oue : Sue
} = t;
if (typeof e == "string")
return Dr.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(DH(o, {
ceFn: r
}));
}), n;
}
function Eue(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const Cv = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(DH(r), t);
}), t.getAttribute(Eu) === null && We.keepOriginalSource) {
let r = Dr.createComment(Eue(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~o3(t).indexOf(We.replacementClass))
return Cv.replace(e);
const n = new RegExp("".concat(We.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === We.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => kb(a)).join(`
`);
t.setAttribute(Eu, ""), t.innerHTML = o;
}
};
function RT(e) {
e();
}
function FH(e, t) {
const r = typeof t == "function" ? t : Pv;
if (e.length === 0)
r();
else {
let n = RT;
We.mutateApproach === Cce && (n = sc.requestAnimationFrame || RT), n(() => {
const o = _ue(), a = c3.begin("mutate");
e.map(o), a(), r();
});
}
}
let u3 = !1;
function LH() {
u3 = !0;
}
function IO() {
u3 = !1;
}
let x1 = null;
function MT(e) {
if (!$T || !We.observeMutations)
return;
const {
treeCallback: t = Pv,
nodeCallback: r = Pv,
pseudoElementsCallback: n = Pv,
observeMutationsRoot: o = Dr
} = e;
x1 = new $T((a) => {
if (u3) return;
const i = lc();
tp(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !jT(s.addedNodes[0]) && (We.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && We.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && jT(s.target) && ~Mce.indexOf(s.attributeName))
if (s.attributeName === "class" && $ue(s.target)) {
const {
prefix: u,
iconName: c
} = V0(o3(s.target));
s.target.setAttribute(t3, u || i), c && s.target.setAttribute(r3, c);
} else kue(s.target) && r(s.target);
});
}), ms && x1.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function Aue() {
x1 && x1.disconnect();
}
function Pue(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function Cue(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = V0(o3(e));
return o.prefix || (o.prefix = lc()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = tue(o.prefix, e.innerText) || s3(o.prefix, OH(e.innerText))), !o.iconName && We.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function Nue(e) {
const t = tp(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return We.autoA11y && (r ? t["aria-labelledby"] = "".concat(We.replacementClass, "-title-").concat(n || $g()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function Tue() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: Ma,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function DT(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = Cue(e), a = Nue(e), i = AO("parseNodeAttributes", {}, e);
let s = t.styleParser ? Pue(e) : [];
return ge({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: Ma,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: Iue
} = Da;
function zH(e) {
const t = We.autoReplaceSvg === "nest" ? DT(e, {
styleParser: !1
}) : DT(e);
return ~t.extra.classes.indexOf(vH) ? cc("generateLayersText", e, t) : cc("generateSvgReplacementMutation", e, t);
}
function jue() {
return [...mce, ...wO];
}
function FT(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!ms) return Promise.resolve();
const r = Dr.documentElement.classList, n = (d) => r.add("".concat(OT, "-").concat(d)), o = (d) => r.remove("".concat(OT, "-").concat(d)), a = We.autoFetchSvg ? jue() : dH.concat(Object.keys(Iue));
a.includes("fa") || a.push("fa");
const i = [".".concat(vH, ":not([").concat(Eu, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(Eu, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = tp(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = c3.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = zH(l);
f && d.push(f);
} catch (f) {
bH || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
FH(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function Rue(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
zH(e).then((r) => {
r && FH([r], t);
});
}
function Mue(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : PO(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : PO(o || {})), e(n, ge(ge({}, r), {}, {
mask: o
}));
};
}
const Due = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ma,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return H0(ge({
type: "icon"
}, e), () => (Au("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), We.autoA11y && (i ? c["aria-labelledby"] = "".concat(We.replacementClass, "-title-").concat(s || $g()) : (c["aria-hidden"] = "true", c.focusable = "false")), l3({
icons: {
main: CO(p),
mask: o ? CO(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: ge(ge({}, Ma), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var Fue = {
mixout() {
return {
icon: Mue(Due)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = FT, e.nodeCallback = Rue, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Dr,
callback: n = () => {
}
} = t;
return FT(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([NO(n, i), c.iconName ? NO(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, l3({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = z0(i);
s.length > 0 && (n.style = s);
let u;
return a3(a) && (u = cc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, Lue = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return H0({
type: "layer"
}, () => {
Au("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(We.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, zue = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return H0({
type: "counter",
content: e
}, () => (Au("beforeDOMElementCreation", {
content: e,
params: t
}), yue({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(We.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, Wue = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ma,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return H0({
type: "text",
content: e
}, () => (Au("beforeDOMElementCreation", {
content: e,
params: t
}), TT({
content: e,
transform: ge(ge({}, Ma), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(We.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (uH) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return We.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, TT({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const Vue = new RegExp('"', "ug"), LT = [1105920, 1112319], zT = ge(ge(ge(ge({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), fce), Ace), wce), jO = Object.keys(zT).reduce((e, t) => (e[t.toLowerCase()] = zT[t], e), {}), Hue = Object.keys(jO).reduce((e, t) => {
const r = jO[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function Gue(e) {
const t = e.replace(Vue, ""), r = Xce(t, 0), n = r >= LT[0] && r <= LT[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: OH(o ? t[0] : t),
isSecondary: n || o
};
}
function Uue(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (jO[r] || {})[o] || Hue[r];
}
function WT(e, t) {
const r = "".concat(Pce).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = tp(e.children).filter((l) => l.getAttribute(kO) === t)[0], i = sc.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(jce), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = Uue(s, c);
const {
value: p,
isSecondary: y
} = Gue(l), m = u[0].startsWith("FontAwesome");
let h = s3(f, p), w = h;
if (m) {
const $ = rue(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(t3) !== f || a.getAttribute(r3) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = Tue(), {
extra: _
} = $;
_.attributes[kO] = t, NO(h, f).then((S) => {
const b = l3(ge(ge({}, $), {}, {
icons: {
main: S,
mask: jH()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = Dr.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => kb(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function Bue(e) {
return Promise.all([WT(e, "::before"), WT(e, "::after")]);
}
function Yue(e) {
return e.parentNode !== document.head && !~Nce.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(kO) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function VT(e) {
if (ms)
return new Promise((t, r) => {
const n = tp(e.querySelectorAll("*")).filter(Yue).map(Bue), o = c3.begin("searchPseudoElements");
LH(), Promise.all(n).then(() => {
o(), IO(), t();
}).catch(() => {
o(), IO(), r();
});
});
}
var que = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = VT, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Dr
} = t;
We.searchPseudoElements && VT(r);
};
}
};
let HT = !1;
var Kue = {
mixout() {
return {
dom: {
unwatch() {
LH(), HT = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
MT(AO("mutationObserverCallbacks", {}));
},
noAuto() {
Aue();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
HT ? IO() : MT(AO("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const GT = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var Xue = {
mixout() {
return {
parse: {
transform: (e) => GT(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = GT(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: ge({}, f.outer),
children: [{
tag: "g",
attributes: ge({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: ge(ge({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const u2 = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function UT(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function Jue(e) {
return e.tag === "g" ? e.children : [e];
}
var Que = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? V0(r.split(" ").map((o) => o.trim())) : jH();
return n.prefix || (n.prefix = lc()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = Gce({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: ge(ge({}, u2), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(UT)
} : {}, m = {
tag: "g",
attributes: ge({}, f.inner),
children: [UT(ge({
tag: c.tag,
attributes: ge(ge({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: ge({}, f.outer),
children: [m]
}, w = "mask-".concat(i || $g()), $ = "clip-".concat(i || $g()), _ = {
tag: "mask",
attributes: ge(ge({}, u2), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: Jue(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: ge({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, u2)
}), {
children: r,
attributes: n
};
};
}
}, Zue = {
provides(e) {
let t = !1;
sc.matchMedia && (t = sc.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: ge(ge({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = ge(ge({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: ge(ge({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: ge(ge({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: ge(ge({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: ge(ge({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: ge(ge({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: ge(ge({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: ge(ge({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, efe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, tfe = [Yce, Fue, Lue, zue, Wue, que, Kue, Xue, Que, Zue, efe];
fue(tfe, {
mixoutsTo: ao
});
ao.noAuto;
ao.config;
ao.library;
ao.dom;
const RO = ao.parse;
ao.findIconDefinition;
ao.toHtml;
const rfe = ao.icon;
ao.layer;
ao.text;
ao.counter;
function nfe(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var vy = { exports: {} }, f2 = { exports: {} }, Yt = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var BT;
function ofe() {
if (BT) return Yt;
BT = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return Yt.AsyncMode = u, Yt.ConcurrentMode = c, Yt.ContextConsumer = s, Yt.ContextProvider = i, Yt.Element = t, Yt.ForwardRef = d, Yt.Fragment = n, Yt.Lazy = y, Yt.Memo = p, Yt.Portal = r, Yt.Profiler = a, Yt.StrictMode = o, Yt.Suspense = l, Yt.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, Yt.isConcurrentMode = S, Yt.isContextConsumer = function(b) {
return _(b) === s;
}, Yt.isContextProvider = function(b) {
return _(b) === i;
}, Yt.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, Yt.isForwardRef = function(b) {
return _(b) === d;
}, Yt.isFragment = function(b) {
return _(b) === n;
}, Yt.isLazy = function(b) {
return _(b) === y;
}, Yt.isMemo = function(b) {
return _(b) === p;
}, Yt.isPortal = function(b) {
return _(b) === r;
}, Yt.isProfiler = function(b) {
return _(b) === a;
}, Yt.isStrictMode = function(b) {
return _(b) === o;
}, Yt.isSuspense = function(b) {
return _(b) === l;
}, Yt.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, Yt.typeOf = _, Yt;
}
var sr = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var YT;
function afe() {
return YT || (YT = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
sr.AsyncMode = b, sr.ConcurrentMode = F, sr.ContextConsumer = z, sr.ContextProvider = q, sr.Element = Y, sr.ForwardRef = B, sr.Fragment = Z, sr.Lazy = M, sr.Memo = te, sr.Portal = G, sr.Profiler = H, sr.StrictMode = U, sr.Suspense = W, sr.isAsyncMode = ee, sr.isConcurrentMode = v, sr.isContextConsumer = g, sr.isContextProvider = O, sr.isElement = P, sr.isForwardRef = A, sr.isFragment = T, sr.isLazy = N, sr.isMemo = C, sr.isPortal = I, sr.isProfiler = j, sr.isStrictMode = R, sr.isSuspense = Q, sr.isValidElementType = _, sr.typeOf = S;
}()), sr;
}
var qT;
function WH() {
return qT || (qT = 1, process.env.NODE_ENV === "production" ? f2.exports = ofe() : f2.exports = afe()), f2.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var d2, KT;
function ife() {
if (KT) return d2;
KT = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return d2 = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, d2;
}
var p2, XT;
function f3() {
if (XT) return p2;
XT = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return p2 = e, p2;
}
var JT, QT;
function VH() {
return QT || (QT = 1, JT = Function.call.bind(Object.prototype.hasOwnProperty)), JT;
}
var m2, ZT;
function sfe() {
if (ZT) return m2;
ZT = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ f3(), r = {}, n = /* @__PURE__ */ VH();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, m2 = o, m2;
}
var h2, eI;
function lfe() {
if (eI) return h2;
eI = 1;
var e = WH(), t = ife(), r = /* @__PURE__ */ f3(), n = /* @__PURE__ */ VH(), o = /* @__PURE__ */ sfe(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return h2 = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, h2;
}
var g2, tI;
function cfe() {
if (tI) return g2;
tI = 1;
var e = /* @__PURE__ */ f3();
function t() {
}
function r() {
}
return r.resetWarningCache = t, g2 = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, g2;
}
var rI;
function ufe() {
if (rI) return vy.exports;
if (rI = 1, process.env.NODE_ENV !== "production") {
var e = WH(), t = !0;
vy.exports = /* @__PURE__ */ lfe()(e.isElement, t);
} else
vy.exports = /* @__PURE__ */ cfe()();
return vy.exports;
}
var ffe = /* @__PURE__ */ ufe();
const At = /* @__PURE__ */ nfe(ffe);
function nI(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function va(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? nI(Object(r), !0).forEach(function(n) {
Pf(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : nI(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function w1(e) {
"@babel/helpers - typeof";
return w1 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, w1(e);
}
function Pf(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function dfe(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function pfe(e, t) {
if (e == null) return {};
var r = dfe(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function MO(e) {
return mfe(e) || hfe(e) || gfe(e) || bfe();
}
function mfe(e) {
if (Array.isArray(e)) return DO(e);
}
function hfe(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function gfe(e, t) {
if (e) {
if (typeof e == "string") return DO(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return DO(e, t);
}
}
function DO(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function bfe() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function yfe(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, Pf(t, "fa-".concat(w), typeof w < "u" && w !== null), Pf(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), Pf(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), Pf(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function vfe(e) {
return e = e - 0, e === e;
}
function HH(e) {
return vfe(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var xfe = ["style"];
function wfe(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function $fe(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = HH(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[wfe(o)] = a : t[o] = a, t;
}, {});
}
function GH(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return GH(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = $fe(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[HH(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = pfe(r, xfe);
return o.attrs.style = va(va({}, o.attrs.style), i), e.apply(void 0, [t.tag, va(va({}, o.attrs), s)].concat(MO(n)));
}
var UH = !1;
try {
UH = process.env.NODE_ENV === "production";
} catch {
}
function kfe() {
if (!UH && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function oI(e) {
if (e && w1(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (RO.icon)
return RO.icon(e);
if (e === null)
return null;
if (e && w1(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function b2(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Pf({}, e, t) : {};
}
var aI = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, d3 = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = va(va({}, aI), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = oI(n), l = b2("classes", [].concat(MO(yfe(r)), MO((i || "").split(" ")))), f = b2("transform", typeof r.transform == "string" ? RO.transform(r.transform) : r.transform), p = b2("mask", oI(o)), y = rfe(d, va(va(va(va({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return kfe("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
aI.hasOwnProperty(w) || (h[w] = r[w]);
}), _fe(m[0], h);
});
d3.displayName = "FontAwesomeIcon";
d3.propTypes = {
beat: At.bool,
border: At.bool,
beatFade: At.bool,
bounce: At.bool,
className: At.string,
fade: At.bool,
flash: At.bool,
mask: At.oneOfType([At.object, At.array, At.string]),
maskId: At.string,
fixedWidth: At.bool,
inverse: At.bool,
flip: At.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: At.oneOfType([At.object, At.array, At.string]),
listItem: At.bool,
pull: At.oneOf(["right", "left"]),
pulse: At.bool,
rotation: At.oneOf([0, 90, 180, 270]),
shake: At.bool,
size: At.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: At.bool,
spinPulse: At.bool,
spinReverse: At.bool,
symbol: At.oneOfType([At.bool, At.string]),
title: At.string,
titleId: At.string,
transform: At.oneOfType([At.string, At.object]),
swapOpacity: At.bool
};
var _fe = GH.bind(null, ae.createElement);
const p3 = "-", Ofe = (e) => {
const t = Efe(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(p3);
return a[0] === "" && a.length !== 1 && a.shift(), BH(a, t) || Sfe(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, BH = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? BH(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(p3);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, iI = /^\[(.+)\]$/, Sfe = (e) => {
if (iI.test(e)) {
const t = iI.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, Efe = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return Pfe(Object.entries(e.classGroups), r).forEach(([o, a]) => {
FO(a, n, o, t);
}), n;
}, FO = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : sI(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (Afe(o)) {
FO(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
FO(i, sI(t, a), r, n);
});
});
}, sI = (e, t) => {
let r = e;
return t.split(p3).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, Afe = (e) => e.isThemeGetter, Pfe = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, Cfe = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, YH = "!", Nfe = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith(YH), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, Tfe = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, Ife = (e) => ({
cache: Cfe(e.cacheSize),
parseClassName: Nfe(e),
...Ofe(e)
}), jfe = /\s+/, Rfe = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(jfe);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = Tfe(d).join(":"), w = l ? h + YH : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function Mfe() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = qH(t)) && (n && (n += " "), n += r);
return n;
}
const qH = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = qH(e[n])) && (r && (r += " "), r += t);
return r;
};
function Dfe(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = Ife(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = Rfe(u, r);
return o(u, d), d;
}
return function() {
return a(Mfe.apply(null, arguments));
};
}
const Or = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, KH = /^\[(?:([a-z-]+):)?(.+)\]$/i, Ffe = /^\d+\/\d+$/, Lfe = /* @__PURE__ */ new Set(["px", "full", "screen"]), zfe = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, Wfe = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, Vfe = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, Hfe = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, Gfe = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, vi = (e) => ad(e) || Lfe.has(e) || Ffe.test(e), tl = (e) => rp(e, "length", Qfe), ad = (e) => !!e && !Number.isNaN(Number(e)), y2 = (e) => rp(e, "number", ad), xm = (e) => !!e && Number.isInteger(Number(e)), Ufe = (e) => e.endsWith("%") && ad(e.slice(0, -1)), ut = (e) => KH.test(e), rl = (e) => zfe.test(e), Bfe = /* @__PURE__ */ new Set(["length", "size", "percentage"]), Yfe = (e) => rp(e, Bfe, XH), qfe = (e) => rp(e, "position", XH), Kfe = /* @__PURE__ */ new Set(["image", "url"]), Xfe = (e) => rp(e, Kfe, ede), Jfe = (e) => rp(e, "", Zfe), wm = () => !0, rp = (e, t, r) => {
const n = KH.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, Qfe = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
Wfe.test(e) && !Vfe.test(e)
), XH = () => !1, Zfe = (e) => Hfe.test(e), ede = (e) => Gfe.test(e), tde = () => {
const e = Or("colors"), t = Or("spacing"), r = Or("blur"), n = Or("brightness"), o = Or("borderColor"), a = Or("borderRadius"), i = Or("borderSpacing"), s = Or("borderWidth"), u = Or("contrast"), c = Or("grayscale"), d = Or("hueRotate"), l = Or("invert"), f = Or("gap"), p = Or("gradientColorStops"), y = Or("gradientColorStopPositions"), m = Or("inset"), h = Or("margin"), w = Or("opacity"), $ = Or("padding"), _ = Or("saturate"), S = Or("scale"), b = Or("sepia"), F = Or("skew"), z = Or("space"), q = Or("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", ut, t], M = () => [ut, t], te = () => ["", vi, tl], G = () => ["auto", ad, ut], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", ut], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [ad, ut];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [wm],
spacing: [vi, tl],
blur: ["none", "", rl, ut],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", rl, ut],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [Ufe, tl],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", ut]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [rl]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), ut]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", xm, ut]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", ut]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", xm, ut]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [wm]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", xm, ut]
}, ut]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [wm]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [xm, ut]
}, ut]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", ut]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", ut]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", ut, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [ut, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [ut, t, "none", "full", "min", "max", "fit", "prose", {
screen: [rl]
}, rl]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [ut, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [ut, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [ut, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [ut, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", rl, tl]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", y2]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [wm]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", ut]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", ad, y2]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", vi, ut]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", ut]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", ut]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", vi, tl]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", vi, ut]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", ut]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", ut]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), qfe]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", Yfe]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, Xfe]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [vi, ut]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [vi, tl]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [vi, tl]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", rl, Jfe]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [wm]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", rl, ut]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", ut]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", ut]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", ut]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [xm, ut]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", ut]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", ut]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", ut]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [vi, tl, y2]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, rde = /* @__PURE__ */ Dfe(tde), nde = ({
onClick: e,
className: t,
size: r = "md"
}) => /* @__PURE__ */ K(
"button",
{
onClick: e,
className: rde(
"flex items-center justify-center rounded-full bg-black/40 text-white/60 transition-all hover:bg-black/70 hover:text-white",
{
sm: "h-5 w-5 text-sm",
md: "h-7 w-7 text-md",
lg: "h-9 w-9 text-xl"
}[r],
t
),
children: /* @__PURE__ */ K(d3, { icon: tce })
}
);
var m3 = Ob(), it = (e) => _b(e, m3), h3 = Ob();
it.write = (e) => _b(e, h3);
var G0 = Ob();
it.onStart = (e) => _b(e, G0);
var g3 = Ob();
it.onFrame = (e) => _b(e, g3);
var b3 = Ob();
it.onFinish = (e) => _b(e, b3);
var id = [];
it.setTimeout = (e, t) => {
const r = it.now() + t, n = () => {
const a = id.findIndex((i) => i.cancel == n);
~a && id.splice(a, 1), Ul -= ~a ? 1 : 0;
}, o = { time: r, handler: e, cancel: n };
return id.splice(JH(r), 0, o), Ul += 1, QH(), o;
};
var JH = (e) => ~(~id.findIndex((t) => t.time > e) || ~id.length);
it.cancel = (e) => {
G0.delete(e), g3.delete(e), b3.delete(e), m3.delete(e), h3.delete(e);
};
it.sync = (e) => {
LO = !0, it.batchedUpdates(e), LO = !1;
};
it.throttle = (e) => {
let t;
function r() {
try {
e(...t);
} finally {
t = null;
}
}
function n(...o) {
t = o, it.onStart(r);
}
return n.handler = e, n.cancel = () => {
G0.delete(r), t = null;
}, n;
};
var y3 = typeof window < "u" ? window.requestAnimationFrame : (
// eslint-disable-next-line @typescript-eslint/no-empty-function
() => {
}
);
it.use = (e) => y3 = e;
it.now = typeof performance < "u" ? () => performance.now() : Date.now;
it.batchedUpdates = (e) => e();
it.catch = console.error;
it.frameLoop = "always";
it.advance = () => {
it.frameLoop !== "demand" ? console.warn(
"Cannot call the manual advancement of rafz whilst frameLoop is not set as demand"
) : eG();
};
var Gl = -1, Ul = 0, LO = !1;
function _b(e, t) {
LO ? (t.delete(e), e(0)) : (t.add(e), QH());
}
function QH() {
Gl < 0 && (Gl = 0, it.frameLoop !== "demand" && y3(ZH));
}
function ode() {
Gl = -1;
}
function ZH() {
~Gl && (y3(ZH), it.batchedUpdates(eG));
}
function eG() {
const e = Gl;
Gl = it.now();
const t = JH(Gl);
if (t && (tG(id.splice(0, t), (r) => r.handler()), Ul -= t), !Ul) {
ode();
return;
}
G0.flush(), m3.flush(e ? Math.min(64, Gl - e) : 16.667), g3.flush(), h3.flush(), b3.flush();
}
function Ob() {
let e = /* @__PURE__ */ new Set(), t = e;
return {
add(r) {
Ul += t == e && !e.has(r) ? 1 : 0, e.add(r);
},
delete(r) {
return Ul -= t == e && e.has(r) ? 1 : 0, e.delete(r);
},
flush(r) {
t.size && (e = /* @__PURE__ */ new Set(), Ul -= t.size, tG(t, (n) => n(r) && e.add(n)), Ul += e.size, t = e);
}
};
}
function tG(e, t) {
e.forEach((r) => {
try {
t(r);
} catch (n) {
it.catch(n);
}
});
}
var ade = Object.defineProperty, ide = (e, t) => {
for (var r in t)
ade(e, r, { get: t[r], enumerable: !0 });
}, aa = {};
ide(aa, {
assign: () => lde,
colors: () => Zl,
createStringInterpolator: () => x3,
skipAnimation: () => nG,
to: () => rG,
willAdvance: () => w3
});
function zO() {
}
var sde = (e, t, r) => Object.defineProperty(e, t, { value: r, writable: !0, configurable: !0 }), Ae = {
arr: Array.isArray,
obj: (e) => !!e && e.constructor.name === "Object",
fun: (e) => typeof e == "function",
str: (e) => typeof e == "string",
num: (e) => typeof e == "number",
und: (e) => e === void 0
};
function ji(e, t) {
if (Ae.arr(e)) {
if (!Ae.arr(t) || e.length !== t.length) return !1;
for (let r = 0; r < e.length; r++)
if (e[r] !== t[r]) return !1;
return !0;
}
return e === t;
}
var wt = (e, t) => e.forEach(t);
function ci(e, t, r) {
if (Ae.arr(e)) {
for (let n = 0; n < e.length; n++)
t.call(r, e[n], `${n}`);
return;
}
for (const n in e)
e.hasOwnProperty(n) && t.call(r, e[n], n);
}
var Rn = (e) => Ae.und(e) ? [] : Ae.arr(e) ? e : [e];
function Nh(e, t) {
if (e.size) {
const r = Array.from(e);
e.clear(), wt(r, t);
}
}
var ah = (e, ...t) => Nh(e, (r) => r(...t)), v3 = () => typeof window > "u" || !window.navigator || /ServerSideRendering|^Deno\//.test(window.navigator.userAgent), x3, rG, Zl = null, nG = !1, w3 = zO, lde = (e) => {
e.to && (rG = e.to), e.now && (it.now = e.now), e.colors !== void 0 && (Zl = e.colors), e.skipAnimation != null && (nG = e.skipAnimation), e.createStringInterpolator && (x3 = e.createStringInterpolator), e.requestAnimationFrame && it.use(e.requestAnimationFrame), e.batchedUpdates && (it.batchedUpdates = e.batchedUpdates), e.willAdvance && (w3 = e.willAdvance), e.frameLoop && (it.frameLoop = e.frameLoop);
}, Th = /* @__PURE__ */ new Set(), Co = [], v2 = [], $1 = 0, U0 = {
get idle() {
return !Th.size && !Co.length;
},
/** Advance the given animation on every frame until idle. */
start(e) {
$1 > e.priority ? (Th.add(e), it.onStart(cde)) : (oG(e), it(WO));
},
/** Advance all animations by the given time. */
advance: WO,
/** Call this when an animation's priority changes. */
sort(e) {
if ($1)
it.onFrame(() => U0.sort(e));
else {
const t = Co.indexOf(e);
~t && (Co.splice(t, 1), aG(e));
}
},
/**
* Clear all animations. For testing purposes.
*
* ☠️ Never call this from within the frameloop.
*/
clear() {
Co = [], Th.clear();
}
};
function cde() {
Th.forEach(oG), Th.clear(), it(WO);
}
function oG(e) {
Co.includes(e) || aG(e);
}
function aG(e) {
Co.splice(
ude(Co, (t) => t.priority > e.priority),
0,
e
);
}
function WO(e) {
const t = v2;
for (let r = 0; r < Co.length; r++) {
const n = Co[r];
$1 = n.priority, n.idle || (w3(n), n.advance(e), n.idle || t.push(n));
}
return $1 = 0, v2 = Co, v2.length = 0, Co = t, Co.length > 0;
}
function ude(e, t) {
const r = e.findIndex(t);
return r < 0 ? e.length : r;
}
var fde = {
transparent: 0,
aliceblue: 4042850303,
antiquewhite: 4209760255,
aqua: 16777215,
aquamarine: 2147472639,
azure: 4043309055,
beige: 4126530815,
bisque: 4293182719,
black: 255,
blanchedalmond: 4293643775,
blue: 65535,
blueviolet: 2318131967,
brown: 2771004159,
burlywood: 3736635391,
burntsienna: 3934150143,
cadetblue: 1604231423,
chartreuse: 2147418367,
chocolate: 3530104575,
coral: 4286533887,
cornflowerblue: 1687547391,
cornsilk: 4294499583,
crimson: 3692313855,
cyan: 16777215,
darkblue: 35839,
darkcyan: 9145343,
darkgoldenrod: 3095792639,
darkgray: 2846468607,
darkgreen: 6553855,
darkgrey: 2846468607,
darkkhaki: 3182914559,
darkmagenta: 2332068863,
darkolivegreen: 1433087999,
darkorange: 4287365375,
darkorchid: 2570243327,
darkred: 2332033279,
darksalmon: 3918953215,
darkseagreen: 2411499519,
darkslateblue: 1211993087,
darkslategray: 793726975,
darkslategrey: 793726975,
darkturquoise: 13554175,
darkviolet: 2483082239,
deeppink: 4279538687,
deepskyblue: 12582911,
dimgray: 1768516095,
dimgrey: 1768516095,
dodgerblue: 512819199,
firebrick: 2988581631,
floralwhite: 4294635775,
forestgreen: 579543807,
fuchsia: 4278255615,
gainsboro: 3705462015,
ghostwhite: 4177068031,
gold: 4292280575,
goldenrod: 3668254975,
gray: 2155905279,
green: 8388863,
greenyellow: 2919182335,
grey: 2155905279,
honeydew: 4043305215,
hotpink: 4285117695,
indianred: 3445382399,
indigo: 1258324735,
ivory: 4294963455,
khaki: 4041641215,
lavender: 3873897215,
lavenderblush: 4293981695,
lawngreen: 2096890111,
lemonchiffon: 4294626815,
lightblue: 2916673279,
lightcoral: 4034953471,
lightcyan: 3774873599,
lightgoldenrodyellow: 4210742015,
lightgray: 3553874943,
lightgreen: 2431553791,
lightgrey: 3553874943,
lightpink: 4290167295,
lightsalmon: 4288707327,
lightseagreen: 548580095,
lightskyblue: 2278488831,
lightslategray: 2005441023,
lightslategrey: 2005441023,
lightsteelblue: 2965692159,
lightyellow: 4294959359,
lime: 16711935,
limegreen: 852308735,
linen: 4210091775,
magenta: 4278255615,
maroon: 2147483903,
mediumaquamarine: 1724754687,
mediumblue: 52735,
mediumorchid: 3126187007,
mediumpurple: 2473647103,
mediumseagreen: 1018393087,
mediumslateblue: 2070474495,
mediumspringgreen: 16423679,
mediumturquoise: 1221709055,
mediumvioletred: 3340076543,
midnightblue: 421097727,
mintcream: 4127193855,
mistyrose: 4293190143,
moccasin: 4293178879,
navajowhite: 4292783615,
navy: 33023,
oldlace: 4260751103,
olive: 2155872511,
olivedrab: 1804477439,
orange: 4289003775,
orangered: 4282712319,
orchid: 3664828159,
palegoldenrod: 4008225535,
palegreen: 2566625535,
paleturquoise: 2951671551,
palevioletred: 3681588223,
papayawhip: 4293907967,
peachpuff: 4292524543,
peru: 3448061951,
pink: 4290825215,
plum: 3718307327,
powderblue: 2967529215,
purple: 2147516671,
rebeccapurple: 1714657791,
red: 4278190335,
rosybrown: 3163525119,
royalblue: 1097458175,
saddlebrown: 2336560127,
salmon: 4202722047,
sandybrown: 4104413439,
seagreen: 780883967,
seashell: 4294307583,
sienna: 2689740287,
silver: 3233857791,
skyblue: 2278484991,
slateblue: 1784335871,
slategray: 1887473919,
slategrey: 1887473919,
snow: 4294638335,
springgreen: 16744447,
steelblue: 1182971135,
tan: 3535047935,
teal: 8421631,
thistle: 3636451583,
tomato: 4284696575,
turquoise: 1088475391,
violet: 4001558271,
wheat: 4125012991,
white: 4294967295,
whitesmoke: 4126537215,
yellow: 4294902015,
yellowgreen: 2597139199
}, ea = "[-+]?\\d*\\.?\\d+", k1 = ea + "%";
function B0(...e) {
return "\\(\\s*(" + e.join(")\\s*,\\s*(") + ")\\s*\\)";
}
var dde = new RegExp("rgb" + B0(ea, ea, ea)), pde = new RegExp("rgba" + B0(ea, ea, ea, ea)), mde = new RegExp("hsl" + B0(ea, k1, k1)), hde = new RegExp(
"hsla" + B0(ea, k1, k1, ea)
), gde = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, bde = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, yde = /^#([0-9a-fA-F]{6})$/, vde = /^#([0-9a-fA-F]{8})$/;
function xde(e) {
let t;
return typeof e == "number" ? e >>> 0 === e && e >= 0 && e <= 4294967295 ? e : null : (t = yde.exec(e)) ? parseInt(t[1] + "ff", 16) >>> 0 : Zl && Zl[e] !== void 0 ? Zl[e] : (t = dde.exec(e)) ? (mf(t[1]) << 24 | // r
mf(t[2]) << 16 | // g
mf(t[3]) << 8 | // b
255) >>> // a
0 : (t = pde.exec(e)) ? (mf(t[1]) << 24 | // r
mf(t[2]) << 16 | // g
mf(t[3]) << 8 | // b
uI(t[4])) >>> // a
0 : (t = gde.exec(e)) ? parseInt(
t[1] + t[1] + // r
t[2] + t[2] + // g
t[3] + t[3] + // b
"ff",
// a
16
) >>> 0 : (t = vde.exec(e)) ? parseInt(t[1], 16) >>> 0 : (t = bde.exec(e)) ? parseInt(
t[1] + t[1] + // r
t[2] + t[2] + // g
t[3] + t[3] + // b
t[4] + t[4],
// a
16
) >>> 0 : (t = mde.exec(e)) ? (lI(
cI(t[1]),
// h
xy(t[2]),
// s
xy(t[3])
// l
) | 255) >>> // a
0 : (t = hde.exec(e)) ? (lI(
cI(t[1]),
// h
xy(t[2]),
// s
xy(t[3])
// l
) | uI(t[4])) >>> // a
0 : null;
}
function x2(e, t, r) {
return r < 0 && (r += 1), r > 1 && (r -= 1), r < 1 / 6 ? e + (t - e) * 6 * r : r < 1 / 2 ? t : r < 2 / 3 ? e + (t - e) * (2 / 3 - r) * 6 : e;
}
function lI(e, t, r) {
const n = r < 0.5 ? r * (1 + t) : r + t - r * t, o = 2 * r - n, a = x2(o, n, e + 1 / 3), i = x2(o, n, e), s = x2(o, n, e - 1 / 3);
return Math.round(a * 255) << 24 | Math.round(i * 255) << 16 | Math.round(s * 255) << 8;
}
function mf(e) {
const t = parseInt(e, 10);
return t < 0 ? 0 : t > 255 ? 255 : t;
}
function cI(e) {
return (parseFloat(e) % 360 + 360) % 360 / 360;
}
function uI(e) {
const t = parseFloat(e);
return t < 0 ? 0 : t > 1 ? 255 : Math.round(t * 255);
}
function xy(e) {
const t = parseFloat(e);
return t < 0 ? 0 : t > 100 ? 1 : t / 100;
}
function fI(e) {
let t = xde(e);
if (t === null) return e;
t = t || 0;
const r = (t & 4278190080) >>> 24, n = (t & 16711680) >>> 16, o = (t & 65280) >>> 8, a = (t & 255) / 255;
return `rgba(${r}, ${n}, ${o}, ${a})`;
}
var _g = (e, t, r) => {
if (Ae.fun(e))
return e;
if (Ae.arr(e))
return _g({
range: e,
output: t,
extrapolate: r
});
if (Ae.str(e.output[0]))
return x3(e);
const n = e, o = n.output, a = n.range || [0, 1], i = n.extrapolateLeft || n.extrapolate || "extend", s = n.extrapolateRight || n.extrapolate || "extend", u = n.easing || ((c) => c);
return (c) => {
const d = $de(c, a);
return wde(
c,
a[d],
a[d + 1],
o[d],
o[d + 1],
u,
i,
s,
n.map
);
};
};
function wde(e, t, r, n, o, a, i, s, u) {
let c = u ? u(e) : e;
if (c < t) {
if (i === "identity") return c;
i === "clamp" && (c = t);
}
if (c > r) {
if (s === "identity") return c;
s === "clamp" && (c = r);
}
return n === o ? n : t === r ? e <= t ? n : o : (t === -1 / 0 ? c = -c : r === 1 / 0 ? c = c - t : c = (c - t) / (r - t), c = a(c), n === -1 / 0 ? c = -c : o === 1 / 0 ? c = c + n : c = c * (o - n) + n, c);
}
function $de(e, t) {
for (var r = 1; r < t.length - 1 && !(t[r] >= e); ++r)
;
return r - 1;
}
var kde = {
linear: (e) => e
}, Og = Symbol.for("FluidValue.get"), Dd = Symbol.for("FluidValue.observers"), Oo = (e) => !!(e && e[Og]), Xn = (e) => e && e[Og] ? e[Og]() : e, dI = (e) => e[Dd] || null;
function _de(e, t) {
e.eventObserved ? e.eventObserved(t) : e(t);
}
function Sg(e, t) {
const r = e[Dd];
r && r.forEach((n) => {
_de(n, t);
});
}
var iG = class {
constructor(t) {
if (!t && !(t = this.get))
throw Error("Unknown getter");
Ode(this, t);
}
}, Ode = (e, t) => sG(e, Og, t);
function np(e, t) {
if (e[Og]) {
let r = e[Dd];
r || sG(e, Dd, r = /* @__PURE__ */ new Set()), r.has(t) || (r.add(t), e.observerAdded && e.observerAdded(r.size, t));
}
return t;
}
function Eg(e, t) {
const r = e[Dd];
if (r && r.has(t)) {
const n = r.size - 1;
n ? r.delete(t) : e[Dd] = null, e.observerRemoved && e.observerRemoved(n, t);
}
}
var sG = (e, t, r) => Object.defineProperty(e, t, {
value: r,
writable: !0,
configurable: !0
}), Nv = /[+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, Sde = /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\((-?\d+%?[,\s]+){2,3}\s*[\d\.]+%?\))/gi, pI = new RegExp(`(${Nv.source})(%|[a-z]+)`, "i"), Ede = /rgba\(([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+)\)/gi, Y0 = /var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/, lG = (e) => {
const [t, r] = Ade(e);
if (!t || v3())
return e;
const n = window.getComputedStyle(document.documentElement).getPropertyValue(t);
return n ? n.trim() : r && r.startsWith("--") ? window.getComputedStyle(document.documentElement).getPropertyValue(r) || e : r && Y0.test(r) ? lG(r) : r || e;
}, Ade = (e) => {
const t = Y0.exec(e);
if (!t) return [,];
const [, r, n] = t;
return [r, n];
}, w2, Pde = (e, t, r, n, o) => `rgba(${Math.round(t)}, ${Math.round(r)}, ${Math.round(n)}, ${o})`, cG = (e) => {
w2 || (w2 = Zl ? (
// match color names, ignore partial matches
new RegExp(`(${Object.keys(Zl).join("|")})(?!\\w)`, "g")
) : (
// never match
/^\b$/
));
const t = e.output.map((o) => Xn(o).replace(Y0, lG).replace(Sde, fI).replace(w2, fI)), r = t.map((o) => o.match(Nv).map(Number)), n = r[0].map(
(o, a) => r.map((i) => {
if (!(a in i))
throw Error('The arity of each "output" value must be equal');
return i[a];
})
).map(
(o) => _g({ ...e, output: o })
);
return (o) => {
var a;
const i = !pI.test(t[0]) && ((a = t.find((u) => pI.test(u))) == null ? void 0 : a.replace(Nv, ""));
let s = 0;
return t[0].replace(
Nv,
() => `${n[s++](o)}${i || ""}`
).replace(Ede, Pde);
};
}, $3 = "react-spring: ", uG = (e) => {
const t = e;
let r = !1;
if (typeof t != "function")
throw new TypeError(`${$3}once requires a function parameter`);
return (...n) => {
r || (t(...n), r = !0);
};
}, Cde = uG(console.warn);
function Nde() {
Cde(
`${$3}The "interpolate" function is deprecated in v9 (use "to" instead)`
);
}
var Tde = uG(console.warn);
function Ide() {
Tde(
`${$3}Directly calling start instead of using the api object is deprecated in v9 (use ".start" instead), this will be removed in later 0.X.0 versions`
);
}
function q0(e) {
return Ae.str(e) && (e[0] == "#" || /\d/.test(e) || // Do not identify a CSS variable as an AnimatedString if its SSR
!v3() && Y0.test(e) || e in (Zl || {}));
}
var Cf = v3() ? ue : pi, jde = () => {
const e = ne(!1);
return Cf(() => (e.current = !0, () => {
e.current = !1;
}), []), e;
};
function fG() {
const e = de()[1], t = jde();
return () => {
t.current && e(Math.random());
};
}
var dG = (e) => ue(e, Rde), Rde = [];
function Mde(e) {
const t = ne(void 0);
return ue(() => {
t.current = e;
}), t.current;
}
var Ag = Symbol.for("Animated:node"), Dde = (e) => !!e && e[Ag] === e, ga = (e) => e && e[Ag], k3 = (e, t) => sde(e, Ag, t), K0 = (e) => e && e[Ag] && e[Ag].getPayload(), pG = class {
constructor() {
k3(this, this);
}
/** Get every `AnimatedValue` used by this node. */
getPayload() {
return this.payload || [];
}
}, X0 = class mG extends pG {
constructor(t) {
super(), this._value = t, this.done = !0, this.durationProgress = 0, Ae.num(this._value) && (this.lastPosition = this._value);
}
/** @internal */
static create(t) {
return new mG(t);
}
getPayload() {
return [this];
}
getValue() {
return this._value;
}
setValue(t, r) {
return Ae.num(t) && (this.lastPosition = t, r && (t = Math.round(t / r) * r, this.done && (this.lastPosition = t))), this._value === t ? !1 : (this._value = t, !0);
}
reset() {
const { done: t } = this;
this.done = !1, Ae.num(this._value) && (this.elapsedTime = 0, this.durationProgress = 0, this.lastPosition = this._value, t && (this.lastVelocity = null), this.v0 = null);
}
}, _1 = class hG extends X0 {
constructor(t) {
super(0), this._string = null, this._toString = _g({
output: [t, t]
});
}
/** @internal */
static create(t) {
return new hG(t);
}
getValue() {
return this._string ?? (this._string = this._toString(this._value));
}
setValue(t) {
if (Ae.str(t)) {
if (t == this._string)
return !1;
this._string = t, this._value = 1;
} else if (super.setValue(t))
this._string = null;
else
return !1;
return !0;
}
reset(t) {
t && (this._toString = _g({
output: [this.getValue(), t]
})), this._value = 0, super.reset();
}
}, O1 = { dependencies: null }, J0 = class extends pG {
constructor(t) {
super(), this.source = t, this.setValue(t);
}
getValue(t) {
const r = {};
return ci(this.source, (n, o) => {
Dde(n) ? r[o] = n.getValue(t) : Oo(n) ? r[o] = Xn(n) : t || (r[o] = n);
}), r;
}
/** Replace the raw object data */
setValue(t) {
this.source = t, this.payload = this._makePayload(t);
}
reset() {
this.payload && wt(this.payload, (t) => t.reset());
}
/** Create a payload set. */
_makePayload(t) {
if (t) {
const r = /* @__PURE__ */ new Set();
return ci(t, this._addToPayload, r), Array.from(r);
}
}
/** Add to a payload set. */
_addToPayload(t) {
O1.dependencies && Oo(t) && O1.dependencies.add(t);
const r = K0(t);
r && wt(r, (n) => this.add(n));
}
}, Fde = class gG extends J0 {
constructor(t) {
super(t);
}
/** @internal */
static create(t) {
return new gG(t);
}
getValue() {
return this.source.map((t) => t.getValue());
}
setValue(t) {
const r = this.getPayload();
return t.length == r.length ? r.map((n, o) => n.setValue(t[o])).some(Boolean) : (super.setValue(t.map(Lde)), !0);
}
};
function Lde(e) {
return (q0(e) ? _1 : X0).create(e);
}
function VO(e) {
const t = ga(e);
return t ? t.constructor : Ae.arr(e) ? Fde : q0(e) ? _1 : X0;
}
var mI = (e, t) => {
const r = (
// Function components must use "forwardRef" to avoid being
// re-rendered on every animation frame.
!Ae.fun(e) || e.prototype && e.prototype.isReactComponent
);
return sf((n, o) => {
const a = ne(null), i = r && // eslint-disable-next-line react-hooks/rules-of-hooks
Ne(
(y) => {
a.current = Vde(o, y);
},
[o]
), [s, u] = Wde(n, t), c = fG(), d = () => {
const y = a.current;
r && !y || (y ? t.applyAnimatedValues(y, s.getValue(!0)) : !1) === !1 && c();
}, l = new zde(d, u), f = ne(void 0);
Cf(() => (f.current = l, wt(u, (y) => np(y, l)), () => {
f.current && (wt(
f.current.deps,
(y) => Eg(y, f.current)
), it.cancel(f.current.update));
})), ue(d, []), dG(() => () => {
const y = f.current;
wt(y.deps, (m) => Eg(m, y));
});
const p = t.getComponentProps(s.getValue());
return /* @__PURE__ */ V.createElement(e, { ...p, ref: i });
});
}, zde = class {
constructor(t, r) {
this.update = t, this.deps = r;
}
eventObserved(t) {
t.type == "change" && it.write(this.update);
}
};
function Wde(e, t) {
const r = /* @__PURE__ */ new Set();
return O1.dependencies = r, e.style && (e = {
...e,
style: t.createAnimatedStyle(e.style)
}), e = new J0(e), O1.dependencies = null, [e, r];
}
function Vde(e, t) {
return e && (Ae.fun(e) ? e(t) : e.current = t), t;
}
var hI = Symbol.for("AnimatedComponent"), Hde = (e, {
applyAnimatedValues: t = () => !1,
createAnimatedStyle: r = (o) => new J0(o),
getComponentProps: n = (o) => o
} = {}) => {
const o = {
applyAnimatedValues: t,
createAnimatedStyle: r,
getComponentProps: n
}, a = (i) => {
const s = gI(i) || "Anonymous";
return Ae.str(i) ? i = a[i] || (a[i] = mI(i, o)) : i = i[hI] || (i[hI] = mI(i, o)), i.displayName = `Animated(${s})`, i;
};
return ci(e, (i, s) => {
Ae.arr(e) && (s = gI(i)), a[s] = a(i);
}), {
animated: a
};
}, gI = (e) => Ae.str(e) ? e : e && Ae.str(e.displayName) ? e.displayName : Ae.fun(e) && e.name || null;
function Jn(e, ...t) {
return Ae.fun(e) ? e(...t) : e;
}
var Ih = (e, t) => e === !0 || !!(t && e && (Ae.fun(e) ? e(t) : Rn(e).includes(t))), bG = (e, t) => Ae.obj(e) ? t && e[t] : e, yG = (e, t) => e.default === !0 ? e[t] : e.default ? e.default[t] : void 0, Gde = (e) => e, _3 = (e, t = Gde) => {
let r = Ude;
e.default && e.default !== !0 && (e = e.default, r = Object.keys(e));
const n = {};
for (const o of r) {
const a = t(e[o], o);
Ae.und(a) || (n[o] = a);
}
return n;
}, Ude = [
"config",
"onProps",
"onStart",
"onChange",
"onPause",
"onResume",
"onRest"
], Bde = {
config: 1,
from: 1,
to: 1,
ref: 1,
loop: 1,
reset: 1,
pause: 1,
cancel: 1,
reverse: 1,
immediate: 1,
default: 1,
delay: 1,
onProps: 1,
onStart: 1,
onChange: 1,
onPause: 1,
onResume: 1,
onRest: 1,
onResolve: 1,
// Transition props
items: 1,
trail: 1,
sort: 1,
expires: 1,
initial: 1,
enter: 1,
update: 1,
leave: 1,
children: 1,
onDestroyed: 1,
// Internal props
keys: 1,
callId: 1,
parentId: 1
};
function Yde(e) {
const t = {};
let r = 0;
if (ci(e, (n, o) => {
Bde[o] || (t[o] = n, r++);
}), r)
return t;
}
function O3(e) {
const t = Yde(e);
if (t) {
const r = { to: t };
return ci(e, (n, o) => o in t || (r[o] = n)), r;
}
return { ...e };
}
function Pg(e) {
return e = Xn(e), Ae.arr(e) ? e.map(Pg) : q0(e) ? aa.createStringInterpolator({
range: [0, 1],
output: [e, e]
})(1) : e;
}
function qde(e) {
for (const t in e) return !0;
return !1;
}
function HO(e) {
return Ae.fun(e) || Ae.arr(e) && Ae.obj(e[0]);
}
function bI(e, t) {
var r;
(r = e.ref) == null || r.delete(e), t == null || t.delete(e);
}
function Kde(e, t) {
var r;
t && e.ref !== t && ((r = e.ref) == null || r.delete(e), t.add(e), e.ref = t);
}
var Xde = {
default: { tension: 170, friction: 26 }
}, GO = {
...Xde.default,
mass: 1,
damping: 1,
easing: kde.linear,
clamp: !1
}, Jde = class {
constructor() {
this.velocity = 0, Object.assign(this, GO);
}
};
function Qde(e, t, r) {
r && (r = { ...r }, yI(r, t), t = { ...r, ...t }), yI(e, t), Object.assign(e, t);
for (const i in GO)
e[i] == null && (e[i] = GO[i]);
let { frequency: n, damping: o } = e;
const { mass: a } = e;
return Ae.und(n) || (n < 0.01 && (n = 0.01), o < 0 && (o = 0), e.tension = Math.pow(2 * Math.PI / n, 2) * a, e.friction = 4 * Math.PI * o * a / n), e;
}
function yI(e, t) {
if (!Ae.und(t.decay))
e.duration = void 0;
else {
const r = !Ae.und(t.tension) || !Ae.und(t.friction);
(r || !Ae.und(t.frequency) || !Ae.und(t.damping) || !Ae.und(t.mass)) && (e.duration = void 0, e.decay = void 0), r && (e.frequency = void 0);
}
}
var vI = [], Zde = class {
constructor() {
this.changed = !1, this.values = vI, this.toValues = null, this.fromValues = vI, this.config = new Jde(), this.immediate = !1;
}
};
function vG(e, { key: t, props: r, defaultProps: n, state: o, actions: a }) {
return new Promise((i, s) => {
let u, c, d = Ih(r.cancel ?? (n == null ? void 0 : n.cancel), t);
if (d)
p();
else {
Ae.und(r.pause) || (o.paused = Ih(r.pause, t));
let y = n == null ? void 0 : n.pause;
y !== !0 && (y = o.paused || Ih(y, t)), u = Jn(r.delay || 0, t), y ? (o.resumeQueue.add(f), a.pause()) : (a.resume(), f());
}
function l() {
o.resumeQueue.add(f), o.timeouts.delete(c), c.cancel(), u = c.time - it.now();
}
function f() {
u > 0 && !aa.skipAnimation ? (o.delayed = !0, c = it.setTimeout(p, u), o.pauseQueue.add(l), o.timeouts.add(c)) : p();
}
function p() {
o.delayed && (o.delayed = !1), o.pauseQueue.delete(l), o.timeouts.delete(c), e <= (o.cancelId || 0) && (d = !0);
try {
a.start({ ...r, callId: e, cancel: d }, i);
} catch (y) {
s(y);
}
}
});
}
var S3 = (e, t) => t.length == 1 ? t[0] : t.some((r) => r.cancelled) ? sd(e.get()) : t.every((r) => r.noop) ? xG(e.get()) : Qo(
e.get(),
t.every((r) => r.finished)
), xG = (e) => ({
value: e,
noop: !0,
finished: !0,
cancelled: !1
}), Qo = (e, t, r = !1) => ({
value: e,
finished: t,
cancelled: r
}), sd = (e) => ({
value: e,
cancelled: !0,
finished: !1
});
function wG(e, t, r, n) {
const { callId: o, parentId: a, onRest: i } = t, { asyncTo: s, promise: u } = r;
return !a && e === s && !t.reset ? u : r.promise = (async () => {
r.asyncId = o, r.asyncTo = e;
const c = _3(
t,
(h, w) => (
// The `onRest` prop is only called when the `runAsync` promise is resolved.
w === "onRest" ? void 0 : h
)
);
let d, l;
const f = new Promise(
(h, w) => (d = h, l = w)
), p = (h) => {
const w = (
// The `cancel` prop or `stop` method was used.
o <= (r.cancelId || 0) && sd(n) || // The async `to` prop was replaced.
o !== r.asyncId && Qo(n, !1)
);
if (w)
throw h.result = w, l(h), h;
}, y = (h, w) => {
const $ = new xI(), _ = new wI();
return (async () => {
if (aa.skipAnimation)
throw Cg(r), _.result = Qo(n, !1), l(_), _;
p($);
const S = Ae.obj(h) ? { ...h } : { ...w, to: h };
S.parentId = o, ci(c, (F, z) => {
Ae.und(S[z]) && (S[z] = F);
});
const b = await n.start(S);
return p($), r.paused && await new Promise((F) => {
r.resumeQueue.add(F);
}), b;
})();
};
let m;
if (aa.skipAnimation)
return Cg(r), Qo(n, !1);
try {
let h;
Ae.arr(e) ? h = (async (w) => {
for (const $ of w)
await y($);
})(e) : h = Promise.resolve(e(y, n.stop.bind(n))), await Promise.all([h.then(d), f]), m = Qo(n.get(), !0, !1);
} catch (h) {
if (h instanceof xI)
m = h.result;
else if (h instanceof wI)
m = h.result;
else
throw h;
} finally {
o == r.asyncId && (r.asyncId = a, r.asyncTo = a ? s : void 0, r.promise = a ? u : void 0);
}
return Ae.fun(i) && it.batchedUpdates(() => {
i(m, n, n.item);
}), m;
})();
}
function Cg(e, t) {
Nh(e.timeouts, (r) => r.cancel()), e.pauseQueue.clear(), e.resumeQueue.clear(), e.asyncId = e.asyncTo = e.promise = void 0, t && (e.cancelId = t);
}
var xI = class extends Error {
constructor() {
super(
"An async animation has been interrupted. You see this error because you forgot to use `await` or `.catch(...)` on its returned promise."
);
}
}, wI = class extends Error {
constructor() {
super("SkipAnimationSignal");
}
}, UO = (e) => e instanceof E3, epe = 1, E3 = class extends iG {
constructor() {
super(...arguments), this.id = epe++, this._priority = 0;
}
get priority() {
return this._priority;
}
set priority(t) {
this._priority != t && (this._priority = t, this._onPriorityChange(t));
}
/** Get the current value */
get() {
const t = ga(this);
return t && t.getValue();
}
/** Create a spring that maps our value to another value */
to(...t) {
return aa.to(this, t);
}
/** @deprecated Use the `to` method instead. */
interpolate(...t) {
return Nde(), aa.to(this, t);
}
toJSON() {
return this.get();
}
observerAdded(t) {
t == 1 && this._attach();
}
observerRemoved(t) {
t == 0 && this._detach();
}
/** Called when the first child is added. */
_attach() {
}
/** Called when the last child is removed. */
_detach() {
}
/** Tell our children about our new value */
_onChange(t, r = !1) {
Sg(this, {
type: "change",
parent: this,
value: t,
idle: r
});
}
/** Tell our children about our new priority */
_onPriorityChange(t) {
this.idle || U0.sort(this), Sg(this, {
type: "priority",
parent: this,
priority: t
});
}
}, Pu = Symbol.for("SpringPhase"), $G = 1, kG = 2, _G = 4, $2 = (e) => (e[Pu] & $G) > 0, nl = (e) => (e[Pu] & kG) > 0, $m = (e) => (e[Pu] & _G) > 0, $I = (e, t) => t ? e[Pu] |= kG | $G : e[Pu] &= -3, kI = (e, t) => t ? e[Pu] |= _G : e[Pu] &= -5, tpe = class extends E3 {
constructor(t, r) {
if (super(), this.animation = new Zde(), this.defaultProps = {}, this._state = {
paused: !1,
delayed: !1,
pauseQueue: /* @__PURE__ */ new Set(),
resumeQueue: /* @__PURE__ */ new Set(),
timeouts: /* @__PURE__ */ new Set()
}, this._pendingCalls = /* @__PURE__ */ new Set(), this._lastCallId = 0, this._lastToId = 0, this._memoizedDuration = 0, !Ae.und(t) || !Ae.und(r)) {
const n = Ae.obj(t) ? { ...t } : { ...r, from: t };
Ae.und(n.default) && (n.default = !0), this.start(n);
}
}
/** Equals true when not advancing on each frame. */
get idle() {
return !(nl(this) || this._state.asyncTo) || $m(this);
}
get goal() {
return Xn(this.animation.to);
}
get velocity() {
const t = ga(this);
return t instanceof X0 ? t.lastVelocity || 0 : t.getPayload().map((r) => r.lastVelocity || 0);
}
/**
* When true, this value has been animated at least once.
*/
get hasAnimated() {
return $2(this);
}
/**
* When true, this value has an unfinished animation,
* which is either active or paused.
*/
get isAnimating() {
return nl(this);
}
/**
* When true, all current and future animations are paused.
*/
get isPaused() {
return $m(this);
}
/**
*
*
*/
get isDelayed() {
return this._state.delayed;
}
/** Advance the current animation by a number of milliseconds */
advance(t) {
let r = !0, n = !1;
const o = this.animation;
let { toValues: a } = o;
const { config: i } = o, s = K0(o.to);
!s && Oo(o.to) && (a = Rn(Xn(o.to))), o.values.forEach((d, l) => {
if (d.done) return;
const f = (
// Animated strings always go from 0 to 1.
d.constructor == _1 ? 1 : s ? s[l].lastPosition : a[l]
);
let p = o.immediate, y = f;
if (!p) {
if (y = d.lastPosition, i.tension <= 0) {
d.done = !0;
return;
}
let m = d.elapsedTime += t;
const h = o.fromValues[l], w = d.v0 != null ? d.v0 : d.v0 = Ae.arr(i.velocity) ? i.velocity[l] : i.velocity;
let $;
const _ = i.precision || (h == f ? 5e-3 : Math.min(1, Math.abs(f - h) * 1e-3));
if (Ae.und(i.duration))
if (i.decay) {
const S = i.decay === !0 ? 0.998 : i.decay, b = Math.exp(-(1 - S) * m);
y = h + w / (1 - S) * (1 - b), p = Math.abs(d.lastPosition - y) <= _, $ = w * b;
} else {
$ = d.lastVelocity == null ? w : d.lastVelocity;
const S = i.restVelocity || _ / 10, b = i.clamp ? 0 : i.bounce, F = !Ae.und(b), z = h == f ? d.v0 > 0 : h < f;
let q, Y = !1;
const B = 1, Z = Math.ceil(t / B);
for (let M = 0; M < Z && (q = Math.abs($) > S, !(!q && (p = Math.abs(f - y) <= _, p))); ++M) {
F && (Y = y == f || y > f == z, Y && ($ = -$ * b, y = f));
const te = -i.tension * 1e-6 * (y - f), G = -i.friction * 1e-3 * $, H = (te + G) / i.mass;
$ = $ + H * B, y = y + $ * B;
}
}
else {
let S = 1;
i.duration > 0 && (this._memoizedDuration !== i.duration && (this._memoizedDuration = i.duration, d.durationProgress > 0 && (d.elapsedTime = i.duration * d.durationProgress, m = d.elapsedTime += t)), S = (i.progress || 0) + m / this._memoizedDuration, S = S > 1 ? 1 : S < 0 ? 0 : S, d.durationProgress = S), y = h + i.easing(S) * (f - h), $ = (y - d.lastPosition) / t, p = S == 1;
}
d.lastVelocity = $, Number.isNaN(y) && (console.warn("Got NaN while animating:", this), p = !0);
}
s && !s[l].done && (p = !1), p ? d.done = !0 : r = !1, d.setValue(y, i.round) && (n = !0);
});
const u = ga(this), c = u.getValue();
if (r) {
const d = Xn(o.to);
(c !== d || n) && !i.decay ? (u.setValue(d), this._onChange(d)) : n && i.decay && this._onChange(c), this._stop();
} else n && this._onChange(c);
}
/** Set the current value, while stopping the current animation */
set(t) {
return it.batchedUpdates(() => {
this._stop(), this._focus(t), this._set(t);
}), this;
}
/**
* Freeze the active animation in time, as well as any updates merged
* before `resume` is called.
*/
pause() {
this._update({ pause: !0 });
}
/** Resume the animation if paused. */
resume() {
this._update({ pause: !1 });
}
/** Skip to the end of the current animation. */
finish() {
if (nl(this)) {
const { to: t, config: r } = this.animation;
it.batchedUpdates(() => {
this._onStart(), r.decay || this._set(t, !1), this._stop();
});
}
return this;
}
/** Push props into the pending queue. */
update(t) {
return (this.queue || (this.queue = [])).push(t), this;
}
start(t, r) {
let n;
return Ae.und(t) ? (n = this.queue || [], this.queue = []) : n = [Ae.obj(t) ? t : { ...r, to: t }], Promise.all(
n.map((o) => this._update(o))
).then((o) => S3(this, o));
}
/**
* Stop the current animation, and cancel any delayed updates.
*
* Pass `true` to call `onRest` with `cancelled: true`.
*/
stop(t) {
const { to: r } = this.animation;
return this._focus(this.get()), Cg(this._state, t && this._lastCallId), it.batchedUpdates(() => this._stop(r, t)), this;
}
/** Restart the animation. */
reset() {
this._update({ reset: !0 });
}
/** @internal */
eventObserved(t) {
t.type == "change" ? this._start() : t.type == "priority" && (this.priority = t.priority + 1);
}
/**
* Parse the `to` and `from` range from the given `props` object.
*
* This also ensures the initial value is available to animated components
* during the render phase.
*/
_prepareNode(t) {
const r = this.key || "";
let { to: n, from: o } = t;
n = Ae.obj(n) ? n[r] : n, (n == null || HO(n)) && (n = void 0), o = Ae.obj(o) ? o[r] : o, o == null && (o = void 0);
const a = { to: n, from: o };
return $2(this) || (t.reverse && ([n, o] = [o, n]), o = Xn(o), Ae.und(o) ? ga(this) || this._set(n) : this._set(o)), a;
}
/** Every update is processed by this method before merging. */
_update({ ...t }, r) {
const { key: n, defaultProps: o } = this;
t.default && Object.assign(
o,
_3(
t,
(s, u) => /^on/.test(u) ? bG(s, n) : s
)
), OI(this, t, "onProps"), _m(this, "onProps", t, this);
const a = this._prepareNode(t);
if (Object.isFrozen(this))
throw Error(
"Cannot animate a `SpringValue` object that is frozen. Did you forget to pass your component to `animated(...)` before animating its props?"
);
const i = this._state;
return vG(++this._lastCallId, {
key: n,
props: t,
defaultProps: o,
state: i,
actions: {
pause: () => {
$m(this) || (kI(this, !0), ah(i.pauseQueue), _m(
this,
"onPause",
Qo(this, km(this, this.animation.to)),
this
));
},
resume: () => {
$m(this) && (kI(this, !1), nl(this) && this._resume(), ah(i.resumeQueue), _m(
this,
"onResume",
Qo(this, km(this, this.animation.to)),
this
));
},
start: this._merge.bind(this, a)
}
}).then((s) => {
if (t.loop && s.finished && !(r && s.noop)) {
const u = OG(t);
if (u)
return this._update(u, !0);
}
return s;
});
}
/** Merge props into the current animation */
_merge(t, r, n) {
if (r.cancel)
return this.stop(!0), n(sd(this));
const o = !Ae.und(t.to), a = !Ae.und(t.from);
if (o || a)
if (r.callId > this._lastToId)
this._lastToId = r.callId;
else
return n(sd(this));
const { key: i, defaultProps: s, animation: u } = this, { to: c, from: d } = u;
let { to: l = c, from: f = d } = t;
a && !o && (!r.default || Ae.und(l)) && (l = f), r.reverse && ([l, f] = [f, l]);
const p = !ji(f, d);
p && (u.from = f), f = Xn(f);
const y = !ji(l, c);
y && this._focus(l);
const m = HO(r.to), { config: h } = u, { decay: w, velocity: $ } = h;
(o || a) && (h.velocity = 0), r.config && !m && Qde(
h,
Jn(r.config, i),
// Avoid calling the same "config" prop twice.
r.config !== s.config ? Jn(s.config, i) : void 0
);
let _ = ga(this);
if (!_ || Ae.und(l))
return n(Qo(this, !0));
const S = (
// When `reset` is undefined, the `from` prop implies `reset: true`,
// except for declarative updates. When `reset` is defined, there
// must exist a value to animate from.
Ae.und(r.reset) ? a && !r.default : !Ae.und(f) && Ih(r.reset, i)
), b = S ? f : this.get(), F = Pg(l), z = Ae.num(F) || Ae.arr(F) || q0(F), q = !m && (!z || Ih(s.immediate || r.immediate, i));
if (y) {
const M = VO(l);
if (M !== _.constructor)
if (q)
_ = this._set(F);
else
throw Error(
`Cannot animate between ${_.constructor.name} and ${M.name}, as the "to" prop suggests`
);
}
const Y = _.constructor;
let B = Oo(l), Z = !1;
if (!B) {
const M = S || !$2(this) && p;
(y || M) && (Z = ji(Pg(b), F), B = !Z), (!ji(u.immediate, q) && !q || !ji(h.decay, w) || !ji(h.velocity, $)) && (B = !0);
}
if (Z && nl(this) && (u.changed && !S ? B = !0 : B || this._stop(c)), !m && ((B || Oo(c)) && (u.values = _.getPayload(), u.toValues = Oo(l) ? null : Y == _1 ? [1] : Rn(F)), u.immediate != q && (u.immediate = q, !q && !S && this._set(c)), B)) {
const { onRest: M } = u;
wt(rpe, (G) => OI(this, r, G));
const te = Qo(this, km(this, c));
ah(this._pendingCalls, te), this._pendingCalls.add(n), u.changed && it.batchedUpdates(() => {
var G;
u.changed = !S, M == null || M(te, this), S ? Jn(s.onRest, te) : (G = u.onStart) == null || G.call(u, te, this);
});
}
S && this._set(b), m ? n(wG(r.to, r, this._state, this)) : B ? this._start() : nl(this) && !y ? this._pendingCalls.add(n) : n(xG(b));
}
/** Update the `animation.to` value, which might be a `FluidValue` */
_focus(t) {
const r = this.animation;
t !== r.to && (dI(this) && this._detach(), r.to = t, dI(this) && this._attach());
}
_attach() {
let t = 0;
const { to: r } = this.animation;
Oo(r) && (np(r, this), UO(r) && (t = r.priority + 1)), this.priority = t;
}
_detach() {
const { to: t } = this.animation;
Oo(t) && Eg(t, this);
}
/**
* Update the current value from outside the frameloop,
* and return the `Animated` node.
*/
_set(t, r = !0) {
const n = Xn(t);
if (!Ae.und(n)) {
const o = ga(this);
if (!o || !ji(n, o.getValue())) {
const a = VO(n);
!o || o.constructor != a ? k3(this, a.create(n)) : o.setValue(n), o && it.batchedUpdates(() => {
this._onChange(n, r);
});
}
}
return ga(this);
}
_onStart() {
const t = this.animation;
t.changed || (t.changed = !0, _m(
this,
"onStart",
Qo(this, km(this, t.to)),
this
));
}
_onChange(t, r) {
r || (this._onStart(), Jn(this.animation.onChange, t, this)), Jn(this.defaultProps.onChange, t, this), super._onChange(t, r);
}
// This method resets the animation state (even if already animating) to
// ensure the latest from/to range is used, and it also ensures this spring
// is added to the frameloop.
_start() {
const t = this.animation;
ga(this).reset(Xn(t.to)), t.immediate || (t.fromValues = t.values.map((r) => r.lastPosition)), nl(this) || ($I(this, !0), $m(this) || this._resume());
}
_resume() {
aa.skipAnimation ? this.finish() : U0.start(this);
}
/**
* Exit the frameloop and notify `onRest` listeners.
*
* Always wrap `_stop` calls with `batchedUpdates`.
*/
_stop(t, r) {
if (nl(this)) {
$I(this, !1);
const n = this.animation;
wt(n.values, (a) => {
a.done = !0;
}), n.toValues && (n.onChange = n.onPause = n.onResume = void 0), Sg(this, {
type: "idle",
parent: this
});
const o = r ? sd(this.get()) : Qo(this.get(), km(this, t ?? n.to));
ah(this._pendingCalls, o), n.changed && (n.changed = !1, _m(this, "onRest", o, this));
}
}
};
function km(e, t) {
const r = Pg(t), n = Pg(e.get());
return ji(n, r);
}
function OG(e, t = e.loop, r = e.to) {
const n = Jn(t);
if (n) {
const o = n !== !0 && O3(n), a = (o || e).reverse, i = !o || o.reset;
return S1({
...e,
loop: t,
// Avoid updating default props when looping.
default: !1,
// Never loop the `pause` prop.
pause: void 0,
// For the "reverse" prop to loop as expected, the "to" prop
// must be undefined. The "reverse" prop is ignored when the
// "to" prop is an array or function.
to: !a || HO(r) ? r : void 0,
// Ignore the "from" prop except on reset.
from: i ? e.from : void 0,
reset: i,
// The "loop" prop can return a "useSpring" props object to
// override any of the original props.
...o
});
}
}
function S1(e) {
const { to: t, from: r } = e = O3(e), n = /* @__PURE__ */ new Set();
return Ae.obj(t) && _I(t, n), Ae.obj(r) && _I(r, n), e.keys = n.size ? Array.from(n) : null, e;
}
function _I(e, t) {
ci(e, (r, n) => r != null && t.add(n));
}
var rpe = [
"onStart",
"onRest",
"onChange",
"onPause",
"onResume"
];
function OI(e, t, r) {
e.animation[r] = t[r] !== yG(t, r) ? bG(t[r], e.key) : void 0;
}
function _m(e, t, ...r) {
var n, o, a, i;
(o = (n = e.animation)[t]) == null || o.call(n, ...r), (i = (a = e.defaultProps)[t]) == null || i.call(a, ...r);
}
var npe = ["onStart", "onChange", "onRest"], ope = 1, ape = class {
constructor(t, r) {
this.id = ope++, this.springs = {}, this.queue = [], this._lastAsyncId = 0, this._active = /* @__PURE__ */ new Set(), this._changed = /* @__PURE__ */ new Set(), this._started = !1, this._state = {
paused: !1,
pauseQueue: /* @__PURE__ */ new Set(),
resumeQueue: /* @__PURE__ */ new Set(),
timeouts: /* @__PURE__ */ new Set()
}, this._events = {
onStart: /* @__PURE__ */ new Map(),
onChange: /* @__PURE__ */ new Map(),
onRest: /* @__PURE__ */ new Map()
}, this._onFrame = this._onFrame.bind(this), r && (this._flush = r), t && this.start({ default: !0, ...t });
}
/**
* Equals `true` when no spring values are in the frameloop, and
* no async animation is currently active.
*/
get idle() {
return !this._state.asyncTo && Object.values(this.springs).every((t) => t.idle && !t.isDelayed && !t.isPaused);
}
get item() {
return this._item;
}
set item(t) {
this._item = t;
}
/** Get the current values of our springs */
get() {
const t = {};
return this.each((r, n) => t[n] = r.get()), t;
}
/** Set the current values without animating. */
set(t) {
for (const r in t) {
const n = t[r];
Ae.und(n) || this.springs[r].set(n);
}
}
/** Push an update onto the queue of each value. */
update(t) {
return t && this.queue.push(S1(t)), this;
}
/**
* Start the queued animations for every spring, and resolve the returned
* promise once all queued animations have finished or been cancelled.
*
* When you pass a queue (instead of nothing), that queue is used instead of
* the queued animations added with the `update` method, which are left alone.
*/
start(t) {
let { queue: r } = this;
return t ? r = Rn(t).map(S1) : this.queue = [], this._flush ? this._flush(this, r) : (PG(this, r), ipe(this, r));
}
/** @internal */
stop(t, r) {
if (t !== !!t && (r = t), r) {
const n = this.springs;
wt(Rn(r), (o) => n[o].stop(!!t));
} else
Cg(this._state, this._lastAsyncId), this.each((n) => n.stop(!!t));
return this;
}
/** Freeze the active animation in time */
pause(t) {
if (Ae.und(t))
this.start({ pause: !0 });
else {
const r = this.springs;
wt(Rn(t), (n) => r[n].pause());
}
return this;
}
/** Resume the animation if paused. */
resume(t) {
if (Ae.und(t))
this.start({ pause: !1 });
else {
const r = this.springs;
wt(Rn(t), (n) => r[n].resume());
}
return this;
}
/** Call a function once per spring value */
each(t) {
ci(this.springs, t);
}
/** @internal Called at the end of every animation frame */
_onFrame() {
const { onStart: t, onChange: r, onRest: n } = this._events, o = this._active.size > 0, a = this._changed.size > 0;
(o && !this._started || a && !this._started) && (this._started = !0, Nh(t, ([u, c]) => {
c.value = this.get(), u(c, this, this._item);
}));
const i = !o && this._started, s = a || i && n.size ? this.get() : null;
a && r.size && Nh(r, ([u, c]) => {
c.value = s, u(c, this, this._item);
}), i && (this._started = !1, Nh(n, ([u, c]) => {
c.value = s, u(c, this, this._item);
}));
}
/** @internal */
eventObserved(t) {
if (t.type == "change")
this._changed.add(t.parent), t.idle || this._active.add(t.parent);
else if (t.type == "idle")
this._active.delete(t.parent);
else return;
it.onFrame(this._onFrame);
}
};
function ipe(e, t) {
return Promise.all(t.map((r) => SG(e, r))).then(
(r) => S3(e, r)
);
}
async function SG(e, t, r) {
const { keys: n, to: o, from: a, loop: i, onRest: s, onResolve: u } = t, c = Ae.obj(t.default) && t.default;
i && (t.loop = !1), o === !1 && (t.to = null), a === !1 && (t.from = null);
const d = Ae.arr(o) || Ae.fun(o) ? o : void 0;
d ? (t.to = void 0, t.onRest = void 0, c && (c.onRest = void 0)) : wt(npe, (m) => {
const h = t[m];
if (Ae.fun(h)) {
const w = e._events[m];
t[m] = ({ finished: $, cancelled: _ }) => {
const S = w.get(h);
S ? ($ || (S.finished = !1), _ && (S.cancelled = !0)) : w.set(h, {
value: null,
finished: $ || !1,
cancelled: _ || !1
});
}, c && (c[m] = t[m]);
}
});
const l = e._state;
t.pause === !l.paused ? (l.paused = t.pause, ah(t.pause ? l.pauseQueue : l.resumeQueue)) : l.paused && (t.pause = !0);
const f = (n || Object.keys(e.springs)).map(
(m) => e.springs[m].start(t)
), p = t.cancel === !0 || yG(t, "cancel") === !0;
(d || p && l.asyncId) && f.push(
vG(++e._lastAsyncId, {
props: t,
state: l,
actions: {
pause: zO,
resume: zO,
start(m, h) {
p ? (Cg(l, e._lastAsyncId), h(sd(e))) : (m.onRest = s, h(
wG(
d,
m,
l,
e
)
));
}
}
})
), l.paused && await new Promise((m) => {
l.resumeQueue.add(m);
});
const y = S3(e, await Promise.all(f));
if (i && y.finished && !(r && y.noop)) {
const m = OG(t, i, o);
if (m)
return PG(e, [m]), SG(e, m, !0);
}
return u && it.batchedUpdates(() => u(y, e, e.item)), y;
}
function spe(e, t) {
const r = { ...e.springs };
return t && wt(Rn(t), (n) => {
Ae.und(n.keys) && (n = S1(n)), Ae.obj(n.to) || (n = { ...n, to: void 0 }), AG(r, n, (o) => EG(o));
}), lpe(e, r), r;
}
function lpe(e, t) {
ci(t, (r, n) => {
e.springs[n] || (e.springs[n] = r, np(r, e));
});
}
function EG(e, t) {
const r = new tpe();
return r.key = e, t && np(r, t), r;
}
function AG(e, t, r) {
t.keys && wt(t.keys, (n) => {
(e[n] || (e[n] = r(n)))._prepareNode(t);
});
}
function PG(e, t) {
wt(t, (r) => {
AG(e.springs, r, (n) => EG(n, e));
});
}
var cpe = V.createContext({
pause: !1,
immediate: !1
}), upe = () => {
const e = [], t = function(n) {
Ide();
const o = [];
return wt(e, (a, i) => {
if (Ae.und(n))
o.push(a.start());
else {
const s = r(n, a, i);
s && o.push(a.start(s));
}
}), o;
};
t.current = e, t.add = function(n) {
e.includes(n) || e.push(n);
}, t.delete = function(n) {
const o = e.indexOf(n);
~o && e.splice(o, 1);
}, t.pause = function() {
return wt(e, (n) => n.pause(...arguments)), this;
}, t.resume = function() {
return wt(e, (n) => n.resume(...arguments)), this;
}, t.set = function(n) {
wt(e, (o, a) => {
const i = Ae.fun(n) ? n(a, o) : n;
i && o.set(i);
});
}, t.start = function(n) {
const o = [];
return wt(e, (a, i) => {
if (Ae.und(n))
o.push(a.start());
else {
const s = this._getProps(n, a, i);
s && o.push(a.start(s));
}
}), o;
}, t.stop = function() {
return wt(e, (n) => n.stop(...arguments)), this;
}, t.update = function(n) {
return wt(e, (o, a) => o.update(this._getProps(n, o, a))), this;
};
const r = function(n, o, a) {
return Ae.fun(n) ? n(a, o) : n;
};
return t._getProps = r, t;
};
function SI(e, t, r) {
const n = Ae.fun(t) && t, {
reset: o,
sort: a,
trail: i = 0,
expires: s = !0,
exitBeforeEnter: u = !1,
onDestroyed: c,
ref: d,
config: l
} = n ? n() : t, f = Ie(
() => n || arguments.length == 3 ? upe() : void 0,
[]
), p = Rn(e), y = [], m = ne(null), h = o ? null : m.current;
Cf(() => {
m.current = y;
}), dG(() => (wt(y, (G) => {
f == null || f.add(G.ctrl), G.ctrl.ref = f;
}), () => {
wt(m.current, (G) => {
G.expired && clearTimeout(G.expirationId), bI(G.ctrl, f), G.ctrl.stop(!0);
});
}));
const w = dpe(p, n ? n() : t, h), $ = o && m.current || [];
Cf(
() => wt($, ({ ctrl: G, item: H, key: U }) => {
bI(G, f), Jn(c, H, U);
})
);
const _ = [];
if (h && wt(h, (G, H) => {
G.expired ? (clearTimeout(G.expirationId), $.push(G)) : (H = _[H] = w.indexOf(G.key), ~H && (y[H] = G));
}), wt(p, (G, H) => {
y[H] || (y[H] = {
key: w[H],
item: G,
phase: "mount",
ctrl: new ape()
}, y[H].ctrl.item = G);
}), _.length) {
let G = -1;
const { leave: H } = n ? n() : t;
wt(_, (U, W) => {
const X = h[W];
~U ? (G = y.indexOf(X), y[G] = { ...X, item: p[U] }) : H && y.splice(++G, 0, X);
});
}
Ae.fun(a) && y.sort((G, H) => a(G.item, H.item));
let S = -i;
const b = fG(), F = _3(t), z = /* @__PURE__ */ new Map(), q = ne(/* @__PURE__ */ new Map()), Y = ne(!1);
wt(y, (G, H) => {
const U = G.key, W = G.phase, X = n ? n() : t;
let ee, v;
const g = Jn(X.delay || 0, U);
if (W == "mount")
ee = X.enter, v = "enter";
else {
const T = w.indexOf(U) < 0;
if (W != "leave")
if (T)
ee = X.leave, v = "leave";
else if (ee = X.update)
v = "update";
else return;
else if (!T)
ee = X.enter, v = "enter";
else return;
}
if (ee = Jn(ee, G.item, H), ee = Ae.obj(ee) ? O3(ee) : { to: ee }, !ee.config) {
const T = l || F.config;
ee.config = Jn(T, G.item, H, v);
}
S += i;
const O = {
...F,
// we need to add our props.delay value you here.
delay: g + S,
ref: d,
immediate: X.immediate,
// This prevents implied resets.
reset: !1,
// Merge any phase-specific props.
...ee
};
if (v == "enter" && Ae.und(O.from)) {
const T = n ? n() : t, N = Ae.und(T.initial) || h ? T.from : T.initial;
O.from = Jn(N, G.item, H);
}
const { onResolve: P } = O;
O.onResolve = (T) => {
Jn(P, T);
const N = m.current, C = N.find((I) => I.key === U);
if (C && !(T.cancelled && C.phase != "update") && C.ctrl.idle) {
const I = N.every((j) => j.ctrl.idle);
if (C.phase == "leave") {
const j = Jn(s, C.item);
if (j !== !1) {
const R = j === !0 ? 0 : j;
if (C.expired = !0, !I && R > 0) {
R <= 2147483647 && (C.expirationId = setTimeout(b, R));
return;
}
}
}
I && N.some((j) => j.expired) && (q.current.delete(C), u && (Y.current = !0), b());
}
};
const A = spe(G.ctrl, O);
v === "leave" && u ? q.current.set(G, { phase: v, springs: A, payload: O }) : z.set(G, { phase: v, springs: A, payload: O });
});
const B = nt(cpe), Z = Mde(B), M = B !== Z && qde(B);
Cf(() => {
M && wt(y, (G) => {
G.ctrl.start({ default: B });
});
}, [B]), wt(z, (G, H) => {
if (q.current.size) {
const U = y.findIndex((W) => W.key === H.key);
y.splice(U, 1);
}
}), Cf(
() => {
wt(
q.current.size ? q.current : z,
({ phase: G, payload: H }, U) => {
const { ctrl: W } = U;
U.phase = G, f == null || f.add(W), M && G == "enter" && W.start({ default: B }), H && (Kde(W, H.ref), (W.ref || f) && !Y.current ? W.update(H) : (W.start(H), Y.current && (Y.current = !1)));
}
);
},
o ? void 0 : r
);
const te = (G) => /* @__PURE__ */ V.createElement(V.Fragment, null, y.map((H, U) => {
const { springs: W } = z.get(H) || H.ctrl, X = G({ ...W }, H.item, H, U);
return X && X.type ? /* @__PURE__ */ V.createElement(
X.type,
{
...X.props,
key: Ae.str(H.key) || Ae.num(H.key) ? H.key : H.ctrl.id,
ref: X.ref
}
) : X;
}));
return f ? [te, f] : te;
}
var fpe = 1;
function dpe(e, { key: t, keys: r = t }, n) {
if (r === null) {
const o = /* @__PURE__ */ new Set();
return e.map((a) => {
const i = n && n.find(
(s) => s.item === a && s.phase !== "leave" && !o.has(s)
);
return i ? (o.add(i), i.key) : fpe++;
});
}
return Ae.und(r) ? e : Ae.fun(r) ? e.map(r) : Rn(r);
}
var ppe = class extends E3 {
constructor(t, r) {
super(), this.source = t, this.idle = !0, this._active = /* @__PURE__ */ new Set(), this.calc = _g(...r);
const n = this._get(), o = VO(n);
k3(this, o.create(n));
}
advance(t) {
const r = this._get(), n = this.get();
ji(r, n) || (ga(this).setValue(r), this._onChange(r, this.idle)), !this.idle && EI(this._active) && k2(this);
}
_get() {
const t = Ae.arr(this.source) ? this.source.map(Xn) : Rn(Xn(this.source));
return this.calc(...t);
}
_start() {
this.idle && !EI(this._active) && (this.idle = !1, wt(K0(this), (t) => {
t.done = !1;
}), aa.skipAnimation ? (it.batchedUpdates(() => this.advance()), k2(this)) : U0.start(this));
}
// Observe our sources only when we're observed.
_attach() {
let t = 1;
wt(Rn(this.source), (r) => {
Oo(r) && np(r, this), UO(r) && (r.idle || this._active.add(r), t = Math.max(t, r.priority + 1));
}), this.priority = t, this._start();
}
// Stop observing our sources once we have no observers.
_detach() {
wt(Rn(this.source), (t) => {
Oo(t) && Eg(t, this);
}), this._active.clear(), k2(this);
}
/** @internal */
eventObserved(t) {
t.type == "change" ? t.idle ? this.advance() : (this._active.add(t.parent), this._start()) : t.type == "idle" ? this._active.delete(t.parent) : t.type == "priority" && (this.priority = Rn(this.source).reduce(
(r, n) => Math.max(r, (UO(n) ? n.priority : 0) + 1),
0
));
}
};
function mpe(e) {
return e.idle !== !1;
}
function EI(e) {
return !e.size || Array.from(e).every(mpe);
}
function k2(e) {
e.idle || (e.idle = !0, wt(K0(e), (t) => {
t.done = !0;
}), Sg(e, {
type: "idle",
parent: e
}));
}
aa.assign({
createStringInterpolator: cG,
to: (e, t) => new ppe(e, t)
});
var CG = /^--/;
function hpe(e, t) {
return t == null || typeof t == "boolean" || t === "" ? "" : typeof t == "number" && t !== 0 && !CG.test(e) && !(jh.hasOwnProperty(e) && jh[e]) ? t + "px" : ("" + t).trim();
}
var AI = {};
function gpe(e, t) {
if (!e.nodeType || !e.setAttribute)
return !1;
const r = e.nodeName === "filter" || e.parentNode && e.parentNode.nodeName === "filter", {
className: n,
style: o,
children: a,
scrollTop: i,
scrollLeft: s,
viewBox: u,
...c
} = t, d = Object.values(c), l = Object.keys(c).map(
(f) => r || e.hasAttribute(f) ? f : AI[f] || (AI[f] = f.replace(
/([A-Z])/g,
// Attributes are written in dash case
(p) => "-" + p.toLowerCase()
))
);
a !== void 0 && (e.textContent = a);
for (const f in o)
if (o.hasOwnProperty(f)) {
const p = hpe(f, o[f]);
CG.test(f) ? e.style.setProperty(f, p) : e.style[f] = p;
}
l.forEach((f, p) => {
e.setAttribute(f, d[p]);
}), n !== void 0 && (e.className = n), i !== void 0 && (e.scrollTop = i), s !== void 0 && (e.scrollLeft = s), u !== void 0 && e.setAttribute("viewBox", u);
}
var jh = {
animationIterationCount: !0,
borderImageOutset: !0,
borderImageSlice: !0,
borderImageWidth: !0,
boxFlex: !0,
boxFlexGroup: !0,
boxOrdinalGroup: !0,
columnCount: !0,
columns: !0,
flex: !0,
flexGrow: !0,
flexPositive: !0,
flexShrink: !0,
flexNegative: !0,
flexOrder: !0,
gridRow: !0,
gridRowEnd: !0,
gridRowSpan: !0,
gridRowStart: !0,
gridColumn: !0,
gridColumnEnd: !0,
gridColumnSpan: !0,
gridColumnStart: !0,
fontWeight: !0,
lineClamp: !0,
lineHeight: !0,
opacity: !0,
order: !0,
orphans: !0,
tabSize: !0,
widows: !0,
zIndex: !0,
zoom: !0,
// SVG-related properties
fillOpacity: !0,
floodOpacity: !0,
stopOpacity: !0,
strokeDasharray: !0,
strokeDashoffset: !0,
strokeMiterlimit: !0,
strokeOpacity: !0,
strokeWidth: !0
}, bpe = (e, t) => e + t.charAt(0).toUpperCase() + t.substring(1), ype = ["Webkit", "Ms", "Moz", "O"];
jh = Object.keys(jh).reduce((e, t) => (ype.forEach((r) => e[bpe(r, t)] = e[t]), e), jh);
var vpe = /^(matrix|translate|scale|rotate|skew)/, xpe = /^(translate)/, wpe = /^(rotate|skew)/, _2 = (e, t) => Ae.num(e) && e !== 0 ? e + t : e, Tv = (e, t) => Ae.arr(e) ? e.every((r) => Tv(r, t)) : Ae.num(e) ? e === t : parseFloat(e) === t, $pe = class extends J0 {
constructor({ x: t, y: r, z: n, ...o }) {
const a = [], i = [];
(t || r || n) && (a.push([t || 0, r || 0, n || 0]), i.push((s) => [
`translate3d(${s.map((u) => _2(u, "px")).join(",")})`,
// prettier-ignore
Tv(s, 0)
])), ci(o, (s, u) => {
if (u === "transform")
a.push([s || ""]), i.push((c) => [c, c === ""]);
else if (vpe.test(u)) {
if (delete o[u], Ae.und(s)) return;
const c = xpe.test(u) ? "px" : wpe.test(u) ? "deg" : "";
a.push(Rn(s)), i.push(
u === "rotate3d" ? ([d, l, f, p]) => [
`rotate3d(${d},${l},${f},${_2(p, c)})`,
Tv(p, 0)
] : (d) => [
`${u}(${d.map((l) => _2(l, c)).join(",")})`,
Tv(d, u.startsWith("scale") ? 1 : 0)
]
);
}
}), a.length && (o.transform = new kpe(a, i)), super(o);
}
}, kpe = class extends iG {
constructor(t, r) {
super(), this.inputs = t, this.transforms = r, this._value = null;
}
get() {
return this._value || (this._value = this._get());
}
_get() {
let t = "", r = !0;
return wt(this.inputs, (n, o) => {
const a = Xn(n[0]), [i, s] = this.transforms[o](
Ae.arr(a) ? a : n.map(Xn)
);
t += " " + i, r = r && s;
}), r ? "none" : t;
}
// Start observing our inputs once we have an observer.
observerAdded(t) {
t == 1 && wt(
this.inputs,
(r) => wt(
r,
(n) => Oo(n) && np(n, this)
)
);
}
// Stop observing our inputs once we have no observers.
observerRemoved(t) {
t == 0 && wt(
this.inputs,
(r) => wt(
r,
(n) => Oo(n) && Eg(n, this)
)
);
}
eventObserved(t) {
t.type == "change" && (this._value = null), Sg(this, t);
}
}, _pe = [
"a",
"abbr",
"address",
"area",
"article",
"aside",
"audio",
"b",
"base",
"bdi",
"bdo",
"big",
"blockquote",
"body",
"br",
"button",
"canvas",
"caption",
"cite",
"code",
"col",
"colgroup",
"data",
"datalist",
"dd",
"del",
"details",
"dfn",
"dialog",
"div",
"dl",
"dt",
"em",
"embed",
"fieldset",
"figcaption",
"figure",
"footer",
"form",
"h1",
"h2",
"h3",
"h4",
"h5",
"h6",
"head",
"header",
"hgroup",
"hr",
"html",
"i",
"iframe",
"img",
"input",
"ins",
"kbd",
"keygen",
"label",
"legend",
"li",
"link",
"main",
"map",
"mark",
"menu",
"menuitem",
"meta",
"meter",
"nav",
"noscript",
"object",
"ol",
"optgroup",
"option",
"output",
"p",
"param",
"picture",
"pre",
"progress",
"q",
"rp",
"rt",
"ruby",
"s",
"samp",
"script",
"section",
"select",
"small",
"source",
"span",
"strong",
"style",
"sub",
"summary",
"sup",
"table",
"tbody",
"td",
"textarea",
"tfoot",
"th",
"thead",
"time",
"title",
"tr",
"track",
"u",
"ul",
"var",
"video",
"wbr",
// SVG
"circle",
"clipPath",
"defs",
"ellipse",
"foreignObject",
"g",
"image",
"line",
"linearGradient",
"mask",
"path",
"pattern",
"polygon",
"polyline",
"radialGradient",
"rect",
"stop",
"svg",
"text",
"tspan"
];
aa.assign({
batchedUpdates: Of,
createStringInterpolator: cG,
colors: fde
});
var Ope = Hde(_pe, {
applyAnimatedValues: gpe,
createAnimatedStyle: (e) => new $pe(e),
// eslint-disable-next-line @typescript-eslint/no-unused-vars
getComponentProps: ({ scrollTop: e, scrollLeft: t, ...r }) => r
}), NG = Ope.animated;
/*!
* Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
* Copyright 2024 Fonticons, Inc.
*/
const Spe = {
prefix: "fas",
iconName: "down-left-and-up-right-to-center",
icon: [512, 512, ["compress-alt"], "f422", "M439 7c9.4-9.4 24.6-9.4 33.9 0l32 32c9.4 9.4 9.4 24.6 0 33.9l-87 87 39 39c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8l-144 0c-13.3 0-24-10.7-24-24l0-144c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l39 39L439 7zM72 272l144 0c13.3 0 24 10.7 24 24l0 144c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39L73 505c-9.4 9.4-24.6 9.4-33.9 0L7 473c-9.4-9.4-9.4-24.6 0-33.9l87-87L55 313c-6.9-6.9-8.9-17.2-5.2-26.2s12.5-14.8 22.2-14.8z"]
}, Epe = {
prefix: "fas",
iconName: "up-right-and-down-left-from-center",
icon: [512, 512, ["expand-alt"], "f424", "M344 0L488 0c13.3 0 24 10.7 24 24l0 144c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39-87 87c-9.4 9.4-24.6 9.4-33.9 0l-32-32c-9.4-9.4-9.4-24.6 0-33.9l87-87L327 41c-6.9-6.9-8.9-17.2-5.2-26.2S334.3 0 344 0zM168 512L24 512c-13.3 0-24-10.7-24-24L0 344c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l39 39 87-87c9.4-9.4 24.6-9.4 33.9 0l32 32c9.4 9.4 9.4 24.6 0 33.9l-87 87 39 39c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8z"]
};
var BO = /* @__PURE__ */ ((e) => (e[e.NONE = 0] = "NONE", e[e.INPUT = 1] = "INPUT", e[e.PANEL = 2] = "PANEL", e[e.DIALOGUE = 3] = "DIALOGUE", e))(BO || {}), Ape = Object.freeze({
// See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss
position: "absolute",
border: 0,
width: 1,
height: 1,
padding: 0,
margin: -1,
overflow: "hidden",
clip: "rect(0, 0, 0, 0)",
whiteSpace: "nowrap",
wordWrap: "normal"
}), Ppe = "VisuallyHidden", TG = V.forwardRef(
(e, t) => /* @__PURE__ */ K(
mi.span,
{
...e,
ref: t,
style: { ...Ape, ...e.style }
}
)
);
TG.displayName = Ppe;
var PI = TG;
const Ng = [], Cpe = (e) => {
Ng.push(e);
}, Npe = (e) => {
const t = Ng.findIndex((r) => r.id === e);
t !== -1 && Ng.splice(t, 1);
}, Tpe = (e, t) => {
const r = Ng.find((n) => n.id === e);
r && Object.assign(r, t);
}, Ipe = () => Ng.filter((e) => e.closeOnEsc).sort((e, t) => t.zIndex - e.zIndex)[0];
typeof window < "u" && !window.__modalEscListenerInstalled && (window.__modalEscListenerInstalled = !0, window.addEventListener("keydown", (e) => {
if (e.key !== "Escape" && e.key !== "Esc") return;
const t = Ipe();
t && (e.preventDefault(), t.onClose());
}));
let Om = 70;
const jpe = ({
styles: e,
backdropClassName: t,
disableHotkeyInput: r,
enableHotkeyInput: n
}) => (ue(() => (r(BO.DIALOGUE), () => {
n(BO.DIALOGUE);
}), [r, n]), /* @__PURE__ */ K(Qae, { forceMount: !0, asChild: !0, children: /* @__PURE__ */ K(
NG.div,
{
className: Sh("fixed inset-0 z-[69]", t),
style: {
opacity: e.opacity,
pointerEvents: "none",
background: "radial-gradient(800px 400px at 10% -10%, rgba(45,129,255,0.10), transparent), radial-gradient(600px 320px at 110% 110%, rgba(28,182,190,0.10), transparent), rgba(0,0,0,0.60)"
}
}
) })), YO = ({ children: e }) => /* @__PURE__ */ K(rn, { children: e }), IG = zt(
void 0
), A3 = ({ className: e, size: t = "md" }) => {
const r = nt(IG);
if (!r) return null;
const { expanded: n, toggleExpanded: o } = r;
return /* @__PURE__ */ K(
"button",
{
type: "button",
"aria-label": n ? "Restore modal size" : "Expand modal",
onClick: o,
className: Sh(
"flex items-center justify-center rounded-full bg-black/40 text-white/60 transition-all hover:bg-black/70 hover:text-white",
{
sm: "h-5 w-5 text-sm",
md: "h-7 w-7 text-md",
lg: "h-9 w-9 text-xl"
}[t],
"relative z-[70]",
e
),
children: /* @__PURE__ */ K(
wg,
{
icon: n ? Spe : Epe
}
)
}
);
};
A3.displayName = "ModalExpandButton";
const Sb = ({
isOpen: e,
title: t,
titleIcon: r,
onTitleIconClick: n,
onClose: o,
enableHotkeyInput: a = () => {
},
disableHotkeyInput: i = () => {
},
className: s,
backdropClassName: u,
width: c,
children: d,
childPadding: l = !0,
titleIconClassName: f,
showClose: p = !0,
draggable: y = !1,
resizable: m = !1,
initialPosition: h,
closeOnOutsideClick: w = !0,
closeOnEsc: $ = !0,
allowBackgroundInteraction: _ = !1,
expandable: S = !1,
accessibleTitle: b,
accessibleDescription: F
}) => {
const [z, q] = de(
null
), [Y, B] = de(!1), [Z, M] = de(!1), te = ne({ x: 0, y: 0 }), G = ne({ x: 0, y: 0 }), H = ne(null), U = ne(null), W = ne(null), [X, ee] = de(() => ++Om), [v, g] = de(!1), O = ne(null), P = SI(e, {
from: {
opacity: 0,
transform: "scale(0.95) translateY(-10px)"
},
enter: {
opacity: 1,
transform: "scale(1) translateY(0px)"
},
leave: {
opacity: 0,
transform: "scale(0.95) translateY(10px)"
},
config: {
tension: 300,
friction: 30,
mass: 0.8
}
}), A = SI(e, {
from: { opacity: 0 },
enter: { opacity: 1 },
leave: { opacity: 0 },
config: {
tension: 280,
friction: 25
}
});
ue(() => {
v ? (U.current && (O.current = { ...U.current }), q({ x: 0, y: 0 }), U.current = { x: 0, y: 0 }, H.current && (H.current.style.left = "0px", H.current.style.top = "0px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X))) : O.current && (q({ ...O.current }), U.current = { ...O.current }, H.current && (H.current.style.left = O.current.x + "px", H.current.style.top = O.current.y + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X)));
}, [v, X]);
const T = () => g((ce) => !ce);
ue(() => {
e ? W.current ? (q({ ...W.current }), U.current = { ...W.current }, H.current && (H.current.style.left = W.current.x + "px", H.current.style.top = W.current.y + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X))) : h && (q({ ...h }), U.current = { ...h }, H.current && (H.current.style.left = h.x + "px", H.current.style.top = h.y + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X))) : U.current && (W.current = { ...U.current });
}, [e, X]), ue(() => {
if (!Y) return;
let ce = null;
const le = (ot) => {
if (!H.current) return;
const kt = ot.clientX - G.current.x, De = ot.clientY - G.current.y, Ze = te.current.x + kt, rt = te.current.y + De, Wt = H.current, { width: lt, height: $r } = Wt.getBoundingClientRect(), pn = window.innerWidth, ro = window.innerHeight, kr = 450, vo = -450, Mo = 0, Do = pn - lt + kr, yr = ro - $r + kr, Tn = Math.max(vo, Math.min(Ze, Do)), Fo = Math.max(Mo, Math.min(rt, yr));
U.current = { x: Tn, y: Fo }, H.current && (ce && cancelAnimationFrame(ce), ce = requestAnimationFrame(() => {
H.current && U.current && (H.current.style.left = U.current.x + "px", H.current.style.top = U.current.y + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X));
}));
}, fe = () => {
B(!1), U.current && q({ ...U.current });
};
return window.addEventListener("mousemove", le), window.addEventListener("mouseup", fe), () => {
window.removeEventListener("mousemove", le), window.removeEventListener("mouseup", fe), ce && cancelAnimationFrame(ce);
};
}, [Y, X]);
const N = (ce) => {
var le, fe;
if (!H.current) return;
v && g(!1), ce.preventDefault(), ce.stopPropagation();
const ot = H.current, { width: kt, height: De } = ot.getBoundingClientRect(), Ze = window.innerWidth, rt = window.innerHeight;
let Wt = ((le = U.current) == null ? void 0 : le.x) ?? (z == null ? void 0 : z.x), lt = ((fe = U.current) == null ? void 0 : fe.y) ?? (z == null ? void 0 : z.y);
(Wt === void 0 || lt === void 0) && (h ? (Wt = h.x, lt = h.y) : (Wt = (Ze - kt) / 2, lt = (rt - De) / 2)), te.current = { x: Wt, y: lt }, G.current = { x: ce.clientX, y: ce.clientY }, B(!0), !z && !U.current && (q({ x: Wt, y: lt }), U.current = { x: Wt, y: lt }, H.current && (H.current.style.left = Wt + "px", H.current.style.top = lt + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X)));
};
let C = d;
if (y) {
let ce = !1;
C = Array.isArray(d) ? d.map((le) => {
if (!ce && Fi(le) && (le.type === YO || le.type.displayName === "ModalDragHandle")) {
ce = !0;
const fe = le;
return Li(fe, {
children: /* @__PURE__ */ K(
"div",
{
style: { cursor: "move", userSelect: "none" },
onMouseDown: N,
children: fe.props.children
}
)
});
}
return le;
}) : Fi(d) && (d.type === YO || d.type.displayName === "ModalDragHandle") ? (() => {
const le = d;
return Li(le, {
children: /* @__PURE__ */ K(
"div",
{
style: { cursor: "move", userSelect: "none" },
onMouseDown: N,
children: le.props.children
}
)
});
})() : d;
}
const I = ne(null), j = ne(null), R = (ce, le) => {
if (!H.current || (ce.preventDefault(), ce.stopPropagation(), v)) return;
const fe = H.current.getBoundingClientRect();
I.current = le, j.current = {
mouseX: ce.clientX,
mouseY: ce.clientY,
width: fe.width,
height: fe.height,
x: fe.left,
y: fe.top
}, M(!0);
};
ue(() => {
if (!Z) return;
let ce = null;
const le = (ot) => {
if (!H.current || !j.current || !I.current)
return;
const kt = ot.clientX - j.current.mouseX, De = ot.clientY - j.current.mouseY;
let Ze = j.current.width, rt = j.current.height, Wt = j.current.x, lt = j.current.y;
const $r = I.current;
$r.includes("right") && (Ze = j.current.width + kt), $r.includes("left") && (Ze = j.current.width - kt, Wt = j.current.x + kt), $r.includes("bottom") && (rt = j.current.height + De), $r.includes("top") && (rt = j.current.height - De, lt = j.current.y + De), Ze = Math.max(320, Ze), rt = Math.max(240, rt), U.current = { x: Wt, y: lt }, me.current = { width: Ze, height: rt }, ce && cancelAnimationFrame(ce), ce = requestAnimationFrame(() => {
H.current && U.current && (H.current.style.width = Ze + "px", H.current.style.height = rt + "px", H.current.style.left = U.current.x + "px", H.current.style.top = U.current.y + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X));
});
}, fe = () => {
M(!1), U.current && q({ ...U.current }), me.current && oe({ ...me.current });
};
return window.addEventListener("mousemove", le), window.addEventListener("mouseup", fe), () => {
window.removeEventListener("mousemove", le), window.removeEventListener("mouseup", fe), ce && cancelAnimationFrame(ce);
};
}, [Z, X]);
const Q = () => {
if (!m || v) return null;
const ce = "absolute z-[75] bg-transparent select-none", le = 5, fe = 2, ot = [
{ dir: "top", className: `top-0 left-0 w-full h-${fe}` },
{ dir: "bottom", className: `bottom-0 left-0 w-full h-${fe}` },
{ dir: "left", className: `left-0 top-0 h-full w-${fe}` },
{ dir: "right", className: `right-0 top-0 h-full w-${fe}` },
{
dir: "top-left",
className: `top-0 left-0 w-${le} h-${le}`
},
{
dir: "top-right",
className: `top-0 right-0 w-${le} h-${le}`
},
{
dir: "bottom-left",
className: `bottom-0 left-0 w-${le} h-${le}`
},
{
dir: "bottom-right",
className: `bottom-0 right-0 w-${le} h-${le}`
}
], kt = {
top: "n-resize",
bottom: "s-resize",
left: "w-resize",
right: "e-resize",
"top-left": "nw-resize",
"top-right": "ne-resize",
"bottom-left": "sw-resize",
"bottom-right": "se-resize"
};
return ot.map((De) => /* @__PURE__ */ K(
"div",
{
className: `${ce} ${De.className}`,
style: { cursor: kt[De.dir] },
onMouseDown: (Ze) => R(Ze, De.dir)
},
De.dir
));
}, [k, oe] = de(
null
), me = ne(null), Le = ne(null);
ue(() => {
if (e && !k && H.current && m) {
const { width: ce, height: le } = H.current.getBoundingClientRect();
oe({ width: ce, height: le }), me.current = { width: ce, height: le };
}
}, [e, k, m]), ue(() => {
if (m) {
if (!e)
me.current && (Le.current = { ...me.current });
else if (Le.current && H.current) {
const { width: ce, height: le } = Le.current;
H.current.style.width = ce + "px", H.current.style.height = le + "px", oe({ width: ce, height: le }), me.current = { width: ce, height: le };
}
}
}, [e, m]), ue(() => {
const ce = () => {
H.current && X < Om && (Om += 1, ee(Om), H.current.style.zIndex = String(Om));
}, le = H.current;
return le && le.addEventListener("mousedown", ce), () => {
le && le.removeEventListener("mousedown", ce);
};
}, [X]), ue(() => {
if (!e || _) return;
const ce = (le) => {
if (le.key === "Escape" || le.key === "Esc") return;
const fe = le.target;
fe && (fe.closest(
'[role="dialog"], [role="menu"], [role="listbox"], [data-headlessui-portal]'
) || fe.matches("input, textarea, select, button, [contenteditable]")) || le.stopPropagation();
};
return window.addEventListener("keydown", ce, !0), () => {
window.removeEventListener("keydown", ce, !0);
};
}, [e, _]), ue(() => {
if (!_) return;
const ce = H.current;
if (!ce) return;
const le = (De) => {
De && (De.hasAttribute("inert") && De.removeAttribute("inert"), De.inert && (De.inert = !1), De.getAttribute("aria-hidden") === "true" && De.removeAttribute("aria-hidden"));
};
let fe = ce;
for (; fe; )
le(fe), fe = fe.parentElement;
const ot = new MutationObserver((De) => {
De.forEach((Ze) => {
if (Ze.type === "attributes" && Ze.attributeName === "inert" && Ze.target instanceof HTMLElement) {
const rt = Ze.target;
(rt === ce || ce.contains(rt)) && le(rt);
}
});
});
ot.observe(ce, {
attributes: !0,
subtree: !1,
attributeFilter: ["inert"]
}), document.querySelectorAll(
"[data-radix-portal][inert], [data-headlessui-portal][inert]"
).forEach((De) => De.removeAttribute("inert"));
const kt = new MutationObserver((De) => {
De.forEach((Ze) => {
if (Ze.type === "attributes" && Ze.attributeName === "inert" && Ze.target.hasAttribute("inert")) {
const rt = Ze.target;
(rt.hasAttribute("data-radix-portal") || rt.hasAttribute("data-headlessui-portal")) && le(rt);
}
});
});
return kt.observe(document.body, {
attributes: !0,
subtree: !0,
attributeFilter: ["inert"]
}), () => {
ot.disconnect(), kt.disconnect();
};
}, [_]);
const Xr = ne(Math.floor(Math.random() * 1e9));
ue(() => {
if (e)
return Cpe({
id: Xr.current,
zIndex: X,
onClose: o,
closeOnEsc: $
}), () => {
Npe(Xr.current);
};
}, [e]), ue(() => {
e && Tpe(Xr.current, { zIndex: X, onClose: o, closeOnEsc: $ });
}, [e, X, o, $]);
const Jr = () => v ? {
position: "fixed",
left: 0,
top: 0,
margin: 0,
zIndex: X,
width: "100vw",
height: "100vh",
..._ ? { pointerEvents: "auto" } : {}
} : !y || !z ? {
...m && k ? { width: k.width, height: k.height } : {},
..._ ? { pointerEvents: "auto" } : {}
} : {
position: "fixed",
left: z.x,
top: z.y,
margin: 0,
zIndex: X,
...m && k ? { width: k.width, height: k.height } : {},
..._ ? { pointerEvents: "auto" } : {}
};
return /* @__PURE__ */ K(
Xae,
{
open: e,
onOpenChange: (ce) => !ce && w && o(),
modal: !_,
children: /* @__PURE__ */ K(Jae, { children: /* @__PURE__ */ Te(
"div",
{
className: "fixed inset-0 z-[70]",
style: _ ? { pointerEvents: "none" } : void 0,
children: [
!_ && A(
(ce, le) => le ? /* @__PURE__ */ K(
jpe,
{
styles: ce,
backdropClassName: u,
disableHotkeyInput: i,
enableHotkeyInput: a
},
"backdrop"
) : null
),
_ && /* @__PURE__ */ K(
"div",
{
className: Sh("fixed inset-0 z-[69]", u),
style: { pointerEvents: "none" }
}
),
/* @__PURE__ */ K(IG.Provider, { value: { expanded: v, toggleExpanded: T }, children: /* @__PURE__ */ K(
"div",
{
className: "flex min-h-full items-center justify-center p-4 text-center",
style: _ ? { pointerEvents: "none" } : void 0,
children: P((ce, le) => le ? /* @__PURE__ */ K(
Zae,
{
forceMount: !0,
asChild: !0,
...F ? {} : { "aria-describedby": void 0 },
onPointerDownOutside: (fe) => {
(!w || _) && fe.preventDefault();
},
onEscapeKeyDown: (fe) => {
$ || fe.preventDefault();
},
onInteractOutside: (fe) => {
_ && fe.preventDefault();
},
children: /* @__PURE__ */ Te(
NG.div,
{
className: Sh(
"w-full max-w-lg rounded-xl relative border border-ui-panel-border bg-ui-modal text-left align-middle shadow-2xl z-[70]",
l && !v ? "p-4" : "",
s,
"!transition-none",
// Always disable CSS transitions for spring animations
v && "w-screen h-screen max-w-screen max-h-screen rounded-none"
),
ref: H,
style: {
...Jr(),
opacity: ce.opacity,
transform: ce.transform,
transformOrigin: "center center",
willChange: "transform, opacity"
// Optimize for animations
},
children: [
/* @__PURE__ */ Te("div", { className: "w-full h-full", children: [
F && /* @__PURE__ */ K(PI, { asChild: !0, children: /* @__PURE__ */ K(eie, { children: F }) }),
t ? /* @__PURE__ */ K(
PN,
{
className: Sh(
"mb-4 flex justify-between pb-0 text-xl font-bold text-base-fg"
),
children: /* @__PURE__ */ K(rn, { children: n ? /* @__PURE__ */ Te(
"button",
{
className: "flex items-center gap-3",
onClick: n,
children: [
r && /* @__PURE__ */ K(
wg,
{
icon: r,
className: f
}
),
t
]
}
) : /* @__PURE__ */ Te("div", { className: "flex items-center gap-3", children: [
r && /* @__PURE__ */ K(
wg,
{
icon: r,
className: f
}
),
t
] }) })
}
) : /* @__PURE__ */ K(PI, { asChild: !0, children: /* @__PURE__ */ K(PN, { children: b ?? "Dialog" }) }),
/* @__PURE__ */ K("div", { className: "h-full".trim(), children: C }),
Q()
] }),
(p || S) && /* @__PURE__ */ Te("div", { className: "absolute top-0 right-0 m-2.5 z-[80] flex items-center gap-2", children: [
S && /* @__PURE__ */ K(Sb.ExpandButton, {}),
p && /* @__PURE__ */ K(nde, { onClick: o })
] })
]
}
)
}
) : null)
}
) })
]
}
) })
}
);
};
Sb.DragHandle = YO;
Sb.DragHandle.displayName = "ModalDragHandle";
Sb.ExpandButton = A3;
A3.displayName = "ModalExpandButton";
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function Rpe(e, t, r) {
return (t = Dpe(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function CI(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function be(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? CI(Object(r), !0).forEach(function(n) {
Rpe(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : CI(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function Mpe(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function Dpe(e) {
var t = Mpe(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const NI = () => {
};
let P3 = {}, jG = {}, RG = null, MG = {
mark: NI,
measure: NI
};
try {
typeof window < "u" && (P3 = window), typeof document < "u" && (jG = document), typeof MutationObserver < "u" && (RG = MutationObserver), typeof performance < "u" && (MG = performance);
} catch {
}
const {
userAgent: TI = ""
} = P3.navigator || {}, uc = P3, Fr = jG, II = RG, wy = MG;
uc.document;
const hs = !!Fr.documentElement && !!Fr.head && typeof Fr.addEventListener == "function" && typeof Fr.createElement == "function", DG = ~TI.indexOf("MSIE") || ~TI.indexOf("Trident/");
var Fpe = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, Lpe = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, FG = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, zpe = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, LG = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], wn = "classic", Q0 = "duotone", Wpe = "sharp", Vpe = "sharp-duotone", zG = [wn, Q0, Wpe, Vpe], Hpe = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, Gpe = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, Upe = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), Bpe = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, Ype = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], jI = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, qpe = ["kit"], Kpe = {
kit: {
"fa-kit": "fak"
}
}, Xpe = ["fak", "fakd"], Jpe = {
kit: {
fak: "fa-kit"
}
}, RI = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, $y = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, Qpe = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Zpe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], eme = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, tme = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, rme = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, qO = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, nme = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], KO = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...Qpe, ...nme], ome = ["solid", "regular", "light", "thin", "duotone", "brands"], WG = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], ame = WG.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), ime = [...Object.keys(rme), ...ome, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", $y.GROUP, $y.SWAP_OPACITY, $y.PRIMARY, $y.SECONDARY].concat(WG.map((e) => "".concat(e, "x"))).concat(ame.map((e) => "w-".concat(e))), sme = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const Gi = "___FONT_AWESOME___", XO = 16, VG = "fa", HG = "svg-inline--fa", Cu = "data-fa-i2svg", JO = "data-fa-pseudo-element", lme = "data-fa-pseudo-element-pending", C3 = "data-prefix", N3 = "data-icon", MI = "fontawesome-i2svg", cme = "async", ume = ["HTML", "HEAD", "STYLE", "SCRIPT"], GG = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function Eb(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[wn];
}
});
}
const UG = be({}, FG);
UG[wn] = be(be(be(be({}, {
"fa-duotone": "duotone"
}), FG[wn]), jI.kit), jI["kit-duotone"]);
const fme = Eb(UG), QO = be({}, Bpe);
QO[wn] = be(be(be(be({}, {
duotone: "fad"
}), QO[wn]), RI.kit), RI["kit-duotone"]);
const DI = Eb(QO), ZO = be({}, qO);
ZO[wn] = be(be({}, ZO[wn]), Jpe.kit);
const T3 = Eb(ZO), eS = be({}, tme);
eS[wn] = be(be({}, eS[wn]), Kpe.kit);
Eb(eS);
const dme = Fpe, BG = "fa-layers-text", pme = Lpe, mme = be({}, Hpe);
Eb(mme);
const hme = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], O2 = zpe, gme = [...qpe, ...ime], Rh = uc.FontAwesomeConfig || {};
function bme(e) {
var t = Fr.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function yme(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Fr && typeof Fr.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((t) => {
let [r, n] = t;
const o = yme(bme(r));
o != null && (Rh[n] = o);
});
const YG = {
styleDefault: "solid",
familyDefault: wn,
cssPrefix: VG,
replacementClass: HG,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Rh.familyPrefix && (Rh.cssPrefix = Rh.familyPrefix);
const Fd = be(be({}, YG), Rh);
Fd.autoReplaceSvg || (Fd.observeMutations = !1);
const Ve = {};
Object.keys(YG).forEach((e) => {
Object.defineProperty(Ve, e, {
enumerable: !0,
set: function(t) {
Fd[e] = t, Mh.forEach((r) => r(Ve));
},
get: function() {
return Fd[e];
}
});
});
Object.defineProperty(Ve, "familyPrefix", {
enumerable: !0,
set: function(e) {
Fd.cssPrefix = e, Mh.forEach((t) => t(Ve));
},
get: function() {
return Fd.cssPrefix;
}
});
uc.FontAwesomeConfig = Ve;
const Mh = [];
function vme(e) {
return Mh.push(e), () => {
Mh.splice(Mh.indexOf(e), 1);
};
}
const ol = XO, Fa = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function xme(e) {
if (!e || !hs)
return;
const t = Fr.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Fr.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Fr.head.insertBefore(t, n), e;
}
const wme = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function Tg() {
let e = 12, t = "";
for (; e-- > 0; )
t += wme[Math.random() * 62 | 0];
return t;
}
function op(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function I3(e) {
return e.classList ? op(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function qG(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function $me(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(qG(e[r]), '" '), "").trim();
}
function Z0(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function j3(e) {
return e.size !== Fa.size || e.x !== Fa.x || e.y !== Fa.y || e.rotate !== Fa.rotate || e.flipX || e.flipY;
}
function kme(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function _me(e) {
let {
transform: t,
width: r = XO,
height: n = XO,
startCentered: o = !1
} = e, a = "";
return o && DG ? a += "translate(".concat(t.x / ol - r / 2, "em, ").concat(t.y / ol - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / ol, "em), calc(-50% + ").concat(t.y / ol, "em)) ") : a += "translate(".concat(t.x / ol, "em, ").concat(t.y / ol, "em) "), a += "scale(".concat(t.size / ol * (t.flipX ? -1 : 1), ", ").concat(t.size / ol * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var Ome = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function KG() {
const e = VG, t = HG, r = Ve.cssPrefix, n = Ve.replacementClass;
let o = Ome;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let FI = !1;
function S2() {
Ve.autoAddCss && !FI && (xme(KG()), FI = !0);
}
var Sme = {
mixout() {
return {
dom: {
css: KG,
insertCss: S2
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
S2();
},
beforeI2svg() {
S2();
}
};
}
};
const Ui = uc || {};
Ui[Gi] || (Ui[Gi] = {});
Ui[Gi].styles || (Ui[Gi].styles = {});
Ui[Gi].hooks || (Ui[Gi].hooks = {});
Ui[Gi].shims || (Ui[Gi].shims = []);
var La = Ui[Gi];
const XG = [], JG = function() {
Fr.removeEventListener("DOMContentLoaded", JG), E1 = 1, XG.map((e) => e());
};
let E1 = !1;
hs && (E1 = (Fr.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Fr.readyState), E1 || Fr.addEventListener("DOMContentLoaded", JG));
function Eme(e) {
hs && (E1 ? setTimeout(e, 0) : XG.push(e));
}
function Ab(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? qG(e) : "<".concat(t, " ").concat($me(r), ">").concat(n.map(Ab).join(""), "</").concat(t, ">");
}
function LI(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var E2 = function(t, r, n, o) {
var a = Object.keys(t), i = a.length, s = r, u, c, d;
for (n === void 0 ? (u = 1, d = t[a[0]]) : (u = 0, d = n); u < i; u++)
c = a[u], d = s(d, t[c], c, t);
return d;
};
function Ame(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function tS(e) {
const t = Ame(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function Pme(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function zI(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return !!n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function rS(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = zI(t);
typeof La.hooks.addPack == "function" && !n ? La.hooks.addPack(e, zI(t)) : La.styles[e] = be(be({}, La.styles[e] || {}), o), e === "fas" && rS("fa", t);
}
const {
styles: Ig,
shims: Cme
} = La, QG = Object.keys(T3), Nme = QG.reduce((e, t) => (e[t] = Object.keys(T3[t]), e), {});
let R3 = null, ZG = {}, eU = {}, tU = {}, rU = {}, nU = {};
function Tme(e) {
return ~gme.indexOf(e);
}
function Ime(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !Tme(o) ? o : null;
}
const oU = () => {
const e = (n) => E2(Ig, (o, a, i) => (o[i] = E2(a, n, {}), o), {});
ZG = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((s) => typeof s == "number").forEach((s) => {
n[s.toString(16)] = a;
}), n)), eU = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((s) => typeof s == "string").forEach((s) => {
n[s] = a;
}), n)), nU = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in Ig || Ve.autoFetchSvg, r = E2(Cme, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
tU = r.names, rU = r.unicodes, R3 = ex(Ve.styleDefault, {
family: Ve.familyDefault
});
};
vme((e) => {
R3 = ex(e.styleDefault, {
family: Ve.familyDefault
});
});
oU();
function M3(e, t) {
return (ZG[e] || {})[t];
}
function jme(e, t) {
return (eU[e] || {})[t];
}
function ou(e, t) {
return (nU[e] || {})[t];
}
function aU(e) {
return tU[e] || {
prefix: null,
iconName: null
};
}
function Rme(e) {
const t = rU[e], r = M3("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function fc() {
return R3;
}
const iU = () => ({
prefix: null,
iconName: null,
rest: []
});
function Mme(e) {
let t = wn;
const r = QG.reduce((n, o) => (n[o] = "".concat(Ve.cssPrefix, "-").concat(o), n), {});
return zG.forEach((n) => {
(e.includes(r[n]) || e.some((o) => Nme[n].includes(o))) && (t = n);
}), t;
}
function ex(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = wn
} = t, n = fme[r][e];
if (r === Q0 && !e)
return "fad";
const o = DI[r][e] || DI[r][n], a = e in La.styles ? e : null;
return o || a || null;
}
function Dme(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = Ime(Ve.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function WI(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function tx(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = KO.concat(Zpe), a = WI(e.filter((l) => o.includes(l))), i = WI(e.filter((l) => !KO.includes(l))), s = a.filter((l) => (n = l, !LG.includes(l))), [u = null] = s, c = Mme(a), d = be(be({}, Dme(i)), {}, {
prefix: ex(u, {
family: c
})
});
return be(be(be({}, d), Wme({
values: e,
family: c,
styles: Ig,
config: Ve,
canonical: d,
givenPrefix: n
})), Fme(r, n, d));
}
function Fme(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? aU(o) : {}, i = ou(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !Ig.far && Ig.fas && !Ve.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const Lme = zG.filter((e) => e !== wn || e !== Q0), zme = Object.keys(qO).filter((e) => e !== wn).map((e) => Object.keys(qO[e])).flat();
function Wme(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === Q0, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && Lme.includes(r) && (Object.keys(a).find((f) => zme.includes(f)) || i.autoFetchSvg)) {
const f = Upe.get(r).defaultShortPrefixId;
n.prefix = f, n.iconName = ou(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = fc() || "fas"), n;
}
class Vme {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = be(be({}, this.definitions[a] || {}), o[a]), rS(a, o[a]);
const i = T3[wn][a];
i && rS(i, o[a]), oU();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}
let VI = [], Nf = {};
const ld = {}, Hme = Object.keys(ld);
function Gme(e, t) {
let {
mixoutsTo: r
} = t;
return VI = e, Nf = {}, Object.keys(ld).forEach((n) => {
Hme.indexOf(n) === -1 && delete ld[n];
}), VI.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Nf[i] || (Nf[i] = []), Nf[i].push(a[i]);
});
}
n.provides && n.provides(ld);
}), r;
}
function nS(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Nf[e] || []).forEach((i) => {
t = i.apply(null, [t, ...n]);
}), t;
}
function Nu(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Nf[e] || []).forEach((a) => {
a.apply(null, r);
});
}
function dc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return ld[e] ? ld[e].apply(null, t) : void 0;
}
function oS(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || fc();
if (t)
return t = ou(r, t) || t, LI(sU.definitions, r, t) || LI(La.styles, r, t);
}
const sU = new Vme(), Ume = () => {
Ve.autoReplaceSvg = !1, Ve.observeMutations = !1, Nu("noAuto");
}, Bme = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return hs ? (Nu("beforeI2svg", e), dc("pseudoElements2svg", e), dc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
Ve.autoReplaceSvg === !1 && (Ve.autoReplaceSvg = !0), Ve.observeMutations = !0, Eme(() => {
qme({
autoReplaceSvgRoot: t
}), Nu("watch", e);
});
}
}, Yme = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: ou(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = ex(e[0]);
return {
prefix: r,
iconName: ou(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(Ve.cssPrefix, "-")) > -1 || e.match(dme))) {
const t = tx(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || fc(),
iconName: ou(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = fc();
return {
prefix: t,
iconName: ou(t, e) || e
};
}
}
}, io = {
noAuto: Ume,
config: Ve,
dom: Bme,
parse: Yme,
library: sU,
findIconDefinition: oS,
toHtml: Ab
}, qme = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Fr
} = e;
(Object.keys(La.styles).length > 0 || Ve.autoFetchSvg) && hs && Ve.autoReplaceSvg && io.dom.i2svg({
node: t
});
};
function rx(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => Ab(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!hs) return;
const r = Fr.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function Kme(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (j3(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = Z0(be(be({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function Xme(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(Ve.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: be(be({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function D3(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = Xpe.includes(n), m = [Ve.replacementClass, o ? "".concat(Ve.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: be(be({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[Cu] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || Tg())
},
children: [s]
}), delete h.attributes.title);
const $ = be(be({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: be(be({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? dc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : dc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? Xme($) : Kme($);
}
function HI(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = be(be(be({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[Cu] = "");
const c = be({}, i.styles);
j3(o) && (c.transform = _me({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = Z0(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function Jme(e) {
const {
content: t,
title: r,
extra: n
} = e, o = be(be(be({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = Z0(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: A2
} = La;
function aS(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(Ve.cssPrefix, "-").concat(O2.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(Ve.cssPrefix, "-").concat(O2.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(Ve.cssPrefix, "-").concat(O2.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const Qme = {
found: !1,
width: 512,
height: 512
};
function Zme(e, t) {
!GG && !Ve.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function iS(e, t) {
let r = t;
return t === "fa" && Ve.styleDefault !== null && (t = fc()), new Promise((n, o) => {
if (r === "fa") {
const a = aU(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && A2[t] && A2[t][e]) {
const a = A2[t][e];
return n(aS(a));
}
Zme(e, t), n(be(be({}, Qme), {}, {
icon: Ve.showMissingIcons && e ? dc("missingIconAbstract") || {} : {}
}));
});
}
const GI = () => {
}, sS = Ve.measurePerformance && wy && wy.mark && wy.measure ? wy : {
mark: GI,
measure: GI
}, ih = 'FA "6.7.2"', ehe = (e) => (sS.mark("".concat(ih, " ").concat(e, " begins")), () => lU(e)), lU = (e) => {
sS.mark("".concat(ih, " ").concat(e, " ends")), sS.measure("".concat(ih, " ").concat(e), "".concat(ih, " ").concat(e, " begins"), "".concat(ih, " ").concat(e, " ends"));
};
var F3 = {
begin: ehe,
end: lU
};
const Iv = () => {
};
function UI(e) {
return typeof (e.getAttribute ? e.getAttribute(Cu) : null) == "string";
}
function the(e) {
const t = e.getAttribute ? e.getAttribute(C3) : null, r = e.getAttribute ? e.getAttribute(N3) : null;
return t && r;
}
function rhe(e) {
return e && e.classList && e.classList.contains && e.classList.contains(Ve.replacementClass);
}
function nhe() {
return Ve.autoReplaceSvg === !0 ? jv.replace : jv[Ve.autoReplaceSvg] || jv.replace;
}
function ohe(e) {
return Fr.createElementNS("http://www.w3.org/2000/svg", e);
}
function ahe(e) {
return Fr.createElement(e);
}
function cU(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? ohe : ahe
} = t;
if (typeof e == "string")
return Fr.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(a) {
n.setAttribute(a, e.attributes[a]);
}), (e.children || []).forEach(function(a) {
n.appendChild(cU(a, {
ceFn: r
}));
}), n;
}
function ihe(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const jv = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(cU(r), t);
}), t.getAttribute(Cu) === null && Ve.keepOriginalSource) {
let r = Fr.createComment(ihe(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~I3(t).indexOf(Ve.replacementClass))
return jv.replace(e);
const n = new RegExp("".concat(Ve.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === Ve.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => Ab(a)).join(`
`);
t.setAttribute(Cu, ""), t.innerHTML = o;
}
};
function BI(e) {
e();
}
function uU(e, t) {
const r = typeof t == "function" ? t : Iv;
if (e.length === 0)
r();
else {
let n = BI;
Ve.mutateApproach === cme && (n = uc.requestAnimationFrame || BI), n(() => {
const o = nhe(), a = F3.begin("mutate");
e.map(o), a(), r();
});
}
}
let L3 = !1;
function fU() {
L3 = !0;
}
function lS() {
L3 = !1;
}
let A1 = null;
function YI(e) {
if (!II || !Ve.observeMutations)
return;
const {
treeCallback: t = Iv,
nodeCallback: r = Iv,
pseudoElementsCallback: n = Iv,
observeMutationsRoot: o = Fr
} = e;
A1 = new II((a) => {
if (L3) return;
const i = fc();
op(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !UI(s.addedNodes[0]) && (Ve.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && Ve.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && UI(s.target) && ~hme.indexOf(s.attributeName))
if (s.attributeName === "class" && the(s.target)) {
const {
prefix: u,
iconName: c
} = tx(I3(s.target));
s.target.setAttribute(C3, u || i), c && s.target.setAttribute(N3, c);
} else rhe(s.target) && r(s.target);
});
}), hs && A1.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function she() {
A1 && A1.disconnect();
}
function lhe(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function che(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = tx(I3(e));
return o.prefix || (o.prefix = fc()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = jme(o.prefix, e.innerText) || M3(o.prefix, tS(e.innerText))), !o.iconName && Ve.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function uhe(e) {
const t = op(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return Ve.autoA11y && (r ? t["aria-labelledby"] = "".concat(Ve.replacementClass, "-title-").concat(n || Tg()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function fhe() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: Fa,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function qI(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = che(e), a = uhe(e), i = nS("parseNodeAttributes", {}, e);
let s = t.styleParser ? lhe(e) : [];
return be({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: Fa,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: dhe
} = La;
function dU(e) {
const t = Ve.autoReplaceSvg === "nest" ? qI(e, {
styleParser: !1
}) : qI(e);
return ~t.extra.classes.indexOf(BG) ? dc("generateLayersText", e, t) : dc("generateSvgReplacementMutation", e, t);
}
function phe() {
return [...Ype, ...KO];
}
function KI(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!hs) return Promise.resolve();
const r = Fr.documentElement.classList, n = (d) => r.add("".concat(MI, "-").concat(d)), o = (d) => r.remove("".concat(MI, "-").concat(d)), a = Ve.autoFetchSvg ? phe() : LG.concat(Object.keys(dhe));
a.includes("fa") || a.push("fa");
const i = [".".concat(BG, ":not([").concat(Cu, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(Cu, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = op(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = F3.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = dU(l);
f && d.push(f);
} catch (f) {
GG || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
uU(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function mhe(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
dU(e).then((r) => {
r && uU([r], t);
});
}
function hhe(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : oS(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : oS(o || {})), e(n, be(be({}, r), {}, {
mask: o
}));
};
}
const ghe = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Fa,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return rx(be({
type: "icon"
}, e), () => (Nu("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), Ve.autoA11y && (i ? c["aria-labelledby"] = "".concat(Ve.replacementClass, "-title-").concat(s || Tg()) : (c["aria-hidden"] = "true", c.focusable = "false")), D3({
icons: {
main: aS(p),
mask: o ? aS(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: be(be({}, Fa), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var bhe = {
mixout() {
return {
icon: hhe(ghe)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = KI, e.nodeCallback = mhe, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Fr,
callback: n = () => {
}
} = t;
return KI(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([iS(n, i), c.iconName ? iS(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, D3({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = Z0(i);
s.length > 0 && (n.style = s);
let u;
return j3(a) && (u = dc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, yhe = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return rx({
type: "layer"
}, () => {
Nu("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(Ve.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, vhe = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return rx({
type: "counter",
content: e
}, () => (Nu("beforeDOMElementCreation", {
content: e,
params: t
}), Jme({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(Ve.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, xhe = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Fa,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return rx({
type: "text",
content: e
}, () => (Nu("beforeDOMElementCreation", {
content: e,
params: t
}), HI({
content: e,
transform: be(be({}, Fa), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(Ve.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (DG) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return Ve.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, HI({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const whe = new RegExp('"', "ug"), XI = [1105920, 1112319], JI = be(be(be(be({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), Gpe), sme), eme), cS = Object.keys(JI).reduce((e, t) => (e[t.toLowerCase()] = JI[t], e), {}), $he = Object.keys(cS).reduce((e, t) => {
const r = cS[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function khe(e) {
const t = e.replace(whe, ""), r = Pme(t, 0), n = r >= XI[0] && r <= XI[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: tS(o ? t[0] : t),
isSecondary: n || o
};
}
function _he(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (cS[r] || {})[o] || $he[r];
}
function QI(e, t) {
const r = "".concat(lme).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const i = op(e.children).filter((f) => f.getAttribute(JO) === t)[0], s = uc.getComputedStyle(e, t), u = s.getPropertyValue("font-family"), c = u.match(pme), d = s.getPropertyValue("font-weight"), l = s.getPropertyValue("content");
if (i && !c)
return e.removeChild(i), n();
if (c && l !== "none" && l !== "") {
const f = s.getPropertyValue("content");
let p = _he(u, d);
const {
value: y,
isSecondary: m
} = khe(f), h = c[0].startsWith("FontAwesome");
let w = M3(p, y), $ = w;
if (h) {
const _ = Rme(y);
_.iconName && _.prefix && (w = _.iconName, p = _.prefix);
}
if (w && !m && (!i || i.getAttribute(C3) !== p || i.getAttribute(N3) !== $)) {
e.setAttribute(r, $), i && e.removeChild(i);
const _ = fhe(), {
extra: S
} = _;
S.attributes[JO] = t, iS(w, p).then((b) => {
const F = D3(be(be({}, _), {}, {
icons: {
main: b,
mask: iU()
},
prefix: p,
iconName: $,
extra: S,
watchable: !0
})), z = Fr.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(z, e.firstChild) : e.appendChild(z), z.outerHTML = F.map((q) => Ab(q)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function Ohe(e) {
return Promise.all([QI(e, "::before"), QI(e, "::after")]);
}
function She(e) {
return e.parentNode !== document.head && !~ume.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(JO) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function ZI(e) {
if (hs)
return new Promise((t, r) => {
const n = op(e.querySelectorAll("*")).filter(She).map(Ohe), o = F3.begin("searchPseudoElements");
fU(), Promise.all(n).then(() => {
o(), lS(), t();
}).catch(() => {
o(), lS(), r();
});
});
}
var Ehe = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = ZI, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Fr
} = t;
Ve.searchPseudoElements && ZI(r);
};
}
};
let ej = !1;
var Ahe = {
mixout() {
return {
dom: {
unwatch() {
fU(), ej = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
YI(nS("mutationObserverCallbacks", {}));
},
noAuto() {
she();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
ej ? lS() : YI(nS("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const tj = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var Phe = {
mixout() {
return {
parse: {
transform: (e) => tj(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = tj(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: be({}, f.outer),
children: [{
tag: "g",
attributes: be({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: be(be({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const P2 = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function rj(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function Che(e) {
return e.tag === "g" ? e.children : [e];
}
var Nhe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? tx(r.split(" ").map((o) => o.trim())) : iU();
return n.prefix || (n.prefix = fc()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = kme({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: be(be({}, P2), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(rj)
} : {}, m = {
tag: "g",
attributes: be({}, f.inner),
children: [rj(be({
tag: c.tag,
attributes: be(be({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: be({}, f.outer),
children: [m]
}, w = "mask-".concat(i || Tg()), $ = "clip-".concat(i || Tg()), _ = {
tag: "mask",
attributes: be(be({}, P2), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: Che(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: be({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, P2)
}), {
children: r,
attributes: n
};
};
}
}, The = {
provides(e) {
let t = !1;
uc.matchMedia && (t = uc.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: be(be({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = be(be({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: be(be({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: be(be({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: be(be({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: be(be({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: be(be({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: be(be({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: be(be({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, Ihe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, jhe = [Sme, bhe, yhe, vhe, xhe, Ehe, Ahe, Phe, Nhe, The, Ihe];
Gme(jhe, {
mixoutsTo: io
});
io.noAuto;
io.config;
io.library;
io.dom;
const uS = io.parse;
io.findIconDefinition;
io.toHtml;
const Rhe = io.icon;
io.layer;
io.text;
io.counter;
function Mhe(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var ky = { exports: {} }, _y = { exports: {} }, qt = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var nj;
function Dhe() {
if (nj) return qt;
nj = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return qt.AsyncMode = u, qt.ConcurrentMode = c, qt.ContextConsumer = s, qt.ContextProvider = i, qt.Element = t, qt.ForwardRef = d, qt.Fragment = n, qt.Lazy = y, qt.Memo = p, qt.Portal = r, qt.Profiler = a, qt.StrictMode = o, qt.Suspense = l, qt.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, qt.isConcurrentMode = S, qt.isContextConsumer = function(b) {
return _(b) === s;
}, qt.isContextProvider = function(b) {
return _(b) === i;
}, qt.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, qt.isForwardRef = function(b) {
return _(b) === d;
}, qt.isFragment = function(b) {
return _(b) === n;
}, qt.isLazy = function(b) {
return _(b) === y;
}, qt.isMemo = function(b) {
return _(b) === p;
}, qt.isPortal = function(b) {
return _(b) === r;
}, qt.isProfiler = function(b) {
return _(b) === a;
}, qt.isStrictMode = function(b) {
return _(b) === o;
}, qt.isSuspense = function(b) {
return _(b) === l;
}, qt.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, qt.typeOf = _, qt;
}
var Kt = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var oj;
function Fhe() {
return oj || (oj = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
Kt.AsyncMode = b, Kt.ConcurrentMode = F, Kt.ContextConsumer = z, Kt.ContextProvider = q, Kt.Element = Y, Kt.ForwardRef = B, Kt.Fragment = Z, Kt.Lazy = M, Kt.Memo = te, Kt.Portal = G, Kt.Profiler = H, Kt.StrictMode = U, Kt.Suspense = W, Kt.isAsyncMode = ee, Kt.isConcurrentMode = v, Kt.isContextConsumer = g, Kt.isContextProvider = O, Kt.isElement = P, Kt.isForwardRef = A, Kt.isFragment = T, Kt.isLazy = N, Kt.isMemo = C, Kt.isPortal = I, Kt.isProfiler = j, Kt.isStrictMode = R, Kt.isSuspense = Q, Kt.isValidElementType = _, Kt.typeOf = S;
}()), Kt;
}
var aj;
function pU() {
return aj || (aj = 1, process.env.NODE_ENV === "production" ? _y.exports = Dhe() : _y.exports = Fhe()), _y.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var C2, ij;
function Lhe() {
if (ij) return C2;
ij = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return C2 = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, C2;
}
var N2, sj;
function z3() {
if (sj) return N2;
sj = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return N2 = e, N2;
}
var T2, lj;
function mU() {
return lj || (lj = 1, T2 = Function.call.bind(Object.prototype.hasOwnProperty)), T2;
}
var I2, cj;
function zhe() {
if (cj) return I2;
cj = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ z3(), r = {}, n = /* @__PURE__ */ mU();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, I2 = o, I2;
}
var j2, uj;
function Whe() {
if (uj) return j2;
uj = 1;
var e = pU(), t = Lhe(), r = /* @__PURE__ */ z3(), n = /* @__PURE__ */ mU(), o = /* @__PURE__ */ zhe(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return j2 = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(Q, k) {
var oe = W(k);
return oe === "symbol" ? String(k) : k;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, j2;
}
var R2, fj;
function Vhe() {
if (fj) return R2;
fj = 1;
var e = /* @__PURE__ */ z3();
function t() {
}
function r() {
}
return r.resetWarningCache = t, R2 = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, R2;
}
var dj;
function Hhe() {
if (dj) return ky.exports;
if (dj = 1, process.env.NODE_ENV !== "production") {
var e = pU(), t = !0;
ky.exports = /* @__PURE__ */ Whe()(e.isElement, t);
} else
ky.exports = /* @__PURE__ */ Vhe()();
return ky.exports;
}
var Ghe = /* @__PURE__ */ Hhe();
const Pt = /* @__PURE__ */ Mhe(Ghe);
function pj(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function xa(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? pj(Object(r), !0).forEach(function(n) {
Tf(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : pj(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function P1(e) {
"@babel/helpers - typeof";
return P1 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, P1(e);
}
function Tf(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function Uhe(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function Bhe(e, t) {
if (e == null) return {};
var r = Uhe(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function fS(e) {
return Yhe(e) || qhe(e) || Khe(e) || Xhe();
}
function Yhe(e) {
if (Array.isArray(e)) return dS(e);
}
function qhe(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function Khe(e, t) {
if (e) {
if (typeof e == "string") return dS(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return dS(e, t);
}
}
function dS(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function Xhe() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function Jhe(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, Tf(t, "fa-".concat(w), typeof w < "u" && w !== null), Tf(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), Tf(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), Tf(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function Qhe(e) {
return e = e - 0, e === e;
}
function hU(e) {
return Qhe(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var Zhe = ["style"];
function ege(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function tge(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = hU(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[ege(o)] = a : t[o] = a, t;
}, {});
}
function gU(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return gU(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = tge(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[hU(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = Bhe(r, Zhe);
return o.attrs.style = xa(xa({}, o.attrs.style), i), e.apply(void 0, [t.tag, xa(xa({}, o.attrs), s)].concat(fS(n)));
}
var bU = !1;
try {
bU = process.env.NODE_ENV === "production";
} catch {
}
function rge() {
if (!bU && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function mj(e) {
if (e && P1(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (uS.icon)
return uS.icon(e);
if (e === null)
return null;
if (e && P1(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function M2(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Tf({}, e, t) : {};
}
var hj = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, To = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = xa(xa({}, hj), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = mj(n), l = M2("classes", [].concat(fS(Jhe(r)), fS((i || "").split(" ")))), f = M2("transform", typeof r.transform == "string" ? uS.transform(r.transform) : r.transform), p = M2("mask", mj(o)), y = Rhe(d, xa(xa(xa(xa({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return rge("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
hj.hasOwnProperty(w) || (h[w] = r[w]);
}), nge(m[0], h);
});
To.displayName = "FontAwesomeIcon";
To.propTypes = {
beat: Pt.bool,
border: Pt.bool,
beatFade: Pt.bool,
bounce: Pt.bool,
className: Pt.string,
fade: Pt.bool,
flash: Pt.bool,
mask: Pt.oneOfType([Pt.object, Pt.array, Pt.string]),
maskId: Pt.string,
fixedWidth: Pt.bool,
inverse: Pt.bool,
flip: Pt.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: Pt.oneOfType([Pt.object, Pt.array, Pt.string]),
listItem: Pt.bool,
pull: Pt.oneOf(["right", "left"]),
pulse: Pt.bool,
rotation: Pt.oneOf([0, 90, 180, 270]),
shake: Pt.bool,
size: Pt.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: Pt.bool,
spinPulse: Pt.bool,
spinReverse: Pt.bool,
symbol: Pt.oneOfType([Pt.bool, Pt.string]),
title: Pt.string,
titleId: Pt.string,
transform: Pt.oneOfType([Pt.string, Pt.object]),
swapOpacity: Pt.bool
};
var nge = gU.bind(null, ae.createElement);
/*!
* Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
* Copyright 2024 Fonticons, Inc.
*/
const oge = {
prefix: "fas",
iconName: "user",
icon: [448, 512, [128100, 62144], "f007", "M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512l388.6 0c16.4 0 29.7-13.3 29.7-29.7C448 383.8 368.2 304 269.7 304l-91.4 0z"]
}, age = {
prefix: "fas",
iconName: "star",
icon: [576, 512, [11088, 61446], "f005", "M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z"]
}, ige = {
prefix: "fas",
iconName: "coin-front",
icon: [512, 512, [], "e3fc", "M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM256 96a160 160 0 1 1 0 320 160 160 0 1 1 0-320zm0 352a192 192 0 1 0 0-384 192 192 0 1 0 0 384zm24-264c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 144c0 13.3 10.7 24 24 24s24-10.7 24-24l0-144z"]
}, sge = {
prefix: "fas",
iconName: "palette",
icon: [512, 512, [127912], "f53f", "M512 256c0 .9 0 1.8 0 2.7c-.4 36.5-33.6 61.3-70.1 61.3L344 320c-26.5 0-48 21.5-48 48c0 3.4 .4 6.7 1 9.9c2.1 10.2 6.5 20 10.8 29.9c6.1 13.8 12.1 27.5 12.1 42c0 31.8-21.6 60.7-53.4 62c-3.5 .1-7 .2-10.6 .2C114.6 512 0 397.4 0 256S114.6 0 256 0S512 114.6 512 256zM128 288a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm0-96a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm96 96a32 32 0 1 0 0-64 32 32 0 1 0 0 64z"]
}, lge = {
prefix: "fas",
iconName: "volume-high",
icon: [640, 512, [128266, "volume-up"], "f028", "M533.6 32.5C598.5 85.2 640 165.8 640 256s-41.5 170.7-106.4 223.5c-10.3 8.4-25.4 6.8-33.8-3.5s-6.8-25.4 3.5-33.8C557.5 398.2 592 331.2 592 256s-34.5-142.2-88.7-186.3c-10.3-8.4-11.8-23.5-3.5-33.8s23.5-11.8 33.8-3.5zM473.1 107c43.2 35.2 70.9 88.9 70.9 149s-27.7 113.8-70.9 149c-10.3 8.4-25.4 6.8-33.8-3.5s-6.8-25.4 3.5-33.8C475.3 341.3 496 301.1 496 256s-20.7-85.3-53.2-111.8c-10.3-8.4-11.8-23.5-3.5-33.8s23.5-11.8 33.8-3.5zm-60.5 74.5C434.1 199.1 448 225.9 448 256s-13.9 56.9-35.4 74.5c-10.3 8.4-25.4 6.8-33.8-3.5s-6.8-25.4 3.5-33.8C393.1 284.4 400 271 400 256s-6.9-28.4-17.7-37.3c-10.3-8.4-11.8-23.5-3.5-33.8s23.5-11.8 33.8-3.5zM301.1 34.8C312.6 40 320 51.4 320 64l0 384c0 12.6-7.4 24-18.9 29.2s-25 3.1-34.4-5.3L131.8 352 64 352c-35.3 0-64-28.7-64-64l0-64c0-35.3 28.7-64 64-64l67.8 0L266.7 40.1c9.4-8.4 22.9-10.4 34.4-5.3z"]
}, cge = {
prefix: "fas",
iconName: "route",
icon: [512, 512, [], "f4d7", "M512 96c0 50.2-59.1 125.1-84.6 155c-3.8 4.4-9.4 6.1-14.5 5L320 256c-17.7 0-32 14.3-32 32s14.3 32 32 32l96 0c53 0 96 43 96 96s-43 96-96 96l-276.4 0c8.7-9.9 19.3-22.6 30-36.8c6.3-8.4 12.8-17.6 19-27.2L416 448c17.7 0 32-14.3 32-32s-14.3-32-32-32l-96 0c-53 0-96-43-96-96s43-96 96-96l39.8 0c-21-31.5-39.8-67.7-39.8-96c0-53 43-96 96-96s96 43 96 96zM117.1 489.1c-3.8 4.3-7.2 8.1-10.1 11.3l-1.8 2-.2-.2c-6 4.6-14.6 4-20-1.8C59.8 473 0 402.5 0 352c0-53 43-96 96-96s96 43 96 96c0 30-21.1 67-43.5 97.9c-10.7 14.7-21.7 28-30.8 38.5l-.6 .7zM128 352a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM416 128a32 32 0 1 0 0-64 32 32 0 1 0 0 64z"]
}, nx = {
prefix: "fas",
iconName: "spinner-third",
icon: [512, 512, [], "f3f4", "M224 32c0-17.7 14.3-32 32-32C397.4 0 512 114.6 512 256c0 46.6-12.5 90.4-34.3 128c-8.8 15.3-28.4 20.5-43.7 11.7s-20.5-28.4-11.7-43.7c16.3-28.2 25.7-61 25.7-96c0-106-86-192-192-192c-17.7 0-32-14.3-32-32z"]
}, yU = {
prefix: "fas",
iconName: "circle-info",
icon: [512, 512, ["info-circle"], "f05a", "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336l24 0 0-64-24 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l48 0c13.3 0 24 10.7 24 24l0 88 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-80 0c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"]
}, gj = yU, uge = {
prefix: "fas",
iconName: "gear",
icon: [512, 512, [9881, "cog"], "f013", "M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"]
}, fge = uge, dge = {
prefix: "fas",
iconName: "grip-vertical",
icon: [320, 512, [], "f58e", "M40 352l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zm192 0l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 320c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 192l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 160c-22.1 0-40-17.9-40-40L0 72C0 49.9 17.9 32 40 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40z"]
}, pge = {
prefix: "fas",
iconName: "credit-card",
icon: [576, 512, [128179, 62083, "credit-card-alt"], "f09d", "M64 32C28.7 32 0 60.7 0 96l0 32 576 0 0-32c0-35.3-28.7-64-64-64L64 32zM576 224L0 224 0 416c0 35.3 28.7 64 64 64l448 0c35.3 0 64-28.7 64-64l0-192zM112 352l64 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-64 0c-8.8 0-16-7.2-16-16s7.2-16 16-16zm112 16c0-8.8 7.2-16 16-16l128 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-128 0c-8.8 0-16-7.2-16-16z"]
}, Oy = {
prefix: "fas",
iconName: "play",
icon: [384, 512, [9654], "f04b", "M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80L0 432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z"]
}, W3 = "-", mge = (e) => {
const t = gge(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (i) => {
const s = i.split(W3);
return s[0] === "" && s.length !== 1 && s.shift(), vU(s, t) || hge(i);
},
getConflictingClassGroupIds: (i, s) => {
const u = r[i] || [];
return s && n[i] ? [...u, ...n[i]] : u;
}
};
}, vU = (e, t) => {
var i;
if (e.length === 0)
return t.classGroupId;
const r = e[0], n = t.nextPart.get(r), o = n ? vU(e.slice(1), n) : void 0;
if (o)
return o;
if (t.validators.length === 0)
return;
const a = e.join(W3);
return (i = t.validators.find(({
validator: s
}) => s(a))) == null ? void 0 : i.classGroupId;
}, bj = /^\[(.+)\]$/, hge = (e) => {
if (bj.test(e)) {
const t = bj.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, gge = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return yge(Object.entries(e.classGroups), r).forEach(([a, i]) => {
pS(i, n, a, t);
}), n;
}, pS = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : yj(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (bge(o)) {
pS(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
pS(i, yj(t, a), r, n);
});
});
}, yj = (e, t) => {
let r = e;
return t.split(W3).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, bge = (e) => e.isThemeGetter, yge = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, vge = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, xU = "!", xge = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith(xU), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, wge = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, $ge = (e) => ({
cache: vge(e.cacheSize),
parseClassName: xge(e),
...mge(e)
}), kge = /\s+/, _ge = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(kge);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = wge(d).join(":"), w = l ? h + xU : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function Oge() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = wU(t)) && (n && (n += " "), n += r);
return n;
}
const wU = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = wU(e[n])) && (r && (r += " "), r += t);
return r;
};
function Sge(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = $ge(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = _ge(u, r);
return o(u, d), d;
}
return function() {
return a(Oge.apply(null, arguments));
};
}
const Sr = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, $U = /^\[(?:([a-z-]+):)?(.+)\]$/i, Ege = /^\d+\/\d+$/, Age = /* @__PURE__ */ new Set(["px", "full", "screen"]), Pge = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, Cge = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, Nge = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, Tge = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, Ige = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, xi = (e) => cd(e) || Age.has(e) || Ege.test(e), al = (e) => ap(e, "length", Wge), cd = (e) => !!e && !Number.isNaN(Number(e)), D2 = (e) => ap(e, "number", cd), Sm = (e) => !!e && Number.isInteger(Number(e)), jge = (e) => e.endsWith("%") && cd(e.slice(0, -1)), ft = (e) => $U.test(e), il = (e) => Pge.test(e), Rge = /* @__PURE__ */ new Set(["length", "size", "percentage"]), Mge = (e) => ap(e, Rge, kU), Dge = (e) => ap(e, "position", kU), Fge = /* @__PURE__ */ new Set(["image", "url"]), Lge = (e) => ap(e, Fge, Hge), zge = (e) => ap(e, "", Vge), Em = () => !0, ap = (e, t, r) => {
const n = $U.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, Wge = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
Cge.test(e) && !Nge.test(e)
), kU = () => !1, Vge = (e) => Tge.test(e), Hge = (e) => Ige.test(e), Gge = () => {
const e = Sr("colors"), t = Sr("spacing"), r = Sr("blur"), n = Sr("brightness"), o = Sr("borderColor"), a = Sr("borderRadius"), i = Sr("borderSpacing"), s = Sr("borderWidth"), u = Sr("contrast"), c = Sr("grayscale"), d = Sr("hueRotate"), l = Sr("invert"), f = Sr("gap"), p = Sr("gradientColorStops"), y = Sr("gradientColorStopPositions"), m = Sr("inset"), h = Sr("margin"), w = Sr("opacity"), $ = Sr("padding"), _ = Sr("saturate"), S = Sr("scale"), b = Sr("sepia"), F = Sr("skew"), z = Sr("space"), q = Sr("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", ft, t], M = () => [ft, t], te = () => ["", xi, al], G = () => ["auto", cd, ft], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", ft], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [cd, ft];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [Em],
spacing: [xi, al],
blur: ["none", "", il, ft],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", il, ft],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [jge, al],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", ft]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [il]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), ft]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", Sm, ft]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", ft]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", Sm, ft]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [Em]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", Sm, ft]
}, ft]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [Em]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [Sm, ft]
}, ft]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", ft]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", ft]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", ft, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [ft, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [ft, t, "none", "full", "min", "max", "fit", "prose", {
screen: [il]
}, il]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [ft, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [ft, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [ft, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [ft, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", il, al]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", D2]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [Em]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", ft]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", cd, D2]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", xi, ft]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", ft]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", ft]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", xi, al]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", xi, ft]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", ft]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", ft]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), Dge]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", Mge]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, Lge]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [xi, ft]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [xi, al]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [xi, al]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", il, zge]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [Em]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", il, ft]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", ft]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", ft]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", ft]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [Sm, ft]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", ft]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", ft]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", ft]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [xi, al, D2]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, Uge = /* @__PURE__ */ Sge(Gge);
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function Bge(e, t, r) {
return (t = qge(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function vj(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function ye(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? vj(Object(r), !0).forEach(function(n) {
Bge(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : vj(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function Yge(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function qge(e) {
var t = Yge(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const xj = () => {
};
let V3 = {}, _U = {}, OU = null, SU = {
mark: xj,
measure: xj
};
try {
typeof window < "u" && (V3 = window), typeof document < "u" && (_U = document), typeof MutationObserver < "u" && (OU = MutationObserver), typeof performance < "u" && (SU = performance);
} catch {
}
const {
userAgent: wj = ""
} = V3.navigator || {}, pc = V3, Lr = _U, $j = OU, Sy = SU;
pc.document;
const gs = !!Lr.documentElement && !!Lr.head && typeof Lr.addEventListener == "function" && typeof Lr.createElement == "function", EU = ~wj.indexOf("MSIE") || ~wj.indexOf("Trident/");
var Kge = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, Xge = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, AU = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, Jge = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, PU = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], $n = "classic", ox = "duotone", Qge = "sharp", Zge = "sharp-duotone", CU = [$n, ox, Qge, Zge], ebe = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, tbe = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, rbe = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), nbe = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, obe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], kj = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, abe = ["kit"], ibe = {
kit: {
"fa-kit": "fak"
}
}, sbe = ["fak", "fakd"], lbe = {
kit: {
fak: "fa-kit"
}
}, _j = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, Ey = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, cbe = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], ube = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], fbe = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, dbe = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, pbe = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, mS = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, mbe = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], hS = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...cbe, ...mbe], hbe = ["solid", "regular", "light", "thin", "duotone", "brands"], NU = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], gbe = NU.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), bbe = [...Object.keys(pbe), ...hbe, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", Ey.GROUP, Ey.SWAP_OPACITY, Ey.PRIMARY, Ey.SECONDARY].concat(NU.map((e) => "".concat(e, "x"))).concat(gbe.map((e) => "w-".concat(e))), ybe = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const Bi = "___FONT_AWESOME___", gS = 16, TU = "fa", IU = "svg-inline--fa", Tu = "data-fa-i2svg", bS = "data-fa-pseudo-element", vbe = "data-fa-pseudo-element-pending", H3 = "data-prefix", G3 = "data-icon", Oj = "fontawesome-i2svg", xbe = "async", wbe = ["HTML", "HEAD", "STYLE", "SCRIPT"], jU = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function Pb(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[$n];
}
});
}
const RU = ye({}, AU);
RU[$n] = ye(ye(ye(ye({}, {
"fa-duotone": "duotone"
}), AU[$n]), kj.kit), kj["kit-duotone"]);
const $be = Pb(RU), yS = ye({}, nbe);
yS[$n] = ye(ye(ye(ye({}, {
duotone: "fad"
}), yS[$n]), _j.kit), _j["kit-duotone"]);
const Sj = Pb(yS), vS = ye({}, mS);
vS[$n] = ye(ye({}, vS[$n]), lbe.kit);
const U3 = Pb(vS), xS = ye({}, dbe);
xS[$n] = ye(ye({}, xS[$n]), ibe.kit);
Pb(xS);
const kbe = Kge, MU = "fa-layers-text", _be = Xge, Obe = ye({}, ebe);
Pb(Obe);
const Sbe = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], F2 = Jge, Ebe = [...abe, ...bbe], Dh = pc.FontAwesomeConfig || {};
function Abe(e) {
var t = Lr.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function Pbe(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Lr && typeof Lr.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = Pbe(Abe(t));
n != null && (Dh[r] = n);
});
const DU = {
styleDefault: "solid",
familyDefault: $n,
cssPrefix: TU,
replacementClass: IU,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Dh.familyPrefix && (Dh.cssPrefix = Dh.familyPrefix);
const Ld = ye(ye({}, DU), Dh);
Ld.autoReplaceSvg || (Ld.observeMutations = !1);
const He = {};
Object.keys(DU).forEach((e) => {
Object.defineProperty(He, e, {
enumerable: !0,
set: function(t) {
Ld[e] = t, Fh.forEach((r) => r(He));
},
get: function() {
return Ld[e];
}
});
});
Object.defineProperty(He, "familyPrefix", {
enumerable: !0,
set: function(e) {
Ld.cssPrefix = e, Fh.forEach((t) => t(He));
},
get: function() {
return Ld.cssPrefix;
}
});
pc.FontAwesomeConfig = He;
const Fh = [];
function Cbe(e) {
return Fh.push(e), () => {
Fh.splice(Fh.indexOf(e), 1);
};
}
const sl = gS, za = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function Nbe(e) {
if (!e || !gs)
return;
const t = Lr.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Lr.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Lr.head.insertBefore(t, n), e;
}
const Tbe = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function jg() {
let e = 12, t = "";
for (; e-- > 0; )
t += Tbe[Math.random() * 62 | 0];
return t;
}
function ip(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function B3(e) {
return e.classList ? ip(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function FU(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function Ibe(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(FU(e[r]), '" '), "").trim();
}
function ax(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function Y3(e) {
return e.size !== za.size || e.x !== za.x || e.y !== za.y || e.rotate !== za.rotate || e.flipX || e.flipY;
}
function jbe(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function Rbe(e) {
let {
transform: t,
width: r = gS,
height: n = gS,
startCentered: o = !1
} = e, a = "";
return o && EU ? a += "translate(".concat(t.x / sl - r / 2, "em, ").concat(t.y / sl - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / sl, "em), calc(-50% + ").concat(t.y / sl, "em)) ") : a += "translate(".concat(t.x / sl, "em, ").concat(t.y / sl, "em) "), a += "scale(".concat(t.size / sl * (t.flipX ? -1 : 1), ", ").concat(t.size / sl * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var Mbe = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function LU() {
const e = TU, t = IU, r = He.cssPrefix, n = He.replacementClass;
let o = Mbe;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let Ej = !1;
function L2() {
He.autoAddCss && !Ej && (Nbe(LU()), Ej = !0);
}
var Dbe = {
mixout() {
return {
dom: {
css: LU,
insertCss: L2
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
L2();
},
beforeI2svg() {
L2();
}
};
}
};
const Yi = pc || {};
Yi[Bi] || (Yi[Bi] = {});
Yi[Bi].styles || (Yi[Bi].styles = {});
Yi[Bi].hooks || (Yi[Bi].hooks = {});
Yi[Bi].shims || (Yi[Bi].shims = []);
var Wa = Yi[Bi];
const zU = [], WU = function() {
Lr.removeEventListener("DOMContentLoaded", WU), C1 = 1, zU.map((e) => e());
};
let C1 = !1;
gs && (C1 = (Lr.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Lr.readyState), C1 || Lr.addEventListener("DOMContentLoaded", WU));
function Fbe(e) {
gs && (C1 ? setTimeout(e, 0) : zU.push(e));
}
function Cb(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? FU(e) : "<".concat(t, " ").concat(Ibe(r), ">").concat(n.map(Cb).join(""), "</").concat(t, ">");
}
function Aj(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var z2 = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function Lbe(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function VU(e) {
const t = Lbe(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function zbe(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function Pj(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function wS(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = Pj(t);
typeof Wa.hooks.addPack == "function" && !n ? Wa.hooks.addPack(e, Pj(t)) : Wa.styles[e] = ye(ye({}, Wa.styles[e] || {}), o), e === "fas" && wS("fa", t);
}
const {
styles: Rg,
shims: Wbe
} = Wa, HU = Object.keys(U3), Vbe = HU.reduce((e, t) => (e[t] = Object.keys(U3[t]), e), {});
let q3 = null, GU = {}, UU = {}, BU = {}, YU = {}, qU = {};
function Hbe(e) {
return ~Ebe.indexOf(e);
}
function Gbe(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !Hbe(o) ? o : null;
}
const KU = () => {
const e = (n) => z2(Rg, (o, a, i) => (o[i] = z2(a, n, {}), o), {});
GU = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), UU = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), qU = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in Rg || He.autoFetchSvg, r = z2(Wbe, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
BU = r.names, YU = r.unicodes, q3 = ix(He.styleDefault, {
family: He.familyDefault
});
};
Cbe((e) => {
q3 = ix(e.styleDefault, {
family: He.familyDefault
});
});
KU();
function K3(e, t) {
return (GU[e] || {})[t];
}
function Ube(e, t) {
return (UU[e] || {})[t];
}
function au(e, t) {
return (qU[e] || {})[t];
}
function XU(e) {
return BU[e] || {
prefix: null,
iconName: null
};
}
function Bbe(e) {
const t = YU[e], r = K3("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function mc() {
return q3;
}
const JU = () => ({
prefix: null,
iconName: null,
rest: []
});
function Ybe(e) {
let t = $n;
const r = HU.reduce((n, o) => (n[o] = "".concat(He.cssPrefix, "-").concat(o), n), {});
return CU.forEach((n) => {
(e.includes(r[n]) || e.some((o) => Vbe[n].includes(o))) && (t = n);
}), t;
}
function ix(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = $n
} = t, n = $be[r][e];
if (r === ox && !e)
return "fad";
const o = Sj[r][e] || Sj[r][n], a = e in Wa.styles ? e : null;
return o || a || null;
}
function qbe(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = Gbe(He.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function Cj(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function sx(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = hS.concat(ube), a = Cj(e.filter((l) => o.includes(l))), i = Cj(e.filter((l) => !hS.includes(l))), s = a.filter((l) => (n = l, !PU.includes(l))), [u = null] = s, c = Ybe(a), d = ye(ye({}, qbe(i)), {}, {
prefix: ix(u, {
family: c
})
});
return ye(ye(ye({}, d), Qbe({
values: e,
family: c,
styles: Rg,
config: He,
canonical: d,
givenPrefix: n
})), Kbe(r, n, d));
}
function Kbe(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? XU(o) : {}, i = au(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !Rg.far && Rg.fas && !He.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const Xbe = CU.filter((e) => e !== $n || e !== ox), Jbe = Object.keys(mS).filter((e) => e !== $n).map((e) => Object.keys(mS[e])).flat();
function Qbe(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === ox, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && Xbe.includes(r) && (Object.keys(a).find((l) => Jbe.includes(l)) || i.autoFetchSvg)) {
const l = rbe.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = au(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = mc() || "fas"), n;
}
let Zbe = class {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = ye(ye({}, this.definitions[a] || {}), o[a]), wS(a, o[a]);
const i = U3[$n][a];
i && wS(i, o[a]), KU();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}, Nj = [], If = {};
const ud = {}, eye = Object.keys(ud);
function tye(e, t) {
let {
mixoutsTo: r
} = t;
return Nj = e, If = {}, Object.keys(ud).forEach((n) => {
eye.indexOf(n) === -1 && delete ud[n];
}), Nj.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
If[i] || (If[i] = []), If[i].push(a[i]);
});
}
n.provides && n.provides(ud);
}), r;
}
function $S(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (If[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function Iu(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(If[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function hc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return ud[e] ? ud[e].apply(null, t) : void 0;
}
function kS(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || mc();
if (t)
return t = au(r, t) || t, Aj(QU.definitions, r, t) || Aj(Wa.styles, r, t);
}
const QU = new Zbe(), rye = () => {
He.autoReplaceSvg = !1, He.observeMutations = !1, Iu("noAuto");
}, nye = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return gs ? (Iu("beforeI2svg", e), hc("pseudoElements2svg", e), hc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
He.autoReplaceSvg === !1 && (He.autoReplaceSvg = !0), He.observeMutations = !0, Fbe(() => {
aye({
autoReplaceSvgRoot: t
}), Iu("watch", e);
});
}
}, oye = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: au(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = ix(e[0]);
return {
prefix: r,
iconName: au(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(He.cssPrefix, "-")) > -1 || e.match(kbe))) {
const t = sx(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || mc(),
iconName: au(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = mc();
return {
prefix: t,
iconName: au(t, e) || e
};
}
}
}, so = {
noAuto: rye,
config: He,
dom: nye,
parse: oye,
library: QU,
findIconDefinition: kS,
toHtml: Cb
}, aye = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Lr
} = e;
(Object.keys(Wa.styles).length > 0 || He.autoFetchSvg) && gs && He.autoReplaceSvg && so.dom.i2svg({
node: t
});
};
function lx(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => Cb(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!gs) return;
const r = Lr.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function iye(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (Y3(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = ax(ye(ye({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function sye(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(He.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: ye(ye({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function X3(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = sbe.includes(n), m = [He.replacementClass, o ? "".concat(He.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: ye(ye({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[Tu] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || jg())
},
children: [s]
}), delete h.attributes.title);
const $ = ye(ye({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: ye(ye({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? hc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : hc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? sye($) : iye($);
}
function Tj(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = ye(ye(ye({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[Tu] = "");
const c = ye({}, i.styles);
Y3(o) && (c.transform = Rbe({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = ax(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function lye(e) {
const {
content: t,
title: r,
extra: n
} = e, o = ye(ye(ye({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = ax(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: W2
} = Wa;
function _S(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(He.cssPrefix, "-").concat(F2.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(He.cssPrefix, "-").concat(F2.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(He.cssPrefix, "-").concat(F2.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const cye = {
found: !1,
width: 512,
height: 512
};
function uye(e, t) {
!jU && !He.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function OS(e, t) {
let r = t;
return t === "fa" && He.styleDefault !== null && (t = mc()), new Promise((n, o) => {
if (r === "fa") {
const a = XU(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && W2[t] && W2[t][e]) {
const a = W2[t][e];
return n(_S(a));
}
uye(e, t), n(ye(ye({}, cye), {}, {
icon: He.showMissingIcons && e ? hc("missingIconAbstract") || {} : {}
}));
});
}
const Ij = () => {
}, SS = He.measurePerformance && Sy && Sy.mark && Sy.measure ? Sy : {
mark: Ij,
measure: Ij
}, sh = 'FA "6.7.2"', fye = (e) => (SS.mark("".concat(sh, " ").concat(e, " begins")), () => ZU(e)), ZU = (e) => {
SS.mark("".concat(sh, " ").concat(e, " ends")), SS.measure("".concat(sh, " ").concat(e), "".concat(sh, " ").concat(e, " begins"), "".concat(sh, " ").concat(e, " ends"));
};
var J3 = {
begin: fye,
end: ZU
};
const Rv = () => {
};
function jj(e) {
return typeof (e.getAttribute ? e.getAttribute(Tu) : null) == "string";
}
function dye(e) {
const t = e.getAttribute ? e.getAttribute(H3) : null, r = e.getAttribute ? e.getAttribute(G3) : null;
return t && r;
}
function pye(e) {
return e && e.classList && e.classList.contains && e.classList.contains(He.replacementClass);
}
function mye() {
return He.autoReplaceSvg === !0 ? Mv.replace : Mv[He.autoReplaceSvg] || Mv.replace;
}
function hye(e) {
return Lr.createElementNS("http://www.w3.org/2000/svg", e);
}
function gye(e) {
return Lr.createElement(e);
}
function eB(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? hye : gye
} = t;
if (typeof e == "string")
return Lr.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(eB(o, {
ceFn: r
}));
}), n;
}
function bye(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const Mv = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(eB(r), t);
}), t.getAttribute(Tu) === null && He.keepOriginalSource) {
let r = Lr.createComment(bye(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~B3(t).indexOf(He.replacementClass))
return Mv.replace(e);
const n = new RegExp("".concat(He.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === He.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => Cb(a)).join(`
`);
t.setAttribute(Tu, ""), t.innerHTML = o;
}
};
function Rj(e) {
e();
}
function tB(e, t) {
const r = typeof t == "function" ? t : Rv;
if (e.length === 0)
r();
else {
let n = Rj;
He.mutateApproach === xbe && (n = pc.requestAnimationFrame || Rj), n(() => {
const o = mye(), a = J3.begin("mutate");
e.map(o), a(), r();
});
}
}
let Q3 = !1;
function rB() {
Q3 = !0;
}
function ES() {
Q3 = !1;
}
let N1 = null;
function Mj(e) {
if (!$j || !He.observeMutations)
return;
const {
treeCallback: t = Rv,
nodeCallback: r = Rv,
pseudoElementsCallback: n = Rv,
observeMutationsRoot: o = Lr
} = e;
N1 = new $j((a) => {
if (Q3) return;
const i = mc();
ip(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !jj(s.addedNodes[0]) && (He.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && He.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && jj(s.target) && ~Sbe.indexOf(s.attributeName))
if (s.attributeName === "class" && dye(s.target)) {
const {
prefix: u,
iconName: c
} = sx(B3(s.target));
s.target.setAttribute(H3, u || i), c && s.target.setAttribute(G3, c);
} else pye(s.target) && r(s.target);
});
}), gs && N1.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function yye() {
N1 && N1.disconnect();
}
function vye(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function xye(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = sx(B3(e));
return o.prefix || (o.prefix = mc()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = Ube(o.prefix, e.innerText) || K3(o.prefix, VU(e.innerText))), !o.iconName && He.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function wye(e) {
const t = ip(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return He.autoA11y && (r ? t["aria-labelledby"] = "".concat(He.replacementClass, "-title-").concat(n || jg()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function $ye() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: za,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function Dj(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = xye(e), a = wye(e), i = $S("parseNodeAttributes", {}, e);
let s = t.styleParser ? vye(e) : [];
return ye({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: za,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: kye
} = Wa;
function nB(e) {
const t = He.autoReplaceSvg === "nest" ? Dj(e, {
styleParser: !1
}) : Dj(e);
return ~t.extra.classes.indexOf(MU) ? hc("generateLayersText", e, t) : hc("generateSvgReplacementMutation", e, t);
}
function _ye() {
return [...obe, ...hS];
}
function Fj(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!gs) return Promise.resolve();
const r = Lr.documentElement.classList, n = (d) => r.add("".concat(Oj, "-").concat(d)), o = (d) => r.remove("".concat(Oj, "-").concat(d)), a = He.autoFetchSvg ? _ye() : PU.concat(Object.keys(kye));
a.includes("fa") || a.push("fa");
const i = [".".concat(MU, ":not([").concat(Tu, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(Tu, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = ip(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = J3.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = nB(l);
f && d.push(f);
} catch (f) {
jU || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
tB(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function Oye(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
nB(e).then((r) => {
r && tB([r], t);
});
}
function Sye(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : kS(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : kS(o || {})), e(n, ye(ye({}, r), {}, {
mask: o
}));
};
}
const Eye = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = za,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return lx(ye({
type: "icon"
}, e), () => (Iu("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), He.autoA11y && (i ? c["aria-labelledby"] = "".concat(He.replacementClass, "-title-").concat(s || jg()) : (c["aria-hidden"] = "true", c.focusable = "false")), X3({
icons: {
main: _S(p),
mask: o ? _S(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: ye(ye({}, za), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var Aye = {
mixout() {
return {
icon: Sye(Eye)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = Fj, e.nodeCallback = Oye, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Lr,
callback: n = () => {
}
} = t;
return Fj(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([OS(n, i), c.iconName ? OS(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, X3({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = ax(i);
s.length > 0 && (n.style = s);
let u;
return Y3(a) && (u = hc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, Pye = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return lx({
type: "layer"
}, () => {
Iu("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(He.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, Cye = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return lx({
type: "counter",
content: e
}, () => (Iu("beforeDOMElementCreation", {
content: e,
params: t
}), lye({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(He.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, Nye = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = za,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return lx({
type: "text",
content: e
}, () => (Iu("beforeDOMElementCreation", {
content: e,
params: t
}), Tj({
content: e,
transform: ye(ye({}, za), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(He.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (EU) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return He.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, Tj({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const Tye = new RegExp('"', "ug"), Lj = [1105920, 1112319], zj = ye(ye(ye(ye({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), tbe), ybe), fbe), AS = Object.keys(zj).reduce((e, t) => (e[t.toLowerCase()] = zj[t], e), {}), Iye = Object.keys(AS).reduce((e, t) => {
const r = AS[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function jye(e) {
const t = e.replace(Tye, ""), r = zbe(t, 0), n = r >= Lj[0] && r <= Lj[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: VU(o ? t[0] : t),
isSecondary: n || o
};
}
function Rye(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (AS[r] || {})[o] || Iye[r];
}
function Wj(e, t) {
const r = "".concat(vbe).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = ip(e.children).filter((l) => l.getAttribute(bS) === t)[0], i = pc.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(_be), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = Rye(s, c);
const {
value: p,
isSecondary: y
} = jye(l), m = u[0].startsWith("FontAwesome");
let h = K3(f, p), w = h;
if (m) {
const $ = Bbe(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(H3) !== f || a.getAttribute(G3) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = $ye(), {
extra: _
} = $;
_.attributes[bS] = t, OS(h, f).then((S) => {
const b = X3(ye(ye({}, $), {}, {
icons: {
main: S,
mask: JU()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = Lr.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => Cb(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function Mye(e) {
return Promise.all([Wj(e, "::before"), Wj(e, "::after")]);
}
function Dye(e) {
return e.parentNode !== document.head && !~wbe.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(bS) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function Vj(e) {
if (gs)
return new Promise((t, r) => {
const n = ip(e.querySelectorAll("*")).filter(Dye).map(Mye), o = J3.begin("searchPseudoElements");
rB(), Promise.all(n).then(() => {
o(), ES(), t();
}).catch(() => {
o(), ES(), r();
});
});
}
var Fye = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = Vj, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Lr
} = t;
He.searchPseudoElements && Vj(r);
};
}
};
let Hj = !1;
var Lye = {
mixout() {
return {
dom: {
unwatch() {
rB(), Hj = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
Mj($S("mutationObserverCallbacks", {}));
},
noAuto() {
yye();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
Hj ? ES() : Mj($S("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const Gj = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var zye = {
mixout() {
return {
parse: {
transform: (e) => Gj(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = Gj(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: ye({}, f.outer),
children: [{
tag: "g",
attributes: ye({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: ye(ye({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const V2 = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function Uj(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function Wye(e) {
return e.tag === "g" ? e.children : [e];
}
var Vye = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? sx(r.split(" ").map((o) => o.trim())) : JU();
return n.prefix || (n.prefix = mc()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = jbe({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: ye(ye({}, V2), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(Uj)
} : {}, m = {
tag: "g",
attributes: ye({}, f.inner),
children: [Uj(ye({
tag: c.tag,
attributes: ye(ye({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: ye({}, f.outer),
children: [m]
}, w = "mask-".concat(i || jg()), $ = "clip-".concat(i || jg()), _ = {
tag: "mask",
attributes: ye(ye({}, V2), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: Wye(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: ye({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, V2)
}), {
children: r,
attributes: n
};
};
}
}, Hye = {
provides(e) {
let t = !1;
pc.matchMedia && (t = pc.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: ye(ye({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = ye(ye({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: ye(ye({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: ye(ye({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: ye(ye({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: ye(ye({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: ye(ye({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: ye(ye({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: ye(ye({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, Gye = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, Uye = [Dbe, Aye, Pye, Cye, Nye, Fye, Lye, zye, Vye, Hye, Gye];
tye(Uye, {
mixoutsTo: so
});
so.noAuto;
so.config;
so.library;
so.dom;
const PS = so.parse;
so.findIconDefinition;
so.toHtml;
const Bye = so.icon;
so.layer;
so.text;
so.counter;
function Yye(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var Ay = { exports: {} }, H2 = { exports: {} }, Xt = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var Bj;
function qye() {
if (Bj) return Xt;
Bj = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return Xt.AsyncMode = u, Xt.ConcurrentMode = c, Xt.ContextConsumer = s, Xt.ContextProvider = i, Xt.Element = t, Xt.ForwardRef = d, Xt.Fragment = n, Xt.Lazy = y, Xt.Memo = p, Xt.Portal = r, Xt.Profiler = a, Xt.StrictMode = o, Xt.Suspense = l, Xt.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, Xt.isConcurrentMode = S, Xt.isContextConsumer = function(b) {
return _(b) === s;
}, Xt.isContextProvider = function(b) {
return _(b) === i;
}, Xt.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, Xt.isForwardRef = function(b) {
return _(b) === d;
}, Xt.isFragment = function(b) {
return _(b) === n;
}, Xt.isLazy = function(b) {
return _(b) === y;
}, Xt.isMemo = function(b) {
return _(b) === p;
}, Xt.isPortal = function(b) {
return _(b) === r;
}, Xt.isProfiler = function(b) {
return _(b) === a;
}, Xt.isStrictMode = function(b) {
return _(b) === o;
}, Xt.isSuspense = function(b) {
return _(b) === l;
}, Xt.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, Xt.typeOf = _, Xt;
}
var lr = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var Yj;
function Kye() {
return Yj || (Yj = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
lr.AsyncMode = b, lr.ConcurrentMode = F, lr.ContextConsumer = z, lr.ContextProvider = q, lr.Element = Y, lr.ForwardRef = B, lr.Fragment = Z, lr.Lazy = M, lr.Memo = te, lr.Portal = G, lr.Profiler = H, lr.StrictMode = U, lr.Suspense = W, lr.isAsyncMode = ee, lr.isConcurrentMode = v, lr.isContextConsumer = g, lr.isContextProvider = O, lr.isElement = P, lr.isForwardRef = A, lr.isFragment = T, lr.isLazy = N, lr.isMemo = C, lr.isPortal = I, lr.isProfiler = j, lr.isStrictMode = R, lr.isSuspense = Q, lr.isValidElementType = _, lr.typeOf = S;
}()), lr;
}
var qj;
function oB() {
return qj || (qj = 1, process.env.NODE_ENV === "production" ? H2.exports = qye() : H2.exports = Kye()), H2.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var G2, Kj;
function Xye() {
if (Kj) return G2;
Kj = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return G2 = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, G2;
}
var U2, Xj;
function Z3() {
if (Xj) return U2;
Xj = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return U2 = e, U2;
}
var Jj, Qj;
function aB() {
return Qj || (Qj = 1, Jj = Function.call.bind(Object.prototype.hasOwnProperty)), Jj;
}
var B2, Zj;
function Jye() {
if (Zj) return B2;
Zj = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ Z3(), r = {}, n = /* @__PURE__ */ aB();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, B2 = o, B2;
}
var Y2, e9;
function Qye() {
if (e9) return Y2;
e9 = 1;
var e = oB(), t = Xye(), r = /* @__PURE__ */ Z3(), n = /* @__PURE__ */ aB(), o = /* @__PURE__ */ Jye(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return Y2 = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, Y2;
}
var q2, t9;
function Zye() {
if (t9) return q2;
t9 = 1;
var e = /* @__PURE__ */ Z3();
function t() {
}
function r() {
}
return r.resetWarningCache = t, q2 = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, q2;
}
var r9;
function eve() {
if (r9) return Ay.exports;
if (r9 = 1, process.env.NODE_ENV !== "production") {
var e = oB(), t = !0;
Ay.exports = /* @__PURE__ */ Qye()(e.isElement, t);
} else
Ay.exports = /* @__PURE__ */ Zye()();
return Ay.exports;
}
var tve = /* @__PURE__ */ eve();
const Ct = /* @__PURE__ */ Yye(tve);
function n9(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function wa(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? n9(Object(r), !0).forEach(function(n) {
jf(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : n9(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function T1(e) {
"@babel/helpers - typeof";
return T1 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, T1(e);
}
function jf(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function rve(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function nve(e, t) {
if (e == null) return {};
var r = rve(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function CS(e) {
return ove(e) || ave(e) || ive(e) || sve();
}
function ove(e) {
if (Array.isArray(e)) return NS(e);
}
function ave(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function ive(e, t) {
if (e) {
if (typeof e == "string") return NS(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return NS(e, t);
}
}
function NS(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function sve() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function lve(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, jf(t, "fa-".concat(w), typeof w < "u" && w !== null), jf(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), jf(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), jf(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function cve(e) {
return e = e - 0, e === e;
}
function iB(e) {
return cve(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var uve = ["style"];
function fve(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function dve(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = iB(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[fve(o)] = a : t[o] = a, t;
}, {});
}
function sB(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return sB(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = dve(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[iB(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = nve(r, uve);
return o.attrs.style = wa(wa({}, o.attrs.style), i), e.apply(void 0, [t.tag, wa(wa({}, o.attrs), s)].concat(CS(n)));
}
var lB = !1;
try {
lB = process.env.NODE_ENV === "production";
} catch {
}
function pve() {
if (!lB && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function o9(e) {
if (e && T1(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (PS.icon)
return PS.icon(e);
if (e === null)
return null;
if (e && T1(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function K2(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? jf({}, e, t) : {};
}
var a9 = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, Kn = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = wa(wa({}, a9), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = o9(n), l = K2("classes", [].concat(CS(lve(r)), CS((i || "").split(" ")))), f = K2("transform", typeof r.transform == "string" ? PS.transform(r.transform) : r.transform), p = K2("mask", o9(o)), y = Bye(d, wa(wa(wa(wa({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return pve("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
a9.hasOwnProperty(w) || (h[w] = r[w]);
}), mve(m[0], h);
});
Kn.displayName = "FontAwesomeIcon";
Kn.propTypes = {
beat: Ct.bool,
border: Ct.bool,
beatFade: Ct.bool,
bounce: Ct.bool,
className: Ct.string,
fade: Ct.bool,
flash: Ct.bool,
mask: Ct.oneOfType([Ct.object, Ct.array, Ct.string]),
maskId: Ct.string,
fixedWidth: Ct.bool,
inverse: Ct.bool,
flip: Ct.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: Ct.oneOfType([Ct.object, Ct.array, Ct.string]),
listItem: Ct.bool,
pull: Ct.oneOf(["right", "left"]),
pulse: Ct.bool,
rotation: Ct.oneOf([0, 90, 180, 270]),
shake: Ct.bool,
size: Ct.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: Ct.bool,
spinPulse: Ct.bool,
spinReverse: Ct.bool,
symbol: Ct.oneOfType([Ct.bool, Ct.string]),
title: Ct.string,
titleId: Ct.string,
transform: Ct.oneOfType([Ct.string, Ct.object]),
swapOpacity: Ct.bool
};
var mve = sB.bind(null, ae.createElement);
const eP = "-", hve = (e) => {
const t = bve(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(eP);
return a[0] === "" && a.length !== 1 && a.shift(), cB(a, t) || gve(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, cB = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? cB(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(eP);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, i9 = /^\[(.+)\]$/, gve = (e) => {
if (i9.test(e)) {
const t = i9.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, bve = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return vve(Object.entries(e.classGroups), r).forEach(([o, a]) => {
TS(a, n, o, t);
}), n;
}, TS = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : s9(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (yve(o)) {
TS(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
TS(i, s9(t, a), r, n);
});
});
}, s9 = (e, t) => {
let r = e;
return t.split(eP).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, yve = (e) => e.isThemeGetter, vve = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, xve = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, uB = "!", wve = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith(uB), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, $ve = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, kve = (e) => ({
cache: xve(e.cacheSize),
parseClassName: wve(e),
...hve(e)
}), _ve = /\s+/, Ove = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(_ve);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = $ve(d).join(":"), w = l ? h + uB : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function Sve() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = fB(t)) && (n && (n += " "), n += r);
return n;
}
const fB = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = fB(e[n])) && (r && (r += " "), r += t);
return r;
};
function Eve(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = kve(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = Ove(u, r);
return o(u, d), d;
}
return function() {
return a(Sve.apply(null, arguments));
};
}
const Er = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, dB = /^\[(?:([a-z-]+):)?(.+)\]$/i, Ave = /^\d+\/\d+$/, Pve = /* @__PURE__ */ new Set(["px", "full", "screen"]), Cve = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, Nve = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, Tve = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, Ive = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, jve = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, wi = (e) => fd(e) || Pve.has(e) || Ave.test(e), ll = (e) => sp(e, "length", Vve), fd = (e) => !!e && !Number.isNaN(Number(e)), X2 = (e) => sp(e, "number", fd), Am = (e) => !!e && Number.isInteger(Number(e)), Rve = (e) => e.endsWith("%") && fd(e.slice(0, -1)), dt = (e) => dB.test(e), cl = (e) => Cve.test(e), Mve = /* @__PURE__ */ new Set(["length", "size", "percentage"]), Dve = (e) => sp(e, Mve, pB), Fve = (e) => sp(e, "position", pB), Lve = /* @__PURE__ */ new Set(["image", "url"]), zve = (e) => sp(e, Lve, Gve), Wve = (e) => sp(e, "", Hve), Pm = () => !0, sp = (e, t, r) => {
const n = dB.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, Vve = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
Nve.test(e) && !Tve.test(e)
), pB = () => !1, Hve = (e) => Ive.test(e), Gve = (e) => jve.test(e), Uve = () => {
const e = Er("colors"), t = Er("spacing"), r = Er("blur"), n = Er("brightness"), o = Er("borderColor"), a = Er("borderRadius"), i = Er("borderSpacing"), s = Er("borderWidth"), u = Er("contrast"), c = Er("grayscale"), d = Er("hueRotate"), l = Er("invert"), f = Er("gap"), p = Er("gradientColorStops"), y = Er("gradientColorStopPositions"), m = Er("inset"), h = Er("margin"), w = Er("opacity"), $ = Er("padding"), _ = Er("saturate"), S = Er("scale"), b = Er("sepia"), F = Er("skew"), z = Er("space"), q = Er("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", dt, t], M = () => [dt, t], te = () => ["", wi, ll], G = () => ["auto", fd, dt], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", dt], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [fd, dt];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [Pm],
spacing: [wi, ll],
blur: ["none", "", cl, dt],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", cl, dt],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [Rve, ll],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", dt]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [cl]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), dt]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", Am, dt]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", dt]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", Am, dt]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [Pm]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", Am, dt]
}, dt]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [Pm]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [Am, dt]
}, dt]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", dt]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", dt]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", dt, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [dt, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [dt, t, "none", "full", "min", "max", "fit", "prose", {
screen: [cl]
}, cl]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [dt, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [dt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [dt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [dt, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", cl, ll]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", X2]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [Pm]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", dt]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", fd, X2]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", wi, dt]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", dt]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", dt]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", wi, ll]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", wi, dt]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", dt]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", dt]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), Fve]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", Dve]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, zve]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [wi, dt]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [wi, ll]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [wi, ll]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", cl, Wve]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [Pm]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", cl, dt]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", dt]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", dt]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", dt]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [Am, dt]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", dt]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", dt]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", dt]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [wi, ll, X2]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, l9 = /* @__PURE__ */ Eve(Uve);
/*!
* Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
* Copyright 2024 Fonticons, Inc.
*/
const hf = {
prefix: "fas",
iconName: "spinner-third",
icon: [512, 512, [], "f3f4", "M224 32c0-17.7 14.3-32 32-32C397.4 0 512 114.6 512 256c0 46.6-12.5 90.4-34.3 128c-8.8 15.3-28.4 20.5-43.7 11.7s-20.5-28.4-11.7-43.7c16.3-28.2 25.7-61 25.7-96c0-106-86-192-192-192c-17.7 0-32-14.3-32-32z"]
}, Io = ({
icon: e,
iconClassName: t,
children: r,
className: n,
htmlFor: o,
variant: a = "primary",
disabled: i,
iconFlip: s = !1,
loading: u,
as: c = "button",
href: d,
target: l,
...f
}) => {
function p(h) {
switch (h) {
case "secondary":
return "i-am-a-unique-string bg-ui-controls text-base-fg border border-ui-controls-border hover:bg-ui-controls/80 focus-visible:outline-secondary";
case "action":
return "bg-ui-controls text-base-fg border border-ui-controls-border hover:bg-ui-controls/80 focus-visible:outline-action";
case "destructive":
return "bg-red hover:bg-red/90 text-white focus-visible:outline-red";
case "ghost":
return "bg-transparent text-base-fg border border-ui-controls-border/70 hover:bg-ui-controls/30 focus-visible:outline-primary-600";
case "primary":
default:
return "bg-primary hover:bg-primary-400 text-white focus-visible:outline-primary-600";
}
}
const y = l9(
i || u ? "opacity-50 pointer-events-none" : ""
), m = l9(
"w-fit text-sm font-medium rounded-lg px-3 py-2 border border-transparent shadow-sm focus-visible:outline focus-visible:outline-0 focus-visible:outline-offset-0 transition-all duration-150 flex gap-2 items-center justify-center active:scale-95 transform",
p(a),
n,
y
);
return o ? /* @__PURE__ */ Te("label", { className: m, htmlFor: o, style: f.style, children: [
u && !s ? /* @__PURE__ */ K(Kn, { icon: hf, className: "animate-spin" }) : /* @__PURE__ */ K(rn, { children: e && !s ? /* @__PURE__ */ K(Kn, { icon: e, className: t }) : null }),
r,
u && s ? /* @__PURE__ */ K(Kn, { icon: hf, className: "animate-spin" }) : /* @__PURE__ */ K(rn, { children: e && s ? /* @__PURE__ */ K(Kn, { icon: e, className: t }) : null })
] }) : c === "link" && d ? /* @__PURE__ */ Te(
"a",
{
href: d,
className: m,
style: f.style,
...f,
target: l,
children: [
u && !s ? /* @__PURE__ */ K(Kn, { icon: hf, className: "animate-spin" }) : /* @__PURE__ */ K(rn, { children: e && !s ? /* @__PURE__ */ K(Kn, { icon: e, className: t }) : null }),
r,
u && s ? /* @__PURE__ */ K(Kn, { icon: hf, className: "animate-spin" }) : /* @__PURE__ */ K(rn, { children: e && s ? /* @__PURE__ */ K(Kn, { icon: e, className: t }) : null })
]
}
) : /* @__PURE__ */ Te(
"button",
{
className: m,
disabled: i || u,
...f,
htmlFor: o,
children: [
u && !s ? /* @__PURE__ */ K(Kn, { icon: hf, className: "animate-spin" }) : /* @__PURE__ */ K(rn, { children: e && !s ? /* @__PURE__ */ K(Kn, { icon: e, className: t }) : null }),
r,
u && s ? /* @__PURE__ */ K(Kn, { icon: hf, className: "animate-spin" }) : /* @__PURE__ */ K(rn, { children: e && s ? /* @__PURE__ */ K(Kn, { icon: e, className: t }) : null })
]
}
);
};
var Dv = /* @__PURE__ */ ((e) => (e[e.ALL = 0] = "ALL", e[e.FEATURED = 1] = "FEATURED", e[e.MINE = 2] = "MINE", e[e.BOOKMARKED = 3] = "BOOKMARKED", e))(Dv || {});
Dv.FEATURED, Dv.MINE, Dv.BOOKMARKED;
function Bve(e, t = !1) {
return window.__TAURI_INTERNALS__.transformCallback(e, t);
}
async function jo(e, t = {}, r) {
return window.__TAURI_INTERNALS__.invoke(e, t, r);
}
var c9;
(function(e) {
e.WINDOW_RESIZED = "tauri://resize", e.WINDOW_MOVED = "tauri://move", e.WINDOW_CLOSE_REQUESTED = "tauri://close-requested", e.WINDOW_DESTROYED = "tauri://destroyed", e.WINDOW_FOCUS = "tauri://focus", e.WINDOW_BLUR = "tauri://blur", e.WINDOW_SCALE_FACTOR_CHANGED = "tauri://scale-change", e.WINDOW_THEME_CHANGED = "tauri://theme-changed", e.WINDOW_CREATED = "tauri://window-created", e.WEBVIEW_CREATED = "tauri://webview-created", e.DRAG_ENTER = "tauri://drag-enter", e.DRAG_OVER = "tauri://drag-over", e.DRAG_DROP = "tauri://drag-drop", e.DRAG_LEAVE = "tauri://drag-leave";
})(c9 || (c9 = {}));
async function Yve(e, t) {
window.__TAURI_EVENT_PLUGIN_INTERNALS__.unregisterListener(e, t), await jo("plugin:event|unlisten", {
event: e,
eventId: t
});
}
async function qve(e, t, r) {
var n;
const o = (n = void 0) !== null && n !== void 0 ? n : { kind: "Any" };
return jo("plugin:event|listen", {
event: e,
target: o,
handler: Bve(t)
}).then((a) => async () => Yve(e, a));
}
const Kve = async () => await jo("get_fal_api_key_command"), Xve = async (e) => await jo("set_fal_api_key_command", {
request: {
key: e
}
}), Jve = async () => await jo("midjourney_get_credential_info_command"), Qve = async () => {
try {
return await jo("get_provider_order_command");
} catch (e) {
throw e;
}
};
var $a = /* @__PURE__ */ ((e) => (e.ArtCraft = "artcraft", e.Fal = "fal", e.Sora = "sora", e))($a || {});
const Zve = async (e) => await jo("set_provider_order_command", {
request: {
providers: e.providers
}
}), I1 = async () => await jo("get_app_preferences_command");
var Vl = /* @__PURE__ */ ((e) => (e.PreferredDownloadDirectory = "preferred_download_directory", e.PlaySounds = "play_sounds", e.EnqueueSuccessSound = "enqueue_success_sound", e.EnqueueFailureSound = "enqueue_failure_sound", e.GenerationSuccessSound = "generation_success_sound", e.GenerationFailureSound = "generation_failure_sound", e.GenerationEnqueueSound = "generation_enqueue_sound", e))(Vl || {});
const tu = async (e) => await jo("update_app_preferences_command", {
request: {
preference: e.preference,
value: e.value
}
});
var _f = /* @__PURE__ */ ((e) => (e.NotSetUp = "not_set_up", e.ExpiredOrError = "expired_or_error", e.Valid = "valid", e))(_f || {});
const u9 = async () => {
const e = await jo("check_sora_session_command");
return console.log(">>> sora result", e), e;
}, e1e = async () => await jo("sora_logout_command");
function t1e(e) {
ue(() => {
let t;
return (async () => t = await qve(
"sora-login-success",
(r) => {
e(r.payload);
}
))(), () => {
t && t();
};
}, [e]);
}
const r1e = async () => {
try {
return await jo("get_app_info_command");
} catch (e) {
throw e;
}
};
async function Mg(e, t = {}, r) {
return window.__TAURI_INTERNALS__.invoke(e, t, r);
}
async function n1e(e = {}) {
return typeof e == "object" && Object.freeze(e), await Mg("plugin:dialog|open", { options: e });
}
const tP = "-", o1e = (e) => {
const t = i1e(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(tP);
return a[0] === "" && a.length !== 1 && a.shift(), mB(a, t) || a1e(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, mB = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? mB(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(tP);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, f9 = /^\[(.+)\]$/, a1e = (e) => {
if (f9.test(e)) {
const t = f9.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, i1e = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return l1e(Object.entries(e.classGroups), r).forEach(([o, a]) => {
IS(a, n, o, t);
}), n;
}, IS = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : d9(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (s1e(o)) {
IS(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
IS(i, d9(t, a), r, n);
});
});
}, d9 = (e, t) => {
let r = e;
return t.split(tP).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, s1e = (e) => e.isThemeGetter, l1e = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, c1e = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, hB = "!", u1e = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith(hB), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, f1e = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, d1e = (e) => ({
cache: c1e(e.cacheSize),
parseClassName: u1e(e),
...o1e(e)
}), p1e = /\s+/, m1e = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(p1e);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = f1e(d).join(":"), w = l ? h + hB : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function h1e() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = gB(t)) && (n && (n += " "), n += r);
return n;
}
const gB = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = gB(e[n])) && (r && (r += " "), r += t);
return r;
};
function g1e(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = d1e(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = m1e(u, r);
return o(u, d), d;
}
return function() {
return a(h1e.apply(null, arguments));
};
}
const Ar = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, bB = /^\[(?:([a-z-]+):)?(.+)\]$/i, b1e = /^\d+\/\d+$/, y1e = /* @__PURE__ */ new Set(["px", "full", "screen"]), v1e = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, x1e = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, w1e = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, $1e = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, k1e = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, $i = (e) => dd(e) || y1e.has(e) || b1e.test(e), ul = (e) => lp(e, "length", N1e), dd = (e) => !!e && !Number.isNaN(Number(e)), J2 = (e) => lp(e, "number", dd), Cm = (e) => !!e && Number.isInteger(Number(e)), _1e = (e) => e.endsWith("%") && dd(e.slice(0, -1)), pt = (e) => bB.test(e), fl = (e) => v1e.test(e), O1e = /* @__PURE__ */ new Set(["length", "size", "percentage"]), S1e = (e) => lp(e, O1e, yB), E1e = (e) => lp(e, "position", yB), A1e = /* @__PURE__ */ new Set(["image", "url"]), P1e = (e) => lp(e, A1e, I1e), C1e = (e) => lp(e, "", T1e), Nm = () => !0, lp = (e, t, r) => {
const n = bB.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, N1e = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
x1e.test(e) && !w1e.test(e)
), yB = () => !1, T1e = (e) => $1e.test(e), I1e = (e) => k1e.test(e), j1e = () => {
const e = Ar("colors"), t = Ar("spacing"), r = Ar("blur"), n = Ar("brightness"), o = Ar("borderColor"), a = Ar("borderRadius"), i = Ar("borderSpacing"), s = Ar("borderWidth"), u = Ar("contrast"), c = Ar("grayscale"), d = Ar("hueRotate"), l = Ar("invert"), f = Ar("gap"), p = Ar("gradientColorStops"), y = Ar("gradientColorStopPositions"), m = Ar("inset"), h = Ar("margin"), w = Ar("opacity"), $ = Ar("padding"), _ = Ar("saturate"), S = Ar("scale"), b = Ar("sepia"), F = Ar("skew"), z = Ar("space"), q = Ar("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", pt, t], M = () => [pt, t], te = () => ["", $i, ul], G = () => ["auto", dd, pt], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", pt], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [dd, pt];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [Nm],
spacing: [$i, ul],
blur: ["none", "", fl, pt],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", fl, pt],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [_1e, ul],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", pt]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [fl]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), pt]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", Cm, pt]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", pt]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", Cm, pt]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [Nm]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", Cm, pt]
}, pt]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [Nm]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [Cm, pt]
}, pt]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", pt]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", pt]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", pt, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [pt, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [pt, t, "none", "full", "min", "max", "fit", "prose", {
screen: [fl]
}, fl]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [pt, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [pt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [pt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [pt, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", fl, ul]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", J2]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [Nm]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", pt]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", dd, J2]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", $i, pt]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", pt]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", pt]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", $i, ul]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", $i, pt]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", pt]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", pt]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), E1e]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", S1e]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, P1e]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [$i, pt]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [$i, ul]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [$i, ul]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", fl, C1e]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [Nm]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", fl, pt]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", pt]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", pt]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", pt]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [Cm, pt]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", pt]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", pt]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", pt]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [$i, ul, J2]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, R1e = /* @__PURE__ */ g1e(j1e), jn = ({
className: e,
children: t,
required: r,
...n
}) => /* @__PURE__ */ Te(
"label",
{
className: R1e("text-base-fg mb-2 text-[15px] font-medium", e),
...n,
children: [
t,
r && /* @__PURE__ */ K("span", { className: "ml-0.5 text-[#ff6467]", children: "*" })
]
}
), M1e = (e) => {
const [t, r] = de(void 0);
ue(() => {
(async () => {
const d = await I1();
console.log("prefs", d), r(d.preferences);
})();
}, []);
const n = (t == null ? void 0 : t.preferred_download_directory) || {}, o = "custom" in n ? n.custom : "", a = "system" in n ? "System Download Directory" : o, i = async () => {
const c = await I1();
console.log("prefs", c), r(c.preferences);
};
return /* @__PURE__ */ Te("div", { className: "space-y-4 text-base-fg", children: [
/* @__PURE__ */ Te("div", { className: "space-y-2", children: [
/* @__PURE__ */ K(jn, { htmlFor: "download-path", children: "Default Download Directory" }),
/* @__PURE__ */ K("p", { className: "opacity-80", children: "This is where downloads are placed after downloading. The current path is:" }),
/* @__PURE__ */ K("div", { className: "py-1.5 px-2 rounded-md mt-1 bg-ui-panel border border-ui-panel-border text-base-fg", children: /* @__PURE__ */ K("pre", { children: a }) })
] }),
/* @__PURE__ */ Te("div", { className: "flex gap-2", children: [
/* @__PURE__ */ K(Io, { variant: "primary", onClick: async () => {
let c = await n1e({
multiple: !1,
directory: !0,
defaultPath: o || void 0
});
c !== null && (await tu({
preference: Vl.PreferredDownloadDirectory,
value: {
custom: c
}
}), await i());
}, children: "Choose Directory" }),
/* @__PURE__ */ K(Io, { variant: "secondary", onClick: async () => {
await tu({
preference: Vl.PreferredDownloadDirectory,
value: {
system: "downloads"
}
}), await i();
}, children: "Use Default" })
] })
] });
};
var vB = (e) => {
throw TypeError(e);
}, xB = (e, t, r) => t.has(e) || vB("Cannot " + r), dl = (e, t, r) => (xB(e, t, "read from private field"), r ? r.call(e) : t.get(e)), wB = (e, t, r) => t.has(e) ? vB("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, r), p9 = (e, t, r, n) => (xB(e, t, "write to private field"), t.set(e, r), r), Tm = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {}, m9 = {};
/*!
* howler.js v2.2.4
* howlerjs.com
*
* (c) 2013-2020, James Simpson of GoldFire Studios
* goldfirestudios.com
*
* MIT License
*/
var h9;
function D1e() {
return h9 || (h9 = 1, function(e) {
(function() {
var t = function() {
this.init();
};
t.prototype = {
/**
* Initialize the global Howler object.
* @return {Howler}
*/
init: function() {
var l = this || r;
return l._counter = 1e3, l._html5AudioPool = [], l.html5PoolSize = 10, l._codecs = {}, l._howls = [], l._muted = !1, l._volume = 1, l._canPlayEvent = "canplaythrough", l._navigator = typeof window < "u" && window.navigator ? window.navigator : null, l.masterGain = null, l.noAudio = !1, l.usingWebAudio = !0, l.autoSuspend = !0, l.ctx = null, l.autoUnlock = !0, l._setup(), l;
},
/**
* Get/set the global volume for all sounds.
* @param {Float} vol Volume from 0.0 to 1.0.
* @return {Howler/Float} Returns self or current volume.
*/
volume: function(l) {
var f = this || r;
if (l = parseFloat(l), f.ctx || d(), typeof l < "u" && l >= 0 && l <= 1) {
if (f._volume = l, f._muted)
return f;
f.usingWebAudio && f.masterGain.gain.setValueAtTime(l, r.ctx.currentTime);
for (var p = 0; p < f._howls.length; p++)
if (!f._howls[p]._webAudio)
for (var y = f._howls[p]._getSoundIds(), m = 0; m < y.length; m++) {
var h = f._howls[p]._soundById(y[m]);
h && h._node && (h._node.volume = h._volume * l);
}
return f;
}
return f._volume;
},
/**
* Handle muting and unmuting globally.
* @param {Boolean} muted Is muted or not.
*/
mute: function(l) {
var f = this || r;
f.ctx || d(), f._muted = l, f.usingWebAudio && f.masterGain.gain.setValueAtTime(l ? 0 : f._volume, r.ctx.currentTime);
for (var p = 0; p < f._howls.length; p++)
if (!f._howls[p]._webAudio)
for (var y = f._howls[p]._getSoundIds(), m = 0; m < y.length; m++) {
var h = f._howls[p]._soundById(y[m]);
h && h._node && (h._node.muted = l ? !0 : h._muted);
}
return f;
},
/**
* Handle stopping all sounds globally.
*/
stop: function() {
for (var l = this || r, f = 0; f < l._howls.length; f++)
l._howls[f].stop();
return l;
},
/**
* Unload and destroy all currently loaded Howl objects.
* @return {Howler}
*/
unload: function() {
for (var l = this || r, f = l._howls.length - 1; f >= 0; f--)
l._howls[f].unload();
return l.usingWebAudio && l.ctx && typeof l.ctx.close < "u" && (l.ctx.close(), l.ctx = null, d()), l;
},
/**
* Check for codec support of specific extension.
* @param {String} ext Audio file extention.
* @return {Boolean}
*/
codecs: function(l) {
return (this || r)._codecs[l.replace(/^x-/, "")];
},
/**
* Setup various state values for global tracking.
* @return {Howler}
*/
_setup: function() {
var l = this || r;
if (l.state = l.ctx && l.ctx.state || "suspended", l._autoSuspend(), !l.usingWebAudio)
if (typeof Audio < "u")
try {
var f = new Audio();
typeof f.oncanplaythrough > "u" && (l._canPlayEvent = "canplay");
} catch {
l.noAudio = !0;
}
else
l.noAudio = !0;
try {
var f = new Audio();
f.muted && (l.noAudio = !0);
} catch {
}
return l.noAudio || l._setupCodecs(), l;
},
/**
* Check for browser support for various codecs and cache the results.
* @return {Howler}
*/
_setupCodecs: function() {
var l = this || r, f = null;
try {
f = typeof Audio < "u" ? new Audio() : null;
} catch {
return l;
}
if (!f || typeof f.canPlayType != "function")
return l;
var p = f.canPlayType("audio/mpeg;").replace(/^no$/, ""), y = l._navigator ? l._navigator.userAgent : "", m = y.match(/OPR\/(\d+)/g), h = m && parseInt(m[0].split("/")[1], 10) < 33, w = y.indexOf("Safari") !== -1 && y.indexOf("Chrome") === -1, $ = y.match(/Version\/(.*?) /), _ = w && $ && parseInt($[1], 10) < 15;
return l._codecs = {
mp3: !!(!h && (p || f.canPlayType("audio/mp3;").replace(/^no$/, ""))),
mpeg: !!p,
opus: !!f.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/, ""),
ogg: !!f.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, ""),
oga: !!f.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, ""),
wav: !!(f.canPlayType('audio/wav; codecs="1"') || f.canPlayType("audio/wav")).replace(/^no$/, ""),
aac: !!f.canPlayType("audio/aac;").replace(/^no$/, ""),
caf: !!f.canPlayType("audio/x-caf;").replace(/^no$/, ""),
m4a: !!(f.canPlayType("audio/x-m4a;") || f.canPlayType("audio/m4a;") || f.canPlayType("audio/aac;")).replace(/^no$/, ""),
m4b: !!(f.canPlayType("audio/x-m4b;") || f.canPlayType("audio/m4b;") || f.canPlayType("audio/aac;")).replace(/^no$/, ""),
mp4: !!(f.canPlayType("audio/x-mp4;") || f.canPlayType("audio/mp4;") || f.canPlayType("audio/aac;")).replace(/^no$/, ""),
weba: !!(!_ && f.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/, "")),
webm: !!(!_ && f.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/, "")),
dolby: !!f.canPlayType('audio/mp4; codecs="ec-3"').replace(/^no$/, ""),
flac: !!(f.canPlayType("audio/x-flac;") || f.canPlayType("audio/flac;")).replace(/^no$/, "")
}, l;
},
/**
* Some browsers/devices will only allow audio to be played after a user interaction.
* Attempt to automatically unlock audio on the first user interaction.
* Concept from: http://paulbakaus.com/tutorials/html5/web-audio-on-ios/
* @return {Howler}
*/
_unlockAudio: function() {
var l = this || r;
if (!(l._audioUnlocked || !l.ctx)) {
l._audioUnlocked = !1, l.autoUnlock = !1, !l._mobileUnloaded && l.ctx.sampleRate !== 44100 && (l._mobileUnloaded = !0, l.unload()), l._scratchBuffer = l.ctx.createBuffer(1, 1, 22050);
var f = function(p) {
for (; l._html5AudioPool.length < l.html5PoolSize; )
try {
var y = new Audio();
y._unlocked = !0, l._releaseHtml5Audio(y);
} catch {
l.noAudio = !0;
break;
}
for (var m = 0; m < l._howls.length; m++)
if (!l._howls[m]._webAudio)
for (var h = l._howls[m]._getSoundIds(), w = 0; w < h.length; w++) {
var $ = l._howls[m]._soundById(h[w]);
$ && $._node && !$._node._unlocked && ($._node._unlocked = !0, $._node.load());
}
l._autoResume();
var _ = l.ctx.createBufferSource();
_.buffer = l._scratchBuffer, _.connect(l.ctx.destination), typeof _.start > "u" ? _.noteOn(0) : _.start(0), typeof l.ctx.resume == "function" && l.ctx.resume(), _.onended = function() {
_.disconnect(0), l._audioUnlocked = !0, document.removeEventListener("touchstart", f, !0), document.removeEventListener("touchend", f, !0), document.removeEventListener("click", f, !0), document.removeEventListener("keydown", f, !0);
for (var S = 0; S < l._howls.length; S++)
l._howls[S]._emit("unlock");
};
};
return document.addEventListener("touchstart", f, !0), document.addEventListener("touchend", f, !0), document.addEventListener("click", f, !0), document.addEventListener("keydown", f, !0), l;
}
},
/**
* Get an unlocked HTML5 Audio object from the pool. If none are left,
* return a new Audio object and throw a warning.
* @return {Audio} HTML5 Audio object.
*/
_obtainHtml5Audio: function() {
var l = this || r;
if (l._html5AudioPool.length)
return l._html5AudioPool.pop();
var f = new Audio().play();
return f && typeof Promise < "u" && (f instanceof Promise || typeof f.then == "function") && f.catch(function() {
console.warn("HTML5 Audio pool exhausted, returning potentially locked audio object.");
}), new Audio();
},
/**
* Return an activated HTML5 Audio object to the pool.
* @return {Howler}
*/
_releaseHtml5Audio: function(l) {
var f = this || r;
return l._unlocked && f._html5AudioPool.push(l), f;
},
/**
* Automatically suspend the Web Audio AudioContext after no sound has played for 30 seconds.
* This saves processing/energy and fixes various browser-specific bugs with audio getting stuck.
* @return {Howler}
*/
_autoSuspend: function() {
var l = this;
if (!(!l.autoSuspend || !l.ctx || typeof l.ctx.suspend > "u" || !r.usingWebAudio)) {
for (var f = 0; f < l._howls.length; f++)
if (l._howls[f]._webAudio) {
for (var p = 0; p < l._howls[f]._sounds.length; p++)
if (!l._howls[f]._sounds[p]._paused)
return l;
}
return l._suspendTimer && clearTimeout(l._suspendTimer), l._suspendTimer = setTimeout(function() {
if (l.autoSuspend) {
l._suspendTimer = null, l.state = "suspending";
var y = function() {
l.state = "suspended", l._resumeAfterSuspend && (delete l._resumeAfterSuspend, l._autoResume());
};
l.ctx.suspend().then(y, y);
}
}, 3e4), l;
}
},
/**
* Automatically resume the Web Audio AudioContext when a new sound is played.
* @return {Howler}
*/
_autoResume: function() {
var l = this;
if (!(!l.ctx || typeof l.ctx.resume > "u" || !r.usingWebAudio))
return l.state === "running" && l.ctx.state !== "interrupted" && l._suspendTimer ? (clearTimeout(l._suspendTimer), l._suspendTimer = null) : l.state === "suspended" || l.state === "running" && l.ctx.state === "interrupted" ? (l.ctx.resume().then(function() {
l.state = "running";
for (var f = 0; f < l._howls.length; f++)
l._howls[f]._emit("resume");
}), l._suspendTimer && (clearTimeout(l._suspendTimer), l._suspendTimer = null)) : l.state === "suspending" && (l._resumeAfterSuspend = !0), l;
}
};
var r = new t(), n = function(l) {
var f = this;
if (!l.src || l.src.length === 0) {
console.error("An array of source files must be passed with any new Howl.");
return;
}
f.init(l);
};
n.prototype = {
/**
* Initialize a new Howl group object.
* @param {Object} o Passed in properties for this group.
* @return {Howl}
*/
init: function(l) {
var f = this;
return r.ctx || d(), f._autoplay = l.autoplay || !1, f._format = typeof l.format != "string" ? l.format : [l.format], f._html5 = l.html5 || !1, f._muted = l.mute || !1, f._loop = l.loop || !1, f._pool = l.pool || 5, f._preload = typeof l.preload == "boolean" || l.preload === "metadata" ? l.preload : !0, f._rate = l.rate || 1, f._sprite = l.sprite || {}, f._src = typeof l.src != "string" ? l.src : [l.src], f._volume = l.volume !== void 0 ? l.volume : 1, f._xhr = {
method: l.xhr && l.xhr.method ? l.xhr.method : "GET",
headers: l.xhr && l.xhr.headers ? l.xhr.headers : null,
withCredentials: l.xhr && l.xhr.withCredentials ? l.xhr.withCredentials : !1
}, f._duration = 0, f._state = "unloaded", f._sounds = [], f._endTimers = {}, f._queue = [], f._playLock = !1, f._onend = l.onend ? [{ fn: l.onend }] : [], f._onfade = l.onfade ? [{ fn: l.onfade }] : [], f._onload = l.onload ? [{ fn: l.onload }] : [], f._onloaderror = l.onloaderror ? [{ fn: l.onloaderror }] : [], f._onplayerror = l.onplayerror ? [{ fn: l.onplayerror }] : [], f._onpause = l.onpause ? [{ fn: l.onpause }] : [], f._onplay = l.onplay ? [{ fn: l.onplay }] : [], f._onstop = l.onstop ? [{ fn: l.onstop }] : [], f._onmute = l.onmute ? [{ fn: l.onmute }] : [], f._onvolume = l.onvolume ? [{ fn: l.onvolume }] : [], f._onrate = l.onrate ? [{ fn: l.onrate }] : [], f._onseek = l.onseek ? [{ fn: l.onseek }] : [], f._onunlock = l.onunlock ? [{ fn: l.onunlock }] : [], f._onresume = [], f._webAudio = r.usingWebAudio && !f._html5, typeof r.ctx < "u" && r.ctx && r.autoUnlock && r._unlockAudio(), r._howls.push(f), f._autoplay && f._queue.push({
event: "play",
action: function() {
f.play();
}
}), f._preload && f._preload !== "none" && f.load(), f;
},
/**
* Load the audio file.
* @return {Howler}
*/
load: function() {
var l = this, f = null;
if (r.noAudio) {
l._emit("loaderror", null, "No audio support.");
return;
}
typeof l._src == "string" && (l._src = [l._src]);
for (var p = 0; p < l._src.length; p++) {
var y, m;
if (l._format && l._format[p])
y = l._format[p];
else {
if (m = l._src[p], typeof m != "string") {
l._emit("loaderror", null, "Non-string found in selected audio sources - ignoring.");
continue;
}
y = /^data:audio\/([^;,]+);/i.exec(m), y || (y = /\.([^.]+)$/.exec(m.split("?", 1)[0])), y && (y = y[1].toLowerCase());
}
if (y || console.warn('No file extension was found. Consider using the "format" property or specify an extension.'), y && r.codecs(y)) {
f = l._src[p];
break;
}
}
if (!f) {
l._emit("loaderror", null, "No codec support for selected audio sources.");
return;
}
return l._src = f, l._state = "loading", window.location.protocol === "https:" && f.slice(0, 5) === "http:" && (l._html5 = !0, l._webAudio = !1), new o(l), l._webAudio && i(l), l;
},
/**
* Play a sound or resume previous playback.
* @param {String/Number} sprite Sprite name for sprite playback or sound id to continue previous.
* @param {Boolean} internal Internal Use: true prevents event firing.
* @return {Number} Sound ID.
*/
play: function(l, f) {
var p = this, y = null;
if (typeof l == "number")
y = l, l = null;
else {
if (typeof l == "string" && p._state === "loaded" && !p._sprite[l])
return null;
if (typeof l > "u" && (l = "__default", !p._playLock)) {
for (var m = 0, h = 0; h < p._sounds.length; h++)
p._sounds[h]._paused && !p._sounds[h]._ended && (m++, y = p._sounds[h]._id);
m === 1 ? l = null : y = null;
}
}
var w = y ? p._soundById(y) : p._inactiveSound();
if (!w)
return null;
if (y && !l && (l = w._sprite || "__default"), p._state !== "loaded") {
w._sprite = l, w._ended = !1;
var $ = w._id;
return p._queue.push({
event: "play",
action: function() {
p.play($);
}
}), $;
}
if (y && !w._paused)
return f || p._loadQueue("play"), w._id;
p._webAudio && r._autoResume();
var _ = Math.max(0, w._seek > 0 ? w._seek : p._sprite[l][0] / 1e3), S = Math.max(0, (p._sprite[l][0] + p._sprite[l][1]) / 1e3 - _), b = S * 1e3 / Math.abs(w._rate), F = p._sprite[l][0] / 1e3, z = (p._sprite[l][0] + p._sprite[l][1]) / 1e3;
w._sprite = l, w._ended = !1;
var q = function() {
w._paused = !1, w._seek = _, w._start = F, w._stop = z, w._loop = !!(w._loop || p._sprite[l][2]);
};
if (_ >= z) {
p._ended(w);
return;
}
var Y = w._node;
if (p._webAudio) {
var B = function() {
p._playLock = !1, q(), p._refreshBuffer(w);
var G = w._muted || p._muted ? 0 : w._volume;
Y.gain.setValueAtTime(G, r.ctx.currentTime), w._playStart = r.ctx.currentTime, typeof Y.bufferSource.start > "u" ? w._loop ? Y.bufferSource.noteGrainOn(0, _, 86400) : Y.bufferSource.noteGrainOn(0, _, S) : w._loop ? Y.bufferSource.start(0, _, 86400) : Y.bufferSource.start(0, _, S), b !== 1 / 0 && (p._endTimers[w._id] = setTimeout(p._ended.bind(p, w), b)), f || setTimeout(function() {
p._emit("play", w._id), p._loadQueue();
}, 0);
};
r.state === "running" && r.ctx.state !== "interrupted" ? B() : (p._playLock = !0, p.once("resume", B), p._clearTimer(w._id));
} else {
var Z = function() {
Y.currentTime = _, Y.muted = w._muted || p._muted || r._muted || Y.muted, Y.volume = w._volume * r.volume(), Y.playbackRate = w._rate;
try {
var G = Y.play();
if (G && typeof Promise < "u" && (G instanceof Promise || typeof G.then == "function") ? (p._playLock = !0, q(), G.then(function() {
p._playLock = !1, Y._unlocked = !0, f ? p._loadQueue() : p._emit("play", w._id);
}).catch(function() {
p._playLock = !1, p._emit("playerror", w._id, "Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction."), w._ended = !0, w._paused = !0;
})) : f || (p._playLock = !1, q(), p._emit("play", w._id)), Y.playbackRate = w._rate, Y.paused) {
p._emit("playerror", w._id, "Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction.");
return;
}
l !== "__default" || w._loop ? p._endTimers[w._id] = setTimeout(p._ended.bind(p, w), b) : (p._endTimers[w._id] = function() {
p._ended(w), Y.removeEventListener("ended", p._endTimers[w._id], !1);
}, Y.addEventListener("ended", p._endTimers[w._id], !1));
} catch (H) {
p._emit("playerror", w._id, H);
}
};
Y.src === "data:audio/wav;base64,UklGRigAAABXQVZFZm10IBIAAAABAAEARKwAAIhYAQACABAAAABkYXRhAgAAAAEA" && (Y.src = p._src, Y.load());
var M = window && window.ejecta || !Y.readyState && r._navigator.isCocoonJS;
if (Y.readyState >= 3 || M)
Z();
else {
p._playLock = !0, p._state = "loading";
var te = function() {
p._state = "loaded", Z(), Y.removeEventListener(r._canPlayEvent, te, !1);
};
Y.addEventListener(r._canPlayEvent, te, !1), p._clearTimer(w._id);
}
}
return w._id;
},
/**
* Pause playback and save current position.
* @param {Number} id The sound ID (empty to pause all in group).
* @return {Howl}
*/
pause: function(l) {
var f = this;
if (f._state !== "loaded" || f._playLock)
return f._queue.push({
event: "pause",
action: function() {
f.pause(l);
}
}), f;
for (var p = f._getSoundIds(l), y = 0; y < p.length; y++) {
f._clearTimer(p[y]);
var m = f._soundById(p[y]);
if (m && !m._paused && (m._seek = f.seek(p[y]), m._rateSeek = 0, m._paused = !0, f._stopFade(p[y]), m._node))
if (f._webAudio) {
if (!m._node.bufferSource)
continue;
typeof m._node.bufferSource.stop > "u" ? m._node.bufferSource.noteOff(0) : m._node.bufferSource.stop(0), f._cleanBuffer(m._node);
} else (!isNaN(m._node.duration) || m._node.duration === 1 / 0) && m._node.pause();
arguments[1] || f._emit("pause", m ? m._id : null);
}
return f;
},
/**
* Stop playback and reset to start.
* @param {Number} id The sound ID (empty to stop all in group).
* @param {Boolean} internal Internal Use: true prevents event firing.
* @return {Howl}
*/
stop: function(l, f) {
var p = this;
if (p._state !== "loaded" || p._playLock)
return p._queue.push({
event: "stop",
action: function() {
p.stop(l);
}
}), p;
for (var y = p._getSoundIds(l), m = 0; m < y.length; m++) {
p._clearTimer(y[m]);
var h = p._soundById(y[m]);
h && (h._seek = h._start || 0, h._rateSeek = 0, h._paused = !0, h._ended = !0, p._stopFade(y[m]), h._node && (p._webAudio ? h._node.bufferSource && (typeof h._node.bufferSource.stop > "u" ? h._node.bufferSource.noteOff(0) : h._node.bufferSource.stop(0), p._cleanBuffer(h._node)) : (!isNaN(h._node.duration) || h._node.duration === 1 / 0) && (h._node.currentTime = h._start || 0, h._node.pause(), h._node.duration === 1 / 0 && p._clearSound(h._node))), f || p._emit("stop", h._id));
}
return p;
},
/**
* Mute/unmute a single sound or all sounds in this Howl group.
* @param {Boolean} muted Set to true to mute and false to unmute.
* @param {Number} id The sound ID to update (omit to mute/unmute all).
* @return {Howl}
*/
mute: function(l, f) {
var p = this;
if (p._state !== "loaded" || p._playLock)
return p._queue.push({
event: "mute",
action: function() {
p.mute(l, f);
}
}), p;
if (typeof f > "u")
if (typeof l == "boolean")
p._muted = l;
else
return p._muted;
for (var y = p._getSoundIds(f), m = 0; m < y.length; m++) {
var h = p._soundById(y[m]);
h && (h._muted = l, h._interval && p._stopFade(h._id), p._webAudio && h._node ? h._node.gain.setValueAtTime(l ? 0 : h._volume, r.ctx.currentTime) : h._node && (h._node.muted = r._muted ? !0 : l), p._emit("mute", h._id));
}
return p;
},
/**
* Get/set the volume of this sound or of the Howl group. This method can optionally take 0, 1 or 2 arguments.
* volume() -> Returns the group's volume value.
* volume(id) -> Returns the sound id's current volume.
* volume(vol) -> Sets the volume of all sounds in this Howl group.
* volume(vol, id) -> Sets the volume of passed sound id.
* @return {Howl/Number} Returns self or current volume.
*/
volume: function() {
var l = this, f = arguments, p, y;
if (f.length === 0)
return l._volume;
if (f.length === 1 || f.length === 2 && typeof f[1] > "u") {
var m = l._getSoundIds(), h = m.indexOf(f[0]);
h >= 0 ? y = parseInt(f[0], 10) : p = parseFloat(f[0]);
} else f.length >= 2 && (p = parseFloat(f[0]), y = parseInt(f[1], 10));
var w;
if (typeof p < "u" && p >= 0 && p <= 1) {
if (l._state !== "loaded" || l._playLock)
return l._queue.push({
event: "volume",
action: function() {
l.volume.apply(l, f);
}
}), l;
typeof y > "u" && (l._volume = p), y = l._getSoundIds(y);
for (var $ = 0; $ < y.length; $++)
w = l._soundById(y[$]), w && (w._volume = p, f[2] || l._stopFade(y[$]), l._webAudio && w._node && !w._muted ? w._node.gain.setValueAtTime(p, r.ctx.currentTime) : w._node && !w._muted && (w._node.volume = p * r.volume()), l._emit("volume", w._id));
} else
return w = y ? l._soundById(y) : l._sounds[0], w ? w._volume : 0;
return l;
},
/**
* Fade a currently playing sound between two volumes (if no id is passed, all sounds will fade).
* @param {Number} from The value to fade from (0.0 to 1.0).
* @param {Number} to The volume to fade to (0.0 to 1.0).
* @param {Number} len Time in milliseconds to fade.
* @param {Number} id The sound id (omit to fade all sounds).
* @return {Howl}
*/
fade: function(l, f, p, y) {
var m = this;
if (m._state !== "loaded" || m._playLock)
return m._queue.push({
event: "fade",
action: function() {
m.fade(l, f, p, y);
}
}), m;
l = Math.min(Math.max(0, parseFloat(l)), 1), f = Math.min(Math.max(0, parseFloat(f)), 1), p = parseFloat(p), m.volume(l, y);
for (var h = m._getSoundIds(y), w = 0; w < h.length; w++) {
var $ = m._soundById(h[w]);
if ($) {
if (y || m._stopFade(h[w]), m._webAudio && !$._muted) {
var _ = r.ctx.currentTime, S = _ + p / 1e3;
$._volume = l, $._node.gain.setValueAtTime(l, _), $._node.gain.linearRampToValueAtTime(f, S);
}
m._startFadeInterval($, l, f, p, h[w], typeof y > "u");
}
}
return m;
},
/**
* Starts the internal interval to fade a sound.
* @param {Object} sound Reference to sound to fade.
* @param {Number} from The value to fade from (0.0 to 1.0).
* @param {Number} to The volume to fade to (0.0 to 1.0).
* @param {Number} len Time in milliseconds to fade.
* @param {Number} id The sound id to fade.
* @param {Boolean} isGroup If true, set the volume on the group.
*/
_startFadeInterval: function(l, f, p, y, m, h) {
var w = this, $ = f, _ = p - f, S = Math.abs(_ / 0.01), b = Math.max(4, S > 0 ? y / S : y), F = Date.now();
l._fadeTo = p, l._interval = setInterval(function() {
var z = (Date.now() - F) / y;
F = Date.now(), $ += _ * z, $ = Math.round($ * 100) / 100, _ < 0 ? $ = Math.max(p, $) : $ = Math.min(p, $), w._webAudio ? l._volume = $ : w.volume($, l._id, !0), h && (w._volume = $), (p < f && $ <= p || p > f && $ >= p) && (clearInterval(l._interval), l._interval = null, l._fadeTo = null, w.volume(p, l._id), w._emit("fade", l._id));
}, b);
},
/**
* Internal method that stops the currently playing fade when
* a new fade starts, volume is changed or the sound is stopped.
* @param {Number} id The sound id.
* @return {Howl}
*/
_stopFade: function(l) {
var f = this, p = f._soundById(l);
return p && p._interval && (f._webAudio && p._node.gain.cancelScheduledValues(r.ctx.currentTime), clearInterval(p._interval), p._interval = null, f.volume(p._fadeTo, l), p._fadeTo = null, f._emit("fade", l)), f;
},
/**
* Get/set the loop parameter on a sound. This method can optionally take 0, 1 or 2 arguments.
* loop() -> Returns the group's loop value.
* loop(id) -> Returns the sound id's loop value.
* loop(loop) -> Sets the loop value for all sounds in this Howl group.
* loop(loop, id) -> Sets the loop value of passed sound id.
* @return {Howl/Boolean} Returns self or current loop value.
*/
loop: function() {
var l = this, f = arguments, p, y, m;
if (f.length === 0)
return l._loop;
if (f.length === 1)
if (typeof f[0] == "boolean")
p = f[0], l._loop = p;
else
return m = l._soundById(parseInt(f[0], 10)), m ? m._loop : !1;
else f.length === 2 && (p = f[0], y = parseInt(f[1], 10));
for (var h = l._getSoundIds(y), w = 0; w < h.length; w++)
m = l._soundById(h[w]), m && (m._loop = p, l._webAudio && m._node && m._node.bufferSource && (m._node.bufferSource.loop = p, p && (m._node.bufferSource.loopStart = m._start || 0, m._node.bufferSource.loopEnd = m._stop, l.playing(h[w]) && (l.pause(h[w], !0), l.play(h[w], !0)))));
return l;
},
/**
* Get/set the playback rate of a sound. This method can optionally take 0, 1 or 2 arguments.
* rate() -> Returns the first sound node's current playback rate.
* rate(id) -> Returns the sound id's current playback rate.
* rate(rate) -> Sets the playback rate of all sounds in this Howl group.
* rate(rate, id) -> Sets the playback rate of passed sound id.
* @return {Howl/Number} Returns self or the current playback rate.
*/
rate: function() {
var l = this, f = arguments, p, y;
if (f.length === 0)
y = l._sounds[0]._id;
else if (f.length === 1) {
var m = l._getSoundIds(), h = m.indexOf(f[0]);
h >= 0 ? y = parseInt(f[0], 10) : p = parseFloat(f[0]);
} else f.length === 2 && (p = parseFloat(f[0]), y = parseInt(f[1], 10));
var w;
if (typeof p == "number") {
if (l._state !== "loaded" || l._playLock)
return l._queue.push({
event: "rate",
action: function() {
l.rate.apply(l, f);
}
}), l;
typeof y > "u" && (l._rate = p), y = l._getSoundIds(y);
for (var $ = 0; $ < y.length; $++)
if (w = l._soundById(y[$]), w) {
l.playing(y[$]) && (w._rateSeek = l.seek(y[$]), w._playStart = l._webAudio ? r.ctx.currentTime : w._playStart), w._rate = p, l._webAudio && w._node && w._node.bufferSource ? w._node.bufferSource.playbackRate.setValueAtTime(p, r.ctx.currentTime) : w._node && (w._node.playbackRate = p);
var _ = l.seek(y[$]), S = (l._sprite[w._sprite][0] + l._sprite[w._sprite][1]) / 1e3 - _, b = S * 1e3 / Math.abs(w._rate);
(l._endTimers[y[$]] || !w._paused) && (l._clearTimer(y[$]), l._endTimers[y[$]] = setTimeout(l._ended.bind(l, w), b)), l._emit("rate", w._id);
}
} else
return w = l._soundById(y), w ? w._rate : l._rate;
return l;
},
/**
* Get/set the seek position of a sound. This method can optionally take 0, 1 or 2 arguments.
* seek() -> Returns the first sound node's current seek position.
* seek(id) -> Returns the sound id's current seek position.
* seek(seek) -> Sets the seek position of the first sound node.
* seek(seek, id) -> Sets the seek position of passed sound id.
* @return {Howl/Number} Returns self or the current seek position.
*/
seek: function() {
var l = this, f = arguments, p, y;
if (f.length === 0)
l._sounds.length && (y = l._sounds[0]._id);
else if (f.length === 1) {
var m = l._getSoundIds(), h = m.indexOf(f[0]);
h >= 0 ? y = parseInt(f[0], 10) : l._sounds.length && (y = l._sounds[0]._id, p = parseFloat(f[0]));
} else f.length === 2 && (p = parseFloat(f[0]), y = parseInt(f[1], 10));
if (typeof y > "u")
return 0;
if (typeof p == "number" && (l._state !== "loaded" || l._playLock))
return l._queue.push({
event: "seek",
action: function() {
l.seek.apply(l, f);
}
}), l;
var w = l._soundById(y);
if (w)
if (typeof p == "number" && p >= 0) {
var $ = l.playing(y);
$ && l.pause(y, !0), w._seek = p, w._ended = !1, l._clearTimer(y), !l._webAudio && w._node && !isNaN(w._node.duration) && (w._node.currentTime = p);
var _ = function() {
$ && l.play(y, !0), l._emit("seek", y);
};
if ($ && !l._webAudio) {
var S = function() {
l._playLock ? setTimeout(S, 0) : _();
};
setTimeout(S, 0);
} else
_();
} else if (l._webAudio) {
var b = l.playing(y) ? r.ctx.currentTime - w._playStart : 0, F = w._rateSeek ? w._rateSeek - w._seek : 0;
return w._seek + (F + b * Math.abs(w._rate));
} else
return w._node.currentTime;
return l;
},
/**
* Check if a specific sound is currently playing or not (if id is provided), or check if at least one of the sounds in the group is playing or not.
* @param {Number} id The sound id to check. If none is passed, the whole sound group is checked.
* @return {Boolean} True if playing and false if not.
*/
playing: function(l) {
var f = this;
if (typeof l == "number") {
var p = f._soundById(l);
return p ? !p._paused : !1;
}
for (var y = 0; y < f._sounds.length; y++)
if (!f._sounds[y]._paused)
return !0;
return !1;
},
/**
* Get the duration of this sound. Passing a sound id will return the sprite duration.
* @param {Number} id The sound id to check. If none is passed, return full source duration.
* @return {Number} Audio duration in seconds.
*/
duration: function(l) {
var f = this, p = f._duration, y = f._soundById(l);
return y && (p = f._sprite[y._sprite][1] / 1e3), p;
},
/**
* Returns the current loaded state of this Howl.
* @return {String} 'unloaded', 'loading', 'loaded'
*/
state: function() {
return this._state;
},
/**
* Unload and destroy the current Howl object.
* This will immediately stop all sound instances attached to this group.
*/
unload: function() {
for (var l = this, f = l._sounds, p = 0; p < f.length; p++)
f[p]._paused || l.stop(f[p]._id), l._webAudio || (l._clearSound(f[p]._node), f[p]._node.removeEventListener("error", f[p]._errorFn, !1), f[p]._node.removeEventListener(r._canPlayEvent, f[p]._loadFn, !1), f[p]._node.removeEventListener("ended", f[p]._endFn, !1), r._releaseHtml5Audio(f[p]._node)), delete f[p]._node, l._clearTimer(f[p]._id);
var y = r._howls.indexOf(l);
y >= 0 && r._howls.splice(y, 1);
var m = !0;
for (p = 0; p < r._howls.length; p++)
if (r._howls[p]._src === l._src || l._src.indexOf(r._howls[p]._src) >= 0) {
m = !1;
break;
}
return a && m && delete a[l._src], r.noAudio = !1, l._state = "unloaded", l._sounds = [], l = null, null;
},
/**
* Listen to a custom event.
* @param {String} event Event name.
* @param {Function} fn Listener to call.
* @param {Number} id (optional) Only listen to events for this sound.
* @param {Number} once (INTERNAL) Marks event to fire only once.
* @return {Howl}
*/
on: function(l, f, p, y) {
var m = this, h = m["_on" + l];
return typeof f == "function" && h.push(y ? { id: p, fn: f, once: y } : { id: p, fn: f }), m;
},
/**
* Remove a custom event. Call without parameters to remove all events.
* @param {String} event Event name.
* @param {Function} fn Listener to remove. Leave empty to remove all.
* @param {Number} id (optional) Only remove events for this sound.
* @return {Howl}
*/
off: function(l, f, p) {
var y = this, m = y["_on" + l], h = 0;
if (typeof f == "number" && (p = f, f = null), f || p)
for (h = 0; h < m.length; h++) {
var w = p === m[h].id;
if (f === m[h].fn && w || !f && w) {
m.splice(h, 1);
break;
}
}
else if (l)
y["_on" + l] = [];
else {
var $ = Object.keys(y);
for (h = 0; h < $.length; h++)
$[h].indexOf("_on") === 0 && Array.isArray(y[$[h]]) && (y[$[h]] = []);
}
return y;
},
/**
* Listen to a custom event and remove it once fired.
* @param {String} event Event name.
* @param {Function} fn Listener to call.
* @param {Number} id (optional) Only listen to events for this sound.
* @return {Howl}
*/
once: function(l, f, p) {
var y = this;
return y.on(l, f, p, 1), y;
},
/**
* Emit all events of a specific type and pass the sound id.
* @param {String} event Event name.
* @param {Number} id Sound ID.
* @param {Number} msg Message to go with event.
* @return {Howl}
*/
_emit: function(l, f, p) {
for (var y = this, m = y["_on" + l], h = m.length - 1; h >= 0; h--)
(!m[h].id || m[h].id === f || l === "load") && (setTimeout((function(w) {
w.call(this, f, p);
}).bind(y, m[h].fn), 0), m[h].once && y.off(l, m[h].fn, m[h].id));
return y._loadQueue(l), y;
},
/**
* Queue of actions initiated before the sound has loaded.
* These will be called in sequence, with the next only firing
* after the previous has finished executing (even if async like play).
* @return {Howl}
*/
_loadQueue: function(l) {
var f = this;
if (f._queue.length > 0) {
var p = f._queue[0];
p.event === l && (f._queue.shift(), f._loadQueue()), l || p.action();
}
return f;
},
/**
* Fired when playback ends at the end of the duration.
* @param {Sound} sound The sound object to work with.
* @return {Howl}
*/
_ended: function(l) {
var f = this, p = l._sprite;
if (!f._webAudio && l._node && !l._node.paused && !l._node.ended && l._node.currentTime < l._stop)
return setTimeout(f._ended.bind(f, l), 100), f;
var y = !!(l._loop || f._sprite[p][2]);
if (f._emit("end", l._id), !f._webAudio && y && f.stop(l._id, !0).play(l._id), f._webAudio && y) {
f._emit("play", l._id), l._seek = l._start || 0, l._rateSeek = 0, l._playStart = r.ctx.currentTime;
var m = (l._stop - l._start) * 1e3 / Math.abs(l._rate);
f._endTimers[l._id] = setTimeout(f._ended.bind(f, l), m);
}
return f._webAudio && !y && (l._paused = !0, l._ended = !0, l._seek = l._start || 0, l._rateSeek = 0, f._clearTimer(l._id), f._cleanBuffer(l._node), r._autoSuspend()), !f._webAudio && !y && f.stop(l._id, !0), f;
},
/**
* Clear the end timer for a sound playback.
* @param {Number} id The sound ID.
* @return {Howl}
*/
_clearTimer: function(l) {
var f = this;
if (f._endTimers[l]) {
if (typeof f._endTimers[l] != "function")
clearTimeout(f._endTimers[l]);
else {
var p = f._soundById(l);
p && p._node && p._node.removeEventListener("ended", f._endTimers[l], !1);
}
delete f._endTimers[l];
}
return f;
},
/**
* Return the sound identified by this ID, or return null.
* @param {Number} id Sound ID
* @return {Object} Sound object or null.
*/
_soundById: function(l) {
for (var f = this, p = 0; p < f._sounds.length; p++)
if (l === f._sounds[p]._id)
return f._sounds[p];
return null;
},
/**
* Return an inactive sound from the pool or create a new one.
* @return {Sound} Sound playback object.
*/
_inactiveSound: function() {
var l = this;
l._drain();
for (var f = 0; f < l._sounds.length; f++)
if (l._sounds[f]._ended)
return l._sounds[f].reset();
return new o(l);
},
/**
* Drain excess inactive sounds from the pool.
*/
_drain: function() {
var l = this, f = l._pool, p = 0, y = 0;
if (!(l._sounds.length < f)) {
for (y = 0; y < l._sounds.length; y++)
l._sounds[y]._ended && p++;
for (y = l._sounds.length - 1; y >= 0; y--) {
if (p <= f)
return;
l._sounds[y]._ended && (l._webAudio && l._sounds[y]._node && l._sounds[y]._node.disconnect(0), l._sounds.splice(y, 1), p--);
}
}
},
/**
* Get all ID's from the sounds pool.
* @param {Number} id Only return one ID if one is passed.
* @return {Array} Array of IDs.
*/
_getSoundIds: function(l) {
var f = this;
if (typeof l > "u") {
for (var p = [], y = 0; y < f._sounds.length; y++)
p.push(f._sounds[y]._id);
return p;
} else
return [l];
},
/**
* Load the sound back into the buffer source.
* @param {Sound} sound The sound object to work with.
* @return {Howl}
*/
_refreshBuffer: function(l) {
var f = this;
return l._node.bufferSource = r.ctx.createBufferSource(), l._node.bufferSource.buffer = a[f._src], l._panner ? l._node.bufferSource.connect(l._panner) : l._node.bufferSource.connect(l._node), l._node.bufferSource.loop = l._loop, l._loop && (l._node.bufferSource.loopStart = l._start || 0, l._node.bufferSource.loopEnd = l._stop || 0), l._node.bufferSource.playbackRate.setValueAtTime(l._rate, r.ctx.currentTime), f;
},
/**
* Prevent memory leaks by cleaning up the buffer source after playback.
* @param {Object} node Sound's audio node containing the buffer source.
* @return {Howl}
*/
_cleanBuffer: function(l) {
var f = this, p = r._navigator && r._navigator.vendor.indexOf("Apple") >= 0;
if (!l.bufferSource)
return f;
if (r._scratchBuffer && l.bufferSource && (l.bufferSource.onended = null, l.bufferSource.disconnect(0), p))
try {
l.bufferSource.buffer = r._scratchBuffer;
} catch {
}
return l.bufferSource = null, f;
},
/**
* Set the source to a 0-second silence to stop any downloading (except in IE).
* @param {Object} node Audio node to clear.
*/
_clearSound: function(l) {
var f = /MSIE |Trident\//.test(r._navigator && r._navigator.userAgent);
f || (l.src = "data:audio/wav;base64,UklGRigAAABXQVZFZm10IBIAAAABAAEARKwAAIhYAQACABAAAABkYXRhAgAAAAEA");
}
};
var o = function(l) {
this._parent = l, this.init();
};
o.prototype = {
/**
* Initialize a new Sound object.
* @return {Sound}
*/
init: function() {
var l = this, f = l._parent;
return l._muted = f._muted, l._loop = f._loop, l._volume = f._volume, l._rate = f._rate, l._seek = 0, l._paused = !0, l._ended = !0, l._sprite = "__default", l._id = ++r._counter, f._sounds.push(l), l.create(), l;
},
/**
* Create and setup a new sound object, whether HTML5 Audio or Web Audio.
* @return {Sound}
*/
create: function() {
var l = this, f = l._parent, p = r._muted || l._muted || l._parent._muted ? 0 : l._volume;
return f._webAudio ? (l._node = typeof r.ctx.createGain > "u" ? r.ctx.createGainNode() : r.ctx.createGain(), l._node.gain.setValueAtTime(p, r.ctx.currentTime), l._node.paused = !0, l._node.connect(r.masterGain)) : r.noAudio || (l._node = r._obtainHtml5Audio(), l._errorFn = l._errorListener.bind(l), l._node.addEventListener("error", l._errorFn, !1), l._loadFn = l._loadListener.bind(l), l._node.addEventListener(r._canPlayEvent, l._loadFn, !1), l._endFn = l._endListener.bind(l), l._node.addEventListener("ended", l._endFn, !1), l._node.src = f._src, l._node.preload = f._preload === !0 ? "auto" : f._preload, l._node.volume = p * r.volume(), l._node.load()), l;
},
/**
* Reset the parameters of this sound to the original state (for recycle).
* @return {Sound}
*/
reset: function() {
var l = this, f = l._parent;
return l._muted = f._muted, l._loop = f._loop, l._volume = f._volume, l._rate = f._rate, l._seek = 0, l._rateSeek = 0, l._paused = !0, l._ended = !0, l._sprite = "__default", l._id = ++r._counter, l;
},
/**
* HTML5 Audio error listener callback.
*/
_errorListener: function() {
var l = this;
l._parent._emit("loaderror", l._id, l._node.error ? l._node.error.code : 0), l._node.removeEventListener("error", l._errorFn, !1);
},
/**
* HTML5 Audio canplaythrough listener callback.
*/
_loadListener: function() {
var l = this, f = l._parent;
f._duration = Math.ceil(l._node.duration * 10) / 10, Object.keys(f._sprite).length === 0 && (f._sprite = { __default: [0, f._duration * 1e3] }), f._state !== "loaded" && (f._state = "loaded", f._emit("load"), f._loadQueue()), l._node.removeEventListener(r._canPlayEvent, l._loadFn, !1);
},
/**
* HTML5 Audio ended listener callback.
*/
_endListener: function() {
var l = this, f = l._parent;
f._duration === 1 / 0 && (f._duration = Math.ceil(l._node.duration * 10) / 10, f._sprite.__default[1] === 1 / 0 && (f._sprite.__default[1] = f._duration * 1e3), f._ended(l)), l._node.removeEventListener("ended", l._endFn, !1);
}
};
var a = {}, i = function(l) {
var f = l._src;
if (a[f]) {
l._duration = a[f].duration, c(l);
return;
}
if (/^data:[^;]+;base64,/.test(f)) {
for (var p = atob(f.split(",")[1]), y = new Uint8Array(p.length), m = 0; m < p.length; ++m)
y[m] = p.charCodeAt(m);
u(y.buffer, l);
} else {
var h = new XMLHttpRequest();
h.open(l._xhr.method, f, !0), h.withCredentials = l._xhr.withCredentials, h.responseType = "arraybuffer", l._xhr.headers && Object.keys(l._xhr.headers).forEach(function(w) {
h.setRequestHeader(w, l._xhr.headers[w]);
}), h.onload = function() {
var w = (h.status + "")[0];
if (w !== "0" && w !== "2" && w !== "3") {
l._emit("loaderror", null, "Failed loading audio file with status: " + h.status + ".");
return;
}
u(h.response, l);
}, h.onerror = function() {
l._webAudio && (l._html5 = !0, l._webAudio = !1, l._sounds = [], delete a[f], l.load());
}, s(h);
}
}, s = function(l) {
try {
l.send();
} catch {
l.onerror();
}
}, u = function(l, f) {
var p = function() {
f._emit("loaderror", null, "Decoding audio data failed.");
}, y = function(m) {
m && f._sounds.length > 0 ? (a[f._src] = m, c(f, m)) : p();
};
typeof Promise < "u" && r.ctx.decodeAudioData.length === 1 ? r.ctx.decodeAudioData(l).then(y).catch(p) : r.ctx.decodeAudioData(l, y, p);
}, c = function(l, f) {
f && !l._duration && (l._duration = f.duration), Object.keys(l._sprite).length === 0 && (l._sprite = { __default: [0, l._duration * 1e3] }), l._state !== "loaded" && (l._state = "loaded", l._emit("load"), l._loadQueue());
}, d = function() {
if (r.usingWebAudio) {
try {
typeof AudioContext < "u" ? r.ctx = new AudioContext() : typeof webkitAudioContext < "u" ? r.ctx = new webkitAudioContext() : r.usingWebAudio = !1;
} catch {
r.usingWebAudio = !1;
}
r.ctx || (r.usingWebAudio = !1);
var l = /iP(hone|od|ad)/.test(r._navigator && r._navigator.platform), f = r._navigator && r._navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/), p = f ? parseInt(f[1], 10) : null;
if (l && p && p < 9) {
var y = /safari/.test(r._navigator && r._navigator.userAgent.toLowerCase());
r._navigator && !y && (r.usingWebAudio = !1);
}
r.usingWebAudio && (r.masterGain = typeof r.ctx.createGain > "u" ? r.ctx.createGainNode() : r.ctx.createGain(), r.masterGain.gain.setValueAtTime(r._muted ? 0 : r._volume, r.ctx.currentTime), r.masterGain.connect(r.ctx.destination)), r._setup();
}
};
e.Howler = r, e.Howl = n, typeof Tm < "u" ? (Tm.HowlerGlobal = t, Tm.Howler = r, Tm.Howl = n, Tm.Sound = o) : typeof window < "u" && (window.HowlerGlobal = t, window.Howler = r, window.Howl = n, window.Sound = o);
})();
/*!
* Spatial Plugin - Adds support for stereo and 3D audio where Web Audio is supported.
*
* howler.js v2.2.4
* howlerjs.com
*
* (c) 2013-2020, James Simpson of GoldFire Studios
* goldfirestudios.com
*
* MIT License
*/
(function() {
HowlerGlobal.prototype._pos = [0, 0, 0], HowlerGlobal.prototype._orientation = [0, 0, -1, 0, 1, 0], HowlerGlobal.prototype.stereo = function(r) {
var n = this;
if (!n.ctx || !n.ctx.listener)
return n;
for (var o = n._howls.length - 1; o >= 0; o--)
n._howls[o].stereo(r);
return n;
}, HowlerGlobal.prototype.pos = function(r, n, o) {
var a = this;
if (!a.ctx || !a.ctx.listener)
return a;
if (n = typeof n != "number" ? a._pos[1] : n, o = typeof o != "number" ? a._pos[2] : o, typeof r == "number")
a._pos = [r, n, o], typeof a.ctx.listener.positionX < "u" ? (a.ctx.listener.positionX.setTargetAtTime(a._pos[0], Howler.ctx.currentTime, 0.1), a.ctx.listener.positionY.setTargetAtTime(a._pos[1], Howler.ctx.currentTime, 0.1), a.ctx.listener.positionZ.setTargetAtTime(a._pos[2], Howler.ctx.currentTime, 0.1)) : a.ctx.listener.setPosition(a._pos[0], a._pos[1], a._pos[2]);
else
return a._pos;
return a;
}, HowlerGlobal.prototype.orientation = function(r, n, o, a, i, s) {
var u = this;
if (!u.ctx || !u.ctx.listener)
return u;
var c = u._orientation;
if (n = typeof n != "number" ? c[1] : n, o = typeof o != "number" ? c[2] : o, a = typeof a != "number" ? c[3] : a, i = typeof i != "number" ? c[4] : i, s = typeof s != "number" ? c[5] : s, typeof r == "number")
u._orientation = [r, n, o, a, i, s], typeof u.ctx.listener.forwardX < "u" ? (u.ctx.listener.forwardX.setTargetAtTime(r, Howler.ctx.currentTime, 0.1), u.ctx.listener.forwardY.setTargetAtTime(n, Howler.ctx.currentTime, 0.1), u.ctx.listener.forwardZ.setTargetAtTime(o, Howler.ctx.currentTime, 0.1), u.ctx.listener.upX.setTargetAtTime(a, Howler.ctx.currentTime, 0.1), u.ctx.listener.upY.setTargetAtTime(i, Howler.ctx.currentTime, 0.1), u.ctx.listener.upZ.setTargetAtTime(s, Howler.ctx.currentTime, 0.1)) : u.ctx.listener.setOrientation(r, n, o, a, i, s);
else
return c;
return u;
}, Howl.prototype.init = /* @__PURE__ */ function(r) {
return function(n) {
var o = this;
return o._orientation = n.orientation || [1, 0, 0], o._stereo = n.stereo || null, o._pos = n.pos || null, o._pannerAttr = {
coneInnerAngle: typeof n.coneInnerAngle < "u" ? n.coneInnerAngle : 360,
coneOuterAngle: typeof n.coneOuterAngle < "u" ? n.coneOuterAngle : 360,
coneOuterGain: typeof n.coneOuterGain < "u" ? n.coneOuterGain : 0,
distanceModel: typeof n.distanceModel < "u" ? n.distanceModel : "inverse",
maxDistance: typeof n.maxDistance < "u" ? n.maxDistance : 1e4,
panningModel: typeof n.panningModel < "u" ? n.panningModel : "HRTF",
refDistance: typeof n.refDistance < "u" ? n.refDistance : 1,
rolloffFactor: typeof n.rolloffFactor < "u" ? n.rolloffFactor : 1
}, o._onstereo = n.onstereo ? [{ fn: n.onstereo }] : [], o._onpos = n.onpos ? [{ fn: n.onpos }] : [], o._onorientation = n.onorientation ? [{ fn: n.onorientation }] : [], r.call(this, n);
};
}(Howl.prototype.init), Howl.prototype.stereo = function(r, n) {
var o = this;
if (!o._webAudio)
return o;
if (o._state !== "loaded")
return o._queue.push({
event: "stereo",
action: function() {
o.stereo(r, n);
}
}), o;
var a = typeof Howler.ctx.createStereoPanner > "u" ? "spatial" : "stereo";
if (typeof n > "u")
if (typeof r == "number")
o._stereo = r, o._pos = [r, 0, 0];
else
return o._stereo;
for (var i = o._getSoundIds(n), s = 0; s < i.length; s++) {
var u = o._soundById(i[s]);
if (u)
if (typeof r == "number")
u._stereo = r, u._pos = [r, 0, 0], u._node && (u._pannerAttr.panningModel = "equalpower", (!u._panner || !u._panner.pan) && t(u, a), a === "spatial" ? typeof u._panner.positionX < "u" ? (u._panner.positionX.setValueAtTime(r, Howler.ctx.currentTime), u._panner.positionY.setValueAtTime(0, Howler.ctx.currentTime), u._panner.positionZ.setValueAtTime(0, Howler.ctx.currentTime)) : u._panner.setPosition(r, 0, 0) : u._panner.pan.setValueAtTime(r, Howler.ctx.currentTime)), o._emit("stereo", u._id);
else
return u._stereo;
}
return o;
}, Howl.prototype.pos = function(r, n, o, a) {
var i = this;
if (!i._webAudio)
return i;
if (i._state !== "loaded")
return i._queue.push({
event: "pos",
action: function() {
i.pos(r, n, o, a);
}
}), i;
if (n = typeof n != "number" ? 0 : n, o = typeof o != "number" ? -0.5 : o, typeof a > "u")
if (typeof r == "number")
i._pos = [r, n, o];
else
return i._pos;
for (var s = i._getSoundIds(a), u = 0; u < s.length; u++) {
var c = i._soundById(s[u]);
if (c)
if (typeof r == "number")
c._pos = [r, n, o], c._node && ((!c._panner || c._panner.pan) && t(c, "spatial"), typeof c._panner.positionX < "u" ? (c._panner.positionX.setValueAtTime(r, Howler.ctx.currentTime), c._panner.positionY.setValueAtTime(n, Howler.ctx.currentTime), c._panner.positionZ.setValueAtTime(o, Howler.ctx.currentTime)) : c._panner.setPosition(r, n, o)), i._emit("pos", c._id);
else
return c._pos;
}
return i;
}, Howl.prototype.orientation = function(r, n, o, a) {
var i = this;
if (!i._webAudio)
return i;
if (i._state !== "loaded")
return i._queue.push({
event: "orientation",
action: function() {
i.orientation(r, n, o, a);
}
}), i;
if (n = typeof n != "number" ? i._orientation[1] : n, o = typeof o != "number" ? i._orientation[2] : o, typeof a > "u")
if (typeof r == "number")
i._orientation = [r, n, o];
else
return i._orientation;
for (var s = i._getSoundIds(a), u = 0; u < s.length; u++) {
var c = i._soundById(s[u]);
if (c)
if (typeof r == "number")
c._orientation = [r, n, o], c._node && (c._panner || (c._pos || (c._pos = i._pos || [0, 0, -0.5]), t(c, "spatial")), typeof c._panner.orientationX < "u" ? (c._panner.orientationX.setValueAtTime(r, Howler.ctx.currentTime), c._panner.orientationY.setValueAtTime(n, Howler.ctx.currentTime), c._panner.orientationZ.setValueAtTime(o, Howler.ctx.currentTime)) : c._panner.setOrientation(r, n, o)), i._emit("orientation", c._id);
else
return c._orientation;
}
return i;
}, Howl.prototype.pannerAttr = function() {
var r = this, n = arguments, o, a, i;
if (!r._webAudio)
return r;
if (n.length === 0)
return r._pannerAttr;
if (n.length === 1)
if (typeof n[0] == "object")
o = n[0], typeof a > "u" && (o.pannerAttr || (o.pannerAttr = {
coneInnerAngle: o.coneInnerAngle,
coneOuterAngle: o.coneOuterAngle,
coneOuterGain: o.coneOuterGain,
distanceModel: o.distanceModel,
maxDistance: o.maxDistance,
refDistance: o.refDistance,
rolloffFactor: o.rolloffFactor,
panningModel: o.panningModel
}), r._pannerAttr = {
coneInnerAngle: typeof o.pannerAttr.coneInnerAngle < "u" ? o.pannerAttr.coneInnerAngle : r._coneInnerAngle,
coneOuterAngle: typeof o.pannerAttr.coneOuterAngle < "u" ? o.pannerAttr.coneOuterAngle : r._coneOuterAngle,
coneOuterGain: typeof o.pannerAttr.coneOuterGain < "u" ? o.pannerAttr.coneOuterGain : r._coneOuterGain,
distanceModel: typeof o.pannerAttr.distanceModel < "u" ? o.pannerAttr.distanceModel : r._distanceModel,
maxDistance: typeof o.pannerAttr.maxDistance < "u" ? o.pannerAttr.maxDistance : r._maxDistance,
refDistance: typeof o.pannerAttr.refDistance < "u" ? o.pannerAttr.refDistance : r._refDistance,
rolloffFactor: typeof o.pannerAttr.rolloffFactor < "u" ? o.pannerAttr.rolloffFactor : r._rolloffFactor,
panningModel: typeof o.pannerAttr.panningModel < "u" ? o.pannerAttr.panningModel : r._panningModel
});
else
return i = r._soundById(parseInt(n[0], 10)), i ? i._pannerAttr : r._pannerAttr;
else n.length === 2 && (o = n[0], a = parseInt(n[1], 10));
for (var s = r._getSoundIds(a), u = 0; u < s.length; u++)
if (i = r._soundById(s[u]), i) {
var c = i._pannerAttr;
c = {
coneInnerAngle: typeof o.coneInnerAngle < "u" ? o.coneInnerAngle : c.coneInnerAngle,
coneOuterAngle: typeof o.coneOuterAngle < "u" ? o.coneOuterAngle : c.coneOuterAngle,
coneOuterGain: typeof o.coneOuterGain < "u" ? o.coneOuterGain : c.coneOuterGain,
distanceModel: typeof o.distanceModel < "u" ? o.distanceModel : c.distanceModel,
maxDistance: typeof o.maxDistance < "u" ? o.maxDistance : c.maxDistance,
refDistance: typeof o.refDistance < "u" ? o.refDistance : c.refDistance,
rolloffFactor: typeof o.rolloffFactor < "u" ? o.rolloffFactor : c.rolloffFactor,
panningModel: typeof o.panningModel < "u" ? o.panningModel : c.panningModel
};
var d = i._panner;
d || (i._pos || (i._pos = r._pos || [0, 0, -0.5]), t(i, "spatial"), d = i._panner), d.coneInnerAngle = c.coneInnerAngle, d.coneOuterAngle = c.coneOuterAngle, d.coneOuterGain = c.coneOuterGain, d.distanceModel = c.distanceModel, d.maxDistance = c.maxDistance, d.refDistance = c.refDistance, d.rolloffFactor = c.rolloffFactor, d.panningModel = c.panningModel;
}
return r;
}, Sound.prototype.init = /* @__PURE__ */ function(r) {
return function() {
var n = this, o = n._parent;
n._orientation = o._orientation, n._stereo = o._stereo, n._pos = o._pos, n._pannerAttr = o._pannerAttr, r.call(this), n._stereo ? o.stereo(n._stereo) : n._pos && o.pos(n._pos[0], n._pos[1], n._pos[2], n._id);
};
}(Sound.prototype.init), Sound.prototype.reset = /* @__PURE__ */ function(r) {
return function() {
var n = this, o = n._parent;
return n._orientation = o._orientation, n._stereo = o._stereo, n._pos = o._pos, n._pannerAttr = o._pannerAttr, n._stereo ? o.stereo(n._stereo) : n._pos ? o.pos(n._pos[0], n._pos[1], n._pos[2], n._id) : n._panner && (n._panner.disconnect(0), n._panner = void 0, o._refreshBuffer(n)), r.call(this);
};
}(Sound.prototype.reset);
var t = function(r, n) {
n = n || "spatial", n === "spatial" ? (r._panner = Howler.ctx.createPanner(), r._panner.coneInnerAngle = r._pannerAttr.coneInnerAngle, r._panner.coneOuterAngle = r._pannerAttr.coneOuterAngle, r._panner.coneOuterGain = r._pannerAttr.coneOuterGain, r._panner.distanceModel = r._pannerAttr.distanceModel, r._panner.maxDistance = r._pannerAttr.maxDistance, r._panner.refDistance = r._pannerAttr.refDistance, r._panner.rolloffFactor = r._pannerAttr.rolloffFactor, r._panner.panningModel = r._pannerAttr.panningModel, typeof r._panner.positionX < "u" ? (r._panner.positionX.setValueAtTime(r._pos[0], Howler.ctx.currentTime), r._panner.positionY.setValueAtTime(r._pos[1], Howler.ctx.currentTime), r._panner.positionZ.setValueAtTime(r._pos[2], Howler.ctx.currentTime)) : r._panner.setPosition(r._pos[0], r._pos[1], r._pos[2]), typeof r._panner.orientationX < "u" ? (r._panner.orientationX.setValueAtTime(r._orientation[0], Howler.ctx.currentTime), r._panner.orientationY.setValueAtTime(r._orientation[1], Howler.ctx.currentTime), r._panner.orientationZ.setValueAtTime(r._orientation[2], Howler.ctx.currentTime)) : r._panner.setOrientation(r._orientation[0], r._orientation[1], r._orientation[2])) : (r._panner = Howler.ctx.createStereoPanner(), r._panner.pan.setValueAtTime(r._stereo, Howler.ctx.currentTime)), r._panner.connect(r._node), r._paused || r._parent.pause(r._id, !0).play(r._id, !0);
};
})();
}(m9)), m9;
}
D1e();
var Lh, Ni;
const $B = class lh {
constructor() {
wB(this, Ni), p9(this, Ni, /* @__PURE__ */ new Map());
}
static getInstance() {
return dl(lh, Lh) === void 0 && p9(lh, Lh, new lh()), dl(lh, Lh);
}
hasSound(t) {
return dl(this, Ni).has(t);
}
setSound(t, r) {
dl(this, Ni).set(t, r);
}
setSoundOnce(t, r) {
dl(this, Ni).has(t) || dl(this, Ni).set(t, r);
}
getSound(t) {
return dl(this, Ni).get(t);
}
playSound(t) {
var r;
(r = dl(this, Ni).get(t)) == null || r.play();
}
};
Lh = /* @__PURE__ */ new WeakMap(), Ni = /* @__PURE__ */ new WeakMap(), wB($B, Lh);
let Im = $B;
const kB = typeof document < "u" ? ae.useLayoutEffect : () => {
};
function F1e(e) {
const t = ne(null);
return kB(() => {
t.current = e;
}, [
e
]), Ne((...r) => {
const n = t.current;
return n == null ? void 0 : n(...r);
}, []);
}
const Uc = (e) => {
var t;
return (t = e == null ? void 0 : e.ownerDocument) !== null && t !== void 0 ? t : document;
}, iu = (e) => e && "window" in e && e.window === e ? e : Uc(e).defaultView || window;
function _B(e, t) {
return t && e ? e.contains(t) : !1;
}
const jS = (e = document) => e.activeElement;
function OB(e) {
return e.target;
}
function L1e(e) {
var t;
return typeof window > "u" || window.navigator == null ? !1 : ((t = window.navigator.userAgentData) === null || t === void 0 ? void 0 : t.brands.some((r) => e.test(r.brand))) || e.test(window.navigator.userAgent);
}
function z1e(e) {
var t;
return typeof window < "u" && window.navigator != null ? e.test(((t = window.navigator.userAgentData) === null || t === void 0 ? void 0 : t.platform) || window.navigator.platform) : !1;
}
function SB(e) {
let t = null;
return () => (t == null && (t = e()), t);
}
const W1e = SB(function() {
return z1e(/^Mac/i);
}), V1e = SB(function() {
return L1e(/Android/i);
});
function EB() {
let e = ne(/* @__PURE__ */ new Map()), t = Ne((o, a, i, s) => {
let u = s != null && s.once ? (...c) => {
e.current.delete(i), i(...c);
} : i;
e.current.set(i, {
type: a,
eventTarget: o,
fn: u,
options: s
}), o.addEventListener(a, u, s);
}, []), r = Ne((o, a, i, s) => {
var u;
let c = ((u = e.current.get(i)) === null || u === void 0 ? void 0 : u.fn) || i;
o.removeEventListener(a, c, s), e.current.delete(i);
}, []), n = Ne(() => {
e.current.forEach((o, a) => {
r(o.eventTarget, o.type, a, o.options);
});
}, [
r
]);
return ue(() => n, [
n
]), {
addGlobalListener: t,
removeGlobalListener: r,
removeAllGlobalListeners: n
};
}
function H1e(e) {
return e.mozInputSource === 0 && e.isTrusted ? !0 : V1e() && e.pointerType ? e.type === "click" && e.buttons === 1 : e.detail === 0 && !e.pointerType;
}
let AB = class {
isDefaultPrevented() {
return this.nativeEvent.defaultPrevented;
}
preventDefault() {
this.defaultPrevented = !0, this.nativeEvent.preventDefault();
}
stopPropagation() {
this.nativeEvent.stopPropagation(), this.isPropagationStopped = () => !0;
}
isPropagationStopped() {
return !1;
}
persist() {
}
constructor(t, r) {
this.nativeEvent = r, this.target = r.target, this.currentTarget = r.currentTarget, this.relatedTarget = r.relatedTarget, this.bubbles = r.bubbles, this.cancelable = r.cancelable, this.defaultPrevented = r.defaultPrevented, this.eventPhase = r.eventPhase, this.isTrusted = r.isTrusted, this.timeStamp = r.timeStamp, this.type = t;
}
};
function PB(e) {
let t = ne({
isFocused: !1,
observer: null
});
kB(() => {
const n = t.current;
return () => {
n.observer && (n.observer.disconnect(), n.observer = null);
};
}, []);
let r = F1e((n) => {
e == null || e(n);
});
return Ne((n) => {
if (n.target instanceof HTMLButtonElement || n.target instanceof HTMLInputElement || n.target instanceof HTMLTextAreaElement || n.target instanceof HTMLSelectElement) {
t.current.isFocused = !0;
let o = n.target, a = (i) => {
t.current.isFocused = !1, o.disabled && r(new AB("blur", i)), t.current.observer && (t.current.observer.disconnect(), t.current.observer = null);
};
o.addEventListener("focusout", a, {
once: !0
}), t.current.observer = new MutationObserver(() => {
if (t.current.isFocused && o.disabled) {
var i;
(i = t.current.observer) === null || i === void 0 || i.disconnect();
let s = o === document.activeElement ? null : document.activeElement;
o.dispatchEvent(new FocusEvent("blur", {
relatedTarget: s
})), o.dispatchEvent(new FocusEvent("focusout", {
bubbles: !0,
relatedTarget: s
}));
}
}), t.current.observer.observe(o, {
attributes: !0,
attributeFilter: [
"disabled"
]
});
}
}, [
r
]);
}
let G1e = !1, Nb = null, RS = /* @__PURE__ */ new Set(), zh = /* @__PURE__ */ new Map(), ju = !1, MS = !1;
const U1e = {
Tab: !0,
Escape: !0
};
function rP(e, t) {
for (let r of RS) r(e, t);
}
function B1e(e) {
return !(e.metaKey || !W1e() && e.altKey || e.ctrlKey || e.key === "Control" || e.key === "Shift" || e.key === "Meta");
}
function j1(e) {
ju = !0, B1e(e) && (Nb = "keyboard", rP("keyboard", e));
}
function So(e) {
Nb = "pointer", (e.type === "mousedown" || e.type === "pointerdown") && (ju = !0, rP("pointer", e));
}
function CB(e) {
H1e(e) && (ju = !0, Nb = "virtual");
}
function NB(e) {
e.target === window || e.target === document || G1e || !e.isTrusted || (!ju && !MS && (Nb = "virtual", rP("virtual", e)), ju = !1, MS = !1);
}
function TB() {
ju = !1, MS = !0;
}
function DS(e) {
if (typeof window > "u" || zh.get(iu(e))) return;
const t = iu(e), r = Uc(e);
let n = t.HTMLElement.prototype.focus;
t.HTMLElement.prototype.focus = function() {
ju = !0, n.apply(this, arguments);
}, r.addEventListener("keydown", j1, !0), r.addEventListener("keyup", j1, !0), r.addEventListener("click", CB, !0), t.addEventListener("focus", NB, !0), t.addEventListener("blur", TB, !1), typeof PointerEvent < "u" ? (r.addEventListener("pointerdown", So, !0), r.addEventListener("pointermove", So, !0), r.addEventListener("pointerup", So, !0)) : (r.addEventListener("mousedown", So, !0), r.addEventListener("mousemove", So, !0), r.addEventListener("mouseup", So, !0)), t.addEventListener("beforeunload", () => {
IB(e);
}, {
once: !0
}), zh.set(t, {
focus: n
});
}
const IB = (e, t) => {
const r = iu(e), n = Uc(e);
t && n.removeEventListener("DOMContentLoaded", t), zh.has(r) && (r.HTMLElement.prototype.focus = zh.get(r).focus, n.removeEventListener("keydown", j1, !0), n.removeEventListener("keyup", j1, !0), n.removeEventListener("click", CB, !0), r.removeEventListener("focus", NB, !0), r.removeEventListener("blur", TB, !1), typeof PointerEvent < "u" ? (n.removeEventListener("pointerdown", So, !0), n.removeEventListener("pointermove", So, !0), n.removeEventListener("pointerup", So, !0)) : (n.removeEventListener("mousedown", So, !0), n.removeEventListener("mousemove", So, !0), n.removeEventListener("mouseup", So, !0)), zh.delete(r));
};
function Y1e(e) {
const t = Uc(e);
let r;
return t.readyState !== "loading" ? DS(e) : (r = () => {
DS(e);
}, t.addEventListener("DOMContentLoaded", r)), () => IB(e, r);
}
typeof document < "u" && Y1e();
function jB() {
return Nb !== "pointer";
}
const q1e = /* @__PURE__ */ new Set([
"checkbox",
"radio",
"range",
"color",
"file",
"image",
"button",
"submit",
"reset"
]);
function K1e(e, t, r) {
let n = Uc(r == null ? void 0 : r.target);
const o = typeof window < "u" ? iu(r == null ? void 0 : r.target).HTMLInputElement : HTMLInputElement, a = typeof window < "u" ? iu(r == null ? void 0 : r.target).HTMLTextAreaElement : HTMLTextAreaElement, i = typeof window < "u" ? iu(r == null ? void 0 : r.target).HTMLElement : HTMLElement, s = typeof window < "u" ? iu(r == null ? void 0 : r.target).KeyboardEvent : KeyboardEvent;
return e = e || n.activeElement instanceof o && !q1e.has(n.activeElement.type) || n.activeElement instanceof a || n.activeElement instanceof i && n.activeElement.isContentEditable, !(e && t === "keyboard" && r instanceof s && !U1e[r.key]);
}
function X1e(e, t, r) {
DS(), ue(() => {
let n = (o, a) => {
K1e(!!(r != null && r.isTextInput), o, a) && e(jB());
};
return RS.add(n), () => {
RS.delete(n);
};
}, t);
}
function J1e(e) {
let { isDisabled: t, onFocus: r, onBlur: n, onFocusChange: o } = e;
const a = Ne((u) => {
if (u.target === u.currentTarget)
return n && n(u), o && o(!1), !0;
}, [
n,
o
]), i = PB(a), s = Ne((u) => {
const c = Uc(u.target), d = c ? jS(c) : jS();
u.target === u.currentTarget && d === OB(u.nativeEvent) && (r && r(u), o && o(!0), i(u));
}, [
o,
r,
i
]);
return {
focusProps: {
onFocus: !t && (r || o || n) ? s : void 0,
onBlur: !t && (n || o) ? a : void 0
}
};
}
function Q1e(e) {
let { isDisabled: t, onBlurWithin: r, onFocusWithin: n, onFocusWithinChange: o } = e, a = ne({
isFocusWithin: !1
}), { addGlobalListener: i, removeAllGlobalListeners: s } = EB(), u = Ne((l) => {
l.currentTarget.contains(l.target) && a.current.isFocusWithin && !l.currentTarget.contains(l.relatedTarget) && (a.current.isFocusWithin = !1, s(), r && r(l), o && o(!1));
}, [
r,
o,
a,
s
]), c = PB(u), d = Ne((l) => {
if (!l.currentTarget.contains(l.target)) return;
const f = Uc(l.target), p = jS(f);
if (!a.current.isFocusWithin && p === OB(l.nativeEvent)) {
n && n(l), o && o(!0), a.current.isFocusWithin = !0, c(l);
let y = l.currentTarget;
i(f, "focus", (m) => {
if (a.current.isFocusWithin && !_B(y, m.target)) {
let h = new AB("blur", new f.defaultView.FocusEvent("blur", {
relatedTarget: m.target
}));
h.target = y, h.currentTarget = y, u(h);
}
}, {
capture: !0
});
}
}, [
n,
o,
c,
i,
u
]);
return t ? {
focusWithinProps: {
// These cannot be null, that would conflict in mergeProps
onFocus: void 0,
onBlur: void 0
}
} : {
focusWithinProps: {
onFocus: d,
onBlur: u
}
};
}
let R1 = !1, Q2 = 0;
function FS() {
R1 = !0, setTimeout(() => {
R1 = !1;
}, 50);
}
function g9(e) {
e.pointerType === "touch" && FS();
}
function Z1e() {
if (!(typeof document > "u"))
return typeof PointerEvent < "u" ? document.addEventListener("pointerup", g9) : document.addEventListener("touchend", FS), Q2++, () => {
Q2--, !(Q2 > 0) && (typeof PointerEvent < "u" ? document.removeEventListener("pointerup", g9) : document.removeEventListener("touchend", FS));
};
}
function e0e(e) {
let { onHoverStart: t, onHoverChange: r, onHoverEnd: n, isDisabled: o } = e, [a, i] = de(!1), s = ne({
isHovered: !1,
ignoreEmulatedMouseEvents: !1,
pointerType: "",
target: null
}).current;
ue(Z1e, []);
let { addGlobalListener: u, removeAllGlobalListeners: c } = EB(), { hoverProps: d, triggerHoverEnd: l } = Ie(() => {
let f = (m, h) => {
if (s.pointerType = h, o || h === "touch" || s.isHovered || !m.currentTarget.contains(m.target)) return;
s.isHovered = !0;
let w = m.currentTarget;
s.target = w, u(Uc(m.target), "pointerover", ($) => {
s.isHovered && s.target && !_B(s.target, $.target) && p($, $.pointerType);
}, {
capture: !0
}), t && t({
type: "hoverstart",
target: w,
pointerType: h
}), r && r(!0), i(!0);
}, p = (m, h) => {
let w = s.target;
s.pointerType = "", s.target = null, !(h === "touch" || !s.isHovered || !w) && (s.isHovered = !1, c(), n && n({
type: "hoverend",
target: w,
pointerType: h
}), r && r(!1), i(!1));
}, y = {};
return typeof PointerEvent < "u" ? (y.onPointerEnter = (m) => {
R1 && m.pointerType === "mouse" || f(m, m.pointerType);
}, y.onPointerLeave = (m) => {
!o && m.currentTarget.contains(m.target) && p(m, m.pointerType);
}) : (y.onTouchStart = () => {
s.ignoreEmulatedMouseEvents = !0;
}, y.onMouseEnter = (m) => {
!s.ignoreEmulatedMouseEvents && !R1 && f(m, "mouse"), s.ignoreEmulatedMouseEvents = !1;
}, y.onMouseLeave = (m) => {
!o && m.currentTarget.contains(m.target) && p(m, "mouse");
}), {
hoverProps: y,
triggerHoverEnd: p
};
}, [
t,
r,
n,
o,
s,
u,
c
]);
return ue(() => {
o && l({
currentTarget: s.target
}, s.pointerType);
}, [
o
]), {
hoverProps: d,
isHovered: a
};
}
function t0e(e = {}) {
let { autoFocus: t = !1, isTextInput: r, within: n } = e, o = ne({
isFocused: !1,
isFocusVisible: t || jB()
}), [a, i] = de(!1), [s, u] = de(() => o.current.isFocused && o.current.isFocusVisible), c = Ne(() => u(o.current.isFocused && o.current.isFocusVisible), []), d = Ne((p) => {
o.current.isFocused = p, i(p), c();
}, [
c
]);
X1e((p) => {
o.current.isFocusVisible = p, c();
}, [], {
isTextInput: r
});
let { focusProps: l } = J1e({
isDisabled: n,
onFocusChange: d
}), { focusWithinProps: f } = Q1e({
isDisabled: !n,
onFocusWithinChange: d
});
return {
isFocused: a,
isFocusVisible: s,
focusProps: n ? f : l
};
}
var r0e = Object.defineProperty, n0e = (e, t, r) => t in e ? r0e(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, Z2 = (e, t, r) => (n0e(e, typeof t != "symbol" ? t + "" : t, r), r);
let o0e = class {
constructor() {
Z2(this, "current", this.detect()), Z2(this, "handoffState", "pending"), Z2(this, "currentId", 0);
}
set(t) {
this.current !== t && (this.handoffState = "pending", this.currentId = 0, this.current = t);
}
reset() {
this.set(this.detect());
}
nextId() {
return ++this.currentId;
}
get isServer() {
return this.current === "server";
}
get isClient() {
return this.current === "client";
}
detect() {
return typeof window > "u" || typeof document > "u" ? "server" : "client";
}
handoff() {
this.handoffState === "pending" && (this.handoffState = "complete");
}
get isHandoffComplete() {
return this.handoffState === "complete";
}
}, $u = new o0e();
function Tb(e) {
var t, r;
return $u.isServer ? null : e ? "ownerDocument" in e ? e.ownerDocument : "current" in e ? (r = (t = e.current) == null ? void 0 : t.ownerDocument) != null ? r : document : null : document;
}
function RB(e) {
typeof queueMicrotask == "function" ? queueMicrotask(e) : Promise.resolve().then(e).catch((t) => setTimeout(() => {
throw t;
}));
}
function hi() {
let e = [], t = { addEventListener(r, n, o, a) {
return r.addEventListener(n, o, a), t.add(() => r.removeEventListener(n, o, a));
}, requestAnimationFrame(...r) {
let n = requestAnimationFrame(...r);
return t.add(() => cancelAnimationFrame(n));
}, nextFrame(...r) {
return t.requestAnimationFrame(() => t.requestAnimationFrame(...r));
}, setTimeout(...r) {
let n = setTimeout(...r);
return t.add(() => clearTimeout(n));
}, microTask(...r) {
let n = { current: !0 };
return RB(() => {
n.current && r[0]();
}), t.add(() => {
n.current = !1;
});
}, style(r, n, o) {
let a = r.style.getPropertyValue(n);
return Object.assign(r.style, { [n]: o }), this.add(() => {
Object.assign(r.style, { [n]: a });
});
}, group(r) {
let n = hi();
return r(n), this.add(() => n.dispose());
}, add(r) {
return e.includes(r) || e.push(r), () => {
let n = e.indexOf(r);
if (n >= 0) for (let o of e.splice(n, 1)) o();
};
}, dispose() {
for (let r of e.splice(0)) r();
} };
return t;
}
function cp() {
let [e] = de(hi);
return ue(() => () => e.dispose(), [e]), e;
}
let Kr = (e, t) => {
$u.isServer ? ue(e, t) : pi(e, t);
};
function cf(e) {
let t = ne(e);
return Kr(() => {
t.current = e;
}, [e]), t;
}
let Gt = function(e) {
let t = cf(e);
return ae.useCallback((...r) => t.current(...r), [t]);
};
function a0e(e) {
let t = e.width / 2, r = e.height / 2;
return { top: e.clientY - r, right: e.clientX + t, bottom: e.clientY + r, left: e.clientX - t };
}
function i0e(e, t) {
return !(!e || !t || e.right < t.left || e.left > t.right || e.bottom < t.top || e.top > t.bottom);
}
function s0e({ disabled: e = !1 } = {}) {
let t = ne(null), [r, n] = de(!1), o = cp(), a = Gt(() => {
t.current = null, n(!1), o.dispose();
}), i = Gt((s) => {
if (o.dispose(), t.current === null) {
t.current = s.currentTarget, n(!0);
{
let u = Tb(s.currentTarget);
o.addEventListener(u, "pointerup", a, !1), o.addEventListener(u, "pointermove", (c) => {
if (t.current) {
let d = a0e(c);
n(i0e(d, t.current.getBoundingClientRect()));
}
}, !1), o.addEventListener(u, "pointercancel", a, !1);
}
}
});
return { pressed: r, pressProps: e ? {} : { onPointerDown: i, onPointerUp: a, onClick: a } };
}
let l0e = zt(void 0);
function nP() {
return nt(l0e);
}
function LS(...e) {
return Array.from(new Set(e.flatMap((t) => typeof t == "string" ? t.split(" ") : []))).filter(Boolean).join(" ");
}
function ia(e, t, ...r) {
if (e in t) {
let o = t[e];
return typeof o == "function" ? o(...r) : o;
}
let n = new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map((o) => `"${o}"`).join(", ")}.`);
throw Error.captureStackTrace && Error.captureStackTrace(n, ia), n;
}
var M1 = ((e) => (e[e.None = 0] = "None", e[e.RenderStrategy = 1] = "RenderStrategy", e[e.Static = 2] = "Static", e))(M1 || {}), Bl = ((e) => (e[e.Unmount = 0] = "Unmount", e[e.Hidden = 1] = "Hidden", e))(Bl || {});
function lo() {
let e = u0e();
return Ne((t) => c0e({ mergeRefs: e, ...t }), [e]);
}
function c0e({ ourProps: e, theirProps: t, slot: r, defaultTag: n, features: o, visible: a = !0, name: i, mergeRefs: s }) {
s = s ?? f0e;
let u = MB(t, e);
if (a) return Py(u, r, n, i, s);
let c = o ?? 0;
if (c & 2) {
let { static: d = !1, ...l } = u;
if (d) return Py(l, r, n, i, s);
}
if (c & 1) {
let { unmount: d = !0, ...l } = u;
return ia(d ? 0 : 1, { 0() {
return null;
}, 1() {
return Py({ ...l, hidden: !0, style: { display: "none" } }, r, n, i, s);
} });
}
return Py(u, r, n, i, s);
}
function Py(e, t = {}, r, n, o) {
let { as: a = r, children: i, refName: s = "ref", ...u } = e$(e, ["unmount", "static"]), c = e.ref !== void 0 ? { [s]: e.ref } : {}, d = typeof i == "function" ? i(t) : i;
"className" in u && u.className && typeof u.className == "function" && (u.className = u.className(t)), u["aria-labelledby"] && u["aria-labelledby"] === u.id && (u["aria-labelledby"] = void 0);
let l = {};
if (t) {
let f = !1, p = [];
for (let [y, m] of Object.entries(t)) typeof m == "boolean" && (f = !0), m === !0 && p.push(y.replace(/([A-Z])/g, (h) => `-${h.toLowerCase()}`));
if (f) {
l["data-headlessui-state"] = p.join(" ");
for (let y of p) l[`data-${y}`] = "";
}
}
if (a === Ut && (Object.keys(zl(u)).length > 0 || Object.keys(zl(l)).length > 0)) if (!Fi(d) || Array.isArray(d) && d.length > 1) {
if (Object.keys(zl(u)).length > 0) throw new Error(['Passing props on "Fragment"!', "", `The current component <${n} /> is rendering a "Fragment".`, "However we need to passthrough the following props:", Object.keys(zl(u)).concat(Object.keys(zl(l))).map((f) => ` - ${f}`).join(`
`), "", "You can apply a few solutions:", ['Add an `as="..."` prop, to ensure that we render an actual element instead of a "Fragment".', "Render a single element as the child so that we can forward the props onto that element."].map((f) => ` - ${f}`).join(`
`)].join(`
`));
} else {
let f = d.props, p = f == null ? void 0 : f.className, y = typeof p == "function" ? (...w) => LS(p(...w), u.className) : LS(p, u.className), m = y ? { className: y } : {}, h = MB(d.props, zl(e$(u, ["ref"])));
for (let w in l) w in h && delete l[w];
return Li(d, Object.assign({}, h, l, c, { ref: o(d0e(d), c.ref) }, m));
}
return vb(a, Object.assign({}, e$(u, ["ref"]), a !== Ut && c, a !== Ut && l), d);
}
function u0e() {
let e = ne([]), t = Ne((r) => {
for (let n of e.current) n != null && (typeof n == "function" ? n(r) : n.current = r);
}, []);
return (...r) => {
if (!r.every((n) => n == null)) return e.current = r, t;
};
}
function f0e(...e) {
return e.every((t) => t == null) ? void 0 : (t) => {
for (let r of e) r != null && (typeof r == "function" ? r(t) : r.current = t);
};
}
function MB(...e) {
if (e.length === 0) return {};
if (e.length === 1) return e[0];
let t = {}, r = {};
for (let n of e) for (let o in n) o.startsWith("on") && typeof n[o] == "function" ? (r[o] != null || (r[o] = []), r[o].push(n[o])) : t[o] = n[o];
if (t.disabled || t["aria-disabled"]) for (let n in r) /^(on(?:Click|Pointer|Mouse|Key)(?:Down|Up|Press)?)$/.test(n) && (r[n] = [(o) => {
var a;
return (a = o == null ? void 0 : o.preventDefault) == null ? void 0 : a.call(o);
}]);
for (let n in r) Object.assign(t, { [n](o, ...a) {
let i = r[n];
for (let s of i) {
if ((o instanceof Event || (o == null ? void 0 : o.nativeEvent) instanceof Event) && o.defaultPrevented) return;
s(o, ...a);
}
} });
return t;
}
function DB(...e) {
if (e.length === 0) return {};
if (e.length === 1) return e[0];
let t = {}, r = {};
for (let n of e) for (let o in n) o.startsWith("on") && typeof n[o] == "function" ? (r[o] != null || (r[o] = []), r[o].push(n[o])) : t[o] = n[o];
for (let n in r) Object.assign(t, { [n](...o) {
let a = r[n];
for (let i of a) i == null || i(...o);
} });
return t;
}
function eo(e) {
var t;
return Object.assign(sf(e), { displayName: (t = e.displayName) != null ? t : e.name });
}
function zl(e) {
let t = Object.assign({}, e);
for (let r in t) t[r] === void 0 && delete t[r];
return t;
}
function e$(e, t = []) {
let r = Object.assign({}, e);
for (let n of t) n in r && delete r[n];
return r;
}
function d0e(e) {
return ae.version.split(".")[0] >= "19" ? e.props.ref : e.ref;
}
function p0e(e, t, r) {
let [n, o] = de(r), a = e !== void 0, i = ne(a), s = ne(!1), u = ne(!1);
return a && !i.current && !s.current ? (s.current = !0, i.current = a, console.error("A component is changing from uncontrolled to controlled. This may be caused by the value changing from undefined to a defined value, which should not happen.")) : !a && i.current && !u.current && (u.current = !0, i.current = a, console.error("A component is changing from controlled to uncontrolled. This may be caused by the value changing from a defined value to undefined, which should not happen.")), [a ? e : n, Gt((c) => (a || o(c), t == null ? void 0 : t(c)))];
}
function m0e(e) {
let [t] = de(e);
return t;
}
function FB(e = {}, t = null, r = []) {
for (let [n, o] of Object.entries(e)) zB(r, LB(t, n), o);
return r;
}
function LB(e, t) {
return e ? e + "[" + t + "]" : t;
}
function zB(e, t, r) {
if (Array.isArray(r)) for (let [n, o] of r.entries()) zB(e, LB(t, n.toString()), o);
else r instanceof Date ? e.push([t, r.toISOString()]) : typeof r == "boolean" ? e.push([t, r ? "1" : "0"]) : typeof r == "string" ? e.push([t, r]) : typeof r == "number" ? e.push([t, `${r}`]) : r == null ? e.push([t, ""]) : FB(r, t, e);
}
function h0e(e) {
var t, r;
let n = (t = e == null ? void 0 : e.form) != null ? t : e.closest("form");
if (n) {
for (let o of n.elements) if (o !== e && (o.tagName === "INPUT" && o.type === "submit" || o.tagName === "BUTTON" && o.type === "submit" || o.nodeName === "INPUT" && o.type === "image")) {
o.click();
return;
}
(r = n.requestSubmit) == null || r.call(n);
}
}
let g0e = "span";
var oP = ((e) => (e[e.None = 1] = "None", e[e.Focusable = 2] = "Focusable", e[e.Hidden = 4] = "Hidden", e))(oP || {});
function b0e(e, t) {
var r;
let { features: n = 1, ...o } = e, a = { ref: t, "aria-hidden": (n & 2) === 2 ? !0 : (r = o["aria-hidden"]) != null ? r : void 0, hidden: (n & 4) === 4 ? !0 : void 0, style: { position: "fixed", top: 1, left: 1, width: 1, height: 0, padding: 0, margin: -1, overflow: "hidden", clip: "rect(0, 0, 0, 0)", whiteSpace: "nowrap", borderWidth: "0", ...(n & 4) === 4 && (n & 2) !== 2 && { display: "none" } } };
return lo()({ ourProps: a, theirProps: o, slot: {}, defaultTag: g0e, name: "Hidden" });
}
let WB = eo(b0e), y0e = zt(null);
function v0e({ children: e }) {
let t = nt(y0e);
if (!t) return ae.createElement(ae.Fragment, null, e);
let { target: r } = t;
return r ? C0(ae.createElement(ae.Fragment, null, e), r) : null;
}
function x0e({ data: e, form: t, disabled: r, onReset: n, overrides: o }) {
let [a, i] = de(null), s = cp();
return ue(() => {
if (n && a) return s.addEventListener(a, "reset", n);
}, [a, t, n]), ae.createElement(v0e, null, ae.createElement(w0e, { setForm: i, formId: t }), FB(e).map(([u, c]) => ae.createElement(WB, { features: oP.Hidden, ...zl({ key: u, as: "input", type: "hidden", hidden: !0, readOnly: !0, form: t, disabled: r, name: u, value: c, ...o }) })));
}
function w0e({ setForm: e, formId: t }) {
return ue(() => {
if (t) {
let r = document.getElementById(t);
r && e(r);
}
}, [e, t]), t ? null : ae.createElement(WB, { features: oP.Hidden, as: "input", type: "hidden", hidden: !0, readOnly: !0, ref: (r) => {
if (!r) return;
let n = r.closest("form");
n && e(n);
} });
}
let $0e = zt(void 0);
function VB() {
return nt($0e);
}
function k0e(e) {
let t = e.parentElement, r = null;
for (; t && !(t instanceof HTMLFieldSetElement); ) t instanceof HTMLLegendElement && (r = t), t = t.parentElement;
let n = (t == null ? void 0 : t.getAttribute("disabled")) === "";
return n && _0e(r) ? !1 : n;
}
function _0e(e) {
if (!e) return !1;
let t = e.previousElementSibling;
for (; t !== null; ) {
if (t instanceof HTMLLegendElement) return !1;
t = t.previousElementSibling;
}
return !0;
}
let HB = Symbol();
function O0e(e, t = !0) {
return Object.assign(e, { [HB]: t });
}
function Ro(...e) {
let t = ne(e);
ue(() => {
t.current = e;
}, [e]);
let r = Gt((n) => {
for (let o of t.current) o != null && (typeof o == "function" ? o(n) : o.current = n);
});
return e.every((n) => n == null || (n == null ? void 0 : n[HB])) ? void 0 : r;
}
let aP = zt(null);
aP.displayName = "DescriptionContext";
function GB() {
let e = nt(aP);
if (e === null) {
let t = new Error("You used a <Description /> component, but it is not inside a relevant parent.");
throw Error.captureStackTrace && Error.captureStackTrace(t, GB), t;
}
return e;
}
function S0e() {
var e, t;
return (t = (e = nt(aP)) == null ? void 0 : e.value) != null ? t : void 0;
}
let E0e = "p";
function A0e(e, t) {
let r = ua(), n = nP(), { id: o = `headlessui-description-${r}`, ...a } = e, i = GB(), s = Ro(t);
Kr(() => i.register(o), [o, i.register]);
let u = n || !1, c = Ie(() => ({ ...i.slot, disabled: u }), [i.slot, u]), d = { ref: s, ...i.props, id: o };
return lo()({ ourProps: d, theirProps: a, slot: c, defaultTag: E0e, name: i.name || "Description" });
}
let P0e = eo(A0e);
Object.assign(P0e, {});
var ln = ((e) => (e.Space = " ", e.Enter = "Enter", e.Escape = "Escape", e.Backspace = "Backspace", e.Delete = "Delete", e.ArrowLeft = "ArrowLeft", e.ArrowUp = "ArrowUp", e.ArrowRight = "ArrowRight", e.ArrowDown = "ArrowDown", e.Home = "Home", e.End = "End", e.PageUp = "PageUp", e.PageDown = "PageDown", e.Tab = "Tab", e))(ln || {});
let cx = zt(null);
cx.displayName = "LabelContext";
function UB() {
let e = nt(cx);
if (e === null) {
let t = new Error("You used a <Label /> component, but it is not inside a relevant parent.");
throw Error.captureStackTrace && Error.captureStackTrace(t, UB), t;
}
return e;
}
function BB(e) {
var t, r, n;
let o = (r = (t = nt(cx)) == null ? void 0 : t.value) != null ? r : void 0;
return ((n = e == null ? void 0 : e.length) != null ? n : 0) > 0 ? [o, ...e].filter(Boolean).join(" ") : o;
}
function C0e({ inherit: e = !1 } = {}) {
let t = BB(), [r, n] = de([]), o = e ? [t, ...r].filter(Boolean) : r;
return [o.length > 0 ? o.join(" ") : void 0, Ie(() => function(a) {
let i = Gt((u) => (n((c) => [...c, u]), () => n((c) => {
let d = c.slice(), l = d.indexOf(u);
return l !== -1 && d.splice(l, 1), d;
}))), s = Ie(() => ({ register: i, slot: a.slot, name: a.name, props: a.props, value: a.value }), [i, a.slot, a.name, a.props, a.value]);
return ae.createElement(cx.Provider, { value: s }, a.children);
}, [n])];
}
let N0e = "label";
function T0e(e, t) {
var r;
let n = ua(), o = UB(), a = VB(), i = nP(), { id: s = `headlessui-label-${n}`, htmlFor: u = a ?? ((r = o.props) == null ? void 0 : r.htmlFor), passive: c = !1, ...d } = e, l = Ro(t);
Kr(() => o.register(s), [s, o.register]);
let f = Gt((h) => {
let w = h.currentTarget;
if (w instanceof HTMLLabelElement && h.preventDefault(), o.props && "onClick" in o.props && typeof o.props.onClick == "function" && o.props.onClick(h), w instanceof HTMLLabelElement) {
let $ = document.getElementById(w.htmlFor);
if ($) {
let _ = $.getAttribute("disabled");
if (_ === "true" || _ === "") return;
let S = $.getAttribute("aria-disabled");
if (S === "true" || S === "") return;
($ instanceof HTMLInputElement && ($.type === "radio" || $.type === "checkbox") || $.role === "radio" || $.role === "checkbox" || $.role === "switch") && $.click(), $.focus({ preventScroll: !0 });
}
}
}), p = i || !1, y = Ie(() => ({ ...o.slot, disabled: p }), [o.slot, p]), m = { ref: l, ...o.props, id: s, htmlFor: u, onClick: f };
return c && ("onClick" in m && (delete m.htmlFor, delete m.onClick), "onClick" in d && delete d.onClick), lo()({ ourProps: m, theirProps: d, slot: y, defaultTag: u ? N0e : "div", name: o.name || "Label" });
}
let I0e = eo(T0e), j0e = Object.assign(I0e, {});
function R0e(e, t) {
return e !== null && t !== null && typeof e == "object" && typeof t == "object" && "id" in e && "id" in t ? e.id === t.id : e === t;
}
function M0e(e = R0e) {
return Ne((t, r) => {
if (typeof e == "string") {
let n = e;
return (t == null ? void 0 : t[n]) === (r == null ? void 0 : r[n]);
}
return e(t, r);
}, [e]);
}
function D0e(e) {
if (e === null) return { width: 0, height: 0 };
let { width: t, height: r } = e.getBoundingClientRect();
return { width: t, height: r };
}
function F0e(e, t = !1) {
let [r, n] = D4(() => ({}), {}), o = Ie(() => D0e(e), [e, r]);
return Kr(() => {
if (!e) return;
let a = new ResizeObserver(n);
return a.observe(e), () => {
a.disconnect();
};
}, [e]), t ? { width: `${o.width}px`, height: `${o.height}px` } : o;
}
let YB = class extends Map {
constructor(t) {
super(), this.factory = t;
}
get(t) {
let r = super.get(t);
return r === void 0 && (r = this.factory(t), this.set(t, r)), r;
}
};
function qB(e, t) {
let r = e(), n = /* @__PURE__ */ new Set();
return { getSnapshot() {
return r;
}, subscribe(o) {
return n.add(o), () => n.delete(o);
}, dispatch(o, ...a) {
let i = t[o].call(r, ...a);
i && (r = i, n.forEach((s) => s()));
} };
}
function KB(e) {
return hoe(e.subscribe, e.getSnapshot, e.getSnapshot);
}
let L0e = new YB(() => qB(() => [], { ADD(e) {
return this.includes(e) ? this : [...this, e];
}, REMOVE(e) {
let t = this.indexOf(e);
if (t === -1) return this;
let r = this.slice();
return r.splice(t, 1), r;
} }));
function iP(e, t) {
let r = L0e.get(t), n = ua(), o = KB(r);
if (Kr(() => {
if (e) return r.dispatch("ADD", n), () => r.dispatch("REMOVE", n);
}, [r, e]), !e) return !1;
let a = o.indexOf(n), i = o.length;
return a === -1 && (a = i, i += 1), a === i - 1;
}
let zS = /* @__PURE__ */ new Map(), Wh = /* @__PURE__ */ new Map();
function b9(e) {
var t;
let r = (t = Wh.get(e)) != null ? t : 0;
return Wh.set(e, r + 1), r !== 0 ? () => y9(e) : (zS.set(e, { "aria-hidden": e.getAttribute("aria-hidden"), inert: e.inert }), e.setAttribute("aria-hidden", "true"), e.inert = !0, () => y9(e));
}
function y9(e) {
var t;
let r = (t = Wh.get(e)) != null ? t : 1;
if (r === 1 ? Wh.delete(e) : Wh.set(e, r - 1), r !== 1) return;
let n = zS.get(e);
n && (n["aria-hidden"] === null ? e.removeAttribute("aria-hidden") : e.setAttribute("aria-hidden", n["aria-hidden"]), e.inert = n.inert, zS.delete(e));
}
function z0e(e, { allowed: t, disallowed: r } = {}) {
let n = iP(e, "inert-others");
Kr(() => {
var o, a;
if (!n) return;
let i = hi();
for (let u of (o = r == null ? void 0 : r()) != null ? o : []) u && i.add(b9(u));
let s = (a = t == null ? void 0 : t()) != null ? a : [];
for (let u of s) {
if (!u) continue;
let c = Tb(u);
if (!c) continue;
let d = u.parentElement;
for (; d && d !== c.body; ) {
for (let l of d.children) s.some((f) => l.contains(f)) || i.add(b9(l));
d = d.parentElement;
}
}
return i.dispose;
}, [n, t, r]);
}
function W0e(e, t, r) {
let n = cf((o) => {
let a = o.getBoundingClientRect();
a.x === 0 && a.y === 0 && a.width === 0 && a.height === 0 && r();
});
ue(() => {
if (!e) return;
let o = t === null ? null : t instanceof HTMLElement ? t : t.current;
if (!o) return;
let a = hi();
if (typeof ResizeObserver < "u") {
let i = new ResizeObserver(() => n.current(o));
i.observe(o), a.add(() => i.disconnect());
}
if (typeof IntersectionObserver < "u") {
let i = new IntersectionObserver(() => n.current(o));
i.observe(o), a.add(() => i.disconnect());
}
return () => a.dispose();
}, [t, n, e]);
}
let WS = ["[contentEditable=true]", "[tabindex]", "a[href]", "area[href]", "button:not([disabled])", "iframe", "input:not([disabled])", "select:not([disabled])", "textarea:not([disabled])"].map((e) => `${e}:not([tabindex='-1'])`).join(","), V0e = ["[data-autofocus]"].map((e) => `${e}:not([tabindex='-1'])`).join(",");
var VS = ((e) => (e[e.First = 1] = "First", e[e.Previous = 2] = "Previous", e[e.Next = 4] = "Next", e[e.Last = 8] = "Last", e[e.WrapAround = 16] = "WrapAround", e[e.NoScroll = 32] = "NoScroll", e[e.AutoFocus = 64] = "AutoFocus", e))(VS || {}), H0e = ((e) => (e[e.Error = 0] = "Error", e[e.Overflow = 1] = "Overflow", e[e.Success = 2] = "Success", e[e.Underflow = 3] = "Underflow", e))(H0e || {}), G0e = ((e) => (e[e.Previous = -1] = "Previous", e[e.Next = 1] = "Next", e))(G0e || {});
function XB(e = document.body) {
return e == null ? [] : Array.from(e.querySelectorAll(WS)).sort((t, r) => Math.sign((t.tabIndex || Number.MAX_SAFE_INTEGER) - (r.tabIndex || Number.MAX_SAFE_INTEGER)));
}
function U0e(e = document.body) {
return e == null ? [] : Array.from(e.querySelectorAll(V0e)).sort((t, r) => Math.sign((t.tabIndex || Number.MAX_SAFE_INTEGER) - (r.tabIndex || Number.MAX_SAFE_INTEGER)));
}
var sP = ((e) => (e[e.Strict = 0] = "Strict", e[e.Loose = 1] = "Loose", e))(sP || {});
function JB(e, t = 0) {
var r;
return e === ((r = Tb(e)) == null ? void 0 : r.body) ? !1 : ia(t, { 0() {
return e.matches(WS);
}, 1() {
let n = e;
for (; n !== null; ) {
if (n.matches(WS)) return !0;
n = n.parentElement;
}
return !1;
} });
}
var B0e = ((e) => (e[e.Keyboard = 0] = "Keyboard", e[e.Mouse = 1] = "Mouse", e))(B0e || {});
typeof window < "u" && typeof document < "u" && (document.addEventListener("keydown", (e) => {
e.metaKey || e.altKey || e.ctrlKey || (document.documentElement.dataset.headlessuiFocusVisible = "");
}, !0), document.addEventListener("click", (e) => {
e.detail === 1 ? delete document.documentElement.dataset.headlessuiFocusVisible : e.detail === 0 && (document.documentElement.dataset.headlessuiFocusVisible = "");
}, !0));
let Y0e = ["textarea", "input"].join(",");
function q0e(e) {
var t, r;
return (r = (t = e == null ? void 0 : e.matches) == null ? void 0 : t.call(e, Y0e)) != null ? r : !1;
}
function QB(e, t = (r) => r) {
return e.slice().sort((r, n) => {
let o = t(r), a = t(n);
if (o === null || a === null) return 0;
let i = o.compareDocumentPosition(a);
return i & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : i & Node.DOCUMENT_POSITION_PRECEDING ? 1 : 0;
});
}
function K0e(e, t) {
return X0e(XB(), t, { relativeTo: e });
}
function X0e(e, t, { sorted: r = !0, relativeTo: n = null, skipElements: o = [] } = {}) {
let a = Array.isArray(e) ? e.length > 0 ? e[0].ownerDocument : document : e.ownerDocument, i = Array.isArray(e) ? r ? QB(e) : e : t & 64 ? U0e(e) : XB(e);
o.length > 0 && i.length > 1 && (i = i.filter((p) => !o.some((y) => y != null && "current" in y ? (y == null ? void 0 : y.current) === p : y === p))), n = n ?? a.activeElement;
let s = (() => {
if (t & 5) return 1;
if (t & 10) return -1;
throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last");
})(), u = (() => {
if (t & 1) return 0;
if (t & 2) return Math.max(0, i.indexOf(n)) - 1;
if (t & 4) return Math.max(0, i.indexOf(n)) + 1;
if (t & 8) return i.length - 1;
throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last");
})(), c = t & 32 ? { preventScroll: !0 } : {}, d = 0, l = i.length, f;
do {
if (d >= l || d + l <= 0) return 0;
let p = u + d;
if (t & 16) p = (p + l) % l;
else {
if (p < 0) return 3;
if (p >= l) return 1;
}
f = i[p], f == null || f.focus(c), d += s;
} while (f !== a.activeElement);
return t & 6 && q0e(f) && f.select(), 2;
}
function ZB() {
return /iPhone/gi.test(window.navigator.platform) || /Mac/gi.test(window.navigator.platform) && window.navigator.maxTouchPoints > 0;
}
function J0e() {
return /Android/gi.test(window.navigator.userAgent);
}
function Q0e() {
return ZB() || J0e();
}
function jm(e, t, r, n) {
let o = cf(r);
ue(() => {
if (!e) return;
function a(i) {
o.current(i);
}
return document.addEventListener(t, a, n), () => document.removeEventListener(t, a, n);
}, [e, t, n]);
}
function Z0e(e, t, r, n) {
let o = cf(r);
ue(() => {
if (!e) return;
function a(i) {
o.current(i);
}
return window.addEventListener(t, a, n), () => window.removeEventListener(t, a, n);
}, [e, t, n]);
}
const v9 = 30;
function exe(e, t, r) {
let n = iP(e, "outside-click"), o = cf(r), a = Ne(function(u, c) {
if (u.defaultPrevented) return;
let d = c(u);
if (d === null || !d.getRootNode().contains(d) || !d.isConnected) return;
let l = function f(p) {
return typeof p == "function" ? f(p()) : Array.isArray(p) || p instanceof Set ? p : [p];
}(t);
for (let f of l) if (f !== null && (f.contains(d) || u.composed && u.composedPath().includes(f))) return;
return !JB(d, sP.Loose) && d.tabIndex !== -1 && u.preventDefault(), o.current(u, d);
}, [o, t]), i = ne(null);
jm(n, "pointerdown", (u) => {
var c, d;
i.current = ((d = (c = u.composedPath) == null ? void 0 : c.call(u)) == null ? void 0 : d[0]) || u.target;
}, !0), jm(n, "mousedown", (u) => {
var c, d;
i.current = ((d = (c = u.composedPath) == null ? void 0 : c.call(u)) == null ? void 0 : d[0]) || u.target;
}, !0), jm(n, "click", (u) => {
Q0e() || i.current && (a(u, () => i.current), i.current = null);
}, !0);
let s = ne({ x: 0, y: 0 });
jm(n, "touchstart", (u) => {
s.current.x = u.touches[0].clientX, s.current.y = u.touches[0].clientY;
}, !0), jm(n, "touchend", (u) => {
let c = { x: u.changedTouches[0].clientX, y: u.changedTouches[0].clientY };
if (!(Math.abs(c.x - s.current.x) >= v9 || Math.abs(c.y - s.current.y) >= v9)) return a(u, () => u.target instanceof HTMLElement ? u.target : null);
}, !0), Z0e(n, "blur", (u) => a(u, () => window.document.activeElement instanceof HTMLIFrameElement ? window.document.activeElement : null), !0);
}
function HS(...e) {
return Ie(() => Tb(...e), [...e]);
}
function txe(e, t) {
return Ie(() => {
var r;
if (e.type) return e.type;
let n = (r = e.as) != null ? r : "button";
if (typeof n == "string" && n.toLowerCase() === "button" || (t == null ? void 0 : t.tagName) === "BUTTON" && !t.hasAttribute("type")) return "button";
}, [e.type, e.as, t]);
}
function rxe() {
let e;
return { before({ doc: t }) {
var r;
let n = t.documentElement, o = (r = t.defaultView) != null ? r : window;
e = Math.max(0, o.innerWidth - n.clientWidth);
}, after({ doc: t, d: r }) {
let n = t.documentElement, o = Math.max(0, n.clientWidth - n.offsetWidth), a = Math.max(0, e - o);
r.style(n, "paddingRight", `${a}px`);
} };
}
function nxe() {
return ZB() ? { before({ doc: e, d: t, meta: r }) {
function n(o) {
return r.containers.flatMap((a) => a()).some((a) => a.contains(o));
}
t.microTask(() => {
var o;
if (window.getComputedStyle(e.documentElement).scrollBehavior !== "auto") {
let s = hi();
s.style(e.documentElement, "scrollBehavior", "auto"), t.add(() => t.microTask(() => s.dispose()));
}
let a = (o = window.scrollY) != null ? o : window.pageYOffset, i = null;
t.addEventListener(e, "click", (s) => {
if (s.target instanceof HTMLElement) try {
let u = s.target.closest("a");
if (!u) return;
let { hash: c } = new URL(u.href), d = e.querySelector(c);
d && !n(d) && (i = d);
} catch {
}
}, !0), t.addEventListener(e, "touchstart", (s) => {
if (s.target instanceof HTMLElement) if (n(s.target)) {
let u = s.target;
for (; u.parentElement && n(u.parentElement); ) u = u.parentElement;
t.style(u, "overscrollBehavior", "contain");
} else t.style(s.target, "touchAction", "none");
}), t.addEventListener(e, "touchmove", (s) => {
if (s.target instanceof HTMLElement) {
if (s.target.tagName === "INPUT") return;
if (n(s.target)) {
let u = s.target;
for (; u.parentElement && u.dataset.headlessuiPortal !== "" && !(u.scrollHeight > u.clientHeight || u.scrollWidth > u.clientWidth); ) u = u.parentElement;
u.dataset.headlessuiPortal === "" && s.preventDefault();
} else s.preventDefault();
}
}, { passive: !1 }), t.add(() => {
var s;
let u = (s = window.scrollY) != null ? s : window.pageYOffset;
a !== u && window.scrollTo(0, a), i && i.isConnected && (i.scrollIntoView({ block: "nearest" }), i = null);
});
});
} } : {};
}
function oxe() {
return { before({ doc: e, d: t }) {
t.style(e.documentElement, "overflow", "hidden");
} };
}
function axe(e) {
let t = {};
for (let r of e) Object.assign(t, r(t));
return t;
}
let su = qB(() => /* @__PURE__ */ new Map(), { PUSH(e, t) {
var r;
let n = (r = this.get(e)) != null ? r : { doc: e, count: 0, d: hi(), meta: /* @__PURE__ */ new Set() };
return n.count++, n.meta.add(t), this.set(e, n), this;
}, POP(e, t) {
let r = this.get(e);
return r && (r.count--, r.meta.delete(t)), this;
}, SCROLL_PREVENT({ doc: e, d: t, meta: r }) {
let n = { doc: e, d: t, meta: axe(r) }, o = [nxe(), rxe(), oxe()];
o.forEach(({ before: a }) => a == null ? void 0 : a(n)), o.forEach(({ after: a }) => a == null ? void 0 : a(n));
}, SCROLL_ALLOW({ d: e }) {
e.dispose();
}, TEARDOWN({ doc: e }) {
this.delete(e);
} });
su.subscribe(() => {
let e = su.getSnapshot(), t = /* @__PURE__ */ new Map();
for (let [r] of e) t.set(r, r.documentElement.style.overflow);
for (let r of e.values()) {
let n = t.get(r.doc) === "hidden", o = r.count !== 0;
(o && !n || !o && n) && su.dispatch(r.count > 0 ? "SCROLL_PREVENT" : "SCROLL_ALLOW", r), r.count === 0 && su.dispatch("TEARDOWN", r);
}
});
function ixe(e, t, r = () => ({ containers: [] })) {
let n = KB(su), o = t ? n.get(t) : void 0, a = o ? o.count > 0 : !1;
return Kr(() => {
if (!(!t || !e)) return su.dispatch("PUSH", t, r), () => su.dispatch("POP", t, r);
}, [e, t]), a;
}
function sxe(e, t, r = () => [document.body]) {
let n = iP(e, "scroll-lock");
ixe(n, t, (o) => {
var a;
return { containers: [...(a = o.containers) != null ? a : [], r] };
});
}
function x9(e) {
return [e.screenX, e.screenY];
}
function lxe() {
let e = ne([-1, -1]);
return { wasMoved(t) {
let r = x9(t);
return e.current[0] === r[0] && e.current[1] === r[1] ? !1 : (e.current = r, !0);
}, update(t) {
e.current = x9(t);
} };
}
function cxe(e = 0) {
let [t, r] = de(e), n = Ne((u) => r(u), [t]), o = Ne((u) => r((c) => c | u), [t]), a = Ne((u) => (t & u) === u, [t]), i = Ne((u) => r((c) => c & ~u), [r]), s = Ne((u) => r((c) => c ^ u), [r]);
return { flags: t, setFlag: n, addFlag: o, hasFlag: a, removeFlag: i, toggleFlag: s };
}
var w9, $9;
typeof process < "u" && typeof globalThis < "u" && typeof Element < "u" && ((w9 = process == null ? void 0 : process.env) == null ? void 0 : w9.NODE_ENV) === "test" && typeof (($9 = Element == null ? void 0 : Element.prototype) == null ? void 0 : $9.getAnimations) > "u" && (Element.prototype.getAnimations = function() {
return console.warn(["Headless UI has polyfilled `Element.prototype.getAnimations` for your tests.", "Please install a proper polyfill e.g. `jsdom-testing-mocks`, to silence these warnings.", "", "Example usage:", "```js", "import { mockAnimationsApi } from 'jsdom-testing-mocks'", "mockAnimationsApi()", "```"].join(`
`)), [];
});
var uxe = ((e) => (e[e.None = 0] = "None", e[e.Closed = 1] = "Closed", e[e.Enter = 2] = "Enter", e[e.Leave = 4] = "Leave", e))(uxe || {});
function eY(e) {
let t = {};
for (let r in e) e[r] === !0 && (t[`data-${r}`] = "");
return t;
}
function tY(e, t, r, n) {
let [o, a] = de(r), { hasFlag: i, addFlag: s, removeFlag: u } = cxe(e && o ? 3 : 0), c = ne(!1), d = ne(!1), l = cp();
return Kr(() => {
var f;
if (e) {
if (r && a(!0), !t) {
r && s(3);
return;
}
return (f = n == null ? void 0 : n.start) == null || f.call(n, r), fxe(t, { inFlight: c, prepare() {
d.current ? d.current = !1 : d.current = c.current, c.current = !0, !d.current && (r ? (s(3), u(4)) : (s(4), u(2)));
}, run() {
d.current ? r ? (u(3), s(4)) : (u(4), s(3)) : r ? u(1) : s(1);
}, done() {
var p;
d.current && typeof t.getAnimations == "function" && t.getAnimations().length > 0 || (c.current = !1, u(7), r || a(!1), (p = n == null ? void 0 : n.end) == null || p.call(n, r));
} });
}
}, [e, r, t, l]), e ? [o, { closed: i(1), enter: i(2), leave: i(4), transition: i(2) || i(4) }] : [r, { closed: void 0, enter: void 0, leave: void 0, transition: void 0 }];
}
function fxe(e, { prepare: t, run: r, done: n, inFlight: o }) {
let a = hi();
return pxe(e, { prepare: t, inFlight: o }), a.nextFrame(() => {
r(), a.requestAnimationFrame(() => {
a.add(dxe(e, n));
});
}), a.dispose;
}
function dxe(e, t) {
var r, n;
let o = hi();
if (!e) return o.dispose;
let a = !1;
o.add(() => {
a = !0;
});
let i = (n = (r = e.getAnimations) == null ? void 0 : r.call(e).filter((s) => s instanceof CSSTransition)) != null ? n : [];
return i.length === 0 ? (t(), o.dispose) : (Promise.allSettled(i.map((s) => s.finished)).then(() => {
a || t();
}), o.dispose);
}
function pxe(e, { inFlight: t, prepare: r }) {
if (t != null && t.current) {
r();
return;
}
let n = e.style.transition;
e.style.transition = "none", r(), e.offsetHeight, e.style.transition = n;
}
function ux() {
return typeof window < "u";
}
function up(e) {
return rY(e) ? (e.nodeName || "").toLowerCase() : "#document";
}
function no(e) {
var t;
return (e == null || (t = e.ownerDocument) == null ? void 0 : t.defaultView) || window;
}
function gi(e) {
var t;
return (t = (rY(e) ? e.ownerDocument : e.document) || window.document) == null ? void 0 : t.documentElement;
}
function rY(e) {
return ux() ? e instanceof Node || e instanceof no(e).Node : !1;
}
function yn(e) {
return ux() ? e instanceof Element || e instanceof no(e).Element : !1;
}
function ui(e) {
return ux() ? e instanceof HTMLElement || e instanceof no(e).HTMLElement : !1;
}
function k9(e) {
return !ux() || typeof ShadowRoot > "u" ? !1 : e instanceof ShadowRoot || e instanceof no(e).ShadowRoot;
}
function Ib(e) {
const {
overflow: t,
overflowX: r,
overflowY: n,
display: o
} = sa(e);
return /auto|scroll|overlay|hidden|clip/.test(t + n + r) && !["inline", "contents"].includes(o);
}
function mxe(e) {
return ["table", "td", "th"].includes(up(e));
}
function fx(e) {
return [":popover-open", ":modal"].some((t) => {
try {
return e.matches(t);
} catch {
return !1;
}
});
}
function lP(e) {
const t = cP(), r = yn(e) ? sa(e) : e;
return ["transform", "translate", "scale", "rotate", "perspective"].some((n) => r[n] ? r[n] !== "none" : !1) || (r.containerType ? r.containerType !== "normal" : !1) || !t && (r.backdropFilter ? r.backdropFilter !== "none" : !1) || !t && (r.filter ? r.filter !== "none" : !1) || ["transform", "translate", "scale", "rotate", "perspective", "filter"].some((n) => (r.willChange || "").includes(n)) || ["paint", "layout", "strict", "content"].some((n) => (r.contain || "").includes(n));
}
function hxe(e) {
let t = gc(e);
for (; ui(t) && !zd(t); ) {
if (lP(t))
return t;
if (fx(t))
return null;
t = gc(t);
}
return null;
}
function cP() {
return typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter", "none");
}
function zd(e) {
return ["html", "body", "#document"].includes(up(e));
}
function sa(e) {
return no(e).getComputedStyle(e);
}
function dx(e) {
return yn(e) ? {
scrollLeft: e.scrollLeft,
scrollTop: e.scrollTop
} : {
scrollLeft: e.scrollX,
scrollTop: e.scrollY
};
}
function gc(e) {
if (up(e) === "html")
return e;
const t = (
// Step into the shadow DOM of the parent of a slotted node.
e.assignedSlot || // DOM Element detected.
e.parentNode || // ShadowRoot detected.
k9(e) && e.host || // Fallback.
gi(e)
);
return k9(t) ? t.host : t;
}
function nY(e) {
const t = gc(e);
return zd(t) ? e.ownerDocument ? e.ownerDocument.body : e.body : ui(t) && Ib(t) ? t : nY(t);
}
function Dg(e, t, r) {
var n;
t === void 0 && (t = []), r === void 0 && (r = !0);
const o = nY(e), a = o === ((n = e.ownerDocument) == null ? void 0 : n.body), i = no(o);
if (a) {
const s = GS(i);
return t.concat(i, i.visualViewport || [], Ib(o) ? o : [], s && r ? Dg(s) : []);
}
return t.concat(o, Dg(o, [], r));
}
function GS(e) {
return e.parent && Object.getPrototypeOf(e.parent) ? e.frameElement : null;
}
function gxe() {
const e = navigator.userAgentData;
return e && Array.isArray(e.brands) ? e.brands.map((t) => {
let {
brand: r,
version: n
} = t;
return r + "/" + n;
}).join(" ") : navigator.userAgent;
}
const Ru = Math.min, bn = Math.max, Fg = Math.round, Cy = Math.floor, li = (e) => ({
x: e,
y: e
}), bxe = {
left: "right",
right: "left",
bottom: "top",
top: "bottom"
}, yxe = {
start: "end",
end: "start"
};
function _9(e, t, r) {
return bn(e, Ru(t, r));
}
function fp(e, t) {
return typeof e == "function" ? e(t) : e;
}
function bc(e) {
return e.split("-")[0];
}
function jb(e) {
return e.split("-")[1];
}
function oY(e) {
return e === "x" ? "y" : "x";
}
function aY(e) {
return e === "y" ? "height" : "width";
}
function Mu(e) {
return ["top", "bottom"].includes(bc(e)) ? "y" : "x";
}
function iY(e) {
return oY(Mu(e));
}
function vxe(e, t, r) {
r === void 0 && (r = !1);
const n = jb(e), o = iY(e), a = aY(o);
let i = o === "x" ? n === (r ? "end" : "start") ? "right" : "left" : n === "start" ? "bottom" : "top";
return t.reference[a] > t.floating[a] && (i = D1(i)), [i, D1(i)];
}
function xxe(e) {
const t = D1(e);
return [US(e), t, US(t)];
}
function US(e) {
return e.replace(/start|end/g, (t) => yxe[t]);
}
function wxe(e, t, r) {
const n = ["left", "right"], o = ["right", "left"], a = ["top", "bottom"], i = ["bottom", "top"];
switch (e) {
case "top":
case "bottom":
return r ? t ? o : n : t ? n : o;
case "left":
case "right":
return t ? a : i;
default:
return [];
}
}
function $xe(e, t, r, n) {
const o = jb(e);
let a = wxe(bc(e), r === "start", n);
return o && (a = a.map((i) => i + "-" + o), t && (a = a.concat(a.map(US)))), a;
}
function D1(e) {
return e.replace(/left|right|bottom|top/g, (t) => bxe[t]);
}
function kxe(e) {
return {
top: 0,
right: 0,
bottom: 0,
left: 0,
...e
};
}
function _xe(e) {
return typeof e != "number" ? kxe(e) : {
top: e,
right: e,
bottom: e,
left: e
};
}
function F1(e) {
const {
x: t,
y: r,
width: n,
height: o
} = e;
return {
width: n,
height: o,
top: r,
left: t,
right: t + n,
bottom: r + o,
x: t,
y: r
};
}
function O9(e, t, r) {
let {
reference: n,
floating: o
} = e;
const a = Mu(t), i = iY(t), s = aY(i), u = bc(t), c = a === "y", d = n.x + n.width / 2 - o.width / 2, l = n.y + n.height / 2 - o.height / 2, f = n[s] / 2 - o[s] / 2;
let p;
switch (u) {
case "top":
p = {
x: d,
y: n.y - o.height
};
break;
case "bottom":
p = {
x: d,
y: n.y + n.height
};
break;
case "right":
p = {
x: n.x + n.width,
y: l
};
break;
case "left":
p = {
x: n.x - o.width,
y: l
};
break;
default:
p = {
x: n.x,
y: n.y
};
}
switch (jb(t)) {
case "start":
p[i] -= f * (r && c ? -1 : 1);
break;
case "end":
p[i] += f * (r && c ? -1 : 1);
break;
}
return p;
}
const Oxe = async (e, t, r) => {
const {
placement: n = "bottom",
strategy: o = "absolute",
middleware: a = [],
platform: i
} = r, s = a.filter(Boolean), u = await (i.isRTL == null ? void 0 : i.isRTL(t));
let c = await i.getElementRects({
reference: e,
floating: t,
strategy: o
}), {
x: d,
y: l
} = O9(c, n, u), f = n, p = {}, y = 0;
for (let m = 0; m < s.length; m++) {
const {
name: h,
fn: w
} = s[m], {
x: $,
y: _,
data: S,
reset: b
} = await w({
x: d,
y: l,
initialPlacement: n,
placement: f,
strategy: o,
middlewareData: p,
rects: c,
platform: i,
elements: {
reference: e,
floating: t
}
});
d = $ ?? d, l = _ ?? l, p = {
...p,
[h]: {
...p[h],
...S
}
}, b && y <= 50 && (y++, typeof b == "object" && (b.placement && (f = b.placement), b.rects && (c = b.rects === !0 ? await i.getElementRects({
reference: e,
floating: t,
strategy: o
}) : b.rects), {
x: d,
y: l
} = O9(c, f, u)), m = -1);
}
return {
x: d,
y: l,
placement: f,
strategy: o,
middlewareData: p
};
};
async function px(e, t) {
var r;
t === void 0 && (t = {});
const {
x: n,
y: o,
platform: a,
rects: i,
elements: s,
strategy: u
} = e, {
boundary: c = "clippingAncestors",
rootBoundary: d = "viewport",
elementContext: l = "floating",
altBoundary: f = !1,
padding: p = 0
} = fp(t, e), y = _xe(p), m = s[f ? l === "floating" ? "reference" : "floating" : l], h = F1(await a.getClippingRect({
element: (r = await (a.isElement == null ? void 0 : a.isElement(m))) == null || r ? m : m.contextElement || await (a.getDocumentElement == null ? void 0 : a.getDocumentElement(s.floating)),
boundary: c,
rootBoundary: d,
strategy: u
})), w = l === "floating" ? {
x: n,
y: o,
width: i.floating.width,
height: i.floating.height
} : i.reference, $ = await (a.getOffsetParent == null ? void 0 : a.getOffsetParent(s.floating)), _ = await (a.isElement == null ? void 0 : a.isElement($)) ? await (a.getScale == null ? void 0 : a.getScale($)) || {
x: 1,
y: 1
} : {
x: 1,
y: 1
}, S = F1(a.convertOffsetParentRelativeRectToViewportRelativeRect ? await a.convertOffsetParentRelativeRectToViewportRelativeRect({
elements: s,
rect: w,
offsetParent: $,
strategy: u
}) : w);
return {
top: (h.top - S.top + y.top) / _.y,
bottom: (S.bottom - h.bottom + y.bottom) / _.y,
left: (h.left - S.left + y.left) / _.x,
right: (S.right - h.right + y.right) / _.x
};
}
const Sxe = function(e) {
return e === void 0 && (e = {}), {
name: "flip",
options: e,
async fn(t) {
var r, n;
const {
placement: o,
middlewareData: a,
rects: i,
initialPlacement: s,
platform: u,
elements: c
} = t, {
mainAxis: d = !0,
crossAxis: l = !0,
fallbackPlacements: f,
fallbackStrategy: p = "bestFit",
fallbackAxisSideDirection: y = "none",
flipAlignment: m = !0,
...h
} = fp(e, t);
if ((r = a.arrow) != null && r.alignmentOffset)
return {};
const w = bc(o), $ = Mu(s), _ = bc(s) === s, S = await (u.isRTL == null ? void 0 : u.isRTL(c.floating)), b = f || (_ || !m ? [D1(s)] : xxe(s)), F = y !== "none";
!f && F && b.push(...$xe(s, m, y, S));
const z = [s, ...b], q = await px(t, h), Y = [];
let B = ((n = a.flip) == null ? void 0 : n.overflows) || [];
if (d && Y.push(q[w]), l) {
const G = vxe(o, i, S);
Y.push(q[G[0]], q[G[1]]);
}
if (B = [...B, {
placement: o,
overflows: Y
}], !Y.every((G) => G <= 0)) {
var Z, M;
const G = (((Z = a.flip) == null ? void 0 : Z.index) || 0) + 1, H = z[G];
if (H)
return {
data: {
index: G,
overflows: B
},
reset: {
placement: H
}
};
let U = (M = B.filter((W) => W.overflows[0] <= 0).sort((W, X) => W.overflows[1] - X.overflows[1])[0]) == null ? void 0 : M.placement;
if (!U)
switch (p) {
case "bestFit": {
var te;
const W = (te = B.filter((X) => {
if (F) {
const ee = Mu(X.placement);
return ee === $ || // Create a bias to the `y` side axis due to horizontal
// reading directions favoring greater width.
ee === "y";
}
return !0;
}).map((X) => [X.placement, X.overflows.filter((ee) => ee > 0).reduce((ee, v) => ee + v, 0)]).sort((X, ee) => X[1] - ee[1])[0]) == null ? void 0 : te[0];
W && (U = W);
break;
}
case "initialPlacement":
U = s;
break;
}
if (o !== U)
return {
reset: {
placement: U
}
};
}
return {};
}
};
};
async function Exe(e, t) {
const {
placement: r,
platform: n,
elements: o
} = e, a = await (n.isRTL == null ? void 0 : n.isRTL(o.floating)), i = bc(r), s = jb(r), u = Mu(r) === "y", c = ["left", "top"].includes(i) ? -1 : 1, d = a && u ? -1 : 1, l = fp(t, e);
let {
mainAxis: f,
crossAxis: p,
alignmentAxis: y
} = typeof l == "number" ? {
mainAxis: l,
crossAxis: 0,
alignmentAxis: null
} : {
mainAxis: l.mainAxis || 0,
crossAxis: l.crossAxis || 0,
alignmentAxis: l.alignmentAxis
};
return s && typeof y == "number" && (p = s === "end" ? y * -1 : y), u ? {
x: p * d,
y: f * c
} : {
x: f * c,
y: p * d
};
}
const Axe = function(e) {
return e === void 0 && (e = 0), {
name: "offset",
options: e,
async fn(t) {
var r, n;
const {
x: o,
y: a,
placement: i,
middlewareData: s
} = t, u = await Exe(t, e);
return i === ((r = s.offset) == null ? void 0 : r.placement) && (n = s.arrow) != null && n.alignmentOffset ? {} : {
x: o + u.x,
y: a + u.y,
data: {
...u,
placement: i
}
};
}
};
}, Pxe = function(e) {
return e === void 0 && (e = {}), {
name: "shift",
options: e,
async fn(t) {
const {
x: r,
y: n,
placement: o
} = t, {
mainAxis: a = !0,
crossAxis: i = !1,
limiter: s = {
fn: (h) => {
let {
x: w,
y: $
} = h;
return {
x: w,
y: $
};
}
},
...u
} = fp(e, t), c = {
x: r,
y: n
}, d = await px(t, u), l = Mu(bc(o)), f = oY(l);
let p = c[f], y = c[l];
if (a) {
const h = f === "y" ? "top" : "left", w = f === "y" ? "bottom" : "right", $ = p + d[h], _ = p - d[w];
p = _9($, p, _);
}
if (i) {
const h = l === "y" ? "top" : "left", w = l === "y" ? "bottom" : "right", $ = y + d[h], _ = y - d[w];
y = _9($, y, _);
}
const m = s.fn({
...t,
[f]: p,
[l]: y
});
return {
...m,
data: {
x: m.x - r,
y: m.y - n,
enabled: {
[f]: a,
[l]: i
}
}
};
}
};
}, Cxe = function(e) {
return e === void 0 && (e = {}), {
name: "size",
options: e,
async fn(t) {
var r, n;
const {
placement: o,
rects: a,
platform: i,
elements: s
} = t, {
apply: u = () => {
},
...c
} = fp(e, t), d = await px(t, c), l = bc(o), f = jb(o), p = Mu(o) === "y", {
width: y,
height: m
} = a.floating;
let h, w;
l === "top" || l === "bottom" ? (h = l, w = f === (await (i.isRTL == null ? void 0 : i.isRTL(s.floating)) ? "start" : "end") ? "left" : "right") : (w = l, h = f === "end" ? "top" : "bottom");
const $ = m - d.top - d.bottom, _ = y - d.left - d.right, S = Ru(m - d[h], $), b = Ru(y - d[w], _), F = !t.middlewareData.shift;
let z = S, q = b;
if ((r = t.middlewareData.shift) != null && r.enabled.x && (q = _), (n = t.middlewareData.shift) != null && n.enabled.y && (z = $), F && !f) {
const B = bn(d.left, 0), Z = bn(d.right, 0), M = bn(d.top, 0), te = bn(d.bottom, 0);
p ? q = y - 2 * (B !== 0 || Z !== 0 ? B + Z : bn(d.left, d.right)) : z = m - 2 * (M !== 0 || te !== 0 ? M + te : bn(d.top, d.bottom));
}
await u({
...t,
availableWidth: q,
availableHeight: z
});
const Y = await i.getDimensions(s.floating);
return y !== Y.width || m !== Y.height ? {
reset: {
rects: !0
}
} : {};
}
};
};
function sY(e) {
const t = sa(e);
let r = parseFloat(t.width) || 0, n = parseFloat(t.height) || 0;
const o = ui(e), a = o ? e.offsetWidth : r, i = o ? e.offsetHeight : n, s = Fg(r) !== a || Fg(n) !== i;
return s && (r = a, n = i), {
width: r,
height: n,
$: s
};
}
function uP(e) {
return yn(e) ? e : e.contextElement;
}
function pd(e) {
const t = uP(e);
if (!ui(t))
return li(1);
const r = t.getBoundingClientRect(), {
width: n,
height: o,
$: a
} = sY(t);
let i = (a ? Fg(r.width) : r.width) / n, s = (a ? Fg(r.height) : r.height) / o;
return (!i || !Number.isFinite(i)) && (i = 1), (!s || !Number.isFinite(s)) && (s = 1), {
x: i,
y: s
};
}
const Nxe = /* @__PURE__ */ li(0);
function lY(e) {
const t = no(e);
return !cP() || !t.visualViewport ? Nxe : {
x: t.visualViewport.offsetLeft,
y: t.visualViewport.offsetTop
};
}
function Txe(e, t, r) {
return t === void 0 && (t = !1), !r || t && r !== no(e) ? !1 : t;
}
function Du(e, t, r, n) {
t === void 0 && (t = !1), r === void 0 && (r = !1);
const o = e.getBoundingClientRect(), a = uP(e);
let i = li(1);
t && (n ? yn(n) && (i = pd(n)) : i = pd(e));
const s = Txe(a, r, n) ? lY(a) : li(0);
let u = (o.left + s.x) / i.x, c = (o.top + s.y) / i.y, d = o.width / i.x, l = o.height / i.y;
if (a) {
const f = no(a), p = n && yn(n) ? no(n) : n;
let y = f, m = GS(y);
for (; m && n && p !== y; ) {
const h = pd(m), w = m.getBoundingClientRect(), $ = sa(m), _ = w.left + (m.clientLeft + parseFloat($.paddingLeft)) * h.x, S = w.top + (m.clientTop + parseFloat($.paddingTop)) * h.y;
u *= h.x, c *= h.y, d *= h.x, l *= h.y, u += _, c += S, y = no(m), m = GS(y);
}
}
return F1({
width: d,
height: l,
x: u,
y: c
});
}
function fP(e, t) {
const r = dx(e).scrollLeft;
return t ? t.left + r : Du(gi(e)).left + r;
}
function cY(e, t, r) {
r === void 0 && (r = !1);
const n = e.getBoundingClientRect(), o = n.left + t.scrollLeft - (r ? 0 : (
// RTL <body> scrollbar.
fP(e, n)
)), a = n.top + t.scrollTop;
return {
x: o,
y: a
};
}
function Ixe(e) {
let {
elements: t,
rect: r,
offsetParent: n,
strategy: o
} = e;
const a = o === "fixed", i = gi(n), s = t ? fx(t.floating) : !1;
if (n === i || s && a)
return r;
let u = {
scrollLeft: 0,
scrollTop: 0
}, c = li(1);
const d = li(0), l = ui(n);
if ((l || !l && !a) && ((up(n) !== "body" || Ib(i)) && (u = dx(n)), ui(n))) {
const p = Du(n);
c = pd(n), d.x = p.x + n.clientLeft, d.y = p.y + n.clientTop;
}
const f = i && !l && !a ? cY(i, u, !0) : li(0);
return {
width: r.width * c.x,
height: r.height * c.y,
x: r.x * c.x - u.scrollLeft * c.x + d.x + f.x,
y: r.y * c.y - u.scrollTop * c.y + d.y + f.y
};
}
function jxe(e) {
return Array.from(e.getClientRects());
}
function Rxe(e) {
const t = gi(e), r = dx(e), n = e.ownerDocument.body, o = bn(t.scrollWidth, t.clientWidth, n.scrollWidth, n.clientWidth), a = bn(t.scrollHeight, t.clientHeight, n.scrollHeight, n.clientHeight);
let i = -r.scrollLeft + fP(e);
const s = -r.scrollTop;
return sa(n).direction === "rtl" && (i += bn(t.clientWidth, n.clientWidth) - o), {
width: o,
height: a,
x: i,
y: s
};
}
function Mxe(e, t) {
const r = no(e), n = gi(e), o = r.visualViewport;
let a = n.clientWidth, i = n.clientHeight, s = 0, u = 0;
if (o) {
a = o.width, i = o.height;
const c = cP();
(!c || c && t === "fixed") && (s = o.offsetLeft, u = o.offsetTop);
}
return {
width: a,
height: i,
x: s,
y: u
};
}
function Dxe(e, t) {
const r = Du(e, !0, t === "fixed"), n = r.top + e.clientTop, o = r.left + e.clientLeft, a = ui(e) ? pd(e) : li(1), i = e.clientWidth * a.x, s = e.clientHeight * a.y, u = o * a.x, c = n * a.y;
return {
width: i,
height: s,
x: u,
y: c
};
}
function S9(e, t, r) {
let n;
if (t === "viewport")
n = Mxe(e, r);
else if (t === "document")
n = Rxe(gi(e));
else if (yn(t))
n = Dxe(t, r);
else {
const o = lY(e);
n = {
x: t.x - o.x,
y: t.y - o.y,
width: t.width,
height: t.height
};
}
return F1(n);
}
function uY(e, t) {
const r = gc(e);
return r === t || !yn(r) || zd(r) ? !1 : sa(r).position === "fixed" || uY(r, t);
}
function Fxe(e, t) {
const r = t.get(e);
if (r)
return r;
let n = Dg(e, [], !1).filter((s) => yn(s) && up(s) !== "body"), o = null;
const a = sa(e).position === "fixed";
let i = a ? gc(e) : e;
for (; yn(i) && !zd(i); ) {
const s = sa(i), u = lP(i);
!u && s.position === "fixed" && (o = null), (a ? !u && !o : !u && s.position === "static" && o && ["absolute", "fixed"].includes(o.position) || Ib(i) && !u && uY(e, i)) ? n = n.filter((c) => c !== i) : o = s, i = gc(i);
}
return t.set(e, n), n;
}
function Lxe(e) {
let {
element: t,
boundary: r,
rootBoundary: n,
strategy: o
} = e;
const a = [...r === "clippingAncestors" ? fx(t) ? [] : Fxe(t, this._c) : [].concat(r), n], i = a[0], s = a.reduce((u, c) => {
const d = S9(t, c, o);
return u.top = bn(d.top, u.top), u.right = Ru(d.right, u.right), u.bottom = Ru(d.bottom, u.bottom), u.left = bn(d.left, u.left), u;
}, S9(t, i, o));
return {
width: s.right - s.left,
height: s.bottom - s.top,
x: s.left,
y: s.top
};
}
function zxe(e) {
const {
width: t,
height: r
} = sY(e);
return {
width: t,
height: r
};
}
function Wxe(e, t, r) {
const n = ui(t), o = gi(t), a = r === "fixed", i = Du(e, !0, a, t);
let s = {
scrollLeft: 0,
scrollTop: 0
};
const u = li(0);
if (n || !n && !a)
if ((up(t) !== "body" || Ib(o)) && (s = dx(t)), n) {
const f = Du(t, !0, a, t);
u.x = f.x + t.clientLeft, u.y = f.y + t.clientTop;
} else o && (u.x = fP(o));
const c = o && !n && !a ? cY(o, s) : li(0), d = i.left + s.scrollLeft - u.x - c.x, l = i.top + s.scrollTop - u.y - c.y;
return {
x: d,
y: l,
width: i.width,
height: i.height
};
}
function t$(e) {
return sa(e).position === "static";
}
function E9(e, t) {
if (!ui(e) || sa(e).position === "fixed")
return null;
if (t)
return t(e);
let r = e.offsetParent;
return gi(e) === r && (r = r.ownerDocument.body), r;
}
function fY(e, t) {
const r = no(e);
if (fx(e))
return r;
if (!ui(e)) {
let o = gc(e);
for (; o && !zd(o); ) {
if (yn(o) && !t$(o))
return o;
o = gc(o);
}
return r;
}
let n = E9(e, t);
for (; n && mxe(n) && t$(n); )
n = E9(n, t);
return n && zd(n) && t$(n) && !lP(n) ? r : n || hxe(e) || r;
}
const Vxe = async function(e) {
const t = this.getOffsetParent || fY, r = this.getDimensions, n = await r(e.floating);
return {
reference: Wxe(e.reference, await t(e.floating), e.strategy),
floating: {
x: 0,
y: 0,
width: n.width,
height: n.height
}
};
};
function Hxe(e) {
return sa(e).direction === "rtl";
}
const Gxe = {
convertOffsetParentRelativeRectToViewportRelativeRect: Ixe,
getDocumentElement: gi,
getClippingRect: Lxe,
getOffsetParent: fY,
getElementRects: Vxe,
getClientRects: jxe,
getDimensions: zxe,
getScale: pd,
isElement: yn,
isRTL: Hxe
};
function dY(e, t) {
return e.x === t.x && e.y === t.y && e.width === t.width && e.height === t.height;
}
function Uxe(e, t) {
let r = null, n;
const o = gi(e);
function a() {
var s;
clearTimeout(n), (s = r) == null || s.disconnect(), r = null;
}
function i(s, u) {
s === void 0 && (s = !1), u === void 0 && (u = 1), a();
const c = e.getBoundingClientRect(), {
left: d,
top: l,
width: f,
height: p
} = c;
if (s || t(), !f || !p)
return;
const y = Cy(l), m = Cy(o.clientWidth - (d + f)), h = Cy(o.clientHeight - (l + p)), w = Cy(d), $ = {
rootMargin: -y + "px " + -m + "px " + -h + "px " + -w + "px",
threshold: bn(0, Ru(1, u)) || 1
};
let _ = !0;
function S(b) {
const F = b[0].intersectionRatio;
if (F !== u) {
if (!_)
return i();
F ? i(!1, F) : n = setTimeout(() => {
i(!1, 1e-7);
}, 1e3);
}
F === 1 && !dY(c, e.getBoundingClientRect()) && i(), _ = !1;
}
try {
r = new IntersectionObserver(S, {
...$,
// Handle <iframe>s
root: o.ownerDocument
});
} catch {
r = new IntersectionObserver(S, $);
}
r.observe(e);
}
return i(!0), a;
}
function Bxe(e, t, r, n) {
n === void 0 && (n = {});
const {
ancestorScroll: o = !0,
ancestorResize: a = !0,
elementResize: i = typeof ResizeObserver == "function",
layoutShift: s = typeof IntersectionObserver == "function",
animationFrame: u = !1
} = n, c = uP(e), d = o || a ? [...c ? Dg(c) : [], ...Dg(t)] : [];
d.forEach((w) => {
o && w.addEventListener("scroll", r, {
passive: !0
}), a && w.addEventListener("resize", r);
});
const l = c && s ? Uxe(c, r) : null;
let f = -1, p = null;
i && (p = new ResizeObserver((w) => {
let [$] = w;
$ && $.target === c && p && (p.unobserve(t), cancelAnimationFrame(f), f = requestAnimationFrame(() => {
var _;
(_ = p) == null || _.observe(t);
})), r();
}), c && !u && p.observe(c), p.observe(t));
let y, m = u ? Du(e) : null;
u && h();
function h() {
const w = Du(e);
m && !dY(m, w) && r(), m = w, y = requestAnimationFrame(h);
}
return r(), () => {
var w;
d.forEach(($) => {
o && $.removeEventListener("scroll", r), a && $.removeEventListener("resize", r);
}), l == null || l(), (w = p) == null || w.disconnect(), p = null, u && cancelAnimationFrame(y);
};
}
const r$ = px, Yxe = Axe, qxe = Pxe, Kxe = Sxe, Xxe = Cxe, Jxe = (e, t, r) => {
const n = /* @__PURE__ */ new Map(), o = {
platform: Gxe,
...r
}, a = {
...o.platform,
_c: n
};
return Oxe(e, t, {
...o,
platform: a
});
};
var Fv = typeof document < "u" ? pi : ue;
function L1(e, t) {
if (e === t)
return !0;
if (typeof e != typeof t)
return !1;
if (typeof e == "function" && e.toString() === t.toString())
return !0;
let r, n, o;
if (e && t && typeof e == "object") {
if (Array.isArray(e)) {
if (r = e.length, r !== t.length) return !1;
for (n = r; n-- !== 0; )
if (!L1(e[n], t[n]))
return !1;
return !0;
}
if (o = Object.keys(e), r = o.length, r !== Object.keys(t).length)
return !1;
for (n = r; n-- !== 0; )
if (!{}.hasOwnProperty.call(t, o[n]))
return !1;
for (n = r; n-- !== 0; ) {
const a = o[n];
if (!(a === "_owner" && e.$$typeof) && !L1(e[a], t[a]))
return !1;
}
return !0;
}
return e !== e && t !== t;
}
function pY(e) {
return typeof window > "u" ? 1 : (e.ownerDocument.defaultView || window).devicePixelRatio || 1;
}
function A9(e, t) {
const r = pY(e);
return Math.round(t * r) / r;
}
function n$(e) {
const t = V.useRef(e);
return Fv(() => {
t.current = e;
}), t;
}
function Qxe(e) {
e === void 0 && (e = {});
const {
placement: t = "bottom",
strategy: r = "absolute",
middleware: n = [],
platform: o,
elements: {
reference: a,
floating: i
} = {},
transform: s = !0,
whileElementsMounted: u,
open: c
} = e, [d, l] = V.useState({
x: 0,
y: 0,
strategy: r,
placement: t,
middlewareData: {},
isPositioned: !1
}), [f, p] = V.useState(n);
L1(f, n) || p(n);
const [y, m] = V.useState(null), [h, w] = V.useState(null), $ = V.useCallback((X) => {
X !== F.current && (F.current = X, m(X));
}, []), _ = V.useCallback((X) => {
X !== z.current && (z.current = X, w(X));
}, []), S = a || y, b = i || h, F = V.useRef(null), z = V.useRef(null), q = V.useRef(d), Y = u != null, B = n$(u), Z = n$(o), M = n$(c), te = V.useCallback(() => {
if (!F.current || !z.current)
return;
const X = {
placement: t,
strategy: r,
middleware: f
};
Z.current && (X.platform = Z.current), Jxe(F.current, z.current, X).then((ee) => {
const v = {
...ee,
// The floating element's position may be recomputed while it's closed
// but still mounted (such as when transitioning out). To ensure
// `isPositioned` will be `false` initially on the next open, avoid
// setting it to `true` when `open === false` (must be specified).
isPositioned: M.current !== !1
};
G.current && !L1(q.current, v) && (q.current = v, jd.flushSync(() => {
l(v);
}));
});
}, [f, t, r, Z, M]);
Fv(() => {
c === !1 && q.current.isPositioned && (q.current.isPositioned = !1, l((X) => ({
...X,
isPositioned: !1
})));
}, [c]);
const G = V.useRef(!1);
Fv(() => (G.current = !0, () => {
G.current = !1;
}), []), Fv(() => {
if (S && (F.current = S), b && (z.current = b), S && b) {
if (B.current)
return B.current(S, b, te);
te();
}
}, [S, b, te, B, Y]);
const H = V.useMemo(() => ({
reference: F,
floating: z,
setReference: $,
setFloating: _
}), [$, _]), U = V.useMemo(() => ({
reference: S,
floating: b
}), [S, b]), W = V.useMemo(() => {
const X = {
position: r,
left: 0,
top: 0
};
if (!U.floating)
return X;
const ee = A9(U.floating, d.x), v = A9(U.floating, d.y);
return s ? {
...X,
transform: "translate(" + ee + "px, " + v + "px)",
...pY(U.floating) >= 1.5 && {
willChange: "transform"
}
} : {
position: r,
left: ee,
top: v
};
}, [r, s, U.floating, d.x, d.y]);
return V.useMemo(() => ({
...d,
update: te,
refs: H,
elements: U,
floatingStyles: W
}), [d, te, H, U, W]);
}
const mY = (e, t) => ({
...Yxe(e),
options: [e, t]
}), Zxe = (e, t) => ({
...qxe(e),
options: [e, t]
}), ewe = (e, t) => ({
...Kxe(e),
options: [e, t]
}), twe = (e, t) => ({
...Xxe(e),
options: [e, t]
}), hY = {
...V
}, rwe = hY.useInsertionEffect, nwe = rwe || ((e) => e());
function gY(e) {
const t = V.useRef(() => {
if (process.env.NODE_ENV !== "production")
throw new Error("Cannot call an event handler while rendering.");
});
return nwe(() => {
t.current = e;
}), V.useCallback(function() {
for (var r = arguments.length, n = new Array(r), o = 0; o < r; o++)
n[o] = arguments[o];
return t.current == null ? void 0 : t.current(...n);
}, []);
}
var BS = typeof document < "u" ? pi : ue;
let P9 = !1, owe = 0;
const C9 = () => (
// Ensure the id is unique with multiple independent versions of Floating UI
// on <React 18
"floating-ui-" + Math.random().toString(36).slice(2, 6) + owe++
);
function awe() {
const [e, t] = V.useState(() => P9 ? C9() : void 0);
return BS(() => {
e == null && t(C9());
}, []), V.useEffect(() => {
P9 = !0;
}, []), e;
}
const iwe = hY.useId, swe = iwe || awe;
let Lg;
process.env.NODE_ENV !== "production" && (Lg = /* @__PURE__ */ new Set());
function lwe() {
for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = "Floating UI: " + r.join(" ");
if (!((e = Lg) != null && e.has(o))) {
var a;
(a = Lg) == null || a.add(o), console.warn(o);
}
}
function cwe() {
for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = "Floating UI: " + r.join(" ");
if (!((e = Lg) != null && e.has(o))) {
var a;
(a = Lg) == null || a.add(o), console.error(o);
}
}
function uwe() {
const e = /* @__PURE__ */ new Map();
return {
emit(t, r) {
var n;
(n = e.get(t)) == null || n.forEach((o) => o(r));
},
on(t, r) {
e.set(t, [...e.get(t) || [], r]);
},
off(t, r) {
var n;
e.set(t, ((n = e.get(t)) == null ? void 0 : n.filter((o) => o !== r)) || []);
}
};
}
const fwe = /* @__PURE__ */ V.createContext(null), dwe = /* @__PURE__ */ V.createContext(null), pwe = () => {
var e;
return ((e = V.useContext(fwe)) == null ? void 0 : e.id) || null;
}, mwe = () => V.useContext(dwe), hwe = "data-floating-ui-focusable";
function gwe(e) {
const {
open: t = !1,
onOpenChange: r,
elements: n
} = e, o = swe(), a = V.useRef({}), [i] = V.useState(() => uwe()), s = pwe() != null;
if (process.env.NODE_ENV !== "production") {
const p = n.reference;
p && !yn(p) && cwe("Cannot pass a virtual element to the `elements.reference` option,", "as it must be a real DOM element. Use `refs.setPositionReference()`", "instead.");
}
const [u, c] = V.useState(n.reference), d = gY((p, y, m) => {
a.current.openEvent = p ? y : void 0, i.emit("openchange", {
open: p,
event: y,
reason: m,
nested: s
}), r == null || r(p, y, m);
}), l = V.useMemo(() => ({
setPositionReference: c
}), []), f = V.useMemo(() => ({
reference: u || n.reference || null,
floating: n.floating || null,
domReference: n.reference
}), [u, n.reference, n.floating]);
return V.useMemo(() => ({
dataRef: a,
open: t,
onOpenChange: d,
elements: f,
events: i,
floatingId: o,
refs: l
}), [t, d, f, i, o, l]);
}
function bwe(e) {
e === void 0 && (e = {});
const {
nodeId: t
} = e, r = gwe({
...e,
elements: {
reference: null,
floating: null,
...e.elements
}
}), n = e.rootContext || r, o = n.elements, [a, i] = V.useState(null), [s, u] = V.useState(null), c = (o == null ? void 0 : o.domReference) || a, d = V.useRef(null), l = mwe();
BS(() => {
c && (d.current = c);
}, [c]);
const f = Qxe({
...e,
elements: {
...o,
...s && {
reference: s
}
}
}), p = V.useCallback(($) => {
const _ = yn($) ? {
getBoundingClientRect: () => $.getBoundingClientRect(),
contextElement: $
} : $;
u(_), f.refs.setReference(_);
}, [f.refs]), y = V.useCallback(($) => {
(yn($) || $ === null) && (d.current = $, i($)), (yn(f.refs.reference.current) || f.refs.reference.current === null || // Don't allow setting virtual elements using the old technique back to
// `null` to support `positionReference` + an unstable `reference`
// callback ref.
$ !== null && !yn($)) && f.refs.setReference($);
}, [f.refs]), m = V.useMemo(() => ({
...f.refs,
setReference: y,
setPositionReference: p,
domReference: d
}), [f.refs, y, p]), h = V.useMemo(() => ({
...f.elements,
domReference: c
}), [f.elements, c]), w = V.useMemo(() => ({
...f,
...n,
refs: m,
elements: h,
nodeId: t
}), [f, m, h, t, n]);
return BS(() => {
n.dataRef.current.floatingContext = w;
const $ = l == null ? void 0 : l.nodesRef.current.find((_) => _.id === t);
$ && ($.context = w);
}), V.useMemo(() => ({
...f,
context: w,
refs: m,
elements: h
}), [f, m, h, w]);
}
const N9 = "active", T9 = "selected";
function o$(e, t, r) {
const n = /* @__PURE__ */ new Map(), o = r === "item";
let a = e;
if (o && e) {
const {
[N9]: i,
[T9]: s,
...u
} = e;
a = u;
}
return {
...r === "floating" && {
tabIndex: -1,
[hwe]: ""
},
...a,
...t.map((i) => {
const s = i ? i[r] : null;
return typeof s == "function" ? e ? s(e) : null : s;
}).concat(e).reduce((i, s) => (s && Object.entries(s).forEach((u) => {
let [c, d] = u;
if (!(o && [N9, T9].includes(c)))
if (c.indexOf("on") === 0) {
if (n.has(c) || n.set(c, []), typeof d == "function") {
var l;
(l = n.get(c)) == null || l.push(d), i[c] = function() {
for (var f, p = arguments.length, y = new Array(p), m = 0; m < p; m++)
y[m] = arguments[m];
return (f = n.get(c)) == null ? void 0 : f.map((h) => h(...y)).find((h) => h !== void 0);
};
}
} else
i[c] = d;
}), i), {})
};
}
function ywe(e) {
e === void 0 && (e = []);
const t = e.map((s) => s == null ? void 0 : s.reference), r = e.map((s) => s == null ? void 0 : s.floating), n = e.map((s) => s == null ? void 0 : s.item), o = V.useCallback(
(s) => o$(s, e, "reference"),
// eslint-disable-next-line react-hooks/exhaustive-deps
t
), a = V.useCallback(
(s) => o$(s, e, "floating"),
// eslint-disable-next-line react-hooks/exhaustive-deps
r
), i = V.useCallback(
(s) => o$(s, e, "item"),
// eslint-disable-next-line react-hooks/exhaustive-deps
n
);
return V.useMemo(() => ({
getReferenceProps: o,
getFloatingProps: a,
getItemProps: i
}), [o, a, i]);
}
function I9(e, t) {
return {
...e,
rects: {
...e.rects,
floating: {
...e.rects.floating,
height: t
}
}
};
}
const vwe = (e) => ({
name: "inner",
options: e,
async fn(t) {
const {
listRef: r,
overflowRef: n,
onFallbackChange: o,
offset: a = 0,
index: i = 0,
minItemsVisible: s = 4,
referenceOverflowThreshold: u = 0,
scrollRef: c,
...d
} = fp(e, t), {
rects: l,
elements: {
floating: f
}
} = t, p = r.current[i], y = (c == null ? void 0 : c.current) || f, m = f.clientTop || y.clientTop, h = f.clientTop !== 0, w = y.clientTop !== 0, $ = f === y;
if (process.env.NODE_ENV !== "production" && (t.placement.startsWith("bottom") || lwe('`placement` side must be "bottom" when using the `inner`', "middleware.")), !p)
return {};
const _ = {
...t,
...await mY(-p.offsetTop - f.clientTop - l.reference.height / 2 - p.offsetHeight / 2 - a).fn(t)
}, S = await r$(I9(_, y.scrollHeight + m + f.clientTop), d), b = await r$(_, {
...d,
elementContext: "reference"
}), F = bn(0, S.top), z = _.y + F, q = (y.scrollHeight > y.clientHeight ? (Y) => Y : Fg)(bn(0, y.scrollHeight + (h && $ || w ? m * 2 : 0) - F - bn(0, S.bottom)));
if (y.style.maxHeight = q + "px", y.scrollTop = F, o) {
const Y = y.offsetHeight < p.offsetHeight * Ru(s, r.current.length) - 1 || b.top >= -u || b.bottom >= -u;
jd.flushSync(() => o(Y));
}
return n && (n.current = await r$(I9({
..._,
y: z
}, y.offsetHeight + m + f.clientTop), d)), {
y: z
};
}
});
function xwe(e, t) {
const {
open: r,
elements: n
} = e, {
enabled: o = !0,
overflowRef: a,
scrollRef: i,
onChange: s
} = t, u = gY(s), c = V.useRef(!1), d = V.useRef(null), l = V.useRef(null);
V.useEffect(() => {
if (!o) return;
function p(m) {
if (m.ctrlKey || !y || a.current == null)
return;
const h = m.deltaY, w = a.current.top >= -0.5, $ = a.current.bottom >= -0.5, _ = y.scrollHeight - y.clientHeight, S = h < 0 ? -1 : 1, b = h < 0 ? "max" : "min";
y.scrollHeight <= y.clientHeight || (!w && h > 0 || !$ && h < 0 ? (m.preventDefault(), jd.flushSync(() => {
u((F) => F + Math[b](h, _ * S));
})) : /firefox/i.test(gxe()) && (y.scrollTop += h));
}
const y = (i == null ? void 0 : i.current) || n.floating;
if (r && y)
return y.addEventListener("wheel", p), requestAnimationFrame(() => {
d.current = y.scrollTop, a.current != null && (l.current = {
...a.current
});
}), () => {
d.current = null, l.current = null, y.removeEventListener("wheel", p);
};
}, [o, r, n.floating, a, i, u]);
const f = V.useMemo(() => ({
onKeyDown() {
c.current = !0;
},
onWheel() {
c.current = !1;
},
onPointerMove() {
c.current = !1;
},
onScroll() {
const p = (i == null ? void 0 : i.current) || n.floating;
if (!(!a.current || !p || !c.current)) {
if (d.current !== null) {
const y = p.scrollTop - d.current;
(a.current.bottom < -0.5 && y < -1 || a.current.top < -0.5 && y > 1) && jd.flushSync(() => u((m) => m + y));
}
requestAnimationFrame(() => {
d.current = p.scrollTop;
});
}
}
}), [n.floating, u, a, i]);
return V.useMemo(() => o ? {
floating: f
} : {}, [o, f]);
}
let dp = zt({ styles: void 0, setReference: () => {
}, setFloating: () => {
}, getReferenceProps: () => ({}), getFloatingProps: () => ({}), slot: {} });
dp.displayName = "FloatingContext";
let dP = zt(null);
dP.displayName = "PlacementContext";
function wwe(e) {
return Ie(() => e ? typeof e == "string" ? { to: e } : e : null, [e]);
}
function $we() {
return nt(dp).setReference;
}
function kwe() {
return nt(dp).getReferenceProps;
}
function _we() {
let { getFloatingProps: e, slot: t } = nt(dp);
return Ne((...r) => Object.assign({}, e(...r), { "data-anchor": t.anchor }), [e, t]);
}
function Owe(e = null) {
e === !1 && (e = null), typeof e == "string" && (e = { to: e });
let t = nt(dP), r = Ie(() => e, [JSON.stringify(e, (o, a) => {
var i;
return (i = a == null ? void 0 : a.outerHTML) != null ? i : a;
})]);
Kr(() => {
t == null || t(r ?? null);
}, [t, r]);
let n = nt(dp);
return Ie(() => [n.setFloating, e ? n.styles : {}], [n.setFloating, e, n.styles]);
}
let j9 = 4;
function Swe({ children: e, enabled: t = !0 }) {
let [r, n] = de(null), [o, a] = de(0), i = ne(null), [s, u] = de(null);
Ewe(s);
let c = t && r !== null && s !== null, { to: d = "bottom", gap: l = 0, offset: f = 0, padding: p = 0, inner: y } = Awe(r, s), [m, h = "center"] = d.split(" ");
Kr(() => {
c && a(0);
}, [c]);
let { refs: w, floatingStyles: $, context: _ } = bwe({ open: c, placement: m === "selection" ? h === "center" ? "bottom" : `bottom-${h}` : h === "center" ? `${m}` : `${m}-${h}`, strategy: "absolute", transform: !1, middleware: [mY({ mainAxis: m === "selection" ? 0 : l, crossAxis: f }), Zxe({ padding: p }), m !== "selection" && ewe({ padding: p }), m === "selection" && y ? vwe({ ...y, padding: p, overflowRef: i, offset: o, minItemsVisible: j9, referenceOverflowThreshold: p, onFallbackChange(Z) {
var M, te;
if (!Z) return;
let G = _.elements.floating;
if (!G) return;
let H = parseFloat(getComputedStyle(G).scrollPaddingBottom) || 0, U = Math.min(j9, G.childElementCount), W = 0, X = 0;
for (let ee of (te = (M = _.elements.floating) == null ? void 0 : M.childNodes) != null ? te : []) if (ee instanceof HTMLElement) {
let v = ee.offsetTop, g = v + ee.clientHeight + H, O = G.scrollTop, P = O + G.clientHeight;
if (v >= O && g <= P) U--;
else {
X = Math.max(0, Math.min(g, P) - Math.max(v, O)), W = ee.clientHeight;
break;
}
}
U >= 1 && a((ee) => {
let v = W * U - X + H;
return ee >= v ? ee : v;
});
} }) : null, twe({ padding: p, apply({ availableWidth: Z, availableHeight: M, elements: te }) {
Object.assign(te.floating.style, { overflow: "auto", maxWidth: `${Z}px`, maxHeight: `min(var(--anchor-max-height, 100vh), ${M}px)` });
} })].filter(Boolean), whileElementsMounted: Bxe }), [S = m, b = h] = _.placement.split("-");
m === "selection" && (S = "selection");
let F = Ie(() => ({ anchor: [S, b].filter(Boolean).join(" ") }), [S, b]), z = xwe(_, { overflowRef: i, onChange: a }), { getReferenceProps: q, getFloatingProps: Y } = ywe([z]), B = Gt((Z) => {
u(Z), w.setFloating(Z);
});
return V.createElement(dP.Provider, { value: n }, V.createElement(dp.Provider, { value: { setFloating: B, setReference: w.setReference, styles: $, getReferenceProps: q, getFloatingProps: Y, slot: F } }, e));
}
function Ewe(e) {
Kr(() => {
if (!e) return;
let t = new MutationObserver(() => {
let r = window.getComputedStyle(e).maxHeight, n = parseFloat(r);
if (isNaN(n)) return;
let o = parseInt(r);
isNaN(o) || n !== o && (e.style.maxHeight = `${Math.ceil(n)}px`);
});
return t.observe(e, { attributes: !0, attributeFilter: ["style"] }), () => {
t.disconnect();
};
}, [e]);
}
function Awe(e, t) {
var r, n, o;
let a = a$((r = e == null ? void 0 : e.gap) != null ? r : "var(--anchor-gap, 0)", t), i = a$((n = e == null ? void 0 : e.offset) != null ? n : "var(--anchor-offset, 0)", t), s = a$((o = e == null ? void 0 : e.padding) != null ? o : "var(--anchor-padding, 0)", t);
return { ...e, gap: a, offset: i, padding: s };
}
function a$(e, t, r = void 0) {
let n = cp(), o = Gt((u, c) => {
if (u == null) return [r, null];
if (typeof u == "number") return [u, null];
if (typeof u == "string") {
if (!c) return [r, null];
let d = R9(u, c);
return [d, (l) => {
let f = bY(u);
{
let p = f.map((y) => window.getComputedStyle(c).getPropertyValue(y));
n.requestAnimationFrame(function y() {
n.nextFrame(y);
let m = !1;
for (let [w, $] of f.entries()) {
let _ = window.getComputedStyle(c).getPropertyValue($);
if (p[w] !== _) {
p[w] = _, m = !0;
break;
}
}
if (!m) return;
let h = R9(u, c);
d !== h && (l(h), d = h);
});
}
return n.dispose;
}];
}
return [r, null];
}), a = Ie(() => o(e, t)[0], [e, t]), [i = a, s] = de();
return Kr(() => {
let [u, c] = o(e, t);
if (s(u), !!c) return c(s);
}, [e, t]), i;
}
function bY(e) {
let t = /var\((.*)\)/.exec(e);
if (t) {
let r = t[1].indexOf(",");
if (r === -1) return [t[1]];
let n = t[1].slice(0, r).trim(), o = t[1].slice(r + 1).trim();
return o ? [n, ...bY(o)] : [n];
}
return [];
}
function R9(e, t) {
let r = document.createElement("div");
t.appendChild(r), r.style.setProperty("margin-top", "0px", "important"), r.style.setProperty("margin-top", e, "important");
let n = parseFloat(window.getComputedStyle(r).marginTop) || 0;
return t.removeChild(r), n;
}
function Pwe(e, t) {
let [r, n] = de(t);
return !e && r !== t && n(t), e ? r : t;
}
let pP = zt(null);
pP.displayName = "OpenClosedContext";
var ta = ((e) => (e[e.Open = 1] = "Open", e[e.Closed = 2] = "Closed", e[e.Closing = 4] = "Closing", e[e.Opening = 8] = "Opening", e))(ta || {});
function mP() {
return nt(pP);
}
function yY({ value: e, children: t }) {
return ae.createElement(pP.Provider, { value: e }, t);
}
function Cwe(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var i$ = { exports: {} }, s$ = {};
/**
* @license React
* use-sync-external-store-with-selector.production.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var M9;
function Nwe() {
if (M9) return s$;
M9 = 1;
var e = ae;
function t(u, c) {
return u === c && (u !== 0 || 1 / u === 1 / c) || u !== u && c !== c;
}
var r = typeof Object.is == "function" ? Object.is : t, n = e.useSyncExternalStore, o = e.useRef, a = e.useEffect, i = e.useMemo, s = e.useDebugValue;
return s$.useSyncExternalStoreWithSelector = function(u, c, d, l, f) {
var p = o(null);
if (p.current === null) {
var y = { hasValue: !1, value: null };
p.current = y;
} else y = p.current;
p = i(
function() {
function h(b) {
if (!w) {
if (w = !0, $ = b, b = l(b), f !== void 0 && y.hasValue) {
var F = y.value;
if (f(F, b))
return _ = F;
}
return _ = b;
}
if (F = _, r($, b)) return F;
var z = l(b);
return f !== void 0 && f(F, z) ? ($ = b, F) : ($ = b, _ = z);
}
var w = !1, $, _, S = d === void 0 ? null : d;
return [
function() {
return h(c());
},
S === null ? void 0 : function() {
return h(S());
}
];
},
[c, d, l, f]
);
var m = n(u, p[0], p[1]);
return a(
function() {
y.hasValue = !0, y.value = m;
},
[m]
), s(m), m;
}, s$;
}
var D9 = {};
/**
* @license React
* use-sync-external-store-with-selector.development.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var F9;
function Twe() {
return F9 || (F9 = 1, process.env.NODE_ENV !== "production" && function() {
function e(u, c) {
return u === c && (u !== 0 || 1 / u === 1 / c) || u !== u && c !== c;
}
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
var t = ae, r = typeof Object.is == "function" ? Object.is : e, n = t.useSyncExternalStore, o = t.useRef, a = t.useEffect, i = t.useMemo, s = t.useDebugValue;
D9.useSyncExternalStoreWithSelector = function(u, c, d, l, f) {
var p = o(null);
if (p.current === null) {
var y = { hasValue: !1, value: null };
p.current = y;
} else y = p.current;
p = i(
function() {
function h(b) {
if (!w) {
if (w = !0, $ = b, b = l(b), f !== void 0 && y.hasValue) {
var F = y.value;
if (f(F, b))
return _ = F;
}
return _ = b;
}
if (F = _, r($, b))
return F;
var z = l(b);
return f !== void 0 && f(F, z) ? ($ = b, F) : ($ = b, _ = z);
}
var w = !1, $, _, S = d === void 0 ? null : d;
return [
function() {
return h(c());
},
S === null ? void 0 : function() {
return h(S());
}
];
},
[c, d, l, f]
);
var m = n(u, p[0], p[1]);
return a(
function() {
y.hasValue = !0, y.value = m;
},
[m]
), s(m), m;
}, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
}()), D9;
}
var L9;
function Iwe() {
return L9 || (L9 = 1, process.env.NODE_ENV === "production" ? i$.exports = Nwe() : i$.exports = Twe()), i$.exports;
}
var jwe = Iwe(), vY = (e, t, r) => {
if (!t.has(e)) throw TypeError("Cannot " + r);
}, Ko = (e, t, r) => (vY(e, t, "read from private field"), r ? r.call(e) : t.get(e)), l$ = (e, t, r) => {
if (t.has(e)) throw TypeError("Cannot add the same private member more than once");
t instanceof WeakSet ? t.add(e) : t.set(e, r);
}, z9 = (e, t, r, n) => (vY(e, t, "write to private field"), t.set(e, r), r), Ti, ch, uh;
let Rwe = class {
constructor(t) {
l$(this, Ti, {}), l$(this, ch, new YB(() => /* @__PURE__ */ new Set())), l$(this, uh, /* @__PURE__ */ new Set()), z9(this, Ti, t);
}
get state() {
return Ko(this, Ti);
}
subscribe(t, r) {
let n = { selector: t, callback: r, current: t(Ko(this, Ti)) };
return Ko(this, uh).add(n), () => {
Ko(this, uh).delete(n);
};
}
on(t, r) {
return Ko(this, ch).get(t).add(r), () => {
Ko(this, ch).get(t).delete(r);
};
}
send(t) {
z9(this, Ti, this.reduce(Ko(this, Ti), t));
for (let r of Ko(this, uh)) {
let n = r.selector(Ko(this, Ti));
xY(r.current, n) || (r.current = n, r.callback(n));
}
for (let r of Ko(this, ch).get(t.type)) r(Ko(this, Ti), t);
}
};
Ti = /* @__PURE__ */ new WeakMap(), ch = /* @__PURE__ */ new WeakMap(), uh = /* @__PURE__ */ new WeakMap();
function xY(e, t) {
return Object.is(e, t) ? !0 : typeof e != "object" || e === null || typeof t != "object" || t === null ? !1 : Array.isArray(e) && Array.isArray(t) ? e.length !== t.length ? !1 : c$(e[Symbol.iterator](), t[Symbol.iterator]()) : e instanceof Map && t instanceof Map || e instanceof Set && t instanceof Set ? e.size !== t.size ? !1 : c$(e.entries(), t.entries()) : W9(e) && W9(t) ? c$(Object.entries(e)[Symbol.iterator](), Object.entries(t)[Symbol.iterator]()) : !1;
}
function c$(e, t) {
do {
let r = e.next(), n = t.next();
if (r.done && n.done) return !0;
if (r.done || n.done || !Object.is(r.value, n.value)) return !1;
} while (!0);
}
function W9(e) {
if (Object.prototype.toString.call(e) !== "[object Object]") return !1;
let t = Object.getPrototypeOf(e);
return t === null || Object.getPrototypeOf(t) === null;
}
function u$(e) {
let [t, r] = e(), n = hi();
return (...o) => {
t(...o), n.dispose(), n.microTask(r);
};
}
function ra(e, t, r = xY) {
return jwe.useSyncExternalStoreWithSelector(Gt((n) => e.subscribe(Mwe, n)), Gt(() => e.state), Gt(() => e.state), Gt(t), r);
}
function Mwe(e) {
return e;
}
function Dwe(e) {
throw new Error("Unexpected object: " + e);
}
var dn = ((e) => (e[e.First = 0] = "First", e[e.Previous = 1] = "Previous", e[e.Next = 2] = "Next", e[e.Last = 3] = "Last", e[e.Specific = 4] = "Specific", e[e.Nothing = 5] = "Nothing", e))(dn || {});
function f$(e, t) {
let r = t.resolveItems();
if (r.length <= 0) return null;
let n = t.resolveActiveIndex(), o = n ?? -1;
switch (e.focus) {
case 0: {
for (let a = 0; a < r.length; ++a) if (!t.resolveDisabled(r[a], a, r)) return a;
return n;
}
case 1: {
o === -1 && (o = r.length);
for (let a = o - 1; a >= 0; --a) if (!t.resolveDisabled(r[a], a, r)) return a;
return n;
}
case 2: {
for (let a = o + 1; a < r.length; ++a) if (!t.resolveDisabled(r[a], a, r)) return a;
return n;
}
case 3: {
for (let a = r.length - 1; a >= 0; --a) if (!t.resolveDisabled(r[a], a, r)) return a;
return n;
}
case 4: {
for (let a = 0; a < r.length; ++a) if (t.resolveId(r[a], a, r) === e.id) return a;
return n;
}
case 5:
return null;
default:
Dwe(e);
}
}
function Fwe(e) {
let t = Gt(e), r = ne(!1);
ue(() => (r.current = !1, () => {
r.current = !0, RB(() => {
r.current && t();
});
}), [t]);
}
function Lwe() {
let e = typeof document > "u";
return "useSyncExternalStore" in V ? ((t) => t.useSyncExternalStore)(V)(() => () => {
}, () => !1, () => !e) : !1;
}
function hP() {
let e = Lwe(), [t, r] = V.useState($u.isHandoffComplete);
return t && $u.isHandoffComplete === !1 && r(!1), V.useEffect(() => {
t !== !0 && r(!0);
}, [t]), V.useEffect(() => $u.handoff(), []), e ? !1 : t;
}
let zwe = zt(!1);
function Wwe() {
return nt(zwe);
}
function Vwe(e) {
let t = Wwe(), r = nt($Y), [n, o] = de(() => {
var a;
if (!t && r !== null) return (a = r.current) != null ? a : null;
if ($u.isServer) return null;
let i = e == null ? void 0 : e.getElementById("headlessui-portal-root");
if (i) return i;
if (e === null) return null;
let s = e.createElement("div");
return s.setAttribute("id", "headlessui-portal-root"), e.body.appendChild(s);
});
return ue(() => {
n !== null && (e != null && e.body.contains(n) || e == null || e.body.appendChild(n));
}, [n, e]), ue(() => {
t || r !== null && o(r.current);
}, [r, o, t]), n;
}
let wY = Ut, Hwe = eo(function(e, t) {
let { ownerDocument: r = null, ...n } = e, o = ne(null), a = Ro(O0e((p) => {
o.current = p;
}), t), i = HS(o), s = r ?? i, u = Vwe(s), [c] = de(() => {
var p;
return $u.isServer ? null : (p = s == null ? void 0 : s.createElement("div")) != null ? p : null;
}), d = nt(Ywe), l = hP();
Kr(() => {
!u || !c || u.contains(c) || (c.setAttribute("data-headlessui-portal", ""), u.appendChild(c));
}, [u, c]), Kr(() => {
if (c && d) return d.register(c);
}, [d, c]), Fwe(() => {
var p;
!u || !c || (c instanceof Node && u.contains(c) && u.removeChild(c), u.childNodes.length <= 0 && ((p = u.parentElement) == null || p.removeChild(u)));
});
let f = lo();
return l ? !u || !c ? null : C0(f({ ourProps: { ref: a }, theirProps: n, slot: {}, defaultTag: wY, name: "Portal" }), c) : null;
});
function Gwe(e, t) {
let r = Ro(t), { enabled: n = !0, ownerDocument: o, ...a } = e, i = lo();
return n ? ae.createElement(Hwe, { ...a, ownerDocument: o, ref: r }) : i({ ourProps: { ref: r }, theirProps: a, slot: {}, defaultTag: wY, name: "Portal" });
}
let Uwe = Ut, $Y = zt(null);
function Bwe(e, t) {
let { target: r, ...n } = e, o = { ref: Ro(t) }, a = lo();
return ae.createElement($Y.Provider, { value: r }, a({ ourProps: o, theirProps: n, defaultTag: Uwe, name: "Popover.Group" }));
}
let Ywe = zt(null), qwe = eo(Gwe), Kwe = eo(Bwe), Xwe = Object.assign(qwe, { Group: Kwe });
function Jwe() {
let e = ne(!1);
return Kr(() => (e.current = !0, () => {
e.current = !1;
}), []), e;
}
function kY(e) {
var t;
return !!(e.enter || e.enterFrom || e.enterTo || e.leave || e.leaveFrom || e.leaveTo) || ((t = e.as) != null ? t : OY) !== Ut || ae.Children.count(e.children) === 1;
}
let mx = zt(null);
mx.displayName = "TransitionContext";
var Qwe = ((e) => (e.Visible = "visible", e.Hidden = "hidden", e))(Qwe || {});
function Zwe() {
let e = nt(mx);
if (e === null) throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");
return e;
}
function e2e() {
let e = nt(hx);
if (e === null) throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");
return e;
}
let hx = zt(null);
hx.displayName = "NestingContext";
function gx(e) {
return "children" in e ? gx(e.children) : e.current.filter(({ el: t }) => t.current !== null).filter(({ state: t }) => t === "visible").length > 0;
}
function _Y(e, t) {
let r = cf(e), n = ne([]), o = Jwe(), a = cp(), i = Gt((p, y = Bl.Hidden) => {
let m = n.current.findIndex(({ el: h }) => h === p);
m !== -1 && (ia(y, { [Bl.Unmount]() {
n.current.splice(m, 1);
}, [Bl.Hidden]() {
n.current[m].state = "hidden";
} }), a.microTask(() => {
var h;
!gx(n) && o.current && ((h = r.current) == null || h.call(r));
}));
}), s = Gt((p) => {
let y = n.current.find(({ el: m }) => m === p);
return y ? y.state !== "visible" && (y.state = "visible") : n.current.push({ el: p, state: "visible" }), () => i(p, Bl.Unmount);
}), u = ne([]), c = ne(Promise.resolve()), d = ne({ enter: [], leave: [] }), l = Gt((p, y, m) => {
u.current.splice(0), t && (t.chains.current[y] = t.chains.current[y].filter(([h]) => h !== p)), t == null || t.chains.current[y].push([p, new Promise((h) => {
u.current.push(h);
})]), t == null || t.chains.current[y].push([p, new Promise((h) => {
Promise.all(d.current[y].map(([w, $]) => $)).then(() => h());
})]), y === "enter" ? c.current = c.current.then(() => t == null ? void 0 : t.wait.current).then(() => m(y)) : m(y);
}), f = Gt((p, y, m) => {
Promise.all(d.current[y].splice(0).map(([h, w]) => w)).then(() => {
var h;
(h = u.current.shift()) == null || h();
}).then(() => m(y));
});
return Ie(() => ({ children: n, register: s, unregister: i, onStart: l, onStop: f, wait: c, chains: d }), [s, i, n, l, f, d, c]);
}
let OY = Ut, SY = M1.RenderStrategy;
function t2e(e, t) {
var r, n;
let { transition: o = !0, beforeEnter: a, afterEnter: i, beforeLeave: s, afterLeave: u, enter: c, enterFrom: d, enterTo: l, entered: f, leave: p, leaveFrom: y, leaveTo: m, ...h } = e, [w, $] = de(null), _ = ne(null), S = kY(e), b = Ro(...S ? [_, t, $] : t === null ? [] : [t]), F = (r = h.unmount) == null || r ? Bl.Unmount : Bl.Hidden, { show: z, appear: q, initial: Y } = Zwe(), [B, Z] = de(z ? "visible" : "hidden"), M = e2e(), { register: te, unregister: G } = M;
Kr(() => te(_), [te, _]), Kr(() => {
if (F === Bl.Hidden && _.current) {
if (z && B !== "visible") {
Z("visible");
return;
}
return ia(B, { hidden: () => G(_), visible: () => te(_) });
}
}, [B, _, te, G, z, F]);
let H = hP();
Kr(() => {
if (S && H && B === "visible" && _.current === null) throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?");
}, [_, B, H, S]);
let U = Y && !q, W = q && z && Y, X = ne(!1), ee = _Y(() => {
X.current || (Z("hidden"), G(_));
}, M), v = Gt((C) => {
X.current = !0;
let I = C ? "enter" : "leave";
ee.onStart(_, I, (j) => {
j === "enter" ? a == null || a() : j === "leave" && (s == null || s());
});
}), g = Gt((C) => {
let I = C ? "enter" : "leave";
X.current = !1, ee.onStop(_, I, (j) => {
j === "enter" ? i == null || i() : j === "leave" && (u == null || u());
}), I === "leave" && !gx(ee) && (Z("hidden"), G(_));
});
ue(() => {
S && o || (v(z), g(z));
}, [z, S, o]);
let O = !(!o || !S || !H || U), [, P] = tY(O, w, z, { start: v, end: g }), A = zl({ ref: b, className: ((n = LS(h.className, W && c, W && d, P.enter && c, P.enter && P.closed && d, P.enter && !P.closed && l, P.leave && p, P.leave && !P.closed && y, P.leave && P.closed && m, !P.transition && z && f)) == null ? void 0 : n.trim()) || void 0, ...eY(P) }), T = 0;
B === "visible" && (T |= ta.Open), B === "hidden" && (T |= ta.Closed), z && B === "hidden" && (T |= ta.Opening), !z && B === "visible" && (T |= ta.Closing);
let N = lo();
return ae.createElement(hx.Provider, { value: ee }, ae.createElement(yY, { value: T }, N({ ourProps: A, theirProps: h, defaultTag: OY, features: SY, visible: B === "visible", name: "Transition.Child" })));
}
function r2e(e, t) {
let { show: r, appear: n = !1, unmount: o = !0, ...a } = e, i = ne(null), s = kY(e), u = Ro(...s ? [i, t] : t === null ? [] : [t]);
hP();
let c = mP();
if (r === void 0 && c !== null && (r = (c & ta.Open) === ta.Open), r === void 0) throw new Error("A <Transition /> is used but it is missing a `show={true | false}` prop.");
let [d, l] = de(r ? "visible" : "hidden"), f = _Y(() => {
r || l("hidden");
}), [p, y] = de(!0), m = ne([r]);
Kr(() => {
p !== !1 && m.current[m.current.length - 1] !== r && (m.current.push(r), y(!1));
}, [m, r]);
let h = Ie(() => ({ show: r, appear: n, initial: p }), [r, n, p]);
Kr(() => {
r ? l("visible") : !gx(f) && i.current !== null && l("hidden");
}, [r, f]);
let w = { unmount: o }, $ = Gt(() => {
var b;
p && y(!1), (b = e.beforeEnter) == null || b.call(e);
}), _ = Gt(() => {
var b;
p && y(!1), (b = e.beforeLeave) == null || b.call(e);
}), S = lo();
return ae.createElement(hx.Provider, { value: f }, ae.createElement(mx.Provider, { value: h }, S({ ourProps: { ...w, as: Ut, children: ae.createElement(EY, { ref: u, ...w, ...a, beforeEnter: $, beforeLeave: _ }) }, theirProps: {}, defaultTag: Ut, features: SY, visible: d === "visible", name: "Transition" })));
}
function n2e(e, t) {
let r = nt(mx) !== null, n = mP() !== null;
return ae.createElement(ae.Fragment, null, !r && n ? ae.createElement(YS, { ref: t, ...e }) : ae.createElement(EY, { ref: t, ...e }));
}
let YS = eo(r2e), EY = eo(t2e), o2e = eo(n2e), a2e = Object.assign(YS, { Child: o2e, Root: YS });
function i2e(e, t) {
let r = ne({ left: 0, top: 0 });
if (Kr(() => {
if (!t) return;
let o = t.getBoundingClientRect();
o && (r.current = o);
}, [e, t]), t == null || !e || t === document.activeElement) return !1;
let n = t.getBoundingClientRect();
return n.top !== r.current.top || n.left !== r.current.left;
}
let V9 = /([\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF])/g;
function H9(e) {
var t, r;
let n = (t = e.innerText) != null ? t : "", o = e.cloneNode(!0);
if (!(o instanceof HTMLElement)) return n;
let a = !1;
for (let s of o.querySelectorAll('[hidden],[aria-hidden],[role="img"]')) s.remove(), a = !0;
let i = a ? (r = o.innerText) != null ? r : "" : n;
return V9.test(i) && (i = i.replace(V9, "")), i;
}
function s2e(e) {
let t = e.getAttribute("aria-label");
if (typeof t == "string") return t.trim();
let r = e.getAttribute("aria-labelledby");
if (r) {
let n = r.split(" ").map((o) => {
let a = document.getElementById(o);
if (a) {
let i = a.getAttribute("aria-label");
return typeof i == "string" ? i.trim() : H9(a).trim();
}
return null;
}).filter(Boolean);
if (n.length > 0) return n.join(", ");
}
return H9(e).trim();
}
function l2e(e) {
let t = ne(""), r = ne("");
return Gt(() => {
let n = e.current;
if (!n) return "";
let o = n.innerText;
if (t.current === o) return r.current;
let a = s2e(n).trim().toLowerCase();
return t.current = o, r.current = a, a;
});
}
var c2e = Object.defineProperty, u2e = (e, t, r) => t in e ? c2e(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, G9 = (e, t, r) => (u2e(e, typeof t != "symbol" ? t + "" : t, r), r), cn = ((e) => (e[e.Open = 0] = "Open", e[e.Closed = 1] = "Closed", e))(cn || {}), Va = ((e) => (e[e.Single = 0] = "Single", e[e.Multi = 1] = "Multi", e))(Va || {}), qS = ((e) => (e[e.Pointer = 0] = "Pointer", e[e.Other = 1] = "Other", e))(qS || {}), AY = ((e) => (e[e.OpenListbox = 0] = "OpenListbox", e[e.CloseListbox = 1] = "CloseListbox", e[e.GoToOption = 2] = "GoToOption", e[e.Search = 3] = "Search", e[e.ClearSearch = 4] = "ClearSearch", e[e.RegisterOptions = 5] = "RegisterOptions", e[e.UnregisterOptions = 6] = "UnregisterOptions", e[e.SetButtonElement = 7] = "SetButtonElement", e[e.SetOptionsElement = 8] = "SetOptionsElement", e[e.SortOptions = 9] = "SortOptions", e))(AY || {});
function U9(e, t = (r) => r) {
let r = e.activeOptionIndex !== null ? e.options[e.activeOptionIndex] : null, n = QB(t(e.options.slice()), (a) => a.dataRef.current.domRef.current), o = r ? n.indexOf(r) : null;
return o === -1 && (o = null), { options: n, activeOptionIndex: o };
}
let f2e = { 1(e) {
return e.dataRef.current.disabled || e.listboxState === 1 ? e : { ...e, activeOptionIndex: null, listboxState: 1, __demoMode: !1 };
}, 0(e) {
if (e.dataRef.current.disabled || e.listboxState === 0) return e;
let t = e.activeOptionIndex, { isSelected: r } = e.dataRef.current, n = e.options.findIndex((o) => r(o.dataRef.current.value));
return n !== -1 && (t = n), { ...e, listboxState: 0, activeOptionIndex: t, __demoMode: !1 };
}, 2(e, t) {
var r, n, o, a, i;
if (e.dataRef.current.disabled || e.listboxState === 1) return e;
let s = { ...e, searchQuery: "", activationTrigger: (r = t.trigger) != null ? r : 1, __demoMode: !1 };
if (t.focus === dn.Nothing) return { ...s, activeOptionIndex: null };
if (t.focus === dn.Specific) return { ...s, activeOptionIndex: e.options.findIndex((d) => d.id === t.id) };
if (t.focus === dn.Previous) {
let d = e.activeOptionIndex;
if (d !== null) {
let l = e.options[d].dataRef.current.domRef, f = f$(t, { resolveItems: () => e.options, resolveActiveIndex: () => e.activeOptionIndex, resolveId: (p) => p.id, resolveDisabled: (p) => p.dataRef.current.disabled });
if (f !== null) {
let p = e.options[f].dataRef.current.domRef;
if (((n = l.current) == null ? void 0 : n.previousElementSibling) === p.current || ((o = p.current) == null ? void 0 : o.previousElementSibling) === null) return { ...s, activeOptionIndex: f };
}
}
} else if (t.focus === dn.Next) {
let d = e.activeOptionIndex;
if (d !== null) {
let l = e.options[d].dataRef.current.domRef, f = f$(t, { resolveItems: () => e.options, resolveActiveIndex: () => e.activeOptionIndex, resolveId: (p) => p.id, resolveDisabled: (p) => p.dataRef.current.disabled });
if (f !== null) {
let p = e.options[f].dataRef.current.domRef;
if (((a = l.current) == null ? void 0 : a.nextElementSibling) === p.current || ((i = p.current) == null ? void 0 : i.nextElementSibling) === null) return { ...s, activeOptionIndex: f };
}
}
}
let u = U9(e), c = f$(t, { resolveItems: () => u.options, resolveActiveIndex: () => u.activeOptionIndex, resolveId: (d) => d.id, resolveDisabled: (d) => d.dataRef.current.disabled });
return { ...s, ...u, activeOptionIndex: c };
}, 3: (e, t) => {
if (e.dataRef.current.disabled || e.listboxState === 1) return e;
let r = e.searchQuery !== "" ? 0 : 1, n = e.searchQuery + t.value.toLowerCase(), o = (e.activeOptionIndex !== null ? e.options.slice(e.activeOptionIndex + r).concat(e.options.slice(0, e.activeOptionIndex + r)) : e.options).find((i) => {
var s;
return !i.dataRef.current.disabled && ((s = i.dataRef.current.textValue) == null ? void 0 : s.startsWith(n));
}), a = o ? e.options.indexOf(o) : -1;
return a === -1 || a === e.activeOptionIndex ? { ...e, searchQuery: n } : { ...e, searchQuery: n, activeOptionIndex: a, activationTrigger: 1 };
}, 4(e) {
return e.dataRef.current.disabled || e.listboxState === 1 || e.searchQuery === "" ? e : { ...e, searchQuery: "" };
}, 5: (e, t) => {
let r = e.options.concat(t.options), n = e.activeOptionIndex;
if (e.activeOptionIndex === null) {
let { isSelected: o } = e.dataRef.current;
if (o) {
let a = r.findIndex((i) => o == null ? void 0 : o(i.dataRef.current.value));
a !== -1 && (n = a);
}
}
return { ...e, options: r, activeOptionIndex: n, pendingShouldSort: !0 };
}, 6: (e, t) => {
let r = e.options, n = [], o = new Set(t.options);
for (let [a, i] of r.entries()) if (o.has(i.id) && (n.push(a), o.delete(i.id), o.size === 0)) break;
if (n.length > 0) {
r = r.slice();
for (let a of n.reverse()) r.splice(a, 1);
}
return { ...e, options: r, activationTrigger: 1 };
}, 7: (e, t) => e.buttonElement === t.element ? e : { ...e, buttonElement: t.element }, 8: (e, t) => e.optionsElement === t.element ? e : { ...e, optionsElement: t.element }, 9: (e) => e.pendingShouldSort ? { ...e, ...U9(e), pendingShouldSort: !1 } : e }, d2e = class PY extends Rwe {
constructor(t) {
super(t), G9(this, "actions", { onChange: (r) => {
let { onChange: n, compare: o, mode: a, value: i } = this.state.dataRef.current;
return ia(a, { 0: () => n == null ? void 0 : n(r), 1: () => {
let s = i.slice(), u = s.findIndex((c) => o(c, r));
return u === -1 ? s.push(r) : s.splice(u, 1), n == null ? void 0 : n(s);
} });
}, registerOption: u$(() => {
let r = [], n = /* @__PURE__ */ new Set();
return [(o, a) => {
n.has(a) || (n.add(a), r.push({ id: o, dataRef: a }));
}, () => (n.clear(), this.send({ type: 5, options: r.splice(0) }))];
}), unregisterOption: u$(() => {
let r = [];
return [(n) => r.push(n), () => {
this.send({ type: 6, options: r.splice(0) });
}];
}), goToOption: u$(() => {
let r = null;
return [(n, o) => {
r = { type: 2, ...n, trigger: o };
}, () => r && this.send(r)];
}), closeListbox: () => {
this.send({ type: 1 });
}, openListbox: () => {
this.send({ type: 0 });
}, selectActiveOption: () => {
if (this.state.activeOptionIndex !== null) {
let { dataRef: r, id: n } = this.state.options[this.state.activeOptionIndex];
this.actions.onChange(r.current.value), this.send({ type: 2, focus: dn.Specific, id: n });
}
}, selectOption: (r) => {
let n = this.state.options.find((o) => o.id === r);
n && this.actions.onChange(n.dataRef.current.value);
}, search: (r) => {
this.send({ type: 3, value: r });
}, clearSearch: () => {
this.send({ type: 4 });
}, setButtonElement: (r) => {
this.send({ type: 7, element: r });
}, setOptionsElement: (r) => {
this.send({ type: 8, element: r });
} }), G9(this, "selectors", { activeDescendantId(r) {
var n;
let o = r.activeOptionIndex, a = r.options;
return o === null || (n = a[o]) == null ? void 0 : n.id;
}, isActive(r, n) {
var o;
let a = r.activeOptionIndex, i = r.options;
return a !== null ? ((o = i[a]) == null ? void 0 : o.id) === n : !1;
}, shouldScrollIntoView(r, n) {
return r.__demoMode || r.listboxState !== 0 || r.activationTrigger === 0 ? !1 : this.isActive(r, n);
} }), this.on(5, () => {
requestAnimationFrame(() => {
this.send({ type: 9 });
});
});
}
static new({ __demoMode: t = !1 } = {}) {
return new PY({ dataRef: { current: {} }, listboxState: t ? 0 : 1, options: [], searchQuery: "", activeOptionIndex: null, activationTrigger: 1, buttonElement: null, optionsElement: null, __demoMode: t });
}
reduce(t, r) {
return ia(r.type, f2e, t, r);
}
};
const CY = zt(null);
function gP(e) {
let t = nt(CY);
if (t === null) {
let r = new Error(`<${e} /> is missing a parent <Listbox /> component.`);
throw Error.captureStackTrace && Error.captureStackTrace(r, NY), r;
}
return t;
}
function NY({ __demoMode: e = !1 } = {}) {
return Ie(() => d2e.new({ __demoMode: e }), []);
}
let bx = zt(null);
bx.displayName = "ListboxDataContext";
function Rb(e) {
let t = nt(bx);
if (t === null) {
let r = new Error(`<${e} /> is missing a parent <Listbox /> component.`);
throw Error.captureStackTrace && Error.captureStackTrace(r, Rb), r;
}
return t;
}
let p2e = Ut;
function m2e(e, t) {
let r = nP(), { value: n, defaultValue: o, form: a, name: i, onChange: s, by: u, invalid: c = !1, disabled: d = r || !1, horizontal: l = !1, multiple: f = !1, __demoMode: p = !1, ...y } = e;
const m = l ? "horizontal" : "vertical";
let h = Ro(t), w = m0e(o), [$ = f ? [] : void 0, _] = p0e(n, s, w), S = NY({ __demoMode: p }), b = ne({ static: !1, hold: !1 }), F = ne(/* @__PURE__ */ new Map()), z = M0e(u), q = Ne((v) => ia(Y.mode, { [Va.Multi]: () => $.some((g) => z(g, v)), [Va.Single]: () => z($, v) }), [$]), Y = Ie(() => ({ value: $, disabled: d, invalid: c, mode: f ? Va.Multi : Va.Single, orientation: m, onChange: _, compare: z, isSelected: q, optionsPropsRef: b, listRef: F }), [$, d, c, f, m, _, z, q, b, F]);
Kr(() => {
S.state.dataRef.current = Y;
}, [Y]);
let B = ra(S, (v) => v.listboxState), Z = B === cn.Open, [M, te] = ra(S, (v) => [v.buttonElement, v.optionsElement]);
exe(Z, [M, te], (v, g) => {
S.send({ type: AY.CloseListbox }), JB(g, sP.Loose) || (v.preventDefault(), M == null || M.focus());
});
let G = Ie(() => ({ open: B === cn.Open, disabled: d, invalid: c, value: $ }), [B, d, c, $]), [H, U] = C0e({ inherit: !0 }), W = { ref: h }, X = Ne(() => {
if (w !== void 0) return _ == null ? void 0 : _(w);
}, [_, w]), ee = lo();
return ae.createElement(U, { value: H, props: { htmlFor: M == null ? void 0 : M.id }, slot: { open: B === cn.Open, disabled: d } }, ae.createElement(Swe, null, ae.createElement(CY.Provider, { value: S }, ae.createElement(bx.Provider, { value: Y }, ae.createElement(yY, { value: ia(B, { [cn.Open]: ta.Open, [cn.Closed]: ta.Closed }) }, i != null && $ != null && ae.createElement(x0e, { disabled: d, data: { [i]: $ }, form: a, onReset: X }), ee({ ourProps: W, theirProps: y, slot: G, defaultTag: p2e, name: "Listbox" }))))));
}
let h2e = "button";
function g2e(e, t) {
let r = ua(), n = VB(), o = Rb("Listbox.Button"), a = gP("Listbox.Button"), { id: i = n || `headlessui-listbox-button-${r}`, disabled: s = o.disabled || !1, autoFocus: u = !1, ...c } = e, d = Ro(t, $we(), a.actions.setButtonElement), l = kwe(), f = Gt((G) => {
switch (G.key) {
case ln.Enter:
h0e(G.currentTarget);
break;
case ln.Space:
case ln.ArrowDown:
G.preventDefault(), wu(() => a.actions.openListbox()), o.value || a.actions.goToOption({ focus: dn.First });
break;
case ln.ArrowUp:
G.preventDefault(), wu(() => a.actions.openListbox()), o.value || a.actions.goToOption({ focus: dn.Last });
break;
}
}), p = Gt((G) => {
switch (G.key) {
case ln.Space:
G.preventDefault();
break;
}
}), y = Gt((G) => {
var H;
if (G.button === 0) {
if (k0e(G.currentTarget)) return G.preventDefault();
a.state.listboxState === cn.Open ? (wu(() => a.actions.closeListbox()), (H = a.state.buttonElement) == null || H.focus({ preventScroll: !0 })) : (G.preventDefault(), a.actions.openListbox());
}
}), m = Gt((G) => G.preventDefault()), h = BB([i]), w = S0e(), { isFocusVisible: $, focusProps: _ } = t0e({ autoFocus: u }), { isHovered: S, hoverProps: b } = e0e({ isDisabled: s }), { pressed: F, pressProps: z } = s0e({ disabled: s }), q = ra(a, (G) => G.listboxState), Y = Ie(() => ({ open: q === cn.Open, active: F || q === cn.Open, disabled: s, invalid: o.invalid, value: o.value, hover: S, focus: $, autofocus: u }), [q, o.value, s, S, $, F, o.invalid, u]), B = ra(a, (G) => G.listboxState === cn.Open), [Z, M] = ra(a, (G) => [G.buttonElement, G.optionsElement]), te = DB(l(), { ref: d, id: i, type: txe(e, Z), "aria-haspopup": "listbox", "aria-controls": M == null ? void 0 : M.id, "aria-expanded": B, "aria-labelledby": h, "aria-describedby": w, disabled: s || void 0, autoFocus: u, onKeyDown: f, onKeyUp: p, onKeyPress: m, onMouseDown: y }, _, b, z);
return lo()({ ourProps: te, theirProps: c, slot: Y, defaultTag: h2e, name: "Listbox.Button" });
}
let TY = zt(!1), b2e = "div", y2e = M1.RenderStrategy | M1.Static;
function v2e(e, t) {
let r = ua(), { id: n = `headlessui-listbox-options-${r}`, anchor: o, portal: a = !1, modal: i = !0, transition: s = !1, ...u } = e, c = wwe(o), [d, l] = de(null);
c && (a = !0);
let f = Rb("Listbox.Options"), p = gP("Listbox.Options"), [y, m, h, w] = ra(p, (C) => [C.listboxState, C.buttonElement, C.optionsElement, C.__demoMode]), $ = HS(m), _ = HS(h), S = mP(), [b, F] = tY(s, d, S !== null ? (S & ta.Open) === ta.Open : y === cn.Open);
W0e(b, m, p.actions.closeListbox);
let z = w ? !1 : i && y === cn.Open;
sxe(z, _);
let q = w ? !1 : i && y === cn.Open;
z0e(q, { allowed: Ne(() => [m, h], [m, h]) });
let Y = y !== cn.Open, B = i2e(Y, m) ? !1 : b, Z = b && y === cn.Closed, M = Pwe(Z, f.value), te = Gt((C) => f.compare(M, C)), G = ra(p, (C) => {
var I;
if (c == null || !((I = c == null ? void 0 : c.to) != null && I.includes("selection"))) return null;
let j = C.options.findIndex((R) => te(R.dataRef.current.value));
return j === -1 && (j = 0), j;
}), H = (() => {
if (c == null) return;
if (G === null) return { ...c, inner: void 0 };
let C = Array.from(f.listRef.current.values());
return { ...c, inner: { listRef: { current: C }, index: G } };
})(), [U, W] = Owe(H), X = _we(), ee = Ro(t, c ? U : null, p.actions.setOptionsElement, l), v = cp();
ue(() => {
var C;
let I = h;
I && y === cn.Open && I !== ((C = Tb(I)) == null ? void 0 : C.activeElement) && (I == null || I.focus({ preventScroll: !0 }));
}, [y, h]);
let g = Gt((C) => {
var I, j;
switch (v.dispose(), C.key) {
case ln.Space:
if (p.state.searchQuery !== "") return C.preventDefault(), C.stopPropagation(), p.actions.search(C.key);
case ln.Enter:
if (C.preventDefault(), C.stopPropagation(), p.state.activeOptionIndex !== null) {
let { dataRef: R } = p.state.options[p.state.activeOptionIndex];
p.actions.onChange(R.current.value);
}
f.mode === Va.Single && (wu(() => p.actions.closeListbox()), (I = p.state.buttonElement) == null || I.focus({ preventScroll: !0 }));
break;
case ia(f.orientation, { vertical: ln.ArrowDown, horizontal: ln.ArrowRight }):
return C.preventDefault(), C.stopPropagation(), p.actions.goToOption({ focus: dn.Next });
case ia(f.orientation, { vertical: ln.ArrowUp, horizontal: ln.ArrowLeft }):
return C.preventDefault(), C.stopPropagation(), p.actions.goToOption({ focus: dn.Previous });
case ln.Home:
case ln.PageUp:
return C.preventDefault(), C.stopPropagation(), p.actions.goToOption({ focus: dn.First });
case ln.End:
case ln.PageDown:
return C.preventDefault(), C.stopPropagation(), p.actions.goToOption({ focus: dn.Last });
case ln.Escape:
C.preventDefault(), C.stopPropagation(), wu(() => p.actions.closeListbox()), (j = p.state.buttonElement) == null || j.focus({ preventScroll: !0 });
return;
case ln.Tab:
C.preventDefault(), C.stopPropagation(), wu(() => p.actions.closeListbox()), K0e(p.state.buttonElement, C.shiftKey ? VS.Previous : VS.Next);
break;
default:
C.key.length === 1 && (p.actions.search(C.key), v.setTimeout(() => p.actions.clearSearch(), 350));
break;
}
}), O = ra(p, (C) => {
var I;
return (I = C.buttonElement) == null ? void 0 : I.id;
}), P = Ie(() => ({ open: y === cn.Open }), [y]), A = DB(c ? X() : {}, { id: n, ref: ee, "aria-activedescendant": ra(p, p.selectors.activeDescendantId), "aria-multiselectable": f.mode === Va.Multi ? !0 : void 0, "aria-labelledby": O, "aria-orientation": f.orientation, onKeyDown: g, role: "listbox", tabIndex: y === cn.Open ? 0 : void 0, style: { ...u.style, ...W, "--button-width": F0e(m, !0).width }, ...eY(F) }), T = lo(), N = Ie(() => f.mode === Va.Multi ? f : { ...f, isSelected: te }, [f, te]);
return ae.createElement(Xwe, { enabled: a ? e.static || b : !1, ownerDocument: $ }, ae.createElement(bx.Provider, { value: N }, T({ ourProps: A, theirProps: u, slot: P, defaultTag: b2e, features: y2e, visible: B, name: "Listbox.Options" })));
}
let x2e = "div";
function w2e(e, t) {
let r = ua(), { id: n = `headlessui-listbox-option-${r}`, disabled: o = !1, value: a, ...i } = e, s = nt(TY) === !0, u = Rb("Listbox.Option"), c = gP("Listbox.Option"), d = ra(c, (B) => c.selectors.isActive(B, n)), l = u.isSelected(a), f = ne(null), p = l2e(f), y = cf({ disabled: o, value: a, domRef: f, get textValue() {
return p();
} }), m = Ro(t, f, (B) => {
B ? u.listRef.current.set(n, B) : u.listRef.current.delete(n);
}), h = ra(c, (B) => c.selectors.shouldScrollIntoView(B, n));
Kr(() => {
if (h) return hi().requestAnimationFrame(() => {
var B, Z;
(Z = (B = f.current) == null ? void 0 : B.scrollIntoView) == null || Z.call(B, { block: "nearest" });
});
}, [h, f]), Kr(() => {
if (!s) return c.actions.registerOption(n, y), () => c.actions.unregisterOption(n);
}, [y, n, s]);
let w = Gt((B) => {
var Z;
if (o) return B.preventDefault();
c.actions.onChange(a), u.mode === Va.Single && (wu(() => c.actions.closeListbox()), (Z = c.state.buttonElement) == null || Z.focus({ preventScroll: !0 }));
}), $ = Gt(() => {
if (o) return c.actions.goToOption({ focus: dn.Nothing });
c.actions.goToOption({ focus: dn.Specific, id: n });
}), _ = lxe(), S = Gt((B) => {
_.update(B), !o && (d || c.actions.goToOption({ focus: dn.Specific, id: n }, qS.Pointer));
}), b = Gt((B) => {
_.wasMoved(B) && (o || d || c.actions.goToOption({ focus: dn.Specific, id: n }, qS.Pointer));
}), F = Gt((B) => {
_.wasMoved(B) && (o || d && c.actions.goToOption({ focus: dn.Nothing }));
}), z = Ie(() => ({ active: d, focus: d, selected: l, disabled: o, selectedOption: l && s }), [d, l, o, s]), q = s ? {} : { id: n, ref: m, role: "option", tabIndex: o === !0 ? void 0 : -1, "aria-disabled": o === !0 ? !0 : void 0, "aria-selected": l, disabled: void 0, onClick: w, onFocus: $, onPointerEnter: S, onMouseEnter: S, onPointerMove: b, onMouseMove: b, onPointerLeave: F, onMouseLeave: F }, Y = lo();
return !l && s ? null : Y({ ourProps: q, theirProps: i, slot: z, defaultTag: x2e, name: "Listbox.Option" });
}
let $2e = Ut;
function k2e(e, t) {
let { options: r, placeholder: n, ...o } = e, a = { ref: Ro(t) }, i = Rb("ListboxSelectedOption"), s = Ie(() => ({}), []), u = i.value === void 0 || i.value === null || i.mode === Va.Multi && Array.isArray(i.value) && i.value.length === 0, c = lo();
return ae.createElement(TY.Provider, { value: !0 }, c({ ourProps: a, theirProps: { ...o, children: ae.createElement(ae.Fragment, null, n && u ? n : r) }, slot: s, defaultTag: $2e, name: "ListboxSelectedOption" }));
}
let _2e = eo(m2e), IY = eo(g2e), O2e = j0e, jY = eo(v2e), RY = eo(w2e), S2e = eo(k2e), E2e = Object.assign(_2e, { Button: IY, Label: O2e, Options: jY, Option: RY, SelectedOption: S2e });
/*!
* Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
* Copyright 2024 Fonticons, Inc.
*/
const A2e = {
prefix: "fas",
iconName: "chevron-down",
icon: [512, 512, [], "f078", "M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"]
}, P2e = {
prefix: "fas",
iconName: "check",
icon: [448, 512, [10003, 10004], "f00c", "M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"]
};
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function C2e(e, t, r) {
return (t = T2e(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function B9(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function ve(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? B9(Object(r), !0).forEach(function(n) {
C2e(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : B9(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function N2e(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function T2e(e) {
var t = N2e(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const Y9 = () => {
};
let bP = {}, MY = {}, DY = null, FY = {
mark: Y9,
measure: Y9
};
try {
typeof window < "u" && (bP = window), typeof document < "u" && (MY = document), typeof MutationObserver < "u" && (DY = MutationObserver), typeof performance < "u" && (FY = performance);
} catch {
}
const {
userAgent: q9 = ""
} = bP.navigator || {}, yc = bP, zr = MY, K9 = DY, Ny = FY;
yc.document;
const bs = !!zr.documentElement && !!zr.head && typeof zr.addEventListener == "function" && typeof zr.createElement == "function", LY = ~q9.indexOf("MSIE") || ~q9.indexOf("Trident/");
var I2e = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, j2e = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, zY = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, R2e = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, WY = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], kn = "classic", yx = "duotone", M2e = "sharp", D2e = "sharp-duotone", VY = [kn, yx, M2e, D2e], F2e = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, L2e = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, z2e = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), W2e = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, V2e = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], X9 = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, H2e = ["kit"], G2e = {
kit: {
"fa-kit": "fak"
}
}, U2e = ["fak", "fakd"], B2e = {
kit: {
fak: "fa-kit"
}
}, J9 = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, Ty = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, Y2e = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], q2e = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], K2e = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, X2e = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, J2e = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, KS = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, Q2e = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], XS = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...Y2e, ...Q2e], Z2e = ["solid", "regular", "light", "thin", "duotone", "brands"], HY = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], e$e = HY.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), t$e = [...Object.keys(J2e), ...Z2e, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", Ty.GROUP, Ty.SWAP_OPACITY, Ty.PRIMARY, Ty.SECONDARY].concat(HY.map((e) => "".concat(e, "x"))).concat(e$e.map((e) => "w-".concat(e))), r$e = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const qi = "___FONT_AWESOME___", JS = 16, GY = "fa", UY = "svg-inline--fa", Fu = "data-fa-i2svg", QS = "data-fa-pseudo-element", n$e = "data-fa-pseudo-element-pending", yP = "data-prefix", vP = "data-icon", Q9 = "fontawesome-i2svg", o$e = "async", a$e = ["HTML", "HEAD", "STYLE", "SCRIPT"], BY = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function Mb(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[kn];
}
});
}
const YY = ve({}, zY);
YY[kn] = ve(ve(ve(ve({}, {
"fa-duotone": "duotone"
}), zY[kn]), X9.kit), X9["kit-duotone"]);
const i$e = Mb(YY), ZS = ve({}, W2e);
ZS[kn] = ve(ve(ve(ve({}, {
duotone: "fad"
}), ZS[kn]), J9.kit), J9["kit-duotone"]);
const Z9 = Mb(ZS), eE = ve({}, KS);
eE[kn] = ve(ve({}, eE[kn]), B2e.kit);
const xP = Mb(eE), tE = ve({}, X2e);
tE[kn] = ve(ve({}, tE[kn]), G2e.kit);
Mb(tE);
const s$e = I2e, qY = "fa-layers-text", l$e = j2e, c$e = ve({}, F2e);
Mb(c$e);
const u$e = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], d$ = R2e, f$e = [...H2e, ...t$e], Vh = yc.FontAwesomeConfig || {};
function d$e(e) {
var t = zr.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function p$e(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
zr && typeof zr.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = p$e(d$e(t));
n != null && (Vh[r] = n);
});
const KY = {
styleDefault: "solid",
familyDefault: kn,
cssPrefix: GY,
replacementClass: UY,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Vh.familyPrefix && (Vh.cssPrefix = Vh.familyPrefix);
const Wd = ve(ve({}, KY), Vh);
Wd.autoReplaceSvg || (Wd.observeMutations = !1);
const Ge = {};
Object.keys(KY).forEach((e) => {
Object.defineProperty(Ge, e, {
enumerable: !0,
set: function(t) {
Wd[e] = t, Hh.forEach((r) => r(Ge));
},
get: function() {
return Wd[e];
}
});
});
Object.defineProperty(Ge, "familyPrefix", {
enumerable: !0,
set: function(e) {
Wd.cssPrefix = e, Hh.forEach((t) => t(Ge));
},
get: function() {
return Wd.cssPrefix;
}
});
yc.FontAwesomeConfig = Ge;
const Hh = [];
function m$e(e) {
return Hh.push(e), () => {
Hh.splice(Hh.indexOf(e), 1);
};
}
const pl = JS, Ha = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function h$e(e) {
if (!e || !bs)
return;
const t = zr.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = zr.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return zr.head.insertBefore(t, n), e;
}
const g$e = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function zg() {
let e = 12, t = "";
for (; e-- > 0; )
t += g$e[Math.random() * 62 | 0];
return t;
}
function pp(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function wP(e) {
return e.classList ? pp(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function XY(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function b$e(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(XY(e[r]), '" '), "").trim();
}
function vx(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function $P(e) {
return e.size !== Ha.size || e.x !== Ha.x || e.y !== Ha.y || e.rotate !== Ha.rotate || e.flipX || e.flipY;
}
function y$e(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function v$e(e) {
let {
transform: t,
width: r = JS,
height: n = JS,
startCentered: o = !1
} = e, a = "";
return o && LY ? a += "translate(".concat(t.x / pl - r / 2, "em, ").concat(t.y / pl - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / pl, "em), calc(-50% + ").concat(t.y / pl, "em)) ") : a += "translate(".concat(t.x / pl, "em, ").concat(t.y / pl, "em) "), a += "scale(".concat(t.size / pl * (t.flipX ? -1 : 1), ", ").concat(t.size / pl * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var x$e = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function JY() {
const e = GY, t = UY, r = Ge.cssPrefix, n = Ge.replacementClass;
let o = x$e;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let eR = !1;
function p$() {
Ge.autoAddCss && !eR && (h$e(JY()), eR = !0);
}
var w$e = {
mixout() {
return {
dom: {
css: JY,
insertCss: p$
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
p$();
},
beforeI2svg() {
p$();
}
};
}
};
const Ki = yc || {};
Ki[qi] || (Ki[qi] = {});
Ki[qi].styles || (Ki[qi].styles = {});
Ki[qi].hooks || (Ki[qi].hooks = {});
Ki[qi].shims || (Ki[qi].shims = []);
var Ga = Ki[qi];
const QY = [], ZY = function() {
zr.removeEventListener("DOMContentLoaded", ZY), z1 = 1, QY.map((e) => e());
};
let z1 = !1;
bs && (z1 = (zr.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(zr.readyState), z1 || zr.addEventListener("DOMContentLoaded", ZY));
function $$e(e) {
bs && (z1 ? setTimeout(e, 0) : QY.push(e));
}
function Db(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? XY(e) : "<".concat(t, " ").concat(b$e(r), ">").concat(n.map(Db).join(""), "</").concat(t, ">");
}
function tR(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var m$ = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function k$e(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function eq(e) {
const t = k$e(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function _$e(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function rR(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function rE(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = rR(t);
typeof Ga.hooks.addPack == "function" && !n ? Ga.hooks.addPack(e, rR(t)) : Ga.styles[e] = ve(ve({}, Ga.styles[e] || {}), o), e === "fas" && rE("fa", t);
}
const {
styles: Wg,
shims: O$e
} = Ga, tq = Object.keys(xP), S$e = tq.reduce((e, t) => (e[t] = Object.keys(xP[t]), e), {});
let kP = null, rq = {}, nq = {}, oq = {}, aq = {}, iq = {};
function E$e(e) {
return ~f$e.indexOf(e);
}
function A$e(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !E$e(o) ? o : null;
}
const sq = () => {
const e = (n) => m$(Wg, (o, a, i) => (o[i] = m$(a, n, {}), o), {});
rq = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), nq = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), iq = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in Wg || Ge.autoFetchSvg, r = m$(O$e, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
oq = r.names, aq = r.unicodes, kP = xx(Ge.styleDefault, {
family: Ge.familyDefault
});
};
m$e((e) => {
kP = xx(e.styleDefault, {
family: Ge.familyDefault
});
});
sq();
function _P(e, t) {
return (rq[e] || {})[t];
}
function P$e(e, t) {
return (nq[e] || {})[t];
}
function lu(e, t) {
return (iq[e] || {})[t];
}
function lq(e) {
return oq[e] || {
prefix: null,
iconName: null
};
}
function C$e(e) {
const t = aq[e], r = _P("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function vc() {
return kP;
}
const cq = () => ({
prefix: null,
iconName: null,
rest: []
});
function N$e(e) {
let t = kn;
const r = tq.reduce((n, o) => (n[o] = "".concat(Ge.cssPrefix, "-").concat(o), n), {});
return VY.forEach((n) => {
(e.includes(r[n]) || e.some((o) => S$e[n].includes(o))) && (t = n);
}), t;
}
function xx(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = kn
} = t, n = i$e[r][e];
if (r === yx && !e)
return "fad";
const o = Z9[r][e] || Z9[r][n], a = e in Ga.styles ? e : null;
return o || a || null;
}
function T$e(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = A$e(Ge.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function nR(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function wx(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = XS.concat(q2e), a = nR(e.filter((l) => o.includes(l))), i = nR(e.filter((l) => !XS.includes(l))), s = a.filter((l) => (n = l, !WY.includes(l))), [u = null] = s, c = N$e(a), d = ve(ve({}, T$e(i)), {}, {
prefix: xx(u, {
family: c
})
});
return ve(ve(ve({}, d), M$e({
values: e,
family: c,
styles: Wg,
config: Ge,
canonical: d,
givenPrefix: n
})), I$e(r, n, d));
}
function I$e(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? lq(o) : {}, i = lu(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !Wg.far && Wg.fas && !Ge.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const j$e = VY.filter((e) => e !== kn || e !== yx), R$e = Object.keys(KS).filter((e) => e !== kn).map((e) => Object.keys(KS[e])).flat();
function M$e(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === yx, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && j$e.includes(r) && (Object.keys(a).find((l) => R$e.includes(l)) || i.autoFetchSvg)) {
const l = z2e.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = lu(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = vc() || "fas"), n;
}
let D$e = class {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = ve(ve({}, this.definitions[a] || {}), o[a]), rE(a, o[a]);
const i = xP[kn][a];
i && rE(i, o[a]), sq();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}, oR = [], Rf = {};
const md = {}, F$e = Object.keys(md);
function L$e(e, t) {
let {
mixoutsTo: r
} = t;
return oR = e, Rf = {}, Object.keys(md).forEach((n) => {
F$e.indexOf(n) === -1 && delete md[n];
}), oR.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Rf[i] || (Rf[i] = []), Rf[i].push(a[i]);
});
}
n.provides && n.provides(md);
}), r;
}
function nE(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Rf[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function Lu(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Rf[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function xc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return md[e] ? md[e].apply(null, t) : void 0;
}
function oE(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || vc();
if (t)
return t = lu(r, t) || t, tR(uq.definitions, r, t) || tR(Ga.styles, r, t);
}
const uq = new D$e(), z$e = () => {
Ge.autoReplaceSvg = !1, Ge.observeMutations = !1, Lu("noAuto");
}, W$e = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return bs ? (Lu("beforeI2svg", e), xc("pseudoElements2svg", e), xc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
Ge.autoReplaceSvg === !1 && (Ge.autoReplaceSvg = !0), Ge.observeMutations = !0, $$e(() => {
H$e({
autoReplaceSvgRoot: t
}), Lu("watch", e);
});
}
}, V$e = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: lu(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = xx(e[0]);
return {
prefix: r,
iconName: lu(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(Ge.cssPrefix, "-")) > -1 || e.match(s$e))) {
const t = wx(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || vc(),
iconName: lu(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = vc();
return {
prefix: t,
iconName: lu(t, e) || e
};
}
}
}, co = {
noAuto: z$e,
config: Ge,
dom: W$e,
parse: V$e,
library: uq,
findIconDefinition: oE,
toHtml: Db
}, H$e = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = zr
} = e;
(Object.keys(Ga.styles).length > 0 || Ge.autoFetchSvg) && bs && Ge.autoReplaceSvg && co.dom.i2svg({
node: t
});
};
function $x(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => Db(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!bs) return;
const r = zr.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function G$e(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if ($P(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = vx(ve(ve({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function U$e(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(Ge.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: ve(ve({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function OP(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = U2e.includes(n), m = [Ge.replacementClass, o ? "".concat(Ge.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: ve(ve({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[Fu] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || zg())
},
children: [s]
}), delete h.attributes.title);
const $ = ve(ve({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: ve(ve({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? xc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : xc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? U$e($) : G$e($);
}
function aR(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = ve(ve(ve({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[Fu] = "");
const c = ve({}, i.styles);
$P(o) && (c.transform = v$e({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = vx(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function B$e(e) {
const {
content: t,
title: r,
extra: n
} = e, o = ve(ve(ve({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = vx(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: h$
} = Ga;
function aE(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(Ge.cssPrefix, "-").concat(d$.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(Ge.cssPrefix, "-").concat(d$.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(Ge.cssPrefix, "-").concat(d$.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const Y$e = {
found: !1,
width: 512,
height: 512
};
function q$e(e, t) {
!BY && !Ge.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function iE(e, t) {
let r = t;
return t === "fa" && Ge.styleDefault !== null && (t = vc()), new Promise((n, o) => {
if (r === "fa") {
const a = lq(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && h$[t] && h$[t][e]) {
const a = h$[t][e];
return n(aE(a));
}
q$e(e, t), n(ve(ve({}, Y$e), {}, {
icon: Ge.showMissingIcons && e ? xc("missingIconAbstract") || {} : {}
}));
});
}
const iR = () => {
}, sE = Ge.measurePerformance && Ny && Ny.mark && Ny.measure ? Ny : {
mark: iR,
measure: iR
}, fh = 'FA "6.7.2"', K$e = (e) => (sE.mark("".concat(fh, " ").concat(e, " begins")), () => fq(e)), fq = (e) => {
sE.mark("".concat(fh, " ").concat(e, " ends")), sE.measure("".concat(fh, " ").concat(e), "".concat(fh, " ").concat(e, " begins"), "".concat(fh, " ").concat(e, " ends"));
};
var SP = {
begin: K$e,
end: fq
};
const Lv = () => {
};
function sR(e) {
return typeof (e.getAttribute ? e.getAttribute(Fu) : null) == "string";
}
function X$e(e) {
const t = e.getAttribute ? e.getAttribute(yP) : null, r = e.getAttribute ? e.getAttribute(vP) : null;
return t && r;
}
function J$e(e) {
return e && e.classList && e.classList.contains && e.classList.contains(Ge.replacementClass);
}
function Q$e() {
return Ge.autoReplaceSvg === !0 ? zv.replace : zv[Ge.autoReplaceSvg] || zv.replace;
}
function Z$e(e) {
return zr.createElementNS("http://www.w3.org/2000/svg", e);
}
function eke(e) {
return zr.createElement(e);
}
function dq(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? Z$e : eke
} = t;
if (typeof e == "string")
return zr.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(dq(o, {
ceFn: r
}));
}), n;
}
function tke(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const zv = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(dq(r), t);
}), t.getAttribute(Fu) === null && Ge.keepOriginalSource) {
let r = zr.createComment(tke(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~wP(t).indexOf(Ge.replacementClass))
return zv.replace(e);
const n = new RegExp("".concat(Ge.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === Ge.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => Db(a)).join(`
`);
t.setAttribute(Fu, ""), t.innerHTML = o;
}
};
function lR(e) {
e();
}
function pq(e, t) {
const r = typeof t == "function" ? t : Lv;
if (e.length === 0)
r();
else {
let n = lR;
Ge.mutateApproach === o$e && (n = yc.requestAnimationFrame || lR), n(() => {
const o = Q$e(), a = SP.begin("mutate");
e.map(o), a(), r();
});
}
}
let EP = !1;
function mq() {
EP = !0;
}
function lE() {
EP = !1;
}
let W1 = null;
function cR(e) {
if (!K9 || !Ge.observeMutations)
return;
const {
treeCallback: t = Lv,
nodeCallback: r = Lv,
pseudoElementsCallback: n = Lv,
observeMutationsRoot: o = zr
} = e;
W1 = new K9((a) => {
if (EP) return;
const i = vc();
pp(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !sR(s.addedNodes[0]) && (Ge.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && Ge.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && sR(s.target) && ~u$e.indexOf(s.attributeName))
if (s.attributeName === "class" && X$e(s.target)) {
const {
prefix: u,
iconName: c
} = wx(wP(s.target));
s.target.setAttribute(yP, u || i), c && s.target.setAttribute(vP, c);
} else J$e(s.target) && r(s.target);
});
}), bs && W1.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function rke() {
W1 && W1.disconnect();
}
function nke(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function oke(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = wx(wP(e));
return o.prefix || (o.prefix = vc()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = P$e(o.prefix, e.innerText) || _P(o.prefix, eq(e.innerText))), !o.iconName && Ge.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function ake(e) {
const t = pp(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return Ge.autoA11y && (r ? t["aria-labelledby"] = "".concat(Ge.replacementClass, "-title-").concat(n || zg()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function ike() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: Ha,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function uR(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = oke(e), a = ake(e), i = nE("parseNodeAttributes", {}, e);
let s = t.styleParser ? nke(e) : [];
return ve({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: Ha,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: ske
} = Ga;
function hq(e) {
const t = Ge.autoReplaceSvg === "nest" ? uR(e, {
styleParser: !1
}) : uR(e);
return ~t.extra.classes.indexOf(qY) ? xc("generateLayersText", e, t) : xc("generateSvgReplacementMutation", e, t);
}
function lke() {
return [...V2e, ...XS];
}
function fR(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!bs) return Promise.resolve();
const r = zr.documentElement.classList, n = (d) => r.add("".concat(Q9, "-").concat(d)), o = (d) => r.remove("".concat(Q9, "-").concat(d)), a = Ge.autoFetchSvg ? lke() : WY.concat(Object.keys(ske));
a.includes("fa") || a.push("fa");
const i = [".".concat(qY, ":not([").concat(Fu, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(Fu, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = pp(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = SP.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = hq(l);
f && d.push(f);
} catch (f) {
BY || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
pq(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function cke(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
hq(e).then((r) => {
r && pq([r], t);
});
}
function uke(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : oE(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : oE(o || {})), e(n, ve(ve({}, r), {}, {
mask: o
}));
};
}
const fke = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ha,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return $x(ve({
type: "icon"
}, e), () => (Lu("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), Ge.autoA11y && (i ? c["aria-labelledby"] = "".concat(Ge.replacementClass, "-title-").concat(s || zg()) : (c["aria-hidden"] = "true", c.focusable = "false")), OP({
icons: {
main: aE(p),
mask: o ? aE(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: ve(ve({}, Ha), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var dke = {
mixout() {
return {
icon: uke(fke)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = fR, e.nodeCallback = cke, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = zr,
callback: n = () => {
}
} = t;
return fR(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([iE(n, i), c.iconName ? iE(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, OP({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = vx(i);
s.length > 0 && (n.style = s);
let u;
return $P(a) && (u = xc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, pke = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return $x({
type: "layer"
}, () => {
Lu("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(Ge.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, mke = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return $x({
type: "counter",
content: e
}, () => (Lu("beforeDOMElementCreation", {
content: e,
params: t
}), B$e({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(Ge.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, hke = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ha,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return $x({
type: "text",
content: e
}, () => (Lu("beforeDOMElementCreation", {
content: e,
params: t
}), aR({
content: e,
transform: ve(ve({}, Ha), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(Ge.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (LY) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return Ge.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, aR({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const gke = new RegExp('"', "ug"), dR = [1105920, 1112319], pR = ve(ve(ve(ve({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), L2e), r$e), K2e), cE = Object.keys(pR).reduce((e, t) => (e[t.toLowerCase()] = pR[t], e), {}), bke = Object.keys(cE).reduce((e, t) => {
const r = cE[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function yke(e) {
const t = e.replace(gke, ""), r = _$e(t, 0), n = r >= dR[0] && r <= dR[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: eq(o ? t[0] : t),
isSecondary: n || o
};
}
function vke(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (cE[r] || {})[o] || bke[r];
}
function mR(e, t) {
const r = "".concat(n$e).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = pp(e.children).filter((l) => l.getAttribute(QS) === t)[0], i = yc.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(l$e), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = vke(s, c);
const {
value: p,
isSecondary: y
} = yke(l), m = u[0].startsWith("FontAwesome");
let h = _P(f, p), w = h;
if (m) {
const $ = C$e(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(yP) !== f || a.getAttribute(vP) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = ike(), {
extra: _
} = $;
_.attributes[QS] = t, iE(h, f).then((S) => {
const b = OP(ve(ve({}, $), {}, {
icons: {
main: S,
mask: cq()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = zr.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => Db(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function xke(e) {
return Promise.all([mR(e, "::before"), mR(e, "::after")]);
}
function wke(e) {
return e.parentNode !== document.head && !~a$e.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(QS) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function hR(e) {
if (bs)
return new Promise((t, r) => {
const n = pp(e.querySelectorAll("*")).filter(wke).map(xke), o = SP.begin("searchPseudoElements");
mq(), Promise.all(n).then(() => {
o(), lE(), t();
}).catch(() => {
o(), lE(), r();
});
});
}
var $ke = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = hR, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = zr
} = t;
Ge.searchPseudoElements && hR(r);
};
}
};
let gR = !1;
var kke = {
mixout() {
return {
dom: {
unwatch() {
mq(), gR = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
cR(nE("mutationObserverCallbacks", {}));
},
noAuto() {
rke();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
gR ? lE() : cR(nE("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const bR = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var _ke = {
mixout() {
return {
parse: {
transform: (e) => bR(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = bR(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: ve({}, f.outer),
children: [{
tag: "g",
attributes: ve({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: ve(ve({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const g$ = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function yR(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function Oke(e) {
return e.tag === "g" ? e.children : [e];
}
var Ske = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? wx(r.split(" ").map((o) => o.trim())) : cq();
return n.prefix || (n.prefix = vc()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = y$e({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: ve(ve({}, g$), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(yR)
} : {}, m = {
tag: "g",
attributes: ve({}, f.inner),
children: [yR(ve({
tag: c.tag,
attributes: ve(ve({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: ve({}, f.outer),
children: [m]
}, w = "mask-".concat(i || zg()), $ = "clip-".concat(i || zg()), _ = {
tag: "mask",
attributes: ve(ve({}, g$), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: Oke(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: ve({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, g$)
}), {
children: r,
attributes: n
};
};
}
}, Eke = {
provides(e) {
let t = !1;
yc.matchMedia && (t = yc.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: ve(ve({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = ve(ve({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: ve(ve({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: ve(ve({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: ve(ve({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: ve(ve({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: ve(ve({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: ve(ve({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: ve(ve({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, Ake = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, Pke = [w$e, dke, pke, mke, hke, $ke, kke, _ke, Ske, Eke, Ake];
L$e(Pke, {
mixoutsTo: co
});
co.noAuto;
co.config;
co.library;
co.dom;
const uE = co.parse;
co.findIconDefinition;
co.toHtml;
const Cke = co.icon;
co.layer;
co.text;
co.counter;
var Iy = { exports: {} }, b$ = { exports: {} }, Jt = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var vR;
function Nke() {
if (vR) return Jt;
vR = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return Jt.AsyncMode = u, Jt.ConcurrentMode = c, Jt.ContextConsumer = s, Jt.ContextProvider = i, Jt.Element = t, Jt.ForwardRef = d, Jt.Fragment = n, Jt.Lazy = y, Jt.Memo = p, Jt.Portal = r, Jt.Profiler = a, Jt.StrictMode = o, Jt.Suspense = l, Jt.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, Jt.isConcurrentMode = S, Jt.isContextConsumer = function(b) {
return _(b) === s;
}, Jt.isContextProvider = function(b) {
return _(b) === i;
}, Jt.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, Jt.isForwardRef = function(b) {
return _(b) === d;
}, Jt.isFragment = function(b) {
return _(b) === n;
}, Jt.isLazy = function(b) {
return _(b) === y;
}, Jt.isMemo = function(b) {
return _(b) === p;
}, Jt.isPortal = function(b) {
return _(b) === r;
}, Jt.isProfiler = function(b) {
return _(b) === a;
}, Jt.isStrictMode = function(b) {
return _(b) === o;
}, Jt.isSuspense = function(b) {
return _(b) === l;
}, Jt.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, Jt.typeOf = _, Jt;
}
var cr = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var xR;
function Tke() {
return xR || (xR = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
cr.AsyncMode = b, cr.ConcurrentMode = F, cr.ContextConsumer = z, cr.ContextProvider = q, cr.Element = Y, cr.ForwardRef = B, cr.Fragment = Z, cr.Lazy = M, cr.Memo = te, cr.Portal = G, cr.Profiler = H, cr.StrictMode = U, cr.Suspense = W, cr.isAsyncMode = ee, cr.isConcurrentMode = v, cr.isContextConsumer = g, cr.isContextProvider = O, cr.isElement = P, cr.isForwardRef = A, cr.isFragment = T, cr.isLazy = N, cr.isMemo = C, cr.isPortal = I, cr.isProfiler = j, cr.isStrictMode = R, cr.isSuspense = Q, cr.isValidElementType = _, cr.typeOf = S;
}()), cr;
}
var wR;
function gq() {
return wR || (wR = 1, process.env.NODE_ENV === "production" ? b$.exports = Nke() : b$.exports = Tke()), b$.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var y$, $R;
function Ike() {
if ($R) return y$;
$R = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return y$ = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, y$;
}
var v$, kR;
function AP() {
if (kR) return v$;
kR = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return v$ = e, v$;
}
var _R, OR;
function bq() {
return OR || (OR = 1, _R = Function.call.bind(Object.prototype.hasOwnProperty)), _R;
}
var x$, SR;
function jke() {
if (SR) return x$;
SR = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ AP(), r = {}, n = /* @__PURE__ */ bq();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, x$ = o, x$;
}
var w$, ER;
function Rke() {
if (ER) return w$;
ER = 1;
var e = gq(), t = Ike(), r = /* @__PURE__ */ AP(), n = /* @__PURE__ */ bq(), o = /* @__PURE__ */ jke(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return w$ = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, w$;
}
var $$, AR;
function Mke() {
if (AR) return $$;
AR = 1;
var e = /* @__PURE__ */ AP();
function t() {
}
function r() {
}
return r.resetWarningCache = t, $$ = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, $$;
}
var PR;
function Dke() {
if (PR) return Iy.exports;
if (PR = 1, process.env.NODE_ENV !== "production") {
var e = gq(), t = !0;
Iy.exports = /* @__PURE__ */ Rke()(e.isElement, t);
} else
Iy.exports = /* @__PURE__ */ Mke()();
return Iy.exports;
}
var Fke = /* @__PURE__ */ Dke();
const Nt = /* @__PURE__ */ Cwe(Fke);
function CR(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function ka(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? CR(Object(r), !0).forEach(function(n) {
Mf(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : CR(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function V1(e) {
"@babel/helpers - typeof";
return V1 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, V1(e);
}
function Mf(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function Lke(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function zke(e, t) {
if (e == null) return {};
var r = Lke(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function fE(e) {
return Wke(e) || Vke(e) || Hke(e) || Gke();
}
function Wke(e) {
if (Array.isArray(e)) return dE(e);
}
function Vke(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function Hke(e, t) {
if (e) {
if (typeof e == "string") return dE(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return dE(e, t);
}
}
function dE(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function Gke() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function Uke(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, Mf(t, "fa-".concat(w), typeof w < "u" && w !== null), Mf(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), Mf(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), Mf(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function Bke(e) {
return e = e - 0, e === e;
}
function yq(e) {
return Bke(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var Yke = ["style"];
function qke(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function Kke(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = yq(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[qke(o)] = a : t[o] = a, t;
}, {});
}
function vq(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return vq(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = Kke(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[yq(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = zke(r, Yke);
return o.attrs.style = ka(ka({}, o.attrs.style), i), e.apply(void 0, [t.tag, ka(ka({}, o.attrs), s)].concat(fE(n)));
}
var xq = !1;
try {
xq = process.env.NODE_ENV === "production";
} catch {
}
function Xke() {
if (!xq && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function NR(e) {
if (e && V1(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (uE.icon)
return uE.icon(e);
if (e === null)
return null;
if (e && V1(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function k$(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Mf({}, e, t) : {};
}
var TR = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, H1 = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = ka(ka({}, TR), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = NR(n), l = k$("classes", [].concat(fE(Uke(r)), fE((i || "").split(" ")))), f = k$("transform", typeof r.transform == "string" ? uE.transform(r.transform) : r.transform), p = k$("mask", NR(o)), y = Cke(d, ka(ka(ka(ka({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return Xke("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
TR.hasOwnProperty(w) || (h[w] = r[w]);
}), Jke(m[0], h);
});
H1.displayName = "FontAwesomeIcon";
H1.propTypes = {
beat: Nt.bool,
border: Nt.bool,
beatFade: Nt.bool,
bounce: Nt.bool,
className: Nt.string,
fade: Nt.bool,
flash: Nt.bool,
mask: Nt.oneOfType([Nt.object, Nt.array, Nt.string]),
maskId: Nt.string,
fixedWidth: Nt.bool,
inverse: Nt.bool,
flip: Nt.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: Nt.oneOfType([Nt.object, Nt.array, Nt.string]),
listItem: Nt.bool,
pull: Nt.oneOf(["right", "left"]),
pulse: Nt.bool,
rotation: Nt.oneOf([0, 90, 180, 270]),
shake: Nt.bool,
size: Nt.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: Nt.bool,
spinPulse: Nt.bool,
spinReverse: Nt.bool,
symbol: Nt.oneOfType([Nt.bool, Nt.string]),
title: Nt.string,
titleId: Nt.string,
transform: Nt.oneOfType([Nt.string, Nt.object]),
swapOpacity: Nt.bool
};
var Jke = vq.bind(null, ae.createElement);
const PP = "-", Qke = (e) => {
const t = e_e(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(PP);
return a[0] === "" && a.length !== 1 && a.shift(), wq(a, t) || Zke(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, wq = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? wq(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(PP);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, IR = /^\[(.+)\]$/, Zke = (e) => {
if (IR.test(e)) {
const t = IR.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, e_e = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return r_e(Object.entries(e.classGroups), r).forEach(([o, a]) => {
pE(a, n, o, t);
}), n;
}, pE = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : jR(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (t_e(o)) {
pE(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
pE(i, jR(t, a), r, n);
});
});
}, jR = (e, t) => {
let r = e;
return t.split(PP).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, t_e = (e) => e.isThemeGetter, r_e = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, n_e = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, $q = "!", o_e = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith($q), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, a_e = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, i_e = (e) => ({
cache: n_e(e.cacheSize),
parseClassName: o_e(e),
...Qke(e)
}), s_e = /\s+/, l_e = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(s_e);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = a_e(d).join(":"), w = l ? h + $q : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function c_e() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = kq(t)) && (n && (n += " "), n += r);
return n;
}
const kq = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = kq(e[n])) && (r && (r += " "), r += t);
return r;
};
function u_e(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = i_e(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = l_e(u, r);
return o(u, d), d;
}
return function() {
return a(c_e.apply(null, arguments));
};
}
const Pr = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, _q = /^\[(?:([a-z-]+):)?(.+)\]$/i, f_e = /^\d+\/\d+$/, d_e = /* @__PURE__ */ new Set(["px", "full", "screen"]), p_e = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, m_e = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, h_e = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, g_e = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, b_e = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, ki = (e) => hd(e) || d_e.has(e) || f_e.test(e), ml = (e) => mp(e, "length", O_e), hd = (e) => !!e && !Number.isNaN(Number(e)), _$ = (e) => mp(e, "number", hd), Rm = (e) => !!e && Number.isInteger(Number(e)), y_e = (e) => e.endsWith("%") && hd(e.slice(0, -1)), mt = (e) => _q.test(e), hl = (e) => p_e.test(e), v_e = /* @__PURE__ */ new Set(["length", "size", "percentage"]), x_e = (e) => mp(e, v_e, Oq), w_e = (e) => mp(e, "position", Oq), $_e = /* @__PURE__ */ new Set(["image", "url"]), k_e = (e) => mp(e, $_e, E_e), __e = (e) => mp(e, "", S_e), Mm = () => !0, mp = (e, t, r) => {
const n = _q.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, O_e = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
m_e.test(e) && !h_e.test(e)
), Oq = () => !1, S_e = (e) => g_e.test(e), E_e = (e) => b_e.test(e), A_e = () => {
const e = Pr("colors"), t = Pr("spacing"), r = Pr("blur"), n = Pr("brightness"), o = Pr("borderColor"), a = Pr("borderRadius"), i = Pr("borderSpacing"), s = Pr("borderWidth"), u = Pr("contrast"), c = Pr("grayscale"), d = Pr("hueRotate"), l = Pr("invert"), f = Pr("gap"), p = Pr("gradientColorStops"), y = Pr("gradientColorStopPositions"), m = Pr("inset"), h = Pr("margin"), w = Pr("opacity"), $ = Pr("padding"), _ = Pr("saturate"), S = Pr("scale"), b = Pr("sepia"), F = Pr("skew"), z = Pr("space"), q = Pr("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", mt, t], M = () => [mt, t], te = () => ["", ki, ml], G = () => ["auto", hd, mt], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", mt], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [hd, mt];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [Mm],
spacing: [ki, ml],
blur: ["none", "", hl, mt],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", hl, mt],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [y_e, ml],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", mt]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [hl]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), mt]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", Rm, mt]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", mt]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", Rm, mt]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [Mm]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", Rm, mt]
}, mt]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [Mm]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [Rm, mt]
}, mt]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", mt]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", mt]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", mt, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [mt, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [mt, t, "none", "full", "min", "max", "fit", "prose", {
screen: [hl]
}, hl]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [mt, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [mt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [mt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [mt, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", hl, ml]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", _$]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [Mm]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", mt]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", hd, _$]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", ki, mt]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", mt]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", mt]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", ki, ml]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", ki, mt]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", mt]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", mt]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), w_e]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", x_e]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, k_e]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [ki, mt]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [ki, ml]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [ki, ml]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", hl, __e]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [Mm]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", hl, mt]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", mt]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", mt]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", mt]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [Rm, mt]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", mt]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", mt]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", mt]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [ki, ml, _$]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, O$ = /* @__PURE__ */ u_e(A_e), jy = ({
onChange: e,
options: t,
placeholder: r,
value: n,
id: o,
className: a
}) => {
const i = t.find(
(s) => s.value === n
) || { label: r || "" };
return /* @__PURE__ */ K("div", { className: O$("relative", a), children: /* @__PURE__ */ K(E2e, { value: n || "", onChange: e, children: ({ open: s }) => /* @__PURE__ */ Te(rn, { children: [
/* @__PURE__ */ Te(
IY,
{
id: o,
className: "relative h-10 w-full cursor-pointer rounded-md bg-ui-controls text-base-fg border border-ui-controls-border py-2 pl-3 pr-10 text-left outline-none outline-offset-0 transition-all duration-150 ease-in-out sm:text-sm focus:!outline-none hover:bg-ui-controls/80",
children: [
/* @__PURE__ */ K(
"span",
{
className: O$("block truncate", !n && "opacity-50"),
children: i.label
}
),
/* @__PURE__ */ K("span", { className: "pointer-events-none absolute inset-y-0 right-0 flex items-center pr-2.5", children: /* @__PURE__ */ K(H1, { icon: A2e, "aria-hidden": "true" }) })
]
}
),
/* @__PURE__ */ K(
a2e,
{
as: "div",
show: s,
leave: "transition ease-in duration-[50ms]",
leaveFrom: "opacity-100",
leaveTo: "opacity-0",
children: /* @__PURE__ */ K(jY, { className: "absolute z-10 mt-1 max-h-60 w-full overflow-auto rounded-md bg-ui-panel border border-ui-panel-border py-1.5 text-base shadow-xl focus:outline-none sm:text-sm", children: t.map((u, c) => /* @__PURE__ */ K(
RY,
{
className: ({ focus: d, selected: l }) => O$(
"relative cursor-pointer select-none py-2 pl-7 pr-2 transition-all duration-150 ease-in-out",
d && "bg-ui-controls/50",
l && "bg-primary/20",
l ? "text-base-fg" : "text-base-fg/90"
),
value: u.value,
children: ({ selected: d }) => /* @__PURE__ */ Te(rn, { children: [
/* @__PURE__ */ K(
"span",
{
className: `block truncate ${d ? "font-medium" : "font-normal"}`,
children: u.label
}
),
d ? /* @__PURE__ */ K("span", { className: "absolute inset-y-0 left-0 flex items-center pl-2.5", children: /* @__PURE__ */ K(
H1,
{
icon: P2e,
"aria-hidden": "true",
className: "text-xs"
}
) }) : null
] })
},
c
)) })
}
)
] }) }) });
}, Sq = typeof document < "u" ? ae.useLayoutEffect : () => {
};
function P_e(e) {
const t = ne(null);
return Sq(() => {
t.current = e;
}, [
e
]), Ne((...r) => {
const n = t.current;
return n == null ? void 0 : n(...r);
}, []);
}
const Bc = (e) => {
var t;
return (t = e == null ? void 0 : e.ownerDocument) !== null && t !== void 0 ? t : document;
}, cu = (e) => e && "window" in e && e.window === e ? e : Bc(e).defaultView || window;
function Eq(e, t) {
return t && e ? e.contains(t) : !1;
}
const mE = (e = document) => e.activeElement;
function Aq(e) {
return e.target;
}
function C_e(e) {
var t;
return typeof window > "u" || window.navigator == null ? !1 : ((t = window.navigator.userAgentData) === null || t === void 0 ? void 0 : t.brands.some((r) => e.test(r.brand))) || e.test(window.navigator.userAgent);
}
function N_e(e) {
var t;
return typeof window < "u" && window.navigator != null ? e.test(((t = window.navigator.userAgentData) === null || t === void 0 ? void 0 : t.platform) || window.navigator.platform) : !1;
}
function Pq(e) {
let t = null;
return () => (t == null && (t = e()), t);
}
const T_e = Pq(function() {
return N_e(/^Mac/i);
}), I_e = Pq(function() {
return C_e(/Android/i);
});
function Cq() {
let e = ne(/* @__PURE__ */ new Map()), t = Ne((o, a, i, s) => {
let u = s != null && s.once ? (...c) => {
e.current.delete(i), i(...c);
} : i;
e.current.set(i, {
type: a,
eventTarget: o,
fn: u,
options: s
}), o.addEventListener(a, u, s);
}, []), r = Ne((o, a, i, s) => {
var u;
let c = ((u = e.current.get(i)) === null || u === void 0 ? void 0 : u.fn) || i;
o.removeEventListener(a, c, s), e.current.delete(i);
}, []), n = Ne(() => {
e.current.forEach((o, a) => {
r(o.eventTarget, o.type, a, o.options);
});
}, [
r
]);
return ue(() => n, [
n
]), {
addGlobalListener: t,
removeGlobalListener: r,
removeAllGlobalListeners: n
};
}
function j_e(e) {
return e.mozInputSource === 0 && e.isTrusted ? !0 : I_e() && e.pointerType ? e.type === "click" && e.buttons === 1 : e.detail === 0 && !e.pointerType;
}
let Nq = class {
isDefaultPrevented() {
return this.nativeEvent.defaultPrevented;
}
preventDefault() {
this.defaultPrevented = !0, this.nativeEvent.preventDefault();
}
stopPropagation() {
this.nativeEvent.stopPropagation(), this.isPropagationStopped = () => !0;
}
isPropagationStopped() {
return !1;
}
persist() {
}
constructor(t, r) {
this.nativeEvent = r, this.target = r.target, this.currentTarget = r.currentTarget, this.relatedTarget = r.relatedTarget, this.bubbles = r.bubbles, this.cancelable = r.cancelable, this.defaultPrevented = r.defaultPrevented, this.eventPhase = r.eventPhase, this.isTrusted = r.isTrusted, this.timeStamp = r.timeStamp, this.type = t;
}
};
function Tq(e) {
let t = ne({
isFocused: !1,
observer: null
});
Sq(() => {
const n = t.current;
return () => {
n.observer && (n.observer.disconnect(), n.observer = null);
};
}, []);
let r = P_e((n) => {
e == null || e(n);
});
return Ne((n) => {
if (n.target instanceof HTMLButtonElement || n.target instanceof HTMLInputElement || n.target instanceof HTMLTextAreaElement || n.target instanceof HTMLSelectElement) {
t.current.isFocused = !0;
let o = n.target, a = (i) => {
t.current.isFocused = !1, o.disabled && r(new Nq("blur", i)), t.current.observer && (t.current.observer.disconnect(), t.current.observer = null);
};
o.addEventListener("focusout", a, {
once: !0
}), t.current.observer = new MutationObserver(() => {
if (t.current.isFocused && o.disabled) {
var i;
(i = t.current.observer) === null || i === void 0 || i.disconnect();
let s = o === document.activeElement ? null : document.activeElement;
o.dispatchEvent(new FocusEvent("blur", {
relatedTarget: s
})), o.dispatchEvent(new FocusEvent("focusout", {
bubbles: !0,
relatedTarget: s
}));
}
}), t.current.observer.observe(o, {
attributes: !0,
attributeFilter: [
"disabled"
]
});
}
}, [
r
]);
}
let R_e = !1, Fb = null, hE = /* @__PURE__ */ new Set(), Gh = /* @__PURE__ */ new Map(), zu = !1, gE = !1;
const M_e = {
Tab: !0,
Escape: !0
};
function CP(e, t) {
for (let r of hE) r(e, t);
}
function D_e(e) {
return !(e.metaKey || !T_e() && e.altKey || e.ctrlKey || e.key === "Control" || e.key === "Shift" || e.key === "Meta");
}
function G1(e) {
zu = !0, D_e(e) && (Fb = "keyboard", CP("keyboard", e));
}
function Eo(e) {
Fb = "pointer", (e.type === "mousedown" || e.type === "pointerdown") && (zu = !0, CP("pointer", e));
}
function Iq(e) {
j_e(e) && (zu = !0, Fb = "virtual");
}
function jq(e) {
e.target === window || e.target === document || R_e || !e.isTrusted || (!zu && !gE && (Fb = "virtual", CP("virtual", e)), zu = !1, gE = !1);
}
function Rq() {
zu = !1, gE = !0;
}
function bE(e) {
if (typeof window > "u" || Gh.get(cu(e))) return;
const t = cu(e), r = Bc(e);
let n = t.HTMLElement.prototype.focus;
t.HTMLElement.prototype.focus = function() {
zu = !0, n.apply(this, arguments);
}, r.addEventListener("keydown", G1, !0), r.addEventListener("keyup", G1, !0), r.addEventListener("click", Iq, !0), t.addEventListener("focus", jq, !0), t.addEventListener("blur", Rq, !1), typeof PointerEvent < "u" ? (r.addEventListener("pointerdown", Eo, !0), r.addEventListener("pointermove", Eo, !0), r.addEventListener("pointerup", Eo, !0)) : (r.addEventListener("mousedown", Eo, !0), r.addEventListener("mousemove", Eo, !0), r.addEventListener("mouseup", Eo, !0)), t.addEventListener("beforeunload", () => {
Mq(e);
}, {
once: !0
}), Gh.set(t, {
focus: n
});
}
const Mq = (e, t) => {
const r = cu(e), n = Bc(e);
t && n.removeEventListener("DOMContentLoaded", t), Gh.has(r) && (r.HTMLElement.prototype.focus = Gh.get(r).focus, n.removeEventListener("keydown", G1, !0), n.removeEventListener("keyup", G1, !0), n.removeEventListener("click", Iq, !0), r.removeEventListener("focus", jq, !0), r.removeEventListener("blur", Rq, !1), typeof PointerEvent < "u" ? (n.removeEventListener("pointerdown", Eo, !0), n.removeEventListener("pointermove", Eo, !0), n.removeEventListener("pointerup", Eo, !0)) : (n.removeEventListener("mousedown", Eo, !0), n.removeEventListener("mousemove", Eo, !0), n.removeEventListener("mouseup", Eo, !0)), Gh.delete(r));
};
function F_e(e) {
const t = Bc(e);
let r;
return t.readyState !== "loading" ? bE(e) : (r = () => {
bE(e);
}, t.addEventListener("DOMContentLoaded", r)), () => Mq(e, r);
}
typeof document < "u" && F_e();
function Dq() {
return Fb !== "pointer";
}
const L_e = /* @__PURE__ */ new Set([
"checkbox",
"radio",
"range",
"color",
"file",
"image",
"button",
"submit",
"reset"
]);
function z_e(e, t, r) {
let n = Bc(r == null ? void 0 : r.target);
const o = typeof window < "u" ? cu(r == null ? void 0 : r.target).HTMLInputElement : HTMLInputElement, a = typeof window < "u" ? cu(r == null ? void 0 : r.target).HTMLTextAreaElement : HTMLTextAreaElement, i = typeof window < "u" ? cu(r == null ? void 0 : r.target).HTMLElement : HTMLElement, s = typeof window < "u" ? cu(r == null ? void 0 : r.target).KeyboardEvent : KeyboardEvent;
return e = e || n.activeElement instanceof o && !L_e.has(n.activeElement.type) || n.activeElement instanceof a || n.activeElement instanceof i && n.activeElement.isContentEditable, !(e && t === "keyboard" && r instanceof s && !M_e[r.key]);
}
function W_e(e, t, r) {
bE(), ue(() => {
let n = (o, a) => {
z_e(!!(r != null && r.isTextInput), o, a) && e(Dq());
};
return hE.add(n), () => {
hE.delete(n);
};
}, t);
}
function V_e(e) {
let { isDisabled: t, onFocus: r, onBlur: n, onFocusChange: o } = e;
const a = Ne((u) => {
if (u.target === u.currentTarget)
return n && n(u), o && o(!1), !0;
}, [
n,
o
]), i = Tq(a), s = Ne((u) => {
const c = Bc(u.target), d = c ? mE(c) : mE();
u.target === u.currentTarget && d === Aq(u.nativeEvent) && (r && r(u), o && o(!0), i(u));
}, [
o,
r,
i
]);
return {
focusProps: {
onFocus: !t && (r || o || n) ? s : void 0,
onBlur: !t && (n || o) ? a : void 0
}
};
}
function H_e(e) {
let { isDisabled: t, onBlurWithin: r, onFocusWithin: n, onFocusWithinChange: o } = e, a = ne({
isFocusWithin: !1
}), { addGlobalListener: i, removeAllGlobalListeners: s } = Cq(), u = Ne((l) => {
l.currentTarget.contains(l.target) && a.current.isFocusWithin && !l.currentTarget.contains(l.relatedTarget) && (a.current.isFocusWithin = !1, s(), r && r(l), o && o(!1));
}, [
r,
o,
a,
s
]), c = Tq(u), d = Ne((l) => {
if (!l.currentTarget.contains(l.target)) return;
const f = Bc(l.target), p = mE(f);
if (!a.current.isFocusWithin && p === Aq(l.nativeEvent)) {
n && n(l), o && o(!0), a.current.isFocusWithin = !0, c(l);
let y = l.currentTarget;
i(f, "focus", (m) => {
if (a.current.isFocusWithin && !Eq(y, m.target)) {
let h = new Nq("blur", new f.defaultView.FocusEvent("blur", {
relatedTarget: m.target
}));
h.target = y, h.currentTarget = y, u(h);
}
}, {
capture: !0
});
}
}, [
n,
o,
c,
i,
u
]);
return t ? {
focusWithinProps: {
// These cannot be null, that would conflict in mergeProps
onFocus: void 0,
onBlur: void 0
}
} : {
focusWithinProps: {
onFocus: d,
onBlur: u
}
};
}
let U1 = !1, S$ = 0;
function yE() {
U1 = !0, setTimeout(() => {
U1 = !1;
}, 50);
}
function RR(e) {
e.pointerType === "touch" && yE();
}
function G_e() {
if (!(typeof document > "u"))
return typeof PointerEvent < "u" ? document.addEventListener("pointerup", RR) : document.addEventListener("touchend", yE), S$++, () => {
S$--, !(S$ > 0) && (typeof PointerEvent < "u" ? document.removeEventListener("pointerup", RR) : document.removeEventListener("touchend", yE));
};
}
function U_e(e) {
let { onHoverStart: t, onHoverChange: r, onHoverEnd: n, isDisabled: o } = e, [a, i] = de(!1), s = ne({
isHovered: !1,
ignoreEmulatedMouseEvents: !1,
pointerType: "",
target: null
}).current;
ue(G_e, []);
let { addGlobalListener: u, removeAllGlobalListeners: c } = Cq(), { hoverProps: d, triggerHoverEnd: l } = Ie(() => {
let f = (m, h) => {
if (s.pointerType = h, o || h === "touch" || s.isHovered || !m.currentTarget.contains(m.target)) return;
s.isHovered = !0;
let w = m.currentTarget;
s.target = w, u(Bc(m.target), "pointerover", ($) => {
s.isHovered && s.target && !Eq(s.target, $.target) && p($, $.pointerType);
}, {
capture: !0
}), t && t({
type: "hoverstart",
target: w,
pointerType: h
}), r && r(!0), i(!0);
}, p = (m, h) => {
let w = s.target;
s.pointerType = "", s.target = null, !(h === "touch" || !s.isHovered || !w) && (s.isHovered = !1, c(), n && n({
type: "hoverend",
target: w,
pointerType: h
}), r && r(!1), i(!1));
}, y = {};
return typeof PointerEvent < "u" ? (y.onPointerEnter = (m) => {
U1 && m.pointerType === "mouse" || f(m, m.pointerType);
}, y.onPointerLeave = (m) => {
!o && m.currentTarget.contains(m.target) && p(m, m.pointerType);
}) : (y.onTouchStart = () => {
s.ignoreEmulatedMouseEvents = !0;
}, y.onMouseEnter = (m) => {
!s.ignoreEmulatedMouseEvents && !U1 && f(m, "mouse"), s.ignoreEmulatedMouseEvents = !1;
}, y.onMouseLeave = (m) => {
!o && m.currentTarget.contains(m.target) && p(m, "mouse");
}), {
hoverProps: y,
triggerHoverEnd: p
};
}, [
t,
r,
n,
o,
s,
u,
c
]);
return ue(() => {
o && l({
currentTarget: s.target
}, s.pointerType);
}, [
o
]), {
hoverProps: d,
isHovered: a
};
}
function B_e(e = {}) {
let { autoFocus: t = !1, isTextInput: r, within: n } = e, o = ne({
isFocused: !1,
isFocusVisible: t || Dq()
}), [a, i] = de(!1), [s, u] = de(() => o.current.isFocused && o.current.isFocusVisible), c = Ne(() => u(o.current.isFocused && o.current.isFocusVisible), []), d = Ne((p) => {
o.current.isFocused = p, i(p), c();
}, [
c
]);
W_e((p) => {
o.current.isFocusVisible = p, c();
}, [], {
isTextInput: r
});
let { focusProps: l } = V_e({
isDisabled: n,
onFocusChange: d
}), { focusWithinProps: f } = H_e({
isDisabled: !n,
onFocusWithinChange: d
});
return {
isFocused: a,
isFocusVisible: s,
focusProps: n ? f : l
};
}
var Y_e = Object.defineProperty, q_e = (e, t, r) => t in e ? Y_e(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, E$ = (e, t, r) => (q_e(e, typeof t != "symbol" ? t + "" : t, r), r);
let K_e = class {
constructor() {
E$(this, "current", this.detect()), E$(this, "handoffState", "pending"), E$(this, "currentId", 0);
}
set(t) {
this.current !== t && (this.handoffState = "pending", this.currentId = 0, this.current = t);
}
reset() {
this.set(this.detect());
}
nextId() {
return ++this.currentId;
}
get isServer() {
return this.current === "server";
}
get isClient() {
return this.current === "client";
}
detect() {
return typeof window > "u" || typeof document > "u" ? "server" : "client";
}
handoff() {
this.handoffState === "pending" && (this.handoffState = "complete");
}
get isHandoffComplete() {
return this.handoffState === "complete";
}
}, Fq = new K_e();
function X_e(e) {
var t, r;
return Fq.isServer ? null : e ? "ownerDocument" in e ? e.ownerDocument : "current" in e ? (r = (t = e.current) == null ? void 0 : t.ownerDocument) != null ? r : document : null : document;
}
function J_e(e) {
typeof queueMicrotask == "function" ? queueMicrotask(e) : Promise.resolve().then(e).catch((t) => setTimeout(() => {
throw t;
}));
}
function Lq() {
let e = [], t = { addEventListener(r, n, o, a) {
return r.addEventListener(n, o, a), t.add(() => r.removeEventListener(n, o, a));
}, requestAnimationFrame(...r) {
let n = requestAnimationFrame(...r);
return t.add(() => cancelAnimationFrame(n));
}, nextFrame(...r) {
return t.requestAnimationFrame(() => t.requestAnimationFrame(...r));
}, setTimeout(...r) {
let n = setTimeout(...r);
return t.add(() => clearTimeout(n));
}, microTask(...r) {
let n = { current: !0 };
return J_e(() => {
n.current && r[0]();
}), t.add(() => {
n.current = !1;
});
}, style(r, n, o) {
let a = r.style.getPropertyValue(n);
return Object.assign(r.style, { [n]: o }), this.add(() => {
Object.assign(r.style, { [n]: a });
});
}, group(r) {
let n = Lq();
return r(n), this.add(() => n.dispose());
}, add(r) {
return e.includes(r) || e.push(r), () => {
let n = e.indexOf(r);
if (n >= 0) for (let o of e.splice(n, 1)) o();
};
}, dispose() {
for (let r of e.splice(0)) r();
} };
return t;
}
function NP() {
let [e] = de(Lq);
return ue(() => () => e.dispose(), [e]), e;
}
let TP = (e, t) => {
Fq.isServer ? ue(e, t) : pi(e, t);
};
function Q_e(e) {
let t = ne(e);
return TP(() => {
t.current = e;
}, [e]), t;
}
let na = function(e) {
let t = Q_e(e);
return ae.useCallback((...r) => t.current(...r), [t]);
};
function Z_e(e) {
let t = e.width / 2, r = e.height / 2;
return { top: e.clientY - r, right: e.clientX + t, bottom: e.clientY + r, left: e.clientX - t };
}
function eOe(e, t) {
return !(!e || !t || e.right < t.left || e.left > t.right || e.bottom < t.top || e.top > t.bottom);
}
function tOe({ disabled: e = !1 } = {}) {
let t = ne(null), [r, n] = de(!1), o = NP(), a = na(() => {
t.current = null, n(!1), o.dispose();
}), i = na((s) => {
if (o.dispose(), t.current === null) {
t.current = s.currentTarget, n(!0);
{
let u = X_e(s.currentTarget);
o.addEventListener(u, "pointerup", a, !1), o.addEventListener(u, "pointermove", (c) => {
if (t.current) {
let d = Z_e(c);
n(eOe(d, t.current.getBoundingClientRect()));
}
}, !1), o.addEventListener(u, "pointercancel", a, !1);
}
}
});
return { pressed: r, pressProps: e ? {} : { onPointerDown: i, onPointerUp: a, onClick: a } };
}
let rOe = zt(void 0);
function IP() {
return nt(rOe);
}
function MR(...e) {
return Array.from(new Set(e.flatMap((t) => typeof t == "string" ? t.split(" ") : []))).filter(Boolean).join(" ");
}
function zq(e, t, ...r) {
if (e in t) {
let o = t[e];
return typeof o == "function" ? o(...r) : o;
}
let n = new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map((o) => `"${o}"`).join(", ")}.`);
throw Error.captureStackTrace && Error.captureStackTrace(n, zq), n;
}
var nOe = ((e) => (e[e.None = 0] = "None", e[e.RenderStrategy = 1] = "RenderStrategy", e[e.Static = 2] = "Static", e))(nOe || {}), oOe = ((e) => (e[e.Unmount = 0] = "Unmount", e[e.Hidden = 1] = "Hidden", e))(oOe || {});
function Lb() {
let e = iOe();
return Ne((t) => aOe({ mergeRefs: e, ...t }), [e]);
}
function aOe({ ourProps: e, theirProps: t, slot: r, defaultTag: n, features: o, visible: a = !0, name: i, mergeRefs: s }) {
s = s ?? sOe;
let u = Wq(t, e);
if (a) return Ry(u, r, n, i, s);
let c = o ?? 0;
if (c & 2) {
let { static: d = !1, ...l } = u;
if (d) return Ry(l, r, n, i, s);
}
if (c & 1) {
let { unmount: d = !0, ...l } = u;
return zq(d ? 0 : 1, { 0() {
return null;
}, 1() {
return Ry({ ...l, hidden: !0, style: { display: "none" } }, r, n, i, s);
} });
}
return Ry(u, r, n, i, s);
}
function Ry(e, t = {}, r, n, o) {
let { as: a = r, children: i, refName: s = "ref", ...u } = A$(e, ["unmount", "static"]), c = e.ref !== void 0 ? { [s]: e.ref } : {}, d = typeof i == "function" ? i(t) : i;
"className" in u && u.className && typeof u.className == "function" && (u.className = u.className(t)), u["aria-labelledby"] && u["aria-labelledby"] === u.id && (u["aria-labelledby"] = void 0);
let l = {};
if (t) {
let f = !1, p = [];
for (let [y, m] of Object.entries(t)) typeof m == "boolean" && (f = !0), m === !0 && p.push(y.replace(/([A-Z])/g, (h) => `-${h.toLowerCase()}`));
if (f) {
l["data-headlessui-state"] = p.join(" ");
for (let y of p) l[`data-${y}`] = "";
}
}
if (a === Ut && (Object.keys(Qc(u)).length > 0 || Object.keys(Qc(l)).length > 0)) if (!Fi(d) || Array.isArray(d) && d.length > 1) {
if (Object.keys(Qc(u)).length > 0) throw new Error(['Passing props on "Fragment"!', "", `The current component <${n} /> is rendering a "Fragment".`, "However we need to passthrough the following props:", Object.keys(Qc(u)).concat(Object.keys(Qc(l))).map((f) => ` - ${f}`).join(`
`), "", "You can apply a few solutions:", ['Add an `as="..."` prop, to ensure that we render an actual element instead of a "Fragment".', "Render a single element as the child so that we can forward the props onto that element."].map((f) => ` - ${f}`).join(`
`)].join(`
`));
} else {
let f = d.props, p = f == null ? void 0 : f.className, y = typeof p == "function" ? (...w) => MR(p(...w), u.className) : MR(p, u.className), m = y ? { className: y } : {}, h = Wq(d.props, Qc(A$(u, ["ref"])));
for (let w in l) w in h && delete l[w];
return Li(d, Object.assign({}, h, l, c, { ref: o(cOe(d), c.ref) }, m));
}
return vb(a, Object.assign({}, A$(u, ["ref"]), a !== Ut && c, a !== Ut && l), d);
}
function iOe() {
let e = ne([]), t = Ne((r) => {
for (let n of e.current) n != null && (typeof n == "function" ? n(r) : n.current = r);
}, []);
return (...r) => {
if (!r.every((n) => n == null)) return e.current = r, t;
};
}
function sOe(...e) {
return e.every((t) => t == null) ? void 0 : (t) => {
for (let r of e) r != null && (typeof r == "function" ? r(t) : r.current = t);
};
}
function Wq(...e) {
if (e.length === 0) return {};
if (e.length === 1) return e[0];
let t = {}, r = {};
for (let n of e) for (let o in n) o.startsWith("on") && typeof n[o] == "function" ? (r[o] != null || (r[o] = []), r[o].push(n[o])) : t[o] = n[o];
if (t.disabled || t["aria-disabled"]) for (let n in r) /^(on(?:Click|Pointer|Mouse|Key)(?:Down|Up|Press)?)$/.test(n) && (r[n] = [(o) => {
var a;
return (a = o == null ? void 0 : o.preventDefault) == null ? void 0 : a.call(o);
}]);
for (let n in r) Object.assign(t, { [n](o, ...a) {
let i = r[n];
for (let s of i) {
if ((o instanceof Event || (o == null ? void 0 : o.nativeEvent) instanceof Event) && o.defaultPrevented) return;
s(o, ...a);
}
} });
return t;
}
function lOe(...e) {
if (e.length === 0) return {};
if (e.length === 1) return e[0];
let t = {}, r = {};
for (let n of e) for (let o in n) o.startsWith("on") && typeof n[o] == "function" ? (r[o] != null || (r[o] = []), r[o].push(n[o])) : t[o] = n[o];
for (let n in r) Object.assign(t, { [n](...o) {
let a = r[n];
for (let i of a) i == null || i(...o);
} });
return t;
}
function kx(e) {
var t;
return Object.assign(sf(e), { displayName: (t = e.displayName) != null ? t : e.name });
}
function Qc(e) {
let t = Object.assign({}, e);
for (let r in t) t[r] === void 0 && delete t[r];
return t;
}
function A$(e, t = []) {
let r = Object.assign({}, e);
for (let n of t) n in r && delete r[n];
return r;
}
function cOe(e) {
return ae.version.split(".")[0] >= "19" ? e.props.ref : e.ref;
}
function uOe(e, t, r) {
let [n, o] = de(r), a = e !== void 0, i = ne(a), s = ne(!1), u = ne(!1);
return a && !i.current && !s.current ? (s.current = !0, i.current = a, console.error("A component is changing from uncontrolled to controlled. This may be caused by the value changing from undefined to a defined value, which should not happen.")) : !a && i.current && !u.current && (u.current = !0, i.current = a, console.error("A component is changing from controlled to uncontrolled. This may be caused by the value changing from a defined value to undefined, which should not happen.")), [a ? e : n, na((c) => (a || o(c), t == null ? void 0 : t(c)))];
}
function fOe(e) {
let [t] = de(e);
return t;
}
function Vq(e = {}, t = null, r = []) {
for (let [n, o] of Object.entries(e)) Gq(r, Hq(t, n), o);
return r;
}
function Hq(e, t) {
return e ? e + "[" + t + "]" : t;
}
function Gq(e, t, r) {
if (Array.isArray(r)) for (let [n, o] of r.entries()) Gq(e, Hq(t, n.toString()), o);
else r instanceof Date ? e.push([t, r.toISOString()]) : typeof r == "boolean" ? e.push([t, r ? "1" : "0"]) : typeof r == "string" ? e.push([t, r]) : typeof r == "number" ? e.push([t, `${r}`]) : r == null ? e.push([t, ""]) : Vq(r, t, e);
}
function dOe(e) {
var t, r;
let n = (t = e == null ? void 0 : e.form) != null ? t : e.closest("form");
if (n) {
for (let o of n.elements) if (o !== e && (o.tagName === "INPUT" && o.type === "submit" || o.tagName === "BUTTON" && o.type === "submit" || o.nodeName === "INPUT" && o.type === "image")) {
o.click();
return;
}
(r = n.requestSubmit) == null || r.call(n);
}
}
let pOe = "span";
var jP = ((e) => (e[e.None = 1] = "None", e[e.Focusable = 2] = "Focusable", e[e.Hidden = 4] = "Hidden", e))(jP || {});
function mOe(e, t) {
var r;
let { features: n = 1, ...o } = e, a = { ref: t, "aria-hidden": (n & 2) === 2 ? !0 : (r = o["aria-hidden"]) != null ? r : void 0, hidden: (n & 4) === 4 ? !0 : void 0, style: { position: "fixed", top: 1, left: 1, width: 1, height: 0, padding: 0, margin: -1, overflow: "hidden", clip: "rect(0, 0, 0, 0)", whiteSpace: "nowrap", borderWidth: "0", ...(n & 4) === 4 && (n & 2) !== 2 && { display: "none" } } };
return Lb()({ ourProps: a, theirProps: o, slot: {}, defaultTag: pOe, name: "Hidden" });
}
let Uq = kx(mOe), hOe = zt(null);
function gOe({ children: e }) {
let t = nt(hOe);
if (!t) return ae.createElement(ae.Fragment, null, e);
let { target: r } = t;
return r ? C0(ae.createElement(ae.Fragment, null, e), r) : null;
}
function bOe({ data: e, form: t, disabled: r, onReset: n, overrides: o }) {
let [a, i] = de(null), s = NP();
return ue(() => {
if (n && a) return s.addEventListener(a, "reset", n);
}, [a, t, n]), ae.createElement(gOe, null, ae.createElement(yOe, { setForm: i, formId: t }), Vq(e).map(([u, c]) => ae.createElement(Uq, { features: jP.Hidden, ...Qc({ key: u, as: "input", type: "hidden", hidden: !0, readOnly: !0, form: t, disabled: r, name: u, value: c, ...o }) })));
}
function yOe({ setForm: e, formId: t }) {
return ue(() => {
if (t) {
let r = document.getElementById(t);
r && e(r);
}
}, [e, t]), t ? null : ae.createElement(Uq, { features: jP.Hidden, as: "input", type: "hidden", hidden: !0, readOnly: !0, ref: (r) => {
if (!r) return;
let n = r.closest("form");
n && e(n);
} });
}
let vOe = zt(void 0);
function Bq() {
return nt(vOe);
}
function xOe(e) {
let t = e.parentElement, r = null;
for (; t && !(t instanceof HTMLFieldSetElement); ) t instanceof HTMLLegendElement && (r = t), t = t.parentElement;
let n = (t == null ? void 0 : t.getAttribute("disabled")) === "";
return n && wOe(r) ? !1 : n;
}
function wOe(e) {
if (!e) return !1;
let t = e.previousElementSibling;
for (; t !== null; ) {
if (t instanceof HTMLLegendElement) return !1;
t = t.previousElementSibling;
}
return !0;
}
let $Oe = Symbol();
function RP(...e) {
let t = ne(e);
ue(() => {
t.current = e;
}, [e]);
let r = na((n) => {
for (let o of t.current) o != null && (typeof o == "function" ? o(n) : o.current = n);
});
return e.every((n) => n == null || (n == null ? void 0 : n[$Oe])) ? void 0 : r;
}
let _x = zt(null);
_x.displayName = "DescriptionContext";
function Yq() {
let e = nt(_x);
if (e === null) {
let t = new Error("You used a <Description /> component, but it is not inside a relevant parent.");
throw Error.captureStackTrace && Error.captureStackTrace(t, Yq), t;
}
return e;
}
function kOe() {
var e, t;
return (t = (e = nt(_x)) == null ? void 0 : e.value) != null ? t : void 0;
}
function _Oe() {
let [e, t] = de([]);
return [e.length > 0 ? e.join(" ") : void 0, Ie(() => function(r) {
let n = na((a) => (t((i) => [...i, a]), () => t((i) => {
let s = i.slice(), u = s.indexOf(a);
return u !== -1 && s.splice(u, 1), s;
}))), o = Ie(() => ({ register: n, slot: r.slot, name: r.name, props: r.props, value: r.value }), [n, r.slot, r.name, r.props, r.value]);
return ae.createElement(_x.Provider, { value: o }, r.children);
}, [t])];
}
let OOe = "p";
function SOe(e, t) {
let r = ua(), n = IP(), { id: o = `headlessui-description-${r}`, ...a } = e, i = Yq(), s = RP(t);
TP(() => i.register(o), [o, i.register]);
let u = n || !1, c = Ie(() => ({ ...i.slot, disabled: u }), [i.slot, u]), d = { ref: s, ...i.props, id: o };
return Lb()({ ourProps: d, theirProps: a, slot: c, defaultTag: OOe, name: i.name || "Description" });
}
let EOe = kx(SOe), AOe = Object.assign(EOe, {});
var vE = ((e) => (e.Space = " ", e.Enter = "Enter", e.Escape = "Escape", e.Backspace = "Backspace", e.Delete = "Delete", e.ArrowLeft = "ArrowLeft", e.ArrowUp = "ArrowUp", e.ArrowRight = "ArrowRight", e.ArrowDown = "ArrowDown", e.Home = "Home", e.End = "End", e.PageUp = "PageUp", e.PageDown = "PageDown", e.Tab = "Tab", e))(vE || {});
let Ox = zt(null);
Ox.displayName = "LabelContext";
function qq() {
let e = nt(Ox);
if (e === null) {
let t = new Error("You used a <Label /> component, but it is not inside a relevant parent.");
throw Error.captureStackTrace && Error.captureStackTrace(t, qq), t;
}
return e;
}
function Kq(e) {
var t, r, n;
let o = (r = (t = nt(Ox)) == null ? void 0 : t.value) != null ? r : void 0;
return ((n = void 0) != null ? n : 0) > 0 ? [o, ...e].filter(Boolean).join(" ") : o;
}
function POe({ inherit: e = !1 } = {}) {
let t = Kq(), [r, n] = de([]), o = e ? [t, ...r].filter(Boolean) : r;
return [o.length > 0 ? o.join(" ") : void 0, Ie(() => function(a) {
let i = na((u) => (n((c) => [...c, u]), () => n((c) => {
let d = c.slice(), l = d.indexOf(u);
return l !== -1 && d.splice(l, 1), d;
}))), s = Ie(() => ({ register: i, slot: a.slot, name: a.name, props: a.props, value: a.value }), [i, a.slot, a.name, a.props, a.value]);
return ae.createElement(Ox.Provider, { value: s }, a.children);
}, [n])];
}
let COe = "label";
function NOe(e, t) {
var r;
let n = ua(), o = qq(), a = Bq(), i = IP(), { id: s = `headlessui-label-${n}`, htmlFor: u = a ?? ((r = o.props) == null ? void 0 : r.htmlFor), passive: c = !1, ...d } = e, l = RP(t);
TP(() => o.register(s), [s, o.register]);
let f = na((h) => {
let w = h.currentTarget;
if (w instanceof HTMLLabelElement && h.preventDefault(), o.props && "onClick" in o.props && typeof o.props.onClick == "function" && o.props.onClick(h), w instanceof HTMLLabelElement) {
let $ = document.getElementById(w.htmlFor);
if ($) {
let _ = $.getAttribute("disabled");
if (_ === "true" || _ === "") return;
let S = $.getAttribute("aria-disabled");
if (S === "true" || S === "") return;
($ instanceof HTMLInputElement && ($.type === "radio" || $.type === "checkbox") || $.role === "radio" || $.role === "checkbox" || $.role === "switch") && $.click(), $.focus({ preventScroll: !0 });
}
}
}), p = i || !1, y = Ie(() => ({ ...o.slot, disabled: p }), [o.slot, p]), m = { ref: l, ...o.props, id: s, htmlFor: u, onClick: f };
return c && ("onClick" in m && (delete m.htmlFor, delete m.onClick), "onClick" in d && delete d.onClick), Lb()({ ourProps: m, theirProps: d, slot: y, defaultTag: u ? COe : "div", name: o.name || "Label" });
}
let TOe = kx(NOe), IOe = Object.assign(TOe, {});
function jOe(e, t) {
return Ie(() => {
var r;
if (e.type) return e.type;
let n = (r = e.as) != null ? r : "button";
if (typeof n == "string" && n.toLowerCase() === "button" || (t == null ? void 0 : t.tagName) === "BUTTON" && !t.hasAttribute("type")) return "button";
}, [e.type, e.as, t]);
}
let MP = zt(null);
MP.displayName = "GroupContext";
let ROe = Ut;
function MOe(e) {
var t;
let [r, n] = de(null), [o, a] = POe(), [i, s] = _Oe(), u = Ie(() => ({ switch: r, setSwitch: n }), [r, n]), c = {}, d = e, l = Lb();
return ae.createElement(s, { name: "Switch.Description", value: i }, ae.createElement(a, { name: "Switch.Label", value: o, props: { htmlFor: (t = u.switch) == null ? void 0 : t.id, onClick(f) {
r && (f.currentTarget instanceof HTMLLabelElement && f.preventDefault(), r.click(), r.focus({ preventScroll: !0 }));
} } }, ae.createElement(MP.Provider, { value: u }, l({ ourProps: c, theirProps: d, slot: {}, defaultTag: ROe, name: "Switch.Group" }))));
}
let DOe = "button";
function FOe(e, t) {
var r;
let n = ua(), o = Bq(), a = IP(), { id: i = o || `headlessui-switch-${n}`, disabled: s = a || !1, checked: u, defaultChecked: c, onChange: d, name: l, value: f, form: p, autoFocus: y = !1, ...m } = e, h = nt(MP), [w, $] = de(null), _ = ne(null), S = RP(_, t, h === null ? null : h.setSwitch, $), b = fOe(c), [F, z] = uOe(u, d, b ?? !1), q = NP(), [Y, B] = de(!1), Z = na(() => {
B(!0), z == null || z(!F), q.nextFrame(() => {
B(!1);
});
}), M = na((C) => {
if (xOe(C.currentTarget)) return C.preventDefault();
C.preventDefault(), Z();
}), te = na((C) => {
C.key === vE.Space ? (C.preventDefault(), Z()) : C.key === vE.Enter && dOe(C.currentTarget);
}), G = na((C) => C.preventDefault()), H = Kq(), U = kOe(), { isFocusVisible: W, focusProps: X } = B_e({ autoFocus: y }), { isHovered: ee, hoverProps: v } = U_e({ isDisabled: s }), { pressed: g, pressProps: O } = tOe({ disabled: s }), P = Ie(() => ({ checked: F, disabled: s, hover: ee, focus: W, active: g, autofocus: y, changing: Y }), [F, ee, W, g, s, Y, y]), A = lOe({ id: i, ref: S, role: "switch", type: jOe(e, w), tabIndex: e.tabIndex === -1 ? 0 : (r = e.tabIndex) != null ? r : 0, "aria-checked": F, "aria-labelledby": H, "aria-describedby": U, disabled: s || void 0, autoFocus: y, onClick: M, onKeyUp: te, onKeyPress: G }, X, v, O), T = Ne(() => {
if (b !== void 0) return z == null ? void 0 : z(b);
}, [z, b]), N = Lb();
return ae.createElement(ae.Fragment, null, l != null && ae.createElement(bOe, { disabled: s, data: { [l]: f || "on" }, overrides: { type: "checkbox", checked: F }, form: p, onReset: T }), N({ ourProps: A, theirProps: m, slot: P, defaultTag: DOe, name: "Switch" }));
}
let LOe = kx(FOe), zOe = MOe, WOe = IOe, VOe = AOe, HOe = Object.assign(LOe, { Group: zOe, Label: WOe, Description: VOe });
function Xq(e) {
var t, r, n = "";
if (typeof e == "string" || typeof e == "number") n += e;
else if (typeof e == "object") if (Array.isArray(e)) for (t = 0; t < e.length; t++) e[t] && (r = Xq(e[t])) && (n && (n += " "), n += r);
else for (t in e) e[t] && (n && (n += " "), n += t);
return n;
}
function DR() {
for (var e, t, r = 0, n = ""; r < arguments.length; ) (e = arguments[r++]) && (t = Xq(e)) && (n && (n += " "), n += t);
return n;
}
function GOe({ enabled: e, setEnabled: t, className: r }) {
return /* @__PURE__ */ K(HOe, { checked: e, onChange: t, as: Ut, children: ({ checked: n, disabled: o }) => /* @__PURE__ */ Te(
"button",
{
className: DR(
"group inline-flex h-6 w-11 items-center rounded-full",
n ? "bg-primary" : "bg-action",
o && "cursor-not-allowed opacity-50",
r
),
children: [
/* @__PURE__ */ K("span", { className: "sr-only", children: "Enable notifications" }),
/* @__PURE__ */ K(
"span",
{
className: DR(
"size-4 rounded-full bg-white transition",
n ? "translate-x-6" : "translate-x-1"
)
}
)
]
}
) });
}
const My = [
{ value: "none", label: "None (Silent)" },
// NB: MUST BE FIRST
// Other options
{ label: "Click", value: "click" },
{ label: "Correct", value: "correct" },
{ label: "Crumble", value: "crumble" },
{ label: "Dialog Done", value: "done" },
{ label: "Dialog Next", value: "next" },
{ label: "Error Chirp", value: "error_chirp" },
{ label: "Flower", value: "flower" },
{ label: "Ghost", value: "ghost" },
{ label: "Sci-Fi Alert", value: "scifi_alert" },
{ label: "Sci-Fi Menu Beep 1", value: "scifi_menu_beep_1" },
{ label: "Sci-Fi Menu Beep 2", value: "scifi_menu_beep_2" },
{ label: "Sci-Fi Menu Close", value: "scifi_menu_close" },
{ label: "Sci-Fi Menu Open", value: "scifi_menu_open" },
{ label: "Sci-Fi Menu Select", value: "scifi_menu_select" },
{ label: "Sci-Fi Shrill Alert", value: "scifi_shrill_alert" },
{ label: "Select", value: "select" },
{ label: "Shell Kick", value: "giant_shell_kick" },
{ label: "Special Alert", value: "special_alert" },
{ label: "Special Flower", value: "special_flower" },
{ label: "Spike Throw", value: "spike_throw" },
{ label: "Wrong", value: "wrong" }
], UOe = (e) => {
const [t, r] = de(void 0);
ue(() => {
(async () => {
const h = await I1();
r(h.preferences);
})();
}, []);
const n = (t == null ? void 0 : t.play_sounds) || !1, o = Dy(t == null ? void 0 : t.enqueue_success_sound), a = Dy(t == null ? void 0 : t.enqueue_failure_sound), i = Dy(t == null ? void 0 : t.generation_success_sound), s = Dy(t == null ? void 0 : t.generation_failure_sound), u = async () => {
const m = await I1();
r(m.preferences);
}, c = async (m) => {
await tu({
preference: Vl.PlaySounds,
value: m
}), await u();
}, d = async (m) => {
let h = m === "none" ? void 0 : m;
await tu({
preference: Vl.EnqueueSuccessSound,
value: h
}), Im.getInstance().playSound(m), await u();
}, l = async (m) => {
let h = m === "none" ? void 0 : m;
await tu({
preference: Vl.EnqueueFailureSound,
value: h
}), Im.getInstance().playSound(m), await u();
}, f = async (m) => {
let h = m === "none" ? void 0 : m;
await tu({
preference: Vl.GenerationSuccessSound,
value: h
}), Im.getInstance().playSound(m), await u();
}, p = async (m) => {
let h = m === "none" ? void 0 : m;
await tu({
preference: Vl.GenerationFailureSound,
value: h
}), Im.getInstance().playSound(m), await u();
}, y = (m) => {
m !== void 0 && m !== "none" && Im.getInstance().playSound(m);
};
return /* @__PURE__ */ K(rn, { children: /* @__PURE__ */ Te("div", { className: "space-y-4", children: [
/* @__PURE__ */ Te("div", { className: "flex flex-col", children: [
/* @__PURE__ */ K(jn, { htmlFor: "play-sounds", children: "Play Notification Sounds for Events?" }),
/* @__PURE__ */ K(GOe, { enabled: n, setEnabled: c })
] }),
/* @__PURE__ */ Te("div", { className: "space-y-1", children: [
/* @__PURE__ */ K(jn, { htmlFor: "success-sound", children: "Enqueue Success Sound" }),
/* @__PURE__ */ Te("div", { className: "flex items-center gap-2", children: [
/* @__PURE__ */ K(
jy,
{
id: "success-sound",
value: o,
onChange: (m) => d(m),
options: My,
className: "grow"
}
),
/* @__PURE__ */ K(
Io,
{
variant: "primary",
className: "w-[40px] h-[40px]",
icon: Oy,
onClick: () => y(o)
}
)
] })
] }),
/* @__PURE__ */ Te("div", { className: "space-y-1", children: [
/* @__PURE__ */ K(jn, { htmlFor: "success-sound", children: "Enqueue Failure Sound" }),
/* @__PURE__ */ Te("div", { className: "flex items-center gap-2", children: [
/* @__PURE__ */ K(
jy,
{
id: "success-sound",
value: a,
onChange: (m) => l(m),
options: My,
className: "grow"
}
),
/* @__PURE__ */ K(
Io,
{
variant: "primary",
className: "w-[40px] h-[40px]",
icon: Oy,
onClick: () => y(a)
}
)
] })
] }),
/* @__PURE__ */ Te("div", { className: "space-y-1", children: [
/* @__PURE__ */ K(jn, { htmlFor: "success-sound", children: "Generation Success Sound" }),
/* @__PURE__ */ Te("div", { className: "flex items-center gap-2", children: [
/* @__PURE__ */ K(
jy,
{
id: "success-sound",
value: i,
onChange: (m) => f(m),
options: My,
className: "grow"
}
),
/* @__PURE__ */ K(
Io,
{
variant: "primary",
className: "w-[40px] h-[40px]",
icon: Oy,
onClick: () => y(i)
}
)
] })
] }),
/* @__PURE__ */ Te("div", { className: "space-y-1", children: [
/* @__PURE__ */ K(jn, { htmlFor: "failure-sound", children: "Generation Failure Sound" }),
/* @__PURE__ */ Te("div", { className: "flex items-center gap-2", children: [
/* @__PURE__ */ K(
jy,
{
id: "failure-sound",
value: s,
onChange: (m) => p(m),
options: My,
className: "grow"
}
),
/* @__PURE__ */ K(
Io,
{
variant: "primary",
className: "w-[40px] h-[40px]",
icon: Oy,
onClick: () => y(s)
}
)
] })
] })
] }) });
}, Dy = (e) => e || "none", BOe = 1 * 60 * 1e3, YOe = ({
cacheKey: e = "soraSettingsSessionCache",
cacheTtlMs: t = BOe
}) => {
const [r, n] = de(void 0), [o, a] = de(!1);
t1e(() => {
a(!0), u9().then((s) => {
n(s), localStorage.setItem(
e,
JSON.stringify({ session: s, timestamp: Date.now() })
);
}).finally(() => a(!1));
}), ue(() => {
(async () => {
a(!0);
try {
const u = localStorage.getItem(e);
if (u) {
const { session: d, timestamp: l } = JSON.parse(u);
if (Date.now() - l < t) {
n(d), a(!1);
return;
}
}
const c = await u9();
n(c), localStorage.setItem(
e,
JSON.stringify({ session: c, timestamp: Date.now() })
);
} catch (u) {
console.error("Error fetching Sora session", u), n(void 0);
} finally {
a(!1);
}
})();
}, [e, t]);
const i = async () => {
if (!o)
if ((r == null ? void 0 : r.state) === _f.Valid)
a(!0), await e1e(), n({ state: _f.NotSetUp }), localStorage.removeItem(e), a(!1);
else {
a(!0);
try {
await Mg("open_sora_login_command");
} catch {
} finally {
a(!1);
}
}
};
return /* @__PURE__ */ Te("div", { className: "flex justify-between items-center", children: [
/* @__PURE__ */ K("span", { children: "OpenAI / Sora Account:" }),
/* @__PURE__ */ K("pre", { children: (r == null ? void 0 : r.maybe_account_email) || "" }),
/* @__PURE__ */ K(
Io,
{
variant: (r == null ? void 0 : r.state) === _f.Valid && !o ? "destructive" : (r == null ? void 0 : r.state) === _f.NotSetUp ? "primary" : "secondary",
className: "h-[30px]",
onClick: i,
disabled: o,
children: o ? /* @__PURE__ */ K(
To,
{
icon: nx,
className: "animate-spin text-sm"
}
) : (r == null ? void 0 : r.state) === _f.Valid ? "Disconnect" : "Connect"
}
)
] });
};
var qOe = Object.defineProperty, KOe = (e, t, r) => t in e ? qOe(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, Jq = (e, t, r) => KOe(e, typeof t != "symbol" ? t + "" : t, r);
const XOe = "https://api.storyteller.ai";
window.STORYTELLER_API_HOST_STORE = void 0;
let JOe = class Qq {
constructor(t) {
Jq(this, "apiSchemeAndHost"), this.apiSchemeAndHost = t;
}
// NB(bt,2025-09-25): 'nx' is creating multiple copies of the library with name
// mangling, so the singleton pattern fails to resolve to a single instance.
// public static getInstance(): StorytellerApiHostStore {
// if (StorytellerApiHostStore.instance !== undefined) {
// return StorytellerApiHostStore.instance;
// }
// const instance = new StorytellerApiHostStore(DEFAULT_API_HOST);
// StorytellerApiHostStore.instance = instance;
// return instance;
// }
static getInstance() {
if (window.STORYTELLER_API_HOST_STORE !== void 0)
return window.STORYTELLER_API_HOST_STORE;
const t = new Qq(XOe);
return window.STORYTELLER_API_HOST_STORE = t, t;
}
/** Get the API scheme and host. */
getApiSchemeAndHost() {
return console.debug("StorytellerApiHostStore.getApiSchemeAndHost()", this.apiSchemeAndHost, this.constructor.name), this.apiSchemeAndHost;
}
/**
* Externally update the API host.
* This is used to sync with Tauri for enabling easier development.
*/
setApiSchemeAndHost(t) {
if (console.debug("StorytellerApiHostStore.setApiSchemeAndHost()", t, this.constructor.name), !t.startsWith("http://") && !t.startsWith("https://"))
throw new Error(`Scheme not included in URL: ${t}`);
const r = "https://".lastIndexOf("/");
if (t.lastIndexOf("/") > r)
throw new Error(`Path components should not be included in URL: ${t}`);
this.apiSchemeAndHost = t;
}
};
var dh = /* @__PURE__ */ ((e) => (e.GOOGLE_API = "https://storage.googleapis.com", e.FUNNEL_API = "https://style.storyteller.ai", e.CDN_API = "https://cdn.storyteller.ai", e.GRAVATAR_API = "https://www.gravatar.com", e))(dh || {}), P$ = { exports: {} }, _t = {};
/**
* @license React
* react.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var FR;
function QOe() {
if (FR) return _t;
FR = 1;
var e = Symbol.for("react.element"), t = Symbol.for("react.portal"), r = Symbol.for("react.fragment"), n = Symbol.for("react.strict_mode"), o = Symbol.for("react.profiler"), a = Symbol.for("react.provider"), i = Symbol.for("react.context"), s = Symbol.for("react.forward_ref"), u = Symbol.for("react.suspense"), c = Symbol.for("react.memo"), d = Symbol.for("react.lazy"), l = Symbol.iterator;
function f(g) {
return g === null || typeof g != "object" ? null : (g = l && g[l] || g["@@iterator"], typeof g == "function" ? g : null);
}
var p = { isMounted: function() {
return !1;
}, enqueueForceUpdate: function() {
}, enqueueReplaceState: function() {
}, enqueueSetState: function() {
} }, y = Object.assign, m = {};
function h(g, O, P) {
this.props = g, this.context = O, this.refs = m, this.updater = P || p;
}
h.prototype.isReactComponent = {}, h.prototype.setState = function(g, O) {
if (typeof g != "object" && typeof g != "function" && g != null) throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");
this.updater.enqueueSetState(this, g, O, "setState");
}, h.prototype.forceUpdate = function(g) {
this.updater.enqueueForceUpdate(this, g, "forceUpdate");
};
function w() {
}
w.prototype = h.prototype;
function $(g, O, P) {
this.props = g, this.context = O, this.refs = m, this.updater = P || p;
}
var _ = $.prototype = new w();
_.constructor = $, y(_, h.prototype), _.isPureReactComponent = !0;
var S = Array.isArray, b = Object.prototype.hasOwnProperty, F = { current: null }, z = { key: !0, ref: !0, __self: !0, __source: !0 };
function q(g, O, P) {
var A, T = {}, N = null, C = null;
if (O != null) for (A in O.ref !== void 0 && (C = O.ref), O.key !== void 0 && (N = "" + O.key), O) b.call(O, A) && !z.hasOwnProperty(A) && (T[A] = O[A]);
var I = arguments.length - 2;
if (I === 1) T.children = P;
else if (1 < I) {
for (var j = Array(I), R = 0; R < I; R++) j[R] = arguments[R + 2];
T.children = j;
}
if (g && g.defaultProps) for (A in I = g.defaultProps, I) T[A] === void 0 && (T[A] = I[A]);
return { $$typeof: e, type: g, key: N, ref: C, props: T, _owner: F.current };
}
function Y(g, O) {
return { $$typeof: e, type: g.type, key: O, ref: g.ref, props: g.props, _owner: g._owner };
}
function B(g) {
return typeof g == "object" && g !== null && g.$$typeof === e;
}
function Z(g) {
var O = { "=": "=0", ":": "=2" };
return "$" + g.replace(/[=:]/g, function(P) {
return O[P];
});
}
var M = /\/+/g;
function te(g, O) {
return typeof g == "object" && g !== null && g.key != null ? Z("" + g.key) : O.toString(36);
}
function G(g, O, P, A, T) {
var N = typeof g;
(N === "undefined" || N === "boolean") && (g = null);
var C = !1;
if (g === null) C = !0;
else switch (N) {
case "string":
case "number":
C = !0;
break;
case "object":
switch (g.$$typeof) {
case e:
case t:
C = !0;
}
}
if (C) return C = g, T = T(C), g = A === "" ? "." + te(C, 0) : A, S(T) ? (P = "", g != null && (P = g.replace(M, "$&/") + "/"), G(T, O, P, "", function(R) {
return R;
})) : T != null && (B(T) && (T = Y(T, P + (!T.key || C && C.key === T.key ? "" : ("" + T.key).replace(M, "$&/") + "/") + g)), O.push(T)), 1;
if (C = 0, A = A === "" ? "." : A + ":", S(g)) for (var I = 0; I < g.length; I++) {
N = g[I];
var j = A + te(N, I);
C += G(N, O, P, j, T);
}
else if (j = f(g), typeof j == "function") for (g = j.call(g), I = 0; !(N = g.next()).done; ) N = N.value, j = A + te(N, I++), C += G(N, O, P, j, T);
else if (N === "object") throw O = String(g), Error("Objects are not valid as a React child (found: " + (O === "[object Object]" ? "object with keys {" + Object.keys(g).join(", ") + "}" : O) + "). If you meant to render a collection of children, use an array instead.");
return C;
}
function H(g, O, P) {
if (g == null) return g;
var A = [], T = 0;
return G(g, A, "", "", function(N) {
return O.call(P, N, T++);
}), A;
}
function U(g) {
if (g._status === -1) {
var O = g._result;
O = O(), O.then(function(P) {
(g._status === 0 || g._status === -1) && (g._status = 1, g._result = P);
}, function(P) {
(g._status === 0 || g._status === -1) && (g._status = 2, g._result = P);
}), g._status === -1 && (g._status = 0, g._result = O);
}
if (g._status === 1) return g._result.default;
throw g._result;
}
var W = { current: null }, X = { transition: null }, ee = { ReactCurrentDispatcher: W, ReactCurrentBatchConfig: X, ReactCurrentOwner: F };
function v() {
throw Error("act(...) is not supported in production builds of React.");
}
return _t.Children = { map: H, forEach: function(g, O, P) {
H(g, function() {
O.apply(this, arguments);
}, P);
}, count: function(g) {
var O = 0;
return H(g, function() {
O++;
}), O;
}, toArray: function(g) {
return H(g, function(O) {
return O;
}) || [];
}, only: function(g) {
if (!B(g)) throw Error("React.Children.only expected to receive a single React element child.");
return g;
} }, _t.Component = h, _t.Fragment = r, _t.Profiler = o, _t.PureComponent = $, _t.StrictMode = n, _t.Suspense = u, _t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = ee, _t.act = v, _t.cloneElement = function(g, O, P) {
if (g == null) throw Error("React.cloneElement(...): The argument must be a React element, but you passed " + g + ".");
var A = y({}, g.props), T = g.key, N = g.ref, C = g._owner;
if (O != null) {
if (O.ref !== void 0 && (N = O.ref, C = F.current), O.key !== void 0 && (T = "" + O.key), g.type && g.type.defaultProps) var I = g.type.defaultProps;
for (j in O) b.call(O, j) && !z.hasOwnProperty(j) && (A[j] = O[j] === void 0 && I !== void 0 ? I[j] : O[j]);
}
var j = arguments.length - 2;
if (j === 1) A.children = P;
else if (1 < j) {
I = Array(j);
for (var R = 0; R < j; R++) I[R] = arguments[R + 2];
A.children = I;
}
return { $$typeof: e, type: g.type, key: T, ref: N, props: A, _owner: C };
}, _t.createContext = function(g) {
return g = { $$typeof: i, _currentValue: g, _currentValue2: g, _threadCount: 0, Provider: null, Consumer: null, _defaultValue: null, _globalName: null }, g.Provider = { $$typeof: a, _context: g }, g.Consumer = g;
}, _t.createElement = q, _t.createFactory = function(g) {
var O = q.bind(null, g);
return O.type = g, O;
}, _t.createRef = function() {
return { current: null };
}, _t.forwardRef = function(g) {
return { $$typeof: s, render: g };
}, _t.isValidElement = B, _t.lazy = function(g) {
return { $$typeof: d, _payload: { _status: -1, _result: g }, _init: U };
}, _t.memo = function(g, O) {
return { $$typeof: c, type: g, compare: O === void 0 ? null : O };
}, _t.startTransition = function(g) {
var O = X.transition;
X.transition = {};
try {
g();
} finally {
X.transition = O;
}
}, _t.unstable_act = v, _t.useCallback = function(g, O) {
return W.current.useCallback(g, O);
}, _t.useContext = function(g) {
return W.current.useContext(g);
}, _t.useDebugValue = function() {
}, _t.useDeferredValue = function(g) {
return W.current.useDeferredValue(g);
}, _t.useEffect = function(g, O) {
return W.current.useEffect(g, O);
}, _t.useId = function() {
return W.current.useId();
}, _t.useImperativeHandle = function(g, O, P) {
return W.current.useImperativeHandle(g, O, P);
}, _t.useInsertionEffect = function(g, O) {
return W.current.useInsertionEffect(g, O);
}, _t.useLayoutEffect = function(g, O) {
return W.current.useLayoutEffect(g, O);
}, _t.useMemo = function(g, O) {
return W.current.useMemo(g, O);
}, _t.useReducer = function(g, O, P) {
return W.current.useReducer(g, O, P);
}, _t.useRef = function(g) {
return W.current.useRef(g);
}, _t.useState = function(g) {
return W.current.useState(g);
}, _t.useSyncExternalStore = function(g, O, P) {
return W.current.useSyncExternalStore(g, O, P);
}, _t.useTransition = function() {
return W.current.useTransition();
}, _t.version = "18.3.1", _t;
}
var Wv = { exports: {} };
/**
* @license React
* react.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
Wv.exports;
var LR;
function ZOe() {
return LR || (LR = 1, function(e, t) {
process.env.NODE_ENV !== "production" && function() {
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());
var r = "18.3.1", n = Symbol.for("react.element"), o = Symbol.for("react.portal"), a = Symbol.for("react.fragment"), i = Symbol.for("react.strict_mode"), s = Symbol.for("react.profiler"), u = Symbol.for("react.provider"), c = Symbol.for("react.context"), d = Symbol.for("react.forward_ref"), l = Symbol.for("react.suspense"), f = Symbol.for("react.suspense_list"), p = Symbol.for("react.memo"), y = Symbol.for("react.lazy"), m = Symbol.for("react.offscreen"), h = Symbol.iterator, w = "@@iterator";
function $(x) {
if (x === null || typeof x != "object")
return null;
var E = h && x[h] || x[w];
return typeof E == "function" ? E : null;
}
var _ = {
/**
* @internal
* @type {ReactComponent}
*/
current: null
}, S = {
transition: null
}, b = {
current: null,
// Used to reproduce behavior of `batchedUpdates` in legacy mode.
isBatchingLegacy: !1,
didScheduleLegacyUpdate: !1
}, F = {
/**
* @internal
* @type {ReactComponent}
*/
current: null
}, z = {}, q = null;
function Y(x) {
q = x;
}
z.setExtraStackFrame = function(x) {
q = x;
}, z.getCurrentStack = null, z.getStackAddendum = function() {
var x = "";
q && (x += q);
var E = z.getCurrentStack;
return E && (x += E() || ""), x;
};
var B = !1, Z = !1, M = !1, te = !1, G = !1, H = {
ReactCurrentDispatcher: _,
ReactCurrentBatchConfig: S,
ReactCurrentOwner: F
};
H.ReactDebugCurrentFrame = z, H.ReactCurrentActQueue = b;
function U(x) {
{
for (var E = arguments.length, D = new Array(E > 1 ? E - 1 : 0), L = 1; L < E; L++)
D[L - 1] = arguments[L];
X("warn", x, D);
}
}
function W(x) {
{
for (var E = arguments.length, D = new Array(E > 1 ? E - 1 : 0), L = 1; L < E; L++)
D[L - 1] = arguments[L];
X("error", x, D);
}
}
function X(x, E, D) {
{
var L = H.ReactDebugCurrentFrame, J = L.getStackAddendum();
J !== "" && (E += "%s", D = D.concat([J]));
var ie = D.map(function(re) {
return String(re);
});
ie.unshift("Warning: " + E), Function.prototype.apply.call(console[x], console, ie);
}
}
var ee = {};
function v(x, E) {
{
var D = x.constructor, L = D && (D.displayName || D.name) || "ReactClass", J = L + "." + E;
if (ee[J])
return;
W("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.", E, L), ee[J] = !0;
}
}
var g = {
/**
* Checks whether or not this composite component is mounted.
* @param {ReactClass} publicInstance The instance we want to test.
* @return {boolean} True if mounted, false otherwise.
* @protected
* @final
*/
isMounted: function(x) {
return !1;
},
/**
* Forces an update. This should only be invoked when it is known with
* certainty that we are **not** in a DOM transaction.
*
* You may want to call this when you know that some deeper aspect of the
* component's state has changed but `setState` was not called.
*
* This will not invoke `shouldComponentUpdate`, but it will invoke
* `componentWillUpdate` and `componentDidUpdate`.
*
* @param {ReactClass} publicInstance The instance that should rerender.
* @param {?function} callback Called after component is updated.
* @param {?string} callerName name of the calling function in the public API.
* @internal
*/
enqueueForceUpdate: function(x, E, D) {
v(x, "forceUpdate");
},
/**
* Replaces all of the state. Always use this or `setState` to mutate state.
* You should treat `this.state` as immutable.
*
* There is no guarantee that `this.state` will be immediately updated, so
* accessing `this.state` after calling this method may return the old value.
*
* @param {ReactClass} publicInstance The instance that should rerender.
* @param {object} completeState Next state.
* @param {?function} callback Called after component is updated.
* @param {?string} callerName name of the calling function in the public API.
* @internal
*/
enqueueReplaceState: function(x, E, D, L) {
v(x, "replaceState");
},
/**
* Sets a subset of the state. This only exists because _pendingState is
* internal. This provides a merging strategy that is not available to deep
* properties which is confusing. TODO: Expose pendingState or don't use it
* during the merge.
*
* @param {ReactClass} publicInstance The instance that should rerender.
* @param {object} partialState Next partial state to be merged with state.
* @param {?function} callback Called after component is updated.
* @param {?string} Name of the calling function in the public API.
* @internal
*/
enqueueSetState: function(x, E, D, L) {
v(x, "setState");
}
}, O = Object.assign, P = {};
Object.freeze(P);
function A(x, E, D) {
this.props = x, this.context = E, this.refs = P, this.updater = D || g;
}
A.prototype.isReactComponent = {}, A.prototype.setState = function(x, E) {
if (typeof x != "object" && typeof x != "function" && x != null)
throw new Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");
this.updater.enqueueSetState(this, x, E, "setState");
}, A.prototype.forceUpdate = function(x) {
this.updater.enqueueForceUpdate(this, x, "forceUpdate");
};
{
var T = {
isMounted: ["isMounted", "Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."],
replaceState: ["replaceState", "Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."]
}, N = function(x, E) {
Object.defineProperty(A.prototype, x, {
get: function() {
U("%s(...) is deprecated in plain JavaScript React classes. %s", E[0], E[1]);
}
});
};
for (var C in T)
T.hasOwnProperty(C) && N(C, T[C]);
}
function I() {
}
I.prototype = A.prototype;
function j(x, E, D) {
this.props = x, this.context = E, this.refs = P, this.updater = D || g;
}
var R = j.prototype = new I();
R.constructor = j, O(R, A.prototype), R.isPureReactComponent = !0;
function Q() {
var x = {
current: null
};
return Object.seal(x), x;
}
var k = Array.isArray;
function oe(x) {
return k(x);
}
function me(x) {
{
var E = typeof Symbol == "function" && Symbol.toStringTag, D = E && x[Symbol.toStringTag] || x.constructor.name || "Object";
return D;
}
}
function Le(x) {
try {
return Xr(x), !1;
} catch {
return !0;
}
}
function Xr(x) {
return "" + x;
}
function Jr(x) {
if (Le(x))
return W("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.", me(x)), Xr(x);
}
function ce(x, E, D) {
var L = x.displayName;
if (L)
return L;
var J = E.displayName || E.name || "";
return J !== "" ? D + "(" + J + ")" : D;
}
function le(x) {
return x.displayName || "Context";
}
function fe(x) {
if (x == null)
return null;
if (typeof x.tag == "number" && W("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."), typeof x == "function")
return x.displayName || x.name || null;
if (typeof x == "string")
return x;
switch (x) {
case a:
return "Fragment";
case o:
return "Portal";
case s:
return "Profiler";
case i:
return "StrictMode";
case l:
return "Suspense";
case f:
return "SuspenseList";
}
if (typeof x == "object")
switch (x.$$typeof) {
case c:
var E = x;
return le(E) + ".Consumer";
case u:
var D = x;
return le(D._context) + ".Provider";
case d:
return ce(x, x.render, "ForwardRef");
case p:
var L = x.displayName || null;
return L !== null ? L : fe(x.type) || "Memo";
case y: {
var J = x, ie = J._payload, re = J._init;
try {
return fe(re(ie));
} catch {
return null;
}
}
}
return null;
}
var ot = Object.prototype.hasOwnProperty, kt = {
key: !0,
ref: !0,
__self: !0,
__source: !0
}, De, Ze, rt;
rt = {};
function Wt(x) {
if (ot.call(x, "ref")) {
var E = Object.getOwnPropertyDescriptor(x, "ref").get;
if (E && E.isReactWarning)
return !1;
}
return x.ref !== void 0;
}
function lt(x) {
if (ot.call(x, "key")) {
var E = Object.getOwnPropertyDescriptor(x, "key").get;
if (E && E.isReactWarning)
return !1;
}
return x.key !== void 0;
}
function $r(x, E) {
var D = function() {
De || (De = !0, W("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", E));
};
D.isReactWarning = !0, Object.defineProperty(x, "key", {
get: D,
configurable: !0
});
}
function pn(x, E) {
var D = function() {
Ze || (Ze = !0, W("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", E));
};
D.isReactWarning = !0, Object.defineProperty(x, "ref", {
get: D,
configurable: !0
});
}
function ro(x) {
if (typeof x.ref == "string" && F.current && x.__self && F.current.stateNode !== x.__self) {
var E = fe(F.current.type);
rt[E] || (W('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref', E, x.ref), rt[E] = !0);
}
}
var kr = function(x, E, D, L, J, ie, re) {
var se = {
// This tag allows us to uniquely identify this as a React Element
$$typeof: n,
// Built-in properties that belong on the element
type: x,
key: E,
ref: D,
props: re,
// Record the component responsible for creating this element.
_owner: ie
};
return se._store = {}, Object.defineProperty(se._store, "validated", {
configurable: !1,
enumerable: !1,
writable: !0,
value: !1
}), Object.defineProperty(se, "_self", {
configurable: !1,
enumerable: !1,
writable: !1,
value: L
}), Object.defineProperty(se, "_source", {
configurable: !1,
enumerable: !1,
writable: !1,
value: J
}), Object.freeze && (Object.freeze(se.props), Object.freeze(se)), se;
};
function vo(x, E, D) {
var L, J = {}, ie = null, re = null, se = null, pe = null;
if (E != null) {
Wt(E) && (re = E.ref, ro(E)), lt(E) && (Jr(E.key), ie = "" + E.key), se = E.__self === void 0 ? null : E.__self, pe = E.__source === void 0 ? null : E.__source;
for (L in E)
ot.call(E, L) && !kt.hasOwnProperty(L) && (J[L] = E[L]);
}
var Ce = arguments.length - 2;
if (Ce === 1)
J.children = D;
else if (Ce > 1) {
for (var je = Array(Ce), Re = 0; Re < Ce; Re++)
je[Re] = arguments[Re + 2];
Object.freeze && Object.freeze(je), J.children = je;
}
if (x && x.defaultProps) {
var Me = x.defaultProps;
for (L in Me)
J[L] === void 0 && (J[L] = Me[L]);
}
if (ie || re) {
var Fe = typeof x == "function" ? x.displayName || x.name || "Unknown" : x;
ie && $r(J, Fe), re && pn(J, Fe);
}
return kr(x, ie, re, se, pe, F.current, J);
}
function Mo(x, E) {
var D = kr(x.type, E, x.ref, x._self, x._source, x._owner, x.props);
return D;
}
function Do(x, E, D) {
if (x == null)
throw new Error("React.cloneElement(...): The argument must be a React element, but you passed " + x + ".");
var L, J = O({}, x.props), ie = x.key, re = x.ref, se = x._self, pe = x._source, Ce = x._owner;
if (E != null) {
Wt(E) && (re = E.ref, Ce = F.current), lt(E) && (Jr(E.key), ie = "" + E.key);
var je;
x.type && x.type.defaultProps && (je = x.type.defaultProps);
for (L in E)
ot.call(E, L) && !kt.hasOwnProperty(L) && (E[L] === void 0 && je !== void 0 ? J[L] = je[L] : J[L] = E[L]);
}
var Re = arguments.length - 2;
if (Re === 1)
J.children = D;
else if (Re > 1) {
for (var Me = Array(Re), Fe = 0; Fe < Re; Fe++)
Me[Fe] = arguments[Fe + 2];
J.children = Me;
}
return kr(x.type, ie, re, se, pe, Ce, J);
}
function yr(x) {
return typeof x == "object" && x !== null && x.$$typeof === n;
}
var Tn = ".", Fo = ":";
function Ss(x) {
var E = /[=:]/g, D = {
"=": "=0",
":": "=2"
}, L = x.replace(E, function(J) {
return D[J];
});
return "$" + L;
}
var pa = !1, Kc = /\/+/g;
function ma(x) {
return x.replace(Kc, "$&/");
}
function vr(x, E) {
return typeof x == "object" && x !== null && x.key != null ? (Jr(x.key), Ss("" + x.key)) : E.toString(36);
}
function xr(x, E, D, L, J) {
var ie = typeof x;
(ie === "undefined" || ie === "boolean") && (x = null);
var re = !1;
if (x === null)
re = !0;
else
switch (ie) {
case "string":
case "number":
re = !0;
break;
case "object":
switch (x.$$typeof) {
case n:
case o:
re = !0;
}
}
if (re) {
var se = x, pe = J(se), Ce = L === "" ? Tn + vr(se, 0) : L;
if (oe(pe)) {
var je = "";
Ce != null && (je = ma(Ce) + "/"), xr(pe, E, je, "", function(bm) {
return bm;
});
} else pe != null && (yr(pe) && (pe.key && (!se || se.key !== pe.key) && Jr(pe.key), pe = Mo(
pe,
// Keep both the (mapped) and old keys if they differ, just as
// traverseAllChildren used to do for objects as children
D + // $FlowFixMe Flow incorrectly thinks React.Portal doesn't have a key
(pe.key && (!se || se.key !== pe.key) ? (
// $FlowFixMe Flow incorrectly thinks existing element's key can be a number
// eslint-disable-next-line react-internal/safe-string-coercion
ma("" + pe.key) + "/"
) : "") + Ce
)), E.push(pe));
return 1;
}
var Re, Me, Fe = 0, tt = L === "" ? Tn : L + Fo;
if (oe(x))
for (var Bn = 0; Bn < x.length; Bn++)
Re = x[Bn], Me = tt + vr(Re, Bn), Fe += xr(Re, E, D, Me, J);
else {
var qo = $(x);
if (typeof qo == "function") {
var qs = x;
qo === qs.entries && (pa || U("Using Maps as children is not supported. Use an array of keyed ReactElements instead."), pa = !0);
for (var hm = qo.call(qs), Ks, gm = 0; !(Ks = hm.next()).done; )
Re = Ks.value, Me = tt + vr(Re, gm++), Fe += xr(Re, E, D, Me, J);
} else if (ie === "object") {
var Xs = String(x);
throw new Error("Objects are not valid as a React child (found: " + (Xs === "[object Object]" ? "object with keys {" + Object.keys(x).join(", ") + "}" : Xs) + "). If you meant to render a collection of children, use an array instead.");
}
}
return Fe;
}
function wr(x, E, D) {
if (x == null)
return x;
var L = [], J = 0;
return xr(x, L, "", "", function(ie) {
return E.call(D, ie, J++);
}), L;
}
function Dn(x) {
var E = 0;
return wr(x, function() {
E++;
}), E;
}
function sn(x, E, D) {
wr(x, function() {
E.apply(this, arguments);
}, D);
}
function nn(x) {
return wr(x, function(E) {
return E;
}) || [];
}
function mn(x) {
if (!yr(x))
throw new Error("React.Children.only expected to receive a single React element child.");
return x;
}
function xo(x) {
var E = {
$$typeof: c,
// As a workaround to support multiple concurrent renderers, we categorize
// some renderers as primary and others as secondary. We only expect
// there to be two concurrent renderers at most: React Native (primary) and
// Fabric (secondary); React DOM (primary) and React ART (secondary).
// Secondary renderers store their context values on separate fields.
_currentValue: x,
_currentValue2: x,
// Used to track how many concurrent renderers this context currently
// supports within in a single renderer. Such as parallel server rendering.
_threadCount: 0,
// These are circular
Provider: null,
Consumer: null,
// Add these to use same hidden class in VM as ServerContext
_defaultValue: null,
_globalName: null
};
E.Provider = {
$$typeof: u,
_context: E
};
var D = !1, L = !1, J = !1;
{
var ie = {
$$typeof: c,
_context: E
};
Object.defineProperties(ie, {
Provider: {
get: function() {
return L || (L = !0, W("Rendering <Context.Consumer.Provider> is not supported and will be removed in a future major release. Did you mean to render <Context.Provider> instead?")), E.Provider;
},
set: function(re) {
E.Provider = re;
}
},
_currentValue: {
get: function() {
return E._currentValue;
},
set: function(re) {
E._currentValue = re;
}
},
_currentValue2: {
get: function() {
return E._currentValue2;
},
set: function(re) {
E._currentValue2 = re;
}
},
_threadCount: {
get: function() {
return E._threadCount;
},
set: function(re) {
E._threadCount = re;
}
},
Consumer: {
get: function() {
return D || (D = !0, W("Rendering <Context.Consumer.Consumer> is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?")), E.Consumer;
}
},
displayName: {
get: function() {
return E.displayName;
},
set: function(re) {
J || (U("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.", re), J = !0);
}
}
}), E.Consumer = ie;
}
return E._currentRenderer = null, E._currentRenderer2 = null, E;
}
var Vt = -1, Qr = 0, on = 1, In = 2;
function Lo(x) {
if (x._status === Vt) {
var E = x._result, D = E();
if (D.then(function(ie) {
if (x._status === Qr || x._status === Vt) {
var re = x;
re._status = on, re._result = ie;
}
}, function(ie) {
if (x._status === Qr || x._status === Vt) {
var re = x;
re._status = In, re._result = ie;
}
}), x._status === Vt) {
var L = x;
L._status = Qr, L._result = D;
}
}
if (x._status === on) {
var J = x._result;
return J === void 0 && W(`lazy: Expected the result of a dynamic import() call. Instead received: %s
Your code should look like:
const MyComponent = lazy(() => import('./MyComponent'))
Did you accidentally put curly braces around the import?`, J), "default" in J || W(`lazy: Expected the result of a dynamic import() call. Instead received: %s
Your code should look like:
const MyComponent = lazy(() => import('./MyComponent'))`, J), J.default;
} else
throw x._result;
}
function zo(x) {
var E = {
// We use these fields to store the result.
_status: Vt,
_result: x
}, D = {
$$typeof: y,
_payload: E,
_init: Lo
};
{
var L, J;
Object.defineProperties(D, {
defaultProps: {
configurable: !0,
get: function() {
return L;
},
set: function(ie) {
W("React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."), L = ie, Object.defineProperty(D, "defaultProps", {
enumerable: !0
});
}
},
propTypes: {
configurable: !0,
get: function() {
return J;
},
set: function(ie) {
W("React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."), J = ie, Object.defineProperty(D, "propTypes", {
enumerable: !0
});
}
}
});
}
return D;
}
function Fn(x) {
x != null && x.$$typeof === p ? W("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...)).") : typeof x != "function" ? W("forwardRef requires a render function but was given %s.", x === null ? "null" : typeof x) : x.length !== 0 && x.length !== 2 && W("forwardRef render functions accept exactly two parameters: props and ref. %s", x.length === 1 ? "Did you forget to use the ref parameter?" : "Any additional parameter will be undefined."), x != null && (x.defaultProps != null || x.propTypes != null) && W("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?");
var E = {
$$typeof: d,
render: x
};
{
var D;
Object.defineProperty(E, "displayName", {
enumerable: !1,
configurable: !0,
get: function() {
return D;
},
set: function(L) {
D = L, !x.name && !x.displayName && (x.displayName = L);
}
});
}
return E;
}
var Ln;
Ln = Symbol.for("react.module.reference");
function wo(x) {
return !!(typeof x == "string" || typeof x == "function" || x === a || x === s || G || x === i || x === l || x === f || te || x === m || B || Z || M || typeof x == "object" && x !== null && (x.$$typeof === y || x.$$typeof === p || x.$$typeof === u || x.$$typeof === c || x.$$typeof === d || // This needs to include all possible module reference object
// types supported by any Flight configuration anywhere since
// we don't know which Flight build this will end up being used
// with.
x.$$typeof === Ln || x.getModuleId !== void 0));
}
function Rp(x, E) {
wo(x) || W("memo: The first argument must be a component. Instead received: %s", x === null ? "null" : typeof x);
var D = {
$$typeof: p,
type: x,
compare: E === void 0 ? null : E
};
{
var L;
Object.defineProperty(D, "displayName", {
enumerable: !1,
configurable: !0,
get: function() {
return L;
},
set: function(J) {
L = J, !x.name && !x.displayName && (x.displayName = J);
}
});
}
return D;
}
function at() {
var x = _.current;
return x === null && W(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
1. You might have mismatching versions of React and the renderer (such as React DOM)
2. You might be breaking the Rules of Hooks
3. You might have more than one copy of React in the same app
See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.`), x;
}
function Mp(x) {
var E = at();
if (x._context !== void 0) {
var D = x._context;
D.Consumer === x ? W("Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?") : D.Provider === x && W("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?");
}
return E.useContext(x);
}
function Dp(x) {
var E = at();
return E.useState(x);
}
function Fp(x, E, D) {
var L = at();
return L.useReducer(x, E, D);
}
function Lp(x) {
var E = at();
return E.useRef(x);
}
function zp(x, E) {
var D = at();
return D.useEffect(x, E);
}
function Wp(x, E) {
var D = at();
return D.useInsertionEffect(x, E);
}
function Vp(x, E) {
var D = at();
return D.useLayoutEffect(x, E);
}
function Hp(x, E) {
var D = at();
return D.useCallback(x, E);
}
function Gp(x, E) {
var D = at();
return D.useMemo(x, E);
}
function Up(x, E, D) {
var L = at();
return L.useImperativeHandle(x, E, D);
}
function Bp(x, E) {
{
var D = at();
return D.useDebugValue(x, E);
}
}
function Yp() {
var x = at();
return x.useTransition();
}
function qp(x) {
var E = at();
return E.useDeferredValue(x);
}
function Kp() {
var x = at();
return x.useId();
}
function Xp(x, E, D) {
var L = at();
return L.useSyncExternalStore(x, E, D);
}
var fn = 0, Es, As, Ps, Cs, Ns, Ts, Is;
function js() {
}
js.__reactDisabledLog = !0;
function Jp() {
{
if (fn === 0) {
Es = console.log, As = console.info, Ps = console.warn, Cs = console.error, Ns = console.group, Ts = console.groupCollapsed, Is = console.groupEnd;
var x = {
configurable: !0,
enumerable: !0,
value: js,
writable: !0
};
Object.defineProperties(console, {
info: x,
log: x,
warn: x,
error: x,
group: x,
groupCollapsed: x,
groupEnd: x
});
}
fn++;
}
}
function Qp() {
{
if (fn--, fn === 0) {
var x = {
configurable: !0,
enumerable: !0,
writable: !0
};
Object.defineProperties(console, {
log: O({}, x, {
value: Es
}),
info: O({}, x, {
value: As
}),
warn: O({}, x, {
value: Ps
}),
error: O({}, x, {
value: Cs
}),
group: O({}, x, {
value: Ns
}),
groupCollapsed: O({}, x, {
value: Ts
}),
groupEnd: O({}, x, {
value: Is
})
});
}
fn < 0 && W("disabledDepth fell below zero. This is a bug in React. Please file an issue.");
}
}
var Wo = H.ReactCurrentDispatcher, Vo;
function zn(x, E, D) {
{
if (Vo === void 0)
try {
throw Error();
} catch (J) {
var L = J.stack.trim().match(/\n( *(at )?)/);
Vo = L && L[1] || "";
}
return `
` + Vo + x;
}
}
var Ho = !1, Wn;
{
var Zp = typeof WeakMap == "function" ? WeakMap : Map;
Wn = new Zp();
}
function Rs(x, E) {
if (!x || Ho)
return "";
{
var D = Wn.get(x);
if (D !== void 0)
return D;
}
var L;
Ho = !0;
var J = Error.prepareStackTrace;
Error.prepareStackTrace = void 0;
var ie;
ie = Wo.current, Wo.current = null, Jp();
try {
if (E) {
var re = function() {
throw Error();
};
if (Object.defineProperty(re.prototype, "props", {
set: function() {
throw Error();
}
}), typeof Reflect == "object" && Reflect.construct) {
try {
Reflect.construct(re, []);
} catch (tt) {
L = tt;
}
Reflect.construct(x, [], re);
} else {
try {
re.call();
} catch (tt) {
L = tt;
}
x.call(re.prototype);
}
} else {
try {
throw Error();
} catch (tt) {
L = tt;
}
x();
}
} catch (tt) {
if (tt && L && typeof tt.stack == "string") {
for (var se = tt.stack.split(`
`), pe = L.stack.split(`
`), Ce = se.length - 1, je = pe.length - 1; Ce >= 1 && je >= 0 && se[Ce] !== pe[je]; )
je--;
for (; Ce >= 1 && je >= 0; Ce--, je--)
if (se[Ce] !== pe[je]) {
if (Ce !== 1 || je !== 1)
do
if (Ce--, je--, je < 0 || se[Ce] !== pe[je]) {
var Re = `
` + se[Ce].replace(" at new ", " at ");
return x.displayName && Re.includes("<anonymous>") && (Re = Re.replace("<anonymous>", x.displayName)), typeof x == "function" && Wn.set(x, Re), Re;
}
while (Ce >= 1 && je >= 0);
break;
}
}
} finally {
Ho = !1, Wo.current = ie, Qp(), Error.prepareStackTrace = J;
}
var Me = x ? x.displayName || x.name : "", Fe = Me ? zn(Me) : "";
return typeof x == "function" && Wn.set(x, Fe), Fe;
}
function em(x, E, D) {
return Rs(x, !1);
}
function tm(x) {
var E = x.prototype;
return !!(E && E.isReactComponent);
}
function Vn(x, E, D) {
if (x == null)
return "";
if (typeof x == "function")
return Rs(x, tm(x));
if (typeof x == "string")
return zn(x);
switch (x) {
case l:
return zn("Suspense");
case f:
return zn("SuspenseList");
}
if (typeof x == "object")
switch (x.$$typeof) {
case d:
return em(x.render);
case p:
return Vn(x.type, E, D);
case y: {
var L = x, J = L._payload, ie = L._init;
try {
return Vn(ie(J), E, D);
} catch {
}
}
}
return "";
}
var Ms = {}, Ds = H.ReactDebugCurrentFrame;
function Hn(x) {
if (x) {
var E = x._owner, D = Vn(x.type, x._source, E ? E.type : null);
Ds.setExtraStackFrame(D);
} else
Ds.setExtraStackFrame(null);
}
function rm(x, E, D, L, J) {
{
var ie = Function.call.bind(ot);
for (var re in x)
if (ie(x, re)) {
var se = void 0;
try {
if (typeof x[re] != "function") {
var pe = Error((L || "React class") + ": " + D + " type `" + re + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof x[re] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");
throw pe.name = "Invariant Violation", pe;
}
se = x[re](E, re, L, D, null, "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");
} catch (Ce) {
se = Ce;
}
se && !(se instanceof Error) && (Hn(J), W("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).", L || "React class", D, re, typeof se), Hn(null)), se instanceof Error && !(se.message in Ms) && (Ms[se.message] = !0, Hn(J), W("Failed %s type: %s", D, se.message), Hn(null));
}
}
}
function Zr(x) {
if (x) {
var E = x._owner, D = Vn(x.type, x._source, E ? E.type : null);
Y(D);
} else
Y(null);
}
var Go;
Go = !1;
function Fs() {
if (F.current) {
var x = fe(F.current.type);
if (x)
return `
Check the render method of \`` + x + "`.";
}
return "";
}
function nm(x) {
if (x !== void 0) {
var E = x.fileName.replace(/^.*[\\\/]/, ""), D = x.lineNumber;
return `
Check your code at ` + E + ":" + D + ".";
}
return "";
}
function om(x) {
return x != null ? nm(x.__source) : "";
}
var Ls = {};
function am(x) {
var E = Fs();
if (!E) {
var D = typeof x == "string" ? x : x.displayName || x.name;
D && (E = `
Check the top-level render call using <` + D + ">.");
}
return E;
}
function zs(x, E) {
if (!(!x._store || x._store.validated || x.key != null)) {
x._store.validated = !0;
var D = am(E);
if (!Ls[D]) {
Ls[D] = !0;
var L = "";
x && x._owner && x._owner !== F.current && (L = " It was passed a child from " + fe(x._owner.type) + "."), Zr(x), W('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.', D, L), Zr(null);
}
}
}
function Ws(x, E) {
if (typeof x == "object") {
if (oe(x))
for (var D = 0; D < x.length; D++) {
var L = x[D];
yr(L) && zs(L, E);
}
else if (yr(x))
x._store && (x._store.validated = !0);
else if (x) {
var J = $(x);
if (typeof J == "function" && J !== x.entries)
for (var ie = J.call(x), re; !(re = ie.next()).done; )
yr(re.value) && zs(re.value, E);
}
}
}
function Vs(x) {
{
var E = x.type;
if (E == null || typeof E == "string")
return;
var D;
if (typeof E == "function")
D = E.propTypes;
else if (typeof E == "object" && (E.$$typeof === d || // Note: Memo only checks outer props here.
// Inner props are checked in the reconciler.
E.$$typeof === p))
D = E.propTypes;
else
return;
if (D) {
var L = fe(E);
rm(D, x.props, "prop", L, x);
} else if (E.PropTypes !== void 0 && !Go) {
Go = !0;
var J = fe(E);
W("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?", J || "Unknown");
}
typeof E.getDefaultProps == "function" && !E.getDefaultProps.isReactClassApproved && W("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.");
}
}
function im(x) {
{
for (var E = Object.keys(x.props), D = 0; D < E.length; D++) {
var L = E[D];
if (L !== "children" && L !== "key") {
Zr(x), W("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.", L), Zr(null);
break;
}
}
x.ref !== null && (Zr(x), W("Invalid attribute `ref` supplied to `React.Fragment`."), Zr(null));
}
}
function Hs(x, E, D) {
var L = wo(x);
if (!L) {
var J = "";
(x === void 0 || typeof x == "object" && x !== null && Object.keys(x).length === 0) && (J += " You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");
var ie = om(E);
ie ? J += ie : J += Fs();
var re;
x === null ? re = "null" : oe(x) ? re = "array" : x !== void 0 && x.$$typeof === n ? (re = "<" + (fe(x.type) || "Unknown") + " />", J = " Did you accidentally export a JSX literal instead of a component?") : re = typeof x, W("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s", re, J);
}
var se = vo.apply(this, arguments);
if (se == null)
return se;
if (L)
for (var pe = 2; pe < arguments.length; pe++)
Ws(arguments[pe], x);
return x === a ? im(se) : Vs(se), se;
}
var Gs = !1;
function sm(x) {
var E = Hs.bind(null, x);
return E.type = x, Gs || (Gs = !0, U("React.createFactory() is deprecated and will be removed in a future major release. Consider using JSX or use React.createElement() directly instead.")), Object.defineProperty(E, "type", {
enumerable: !1,
get: function() {
return U("Factory.type is deprecated. Access the class directly before passing it to createFactory."), Object.defineProperty(this, "type", {
value: x
}), x;
}
}), E;
}
function lm(x, E, D) {
for (var L = Do.apply(this, arguments), J = 2; J < arguments.length; J++)
Ws(arguments[J], L.type);
return Vs(L), L;
}
function cm(x, E) {
var D = S.transition;
S.transition = {};
var L = S.transition;
S.transition._updatedFibers = /* @__PURE__ */ new Set();
try {
x();
} finally {
if (S.transition = D, D === null && L._updatedFibers) {
var J = L._updatedFibers.size;
J > 10 && U("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."), L._updatedFibers.clear();
}
}
}
var Us = !1, Gn = null;
function um(x) {
if (Gn === null)
try {
var E = ("require" + Math.random()).slice(0, 7), D = e && e[E];
Gn = D.call(e, "timers").setImmediate;
} catch {
Gn = function(L) {
Us === !1 && (Us = !0, typeof MessageChannel > "u" && W("This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."));
var J = new MessageChannel();
J.port1.onmessage = L, J.port2.postMessage(void 0);
};
}
return Gn(x);
}
var en = 0, Bs = !1;
function Ys(x) {
{
var E = en;
en++, b.current === null && (b.current = []);
var D = b.isBatchingLegacy, L;
try {
if (b.isBatchingLegacy = !0, L = x(), !D && b.didScheduleLegacyUpdate) {
var J = b.current;
J !== null && (b.didScheduleLegacyUpdate = !1, Yo(J));
}
} catch (Me) {
throw Un(E), Me;
} finally {
b.isBatchingLegacy = D;
}
if (L !== null && typeof L == "object" && typeof L.then == "function") {
var ie = L, re = !1, se = {
then: function(Me, Fe) {
re = !0, ie.then(function(tt) {
Un(E), en === 0 ? Uo(tt, Me, Fe) : Me(tt);
}, function(tt) {
Un(E), Fe(tt);
});
}
};
return !Bs && typeof Promise < "u" && Promise.resolve().then(function() {
}).then(function() {
re || (Bs = !0, W("You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);"));
}), se;
} else {
var pe = L;
if (Un(E), en === 0) {
var Ce = b.current;
Ce !== null && (Yo(Ce), b.current = null);
var je = {
then: function(Me, Fe) {
b.current === null ? (b.current = [], Uo(pe, Me, Fe)) : Me(pe);
}
};
return je;
} else {
var Re = {
then: function(Me, Fe) {
Me(pe);
}
};
return Re;
}
}
}
}
function Un(x) {
x !== en - 1 && W("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "), en = x;
}
function Uo(x, E, D) {
{
var L = b.current;
if (L !== null)
try {
Yo(L), um(function() {
L.length === 0 ? (b.current = null, E(x)) : Uo(x, E, D);
});
} catch (J) {
D(J);
}
else
E(x);
}
}
var Bo = !1;
function Yo(x) {
if (!Bo) {
Bo = !0;
var E = 0;
try {
for (; E < x.length; E++) {
var D = x[E];
do
D = D(!0);
while (D !== null);
}
x.length = 0;
} catch (L) {
throw x = x.slice(E + 1), L;
} finally {
Bo = !1;
}
}
}
var fm = Hs, dm = lm, pm = sm, mm = {
map: wr,
forEach: sn,
count: Dn,
toArray: nn,
only: mn
};
t.Children = mm, t.Component = A, t.Fragment = a, t.Profiler = s, t.PureComponent = j, t.StrictMode = i, t.Suspense = l, t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = H, t.act = Ys, t.cloneElement = dm, t.createContext = xo, t.createElement = fm, t.createFactory = pm, t.createRef = Q, t.forwardRef = Fn, t.isValidElement = yr, t.lazy = zo, t.memo = Rp, t.startTransition = cm, t.unstable_act = Ys, t.useCallback = Hp, t.useContext = Mp, t.useDebugValue = Bp, t.useDeferredValue = qp, t.useEffect = zp, t.useId = Kp, t.useImperativeHandle = Up, t.useInsertionEffect = Wp, t.useLayoutEffect = Vp, t.useMemo = Gp, t.useReducer = Fp, t.useRef = Lp, t.useState = Dp, t.useSyncExternalStore = Xp, t.useTransition = Yp, t.version = r, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());
}();
}(Wv, Wv.exports)), Wv.exports;
}
var zR;
function eSe() {
return zR || (zR = 1, process.env.NODE_ENV === "production" ? P$.exports = QOe() : P$.exports = ZOe()), P$.exports;
}
eSe();
function Zq() {
return typeof window < "u" && ("__TAURI_INTERNALS__" in window || "__TAURI__" in window);
}
window.IsDesktopApp = Zq;
function hn(e, t, r, n) {
if (typeof t == "function" ? e !== t || !0 : !t.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
return r === "m" ? n : r === "a" ? n.call(e) : n ? n.value : t.get(e);
}
function Dm(e, t, r, n, o) {
if (typeof t == "function" ? e !== t || !0 : !t.has(e)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
return t.set(e, r), r;
}
var Xc, $o, gf, Fy;
const WR = "__TAURI_TO_IPC_KEY__";
function tSe(e, t = !1) {
return window.__TAURI_INTERNALS__.transformCallback(e, t);
}
let rSe = class {
constructor(t) {
Xc.set(this, void 0), $o.set(this, 0), gf.set(this, []), Fy.set(this, void 0), Dm(this, Xc, t || (() => {
})), this.id = tSe((r) => {
const n = r.index;
if ("end" in r) {
n == hn(this, $o, "f") ? this.cleanupCallback() : Dm(this, Fy, n);
return;
}
const o = r.message;
if (n == hn(this, $o, "f")) {
for (hn(this, Xc, "f").call(this, o), Dm(this, $o, hn(this, $o, "f") + 1); hn(this, $o, "f") in hn(this, gf, "f"); ) {
const a = hn(this, gf, "f")[hn(this, $o, "f")];
hn(this, Xc, "f").call(this, a), delete hn(this, gf, "f")[hn(this, $o, "f")], Dm(this, $o, hn(this, $o, "f") + 1);
}
hn(this, $o, "f") === hn(this, Fy, "f") && this.cleanupCallback();
} else
hn(this, gf, "f")[n] = o;
});
}
cleanupCallback() {
window.__TAURI_INTERNALS__.unregisterCallback(this.id);
}
set onmessage(t) {
Dm(this, Xc, t);
}
get onmessage() {
return hn(this, Xc, "f");
}
[(Xc = /* @__PURE__ */ new WeakMap(), $o = /* @__PURE__ */ new WeakMap(), gf = /* @__PURE__ */ new WeakMap(), Fy = /* @__PURE__ */ new WeakMap(), WR)]() {
return `__CHANNEL__:${this.id}`;
}
toJSON() {
return this[WR]();
}
};
async function Ly(e, t = {}, r) {
return window.__TAURI_INTERNALS__.invoke(e, t, r);
}
const zy = "Request cancelled";
async function VR(e, t) {
const r = t == null ? void 0 : t.signal;
if (r != null && r.aborted)
throw new Error(zy);
const n = t == null ? void 0 : t.maxRedirections, o = t == null ? void 0 : t.connectTimeout, a = t == null ? void 0 : t.proxy, i = t == null ? void 0 : t.danger;
t && (delete t.maxRedirections, delete t.connectTimeout, delete t.proxy, delete t.danger);
const s = t != null && t.headers ? t.headers instanceof Headers ? t.headers : new Headers(t.headers) : new Headers(), u = new Request(e, t), c = await u.arrayBuffer(), d = c.byteLength !== 0 ? Array.from(new Uint8Array(c)) : null;
for (const [b, F] of u.headers)
s.get(b) || s.set(b, F);
const l = (s instanceof Headers ? Array.from(s.entries()) : Array.isArray(s) ? s : Object.entries(s)).map(([b, F]) => [
b,
// we need to ensure we have all header values as strings
// eslint-disable-next-line
typeof F == "string" ? F : F.toString()
]);
if (r != null && r.aborted)
throw new Error(zy);
const f = await Ly("plugin:http|fetch", {
clientConfig: {
method: u.method,
url: u.url,
headers: l,
data: d,
maxRedirections: n,
connectTimeout: o,
proxy: a,
danger: i
}
}), p = () => Ly("plugin:http|fetch_cancel", { rid: f });
if (r != null && r.aborted)
throw p(), new Error(zy);
r == null || r.addEventListener("abort", () => void p());
const { status: y, statusText: m, url: h, headers: w, rid: $ } = await Ly("plugin:http|fetch_send", {
rid: f
}), _ = [101, 103, 204, 205, 304].includes(y) ? null : new ReadableStream({
start: (b) => {
const F = new rSe();
F.onmessage = (z) => {
if (r != null && r.aborted) {
b.error(zy);
return;
}
const q = new Uint8Array(z), Y = q[q.byteLength - 1], B = q.slice(0, q.byteLength - 1);
if (Y == 1) {
b.close();
return;
}
b.enqueue(B);
}, Ly("plugin:http|fetch_read_body", {
rid: $,
streamChannel: F
}).catch((z) => {
b.error(z);
});
}
}), S = new Response(_, {
status: y,
statusText: m
});
return Object.defineProperty(S, "url", { value: h }), Object.defineProperty(S, "headers", {
value: new Headers(w)
}), S;
}
function B1(e, t) {
return Zq() ? t !== void 0 ? VR(e, t) : VR(e) : t !== void 0 ? fetch(e, t) : fetch(e);
}
window.FetchProxy = B1;
let nSe = class {
constructor() {
Jq(this, "ApiTargets", {}), this.ApiTargets = {
GoggleApi: dh.GOOGLE_API,
FunnelApi: dh.FUNNEL_API,
CdnApi: dh.CDN_API,
GravatarApi: dh.GRAVATAR_API
};
}
getApiSchemeAndHost() {
return JOe.getInstance().getApiSchemeAndHost();
}
async fetch(t, {
method: r,
query: n,
body: o
}) {
const a = n && Object.entries(n).reduce(
(c, [d, l]) => (l && (c[d] = l.toString()), c),
{}
), i = a ? t + "?" + new URLSearchParams(a) : t, s = JSON.stringify(o), u = await B1(i, {
method: r,
headers: {
Accept: "application/json",
"Content-Type": "application/json"
},
credentials: "include",
body: s
});
if (!u.ok)
throw new Error(`HTTP error! status: ${u.status}`);
return u.json();
}
async fetchMultipartFormData(t, {
method: r,
body: n
}) {
return (await B1(t, {
method: r,
headers: {
Accept: "application/json"
},
credentials: "include",
body: n
})).json();
}
get({
endpoint: t,
query: r
}) {
return this.fetch(t, { method: "GET", query: r });
}
post({
endpoint: t,
query: r,
body: n
}) {
return this.fetch(t, {
method: "POST",
query: r,
body: n
});
}
delete({
endpoint: t,
query: r,
body: n
}) {
return this.fetch(t, {
method: "DELETE",
query: r,
body: n
});
}
async postFormVideo({
endpoint: t,
formRecord: r,
uuid: n,
blob: o,
blobFileName: a
}) {
const i = new FormData();
return i.append("uuid_idempotency_token", n), Object.entries(r).forEach(([s, u]) => {
i.append(s, u);
}), o && a ? i.append("video", o, a) : o && i.append("video", o), this.fetchMultipartFormData(t, {
method: "POST",
body: i
});
}
async postForm({
endpoint: t,
formRecord: r,
uuid: n,
blob: o,
blobFileName: a
}) {
const i = new FormData();
return i.append("uuid_idempotency_token", n), Object.entries(r).forEach(([s, u]) => {
i.append(s, u);
}), o && a ? i.append("file", o, a) : o && i.append("file", o), this.fetchMultipartFormData(t, {
method: "POST",
body: i
});
}
camelToSnakeCase(t) {
return t.replace(/([a-z0])([A-Z])/g, "$1_$2").toLowerCase();
}
parseQueryValues(t) {
return Object.entries(t).reduce(
(r, [n, o]) => {
if (!o)
return r;
const a = this.camelToSnakeCase(n);
return Array.isArray(o) ? { ...r, [a]: o.join(",") } : { ...r, [a]: o.toString() };
},
{}
);
}
parseBodyValues(t) {
return Object.entries(t).reduce((r, [n, o]) => {
if (!o)
return r;
const a = this.camelToSnakeCase(n);
return Array.isArray(o) ? { ...r, [a]: o } : { ...r, [a]: o };
}, {});
}
};
var HR;
(function(e) {
e[e.Audio = 1] = "Audio", e[e.Cache = 2] = "Cache", e[e.Config = 3] = "Config", e[e.Data = 4] = "Data", e[e.LocalData = 5] = "LocalData", e[e.Document = 6] = "Document", e[e.Download = 7] = "Download", e[e.Picture = 8] = "Picture", e[e.Public = 9] = "Public", e[e.Video = 10] = "Video", e[e.Resource = 11] = "Resource", e[e.Temp = 12] = "Temp", e[e.AppConfig = 13] = "AppConfig", e[e.AppData = 14] = "AppData", e[e.AppLocalData = 15] = "AppLocalData", e[e.AppCache = 16] = "AppCache", e[e.AppLog = 17] = "AppLog", e[e.Desktop = 18] = "Desktop", e[e.Executable = 19] = "Executable", e[e.Font = 20] = "Font", e[e.Home = 21] = "Home", e[e.Runtime = 22] = "Runtime", e[e.Template = 23] = "Template";
})(HR || (HR = {}));
let eK = class extends nSe {
async authFetch(t, {
method: r,
body: n
}) {
const o = JSON.stringify(n);
return await (await B1(t, {
method: r,
headers: {
Accept: "application/json",
"Content-Type": "application/json"
},
credentials: "include",
body: o
})).json();
}
GetSession() {
const t = `${this.getApiSchemeAndHost()}/v1/session`;
return this.get({ endpoint: t }).then((r) => ({
success: r.success,
data: {
loggedIn: r.logged_in,
user: r.user
}
})).catch((r) => ({
success: !1,
errorMessage: r.message
}));
}
GetUserProfile(t) {
const r = `${this.getApiSchemeAndHost()}/v1/user/${t}/profile`;
return console.log("endpoint", r), this.get({ endpoint: r }).then((n) => ({
success: n.success,
data: {
user: n.user
}
})).catch((n) => ({
success: !1,
errorMessage: n.message
}));
}
async Login({
usernameOrEmail: t,
password: r
}) {
console.log("libs/api - Logging in with usernameOrEmail:", t);
const n = `${this.getApiSchemeAndHost()}/v1/login`;
console.log("libs/api - Login endpoint", n);
const o = {
username_or_email: t,
password: r
};
try {
const a = await this.authFetch(n, {
method: "POST",
body: o
});
return {
success: a.success,
data: a.success ? { signedSession: a.signed_session } : void 0,
errorMessage: a.error_message
};
} catch (a) {
return {
success: !1,
errorMessage: a.message
};
}
}
Logout() {
const t = `${this.getApiSchemeAndHost()}/v1/logout`;
return this.post({
endpoint: t
}).then((r) => ({
success: r.success
})).catch((r) => ({
success: !1,
errorMessage: r.message
}));
}
async Signup({
username: t,
email: r,
password: n,
passwordConfirmation: o,
signupSource: a
}) {
const i = `${this.getApiSchemeAndHost()}/v1/create_account`, s = {
email_address: r,
password: n,
password_confirmation: o,
username: t
};
a && (s.signup_source = a);
try {
const u = await this.authFetch(i, {
method: "POST",
body: s
});
return {
success: u.success,
data: u.success ? { signedSession: u.signed_session } : void 0,
errorMessage: u.error_message || Object.values(u.error_fields ?? {}).join(", ")
};
} catch (u) {
return {
success: !1,
errorMessage: u.message
};
}
}
};
window.UsersApi = new eK();
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function oSe(e, t, r) {
return (t = iSe(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function GR(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function xe(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? GR(Object(r), !0).forEach(function(n) {
oSe(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : GR(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function aSe(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function iSe(e) {
var t = aSe(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const UR = () => {
};
let DP = {}, tK = {}, rK = null, nK = {
mark: UR,
measure: UR
};
try {
typeof window < "u" && (DP = window), typeof document < "u" && (tK = document), typeof MutationObserver < "u" && (rK = MutationObserver), typeof performance < "u" && (nK = performance);
} catch {
}
const {
userAgent: BR = ""
} = DP.navigator || {}, wc = DP, Wr = tK, YR = rK, Wy = nK;
wc.document;
const ys = !!Wr.documentElement && !!Wr.head && typeof Wr.addEventListener == "function" && typeof Wr.createElement == "function", oK = ~BR.indexOf("MSIE") || ~BR.indexOf("Trident/");
var sSe = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, lSe = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, aK = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, cSe = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, iK = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], _n = "classic", Sx = "duotone", uSe = "sharp", fSe = "sharp-duotone", sK = [_n, Sx, uSe, fSe], dSe = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, pSe = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, mSe = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), hSe = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, gSe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], qR = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, bSe = ["kit"], ySe = {
kit: {
"fa-kit": "fak"
}
}, vSe = ["fak", "fakd"], xSe = {
kit: {
fak: "fa-kit"
}
}, KR = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, Vy = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, wSe = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], $Se = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], kSe = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, _Se = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, OSe = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, xE = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, SSe = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], wE = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...wSe, ...SSe], ESe = ["solid", "regular", "light", "thin", "duotone", "brands"], lK = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], ASe = lK.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), PSe = [...Object.keys(OSe), ...ESe, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", Vy.GROUP, Vy.SWAP_OPACITY, Vy.PRIMARY, Vy.SECONDARY].concat(lK.map((e) => "".concat(e, "x"))).concat(ASe.map((e) => "w-".concat(e))), CSe = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const Xi = "___FONT_AWESOME___", $E = 16, cK = "fa", uK = "svg-inline--fa", Wu = "data-fa-i2svg", kE = "data-fa-pseudo-element", NSe = "data-fa-pseudo-element-pending", FP = "data-prefix", LP = "data-icon", XR = "fontawesome-i2svg", TSe = "async", ISe = ["HTML", "HEAD", "STYLE", "SCRIPT"], fK = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function zb(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[_n];
}
});
}
const dK = xe({}, aK);
dK[_n] = xe(xe(xe(xe({}, {
"fa-duotone": "duotone"
}), aK[_n]), qR.kit), qR["kit-duotone"]);
const jSe = zb(dK), _E = xe({}, hSe);
_E[_n] = xe(xe(xe(xe({}, {
duotone: "fad"
}), _E[_n]), KR.kit), KR["kit-duotone"]);
const JR = zb(_E), OE = xe({}, xE);
OE[_n] = xe(xe({}, OE[_n]), xSe.kit);
const zP = zb(OE), SE = xe({}, _Se);
SE[_n] = xe(xe({}, SE[_n]), ySe.kit);
zb(SE);
const RSe = sSe, pK = "fa-layers-text", MSe = lSe, DSe = xe({}, dSe);
zb(DSe);
const FSe = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], C$ = cSe, LSe = [...bSe, ...PSe], Uh = wc.FontAwesomeConfig || {};
function zSe(e) {
var t = Wr.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function WSe(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Wr && typeof Wr.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = WSe(zSe(t));
n != null && (Uh[r] = n);
});
const mK = {
styleDefault: "solid",
familyDefault: _n,
cssPrefix: cK,
replacementClass: uK,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Uh.familyPrefix && (Uh.cssPrefix = Uh.familyPrefix);
const Vd = xe(xe({}, mK), Uh);
Vd.autoReplaceSvg || (Vd.observeMutations = !1);
const Ue = {};
Object.keys(mK).forEach((e) => {
Object.defineProperty(Ue, e, {
enumerable: !0,
set: function(t) {
Vd[e] = t, Bh.forEach((r) => r(Ue));
},
get: function() {
return Vd[e];
}
});
});
Object.defineProperty(Ue, "familyPrefix", {
enumerable: !0,
set: function(e) {
Vd.cssPrefix = e, Bh.forEach((t) => t(Ue));
},
get: function() {
return Vd.cssPrefix;
}
});
wc.FontAwesomeConfig = Ue;
const Bh = [];
function VSe(e) {
return Bh.push(e), () => {
Bh.splice(Bh.indexOf(e), 1);
};
}
const gl = $E, Ua = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function HSe(e) {
if (!e || !ys)
return;
const t = Wr.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Wr.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Wr.head.insertBefore(t, n), e;
}
const GSe = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function Vg() {
let e = 12, t = "";
for (; e-- > 0; )
t += GSe[Math.random() * 62 | 0];
return t;
}
function hp(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function WP(e) {
return e.classList ? hp(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function hK(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function USe(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(hK(e[r]), '" '), "").trim();
}
function Ex(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function VP(e) {
return e.size !== Ua.size || e.x !== Ua.x || e.y !== Ua.y || e.rotate !== Ua.rotate || e.flipX || e.flipY;
}
function BSe(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function YSe(e) {
let {
transform: t,
width: r = $E,
height: n = $E,
startCentered: o = !1
} = e, a = "";
return o && oK ? a += "translate(".concat(t.x / gl - r / 2, "em, ").concat(t.y / gl - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / gl, "em), calc(-50% + ").concat(t.y / gl, "em)) ") : a += "translate(".concat(t.x / gl, "em, ").concat(t.y / gl, "em) "), a += "scale(".concat(t.size / gl * (t.flipX ? -1 : 1), ", ").concat(t.size / gl * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var qSe = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function gK() {
const e = cK, t = uK, r = Ue.cssPrefix, n = Ue.replacementClass;
let o = qSe;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let QR = !1;
function N$() {
Ue.autoAddCss && !QR && (HSe(gK()), QR = !0);
}
var KSe = {
mixout() {
return {
dom: {
css: gK,
insertCss: N$
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
N$();
},
beforeI2svg() {
N$();
}
};
}
};
const Ji = wc || {};
Ji[Xi] || (Ji[Xi] = {});
Ji[Xi].styles || (Ji[Xi].styles = {});
Ji[Xi].hooks || (Ji[Xi].hooks = {});
Ji[Xi].shims || (Ji[Xi].shims = []);
var Ba = Ji[Xi];
const bK = [], yK = function() {
Wr.removeEventListener("DOMContentLoaded", yK), Y1 = 1, bK.map((e) => e());
};
let Y1 = !1;
ys && (Y1 = (Wr.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Wr.readyState), Y1 || Wr.addEventListener("DOMContentLoaded", yK));
function XSe(e) {
ys && (Y1 ? setTimeout(e, 0) : bK.push(e));
}
function Wb(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? hK(e) : "<".concat(t, " ").concat(USe(r), ">").concat(n.map(Wb).join(""), "</").concat(t, ">");
}
function ZR(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var T$ = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function JSe(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function vK(e) {
const t = JSe(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function QSe(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function e7(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function EE(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = e7(t);
typeof Ba.hooks.addPack == "function" && !n ? Ba.hooks.addPack(e, e7(t)) : Ba.styles[e] = xe(xe({}, Ba.styles[e] || {}), o), e === "fas" && EE("fa", t);
}
const {
styles: Hg,
shims: ZSe
} = Ba, xK = Object.keys(zP), eEe = xK.reduce((e, t) => (e[t] = Object.keys(zP[t]), e), {});
let HP = null, wK = {}, $K = {}, kK = {}, _K = {}, OK = {};
function tEe(e) {
return ~LSe.indexOf(e);
}
function rEe(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !tEe(o) ? o : null;
}
const SK = () => {
const e = (n) => T$(Hg, (o, a, i) => (o[i] = T$(a, n, {}), o), {});
wK = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), $K = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), OK = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in Hg || Ue.autoFetchSvg, r = T$(ZSe, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
kK = r.names, _K = r.unicodes, HP = Ax(Ue.styleDefault, {
family: Ue.familyDefault
});
};
VSe((e) => {
HP = Ax(e.styleDefault, {
family: Ue.familyDefault
});
});
SK();
function GP(e, t) {
return (wK[e] || {})[t];
}
function nEe(e, t) {
return ($K[e] || {})[t];
}
function uu(e, t) {
return (OK[e] || {})[t];
}
function EK(e) {
return kK[e] || {
prefix: null,
iconName: null
};
}
function oEe(e) {
const t = _K[e], r = GP("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function $c() {
return HP;
}
const AK = () => ({
prefix: null,
iconName: null,
rest: []
});
function aEe(e) {
let t = _n;
const r = xK.reduce((n, o) => (n[o] = "".concat(Ue.cssPrefix, "-").concat(o), n), {});
return sK.forEach((n) => {
(e.includes(r[n]) || e.some((o) => eEe[n].includes(o))) && (t = n);
}), t;
}
function Ax(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = _n
} = t, n = jSe[r][e];
if (r === Sx && !e)
return "fad";
const o = JR[r][e] || JR[r][n], a = e in Ba.styles ? e : null;
return o || a || null;
}
function iEe(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = rEe(Ue.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function t7(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function Px(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = wE.concat($Se), a = t7(e.filter((l) => o.includes(l))), i = t7(e.filter((l) => !wE.includes(l))), s = a.filter((l) => (n = l, !iK.includes(l))), [u = null] = s, c = aEe(a), d = xe(xe({}, iEe(i)), {}, {
prefix: Ax(u, {
family: c
})
});
return xe(xe(xe({}, d), uEe({
values: e,
family: c,
styles: Hg,
config: Ue,
canonical: d,
givenPrefix: n
})), sEe(r, n, d));
}
function sEe(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? EK(o) : {}, i = uu(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !Hg.far && Hg.fas && !Ue.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const lEe = sK.filter((e) => e !== _n || e !== Sx), cEe = Object.keys(xE).filter((e) => e !== _n).map((e) => Object.keys(xE[e])).flat();
function uEe(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === Sx, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && lEe.includes(r) && (Object.keys(a).find((l) => cEe.includes(l)) || i.autoFetchSvg)) {
const l = mSe.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = uu(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = $c() || "fas"), n;
}
let fEe = class {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = xe(xe({}, this.definitions[a] || {}), o[a]), EE(a, o[a]);
const i = zP[_n][a];
i && EE(i, o[a]), SK();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}, r7 = [], Df = {};
const gd = {}, dEe = Object.keys(gd);
function pEe(e, t) {
let {
mixoutsTo: r
} = t;
return r7 = e, Df = {}, Object.keys(gd).forEach((n) => {
dEe.indexOf(n) === -1 && delete gd[n];
}), r7.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Df[i] || (Df[i] = []), Df[i].push(a[i]);
});
}
n.provides && n.provides(gd);
}), r;
}
function AE(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Df[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function Vu(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Df[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function kc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return gd[e] ? gd[e].apply(null, t) : void 0;
}
function PE(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || $c();
if (t)
return t = uu(r, t) || t, ZR(PK.definitions, r, t) || ZR(Ba.styles, r, t);
}
const PK = new fEe(), mEe = () => {
Ue.autoReplaceSvg = !1, Ue.observeMutations = !1, Vu("noAuto");
}, hEe = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return ys ? (Vu("beforeI2svg", e), kc("pseudoElements2svg", e), kc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
Ue.autoReplaceSvg === !1 && (Ue.autoReplaceSvg = !0), Ue.observeMutations = !0, XSe(() => {
bEe({
autoReplaceSvgRoot: t
}), Vu("watch", e);
});
}
}, gEe = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: uu(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = Ax(e[0]);
return {
prefix: r,
iconName: uu(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(Ue.cssPrefix, "-")) > -1 || e.match(RSe))) {
const t = Px(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || $c(),
iconName: uu(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = $c();
return {
prefix: t,
iconName: uu(t, e) || e
};
}
}
}, uo = {
noAuto: mEe,
config: Ue,
dom: hEe,
parse: gEe,
library: PK,
findIconDefinition: PE,
toHtml: Wb
}, bEe = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Wr
} = e;
(Object.keys(Ba.styles).length > 0 || Ue.autoFetchSvg) && ys && Ue.autoReplaceSvg && uo.dom.i2svg({
node: t
});
};
function Cx(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => Wb(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!ys) return;
const r = Wr.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function yEe(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (VP(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = Ex(xe(xe({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function vEe(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(Ue.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: xe(xe({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function UP(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = vSe.includes(n), m = [Ue.replacementClass, o ? "".concat(Ue.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: xe(xe({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[Wu] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || Vg())
},
children: [s]
}), delete h.attributes.title);
const $ = xe(xe({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: xe(xe({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? kc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : kc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? vEe($) : yEe($);
}
function n7(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = xe(xe(xe({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[Wu] = "");
const c = xe({}, i.styles);
VP(o) && (c.transform = YSe({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = Ex(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function xEe(e) {
const {
content: t,
title: r,
extra: n
} = e, o = xe(xe(xe({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = Ex(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: I$
} = Ba;
function CE(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(Ue.cssPrefix, "-").concat(C$.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(Ue.cssPrefix, "-").concat(C$.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(Ue.cssPrefix, "-").concat(C$.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const wEe = {
found: !1,
width: 512,
height: 512
};
function $Ee(e, t) {
!fK && !Ue.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function NE(e, t) {
let r = t;
return t === "fa" && Ue.styleDefault !== null && (t = $c()), new Promise((n, o) => {
if (r === "fa") {
const a = EK(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && I$[t] && I$[t][e]) {
const a = I$[t][e];
return n(CE(a));
}
$Ee(e, t), n(xe(xe({}, wEe), {}, {
icon: Ue.showMissingIcons && e ? kc("missingIconAbstract") || {} : {}
}));
});
}
const o7 = () => {
}, TE = Ue.measurePerformance && Wy && Wy.mark && Wy.measure ? Wy : {
mark: o7,
measure: o7
}, ph = 'FA "6.7.2"', kEe = (e) => (TE.mark("".concat(ph, " ").concat(e, " begins")), () => CK(e)), CK = (e) => {
TE.mark("".concat(ph, " ").concat(e, " ends")), TE.measure("".concat(ph, " ").concat(e), "".concat(ph, " ").concat(e, " begins"), "".concat(ph, " ").concat(e, " ends"));
};
var BP = {
begin: kEe,
end: CK
};
const Vv = () => {
};
function a7(e) {
return typeof (e.getAttribute ? e.getAttribute(Wu) : null) == "string";
}
function _Ee(e) {
const t = e.getAttribute ? e.getAttribute(FP) : null, r = e.getAttribute ? e.getAttribute(LP) : null;
return t && r;
}
function OEe(e) {
return e && e.classList && e.classList.contains && e.classList.contains(Ue.replacementClass);
}
function SEe() {
return Ue.autoReplaceSvg === !0 ? Hv.replace : Hv[Ue.autoReplaceSvg] || Hv.replace;
}
function EEe(e) {
return Wr.createElementNS("http://www.w3.org/2000/svg", e);
}
function AEe(e) {
return Wr.createElement(e);
}
function NK(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? EEe : AEe
} = t;
if (typeof e == "string")
return Wr.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(NK(o, {
ceFn: r
}));
}), n;
}
function PEe(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const Hv = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(NK(r), t);
}), t.getAttribute(Wu) === null && Ue.keepOriginalSource) {
let r = Wr.createComment(PEe(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~WP(t).indexOf(Ue.replacementClass))
return Hv.replace(e);
const n = new RegExp("".concat(Ue.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === Ue.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => Wb(a)).join(`
`);
t.setAttribute(Wu, ""), t.innerHTML = o;
}
};
function i7(e) {
e();
}
function TK(e, t) {
const r = typeof t == "function" ? t : Vv;
if (e.length === 0)
r();
else {
let n = i7;
Ue.mutateApproach === TSe && (n = wc.requestAnimationFrame || i7), n(() => {
const o = SEe(), a = BP.begin("mutate");
e.map(o), a(), r();
});
}
}
let YP = !1;
function IK() {
YP = !0;
}
function IE() {
YP = !1;
}
let q1 = null;
function s7(e) {
if (!YR || !Ue.observeMutations)
return;
const {
treeCallback: t = Vv,
nodeCallback: r = Vv,
pseudoElementsCallback: n = Vv,
observeMutationsRoot: o = Wr
} = e;
q1 = new YR((a) => {
if (YP) return;
const i = $c();
hp(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !a7(s.addedNodes[0]) && (Ue.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && Ue.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && a7(s.target) && ~FSe.indexOf(s.attributeName))
if (s.attributeName === "class" && _Ee(s.target)) {
const {
prefix: u,
iconName: c
} = Px(WP(s.target));
s.target.setAttribute(FP, u || i), c && s.target.setAttribute(LP, c);
} else OEe(s.target) && r(s.target);
});
}), ys && q1.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function CEe() {
q1 && q1.disconnect();
}
function NEe(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function TEe(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = Px(WP(e));
return o.prefix || (o.prefix = $c()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = nEe(o.prefix, e.innerText) || GP(o.prefix, vK(e.innerText))), !o.iconName && Ue.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function IEe(e) {
const t = hp(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return Ue.autoA11y && (r ? t["aria-labelledby"] = "".concat(Ue.replacementClass, "-title-").concat(n || Vg()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function jEe() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: Ua,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function l7(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = TEe(e), a = IEe(e), i = AE("parseNodeAttributes", {}, e);
let s = t.styleParser ? NEe(e) : [];
return xe({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: Ua,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: REe
} = Ba;
function jK(e) {
const t = Ue.autoReplaceSvg === "nest" ? l7(e, {
styleParser: !1
}) : l7(e);
return ~t.extra.classes.indexOf(pK) ? kc("generateLayersText", e, t) : kc("generateSvgReplacementMutation", e, t);
}
function MEe() {
return [...gSe, ...wE];
}
function c7(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!ys) return Promise.resolve();
const r = Wr.documentElement.classList, n = (d) => r.add("".concat(XR, "-").concat(d)), o = (d) => r.remove("".concat(XR, "-").concat(d)), a = Ue.autoFetchSvg ? MEe() : iK.concat(Object.keys(REe));
a.includes("fa") || a.push("fa");
const i = [".".concat(pK, ":not([").concat(Wu, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(Wu, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = hp(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = BP.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = jK(l);
f && d.push(f);
} catch (f) {
fK || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
TK(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function DEe(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
jK(e).then((r) => {
r && TK([r], t);
});
}
function FEe(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : PE(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : PE(o || {})), e(n, xe(xe({}, r), {}, {
mask: o
}));
};
}
const LEe = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ua,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return Cx(xe({
type: "icon"
}, e), () => (Vu("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), Ue.autoA11y && (i ? c["aria-labelledby"] = "".concat(Ue.replacementClass, "-title-").concat(s || Vg()) : (c["aria-hidden"] = "true", c.focusable = "false")), UP({
icons: {
main: CE(p),
mask: o ? CE(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: xe(xe({}, Ua), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var zEe = {
mixout() {
return {
icon: FEe(LEe)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = c7, e.nodeCallback = DEe, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Wr,
callback: n = () => {
}
} = t;
return c7(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([NE(n, i), c.iconName ? NE(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, UP({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = Ex(i);
s.length > 0 && (n.style = s);
let u;
return VP(a) && (u = kc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, WEe = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return Cx({
type: "layer"
}, () => {
Vu("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(Ue.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, VEe = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return Cx({
type: "counter",
content: e
}, () => (Vu("beforeDOMElementCreation", {
content: e,
params: t
}), xEe({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(Ue.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, HEe = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ua,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return Cx({
type: "text",
content: e
}, () => (Vu("beforeDOMElementCreation", {
content: e,
params: t
}), n7({
content: e,
transform: xe(xe({}, Ua), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(Ue.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (oK) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return Ue.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, n7({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const GEe = new RegExp('"', "ug"), u7 = [1105920, 1112319], f7 = xe(xe(xe(xe({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), pSe), CSe), kSe), jE = Object.keys(f7).reduce((e, t) => (e[t.toLowerCase()] = f7[t], e), {}), UEe = Object.keys(jE).reduce((e, t) => {
const r = jE[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function BEe(e) {
const t = e.replace(GEe, ""), r = QSe(t, 0), n = r >= u7[0] && r <= u7[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: vK(o ? t[0] : t),
isSecondary: n || o
};
}
function YEe(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (jE[r] || {})[o] || UEe[r];
}
function d7(e, t) {
const r = "".concat(NSe).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = hp(e.children).filter((l) => l.getAttribute(kE) === t)[0], i = wc.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(MSe), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = YEe(s, c);
const {
value: p,
isSecondary: y
} = BEe(l), m = u[0].startsWith("FontAwesome");
let h = GP(f, p), w = h;
if (m) {
const $ = oEe(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(FP) !== f || a.getAttribute(LP) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = jEe(), {
extra: _
} = $;
_.attributes[kE] = t, NE(h, f).then((S) => {
const b = UP(xe(xe({}, $), {}, {
icons: {
main: S,
mask: AK()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = Wr.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => Wb(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function qEe(e) {
return Promise.all([d7(e, "::before"), d7(e, "::after")]);
}
function KEe(e) {
return e.parentNode !== document.head && !~ISe.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(kE) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function p7(e) {
if (ys)
return new Promise((t, r) => {
const n = hp(e.querySelectorAll("*")).filter(KEe).map(qEe), o = BP.begin("searchPseudoElements");
IK(), Promise.all(n).then(() => {
o(), IE(), t();
}).catch(() => {
o(), IE(), r();
});
});
}
var XEe = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = p7, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Wr
} = t;
Ue.searchPseudoElements && p7(r);
};
}
};
let m7 = !1;
var JEe = {
mixout() {
return {
dom: {
unwatch() {
IK(), m7 = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
s7(AE("mutationObserverCallbacks", {}));
},
noAuto() {
CEe();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
m7 ? IE() : s7(AE("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const h7 = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var QEe = {
mixout() {
return {
parse: {
transform: (e) => h7(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = h7(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: xe({}, f.outer),
children: [{
tag: "g",
attributes: xe({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: xe(xe({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const j$ = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function g7(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function ZEe(e) {
return e.tag === "g" ? e.children : [e];
}
var eAe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? Px(r.split(" ").map((o) => o.trim())) : AK();
return n.prefix || (n.prefix = $c()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = BSe({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: xe(xe({}, j$), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(g7)
} : {}, m = {
tag: "g",
attributes: xe({}, f.inner),
children: [g7(xe({
tag: c.tag,
attributes: xe(xe({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: xe({}, f.outer),
children: [m]
}, w = "mask-".concat(i || Vg()), $ = "clip-".concat(i || Vg()), _ = {
tag: "mask",
attributes: xe(xe({}, j$), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: ZEe(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: xe({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, j$)
}), {
children: r,
attributes: n
};
};
}
}, tAe = {
provides(e) {
let t = !1;
wc.matchMedia && (t = wc.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: xe(xe({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = xe(xe({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: xe(xe({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: xe(xe({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: xe(xe({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: xe(xe({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: xe(xe({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: xe(xe({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: xe(xe({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, rAe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, nAe = [KSe, zEe, WEe, VEe, HEe, XEe, JEe, QEe, eAe, tAe, rAe];
pEe(nAe, {
mixoutsTo: uo
});
uo.noAuto;
uo.config;
uo.library;
uo.dom;
const RE = uo.parse;
uo.findIconDefinition;
uo.toHtml;
const oAe = uo.icon;
uo.layer;
uo.text;
uo.counter;
function aAe(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var Hy = { exports: {} }, R$ = { exports: {} }, Qt = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var b7;
function iAe() {
if (b7) return Qt;
b7 = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return Qt.AsyncMode = u, Qt.ConcurrentMode = c, Qt.ContextConsumer = s, Qt.ContextProvider = i, Qt.Element = t, Qt.ForwardRef = d, Qt.Fragment = n, Qt.Lazy = y, Qt.Memo = p, Qt.Portal = r, Qt.Profiler = a, Qt.StrictMode = o, Qt.Suspense = l, Qt.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, Qt.isConcurrentMode = S, Qt.isContextConsumer = function(b) {
return _(b) === s;
}, Qt.isContextProvider = function(b) {
return _(b) === i;
}, Qt.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, Qt.isForwardRef = function(b) {
return _(b) === d;
}, Qt.isFragment = function(b) {
return _(b) === n;
}, Qt.isLazy = function(b) {
return _(b) === y;
}, Qt.isMemo = function(b) {
return _(b) === p;
}, Qt.isPortal = function(b) {
return _(b) === r;
}, Qt.isProfiler = function(b) {
return _(b) === a;
}, Qt.isStrictMode = function(b) {
return _(b) === o;
}, Qt.isSuspense = function(b) {
return _(b) === l;
}, Qt.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, Qt.typeOf = _, Qt;
}
var ur = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var y7;
function sAe() {
return y7 || (y7 = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
ur.AsyncMode = b, ur.ConcurrentMode = F, ur.ContextConsumer = z, ur.ContextProvider = q, ur.Element = Y, ur.ForwardRef = B, ur.Fragment = Z, ur.Lazy = M, ur.Memo = te, ur.Portal = G, ur.Profiler = H, ur.StrictMode = U, ur.Suspense = W, ur.isAsyncMode = ee, ur.isConcurrentMode = v, ur.isContextConsumer = g, ur.isContextProvider = O, ur.isElement = P, ur.isForwardRef = A, ur.isFragment = T, ur.isLazy = N, ur.isMemo = C, ur.isPortal = I, ur.isProfiler = j, ur.isStrictMode = R, ur.isSuspense = Q, ur.isValidElementType = _, ur.typeOf = S;
}()), ur;
}
var v7;
function RK() {
return v7 || (v7 = 1, process.env.NODE_ENV === "production" ? R$.exports = iAe() : R$.exports = sAe()), R$.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var M$, x7;
function lAe() {
if (x7) return M$;
x7 = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return M$ = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, M$;
}
var D$, w7;
function qP() {
if (w7) return D$;
w7 = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return D$ = e, D$;
}
var $7, k7;
function MK() {
return k7 || (k7 = 1, $7 = Function.call.bind(Object.prototype.hasOwnProperty)), $7;
}
var F$, _7;
function cAe() {
if (_7) return F$;
_7 = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ qP(), r = {}, n = /* @__PURE__ */ MK();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, F$ = o, F$;
}
var L$, O7;
function uAe() {
if (O7) return L$;
O7 = 1;
var e = RK(), t = lAe(), r = /* @__PURE__ */ qP(), n = /* @__PURE__ */ MK(), o = /* @__PURE__ */ cAe(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return L$ = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, L$;
}
var z$, S7;
function fAe() {
if (S7) return z$;
S7 = 1;
var e = /* @__PURE__ */ qP();
function t() {
}
function r() {
}
return r.resetWarningCache = t, z$ = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, z$;
}
var E7;
function dAe() {
if (E7) return Hy.exports;
if (E7 = 1, process.env.NODE_ENV !== "production") {
var e = RK(), t = !0;
Hy.exports = /* @__PURE__ */ uAe()(e.isElement, t);
} else
Hy.exports = /* @__PURE__ */ fAe()();
return Hy.exports;
}
var pAe = /* @__PURE__ */ dAe();
const Tt = /* @__PURE__ */ aAe(pAe);
function A7(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function _a(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? A7(Object(r), !0).forEach(function(n) {
Ff(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : A7(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function K1(e) {
"@babel/helpers - typeof";
return K1 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, K1(e);
}
function Ff(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function mAe(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function hAe(e, t) {
if (e == null) return {};
var r = mAe(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function ME(e) {
return gAe(e) || bAe(e) || yAe(e) || vAe();
}
function gAe(e) {
if (Array.isArray(e)) return DE(e);
}
function bAe(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function yAe(e, t) {
if (e) {
if (typeof e == "string") return DE(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return DE(e, t);
}
}
function DE(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function vAe() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function xAe(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, Ff(t, "fa-".concat(w), typeof w < "u" && w !== null), Ff(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), Ff(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), Ff(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function wAe(e) {
return e = e - 0, e === e;
}
function DK(e) {
return wAe(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var $Ae = ["style"];
function kAe(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function _Ae(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = DK(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[kAe(o)] = a : t[o] = a, t;
}, {});
}
function FK(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return FK(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = _Ae(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[DK(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = hAe(r, $Ae);
return o.attrs.style = _a(_a({}, o.attrs.style), i), e.apply(void 0, [t.tag, _a(_a({}, o.attrs), s)].concat(ME(n)));
}
var LK = !1;
try {
LK = process.env.NODE_ENV === "production";
} catch {
}
function OAe() {
if (!LK && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function P7(e) {
if (e && K1(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (RE.icon)
return RE.icon(e);
if (e === null)
return null;
if (e && K1(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function W$(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Ff({}, e, t) : {};
}
var C7 = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, zK = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = _a(_a({}, C7), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = P7(n), l = W$("classes", [].concat(ME(xAe(r)), ME((i || "").split(" ")))), f = W$("transform", typeof r.transform == "string" ? RE.transform(r.transform) : r.transform), p = W$("mask", P7(o)), y = oAe(d, _a(_a(_a(_a({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return OAe("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
C7.hasOwnProperty(w) || (h[w] = r[w]);
}), SAe(m[0], h);
});
zK.displayName = "FontAwesomeIcon";
zK.propTypes = {
beat: Tt.bool,
border: Tt.bool,
beatFade: Tt.bool,
bounce: Tt.bool,
className: Tt.string,
fade: Tt.bool,
flash: Tt.bool,
mask: Tt.oneOfType([Tt.object, Tt.array, Tt.string]),
maskId: Tt.string,
fixedWidth: Tt.bool,
inverse: Tt.bool,
flip: Tt.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: Tt.oneOfType([Tt.object, Tt.array, Tt.string]),
listItem: Tt.bool,
pull: Tt.oneOf(["right", "left"]),
pulse: Tt.bool,
rotation: Tt.oneOf([0, 90, 180, 270]),
shake: Tt.bool,
size: Tt.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: Tt.bool,
spinPulse: Tt.bool,
spinReverse: Tt.bool,
symbol: Tt.oneOfType([Tt.bool, Tt.string]),
title: Tt.string,
titleId: Tt.string,
transform: Tt.oneOfType([Tt.string, Tt.object]),
swapOpacity: Tt.bool
};
var SAe = FK.bind(null, ae.createElement), Gv = /* @__PURE__ */ ((e) => (e[e.ALL = 0] = "ALL", e[e.FEATURED = 1] = "FEATURED", e[e.MINE = 2] = "MINE", e[e.BOOKMARKED = 3] = "BOOKMARKED", e))(Gv || {});
Gv.FEATURED, Gv.MINE, Gv.BOOKMARKED;
var EAe = Object.defineProperty, AAe = (e, t, r) => t in e ? EAe(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, V$ = (e, t, r) => (AAe(e, typeof t != "symbol" ? t + "" : t, r), r);
let PAe = class {
constructor() {
V$(this, "current", this.detect()), V$(this, "handoffState", "pending"), V$(this, "currentId", 0);
}
set(t) {
this.current !== t && (this.handoffState = "pending", this.currentId = 0, this.current = t);
}
reset() {
this.set(this.detect());
}
nextId() {
return ++this.currentId;
}
get isServer() {
return this.current === "server";
}
get isClient() {
return this.current === "client";
}
detect() {
return typeof window > "u" || typeof document > "u" ? "server" : "client";
}
handoff() {
this.handoffState === "pending" && (this.handoffState = "complete");
}
get isHandoffComplete() {
return this.handoffState === "complete";
}
}, Uv = new PAe();
function CAe(e) {
typeof queueMicrotask == "function" ? queueMicrotask(e) : Promise.resolve().then(e).catch((t) => setTimeout(() => {
throw t;
}));
}
function Nx() {
let e = [], t = { addEventListener(r, n, o, a) {
return r.addEventListener(n, o, a), t.add(() => r.removeEventListener(n, o, a));
}, requestAnimationFrame(...r) {
let n = requestAnimationFrame(...r);
return t.add(() => cancelAnimationFrame(n));
}, nextFrame(...r) {
return t.requestAnimationFrame(() => t.requestAnimationFrame(...r));
}, setTimeout(...r) {
let n = setTimeout(...r);
return t.add(() => clearTimeout(n));
}, microTask(...r) {
let n = { current: !0 };
return CAe(() => {
n.current && r[0]();
}), t.add(() => {
n.current = !1;
});
}, style(r, n, o) {
let a = r.style.getPropertyValue(n);
return Object.assign(r.style, { [n]: o }), this.add(() => {
Object.assign(r.style, { [n]: a });
});
}, group(r) {
let n = Nx();
return r(n), this.add(() => n.dispose());
}, add(r) {
return e.includes(r) || e.push(r), () => {
let n = e.indexOf(r);
if (n >= 0) for (let o of e.splice(n, 1)) o();
};
}, dispose() {
for (let r of e.splice(0)) r();
} };
return t;
}
function WK() {
let [e] = de(Nx);
return ue(() => () => e.dispose(), [e]), e;
}
let ec = (e, t) => {
Uv.isServer ? ue(e, t) : pi(e, t);
};
function VK(e) {
let t = ne(e);
return ec(() => {
t.current = e;
}, [e]), t;
}
let Mi = function(e) {
let t = VK(e);
return ae.useCallback((...r) => t.current(...r), [t]);
};
function FE(...e) {
return Array.from(new Set(e.flatMap((t) => typeof t == "string" ? t.split(" ") : []))).filter(Boolean).join(" ");
}
function Tx(e, t, ...r) {
if (e in t) {
let o = t[e];
return typeof o == "function" ? o(...r) : o;
}
let n = new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map((o) => `"${o}"`).join(", ")}.`);
throw Error.captureStackTrace && Error.captureStackTrace(n, Tx), n;
}
var HK = ((e) => (e[e.None = 0] = "None", e[e.RenderStrategy = 1] = "RenderStrategy", e[e.Static = 2] = "Static", e))(HK || {}), Yl = ((e) => (e[e.Unmount = 0] = "Unmount", e[e.Hidden = 1] = "Hidden", e))(Yl || {});
function GK() {
let e = TAe();
return Ne((t) => NAe({ mergeRefs: e, ...t }), [e]);
}
function NAe({ ourProps: e, theirProps: t, slot: r, defaultTag: n, features: o, visible: a = !0, name: i, mergeRefs: s }) {
s = s ?? IAe;
let u = UK(t, e);
if (a) return Gy(u, r, n, i, s);
let c = o ?? 0;
if (c & 2) {
let { static: d = !1, ...l } = u;
if (d) return Gy(l, r, n, i, s);
}
if (c & 1) {
let { unmount: d = !0, ...l } = u;
return Tx(d ? 0 : 1, { 0() {
return null;
}, 1() {
return Gy({ ...l, hidden: !0, style: { display: "none" } }, r, n, i, s);
} });
}
return Gy(u, r, n, i, s);
}
function Gy(e, t = {}, r, n, o) {
let { as: a = r, children: i, refName: s = "ref", ...u } = H$(e, ["unmount", "static"]), c = e.ref !== void 0 ? { [s]: e.ref } : {}, d = typeof i == "function" ? i(t) : i;
"className" in u && u.className && typeof u.className == "function" && (u.className = u.className(t)), u["aria-labelledby"] && u["aria-labelledby"] === u.id && (u["aria-labelledby"] = void 0);
let l = {};
if (t) {
let f = !1, p = [];
for (let [y, m] of Object.entries(t)) typeof m == "boolean" && (f = !0), m === !0 && p.push(y.replace(/([A-Z])/g, (h) => `-${h.toLowerCase()}`));
if (f) {
l["data-headlessui-state"] = p.join(" ");
for (let y of p) l[`data-${y}`] = "";
}
}
if (a === Ut && (Object.keys(Zc(u)).length > 0 || Object.keys(Zc(l)).length > 0)) if (!Fi(d) || Array.isArray(d) && d.length > 1) {
if (Object.keys(Zc(u)).length > 0) throw new Error(['Passing props on "Fragment"!', "", `The current component <${n} /> is rendering a "Fragment".`, "However we need to passthrough the following props:", Object.keys(Zc(u)).concat(Object.keys(Zc(l))).map((f) => ` - ${f}`).join(`
`), "", "You can apply a few solutions:", ['Add an `as="..."` prop, to ensure that we render an actual element instead of a "Fragment".', "Render a single element as the child so that we can forward the props onto that element."].map((f) => ` - ${f}`).join(`
`)].join(`
`));
} else {
let f = d.props, p = f == null ? void 0 : f.className, y = typeof p == "function" ? (...w) => FE(p(...w), u.className) : FE(p, u.className), m = y ? { className: y } : {}, h = UK(d.props, Zc(H$(u, ["ref"])));
for (let w in l) w in h && delete l[w];
return Li(d, Object.assign({}, h, l, c, { ref: o(jAe(d), c.ref) }, m));
}
return vb(a, Object.assign({}, H$(u, ["ref"]), a !== Ut && c, a !== Ut && l), d);
}
function TAe() {
let e = ne([]), t = Ne((r) => {
for (let n of e.current) n != null && (typeof n == "function" ? n(r) : n.current = r);
}, []);
return (...r) => {
if (!r.every((n) => n == null)) return e.current = r, t;
};
}
function IAe(...e) {
return e.every((t) => t == null) ? void 0 : (t) => {
for (let r of e) r != null && (typeof r == "function" ? r(t) : r.current = t);
};
}
function UK(...e) {
if (e.length === 0) return {};
if (e.length === 1) return e[0];
let t = {}, r = {};
for (let n of e) for (let o in n) o.startsWith("on") && typeof n[o] == "function" ? (r[o] != null || (r[o] = []), r[o].push(n[o])) : t[o] = n[o];
if (t.disabled || t["aria-disabled"]) for (let n in r) /^(on(?:Click|Pointer|Mouse|Key)(?:Down|Up|Press)?)$/.test(n) && (r[n] = [(o) => {
var a;
return (a = o == null ? void 0 : o.preventDefault) == null ? void 0 : a.call(o);
}]);
for (let n in r) Object.assign(t, { [n](o, ...a) {
let i = r[n];
for (let s of i) {
if ((o instanceof Event || (o == null ? void 0 : o.nativeEvent) instanceof Event) && o.defaultPrevented) return;
s(o, ...a);
}
} });
return t;
}
function KP(e) {
var t;
return Object.assign(sf(e), { displayName: (t = e.displayName) != null ? t : e.name });
}
function Zc(e) {
let t = Object.assign({}, e);
for (let r in t) t[r] === void 0 && delete t[r];
return t;
}
function H$(e, t = []) {
let r = Object.assign({}, e);
for (let n of t) n in r && delete r[n];
return r;
}
function jAe(e) {
return ae.version.split(".")[0] >= "19" ? e.props.ref : e.ref;
}
let RAe = Symbol();
function BK(...e) {
let t = ne(e);
ue(() => {
t.current = e;
}, [e]);
let r = Mi((n) => {
for (let o of t.current) o != null && (typeof o == "function" ? o(n) : o.current = n);
});
return e.every((n) => n == null || (n == null ? void 0 : n[RAe])) ? void 0 : r;
}
function MAe(e = 0) {
let [t, r] = de(e), n = Ne((u) => r(u), [t]), o = Ne((u) => r((c) => c | u), [t]), a = Ne((u) => (t & u) === u, [t]), i = Ne((u) => r((c) => c & ~u), [r]), s = Ne((u) => r((c) => c ^ u), [r]);
return { flags: t, setFlag: n, addFlag: o, hasFlag: a, removeFlag: i, toggleFlag: s };
}
var N7, T7;
typeof process < "u" && typeof globalThis < "u" && typeof Element < "u" && ((N7 = process == null ? void 0 : process.env) == null ? void 0 : N7.NODE_ENV) === "test" && typeof ((T7 = Element == null ? void 0 : Element.prototype) == null ? void 0 : T7.getAnimations) > "u" && (Element.prototype.getAnimations = function() {
return console.warn(["Headless UI has polyfilled `Element.prototype.getAnimations` for your tests.", "Please install a proper polyfill e.g. `jsdom-testing-mocks`, to silence these warnings.", "", "Example usage:", "```js", "import { mockAnimationsApi } from 'jsdom-testing-mocks'", "mockAnimationsApi()", "```"].join(`
`)), [];
});
var DAe = ((e) => (e[e.None = 0] = "None", e[e.Closed = 1] = "Closed", e[e.Enter = 2] = "Enter", e[e.Leave = 4] = "Leave", e))(DAe || {});
function FAe(e) {
let t = {};
for (let r in e) e[r] === !0 && (t[`data-${r}`] = "");
return t;
}
function LAe(e, t, r, n) {
let [o, a] = de(r), { hasFlag: i, addFlag: s, removeFlag: u } = MAe(e && o ? 3 : 0), c = ne(!1), d = ne(!1), l = WK();
return ec(() => {
var f;
if (e) {
if (r && a(!0), !t) {
r && s(3);
return;
}
return (f = n == null ? void 0 : n.start) == null || f.call(n, r), zAe(t, { inFlight: c, prepare() {
d.current ? d.current = !1 : d.current = c.current, c.current = !0, !d.current && (r ? (s(3), u(4)) : (s(4), u(2)));
}, run() {
d.current ? r ? (u(3), s(4)) : (u(4), s(3)) : r ? u(1) : s(1);
}, done() {
var p;
d.current && typeof t.getAnimations == "function" && t.getAnimations().length > 0 || (c.current = !1, u(7), r || a(!1), (p = n == null ? void 0 : n.end) == null || p.call(n, r));
} });
}
}, [e, r, t, l]), e ? [o, { closed: i(1), enter: i(2), leave: i(4), transition: i(2) || i(4) }] : [r, { closed: void 0, enter: void 0, leave: void 0, transition: void 0 }];
}
function zAe(e, { prepare: t, run: r, done: n, inFlight: o }) {
let a = Nx();
return VAe(e, { prepare: t, inFlight: o }), a.nextFrame(() => {
r(), a.requestAnimationFrame(() => {
a.add(WAe(e, n));
});
}), a.dispose;
}
function WAe(e, t) {
var r, n;
let o = Nx();
if (!e) return o.dispose;
let a = !1;
o.add(() => {
a = !0;
});
let i = (n = (r = e.getAnimations) == null ? void 0 : r.call(e).filter((s) => s instanceof CSSTransition)) != null ? n : [];
return i.length === 0 ? (t(), o.dispose) : (Promise.allSettled(i.map((s) => s.finished)).then(() => {
a || t();
}), o.dispose);
}
function VAe(e, { inFlight: t, prepare: r }) {
if (t != null && t.current) {
r();
return;
}
let n = e.style.transition;
e.style.transition = "none", r(), e.offsetHeight, e.style.transition = n;
}
let XP = zt(null);
XP.displayName = "OpenClosedContext";
var fu = ((e) => (e[e.Open = 1] = "Open", e[e.Closed = 2] = "Closed", e[e.Closing = 4] = "Closing", e[e.Opening = 8] = "Opening", e))(fu || {});
function YK() {
return nt(XP);
}
function HAe({ value: e, children: t }) {
return ae.createElement(XP.Provider, { value: e }, t);
}
function GAe(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
function UAe() {
let e = typeof document > "u";
return "useSyncExternalStore" in V ? ((t) => t.useSyncExternalStore)(V)(() => () => {
}, () => !1, () => !e) : !1;
}
function qK() {
let e = UAe(), [t, r] = V.useState(Uv.isHandoffComplete);
return t && Uv.isHandoffComplete === !1 && r(!1), V.useEffect(() => {
t !== !0 && r(!0);
}, [t]), V.useEffect(() => Uv.handoff(), []), e ? !1 : t;
}
function BAe() {
let e = ne(!1);
return ec(() => (e.current = !0, () => {
e.current = !1;
}), []), e;
}
function KK(e) {
var t;
return !!(e.enter || e.enterFrom || e.enterTo || e.leave || e.leaveFrom || e.leaveTo) || ((t = e.as) != null ? t : JK) !== Ut || ae.Children.count(e.children) === 1;
}
let Ix = zt(null);
Ix.displayName = "TransitionContext";
var YAe = ((e) => (e.Visible = "visible", e.Hidden = "hidden", e))(YAe || {});
function qAe() {
let e = nt(Ix);
if (e === null) throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");
return e;
}
function KAe() {
let e = nt(jx);
if (e === null) throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");
return e;
}
let jx = zt(null);
jx.displayName = "NestingContext";
function Rx(e) {
return "children" in e ? Rx(e.children) : e.current.filter(({ el: t }) => t.current !== null).filter(({ state: t }) => t === "visible").length > 0;
}
function XK(e, t) {
let r = VK(e), n = ne([]), o = BAe(), a = WK(), i = Mi((p, y = Yl.Hidden) => {
let m = n.current.findIndex(({ el: h }) => h === p);
m !== -1 && (Tx(y, { [Yl.Unmount]() {
n.current.splice(m, 1);
}, [Yl.Hidden]() {
n.current[m].state = "hidden";
} }), a.microTask(() => {
var h;
!Rx(n) && o.current && ((h = r.current) == null || h.call(r));
}));
}), s = Mi((p) => {
let y = n.current.find(({ el: m }) => m === p);
return y ? y.state !== "visible" && (y.state = "visible") : n.current.push({ el: p, state: "visible" }), () => i(p, Yl.Unmount);
}), u = ne([]), c = ne(Promise.resolve()), d = ne({ enter: [], leave: [] }), l = Mi((p, y, m) => {
u.current.splice(0), t && (t.chains.current[y] = t.chains.current[y].filter(([h]) => h !== p)), t == null || t.chains.current[y].push([p, new Promise((h) => {
u.current.push(h);
})]), t == null || t.chains.current[y].push([p, new Promise((h) => {
Promise.all(d.current[y].map(([w, $]) => $)).then(() => h());
})]), y === "enter" ? c.current = c.current.then(() => t == null ? void 0 : t.wait.current).then(() => m(y)) : m(y);
}), f = Mi((p, y, m) => {
Promise.all(d.current[y].splice(0).map(([h, w]) => w)).then(() => {
var h;
(h = u.current.shift()) == null || h();
}).then(() => m(y));
});
return Ie(() => ({ children: n, register: s, unregister: i, onStart: l, onStop: f, wait: c, chains: d }), [s, i, n, l, f, d, c]);
}
let JK = Ut, QK = HK.RenderStrategy;
function XAe(e, t) {
var r, n;
let { transition: o = !0, beforeEnter: a, afterEnter: i, beforeLeave: s, afterLeave: u, enter: c, enterFrom: d, enterTo: l, entered: f, leave: p, leaveFrom: y, leaveTo: m, ...h } = e, [w, $] = de(null), _ = ne(null), S = KK(e), b = BK(...S ? [_, t, $] : t === null ? [] : [t]), F = (r = h.unmount) == null || r ? Yl.Unmount : Yl.Hidden, { show: z, appear: q, initial: Y } = qAe(), [B, Z] = de(z ? "visible" : "hidden"), M = KAe(), { register: te, unregister: G } = M;
ec(() => te(_), [te, _]), ec(() => {
if (F === Yl.Hidden && _.current) {
if (z && B !== "visible") {
Z("visible");
return;
}
return Tx(B, { hidden: () => G(_), visible: () => te(_) });
}
}, [B, _, te, G, z, F]);
let H = qK();
ec(() => {
if (S && H && B === "visible" && _.current === null) throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?");
}, [_, B, H, S]);
let U = Y && !q, W = q && z && Y, X = ne(!1), ee = XK(() => {
X.current || (Z("hidden"), G(_));
}, M), v = Mi((C) => {
X.current = !0;
let I = C ? "enter" : "leave";
ee.onStart(_, I, (j) => {
j === "enter" ? a == null || a() : j === "leave" && (s == null || s());
});
}), g = Mi((C) => {
let I = C ? "enter" : "leave";
X.current = !1, ee.onStop(_, I, (j) => {
j === "enter" ? i == null || i() : j === "leave" && (u == null || u());
}), I === "leave" && !Rx(ee) && (Z("hidden"), G(_));
});
ue(() => {
S && o || (v(z), g(z));
}, [z, S, o]);
let O = !(!o || !S || !H || U), [, P] = LAe(O, w, z, { start: v, end: g }), A = Zc({ ref: b, className: ((n = FE(h.className, W && c, W && d, P.enter && c, P.enter && P.closed && d, P.enter && !P.closed && l, P.leave && p, P.leave && !P.closed && y, P.leave && P.closed && m, !P.transition && z && f)) == null ? void 0 : n.trim()) || void 0, ...FAe(P) }), T = 0;
B === "visible" && (T |= fu.Open), B === "hidden" && (T |= fu.Closed), z && B === "hidden" && (T |= fu.Opening), !z && B === "visible" && (T |= fu.Closing);
let N = GK();
return ae.createElement(jx.Provider, { value: ee }, ae.createElement(HAe, { value: T }, N({ ourProps: A, theirProps: h, defaultTag: JK, features: QK, visible: B === "visible", name: "Transition.Child" })));
}
function JAe(e, t) {
let { show: r, appear: n = !1, unmount: o = !0, ...a } = e, i = ne(null), s = KK(e), u = BK(...s ? [i, t] : t === null ? [] : [t]);
qK();
let c = YK();
if (r === void 0 && c !== null && (r = (c & fu.Open) === fu.Open), r === void 0) throw new Error("A <Transition /> is used but it is missing a `show={true | false}` prop.");
let [d, l] = de(r ? "visible" : "hidden"), f = XK(() => {
r || l("hidden");
}), [p, y] = de(!0), m = ne([r]);
ec(() => {
p !== !1 && m.current[m.current.length - 1] !== r && (m.current.push(r), y(!1));
}, [m, r]);
let h = Ie(() => ({ show: r, appear: n, initial: p }), [r, n, p]);
ec(() => {
r ? l("visible") : !Rx(f) && i.current !== null && l("hidden");
}, [r, f]);
let w = { unmount: o }, $ = Mi(() => {
var b;
p && y(!1), (b = e.beforeEnter) == null || b.call(e);
}), _ = Mi(() => {
var b;
p && y(!1), (b = e.beforeLeave) == null || b.call(e);
}), S = GK();
return ae.createElement(jx.Provider, { value: f }, ae.createElement(Ix.Provider, { value: h }, S({ ourProps: { ...w, as: Ut, children: ae.createElement(ZK, { ref: u, ...w, ...a, beforeEnter: $, beforeLeave: _ }) }, theirProps: {}, defaultTag: Ut, features: QK, visible: d === "visible", name: "Transition" })));
}
function QAe(e, t) {
let r = nt(Ix) !== null, n = YK() !== null;
return ae.createElement(ae.Fragment, null, !r && n ? ae.createElement(LE, { ref: t, ...e }) : ae.createElement(ZK, { ref: t, ...e }));
}
let LE = KP(JAe), ZK = KP(XAe), ZAe = KP(QAe);
Object.assign(LE, { Child: ZAe, Root: LE });
var I7;
(function(e) {
e.WINDOW_RESIZED = "tauri://resize", e.WINDOW_MOVED = "tauri://move", e.WINDOW_CLOSE_REQUESTED = "tauri://close-requested", e.WINDOW_DESTROYED = "tauri://destroyed", e.WINDOW_FOCUS = "tauri://focus", e.WINDOW_BLUR = "tauri://blur", e.WINDOW_SCALE_FACTOR_CHANGED = "tauri://scale-change", e.WINDOW_THEME_CHANGED = "tauri://theme-changed", e.WINDOW_CREATED = "tauri://window-created", e.WEBVIEW_CREATED = "tauri://webview-created", e.DRAG_ENTER = "tauri://drag-enter", e.DRAG_OVER = "tauri://drag-over", e.DRAG_DROP = "tauri://drag-drop", e.DRAG_LEAVE = "tauri://drag-leave";
})(I7 || (I7 = {}));
const JP = "-", e5e = (e) => {
const t = r5e(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(JP);
return a[0] === "" && a.length !== 1 && a.shift(), eX(a, t) || t5e(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, eX = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? eX(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(JP);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, j7 = /^\[(.+)\]$/, t5e = (e) => {
if (j7.test(e)) {
const t = j7.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, r5e = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return o5e(Object.entries(e.classGroups), r).forEach(([o, a]) => {
zE(a, n, o, t);
}), n;
}, zE = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : R7(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (n5e(o)) {
zE(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
zE(i, R7(t, a), r, n);
});
});
}, R7 = (e, t) => {
let r = e;
return t.split(JP).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, n5e = (e) => e.isThemeGetter, o5e = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, a5e = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, tX = "!", i5e = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith(tX), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, s5e = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, l5e = (e) => ({
cache: a5e(e.cacheSize),
parseClassName: i5e(e),
...e5e(e)
}), c5e = /\s+/, u5e = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(c5e);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = s5e(d).join(":"), w = l ? h + tX : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function f5e() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = rX(t)) && (n && (n += " "), n += r);
return n;
}
const rX = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = rX(e[n])) && (r && (r += " "), r += t);
return r;
};
function d5e(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = l5e(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = u5e(u, r);
return o(u, d), d;
}
return function() {
return a(f5e.apply(null, arguments));
};
}
const Cr = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, nX = /^\[(?:([a-z-]+):)?(.+)\]$/i, p5e = /^\d+\/\d+$/, m5e = /* @__PURE__ */ new Set(["px", "full", "screen"]), h5e = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, g5e = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, b5e = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, y5e = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, v5e = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, _i = (e) => bd(e) || m5e.has(e) || p5e.test(e), bl = (e) => gp(e, "length", E5e), bd = (e) => !!e && !Number.isNaN(Number(e)), G$ = (e) => gp(e, "number", bd), Fm = (e) => !!e && Number.isInteger(Number(e)), x5e = (e) => e.endsWith("%") && bd(e.slice(0, -1)), ht = (e) => nX.test(e), yl = (e) => h5e.test(e), w5e = /* @__PURE__ */ new Set(["length", "size", "percentage"]), $5e = (e) => gp(e, w5e, oX), k5e = (e) => gp(e, "position", oX), _5e = /* @__PURE__ */ new Set(["image", "url"]), O5e = (e) => gp(e, _5e, P5e), S5e = (e) => gp(e, "", A5e), Lm = () => !0, gp = (e, t, r) => {
const n = nX.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, E5e = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
g5e.test(e) && !b5e.test(e)
), oX = () => !1, A5e = (e) => y5e.test(e), P5e = (e) => v5e.test(e), C5e = () => {
const e = Cr("colors"), t = Cr("spacing"), r = Cr("blur"), n = Cr("brightness"), o = Cr("borderColor"), a = Cr("borderRadius"), i = Cr("borderSpacing"), s = Cr("borderWidth"), u = Cr("contrast"), c = Cr("grayscale"), d = Cr("hueRotate"), l = Cr("invert"), f = Cr("gap"), p = Cr("gradientColorStops"), y = Cr("gradientColorStopPositions"), m = Cr("inset"), h = Cr("margin"), w = Cr("opacity"), $ = Cr("padding"), _ = Cr("saturate"), S = Cr("scale"), b = Cr("sepia"), F = Cr("skew"), z = Cr("space"), q = Cr("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", ht, t], M = () => [ht, t], te = () => ["", _i, bl], G = () => ["auto", bd, ht], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", ht], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [bd, ht];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [Lm],
spacing: [_i, bl],
blur: ["none", "", yl, ht],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", yl, ht],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [x5e, bl],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", ht]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [yl]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), ht]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", Fm, ht]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", ht]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", Fm, ht]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [Lm]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", Fm, ht]
}, ht]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [Lm]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [Fm, ht]
}, ht]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", ht]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", ht]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", ht, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [ht, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [ht, t, "none", "full", "min", "max", "fit", "prose", {
screen: [yl]
}, yl]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [ht, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [ht, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [ht, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [ht, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", yl, bl]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", G$]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [Lm]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", ht]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", bd, G$]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", _i, ht]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", ht]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", ht]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", _i, bl]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", _i, ht]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", ht]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", ht]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), k5e]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", $5e]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, O5e]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [_i, ht]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [_i, bl]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [_i, bl]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", yl, S5e]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [Lm]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", yl, ht]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", ht]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", ht]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", ht]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [Fm, ht]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", ht]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", ht]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", ht]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [_i, bl, G$]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, U$ = /* @__PURE__ */ d5e(C5e);
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function N5e(e, t, r) {
return (t = I5e(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function M7(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function we(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? M7(Object(r), !0).forEach(function(n) {
N5e(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : M7(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function T5e(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function I5e(e) {
var t = T5e(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const D7 = () => {
};
let QP = {}, aX = {}, iX = null, sX = {
mark: D7,
measure: D7
};
try {
typeof window < "u" && (QP = window), typeof document < "u" && (aX = document), typeof MutationObserver < "u" && (iX = MutationObserver), typeof performance < "u" && (sX = performance);
} catch {
}
const {
userAgent: F7 = ""
} = QP.navigator || {}, _c = QP, Vr = aX, L7 = iX, Uy = sX;
_c.document;
const vs = !!Vr.documentElement && !!Vr.head && typeof Vr.addEventListener == "function" && typeof Vr.createElement == "function", lX = ~F7.indexOf("MSIE") || ~F7.indexOf("Trident/");
var j5e = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, R5e = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, cX = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, M5e = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, uX = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], On = "classic", Mx = "duotone", D5e = "sharp", F5e = "sharp-duotone", fX = [On, Mx, D5e, F5e], L5e = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, z5e = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, W5e = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), V5e = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, H5e = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], z7 = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, G5e = ["kit"], U5e = {
kit: {
"fa-kit": "fak"
}
}, B5e = ["fak", "fakd"], Y5e = {
kit: {
fak: "fa-kit"
}
}, W7 = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, By = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, q5e = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], K5e = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], X5e = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, J5e = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, Q5e = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, WE = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, Z5e = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], VE = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...q5e, ...Z5e], e4e = ["solid", "regular", "light", "thin", "duotone", "brands"], dX = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], t4e = dX.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), r4e = [...Object.keys(Q5e), ...e4e, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", By.GROUP, By.SWAP_OPACITY, By.PRIMARY, By.SECONDARY].concat(dX.map((e) => "".concat(e, "x"))).concat(t4e.map((e) => "w-".concat(e))), n4e = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const Qi = "___FONT_AWESOME___", HE = 16, pX = "fa", mX = "svg-inline--fa", Hu = "data-fa-i2svg", GE = "data-fa-pseudo-element", o4e = "data-fa-pseudo-element-pending", ZP = "data-prefix", eC = "data-icon", V7 = "fontawesome-i2svg", a4e = "async", i4e = ["HTML", "HEAD", "STYLE", "SCRIPT"], hX = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function Vb(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[On];
}
});
}
const gX = we({}, cX);
gX[On] = we(we(we(we({}, {
"fa-duotone": "duotone"
}), cX[On]), z7.kit), z7["kit-duotone"]);
const s4e = Vb(gX), UE = we({}, V5e);
UE[On] = we(we(we(we({}, {
duotone: "fad"
}), UE[On]), W7.kit), W7["kit-duotone"]);
const H7 = Vb(UE), BE = we({}, WE);
BE[On] = we(we({}, BE[On]), Y5e.kit);
const tC = Vb(BE), YE = we({}, J5e);
YE[On] = we(we({}, YE[On]), U5e.kit);
Vb(YE);
const l4e = j5e, bX = "fa-layers-text", c4e = R5e, u4e = we({}, L5e);
Vb(u4e);
const f4e = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], B$ = M5e, d4e = [...G5e, ...r4e], Yh = _c.FontAwesomeConfig || {};
function p4e(e) {
var t = Vr.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function m4e(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Vr && typeof Vr.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = m4e(p4e(t));
n != null && (Yh[r] = n);
});
const yX = {
styleDefault: "solid",
familyDefault: On,
cssPrefix: pX,
replacementClass: mX,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Yh.familyPrefix && (Yh.cssPrefix = Yh.familyPrefix);
const Hd = we(we({}, yX), Yh);
Hd.autoReplaceSvg || (Hd.observeMutations = !1);
const Be = {};
Object.keys(yX).forEach((e) => {
Object.defineProperty(Be, e, {
enumerable: !0,
set: function(t) {
Hd[e] = t, qh.forEach((r) => r(Be));
},
get: function() {
return Hd[e];
}
});
});
Object.defineProperty(Be, "familyPrefix", {
enumerable: !0,
set: function(e) {
Hd.cssPrefix = e, qh.forEach((t) => t(Be));
},
get: function() {
return Hd.cssPrefix;
}
});
_c.FontAwesomeConfig = Be;
const qh = [];
function h4e(e) {
return qh.push(e), () => {
qh.splice(qh.indexOf(e), 1);
};
}
const vl = HE, Ya = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function g4e(e) {
if (!e || !vs)
return;
const t = Vr.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Vr.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Vr.head.insertBefore(t, n), e;
}
const b4e = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function Gg() {
let e = 12, t = "";
for (; e-- > 0; )
t += b4e[Math.random() * 62 | 0];
return t;
}
function bp(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function rC(e) {
return e.classList ? bp(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function vX(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function y4e(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(vX(e[r]), '" '), "").trim();
}
function Dx(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function nC(e) {
return e.size !== Ya.size || e.x !== Ya.x || e.y !== Ya.y || e.rotate !== Ya.rotate || e.flipX || e.flipY;
}
function v4e(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function x4e(e) {
let {
transform: t,
width: r = HE,
height: n = HE,
startCentered: o = !1
} = e, a = "";
return o && lX ? a += "translate(".concat(t.x / vl - r / 2, "em, ").concat(t.y / vl - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / vl, "em), calc(-50% + ").concat(t.y / vl, "em)) ") : a += "translate(".concat(t.x / vl, "em, ").concat(t.y / vl, "em) "), a += "scale(".concat(t.size / vl * (t.flipX ? -1 : 1), ", ").concat(t.size / vl * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var w4e = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function xX() {
const e = pX, t = mX, r = Be.cssPrefix, n = Be.replacementClass;
let o = w4e;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let G7 = !1;
function Y$() {
Be.autoAddCss && !G7 && (g4e(xX()), G7 = !0);
}
var $4e = {
mixout() {
return {
dom: {
css: xX,
insertCss: Y$
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
Y$();
},
beforeI2svg() {
Y$();
}
};
}
};
const Zi = _c || {};
Zi[Qi] || (Zi[Qi] = {});
Zi[Qi].styles || (Zi[Qi].styles = {});
Zi[Qi].hooks || (Zi[Qi].hooks = {});
Zi[Qi].shims || (Zi[Qi].shims = []);
var qa = Zi[Qi];
const wX = [], $X = function() {
Vr.removeEventListener("DOMContentLoaded", $X), X1 = 1, wX.map((e) => e());
};
let X1 = !1;
vs && (X1 = (Vr.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Vr.readyState), X1 || Vr.addEventListener("DOMContentLoaded", $X));
function k4e(e) {
vs && (X1 ? setTimeout(e, 0) : wX.push(e));
}
function Hb(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? vX(e) : "<".concat(t, " ").concat(y4e(r), ">").concat(n.map(Hb).join(""), "</").concat(t, ">");
}
function U7(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var q$ = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function _4e(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function kX(e) {
const t = _4e(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function O4e(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function B7(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function qE(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = B7(t);
typeof qa.hooks.addPack == "function" && !n ? qa.hooks.addPack(e, B7(t)) : qa.styles[e] = we(we({}, qa.styles[e] || {}), o), e === "fas" && qE("fa", t);
}
const {
styles: Ug,
shims: S4e
} = qa, _X = Object.keys(tC), E4e = _X.reduce((e, t) => (e[t] = Object.keys(tC[t]), e), {});
let oC = null, OX = {}, SX = {}, EX = {}, AX = {}, PX = {};
function A4e(e) {
return ~d4e.indexOf(e);
}
function P4e(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !A4e(o) ? o : null;
}
const CX = () => {
const e = (n) => q$(Ug, (o, a, i) => (o[i] = q$(a, n, {}), o), {});
OX = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), SX = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), PX = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in Ug || Be.autoFetchSvg, r = q$(S4e, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
EX = r.names, AX = r.unicodes, oC = Fx(Be.styleDefault, {
family: Be.familyDefault
});
};
h4e((e) => {
oC = Fx(e.styleDefault, {
family: Be.familyDefault
});
});
CX();
function aC(e, t) {
return (OX[e] || {})[t];
}
function C4e(e, t) {
return (SX[e] || {})[t];
}
function du(e, t) {
return (PX[e] || {})[t];
}
function NX(e) {
return EX[e] || {
prefix: null,
iconName: null
};
}
function N4e(e) {
const t = AX[e], r = aC("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function Oc() {
return oC;
}
const TX = () => ({
prefix: null,
iconName: null,
rest: []
});
function T4e(e) {
let t = On;
const r = _X.reduce((n, o) => (n[o] = "".concat(Be.cssPrefix, "-").concat(o), n), {});
return fX.forEach((n) => {
(e.includes(r[n]) || e.some((o) => E4e[n].includes(o))) && (t = n);
}), t;
}
function Fx(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = On
} = t, n = s4e[r][e];
if (r === Mx && !e)
return "fad";
const o = H7[r][e] || H7[r][n], a = e in qa.styles ? e : null;
return o || a || null;
}
function I4e(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = P4e(Be.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function Y7(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function Lx(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = VE.concat(K5e), a = Y7(e.filter((l) => o.includes(l))), i = Y7(e.filter((l) => !VE.includes(l))), s = a.filter((l) => (n = l, !uX.includes(l))), [u = null] = s, c = T4e(a), d = we(we({}, I4e(i)), {}, {
prefix: Fx(u, {
family: c
})
});
return we(we(we({}, d), D4e({
values: e,
family: c,
styles: Ug,
config: Be,
canonical: d,
givenPrefix: n
})), j4e(r, n, d));
}
function j4e(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? NX(o) : {}, i = du(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !Ug.far && Ug.fas && !Be.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const R4e = fX.filter((e) => e !== On || e !== Mx), M4e = Object.keys(WE).filter((e) => e !== On).map((e) => Object.keys(WE[e])).flat();
function D4e(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === Mx, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && R4e.includes(r) && (Object.keys(a).find((l) => M4e.includes(l)) || i.autoFetchSvg)) {
const l = W5e.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = du(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = Oc() || "fas"), n;
}
let F4e = class {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = we(we({}, this.definitions[a] || {}), o[a]), qE(a, o[a]);
const i = tC[On][a];
i && qE(i, o[a]), CX();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}, q7 = [], Lf = {};
const yd = {}, L4e = Object.keys(yd);
function z4e(e, t) {
let {
mixoutsTo: r
} = t;
return q7 = e, Lf = {}, Object.keys(yd).forEach((n) => {
L4e.indexOf(n) === -1 && delete yd[n];
}), q7.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Lf[i] || (Lf[i] = []), Lf[i].push(a[i]);
});
}
n.provides && n.provides(yd);
}), r;
}
function KE(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Lf[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function Gu(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Lf[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function Sc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return yd[e] ? yd[e].apply(null, t) : void 0;
}
function XE(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || Oc();
if (t)
return t = du(r, t) || t, U7(IX.definitions, r, t) || U7(qa.styles, r, t);
}
const IX = new F4e(), W4e = () => {
Be.autoReplaceSvg = !1, Be.observeMutations = !1, Gu("noAuto");
}, V4e = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return vs ? (Gu("beforeI2svg", e), Sc("pseudoElements2svg", e), Sc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
Be.autoReplaceSvg === !1 && (Be.autoReplaceSvg = !0), Be.observeMutations = !0, k4e(() => {
G4e({
autoReplaceSvgRoot: t
}), Gu("watch", e);
});
}
}, H4e = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: du(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = Fx(e[0]);
return {
prefix: r,
iconName: du(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(Be.cssPrefix, "-")) > -1 || e.match(l4e))) {
const t = Lx(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || Oc(),
iconName: du(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = Oc();
return {
prefix: t,
iconName: du(t, e) || e
};
}
}
}, fo = {
noAuto: W4e,
config: Be,
dom: V4e,
parse: H4e,
library: IX,
findIconDefinition: XE,
toHtml: Hb
}, G4e = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Vr
} = e;
(Object.keys(qa.styles).length > 0 || Be.autoFetchSvg) && vs && Be.autoReplaceSvg && fo.dom.i2svg({
node: t
});
};
function zx(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => Hb(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!vs) return;
const r = Vr.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function U4e(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (nC(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = Dx(we(we({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function B4e(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(Be.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: we(we({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function iC(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = B5e.includes(n), m = [Be.replacementClass, o ? "".concat(Be.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: we(we({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[Hu] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || Gg())
},
children: [s]
}), delete h.attributes.title);
const $ = we(we({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: we(we({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? Sc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : Sc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? B4e($) : U4e($);
}
function K7(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = we(we(we({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[Hu] = "");
const c = we({}, i.styles);
nC(o) && (c.transform = x4e({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = Dx(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function Y4e(e) {
const {
content: t,
title: r,
extra: n
} = e, o = we(we(we({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = Dx(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: K$
} = qa;
function JE(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(Be.cssPrefix, "-").concat(B$.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(Be.cssPrefix, "-").concat(B$.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(Be.cssPrefix, "-").concat(B$.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const q4e = {
found: !1,
width: 512,
height: 512
};
function K4e(e, t) {
!hX && !Be.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function QE(e, t) {
let r = t;
return t === "fa" && Be.styleDefault !== null && (t = Oc()), new Promise((n, o) => {
if (r === "fa") {
const a = NX(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && K$[t] && K$[t][e]) {
const a = K$[t][e];
return n(JE(a));
}
K4e(e, t), n(we(we({}, q4e), {}, {
icon: Be.showMissingIcons && e ? Sc("missingIconAbstract") || {} : {}
}));
});
}
const X7 = () => {
}, ZE = Be.measurePerformance && Uy && Uy.mark && Uy.measure ? Uy : {
mark: X7,
measure: X7
}, mh = 'FA "6.7.2"', X4e = (e) => (ZE.mark("".concat(mh, " ").concat(e, " begins")), () => jX(e)), jX = (e) => {
ZE.mark("".concat(mh, " ").concat(e, " ends")), ZE.measure("".concat(mh, " ").concat(e), "".concat(mh, " ").concat(e, " begins"), "".concat(mh, " ").concat(e, " ends"));
};
var sC = {
begin: X4e,
end: jX
};
const Bv = () => {
};
function J7(e) {
return typeof (e.getAttribute ? e.getAttribute(Hu) : null) == "string";
}
function J4e(e) {
const t = e.getAttribute ? e.getAttribute(ZP) : null, r = e.getAttribute ? e.getAttribute(eC) : null;
return t && r;
}
function Q4e(e) {
return e && e.classList && e.classList.contains && e.classList.contains(Be.replacementClass);
}
function Z4e() {
return Be.autoReplaceSvg === !0 ? Yv.replace : Yv[Be.autoReplaceSvg] || Yv.replace;
}
function e3e(e) {
return Vr.createElementNS("http://www.w3.org/2000/svg", e);
}
function t3e(e) {
return Vr.createElement(e);
}
function RX(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? e3e : t3e
} = t;
if (typeof e == "string")
return Vr.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(RX(o, {
ceFn: r
}));
}), n;
}
function r3e(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const Yv = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(RX(r), t);
}), t.getAttribute(Hu) === null && Be.keepOriginalSource) {
let r = Vr.createComment(r3e(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~rC(t).indexOf(Be.replacementClass))
return Yv.replace(e);
const n = new RegExp("".concat(Be.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === Be.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => Hb(a)).join(`
`);
t.setAttribute(Hu, ""), t.innerHTML = o;
}
};
function Q7(e) {
e();
}
function MX(e, t) {
const r = typeof t == "function" ? t : Bv;
if (e.length === 0)
r();
else {
let n = Q7;
Be.mutateApproach === a4e && (n = _c.requestAnimationFrame || Q7), n(() => {
const o = Z4e(), a = sC.begin("mutate");
e.map(o), a(), r();
});
}
}
let lC = !1;
function DX() {
lC = !0;
}
function eA() {
lC = !1;
}
let J1 = null;
function Z7(e) {
if (!L7 || !Be.observeMutations)
return;
const {
treeCallback: t = Bv,
nodeCallback: r = Bv,
pseudoElementsCallback: n = Bv,
observeMutationsRoot: o = Vr
} = e;
J1 = new L7((a) => {
if (lC) return;
const i = Oc();
bp(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !J7(s.addedNodes[0]) && (Be.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && Be.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && J7(s.target) && ~f4e.indexOf(s.attributeName))
if (s.attributeName === "class" && J4e(s.target)) {
const {
prefix: u,
iconName: c
} = Lx(rC(s.target));
s.target.setAttribute(ZP, u || i), c && s.target.setAttribute(eC, c);
} else Q4e(s.target) && r(s.target);
});
}), vs && J1.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function n3e() {
J1 && J1.disconnect();
}
function o3e(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function a3e(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = Lx(rC(e));
return o.prefix || (o.prefix = Oc()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = C4e(o.prefix, e.innerText) || aC(o.prefix, kX(e.innerText))), !o.iconName && Be.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function i3e(e) {
const t = bp(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return Be.autoA11y && (r ? t["aria-labelledby"] = "".concat(Be.replacementClass, "-title-").concat(n || Gg()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function s3e() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: Ya,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function eM(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = a3e(e), a = i3e(e), i = KE("parseNodeAttributes", {}, e);
let s = t.styleParser ? o3e(e) : [];
return we({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: Ya,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: l3e
} = qa;
function FX(e) {
const t = Be.autoReplaceSvg === "nest" ? eM(e, {
styleParser: !1
}) : eM(e);
return ~t.extra.classes.indexOf(bX) ? Sc("generateLayersText", e, t) : Sc("generateSvgReplacementMutation", e, t);
}
function c3e() {
return [...H5e, ...VE];
}
function tM(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!vs) return Promise.resolve();
const r = Vr.documentElement.classList, n = (d) => r.add("".concat(V7, "-").concat(d)), o = (d) => r.remove("".concat(V7, "-").concat(d)), a = Be.autoFetchSvg ? c3e() : uX.concat(Object.keys(l3e));
a.includes("fa") || a.push("fa");
const i = [".".concat(bX, ":not([").concat(Hu, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(Hu, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = bp(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = sC.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = FX(l);
f && d.push(f);
} catch (f) {
hX || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
MX(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function u3e(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
FX(e).then((r) => {
r && MX([r], t);
});
}
function f3e(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : XE(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : XE(o || {})), e(n, we(we({}, r), {}, {
mask: o
}));
};
}
const d3e = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ya,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return zx(we({
type: "icon"
}, e), () => (Gu("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), Be.autoA11y && (i ? c["aria-labelledby"] = "".concat(Be.replacementClass, "-title-").concat(s || Gg()) : (c["aria-hidden"] = "true", c.focusable = "false")), iC({
icons: {
main: JE(p),
mask: o ? JE(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: we(we({}, Ya), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var p3e = {
mixout() {
return {
icon: f3e(d3e)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = tM, e.nodeCallback = u3e, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Vr,
callback: n = () => {
}
} = t;
return tM(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([QE(n, i), c.iconName ? QE(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, iC({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = Dx(i);
s.length > 0 && (n.style = s);
let u;
return nC(a) && (u = Sc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, m3e = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return zx({
type: "layer"
}, () => {
Gu("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(Be.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, h3e = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return zx({
type: "counter",
content: e
}, () => (Gu("beforeDOMElementCreation", {
content: e,
params: t
}), Y4e({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(Be.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, g3e = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ya,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return zx({
type: "text",
content: e
}, () => (Gu("beforeDOMElementCreation", {
content: e,
params: t
}), K7({
content: e,
transform: we(we({}, Ya), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(Be.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (lX) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return Be.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, K7({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const b3e = new RegExp('"', "ug"), rM = [1105920, 1112319], nM = we(we(we(we({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), z5e), n4e), X5e), tA = Object.keys(nM).reduce((e, t) => (e[t.toLowerCase()] = nM[t], e), {}), y3e = Object.keys(tA).reduce((e, t) => {
const r = tA[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function v3e(e) {
const t = e.replace(b3e, ""), r = O4e(t, 0), n = r >= rM[0] && r <= rM[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: kX(o ? t[0] : t),
isSecondary: n || o
};
}
function x3e(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (tA[r] || {})[o] || y3e[r];
}
function oM(e, t) {
const r = "".concat(o4e).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = bp(e.children).filter((l) => l.getAttribute(GE) === t)[0], i = _c.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(c4e), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = x3e(s, c);
const {
value: p,
isSecondary: y
} = v3e(l), m = u[0].startsWith("FontAwesome");
let h = aC(f, p), w = h;
if (m) {
const $ = N4e(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(ZP) !== f || a.getAttribute(eC) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = s3e(), {
extra: _
} = $;
_.attributes[GE] = t, QE(h, f).then((S) => {
const b = iC(we(we({}, $), {}, {
icons: {
main: S,
mask: TX()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = Vr.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => Hb(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function w3e(e) {
return Promise.all([oM(e, "::before"), oM(e, "::after")]);
}
function $3e(e) {
return e.parentNode !== document.head && !~i4e.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(GE) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function aM(e) {
if (vs)
return new Promise((t, r) => {
const n = bp(e.querySelectorAll("*")).filter($3e).map(w3e), o = sC.begin("searchPseudoElements");
DX(), Promise.all(n).then(() => {
o(), eA(), t();
}).catch(() => {
o(), eA(), r();
});
});
}
var k3e = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = aM, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Vr
} = t;
Be.searchPseudoElements && aM(r);
};
}
};
let iM = !1;
var _3e = {
mixout() {
return {
dom: {
unwatch() {
DX(), iM = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
Z7(KE("mutationObserverCallbacks", {}));
},
noAuto() {
n3e();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
iM ? eA() : Z7(KE("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const sM = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var O3e = {
mixout() {
return {
parse: {
transform: (e) => sM(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = sM(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: we({}, f.outer),
children: [{
tag: "g",
attributes: we({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: we(we({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const X$ = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function lM(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function S3e(e) {
return e.tag === "g" ? e.children : [e];
}
var E3e = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? Lx(r.split(" ").map((o) => o.trim())) : TX();
return n.prefix || (n.prefix = Oc()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = v4e({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: we(we({}, X$), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(lM)
} : {}, m = {
tag: "g",
attributes: we({}, f.inner),
children: [lM(we({
tag: c.tag,
attributes: we(we({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: we({}, f.outer),
children: [m]
}, w = "mask-".concat(i || Gg()), $ = "clip-".concat(i || Gg()), _ = {
tag: "mask",
attributes: we(we({}, X$), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: S3e(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: we({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, X$)
}), {
children: r,
attributes: n
};
};
}
}, A3e = {
provides(e) {
let t = !1;
_c.matchMedia && (t = _c.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: we(we({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = we(we({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: we(we({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: we(we({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: we(we({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: we(we({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: we(we({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: we(we({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: we(we({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, P3e = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, C3e = [$4e, p3e, m3e, h3e, g3e, k3e, _3e, O3e, E3e, A3e, P3e];
z4e(C3e, {
mixoutsTo: fo
});
fo.noAuto;
fo.config;
fo.library;
fo.dom;
const rA = fo.parse;
fo.findIconDefinition;
fo.toHtml;
const N3e = fo.icon;
fo.layer;
fo.text;
fo.counter;
function T3e(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var Yy = { exports: {} }, J$ = { exports: {} }, Zt = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var cM;
function I3e() {
if (cM) return Zt;
cM = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return Zt.AsyncMode = u, Zt.ConcurrentMode = c, Zt.ContextConsumer = s, Zt.ContextProvider = i, Zt.Element = t, Zt.ForwardRef = d, Zt.Fragment = n, Zt.Lazy = y, Zt.Memo = p, Zt.Portal = r, Zt.Profiler = a, Zt.StrictMode = o, Zt.Suspense = l, Zt.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, Zt.isConcurrentMode = S, Zt.isContextConsumer = function(b) {
return _(b) === s;
}, Zt.isContextProvider = function(b) {
return _(b) === i;
}, Zt.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, Zt.isForwardRef = function(b) {
return _(b) === d;
}, Zt.isFragment = function(b) {
return _(b) === n;
}, Zt.isLazy = function(b) {
return _(b) === y;
}, Zt.isMemo = function(b) {
return _(b) === p;
}, Zt.isPortal = function(b) {
return _(b) === r;
}, Zt.isProfiler = function(b) {
return _(b) === a;
}, Zt.isStrictMode = function(b) {
return _(b) === o;
}, Zt.isSuspense = function(b) {
return _(b) === l;
}, Zt.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, Zt.typeOf = _, Zt;
}
var fr = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var uM;
function j3e() {
return uM || (uM = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
fr.AsyncMode = b, fr.ConcurrentMode = F, fr.ContextConsumer = z, fr.ContextProvider = q, fr.Element = Y, fr.ForwardRef = B, fr.Fragment = Z, fr.Lazy = M, fr.Memo = te, fr.Portal = G, fr.Profiler = H, fr.StrictMode = U, fr.Suspense = W, fr.isAsyncMode = ee, fr.isConcurrentMode = v, fr.isContextConsumer = g, fr.isContextProvider = O, fr.isElement = P, fr.isForwardRef = A, fr.isFragment = T, fr.isLazy = N, fr.isMemo = C, fr.isPortal = I, fr.isProfiler = j, fr.isStrictMode = R, fr.isSuspense = Q, fr.isValidElementType = _, fr.typeOf = S;
}()), fr;
}
var fM;
function LX() {
return fM || (fM = 1, process.env.NODE_ENV === "production" ? J$.exports = I3e() : J$.exports = j3e()), J$.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var Q$, dM;
function R3e() {
if (dM) return Q$;
dM = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return Q$ = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, Q$;
}
var Z$, pM;
function cC() {
if (pM) return Z$;
pM = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return Z$ = e, Z$;
}
var mM, hM;
function zX() {
return hM || (hM = 1, mM = Function.call.bind(Object.prototype.hasOwnProperty)), mM;
}
var ek, gM;
function M3e() {
if (gM) return ek;
gM = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ cC(), r = {}, n = /* @__PURE__ */ zX();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, ek = o, ek;
}
var tk, bM;
function D3e() {
if (bM) return tk;
bM = 1;
var e = LX(), t = R3e(), r = /* @__PURE__ */ cC(), n = /* @__PURE__ */ zX(), o = /* @__PURE__ */ M3e(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return tk = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, tk;
}
var rk, yM;
function F3e() {
if (yM) return rk;
yM = 1;
var e = /* @__PURE__ */ cC();
function t() {
}
function r() {
}
return r.resetWarningCache = t, rk = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, rk;
}
var vM;
function L3e() {
if (vM) return Yy.exports;
if (vM = 1, process.env.NODE_ENV !== "production") {
var e = LX(), t = !0;
Yy.exports = /* @__PURE__ */ D3e()(e.isElement, t);
} else
Yy.exports = /* @__PURE__ */ F3e()();
return Yy.exports;
}
var z3e = /* @__PURE__ */ L3e();
const It = /* @__PURE__ */ T3e(z3e);
function xM(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function Oa(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? xM(Object(r), !0).forEach(function(n) {
zf(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : xM(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function Q1(e) {
"@babel/helpers - typeof";
return Q1 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, Q1(e);
}
function zf(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function W3e(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function V3e(e, t) {
if (e == null) return {};
var r = W3e(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function nA(e) {
return H3e(e) || G3e(e) || U3e(e) || B3e();
}
function H3e(e) {
if (Array.isArray(e)) return oA(e);
}
function G3e(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function U3e(e, t) {
if (e) {
if (typeof e == "string") return oA(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return oA(e, t);
}
}
function oA(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function B3e() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function Y3e(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, zf(t, "fa-".concat(w), typeof w < "u" && w !== null), zf(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), zf(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), zf(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function q3e(e) {
return e = e - 0, e === e;
}
function WX(e) {
return q3e(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var K3e = ["style"];
function X3e(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function J3e(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = WX(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[X3e(o)] = a : t[o] = a, t;
}, {});
}
function VX(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return VX(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = J3e(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[WX(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = V3e(r, K3e);
return o.attrs.style = Oa(Oa({}, o.attrs.style), i), e.apply(void 0, [t.tag, Oa(Oa({}, o.attrs), s)].concat(nA(n)));
}
var HX = !1;
try {
HX = process.env.NODE_ENV === "production";
} catch {
}
function Q3e() {
if (!HX && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function wM(e) {
if (e && Q1(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (rA.icon)
return rA.icon(e);
if (e === null)
return null;
if (e && Q1(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function nk(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? zf({}, e, t) : {};
}
var $M = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, uC = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = Oa(Oa({}, $M), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = wM(n), l = nk("classes", [].concat(nA(Y3e(r)), nA((i || "").split(" ")))), f = nk("transform", typeof r.transform == "string" ? rA.transform(r.transform) : r.transform), p = nk("mask", wM(o)), y = N3e(d, Oa(Oa(Oa(Oa({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return Q3e("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
$M.hasOwnProperty(w) || (h[w] = r[w]);
}), Z3e(m[0], h);
});
uC.displayName = "FontAwesomeIcon";
uC.propTypes = {
beat: It.bool,
border: It.bool,
beatFade: It.bool,
bounce: It.bool,
className: It.string,
fade: It.bool,
flash: It.bool,
mask: It.oneOfType([It.object, It.array, It.string]),
maskId: It.string,
fixedWidth: It.bool,
inverse: It.bool,
flip: It.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: It.oneOfType([It.object, It.array, It.string]),
listItem: It.bool,
pull: It.oneOf(["right", "left"]),
pulse: It.bool,
rotation: It.oneOf([0, 90, 180, 270]),
shake: It.bool,
size: It.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: It.bool,
spinPulse: It.bool,
spinReverse: It.bool,
symbol: It.oneOfType([It.bool, It.string]),
title: It.string,
titleId: It.string,
transform: It.oneOfType([It.string, It.object]),
swapOpacity: It.bool
};
var Z3e = VX.bind(null, ae.createElement);
const fC = "-", ePe = (e) => {
const t = rPe(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(fC);
return a[0] === "" && a.length !== 1 && a.shift(), GX(a, t) || tPe(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, GX = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? GX(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(fC);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, kM = /^\[(.+)\]$/, tPe = (e) => {
if (kM.test(e)) {
const t = kM.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, rPe = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return oPe(Object.entries(e.classGroups), r).forEach(([o, a]) => {
aA(a, n, o, t);
}), n;
}, aA = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : _M(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (nPe(o)) {
aA(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
aA(i, _M(t, a), r, n);
});
});
}, _M = (e, t) => {
let r = e;
return t.split(fC).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, nPe = (e) => e.isThemeGetter, oPe = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, aPe = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, UX = "!", iPe = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith(UX), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, sPe = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, lPe = (e) => ({
cache: aPe(e.cacheSize),
parseClassName: iPe(e),
...ePe(e)
}), cPe = /\s+/, uPe = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(cPe);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = sPe(d).join(":"), w = l ? h + UX : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function fPe() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = BX(t)) && (n && (n += " "), n += r);
return n;
}
const BX = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = BX(e[n])) && (r && (r += " "), r += t);
return r;
};
function dPe(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = lPe(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = uPe(u, r);
return o(u, d), d;
}
return function() {
return a(fPe.apply(null, arguments));
};
}
const Nr = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, YX = /^\[(?:([a-z-]+):)?(.+)\]$/i, pPe = /^\d+\/\d+$/, mPe = /* @__PURE__ */ new Set(["px", "full", "screen"]), hPe = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, gPe = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, bPe = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, yPe = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, vPe = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Oi = (e) => vd(e) || mPe.has(e) || pPe.test(e), xl = (e) => yp(e, "length", EPe), vd = (e) => !!e && !Number.isNaN(Number(e)), ok = (e) => yp(e, "number", vd), zm = (e) => !!e && Number.isInteger(Number(e)), xPe = (e) => e.endsWith("%") && vd(e.slice(0, -1)), gt = (e) => YX.test(e), wl = (e) => hPe.test(e), wPe = /* @__PURE__ */ new Set(["length", "size", "percentage"]), $Pe = (e) => yp(e, wPe, qX), kPe = (e) => yp(e, "position", qX), _Pe = /* @__PURE__ */ new Set(["image", "url"]), OPe = (e) => yp(e, _Pe, PPe), SPe = (e) => yp(e, "", APe), Wm = () => !0, yp = (e, t, r) => {
const n = YX.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, EPe = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
gPe.test(e) && !bPe.test(e)
), qX = () => !1, APe = (e) => yPe.test(e), PPe = (e) => vPe.test(e), CPe = () => {
const e = Nr("colors"), t = Nr("spacing"), r = Nr("blur"), n = Nr("brightness"), o = Nr("borderColor"), a = Nr("borderRadius"), i = Nr("borderSpacing"), s = Nr("borderWidth"), u = Nr("contrast"), c = Nr("grayscale"), d = Nr("hueRotate"), l = Nr("invert"), f = Nr("gap"), p = Nr("gradientColorStops"), y = Nr("gradientColorStopPositions"), m = Nr("inset"), h = Nr("margin"), w = Nr("opacity"), $ = Nr("padding"), _ = Nr("saturate"), S = Nr("scale"), b = Nr("sepia"), F = Nr("skew"), z = Nr("space"), q = Nr("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", gt, t], M = () => [gt, t], te = () => ["", Oi, xl], G = () => ["auto", vd, gt], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", gt], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [vd, gt];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [Wm],
spacing: [Oi, xl],
blur: ["none", "", wl, gt],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", wl, gt],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [xPe, xl],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", gt]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [wl]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), gt]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", zm, gt]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", gt]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", zm, gt]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [Wm]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", zm, gt]
}, gt]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [Wm]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [zm, gt]
}, gt]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", gt]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", gt]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", gt, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [gt, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [gt, t, "none", "full", "min", "max", "fit", "prose", {
screen: [wl]
}, wl]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [gt, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [gt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [gt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [gt, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", wl, xl]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", ok]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [Wm]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", gt]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", vd, ok]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", Oi, gt]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", gt]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", gt]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", Oi, xl]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", Oi, gt]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", gt]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", gt]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), kPe]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", $Pe]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, OPe]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [Oi, gt]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [Oi, xl]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [Oi, xl]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", wl, SPe]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [Wm]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", wl, gt]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", gt]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", gt]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", gt]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [zm, gt]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", gt]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", gt]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", gt]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [Oi, xl, ok]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, NPe = /* @__PURE__ */ dPe(CPe), TPe = ({
className: e,
children: t,
required: r,
...n
}) => /* @__PURE__ */ Te(
"label",
{
className: NPe("text-base-fg mb-2 text-[15px] font-medium", e),
...n,
children: [
t,
r && /* @__PURE__ */ K("span", { className: "ml-0.5 text-[#ff6467]", children: "*" })
]
}
), IPe = ae.forwardRef(
({
label: e,
icon: t,
inputClassName: r,
iconClassName: n,
className: o,
id: a,
isError: i,
onBlur: s,
onFocus: u,
errorMessage: c,
...d
}, l) => /* @__PURE__ */ Te("div", { className: U$("flex flex-col", o), children: [
e && /* @__PURE__ */ K(TPe, { htmlFor: a || e, children: e }),
/* @__PURE__ */ Te("div", { className: "relative w-full", children: [
t && /* @__PURE__ */ K(
uC,
{
icon: t,
className: U$("text-md absolute pl-3 pt-3", n)
}
),
/* @__PURE__ */ K(
"input",
{
ref: l,
id: a || e || void 0,
className: U$(
"h-10 w-full rounded-lg px-3 py-2.5 outline-none",
"bg-ui-panel text-base-fg placeholder-base-fg/50",
"border border-ui-panel-border transition-all duration-150 ease-in-out hover:border-primary/60 focus:border-primary focus:!outline-none",
"disabled:cursor-not-allowed disabled:opacity-60 disabled:hover:border-ui-panel-border",
t && "pl-10",
i && "outline-red focus:outline-red",
r
),
onFocus: (f) => {
u && u(f);
},
onBlur: (f) => {
s && s(f);
},
...d
}
),
c && /* @__PURE__ */ K("h6", { className: "absolute z-10 text-red", children: c })
] })
] })
);
IPe.displayName = "Input";
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function jPe(e, t, r) {
return (t = MPe(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function OM(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function $e(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? OM(Object(r), !0).forEach(function(n) {
jPe(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : OM(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function RPe(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function MPe(e) {
var t = RPe(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const SM = () => {
};
let dC = {}, KX = {}, XX = null, JX = {
mark: SM,
measure: SM
};
try {
typeof window < "u" && (dC = window), typeof document < "u" && (KX = document), typeof MutationObserver < "u" && (XX = MutationObserver), typeof performance < "u" && (JX = performance);
} catch {
}
const {
userAgent: EM = ""
} = dC.navigator || {}, Ec = dC, Hr = KX, AM = XX, qy = JX;
Ec.document;
const xs = !!Hr.documentElement && !!Hr.head && typeof Hr.addEventListener == "function" && typeof Hr.createElement == "function", QX = ~EM.indexOf("MSIE") || ~EM.indexOf("Trident/");
var DPe = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, FPe = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, ZX = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, LPe = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, eJ = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Sn = "classic", Wx = "duotone", zPe = "sharp", WPe = "sharp-duotone", tJ = [Sn, Wx, zPe, WPe], VPe = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, HPe = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, GPe = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), UPe = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, BPe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], PM = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, YPe = ["kit"], qPe = {
kit: {
"fa-kit": "fak"
}
}, KPe = ["fak", "fakd"], XPe = {
kit: {
fak: "fa-kit"
}
}, CM = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, Ky = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, JPe = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], QPe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], ZPe = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, eCe = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, tCe = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, iA = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, rCe = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], sA = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...JPe, ...rCe], nCe = ["solid", "regular", "light", "thin", "duotone", "brands"], rJ = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], oCe = rJ.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), aCe = [...Object.keys(tCe), ...nCe, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", Ky.GROUP, Ky.SWAP_OPACITY, Ky.PRIMARY, Ky.SECONDARY].concat(rJ.map((e) => "".concat(e, "x"))).concat(oCe.map((e) => "w-".concat(e))), iCe = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const es = "___FONT_AWESOME___", lA = 16, nJ = "fa", oJ = "svg-inline--fa", Uu = "data-fa-i2svg", cA = "data-fa-pseudo-element", sCe = "data-fa-pseudo-element-pending", pC = "data-prefix", mC = "data-icon", NM = "fontawesome-i2svg", lCe = "async", cCe = ["HTML", "HEAD", "STYLE", "SCRIPT"], aJ = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function Gb(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[Sn];
}
});
}
const iJ = $e({}, ZX);
iJ[Sn] = $e($e($e($e({}, {
"fa-duotone": "duotone"
}), ZX[Sn]), PM.kit), PM["kit-duotone"]);
const uCe = Gb(iJ), uA = $e({}, UPe);
uA[Sn] = $e($e($e($e({}, {
duotone: "fad"
}), uA[Sn]), CM.kit), CM["kit-duotone"]);
const TM = Gb(uA), fA = $e({}, iA);
fA[Sn] = $e($e({}, fA[Sn]), XPe.kit);
const hC = Gb(fA), dA = $e({}, eCe);
dA[Sn] = $e($e({}, dA[Sn]), qPe.kit);
Gb(dA);
const fCe = DPe, sJ = "fa-layers-text", dCe = FPe, pCe = $e({}, VPe);
Gb(pCe);
const mCe = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], ak = LPe, hCe = [...YPe, ...aCe], Kh = Ec.FontAwesomeConfig || {};
function gCe(e) {
var t = Hr.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function bCe(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Hr && typeof Hr.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = bCe(gCe(t));
n != null && (Kh[r] = n);
});
const lJ = {
styleDefault: "solid",
familyDefault: Sn,
cssPrefix: nJ,
replacementClass: oJ,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Kh.familyPrefix && (Kh.cssPrefix = Kh.familyPrefix);
const Gd = $e($e({}, lJ), Kh);
Gd.autoReplaceSvg || (Gd.observeMutations = !1);
const Ye = {};
Object.keys(lJ).forEach((e) => {
Object.defineProperty(Ye, e, {
enumerable: !0,
set: function(t) {
Gd[e] = t, Xh.forEach((r) => r(Ye));
},
get: function() {
return Gd[e];
}
});
});
Object.defineProperty(Ye, "familyPrefix", {
enumerable: !0,
set: function(e) {
Gd.cssPrefix = e, Xh.forEach((t) => t(Ye));
},
get: function() {
return Gd.cssPrefix;
}
});
Ec.FontAwesomeConfig = Ye;
const Xh = [];
function yCe(e) {
return Xh.push(e), () => {
Xh.splice(Xh.indexOf(e), 1);
};
}
const $l = lA, Ka = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function vCe(e) {
if (!e || !xs)
return;
const t = Hr.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Hr.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Hr.head.insertBefore(t, n), e;
}
const xCe = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function Bg() {
let e = 12, t = "";
for (; e-- > 0; )
t += xCe[Math.random() * 62 | 0];
return t;
}
function vp(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function gC(e) {
return e.classList ? vp(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function cJ(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function wCe(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(cJ(e[r]), '" '), "").trim();
}
function Vx(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function bC(e) {
return e.size !== Ka.size || e.x !== Ka.x || e.y !== Ka.y || e.rotate !== Ka.rotate || e.flipX || e.flipY;
}
function $Ce(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function kCe(e) {
let {
transform: t,
width: r = lA,
height: n = lA,
startCentered: o = !1
} = e, a = "";
return o && QX ? a += "translate(".concat(t.x / $l - r / 2, "em, ").concat(t.y / $l - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / $l, "em), calc(-50% + ").concat(t.y / $l, "em)) ") : a += "translate(".concat(t.x / $l, "em, ").concat(t.y / $l, "em) "), a += "scale(".concat(t.size / $l * (t.flipX ? -1 : 1), ", ").concat(t.size / $l * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var _Ce = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function uJ() {
const e = nJ, t = oJ, r = Ye.cssPrefix, n = Ye.replacementClass;
let o = _Ce;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let IM = !1;
function ik() {
Ye.autoAddCss && !IM && (vCe(uJ()), IM = !0);
}
var OCe = {
mixout() {
return {
dom: {
css: uJ,
insertCss: ik
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
ik();
},
beforeI2svg() {
ik();
}
};
}
};
const ts = Ec || {};
ts[es] || (ts[es] = {});
ts[es].styles || (ts[es].styles = {});
ts[es].hooks || (ts[es].hooks = {});
ts[es].shims || (ts[es].shims = []);
var Xa = ts[es];
const fJ = [], dJ = function() {
Hr.removeEventListener("DOMContentLoaded", dJ), Z1 = 1, fJ.map((e) => e());
};
let Z1 = !1;
xs && (Z1 = (Hr.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Hr.readyState), Z1 || Hr.addEventListener("DOMContentLoaded", dJ));
function SCe(e) {
xs && (Z1 ? setTimeout(e, 0) : fJ.push(e));
}
function Ub(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? cJ(e) : "<".concat(t, " ").concat(wCe(r), ">").concat(n.map(Ub).join(""), "</").concat(t, ">");
}
function jM(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var sk = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function ECe(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function pJ(e) {
const t = ECe(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function ACe(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function RM(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function pA(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = RM(t);
typeof Xa.hooks.addPack == "function" && !n ? Xa.hooks.addPack(e, RM(t)) : Xa.styles[e] = $e($e({}, Xa.styles[e] || {}), o), e === "fas" && pA("fa", t);
}
const {
styles: Yg,
shims: PCe
} = Xa, mJ = Object.keys(hC), CCe = mJ.reduce((e, t) => (e[t] = Object.keys(hC[t]), e), {});
let yC = null, hJ = {}, gJ = {}, bJ = {}, yJ = {}, vJ = {};
function NCe(e) {
return ~hCe.indexOf(e);
}
function TCe(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !NCe(o) ? o : null;
}
const xJ = () => {
const e = (n) => sk(Yg, (o, a, i) => (o[i] = sk(a, n, {}), o), {});
hJ = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), gJ = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), vJ = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in Yg || Ye.autoFetchSvg, r = sk(PCe, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
bJ = r.names, yJ = r.unicodes, yC = Hx(Ye.styleDefault, {
family: Ye.familyDefault
});
};
yCe((e) => {
yC = Hx(e.styleDefault, {
family: Ye.familyDefault
});
});
xJ();
function vC(e, t) {
return (hJ[e] || {})[t];
}
function ICe(e, t) {
return (gJ[e] || {})[t];
}
function pu(e, t) {
return (vJ[e] || {})[t];
}
function wJ(e) {
return bJ[e] || {
prefix: null,
iconName: null
};
}
function jCe(e) {
const t = yJ[e], r = vC("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function Ac() {
return yC;
}
const $J = () => ({
prefix: null,
iconName: null,
rest: []
});
function RCe(e) {
let t = Sn;
const r = mJ.reduce((n, o) => (n[o] = "".concat(Ye.cssPrefix, "-").concat(o), n), {});
return tJ.forEach((n) => {
(e.includes(r[n]) || e.some((o) => CCe[n].includes(o))) && (t = n);
}), t;
}
function Hx(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = Sn
} = t, n = uCe[r][e];
if (r === Wx && !e)
return "fad";
const o = TM[r][e] || TM[r][n], a = e in Xa.styles ? e : null;
return o || a || null;
}
function MCe(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = TCe(Ye.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function MM(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function Gx(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = sA.concat(QPe), a = MM(e.filter((l) => o.includes(l))), i = MM(e.filter((l) => !sA.includes(l))), s = a.filter((l) => (n = l, !eJ.includes(l))), [u = null] = s, c = RCe(a), d = $e($e({}, MCe(i)), {}, {
prefix: Hx(u, {
family: c
})
});
return $e($e($e({}, d), zCe({
values: e,
family: c,
styles: Yg,
config: Ye,
canonical: d,
givenPrefix: n
})), DCe(r, n, d));
}
function DCe(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? wJ(o) : {}, i = pu(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !Yg.far && Yg.fas && !Ye.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const FCe = tJ.filter((e) => e !== Sn || e !== Wx), LCe = Object.keys(iA).filter((e) => e !== Sn).map((e) => Object.keys(iA[e])).flat();
function zCe(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === Wx, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && FCe.includes(r) && (Object.keys(a).find((l) => LCe.includes(l)) || i.autoFetchSvg)) {
const l = GPe.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = pu(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = Ac() || "fas"), n;
}
let WCe = class {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = $e($e({}, this.definitions[a] || {}), o[a]), pA(a, o[a]);
const i = hC[Sn][a];
i && pA(i, o[a]), xJ();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}, DM = [], Wf = {};
const xd = {}, VCe = Object.keys(xd);
function HCe(e, t) {
let {
mixoutsTo: r
} = t;
return DM = e, Wf = {}, Object.keys(xd).forEach((n) => {
VCe.indexOf(n) === -1 && delete xd[n];
}), DM.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Wf[i] || (Wf[i] = []), Wf[i].push(a[i]);
});
}
n.provides && n.provides(xd);
}), r;
}
function mA(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Wf[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function Bu(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Wf[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function Pc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return xd[e] ? xd[e].apply(null, t) : void 0;
}
function hA(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || Ac();
if (t)
return t = pu(r, t) || t, jM(kJ.definitions, r, t) || jM(Xa.styles, r, t);
}
const kJ = new WCe(), GCe = () => {
Ye.autoReplaceSvg = !1, Ye.observeMutations = !1, Bu("noAuto");
}, UCe = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return xs ? (Bu("beforeI2svg", e), Pc("pseudoElements2svg", e), Pc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
Ye.autoReplaceSvg === !1 && (Ye.autoReplaceSvg = !0), Ye.observeMutations = !0, SCe(() => {
YCe({
autoReplaceSvgRoot: t
}), Bu("watch", e);
});
}
}, BCe = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: pu(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = Hx(e[0]);
return {
prefix: r,
iconName: pu(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(Ye.cssPrefix, "-")) > -1 || e.match(fCe))) {
const t = Gx(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || Ac(),
iconName: pu(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = Ac();
return {
prefix: t,
iconName: pu(t, e) || e
};
}
}
}, po = {
noAuto: GCe,
config: Ye,
dom: UCe,
parse: BCe,
library: kJ,
findIconDefinition: hA,
toHtml: Ub
}, YCe = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Hr
} = e;
(Object.keys(Xa.styles).length > 0 || Ye.autoFetchSvg) && xs && Ye.autoReplaceSvg && po.dom.i2svg({
node: t
});
};
function Ux(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => Ub(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!xs) return;
const r = Hr.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function qCe(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (bC(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = Vx($e($e({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function KCe(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(Ye.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: $e($e({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function xC(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = KPe.includes(n), m = [Ye.replacementClass, o ? "".concat(Ye.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: $e($e({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[Uu] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || Bg())
},
children: [s]
}), delete h.attributes.title);
const $ = $e($e({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: $e($e({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? Pc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : Pc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? KCe($) : qCe($);
}
function FM(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = $e($e($e({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[Uu] = "");
const c = $e({}, i.styles);
bC(o) && (c.transform = kCe({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = Vx(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function XCe(e) {
const {
content: t,
title: r,
extra: n
} = e, o = $e($e($e({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = Vx(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: lk
} = Xa;
function gA(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(Ye.cssPrefix, "-").concat(ak.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(Ye.cssPrefix, "-").concat(ak.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(Ye.cssPrefix, "-").concat(ak.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const JCe = {
found: !1,
width: 512,
height: 512
};
function QCe(e, t) {
!aJ && !Ye.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function bA(e, t) {
let r = t;
return t === "fa" && Ye.styleDefault !== null && (t = Ac()), new Promise((n, o) => {
if (r === "fa") {
const a = wJ(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && lk[t] && lk[t][e]) {
const a = lk[t][e];
return n(gA(a));
}
QCe(e, t), n($e($e({}, JCe), {}, {
icon: Ye.showMissingIcons && e ? Pc("missingIconAbstract") || {} : {}
}));
});
}
const LM = () => {
}, yA = Ye.measurePerformance && qy && qy.mark && qy.measure ? qy : {
mark: LM,
measure: LM
}, hh = 'FA "6.7.2"', ZCe = (e) => (yA.mark("".concat(hh, " ").concat(e, " begins")), () => _J(e)), _J = (e) => {
yA.mark("".concat(hh, " ").concat(e, " ends")), yA.measure("".concat(hh, " ").concat(e), "".concat(hh, " ").concat(e, " begins"), "".concat(hh, " ").concat(e, " ends"));
};
var wC = {
begin: ZCe,
end: _J
};
const qv = () => {
};
function zM(e) {
return typeof (e.getAttribute ? e.getAttribute(Uu) : null) == "string";
}
function e6e(e) {
const t = e.getAttribute ? e.getAttribute(pC) : null, r = e.getAttribute ? e.getAttribute(mC) : null;
return t && r;
}
function t6e(e) {
return e && e.classList && e.classList.contains && e.classList.contains(Ye.replacementClass);
}
function r6e() {
return Ye.autoReplaceSvg === !0 ? Kv.replace : Kv[Ye.autoReplaceSvg] || Kv.replace;
}
function n6e(e) {
return Hr.createElementNS("http://www.w3.org/2000/svg", e);
}
function o6e(e) {
return Hr.createElement(e);
}
function OJ(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? n6e : o6e
} = t;
if (typeof e == "string")
return Hr.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(OJ(o, {
ceFn: r
}));
}), n;
}
function a6e(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const Kv = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(OJ(r), t);
}), t.getAttribute(Uu) === null && Ye.keepOriginalSource) {
let r = Hr.createComment(a6e(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~gC(t).indexOf(Ye.replacementClass))
return Kv.replace(e);
const n = new RegExp("".concat(Ye.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === Ye.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => Ub(a)).join(`
`);
t.setAttribute(Uu, ""), t.innerHTML = o;
}
};
function WM(e) {
e();
}
function SJ(e, t) {
const r = typeof t == "function" ? t : qv;
if (e.length === 0)
r();
else {
let n = WM;
Ye.mutateApproach === lCe && (n = Ec.requestAnimationFrame || WM), n(() => {
const o = r6e(), a = wC.begin("mutate");
e.map(o), a(), r();
});
}
}
let $C = !1;
function EJ() {
$C = !0;
}
function vA() {
$C = !1;
}
let e0 = null;
function VM(e) {
if (!AM || !Ye.observeMutations)
return;
const {
treeCallback: t = qv,
nodeCallback: r = qv,
pseudoElementsCallback: n = qv,
observeMutationsRoot: o = Hr
} = e;
e0 = new AM((a) => {
if ($C) return;
const i = Ac();
vp(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !zM(s.addedNodes[0]) && (Ye.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && Ye.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && zM(s.target) && ~mCe.indexOf(s.attributeName))
if (s.attributeName === "class" && e6e(s.target)) {
const {
prefix: u,
iconName: c
} = Gx(gC(s.target));
s.target.setAttribute(pC, u || i), c && s.target.setAttribute(mC, c);
} else t6e(s.target) && r(s.target);
});
}), xs && e0.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function i6e() {
e0 && e0.disconnect();
}
function s6e(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function l6e(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = Gx(gC(e));
return o.prefix || (o.prefix = Ac()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = ICe(o.prefix, e.innerText) || vC(o.prefix, pJ(e.innerText))), !o.iconName && Ye.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function c6e(e) {
const t = vp(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return Ye.autoA11y && (r ? t["aria-labelledby"] = "".concat(Ye.replacementClass, "-title-").concat(n || Bg()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function u6e() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: Ka,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function HM(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = l6e(e), a = c6e(e), i = mA("parseNodeAttributes", {}, e);
let s = t.styleParser ? s6e(e) : [];
return $e({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: Ka,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: f6e
} = Xa;
function AJ(e) {
const t = Ye.autoReplaceSvg === "nest" ? HM(e, {
styleParser: !1
}) : HM(e);
return ~t.extra.classes.indexOf(sJ) ? Pc("generateLayersText", e, t) : Pc("generateSvgReplacementMutation", e, t);
}
function d6e() {
return [...BPe, ...sA];
}
function GM(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!xs) return Promise.resolve();
const r = Hr.documentElement.classList, n = (d) => r.add("".concat(NM, "-").concat(d)), o = (d) => r.remove("".concat(NM, "-").concat(d)), a = Ye.autoFetchSvg ? d6e() : eJ.concat(Object.keys(f6e));
a.includes("fa") || a.push("fa");
const i = [".".concat(sJ, ":not([").concat(Uu, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(Uu, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = vp(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = wC.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = AJ(l);
f && d.push(f);
} catch (f) {
aJ || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
SJ(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function p6e(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
AJ(e).then((r) => {
r && SJ([r], t);
});
}
function m6e(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : hA(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : hA(o || {})), e(n, $e($e({}, r), {}, {
mask: o
}));
};
}
const h6e = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ka,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return Ux($e({
type: "icon"
}, e), () => (Bu("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), Ye.autoA11y && (i ? c["aria-labelledby"] = "".concat(Ye.replacementClass, "-title-").concat(s || Bg()) : (c["aria-hidden"] = "true", c.focusable = "false")), xC({
icons: {
main: gA(p),
mask: o ? gA(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: $e($e({}, Ka), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var g6e = {
mixout() {
return {
icon: m6e(h6e)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = GM, e.nodeCallback = p6e, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Hr,
callback: n = () => {
}
} = t;
return GM(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([bA(n, i), c.iconName ? bA(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, xC({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = Vx(i);
s.length > 0 && (n.style = s);
let u;
return bC(a) && (u = Pc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, b6e = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return Ux({
type: "layer"
}, () => {
Bu("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(Ye.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, y6e = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return Ux({
type: "counter",
content: e
}, () => (Bu("beforeDOMElementCreation", {
content: e,
params: t
}), XCe({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(Ye.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, v6e = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ka,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return Ux({
type: "text",
content: e
}, () => (Bu("beforeDOMElementCreation", {
content: e,
params: t
}), FM({
content: e,
transform: $e($e({}, Ka), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(Ye.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (QX) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return Ye.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, FM({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const x6e = new RegExp('"', "ug"), UM = [1105920, 1112319], BM = $e($e($e($e({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), HPe), iCe), ZPe), xA = Object.keys(BM).reduce((e, t) => (e[t.toLowerCase()] = BM[t], e), {}), w6e = Object.keys(xA).reduce((e, t) => {
const r = xA[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function $6e(e) {
const t = e.replace(x6e, ""), r = ACe(t, 0), n = r >= UM[0] && r <= UM[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: pJ(o ? t[0] : t),
isSecondary: n || o
};
}
function k6e(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (xA[r] || {})[o] || w6e[r];
}
function YM(e, t) {
const r = "".concat(sCe).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = vp(e.children).filter((l) => l.getAttribute(cA) === t)[0], i = Ec.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(dCe), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = k6e(s, c);
const {
value: p,
isSecondary: y
} = $6e(l), m = u[0].startsWith("FontAwesome");
let h = vC(f, p), w = h;
if (m) {
const $ = jCe(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(pC) !== f || a.getAttribute(mC) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = u6e(), {
extra: _
} = $;
_.attributes[cA] = t, bA(h, f).then((S) => {
const b = xC($e($e({}, $), {}, {
icons: {
main: S,
mask: $J()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = Hr.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => Ub(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function _6e(e) {
return Promise.all([YM(e, "::before"), YM(e, "::after")]);
}
function O6e(e) {
return e.parentNode !== document.head && !~cCe.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(cA) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function qM(e) {
if (xs)
return new Promise((t, r) => {
const n = vp(e.querySelectorAll("*")).filter(O6e).map(_6e), o = wC.begin("searchPseudoElements");
EJ(), Promise.all(n).then(() => {
o(), vA(), t();
}).catch(() => {
o(), vA(), r();
});
});
}
var S6e = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = qM, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Hr
} = t;
Ye.searchPseudoElements && qM(r);
};
}
};
let KM = !1;
var E6e = {
mixout() {
return {
dom: {
unwatch() {
EJ(), KM = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
VM(mA("mutationObserverCallbacks", {}));
},
noAuto() {
i6e();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
KM ? vA() : VM(mA("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const XM = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var A6e = {
mixout() {
return {
parse: {
transform: (e) => XM(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = XM(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: $e({}, f.outer),
children: [{
tag: "g",
attributes: $e({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: $e($e({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const ck = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function JM(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function P6e(e) {
return e.tag === "g" ? e.children : [e];
}
var C6e = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? Gx(r.split(" ").map((o) => o.trim())) : $J();
return n.prefix || (n.prefix = Ac()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = $Ce({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: $e($e({}, ck), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(JM)
} : {}, m = {
tag: "g",
attributes: $e({}, f.inner),
children: [JM($e({
tag: c.tag,
attributes: $e($e({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: $e({}, f.outer),
children: [m]
}, w = "mask-".concat(i || Bg()), $ = "clip-".concat(i || Bg()), _ = {
tag: "mask",
attributes: $e($e({}, ck), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: P6e(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: $e({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, ck)
}), {
children: r,
attributes: n
};
};
}
}, N6e = {
provides(e) {
let t = !1;
Ec.matchMedia && (t = Ec.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: $e($e({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = $e($e({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: $e($e({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: $e($e({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: $e($e({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: $e($e({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: $e($e({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: $e($e({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: $e($e({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, T6e = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, I6e = [OCe, g6e, b6e, y6e, v6e, S6e, E6e, A6e, C6e, N6e, T6e];
HCe(I6e, {
mixoutsTo: po
});
po.noAuto;
po.config;
po.library;
po.dom;
const wA = po.parse;
po.findIconDefinition;
po.toHtml;
const j6e = po.icon;
po.layer;
po.text;
po.counter;
var Xy = { exports: {} }, uk = { exports: {} }, er = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var QM;
function R6e() {
if (QM) return er;
QM = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return er.AsyncMode = u, er.ConcurrentMode = c, er.ContextConsumer = s, er.ContextProvider = i, er.Element = t, er.ForwardRef = d, er.Fragment = n, er.Lazy = y, er.Memo = p, er.Portal = r, er.Profiler = a, er.StrictMode = o, er.Suspense = l, er.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, er.isConcurrentMode = S, er.isContextConsumer = function(b) {
return _(b) === s;
}, er.isContextProvider = function(b) {
return _(b) === i;
}, er.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, er.isForwardRef = function(b) {
return _(b) === d;
}, er.isFragment = function(b) {
return _(b) === n;
}, er.isLazy = function(b) {
return _(b) === y;
}, er.isMemo = function(b) {
return _(b) === p;
}, er.isPortal = function(b) {
return _(b) === r;
}, er.isProfiler = function(b) {
return _(b) === a;
}, er.isStrictMode = function(b) {
return _(b) === o;
}, er.isSuspense = function(b) {
return _(b) === l;
}, er.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, er.typeOf = _, er;
}
var dr = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var ZM;
function M6e() {
return ZM || (ZM = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
dr.AsyncMode = b, dr.ConcurrentMode = F, dr.ContextConsumer = z, dr.ContextProvider = q, dr.Element = Y, dr.ForwardRef = B, dr.Fragment = Z, dr.Lazy = M, dr.Memo = te, dr.Portal = G, dr.Profiler = H, dr.StrictMode = U, dr.Suspense = W, dr.isAsyncMode = ee, dr.isConcurrentMode = v, dr.isContextConsumer = g, dr.isContextProvider = O, dr.isElement = P, dr.isForwardRef = A, dr.isFragment = T, dr.isLazy = N, dr.isMemo = C, dr.isPortal = I, dr.isProfiler = j, dr.isStrictMode = R, dr.isSuspense = Q, dr.isValidElementType = _, dr.typeOf = S;
}()), dr;
}
var eD;
function PJ() {
return eD || (eD = 1, process.env.NODE_ENV === "production" ? uk.exports = R6e() : uk.exports = M6e()), uk.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var fk, tD;
function D6e() {
if (tD) return fk;
tD = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return fk = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, fk;
}
var dk, rD;
function kC() {
if (rD) return dk;
rD = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return dk = e, dk;
}
var nD, oD;
function CJ() {
return oD || (oD = 1, nD = Function.call.bind(Object.prototype.hasOwnProperty)), nD;
}
var pk, aD;
function F6e() {
if (aD) return pk;
aD = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ kC(), r = {}, n = /* @__PURE__ */ CJ();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, pk = o, pk;
}
var mk, iD;
function L6e() {
if (iD) return mk;
iD = 1;
var e = PJ(), t = D6e(), r = /* @__PURE__ */ kC(), n = /* @__PURE__ */ CJ(), o = /* @__PURE__ */ F6e(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return mk = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, mk;
}
var hk, sD;
function z6e() {
if (sD) return hk;
sD = 1;
var e = /* @__PURE__ */ kC();
function t() {
}
function r() {
}
return r.resetWarningCache = t, hk = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, hk;
}
var lD;
function W6e() {
if (lD) return Xy.exports;
if (lD = 1, process.env.NODE_ENV !== "production") {
var e = PJ(), t = !0;
Xy.exports = /* @__PURE__ */ L6e()(e.isElement, t);
} else
Xy.exports = /* @__PURE__ */ z6e()();
return Xy.exports;
}
var V6e = /* @__PURE__ */ W6e();
const jt = /* @__PURE__ */ GAe(V6e);
function cD(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function Sa(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? cD(Object(r), !0).forEach(function(n) {
Vf(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : cD(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function t0(e) {
"@babel/helpers - typeof";
return t0 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, t0(e);
}
function Vf(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function H6e(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function G6e(e, t) {
if (e == null) return {};
var r = H6e(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function $A(e) {
return U6e(e) || B6e(e) || Y6e(e) || q6e();
}
function U6e(e) {
if (Array.isArray(e)) return kA(e);
}
function B6e(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function Y6e(e, t) {
if (e) {
if (typeof e == "string") return kA(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return kA(e, t);
}
}
function kA(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function q6e() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function K6e(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, Vf(t, "fa-".concat(w), typeof w < "u" && w !== null), Vf(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), Vf(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), Vf(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function X6e(e) {
return e = e - 0, e === e;
}
function NJ(e) {
return X6e(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var J6e = ["style"];
function Q6e(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function Z6e(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = NJ(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[Q6e(o)] = a : t[o] = a, t;
}, {});
}
function TJ(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return TJ(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = Z6e(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[NJ(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = G6e(r, J6e);
return o.attrs.style = Sa(Sa({}, o.attrs.style), i), e.apply(void 0, [t.tag, Sa(Sa({}, o.attrs), s)].concat($A(n)));
}
var IJ = !1;
try {
IJ = process.env.NODE_ENV === "production";
} catch {
}
function eNe() {
if (!IJ && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function uD(e) {
if (e && t0(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (wA.icon)
return wA.icon(e);
if (e === null)
return null;
if (e && t0(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function gk(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Vf({}, e, t) : {};
}
var fD = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, jJ = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = Sa(Sa({}, fD), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = uD(n), l = gk("classes", [].concat($A(K6e(r)), $A((i || "").split(" ")))), f = gk("transform", typeof r.transform == "string" ? wA.transform(r.transform) : r.transform), p = gk("mask", uD(o)), y = j6e(d, Sa(Sa(Sa(Sa({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return eNe("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
fD.hasOwnProperty(w) || (h[w] = r[w]);
}), tNe(m[0], h);
});
jJ.displayName = "FontAwesomeIcon";
jJ.propTypes = {
beat: jt.bool,
border: jt.bool,
beatFade: jt.bool,
bounce: jt.bool,
className: jt.string,
fade: jt.bool,
flash: jt.bool,
mask: jt.oneOfType([jt.object, jt.array, jt.string]),
maskId: jt.string,
fixedWidth: jt.bool,
inverse: jt.bool,
flip: jt.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: jt.oneOfType([jt.object, jt.array, jt.string]),
listItem: jt.bool,
pull: jt.oneOf(["right", "left"]),
pulse: jt.bool,
rotation: jt.oneOf([0, 90, 180, 270]),
shake: jt.bool,
size: jt.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: jt.bool,
spinPulse: jt.bool,
spinReverse: jt.bool,
symbol: jt.oneOfType([jt.bool, jt.string]),
title: jt.string,
titleId: jt.string,
transform: jt.oneOfType([jt.string, jt.object]),
swapOpacity: jt.bool
};
var tNe = TJ.bind(null, ae.createElement), rNe = Object.defineProperty, nNe = (e, t, r) => t in e ? rNe(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, RJ = (e, t, r) => nNe(e, typeof t != "symbol" ? t + "" : t, r);
const oNe = "https://api.storyteller.ai";
window.STORYTELLER_API_HOST_STORE = void 0;
let aNe = class MJ {
constructor(t) {
RJ(this, "apiSchemeAndHost"), this.apiSchemeAndHost = t;
}
// NB(bt,2025-09-25): 'nx' is creating multiple copies of the library with name
// mangling, so the singleton pattern fails to resolve to a single instance.
// public static getInstance(): StorytellerApiHostStore {
// if (StorytellerApiHostStore.instance !== undefined) {
// return StorytellerApiHostStore.instance;
// }
// const instance = new StorytellerApiHostStore(DEFAULT_API_HOST);
// StorytellerApiHostStore.instance = instance;
// return instance;
// }
static getInstance() {
if (window.STORYTELLER_API_HOST_STORE !== void 0)
return window.STORYTELLER_API_HOST_STORE;
const t = new MJ(oNe);
return window.STORYTELLER_API_HOST_STORE = t, t;
}
/** Get the API scheme and host. */
getApiSchemeAndHost() {
return console.debug("StorytellerApiHostStore.getApiSchemeAndHost()", this.apiSchemeAndHost, this.constructor.name), this.apiSchemeAndHost;
}
/**
* Externally update the API host.
* This is used to sync with Tauri for enabling easier development.
*/
setApiSchemeAndHost(t) {
if (console.debug("StorytellerApiHostStore.setApiSchemeAndHost()", t, this.constructor.name), !t.startsWith("http://") && !t.startsWith("https://"))
throw new Error(`Scheme not included in URL: ${t}`);
const r = "https://".lastIndexOf("/");
if (t.lastIndexOf("/") > r)
throw new Error(`Path components should not be included in URL: ${t}`);
this.apiSchemeAndHost = t;
}
};
var gh = /* @__PURE__ */ ((e) => (e.GOOGLE_API = "https://storage.googleapis.com", e.FUNNEL_API = "https://style.storyteller.ai", e.CDN_API = "https://cdn.storyteller.ai", e.GRAVATAR_API = "https://www.gravatar.com", e))(gh || {}), bk = { exports: {} }, Ot = {};
/**
* @license React
* react.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var dD;
function iNe() {
if (dD) return Ot;
dD = 1;
var e = Symbol.for("react.element"), t = Symbol.for("react.portal"), r = Symbol.for("react.fragment"), n = Symbol.for("react.strict_mode"), o = Symbol.for("react.profiler"), a = Symbol.for("react.provider"), i = Symbol.for("react.context"), s = Symbol.for("react.forward_ref"), u = Symbol.for("react.suspense"), c = Symbol.for("react.memo"), d = Symbol.for("react.lazy"), l = Symbol.iterator;
function f(g) {
return g === null || typeof g != "object" ? null : (g = l && g[l] || g["@@iterator"], typeof g == "function" ? g : null);
}
var p = { isMounted: function() {
return !1;
}, enqueueForceUpdate: function() {
}, enqueueReplaceState: function() {
}, enqueueSetState: function() {
} }, y = Object.assign, m = {};
function h(g, O, P) {
this.props = g, this.context = O, this.refs = m, this.updater = P || p;
}
h.prototype.isReactComponent = {}, h.prototype.setState = function(g, O) {
if (typeof g != "object" && typeof g != "function" && g != null) throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");
this.updater.enqueueSetState(this, g, O, "setState");
}, h.prototype.forceUpdate = function(g) {
this.updater.enqueueForceUpdate(this, g, "forceUpdate");
};
function w() {
}
w.prototype = h.prototype;
function $(g, O, P) {
this.props = g, this.context = O, this.refs = m, this.updater = P || p;
}
var _ = $.prototype = new w();
_.constructor = $, y(_, h.prototype), _.isPureReactComponent = !0;
var S = Array.isArray, b = Object.prototype.hasOwnProperty, F = { current: null }, z = { key: !0, ref: !0, __self: !0, __source: !0 };
function q(g, O, P) {
var A, T = {}, N = null, C = null;
if (O != null) for (A in O.ref !== void 0 && (C = O.ref), O.key !== void 0 && (N = "" + O.key), O) b.call(O, A) && !z.hasOwnProperty(A) && (T[A] = O[A]);
var I = arguments.length - 2;
if (I === 1) T.children = P;
else if (1 < I) {
for (var j = Array(I), R = 0; R < I; R++) j[R] = arguments[R + 2];
T.children = j;
}
if (g && g.defaultProps) for (A in I = g.defaultProps, I) T[A] === void 0 && (T[A] = I[A]);
return { $$typeof: e, type: g, key: N, ref: C, props: T, _owner: F.current };
}
function Y(g, O) {
return { $$typeof: e, type: g.type, key: O, ref: g.ref, props: g.props, _owner: g._owner };
}
function B(g) {
return typeof g == "object" && g !== null && g.$$typeof === e;
}
function Z(g) {
var O = { "=": "=0", ":": "=2" };
return "$" + g.replace(/[=:]/g, function(P) {
return O[P];
});
}
var M = /\/+/g;
function te(g, O) {
return typeof g == "object" && g !== null && g.key != null ? Z("" + g.key) : O.toString(36);
}
function G(g, O, P, A, T) {
var N = typeof g;
(N === "undefined" || N === "boolean") && (g = null);
var C = !1;
if (g === null) C = !0;
else switch (N) {
case "string":
case "number":
C = !0;
break;
case "object":
switch (g.$$typeof) {
case e:
case t:
C = !0;
}
}
if (C) return C = g, T = T(C), g = A === "" ? "." + te(C, 0) : A, S(T) ? (P = "", g != null && (P = g.replace(M, "$&/") + "/"), G(T, O, P, "", function(R) {
return R;
})) : T != null && (B(T) && (T = Y(T, P + (!T.key || C && C.key === T.key ? "" : ("" + T.key).replace(M, "$&/") + "/") + g)), O.push(T)), 1;
if (C = 0, A = A === "" ? "." : A + ":", S(g)) for (var I = 0; I < g.length; I++) {
N = g[I];
var j = A + te(N, I);
C += G(N, O, P, j, T);
}
else if (j = f(g), typeof j == "function") for (g = j.call(g), I = 0; !(N = g.next()).done; ) N = N.value, j = A + te(N, I++), C += G(N, O, P, j, T);
else if (N === "object") throw O = String(g), Error("Objects are not valid as a React child (found: " + (O === "[object Object]" ? "object with keys {" + Object.keys(g).join(", ") + "}" : O) + "). If you meant to render a collection of children, use an array instead.");
return C;
}
function H(g, O, P) {
if (g == null) return g;
var A = [], T = 0;
return G(g, A, "", "", function(N) {
return O.call(P, N, T++);
}), A;
}
function U(g) {
if (g._status === -1) {
var O = g._result;
O = O(), O.then(function(P) {
(g._status === 0 || g._status === -1) && (g._status = 1, g._result = P);
}, function(P) {
(g._status === 0 || g._status === -1) && (g._status = 2, g._result = P);
}), g._status === -1 && (g._status = 0, g._result = O);
}
if (g._status === 1) return g._result.default;
throw g._result;
}
var W = { current: null }, X = { transition: null }, ee = { ReactCurrentDispatcher: W, ReactCurrentBatchConfig: X, ReactCurrentOwner: F };
function v() {
throw Error("act(...) is not supported in production builds of React.");
}
return Ot.Children = { map: H, forEach: function(g, O, P) {
H(g, function() {
O.apply(this, arguments);
}, P);
}, count: function(g) {
var O = 0;
return H(g, function() {
O++;
}), O;
}, toArray: function(g) {
return H(g, function(O) {
return O;
}) || [];
}, only: function(g) {
if (!B(g)) throw Error("React.Children.only expected to receive a single React element child.");
return g;
} }, Ot.Component = h, Ot.Fragment = r, Ot.Profiler = o, Ot.PureComponent = $, Ot.StrictMode = n, Ot.Suspense = u, Ot.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = ee, Ot.act = v, Ot.cloneElement = function(g, O, P) {
if (g == null) throw Error("React.cloneElement(...): The argument must be a React element, but you passed " + g + ".");
var A = y({}, g.props), T = g.key, N = g.ref, C = g._owner;
if (O != null) {
if (O.ref !== void 0 && (N = O.ref, C = F.current), O.key !== void 0 && (T = "" + O.key), g.type && g.type.defaultProps) var I = g.type.defaultProps;
for (j in O) b.call(O, j) && !z.hasOwnProperty(j) && (A[j] = O[j] === void 0 && I !== void 0 ? I[j] : O[j]);
}
var j = arguments.length - 2;
if (j === 1) A.children = P;
else if (1 < j) {
I = Array(j);
for (var R = 0; R < j; R++) I[R] = arguments[R + 2];
A.children = I;
}
return { $$typeof: e, type: g.type, key: T, ref: N, props: A, _owner: C };
}, Ot.createContext = function(g) {
return g = { $$typeof: i, _currentValue: g, _currentValue2: g, _threadCount: 0, Provider: null, Consumer: null, _defaultValue: null, _globalName: null }, g.Provider = { $$typeof: a, _context: g }, g.Consumer = g;
}, Ot.createElement = q, Ot.createFactory = function(g) {
var O = q.bind(null, g);
return O.type = g, O;
}, Ot.createRef = function() {
return { current: null };
}, Ot.forwardRef = function(g) {
return { $$typeof: s, render: g };
}, Ot.isValidElement = B, Ot.lazy = function(g) {
return { $$typeof: d, _payload: { _status: -1, _result: g }, _init: U };
}, Ot.memo = function(g, O) {
return { $$typeof: c, type: g, compare: O === void 0 ? null : O };
}, Ot.startTransition = function(g) {
var O = X.transition;
X.transition = {};
try {
g();
} finally {
X.transition = O;
}
}, Ot.unstable_act = v, Ot.useCallback = function(g, O) {
return W.current.useCallback(g, O);
}, Ot.useContext = function(g) {
return W.current.useContext(g);
}, Ot.useDebugValue = function() {
}, Ot.useDeferredValue = function(g) {
return W.current.useDeferredValue(g);
}, Ot.useEffect = function(g, O) {
return W.current.useEffect(g, O);
}, Ot.useId = function() {
return W.current.useId();
}, Ot.useImperativeHandle = function(g, O, P) {
return W.current.useImperativeHandle(g, O, P);
}, Ot.useInsertionEffect = function(g, O) {
return W.current.useInsertionEffect(g, O);
}, Ot.useLayoutEffect = function(g, O) {
return W.current.useLayoutEffect(g, O);
}, Ot.useMemo = function(g, O) {
return W.current.useMemo(g, O);
}, Ot.useReducer = function(g, O, P) {
return W.current.useReducer(g, O, P);
}, Ot.useRef = function(g) {
return W.current.useRef(g);
}, Ot.useState = function(g) {
return W.current.useState(g);
}, Ot.useSyncExternalStore = function(g, O, P) {
return W.current.useSyncExternalStore(g, O, P);
}, Ot.useTransition = function() {
return W.current.useTransition();
}, Ot.version = "18.3.1", Ot;
}
var Xv = { exports: {} };
/**
* @license React
* react.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
Xv.exports;
var pD;
function sNe() {
return pD || (pD = 1, function(e, t) {
process.env.NODE_ENV !== "production" && function() {
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());
var r = "18.3.1", n = Symbol.for("react.element"), o = Symbol.for("react.portal"), a = Symbol.for("react.fragment"), i = Symbol.for("react.strict_mode"), s = Symbol.for("react.profiler"), u = Symbol.for("react.provider"), c = Symbol.for("react.context"), d = Symbol.for("react.forward_ref"), l = Symbol.for("react.suspense"), f = Symbol.for("react.suspense_list"), p = Symbol.for("react.memo"), y = Symbol.for("react.lazy"), m = Symbol.for("react.offscreen"), h = Symbol.iterator, w = "@@iterator";
function $(x) {
if (x === null || typeof x != "object")
return null;
var E = h && x[h] || x[w];
return typeof E == "function" ? E : null;
}
var _ = {
/**
* @internal
* @type {ReactComponent}
*/
current: null
}, S = {
transition: null
}, b = {
current: null,
// Used to reproduce behavior of `batchedUpdates` in legacy mode.
isBatchingLegacy: !1,
didScheduleLegacyUpdate: !1
}, F = {
/**
* @internal
* @type {ReactComponent}
*/
current: null
}, z = {}, q = null;
function Y(x) {
q = x;
}
z.setExtraStackFrame = function(x) {
q = x;
}, z.getCurrentStack = null, z.getStackAddendum = function() {
var x = "";
q && (x += q);
var E = z.getCurrentStack;
return E && (x += E() || ""), x;
};
var B = !1, Z = !1, M = !1, te = !1, G = !1, H = {
ReactCurrentDispatcher: _,
ReactCurrentBatchConfig: S,
ReactCurrentOwner: F
};
H.ReactDebugCurrentFrame = z, H.ReactCurrentActQueue = b;
function U(x) {
{
for (var E = arguments.length, D = new Array(E > 1 ? E - 1 : 0), L = 1; L < E; L++)
D[L - 1] = arguments[L];
X("warn", x, D);
}
}
function W(x) {
{
for (var E = arguments.length, D = new Array(E > 1 ? E - 1 : 0), L = 1; L < E; L++)
D[L - 1] = arguments[L];
X("error", x, D);
}
}
function X(x, E, D) {
{
var L = H.ReactDebugCurrentFrame, J = L.getStackAddendum();
J !== "" && (E += "%s", D = D.concat([J]));
var ie = D.map(function(re) {
return String(re);
});
ie.unshift("Warning: " + E), Function.prototype.apply.call(console[x], console, ie);
}
}
var ee = {};
function v(x, E) {
{
var D = x.constructor, L = D && (D.displayName || D.name) || "ReactClass", J = L + "." + E;
if (ee[J])
return;
W("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.", E, L), ee[J] = !0;
}
}
var g = {
/**
* Checks whether or not this composite component is mounted.
* @param {ReactClass} publicInstance The instance we want to test.
* @return {boolean} True if mounted, false otherwise.
* @protected
* @final
*/
isMounted: function(x) {
return !1;
},
/**
* Forces an update. This should only be invoked when it is known with
* certainty that we are **not** in a DOM transaction.
*
* You may want to call this when you know that some deeper aspect of the
* component's state has changed but `setState` was not called.
*
* This will not invoke `shouldComponentUpdate`, but it will invoke
* `componentWillUpdate` and `componentDidUpdate`.
*
* @param {ReactClass} publicInstance The instance that should rerender.
* @param {?function} callback Called after component is updated.
* @param {?string} callerName name of the calling function in the public API.
* @internal
*/
enqueueForceUpdate: function(x, E, D) {
v(x, "forceUpdate");
},
/**
* Replaces all of the state. Always use this or `setState` to mutate state.
* You should treat `this.state` as immutable.
*
* There is no guarantee that `this.state` will be immediately updated, so
* accessing `this.state` after calling this method may return the old value.
*
* @param {ReactClass} publicInstance The instance that should rerender.
* @param {object} completeState Next state.
* @param {?function} callback Called after component is updated.
* @param {?string} callerName name of the calling function in the public API.
* @internal
*/
enqueueReplaceState: function(x, E, D, L) {
v(x, "replaceState");
},
/**
* Sets a subset of the state. This only exists because _pendingState is
* internal. This provides a merging strategy that is not available to deep
* properties which is confusing. TODO: Expose pendingState or don't use it
* during the merge.
*
* @param {ReactClass} publicInstance The instance that should rerender.
* @param {object} partialState Next partial state to be merged with state.
* @param {?function} callback Called after component is updated.
* @param {?string} Name of the calling function in the public API.
* @internal
*/
enqueueSetState: function(x, E, D, L) {
v(x, "setState");
}
}, O = Object.assign, P = {};
Object.freeze(P);
function A(x, E, D) {
this.props = x, this.context = E, this.refs = P, this.updater = D || g;
}
A.prototype.isReactComponent = {}, A.prototype.setState = function(x, E) {
if (typeof x != "object" && typeof x != "function" && x != null)
throw new Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");
this.updater.enqueueSetState(this, x, E, "setState");
}, A.prototype.forceUpdate = function(x) {
this.updater.enqueueForceUpdate(this, x, "forceUpdate");
};
{
var T = {
isMounted: ["isMounted", "Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."],
replaceState: ["replaceState", "Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."]
}, N = function(x, E) {
Object.defineProperty(A.prototype, x, {
get: function() {
U("%s(...) is deprecated in plain JavaScript React classes. %s", E[0], E[1]);
}
});
};
for (var C in T)
T.hasOwnProperty(C) && N(C, T[C]);
}
function I() {
}
I.prototype = A.prototype;
function j(x, E, D) {
this.props = x, this.context = E, this.refs = P, this.updater = D || g;
}
var R = j.prototype = new I();
R.constructor = j, O(R, A.prototype), R.isPureReactComponent = !0;
function Q() {
var x = {
current: null
};
return Object.seal(x), x;
}
var k = Array.isArray;
function oe(x) {
return k(x);
}
function me(x) {
{
var E = typeof Symbol == "function" && Symbol.toStringTag, D = E && x[Symbol.toStringTag] || x.constructor.name || "Object";
return D;
}
}
function Le(x) {
try {
return Xr(x), !1;
} catch {
return !0;
}
}
function Xr(x) {
return "" + x;
}
function Jr(x) {
if (Le(x))
return W("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.", me(x)), Xr(x);
}
function ce(x, E, D) {
var L = x.displayName;
if (L)
return L;
var J = E.displayName || E.name || "";
return J !== "" ? D + "(" + J + ")" : D;
}
function le(x) {
return x.displayName || "Context";
}
function fe(x) {
if (x == null)
return null;
if (typeof x.tag == "number" && W("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."), typeof x == "function")
return x.displayName || x.name || null;
if (typeof x == "string")
return x;
switch (x) {
case a:
return "Fragment";
case o:
return "Portal";
case s:
return "Profiler";
case i:
return "StrictMode";
case l:
return "Suspense";
case f:
return "SuspenseList";
}
if (typeof x == "object")
switch (x.$$typeof) {
case c:
var E = x;
return le(E) + ".Consumer";
case u:
var D = x;
return le(D._context) + ".Provider";
case d:
return ce(x, x.render, "ForwardRef");
case p:
var L = x.displayName || null;
return L !== null ? L : fe(x.type) || "Memo";
case y: {
var J = x, ie = J._payload, re = J._init;
try {
return fe(re(ie));
} catch {
return null;
}
}
}
return null;
}
var ot = Object.prototype.hasOwnProperty, kt = {
key: !0,
ref: !0,
__self: !0,
__source: !0
}, De, Ze, rt;
rt = {};
function Wt(x) {
if (ot.call(x, "ref")) {
var E = Object.getOwnPropertyDescriptor(x, "ref").get;
if (E && E.isReactWarning)
return !1;
}
return x.ref !== void 0;
}
function lt(x) {
if (ot.call(x, "key")) {
var E = Object.getOwnPropertyDescriptor(x, "key").get;
if (E && E.isReactWarning)
return !1;
}
return x.key !== void 0;
}
function $r(x, E) {
var D = function() {
De || (De = !0, W("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", E));
};
D.isReactWarning = !0, Object.defineProperty(x, "key", {
get: D,
configurable: !0
});
}
function pn(x, E) {
var D = function() {
Ze || (Ze = !0, W("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", E));
};
D.isReactWarning = !0, Object.defineProperty(x, "ref", {
get: D,
configurable: !0
});
}
function ro(x) {
if (typeof x.ref == "string" && F.current && x.__self && F.current.stateNode !== x.__self) {
var E = fe(F.current.type);
rt[E] || (W('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref', E, x.ref), rt[E] = !0);
}
}
var kr = function(x, E, D, L, J, ie, re) {
var se = {
// This tag allows us to uniquely identify this as a React Element
$$typeof: n,
// Built-in properties that belong on the element
type: x,
key: E,
ref: D,
props: re,
// Record the component responsible for creating this element.
_owner: ie
};
return se._store = {}, Object.defineProperty(se._store, "validated", {
configurable: !1,
enumerable: !1,
writable: !0,
value: !1
}), Object.defineProperty(se, "_self", {
configurable: !1,
enumerable: !1,
writable: !1,
value: L
}), Object.defineProperty(se, "_source", {
configurable: !1,
enumerable: !1,
writable: !1,
value: J
}), Object.freeze && (Object.freeze(se.props), Object.freeze(se)), se;
};
function vo(x, E, D) {
var L, J = {}, ie = null, re = null, se = null, pe = null;
if (E != null) {
Wt(E) && (re = E.ref, ro(E)), lt(E) && (Jr(E.key), ie = "" + E.key), se = E.__self === void 0 ? null : E.__self, pe = E.__source === void 0 ? null : E.__source;
for (L in E)
ot.call(E, L) && !kt.hasOwnProperty(L) && (J[L] = E[L]);
}
var Ce = arguments.length - 2;
if (Ce === 1)
J.children = D;
else if (Ce > 1) {
for (var je = Array(Ce), Re = 0; Re < Ce; Re++)
je[Re] = arguments[Re + 2];
Object.freeze && Object.freeze(je), J.children = je;
}
if (x && x.defaultProps) {
var Me = x.defaultProps;
for (L in Me)
J[L] === void 0 && (J[L] = Me[L]);
}
if (ie || re) {
var Fe = typeof x == "function" ? x.displayName || x.name || "Unknown" : x;
ie && $r(J, Fe), re && pn(J, Fe);
}
return kr(x, ie, re, se, pe, F.current, J);
}
function Mo(x, E) {
var D = kr(x.type, E, x.ref, x._self, x._source, x._owner, x.props);
return D;
}
function Do(x, E, D) {
if (x == null)
throw new Error("React.cloneElement(...): The argument must be a React element, but you passed " + x + ".");
var L, J = O({}, x.props), ie = x.key, re = x.ref, se = x._self, pe = x._source, Ce = x._owner;
if (E != null) {
Wt(E) && (re = E.ref, Ce = F.current), lt(E) && (Jr(E.key), ie = "" + E.key);
var je;
x.type && x.type.defaultProps && (je = x.type.defaultProps);
for (L in E)
ot.call(E, L) && !kt.hasOwnProperty(L) && (E[L] === void 0 && je !== void 0 ? J[L] = je[L] : J[L] = E[L]);
}
var Re = arguments.length - 2;
if (Re === 1)
J.children = D;
else if (Re > 1) {
for (var Me = Array(Re), Fe = 0; Fe < Re; Fe++)
Me[Fe] = arguments[Fe + 2];
J.children = Me;
}
return kr(x.type, ie, re, se, pe, Ce, J);
}
function yr(x) {
return typeof x == "object" && x !== null && x.$$typeof === n;
}
var Tn = ".", Fo = ":";
function Ss(x) {
var E = /[=:]/g, D = {
"=": "=0",
":": "=2"
}, L = x.replace(E, function(J) {
return D[J];
});
return "$" + L;
}
var pa = !1, Kc = /\/+/g;
function ma(x) {
return x.replace(Kc, "$&/");
}
function vr(x, E) {
return typeof x == "object" && x !== null && x.key != null ? (Jr(x.key), Ss("" + x.key)) : E.toString(36);
}
function xr(x, E, D, L, J) {
var ie = typeof x;
(ie === "undefined" || ie === "boolean") && (x = null);
var re = !1;
if (x === null)
re = !0;
else
switch (ie) {
case "string":
case "number":
re = !0;
break;
case "object":
switch (x.$$typeof) {
case n:
case o:
re = !0;
}
}
if (re) {
var se = x, pe = J(se), Ce = L === "" ? Tn + vr(se, 0) : L;
if (oe(pe)) {
var je = "";
Ce != null && (je = ma(Ce) + "/"), xr(pe, E, je, "", function(bm) {
return bm;
});
} else pe != null && (yr(pe) && (pe.key && (!se || se.key !== pe.key) && Jr(pe.key), pe = Mo(
pe,
// Keep both the (mapped) and old keys if they differ, just as
// traverseAllChildren used to do for objects as children
D + // $FlowFixMe Flow incorrectly thinks React.Portal doesn't have a key
(pe.key && (!se || se.key !== pe.key) ? (
// $FlowFixMe Flow incorrectly thinks existing element's key can be a number
// eslint-disable-next-line react-internal/safe-string-coercion
ma("" + pe.key) + "/"
) : "") + Ce
)), E.push(pe));
return 1;
}
var Re, Me, Fe = 0, tt = L === "" ? Tn : L + Fo;
if (oe(x))
for (var Bn = 0; Bn < x.length; Bn++)
Re = x[Bn], Me = tt + vr(Re, Bn), Fe += xr(Re, E, D, Me, J);
else {
var qo = $(x);
if (typeof qo == "function") {
var qs = x;
qo === qs.entries && (pa || U("Using Maps as children is not supported. Use an array of keyed ReactElements instead."), pa = !0);
for (var hm = qo.call(qs), Ks, gm = 0; !(Ks = hm.next()).done; )
Re = Ks.value, Me = tt + vr(Re, gm++), Fe += xr(Re, E, D, Me, J);
} else if (ie === "object") {
var Xs = String(x);
throw new Error("Objects are not valid as a React child (found: " + (Xs === "[object Object]" ? "object with keys {" + Object.keys(x).join(", ") + "}" : Xs) + "). If you meant to render a collection of children, use an array instead.");
}
}
return Fe;
}
function wr(x, E, D) {
if (x == null)
return x;
var L = [], J = 0;
return xr(x, L, "", "", function(ie) {
return E.call(D, ie, J++);
}), L;
}
function Dn(x) {
var E = 0;
return wr(x, function() {
E++;
}), E;
}
function sn(x, E, D) {
wr(x, function() {
E.apply(this, arguments);
}, D);
}
function nn(x) {
return wr(x, function(E) {
return E;
}) || [];
}
function mn(x) {
if (!yr(x))
throw new Error("React.Children.only expected to receive a single React element child.");
return x;
}
function xo(x) {
var E = {
$$typeof: c,
// As a workaround to support multiple concurrent renderers, we categorize
// some renderers as primary and others as secondary. We only expect
// there to be two concurrent renderers at most: React Native (primary) and
// Fabric (secondary); React DOM (primary) and React ART (secondary).
// Secondary renderers store their context values on separate fields.
_currentValue: x,
_currentValue2: x,
// Used to track how many concurrent renderers this context currently
// supports within in a single renderer. Such as parallel server rendering.
_threadCount: 0,
// These are circular
Provider: null,
Consumer: null,
// Add these to use same hidden class in VM as ServerContext
_defaultValue: null,
_globalName: null
};
E.Provider = {
$$typeof: u,
_context: E
};
var D = !1, L = !1, J = !1;
{
var ie = {
$$typeof: c,
_context: E
};
Object.defineProperties(ie, {
Provider: {
get: function() {
return L || (L = !0, W("Rendering <Context.Consumer.Provider> is not supported and will be removed in a future major release. Did you mean to render <Context.Provider> instead?")), E.Provider;
},
set: function(re) {
E.Provider = re;
}
},
_currentValue: {
get: function() {
return E._currentValue;
},
set: function(re) {
E._currentValue = re;
}
},
_currentValue2: {
get: function() {
return E._currentValue2;
},
set: function(re) {
E._currentValue2 = re;
}
},
_threadCount: {
get: function() {
return E._threadCount;
},
set: function(re) {
E._threadCount = re;
}
},
Consumer: {
get: function() {
return D || (D = !0, W("Rendering <Context.Consumer.Consumer> is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?")), E.Consumer;
}
},
displayName: {
get: function() {
return E.displayName;
},
set: function(re) {
J || (U("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.", re), J = !0);
}
}
}), E.Consumer = ie;
}
return E._currentRenderer = null, E._currentRenderer2 = null, E;
}
var Vt = -1, Qr = 0, on = 1, In = 2;
function Lo(x) {
if (x._status === Vt) {
var E = x._result, D = E();
if (D.then(function(ie) {
if (x._status === Qr || x._status === Vt) {
var re = x;
re._status = on, re._result = ie;
}
}, function(ie) {
if (x._status === Qr || x._status === Vt) {
var re = x;
re._status = In, re._result = ie;
}
}), x._status === Vt) {
var L = x;
L._status = Qr, L._result = D;
}
}
if (x._status === on) {
var J = x._result;
return J === void 0 && W(`lazy: Expected the result of a dynamic import() call. Instead received: %s
Your code should look like:
const MyComponent = lazy(() => import('./MyComponent'))
Did you accidentally put curly braces around the import?`, J), "default" in J || W(`lazy: Expected the result of a dynamic import() call. Instead received: %s
Your code should look like:
const MyComponent = lazy(() => import('./MyComponent'))`, J), J.default;
} else
throw x._result;
}
function zo(x) {
var E = {
// We use these fields to store the result.
_status: Vt,
_result: x
}, D = {
$$typeof: y,
_payload: E,
_init: Lo
};
{
var L, J;
Object.defineProperties(D, {
defaultProps: {
configurable: !0,
get: function() {
return L;
},
set: function(ie) {
W("React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."), L = ie, Object.defineProperty(D, "defaultProps", {
enumerable: !0
});
}
},
propTypes: {
configurable: !0,
get: function() {
return J;
},
set: function(ie) {
W("React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."), J = ie, Object.defineProperty(D, "propTypes", {
enumerable: !0
});
}
}
});
}
return D;
}
function Fn(x) {
x != null && x.$$typeof === p ? W("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...)).") : typeof x != "function" ? W("forwardRef requires a render function but was given %s.", x === null ? "null" : typeof x) : x.length !== 0 && x.length !== 2 && W("forwardRef render functions accept exactly two parameters: props and ref. %s", x.length === 1 ? "Did you forget to use the ref parameter?" : "Any additional parameter will be undefined."), x != null && (x.defaultProps != null || x.propTypes != null) && W("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?");
var E = {
$$typeof: d,
render: x
};
{
var D;
Object.defineProperty(E, "displayName", {
enumerable: !1,
configurable: !0,
get: function() {
return D;
},
set: function(L) {
D = L, !x.name && !x.displayName && (x.displayName = L);
}
});
}
return E;
}
var Ln;
Ln = Symbol.for("react.module.reference");
function wo(x) {
return !!(typeof x == "string" || typeof x == "function" || x === a || x === s || G || x === i || x === l || x === f || te || x === m || B || Z || M || typeof x == "object" && x !== null && (x.$$typeof === y || x.$$typeof === p || x.$$typeof === u || x.$$typeof === c || x.$$typeof === d || // This needs to include all possible module reference object
// types supported by any Flight configuration anywhere since
// we don't know which Flight build this will end up being used
// with.
x.$$typeof === Ln || x.getModuleId !== void 0));
}
function Rp(x, E) {
wo(x) || W("memo: The first argument must be a component. Instead received: %s", x === null ? "null" : typeof x);
var D = {
$$typeof: p,
type: x,
compare: E === void 0 ? null : E
};
{
var L;
Object.defineProperty(D, "displayName", {
enumerable: !1,
configurable: !0,
get: function() {
return L;
},
set: function(J) {
L = J, !x.name && !x.displayName && (x.displayName = J);
}
});
}
return D;
}
function at() {
var x = _.current;
return x === null && W(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
1. You might have mismatching versions of React and the renderer (such as React DOM)
2. You might be breaking the Rules of Hooks
3. You might have more than one copy of React in the same app
See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.`), x;
}
function Mp(x) {
var E = at();
if (x._context !== void 0) {
var D = x._context;
D.Consumer === x ? W("Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?") : D.Provider === x && W("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?");
}
return E.useContext(x);
}
function Dp(x) {
var E = at();
return E.useState(x);
}
function Fp(x, E, D) {
var L = at();
return L.useReducer(x, E, D);
}
function Lp(x) {
var E = at();
return E.useRef(x);
}
function zp(x, E) {
var D = at();
return D.useEffect(x, E);
}
function Wp(x, E) {
var D = at();
return D.useInsertionEffect(x, E);
}
function Vp(x, E) {
var D = at();
return D.useLayoutEffect(x, E);
}
function Hp(x, E) {
var D = at();
return D.useCallback(x, E);
}
function Gp(x, E) {
var D = at();
return D.useMemo(x, E);
}
function Up(x, E, D) {
var L = at();
return L.useImperativeHandle(x, E, D);
}
function Bp(x, E) {
{
var D = at();
return D.useDebugValue(x, E);
}
}
function Yp() {
var x = at();
return x.useTransition();
}
function qp(x) {
var E = at();
return E.useDeferredValue(x);
}
function Kp() {
var x = at();
return x.useId();
}
function Xp(x, E, D) {
var L = at();
return L.useSyncExternalStore(x, E, D);
}
var fn = 0, Es, As, Ps, Cs, Ns, Ts, Is;
function js() {
}
js.__reactDisabledLog = !0;
function Jp() {
{
if (fn === 0) {
Es = console.log, As = console.info, Ps = console.warn, Cs = console.error, Ns = console.group, Ts = console.groupCollapsed, Is = console.groupEnd;
var x = {
configurable: !0,
enumerable: !0,
value: js,
writable: !0
};
Object.defineProperties(console, {
info: x,
log: x,
warn: x,
error: x,
group: x,
groupCollapsed: x,
groupEnd: x
});
}
fn++;
}
}
function Qp() {
{
if (fn--, fn === 0) {
var x = {
configurable: !0,
enumerable: !0,
writable: !0
};
Object.defineProperties(console, {
log: O({}, x, {
value: Es
}),
info: O({}, x, {
value: As
}),
warn: O({}, x, {
value: Ps
}),
error: O({}, x, {
value: Cs
}),
group: O({}, x, {
value: Ns
}),
groupCollapsed: O({}, x, {
value: Ts
}),
groupEnd: O({}, x, {
value: Is
})
});
}
fn < 0 && W("disabledDepth fell below zero. This is a bug in React. Please file an issue.");
}
}
var Wo = H.ReactCurrentDispatcher, Vo;
function zn(x, E, D) {
{
if (Vo === void 0)
try {
throw Error();
} catch (J) {
var L = J.stack.trim().match(/\n( *(at )?)/);
Vo = L && L[1] || "";
}
return `
` + Vo + x;
}
}
var Ho = !1, Wn;
{
var Zp = typeof WeakMap == "function" ? WeakMap : Map;
Wn = new Zp();
}
function Rs(x, E) {
if (!x || Ho)
return "";
{
var D = Wn.get(x);
if (D !== void 0)
return D;
}
var L;
Ho = !0;
var J = Error.prepareStackTrace;
Error.prepareStackTrace = void 0;
var ie;
ie = Wo.current, Wo.current = null, Jp();
try {
if (E) {
var re = function() {
throw Error();
};
if (Object.defineProperty(re.prototype, "props", {
set: function() {
throw Error();
}
}), typeof Reflect == "object" && Reflect.construct) {
try {
Reflect.construct(re, []);
} catch (tt) {
L = tt;
}
Reflect.construct(x, [], re);
} else {
try {
re.call();
} catch (tt) {
L = tt;
}
x.call(re.prototype);
}
} else {
try {
throw Error();
} catch (tt) {
L = tt;
}
x();
}
} catch (tt) {
if (tt && L && typeof tt.stack == "string") {
for (var se = tt.stack.split(`
`), pe = L.stack.split(`
`), Ce = se.length - 1, je = pe.length - 1; Ce >= 1 && je >= 0 && se[Ce] !== pe[je]; )
je--;
for (; Ce >= 1 && je >= 0; Ce--, je--)
if (se[Ce] !== pe[je]) {
if (Ce !== 1 || je !== 1)
do
if (Ce--, je--, je < 0 || se[Ce] !== pe[je]) {
var Re = `
` + se[Ce].replace(" at new ", " at ");
return x.displayName && Re.includes("<anonymous>") && (Re = Re.replace("<anonymous>", x.displayName)), typeof x == "function" && Wn.set(x, Re), Re;
}
while (Ce >= 1 && je >= 0);
break;
}
}
} finally {
Ho = !1, Wo.current = ie, Qp(), Error.prepareStackTrace = J;
}
var Me = x ? x.displayName || x.name : "", Fe = Me ? zn(Me) : "";
return typeof x == "function" && Wn.set(x, Fe), Fe;
}
function em(x, E, D) {
return Rs(x, !1);
}
function tm(x) {
var E = x.prototype;
return !!(E && E.isReactComponent);
}
function Vn(x, E, D) {
if (x == null)
return "";
if (typeof x == "function")
return Rs(x, tm(x));
if (typeof x == "string")
return zn(x);
switch (x) {
case l:
return zn("Suspense");
case f:
return zn("SuspenseList");
}
if (typeof x == "object")
switch (x.$$typeof) {
case d:
return em(x.render);
case p:
return Vn(x.type, E, D);
case y: {
var L = x, J = L._payload, ie = L._init;
try {
return Vn(ie(J), E, D);
} catch {
}
}
}
return "";
}
var Ms = {}, Ds = H.ReactDebugCurrentFrame;
function Hn(x) {
if (x) {
var E = x._owner, D = Vn(x.type, x._source, E ? E.type : null);
Ds.setExtraStackFrame(D);
} else
Ds.setExtraStackFrame(null);
}
function rm(x, E, D, L, J) {
{
var ie = Function.call.bind(ot);
for (var re in x)
if (ie(x, re)) {
var se = void 0;
try {
if (typeof x[re] != "function") {
var pe = Error((L || "React class") + ": " + D + " type `" + re + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof x[re] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");
throw pe.name = "Invariant Violation", pe;
}
se = x[re](E, re, L, D, null, "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");
} catch (Ce) {
se = Ce;
}
se && !(se instanceof Error) && (Hn(J), W("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).", L || "React class", D, re, typeof se), Hn(null)), se instanceof Error && !(se.message in Ms) && (Ms[se.message] = !0, Hn(J), W("Failed %s type: %s", D, se.message), Hn(null));
}
}
}
function Zr(x) {
if (x) {
var E = x._owner, D = Vn(x.type, x._source, E ? E.type : null);
Y(D);
} else
Y(null);
}
var Go;
Go = !1;
function Fs() {
if (F.current) {
var x = fe(F.current.type);
if (x)
return `
Check the render method of \`` + x + "`.";
}
return "";
}
function nm(x) {
if (x !== void 0) {
var E = x.fileName.replace(/^.*[\\\/]/, ""), D = x.lineNumber;
return `
Check your code at ` + E + ":" + D + ".";
}
return "";
}
function om(x) {
return x != null ? nm(x.__source) : "";
}
var Ls = {};
function am(x) {
var E = Fs();
if (!E) {
var D = typeof x == "string" ? x : x.displayName || x.name;
D && (E = `
Check the top-level render call using <` + D + ">.");
}
return E;
}
function zs(x, E) {
if (!(!x._store || x._store.validated || x.key != null)) {
x._store.validated = !0;
var D = am(E);
if (!Ls[D]) {
Ls[D] = !0;
var L = "";
x && x._owner && x._owner !== F.current && (L = " It was passed a child from " + fe(x._owner.type) + "."), Zr(x), W('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.', D, L), Zr(null);
}
}
}
function Ws(x, E) {
if (typeof x == "object") {
if (oe(x))
for (var D = 0; D < x.length; D++) {
var L = x[D];
yr(L) && zs(L, E);
}
else if (yr(x))
x._store && (x._store.validated = !0);
else if (x) {
var J = $(x);
if (typeof J == "function" && J !== x.entries)
for (var ie = J.call(x), re; !(re = ie.next()).done; )
yr(re.value) && zs(re.value, E);
}
}
}
function Vs(x) {
{
var E = x.type;
if (E == null || typeof E == "string")
return;
var D;
if (typeof E == "function")
D = E.propTypes;
else if (typeof E == "object" && (E.$$typeof === d || // Note: Memo only checks outer props here.
// Inner props are checked in the reconciler.
E.$$typeof === p))
D = E.propTypes;
else
return;
if (D) {
var L = fe(E);
rm(D, x.props, "prop", L, x);
} else if (E.PropTypes !== void 0 && !Go) {
Go = !0;
var J = fe(E);
W("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?", J || "Unknown");
}
typeof E.getDefaultProps == "function" && !E.getDefaultProps.isReactClassApproved && W("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.");
}
}
function im(x) {
{
for (var E = Object.keys(x.props), D = 0; D < E.length; D++) {
var L = E[D];
if (L !== "children" && L !== "key") {
Zr(x), W("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.", L), Zr(null);
break;
}
}
x.ref !== null && (Zr(x), W("Invalid attribute `ref` supplied to `React.Fragment`."), Zr(null));
}
}
function Hs(x, E, D) {
var L = wo(x);
if (!L) {
var J = "";
(x === void 0 || typeof x == "object" && x !== null && Object.keys(x).length === 0) && (J += " You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");
var ie = om(E);
ie ? J += ie : J += Fs();
var re;
x === null ? re = "null" : oe(x) ? re = "array" : x !== void 0 && x.$$typeof === n ? (re = "<" + (fe(x.type) || "Unknown") + " />", J = " Did you accidentally export a JSX literal instead of a component?") : re = typeof x, W("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s", re, J);
}
var se = vo.apply(this, arguments);
if (se == null)
return se;
if (L)
for (var pe = 2; pe < arguments.length; pe++)
Ws(arguments[pe], x);
return x === a ? im(se) : Vs(se), se;
}
var Gs = !1;
function sm(x) {
var E = Hs.bind(null, x);
return E.type = x, Gs || (Gs = !0, U("React.createFactory() is deprecated and will be removed in a future major release. Consider using JSX or use React.createElement() directly instead.")), Object.defineProperty(E, "type", {
enumerable: !1,
get: function() {
return U("Factory.type is deprecated. Access the class directly before passing it to createFactory."), Object.defineProperty(this, "type", {
value: x
}), x;
}
}), E;
}
function lm(x, E, D) {
for (var L = Do.apply(this, arguments), J = 2; J < arguments.length; J++)
Ws(arguments[J], L.type);
return Vs(L), L;
}
function cm(x, E) {
var D = S.transition;
S.transition = {};
var L = S.transition;
S.transition._updatedFibers = /* @__PURE__ */ new Set();
try {
x();
} finally {
if (S.transition = D, D === null && L._updatedFibers) {
var J = L._updatedFibers.size;
J > 10 && U("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."), L._updatedFibers.clear();
}
}
}
var Us = !1, Gn = null;
function um(x) {
if (Gn === null)
try {
var E = ("require" + Math.random()).slice(0, 7), D = e && e[E];
Gn = D.call(e, "timers").setImmediate;
} catch {
Gn = function(L) {
Us === !1 && (Us = !0, typeof MessageChannel > "u" && W("This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."));
var J = new MessageChannel();
J.port1.onmessage = L, J.port2.postMessage(void 0);
};
}
return Gn(x);
}
var en = 0, Bs = !1;
function Ys(x) {
{
var E = en;
en++, b.current === null && (b.current = []);
var D = b.isBatchingLegacy, L;
try {
if (b.isBatchingLegacy = !0, L = x(), !D && b.didScheduleLegacyUpdate) {
var J = b.current;
J !== null && (b.didScheduleLegacyUpdate = !1, Yo(J));
}
} catch (Me) {
throw Un(E), Me;
} finally {
b.isBatchingLegacy = D;
}
if (L !== null && typeof L == "object" && typeof L.then == "function") {
var ie = L, re = !1, se = {
then: function(Me, Fe) {
re = !0, ie.then(function(tt) {
Un(E), en === 0 ? Uo(tt, Me, Fe) : Me(tt);
}, function(tt) {
Un(E), Fe(tt);
});
}
};
return !Bs && typeof Promise < "u" && Promise.resolve().then(function() {
}).then(function() {
re || (Bs = !0, W("You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);"));
}), se;
} else {
var pe = L;
if (Un(E), en === 0) {
var Ce = b.current;
Ce !== null && (Yo(Ce), b.current = null);
var je = {
then: function(Me, Fe) {
b.current === null ? (b.current = [], Uo(pe, Me, Fe)) : Me(pe);
}
};
return je;
} else {
var Re = {
then: function(Me, Fe) {
Me(pe);
}
};
return Re;
}
}
}
}
function Un(x) {
x !== en - 1 && W("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "), en = x;
}
function Uo(x, E, D) {
{
var L = b.current;
if (L !== null)
try {
Yo(L), um(function() {
L.length === 0 ? (b.current = null, E(x)) : Uo(x, E, D);
});
} catch (J) {
D(J);
}
else
E(x);
}
}
var Bo = !1;
function Yo(x) {
if (!Bo) {
Bo = !0;
var E = 0;
try {
for (; E < x.length; E++) {
var D = x[E];
do
D = D(!0);
while (D !== null);
}
x.length = 0;
} catch (L) {
throw x = x.slice(E + 1), L;
} finally {
Bo = !1;
}
}
}
var fm = Hs, dm = lm, pm = sm, mm = {
map: wr,
forEach: sn,
count: Dn,
toArray: nn,
only: mn
};
t.Children = mm, t.Component = A, t.Fragment = a, t.Profiler = s, t.PureComponent = j, t.StrictMode = i, t.Suspense = l, t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = H, t.act = Ys, t.cloneElement = dm, t.createContext = xo, t.createElement = fm, t.createFactory = pm, t.createRef = Q, t.forwardRef = Fn, t.isValidElement = yr, t.lazy = zo, t.memo = Rp, t.startTransition = cm, t.unstable_act = Ys, t.useCallback = Hp, t.useContext = Mp, t.useDebugValue = Bp, t.useDeferredValue = qp, t.useEffect = zp, t.useId = Kp, t.useImperativeHandle = Up, t.useInsertionEffect = Wp, t.useLayoutEffect = Vp, t.useMemo = Gp, t.useReducer = Fp, t.useRef = Lp, t.useState = Dp, t.useSyncExternalStore = Xp, t.useTransition = Yp, t.version = r, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());
}();
}(Xv, Xv.exports)), Xv.exports;
}
var mD;
function lNe() {
return mD || (mD = 1, process.env.NODE_ENV === "production" ? bk.exports = iNe() : bk.exports = sNe()), bk.exports;
}
lNe();
function DJ() {
return typeof window < "u" && ("__TAURI_INTERNALS__" in window || "__TAURI__" in window);
}
window.IsDesktopApp = DJ;
function gn(e, t, r, n) {
if (typeof t == "function" ? e !== t || !0 : !t.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
return r === "m" ? n : r === "a" ? n.call(e) : n ? n.value : t.get(e);
}
function Vm(e, t, r, n, o) {
if (typeof t == "function" ? e !== t || !0 : !t.has(e)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
return t.set(e, r), r;
}
var Jc, ko, bf, Jy;
const hD = "__TAURI_TO_IPC_KEY__";
function cNe(e, t = !1) {
return window.__TAURI_INTERNALS__.transformCallback(e, t);
}
let uNe = class {
constructor(t) {
Jc.set(this, void 0), ko.set(this, 0), bf.set(this, []), Jy.set(this, void 0), Vm(this, Jc, t || (() => {
})), this.id = cNe((r) => {
const n = r.index;
if ("end" in r) {
n == gn(this, ko, "f") ? this.cleanupCallback() : Vm(this, Jy, n);
return;
}
const o = r.message;
if (n == gn(this, ko, "f")) {
for (gn(this, Jc, "f").call(this, o), Vm(this, ko, gn(this, ko, "f") + 1); gn(this, ko, "f") in gn(this, bf, "f"); ) {
const a = gn(this, bf, "f")[gn(this, ko, "f")];
gn(this, Jc, "f").call(this, a), delete gn(this, bf, "f")[gn(this, ko, "f")], Vm(this, ko, gn(this, ko, "f") + 1);
}
gn(this, ko, "f") === gn(this, Jy, "f") && this.cleanupCallback();
} else
gn(this, bf, "f")[n] = o;
});
}
cleanupCallback() {
window.__TAURI_INTERNALS__.unregisterCallback(this.id);
}
set onmessage(t) {
Vm(this, Jc, t);
}
get onmessage() {
return gn(this, Jc, "f");
}
[(Jc = /* @__PURE__ */ new WeakMap(), ko = /* @__PURE__ */ new WeakMap(), bf = /* @__PURE__ */ new WeakMap(), Jy = /* @__PURE__ */ new WeakMap(), hD)]() {
return `__CHANNEL__:${this.id}`;
}
toJSON() {
return this[hD]();
}
};
async function Qy(e, t = {}, r) {
return window.__TAURI_INTERNALS__.invoke(e, t, r);
}
const Zy = "Request cancelled";
async function gD(e, t) {
const r = t == null ? void 0 : t.signal;
if (r != null && r.aborted)
throw new Error(Zy);
const n = t == null ? void 0 : t.maxRedirections, o = t == null ? void 0 : t.connectTimeout, a = t == null ? void 0 : t.proxy, i = t == null ? void 0 : t.danger;
t && (delete t.maxRedirections, delete t.connectTimeout, delete t.proxy, delete t.danger);
const s = t != null && t.headers ? t.headers instanceof Headers ? t.headers : new Headers(t.headers) : new Headers(), u = new Request(e, t), c = await u.arrayBuffer(), d = c.byteLength !== 0 ? Array.from(new Uint8Array(c)) : null;
for (const [b, F] of u.headers)
s.get(b) || s.set(b, F);
const l = (s instanceof Headers ? Array.from(s.entries()) : Array.isArray(s) ? s : Object.entries(s)).map(([b, F]) => [
b,
// we need to ensure we have all header values as strings
// eslint-disable-next-line
typeof F == "string" ? F : F.toString()
]);
if (r != null && r.aborted)
throw new Error(Zy);
const f = await Qy("plugin:http|fetch", {
clientConfig: {
method: u.method,
url: u.url,
headers: l,
data: d,
maxRedirections: n,
connectTimeout: o,
proxy: a,
danger: i
}
}), p = () => Qy("plugin:http|fetch_cancel", { rid: f });
if (r != null && r.aborted)
throw p(), new Error(Zy);
r == null || r.addEventListener("abort", () => void p());
const { status: y, statusText: m, url: h, headers: w, rid: $ } = await Qy("plugin:http|fetch_send", {
rid: f
}), _ = [101, 103, 204, 205, 304].includes(y) ? null : new ReadableStream({
start: (b) => {
const F = new uNe();
F.onmessage = (z) => {
if (r != null && r.aborted) {
b.error(Zy);
return;
}
const q = new Uint8Array(z), Y = q[q.byteLength - 1], B = q.slice(0, q.byteLength - 1);
if (Y == 1) {
b.close();
return;
}
b.enqueue(B);
}, Qy("plugin:http|fetch_read_body", {
rid: $,
streamChannel: F
}).catch((z) => {
b.error(z);
});
}
}), S = new Response(_, {
status: y,
statusText: m
});
return Object.defineProperty(S, "url", { value: h }), Object.defineProperty(S, "headers", {
value: new Headers(w)
}), S;
}
function r0(e, t) {
return DJ() ? t !== void 0 ? gD(e, t) : gD(e) : t !== void 0 ? fetch(e, t) : fetch(e);
}
window.FetchProxy = r0;
let fNe = class {
constructor() {
RJ(this, "ApiTargets", {}), this.ApiTargets = {
GoggleApi: gh.GOOGLE_API,
FunnelApi: gh.FUNNEL_API,
CdnApi: gh.CDN_API,
GravatarApi: gh.GRAVATAR_API
};
}
getApiSchemeAndHost() {
return aNe.getInstance().getApiSchemeAndHost();
}
async fetch(t, {
method: r,
query: n,
body: o
}) {
const a = n && Object.entries(n).reduce(
(c, [d, l]) => (l && (c[d] = l.toString()), c),
{}
), i = a ? t + "?" + new URLSearchParams(a) : t, s = JSON.stringify(o), u = await r0(i, {
method: r,
headers: {
Accept: "application/json",
"Content-Type": "application/json"
},
credentials: "include",
body: s
});
if (!u.ok)
throw new Error(`HTTP error! status: ${u.status}`);
return u.json();
}
async fetchMultipartFormData(t, {
method: r,
body: n
}) {
return (await r0(t, {
method: r,
headers: {
Accept: "application/json"
},
credentials: "include",
body: n
})).json();
}
get({
endpoint: t,
query: r
}) {
return this.fetch(t, { method: "GET", query: r });
}
post({
endpoint: t,
query: r,
body: n
}) {
return this.fetch(t, {
method: "POST",
query: r,
body: n
});
}
delete({
endpoint: t,
query: r,
body: n
}) {
return this.fetch(t, {
method: "DELETE",
query: r,
body: n
});
}
async postFormVideo({
endpoint: t,
formRecord: r,
uuid: n,
blob: o,
blobFileName: a
}) {
const i = new FormData();
return i.append("uuid_idempotency_token", n), Object.entries(r).forEach(([s, u]) => {
i.append(s, u);
}), o && a ? i.append("video", o, a) : o && i.append("video", o), this.fetchMultipartFormData(t, {
method: "POST",
body: i
});
}
async postForm({
endpoint: t,
formRecord: r,
uuid: n,
blob: o,
blobFileName: a
}) {
const i = new FormData();
return i.append("uuid_idempotency_token", n), Object.entries(r).forEach(([s, u]) => {
i.append(s, u);
}), o && a ? i.append("file", o, a) : o && i.append("file", o), this.fetchMultipartFormData(t, {
method: "POST",
body: i
});
}
camelToSnakeCase(t) {
return t.replace(/([a-z0])([A-Z])/g, "$1_$2").toLowerCase();
}
parseQueryValues(t) {
return Object.entries(t).reduce(
(r, [n, o]) => {
if (!o)
return r;
const a = this.camelToSnakeCase(n);
return Array.isArray(o) ? { ...r, [a]: o.join(",") } : { ...r, [a]: o.toString() };
},
{}
);
}
parseBodyValues(t) {
return Object.entries(t).reduce((r, [n, o]) => {
if (!o)
return r;
const a = this.camelToSnakeCase(n);
return Array.isArray(o) ? { ...r, [a]: o } : { ...r, [a]: o };
}, {});
}
};
var bD;
(function(e) {
e[e.Audio = 1] = "Audio", e[e.Cache = 2] = "Cache", e[e.Config = 3] = "Config", e[e.Data = 4] = "Data", e[e.LocalData = 5] = "LocalData", e[e.Document = 6] = "Document", e[e.Download = 7] = "Download", e[e.Picture = 8] = "Picture", e[e.Public = 9] = "Public", e[e.Video = 10] = "Video", e[e.Resource = 11] = "Resource", e[e.Temp = 12] = "Temp", e[e.AppConfig = 13] = "AppConfig", e[e.AppData = 14] = "AppData", e[e.AppLocalData = 15] = "AppLocalData", e[e.AppCache = 16] = "AppCache", e[e.AppLog = 17] = "AppLog", e[e.Desktop = 18] = "Desktop", e[e.Executable = 19] = "Executable", e[e.Font = 20] = "Font", e[e.Home = 21] = "Home", e[e.Runtime = 22] = "Runtime", e[e.Template = 23] = "Template";
})(bD || (bD = {}));
let dNe = class extends fNe {
async authFetch(t, {
method: r,
body: n
}) {
const o = JSON.stringify(n);
return await (await r0(t, {
method: r,
headers: {
Accept: "application/json",
"Content-Type": "application/json"
},
credentials: "include",
body: o
})).json();
}
GetSession() {
const t = `${this.getApiSchemeAndHost()}/v1/session`;
return this.get({ endpoint: t }).then((r) => ({
success: r.success,
data: {
loggedIn: r.logged_in,
user: r.user
}
})).catch((r) => ({
success: !1,
errorMessage: r.message
}));
}
GetUserProfile(t) {
const r = `${this.getApiSchemeAndHost()}/v1/user/${t}/profile`;
return console.log("endpoint", r), this.get({ endpoint: r }).then((n) => ({
success: n.success,
data: {
user: n.user
}
})).catch((n) => ({
success: !1,
errorMessage: n.message
}));
}
async Login({
usernameOrEmail: t,
password: r
}) {
console.log("libs/api - Logging in with usernameOrEmail:", t);
const n = `${this.getApiSchemeAndHost()}/v1/login`;
console.log("libs/api - Login endpoint", n);
const o = {
username_or_email: t,
password: r
};
try {
const a = await this.authFetch(n, {
method: "POST",
body: o
});
return {
success: a.success,
data: a.success ? { signedSession: a.signed_session } : void 0,
errorMessage: a.error_message
};
} catch (a) {
return {
success: !1,
errorMessage: a.message
};
}
}
Logout() {
const t = `${this.getApiSchemeAndHost()}/v1/logout`;
return this.post({
endpoint: t
}).then((r) => ({
success: r.success
})).catch((r) => ({
success: !1,
errorMessage: r.message
}));
}
async Signup({
username: t,
email: r,
password: n,
passwordConfirmation: o,
signupSource: a
}) {
const i = `${this.getApiSchemeAndHost()}/v1/create_account`, s = {
email_address: r,
password: n,
password_confirmation: o,
username: t
};
a && (s.signup_source = a);
try {
const u = await this.authFetch(i, {
method: "POST",
body: s
});
return {
success: u.success,
data: u.success ? { signedSession: u.signed_session } : void 0,
errorMessage: u.error_message || Object.values(u.error_fields ?? {}).join(", ")
};
} catch (u) {
return {
success: !1,
errorMessage: u.message
};
}
}
};
window.UsersApi = new dNe();
const yD = (e) => {
let t;
const r = /* @__PURE__ */ new Set(), n = (s, u) => {
const c = typeof s == "function" ? s(t) : s;
if (!Object.is(c, t)) {
const d = t;
t = u ?? (typeof c != "object" || c === null) ? c : Object.assign({}, t, c), r.forEach((l) => l(t, d));
}
}, o = () => t, a = { setState: n, getState: o, getInitialState: () => i, subscribe: (s) => (r.add(s), () => r.delete(s)) }, i = t = e(n, o, a);
return a;
}, pNe = (e) => e ? yD(e) : yD, mNe = (e) => e;
function hNe(e, t = mNe) {
const r = ae.useSyncExternalStore(
e.subscribe,
() => t(e.getState()),
() => t(e.getInitialState())
);
return ae.useDebugValue(r), r;
}
const vD = (e) => {
const t = pNe(e), r = (n) => hNe(t, n);
return Object.assign(r, t), r;
}, gNe = (e) => e ? vD(e) : vD, bNe = gNe((e) => ({
isOpen: !1,
recheckTrigger: 0,
openModal: () => e({ isOpen: !0 }),
closeModal: () => e({ isOpen: !1 }),
triggerRecheck: () => e((t) => ({ recheckTrigger: t.recheckTrigger + 1 }))
})), xD = new eK(), yNe = ({
globalAccountLogoutCallback: e
}) => {
const { triggerRecheck: t } = bNe(), [r, n] = de(
void 0
), [o, a] = de(!1), [i, s] = de(!1);
ue(() => {
(async () => {
var d, l;
s(!0);
try {
const f = await xD.GetSession();
console.log(">>> result", f), n((d = f == null ? void 0 : f.data) == null ? void 0 : d.user), a(((l = f == null ? void 0 : f.data) == null ? void 0 : l.loggedIn) || !1);
} catch (f) {
console.error("Error fetching Artcraft session", f), n(void 0), a(!1);
} finally {
s(!1);
}
})();
}, []);
const u = async () => {
i || (o && (s(!0), await xD.Logout(), n(void 0), a(!1), s(!1), e()), t());
};
return /* @__PURE__ */ Te("div", { className: "flex justify-between items-center", children: [
/* @__PURE__ */ K("span", { children: "ArtCraft Account:" }),
/* @__PURE__ */ K("pre", { children: r == null ? void 0 : r.display_name }),
/* @__PURE__ */ K(
Io,
{
variant: i ? "secondary" : o ? "destructive" : "primary",
className: "h-[30px]",
onClick: u,
disabled: i,
children: i ? /* @__PURE__ */ K(
To,
{
icon: nx,
className: "animate-spin text-sm"
}
) : o ? "Log Out" : "Log In"
}
)
] });
}, _C = "-", vNe = (e) => {
const t = wNe(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(_C);
return a[0] === "" && a.length !== 1 && a.shift(), FJ(a, t) || xNe(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, FJ = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? FJ(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(_C);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, wD = /^\[(.+)\]$/, xNe = (e) => {
if (wD.test(e)) {
const t = wD.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, wNe = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return kNe(Object.entries(e.classGroups), r).forEach(([o, a]) => {
_A(a, n, o, t);
}), n;
}, _A = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : $D(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if ($Ne(o)) {
_A(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
_A(i, $D(t, a), r, n);
});
});
}, $D = (e, t) => {
let r = e;
return t.split(_C).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, $Ne = (e) => e.isThemeGetter, kNe = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, _Ne = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, LJ = "!", ONe = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith(LJ), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, SNe = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, ENe = (e) => ({
cache: _Ne(e.cacheSize),
parseClassName: ONe(e),
...vNe(e)
}), ANe = /\s+/, PNe = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(ANe);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = SNe(d).join(":"), w = l ? h + LJ : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function CNe() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = zJ(t)) && (n && (n += " "), n += r);
return n;
}
const zJ = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = zJ(e[n])) && (r && (r += " "), r += t);
return r;
};
function NNe(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = ENe(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = PNe(u, r);
return o(u, d), d;
}
return function() {
return a(CNe.apply(null, arguments));
};
}
const Tr = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, WJ = /^\[(?:([a-z-]+):)?(.+)\]$/i, TNe = /^\d+\/\d+$/, INe = /* @__PURE__ */ new Set(["px", "full", "screen"]), jNe = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, RNe = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, MNe = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, DNe = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, FNe = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Si = (e) => wd(e) || INe.has(e) || TNe.test(e), kl = (e) => xp(e, "length", BNe), wd = (e) => !!e && !Number.isNaN(Number(e)), yk = (e) => xp(e, "number", wd), Hm = (e) => !!e && Number.isInteger(Number(e)), LNe = (e) => e.endsWith("%") && wd(e.slice(0, -1)), bt = (e) => WJ.test(e), _l = (e) => jNe.test(e), zNe = /* @__PURE__ */ new Set(["length", "size", "percentage"]), WNe = (e) => xp(e, zNe, VJ), VNe = (e) => xp(e, "position", VJ), HNe = /* @__PURE__ */ new Set(["image", "url"]), GNe = (e) => xp(e, HNe, qNe), UNe = (e) => xp(e, "", YNe), Gm = () => !0, xp = (e, t, r) => {
const n = WJ.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, BNe = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
RNe.test(e) && !MNe.test(e)
), VJ = () => !1, YNe = (e) => DNe.test(e), qNe = (e) => FNe.test(e), KNe = () => {
const e = Tr("colors"), t = Tr("spacing"), r = Tr("blur"), n = Tr("brightness"), o = Tr("borderColor"), a = Tr("borderRadius"), i = Tr("borderSpacing"), s = Tr("borderWidth"), u = Tr("contrast"), c = Tr("grayscale"), d = Tr("hueRotate"), l = Tr("invert"), f = Tr("gap"), p = Tr("gradientColorStops"), y = Tr("gradientColorStopPositions"), m = Tr("inset"), h = Tr("margin"), w = Tr("opacity"), $ = Tr("padding"), _ = Tr("saturate"), S = Tr("scale"), b = Tr("sepia"), F = Tr("skew"), z = Tr("space"), q = Tr("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", bt, t], M = () => [bt, t], te = () => ["", Si, kl], G = () => ["auto", wd, bt], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", bt], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [wd, bt];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [Gm],
spacing: [Si, kl],
blur: ["none", "", _l, bt],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", _l, bt],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [LNe, kl],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", bt]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [_l]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), bt]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", Hm, bt]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", bt]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", Hm, bt]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [Gm]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", Hm, bt]
}, bt]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [Gm]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [Hm, bt]
}, bt]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", bt]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", bt]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", bt, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [bt, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [bt, t, "none", "full", "min", "max", "fit", "prose", {
screen: [_l]
}, _l]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [bt, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [bt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [bt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [bt, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", _l, kl]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", yk]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [Gm]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", bt]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", wd, yk]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", Si, bt]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", bt]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", bt]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", Si, kl]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", Si, bt]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", bt]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", bt]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), VNe]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", WNe]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, GNe]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [Si, bt]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [Si, kl]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [Si, kl]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", _l, UNe]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [Gm]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", _l, bt]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", bt]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", bt]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", bt]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [Hm, bt]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", bt]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", bt]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", bt]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [Si, kl, yk]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, vk = /* @__PURE__ */ NNe(KNe);
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function XNe(e, t, r) {
return (t = QNe(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function kD(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function ke(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? kD(Object(r), !0).forEach(function(n) {
XNe(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : kD(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function JNe(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function QNe(e) {
var t = JNe(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const _D = () => {
};
let OC = {}, HJ = {}, GJ = null, UJ = {
mark: _D,
measure: _D
};
try {
typeof window < "u" && (OC = window), typeof document < "u" && (HJ = document), typeof MutationObserver < "u" && (GJ = MutationObserver), typeof performance < "u" && (UJ = performance);
} catch {
}
const {
userAgent: OD = ""
} = OC.navigator || {}, Cc = OC, Gr = HJ, SD = GJ, ev = UJ;
Cc.document;
const ws = !!Gr.documentElement && !!Gr.head && typeof Gr.addEventListener == "function" && typeof Gr.createElement == "function", BJ = ~OD.indexOf("MSIE") || ~OD.indexOf("Trident/");
var ZNe = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, eTe = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, YJ = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, tTe = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, qJ = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], En = "classic", Bx = "duotone", rTe = "sharp", nTe = "sharp-duotone", KJ = [En, Bx, rTe, nTe], oTe = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, aTe = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, iTe = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), sTe = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, lTe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], ED = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, cTe = ["kit"], uTe = {
kit: {
"fa-kit": "fak"
}
}, fTe = ["fak", "fakd"], dTe = {
kit: {
fak: "fa-kit"
}
}, AD = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, tv = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, pTe = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], mTe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], hTe = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, gTe = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, bTe = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, OA = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, yTe = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], SA = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...pTe, ...yTe], vTe = ["solid", "regular", "light", "thin", "duotone", "brands"], XJ = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], xTe = XJ.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), wTe = [...Object.keys(bTe), ...vTe, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", tv.GROUP, tv.SWAP_OPACITY, tv.PRIMARY, tv.SECONDARY].concat(XJ.map((e) => "".concat(e, "x"))).concat(xTe.map((e) => "w-".concat(e))), $Te = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const rs = "___FONT_AWESOME___", EA = 16, JJ = "fa", QJ = "svg-inline--fa", Yu = "data-fa-i2svg", AA = "data-fa-pseudo-element", kTe = "data-fa-pseudo-element-pending", SC = "data-prefix", EC = "data-icon", PD = "fontawesome-i2svg", _Te = "async", OTe = ["HTML", "HEAD", "STYLE", "SCRIPT"], ZJ = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function Bb(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[En];
}
});
}
const eQ = ke({}, YJ);
eQ[En] = ke(ke(ke(ke({}, {
"fa-duotone": "duotone"
}), YJ[En]), ED.kit), ED["kit-duotone"]);
const STe = Bb(eQ), PA = ke({}, sTe);
PA[En] = ke(ke(ke(ke({}, {
duotone: "fad"
}), PA[En]), AD.kit), AD["kit-duotone"]);
const CD = Bb(PA), CA = ke({}, OA);
CA[En] = ke(ke({}, CA[En]), dTe.kit);
const AC = Bb(CA), NA = ke({}, gTe);
NA[En] = ke(ke({}, NA[En]), uTe.kit);
Bb(NA);
const ETe = ZNe, tQ = "fa-layers-text", ATe = eTe, PTe = ke({}, oTe);
Bb(PTe);
const CTe = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], xk = tTe, NTe = [...cTe, ...wTe], Jh = Cc.FontAwesomeConfig || {};
function TTe(e) {
var t = Gr.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function ITe(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Gr && typeof Gr.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = ITe(TTe(t));
n != null && (Jh[r] = n);
});
const rQ = {
styleDefault: "solid",
familyDefault: En,
cssPrefix: JJ,
replacementClass: QJ,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Jh.familyPrefix && (Jh.cssPrefix = Jh.familyPrefix);
const Ud = ke(ke({}, rQ), Jh);
Ud.autoReplaceSvg || (Ud.observeMutations = !1);
const qe = {};
Object.keys(rQ).forEach((e) => {
Object.defineProperty(qe, e, {
enumerable: !0,
set: function(t) {
Ud[e] = t, Qh.forEach((r) => r(qe));
},
get: function() {
return Ud[e];
}
});
});
Object.defineProperty(qe, "familyPrefix", {
enumerable: !0,
set: function(e) {
Ud.cssPrefix = e, Qh.forEach((t) => t(qe));
},
get: function() {
return Ud.cssPrefix;
}
});
Cc.FontAwesomeConfig = qe;
const Qh = [];
function jTe(e) {
return Qh.push(e), () => {
Qh.splice(Qh.indexOf(e), 1);
};
}
const Ol = EA, Ja = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function RTe(e) {
if (!e || !ws)
return;
const t = Gr.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Gr.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Gr.head.insertBefore(t, n), e;
}
const MTe = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function qg() {
let e = 12, t = "";
for (; e-- > 0; )
t += MTe[Math.random() * 62 | 0];
return t;
}
function wp(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function PC(e) {
return e.classList ? wp(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function nQ(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function DTe(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(nQ(e[r]), '" '), "").trim();
}
function Yx(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function CC(e) {
return e.size !== Ja.size || e.x !== Ja.x || e.y !== Ja.y || e.rotate !== Ja.rotate || e.flipX || e.flipY;
}
function FTe(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function LTe(e) {
let {
transform: t,
width: r = EA,
height: n = EA,
startCentered: o = !1
} = e, a = "";
return o && BJ ? a += "translate(".concat(t.x / Ol - r / 2, "em, ").concat(t.y / Ol - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / Ol, "em), calc(-50% + ").concat(t.y / Ol, "em)) ") : a += "translate(".concat(t.x / Ol, "em, ").concat(t.y / Ol, "em) "), a += "scale(".concat(t.size / Ol * (t.flipX ? -1 : 1), ", ").concat(t.size / Ol * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var zTe = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function oQ() {
const e = JJ, t = QJ, r = qe.cssPrefix, n = qe.replacementClass;
let o = zTe;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let ND = !1;
function wk() {
qe.autoAddCss && !ND && (RTe(oQ()), ND = !0);
}
var WTe = {
mixout() {
return {
dom: {
css: oQ,
insertCss: wk
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
wk();
},
beforeI2svg() {
wk();
}
};
}
};
const ns = Cc || {};
ns[rs] || (ns[rs] = {});
ns[rs].styles || (ns[rs].styles = {});
ns[rs].hooks || (ns[rs].hooks = {});
ns[rs].shims || (ns[rs].shims = []);
var Qa = ns[rs];
const aQ = [], iQ = function() {
Gr.removeEventListener("DOMContentLoaded", iQ), n0 = 1, aQ.map((e) => e());
};
let n0 = !1;
ws && (n0 = (Gr.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Gr.readyState), n0 || Gr.addEventListener("DOMContentLoaded", iQ));
function VTe(e) {
ws && (n0 ? setTimeout(e, 0) : aQ.push(e));
}
function Yb(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? nQ(e) : "<".concat(t, " ").concat(DTe(r), ">").concat(n.map(Yb).join(""), "</").concat(t, ">");
}
function TD(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var $k = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function HTe(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function sQ(e) {
const t = HTe(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function GTe(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function ID(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function TA(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = ID(t);
typeof Qa.hooks.addPack == "function" && !n ? Qa.hooks.addPack(e, ID(t)) : Qa.styles[e] = ke(ke({}, Qa.styles[e] || {}), o), e === "fas" && TA("fa", t);
}
const {
styles: Kg,
shims: UTe
} = Qa, lQ = Object.keys(AC), BTe = lQ.reduce((e, t) => (e[t] = Object.keys(AC[t]), e), {});
let NC = null, cQ = {}, uQ = {}, fQ = {}, dQ = {}, pQ = {};
function YTe(e) {
return ~NTe.indexOf(e);
}
function qTe(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !YTe(o) ? o : null;
}
const mQ = () => {
const e = (n) => $k(Kg, (o, a, i) => (o[i] = $k(a, n, {}), o), {});
cQ = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), uQ = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), pQ = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in Kg || qe.autoFetchSvg, r = $k(UTe, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
fQ = r.names, dQ = r.unicodes, NC = qx(qe.styleDefault, {
family: qe.familyDefault
});
};
jTe((e) => {
NC = qx(e.styleDefault, {
family: qe.familyDefault
});
});
mQ();
function TC(e, t) {
return (cQ[e] || {})[t];
}
function KTe(e, t) {
return (uQ[e] || {})[t];
}
function mu(e, t) {
return (pQ[e] || {})[t];
}
function hQ(e) {
return fQ[e] || {
prefix: null,
iconName: null
};
}
function XTe(e) {
const t = dQ[e], r = TC("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function Nc() {
return NC;
}
const gQ = () => ({
prefix: null,
iconName: null,
rest: []
});
function JTe(e) {
let t = En;
const r = lQ.reduce((n, o) => (n[o] = "".concat(qe.cssPrefix, "-").concat(o), n), {});
return KJ.forEach((n) => {
(e.includes(r[n]) || e.some((o) => BTe[n].includes(o))) && (t = n);
}), t;
}
function qx(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = En
} = t, n = STe[r][e];
if (r === Bx && !e)
return "fad";
const o = CD[r][e] || CD[r][n], a = e in Qa.styles ? e : null;
return o || a || null;
}
function QTe(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = qTe(qe.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function jD(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function Kx(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = SA.concat(mTe), a = jD(e.filter((l) => o.includes(l))), i = jD(e.filter((l) => !SA.includes(l))), s = a.filter((l) => (n = l, !qJ.includes(l))), [u = null] = s, c = JTe(a), d = ke(ke({}, QTe(i)), {}, {
prefix: qx(u, {
family: c
})
});
return ke(ke(ke({}, d), rIe({
values: e,
family: c,
styles: Kg,
config: qe,
canonical: d,
givenPrefix: n
})), ZTe(r, n, d));
}
function ZTe(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? hQ(o) : {}, i = mu(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !Kg.far && Kg.fas && !qe.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const eIe = KJ.filter((e) => e !== En || e !== Bx), tIe = Object.keys(OA).filter((e) => e !== En).map((e) => Object.keys(OA[e])).flat();
function rIe(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === Bx, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && eIe.includes(r) && (Object.keys(a).find((l) => tIe.includes(l)) || i.autoFetchSvg)) {
const l = iTe.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = mu(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = Nc() || "fas"), n;
}
let nIe = class {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = ke(ke({}, this.definitions[a] || {}), o[a]), TA(a, o[a]);
const i = AC[En][a];
i && TA(i, o[a]), mQ();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}, RD = [], Hf = {};
const $d = {}, oIe = Object.keys($d);
function aIe(e, t) {
let {
mixoutsTo: r
} = t;
return RD = e, Hf = {}, Object.keys($d).forEach((n) => {
oIe.indexOf(n) === -1 && delete $d[n];
}), RD.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Hf[i] || (Hf[i] = []), Hf[i].push(a[i]);
});
}
n.provides && n.provides($d);
}), r;
}
function IA(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Hf[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function qu(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Hf[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function Tc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return $d[e] ? $d[e].apply(null, t) : void 0;
}
function jA(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || Nc();
if (t)
return t = mu(r, t) || t, TD(bQ.definitions, r, t) || TD(Qa.styles, r, t);
}
const bQ = new nIe(), iIe = () => {
qe.autoReplaceSvg = !1, qe.observeMutations = !1, qu("noAuto");
}, sIe = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return ws ? (qu("beforeI2svg", e), Tc("pseudoElements2svg", e), Tc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
qe.autoReplaceSvg === !1 && (qe.autoReplaceSvg = !0), qe.observeMutations = !0, VTe(() => {
cIe({
autoReplaceSvgRoot: t
}), qu("watch", e);
});
}
}, lIe = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: mu(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = qx(e[0]);
return {
prefix: r,
iconName: mu(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(qe.cssPrefix, "-")) > -1 || e.match(ETe))) {
const t = Kx(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || Nc(),
iconName: mu(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = Nc();
return {
prefix: t,
iconName: mu(t, e) || e
};
}
}
}, mo = {
noAuto: iIe,
config: qe,
dom: sIe,
parse: lIe,
library: bQ,
findIconDefinition: jA,
toHtml: Yb
}, cIe = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Gr
} = e;
(Object.keys(Qa.styles).length > 0 || qe.autoFetchSvg) && ws && qe.autoReplaceSvg && mo.dom.i2svg({
node: t
});
};
function Xx(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => Yb(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!ws) return;
const r = Gr.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function uIe(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (CC(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = Yx(ke(ke({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function fIe(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(qe.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: ke(ke({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function IC(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = fTe.includes(n), m = [qe.replacementClass, o ? "".concat(qe.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: ke(ke({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[Yu] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || qg())
},
children: [s]
}), delete h.attributes.title);
const $ = ke(ke({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: ke(ke({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? Tc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : Tc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? fIe($) : uIe($);
}
function MD(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = ke(ke(ke({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[Yu] = "");
const c = ke({}, i.styles);
CC(o) && (c.transform = LTe({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = Yx(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function dIe(e) {
const {
content: t,
title: r,
extra: n
} = e, o = ke(ke(ke({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = Yx(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: kk
} = Qa;
function RA(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(qe.cssPrefix, "-").concat(xk.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(qe.cssPrefix, "-").concat(xk.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(qe.cssPrefix, "-").concat(xk.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const pIe = {
found: !1,
width: 512,
height: 512
};
function mIe(e, t) {
!ZJ && !qe.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function MA(e, t) {
let r = t;
return t === "fa" && qe.styleDefault !== null && (t = Nc()), new Promise((n, o) => {
if (r === "fa") {
const a = hQ(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && kk[t] && kk[t][e]) {
const a = kk[t][e];
return n(RA(a));
}
mIe(e, t), n(ke(ke({}, pIe), {}, {
icon: qe.showMissingIcons && e ? Tc("missingIconAbstract") || {} : {}
}));
});
}
const DD = () => {
}, DA = qe.measurePerformance && ev && ev.mark && ev.measure ? ev : {
mark: DD,
measure: DD
}, bh = 'FA "6.7.2"', hIe = (e) => (DA.mark("".concat(bh, " ").concat(e, " begins")), () => yQ(e)), yQ = (e) => {
DA.mark("".concat(bh, " ").concat(e, " ends")), DA.measure("".concat(bh, " ").concat(e), "".concat(bh, " ").concat(e, " begins"), "".concat(bh, " ").concat(e, " ends"));
};
var jC = {
begin: hIe,
end: yQ
};
const Jv = () => {
};
function FD(e) {
return typeof (e.getAttribute ? e.getAttribute(Yu) : null) == "string";
}
function gIe(e) {
const t = e.getAttribute ? e.getAttribute(SC) : null, r = e.getAttribute ? e.getAttribute(EC) : null;
return t && r;
}
function bIe(e) {
return e && e.classList && e.classList.contains && e.classList.contains(qe.replacementClass);
}
function yIe() {
return qe.autoReplaceSvg === !0 ? Qv.replace : Qv[qe.autoReplaceSvg] || Qv.replace;
}
function vIe(e) {
return Gr.createElementNS("http://www.w3.org/2000/svg", e);
}
function xIe(e) {
return Gr.createElement(e);
}
function vQ(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? vIe : xIe
} = t;
if (typeof e == "string")
return Gr.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(vQ(o, {
ceFn: r
}));
}), n;
}
function wIe(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const Qv = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(vQ(r), t);
}), t.getAttribute(Yu) === null && qe.keepOriginalSource) {
let r = Gr.createComment(wIe(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~PC(t).indexOf(qe.replacementClass))
return Qv.replace(e);
const n = new RegExp("".concat(qe.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === qe.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => Yb(a)).join(`
`);
t.setAttribute(Yu, ""), t.innerHTML = o;
}
};
function LD(e) {
e();
}
function xQ(e, t) {
const r = typeof t == "function" ? t : Jv;
if (e.length === 0)
r();
else {
let n = LD;
qe.mutateApproach === _Te && (n = Cc.requestAnimationFrame || LD), n(() => {
const o = yIe(), a = jC.begin("mutate");
e.map(o), a(), r();
});
}
}
let RC = !1;
function wQ() {
RC = !0;
}
function FA() {
RC = !1;
}
let o0 = null;
function zD(e) {
if (!SD || !qe.observeMutations)
return;
const {
treeCallback: t = Jv,
nodeCallback: r = Jv,
pseudoElementsCallback: n = Jv,
observeMutationsRoot: o = Gr
} = e;
o0 = new SD((a) => {
if (RC) return;
const i = Nc();
wp(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !FD(s.addedNodes[0]) && (qe.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && qe.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && FD(s.target) && ~CTe.indexOf(s.attributeName))
if (s.attributeName === "class" && gIe(s.target)) {
const {
prefix: u,
iconName: c
} = Kx(PC(s.target));
s.target.setAttribute(SC, u || i), c && s.target.setAttribute(EC, c);
} else bIe(s.target) && r(s.target);
});
}), ws && o0.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function $Ie() {
o0 && o0.disconnect();
}
function kIe(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function _Ie(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = Kx(PC(e));
return o.prefix || (o.prefix = Nc()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = KTe(o.prefix, e.innerText) || TC(o.prefix, sQ(e.innerText))), !o.iconName && qe.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function OIe(e) {
const t = wp(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return qe.autoA11y && (r ? t["aria-labelledby"] = "".concat(qe.replacementClass, "-title-").concat(n || qg()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function SIe() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: Ja,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function WD(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = _Ie(e), a = OIe(e), i = IA("parseNodeAttributes", {}, e);
let s = t.styleParser ? kIe(e) : [];
return ke({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: Ja,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: EIe
} = Qa;
function $Q(e) {
const t = qe.autoReplaceSvg === "nest" ? WD(e, {
styleParser: !1
}) : WD(e);
return ~t.extra.classes.indexOf(tQ) ? Tc("generateLayersText", e, t) : Tc("generateSvgReplacementMutation", e, t);
}
function AIe() {
return [...lTe, ...SA];
}
function VD(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!ws) return Promise.resolve();
const r = Gr.documentElement.classList, n = (d) => r.add("".concat(PD, "-").concat(d)), o = (d) => r.remove("".concat(PD, "-").concat(d)), a = qe.autoFetchSvg ? AIe() : qJ.concat(Object.keys(EIe));
a.includes("fa") || a.push("fa");
const i = [".".concat(tQ, ":not([").concat(Yu, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(Yu, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = wp(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = jC.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = $Q(l);
f && d.push(f);
} catch (f) {
ZJ || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
xQ(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function PIe(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
$Q(e).then((r) => {
r && xQ([r], t);
});
}
function CIe(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : jA(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : jA(o || {})), e(n, ke(ke({}, r), {}, {
mask: o
}));
};
}
const NIe = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ja,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return Xx(ke({
type: "icon"
}, e), () => (qu("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), qe.autoA11y && (i ? c["aria-labelledby"] = "".concat(qe.replacementClass, "-title-").concat(s || qg()) : (c["aria-hidden"] = "true", c.focusable = "false")), IC({
icons: {
main: RA(p),
mask: o ? RA(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: ke(ke({}, Ja), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var TIe = {
mixout() {
return {
icon: CIe(NIe)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = VD, e.nodeCallback = PIe, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Gr,
callback: n = () => {
}
} = t;
return VD(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([MA(n, i), c.iconName ? MA(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, IC({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = Yx(i);
s.length > 0 && (n.style = s);
let u;
return CC(a) && (u = Tc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, IIe = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return Xx({
type: "layer"
}, () => {
qu("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(qe.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, jIe = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return Xx({
type: "counter",
content: e
}, () => (qu("beforeDOMElementCreation", {
content: e,
params: t
}), dIe({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(qe.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, RIe = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Ja,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return Xx({
type: "text",
content: e
}, () => (qu("beforeDOMElementCreation", {
content: e,
params: t
}), MD({
content: e,
transform: ke(ke({}, Ja), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(qe.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (BJ) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return qe.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, MD({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const MIe = new RegExp('"', "ug"), HD = [1105920, 1112319], GD = ke(ke(ke(ke({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), aTe), $Te), hTe), LA = Object.keys(GD).reduce((e, t) => (e[t.toLowerCase()] = GD[t], e), {}), DIe = Object.keys(LA).reduce((e, t) => {
const r = LA[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function FIe(e) {
const t = e.replace(MIe, ""), r = GTe(t, 0), n = r >= HD[0] && r <= HD[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: sQ(o ? t[0] : t),
isSecondary: n || o
};
}
function LIe(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (LA[r] || {})[o] || DIe[r];
}
function UD(e, t) {
const r = "".concat(kTe).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = wp(e.children).filter((l) => l.getAttribute(AA) === t)[0], i = Cc.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(ATe), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = LIe(s, c);
const {
value: p,
isSecondary: y
} = FIe(l), m = u[0].startsWith("FontAwesome");
let h = TC(f, p), w = h;
if (m) {
const $ = XTe(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(SC) !== f || a.getAttribute(EC) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = SIe(), {
extra: _
} = $;
_.attributes[AA] = t, MA(h, f).then((S) => {
const b = IC(ke(ke({}, $), {}, {
icons: {
main: S,
mask: gQ()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = Gr.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => Yb(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function zIe(e) {
return Promise.all([UD(e, "::before"), UD(e, "::after")]);
}
function WIe(e) {
return e.parentNode !== document.head && !~OTe.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(AA) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function BD(e) {
if (ws)
return new Promise((t, r) => {
const n = wp(e.querySelectorAll("*")).filter(WIe).map(zIe), o = jC.begin("searchPseudoElements");
wQ(), Promise.all(n).then(() => {
o(), FA(), t();
}).catch(() => {
o(), FA(), r();
});
});
}
var VIe = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = BD, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Gr
} = t;
qe.searchPseudoElements && BD(r);
};
}
};
let YD = !1;
var HIe = {
mixout() {
return {
dom: {
unwatch() {
wQ(), YD = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
zD(IA("mutationObserverCallbacks", {}));
},
noAuto() {
$Ie();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
YD ? FA() : zD(IA("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const qD = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var GIe = {
mixout() {
return {
parse: {
transform: (e) => qD(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = qD(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: ke({}, f.outer),
children: [{
tag: "g",
attributes: ke({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: ke(ke({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const _k = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function KD(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function UIe(e) {
return e.tag === "g" ? e.children : [e];
}
var BIe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? Kx(r.split(" ").map((o) => o.trim())) : gQ();
return n.prefix || (n.prefix = Nc()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = FTe({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: ke(ke({}, _k), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(KD)
} : {}, m = {
tag: "g",
attributes: ke({}, f.inner),
children: [KD(ke({
tag: c.tag,
attributes: ke(ke({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: ke({}, f.outer),
children: [m]
}, w = "mask-".concat(i || qg()), $ = "clip-".concat(i || qg()), _ = {
tag: "mask",
attributes: ke(ke({}, _k), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: UIe(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: ke({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, _k)
}), {
children: r,
attributes: n
};
};
}
}, YIe = {
provides(e) {
let t = !1;
Cc.matchMedia && (t = Cc.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: ke(ke({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = ke(ke({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: ke(ke({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: ke(ke({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: ke(ke({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: ke(ke({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: ke(ke({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: ke(ke({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: ke(ke({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, qIe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, KIe = [WTe, TIe, IIe, jIe, RIe, VIe, HIe, GIe, BIe, YIe, qIe];
aIe(KIe, {
mixoutsTo: mo
});
mo.noAuto;
mo.config;
mo.library;
mo.dom;
const zA = mo.parse;
mo.findIconDefinition;
mo.toHtml;
const XIe = mo.icon;
mo.layer;
mo.text;
mo.counter;
function JIe(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var rv = { exports: {} }, Ok = { exports: {} }, tr = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var XD;
function QIe() {
if (XD) return tr;
XD = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return tr.AsyncMode = u, tr.ConcurrentMode = c, tr.ContextConsumer = s, tr.ContextProvider = i, tr.Element = t, tr.ForwardRef = d, tr.Fragment = n, tr.Lazy = y, tr.Memo = p, tr.Portal = r, tr.Profiler = a, tr.StrictMode = o, tr.Suspense = l, tr.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, tr.isConcurrentMode = S, tr.isContextConsumer = function(b) {
return _(b) === s;
}, tr.isContextProvider = function(b) {
return _(b) === i;
}, tr.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, tr.isForwardRef = function(b) {
return _(b) === d;
}, tr.isFragment = function(b) {
return _(b) === n;
}, tr.isLazy = function(b) {
return _(b) === y;
}, tr.isMemo = function(b) {
return _(b) === p;
}, tr.isPortal = function(b) {
return _(b) === r;
}, tr.isProfiler = function(b) {
return _(b) === a;
}, tr.isStrictMode = function(b) {
return _(b) === o;
}, tr.isSuspense = function(b) {
return _(b) === l;
}, tr.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, tr.typeOf = _, tr;
}
var pr = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var JD;
function ZIe() {
return JD || (JD = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
pr.AsyncMode = b, pr.ConcurrentMode = F, pr.ContextConsumer = z, pr.ContextProvider = q, pr.Element = Y, pr.ForwardRef = B, pr.Fragment = Z, pr.Lazy = M, pr.Memo = te, pr.Portal = G, pr.Profiler = H, pr.StrictMode = U, pr.Suspense = W, pr.isAsyncMode = ee, pr.isConcurrentMode = v, pr.isContextConsumer = g, pr.isContextProvider = O, pr.isElement = P, pr.isForwardRef = A, pr.isFragment = T, pr.isLazy = N, pr.isMemo = C, pr.isPortal = I, pr.isProfiler = j, pr.isStrictMode = R, pr.isSuspense = Q, pr.isValidElementType = _, pr.typeOf = S;
}()), pr;
}
var QD;
function kQ() {
return QD || (QD = 1, process.env.NODE_ENV === "production" ? Ok.exports = QIe() : Ok.exports = ZIe()), Ok.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var Sk, ZD;
function eje() {
if (ZD) return Sk;
ZD = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return Sk = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, Sk;
}
var Ek, eF;
function MC() {
if (eF) return Ek;
eF = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return Ek = e, Ek;
}
var tF, rF;
function _Q() {
return rF || (rF = 1, tF = Function.call.bind(Object.prototype.hasOwnProperty)), tF;
}
var Ak, nF;
function tje() {
if (nF) return Ak;
nF = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ MC(), r = {}, n = /* @__PURE__ */ _Q();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, Ak = o, Ak;
}
var Pk, oF;
function rje() {
if (oF) return Pk;
oF = 1;
var e = kQ(), t = eje(), r = /* @__PURE__ */ MC(), n = /* @__PURE__ */ _Q(), o = /* @__PURE__ */ tje(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return Pk = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, Pk;
}
var Ck, aF;
function nje() {
if (aF) return Ck;
aF = 1;
var e = /* @__PURE__ */ MC();
function t() {
}
function r() {
}
return r.resetWarningCache = t, Ck = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, Ck;
}
var iF;
function oje() {
if (iF) return rv.exports;
if (iF = 1, process.env.NODE_ENV !== "production") {
var e = kQ(), t = !0;
rv.exports = /* @__PURE__ */ rje()(e.isElement, t);
} else
rv.exports = /* @__PURE__ */ nje()();
return rv.exports;
}
var aje = /* @__PURE__ */ oje();
const Rt = /* @__PURE__ */ JIe(aje);
function sF(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function Ea(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? sF(Object(r), !0).forEach(function(n) {
Gf(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : sF(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function a0(e) {
"@babel/helpers - typeof";
return a0 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, a0(e);
}
function Gf(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function ije(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function sje(e, t) {
if (e == null) return {};
var r = ije(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function WA(e) {
return lje(e) || cje(e) || uje(e) || fje();
}
function lje(e) {
if (Array.isArray(e)) return VA(e);
}
function cje(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function uje(e, t) {
if (e) {
if (typeof e == "string") return VA(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return VA(e, t);
}
}
function VA(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function fje() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function dje(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, Gf(t, "fa-".concat(w), typeof w < "u" && w !== null), Gf(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), Gf(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), Gf(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function pje(e) {
return e = e - 0, e === e;
}
function OQ(e) {
return pje(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var mje = ["style"];
function hje(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function gje(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = OQ(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[hje(o)] = a : t[o] = a, t;
}, {});
}
function SQ(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return SQ(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = gje(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[OQ(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = sje(r, mje);
return o.attrs.style = Ea(Ea({}, o.attrs.style), i), e.apply(void 0, [t.tag, Ea(Ea({}, o.attrs), s)].concat(WA(n)));
}
var EQ = !1;
try {
EQ = process.env.NODE_ENV === "production";
} catch {
}
function bje() {
if (!EQ && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function lF(e) {
if (e && a0(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (zA.icon)
return zA.icon(e);
if (e === null)
return null;
if (e && a0(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function Nk(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Gf({}, e, t) : {};
}
var cF = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, DC = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = Ea(Ea({}, cF), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = lF(n), l = Nk("classes", [].concat(WA(dje(r)), WA((i || "").split(" ")))), f = Nk("transform", typeof r.transform == "string" ? zA.transform(r.transform) : r.transform), p = Nk("mask", lF(o)), y = XIe(d, Ea(Ea(Ea(Ea({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return bje("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
cF.hasOwnProperty(w) || (h[w] = r[w]);
}), yje(m[0], h);
});
DC.displayName = "FontAwesomeIcon";
DC.propTypes = {
beat: Rt.bool,
border: Rt.bool,
beatFade: Rt.bool,
bounce: Rt.bool,
className: Rt.string,
fade: Rt.bool,
flash: Rt.bool,
mask: Rt.oneOfType([Rt.object, Rt.array, Rt.string]),
maskId: Rt.string,
fixedWidth: Rt.bool,
inverse: Rt.bool,
flip: Rt.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: Rt.oneOfType([Rt.object, Rt.array, Rt.string]),
listItem: Rt.bool,
pull: Rt.oneOf(["right", "left"]),
pulse: Rt.bool,
rotation: Rt.oneOf([0, 90, 180, 270]),
shake: Rt.bool,
size: Rt.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: Rt.bool,
spinPulse: Rt.bool,
spinReverse: Rt.bool,
symbol: Rt.oneOfType([Rt.bool, Rt.string]),
title: Rt.string,
titleId: Rt.string,
transform: Rt.oneOfType([Rt.string, Rt.object]),
swapOpacity: Rt.bool
};
var yje = SQ.bind(null, ae.createElement);
const FC = "-", vje = (e) => {
const t = wje(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(FC);
return a[0] === "" && a.length !== 1 && a.shift(), AQ(a, t) || xje(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, AQ = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? AQ(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(FC);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, uF = /^\[(.+)\]$/, xje = (e) => {
if (uF.test(e)) {
const t = uF.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, wje = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return kje(Object.entries(e.classGroups), r).forEach(([o, a]) => {
HA(a, n, o, t);
}), n;
}, HA = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : fF(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if ($je(o)) {
HA(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
HA(i, fF(t, a), r, n);
});
});
}, fF = (e, t) => {
let r = e;
return t.split(FC).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, $je = (e) => e.isThemeGetter, kje = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, _je = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, PQ = "!", Oje = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith(PQ), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, Sje = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, Eje = (e) => ({
cache: _je(e.cacheSize),
parseClassName: Oje(e),
...vje(e)
}), Aje = /\s+/, Pje = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(Aje);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = Sje(d).join(":"), w = l ? h + PQ : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function Cje() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = CQ(t)) && (n && (n += " "), n += r);
return n;
}
const CQ = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = CQ(e[n])) && (r && (r += " "), r += t);
return r;
};
function Nje(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = Eje(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = Pje(u, r);
return o(u, d), d;
}
return function() {
return a(Cje.apply(null, arguments));
};
}
const Ir = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, NQ = /^\[(?:([a-z-]+):)?(.+)\]$/i, Tje = /^\d+\/\d+$/, Ije = /* @__PURE__ */ new Set(["px", "full", "screen"]), jje = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, Rje = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, Mje = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, Dje = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, Fje = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Ei = (e) => kd(e) || Ije.has(e) || Tje.test(e), Sl = (e) => $p(e, "length", Bje), kd = (e) => !!e && !Number.isNaN(Number(e)), Tk = (e) => $p(e, "number", kd), Um = (e) => !!e && Number.isInteger(Number(e)), Lje = (e) => e.endsWith("%") && kd(e.slice(0, -1)), yt = (e) => NQ.test(e), El = (e) => jje.test(e), zje = /* @__PURE__ */ new Set(["length", "size", "percentage"]), Wje = (e) => $p(e, zje, TQ), Vje = (e) => $p(e, "position", TQ), Hje = /* @__PURE__ */ new Set(["image", "url"]), Gje = (e) => $p(e, Hje, qje), Uje = (e) => $p(e, "", Yje), Bm = () => !0, $p = (e, t, r) => {
const n = NQ.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, Bje = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
Rje.test(e) && !Mje.test(e)
), TQ = () => !1, Yje = (e) => Dje.test(e), qje = (e) => Fje.test(e), Kje = () => {
const e = Ir("colors"), t = Ir("spacing"), r = Ir("blur"), n = Ir("brightness"), o = Ir("borderColor"), a = Ir("borderRadius"), i = Ir("borderSpacing"), s = Ir("borderWidth"), u = Ir("contrast"), c = Ir("grayscale"), d = Ir("hueRotate"), l = Ir("invert"), f = Ir("gap"), p = Ir("gradientColorStops"), y = Ir("gradientColorStopPositions"), m = Ir("inset"), h = Ir("margin"), w = Ir("opacity"), $ = Ir("padding"), _ = Ir("saturate"), S = Ir("scale"), b = Ir("sepia"), F = Ir("skew"), z = Ir("space"), q = Ir("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", yt, t], M = () => [yt, t], te = () => ["", Ei, Sl], G = () => ["auto", kd, yt], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", yt], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [kd, yt];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [Bm],
spacing: [Ei, Sl],
blur: ["none", "", El, yt],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", El, yt],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [Lje, Sl],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", yt]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [El]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), yt]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", Um, yt]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", yt]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", Um, yt]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [Bm]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", Um, yt]
}, yt]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [Bm]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [Um, yt]
}, yt]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", yt]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", yt]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", yt, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [yt, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [yt, t, "none", "full", "min", "max", "fit", "prose", {
screen: [El]
}, El]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [yt, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [yt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [yt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [yt, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", El, Sl]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", Tk]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [Bm]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", yt]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", kd, Tk]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", Ei, yt]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", yt]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", yt]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", Ei, Sl]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", Ei, yt]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", yt]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", yt]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), Vje]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", Wje]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, Gje]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [Ei, yt]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [Ei, Sl]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [Ei, Sl]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", El, Uje]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [Bm]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", El, yt]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", yt]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", yt]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", yt]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [Um, yt]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", yt]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", yt]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", yt]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [Ei, Sl, Tk]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, Xje = /* @__PURE__ */ Nje(Kje), Jje = ({
className: e,
children: t,
required: r,
...n
}) => /* @__PURE__ */ Te(
"label",
{
className: Xje("text-base-fg mb-2 text-[15px] font-medium", e),
...n,
children: [
t,
r && /* @__PURE__ */ K("span", { className: "ml-0.5 text-[#ff6467]", children: "*" })
]
}
), IQ = ae.forwardRef(
({
label: e,
icon: t,
inputClassName: r,
iconClassName: n,
className: o,
id: a,
isError: i,
onBlur: s,
onFocus: u,
errorMessage: c,
...d
}, l) => /* @__PURE__ */ Te("div", { className: vk("flex flex-col", o), children: [
e && /* @__PURE__ */ K(Jje, { htmlFor: a || e, children: e }),
/* @__PURE__ */ Te("div", { className: "relative w-full", children: [
t && /* @__PURE__ */ K(
DC,
{
icon: t,
className: vk("text-md absolute pl-3 pt-3", n)
}
),
/* @__PURE__ */ K(
"input",
{
ref: l,
id: a || e || void 0,
className: vk(
"h-10 w-full rounded-lg px-3 py-2.5 outline-none",
"bg-ui-panel text-base-fg placeholder-base-fg/50",
"border border-ui-panel-border transition-all duration-150 ease-in-out hover:border-primary/60 focus:border-primary focus:!outline-none",
"disabled:cursor-not-allowed disabled:opacity-60 disabled:hover:border-ui-panel-border",
t && "pl-10",
i && "outline-red focus:outline-red",
r
),
onFocus: (f) => {
u && u(f);
},
onBlur: (f) => {
s && s(f);
},
...d
}
),
c && /* @__PURE__ */ K("h6", { className: "absolute z-10 text-red", children: c })
] })
] })
);
IQ.displayName = "Input";
const Qje = () => {
const [e, t] = de(
void 0
), [r, n] = de(!1);
ue(() => {
(async () => {
n(!0);
try {
const i = await Kve();
"payload" in i && t(i.payload.key);
} catch (i) {
console.error("Error fetching Fal API key", i), t(void 0);
} finally {
n(!1);
}
})();
}, []);
const o = async (a) => {
await Xve(a), t(a);
};
return /* @__PURE__ */ Te("div", { className: "flex justify-between items-center", children: [
/* @__PURE__ */ K("span", { children: "Fal API Key:" }),
/* @__PURE__ */ K(
IQ,
{
value: e,
onChange: (a) => o(a.target.value),
placeholder: "Enter Fal API key"
}
)
] });
};
function Zje(e, t = !1) {
return window.__TAURI_INTERNALS__.transformCallback(e, t);
}
async function jQ(e, t = {}, r) {
return window.__TAURI_INTERNALS__.invoke(e, t, r);
}
var dF;
(function(e) {
e.WINDOW_RESIZED = "tauri://resize", e.WINDOW_MOVED = "tauri://move", e.WINDOW_CLOSE_REQUESTED = "tauri://close-requested", e.WINDOW_DESTROYED = "tauri://destroyed", e.WINDOW_FOCUS = "tauri://focus", e.WINDOW_BLUR = "tauri://blur", e.WINDOW_SCALE_FACTOR_CHANGED = "tauri://scale-change", e.WINDOW_THEME_CHANGED = "tauri://theme-changed", e.WINDOW_CREATED = "tauri://window-created", e.WEBVIEW_CREATED = "tauri://webview-created", e.DRAG_ENTER = "tauri://drag-enter", e.DRAG_OVER = "tauri://drag-over", e.DRAG_DROP = "tauri://drag-drop", e.DRAG_LEAVE = "tauri://drag-leave";
})(dF || (dF = {}));
async function e9e(e, t) {
window.__TAURI_EVENT_PLUGIN_INTERNALS__.unregisterListener(e, t), await jQ("plugin:event|unlisten", {
event: e,
eventId: t
});
}
async function t9e(e, t, r) {
var n;
const o = (n = void 0) !== null && n !== void 0 ? n : { kind: "Any" };
return jQ("plugin:event|listen", {
event: e,
target: o,
handler: Zje(t)
}).then((a) => async () => e9e(e, a));
}
const r9e = "refresh_account_state_event", n9e = (e) => {
ue(() => {
let t = !1, r;
return (async () => (r = t9e(r9e, async (n) => {
await e(n.payload.data);
}), t && r.then((n) => n())))(), () => {
t = !0, r.then((n) => n());
};
}, []);
};
var RQ = (e) => {
throw TypeError(e);
}, MQ = (e, t, r) => t.has(e) || RQ("Cannot " + r), Al = (e, t, r) => (MQ(e, t, "read from private field"), r ? r.call(e) : t.get(e)), DQ = (e, t, r) => t.has(e) ? RQ("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, r), pF = (e, t, r, n) => (MQ(e, t, "write to private field"), t.set(e, r), r), Ym = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {}, mF = {};
/*!
* howler.js v2.2.4
* howlerjs.com
*
* (c) 2013-2020, James Simpson of GoldFire Studios
* goldfirestudios.com
*
* MIT License
*/
var hF;
function o9e() {
return hF || (hF = 1, function(e) {
(function() {
var t = function() {
this.init();
};
t.prototype = {
/**
* Initialize the global Howler object.
* @return {Howler}
*/
init: function() {
var l = this || r;
return l._counter = 1e3, l._html5AudioPool = [], l.html5PoolSize = 10, l._codecs = {}, l._howls = [], l._muted = !1, l._volume = 1, l._canPlayEvent = "canplaythrough", l._navigator = typeof window < "u" && window.navigator ? window.navigator : null, l.masterGain = null, l.noAudio = !1, l.usingWebAudio = !0, l.autoSuspend = !0, l.ctx = null, l.autoUnlock = !0, l._setup(), l;
},
/**
* Get/set the global volume for all sounds.
* @param {Float} vol Volume from 0.0 to 1.0.
* @return {Howler/Float} Returns self or current volume.
*/
volume: function(l) {
var f = this || r;
if (l = parseFloat(l), f.ctx || d(), typeof l < "u" && l >= 0 && l <= 1) {
if (f._volume = l, f._muted)
return f;
f.usingWebAudio && f.masterGain.gain.setValueAtTime(l, r.ctx.currentTime);
for (var p = 0; p < f._howls.length; p++)
if (!f._howls[p]._webAudio)
for (var y = f._howls[p]._getSoundIds(), m = 0; m < y.length; m++) {
var h = f._howls[p]._soundById(y[m]);
h && h._node && (h._node.volume = h._volume * l);
}
return f;
}
return f._volume;
},
/**
* Handle muting and unmuting globally.
* @param {Boolean} muted Is muted or not.
*/
mute: function(l) {
var f = this || r;
f.ctx || d(), f._muted = l, f.usingWebAudio && f.masterGain.gain.setValueAtTime(l ? 0 : f._volume, r.ctx.currentTime);
for (var p = 0; p < f._howls.length; p++)
if (!f._howls[p]._webAudio)
for (var y = f._howls[p]._getSoundIds(), m = 0; m < y.length; m++) {
var h = f._howls[p]._soundById(y[m]);
h && h._node && (h._node.muted = l ? !0 : h._muted);
}
return f;
},
/**
* Handle stopping all sounds globally.
*/
stop: function() {
for (var l = this || r, f = 0; f < l._howls.length; f++)
l._howls[f].stop();
return l;
},
/**
* Unload and destroy all currently loaded Howl objects.
* @return {Howler}
*/
unload: function() {
for (var l = this || r, f = l._howls.length - 1; f >= 0; f--)
l._howls[f].unload();
return l.usingWebAudio && l.ctx && typeof l.ctx.close < "u" && (l.ctx.close(), l.ctx = null, d()), l;
},
/**
* Check for codec support of specific extension.
* @param {String} ext Audio file extention.
* @return {Boolean}
*/
codecs: function(l) {
return (this || r)._codecs[l.replace(/^x-/, "")];
},
/**
* Setup various state values for global tracking.
* @return {Howler}
*/
_setup: function() {
var l = this || r;
if (l.state = l.ctx && l.ctx.state || "suspended", l._autoSuspend(), !l.usingWebAudio)
if (typeof Audio < "u")
try {
var f = new Audio();
typeof f.oncanplaythrough > "u" && (l._canPlayEvent = "canplay");
} catch {
l.noAudio = !0;
}
else
l.noAudio = !0;
try {
var f = new Audio();
f.muted && (l.noAudio = !0);
} catch {
}
return l.noAudio || l._setupCodecs(), l;
},
/**
* Check for browser support for various codecs and cache the results.
* @return {Howler}
*/
_setupCodecs: function() {
var l = this || r, f = null;
try {
f = typeof Audio < "u" ? new Audio() : null;
} catch {
return l;
}
if (!f || typeof f.canPlayType != "function")
return l;
var p = f.canPlayType("audio/mpeg;").replace(/^no$/, ""), y = l._navigator ? l._navigator.userAgent : "", m = y.match(/OPR\/(\d+)/g), h = m && parseInt(m[0].split("/")[1], 10) < 33, w = y.indexOf("Safari") !== -1 && y.indexOf("Chrome") === -1, $ = y.match(/Version\/(.*?) /), _ = w && $ && parseInt($[1], 10) < 15;
return l._codecs = {
mp3: !!(!h && (p || f.canPlayType("audio/mp3;").replace(/^no$/, ""))),
mpeg: !!p,
opus: !!f.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/, ""),
ogg: !!f.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, ""),
oga: !!f.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, ""),
wav: !!(f.canPlayType('audio/wav; codecs="1"') || f.canPlayType("audio/wav")).replace(/^no$/, ""),
aac: !!f.canPlayType("audio/aac;").replace(/^no$/, ""),
caf: !!f.canPlayType("audio/x-caf;").replace(/^no$/, ""),
m4a: !!(f.canPlayType("audio/x-m4a;") || f.canPlayType("audio/m4a;") || f.canPlayType("audio/aac;")).replace(/^no$/, ""),
m4b: !!(f.canPlayType("audio/x-m4b;") || f.canPlayType("audio/m4b;") || f.canPlayType("audio/aac;")).replace(/^no$/, ""),
mp4: !!(f.canPlayType("audio/x-mp4;") || f.canPlayType("audio/mp4;") || f.canPlayType("audio/aac;")).replace(/^no$/, ""),
weba: !!(!_ && f.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/, "")),
webm: !!(!_ && f.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/, "")),
dolby: !!f.canPlayType('audio/mp4; codecs="ec-3"').replace(/^no$/, ""),
flac: !!(f.canPlayType("audio/x-flac;") || f.canPlayType("audio/flac;")).replace(/^no$/, "")
}, l;
},
/**
* Some browsers/devices will only allow audio to be played after a user interaction.
* Attempt to automatically unlock audio on the first user interaction.
* Concept from: http://paulbakaus.com/tutorials/html5/web-audio-on-ios/
* @return {Howler}
*/
_unlockAudio: function() {
var l = this || r;
if (!(l._audioUnlocked || !l.ctx)) {
l._audioUnlocked = !1, l.autoUnlock = !1, !l._mobileUnloaded && l.ctx.sampleRate !== 44100 && (l._mobileUnloaded = !0, l.unload()), l._scratchBuffer = l.ctx.createBuffer(1, 1, 22050);
var f = function(p) {
for (; l._html5AudioPool.length < l.html5PoolSize; )
try {
var y = new Audio();
y._unlocked = !0, l._releaseHtml5Audio(y);
} catch {
l.noAudio = !0;
break;
}
for (var m = 0; m < l._howls.length; m++)
if (!l._howls[m]._webAudio)
for (var h = l._howls[m]._getSoundIds(), w = 0; w < h.length; w++) {
var $ = l._howls[m]._soundById(h[w]);
$ && $._node && !$._node._unlocked && ($._node._unlocked = !0, $._node.load());
}
l._autoResume();
var _ = l.ctx.createBufferSource();
_.buffer = l._scratchBuffer, _.connect(l.ctx.destination), typeof _.start > "u" ? _.noteOn(0) : _.start(0), typeof l.ctx.resume == "function" && l.ctx.resume(), _.onended = function() {
_.disconnect(0), l._audioUnlocked = !0, document.removeEventListener("touchstart", f, !0), document.removeEventListener("touchend", f, !0), document.removeEventListener("click", f, !0), document.removeEventListener("keydown", f, !0);
for (var S = 0; S < l._howls.length; S++)
l._howls[S]._emit("unlock");
};
};
return document.addEventListener("touchstart", f, !0), document.addEventListener("touchend", f, !0), document.addEventListener("click", f, !0), document.addEventListener("keydown", f, !0), l;
}
},
/**
* Get an unlocked HTML5 Audio object from the pool. If none are left,
* return a new Audio object and throw a warning.
* @return {Audio} HTML5 Audio object.
*/
_obtainHtml5Audio: function() {
var l = this || r;
if (l._html5AudioPool.length)
return l._html5AudioPool.pop();
var f = new Audio().play();
return f && typeof Promise < "u" && (f instanceof Promise || typeof f.then == "function") && f.catch(function() {
console.warn("HTML5 Audio pool exhausted, returning potentially locked audio object.");
}), new Audio();
},
/**
* Return an activated HTML5 Audio object to the pool.
* @return {Howler}
*/
_releaseHtml5Audio: function(l) {
var f = this || r;
return l._unlocked && f._html5AudioPool.push(l), f;
},
/**
* Automatically suspend the Web Audio AudioContext after no sound has played for 30 seconds.
* This saves processing/energy and fixes various browser-specific bugs with audio getting stuck.
* @return {Howler}
*/
_autoSuspend: function() {
var l = this;
if (!(!l.autoSuspend || !l.ctx || typeof l.ctx.suspend > "u" || !r.usingWebAudio)) {
for (var f = 0; f < l._howls.length; f++)
if (l._howls[f]._webAudio) {
for (var p = 0; p < l._howls[f]._sounds.length; p++)
if (!l._howls[f]._sounds[p]._paused)
return l;
}
return l._suspendTimer && clearTimeout(l._suspendTimer), l._suspendTimer = setTimeout(function() {
if (l.autoSuspend) {
l._suspendTimer = null, l.state = "suspending";
var y = function() {
l.state = "suspended", l._resumeAfterSuspend && (delete l._resumeAfterSuspend, l._autoResume());
};
l.ctx.suspend().then(y, y);
}
}, 3e4), l;
}
},
/**
* Automatically resume the Web Audio AudioContext when a new sound is played.
* @return {Howler}
*/
_autoResume: function() {
var l = this;
if (!(!l.ctx || typeof l.ctx.resume > "u" || !r.usingWebAudio))
return l.state === "running" && l.ctx.state !== "interrupted" && l._suspendTimer ? (clearTimeout(l._suspendTimer), l._suspendTimer = null) : l.state === "suspended" || l.state === "running" && l.ctx.state === "interrupted" ? (l.ctx.resume().then(function() {
l.state = "running";
for (var f = 0; f < l._howls.length; f++)
l._howls[f]._emit("resume");
}), l._suspendTimer && (clearTimeout(l._suspendTimer), l._suspendTimer = null)) : l.state === "suspending" && (l._resumeAfterSuspend = !0), l;
}
};
var r = new t(), n = function(l) {
var f = this;
if (!l.src || l.src.length === 0) {
console.error("An array of source files must be passed with any new Howl.");
return;
}
f.init(l);
};
n.prototype = {
/**
* Initialize a new Howl group object.
* @param {Object} o Passed in properties for this group.
* @return {Howl}
*/
init: function(l) {
var f = this;
return r.ctx || d(), f._autoplay = l.autoplay || !1, f._format = typeof l.format != "string" ? l.format : [l.format], f._html5 = l.html5 || !1, f._muted = l.mute || !1, f._loop = l.loop || !1, f._pool = l.pool || 5, f._preload = typeof l.preload == "boolean" || l.preload === "metadata" ? l.preload : !0, f._rate = l.rate || 1, f._sprite = l.sprite || {}, f._src = typeof l.src != "string" ? l.src : [l.src], f._volume = l.volume !== void 0 ? l.volume : 1, f._xhr = {
method: l.xhr && l.xhr.method ? l.xhr.method : "GET",
headers: l.xhr && l.xhr.headers ? l.xhr.headers : null,
withCredentials: l.xhr && l.xhr.withCredentials ? l.xhr.withCredentials : !1
}, f._duration = 0, f._state = "unloaded", f._sounds = [], f._endTimers = {}, f._queue = [], f._playLock = !1, f._onend = l.onend ? [{ fn: l.onend }] : [], f._onfade = l.onfade ? [{ fn: l.onfade }] : [], f._onload = l.onload ? [{ fn: l.onload }] : [], f._onloaderror = l.onloaderror ? [{ fn: l.onloaderror }] : [], f._onplayerror = l.onplayerror ? [{ fn: l.onplayerror }] : [], f._onpause = l.onpause ? [{ fn: l.onpause }] : [], f._onplay = l.onplay ? [{ fn: l.onplay }] : [], f._onstop = l.onstop ? [{ fn: l.onstop }] : [], f._onmute = l.onmute ? [{ fn: l.onmute }] : [], f._onvolume = l.onvolume ? [{ fn: l.onvolume }] : [], f._onrate = l.onrate ? [{ fn: l.onrate }] : [], f._onseek = l.onseek ? [{ fn: l.onseek }] : [], f._onunlock = l.onunlock ? [{ fn: l.onunlock }] : [], f._onresume = [], f._webAudio = r.usingWebAudio && !f._html5, typeof r.ctx < "u" && r.ctx && r.autoUnlock && r._unlockAudio(), r._howls.push(f), f._autoplay && f._queue.push({
event: "play",
action: function() {
f.play();
}
}), f._preload && f._preload !== "none" && f.load(), f;
},
/**
* Load the audio file.
* @return {Howler}
*/
load: function() {
var l = this, f = null;
if (r.noAudio) {
l._emit("loaderror", null, "No audio support.");
return;
}
typeof l._src == "string" && (l._src = [l._src]);
for (var p = 0; p < l._src.length; p++) {
var y, m;
if (l._format && l._format[p])
y = l._format[p];
else {
if (m = l._src[p], typeof m != "string") {
l._emit("loaderror", null, "Non-string found in selected audio sources - ignoring.");
continue;
}
y = /^data:audio\/([^;,]+);/i.exec(m), y || (y = /\.([^.]+)$/.exec(m.split("?", 1)[0])), y && (y = y[1].toLowerCase());
}
if (y || console.warn('No file extension was found. Consider using the "format" property or specify an extension.'), y && r.codecs(y)) {
f = l._src[p];
break;
}
}
if (!f) {
l._emit("loaderror", null, "No codec support for selected audio sources.");
return;
}
return l._src = f, l._state = "loading", window.location.protocol === "https:" && f.slice(0, 5) === "http:" && (l._html5 = !0, l._webAudio = !1), new o(l), l._webAudio && i(l), l;
},
/**
* Play a sound or resume previous playback.
* @param {String/Number} sprite Sprite name for sprite playback or sound id to continue previous.
* @param {Boolean} internal Internal Use: true prevents event firing.
* @return {Number} Sound ID.
*/
play: function(l, f) {
var p = this, y = null;
if (typeof l == "number")
y = l, l = null;
else {
if (typeof l == "string" && p._state === "loaded" && !p._sprite[l])
return null;
if (typeof l > "u" && (l = "__default", !p._playLock)) {
for (var m = 0, h = 0; h < p._sounds.length; h++)
p._sounds[h]._paused && !p._sounds[h]._ended && (m++, y = p._sounds[h]._id);
m === 1 ? l = null : y = null;
}
}
var w = y ? p._soundById(y) : p._inactiveSound();
if (!w)
return null;
if (y && !l && (l = w._sprite || "__default"), p._state !== "loaded") {
w._sprite = l, w._ended = !1;
var $ = w._id;
return p._queue.push({
event: "play",
action: function() {
p.play($);
}
}), $;
}
if (y && !w._paused)
return f || p._loadQueue("play"), w._id;
p._webAudio && r._autoResume();
var _ = Math.max(0, w._seek > 0 ? w._seek : p._sprite[l][0] / 1e3), S = Math.max(0, (p._sprite[l][0] + p._sprite[l][1]) / 1e3 - _), b = S * 1e3 / Math.abs(w._rate), F = p._sprite[l][0] / 1e3, z = (p._sprite[l][0] + p._sprite[l][1]) / 1e3;
w._sprite = l, w._ended = !1;
var q = function() {
w._paused = !1, w._seek = _, w._start = F, w._stop = z, w._loop = !!(w._loop || p._sprite[l][2]);
};
if (_ >= z) {
p._ended(w);
return;
}
var Y = w._node;
if (p._webAudio) {
var B = function() {
p._playLock = !1, q(), p._refreshBuffer(w);
var G = w._muted || p._muted ? 0 : w._volume;
Y.gain.setValueAtTime(G, r.ctx.currentTime), w._playStart = r.ctx.currentTime, typeof Y.bufferSource.start > "u" ? w._loop ? Y.bufferSource.noteGrainOn(0, _, 86400) : Y.bufferSource.noteGrainOn(0, _, S) : w._loop ? Y.bufferSource.start(0, _, 86400) : Y.bufferSource.start(0, _, S), b !== 1 / 0 && (p._endTimers[w._id] = setTimeout(p._ended.bind(p, w), b)), f || setTimeout(function() {
p._emit("play", w._id), p._loadQueue();
}, 0);
};
r.state === "running" && r.ctx.state !== "interrupted" ? B() : (p._playLock = !0, p.once("resume", B), p._clearTimer(w._id));
} else {
var Z = function() {
Y.currentTime = _, Y.muted = w._muted || p._muted || r._muted || Y.muted, Y.volume = w._volume * r.volume(), Y.playbackRate = w._rate;
try {
var G = Y.play();
if (G && typeof Promise < "u" && (G instanceof Promise || typeof G.then == "function") ? (p._playLock = !0, q(), G.then(function() {
p._playLock = !1, Y._unlocked = !0, f ? p._loadQueue() : p._emit("play", w._id);
}).catch(function() {
p._playLock = !1, p._emit("playerror", w._id, "Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction."), w._ended = !0, w._paused = !0;
})) : f || (p._playLock = !1, q(), p._emit("play", w._id)), Y.playbackRate = w._rate, Y.paused) {
p._emit("playerror", w._id, "Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction.");
return;
}
l !== "__default" || w._loop ? p._endTimers[w._id] = setTimeout(p._ended.bind(p, w), b) : (p._endTimers[w._id] = function() {
p._ended(w), Y.removeEventListener("ended", p._endTimers[w._id], !1);
}, Y.addEventListener("ended", p._endTimers[w._id], !1));
} catch (H) {
p._emit("playerror", w._id, H);
}
};
Y.src === "data:audio/wav;base64,UklGRigAAABXQVZFZm10IBIAAAABAAEARKwAAIhYAQACABAAAABkYXRhAgAAAAEA" && (Y.src = p._src, Y.load());
var M = window && window.ejecta || !Y.readyState && r._navigator.isCocoonJS;
if (Y.readyState >= 3 || M)
Z();
else {
p._playLock = !0, p._state = "loading";
var te = function() {
p._state = "loaded", Z(), Y.removeEventListener(r._canPlayEvent, te, !1);
};
Y.addEventListener(r._canPlayEvent, te, !1), p._clearTimer(w._id);
}
}
return w._id;
},
/**
* Pause playback and save current position.
* @param {Number} id The sound ID (empty to pause all in group).
* @return {Howl}
*/
pause: function(l) {
var f = this;
if (f._state !== "loaded" || f._playLock)
return f._queue.push({
event: "pause",
action: function() {
f.pause(l);
}
}), f;
for (var p = f._getSoundIds(l), y = 0; y < p.length; y++) {
f._clearTimer(p[y]);
var m = f._soundById(p[y]);
if (m && !m._paused && (m._seek = f.seek(p[y]), m._rateSeek = 0, m._paused = !0, f._stopFade(p[y]), m._node))
if (f._webAudio) {
if (!m._node.bufferSource)
continue;
typeof m._node.bufferSource.stop > "u" ? m._node.bufferSource.noteOff(0) : m._node.bufferSource.stop(0), f._cleanBuffer(m._node);
} else (!isNaN(m._node.duration) || m._node.duration === 1 / 0) && m._node.pause();
arguments[1] || f._emit("pause", m ? m._id : null);
}
return f;
},
/**
* Stop playback and reset to start.
* @param {Number} id The sound ID (empty to stop all in group).
* @param {Boolean} internal Internal Use: true prevents event firing.
* @return {Howl}
*/
stop: function(l, f) {
var p = this;
if (p._state !== "loaded" || p._playLock)
return p._queue.push({
event: "stop",
action: function() {
p.stop(l);
}
}), p;
for (var y = p._getSoundIds(l), m = 0; m < y.length; m++) {
p._clearTimer(y[m]);
var h = p._soundById(y[m]);
h && (h._seek = h._start || 0, h._rateSeek = 0, h._paused = !0, h._ended = !0, p._stopFade(y[m]), h._node && (p._webAudio ? h._node.bufferSource && (typeof h._node.bufferSource.stop > "u" ? h._node.bufferSource.noteOff(0) : h._node.bufferSource.stop(0), p._cleanBuffer(h._node)) : (!isNaN(h._node.duration) || h._node.duration === 1 / 0) && (h._node.currentTime = h._start || 0, h._node.pause(), h._node.duration === 1 / 0 && p._clearSound(h._node))), f || p._emit("stop", h._id));
}
return p;
},
/**
* Mute/unmute a single sound or all sounds in this Howl group.
* @param {Boolean} muted Set to true to mute and false to unmute.
* @param {Number} id The sound ID to update (omit to mute/unmute all).
* @return {Howl}
*/
mute: function(l, f) {
var p = this;
if (p._state !== "loaded" || p._playLock)
return p._queue.push({
event: "mute",
action: function() {
p.mute(l, f);
}
}), p;
if (typeof f > "u")
if (typeof l == "boolean")
p._muted = l;
else
return p._muted;
for (var y = p._getSoundIds(f), m = 0; m < y.length; m++) {
var h = p._soundById(y[m]);
h && (h._muted = l, h._interval && p._stopFade(h._id), p._webAudio && h._node ? h._node.gain.setValueAtTime(l ? 0 : h._volume, r.ctx.currentTime) : h._node && (h._node.muted = r._muted ? !0 : l), p._emit("mute", h._id));
}
return p;
},
/**
* Get/set the volume of this sound or of the Howl group. This method can optionally take 0, 1 or 2 arguments.
* volume() -> Returns the group's volume value.
* volume(id) -> Returns the sound id's current volume.
* volume(vol) -> Sets the volume of all sounds in this Howl group.
* volume(vol, id) -> Sets the volume of passed sound id.
* @return {Howl/Number} Returns self or current volume.
*/
volume: function() {
var l = this, f = arguments, p, y;
if (f.length === 0)
return l._volume;
if (f.length === 1 || f.length === 2 && typeof f[1] > "u") {
var m = l._getSoundIds(), h = m.indexOf(f[0]);
h >= 0 ? y = parseInt(f[0], 10) : p = parseFloat(f[0]);
} else f.length >= 2 && (p = parseFloat(f[0]), y = parseInt(f[1], 10));
var w;
if (typeof p < "u" && p >= 0 && p <= 1) {
if (l._state !== "loaded" || l._playLock)
return l._queue.push({
event: "volume",
action: function() {
l.volume.apply(l, f);
}
}), l;
typeof y > "u" && (l._volume = p), y = l._getSoundIds(y);
for (var $ = 0; $ < y.length; $++)
w = l._soundById(y[$]), w && (w._volume = p, f[2] || l._stopFade(y[$]), l._webAudio && w._node && !w._muted ? w._node.gain.setValueAtTime(p, r.ctx.currentTime) : w._node && !w._muted && (w._node.volume = p * r.volume()), l._emit("volume", w._id));
} else
return w = y ? l._soundById(y) : l._sounds[0], w ? w._volume : 0;
return l;
},
/**
* Fade a currently playing sound between two volumes (if no id is passed, all sounds will fade).
* @param {Number} from The value to fade from (0.0 to 1.0).
* @param {Number} to The volume to fade to (0.0 to 1.0).
* @param {Number} len Time in milliseconds to fade.
* @param {Number} id The sound id (omit to fade all sounds).
* @return {Howl}
*/
fade: function(l, f, p, y) {
var m = this;
if (m._state !== "loaded" || m._playLock)
return m._queue.push({
event: "fade",
action: function() {
m.fade(l, f, p, y);
}
}), m;
l = Math.min(Math.max(0, parseFloat(l)), 1), f = Math.min(Math.max(0, parseFloat(f)), 1), p = parseFloat(p), m.volume(l, y);
for (var h = m._getSoundIds(y), w = 0; w < h.length; w++) {
var $ = m._soundById(h[w]);
if ($) {
if (y || m._stopFade(h[w]), m._webAudio && !$._muted) {
var _ = r.ctx.currentTime, S = _ + p / 1e3;
$._volume = l, $._node.gain.setValueAtTime(l, _), $._node.gain.linearRampToValueAtTime(f, S);
}
m._startFadeInterval($, l, f, p, h[w], typeof y > "u");
}
}
return m;
},
/**
* Starts the internal interval to fade a sound.
* @param {Object} sound Reference to sound to fade.
* @param {Number} from The value to fade from (0.0 to 1.0).
* @param {Number} to The volume to fade to (0.0 to 1.0).
* @param {Number} len Time in milliseconds to fade.
* @param {Number} id The sound id to fade.
* @param {Boolean} isGroup If true, set the volume on the group.
*/
_startFadeInterval: function(l, f, p, y, m, h) {
var w = this, $ = f, _ = p - f, S = Math.abs(_ / 0.01), b = Math.max(4, S > 0 ? y / S : y), F = Date.now();
l._fadeTo = p, l._interval = setInterval(function() {
var z = (Date.now() - F) / y;
F = Date.now(), $ += _ * z, $ = Math.round($ * 100) / 100, _ < 0 ? $ = Math.max(p, $) : $ = Math.min(p, $), w._webAudio ? l._volume = $ : w.volume($, l._id, !0), h && (w._volume = $), (p < f && $ <= p || p > f && $ >= p) && (clearInterval(l._interval), l._interval = null, l._fadeTo = null, w.volume(p, l._id), w._emit("fade", l._id));
}, b);
},
/**
* Internal method that stops the currently playing fade when
* a new fade starts, volume is changed or the sound is stopped.
* @param {Number} id The sound id.
* @return {Howl}
*/
_stopFade: function(l) {
var f = this, p = f._soundById(l);
return p && p._interval && (f._webAudio && p._node.gain.cancelScheduledValues(r.ctx.currentTime), clearInterval(p._interval), p._interval = null, f.volume(p._fadeTo, l), p._fadeTo = null, f._emit("fade", l)), f;
},
/**
* Get/set the loop parameter on a sound. This method can optionally take 0, 1 or 2 arguments.
* loop() -> Returns the group's loop value.
* loop(id) -> Returns the sound id's loop value.
* loop(loop) -> Sets the loop value for all sounds in this Howl group.
* loop(loop, id) -> Sets the loop value of passed sound id.
* @return {Howl/Boolean} Returns self or current loop value.
*/
loop: function() {
var l = this, f = arguments, p, y, m;
if (f.length === 0)
return l._loop;
if (f.length === 1)
if (typeof f[0] == "boolean")
p = f[0], l._loop = p;
else
return m = l._soundById(parseInt(f[0], 10)), m ? m._loop : !1;
else f.length === 2 && (p = f[0], y = parseInt(f[1], 10));
for (var h = l._getSoundIds(y), w = 0; w < h.length; w++)
m = l._soundById(h[w]), m && (m._loop = p, l._webAudio && m._node && m._node.bufferSource && (m._node.bufferSource.loop = p, p && (m._node.bufferSource.loopStart = m._start || 0, m._node.bufferSource.loopEnd = m._stop, l.playing(h[w]) && (l.pause(h[w], !0), l.play(h[w], !0)))));
return l;
},
/**
* Get/set the playback rate of a sound. This method can optionally take 0, 1 or 2 arguments.
* rate() -> Returns the first sound node's current playback rate.
* rate(id) -> Returns the sound id's current playback rate.
* rate(rate) -> Sets the playback rate of all sounds in this Howl group.
* rate(rate, id) -> Sets the playback rate of passed sound id.
* @return {Howl/Number} Returns self or the current playback rate.
*/
rate: function() {
var l = this, f = arguments, p, y;
if (f.length === 0)
y = l._sounds[0]._id;
else if (f.length === 1) {
var m = l._getSoundIds(), h = m.indexOf(f[0]);
h >= 0 ? y = parseInt(f[0], 10) : p = parseFloat(f[0]);
} else f.length === 2 && (p = parseFloat(f[0]), y = parseInt(f[1], 10));
var w;
if (typeof p == "number") {
if (l._state !== "loaded" || l._playLock)
return l._queue.push({
event: "rate",
action: function() {
l.rate.apply(l, f);
}
}), l;
typeof y > "u" && (l._rate = p), y = l._getSoundIds(y);
for (var $ = 0; $ < y.length; $++)
if (w = l._soundById(y[$]), w) {
l.playing(y[$]) && (w._rateSeek = l.seek(y[$]), w._playStart = l._webAudio ? r.ctx.currentTime : w._playStart), w._rate = p, l._webAudio && w._node && w._node.bufferSource ? w._node.bufferSource.playbackRate.setValueAtTime(p, r.ctx.currentTime) : w._node && (w._node.playbackRate = p);
var _ = l.seek(y[$]), S = (l._sprite[w._sprite][0] + l._sprite[w._sprite][1]) / 1e3 - _, b = S * 1e3 / Math.abs(w._rate);
(l._endTimers[y[$]] || !w._paused) && (l._clearTimer(y[$]), l._endTimers[y[$]] = setTimeout(l._ended.bind(l, w), b)), l._emit("rate", w._id);
}
} else
return w = l._soundById(y), w ? w._rate : l._rate;
return l;
},
/**
* Get/set the seek position of a sound. This method can optionally take 0, 1 or 2 arguments.
* seek() -> Returns the first sound node's current seek position.
* seek(id) -> Returns the sound id's current seek position.
* seek(seek) -> Sets the seek position of the first sound node.
* seek(seek, id) -> Sets the seek position of passed sound id.
* @return {Howl/Number} Returns self or the current seek position.
*/
seek: function() {
var l = this, f = arguments, p, y;
if (f.length === 0)
l._sounds.length && (y = l._sounds[0]._id);
else if (f.length === 1) {
var m = l._getSoundIds(), h = m.indexOf(f[0]);
h >= 0 ? y = parseInt(f[0], 10) : l._sounds.length && (y = l._sounds[0]._id, p = parseFloat(f[0]));
} else f.length === 2 && (p = parseFloat(f[0]), y = parseInt(f[1], 10));
if (typeof y > "u")
return 0;
if (typeof p == "number" && (l._state !== "loaded" || l._playLock))
return l._queue.push({
event: "seek",
action: function() {
l.seek.apply(l, f);
}
}), l;
var w = l._soundById(y);
if (w)
if (typeof p == "number" && p >= 0) {
var $ = l.playing(y);
$ && l.pause(y, !0), w._seek = p, w._ended = !1, l._clearTimer(y), !l._webAudio && w._node && !isNaN(w._node.duration) && (w._node.currentTime = p);
var _ = function() {
$ && l.play(y, !0), l._emit("seek", y);
};
if ($ && !l._webAudio) {
var S = function() {
l._playLock ? setTimeout(S, 0) : _();
};
setTimeout(S, 0);
} else
_();
} else if (l._webAudio) {
var b = l.playing(y) ? r.ctx.currentTime - w._playStart : 0, F = w._rateSeek ? w._rateSeek - w._seek : 0;
return w._seek + (F + b * Math.abs(w._rate));
} else
return w._node.currentTime;
return l;
},
/**
* Check if a specific sound is currently playing or not (if id is provided), or check if at least one of the sounds in the group is playing or not.
* @param {Number} id The sound id to check. If none is passed, the whole sound group is checked.
* @return {Boolean} True if playing and false if not.
*/
playing: function(l) {
var f = this;
if (typeof l == "number") {
var p = f._soundById(l);
return p ? !p._paused : !1;
}
for (var y = 0; y < f._sounds.length; y++)
if (!f._sounds[y]._paused)
return !0;
return !1;
},
/**
* Get the duration of this sound. Passing a sound id will return the sprite duration.
* @param {Number} id The sound id to check. If none is passed, return full source duration.
* @return {Number} Audio duration in seconds.
*/
duration: function(l) {
var f = this, p = f._duration, y = f._soundById(l);
return y && (p = f._sprite[y._sprite][1] / 1e3), p;
},
/**
* Returns the current loaded state of this Howl.
* @return {String} 'unloaded', 'loading', 'loaded'
*/
state: function() {
return this._state;
},
/**
* Unload and destroy the current Howl object.
* This will immediately stop all sound instances attached to this group.
*/
unload: function() {
for (var l = this, f = l._sounds, p = 0; p < f.length; p++)
f[p]._paused || l.stop(f[p]._id), l._webAudio || (l._clearSound(f[p]._node), f[p]._node.removeEventListener("error", f[p]._errorFn, !1), f[p]._node.removeEventListener(r._canPlayEvent, f[p]._loadFn, !1), f[p]._node.removeEventListener("ended", f[p]._endFn, !1), r._releaseHtml5Audio(f[p]._node)), delete f[p]._node, l._clearTimer(f[p]._id);
var y = r._howls.indexOf(l);
y >= 0 && r._howls.splice(y, 1);
var m = !0;
for (p = 0; p < r._howls.length; p++)
if (r._howls[p]._src === l._src || l._src.indexOf(r._howls[p]._src) >= 0) {
m = !1;
break;
}
return a && m && delete a[l._src], r.noAudio = !1, l._state = "unloaded", l._sounds = [], l = null, null;
},
/**
* Listen to a custom event.
* @param {String} event Event name.
* @param {Function} fn Listener to call.
* @param {Number} id (optional) Only listen to events for this sound.
* @param {Number} once (INTERNAL) Marks event to fire only once.
* @return {Howl}
*/
on: function(l, f, p, y) {
var m = this, h = m["_on" + l];
return typeof f == "function" && h.push(y ? { id: p, fn: f, once: y } : { id: p, fn: f }), m;
},
/**
* Remove a custom event. Call without parameters to remove all events.
* @param {String} event Event name.
* @param {Function} fn Listener to remove. Leave empty to remove all.
* @param {Number} id (optional) Only remove events for this sound.
* @return {Howl}
*/
off: function(l, f, p) {
var y = this, m = y["_on" + l], h = 0;
if (typeof f == "number" && (p = f, f = null), f || p)
for (h = 0; h < m.length; h++) {
var w = p === m[h].id;
if (f === m[h].fn && w || !f && w) {
m.splice(h, 1);
break;
}
}
else if (l)
y["_on" + l] = [];
else {
var $ = Object.keys(y);
for (h = 0; h < $.length; h++)
$[h].indexOf("_on") === 0 && Array.isArray(y[$[h]]) && (y[$[h]] = []);
}
return y;
},
/**
* Listen to a custom event and remove it once fired.
* @param {String} event Event name.
* @param {Function} fn Listener to call.
* @param {Number} id (optional) Only listen to events for this sound.
* @return {Howl}
*/
once: function(l, f, p) {
var y = this;
return y.on(l, f, p, 1), y;
},
/**
* Emit all events of a specific type and pass the sound id.
* @param {String} event Event name.
* @param {Number} id Sound ID.
* @param {Number} msg Message to go with event.
* @return {Howl}
*/
_emit: function(l, f, p) {
for (var y = this, m = y["_on" + l], h = m.length - 1; h >= 0; h--)
(!m[h].id || m[h].id === f || l === "load") && (setTimeout((function(w) {
w.call(this, f, p);
}).bind(y, m[h].fn), 0), m[h].once && y.off(l, m[h].fn, m[h].id));
return y._loadQueue(l), y;
},
/**
* Queue of actions initiated before the sound has loaded.
* These will be called in sequence, with the next only firing
* after the previous has finished executing (even if async like play).
* @return {Howl}
*/
_loadQueue: function(l) {
var f = this;
if (f._queue.length > 0) {
var p = f._queue[0];
p.event === l && (f._queue.shift(), f._loadQueue()), l || p.action();
}
return f;
},
/**
* Fired when playback ends at the end of the duration.
* @param {Sound} sound The sound object to work with.
* @return {Howl}
*/
_ended: function(l) {
var f = this, p = l._sprite;
if (!f._webAudio && l._node && !l._node.paused && !l._node.ended && l._node.currentTime < l._stop)
return setTimeout(f._ended.bind(f, l), 100), f;
var y = !!(l._loop || f._sprite[p][2]);
if (f._emit("end", l._id), !f._webAudio && y && f.stop(l._id, !0).play(l._id), f._webAudio && y) {
f._emit("play", l._id), l._seek = l._start || 0, l._rateSeek = 0, l._playStart = r.ctx.currentTime;
var m = (l._stop - l._start) * 1e3 / Math.abs(l._rate);
f._endTimers[l._id] = setTimeout(f._ended.bind(f, l), m);
}
return f._webAudio && !y && (l._paused = !0, l._ended = !0, l._seek = l._start || 0, l._rateSeek = 0, f._clearTimer(l._id), f._cleanBuffer(l._node), r._autoSuspend()), !f._webAudio && !y && f.stop(l._id, !0), f;
},
/**
* Clear the end timer for a sound playback.
* @param {Number} id The sound ID.
* @return {Howl}
*/
_clearTimer: function(l) {
var f = this;
if (f._endTimers[l]) {
if (typeof f._endTimers[l] != "function")
clearTimeout(f._endTimers[l]);
else {
var p = f._soundById(l);
p && p._node && p._node.removeEventListener("ended", f._endTimers[l], !1);
}
delete f._endTimers[l];
}
return f;
},
/**
* Return the sound identified by this ID, or return null.
* @param {Number} id Sound ID
* @return {Object} Sound object or null.
*/
_soundById: function(l) {
for (var f = this, p = 0; p < f._sounds.length; p++)
if (l === f._sounds[p]._id)
return f._sounds[p];
return null;
},
/**
* Return an inactive sound from the pool or create a new one.
* @return {Sound} Sound playback object.
*/
_inactiveSound: function() {
var l = this;
l._drain();
for (var f = 0; f < l._sounds.length; f++)
if (l._sounds[f]._ended)
return l._sounds[f].reset();
return new o(l);
},
/**
* Drain excess inactive sounds from the pool.
*/
_drain: function() {
var l = this, f = l._pool, p = 0, y = 0;
if (!(l._sounds.length < f)) {
for (y = 0; y < l._sounds.length; y++)
l._sounds[y]._ended && p++;
for (y = l._sounds.length - 1; y >= 0; y--) {
if (p <= f)
return;
l._sounds[y]._ended && (l._webAudio && l._sounds[y]._node && l._sounds[y]._node.disconnect(0), l._sounds.splice(y, 1), p--);
}
}
},
/**
* Get all ID's from the sounds pool.
* @param {Number} id Only return one ID if one is passed.
* @return {Array} Array of IDs.
*/
_getSoundIds: function(l) {
var f = this;
if (typeof l > "u") {
for (var p = [], y = 0; y < f._sounds.length; y++)
p.push(f._sounds[y]._id);
return p;
} else
return [l];
},
/**
* Load the sound back into the buffer source.
* @param {Sound} sound The sound object to work with.
* @return {Howl}
*/
_refreshBuffer: function(l) {
var f = this;
return l._node.bufferSource = r.ctx.createBufferSource(), l._node.bufferSource.buffer = a[f._src], l._panner ? l._node.bufferSource.connect(l._panner) : l._node.bufferSource.connect(l._node), l._node.bufferSource.loop = l._loop, l._loop && (l._node.bufferSource.loopStart = l._start || 0, l._node.bufferSource.loopEnd = l._stop || 0), l._node.bufferSource.playbackRate.setValueAtTime(l._rate, r.ctx.currentTime), f;
},
/**
* Prevent memory leaks by cleaning up the buffer source after playback.
* @param {Object} node Sound's audio node containing the buffer source.
* @return {Howl}
*/
_cleanBuffer: function(l) {
var f = this, p = r._navigator && r._navigator.vendor.indexOf("Apple") >= 0;
if (!l.bufferSource)
return f;
if (r._scratchBuffer && l.bufferSource && (l.bufferSource.onended = null, l.bufferSource.disconnect(0), p))
try {
l.bufferSource.buffer = r._scratchBuffer;
} catch {
}
return l.bufferSource = null, f;
},
/**
* Set the source to a 0-second silence to stop any downloading (except in IE).
* @param {Object} node Audio node to clear.
*/
_clearSound: function(l) {
var f = /MSIE |Trident\//.test(r._navigator && r._navigator.userAgent);
f || (l.src = "data:audio/wav;base64,UklGRigAAABXQVZFZm10IBIAAAABAAEARKwAAIhYAQACABAAAABkYXRhAgAAAAEA");
}
};
var o = function(l) {
this._parent = l, this.init();
};
o.prototype = {
/**
* Initialize a new Sound object.
* @return {Sound}
*/
init: function() {
var l = this, f = l._parent;
return l._muted = f._muted, l._loop = f._loop, l._volume = f._volume, l._rate = f._rate, l._seek = 0, l._paused = !0, l._ended = !0, l._sprite = "__default", l._id = ++r._counter, f._sounds.push(l), l.create(), l;
},
/**
* Create and setup a new sound object, whether HTML5 Audio or Web Audio.
* @return {Sound}
*/
create: function() {
var l = this, f = l._parent, p = r._muted || l._muted || l._parent._muted ? 0 : l._volume;
return f._webAudio ? (l._node = typeof r.ctx.createGain > "u" ? r.ctx.createGainNode() : r.ctx.createGain(), l._node.gain.setValueAtTime(p, r.ctx.currentTime), l._node.paused = !0, l._node.connect(r.masterGain)) : r.noAudio || (l._node = r._obtainHtml5Audio(), l._errorFn = l._errorListener.bind(l), l._node.addEventListener("error", l._errorFn, !1), l._loadFn = l._loadListener.bind(l), l._node.addEventListener(r._canPlayEvent, l._loadFn, !1), l._endFn = l._endListener.bind(l), l._node.addEventListener("ended", l._endFn, !1), l._node.src = f._src, l._node.preload = f._preload === !0 ? "auto" : f._preload, l._node.volume = p * r.volume(), l._node.load()), l;
},
/**
* Reset the parameters of this sound to the original state (for recycle).
* @return {Sound}
*/
reset: function() {
var l = this, f = l._parent;
return l._muted = f._muted, l._loop = f._loop, l._volume = f._volume, l._rate = f._rate, l._seek = 0, l._rateSeek = 0, l._paused = !0, l._ended = !0, l._sprite = "__default", l._id = ++r._counter, l;
},
/**
* HTML5 Audio error listener callback.
*/
_errorListener: function() {
var l = this;
l._parent._emit("loaderror", l._id, l._node.error ? l._node.error.code : 0), l._node.removeEventListener("error", l._errorFn, !1);
},
/**
* HTML5 Audio canplaythrough listener callback.
*/
_loadListener: function() {
var l = this, f = l._parent;
f._duration = Math.ceil(l._node.duration * 10) / 10, Object.keys(f._sprite).length === 0 && (f._sprite = { __default: [0, f._duration * 1e3] }), f._state !== "loaded" && (f._state = "loaded", f._emit("load"), f._loadQueue()), l._node.removeEventListener(r._canPlayEvent, l._loadFn, !1);
},
/**
* HTML5 Audio ended listener callback.
*/
_endListener: function() {
var l = this, f = l._parent;
f._duration === 1 / 0 && (f._duration = Math.ceil(l._node.duration * 10) / 10, f._sprite.__default[1] === 1 / 0 && (f._sprite.__default[1] = f._duration * 1e3), f._ended(l)), l._node.removeEventListener("ended", l._endFn, !1);
}
};
var a = {}, i = function(l) {
var f = l._src;
if (a[f]) {
l._duration = a[f].duration, c(l);
return;
}
if (/^data:[^;]+;base64,/.test(f)) {
for (var p = atob(f.split(",")[1]), y = new Uint8Array(p.length), m = 0; m < p.length; ++m)
y[m] = p.charCodeAt(m);
u(y.buffer, l);
} else {
var h = new XMLHttpRequest();
h.open(l._xhr.method, f, !0), h.withCredentials = l._xhr.withCredentials, h.responseType = "arraybuffer", l._xhr.headers && Object.keys(l._xhr.headers).forEach(function(w) {
h.setRequestHeader(w, l._xhr.headers[w]);
}), h.onload = function() {
var w = (h.status + "")[0];
if (w !== "0" && w !== "2" && w !== "3") {
l._emit("loaderror", null, "Failed loading audio file with status: " + h.status + ".");
return;
}
u(h.response, l);
}, h.onerror = function() {
l._webAudio && (l._html5 = !0, l._webAudio = !1, l._sounds = [], delete a[f], l.load());
}, s(h);
}
}, s = function(l) {
try {
l.send();
} catch {
l.onerror();
}
}, u = function(l, f) {
var p = function() {
f._emit("loaderror", null, "Decoding audio data failed.");
}, y = function(m) {
m && f._sounds.length > 0 ? (a[f._src] = m, c(f, m)) : p();
};
typeof Promise < "u" && r.ctx.decodeAudioData.length === 1 ? r.ctx.decodeAudioData(l).then(y).catch(p) : r.ctx.decodeAudioData(l, y, p);
}, c = function(l, f) {
f && !l._duration && (l._duration = f.duration), Object.keys(l._sprite).length === 0 && (l._sprite = { __default: [0, l._duration * 1e3] }), l._state !== "loaded" && (l._state = "loaded", l._emit("load"), l._loadQueue());
}, d = function() {
if (r.usingWebAudio) {
try {
typeof AudioContext < "u" ? r.ctx = new AudioContext() : typeof webkitAudioContext < "u" ? r.ctx = new webkitAudioContext() : r.usingWebAudio = !1;
} catch {
r.usingWebAudio = !1;
}
r.ctx || (r.usingWebAudio = !1);
var l = /iP(hone|od|ad)/.test(r._navigator && r._navigator.platform), f = r._navigator && r._navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/), p = f ? parseInt(f[1], 10) : null;
if (l && p && p < 9) {
var y = /safari/.test(r._navigator && r._navigator.userAgent.toLowerCase());
r._navigator && !y && (r.usingWebAudio = !1);
}
r.usingWebAudio && (r.masterGain = typeof r.ctx.createGain > "u" ? r.ctx.createGainNode() : r.ctx.createGain(), r.masterGain.gain.setValueAtTime(r._muted ? 0 : r._volume, r.ctx.currentTime), r.masterGain.connect(r.ctx.destination)), r._setup();
}
};
e.Howler = r, e.Howl = n, typeof Ym < "u" ? (Ym.HowlerGlobal = t, Ym.Howler = r, Ym.Howl = n, Ym.Sound = o) : typeof window < "u" && (window.HowlerGlobal = t, window.Howler = r, window.Howl = n, window.Sound = o);
})();
/*!
* Spatial Plugin - Adds support for stereo and 3D audio where Web Audio is supported.
*
* howler.js v2.2.4
* howlerjs.com
*
* (c) 2013-2020, James Simpson of GoldFire Studios
* goldfirestudios.com
*
* MIT License
*/
(function() {
HowlerGlobal.prototype._pos = [0, 0, 0], HowlerGlobal.prototype._orientation = [0, 0, -1, 0, 1, 0], HowlerGlobal.prototype.stereo = function(r) {
var n = this;
if (!n.ctx || !n.ctx.listener)
return n;
for (var o = n._howls.length - 1; o >= 0; o--)
n._howls[o].stereo(r);
return n;
}, HowlerGlobal.prototype.pos = function(r, n, o) {
var a = this;
if (!a.ctx || !a.ctx.listener)
return a;
if (n = typeof n != "number" ? a._pos[1] : n, o = typeof o != "number" ? a._pos[2] : o, typeof r == "number")
a._pos = [r, n, o], typeof a.ctx.listener.positionX < "u" ? (a.ctx.listener.positionX.setTargetAtTime(a._pos[0], Howler.ctx.currentTime, 0.1), a.ctx.listener.positionY.setTargetAtTime(a._pos[1], Howler.ctx.currentTime, 0.1), a.ctx.listener.positionZ.setTargetAtTime(a._pos[2], Howler.ctx.currentTime, 0.1)) : a.ctx.listener.setPosition(a._pos[0], a._pos[1], a._pos[2]);
else
return a._pos;
return a;
}, HowlerGlobal.prototype.orientation = function(r, n, o, a, i, s) {
var u = this;
if (!u.ctx || !u.ctx.listener)
return u;
var c = u._orientation;
if (n = typeof n != "number" ? c[1] : n, o = typeof o != "number" ? c[2] : o, a = typeof a != "number" ? c[3] : a, i = typeof i != "number" ? c[4] : i, s = typeof s != "number" ? c[5] : s, typeof r == "number")
u._orientation = [r, n, o, a, i, s], typeof u.ctx.listener.forwardX < "u" ? (u.ctx.listener.forwardX.setTargetAtTime(r, Howler.ctx.currentTime, 0.1), u.ctx.listener.forwardY.setTargetAtTime(n, Howler.ctx.currentTime, 0.1), u.ctx.listener.forwardZ.setTargetAtTime(o, Howler.ctx.currentTime, 0.1), u.ctx.listener.upX.setTargetAtTime(a, Howler.ctx.currentTime, 0.1), u.ctx.listener.upY.setTargetAtTime(i, Howler.ctx.currentTime, 0.1), u.ctx.listener.upZ.setTargetAtTime(s, Howler.ctx.currentTime, 0.1)) : u.ctx.listener.setOrientation(r, n, o, a, i, s);
else
return c;
return u;
}, Howl.prototype.init = /* @__PURE__ */ function(r) {
return function(n) {
var o = this;
return o._orientation = n.orientation || [1, 0, 0], o._stereo = n.stereo || null, o._pos = n.pos || null, o._pannerAttr = {
coneInnerAngle: typeof n.coneInnerAngle < "u" ? n.coneInnerAngle : 360,
coneOuterAngle: typeof n.coneOuterAngle < "u" ? n.coneOuterAngle : 360,
coneOuterGain: typeof n.coneOuterGain < "u" ? n.coneOuterGain : 0,
distanceModel: typeof n.distanceModel < "u" ? n.distanceModel : "inverse",
maxDistance: typeof n.maxDistance < "u" ? n.maxDistance : 1e4,
panningModel: typeof n.panningModel < "u" ? n.panningModel : "HRTF",
refDistance: typeof n.refDistance < "u" ? n.refDistance : 1,
rolloffFactor: typeof n.rolloffFactor < "u" ? n.rolloffFactor : 1
}, o._onstereo = n.onstereo ? [{ fn: n.onstereo }] : [], o._onpos = n.onpos ? [{ fn: n.onpos }] : [], o._onorientation = n.onorientation ? [{ fn: n.onorientation }] : [], r.call(this, n);
};
}(Howl.prototype.init), Howl.prototype.stereo = function(r, n) {
var o = this;
if (!o._webAudio)
return o;
if (o._state !== "loaded")
return o._queue.push({
event: "stereo",
action: function() {
o.stereo(r, n);
}
}), o;
var a = typeof Howler.ctx.createStereoPanner > "u" ? "spatial" : "stereo";
if (typeof n > "u")
if (typeof r == "number")
o._stereo = r, o._pos = [r, 0, 0];
else
return o._stereo;
for (var i = o._getSoundIds(n), s = 0; s < i.length; s++) {
var u = o._soundById(i[s]);
if (u)
if (typeof r == "number")
u._stereo = r, u._pos = [r, 0, 0], u._node && (u._pannerAttr.panningModel = "equalpower", (!u._panner || !u._panner.pan) && t(u, a), a === "spatial" ? typeof u._panner.positionX < "u" ? (u._panner.positionX.setValueAtTime(r, Howler.ctx.currentTime), u._panner.positionY.setValueAtTime(0, Howler.ctx.currentTime), u._panner.positionZ.setValueAtTime(0, Howler.ctx.currentTime)) : u._panner.setPosition(r, 0, 0) : u._panner.pan.setValueAtTime(r, Howler.ctx.currentTime)), o._emit("stereo", u._id);
else
return u._stereo;
}
return o;
}, Howl.prototype.pos = function(r, n, o, a) {
var i = this;
if (!i._webAudio)
return i;
if (i._state !== "loaded")
return i._queue.push({
event: "pos",
action: function() {
i.pos(r, n, o, a);
}
}), i;
if (n = typeof n != "number" ? 0 : n, o = typeof o != "number" ? -0.5 : o, typeof a > "u")
if (typeof r == "number")
i._pos = [r, n, o];
else
return i._pos;
for (var s = i._getSoundIds(a), u = 0; u < s.length; u++) {
var c = i._soundById(s[u]);
if (c)
if (typeof r == "number")
c._pos = [r, n, o], c._node && ((!c._panner || c._panner.pan) && t(c, "spatial"), typeof c._panner.positionX < "u" ? (c._panner.positionX.setValueAtTime(r, Howler.ctx.currentTime), c._panner.positionY.setValueAtTime(n, Howler.ctx.currentTime), c._panner.positionZ.setValueAtTime(o, Howler.ctx.currentTime)) : c._panner.setPosition(r, n, o)), i._emit("pos", c._id);
else
return c._pos;
}
return i;
}, Howl.prototype.orientation = function(r, n, o, a) {
var i = this;
if (!i._webAudio)
return i;
if (i._state !== "loaded")
return i._queue.push({
event: "orientation",
action: function() {
i.orientation(r, n, o, a);
}
}), i;
if (n = typeof n != "number" ? i._orientation[1] : n, o = typeof o != "number" ? i._orientation[2] : o, typeof a > "u")
if (typeof r == "number")
i._orientation = [r, n, o];
else
return i._orientation;
for (var s = i._getSoundIds(a), u = 0; u < s.length; u++) {
var c = i._soundById(s[u]);
if (c)
if (typeof r == "number")
c._orientation = [r, n, o], c._node && (c._panner || (c._pos || (c._pos = i._pos || [0, 0, -0.5]), t(c, "spatial")), typeof c._panner.orientationX < "u" ? (c._panner.orientationX.setValueAtTime(r, Howler.ctx.currentTime), c._panner.orientationY.setValueAtTime(n, Howler.ctx.currentTime), c._panner.orientationZ.setValueAtTime(o, Howler.ctx.currentTime)) : c._panner.setOrientation(r, n, o)), i._emit("orientation", c._id);
else
return c._orientation;
}
return i;
}, Howl.prototype.pannerAttr = function() {
var r = this, n = arguments, o, a, i;
if (!r._webAudio)
return r;
if (n.length === 0)
return r._pannerAttr;
if (n.length === 1)
if (typeof n[0] == "object")
o = n[0], typeof a > "u" && (o.pannerAttr || (o.pannerAttr = {
coneInnerAngle: o.coneInnerAngle,
coneOuterAngle: o.coneOuterAngle,
coneOuterGain: o.coneOuterGain,
distanceModel: o.distanceModel,
maxDistance: o.maxDistance,
refDistance: o.refDistance,
rolloffFactor: o.rolloffFactor,
panningModel: o.panningModel
}), r._pannerAttr = {
coneInnerAngle: typeof o.pannerAttr.coneInnerAngle < "u" ? o.pannerAttr.coneInnerAngle : r._coneInnerAngle,
coneOuterAngle: typeof o.pannerAttr.coneOuterAngle < "u" ? o.pannerAttr.coneOuterAngle : r._coneOuterAngle,
coneOuterGain: typeof o.pannerAttr.coneOuterGain < "u" ? o.pannerAttr.coneOuterGain : r._coneOuterGain,
distanceModel: typeof o.pannerAttr.distanceModel < "u" ? o.pannerAttr.distanceModel : r._distanceModel,
maxDistance: typeof o.pannerAttr.maxDistance < "u" ? o.pannerAttr.maxDistance : r._maxDistance,
refDistance: typeof o.pannerAttr.refDistance < "u" ? o.pannerAttr.refDistance : r._refDistance,
rolloffFactor: typeof o.pannerAttr.rolloffFactor < "u" ? o.pannerAttr.rolloffFactor : r._rolloffFactor,
panningModel: typeof o.pannerAttr.panningModel < "u" ? o.pannerAttr.panningModel : r._panningModel
});
else
return i = r._soundById(parseInt(n[0], 10)), i ? i._pannerAttr : r._pannerAttr;
else n.length === 2 && (o = n[0], a = parseInt(n[1], 10));
for (var s = r._getSoundIds(a), u = 0; u < s.length; u++)
if (i = r._soundById(s[u]), i) {
var c = i._pannerAttr;
c = {
coneInnerAngle: typeof o.coneInnerAngle < "u" ? o.coneInnerAngle : c.coneInnerAngle,
coneOuterAngle: typeof o.coneOuterAngle < "u" ? o.coneOuterAngle : c.coneOuterAngle,
coneOuterGain: typeof o.coneOuterGain < "u" ? o.coneOuterGain : c.coneOuterGain,
distanceModel: typeof o.distanceModel < "u" ? o.distanceModel : c.distanceModel,
maxDistance: typeof o.maxDistance < "u" ? o.maxDistance : c.maxDistance,
refDistance: typeof o.refDistance < "u" ? o.refDistance : c.refDistance,
rolloffFactor: typeof o.rolloffFactor < "u" ? o.rolloffFactor : c.rolloffFactor,
panningModel: typeof o.panningModel < "u" ? o.panningModel : c.panningModel
};
var d = i._panner;
d || (i._pos || (i._pos = r._pos || [0, 0, -0.5]), t(i, "spatial"), d = i._panner), d.coneInnerAngle = c.coneInnerAngle, d.coneOuterAngle = c.coneOuterAngle, d.coneOuterGain = c.coneOuterGain, d.distanceModel = c.distanceModel, d.maxDistance = c.maxDistance, d.refDistance = c.refDistance, d.rolloffFactor = c.rolloffFactor, d.panningModel = c.panningModel;
}
return r;
}, Sound.prototype.init = /* @__PURE__ */ function(r) {
return function() {
var n = this, o = n._parent;
n._orientation = o._orientation, n._stereo = o._stereo, n._pos = o._pos, n._pannerAttr = o._pannerAttr, r.call(this), n._stereo ? o.stereo(n._stereo) : n._pos && o.pos(n._pos[0], n._pos[1], n._pos[2], n._id);
};
}(Sound.prototype.init), Sound.prototype.reset = /* @__PURE__ */ function(r) {
return function() {
var n = this, o = n._parent;
return n._orientation = o._orientation, n._stereo = o._stereo, n._pos = o._pos, n._pannerAttr = o._pannerAttr, n._stereo ? o.stereo(n._stereo) : n._pos ? o.pos(n._pos[0], n._pos[1], n._pos[2], n._id) : n._panner && (n._panner.disconnect(0), n._panner = void 0, o._refreshBuffer(n)), r.call(this);
};
}(Sound.prototype.reset);
var t = function(r, n) {
n = n || "spatial", n === "spatial" ? (r._panner = Howler.ctx.createPanner(), r._panner.coneInnerAngle = r._pannerAttr.coneInnerAngle, r._panner.coneOuterAngle = r._pannerAttr.coneOuterAngle, r._panner.coneOuterGain = r._pannerAttr.coneOuterGain, r._panner.distanceModel = r._pannerAttr.distanceModel, r._panner.maxDistance = r._pannerAttr.maxDistance, r._panner.refDistance = r._pannerAttr.refDistance, r._panner.rolloffFactor = r._pannerAttr.rolloffFactor, r._panner.panningModel = r._pannerAttr.panningModel, typeof r._panner.positionX < "u" ? (r._panner.positionX.setValueAtTime(r._pos[0], Howler.ctx.currentTime), r._panner.positionY.setValueAtTime(r._pos[1], Howler.ctx.currentTime), r._panner.positionZ.setValueAtTime(r._pos[2], Howler.ctx.currentTime)) : r._panner.setPosition(r._pos[0], r._pos[1], r._pos[2]), typeof r._panner.orientationX < "u" ? (r._panner.orientationX.setValueAtTime(r._orientation[0], Howler.ctx.currentTime), r._panner.orientationY.setValueAtTime(r._orientation[1], Howler.ctx.currentTime), r._panner.orientationZ.setValueAtTime(r._orientation[2], Howler.ctx.currentTime)) : r._panner.setOrientation(r._orientation[0], r._orientation[1], r._orientation[2])) : (r._panner = Howler.ctx.createStereoPanner(), r._panner.pan.setValueAtTime(r._stereo, Howler.ctx.currentTime)), r._panner.connect(r._node), r._paused || r._parent.pause(r._id, !0).play(r._id, !0);
};
})();
}(mF)), mF;
}
o9e();
var Zh, Ii;
const a9e = class yh {
constructor() {
DQ(this, Ii), pF(this, Ii, /* @__PURE__ */ new Map());
}
static getInstance() {
return Al(yh, Zh) === void 0 && pF(yh, Zh, new yh()), Al(yh, Zh);
}
hasSound(t) {
return Al(this, Ii).has(t);
}
setSound(t, r) {
Al(this, Ii).set(t, r);
}
setSoundOnce(t, r) {
Al(this, Ii).has(t) || Al(this, Ii).set(t, r);
}
getSound(t) {
return Al(this, Ii).get(t);
}
playSound(t) {
var r;
(r = Al(this, Ii).get(t)) == null || r.play();
}
};
Zh = /* @__PURE__ */ new WeakMap(), Ii = /* @__PURE__ */ new WeakMap(), DQ(a9e, Zh);
var gF;
(function(e) {
e.WINDOW_RESIZED = "tauri://resize", e.WINDOW_MOVED = "tauri://move", e.WINDOW_CLOSE_REQUESTED = "tauri://close-requested", e.WINDOW_DESTROYED = "tauri://destroyed", e.WINDOW_FOCUS = "tauri://focus", e.WINDOW_BLUR = "tauri://blur", e.WINDOW_SCALE_FACTOR_CHANGED = "tauri://scale-change", e.WINDOW_THEME_CHANGED = "tauri://theme-changed", e.WINDOW_CREATED = "tauri://window-created", e.WEBVIEW_CREATED = "tauri://webview-created", e.DRAG_ENTER = "tauri://drag-enter", e.DRAG_OVER = "tauri://drag-over", e.DRAG_DROP = "tauri://drag-drop", e.DRAG_LEAVE = "tauri://drag-leave";
})(gF || (gF = {}));
let i9e = { data: "" }, s9e = (e) => typeof window == "object" ? ((e ? e.querySelector("#_goober") : window._goober) || Object.assign((e || document.head).appendChild(document.createElement("style")), { innerHTML: " ", id: "_goober" })).firstChild : e || i9e, l9e = /(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g, c9e = /\/\*[^]*?\*\/| +/g, bF = /\n+/g, Hl = (e, t) => {
let r = "", n = "", o = "";
for (let a in e) {
let i = e[a];
a[0] == "@" ? a[1] == "i" ? r = a + " " + i + ";" : n += a[1] == "f" ? Hl(i, a) : a + "{" + Hl(i, a[1] == "k" ? "" : t) + "}" : typeof i == "object" ? n += Hl(i, t ? t.replace(/([^,])+/g, (s) => a.replace(/([^,]*:\S+\([^)]*\))|([^,])+/g, (u) => /&/.test(u) ? u.replace(/&/g, s) : s ? s + " " + u : u)) : a) : i != null && (a = /^--/.test(a) ? a : a.replace(/[A-Z]/g, "-$&").toLowerCase(), o += Hl.p ? Hl.p(a, i) : a + ":" + i + ";");
}
return r + (t && o ? t + "{" + o + "}" : o) + n;
}, Ai = {}, FQ = (e) => {
if (typeof e == "object") {
let t = "";
for (let r in e) t += r + FQ(e[r]);
return t;
}
return e;
}, u9e = (e, t, r, n, o) => {
let a = FQ(e), i = Ai[a] || (Ai[a] = ((u) => {
let c = 0, d = 11;
for (; c < u.length; ) d = 101 * d + u.charCodeAt(c++) >>> 0;
return "go" + d;
})(a));
if (!Ai[i]) {
let u = a !== e ? e : ((c) => {
let d, l, f = [{}];
for (; d = l9e.exec(c.replace(c9e, "")); ) d[4] ? f.shift() : d[3] ? (l = d[3].replace(bF, " ").trim(), f.unshift(f[0][l] = f[0][l] || {})) : f[0][d[1]] = d[2].replace(bF, " ").trim();
return f[0];
})(e);
Ai[i] = Hl(o ? { ["@keyframes " + i]: u } : u, r ? "" : "." + i);
}
let s = r && Ai.g ? Ai.g : null;
return r && (Ai.g = Ai[i]), ((u, c, d, l) => {
l ? c.data = c.data.replace(l, u) : c.data.indexOf(u) === -1 && (c.data = d ? u + c.data : c.data + u);
})(Ai[i], t, n, s), i;
}, f9e = (e, t, r) => e.reduce((n, o, a) => {
let i = t[a];
if (i && i.call) {
let s = i(r), u = s && s.props && s.props.className || /^go/.test(s) && s;
i = u ? "." + u : s && typeof s == "object" ? s.props ? "" : Hl(s, "") : s === !1 ? "" : s;
}
return n + o + (i ?? "");
}, "");
function Jx(e) {
let t = this || {}, r = e.call ? e(t.p) : e;
return u9e(r.unshift ? r.raw ? f9e(r, [].slice.call(arguments, 1), t.p) : r.reduce((n, o) => Object.assign(n, o && o.call ? o(t.p) : o), {}) : r, s9e(t.target), t.g, t.o, t.k);
}
let LQ, GA, UA;
Jx.bind({ g: 1 });
let os = Jx.bind({ k: 1 });
function d9e(e, t, r, n) {
Hl.p = t, LQ = e, GA = r, UA = n;
}
function Yc(e, t) {
let r = this || {};
return function() {
let n = arguments;
function o(a, i) {
let s = Object.assign({}, a), u = s.className || o.className;
r.p = Object.assign({ theme: GA && GA() }, s), r.o = / *go\d+/.test(u), s.className = Jx.apply(r, n) + (u ? " " + u : "");
let c = e;
return e[0] && (c = s.as || e, delete s.as), UA && c[0] && UA(s), LQ(c, s);
}
return o;
};
}
var p9e = (e) => typeof e == "function", m9e = (e, t) => p9e(e) ? e(t) : e, h9e = /* @__PURE__ */ (() => {
let e;
return () => {
if (e === void 0 && typeof window < "u") {
let t = matchMedia("(prefers-reduced-motion: reduce)");
e = !t || t.matches;
}
return e;
};
})(), g9e = os`
from {
transform: scale(0) rotate(45deg);
opacity: 0;
}
to {
transform: scale(1) rotate(45deg);
opacity: 1;
}`, b9e = os`
from {
transform: scale(0);
opacity: 0;
}
to {
transform: scale(1);
opacity: 1;
}`, y9e = os`
from {
transform: scale(0) rotate(90deg);
opacity: 0;
}
to {
transform: scale(1) rotate(90deg);
opacity: 1;
}`, v9e = Yc("div")`
width: 20px;
opacity: 0;
height: 20px;
border-radius: 10px;
background: ${(e) => e.primary || "#ff4b4b"};
position: relative;
transform: rotate(45deg);
animation: ${g9e} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)
forwards;
animation-delay: 100ms;
&:after,
&:before {
content: '';
animation: ${b9e} 0.15s ease-out forwards;
animation-delay: 150ms;
position: absolute;
border-radius: 3px;
opacity: 0;
background: ${(e) => e.secondary || "#fff"};
bottom: 9px;
left: 4px;
height: 2px;
width: 12px;
}
&:before {
animation: ${y9e} 0.15s ease-out forwards;
animation-delay: 180ms;
transform: rotate(90deg);
}
`, x9e = os`
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
`, w9e = Yc("div")`
width: 12px;
height: 12px;
box-sizing: border-box;
border: 2px solid;
border-radius: 100%;
border-color: ${(e) => e.secondary || "#e0e0e0"};
border-right-color: ${(e) => e.primary || "#616161"};
animation: ${x9e} 1s linear infinite;
`, $9e = os`
from {
transform: scale(0) rotate(45deg);
opacity: 0;
}
to {
transform: scale(1) rotate(45deg);
opacity: 1;
}`, k9e = os`
0% {
height: 0;
width: 0;
opacity: 0;
}
40% {
height: 0;
width: 6px;
opacity: 1;
}
100% {
opacity: 1;
height: 10px;
}`, _9e = Yc("div")`
width: 20px;
opacity: 0;
height: 20px;
border-radius: 10px;
background: ${(e) => e.primary || "#61d345"};
position: relative;
transform: rotate(45deg);
animation: ${$9e} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)
forwards;
animation-delay: 100ms;
&:after {
content: '';
box-sizing: border-box;
animation: ${k9e} 0.2s ease-out forwards;
opacity: 0;
animation-delay: 200ms;
position: absolute;
border-right: 2px solid;
border-bottom: 2px solid;
border-color: ${(e) => e.secondary || "#fff"};
bottom: 6px;
left: 6px;
height: 10px;
width: 6px;
}
`, O9e = Yc("div")`
position: absolute;
`, S9e = Yc("div")`
position: relative;
display: flex;
justify-content: center;
align-items: center;
min-width: 20px;
min-height: 20px;
`, E9e = os`
from {
transform: scale(0.6);
opacity: 0.4;
}
to {
transform: scale(1);
opacity: 1;
}`, A9e = Yc("div")`
position: relative;
transform: scale(0.6);
opacity: 0.4;
min-width: 20px;
animation: ${E9e} 0.3s 0.12s cubic-bezier(0.175, 0.885, 0.32, 1.275)
forwards;
`, P9e = ({ toast: e }) => {
let { icon: t, type: r, iconTheme: n } = e;
return t !== void 0 ? typeof t == "string" ? V.createElement(A9e, null, t) : t : r === "blank" ? null : V.createElement(S9e, null, V.createElement(w9e, { ...n }), r !== "loading" && V.createElement(O9e, null, r === "error" ? V.createElement(v9e, { ...n }) : V.createElement(_9e, { ...n })));
}, C9e = (e) => `
0% {transform: translate3d(0,${e * -200}%,0) scale(.6); opacity:.5;}
100% {transform: translate3d(0,0,0) scale(1); opacity:1;}
`, N9e = (e) => `
0% {transform: translate3d(0,0,-1px) scale(1); opacity:1;}
100% {transform: translate3d(0,${e * -150}%,-1px) scale(.6); opacity:0;}
`, T9e = "0%{opacity:0;} 100%{opacity:1;}", I9e = "0%{opacity:1;} 100%{opacity:0;}", j9e = Yc("div")`
display: flex;
align-items: center;
background: #fff;
color: #363636;
line-height: 1.3;
will-change: transform;
box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1), 0 3px 3px rgba(0, 0, 0, 0.05);
max-width: 350px;
pointer-events: auto;
padding: 8px 10px;
border-radius: 8px;
`, R9e = Yc("div")`
display: flex;
justify-content: center;
margin: 4px 10px;
color: inherit;
flex: 1 1 auto;
white-space: pre-line;
`, M9e = (e, t) => {
let r = e.includes("top") ? 1 : -1, [n, o] = h9e() ? [T9e, I9e] : [C9e(r), N9e(r)];
return { animation: t ? `${os(n)} 0.35s cubic-bezier(.21,1.02,.73,1) forwards` : `${os(o)} 0.4s forwards cubic-bezier(.06,.71,.55,1)` };
};
V.memo(({ toast: e, position: t, style: r, children: n }) => {
let o = e.height ? M9e(e.position || t || "top-center", e.visible) : { opacity: 0 }, a = V.createElement(P9e, { toast: e }), i = V.createElement(R9e, { ...e.ariaProps }, m9e(e.message, e));
return V.createElement(j9e, { className: e.className, style: { ...o, ...r, ...e.style } }, typeof n == "function" ? n({ icon: a, message: i }) : V.createElement(V.Fragment, null, a, i));
});
d9e(V.createElement);
Jx`
z-index: 9999;
> * {
pointer-events: auto;
}
`;
const D9e = () => {
var u, c, d, l;
const [e, t] = de(void 0), [r, n] = de(!1), o = async () => {
n(!0);
try {
const f = await Jve();
t(f);
} catch (f) {
console.error("Error fetching Midjourney session", f), t(void 0);
} finally {
n(!1);
}
};
ue(() => {
o();
}, []), n9e(async (f) => {
o();
});
const a = async () => {
var f;
(f = e == null ? void 0 : e.payload) != null && f.can_clear_state ? (await i(), t(void 0)) : await s();
}, i = async () => {
try {
await Mg("midjourney_clear_credentials_command");
} catch (f) {
console.error("Error clearing Midjourney credentials", f);
}
}, s = async () => {
try {
await Mg("midjourney_open_login_command");
} catch (f) {
console.error("Error opening Midjourney login", f);
}
};
return /* @__PURE__ */ Te("div", { className: "flex justify-between items-center", children: [
/* @__PURE__ */ K("span", { children: "Midjourney Account:" }),
/* @__PURE__ */ K("pre", { children: ((u = e == null ? void 0 : e.payload) == null ? void 0 : u.maybe_email) || "Not logged in" }),
/* @__PURE__ */ K(
Io,
{
variant: (c = e == null ? void 0 : e.payload) != null && c.can_clear_state && !r ? "destructive" : (d = e == null ? void 0 : e.payload) != null && d.can_clear_state ? "primary" : "secondary",
className: "h-[30px]",
onClick: a,
disabled: r,
children: r ? /* @__PURE__ */ K(
To,
{
icon: nx,
className: "animate-spin text-sm"
}
) : (l = e == null ? void 0 : e.payload) != null && l.can_clear_state ? "Disconnect" : "Connect"
}
)
] });
}, F9e = ({
globalAccountLogoutCallback: e
}) => {
const [t] = de({
username: "-",
subscription: "-",
credits: 0
}), [r, n] = de(""), [o, a] = de("");
return /* @__PURE__ */ K(rn, { children: /* @__PURE__ */ Te("div", { className: "space-y-4 text-base-fg", children: [
/* @__PURE__ */ K(
yNe,
{
globalAccountLogoutCallback: e
}
),
/* @__PURE__ */ K(D9e, {}),
/* @__PURE__ */ K(YOe, {}),
/* @__PURE__ */ K(Qje, {})
] }) });
}, L9e = (e) => {
const [t, r] = de(void 0);
return ue(() => {
(async () => {
const o = await r1e();
r(o.payload);
})();
}, []), /* @__PURE__ */ K(rn, { children: /* @__PURE__ */ Te("div", { className: "space-y-4", children: [
/* @__PURE__ */ Te("div", { className: "space-y-1", children: [
/* @__PURE__ */ K(jn, { children: "Artcraft Version" }),
/* @__PURE__ */ K("div", { children: t == null ? void 0 : t.artcraft_version })
] }),
/* @__PURE__ */ Te("div", { className: "space-y-1", children: [
/* @__PURE__ */ K(jn, { children: "Artcraft Host" }),
/* @__PURE__ */ K("div", { children: t == null ? void 0 : t.storyteller_host })
] }),
/* @__PURE__ */ Te("div", { className: "space-y-1", children: [
/* @__PURE__ */ K(jn, { children: "Git Commit ID" }),
/* @__PURE__ */ Te("div", { children: [
t == null ? void 0 : t.git_commit_short_id,
" · ",
t == null ? void 0 : t.git_commit_id
] })
] }),
/* @__PURE__ */ Te("div", { className: "space-y-1", children: [
/* @__PURE__ */ K(jn, { children: "Git Commit Timestamp" }),
/* @__PURE__ */ K("div", { children: t == null ? void 0 : t.git_commit_timestamp })
] }),
/* @__PURE__ */ Te("div", { className: "space-y-1", children: [
/* @__PURE__ */ K(jn, { children: "Build Timestamp" }),
/* @__PURE__ */ K("div", { children: t == null ? void 0 : t.build_timestamp })
] }),
/* @__PURE__ */ Te("div", { className: "space-y-1", children: [
/* @__PURE__ */ K(jn, { children: "Operating System" }),
/* @__PURE__ */ Te("div", { children: [
t == null ? void 0 : t.os_platform,
" (",
t == null ? void 0 : t.os_version,
")"
] })
] })
] }) });
};
function z9e() {
for (var e = arguments.length, t = new Array(e), r = 0; r < e; r++)
t[r] = arguments[r];
return Ie(
() => (n) => {
t.forEach((o) => o(n));
},
// eslint-disable-next-line react-hooks/exhaustive-deps
t
);
}
const Qx = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u";
function kp(e) {
const t = Object.prototype.toString.call(e);
return t === "[object Window]" || // In Electron context the Window object serializes to [object global]
t === "[object global]";
}
function LC(e) {
return "nodeType" in e;
}
function to(e) {
var t, r;
return e ? kp(e) ? e : LC(e) && (t = (r = e.ownerDocument) == null ? void 0 : r.defaultView) != null ? t : window : window;
}
function zC(e) {
const {
Document: t
} = to(e);
return e instanceof t;
}
function qb(e) {
return kp(e) ? !1 : e instanceof to(e).HTMLElement;
}
function zQ(e) {
return e instanceof to(e).SVGElement;
}
function _p(e) {
return e ? kp(e) ? e.document : LC(e) ? zC(e) ? e : qb(e) || zQ(e) ? e.ownerDocument : document : document : document;
}
const fi = Qx ? pi : ue;
function WC(e) {
const t = ne(e);
return fi(() => {
t.current = e;
}), Ne(function() {
for (var r = arguments.length, n = new Array(r), o = 0; o < r; o++)
n[o] = arguments[o];
return t.current == null ? void 0 : t.current(...n);
}, []);
}
function W9e() {
const e = ne(null), t = Ne((n, o) => {
e.current = setInterval(n, o);
}, []), r = Ne(() => {
e.current !== null && (clearInterval(e.current), e.current = null);
}, []);
return [t, r];
}
function Xg(e, t) {
t === void 0 && (t = [e]);
const r = ne(e);
return fi(() => {
r.current !== e && (r.current = e);
}, t), r;
}
function Kb(e, t) {
const r = ne();
return Ie(
() => {
const n = e(r.current);
return r.current = n, n;
},
// eslint-disable-next-line react-hooks/exhaustive-deps
[...t]
);
}
function i0(e) {
const t = WC(e), r = ne(null), n = Ne(
(o) => {
o !== r.current && (t == null || t(o, r.current)), r.current = o;
},
//eslint-disable-next-line
[]
);
return [r, n];
}
function BA(e) {
const t = ne();
return ue(() => {
t.current = e;
}, [e]), t.current;
}
let Ik = {};
function Xb(e, t) {
return Ie(() => {
if (t)
return t;
const r = Ik[e] == null ? 0 : Ik[e] + 1;
return Ik[e] = r, e + "-" + r;
}, [e, t]);
}
function WQ(e) {
return function(t) {
for (var r = arguments.length, n = new Array(r > 1 ? r - 1 : 0), o = 1; o < r; o++)
n[o - 1] = arguments[o];
return n.reduce((a, i) => {
const s = Object.entries(i);
for (const [u, c] of s) {
const d = a[u];
d != null && (a[u] = d + e * c);
}
return a;
}, {
...t
});
};
}
const _d = /* @__PURE__ */ WQ(1), Jg = /* @__PURE__ */ WQ(-1);
function V9e(e) {
return "clientX" in e && "clientY" in e;
}
function VC(e) {
if (!e)
return !1;
const {
KeyboardEvent: t
} = to(e.target);
return t && e instanceof t;
}
function H9e(e) {
if (!e)
return !1;
const {
TouchEvent: t
} = to(e.target);
return t && e instanceof t;
}
function YA(e) {
if (H9e(e)) {
if (e.touches && e.touches.length) {
const {
clientX: t,
clientY: r
} = e.touches[0];
return {
x: t,
y: r
};
} else if (e.changedTouches && e.changedTouches.length) {
const {
clientX: t,
clientY: r
} = e.changedTouches[0];
return {
x: t,
y: r
};
}
}
return V9e(e) ? {
x: e.clientX,
y: e.clientY
} : null;
}
const Qg = /* @__PURE__ */ Object.freeze({
Translate: {
toString(e) {
if (!e)
return;
const {
x: t,
y: r
} = e;
return "translate3d(" + (t ? Math.round(t) : 0) + "px, " + (r ? Math.round(r) : 0) + "px, 0)";
}
},
Scale: {
toString(e) {
if (!e)
return;
const {
scaleX: t,
scaleY: r
} = e;
return "scaleX(" + t + ") scaleY(" + r + ")";
}
},
Transform: {
toString(e) {
if (e)
return [Qg.Translate.toString(e), Qg.Scale.toString(e)].join(" ");
}
},
Transition: {
toString(e) {
let {
property: t,
duration: r,
easing: n
} = e;
return t + " " + r + "ms " + n;
}
}
}), yF = "a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";
function G9e(e) {
return e.matches(yF) ? e : e.querySelector(yF);
}
const U9e = {
display: "none"
};
function B9e(e) {
let {
id: t,
value: r
} = e;
return ae.createElement("div", {
id: t,
style: U9e
}, r);
}
function Y9e(e) {
let {
id: t,
announcement: r,
ariaLiveType: n = "assertive"
} = e;
const o = {
position: "fixed",
top: 0,
left: 0,
width: 1,
height: 1,
margin: -1,
border: 0,
padding: 0,
overflow: "hidden",
clip: "rect(0 0 0 0)",
clipPath: "inset(100%)",
whiteSpace: "nowrap"
};
return ae.createElement("div", {
id: t,
style: o,
role: "status",
"aria-live": n,
"aria-atomic": !0
}, r);
}
function q9e() {
const [e, t] = de("");
return {
announce: Ne((n) => {
n != null && t(n);
}, []),
announcement: e
};
}
const VQ = /* @__PURE__ */ zt(null);
function K9e(e) {
const t = nt(VQ);
ue(() => {
if (!t)
throw new Error("useDndMonitor must be used within a children of <DndContext>");
return t(e);
}, [e, t]);
}
function X9e() {
const [e] = de(() => /* @__PURE__ */ new Set()), t = Ne((n) => (e.add(n), () => e.delete(n)), [e]);
return [Ne((n) => {
let {
type: o,
event: a
} = n;
e.forEach((i) => {
var s;
return (s = i[o]) == null ? void 0 : s.call(i, a);
});
}, [e]), t];
}
const J9e = {
draggable: `
To pick up a draggable item, press the space bar.
While dragging, use the arrow keys to move the item.
Press space again to drop the item in its new position, or press escape to cancel.
`
}, Q9e = {
onDragStart(e) {
let {
active: t
} = e;
return "Picked up draggable item " + t.id + ".";
},
onDragOver(e) {
let {
active: t,
over: r
} = e;
return r ? "Draggable item " + t.id + " was moved over droppable area " + r.id + "." : "Draggable item " + t.id + " is no longer over a droppable area.";
},
onDragEnd(e) {
let {
active: t,
over: r
} = e;
return r ? "Draggable item " + t.id + " was dropped over droppable area " + r.id : "Draggable item " + t.id + " was dropped.";
},
onDragCancel(e) {
let {
active: t
} = e;
return "Dragging was cancelled. Draggable item " + t.id + " was dropped.";
}
};
function Z9e(e) {
let {
announcements: t = Q9e,
container: r,
hiddenTextDescribedById: n,
screenReaderInstructions: o = J9e
} = e;
const {
announce: a,
announcement: i
} = q9e(), s = Xb("DndLiveRegion"), [u, c] = de(!1);
if (ue(() => {
c(!0);
}, []), K9e(Ie(() => ({
onDragStart(l) {
let {
active: f
} = l;
a(t.onDragStart({
active: f
}));
},
onDragMove(l) {
let {
active: f,
over: p
} = l;
t.onDragMove && a(t.onDragMove({
active: f,
over: p
}));
},
onDragOver(l) {
let {
active: f,
over: p
} = l;
a(t.onDragOver({
active: f,
over: p
}));
},
onDragEnd(l) {
let {
active: f,
over: p
} = l;
a(t.onDragEnd({
active: f,
over: p
}));
},
onDragCancel(l) {
let {
active: f,
over: p
} = l;
a(t.onDragCancel({
active: f,
over: p
}));
}
}), [a, t])), !u)
return null;
const d = ae.createElement(ae.Fragment, null, ae.createElement(B9e, {
id: n,
value: o.draggable
}), ae.createElement(Y9e, {
id: s,
announcement: i
}));
return r ? C0(d, r) : d;
}
var an;
(function(e) {
e.DragStart = "dragStart", e.DragMove = "dragMove", e.DragEnd = "dragEnd", e.DragCancel = "dragCancel", e.DragOver = "dragOver", e.RegisterDroppable = "registerDroppable", e.SetDroppableDisabled = "setDroppableDisabled", e.UnregisterDroppable = "unregisterDroppable";
})(an || (an = {}));
function s0() {
}
function vF(e, t) {
return Ie(
() => ({
sensor: e,
options: t ?? {}
}),
// eslint-disable-next-line react-hooks/exhaustive-deps
[e, t]
);
}
function eRe() {
for (var e = arguments.length, t = new Array(e), r = 0; r < e; r++)
t[r] = arguments[r];
return Ie(
() => [...t].filter((n) => n != null),
// eslint-disable-next-line react-hooks/exhaustive-deps
[...t]
);
}
const la = /* @__PURE__ */ Object.freeze({
x: 0,
y: 0
});
function HQ(e, t) {
return Math.sqrt(Math.pow(e.x - t.x, 2) + Math.pow(e.y - t.y, 2));
}
function GQ(e, t) {
let {
data: {
value: r
}
} = e, {
data: {
value: n
}
} = t;
return r - n;
}
function tRe(e, t) {
let {
data: {
value: r
}
} = e, {
data: {
value: n
}
} = t;
return n - r;
}
function xF(e) {
let {
left: t,
top: r,
height: n,
width: o
} = e;
return [{
x: t,
y: r
}, {
x: t + o,
y: r
}, {
x: t,
y: r + n
}, {
x: t + o,
y: r + n
}];
}
function UQ(e, t) {
if (!e || e.length === 0)
return null;
const [r] = e;
return r[t];
}
function wF(e, t, r) {
return t === void 0 && (t = e.left), r === void 0 && (r = e.top), {
x: t + e.width * 0.5,
y: r + e.height * 0.5
};
}
const rRe = (e) => {
let {
collisionRect: t,
droppableRects: r,
droppableContainers: n
} = e;
const o = wF(t, t.left, t.top), a = [];
for (const i of n) {
const {
id: s
} = i, u = r.get(s);
if (u) {
const c = HQ(wF(u), o);
a.push({
id: s,
data: {
droppableContainer: i,
value: c
}
});
}
}
return a.sort(GQ);
}, nRe = (e) => {
let {
collisionRect: t,
droppableRects: r,
droppableContainers: n
} = e;
const o = xF(t), a = [];
for (const i of n) {
const {
id: s
} = i, u = r.get(s);
if (u) {
const c = xF(u), d = o.reduce((f, p, y) => f + HQ(c[y], p), 0), l = Number((d / 4).toFixed(4));
a.push({
id: s,
data: {
droppableContainer: i,
value: l
}
});
}
}
return a.sort(GQ);
};
function oRe(e, t) {
const r = Math.max(t.top, e.top), n = Math.max(t.left, e.left), o = Math.min(t.left + t.width, e.left + e.width), a = Math.min(t.top + t.height, e.top + e.height), i = o - n, s = a - r;
if (n < o && r < a) {
const u = t.width * t.height, c = e.width * e.height, d = i * s, l = d / (u + c - d);
return Number(l.toFixed(4));
}
return 0;
}
const aRe = (e) => {
let {
collisionRect: t,
droppableRects: r,
droppableContainers: n
} = e;
const o = [];
for (const a of n) {
const {
id: i
} = a, s = r.get(i);
if (s) {
const u = oRe(s, t);
u > 0 && o.push({
id: i,
data: {
droppableContainer: a,
value: u
}
});
}
}
return o.sort(tRe);
};
function iRe(e, t, r) {
return {
...e,
scaleX: t && r ? t.width / r.width : 1,
scaleY: t && r ? t.height / r.height : 1
};
}
function BQ(e, t) {
return e && t ? {
x: e.left - t.left,
y: e.top - t.top
} : la;
}
function sRe(e) {
return function(r) {
for (var n = arguments.length, o = new Array(n > 1 ? n - 1 : 0), a = 1; a < n; a++)
o[a - 1] = arguments[a];
return o.reduce((i, s) => ({
...i,
top: i.top + e * s.y,
bottom: i.bottom + e * s.y,
left: i.left + e * s.x,
right: i.right + e * s.x
}), {
...r
});
};
}
const lRe = /* @__PURE__ */ sRe(1);
function cRe(e) {
if (e.startsWith("matrix3d(")) {
const t = e.slice(9, -1).split(/, /);
return {
x: +t[12],
y: +t[13],
scaleX: +t[0],
scaleY: +t[5]
};
} else if (e.startsWith("matrix(")) {
const t = e.slice(7, -1).split(/, /);
return {
x: +t[4],
y: +t[5],
scaleX: +t[0],
scaleY: +t[3]
};
}
return null;
}
function uRe(e, t, r) {
const n = cRe(t);
if (!n)
return e;
const {
scaleX: o,
scaleY: a,
x: i,
y: s
} = n, u = e.left - i - (1 - o) * parseFloat(r), c = e.top - s - (1 - a) * parseFloat(r.slice(r.indexOf(" ") + 1)), d = o ? e.width / o : e.width, l = a ? e.height / a : e.height;
return {
width: d,
height: l,
top: c,
right: u + d,
bottom: c + l,
left: u
};
}
const fRe = {
ignoreTransform: !1
};
function Op(e, t) {
t === void 0 && (t = fRe);
let r = e.getBoundingClientRect();
if (t.ignoreTransform) {
const {
transform: c,
transformOrigin: d
} = to(e).getComputedStyle(e);
c && (r = uRe(r, c, d));
}
const {
top: n,
left: o,
width: a,
height: i,
bottom: s,
right: u
} = r;
return {
top: n,
left: o,
width: a,
height: i,
bottom: s,
right: u
};
}
function $F(e) {
return Op(e, {
ignoreTransform: !0
});
}
function dRe(e) {
const t = e.innerWidth, r = e.innerHeight;
return {
top: 0,
left: 0,
right: t,
bottom: r,
width: t,
height: r
};
}
function pRe(e, t) {
return t === void 0 && (t = to(e).getComputedStyle(e)), t.position === "fixed";
}
function mRe(e, t) {
t === void 0 && (t = to(e).getComputedStyle(e));
const r = /(auto|scroll|overlay)/;
return ["overflow", "overflowX", "overflowY"].some((o) => {
const a = t[o];
return typeof a == "string" ? r.test(a) : !1;
});
}
function Zx(e, t) {
const r = [];
function n(o) {
if (t != null && r.length >= t || !o)
return r;
if (zC(o) && o.scrollingElement != null && !r.includes(o.scrollingElement))
return r.push(o.scrollingElement), r;
if (!qb(o) || zQ(o) || r.includes(o))
return r;
const a = to(e).getComputedStyle(o);
return o !== e && mRe(o, a) && r.push(o), pRe(o, a) ? r : n(o.parentNode);
}
return e ? n(e) : r;
}
function YQ(e) {
const [t] = Zx(e, 1);
return t ?? null;
}
function jk(e) {
return !Qx || !e ? null : kp(e) ? e : LC(e) ? zC(e) || e === _p(e).scrollingElement ? window : qb(e) ? e : null : null;
}
function qQ(e) {
return kp(e) ? e.scrollX : e.scrollLeft;
}
function KQ(e) {
return kp(e) ? e.scrollY : e.scrollTop;
}
function qA(e) {
return {
x: qQ(e),
y: KQ(e)
};
}
var un;
(function(e) {
e[e.Forward = 1] = "Forward", e[e.Backward = -1] = "Backward";
})(un || (un = {}));
function XQ(e) {
return !Qx || !e ? !1 : e === document.scrollingElement;
}
function JQ(e) {
const t = {
x: 0,
y: 0
}, r = XQ(e) ? {
height: window.innerHeight,
width: window.innerWidth
} : {
height: e.clientHeight,
width: e.clientWidth
}, n = {
x: e.scrollWidth - r.width,
y: e.scrollHeight - r.height
}, o = e.scrollTop <= t.y, a = e.scrollLeft <= t.x, i = e.scrollTop >= n.y, s = e.scrollLeft >= n.x;
return {
isTop: o,
isLeft: a,
isBottom: i,
isRight: s,
maxScroll: n,
minScroll: t
};
}
const hRe = {
x: 0.2,
y: 0.2
};
function gRe(e, t, r, n, o) {
let {
top: a,
left: i,
right: s,
bottom: u
} = r;
n === void 0 && (n = 10), o === void 0 && (o = hRe);
const {
isTop: c,
isBottom: d,
isLeft: l,
isRight: f
} = JQ(e), p = {
x: 0,
y: 0
}, y = {
x: 0,
y: 0
}, m = {
height: t.height * o.y,
width: t.width * o.x
};
return !c && a <= t.top + m.height ? (p.y = un.Backward, y.y = n * Math.abs((t.top + m.height - a) / m.height)) : !d && u >= t.bottom - m.height && (p.y = un.Forward, y.y = n * Math.abs((t.bottom - m.height - u) / m.height)), !f && s >= t.right - m.width ? (p.x = un.Forward, y.x = n * Math.abs((t.right - m.width - s) / m.width)) : !l && i <= t.left + m.width && (p.x = un.Backward, y.x = n * Math.abs((t.left + m.width - i) / m.width)), {
direction: p,
speed: y
};
}
function bRe(e) {
if (e === document.scrollingElement) {
const {
innerWidth: a,
innerHeight: i
} = window;
return {
top: 0,
left: 0,
right: a,
bottom: i,
width: a,
height: i
};
}
const {
top: t,
left: r,
right: n,
bottom: o
} = e.getBoundingClientRect();
return {
top: t,
left: r,
right: n,
bottom: o,
width: e.clientWidth,
height: e.clientHeight
};
}
function QQ(e) {
return e.reduce((t, r) => _d(t, qA(r)), la);
}
function yRe(e) {
return e.reduce((t, r) => t + qQ(r), 0);
}
function vRe(e) {
return e.reduce((t, r) => t + KQ(r), 0);
}
function xRe(e, t) {
if (t === void 0 && (t = Op), !e)
return;
const {
top: r,
left: n,
bottom: o,
right: a
} = t(e);
YQ(e) && (o <= 0 || a <= 0 || r >= window.innerHeight || n >= window.innerWidth) && e.scrollIntoView({
block: "center",
inline: "center"
});
}
const wRe = [["x", ["left", "right"], yRe], ["y", ["top", "bottom"], vRe]];
class HC {
constructor(t, r) {
this.rect = void 0, this.width = void 0, this.height = void 0, this.top = void 0, this.bottom = void 0, this.right = void 0, this.left = void 0;
const n = Zx(r), o = QQ(n);
this.rect = {
...t
}, this.width = t.width, this.height = t.height;
for (const [a, i, s] of wRe)
for (const u of i)
Object.defineProperty(this, u, {
get: () => {
const c = s(n), d = o[a] - c;
return this.rect[u] + d;
},
enumerable: !0
});
Object.defineProperty(this, "rect", {
enumerable: !1
});
}
}
class eg {
constructor(t) {
this.target = void 0, this.listeners = [], this.removeAll = () => {
this.listeners.forEach((r) => {
var n;
return (n = this.target) == null ? void 0 : n.removeEventListener(...r);
});
}, this.target = t;
}
add(t, r, n) {
var o;
(o = this.target) == null || o.addEventListener(t, r, n), this.listeners.push([t, r, n]);
}
}
function $Re(e) {
const {
EventTarget: t
} = to(e);
return e instanceof t ? e : _p(e);
}
function Rk(e, t) {
const r = Math.abs(e.x), n = Math.abs(e.y);
return typeof t == "number" ? Math.sqrt(r ** 2 + n ** 2) > t : "x" in t && "y" in t ? r > t.x && n > t.y : "x" in t ? r > t.x : "y" in t ? n > t.y : !1;
}
var _o;
(function(e) {
e.Click = "click", e.DragStart = "dragstart", e.Keydown = "keydown", e.ContextMenu = "contextmenu", e.Resize = "resize", e.SelectionChange = "selectionchange", e.VisibilityChange = "visibilitychange";
})(_o || (_o = {}));
function kF(e) {
e.preventDefault();
}
function kRe(e) {
e.stopPropagation();
}
var Ht;
(function(e) {
e.Space = "Space", e.Down = "ArrowDown", e.Right = "ArrowRight", e.Left = "ArrowLeft", e.Up = "ArrowUp", e.Esc = "Escape", e.Enter = "Enter", e.Tab = "Tab";
})(Ht || (Ht = {}));
const ZQ = {
start: [Ht.Space, Ht.Enter],
cancel: [Ht.Esc],
end: [Ht.Space, Ht.Enter, Ht.Tab]
}, _Re = (e, t) => {
let {
currentCoordinates: r
} = t;
switch (e.code) {
case Ht.Right:
return {
...r,
x: r.x + 25
};
case Ht.Left:
return {
...r,
x: r.x - 25
};
case Ht.Down:
return {
...r,
y: r.y + 25
};
case Ht.Up:
return {
...r,
y: r.y - 25
};
}
};
class GC {
constructor(t) {
this.props = void 0, this.autoScrollEnabled = !1, this.referenceCoordinates = void 0, this.listeners = void 0, this.windowListeners = void 0, this.props = t;
const {
event: {
target: r
}
} = t;
this.props = t, this.listeners = new eg(_p(r)), this.windowListeners = new eg(to(r)), this.handleKeyDown = this.handleKeyDown.bind(this), this.handleCancel = this.handleCancel.bind(this), this.attach();
}
attach() {
this.handleStart(), this.windowListeners.add(_o.Resize, this.handleCancel), this.windowListeners.add(_o.VisibilityChange, this.handleCancel), setTimeout(() => this.listeners.add(_o.Keydown, this.handleKeyDown));
}
handleStart() {
const {
activeNode: t,
onStart: r
} = this.props, n = t.node.current;
n && xRe(n), r(la);
}
handleKeyDown(t) {
if (VC(t)) {
const {
active: r,
context: n,
options: o
} = this.props, {
keyboardCodes: a = ZQ,
coordinateGetter: i = _Re,
scrollBehavior: s = "smooth"
} = o, {
code: u
} = t;
if (a.end.includes(u)) {
this.handleEnd(t);
return;
}
if (a.cancel.includes(u)) {
this.handleCancel(t);
return;
}
const {
collisionRect: c
} = n.current, d = c ? {
x: c.left,
y: c.top
} : la;
this.referenceCoordinates || (this.referenceCoordinates = d);
const l = i(t, {
active: r,
context: n.current,
currentCoordinates: d
});
if (l) {
const f = Jg(l, d), p = {
x: 0,
y: 0
}, {
scrollableAncestors: y
} = n.current;
for (const m of y) {
const h = t.code, {
isTop: w,
isRight: $,
isLeft: _,
isBottom: S,
maxScroll: b,
minScroll: F
} = JQ(m), z = bRe(m), q = {
x: Math.min(h === Ht.Right ? z.right - z.width / 2 : z.right, Math.max(h === Ht.Right ? z.left : z.left + z.width / 2, l.x)),
y: Math.min(h === Ht.Down ? z.bottom - z.height / 2 : z.bottom, Math.max(h === Ht.Down ? z.top : z.top + z.height / 2, l.y))
}, Y = h === Ht.Right && !$ || h === Ht.Left && !_, B = h === Ht.Down && !S || h === Ht.Up && !w;
if (Y && q.x !== l.x) {
const Z = m.scrollLeft + f.x, M = h === Ht.Right && Z <= b.x || h === Ht.Left && Z >= F.x;
if (M && !f.y) {
m.scrollTo({
left: Z,
behavior: s
});
return;
}
M ? p.x = m.scrollLeft - Z : p.x = h === Ht.Right ? m.scrollLeft - b.x : m.scrollLeft - F.x, p.x && m.scrollBy({
left: -p.x,
behavior: s
});
break;
} else if (B && q.y !== l.y) {
const Z = m.scrollTop + f.y, M = h === Ht.Down && Z <= b.y || h === Ht.Up && Z >= F.y;
if (M && !f.x) {
m.scrollTo({
top: Z,
behavior: s
});
return;
}
M ? p.y = m.scrollTop - Z : p.y = h === Ht.Down ? m.scrollTop - b.y : m.scrollTop - F.y, p.y && m.scrollBy({
top: -p.y,
behavior: s
});
break;
}
}
this.handleMove(t, _d(Jg(l, this.referenceCoordinates), p));
}
}
}
handleMove(t, r) {
const {
onMove: n
} = this.props;
t.preventDefault(), n(r);
}
handleEnd(t) {
const {
onEnd: r
} = this.props;
t.preventDefault(), this.detach(), r();
}
handleCancel(t) {
const {
onCancel: r
} = this.props;
t.preventDefault(), this.detach(), r();
}
detach() {
this.listeners.removeAll(), this.windowListeners.removeAll();
}
}
GC.activators = [{
eventName: "onKeyDown",
handler: (e, t, r) => {
let {
keyboardCodes: n = ZQ,
onActivation: o
} = t, {
active: a
} = r;
const {
code: i
} = e.nativeEvent;
if (n.start.includes(i)) {
const s = a.activatorNode.current;
return s && e.target !== s ? !1 : (e.preventDefault(), o == null || o({
event: e.nativeEvent
}), !0);
}
return !1;
}
}];
function _F(e) {
return !!(e && "distance" in e);
}
function OF(e) {
return !!(e && "delay" in e);
}
class UC {
constructor(t, r, n) {
var o;
n === void 0 && (n = $Re(t.event.target)), this.props = void 0, this.events = void 0, this.autoScrollEnabled = !0, this.document = void 0, this.activated = !1, this.initialCoordinates = void 0, this.timeoutId = null, this.listeners = void 0, this.documentListeners = void 0, this.windowListeners = void 0, this.props = t, this.events = r;
const {
event: a
} = t, {
target: i
} = a;
this.props = t, this.events = r, this.document = _p(i), this.documentListeners = new eg(this.document), this.listeners = new eg(n), this.windowListeners = new eg(to(i)), this.initialCoordinates = (o = YA(a)) != null ? o : la, this.handleStart = this.handleStart.bind(this), this.handleMove = this.handleMove.bind(this), this.handleEnd = this.handleEnd.bind(this), this.handleCancel = this.handleCancel.bind(this), this.handleKeydown = this.handleKeydown.bind(this), this.removeTextSelection = this.removeTextSelection.bind(this), this.attach();
}
attach() {
const {
events: t,
props: {
options: {
activationConstraint: r,
bypassActivationConstraint: n
}
}
} = this;
if (this.listeners.add(t.move.name, this.handleMove, {
passive: !1
}), this.listeners.add(t.end.name, this.handleEnd), t.cancel && this.listeners.add(t.cancel.name, this.handleCancel), this.windowListeners.add(_o.Resize, this.handleCancel), this.windowListeners.add(_o.DragStart, kF), this.windowListeners.add(_o.VisibilityChange, this.handleCancel), this.windowListeners.add(_o.ContextMenu, kF), this.documentListeners.add(_o.Keydown, this.handleKeydown), r) {
if (n != null && n({
event: this.props.event,
activeNode: this.props.activeNode,
options: this.props.options
}))
return this.handleStart();
if (OF(r)) {
this.timeoutId = setTimeout(this.handleStart, r.delay), this.handlePending(r);
return;
}
if (_F(r)) {
this.handlePending(r);
return;
}
}
this.handleStart();
}
detach() {
this.listeners.removeAll(), this.windowListeners.removeAll(), setTimeout(this.documentListeners.removeAll, 50), this.timeoutId !== null && (clearTimeout(this.timeoutId), this.timeoutId = null);
}
handlePending(t, r) {
const {
active: n,
onPending: o
} = this.props;
o(n, t, this.initialCoordinates, r);
}
handleStart() {
const {
initialCoordinates: t
} = this, {
onStart: r
} = this.props;
t && (this.activated = !0, this.documentListeners.add(_o.Click, kRe, {
capture: !0
}), this.removeTextSelection(), this.documentListeners.add(_o.SelectionChange, this.removeTextSelection), r(t));
}
handleMove(t) {
var r;
const {
activated: n,
initialCoordinates: o,
props: a
} = this, {
onMove: i,
options: {
activationConstraint: s
}
} = a;
if (!o)
return;
const u = (r = YA(t)) != null ? r : la, c = Jg(o, u);
if (!n && s) {
if (_F(s)) {
if (s.tolerance != null && Rk(c, s.tolerance))
return this.handleCancel();
if (Rk(c, s.distance))
return this.handleStart();
}
if (OF(s) && Rk(c, s.tolerance))
return this.handleCancel();
this.handlePending(s, c);
return;
}
t.cancelable && t.preventDefault(), i(u);
}
handleEnd() {
const {
onAbort: t,
onEnd: r
} = this.props;
this.detach(), this.activated || t(this.props.active), r();
}
handleCancel() {
const {
onAbort: t,
onCancel: r
} = this.props;
this.detach(), this.activated || t(this.props.active), r();
}
handleKeydown(t) {
t.code === Ht.Esc && this.handleCancel();
}
removeTextSelection() {
var t;
(t = this.document.getSelection()) == null || t.removeAllRanges();
}
}
const ORe = {
cancel: {
name: "pointercancel"
},
move: {
name: "pointermove"
},
end: {
name: "pointerup"
}
};
class BC extends UC {
constructor(t) {
const {
event: r
} = t, n = _p(r.target);
super(t, ORe, n);
}
}
BC.activators = [{
eventName: "onPointerDown",
handler: (e, t) => {
let {
nativeEvent: r
} = e, {
onActivation: n
} = t;
return !r.isPrimary || r.button !== 0 ? !1 : (n == null || n({
event: r
}), !0);
}
}];
const SRe = {
move: {
name: "mousemove"
},
end: {
name: "mouseup"
}
};
var KA;
(function(e) {
e[e.RightClick = 2] = "RightClick";
})(KA || (KA = {}));
class ERe extends UC {
constructor(t) {
super(t, SRe, _p(t.event.target));
}
}
ERe.activators = [{
eventName: "onMouseDown",
handler: (e, t) => {
let {
nativeEvent: r
} = e, {
onActivation: n
} = t;
return r.button === KA.RightClick ? !1 : (n == null || n({
event: r
}), !0);
}
}];
const Mk = {
cancel: {
name: "touchcancel"
},
move: {
name: "touchmove"
},
end: {
name: "touchend"
}
};
class ARe extends UC {
constructor(t) {
super(t, Mk);
}
static setup() {
return window.addEventListener(Mk.move.name, t, {
capture: !1,
passive: !1
}), function() {
window.removeEventListener(Mk.move.name, t);
};
function t() {
}
}
}
ARe.activators = [{
eventName: "onTouchStart",
handler: (e, t) => {
let {
nativeEvent: r
} = e, {
onActivation: n
} = t;
const {
touches: o
} = r;
return o.length > 1 ? !1 : (n == null || n({
event: r
}), !0);
}
}];
var tg;
(function(e) {
e[e.Pointer = 0] = "Pointer", e[e.DraggableRect = 1] = "DraggableRect";
})(tg || (tg = {}));
var l0;
(function(e) {
e[e.TreeOrder = 0] = "TreeOrder", e[e.ReversedTreeOrder = 1] = "ReversedTreeOrder";
})(l0 || (l0 = {}));
function PRe(e) {
let {
acceleration: t,
activator: r = tg.Pointer,
canScroll: n,
draggingRect: o,
enabled: a,
interval: i = 5,
order: s = l0.TreeOrder,
pointerCoordinates: u,
scrollableAncestors: c,
scrollableAncestorRects: d,
delta: l,
threshold: f
} = e;
const p = NRe({
delta: l,
disabled: !a
}), [y, m] = W9e(), h = ne({
x: 0,
y: 0
}), w = ne({
x: 0,
y: 0
}), $ = Ie(() => {
switch (r) {
case tg.Pointer:
return u ? {
top: u.y,
bottom: u.y,
left: u.x,
right: u.x
} : null;
case tg.DraggableRect:
return o;
}
}, [r, o, u]), _ = ne(null), S = Ne(() => {
const F = _.current;
if (!F)
return;
const z = h.current.x * w.current.x, q = h.current.y * w.current.y;
F.scrollBy(z, q);
}, []), b = Ie(() => s === l0.TreeOrder ? [...c].reverse() : c, [s, c]);
ue(
() => {
if (!a || !c.length || !$) {
m();
return;
}
for (const F of b) {
if ((n == null ? void 0 : n(F)) === !1)
continue;
const z = c.indexOf(F), q = d[z];
if (!q)
continue;
const {
direction: Y,
speed: B
} = gRe(F, q, $, t, f);
for (const Z of ["x", "y"])
p[Z][Y[Z]] || (B[Z] = 0, Y[Z] = 0);
if (B.x > 0 || B.y > 0) {
m(), _.current = F, y(S, i), h.current = B, w.current = Y;
return;
}
}
h.current = {
x: 0,
y: 0
}, w.current = {
x: 0,
y: 0
}, m();
},
// eslint-disable-next-line react-hooks/exhaustive-deps
[
t,
S,
n,
m,
a,
i,
// eslint-disable-next-line react-hooks/exhaustive-deps
JSON.stringify($),
// eslint-disable-next-line react-hooks/exhaustive-deps
JSON.stringify(p),
y,
c,
b,
d,
// eslint-disable-next-line react-hooks/exhaustive-deps
JSON.stringify(f)
]
);
}
const CRe = {
x: {
[un.Backward]: !1,
[un.Forward]: !1
},
y: {
[un.Backward]: !1,
[un.Forward]: !1
}
};
function NRe(e) {
let {
delta: t,
disabled: r
} = e;
const n = BA(t);
return Kb((o) => {
if (r || !n || !o)
return CRe;
const a = {
x: Math.sign(t.x - n.x),
y: Math.sign(t.y - n.y)
};
return {
x: {
[un.Backward]: o.x[un.Backward] || a.x === -1,
[un.Forward]: o.x[un.Forward] || a.x === 1
},
y: {
[un.Backward]: o.y[un.Backward] || a.y === -1,
[un.Forward]: o.y[un.Forward] || a.y === 1
}
};
}, [r, t, n]);
}
function TRe(e, t) {
const r = t != null ? e.get(t) : void 0, n = r ? r.node.current : null;
return Kb((o) => {
var a;
return t == null ? null : (a = n ?? o) != null ? a : null;
}, [n, t]);
}
function IRe(e, t) {
return Ie(() => e.reduce((r, n) => {
const {
sensor: o
} = n, a = o.activators.map((i) => ({
eventName: i.eventName,
handler: t(i.handler, n)
}));
return [...r, ...a];
}, []), [e, t]);
}
var Zg;
(function(e) {
e[e.Always = 0] = "Always", e[e.BeforeDragging = 1] = "BeforeDragging", e[e.WhileDragging = 2] = "WhileDragging";
})(Zg || (Zg = {}));
var XA;
(function(e) {
e.Optimized = "optimized";
})(XA || (XA = {}));
const SF = /* @__PURE__ */ new Map();
function jRe(e, t) {
let {
dragging: r,
dependencies: n,
config: o
} = t;
const [a, i] = de(null), {
frequency: s,
measure: u,
strategy: c
} = o, d = ne(e), l = h(), f = Xg(l), p = Ne(function(w) {
w === void 0 && (w = []), !f.current && i(($) => $ === null ? w : $.concat(w.filter((_) => !$.includes(_))));
}, [f]), y = ne(null), m = Kb((w) => {
if (l && !r)
return SF;
if (!w || w === SF || d.current !== e || a != null) {
const $ = /* @__PURE__ */ new Map();
for (let _ of e) {
if (!_)
continue;
if (a && a.length > 0 && !a.includes(_.id) && _.rect.current) {
$.set(_.id, _.rect.current);
continue;
}
const S = _.node.current, b = S ? new HC(u(S), S) : null;
_.rect.current = b, b && $.set(_.id, b);
}
return $;
}
return w;
}, [e, a, r, l, u]);
return ue(() => {
d.current = e;
}, [e]), ue(
() => {
l || p();
},
// eslint-disable-next-line react-hooks/exhaustive-deps
[r, l]
), ue(
() => {
a && a.length > 0 && i(null);
},
//eslint-disable-next-line react-hooks/exhaustive-deps
[JSON.stringify(a)]
), ue(
() => {
l || typeof s != "number" || y.current !== null || (y.current = setTimeout(() => {
p(), y.current = null;
}, s));
},
// eslint-disable-next-line react-hooks/exhaustive-deps
[s, l, p, ...n]
), {
droppableRects: m,
measureDroppableContainers: p,
measuringScheduled: a != null
};
function h() {
switch (c) {
case Zg.Always:
return !1;
case Zg.BeforeDragging:
return r;
default:
return !r;
}
}
}
function eZ(e, t) {
return Kb((r) => e ? r || (typeof t == "function" ? t(e) : e) : null, [t, e]);
}
function RRe(e, t) {
return eZ(e, t);
}
function MRe(e) {
let {
callback: t,
disabled: r
} = e;
const n = WC(t), o = Ie(() => {
if (r || typeof window > "u" || typeof window.MutationObserver > "u")
return;
const {
MutationObserver: a
} = window;
return new a(n);
}, [n, r]);
return ue(() => () => o == null ? void 0 : o.disconnect(), [o]), o;
}
function ew(e) {
let {
callback: t,
disabled: r
} = e;
const n = WC(t), o = Ie(
() => {
if (r || typeof window > "u" || typeof window.ResizeObserver > "u")
return;
const {
ResizeObserver: a
} = window;
return new a(n);
},
// eslint-disable-next-line react-hooks/exhaustive-deps
[r]
);
return ue(() => () => o == null ? void 0 : o.disconnect(), [o]), o;
}
function DRe(e) {
return new HC(Op(e), e);
}
function EF(e, t, r) {
t === void 0 && (t = DRe);
const [n, o] = de(null);
function a() {
o((u) => {
if (!e)
return null;
if (e.isConnected === !1) {
var c;
return (c = u ?? r) != null ? c : null;
}
const d = t(e);
return JSON.stringify(u) === JSON.stringify(d) ? u : d;
});
}
const i = MRe({
callback(u) {
if (e)
for (const c of u) {
const {
type: d,
target: l
} = c;
if (d === "childList" && l instanceof HTMLElement && l.contains(e)) {
a();
break;
}
}
}
}), s = ew({
callback: a
});
return fi(() => {
a(), e ? (s == null || s.observe(e), i == null || i.observe(document.body, {
childList: !0,
subtree: !0
})) : (s == null || s.disconnect(), i == null || i.disconnect());
}, [e]), n;
}
function FRe(e) {
const t = eZ(e);
return BQ(e, t);
}
const AF = [];
function LRe(e) {
const t = ne(e), r = Kb((n) => e ? n && n !== AF && e && t.current && e.parentNode === t.current.parentNode ? n : Zx(e) : AF, [e]);
return ue(() => {
t.current = e;
}, [e]), r;
}
function zRe(e) {
const [t, r] = de(null), n = ne(e), o = Ne((a) => {
const i = jk(a.target);
i && r((s) => s ? (s.set(i, qA(i)), new Map(s)) : null);
}, []);
return ue(() => {
const a = n.current;
if (e !== a) {
i(a);
const s = e.map((u) => {
const c = jk(u);
return c ? (c.addEventListener("scroll", o, {
passive: !0
}), [c, qA(c)]) : null;
}).filter((u) => u != null);
r(s.length ? new Map(s) : null), n.current = e;
}
return () => {
i(e), i(a);
};
function i(s) {
s.forEach((u) => {
const c = jk(u);
c == null || c.removeEventListener("scroll", o);
});
}
}, [o, e]), Ie(() => e.length ? t ? Array.from(t.values()).reduce((a, i) => _d(a, i), la) : QQ(e) : la, [e, t]);
}
function PF(e, t) {
t === void 0 && (t = []);
const r = ne(null);
return ue(
() => {
r.current = null;
},
// eslint-disable-next-line react-hooks/exhaustive-deps
t
), ue(() => {
const n = e !== la;
n && !r.current && (r.current = e), !n && r.current && (r.current = null);
}, [e]), r.current ? Jg(e, r.current) : la;
}
function WRe(e) {
ue(
() => {
if (!Qx)
return;
const t = e.map((r) => {
let {
sensor: n
} = r;
return n.setup == null ? void 0 : n.setup();
});
return () => {
for (const r of t)
r == null || r();
};
},
// TO-DO: Sensors length could theoretically change which would not be a valid dependency
// eslint-disable-next-line react-hooks/exhaustive-deps
e.map((t) => {
let {
sensor: r
} = t;
return r;
})
);
}
function VRe(e, t) {
return Ie(() => e.reduce((r, n) => {
let {
eventName: o,
handler: a
} = n;
return r[o] = (i) => {
a(i, t);
}, r;
}, {}), [e, t]);
}
function tZ(e) {
return Ie(() => e ? dRe(e) : null, [e]);
}
const CF = [];
function HRe(e, t) {
t === void 0 && (t = Op);
const [r] = e, n = tZ(r ? to(r) : null), [o, a] = de(CF);
function i() {
a(() => e.length ? e.map((u) => XQ(u) ? n : new HC(t(u), u)) : CF);
}
const s = ew({
callback: i
});
return fi(() => {
s == null || s.disconnect(), i(), e.forEach((u) => s == null ? void 0 : s.observe(u));
}, [e]), o;
}
function GRe(e) {
if (!e)
return null;
if (e.children.length > 1)
return e;
const t = e.children[0];
return qb(t) ? t : e;
}
function URe(e) {
let {
measure: t
} = e;
const [r, n] = de(null), o = Ne((c) => {
for (const {
target: d
} of c)
if (qb(d)) {
n((l) => {
const f = t(d);
return l ? {
...l,
width: f.width,
height: f.height
} : f;
});
break;
}
}, [t]), a = ew({
callback: o
}), i = Ne((c) => {
const d = GRe(c);
a == null || a.disconnect(), d && (a == null || a.observe(d)), n(d ? t(d) : null);
}, [t, a]), [s, u] = i0(i);
return Ie(() => ({
nodeRef: s,
rect: r,
setRef: u
}), [r, s, u]);
}
const BRe = [{
sensor: BC,
options: {}
}, {
sensor: GC,
options: {}
}], YRe = {
current: {}
}, Zv = {
draggable: {
measure: $F
},
droppable: {
measure: $F,
strategy: Zg.WhileDragging,
frequency: XA.Optimized
},
dragOverlay: {
measure: Op
}
};
class rg extends Map {
get(t) {
var r;
return t != null && (r = super.get(t)) != null ? r : void 0;
}
toArray() {
return Array.from(this.values());
}
getEnabled() {
return this.toArray().filter((t) => {
let {
disabled: r
} = t;
return !r;
});
}
getNodeFor(t) {
var r, n;
return (r = (n = this.get(t)) == null ? void 0 : n.node.current) != null ? r : void 0;
}
}
const qRe = {
activatorEvent: null,
active: null,
activeNode: null,
activeNodeRect: null,
collisions: null,
containerNodeRect: null,
draggableNodes: /* @__PURE__ */ new Map(),
droppableRects: /* @__PURE__ */ new Map(),
droppableContainers: /* @__PURE__ */ new rg(),
over: null,
dragOverlay: {
nodeRef: {
current: null
},
rect: null,
setRef: s0
},
scrollableAncestors: [],
scrollableAncestorRects: [],
measuringConfiguration: Zv,
measureDroppableContainers: s0,
windowRect: null,
measuringScheduled: !1
}, KRe = {
activatorEvent: null,
activators: [],
active: null,
activeNodeRect: null,
ariaDescribedById: {
draggable: ""
},
dispatch: s0,
draggableNodes: /* @__PURE__ */ new Map(),
over: null,
measureDroppableContainers: s0
}, tw = /* @__PURE__ */ zt(KRe), rZ = /* @__PURE__ */ zt(qRe);
function XRe() {
return {
draggable: {
active: null,
initialCoordinates: {
x: 0,
y: 0
},
nodes: /* @__PURE__ */ new Map(),
translate: {
x: 0,
y: 0
}
},
droppable: {
containers: new rg()
}
};
}
function JRe(e, t) {
switch (t.type) {
case an.DragStart:
return {
...e,
draggable: {
...e.draggable,
initialCoordinates: t.initialCoordinates,
active: t.active
}
};
case an.DragMove:
return e.draggable.active == null ? e : {
...e,
draggable: {
...e.draggable,
translate: {
x: t.coordinates.x - e.draggable.initialCoordinates.x,
y: t.coordinates.y - e.draggable.initialCoordinates.y
}
}
};
case an.DragEnd:
case an.DragCancel:
return {
...e,
draggable: {
...e.draggable,
active: null,
initialCoordinates: {
x: 0,
y: 0
},
translate: {
x: 0,
y: 0
}
}
};
case an.RegisterDroppable: {
const {
element: r
} = t, {
id: n
} = r, o = new rg(e.droppable.containers);
return o.set(n, r), {
...e,
droppable: {
...e.droppable,
containers: o
}
};
}
case an.SetDroppableDisabled: {
const {
id: r,
key: n,
disabled: o
} = t, a = e.droppable.containers.get(r);
if (!a || n !== a.key)
return e;
const i = new rg(e.droppable.containers);
return i.set(r, {
...a,
disabled: o
}), {
...e,
droppable: {
...e.droppable,
containers: i
}
};
}
case an.UnregisterDroppable: {
const {
id: r,
key: n
} = t, o = e.droppable.containers.get(r);
if (!o || n !== o.key)
return e;
const a = new rg(e.droppable.containers);
return a.delete(r), {
...e,
droppable: {
...e.droppable,
containers: a
}
};
}
default:
return e;
}
}
function QRe(e) {
let {
disabled: t
} = e;
const {
active: r,
activatorEvent: n,
draggableNodes: o
} = nt(tw), a = BA(n), i = BA(r == null ? void 0 : r.id);
return ue(() => {
if (!t && !n && a && i != null) {
if (!VC(a) || document.activeElement === a.target)
return;
const s = o.get(i);
if (!s)
return;
const {
activatorNode: u,
node: c
} = s;
if (!u.current && !c.current)
return;
requestAnimationFrame(() => {
for (const d of [u.current, c.current]) {
if (!d)
continue;
const l = G9e(d);
if (l) {
l.focus();
break;
}
}
});
}
}, [n, t, o, i, a]), null;
}
function ZRe(e, t) {
let {
transform: r,
...n
} = t;
return e != null && e.length ? e.reduce((o, a) => a({
transform: o,
...n
}), r) : r;
}
function e7e(e) {
return Ie(
() => ({
draggable: {
...Zv.draggable,
...e == null ? void 0 : e.draggable
},
droppable: {
...Zv.droppable,
...e == null ? void 0 : e.droppable
},
dragOverlay: {
...Zv.dragOverlay,
...e == null ? void 0 : e.dragOverlay
}
}),
// eslint-disable-next-line react-hooks/exhaustive-deps
[e == null ? void 0 : e.draggable, e == null ? void 0 : e.droppable, e == null ? void 0 : e.dragOverlay]
);
}
function t7e(e) {
let {
activeNode: t,
measure: r,
initialRect: n,
config: o = !0
} = e;
const a = ne(!1), {
x: i,
y: s
} = typeof o == "boolean" ? {
x: o,
y: o
} : o;
fi(() => {
if (!i && !s || !t) {
a.current = !1;
return;
}
if (a.current || !n)
return;
const c = t == null ? void 0 : t.node.current;
if (!c || c.isConnected === !1)
return;
const d = r(c), l = BQ(d, n);
if (i || (l.x = 0), s || (l.y = 0), a.current = !0, Math.abs(l.x) > 0 || Math.abs(l.y) > 0) {
const f = YQ(c);
f && f.scrollBy({
top: l.y,
left: l.x
});
}
}, [t, i, s, n, r]);
}
const nZ = /* @__PURE__ */ zt({
...la,
scaleX: 1,
scaleY: 1
});
var Wl;
(function(e) {
e[e.Uninitialized = 0] = "Uninitialized", e[e.Initializing = 1] = "Initializing", e[e.Initialized = 2] = "Initialized";
})(Wl || (Wl = {}));
const r7e = /* @__PURE__ */ goe(function(t) {
var r, n, o, a;
let {
id: i,
accessibility: s,
autoScroll: u = !0,
children: c,
sensors: d = BRe,
collisionDetection: l = aRe,
measuring: f,
modifiers: p,
...y
} = t;
const m = D4(JRe, void 0, XRe), [h, w] = m, [$, _] = X9e(), [S, b] = de(Wl.Uninitialized), F = S === Wl.Initialized, {
draggable: {
active: z,
nodes: q,
translate: Y
},
droppable: {
containers: B
}
} = h, Z = z != null ? q.get(z) : null, M = ne({
initial: null,
translated: null
}), te = Ie(() => {
var vr;
return z != null ? {
id: z,
// It's possible for the active node to unmount while dragging
data: (vr = Z == null ? void 0 : Z.data) != null ? vr : YRe,
rect: M
} : null;
}, [z, Z]), G = ne(null), [H, U] = de(null), [W, X] = de(null), ee = Xg(y, Object.values(y)), v = Xb("DndDescribedBy", i), g = Ie(() => B.getEnabled(), [B]), O = e7e(f), {
droppableRects: P,
measureDroppableContainers: A,
measuringScheduled: T
} = jRe(g, {
dragging: F,
dependencies: [Y.x, Y.y],
config: O.droppable
}), N = TRe(q, z), C = Ie(() => W ? YA(W) : null, [W]), I = ma(), j = RRe(N, O.draggable.measure);
t7e({
activeNode: z != null ? q.get(z) : null,
config: I.layoutShiftCompensation,
initialRect: j,
measure: O.draggable.measure
});
const R = EF(N, O.draggable.measure, j), Q = EF(N ? N.parentElement : null), k = ne({
activatorEvent: null,
active: null,
activeNode: N,
collisionRect: null,
collisions: null,
droppableRects: P,
draggableNodes: q,
draggingNode: null,
draggingNodeRect: null,
droppableContainers: B,
over: null,
scrollableAncestors: [],
scrollAdjustedTranslate: null
}), oe = B.getNodeFor((r = k.current.over) == null ? void 0 : r.id), me = URe({
measure: O.dragOverlay.measure
}), Le = (n = me.nodeRef.current) != null ? n : N, Xr = F ? (o = me.rect) != null ? o : R : null, Jr = !!(me.nodeRef.current && me.rect), ce = FRe(Jr ? null : R), le = tZ(Le ? to(Le) : null), fe = LRe(F ? oe ?? N : null), ot = HRe(fe), kt = ZRe(p, {
transform: {
x: Y.x - ce.x,
y: Y.y - ce.y,
scaleX: 1,
scaleY: 1
},
activatorEvent: W,
active: te,
activeNodeRect: R,
containerNodeRect: Q,
draggingNodeRect: Xr,
over: k.current.over,
overlayNodeRect: me.rect,
scrollableAncestors: fe,
scrollableAncestorRects: ot,
windowRect: le
}), De = C ? _d(C, Y) : null, Ze = zRe(fe), rt = PF(Ze), Wt = PF(Ze, [R]), lt = _d(kt, rt), $r = Xr ? lRe(Xr, kt) : null, pn = te && $r ? l({
active: te,
collisionRect: $r,
droppableRects: P,
droppableContainers: g,
pointerCoordinates: De
}) : null, ro = UQ(pn, "id"), [kr, vo] = de(null), Mo = Jr ? kt : _d(kt, Wt), Do = iRe(Mo, (a = kr == null ? void 0 : kr.rect) != null ? a : null, R), yr = ne(null), Tn = Ne(
(vr, xr) => {
let {
sensor: wr,
options: Dn
} = xr;
if (G.current == null)
return;
const sn = q.get(G.current);
if (!sn)
return;
const nn = vr.nativeEvent, mn = new wr({
active: G.current,
activeNode: sn,
event: nn,
options: Dn,
// Sensors need to be instantiated with refs for arguments that change over time
// otherwise they are frozen in time with the stale arguments
context: k,
onAbort(Vt) {
if (!q.get(Vt))
return;
const {
onDragAbort: on
} = ee.current, In = {
id: Vt
};
on == null || on(In), $({
type: "onDragAbort",
event: In
});
},
onPending(Vt, Qr, on, In) {
if (!q.get(Vt))
return;
const {
onDragPending: zo
} = ee.current, Fn = {
id: Vt,
constraint: Qr,
initialCoordinates: on,
offset: In
};
zo == null || zo(Fn), $({
type: "onDragPending",
event: Fn
});
},
onStart(Vt) {
const Qr = G.current;
if (Qr == null)
return;
const on = q.get(Qr);
if (!on)
return;
const {
onDragStart: In
} = ee.current, Lo = {
activatorEvent: nn,
active: {
id: Qr,
data: on.data,
rect: M
}
};
Of(() => {
In == null || In(Lo), b(Wl.Initializing), w({
type: an.DragStart,
initialCoordinates: Vt,
active: Qr
}), $({
type: "onDragStart",
event: Lo
}), U(yr.current), X(nn);
});
},
onMove(Vt) {
w({
type: an.DragMove,
coordinates: Vt
});
},
onEnd: xo(an.DragEnd),
onCancel: xo(an.DragCancel)
});
yr.current = mn;
function xo(Vt) {
return async function() {
const {
active: on,
collisions: In,
over: Lo,
scrollAdjustedTranslate: zo
} = k.current;
let Fn = null;
if (on && zo) {
const {
cancelDrop: Ln
} = ee.current;
Fn = {
activatorEvent: nn,
active: on,
collisions: In,
delta: zo,
over: Lo
}, Vt === an.DragEnd && typeof Ln == "function" && await Promise.resolve(Ln(Fn)) && (Vt = an.DragCancel);
}
G.current = null, Of(() => {
w({
type: Vt
}), b(Wl.Uninitialized), vo(null), U(null), X(null), yr.current = null;
const Ln = Vt === an.DragEnd ? "onDragEnd" : "onDragCancel";
if (Fn) {
const wo = ee.current[Ln];
wo == null || wo(Fn), $({
type: Ln,
event: Fn
});
}
});
};
}
},
// eslint-disable-next-line react-hooks/exhaustive-deps
[q]
), Fo = Ne((vr, xr) => (wr, Dn) => {
const sn = wr.nativeEvent, nn = q.get(Dn);
if (
// Another sensor is already instantiating
G.current !== null || // No active draggable
!nn || // Event has already been captured
sn.dndKit || sn.defaultPrevented
)
return;
const mn = {
active: nn
};
vr(wr, xr.options, mn) === !0 && (sn.dndKit = {
capturedBy: xr.sensor
}, G.current = Dn, Tn(wr, xr));
}, [q, Tn]), Ss = IRe(d, Fo);
WRe(d), fi(() => {
R && S === Wl.Initializing && b(Wl.Initialized);
}, [R, S]), ue(
() => {
const {
onDragMove: vr
} = ee.current, {
active: xr,
activatorEvent: wr,
collisions: Dn,
over: sn
} = k.current;
if (!xr || !wr)
return;
const nn = {
active: xr,
activatorEvent: wr,
collisions: Dn,
delta: {
x: lt.x,
y: lt.y
},
over: sn
};
Of(() => {
vr == null || vr(nn), $({
type: "onDragMove",
event: nn
});
});
},
// eslint-disable-next-line react-hooks/exhaustive-deps
[lt.x, lt.y]
), ue(
() => {
const {
active: vr,
activatorEvent: xr,
collisions: wr,
droppableContainers: Dn,
scrollAdjustedTranslate: sn
} = k.current;
if (!vr || G.current == null || !xr || !sn)
return;
const {
onDragOver: nn
} = ee.current, mn = Dn.get(ro), xo = mn && mn.rect.current ? {
id: mn.id,
rect: mn.rect.current,
data: mn.data,
disabled: mn.disabled
} : null, Vt = {
active: vr,
activatorEvent: xr,
collisions: wr,
delta: {
x: sn.x,
y: sn.y
},
over: xo
};
Of(() => {
vo(xo), nn == null || nn(Vt), $({
type: "onDragOver",
event: Vt
});
});
},
// eslint-disable-next-line react-hooks/exhaustive-deps
[ro]
), fi(() => {
k.current = {
activatorEvent: W,
active: te,
activeNode: N,
collisionRect: $r,
collisions: pn,
droppableRects: P,
draggableNodes: q,
draggingNode: Le,
draggingNodeRect: Xr,
droppableContainers: B,
over: kr,
scrollableAncestors: fe,
scrollAdjustedTranslate: lt
}, M.current = {
initial: Xr,
translated: $r
};
}, [te, N, pn, $r, q, Le, Xr, P, B, kr, fe, lt]), PRe({
...I,
delta: Y,
draggingRect: $r,
pointerCoordinates: De,
scrollableAncestors: fe,
scrollableAncestorRects: ot
});
const pa = Ie(() => ({
active: te,
activeNode: N,
activeNodeRect: R,
activatorEvent: W,
collisions: pn,
containerNodeRect: Q,
dragOverlay: me,
draggableNodes: q,
droppableContainers: B,
droppableRects: P,
over: kr,
measureDroppableContainers: A,
scrollableAncestors: fe,
scrollableAncestorRects: ot,
measuringConfiguration: O,
measuringScheduled: T,
windowRect: le
}), [te, N, R, W, pn, Q, me, q, B, P, kr, A, fe, ot, O, T, le]), Kc = Ie(() => ({
activatorEvent: W,
activators: Ss,
active: te,
activeNodeRect: R,
ariaDescribedById: {
draggable: v
},
dispatch: w,
draggableNodes: q,
over: kr,
measureDroppableContainers: A
}), [W, Ss, te, R, w, v, q, kr, A]);
return ae.createElement(VQ.Provider, {
value: _
}, ae.createElement(tw.Provider, {
value: Kc
}, ae.createElement(rZ.Provider, {
value: pa
}, ae.createElement(nZ.Provider, {
value: Do
}, c)), ae.createElement(QRe, {
disabled: (s == null ? void 0 : s.restoreFocus) === !1
})), ae.createElement(Z9e, {
...s,
hiddenTextDescribedById: v
}));
function ma() {
const vr = (H == null ? void 0 : H.autoScrollEnabled) === !1, xr = typeof u == "object" ? u.enabled === !1 : u === !1, wr = F && !vr && !xr;
return typeof u == "object" ? {
...u,
enabled: wr
} : {
enabled: wr
};
}
}), n7e = /* @__PURE__ */ zt(null), NF = "button", o7e = "Draggable";
function a7e(e) {
let {
id: t,
data: r,
disabled: n = !1,
attributes: o
} = e;
const a = Xb(o7e), {
activators: i,
activatorEvent: s,
active: u,
activeNodeRect: c,
ariaDescribedById: d,
draggableNodes: l,
over: f
} = nt(tw), {
role: p = NF,
roleDescription: y = "draggable",
tabIndex: m = 0
} = o ?? {}, h = (u == null ? void 0 : u.id) === t, w = nt(h ? nZ : n7e), [$, _] = i0(), [S, b] = i0(), F = VRe(i, t), z = Xg(r);
fi(
() => (l.set(t, {
id: t,
key: a,
node: $,
activatorNode: S,
data: z
}), () => {
const Y = l.get(t);
Y && Y.key === a && l.delete(t);
}),
// eslint-disable-next-line react-hooks/exhaustive-deps
[l, t]
);
const q = Ie(() => ({
role: p,
tabIndex: m,
"aria-disabled": n,
"aria-pressed": h && p === NF ? !0 : void 0,
"aria-roledescription": y,
"aria-describedby": d.draggable
}), [n, p, m, h, y, d.draggable]);
return {
active: u,
activatorEvent: s,
activeNodeRect: c,
attributes: q,
isDragging: h,
listeners: n ? void 0 : F,
node: $,
over: f,
setNodeRef: _,
setActivatorNodeRef: b,
transform: w
};
}
function i7e() {
return nt(rZ);
}
const s7e = "Droppable", l7e = {
timeout: 25
};
function c7e(e) {
let {
data: t,
disabled: r = !1,
id: n,
resizeObserverConfig: o
} = e;
const a = Xb(s7e), {
active: i,
dispatch: s,
over: u,
measureDroppableContainers: c
} = nt(tw), d = ne({
disabled: r
}), l = ne(!1), f = ne(null), p = ne(null), {
disabled: y,
updateMeasurementsFor: m,
timeout: h
} = {
...l7e,
...o
}, w = Xg(m ?? n), $ = Ne(
() => {
if (!l.current) {
l.current = !0;
return;
}
p.current != null && clearTimeout(p.current), p.current = setTimeout(() => {
c(Array.isArray(w.current) ? w.current : [w.current]), p.current = null;
}, h);
},
//eslint-disable-next-line react-hooks/exhaustive-deps
[h]
), _ = ew({
callback: $,
disabled: y || !i
}), S = Ne((q, Y) => {
_ && (Y && (_.unobserve(Y), l.current = !1), q && _.observe(q));
}, [_]), [b, F] = i0(S), z = Xg(t);
return ue(() => {
!_ || !b.current || (_.disconnect(), l.current = !1, _.observe(b.current));
}, [b, _]), ue(
() => (s({
type: an.RegisterDroppable,
element: {
id: n,
key: a,
disabled: r,
node: b,
rect: f,
data: z
}
}), () => s({
type: an.UnregisterDroppable,
key: a,
id: n
})),
// eslint-disable-next-line react-hooks/exhaustive-deps
[n]
), ue(() => {
r !== d.current.disabled && (s({
type: an.SetDroppableDisabled,
id: n,
key: a,
disabled: r
}), d.current.disabled = r);
}, [n, a, r, s]), {
active: i,
rect: f,
isOver: (u == null ? void 0 : u.id) === n,
node: b,
over: u,
setNodeRef: F
};
}
function YC(e, t, r) {
const n = e.slice();
return n.splice(r < 0 ? n.length + r : r, 0, n.splice(t, 1)[0]), n;
}
function u7e(e, t) {
return e.reduce((r, n, o) => {
const a = t.get(n);
return a && (r[o] = a), r;
}, Array(e.length));
}
function nv(e) {
return e !== null && e >= 0;
}
function f7e(e, t) {
if (e === t)
return !0;
if (e.length !== t.length)
return !1;
for (let r = 0; r < e.length; r++)
if (e[r] !== t[r])
return !1;
return !0;
}
function d7e(e) {
return typeof e == "boolean" ? {
draggable: e,
droppable: e
} : e;
}
const oZ = (e) => {
let {
rects: t,
activeIndex: r,
overIndex: n,
index: o
} = e;
const a = YC(t, n, r), i = t[o], s = a[o];
return !s || !i ? null : {
x: s.left - i.left,
y: s.top - i.top,
scaleX: s.width / i.width,
scaleY: s.height / i.height
};
}, ov = {
scaleX: 1,
scaleY: 1
}, p7e = (e) => {
var t;
let {
activeIndex: r,
activeNodeRect: n,
index: o,
rects: a,
overIndex: i
} = e;
const s = (t = a[r]) != null ? t : n;
if (!s)
return null;
if (o === r) {
const c = a[i];
return c ? {
x: 0,
y: r < i ? c.top + c.height - (s.top + s.height) : c.top - s.top,
...ov
} : null;
}
const u = m7e(a, o, r);
return o > r && o <= i ? {
x: 0,
y: -s.height - u,
...ov
} : o < r && o >= i ? {
x: 0,
y: s.height + u,
...ov
} : {
x: 0,
y: 0,
...ov
};
};
function m7e(e, t, r) {
const n = e[t], o = e[t - 1], a = e[t + 1];
return n ? r < t ? o ? n.top - (o.top + o.height) : a ? a.top - (n.top + n.height) : 0 : a ? a.top - (n.top + n.height) : o ? n.top - (o.top + o.height) : 0 : 0;
}
const aZ = "Sortable", iZ = /* @__PURE__ */ ae.createContext({
activeIndex: -1,
containerId: aZ,
disableTransforms: !1,
items: [],
overIndex: -1,
useDragOverlay: !1,
sortedRects: [],
strategy: oZ,
disabled: {
draggable: !1,
droppable: !1
}
});
function h7e(e) {
let {
children: t,
id: r,
items: n,
strategy: o = oZ,
disabled: a = !1
} = e;
const {
active: i,
dragOverlay: s,
droppableRects: u,
over: c,
measureDroppableContainers: d
} = i7e(), l = Xb(aZ, r), f = s.rect !== null, p = Ie(() => n.map((F) => typeof F == "object" && "id" in F ? F.id : F), [n]), y = i != null, m = i ? p.indexOf(i.id) : -1, h = c ? p.indexOf(c.id) : -1, w = ne(p), $ = !f7e(p, w.current), _ = h !== -1 && m === -1 || $, S = d7e(a);
fi(() => {
$ && y && d(p);
}, [$, p, y, d]), ue(() => {
w.current = p;
}, [p]);
const b = Ie(
() => ({
activeIndex: m,
containerId: l,
disabled: S,
disableTransforms: _,
items: p,
overIndex: h,
useDragOverlay: f,
sortedRects: u7e(p, u),
strategy: o
}),
// eslint-disable-next-line react-hooks/exhaustive-deps
[m, l, S.draggable, S.droppable, _, p, h, u, f, o]
);
return ae.createElement(iZ.Provider, {
value: b
}, t);
}
const g7e = (e) => {
let {
id: t,
items: r,
activeIndex: n,
overIndex: o
} = e;
return YC(r, n, o).indexOf(t);
}, b7e = (e) => {
let {
containerId: t,
isSorting: r,
wasDragging: n,
index: o,
items: a,
newIndex: i,
previousItems: s,
previousContainerId: u,
transition: c
} = e;
return !c || !n || s !== a && o === i ? !1 : r ? !0 : i !== o && t === u;
}, y7e = {
duration: 200,
easing: "ease"
}, sZ = "transform", v7e = /* @__PURE__ */ Qg.Transition.toString({
property: sZ,
duration: 0,
easing: "linear"
}), x7e = {
roleDescription: "sortable"
};
function w7e(e) {
let {
disabled: t,
index: r,
node: n,
rect: o
} = e;
const [a, i] = de(null), s = ne(r);
return fi(() => {
if (!t && r !== s.current && n.current) {
const u = o.current;
if (u) {
const c = Op(n.current, {
ignoreTransform: !0
}), d = {
x: u.left - c.left,
y: u.top - c.top,
scaleX: u.width / c.width,
scaleY: u.height / c.height
};
(d.x || d.y) && i(d);
}
}
r !== s.current && (s.current = r);
}, [t, r, n, o]), ue(() => {
a && i(null);
}, [a]), a;
}
function $7e(e) {
let {
animateLayoutChanges: t = b7e,
attributes: r,
disabled: n,
data: o,
getNewIndex: a = g7e,
id: i,
strategy: s,
resizeObserverConfig: u,
transition: c = y7e
} = e;
const {
items: d,
containerId: l,
activeIndex: f,
disabled: p,
disableTransforms: y,
sortedRects: m,
overIndex: h,
useDragOverlay: w,
strategy: $
} = nt(iZ), _ = k7e(n, p), S = d.indexOf(i), b = Ie(() => ({
sortable: {
containerId: l,
index: S,
items: d
},
...o
}), [l, o, S, d]), F = Ie(() => d.slice(d.indexOf(i)), [d, i]), {
rect: z,
node: q,
isOver: Y,
setNodeRef: B
} = c7e({
id: i,
data: b,
disabled: _.droppable,
resizeObserverConfig: {
updateMeasurementsFor: F,
...u
}
}), {
active: Z,
activatorEvent: M,
activeNodeRect: te,
attributes: G,
setNodeRef: H,
listeners: U,
isDragging: W,
over: X,
setActivatorNodeRef: ee,
transform: v
} = a7e({
id: i,
data: b,
attributes: {
...x7e,
...r
},
disabled: _.draggable
}), g = z9e(B, H), O = !!Z, P = O && !y && nv(f) && nv(h), A = !w && W, T = A && P ? v : null, C = P ? T ?? (s ?? $)({
rects: m,
activeNodeRect: te,
activeIndex: f,
overIndex: h,
index: S
}) : null, I = nv(f) && nv(h) ? a({
id: i,
items: d,
activeIndex: f,
overIndex: h
}) : S, j = Z == null ? void 0 : Z.id, R = ne({
activeId: j,
items: d,
newIndex: I,
containerId: l
}), Q = d !== R.current.items, k = t({
active: Z,
containerId: l,
isDragging: W,
isSorting: O,
id: i,
index: S,
items: d,
newIndex: R.current.newIndex,
previousItems: R.current.items,
previousContainerId: R.current.containerId,
transition: c,
wasDragging: R.current.activeId != null
}), oe = w7e({
disabled: !k,
index: S,
node: q,
rect: z
});
return ue(() => {
O && R.current.newIndex !== I && (R.current.newIndex = I), l !== R.current.containerId && (R.current.containerId = l), d !== R.current.items && (R.current.items = d);
}, [O, I, l, d]), ue(() => {
if (j === R.current.activeId)
return;
if (j != null && R.current.activeId == null) {
R.current.activeId = j;
return;
}
const Le = setTimeout(() => {
R.current.activeId = j;
}, 50);
return () => clearTimeout(Le);
}, [j]), {
active: Z,
activeIndex: f,
attributes: G,
data: b,
rect: z,
index: S,
newIndex: I,
items: d,
isOver: Y,
isSorting: O,
isDragging: W,
listeners: U,
node: q,
overIndex: h,
over: X,
setNodeRef: g,
setActivatorNodeRef: ee,
setDroppableNodeRef: B,
setDraggableNodeRef: H,
transform: oe ?? C,
transition: me()
};
function me() {
if (
// Temporarily disable transitions for a single frame to set up derived transforms
oe || // Or to prevent items jumping to back to their "new" position when items change
Q && R.current.newIndex === S
)
return v7e;
if (!(A && !VC(M) || !c) && (O || k))
return Qg.Transition.toString({
...c,
property: sZ
});
}
}
function k7e(e, t) {
var r, n;
return typeof e == "boolean" ? {
draggable: e,
// Backwards compatibility
droppable: !1
} : {
draggable: (r = e == null ? void 0 : e.draggable) != null ? r : t.draggable,
droppable: (n = e == null ? void 0 : e.droppable) != null ? n : t.droppable
};
}
function c0(e) {
if (!e)
return !1;
const t = e.data.current;
return !!(t && "sortable" in t && typeof t.sortable == "object" && "containerId" in t.sortable && "items" in t.sortable && "index" in t.sortable);
}
const _7e = [Ht.Down, Ht.Right, Ht.Up, Ht.Left], O7e = (e, t) => {
let {
context: {
active: r,
collisionRect: n,
droppableRects: o,
droppableContainers: a,
over: i,
scrollableAncestors: s
}
} = t;
if (_7e.includes(e.code)) {
if (e.preventDefault(), !r || !n)
return;
const u = [];
a.getEnabled().forEach((l) => {
if (!l || l != null && l.disabled)
return;
const f = o.get(l.id);
if (f)
switch (e.code) {
case Ht.Down:
n.top < f.top && u.push(l);
break;
case Ht.Up:
n.top > f.top && u.push(l);
break;
case Ht.Left:
n.left > f.left && u.push(l);
break;
case Ht.Right:
n.left < f.left && u.push(l);
break;
}
});
const c = nRe({
collisionRect: n,
droppableRects: o,
droppableContainers: u
});
let d = UQ(c, "id");
if (d === (i == null ? void 0 : i.id) && c.length > 1 && (d = c[1].id), d != null) {
const l = a.get(r.id), f = a.get(d), p = f ? o.get(f.id) : null, y = f == null ? void 0 : f.node.current;
if (y && p && l && f) {
const h = Zx(y).some((F, z) => s[z] !== F), w = lZ(l, f), $ = S7e(l, f), _ = h || !w ? {
x: 0,
y: 0
} : {
x: $ ? n.width - p.width : 0,
y: $ ? n.height - p.height : 0
}, S = {
x: p.left,
y: p.top
};
return _.x && _.y ? S : Jg(S, _);
}
}
}
};
function lZ(e, t) {
return !c0(e) || !c0(t) ? !1 : e.data.current.sortable.containerId === t.data.current.sortable.containerId;
}
function S7e(e, t) {
return !c0(e) || !c0(t) || !lZ(e, t) ? !1 : e.data.current.sortable.index < t.data.current.sortable.index;
}
var E7e = Object.defineProperty, A7e = (e, t, r) => t in e ? E7e(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, tn = (e, t, r) => A7e(e, typeof t != "symbol" ? t + "" : t, r);
class cZ {
constructor(t) {
tn(this, "kind", "model"), tn(this, "id"), tn(this, "tauriId"), tn(this, "fullName"), tn(this, "category"), tn(this, "creator"), tn(this, "selectorName"), tn(this, "selectorDescription"), tn(this, "selectorBadges"), tn(this, "tags"), this.id = t.id, this.tauriId = t.tauriId, this.fullName = t.fullName, this.category = t.category, this.creator = t.creator, this.selectorName = t.selectorName, this.selectorDescription = t.selectorDescription, this.selectorBadges = t.selectorBadges, this.tags = t.tags ?? [];
}
toLegacyBadges() {
return this.selectorBadges.map((t) => ({ label: t }));
}
// TODO: This is a method to support migration. Kill it after we no longer need it.
toLegacyModelConfig() {
return {
id: this.id,
label: this.selectorName,
description: this.selectorDescription,
badges: this.toLegacyBadges(),
category: this.category,
info: {
name: this.fullName,
tauri_id: this.tauriId,
creator: this.creator
},
capabilities: {
maxGenerationCount: 9,
// NB: Sentinel value to detect continued use
defaultGenerationCount: 9
// NB: Sentinel value to detect continued use
},
tags: []
};
}
}
let ha = class extends cZ {
constructor(t) {
if (t.maxGenerationCount < 1)
throw new Error("maxGenerationCount must be at least 1");
if (t.defaultGenerationCount < 1)
throw new Error("defaultGenerationCount must be at least 1");
if (t.defaultGenerationCount > t.maxGenerationCount)
throw new Error(
"defaultGenerationCount must be less than or equal to maxGenerationCount"
);
super(t), tn(this, "kind", "image_model"), tn(this, "maxGenerationCount"), tn(this, "defaultGenerationCount"), tn(this, "canEditImages"), tn(this, "usesInpaintingMask"), tn(this, "canUseImagePrompt"), tn(this, "maxImagePromptCount"), this.maxGenerationCount = t.maxGenerationCount, this.defaultGenerationCount = t.defaultGenerationCount, this.canEditImages = t.canEditImages ?? !1, this.usesInpaintingMask = t.usesInpaintingMask ?? !1, this.canUseImagePrompt = t.canUseImagePrompt ?? !1, this.maxImagePromptCount = Math.max(0, t.maxImagePromptCount ?? 1);
}
}, qm = class extends cZ {
constructor(t) {
super(t), tn(this, "kind", "video_model"), tn(this, "startFrame"), tn(this, "endFrame"), this.startFrame = t.startFrame, this.endFrame = t.endFrame;
}
};
var et = /* @__PURE__ */ ((e) => (e.BlackForestLabs = "BlackForestLabs", e.Bytedance = "Bytedance", e.Google = "Google", e.Hailuo = "Hailuo", e.Kling = "Kling", e.Midjourney = "Midjourney", e.OpenAi = "OpenAi", e.Runway = "Runway", e.Stability = "Stability", e.Tencent = "Tencent", e.Recraft = "Recraft", e.Krea = "Krea", e.Fal = "Fal", e.Replicate = "Replicate", e.TensorArt = "TensorArt", e.OpenArt = "OpenArt", e.Higgsfield = "Higgsfield", e.Alibaba = "Alibaba", e.Vidu = "Vidu", e.ArtCraft = "ArtCraft", e))(et || {});
function P7e(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var Dk = { exports: {} }, St = {};
/**
* @license React
* react.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var TF;
function C7e() {
if (TF) return St;
TF = 1;
var e = Symbol.for("react.element"), t = Symbol.for("react.portal"), r = Symbol.for("react.fragment"), n = Symbol.for("react.strict_mode"), o = Symbol.for("react.profiler"), a = Symbol.for("react.provider"), i = Symbol.for("react.context"), s = Symbol.for("react.forward_ref"), u = Symbol.for("react.suspense"), c = Symbol.for("react.memo"), d = Symbol.for("react.lazy"), l = Symbol.iterator;
function f(g) {
return g === null || typeof g != "object" ? null : (g = l && g[l] || g["@@iterator"], typeof g == "function" ? g : null);
}
var p = { isMounted: function() {
return !1;
}, enqueueForceUpdate: function() {
}, enqueueReplaceState: function() {
}, enqueueSetState: function() {
} }, y = Object.assign, m = {};
function h(g, O, P) {
this.props = g, this.context = O, this.refs = m, this.updater = P || p;
}
h.prototype.isReactComponent = {}, h.prototype.setState = function(g, O) {
if (typeof g != "object" && typeof g != "function" && g != null) throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");
this.updater.enqueueSetState(this, g, O, "setState");
}, h.prototype.forceUpdate = function(g) {
this.updater.enqueueForceUpdate(this, g, "forceUpdate");
};
function w() {
}
w.prototype = h.prototype;
function $(g, O, P) {
this.props = g, this.context = O, this.refs = m, this.updater = P || p;
}
var _ = $.prototype = new w();
_.constructor = $, y(_, h.prototype), _.isPureReactComponent = !0;
var S = Array.isArray, b = Object.prototype.hasOwnProperty, F = { current: null }, z = { key: !0, ref: !0, __self: !0, __source: !0 };
function q(g, O, P) {
var A, T = {}, N = null, C = null;
if (O != null) for (A in O.ref !== void 0 && (C = O.ref), O.key !== void 0 && (N = "" + O.key), O) b.call(O, A) && !z.hasOwnProperty(A) && (T[A] = O[A]);
var I = arguments.length - 2;
if (I === 1) T.children = P;
else if (1 < I) {
for (var j = Array(I), R = 0; R < I; R++) j[R] = arguments[R + 2];
T.children = j;
}
if (g && g.defaultProps) for (A in I = g.defaultProps, I) T[A] === void 0 && (T[A] = I[A]);
return { $$typeof: e, type: g, key: N, ref: C, props: T, _owner: F.current };
}
function Y(g, O) {
return { $$typeof: e, type: g.type, key: O, ref: g.ref, props: g.props, _owner: g._owner };
}
function B(g) {
return typeof g == "object" && g !== null && g.$$typeof === e;
}
function Z(g) {
var O = { "=": "=0", ":": "=2" };
return "$" + g.replace(/[=:]/g, function(P) {
return O[P];
});
}
var M = /\/+/g;
function te(g, O) {
return typeof g == "object" && g !== null && g.key != null ? Z("" + g.key) : O.toString(36);
}
function G(g, O, P, A, T) {
var N = typeof g;
(N === "undefined" || N === "boolean") && (g = null);
var C = !1;
if (g === null) C = !0;
else switch (N) {
case "string":
case "number":
C = !0;
break;
case "object":
switch (g.$$typeof) {
case e:
case t:
C = !0;
}
}
if (C) return C = g, T = T(C), g = A === "" ? "." + te(C, 0) : A, S(T) ? (P = "", g != null && (P = g.replace(M, "$&/") + "/"), G(T, O, P, "", function(R) {
return R;
})) : T != null && (B(T) && (T = Y(T, P + (!T.key || C && C.key === T.key ? "" : ("" + T.key).replace(M, "$&/") + "/") + g)), O.push(T)), 1;
if (C = 0, A = A === "" ? "." : A + ":", S(g)) for (var I = 0; I < g.length; I++) {
N = g[I];
var j = A + te(N, I);
C += G(N, O, P, j, T);
}
else if (j = f(g), typeof j == "function") for (g = j.call(g), I = 0; !(N = g.next()).done; ) N = N.value, j = A + te(N, I++), C += G(N, O, P, j, T);
else if (N === "object") throw O = String(g), Error("Objects are not valid as a React child (found: " + (O === "[object Object]" ? "object with keys {" + Object.keys(g).join(", ") + "}" : O) + "). If you meant to render a collection of children, use an array instead.");
return C;
}
function H(g, O, P) {
if (g == null) return g;
var A = [], T = 0;
return G(g, A, "", "", function(N) {
return O.call(P, N, T++);
}), A;
}
function U(g) {
if (g._status === -1) {
var O = g._result;
O = O(), O.then(function(P) {
(g._status === 0 || g._status === -1) && (g._status = 1, g._result = P);
}, function(P) {
(g._status === 0 || g._status === -1) && (g._status = 2, g._result = P);
}), g._status === -1 && (g._status = 0, g._result = O);
}
if (g._status === 1) return g._result.default;
throw g._result;
}
var W = { current: null }, X = { transition: null }, ee = { ReactCurrentDispatcher: W, ReactCurrentBatchConfig: X, ReactCurrentOwner: F };
function v() {
throw Error("act(...) is not supported in production builds of React.");
}
return St.Children = { map: H, forEach: function(g, O, P) {
H(g, function() {
O.apply(this, arguments);
}, P);
}, count: function(g) {
var O = 0;
return H(g, function() {
O++;
}), O;
}, toArray: function(g) {
return H(g, function(O) {
return O;
}) || [];
}, only: function(g) {
if (!B(g)) throw Error("React.Children.only expected to receive a single React element child.");
return g;
} }, St.Component = h, St.Fragment = r, St.Profiler = o, St.PureComponent = $, St.StrictMode = n, St.Suspense = u, St.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = ee, St.act = v, St.cloneElement = function(g, O, P) {
if (g == null) throw Error("React.cloneElement(...): The argument must be a React element, but you passed " + g + ".");
var A = y({}, g.props), T = g.key, N = g.ref, C = g._owner;
if (O != null) {
if (O.ref !== void 0 && (N = O.ref, C = F.current), O.key !== void 0 && (T = "" + O.key), g.type && g.type.defaultProps) var I = g.type.defaultProps;
for (j in O) b.call(O, j) && !z.hasOwnProperty(j) && (A[j] = O[j] === void 0 && I !== void 0 ? I[j] : O[j]);
}
var j = arguments.length - 2;
if (j === 1) A.children = P;
else if (1 < j) {
I = Array(j);
for (var R = 0; R < j; R++) I[R] = arguments[R + 2];
A.children = I;
}
return { $$typeof: e, type: g.type, key: T, ref: N, props: A, _owner: C };
}, St.createContext = function(g) {
return g = { $$typeof: i, _currentValue: g, _currentValue2: g, _threadCount: 0, Provider: null, Consumer: null, _defaultValue: null, _globalName: null }, g.Provider = { $$typeof: a, _context: g }, g.Consumer = g;
}, St.createElement = q, St.createFactory = function(g) {
var O = q.bind(null, g);
return O.type = g, O;
}, St.createRef = function() {
return { current: null };
}, St.forwardRef = function(g) {
return { $$typeof: s, render: g };
}, St.isValidElement = B, St.lazy = function(g) {
return { $$typeof: d, _payload: { _status: -1, _result: g }, _init: U };
}, St.memo = function(g, O) {
return { $$typeof: c, type: g, compare: O === void 0 ? null : O };
}, St.startTransition = function(g) {
var O = X.transition;
X.transition = {};
try {
g();
} finally {
X.transition = O;
}
}, St.unstable_act = v, St.useCallback = function(g, O) {
return W.current.useCallback(g, O);
}, St.useContext = function(g) {
return W.current.useContext(g);
}, St.useDebugValue = function() {
}, St.useDeferredValue = function(g) {
return W.current.useDeferredValue(g);
}, St.useEffect = function(g, O) {
return W.current.useEffect(g, O);
}, St.useId = function() {
return W.current.useId();
}, St.useImperativeHandle = function(g, O, P) {
return W.current.useImperativeHandle(g, O, P);
}, St.useInsertionEffect = function(g, O) {
return W.current.useInsertionEffect(g, O);
}, St.useLayoutEffect = function(g, O) {
return W.current.useLayoutEffect(g, O);
}, St.useMemo = function(g, O) {
return W.current.useMemo(g, O);
}, St.useReducer = function(g, O, P) {
return W.current.useReducer(g, O, P);
}, St.useRef = function(g) {
return W.current.useRef(g);
}, St.useState = function(g) {
return W.current.useState(g);
}, St.useSyncExternalStore = function(g, O, P) {
return W.current.useSyncExternalStore(g, O, P);
}, St.useTransition = function() {
return W.current.useTransition();
}, St.version = "18.3.1", St;
}
var e1 = { exports: {} };
/**
* @license React
* react.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
e1.exports;
var IF;
function N7e() {
return IF || (IF = 1, function(e, t) {
process.env.NODE_ENV !== "production" && function() {
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());
var r = "18.3.1", n = Symbol.for("react.element"), o = Symbol.for("react.portal"), a = Symbol.for("react.fragment"), i = Symbol.for("react.strict_mode"), s = Symbol.for("react.profiler"), u = Symbol.for("react.provider"), c = Symbol.for("react.context"), d = Symbol.for("react.forward_ref"), l = Symbol.for("react.suspense"), f = Symbol.for("react.suspense_list"), p = Symbol.for("react.memo"), y = Symbol.for("react.lazy"), m = Symbol.for("react.offscreen"), h = Symbol.iterator, w = "@@iterator";
function $(x) {
if (x === null || typeof x != "object")
return null;
var E = h && x[h] || x[w];
return typeof E == "function" ? E : null;
}
var _ = {
/**
* @internal
* @type {ReactComponent}
*/
current: null
}, S = {
transition: null
}, b = {
current: null,
// Used to reproduce behavior of `batchedUpdates` in legacy mode.
isBatchingLegacy: !1,
didScheduleLegacyUpdate: !1
}, F = {
/**
* @internal
* @type {ReactComponent}
*/
current: null
}, z = {}, q = null;
function Y(x) {
q = x;
}
z.setExtraStackFrame = function(x) {
q = x;
}, z.getCurrentStack = null, z.getStackAddendum = function() {
var x = "";
q && (x += q);
var E = z.getCurrentStack;
return E && (x += E() || ""), x;
};
var B = !1, Z = !1, M = !1, te = !1, G = !1, H = {
ReactCurrentDispatcher: _,
ReactCurrentBatchConfig: S,
ReactCurrentOwner: F
};
H.ReactDebugCurrentFrame = z, H.ReactCurrentActQueue = b;
function U(x) {
{
for (var E = arguments.length, D = new Array(E > 1 ? E - 1 : 0), L = 1; L < E; L++)
D[L - 1] = arguments[L];
X("warn", x, D);
}
}
function W(x) {
{
for (var E = arguments.length, D = new Array(E > 1 ? E - 1 : 0), L = 1; L < E; L++)
D[L - 1] = arguments[L];
X("error", x, D);
}
}
function X(x, E, D) {
{
var L = H.ReactDebugCurrentFrame, J = L.getStackAddendum();
J !== "" && (E += "%s", D = D.concat([J]));
var ie = D.map(function(re) {
return String(re);
});
ie.unshift("Warning: " + E), Function.prototype.apply.call(console[x], console, ie);
}
}
var ee = {};
function v(x, E) {
{
var D = x.constructor, L = D && (D.displayName || D.name) || "ReactClass", J = L + "." + E;
if (ee[J])
return;
W("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.", E, L), ee[J] = !0;
}
}
var g = {
/**
* Checks whether or not this composite component is mounted.
* @param {ReactClass} publicInstance The instance we want to test.
* @return {boolean} True if mounted, false otherwise.
* @protected
* @final
*/
isMounted: function(x) {
return !1;
},
/**
* Forces an update. This should only be invoked when it is known with
* certainty that we are **not** in a DOM transaction.
*
* You may want to call this when you know that some deeper aspect of the
* component's state has changed but `setState` was not called.
*
* This will not invoke `shouldComponentUpdate`, but it will invoke
* `componentWillUpdate` and `componentDidUpdate`.
*
* @param {ReactClass} publicInstance The instance that should rerender.
* @param {?function} callback Called after component is updated.
* @param {?string} callerName name of the calling function in the public API.
* @internal
*/
enqueueForceUpdate: function(x, E, D) {
v(x, "forceUpdate");
},
/**
* Replaces all of the state. Always use this or `setState` to mutate state.
* You should treat `this.state` as immutable.
*
* There is no guarantee that `this.state` will be immediately updated, so
* accessing `this.state` after calling this method may return the old value.
*
* @param {ReactClass} publicInstance The instance that should rerender.
* @param {object} completeState Next state.
* @param {?function} callback Called after component is updated.
* @param {?string} callerName name of the calling function in the public API.
* @internal
*/
enqueueReplaceState: function(x, E, D, L) {
v(x, "replaceState");
},
/**
* Sets a subset of the state. This only exists because _pendingState is
* internal. This provides a merging strategy that is not available to deep
* properties which is confusing. TODO: Expose pendingState or don't use it
* during the merge.
*
* @param {ReactClass} publicInstance The instance that should rerender.
* @param {object} partialState Next partial state to be merged with state.
* @param {?function} callback Called after component is updated.
* @param {?string} Name of the calling function in the public API.
* @internal
*/
enqueueSetState: function(x, E, D, L) {
v(x, "setState");
}
}, O = Object.assign, P = {};
Object.freeze(P);
function A(x, E, D) {
this.props = x, this.context = E, this.refs = P, this.updater = D || g;
}
A.prototype.isReactComponent = {}, A.prototype.setState = function(x, E) {
if (typeof x != "object" && typeof x != "function" && x != null)
throw new Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");
this.updater.enqueueSetState(this, x, E, "setState");
}, A.prototype.forceUpdate = function(x) {
this.updater.enqueueForceUpdate(this, x, "forceUpdate");
};
{
var T = {
isMounted: ["isMounted", "Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."],
replaceState: ["replaceState", "Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."]
}, N = function(x, E) {
Object.defineProperty(A.prototype, x, {
get: function() {
U("%s(...) is deprecated in plain JavaScript React classes. %s", E[0], E[1]);
}
});
};
for (var C in T)
T.hasOwnProperty(C) && N(C, T[C]);
}
function I() {
}
I.prototype = A.prototype;
function j(x, E, D) {
this.props = x, this.context = E, this.refs = P, this.updater = D || g;
}
var R = j.prototype = new I();
R.constructor = j, O(R, A.prototype), R.isPureReactComponent = !0;
function Q() {
var x = {
current: null
};
return Object.seal(x), x;
}
var k = Array.isArray;
function oe(x) {
return k(x);
}
function me(x) {
{
var E = typeof Symbol == "function" && Symbol.toStringTag, D = E && x[Symbol.toStringTag] || x.constructor.name || "Object";
return D;
}
}
function Le(x) {
try {
return Xr(x), !1;
} catch {
return !0;
}
}
function Xr(x) {
return "" + x;
}
function Jr(x) {
if (Le(x))
return W("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.", me(x)), Xr(x);
}
function ce(x, E, D) {
var L = x.displayName;
if (L)
return L;
var J = E.displayName || E.name || "";
return J !== "" ? D + "(" + J + ")" : D;
}
function le(x) {
return x.displayName || "Context";
}
function fe(x) {
if (x == null)
return null;
if (typeof x.tag == "number" && W("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."), typeof x == "function")
return x.displayName || x.name || null;
if (typeof x == "string")
return x;
switch (x) {
case a:
return "Fragment";
case o:
return "Portal";
case s:
return "Profiler";
case i:
return "StrictMode";
case l:
return "Suspense";
case f:
return "SuspenseList";
}
if (typeof x == "object")
switch (x.$$typeof) {
case c:
var E = x;
return le(E) + ".Consumer";
case u:
var D = x;
return le(D._context) + ".Provider";
case d:
return ce(x, x.render, "ForwardRef");
case p:
var L = x.displayName || null;
return L !== null ? L : fe(x.type) || "Memo";
case y: {
var J = x, ie = J._payload, re = J._init;
try {
return fe(re(ie));
} catch {
return null;
}
}
}
return null;
}
var ot = Object.prototype.hasOwnProperty, kt = {
key: !0,
ref: !0,
__self: !0,
__source: !0
}, De, Ze, rt;
rt = {};
function Wt(x) {
if (ot.call(x, "ref")) {
var E = Object.getOwnPropertyDescriptor(x, "ref").get;
if (E && E.isReactWarning)
return !1;
}
return x.ref !== void 0;
}
function lt(x) {
if (ot.call(x, "key")) {
var E = Object.getOwnPropertyDescriptor(x, "key").get;
if (E && E.isReactWarning)
return !1;
}
return x.key !== void 0;
}
function $r(x, E) {
var D = function() {
De || (De = !0, W("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", E));
};
D.isReactWarning = !0, Object.defineProperty(x, "key", {
get: D,
configurable: !0
});
}
function pn(x, E) {
var D = function() {
Ze || (Ze = !0, W("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", E));
};
D.isReactWarning = !0, Object.defineProperty(x, "ref", {
get: D,
configurable: !0
});
}
function ro(x) {
if (typeof x.ref == "string" && F.current && x.__self && F.current.stateNode !== x.__self) {
var E = fe(F.current.type);
rt[E] || (W('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref', E, x.ref), rt[E] = !0);
}
}
var kr = function(x, E, D, L, J, ie, re) {
var se = {
// This tag allows us to uniquely identify this as a React Element
$$typeof: n,
// Built-in properties that belong on the element
type: x,
key: E,
ref: D,
props: re,
// Record the component responsible for creating this element.
_owner: ie
};
return se._store = {}, Object.defineProperty(se._store, "validated", {
configurable: !1,
enumerable: !1,
writable: !0,
value: !1
}), Object.defineProperty(se, "_self", {
configurable: !1,
enumerable: !1,
writable: !1,
value: L
}), Object.defineProperty(se, "_source", {
configurable: !1,
enumerable: !1,
writable: !1,
value: J
}), Object.freeze && (Object.freeze(se.props), Object.freeze(se)), se;
};
function vo(x, E, D) {
var L, J = {}, ie = null, re = null, se = null, pe = null;
if (E != null) {
Wt(E) && (re = E.ref, ro(E)), lt(E) && (Jr(E.key), ie = "" + E.key), se = E.__self === void 0 ? null : E.__self, pe = E.__source === void 0 ? null : E.__source;
for (L in E)
ot.call(E, L) && !kt.hasOwnProperty(L) && (J[L] = E[L]);
}
var Ce = arguments.length - 2;
if (Ce === 1)
J.children = D;
else if (Ce > 1) {
for (var je = Array(Ce), Re = 0; Re < Ce; Re++)
je[Re] = arguments[Re + 2];
Object.freeze && Object.freeze(je), J.children = je;
}
if (x && x.defaultProps) {
var Me = x.defaultProps;
for (L in Me)
J[L] === void 0 && (J[L] = Me[L]);
}
if (ie || re) {
var Fe = typeof x == "function" ? x.displayName || x.name || "Unknown" : x;
ie && $r(J, Fe), re && pn(J, Fe);
}
return kr(x, ie, re, se, pe, F.current, J);
}
function Mo(x, E) {
var D = kr(x.type, E, x.ref, x._self, x._source, x._owner, x.props);
return D;
}
function Do(x, E, D) {
if (x == null)
throw new Error("React.cloneElement(...): The argument must be a React element, but you passed " + x + ".");
var L, J = O({}, x.props), ie = x.key, re = x.ref, se = x._self, pe = x._source, Ce = x._owner;
if (E != null) {
Wt(E) && (re = E.ref, Ce = F.current), lt(E) && (Jr(E.key), ie = "" + E.key);
var je;
x.type && x.type.defaultProps && (je = x.type.defaultProps);
for (L in E)
ot.call(E, L) && !kt.hasOwnProperty(L) && (E[L] === void 0 && je !== void 0 ? J[L] = je[L] : J[L] = E[L]);
}
var Re = arguments.length - 2;
if (Re === 1)
J.children = D;
else if (Re > 1) {
for (var Me = Array(Re), Fe = 0; Fe < Re; Fe++)
Me[Fe] = arguments[Fe + 2];
J.children = Me;
}
return kr(x.type, ie, re, se, pe, Ce, J);
}
function yr(x) {
return typeof x == "object" && x !== null && x.$$typeof === n;
}
var Tn = ".", Fo = ":";
function Ss(x) {
var E = /[=:]/g, D = {
"=": "=0",
":": "=2"
}, L = x.replace(E, function(J) {
return D[J];
});
return "$" + L;
}
var pa = !1, Kc = /\/+/g;
function ma(x) {
return x.replace(Kc, "$&/");
}
function vr(x, E) {
return typeof x == "object" && x !== null && x.key != null ? (Jr(x.key), Ss("" + x.key)) : E.toString(36);
}
function xr(x, E, D, L, J) {
var ie = typeof x;
(ie === "undefined" || ie === "boolean") && (x = null);
var re = !1;
if (x === null)
re = !0;
else
switch (ie) {
case "string":
case "number":
re = !0;
break;
case "object":
switch (x.$$typeof) {
case n:
case o:
re = !0;
}
}
if (re) {
var se = x, pe = J(se), Ce = L === "" ? Tn + vr(se, 0) : L;
if (oe(pe)) {
var je = "";
Ce != null && (je = ma(Ce) + "/"), xr(pe, E, je, "", function(bm) {
return bm;
});
} else pe != null && (yr(pe) && (pe.key && (!se || se.key !== pe.key) && Jr(pe.key), pe = Mo(
pe,
// Keep both the (mapped) and old keys if they differ, just as
// traverseAllChildren used to do for objects as children
D + // $FlowFixMe Flow incorrectly thinks React.Portal doesn't have a key
(pe.key && (!se || se.key !== pe.key) ? (
// $FlowFixMe Flow incorrectly thinks existing element's key can be a number
// eslint-disable-next-line react-internal/safe-string-coercion
ma("" + pe.key) + "/"
) : "") + Ce
)), E.push(pe));
return 1;
}
var Re, Me, Fe = 0, tt = L === "" ? Tn : L + Fo;
if (oe(x))
for (var Bn = 0; Bn < x.length; Bn++)
Re = x[Bn], Me = tt + vr(Re, Bn), Fe += xr(Re, E, D, Me, J);
else {
var qo = $(x);
if (typeof qo == "function") {
var qs = x;
qo === qs.entries && (pa || U("Using Maps as children is not supported. Use an array of keyed ReactElements instead."), pa = !0);
for (var hm = qo.call(qs), Ks, gm = 0; !(Ks = hm.next()).done; )
Re = Ks.value, Me = tt + vr(Re, gm++), Fe += xr(Re, E, D, Me, J);
} else if (ie === "object") {
var Xs = String(x);
throw new Error("Objects are not valid as a React child (found: " + (Xs === "[object Object]" ? "object with keys {" + Object.keys(x).join(", ") + "}" : Xs) + "). If you meant to render a collection of children, use an array instead.");
}
}
return Fe;
}
function wr(x, E, D) {
if (x == null)
return x;
var L = [], J = 0;
return xr(x, L, "", "", function(ie) {
return E.call(D, ie, J++);
}), L;
}
function Dn(x) {
var E = 0;
return wr(x, function() {
E++;
}), E;
}
function sn(x, E, D) {
wr(x, function() {
E.apply(this, arguments);
}, D);
}
function nn(x) {
return wr(x, function(E) {
return E;
}) || [];
}
function mn(x) {
if (!yr(x))
throw new Error("React.Children.only expected to receive a single React element child.");
return x;
}
function xo(x) {
var E = {
$$typeof: c,
// As a workaround to support multiple concurrent renderers, we categorize
// some renderers as primary and others as secondary. We only expect
// there to be two concurrent renderers at most: React Native (primary) and
// Fabric (secondary); React DOM (primary) and React ART (secondary).
// Secondary renderers store their context values on separate fields.
_currentValue: x,
_currentValue2: x,
// Used to track how many concurrent renderers this context currently
// supports within in a single renderer. Such as parallel server rendering.
_threadCount: 0,
// These are circular
Provider: null,
Consumer: null,
// Add these to use same hidden class in VM as ServerContext
_defaultValue: null,
_globalName: null
};
E.Provider = {
$$typeof: u,
_context: E
};
var D = !1, L = !1, J = !1;
{
var ie = {
$$typeof: c,
_context: E
};
Object.defineProperties(ie, {
Provider: {
get: function() {
return L || (L = !0, W("Rendering <Context.Consumer.Provider> is not supported and will be removed in a future major release. Did you mean to render <Context.Provider> instead?")), E.Provider;
},
set: function(re) {
E.Provider = re;
}
},
_currentValue: {
get: function() {
return E._currentValue;
},
set: function(re) {
E._currentValue = re;
}
},
_currentValue2: {
get: function() {
return E._currentValue2;
},
set: function(re) {
E._currentValue2 = re;
}
},
_threadCount: {
get: function() {
return E._threadCount;
},
set: function(re) {
E._threadCount = re;
}
},
Consumer: {
get: function() {
return D || (D = !0, W("Rendering <Context.Consumer.Consumer> is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?")), E.Consumer;
}
},
displayName: {
get: function() {
return E.displayName;
},
set: function(re) {
J || (U("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.", re), J = !0);
}
}
}), E.Consumer = ie;
}
return E._currentRenderer = null, E._currentRenderer2 = null, E;
}
var Vt = -1, Qr = 0, on = 1, In = 2;
function Lo(x) {
if (x._status === Vt) {
var E = x._result, D = E();
if (D.then(function(ie) {
if (x._status === Qr || x._status === Vt) {
var re = x;
re._status = on, re._result = ie;
}
}, function(ie) {
if (x._status === Qr || x._status === Vt) {
var re = x;
re._status = In, re._result = ie;
}
}), x._status === Vt) {
var L = x;
L._status = Qr, L._result = D;
}
}
if (x._status === on) {
var J = x._result;
return J === void 0 && W(`lazy: Expected the result of a dynamic import() call. Instead received: %s
Your code should look like:
const MyComponent = lazy(() => import('./MyComponent'))
Did you accidentally put curly braces around the import?`, J), "default" in J || W(`lazy: Expected the result of a dynamic import() call. Instead received: %s
Your code should look like:
const MyComponent = lazy(() => import('./MyComponent'))`, J), J.default;
} else
throw x._result;
}
function zo(x) {
var E = {
// We use these fields to store the result.
_status: Vt,
_result: x
}, D = {
$$typeof: y,
_payload: E,
_init: Lo
};
{
var L, J;
Object.defineProperties(D, {
defaultProps: {
configurable: !0,
get: function() {
return L;
},
set: function(ie) {
W("React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."), L = ie, Object.defineProperty(D, "defaultProps", {
enumerable: !0
});
}
},
propTypes: {
configurable: !0,
get: function() {
return J;
},
set: function(ie) {
W("React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."), J = ie, Object.defineProperty(D, "propTypes", {
enumerable: !0
});
}
}
});
}
return D;
}
function Fn(x) {
x != null && x.$$typeof === p ? W("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...)).") : typeof x != "function" ? W("forwardRef requires a render function but was given %s.", x === null ? "null" : typeof x) : x.length !== 0 && x.length !== 2 && W("forwardRef render functions accept exactly two parameters: props and ref. %s", x.length === 1 ? "Did you forget to use the ref parameter?" : "Any additional parameter will be undefined."), x != null && (x.defaultProps != null || x.propTypes != null) && W("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?");
var E = {
$$typeof: d,
render: x
};
{
var D;
Object.defineProperty(E, "displayName", {
enumerable: !1,
configurable: !0,
get: function() {
return D;
},
set: function(L) {
D = L, !x.name && !x.displayName && (x.displayName = L);
}
});
}
return E;
}
var Ln;
Ln = Symbol.for("react.module.reference");
function wo(x) {
return !!(typeof x == "string" || typeof x == "function" || x === a || x === s || G || x === i || x === l || x === f || te || x === m || B || Z || M || typeof x == "object" && x !== null && (x.$$typeof === y || x.$$typeof === p || x.$$typeof === u || x.$$typeof === c || x.$$typeof === d || // This needs to include all possible module reference object
// types supported by any Flight configuration anywhere since
// we don't know which Flight build this will end up being used
// with.
x.$$typeof === Ln || x.getModuleId !== void 0));
}
function Rp(x, E) {
wo(x) || W("memo: The first argument must be a component. Instead received: %s", x === null ? "null" : typeof x);
var D = {
$$typeof: p,
type: x,
compare: E === void 0 ? null : E
};
{
var L;
Object.defineProperty(D, "displayName", {
enumerable: !1,
configurable: !0,
get: function() {
return L;
},
set: function(J) {
L = J, !x.name && !x.displayName && (x.displayName = J);
}
});
}
return D;
}
function at() {
var x = _.current;
return x === null && W(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
1. You might have mismatching versions of React and the renderer (such as React DOM)
2. You might be breaking the Rules of Hooks
3. You might have more than one copy of React in the same app
See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.`), x;
}
function Mp(x) {
var E = at();
if (x._context !== void 0) {
var D = x._context;
D.Consumer === x ? W("Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?") : D.Provider === x && W("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?");
}
return E.useContext(x);
}
function Dp(x) {
var E = at();
return E.useState(x);
}
function Fp(x, E, D) {
var L = at();
return L.useReducer(x, E, D);
}
function Lp(x) {
var E = at();
return E.useRef(x);
}
function zp(x, E) {
var D = at();
return D.useEffect(x, E);
}
function Wp(x, E) {
var D = at();
return D.useInsertionEffect(x, E);
}
function Vp(x, E) {
var D = at();
return D.useLayoutEffect(x, E);
}
function Hp(x, E) {
var D = at();
return D.useCallback(x, E);
}
function Gp(x, E) {
var D = at();
return D.useMemo(x, E);
}
function Up(x, E, D) {
var L = at();
return L.useImperativeHandle(x, E, D);
}
function Bp(x, E) {
{
var D = at();
return D.useDebugValue(x, E);
}
}
function Yp() {
var x = at();
return x.useTransition();
}
function qp(x) {
var E = at();
return E.useDeferredValue(x);
}
function Kp() {
var x = at();
return x.useId();
}
function Xp(x, E, D) {
var L = at();
return L.useSyncExternalStore(x, E, D);
}
var fn = 0, Es, As, Ps, Cs, Ns, Ts, Is;
function js() {
}
js.__reactDisabledLog = !0;
function Jp() {
{
if (fn === 0) {
Es = console.log, As = console.info, Ps = console.warn, Cs = console.error, Ns = console.group, Ts = console.groupCollapsed, Is = console.groupEnd;
var x = {
configurable: !0,
enumerable: !0,
value: js,
writable: !0
};
Object.defineProperties(console, {
info: x,
log: x,
warn: x,
error: x,
group: x,
groupCollapsed: x,
groupEnd: x
});
}
fn++;
}
}
function Qp() {
{
if (fn--, fn === 0) {
var x = {
configurable: !0,
enumerable: !0,
writable: !0
};
Object.defineProperties(console, {
log: O({}, x, {
value: Es
}),
info: O({}, x, {
value: As
}),
warn: O({}, x, {
value: Ps
}),
error: O({}, x, {
value: Cs
}),
group: O({}, x, {
value: Ns
}),
groupCollapsed: O({}, x, {
value: Ts
}),
groupEnd: O({}, x, {
value: Is
})
});
}
fn < 0 && W("disabledDepth fell below zero. This is a bug in React. Please file an issue.");
}
}
var Wo = H.ReactCurrentDispatcher, Vo;
function zn(x, E, D) {
{
if (Vo === void 0)
try {
throw Error();
} catch (J) {
var L = J.stack.trim().match(/\n( *(at )?)/);
Vo = L && L[1] || "";
}
return `
` + Vo + x;
}
}
var Ho = !1, Wn;
{
var Zp = typeof WeakMap == "function" ? WeakMap : Map;
Wn = new Zp();
}
function Rs(x, E) {
if (!x || Ho)
return "";
{
var D = Wn.get(x);
if (D !== void 0)
return D;
}
var L;
Ho = !0;
var J = Error.prepareStackTrace;
Error.prepareStackTrace = void 0;
var ie;
ie = Wo.current, Wo.current = null, Jp();
try {
if (E) {
var re = function() {
throw Error();
};
if (Object.defineProperty(re.prototype, "props", {
set: function() {
throw Error();
}
}), typeof Reflect == "object" && Reflect.construct) {
try {
Reflect.construct(re, []);
} catch (tt) {
L = tt;
}
Reflect.construct(x, [], re);
} else {
try {
re.call();
} catch (tt) {
L = tt;
}
x.call(re.prototype);
}
} else {
try {
throw Error();
} catch (tt) {
L = tt;
}
x();
}
} catch (tt) {
if (tt && L && typeof tt.stack == "string") {
for (var se = tt.stack.split(`
`), pe = L.stack.split(`
`), Ce = se.length - 1, je = pe.length - 1; Ce >= 1 && je >= 0 && se[Ce] !== pe[je]; )
je--;
for (; Ce >= 1 && je >= 0; Ce--, je--)
if (se[Ce] !== pe[je]) {
if (Ce !== 1 || je !== 1)
do
if (Ce--, je--, je < 0 || se[Ce] !== pe[je]) {
var Re = `
` + se[Ce].replace(" at new ", " at ");
return x.displayName && Re.includes("<anonymous>") && (Re = Re.replace("<anonymous>", x.displayName)), typeof x == "function" && Wn.set(x, Re), Re;
}
while (Ce >= 1 && je >= 0);
break;
}
}
} finally {
Ho = !1, Wo.current = ie, Qp(), Error.prepareStackTrace = J;
}
var Me = x ? x.displayName || x.name : "", Fe = Me ? zn(Me) : "";
return typeof x == "function" && Wn.set(x, Fe), Fe;
}
function em(x, E, D) {
return Rs(x, !1);
}
function tm(x) {
var E = x.prototype;
return !!(E && E.isReactComponent);
}
function Vn(x, E, D) {
if (x == null)
return "";
if (typeof x == "function")
return Rs(x, tm(x));
if (typeof x == "string")
return zn(x);
switch (x) {
case l:
return zn("Suspense");
case f:
return zn("SuspenseList");
}
if (typeof x == "object")
switch (x.$$typeof) {
case d:
return em(x.render);
case p:
return Vn(x.type, E, D);
case y: {
var L = x, J = L._payload, ie = L._init;
try {
return Vn(ie(J), E, D);
} catch {
}
}
}
return "";
}
var Ms = {}, Ds = H.ReactDebugCurrentFrame;
function Hn(x) {
if (x) {
var E = x._owner, D = Vn(x.type, x._source, E ? E.type : null);
Ds.setExtraStackFrame(D);
} else
Ds.setExtraStackFrame(null);
}
function rm(x, E, D, L, J) {
{
var ie = Function.call.bind(ot);
for (var re in x)
if (ie(x, re)) {
var se = void 0;
try {
if (typeof x[re] != "function") {
var pe = Error((L || "React class") + ": " + D + " type `" + re + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof x[re] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");
throw pe.name = "Invariant Violation", pe;
}
se = x[re](E, re, L, D, null, "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");
} catch (Ce) {
se = Ce;
}
se && !(se instanceof Error) && (Hn(J), W("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).", L || "React class", D, re, typeof se), Hn(null)), se instanceof Error && !(se.message in Ms) && (Ms[se.message] = !0, Hn(J), W("Failed %s type: %s", D, se.message), Hn(null));
}
}
}
function Zr(x) {
if (x) {
var E = x._owner, D = Vn(x.type, x._source, E ? E.type : null);
Y(D);
} else
Y(null);
}
var Go;
Go = !1;
function Fs() {
if (F.current) {
var x = fe(F.current.type);
if (x)
return `
Check the render method of \`` + x + "`.";
}
return "";
}
function nm(x) {
if (x !== void 0) {
var E = x.fileName.replace(/^.*[\\\/]/, ""), D = x.lineNumber;
return `
Check your code at ` + E + ":" + D + ".";
}
return "";
}
function om(x) {
return x != null ? nm(x.__source) : "";
}
var Ls = {};
function am(x) {
var E = Fs();
if (!E) {
var D = typeof x == "string" ? x : x.displayName || x.name;
D && (E = `
Check the top-level render call using <` + D + ">.");
}
return E;
}
function zs(x, E) {
if (!(!x._store || x._store.validated || x.key != null)) {
x._store.validated = !0;
var D = am(E);
if (!Ls[D]) {
Ls[D] = !0;
var L = "";
x && x._owner && x._owner !== F.current && (L = " It was passed a child from " + fe(x._owner.type) + "."), Zr(x), W('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.', D, L), Zr(null);
}
}
}
function Ws(x, E) {
if (typeof x == "object") {
if (oe(x))
for (var D = 0; D < x.length; D++) {
var L = x[D];
yr(L) && zs(L, E);
}
else if (yr(x))
x._store && (x._store.validated = !0);
else if (x) {
var J = $(x);
if (typeof J == "function" && J !== x.entries)
for (var ie = J.call(x), re; !(re = ie.next()).done; )
yr(re.value) && zs(re.value, E);
}
}
}
function Vs(x) {
{
var E = x.type;
if (E == null || typeof E == "string")
return;
var D;
if (typeof E == "function")
D = E.propTypes;
else if (typeof E == "object" && (E.$$typeof === d || // Note: Memo only checks outer props here.
// Inner props are checked in the reconciler.
E.$$typeof === p))
D = E.propTypes;
else
return;
if (D) {
var L = fe(E);
rm(D, x.props, "prop", L, x);
} else if (E.PropTypes !== void 0 && !Go) {
Go = !0;
var J = fe(E);
W("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?", J || "Unknown");
}
typeof E.getDefaultProps == "function" && !E.getDefaultProps.isReactClassApproved && W("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.");
}
}
function im(x) {
{
for (var E = Object.keys(x.props), D = 0; D < E.length; D++) {
var L = E[D];
if (L !== "children" && L !== "key") {
Zr(x), W("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.", L), Zr(null);
break;
}
}
x.ref !== null && (Zr(x), W("Invalid attribute `ref` supplied to `React.Fragment`."), Zr(null));
}
}
function Hs(x, E, D) {
var L = wo(x);
if (!L) {
var J = "";
(x === void 0 || typeof x == "object" && x !== null && Object.keys(x).length === 0) && (J += " You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");
var ie = om(E);
ie ? J += ie : J += Fs();
var re;
x === null ? re = "null" : oe(x) ? re = "array" : x !== void 0 && x.$$typeof === n ? (re = "<" + (fe(x.type) || "Unknown") + " />", J = " Did you accidentally export a JSX literal instead of a component?") : re = typeof x, W("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s", re, J);
}
var se = vo.apply(this, arguments);
if (se == null)
return se;
if (L)
for (var pe = 2; pe < arguments.length; pe++)
Ws(arguments[pe], x);
return x === a ? im(se) : Vs(se), se;
}
var Gs = !1;
function sm(x) {
var E = Hs.bind(null, x);
return E.type = x, Gs || (Gs = !0, U("React.createFactory() is deprecated and will be removed in a future major release. Consider using JSX or use React.createElement() directly instead.")), Object.defineProperty(E, "type", {
enumerable: !1,
get: function() {
return U("Factory.type is deprecated. Access the class directly before passing it to createFactory."), Object.defineProperty(this, "type", {
value: x
}), x;
}
}), E;
}
function lm(x, E, D) {
for (var L = Do.apply(this, arguments), J = 2; J < arguments.length; J++)
Ws(arguments[J], L.type);
return Vs(L), L;
}
function cm(x, E) {
var D = S.transition;
S.transition = {};
var L = S.transition;
S.transition._updatedFibers = /* @__PURE__ */ new Set();
try {
x();
} finally {
if (S.transition = D, D === null && L._updatedFibers) {
var J = L._updatedFibers.size;
J > 10 && U("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."), L._updatedFibers.clear();
}
}
}
var Us = !1, Gn = null;
function um(x) {
if (Gn === null)
try {
var E = ("require" + Math.random()).slice(0, 7), D = e && e[E];
Gn = D.call(e, "timers").setImmediate;
} catch {
Gn = function(L) {
Us === !1 && (Us = !0, typeof MessageChannel > "u" && W("This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."));
var J = new MessageChannel();
J.port1.onmessage = L, J.port2.postMessage(void 0);
};
}
return Gn(x);
}
var en = 0, Bs = !1;
function Ys(x) {
{
var E = en;
en++, b.current === null && (b.current = []);
var D = b.isBatchingLegacy, L;
try {
if (b.isBatchingLegacy = !0, L = x(), !D && b.didScheduleLegacyUpdate) {
var J = b.current;
J !== null && (b.didScheduleLegacyUpdate = !1, Yo(J));
}
} catch (Me) {
throw Un(E), Me;
} finally {
b.isBatchingLegacy = D;
}
if (L !== null && typeof L == "object" && typeof L.then == "function") {
var ie = L, re = !1, se = {
then: function(Me, Fe) {
re = !0, ie.then(function(tt) {
Un(E), en === 0 ? Uo(tt, Me, Fe) : Me(tt);
}, function(tt) {
Un(E), Fe(tt);
});
}
};
return !Bs && typeof Promise < "u" && Promise.resolve().then(function() {
}).then(function() {
re || (Bs = !0, W("You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);"));
}), se;
} else {
var pe = L;
if (Un(E), en === 0) {
var Ce = b.current;
Ce !== null && (Yo(Ce), b.current = null);
var je = {
then: function(Me, Fe) {
b.current === null ? (b.current = [], Uo(pe, Me, Fe)) : Me(pe);
}
};
return je;
} else {
var Re = {
then: function(Me, Fe) {
Me(pe);
}
};
return Re;
}
}
}
}
function Un(x) {
x !== en - 1 && W("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "), en = x;
}
function Uo(x, E, D) {
{
var L = b.current;
if (L !== null)
try {
Yo(L), um(function() {
L.length === 0 ? (b.current = null, E(x)) : Uo(x, E, D);
});
} catch (J) {
D(J);
}
else
E(x);
}
}
var Bo = !1;
function Yo(x) {
if (!Bo) {
Bo = !0;
var E = 0;
try {
for (; E < x.length; E++) {
var D = x[E];
do
D = D(!0);
while (D !== null);
}
x.length = 0;
} catch (L) {
throw x = x.slice(E + 1), L;
} finally {
Bo = !1;
}
}
}
var fm = Hs, dm = lm, pm = sm, mm = {
map: wr,
forEach: sn,
count: Dn,
toArray: nn,
only: mn
};
t.Children = mm, t.Component = A, t.Fragment = a, t.Profiler = s, t.PureComponent = j, t.StrictMode = i, t.Suspense = l, t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = H, t.act = Ys, t.cloneElement = dm, t.createContext = xo, t.createElement = fm, t.createFactory = pm, t.createRef = Q, t.forwardRef = Fn, t.isValidElement = yr, t.lazy = zo, t.memo = Rp, t.startTransition = cm, t.unstable_act = Ys, t.useCallback = Hp, t.useContext = Mp, t.useDebugValue = Bp, t.useDeferredValue = qp, t.useEffect = zp, t.useId = Kp, t.useImperativeHandle = Up, t.useInsertionEffect = Wp, t.useLayoutEffect = Vp, t.useMemo = Gp, t.useReducer = Fp, t.useRef = Lp, t.useState = Dp, t.useSyncExternalStore = Xp, t.useTransition = Yp, t.version = r, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());
}();
}(e1, e1.exports)), e1.exports;
}
var jF;
function T7e() {
return jF || (jF = 1, process.env.NODE_ENV === "production" ? Dk.exports = C7e() : Dk.exports = N7e()), Dk.exports;
}
var I7e = T7e();
const j7e = /* @__PURE__ */ P7e(I7e), R7e = {
[et.BlackForestLabs]: "/resources/images/services/blackforestlabs.svg",
[et.Kling]: "/resources/images/services/kling.svg",
[et.Midjourney]: "/resources/images/services/midjourney.svg",
[et.OpenAi]: "/resources/images/services/openai.svg",
[et.Bytedance]: "/resources/images/services/bytedance.svg",
[et.Google]: "/resources/images/services/google.svg",
[et.Recraft]: "/resources/images/services/recraft.svg",
[et.Tencent]: "/resources/images/services/tencent.svg",
[et.Krea]: "/resources/images/services/krea.svg",
[et.Fal]: "/resources/images/services/fal.svg",
[et.Replicate]: "/resources/images/services/replicate.svg",
[et.TensorArt]: "/resources/images/services/tensorart.svg",
[et.OpenArt]: "/resources/images/services/openart.svg",
[et.Higgsfield]: "/resources/images/services/higgsfield.svg",
[et.Alibaba]: "/resources/images/services/alibaba.svg",
[et.Vidu]: "/resources/images/services/vidu.svg",
[et.ArtCraft]: "/resources/images/services/artcraft.svg"
}, M7e = "/resources/images/services/generic.svg", D7e = (e) => R7e[e], F7e = (e, t = "h-4 w-4 invert") => {
const r = D7e(e) ?? M7e;
return j7e.createElement("img", {
src: r,
alt: `${e} logo`,
className: t
});
};
et.BlackForestLabs, et.BlackForestLabs, et.BlackForestLabs, et.BlackForestLabs, et.OpenAi, et.Kling, et.Kling, et.Kling, et.Bytedance, et.Google, et.Recraft, et.Tencent, et.Midjourney, et.Midjourney, et.Midjourney, et.Midjourney, et.Midjourney, et.Midjourney, et.Midjourney;
var ql = /* @__PURE__ */ ((e) => (e.InstructiveEdit = "instructiveEdit", e.MaskedInpainting = "maskedInpainting", e.NonMaskedInpainting = "nonMaskedInpainting", e))(ql || {});
const Yn = et, L7e = {
maxGenerationCount: 1,
defaultGenerationCount: 1
}, qn = (e) => ({
label: e.label ?? e.info.name,
description: e.description,
badges: e.badges,
capabilities: e.capabilities ?? L7e,
tags: e.tags ?? [],
...e
});
//////////////////////////////
// Image models
//////////////////////////////
qn({
id: "midjourney",
category: "image",
info: {
name: "Midjourney",
tauri_id: "midjourney",
creator: Yn.Midjourney
},
description: "Incredible style and quality",
badges: [{ label: "15 sec." }],
capabilities: { maxGenerationCount: 4, defaultGenerationCount: 4 }
}), qn({
id: "flux_pro_1_1_ultra",
category: "image",
info: {
name: "Flux Pro 1.1 Ultra",
tauri_id: "flux_pro_11_ultra",
creator: Yn.BlackForestLabs
},
description: "High quality model",
badges: [{ label: "15 sec." }],
capabilities: { maxGenerationCount: 4, defaultGenerationCount: 4 }
}), qn({
id: "flux_pro_1_1",
category: "image",
info: {
name: "Flux Pro 1.1",
tauri_id: "flux_pro_11",
creator: Yn.BlackForestLabs
},
description: "High quality model",
badges: [{ label: "15 sec." }],
capabilities: { maxGenerationCount: 4, defaultGenerationCount: 4 }
}), qn({
id: "flux_1_dev",
category: "image",
info: {
name: "Flux 1 Dev",
tauri_id: "flux_1_dev",
creator: Yn.BlackForestLabs
},
description: "High quality model",
badges: [{ label: "15 sec." }],
capabilities: { maxGenerationCount: 4, defaultGenerationCount: 4 }
}), qn({
id: "flux_1_schnell",
category: "image",
info: {
name: "Flux 1 Schnell",
tauri_id: "flux_1_schnell",
creator: Yn.BlackForestLabs
},
description: "High quality model",
badges: [{ label: "15 sec." }],
capabilities: { maxGenerationCount: 4, defaultGenerationCount: 4 }
}), qn({
id: "gpt_image_1",
category: "image",
info: {
name: "GPT Image 1 (GPT-4o)",
tauri_id: "gpt_image_1",
creator: Yn.OpenAi
},
description: "Slow, ultra instructive model",
badges: [{ label: "45 sec." }],
capabilities: { maxGenerationCount: 1 },
tags: ["instructiveEdit"]
}), qn({
id: "flux_pro_kontext_max",
category: "image",
info: {
name: "Flux Pro Kontext Max",
tauri_id: "flux_pro_kontext_max",
creator: Yn.BlackForestLabs
},
description: "Fast and high-quality model",
badges: [{ label: "20 sec." }],
capabilities: {
maxGenerationCount: 4
},
tags: [ql.InstructiveEdit, ql.NonMaskedInpainting]
}), qn({
id: "flux_pro_inpaint",
category: "image",
info: {
name: "Flux Pro 1 (Inpainting)",
tauri_id: "flux_pro_1",
creator: Yn.BlackForestLabs
},
description: "Fast and high-quality model",
badges: [{ label: "20 sec." }],
capabilities: {
maxGenerationCount: 1
// NB: For some reason Fal only supports ONE image!
},
tags: [ql.MaskedInpainting]
}), qn({
id: "flux_dev_juggernaut_inpaint",
category: "image",
info: {
name: "Flux Dev Juggernaut (Inpainting)",
tauri_id: "flux_dev_juggernaut",
creator: Yn.BlackForestLabs
},
description: "Fast and high-quality model",
badges: [{ label: "20 sec." }],
capabilities: {
maxGenerationCount: 4
},
tags: [ql.MaskedInpainting]
}), //////////////////////////////
// Video models
//////////////////////////////
qn({
id: "kling_1_6_pro",
category: "video",
info: {
name: "Kling 1.6 Pro",
tauri_id: "kling_1.6_pro",
creator: Yn.Kling
},
description: "Good quality model",
badges: [{ label: "2 min." }],
capabilities: { maxGenerationCount: 1 }
}), qn({
id: "kling_2_1_pro",
category: "video",
info: {
name: "Kling 2.1 Pro",
tauri_id: "kling_2.1_pro",
creator: Yn.Kling
},
description: "High quality model",
badges: [{ label: "2 min." }],
capabilities: { maxGenerationCount: 1 }
}), qn({
id: "kling_2_1_master",
category: "video",
info: {
name: "Kling 2.1 Master",
tauri_id: "kling_2.1_master",
creator: Yn.Kling
},
description: "Master quality model ($$)",
badges: [{ label: "2 min." }],
capabilities: { maxGenerationCount: 1 }
}), qn({
id: "seedance_1_0_lite",
category: "video",
info: {
name: "Seedance 1.0 Lite",
tauri_id: "seedance_1.0_lite",
creator: Yn.Bytedance
},
description: "Fast and high-quality model",
badges: [{ label: "2 min." }],
capabilities: { maxGenerationCount: 1 }
}), qn({
id: "veo_2",
category: "video",
info: { name: "Google Veo 2", tauri_id: "veo_2", creator: Yn.Google },
description: "Fast and high-quality model",
badges: [{ label: "2 min." }],
capabilities: { maxGenerationCount: 1 }
});
const qC = [
new ha({
id: "midjourney",
tauriId: "midjourney",
fullName: "Midjourney",
category: "image",
creator: et.Midjourney,
selectorName: "Midjourney",
selectorDescription: "Incredible style and quality",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canUseImagePrompt: !1,
maxImagePromptCount: 6
}),
new ha({
id: "flux_pro_1_1_ultra",
tauriId: "flux_pro_11_ultra",
fullName: "Flux Pro 1.1 Ultra",
category: "image",
creator: et.BlackForestLabs,
selectorName: "Flux Pro 1.1 Ultra",
selectorDescription: "High quality model",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canUseImagePrompt: !0,
maxImagePromptCount: 6
}),
new ha({
id: "flux_pro_1_1",
tauriId: "flux_pro_11",
fullName: "Flux Pro 1.1",
category: "image",
creator: et.BlackForestLabs,
selectorName: "Flux Pro 1.1",
selectorDescription: "High quality model",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canUseImagePrompt: !0,
maxImagePromptCount: 6
}),
new ha({
id: "flux_1_dev",
tauriId: "flux_1_dev",
fullName: "Flux 1 Dev",
category: "image",
creator: et.BlackForestLabs,
selectorName: "Flux 1 Dev",
selectorDescription: "High quality model",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canUseImagePrompt: !0,
maxImagePromptCount: 6
}),
new ha({
id: "flux_1_schnell",
tauriId: "flux_1_schnell",
fullName: "Flux 1 Schnell",
category: "image",
creator: et.BlackForestLabs,
selectorName: "Flux 1 Schnell",
selectorDescription: "High quality model",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canUseImagePrompt: !0,
maxImagePromptCount: 6
}),
new ha({
id: "gemini_25_flash",
tauriId: "gemini_25_flash",
fullName: "Gemini 2.5 Flash",
category: "image",
creator: et.Google,
selectorName: "Gemini 2.5 Flash",
selectorDescription: "Ultra instructive model",
selectorBadges: ["35 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 1,
canEditImages: !0,
canUseImagePrompt: !0,
maxImagePromptCount: 6,
tags: [ql.InstructiveEdit]
}),
new ha({
id: "gpt_image_1",
tauriId: "gpt_image_1",
fullName: "GPT Image 1 (GPT-4o)",
category: "image",
creator: et.OpenAi,
selectorName: "GPT Image 1 (GPT-4o)",
selectorDescription: "Slow, ultra instructive model",
selectorBadges: ["45 sec."],
maxGenerationCount: 1,
defaultGenerationCount: 1,
tags: [ql.InstructiveEdit],
canEditImages: !0,
canUseImagePrompt: !0,
maxImagePromptCount: 6
}),
new ha({
id: "flux_pro_kontext_max",
tauriId: "flux_pro_kontext_max",
fullName: "Flux Pro Kontext Max",
category: "image",
creator: et.BlackForestLabs,
selectorName: "Flux Pro Kontext Max",
selectorDescription: "Fast instructive editing",
selectorBadges: ["20 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canEditImages: !0,
tags: [ql.InstructiveEdit]
}),
new ha({
id: "flux_pro_inpaint",
tauriId: "flux_pro_1",
fullName: "Flux Pro Inpaint",
category: "image",
creator: et.BlackForestLabs,
selectorName: "Flux Pro",
selectorDescription: "Fast inpainting",
selectorBadges: ["30 sec."],
maxGenerationCount: 1,
// NB: Fal only allows one image for some reason!
defaultGenerationCount: 1,
// NB: Fal only allows one image for some reason!
canEditImages: !0,
usesInpaintingMask: !0
}),
new ha({
id: "flux_dev_juggernaut_inpaint",
tauriId: "flux_dev_juggernaut",
fullName: "Flux Dev Juggernaut Inpaint",
category: "image",
creator: et.BlackForestLabs,
selectorName: "Flux Dev Juggernaut",
selectorDescription: "Fast inpainting",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canEditImages: !0,
usesInpaintingMask: !0
})
], z7e = new Map(
qC.map((e) => [e.id, e])
);
if (z7e.size !== qC.length)
throw new Error("All image models must have unique IDs");
const W7e = [
new qm({
id: "kling_1_6_pro",
tauriId: "kling_1.6_pro",
fullName: "Kling 1.6 Pro",
category: "video",
creator: et.Kling,
selectorName: "Kling 1.6 Pro",
selectorDescription: "Fast video model",
selectorBadges: ["2 min."],
startFrame: !0,
endFrame: !0
}),
new qm({
id: "kling_2_1_pro",
tauriId: "kling_2.1_pro",
fullName: "Kling 2.1 Pro",
category: "video",
creator: et.Kling,
selectorName: "Kling 2.1 Pro",
selectorDescription: "Fast video model",
selectorBadges: ["2 min."],
startFrame: !0,
endFrame: !0
}),
new qm({
id: "kling_2_1_master",
tauriId: "kling_2.1_master",
fullName: "Kling 2.1 Master",
category: "video",
creator: et.Kling,
selectorName: "Kling 2.1 Master",
selectorDescription: "Fast video model",
selectorBadges: ["2 min."],
startFrame: !0,
endFrame: !1
}),
new qm({
id: "seedance_1_0_lite",
tauriId: "seedance_1.0_lite",
fullName: "Seedance 1.0 Lite",
category: "video",
creator: et.Bytedance,
selectorName: "Seedance 1.0 Lite",
selectorDescription: "Fast video model",
selectorBadges: ["2 min."],
startFrame: !0,
endFrame: !1
}),
new qm({
id: "veo_2",
tauriId: "veo_2",
fullName: "Google Veo 2",
category: "video",
creator: et.Google,
selectorName: "Google Veo 2",
selectorDescription: "Fast video model",
selectorBadges: ["2 min."],
startFrame: !0,
endFrame: !1
})
], uZ = [...qC, ...W7e], V7e = new Map(
uZ.map((e) => [e.id, e])
);
if (V7e.size !== uZ.length)
throw new Error("All models must have unique IDs");
const H7e = ({
id: e,
name: t,
icon: r,
isUpdating: n = !1
}) => {
const {
attributes: o,
listeners: a,
setNodeRef: i,
transform: s,
transition: u,
isDragging: c
} = $7e({ id: e }), d = {
transform: Qg.Transform.toString(s),
transition: u
};
return /* @__PURE__ */ Te(
"div",
{
ref: i,
style: d,
...o,
...a,
className: `
flex items-center justify-between rounded-lg p-3 transition-colors duration-200 border border-ui-controls-border bg-ui-controls/60 text-base-fg
${n ? "opacity-60 cursor-not-allowed" : "cursor-move hover:bg-ui-controls/80"}
${c ? "opacity-70 shadow-lg" : ""}
`,
children: [
/* @__PURE__ */ Te("div", { className: "flex items-center gap-3", children: [
/* @__PURE__ */ K("span", { className: "inline-flex items-center justify-center h-4 w-4", children: r }),
/* @__PURE__ */ K("span", { className: "font-medium", children: t })
] }),
/* @__PURE__ */ K("div", { className: "flex items-center", children: /* @__PURE__ */ K(
To,
{
icon: dge,
className: "text-base-fg/40 text-sm"
}
) })
]
}
);
}, RF = {
[$a.ArtCraft]: { id: $a.ArtCraft, name: "ArtCraft" },
[$a.Fal]: { id: $a.Fal, name: "Fal" },
[$a.Sora]: { id: $a.Sora, name: "Sora / ChatGPT" }
}, G7e = {
[$a.ArtCraft]: et.ArtCraft,
[$a.Fal]: et.Fal,
[$a.Sora]: et.OpenAi
}, U7e = (e) => {
const t = G7e[e];
return t ? F7e(t, "h-4 w-4") : /* @__PURE__ */ K(
"img",
{
src: "/resources/images/services/generic.svg",
alt: "generic logo",
className: "h-4 w-4"
}
);
}, B7e = () => {
const [e, t] = de([]), [r, n] = de(!1);
ue(() => {
(async () => {
const u = await Qve();
let c = [];
for (let d of u.payload.providers)
c.push(RF[d]);
for (const [d, l] of Object.entries(RF))
u.payload.providers.includes(d) || c.push(l);
t(c);
})();
}, []);
const o = eRe(
vF(BC),
vF(GC, {
coordinateGetter: O7e
})
), a = async (s) => {
try {
n(!0), console.log("Updating provider priority on backend:", s);
let u = s.map((c) => c.id);
console.log("Provider order:", u), await Zve({ providers: u }), console.log("Provider priority updated successfully");
} catch (u) {
console.error("Failed to update provider priority:", u);
} finally {
n(!1);
}
};
return /* @__PURE__ */ Te("div", { className: "space-y-4", children: [
/* @__PURE__ */ K("div", { children: /* @__PURE__ */ K("p", { className: "text-sm text-base-fg/70 mb-4", children: "Drag and drop to reorder model provider priority. Higher items will be tried first. You can use this to control favorite services and spending." }) }),
/* @__PURE__ */ K(
r7e,
{
sensors: o,
collisionDetection: rRe,
onDragEnd: (s) => {
const { active: u, over: c } = s;
u.id !== (c == null ? void 0 : c.id) && t((d) => {
const l = d.findIndex((y) => y.id === u.id), f = d.findIndex((y) => y.id === (c == null ? void 0 : c.id)), p = YC(d, l, f);
return a(p), p;
});
},
children: /* @__PURE__ */ K(h7e, { items: e, strategy: p7e, children: /* @__PURE__ */ K("div", { className: "space-y-2", children: e.map((s) => /* @__PURE__ */ K(
H7e,
{
id: s.id,
name: s.name,
icon: U7e(s.id),
isUpdating: r
},
s.id
)) }) })
}
),
r && /* @__PURE__ */ Te("div", { className: "text-xs rounded-full animate-pulse mt-4 flex items-center gap-2 text-base-fg/70", children: [
/* @__PURE__ */ K(To, { icon: nx, className: "animate-spin" }),
"Updating..."
] })
] });
}, Y7e = function(e, t) {
console.debug("gtagEvent", e, t), t ? window.gtag("event", e, t) : window.gtag("event", e);
};
function tc(e, t, { checkForDefaultPrevented: r = !0 } = {}) {
return function(n) {
if (e == null || e(n), r === !1 || !n.defaultPrevented)
return t == null ? void 0 : t(n);
};
}
function MF(e, t) {
if (typeof e == "function")
return e(t);
e != null && (e.current = t);
}
function fZ(...e) {
return (t) => {
let r = !1;
const n = e.map((o) => {
const a = MF(o, t);
return !r && typeof a == "function" && (r = !0), a;
});
if (r)
return () => {
for (let o = 0; o < n.length; o++) {
const a = n[o];
typeof a == "function" ? a() : MF(e[o], null);
}
};
};
}
function uf(...e) {
return V.useCallback(fZ(...e), e);
}
function q7e(e, t) {
const r = V.createContext(t), n = (a) => {
const { children: i, ...s } = a, u = V.useMemo(() => s, Object.values(s));
return /* @__PURE__ */ K(r.Provider, { value: u, children: i });
};
n.displayName = e + "Provider";
function o(a) {
const i = V.useContext(r);
if (i) return i;
if (t !== void 0) return t;
throw new Error(`\`${a}\` must be used within \`${e}\``);
}
return [n, o];
}
function K7e(e, t = []) {
let r = [];
function n(a, i) {
const s = V.createContext(i), u = r.length;
r = [...r, i];
const c = (l) => {
var f;
const { scope: p, children: y, ...m } = l, h = ((f = p == null ? void 0 : p[e]) == null ? void 0 : f[u]) || s, w = V.useMemo(() => m, Object.values(m));
return /* @__PURE__ */ K(h.Provider, { value: w, children: y });
};
c.displayName = a + "Provider";
function d(l, f) {
var p;
const y = ((p = f == null ? void 0 : f[e]) == null ? void 0 : p[u]) || s, m = V.useContext(y);
if (m) return m;
if (i !== void 0) return i;
throw new Error(`\`${l}\` must be used within \`${a}\``);
}
return [c, d];
}
const o = () => {
const a = r.map((i) => V.createContext(i));
return function(i) {
const s = (i == null ? void 0 : i[e]) || a;
return V.useMemo(
() => ({ [`__scope${e}`]: { ...i, [e]: s } }),
[i, s]
);
};
};
return o.scopeName = e, [n, X7e(o, ...t)];
}
function X7e(...e) {
const t = e[0];
if (e.length === 1) return t;
const r = () => {
const n = e.map((o) => ({
useScope: o(),
scopeName: o.scopeName
}));
return function(o) {
const a = n.reduce((i, { useScope: s, scopeName: u }) => {
const c = s(o)[`__scope${u}`];
return { ...i, ...c };
}, {});
return V.useMemo(() => ({ [`__scope${t.scopeName}`]: a }), [a]);
};
};
return r.scopeName = t.scopeName, r;
}
var eb = globalThis != null && globalThis.document ? V.useLayoutEffect : () => {
}, J7e = V[" useId ".trim().toString()] || (() => {
}), Q7e = 0;
function Fk(e) {
const [t, r] = V.useState(J7e());
return eb(() => {
r((n) => n ?? String(Q7e++));
}, [e]), e || (t ? `radix-${t}` : "");
}
var Z7e = V[" useInsertionEffect ".trim().toString()] || eb;
function eMe({
prop: e,
defaultProp: t,
onChange: r = () => {
},
caller: n
}) {
const [o, a, i] = tMe({
defaultProp: t,
onChange: r
}), s = e !== void 0, u = s ? e : o;
{
const d = V.useRef(e !== void 0);
V.useEffect(() => {
const l = d.current;
l !== s && console.warn(
`${n} is changing from ${l ? "controlled" : "uncontrolled"} to ${s ? "controlled" : "uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`
), d.current = s;
}, [s, n]);
}
const c = V.useCallback(
(d) => {
var l;
if (s) {
const f = rMe(d) ? d(e) : d;
f !== e && ((l = i.current) == null || l.call(i, f));
} else
a(d);
},
[s, e, a, i]
);
return [u, c];
}
function tMe({
defaultProp: e,
onChange: t
}) {
const [r, n] = V.useState(e), o = V.useRef(r), a = V.useRef(t);
return Z7e(() => {
a.current = t;
}, [t]), V.useEffect(() => {
var i;
o.current !== r && ((i = a.current) == null || i.call(a, r), o.current = r);
}, [r, o]), [r, n, a];
}
function rMe(e) {
return typeof e == "function";
}
// @__NO_SIDE_EFFECTS__
function dZ(e) {
const t = /* @__PURE__ */ nMe(e), r = V.forwardRef((n, o) => {
const { children: a, ...i } = n, s = V.Children.toArray(a), u = s.find(aMe);
if (u) {
const c = u.props.children, d = s.map((l) => l === u ? V.Children.count(c) > 1 ? V.Children.only(null) : V.isValidElement(c) ? c.props.children : null : l);
return /* @__PURE__ */ K(t, { ...i, ref: o, children: V.isValidElement(c) ? V.cloneElement(c, void 0, d) : null });
}
return /* @__PURE__ */ K(t, { ...i, ref: o, children: a });
});
return r.displayName = `${e}.Slot`, r;
}
// @__NO_SIDE_EFFECTS__
function nMe(e) {
const t = V.forwardRef((r, n) => {
const { children: o, ...a } = r;
if (V.isValidElement(o)) {
const i = sMe(o), s = iMe(a, o.props);
return o.type !== V.Fragment && (s.ref = n ? fZ(n, i) : i), V.cloneElement(o, s);
}
return V.Children.count(o) > 1 ? V.Children.only(null) : null;
});
return t.displayName = `${e}.SlotClone`, t;
}
var oMe = Symbol("radix.slottable");
function aMe(e) {
return V.isValidElement(e) && typeof e.type == "function" && "__radixId" in e.type && e.type.__radixId === oMe;
}
function iMe(e, t) {
const r = { ...t };
for (const n in t) {
const o = e[n], a = t[n];
/^on[A-Z]/.test(n) ? o && a ? r[n] = (...i) => {
const s = a(...i);
return o(...i), s;
} : o && (r[n] = o) : n === "style" ? r[n] = { ...o, ...a } : n === "className" && (r[n] = [o, a].filter(Boolean).join(" "));
}
return { ...e, ...r };
}
function sMe(e) {
var t, r;
let n = (t = Object.getOwnPropertyDescriptor(e.props, "ref")) == null ? void 0 : t.get, o = n && "isReactWarning" in n && n.isReactWarning;
return o ? e.ref : (n = (r = Object.getOwnPropertyDescriptor(e, "ref")) == null ? void 0 : r.get, o = n && "isReactWarning" in n && n.isReactWarning, o ? e.props.ref : e.props.ref || e.ref);
}
var lMe = [
"a",
"button",
"div",
"form",
"h2",
"h3",
"img",
"input",
"label",
"li",
"nav",
"ol",
"p",
"select",
"span",
"svg",
"ul"
], bi = lMe.reduce((e, t) => {
const r = /* @__PURE__ */ dZ(`Primitive.${t}`), n = V.forwardRef((o, a) => {
const { asChild: i, ...s } = o, u = i ? r : t;
return typeof window < "u" && (window[Symbol.for("radix-ui")] = !0), /* @__PURE__ */ K(u, { ...s, ref: a });
});
return n.displayName = `Primitive.${t}`, { ...e, [t]: n };
}, {});
function cMe(e, t) {
e && jd.flushSync(() => e.dispatchEvent(t));
}
function tb(e) {
const t = V.useRef(e);
return V.useEffect(() => {
t.current = e;
}), V.useMemo(() => (...r) => {
var n;
return (n = t.current) == null ? void 0 : n.call(t, ...r);
}, []);
}
function uMe(e, t = globalThis == null ? void 0 : globalThis.document) {
const r = tb(e);
V.useEffect(() => {
const n = (o) => {
o.key === "Escape" && r(o);
};
return t.addEventListener("keydown", n, { capture: !0 }), () => t.removeEventListener("keydown", n, { capture: !0 });
}, [r, t]);
}
var fMe = "DismissableLayer", JA = "dismissableLayer.update", dMe = "dismissableLayer.pointerDownOutside", pMe = "dismissableLayer.focusOutside", DF, pZ = V.createContext({
layers: /* @__PURE__ */ new Set(),
layersWithOutsidePointerEventsDisabled: /* @__PURE__ */ new Set(),
branches: /* @__PURE__ */ new Set()
}), mZ = V.forwardRef(
(e, t) => {
const {
disableOutsidePointerEvents: r = !1,
onEscapeKeyDown: n,
onPointerDownOutside: o,
onFocusOutside: a,
onInteractOutside: i,
onDismiss: s,
...u
} = e, c = V.useContext(pZ), [d, l] = V.useState(null), f = (d == null ? void 0 : d.ownerDocument) ?? (globalThis == null ? void 0 : globalThis.document), [, p] = V.useState({}), y = uf(t, (z) => l(z)), m = Array.from(c.layers), [h] = [...c.layersWithOutsidePointerEventsDisabled].slice(-1), w = m.indexOf(h), $ = d ? m.indexOf(d) : -1, _ = c.layersWithOutsidePointerEventsDisabled.size > 0, S = $ >= w, b = gMe((z) => {
const q = z.target, Y = [...c.branches].some((B) => B.contains(q));
!S || Y || (o == null || o(z), i == null || i(z), z.defaultPrevented || s == null || s());
}, f), F = bMe((z) => {
const q = z.target;
[...c.branches].some((Y) => Y.contains(q)) || (a == null || a(z), i == null || i(z), z.defaultPrevented || s == null || s());
}, f);
return uMe((z) => {
$ === c.layers.size - 1 && (n == null || n(z), !z.defaultPrevented && s && (z.preventDefault(), s()));
}, f), V.useEffect(() => {
if (d)
return r && (c.layersWithOutsidePointerEventsDisabled.size === 0 && (DF = f.body.style.pointerEvents, f.body.style.pointerEvents = "none"), c.layersWithOutsidePointerEventsDisabled.add(d)), c.layers.add(d), FF(), () => {
r && c.layersWithOutsidePointerEventsDisabled.size === 1 && (f.body.style.pointerEvents = DF);
};
}, [d, f, r, c]), V.useEffect(() => () => {
d && (c.layers.delete(d), c.layersWithOutsidePointerEventsDisabled.delete(d), FF());
}, [d, c]), V.useEffect(() => {
const z = () => p({});
return document.addEventListener(JA, z), () => document.removeEventListener(JA, z);
}, []), /* @__PURE__ */ K(
bi.div,
{
...u,
ref: y,
style: {
pointerEvents: _ ? S ? "auto" : "none" : void 0,
...e.style
},
onFocusCapture: tc(e.onFocusCapture, F.onFocusCapture),
onBlurCapture: tc(e.onBlurCapture, F.onBlurCapture),
onPointerDownCapture: tc(
e.onPointerDownCapture,
b.onPointerDownCapture
)
}
);
}
);
mZ.displayName = fMe;
var mMe = "DismissableLayerBranch", hMe = V.forwardRef((e, t) => {
const r = V.useContext(pZ), n = V.useRef(null), o = uf(t, n);
return V.useEffect(() => {
const a = n.current;
if (a)
return r.branches.add(a), () => {
r.branches.delete(a);
};
}, [r.branches]), /* @__PURE__ */ K(bi.div, { ...e, ref: o });
});
hMe.displayName = mMe;
function gMe(e, t = globalThis == null ? void 0 : globalThis.document) {
const r = tb(e), n = V.useRef(!1), o = V.useRef(() => {
});
return V.useEffect(() => {
const a = (s) => {
if (s.target && !n.current) {
let u = function() {
hZ(
dMe,
r,
c,
{ discrete: !0 }
);
};
const c = { originalEvent: s };
s.pointerType === "touch" ? (t.removeEventListener("click", o.current), o.current = u, t.addEventListener("click", o.current, { once: !0 })) : u();
} else
t.removeEventListener("click", o.current);
n.current = !1;
}, i = window.setTimeout(() => {
t.addEventListener("pointerdown", a);
}, 0);
return () => {
window.clearTimeout(i), t.removeEventListener("pointerdown", a), t.removeEventListener("click", o.current);
};
}, [t, r]), {
// ensures we check React component tree (not just DOM tree)
onPointerDownCapture: () => n.current = !0
};
}
function bMe(e, t = globalThis == null ? void 0 : globalThis.document) {
const r = tb(e), n = V.useRef(!1);
return V.useEffect(() => {
const o = (a) => {
a.target && !n.current && hZ(pMe, r, { originalEvent: a }, {
discrete: !1
});
};
return t.addEventListener("focusin", o), () => t.removeEventListener("focusin", o);
}, [t, r]), {
onFocusCapture: () => n.current = !0,
onBlurCapture: () => n.current = !1
};
}
function FF() {
const e = new CustomEvent(JA);
document.dispatchEvent(e);
}
function hZ(e, t, r, { discrete: n }) {
const o = r.originalEvent.target, a = new CustomEvent(e, { bubbles: !1, cancelable: !0, detail: r });
t && o.addEventListener(e, t, { once: !0 }), n ? cMe(o, a) : o.dispatchEvent(a);
}
var Lk = "focusScope.autoFocusOnMount", zk = "focusScope.autoFocusOnUnmount", LF = { bubbles: !1, cancelable: !0 }, yMe = "FocusScope", gZ = V.forwardRef((e, t) => {
const {
loop: r = !1,
trapped: n = !1,
onMountAutoFocus: o,
onUnmountAutoFocus: a,
...i
} = e, [s, u] = V.useState(null), c = tb(o), d = tb(a), l = V.useRef(null), f = uf(t, (m) => u(m)), p = V.useRef({
paused: !1,
pause() {
this.paused = !0;
},
resume() {
this.paused = !1;
}
}).current;
V.useEffect(() => {
if (n) {
let m = function(_) {
if (p.paused || !s) return;
const S = _.target;
s.contains(S) ? l.current = S : Ll(l.current, { select: !0 });
}, h = function(_) {
if (p.paused || !s) return;
const S = _.relatedTarget;
S !== null && (s.contains(S) || Ll(l.current, { select: !0 }));
}, w = function(_) {
if (document.activeElement === document.body)
for (const S of _)
S.removedNodes.length > 0 && Ll(s);
};
document.addEventListener("focusin", m), document.addEventListener("focusout", h);
const $ = new MutationObserver(w);
return s && $.observe(s, { childList: !0, subtree: !0 }), () => {
document.removeEventListener("focusin", m), document.removeEventListener("focusout", h), $.disconnect();
};
}
}, [n, s, p.paused]), V.useEffect(() => {
if (s) {
WF.add(p);
const m = document.activeElement;
if (!s.contains(m)) {
const h = new CustomEvent(Lk, LF);
s.addEventListener(Lk, c), s.dispatchEvent(h), h.defaultPrevented || (vMe(_Me(bZ(s)), { select: !0 }), document.activeElement === m && Ll(s));
}
return () => {
s.removeEventListener(Lk, c), setTimeout(() => {
const h = new CustomEvent(zk, LF);
s.addEventListener(zk, d), s.dispatchEvent(h), h.defaultPrevented || Ll(m ?? document.body, { select: !0 }), s.removeEventListener(zk, d), WF.remove(p);
}, 0);
};
}
}, [s, c, d, p]);
const y = V.useCallback(
(m) => {
if (!r && !n || p.paused) return;
const h = m.key === "Tab" && !m.altKey && !m.ctrlKey && !m.metaKey, w = document.activeElement;
if (h && w) {
const $ = m.currentTarget, [_, S] = xMe($);
_ && S ? !m.shiftKey && w === S ? (m.preventDefault(), r && Ll(_, { select: !0 })) : m.shiftKey && w === _ && (m.preventDefault(), r && Ll(S, { select: !0 })) : w === $ && m.preventDefault();
}
},
[r, n, p.paused]
);
return /* @__PURE__ */ K(bi.div, { tabIndex: -1, ...i, ref: f, onKeyDown: y });
});
gZ.displayName = yMe;
function vMe(e, { select: t = !1 } = {}) {
const r = document.activeElement;
for (const n of e)
if (Ll(n, { select: t }), document.activeElement !== r) return;
}
function xMe(e) {
const t = bZ(e), r = zF(t, e), n = zF(t.reverse(), e);
return [r, n];
}
function bZ(e) {
const t = [], r = document.createTreeWalker(e, NodeFilter.SHOW_ELEMENT, {
acceptNode: (n) => {
const o = n.tagName === "INPUT" && n.type === "hidden";
return n.disabled || n.hidden || o ? NodeFilter.FILTER_SKIP : n.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
}
});
for (; r.nextNode(); ) t.push(r.currentNode);
return t;
}
function zF(e, t) {
for (const r of e)
if (!wMe(r, { upTo: t })) return r;
}
function wMe(e, { upTo: t }) {
if (getComputedStyle(e).visibility === "hidden") return !0;
for (; e; ) {
if (t !== void 0 && e === t) return !1;
if (getComputedStyle(e).display === "none") return !0;
e = e.parentElement;
}
return !1;
}
function $Me(e) {
return e instanceof HTMLInputElement && "select" in e;
}
function Ll(e, { select: t = !1 } = {}) {
if (e && e.focus) {
const r = document.activeElement;
e.focus({ preventScroll: !0 }), e !== r && $Me(e) && t && e.select();
}
}
var WF = kMe();
function kMe() {
let e = [];
return {
add(t) {
const r = e[0];
t !== r && (r == null || r.pause()), e = VF(e, t), e.unshift(t);
},
remove(t) {
var r;
e = VF(e, t), (r = e[0]) == null || r.resume();
}
};
}
function VF(e, t) {
const r = [...e], n = r.indexOf(t);
return n !== -1 && r.splice(n, 1), r;
}
function _Me(e) {
return e.filter((t) => t.tagName !== "A");
}
var OMe = "Portal", yZ = V.forwardRef((e, t) => {
var r;
const { container: n, ...o } = e, [a, i] = V.useState(!1);
eb(() => i(!0), []);
const s = n || a && ((r = globalThis == null ? void 0 : globalThis.document) == null ? void 0 : r.body);
return s ? LW.createPortal(/* @__PURE__ */ K(bi.div, { ...o, ref: t }), s) : null;
});
yZ.displayName = OMe;
function SMe(e, t) {
return V.useReducer((r, n) => t[r][n] ?? r, e);
}
var rw = (e) => {
const { present: t, children: r } = e, n = EMe(t), o = typeof r == "function" ? r({ present: n.isPresent }) : V.Children.only(r), a = uf(n.ref, AMe(o));
return typeof r == "function" || n.isPresent ? V.cloneElement(o, { ref: a }) : null;
};
rw.displayName = "Presence";
function EMe(e) {
const [t, r] = V.useState(), n = V.useRef(null), o = V.useRef(e), a = V.useRef("none"), i = e ? "mounted" : "unmounted", [s, u] = SMe(i, {
mounted: {
UNMOUNT: "unmounted",
ANIMATION_OUT: "unmountSuspended"
},
unmountSuspended: {
MOUNT: "mounted",
ANIMATION_END: "unmounted"
},
unmounted: {
MOUNT: "mounted"
}
});
return V.useEffect(() => {
const c = av(n.current);
a.current = s === "mounted" ? c : "none";
}, [s]), eb(() => {
const c = n.current, d = o.current;
if (d !== e) {
const l = a.current, f = av(c);
e ? u("MOUNT") : f === "none" || (c == null ? void 0 : c.display) === "none" ? u("UNMOUNT") : u(d && l !== f ? "ANIMATION_OUT" : "UNMOUNT"), o.current = e;
}
}, [e, u]), eb(() => {
if (t) {
let c;
const d = t.ownerDocument.defaultView ?? window, l = (p) => {
const y = av(n.current).includes(p.animationName);
if (p.target === t && y && (u("ANIMATION_END"), !o.current)) {
const m = t.style.animationFillMode;
t.style.animationFillMode = "forwards", c = d.setTimeout(() => {
t.style.animationFillMode === "forwards" && (t.style.animationFillMode = m);
});
}
}, f = (p) => {
p.target === t && (a.current = av(n.current));
};
return t.addEventListener("animationstart", f), t.addEventListener("animationcancel", l), t.addEventListener("animationend", l), () => {
d.clearTimeout(c), t.removeEventListener("animationstart", f), t.removeEventListener("animationcancel", l), t.removeEventListener("animationend", l);
};
} else
u("ANIMATION_END");
}, [t, u]), {
isPresent: ["mounted", "unmountSuspended"].includes(s),
ref: V.useCallback((c) => {
n.current = c ? getComputedStyle(c) : null, r(c);
}, [])
};
}
function av(e) {
return (e == null ? void 0 : e.animationName) || "none";
}
function AMe(e) {
var t, r;
let n = (t = Object.getOwnPropertyDescriptor(e.props, "ref")) == null ? void 0 : t.get, o = n && "isReactWarning" in n && n.isReactWarning;
return o ? e.ref : (n = (r = Object.getOwnPropertyDescriptor(e, "ref")) == null ? void 0 : r.get, o = n && "isReactWarning" in n && n.isReactWarning, o ? e.props.ref : e.props.ref || e.ref);
}
var Wk = 0;
function PMe() {
V.useEffect(() => {
const e = document.querySelectorAll("[data-radix-focus-guard]");
return document.body.insertAdjacentElement("afterbegin", e[0] ?? HF()), document.body.insertAdjacentElement("beforeend", e[1] ?? HF()), Wk++, () => {
Wk === 1 && document.querySelectorAll("[data-radix-focus-guard]").forEach((t) => t.remove()), Wk--;
};
}, []);
}
function HF() {
const e = document.createElement("span");
return e.setAttribute("data-radix-focus-guard", ""), e.tabIndex = 0, e.style.outline = "none", e.style.opacity = "0", e.style.position = "fixed", e.style.pointerEvents = "none", e;
}
var Ia = function() {
return Ia = Object.assign || function(e) {
for (var t, r = 1, n = arguments.length; r < n; r++) {
t = arguments[r];
for (var o in t) Object.prototype.hasOwnProperty.call(t, o) && (e[o] = t[o]);
}
return e;
}, Ia.apply(this, arguments);
};
function vZ(e, t) {
var r = {};
for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && t.indexOf(n) < 0 && (r[n] = e[n]);
if (e != null && typeof Object.getOwnPropertySymbols == "function")
for (var o = 0, n = Object.getOwnPropertySymbols(e); o < n.length; o++)
t.indexOf(n[o]) < 0 && Object.prototype.propertyIsEnumerable.call(e, n[o]) && (r[n[o]] = e[n[o]]);
return r;
}
function CMe(e, t, r) {
for (var n = 0, o = t.length, a; n < o; n++)
(a || !(n in t)) && (a || (a = Array.prototype.slice.call(t, 0, n)), a[n] = t[n]);
return e.concat(a || Array.prototype.slice.call(t));
}
var t1 = "right-scroll-bar-position", r1 = "width-before-scroll-bar", NMe = "with-scroll-bars-hidden", TMe = "--removed-body-scroll-bar-size";
function Vk(e, t) {
return typeof e == "function" ? e(t) : e && (e.current = t), e;
}
function IMe(e, t) {
var r = de(function() {
return {
// value
value: e,
// last callback
callback: t,
// "memoized" public interface
facade: {
get current() {
return r.value;
},
set current(n) {
var o = r.value;
o !== n && (r.value = n, r.callback(n, o));
}
}
};
})[0];
return r.callback = t, r.facade;
}
var jMe = typeof window < "u" ? V.useLayoutEffect : V.useEffect, GF = /* @__PURE__ */ new WeakMap();
function RMe(e, t) {
var r = IMe(null, function(n) {
return e.forEach(function(o) {
return Vk(o, n);
});
});
return jMe(function() {
var n = GF.get(r);
if (n) {
var o = new Set(n), a = new Set(e), i = r.current;
o.forEach(function(s) {
a.has(s) || Vk(s, null);
}), a.forEach(function(s) {
o.has(s) || Vk(s, i);
});
}
GF.set(r, e);
}, [e]), r;
}
function MMe(e) {
return e;
}
function DMe(e, t) {
t === void 0 && (t = MMe);
var r = [], n = !1, o = {
read: function() {
if (n)
throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");
return r.length ? r[r.length - 1] : e;
},
useMedium: function(a) {
var i = t(a, n);
return r.push(i), function() {
r = r.filter(function(s) {
return s !== i;
});
};
},
assignSyncMedium: function(a) {
for (n = !0; r.length; ) {
var i = r;
r = [], i.forEach(a);
}
r = {
push: function(s) {
return a(s);
},
filter: function() {
return r;
}
};
},
assignMedium: function(a) {
n = !0;
var i = [];
if (r.length) {
var s = r;
r = [], s.forEach(a), i = r;
}
var u = function() {
var d = i;
i = [], d.forEach(a);
}, c = function() {
return Promise.resolve().then(u);
};
c(), r = {
push: function(d) {
i.push(d), c();
},
filter: function(d) {
return i = i.filter(d), r;
}
};
}
};
return o;
}
function FMe(e) {
e === void 0 && (e = {});
var t = DMe(null);
return t.options = Ia({ async: !0, ssr: !1 }, e), t;
}
var xZ = function(e) {
var t = e.sideCar, r = vZ(e, ["sideCar"]);
if (!t)
throw new Error("Sidecar: please provide `sideCar` property to import the right car");
var n = t.read();
if (!n)
throw new Error("Sidecar medium not found");
return V.createElement(n, Ia({}, r));
};
xZ.isSideCarExport = !0;
function LMe(e, t) {
return e.useMedium(t), xZ;
}
var wZ = FMe(), Hk = function() {
}, nw = V.forwardRef(function(e, t) {
var r = V.useRef(null), n = V.useState({
onScrollCapture: Hk,
onWheelCapture: Hk,
onTouchMoveCapture: Hk
}), o = n[0], a = n[1], i = e.forwardProps, s = e.children, u = e.className, c = e.removeScrollBar, d = e.enabled, l = e.shards, f = e.sideCar, p = e.noRelative, y = e.noIsolation, m = e.inert, h = e.allowPinchZoom, w = e.as, $ = w === void 0 ? "div" : w, _ = e.gapMode, S = vZ(e, ["forwardProps", "children", "className", "removeScrollBar", "enabled", "shards", "sideCar", "noRelative", "noIsolation", "inert", "allowPinchZoom", "as", "gapMode"]), b = f, F = RMe([r, t]), z = Ia(Ia({}, S), o);
return V.createElement(
V.Fragment,
null,
d && V.createElement(b, { sideCar: wZ, removeScrollBar: c, shards: l, noRelative: p, noIsolation: y, inert: m, setCallbacks: a, allowPinchZoom: !!h, lockRef: r, gapMode: _ }),
i ? V.cloneElement(V.Children.only(s), Ia(Ia({}, z), { ref: F })) : V.createElement($, Ia({}, z, { className: u, ref: F }), s)
);
});
nw.defaultProps = {
enabled: !0,
removeScrollBar: !0,
inert: !1
};
nw.classNames = {
fullWidth: r1,
zeroRight: t1
};
var zMe = function() {
if (typeof __webpack_nonce__ < "u")
return __webpack_nonce__;
};
function WMe() {
if (!document)
return null;
var e = document.createElement("style");
e.type = "text/css";
var t = zMe();
return t && e.setAttribute("nonce", t), e;
}
function VMe(e, t) {
e.styleSheet ? e.styleSheet.cssText = t : e.appendChild(document.createTextNode(t));
}
function HMe(e) {
var t = document.head || document.getElementsByTagName("head")[0];
t.appendChild(e);
}
var GMe = function() {
var e = 0, t = null;
return {
add: function(r) {
e == 0 && (t = WMe()) && (VMe(t, r), HMe(t)), e++;
},
remove: function() {
e--, !e && t && (t.parentNode && t.parentNode.removeChild(t), t = null);
}
};
}, UMe = function() {
var e = GMe();
return function(t, r) {
V.useEffect(function() {
return e.add(t), function() {
e.remove();
};
}, [t && r]);
};
}, $Z = function() {
var e = UMe(), t = function(r) {
var n = r.styles, o = r.dynamic;
return e(n, o), null;
};
return t;
}, BMe = {
left: 0,
top: 0,
right: 0,
gap: 0
}, Gk = function(e) {
return parseInt(e || "", 10) || 0;
}, YMe = function(e) {
var t = window.getComputedStyle(document.body), r = t[e === "padding" ? "paddingLeft" : "marginLeft"], n = t[e === "padding" ? "paddingTop" : "marginTop"], o = t[e === "padding" ? "paddingRight" : "marginRight"];
return [Gk(r), Gk(n), Gk(o)];
}, qMe = function(e) {
if (e === void 0 && (e = "margin"), typeof window > "u")
return BMe;
var t = YMe(e), r = document.documentElement.clientWidth, n = window.innerWidth;
return {
left: t[0],
top: t[1],
right: t[2],
gap: Math.max(0, n - r + t[2] - t[0])
};
}, KMe = $Z(), Od = "data-scroll-locked", XMe = function(e, t, r, n) {
var o = e.left, a = e.top, i = e.right, s = e.gap;
return r === void 0 && (r = "margin"), `
.`.concat(NMe, ` {
overflow: hidden `).concat(n, `;
padding-right: `).concat(s, "px ").concat(n, `;
}
body[`).concat(Od, `] {
overflow: hidden `).concat(n, `;
overscroll-behavior: contain;
`).concat([
t && "position: relative ".concat(n, ";"),
r === "margin" && `
padding-left: `.concat(o, `px;
padding-top: `).concat(a, `px;
padding-right: `).concat(i, `px;
margin-left:0;
margin-top:0;
margin-right: `).concat(s, "px ").concat(n, `;
`),
r === "padding" && "padding-right: ".concat(s, "px ").concat(n, ";")
].filter(Boolean).join(""), `
}
.`).concat(t1, ` {
right: `).concat(s, "px ").concat(n, `;
}
.`).concat(r1, ` {
margin-right: `).concat(s, "px ").concat(n, `;
}
.`).concat(t1, " .").concat(t1, ` {
right: 0 `).concat(n, `;
}
.`).concat(r1, " .").concat(r1, ` {
margin-right: 0 `).concat(n, `;
}
body[`).concat(Od, `] {
`).concat(TMe, ": ").concat(s, `px;
}
`);
}, UF = function() {
var e = parseInt(document.body.getAttribute(Od) || "0", 10);
return isFinite(e) ? e : 0;
}, JMe = function() {
V.useEffect(function() {
return document.body.setAttribute(Od, (UF() + 1).toString()), function() {
var e = UF() - 1;
e <= 0 ? document.body.removeAttribute(Od) : document.body.setAttribute(Od, e.toString());
};
}, []);
}, QMe = function(e) {
var t = e.noRelative, r = e.noImportant, n = e.gapMode, o = n === void 0 ? "margin" : n;
JMe();
var a = V.useMemo(function() {
return qMe(o);
}, [o]);
return V.createElement(KMe, { styles: XMe(a, !t, o, r ? "" : "!important") });
}, QA = !1;
if (typeof window < "u")
try {
var iv = Object.defineProperty({}, "passive", {
get: function() {
return QA = !0, !0;
}
});
window.addEventListener("test", iv, iv), window.removeEventListener("test", iv, iv);
} catch {
QA = !1;
}
var yf = QA ? { passive: !1 } : !1, ZMe = function(e) {
return e.tagName === "TEXTAREA";
}, kZ = function(e, t) {
if (!(e instanceof Element))
return !1;
var r = window.getComputedStyle(e);
return (
// not-not-scrollable
r[t] !== "hidden" && // contains scroll inside self
!(r.overflowY === r.overflowX && !ZMe(e) && r[t] === "visible")
);
}, eDe = function(e) {
return kZ(e, "overflowY");
}, tDe = function(e) {
return kZ(e, "overflowX");
}, BF = function(e, t) {
var r = t.ownerDocument, n = t;
do {
typeof ShadowRoot < "u" && n instanceof ShadowRoot && (n = n.host);
var o = _Z(e, n);
if (o) {
var a = OZ(e, n), i = a[1], s = a[2];
if (i > s)
return !0;
}
n = n.parentNode;
} while (n && n !== r.body);
return !1;
}, rDe = function(e) {
var t = e.scrollTop, r = e.scrollHeight, n = e.clientHeight;
return [
t,
r,
n
];
}, nDe = function(e) {
var t = e.scrollLeft, r = e.scrollWidth, n = e.clientWidth;
return [
t,
r,
n
];
}, _Z = function(e, t) {
return e === "v" ? eDe(t) : tDe(t);
}, OZ = function(e, t) {
return e === "v" ? rDe(t) : nDe(t);
}, oDe = function(e, t) {
return e === "h" && t === "rtl" ? -1 : 1;
}, aDe = function(e, t, r, n, o) {
var a = oDe(e, window.getComputedStyle(t).direction), i = a * n, s = r.target, u = t.contains(s), c = !1, d = i > 0, l = 0, f = 0;
do {
if (!s)
break;
var p = OZ(e, s), y = p[0], m = p[1], h = p[2], w = m - h - a * y;
(y || w) && _Z(e, s) && (l += w, f += y);
var $ = s.parentNode;
s = $ && $.nodeType === Node.DOCUMENT_FRAGMENT_NODE ? $.host : $;
} while (
// portaled content
!u && s !== document.body || // self content
u && (t.contains(s) || t === s)
);
return (d && Math.abs(l) < 1 || !d && Math.abs(f) < 1) && (c = !0), c;
}, sv = function(e) {
return "changedTouches" in e ? [e.changedTouches[0].clientX, e.changedTouches[0].clientY] : [0, 0];
}, YF = function(e) {
return [e.deltaX, e.deltaY];
}, qF = function(e) {
return e && "current" in e ? e.current : e;
}, iDe = function(e, t) {
return e[0] === t[0] && e[1] === t[1];
}, sDe = function(e) {
return `
.block-interactivity-`.concat(e, ` {pointer-events: none;}
.allow-interactivity-`).concat(e, ` {pointer-events: all;}
`);
}, lDe = 0, vf = [];
function cDe(e) {
var t = V.useRef([]), r = V.useRef([0, 0]), n = V.useRef(), o = V.useState(lDe++)[0], a = V.useState($Z)[0], i = V.useRef(e);
V.useEffect(function() {
i.current = e;
}, [e]), V.useEffect(function() {
if (e.inert) {
document.body.classList.add("block-interactivity-".concat(o));
var m = CMe([e.lockRef.current], (e.shards || []).map(qF)).filter(Boolean);
return m.forEach(function(h) {
return h.classList.add("allow-interactivity-".concat(o));
}), function() {
document.body.classList.remove("block-interactivity-".concat(o)), m.forEach(function(h) {
return h.classList.remove("allow-interactivity-".concat(o));
});
};
}
}, [e.inert, e.lockRef.current, e.shards]);
var s = V.useCallback(function(m, h) {
if ("touches" in m && m.touches.length === 2 || m.type === "wheel" && m.ctrlKey)
return !i.current.allowPinchZoom;
var w = sv(m), $ = r.current, _ = "deltaX" in m ? m.deltaX : $[0] - w[0], S = "deltaY" in m ? m.deltaY : $[1] - w[1], b, F = m.target, z = Math.abs(_) > Math.abs(S) ? "h" : "v";
if ("touches" in m && z === "h" && F.type === "range")
return !1;
var q = BF(z, F);
if (!q)
return !0;
if (q ? b = z : (b = z === "v" ? "h" : "v", q = BF(z, F)), !q)
return !1;
if (!n.current && "changedTouches" in m && (_ || S) && (n.current = b), !b)
return !0;
var Y = n.current || b;
return aDe(Y, h, m, Y === "h" ? _ : S);
}, []), u = V.useCallback(function(m) {
var h = m;
if (!(!vf.length || vf[vf.length - 1] !== a)) {
var w = "deltaY" in h ? YF(h) : sv(h), $ = t.current.filter(function(b) {
return b.name === h.type && (b.target === h.target || h.target === b.shadowParent) && iDe(b.delta, w);
})[0];
if ($ && $.should) {
h.cancelable && h.preventDefault();
return;
}
if (!$) {
var _ = (i.current.shards || []).map(qF).filter(Boolean).filter(function(b) {
return b.contains(h.target);
}), S = _.length > 0 ? s(h, _[0]) : !i.current.noIsolation;
S && h.cancelable && h.preventDefault();
}
}
}, []), c = V.useCallback(function(m, h, w, $) {
var _ = { name: m, delta: h, target: w, should: $, shadowParent: uDe(w) };
t.current.push(_), setTimeout(function() {
t.current = t.current.filter(function(S) {
return S !== _;
});
}, 1);
}, []), d = V.useCallback(function(m) {
r.current = sv(m), n.current = void 0;
}, []), l = V.useCallback(function(m) {
c(m.type, YF(m), m.target, s(m, e.lockRef.current));
}, []), f = V.useCallback(function(m) {
c(m.type, sv(m), m.target, s(m, e.lockRef.current));
}, []);
V.useEffect(function() {
return vf.push(a), e.setCallbacks({
onScrollCapture: l,
onWheelCapture: l,
onTouchMoveCapture: f
}), document.addEventListener("wheel", u, yf), document.addEventListener("touchmove", u, yf), document.addEventListener("touchstart", d, yf), function() {
vf = vf.filter(function(m) {
return m !== a;
}), document.removeEventListener("wheel", u, yf), document.removeEventListener("touchmove", u, yf), document.removeEventListener("touchstart", d, yf);
};
}, []);
var p = e.removeScrollBar, y = e.inert;
return V.createElement(
V.Fragment,
null,
y ? V.createElement(a, { styles: sDe(o) }) : null,
p ? V.createElement(QMe, { noRelative: e.noRelative, gapMode: e.gapMode }) : null
);
}
function uDe(e) {
for (var t = null; e !== null; )
e instanceof ShadowRoot && (t = e.host, e = e.host), e = e.parentNode;
return t;
}
const fDe = LMe(wZ, cDe);
var SZ = V.forwardRef(function(e, t) {
return V.createElement(nw, Ia({}, e, { ref: t, sideCar: fDe }));
});
SZ.classNames = nw.classNames;
var dDe = function(e) {
if (typeof document > "u")
return null;
var t = Array.isArray(e) ? e[0] : e;
return t.ownerDocument.body;
}, xf = /* @__PURE__ */ new WeakMap(), lv = /* @__PURE__ */ new WeakMap(), cv = {}, Uk = 0, EZ = function(e) {
return e && (e.host || EZ(e.parentNode));
}, pDe = function(e, t) {
return t.map(function(r) {
if (e.contains(r))
return r;
var n = EZ(r);
return n && e.contains(n) ? n : (console.error("aria-hidden", r, "in not contained inside", e, ". Doing nothing"), null);
}).filter(function(r) {
return !!r;
});
}, mDe = function(e, t, r, n) {
var o = pDe(t, Array.isArray(e) ? e : [e]);
cv[r] || (cv[r] = /* @__PURE__ */ new WeakMap());
var a = cv[r], i = [], s = /* @__PURE__ */ new Set(), u = new Set(o), c = function(l) {
!l || s.has(l) || (s.add(l), c(l.parentNode));
};
o.forEach(c);
var d = function(l) {
!l || u.has(l) || Array.prototype.forEach.call(l.children, function(f) {
if (s.has(f))
d(f);
else
try {
var p = f.getAttribute(n), y = p !== null && p !== "false", m = (xf.get(f) || 0) + 1, h = (a.get(f) || 0) + 1;
xf.set(f, m), a.set(f, h), i.push(f), m === 1 && y && lv.set(f, !0), h === 1 && f.setAttribute(r, "true"), y || f.setAttribute(n, "true");
} catch (w) {
console.error("aria-hidden: cannot operate on ", f, w);
}
});
};
return d(t), s.clear(), Uk++, function() {
i.forEach(function(l) {
var f = xf.get(l) - 1, p = a.get(l) - 1;
xf.set(l, f), a.set(l, p), f || (lv.has(l) || l.removeAttribute(n), lv.delete(l)), p || l.removeAttribute(r);
}), Uk--, Uk || (xf = /* @__PURE__ */ new WeakMap(), xf = /* @__PURE__ */ new WeakMap(), lv = /* @__PURE__ */ new WeakMap(), cv = {});
};
}, hDe = function(e, t, r) {
r === void 0 && (r = "data-aria-hidden");
var n = Array.from(Array.isArray(e) ? e : [e]), o = dDe(e);
return o ? (n.push.apply(n, Array.from(o.querySelectorAll("[aria-live], script"))), mDe(n, o, r, "aria-hidden")) : function() {
return null;
};
}, ow = "Dialog", [AZ, mQe] = K7e(ow), [gDe, da] = AZ(ow), PZ = (e) => {
const {
__scopeDialog: t,
children: r,
open: n,
defaultOpen: o,
onOpenChange: a,
modal: i = !0
} = e, s = V.useRef(null), u = V.useRef(null), [c, d] = eMe({
prop: n,
defaultProp: o ?? !1,
onChange: a,
caller: ow
});
return /* @__PURE__ */ K(
gDe,
{
scope: t,
triggerRef: s,
contentRef: u,
contentId: Fk(),
titleId: Fk(),
descriptionId: Fk(),
open: c,
onOpenChange: d,
onOpenToggle: V.useCallback(() => d((l) => !l), [d]),
modal: i,
children: r
}
);
};
PZ.displayName = ow;
var CZ = "DialogTrigger", bDe = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, ...n } = e, o = da(CZ, r), a = uf(t, o.triggerRef);
return /* @__PURE__ */ K(
bi.button,
{
type: "button",
"aria-haspopup": "dialog",
"aria-expanded": o.open,
"aria-controls": o.contentId,
"data-state": JC(o.open),
...n,
ref: a,
onClick: tc(e.onClick, o.onOpenToggle)
}
);
}
);
bDe.displayName = CZ;
var KC = "DialogPortal", [yDe, NZ] = AZ(KC, {
forceMount: void 0
}), TZ = (e) => {
const { __scopeDialog: t, forceMount: r, children: n, container: o } = e, a = da(KC, t);
return /* @__PURE__ */ K(yDe, { scope: t, forceMount: r, children: V.Children.map(n, (i) => /* @__PURE__ */ K(rw, { present: r || a.open, children: /* @__PURE__ */ K(yZ, { asChild: !0, container: o, children: i }) })) });
};
TZ.displayName = KC;
var u0 = "DialogOverlay", IZ = V.forwardRef(
(e, t) => {
const r = NZ(u0, e.__scopeDialog), { forceMount: n = r.forceMount, ...o } = e, a = da(u0, e.__scopeDialog);
return a.modal ? /* @__PURE__ */ K(rw, { present: n || a.open, children: /* @__PURE__ */ K(xDe, { ...o, ref: t }) }) : null;
}
);
IZ.displayName = u0;
var vDe = /* @__PURE__ */ dZ("DialogOverlay.RemoveScroll"), xDe = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, ...n } = e, o = da(u0, r);
return (
// Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`
// ie. when `Overlay` and `Content` are siblings
/* @__PURE__ */ K(SZ, { as: vDe, allowPinchZoom: !0, shards: [o.contentRef], children: /* @__PURE__ */ K(
bi.div,
{
"data-state": JC(o.open),
...n,
ref: t,
style: { pointerEvents: "auto", ...n.style }
}
) })
);
}
), Ku = "DialogContent", jZ = V.forwardRef(
(e, t) => {
const r = NZ(Ku, e.__scopeDialog), { forceMount: n = r.forceMount, ...o } = e, a = da(Ku, e.__scopeDialog);
return /* @__PURE__ */ K(rw, { present: n || a.open, children: a.modal ? /* @__PURE__ */ K(wDe, { ...o, ref: t }) : /* @__PURE__ */ K($De, { ...o, ref: t }) });
}
);
jZ.displayName = Ku;
var wDe = V.forwardRef(
(e, t) => {
const r = da(Ku, e.__scopeDialog), n = V.useRef(null), o = uf(t, r.contentRef, n);
return V.useEffect(() => {
const a = n.current;
if (a) return hDe(a);
}, []), /* @__PURE__ */ K(
RZ,
{
...e,
ref: o,
trapFocus: r.open,
disableOutsidePointerEvents: !0,
onCloseAutoFocus: tc(e.onCloseAutoFocus, (a) => {
var i;
a.preventDefault(), (i = r.triggerRef.current) == null || i.focus();
}),
onPointerDownOutside: tc(e.onPointerDownOutside, (a) => {
const i = a.detail.originalEvent, s = i.button === 0 && i.ctrlKey === !0;
(i.button === 2 || s) && a.preventDefault();
}),
onFocusOutside: tc(
e.onFocusOutside,
(a) => a.preventDefault()
)
}
);
}
), $De = V.forwardRef(
(e, t) => {
const r = da(Ku, e.__scopeDialog), n = V.useRef(!1), o = V.useRef(!1);
return /* @__PURE__ */ K(
RZ,
{
...e,
ref: t,
trapFocus: !1,
disableOutsidePointerEvents: !1,
onCloseAutoFocus: (a) => {
var i, s;
(i = e.onCloseAutoFocus) == null || i.call(e, a), a.defaultPrevented || (n.current || (s = r.triggerRef.current) == null || s.focus(), a.preventDefault()), n.current = !1, o.current = !1;
},
onInteractOutside: (a) => {
var i, s;
(i = e.onInteractOutside) == null || i.call(e, a), a.defaultPrevented || (n.current = !0, a.detail.originalEvent.type === "pointerdown" && (o.current = !0));
const u = a.target;
(s = r.triggerRef.current) != null && s.contains(u) && a.preventDefault(), a.detail.originalEvent.type === "focusin" && o.current && a.preventDefault();
}
}
);
}
), RZ = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, trapFocus: n, onOpenAutoFocus: o, onCloseAutoFocus: a, ...i } = e, s = da(Ku, r), u = V.useRef(null), c = uf(t, u);
return PMe(), /* @__PURE__ */ Te(rn, { children: [
/* @__PURE__ */ K(
gZ,
{
asChild: !0,
loop: !0,
trapped: n,
onMountAutoFocus: o,
onUnmountAutoFocus: a,
children: /* @__PURE__ */ K(
mZ,
{
role: "dialog",
id: s.contentId,
"aria-describedby": s.descriptionId,
"aria-labelledby": s.titleId,
"data-state": JC(s.open),
...i,
ref: c,
onDismiss: () => s.onOpenChange(!1)
}
)
}
),
/* @__PURE__ */ Te(rn, { children: [
/* @__PURE__ */ K(_De, { titleId: s.titleId }),
/* @__PURE__ */ K(SDe, { contentRef: u, descriptionId: s.descriptionId })
] })
] });
}
), XC = "DialogTitle", MZ = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, ...n } = e, o = da(XC, r);
return /* @__PURE__ */ K(bi.h2, { id: o.titleId, ...n, ref: t });
}
);
MZ.displayName = XC;
var DZ = "DialogDescription", FZ = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, ...n } = e, o = da(DZ, r);
return /* @__PURE__ */ K(bi.p, { id: o.descriptionId, ...n, ref: t });
}
);
FZ.displayName = DZ;
var LZ = "DialogClose", kDe = V.forwardRef(
(e, t) => {
const { __scopeDialog: r, ...n } = e, o = da(LZ, r);
return /* @__PURE__ */ K(
bi.button,
{
type: "button",
...n,
ref: t,
onClick: tc(e.onClick, () => o.onOpenChange(!1))
}
);
}
);
kDe.displayName = LZ;
function JC(e) {
return e ? "open" : "closed";
}
var zZ = "DialogTitleWarning", [hQe, WZ] = q7e(zZ, {
contentName: Ku,
titleName: XC,
docsSlug: "dialog"
}), _De = ({ titleId: e }) => {
const t = WZ(zZ), r = `\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;
return V.useEffect(() => {
e && (document.getElementById(e) || console.error(r));
}, [r, e]), null;
}, ODe = "DialogDescriptionWarning", SDe = ({ contentRef: e, descriptionId: t }) => {
const r = `Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${WZ(ODe).contentName}}.`;
return V.useEffect(() => {
var n;
const o = (n = e.current) == null ? void 0 : n.getAttribute("aria-describedby");
t && o && (document.getElementById(t) || console.warn(r));
}, [r, e, t]), null;
}, EDe = PZ, ADe = TZ, PDe = IZ, CDe = jZ, KF = MZ, NDe = FZ;
const QC = "-", TDe = (e) => {
const t = jDe(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(QC);
return a[0] === "" && a.length !== 1 && a.shift(), VZ(a, t) || IDe(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, VZ = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? VZ(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(QC);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, XF = /^\[(.+)\]$/, IDe = (e) => {
if (XF.test(e)) {
const t = XF.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, jDe = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return MDe(Object.entries(e.classGroups), r).forEach(([o, a]) => {
ZA(a, n, o, t);
}), n;
}, ZA = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : JF(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (RDe(o)) {
ZA(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
ZA(i, JF(t, a), r, n);
});
});
}, JF = (e, t) => {
let r = e;
return t.split(QC).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, RDe = (e) => e.isThemeGetter, MDe = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, DDe = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, HZ = "!", FDe = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith(HZ), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, LDe = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, zDe = (e) => ({
cache: DDe(e.cacheSize),
parseClassName: FDe(e),
...TDe(e)
}), WDe = /\s+/, VDe = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(WDe);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = LDe(d).join(":"), w = l ? h + HZ : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function HDe() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = GZ(t)) && (n && (n += " "), n += r);
return n;
}
const GZ = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = GZ(e[n])) && (r && (r += " "), r += t);
return r;
};
function GDe(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = zDe(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = VDe(u, r);
return o(u, d), d;
}
return function() {
return a(HDe.apply(null, arguments));
};
}
const jr = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, UZ = /^\[(?:([a-z-]+):)?(.+)\]$/i, UDe = /^\d+\/\d+$/, BDe = /* @__PURE__ */ new Set(["px", "full", "screen"]), YDe = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, qDe = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, KDe = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, XDe = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, JDe = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Pi = (e) => Sd(e) || BDe.has(e) || UDe.test(e), Pl = (e) => Sp(e, "length", aFe), Sd = (e) => !!e && !Number.isNaN(Number(e)), Bk = (e) => Sp(e, "number", Sd), Km = (e) => !!e && Number.isInteger(Number(e)), QDe = (e) => e.endsWith("%") && Sd(e.slice(0, -1)), vt = (e) => UZ.test(e), Cl = (e) => YDe.test(e), ZDe = /* @__PURE__ */ new Set(["length", "size", "percentage"]), eFe = (e) => Sp(e, ZDe, BZ), tFe = (e) => Sp(e, "position", BZ), rFe = /* @__PURE__ */ new Set(["image", "url"]), nFe = (e) => Sp(e, rFe, sFe), oFe = (e) => Sp(e, "", iFe), Xm = () => !0, Sp = (e, t, r) => {
const n = UZ.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, aFe = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
qDe.test(e) && !KDe.test(e)
), BZ = () => !1, iFe = (e) => XDe.test(e), sFe = (e) => JDe.test(e), lFe = () => {
const e = jr("colors"), t = jr("spacing"), r = jr("blur"), n = jr("brightness"), o = jr("borderColor"), a = jr("borderRadius"), i = jr("borderSpacing"), s = jr("borderWidth"), u = jr("contrast"), c = jr("grayscale"), d = jr("hueRotate"), l = jr("invert"), f = jr("gap"), p = jr("gradientColorStops"), y = jr("gradientColorStopPositions"), m = jr("inset"), h = jr("margin"), w = jr("opacity"), $ = jr("padding"), _ = jr("saturate"), S = jr("scale"), b = jr("sepia"), F = jr("skew"), z = jr("space"), q = jr("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", vt, t], M = () => [vt, t], te = () => ["", Pi, Pl], G = () => ["auto", Sd, vt], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", vt], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [Sd, vt];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [Xm],
spacing: [Pi, Pl],
blur: ["none", "", Cl, vt],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", Cl, vt],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [QDe, Pl],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", vt]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [Cl]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), vt]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", Km, vt]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", vt]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", Km, vt]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [Xm]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", Km, vt]
}, vt]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [Xm]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [Km, vt]
}, vt]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", vt]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", vt]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", vt, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [vt, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [vt, t, "none", "full", "min", "max", "fit", "prose", {
screen: [Cl]
}, Cl]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [vt, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [vt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [vt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [vt, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", Cl, Pl]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", Bk]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [Xm]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", vt]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", Sd, Bk]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", Pi, vt]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", vt]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", vt]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", Pi, Pl]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", Pi, vt]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", vt]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", vt]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), tFe]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", eFe]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, nFe]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [Pi, vt]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [Pi, Pl]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [Pi, Pl]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", Cl, oFe]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [Xm]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", Cl, vt]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", vt]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", vt]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", vt]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [Km, vt]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", vt]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", vt]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", vt]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [Pi, Pl, Bk]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, ng = /* @__PURE__ */ GDe(lFe);
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function cFe(e, t, r) {
return (t = fFe(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function QF(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function _e(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? QF(Object(r), !0).forEach(function(n) {
cFe(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : QF(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function uFe(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function fFe(e) {
var t = uFe(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const ZF = () => {
};
let ZC = {}, YZ = {}, qZ = null, KZ = {
mark: ZF,
measure: ZF
};
try {
typeof window < "u" && (ZC = window), typeof document < "u" && (YZ = document), typeof MutationObserver < "u" && (qZ = MutationObserver), typeof performance < "u" && (KZ = performance);
} catch {
}
const {
userAgent: eL = ""
} = ZC.navigator || {}, Ic = ZC, Ur = YZ, tL = qZ, uv = KZ;
Ic.document;
const $s = !!Ur.documentElement && !!Ur.head && typeof Ur.addEventListener == "function" && typeof Ur.createElement == "function", XZ = ~eL.indexOf("MSIE") || ~eL.indexOf("Trident/");
var dFe = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, pFe = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, JZ = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, mFe = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, QZ = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], An = "classic", aw = "duotone", hFe = "sharp", gFe = "sharp-duotone", ZZ = [An, aw, hFe, gFe], bFe = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, yFe = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, vFe = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), xFe = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, wFe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], rL = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, $Fe = ["kit"], kFe = {
kit: {
"fa-kit": "fak"
}
}, _Fe = ["fak", "fakd"], OFe = {
kit: {
fak: "fa-kit"
}
}, nL = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, fv = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, SFe = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], EFe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], AFe = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, PFe = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, CFe = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, e5 = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, NFe = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], t5 = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...SFe, ...NFe], TFe = ["solid", "regular", "light", "thin", "duotone", "brands"], eee = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], IFe = eee.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), jFe = [...Object.keys(CFe), ...TFe, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", fv.GROUP, fv.SWAP_OPACITY, fv.PRIMARY, fv.SECONDARY].concat(eee.map((e) => "".concat(e, "x"))).concat(IFe.map((e) => "w-".concat(e))), RFe = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const as = "___FONT_AWESOME___", r5 = 16, tee = "fa", ree = "svg-inline--fa", Xu = "data-fa-i2svg", n5 = "data-fa-pseudo-element", MFe = "data-fa-pseudo-element-pending", e6 = "data-prefix", t6 = "data-icon", oL = "fontawesome-i2svg", DFe = "async", FFe = ["HTML", "HEAD", "STYLE", "SCRIPT"], nee = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function Jb(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[An];
}
});
}
const oee = _e({}, JZ);
oee[An] = _e(_e(_e(_e({}, {
"fa-duotone": "duotone"
}), JZ[An]), rL.kit), rL["kit-duotone"]);
const LFe = Jb(oee), o5 = _e({}, xFe);
o5[An] = _e(_e(_e(_e({}, {
duotone: "fad"
}), o5[An]), nL.kit), nL["kit-duotone"]);
const aL = Jb(o5), a5 = _e({}, e5);
a5[An] = _e(_e({}, a5[An]), OFe.kit);
const r6 = Jb(a5), i5 = _e({}, PFe);
i5[An] = _e(_e({}, i5[An]), kFe.kit);
Jb(i5);
const zFe = dFe, aee = "fa-layers-text", WFe = pFe, VFe = _e({}, bFe);
Jb(VFe);
const HFe = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], Yk = mFe, GFe = [...$Fe, ...jFe], og = Ic.FontAwesomeConfig || {};
function UFe(e) {
var t = Ur.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function BFe(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Ur && typeof Ur.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = BFe(UFe(t));
n != null && (og[r] = n);
});
const iee = {
styleDefault: "solid",
familyDefault: An,
cssPrefix: tee,
replacementClass: ree,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
og.familyPrefix && (og.cssPrefix = og.familyPrefix);
const Bd = _e(_e({}, iee), og);
Bd.autoReplaceSvg || (Bd.observeMutations = !1);
const Ke = {};
Object.keys(iee).forEach((e) => {
Object.defineProperty(Ke, e, {
enumerable: !0,
set: function(t) {
Bd[e] = t, ag.forEach((r) => r(Ke));
},
get: function() {
return Bd[e];
}
});
});
Object.defineProperty(Ke, "familyPrefix", {
enumerable: !0,
set: function(e) {
Bd.cssPrefix = e, ag.forEach((t) => t(Ke));
},
get: function() {
return Bd.cssPrefix;
}
});
Ic.FontAwesomeConfig = Ke;
const ag = [];
function YFe(e) {
return ag.push(e), () => {
ag.splice(ag.indexOf(e), 1);
};
}
const Nl = r5, Za = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function qFe(e) {
if (!e || !$s)
return;
const t = Ur.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Ur.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Ur.head.insertBefore(t, n), e;
}
const KFe = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function rb() {
let e = 12, t = "";
for (; e-- > 0; )
t += KFe[Math.random() * 62 | 0];
return t;
}
function Ep(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function n6(e) {
return e.classList ? Ep(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function see(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function XFe(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(see(e[r]), '" '), "").trim();
}
function iw(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function o6(e) {
return e.size !== Za.size || e.x !== Za.x || e.y !== Za.y || e.rotate !== Za.rotate || e.flipX || e.flipY;
}
function JFe(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function QFe(e) {
let {
transform: t,
width: r = r5,
height: n = r5,
startCentered: o = !1
} = e, a = "";
return o && XZ ? a += "translate(".concat(t.x / Nl - r / 2, "em, ").concat(t.y / Nl - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / Nl, "em), calc(-50% + ").concat(t.y / Nl, "em)) ") : a += "translate(".concat(t.x / Nl, "em, ").concat(t.y / Nl, "em) "), a += "scale(".concat(t.size / Nl * (t.flipX ? -1 : 1), ", ").concat(t.size / Nl * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var ZFe = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function lee() {
const e = tee, t = ree, r = Ke.cssPrefix, n = Ke.replacementClass;
let o = ZFe;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let iL = !1;
function qk() {
Ke.autoAddCss && !iL && (qFe(lee()), iL = !0);
}
var eLe = {
mixout() {
return {
dom: {
css: lee,
insertCss: qk
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
qk();
},
beforeI2svg() {
qk();
}
};
}
};
const is = Ic || {};
is[as] || (is[as] = {});
is[as].styles || (is[as].styles = {});
is[as].hooks || (is[as].hooks = {});
is[as].shims || (is[as].shims = []);
var ei = is[as];
const cee = [], uee = function() {
Ur.removeEventListener("DOMContentLoaded", uee), f0 = 1, cee.map((e) => e());
};
let f0 = !1;
$s && (f0 = (Ur.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Ur.readyState), f0 || Ur.addEventListener("DOMContentLoaded", uee));
function tLe(e) {
$s && (f0 ? setTimeout(e, 0) : cee.push(e));
}
function Qb(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? see(e) : "<".concat(t, " ").concat(XFe(r), ">").concat(n.map(Qb).join(""), "</").concat(t, ">");
}
function sL(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var Kk = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function rLe(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function fee(e) {
const t = rLe(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function nLe(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function lL(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function s5(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = lL(t);
typeof ei.hooks.addPack == "function" && !n ? ei.hooks.addPack(e, lL(t)) : ei.styles[e] = _e(_e({}, ei.styles[e] || {}), o), e === "fas" && s5("fa", t);
}
const {
styles: nb,
shims: oLe
} = ei, dee = Object.keys(r6), aLe = dee.reduce((e, t) => (e[t] = Object.keys(r6[t]), e), {});
let a6 = null, pee = {}, mee = {}, hee = {}, gee = {}, bee = {};
function iLe(e) {
return ~GFe.indexOf(e);
}
function sLe(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !iLe(o) ? o : null;
}
const yee = () => {
const e = (n) => Kk(nb, (o, a, i) => (o[i] = Kk(a, n, {}), o), {});
pee = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), mee = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), bee = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in nb || Ke.autoFetchSvg, r = Kk(oLe, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
hee = r.names, gee = r.unicodes, a6 = sw(Ke.styleDefault, {
family: Ke.familyDefault
});
};
YFe((e) => {
a6 = sw(e.styleDefault, {
family: Ke.familyDefault
});
});
yee();
function i6(e, t) {
return (pee[e] || {})[t];
}
function lLe(e, t) {
return (mee[e] || {})[t];
}
function hu(e, t) {
return (bee[e] || {})[t];
}
function vee(e) {
return hee[e] || {
prefix: null,
iconName: null
};
}
function cLe(e) {
const t = gee[e], r = i6("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function jc() {
return a6;
}
const xee = () => ({
prefix: null,
iconName: null,
rest: []
});
function uLe(e) {
let t = An;
const r = dee.reduce((n, o) => (n[o] = "".concat(Ke.cssPrefix, "-").concat(o), n), {});
return ZZ.forEach((n) => {
(e.includes(r[n]) || e.some((o) => aLe[n].includes(o))) && (t = n);
}), t;
}
function sw(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = An
} = t, n = LFe[r][e];
if (r === aw && !e)
return "fad";
const o = aL[r][e] || aL[r][n], a = e in ei.styles ? e : null;
return o || a || null;
}
function fLe(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = sLe(Ke.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function cL(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function lw(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = t5.concat(EFe), a = cL(e.filter((l) => o.includes(l))), i = cL(e.filter((l) => !t5.includes(l))), s = a.filter((l) => (n = l, !QZ.includes(l))), [u = null] = s, c = uLe(a), d = _e(_e({}, fLe(i)), {}, {
prefix: sw(u, {
family: c
})
});
return _e(_e(_e({}, d), hLe({
values: e,
family: c,
styles: nb,
config: Ke,
canonical: d,
givenPrefix: n
})), dLe(r, n, d));
}
function dLe(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? vee(o) : {}, i = hu(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !nb.far && nb.fas && !Ke.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const pLe = ZZ.filter((e) => e !== An || e !== aw), mLe = Object.keys(e5).filter((e) => e !== An).map((e) => Object.keys(e5[e])).flat();
function hLe(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === aw, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && pLe.includes(r) && (Object.keys(a).find((l) => mLe.includes(l)) || i.autoFetchSvg)) {
const l = vFe.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = hu(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = jc() || "fas"), n;
}
class gLe {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = _e(_e({}, this.definitions[a] || {}), o[a]), s5(a, o[a]);
const i = r6[An][a];
i && s5(i, o[a]), yee();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}
let uL = [], Uf = {};
const Ed = {}, bLe = Object.keys(Ed);
function yLe(e, t) {
let {
mixoutsTo: r
} = t;
return uL = e, Uf = {}, Object.keys(Ed).forEach((n) => {
bLe.indexOf(n) === -1 && delete Ed[n];
}), uL.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Uf[i] || (Uf[i] = []), Uf[i].push(a[i]);
});
}
n.provides && n.provides(Ed);
}), r;
}
function l5(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Uf[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function Ju(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Uf[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function Rc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return Ed[e] ? Ed[e].apply(null, t) : void 0;
}
function c5(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || jc();
if (t)
return t = hu(r, t) || t, sL(wee.definitions, r, t) || sL(ei.styles, r, t);
}
const wee = new gLe(), vLe = () => {
Ke.autoReplaceSvg = !1, Ke.observeMutations = !1, Ju("noAuto");
}, xLe = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return $s ? (Ju("beforeI2svg", e), Rc("pseudoElements2svg", e), Rc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
Ke.autoReplaceSvg === !1 && (Ke.autoReplaceSvg = !0), Ke.observeMutations = !0, tLe(() => {
$Le({
autoReplaceSvgRoot: t
}), Ju("watch", e);
});
}
}, wLe = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: hu(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = sw(e[0]);
return {
prefix: r,
iconName: hu(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(Ke.cssPrefix, "-")) > -1 || e.match(zFe))) {
const t = lw(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || jc(),
iconName: hu(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = jc();
return {
prefix: t,
iconName: hu(t, e) || e
};
}
}
}, ho = {
noAuto: vLe,
config: Ke,
dom: xLe,
parse: wLe,
library: wee,
findIconDefinition: c5,
toHtml: Qb
}, $Le = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Ur
} = e;
(Object.keys(ei.styles).length > 0 || Ke.autoFetchSvg) && $s && Ke.autoReplaceSvg && ho.dom.i2svg({
node: t
});
};
function cw(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => Qb(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!$s) return;
const r = Ur.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function kLe(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (o6(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = iw(_e(_e({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function _Le(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(Ke.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: _e(_e({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function s6(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = _Fe.includes(n), m = [Ke.replacementClass, o ? "".concat(Ke.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: _e(_e({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[Xu] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || rb())
},
children: [s]
}), delete h.attributes.title);
const $ = _e(_e({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: _e(_e({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? Rc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : Rc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? _Le($) : kLe($);
}
function fL(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = _e(_e(_e({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[Xu] = "");
const c = _e({}, i.styles);
o6(o) && (c.transform = QFe({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = iw(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function OLe(e) {
const {
content: t,
title: r,
extra: n
} = e, o = _e(_e(_e({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = iw(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: Xk
} = ei;
function u5(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(Ke.cssPrefix, "-").concat(Yk.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(Ke.cssPrefix, "-").concat(Yk.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(Ke.cssPrefix, "-").concat(Yk.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const SLe = {
found: !1,
width: 512,
height: 512
};
function ELe(e, t) {
!nee && !Ke.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function f5(e, t) {
let r = t;
return t === "fa" && Ke.styleDefault !== null && (t = jc()), new Promise((n, o) => {
if (r === "fa") {
const a = vee(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && Xk[t] && Xk[t][e]) {
const a = Xk[t][e];
return n(u5(a));
}
ELe(e, t), n(_e(_e({}, SLe), {}, {
icon: Ke.showMissingIcons && e ? Rc("missingIconAbstract") || {} : {}
}));
});
}
const dL = () => {
}, d5 = Ke.measurePerformance && uv && uv.mark && uv.measure ? uv : {
mark: dL,
measure: dL
}, vh = 'FA "6.7.2"', ALe = (e) => (d5.mark("".concat(vh, " ").concat(e, " begins")), () => $ee(e)), $ee = (e) => {
d5.mark("".concat(vh, " ").concat(e, " ends")), d5.measure("".concat(vh, " ").concat(e), "".concat(vh, " ").concat(e, " begins"), "".concat(vh, " ").concat(e, " ends"));
};
var l6 = {
begin: ALe,
end: $ee
};
const n1 = () => {
};
function pL(e) {
return typeof (e.getAttribute ? e.getAttribute(Xu) : null) == "string";
}
function PLe(e) {
const t = e.getAttribute ? e.getAttribute(e6) : null, r = e.getAttribute ? e.getAttribute(t6) : null;
return t && r;
}
function CLe(e) {
return e && e.classList && e.classList.contains && e.classList.contains(Ke.replacementClass);
}
function NLe() {
return Ke.autoReplaceSvg === !0 ? o1.replace : o1[Ke.autoReplaceSvg] || o1.replace;
}
function TLe(e) {
return Ur.createElementNS("http://www.w3.org/2000/svg", e);
}
function ILe(e) {
return Ur.createElement(e);
}
function kee(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? TLe : ILe
} = t;
if (typeof e == "string")
return Ur.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(kee(o, {
ceFn: r
}));
}), n;
}
function jLe(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const o1 = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(kee(r), t);
}), t.getAttribute(Xu) === null && Ke.keepOriginalSource) {
let r = Ur.createComment(jLe(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~n6(t).indexOf(Ke.replacementClass))
return o1.replace(e);
const n = new RegExp("".concat(Ke.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === Ke.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => Qb(a)).join(`
`);
t.setAttribute(Xu, ""), t.innerHTML = o;
}
};
function mL(e) {
e();
}
function _ee(e, t) {
const r = typeof t == "function" ? t : n1;
if (e.length === 0)
r();
else {
let n = mL;
Ke.mutateApproach === DFe && (n = Ic.requestAnimationFrame || mL), n(() => {
const o = NLe(), a = l6.begin("mutate");
e.map(o), a(), r();
});
}
}
let c6 = !1;
function Oee() {
c6 = !0;
}
function p5() {
c6 = !1;
}
let d0 = null;
function hL(e) {
if (!tL || !Ke.observeMutations)
return;
const {
treeCallback: t = n1,
nodeCallback: r = n1,
pseudoElementsCallback: n = n1,
observeMutationsRoot: o = Ur
} = e;
d0 = new tL((a) => {
if (c6) return;
const i = jc();
Ep(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !pL(s.addedNodes[0]) && (Ke.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && Ke.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && pL(s.target) && ~HFe.indexOf(s.attributeName))
if (s.attributeName === "class" && PLe(s.target)) {
const {
prefix: u,
iconName: c
} = lw(n6(s.target));
s.target.setAttribute(e6, u || i), c && s.target.setAttribute(t6, c);
} else CLe(s.target) && r(s.target);
});
}), $s && d0.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function RLe() {
d0 && d0.disconnect();
}
function MLe(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function DLe(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = lw(n6(e));
return o.prefix || (o.prefix = jc()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = lLe(o.prefix, e.innerText) || i6(o.prefix, fee(e.innerText))), !o.iconName && Ke.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function FLe(e) {
const t = Ep(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return Ke.autoA11y && (r ? t["aria-labelledby"] = "".concat(Ke.replacementClass, "-title-").concat(n || rb()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function LLe() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: Za,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function gL(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = DLe(e), a = FLe(e), i = l5("parseNodeAttributes", {}, e);
let s = t.styleParser ? MLe(e) : [];
return _e({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: Za,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: zLe
} = ei;
function See(e) {
const t = Ke.autoReplaceSvg === "nest" ? gL(e, {
styleParser: !1
}) : gL(e);
return ~t.extra.classes.indexOf(aee) ? Rc("generateLayersText", e, t) : Rc("generateSvgReplacementMutation", e, t);
}
function WLe() {
return [...wFe, ...t5];
}
function bL(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!$s) return Promise.resolve();
const r = Ur.documentElement.classList, n = (d) => r.add("".concat(oL, "-").concat(d)), o = (d) => r.remove("".concat(oL, "-").concat(d)), a = Ke.autoFetchSvg ? WLe() : QZ.concat(Object.keys(zLe));
a.includes("fa") || a.push("fa");
const i = [".".concat(aee, ":not([").concat(Xu, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(Xu, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = Ep(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = l6.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = See(l);
f && d.push(f);
} catch (f) {
nee || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
_ee(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function VLe(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
See(e).then((r) => {
r && _ee([r], t);
});
}
function HLe(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : c5(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : c5(o || {})), e(n, _e(_e({}, r), {}, {
mask: o
}));
};
}
const GLe = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Za,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return cw(_e({
type: "icon"
}, e), () => (Ju("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), Ke.autoA11y && (i ? c["aria-labelledby"] = "".concat(Ke.replacementClass, "-title-").concat(s || rb()) : (c["aria-hidden"] = "true", c.focusable = "false")), s6({
icons: {
main: u5(p),
mask: o ? u5(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: _e(_e({}, Za), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var ULe = {
mixout() {
return {
icon: HLe(GLe)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = bL, e.nodeCallback = VLe, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Ur,
callback: n = () => {
}
} = t;
return bL(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([f5(n, i), c.iconName ? f5(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, s6({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = iw(i);
s.length > 0 && (n.style = s);
let u;
return o6(a) && (u = Rc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, BLe = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return cw({
type: "layer"
}, () => {
Ju("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(Ke.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, YLe = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return cw({
type: "counter",
content: e
}, () => (Ju("beforeDOMElementCreation", {
content: e,
params: t
}), OLe({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(Ke.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, qLe = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = Za,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return cw({
type: "text",
content: e
}, () => (Ju("beforeDOMElementCreation", {
content: e,
params: t
}), fL({
content: e,
transform: _e(_e({}, Za), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(Ke.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (XZ) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return Ke.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, fL({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const KLe = new RegExp('"', "ug"), yL = [1105920, 1112319], vL = _e(_e(_e(_e({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), yFe), RFe), AFe), m5 = Object.keys(vL).reduce((e, t) => (e[t.toLowerCase()] = vL[t], e), {}), XLe = Object.keys(m5).reduce((e, t) => {
const r = m5[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function JLe(e) {
const t = e.replace(KLe, ""), r = nLe(t, 0), n = r >= yL[0] && r <= yL[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: fee(o ? t[0] : t),
isSecondary: n || o
};
}
function QLe(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (m5[r] || {})[o] || XLe[r];
}
function xL(e, t) {
const r = "".concat(MFe).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = Ep(e.children).filter((l) => l.getAttribute(n5) === t)[0], i = Ic.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(WFe), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = QLe(s, c);
const {
value: p,
isSecondary: y
} = JLe(l), m = u[0].startsWith("FontAwesome");
let h = i6(f, p), w = h;
if (m) {
const $ = cLe(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(e6) !== f || a.getAttribute(t6) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = LLe(), {
extra: _
} = $;
_.attributes[n5] = t, f5(h, f).then((S) => {
const b = s6(_e(_e({}, $), {}, {
icons: {
main: S,
mask: xee()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = Ur.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => Qb(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function ZLe(e) {
return Promise.all([xL(e, "::before"), xL(e, "::after")]);
}
function e8e(e) {
return e.parentNode !== document.head && !~FFe.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(n5) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function wL(e) {
if ($s)
return new Promise((t, r) => {
const n = Ep(e.querySelectorAll("*")).filter(e8e).map(ZLe), o = l6.begin("searchPseudoElements");
Oee(), Promise.all(n).then(() => {
o(), p5(), t();
}).catch(() => {
o(), p5(), r();
});
});
}
var t8e = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = wL, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Ur
} = t;
Ke.searchPseudoElements && wL(r);
};
}
};
let $L = !1;
var r8e = {
mixout() {
return {
dom: {
unwatch() {
Oee(), $L = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
hL(l5("mutationObserverCallbacks", {}));
},
noAuto() {
RLe();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
$L ? p5() : hL(l5("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const kL = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var n8e = {
mixout() {
return {
parse: {
transform: (e) => kL(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = kL(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: _e({}, f.outer),
children: [{
tag: "g",
attributes: _e({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: _e(_e({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const Jk = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function _L(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function o8e(e) {
return e.tag === "g" ? e.children : [e];
}
var a8e = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? lw(r.split(" ").map((o) => o.trim())) : xee();
return n.prefix || (n.prefix = jc()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = JFe({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: _e(_e({}, Jk), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(_L)
} : {}, m = {
tag: "g",
attributes: _e({}, f.inner),
children: [_L(_e({
tag: c.tag,
attributes: _e(_e({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: _e({}, f.outer),
children: [m]
}, w = "mask-".concat(i || rb()), $ = "clip-".concat(i || rb()), _ = {
tag: "mask",
attributes: _e(_e({}, Jk), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: o8e(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: _e({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, Jk)
}), {
children: r,
attributes: n
};
};
}
}, i8e = {
provides(e) {
let t = !1;
Ic.matchMedia && (t = Ic.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: _e(_e({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = _e(_e({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: _e(_e({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: _e(_e({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: _e(_e({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: _e(_e({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: _e(_e({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: _e(_e({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: _e(_e({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, s8e = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, l8e = [eLe, ULe, BLe, YLe, qLe, t8e, r8e, n8e, a8e, i8e, s8e];
yLe(l8e, {
mixoutsTo: ho
});
ho.noAuto;
ho.config;
ho.library;
ho.dom;
const h5 = ho.parse;
ho.findIconDefinition;
ho.toHtml;
const c8e = ho.icon;
ho.layer;
ho.text;
ho.counter;
function u8e(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var dv = { exports: {} }, Qk = { exports: {} }, rr = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var OL;
function f8e() {
if (OL) return rr;
OL = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return rr.AsyncMode = u, rr.ConcurrentMode = c, rr.ContextConsumer = s, rr.ContextProvider = i, rr.Element = t, rr.ForwardRef = d, rr.Fragment = n, rr.Lazy = y, rr.Memo = p, rr.Portal = r, rr.Profiler = a, rr.StrictMode = o, rr.Suspense = l, rr.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, rr.isConcurrentMode = S, rr.isContextConsumer = function(b) {
return _(b) === s;
}, rr.isContextProvider = function(b) {
return _(b) === i;
}, rr.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, rr.isForwardRef = function(b) {
return _(b) === d;
}, rr.isFragment = function(b) {
return _(b) === n;
}, rr.isLazy = function(b) {
return _(b) === y;
}, rr.isMemo = function(b) {
return _(b) === p;
}, rr.isPortal = function(b) {
return _(b) === r;
}, rr.isProfiler = function(b) {
return _(b) === a;
}, rr.isStrictMode = function(b) {
return _(b) === o;
}, rr.isSuspense = function(b) {
return _(b) === l;
}, rr.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, rr.typeOf = _, rr;
}
var mr = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var SL;
function d8e() {
return SL || (SL = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
mr.AsyncMode = b, mr.ConcurrentMode = F, mr.ContextConsumer = z, mr.ContextProvider = q, mr.Element = Y, mr.ForwardRef = B, mr.Fragment = Z, mr.Lazy = M, mr.Memo = te, mr.Portal = G, mr.Profiler = H, mr.StrictMode = U, mr.Suspense = W, mr.isAsyncMode = ee, mr.isConcurrentMode = v, mr.isContextConsumer = g, mr.isContextProvider = O, mr.isElement = P, mr.isForwardRef = A, mr.isFragment = T, mr.isLazy = N, mr.isMemo = C, mr.isPortal = I, mr.isProfiler = j, mr.isStrictMode = R, mr.isSuspense = Q, mr.isValidElementType = _, mr.typeOf = S;
}()), mr;
}
var EL;
function Eee() {
return EL || (EL = 1, process.env.NODE_ENV === "production" ? Qk.exports = f8e() : Qk.exports = d8e()), Qk.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var Zk, AL;
function p8e() {
if (AL) return Zk;
AL = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return Zk = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, Zk;
}
var e_, PL;
function u6() {
if (PL) return e_;
PL = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return e_ = e, e_;
}
var CL, NL;
function Aee() {
return NL || (NL = 1, CL = Function.call.bind(Object.prototype.hasOwnProperty)), CL;
}
var t_, TL;
function m8e() {
if (TL) return t_;
TL = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ u6(), r = {}, n = /* @__PURE__ */ Aee();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, t_ = o, t_;
}
var r_, IL;
function h8e() {
if (IL) return r_;
IL = 1;
var e = Eee(), t = p8e(), r = /* @__PURE__ */ u6(), n = /* @__PURE__ */ Aee(), o = /* @__PURE__ */ m8e(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return r_ = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, r_;
}
var n_, jL;
function g8e() {
if (jL) return n_;
jL = 1;
var e = /* @__PURE__ */ u6();
function t() {
}
function r() {
}
return r.resetWarningCache = t, n_ = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, n_;
}
var RL;
function b8e() {
if (RL) return dv.exports;
if (RL = 1, process.env.NODE_ENV !== "production") {
var e = Eee(), t = !0;
dv.exports = /* @__PURE__ */ h8e()(e.isElement, t);
} else
dv.exports = /* @__PURE__ */ g8e()();
return dv.exports;
}
var y8e = /* @__PURE__ */ b8e();
const Mt = /* @__PURE__ */ u8e(y8e);
function ML(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function Aa(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? ML(Object(r), !0).forEach(function(n) {
Bf(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : ML(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function p0(e) {
"@babel/helpers - typeof";
return p0 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, p0(e);
}
function Bf(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function v8e(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function x8e(e, t) {
if (e == null) return {};
var r = v8e(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function g5(e) {
return w8e(e) || $8e(e) || k8e(e) || _8e();
}
function w8e(e) {
if (Array.isArray(e)) return b5(e);
}
function $8e(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function k8e(e, t) {
if (e) {
if (typeof e == "string") return b5(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return b5(e, t);
}
}
function b5(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function _8e() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function O8e(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, Bf(t, "fa-".concat(w), typeof w < "u" && w !== null), Bf(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), Bf(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), Bf(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function S8e(e) {
return e = e - 0, e === e;
}
function Pee(e) {
return S8e(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var E8e = ["style"];
function A8e(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function P8e(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = Pee(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[A8e(o)] = a : t[o] = a, t;
}, {});
}
function Cee(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return Cee(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = P8e(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[Pee(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = x8e(r, E8e);
return o.attrs.style = Aa(Aa({}, o.attrs.style), i), e.apply(void 0, [t.tag, Aa(Aa({}, o.attrs), s)].concat(g5(n)));
}
var Nee = !1;
try {
Nee = process.env.NODE_ENV === "production";
} catch {
}
function C8e() {
if (!Nee && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function DL(e) {
if (e && p0(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (h5.icon)
return h5.icon(e);
if (e === null)
return null;
if (e && p0(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function o_(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Bf({}, e, t) : {};
}
var FL = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, ob = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = Aa(Aa({}, FL), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = DL(n), l = o_("classes", [].concat(g5(O8e(r)), g5((i || "").split(" ")))), f = o_("transform", typeof r.transform == "string" ? h5.transform(r.transform) : r.transform), p = o_("mask", DL(o)), y = c8e(d, Aa(Aa(Aa(Aa({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return C8e("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
FL.hasOwnProperty(w) || (h[w] = r[w]);
}), N8e(m[0], h);
});
ob.displayName = "FontAwesomeIcon";
ob.propTypes = {
beat: Mt.bool,
border: Mt.bool,
beatFade: Mt.bool,
bounce: Mt.bool,
className: Mt.string,
fade: Mt.bool,
flash: Mt.bool,
mask: Mt.oneOfType([Mt.object, Mt.array, Mt.string]),
maskId: Mt.string,
fixedWidth: Mt.bool,
inverse: Mt.bool,
flip: Mt.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: Mt.oneOfType([Mt.object, Mt.array, Mt.string]),
listItem: Mt.bool,
pull: Mt.oneOf(["right", "left"]),
pulse: Mt.bool,
rotation: Mt.oneOf([0, 90, 180, 270]),
shake: Mt.bool,
size: Mt.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: Mt.bool,
spinPulse: Mt.bool,
spinReverse: Mt.bool,
symbol: Mt.oneOfType([Mt.bool, Mt.string]),
title: Mt.string,
titleId: Mt.string,
transform: Mt.oneOfType([Mt.string, Mt.object]),
swapOpacity: Mt.bool
};
var N8e = Cee.bind(null, ae.createElement);
/*!
* Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
* Copyright 2024 Fonticons, Inc.
*/
const T8e = {
prefix: "fas",
iconName: "xmark",
icon: [384, 512, [128473, 10005, 10006, 10060, 215, "close", "multiply", "remove", "times"], "f00d", "M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"]
};
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function I8e(e, t, r) {
return (t = R8e(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function LL(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function Oe(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? LL(Object(r), !0).forEach(function(n) {
I8e(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : LL(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function j8e(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function R8e(e) {
var t = j8e(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const zL = () => {
};
let f6 = {}, Tee = {}, Iee = null, jee = {
mark: zL,
measure: zL
};
try {
typeof window < "u" && (f6 = window), typeof document < "u" && (Tee = document), typeof MutationObserver < "u" && (Iee = MutationObserver), typeof performance < "u" && (jee = performance);
} catch {
}
const {
userAgent: WL = ""
} = f6.navigator || {}, Mc = f6, Br = Tee, VL = Iee, pv = jee;
Mc.document;
const ks = !!Br.documentElement && !!Br.head && typeof Br.addEventListener == "function" && typeof Br.createElement == "function", Ree = ~WL.indexOf("MSIE") || ~WL.indexOf("Trident/");
var M8e = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, D8e = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, Mee = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, F8e = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, Dee = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Pn = "classic", uw = "duotone", L8e = "sharp", z8e = "sharp-duotone", Fee = [Pn, uw, L8e, z8e], W8e = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, V8e = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, H8e = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), G8e = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, U8e = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], HL = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, B8e = ["kit"], Y8e = {
kit: {
"fa-kit": "fak"
}
}, q8e = ["fak", "fakd"], K8e = {
kit: {
fak: "fa-kit"
}
}, GL = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, mv = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, X8e = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], J8e = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], Q8e = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, Z8e = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, eze = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, y5 = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, tze = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], v5 = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...X8e, ...tze], rze = ["solid", "regular", "light", "thin", "duotone", "brands"], Lee = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], nze = Lee.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), oze = [...Object.keys(eze), ...rze, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", mv.GROUP, mv.SWAP_OPACITY, mv.PRIMARY, mv.SECONDARY].concat(Lee.map((e) => "".concat(e, "x"))).concat(nze.map((e) => "w-".concat(e))), aze = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const ss = "___FONT_AWESOME___", x5 = 16, zee = "fa", Wee = "svg-inline--fa", Qu = "data-fa-i2svg", w5 = "data-fa-pseudo-element", ize = "data-fa-pseudo-element-pending", d6 = "data-prefix", p6 = "data-icon", UL = "fontawesome-i2svg", sze = "async", lze = ["HTML", "HEAD", "STYLE", "SCRIPT"], Vee = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function Zb(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[Pn];
}
});
}
const Hee = Oe({}, Mee);
Hee[Pn] = Oe(Oe(Oe(Oe({}, {
"fa-duotone": "duotone"
}), Mee[Pn]), HL.kit), HL["kit-duotone"]);
const cze = Zb(Hee), $5 = Oe({}, G8e);
$5[Pn] = Oe(Oe(Oe(Oe({}, {
duotone: "fad"
}), $5[Pn]), GL.kit), GL["kit-duotone"]);
const BL = Zb($5), k5 = Oe({}, y5);
k5[Pn] = Oe(Oe({}, k5[Pn]), K8e.kit);
const m6 = Zb(k5), _5 = Oe({}, Z8e);
_5[Pn] = Oe(Oe({}, _5[Pn]), Y8e.kit);
Zb(_5);
const uze = M8e, Gee = "fa-layers-text", fze = D8e, dze = Oe({}, W8e);
Zb(dze);
const pze = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], a_ = F8e, mze = [...B8e, ...oze], ig = Mc.FontAwesomeConfig || {};
function hze(e) {
var t = Br.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function gze(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Br && typeof Br.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = gze(hze(t));
n != null && (ig[r] = n);
});
const Uee = {
styleDefault: "solid",
familyDefault: Pn,
cssPrefix: zee,
replacementClass: Wee,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
ig.familyPrefix && (ig.cssPrefix = ig.familyPrefix);
const Yd = Oe(Oe({}, Uee), ig);
Yd.autoReplaceSvg || (Yd.observeMutations = !1);
const Xe = {};
Object.keys(Uee).forEach((e) => {
Object.defineProperty(Xe, e, {
enumerable: !0,
set: function(t) {
Yd[e] = t, sg.forEach((r) => r(Xe));
},
get: function() {
return Yd[e];
}
});
});
Object.defineProperty(Xe, "familyPrefix", {
enumerable: !0,
set: function(e) {
Yd.cssPrefix = e, sg.forEach((t) => t(Xe));
},
get: function() {
return Yd.cssPrefix;
}
});
Mc.FontAwesomeConfig = Xe;
const sg = [];
function bze(e) {
return sg.push(e), () => {
sg.splice(sg.indexOf(e), 1);
};
}
const Tl = x5, ti = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function yze(e) {
if (!e || !ks)
return;
const t = Br.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Br.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Br.head.insertBefore(t, n), e;
}
const vze = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function ab() {
let e = 12, t = "";
for (; e-- > 0; )
t += vze[Math.random() * 62 | 0];
return t;
}
function Ap(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function h6(e) {
return e.classList ? Ap(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function Bee(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function xze(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(Bee(e[r]), '" '), "").trim();
}
function fw(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function g6(e) {
return e.size !== ti.size || e.x !== ti.x || e.y !== ti.y || e.rotate !== ti.rotate || e.flipX || e.flipY;
}
function wze(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function $ze(e) {
let {
transform: t,
width: r = x5,
height: n = x5,
startCentered: o = !1
} = e, a = "";
return o && Ree ? a += "translate(".concat(t.x / Tl - r / 2, "em, ").concat(t.y / Tl - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / Tl, "em), calc(-50% + ").concat(t.y / Tl, "em)) ") : a += "translate(".concat(t.x / Tl, "em, ").concat(t.y / Tl, "em) "), a += "scale(".concat(t.size / Tl * (t.flipX ? -1 : 1), ", ").concat(t.size / Tl * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var kze = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function Yee() {
const e = zee, t = Wee, r = Xe.cssPrefix, n = Xe.replacementClass;
let o = kze;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let YL = !1;
function i_() {
Xe.autoAddCss && !YL && (yze(Yee()), YL = !0);
}
var _ze = {
mixout() {
return {
dom: {
css: Yee,
insertCss: i_
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
i_();
},
beforeI2svg() {
i_();
}
};
}
};
const ls = Mc || {};
ls[ss] || (ls[ss] = {});
ls[ss].styles || (ls[ss].styles = {});
ls[ss].hooks || (ls[ss].hooks = {});
ls[ss].shims || (ls[ss].shims = []);
var ri = ls[ss];
const qee = [], Kee = function() {
Br.removeEventListener("DOMContentLoaded", Kee), m0 = 1, qee.map((e) => e());
};
let m0 = !1;
ks && (m0 = (Br.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Br.readyState), m0 || Br.addEventListener("DOMContentLoaded", Kee));
function Oze(e) {
ks && (m0 ? setTimeout(e, 0) : qee.push(e));
}
function ey(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? Bee(e) : "<".concat(t, " ").concat(xze(r), ">").concat(n.map(ey).join(""), "</").concat(t, ">");
}
function qL(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var s_ = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function Sze(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function Xee(e) {
const t = Sze(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function Eze(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function KL(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function O5(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = KL(t);
typeof ri.hooks.addPack == "function" && !n ? ri.hooks.addPack(e, KL(t)) : ri.styles[e] = Oe(Oe({}, ri.styles[e] || {}), o), e === "fas" && O5("fa", t);
}
const {
styles: ib,
shims: Aze
} = ri, Jee = Object.keys(m6), Pze = Jee.reduce((e, t) => (e[t] = Object.keys(m6[t]), e), {});
let b6 = null, Qee = {}, Zee = {}, ete = {}, tte = {}, rte = {};
function Cze(e) {
return ~mze.indexOf(e);
}
function Nze(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !Cze(o) ? o : null;
}
const nte = () => {
const e = (n) => s_(ib, (o, a, i) => (o[i] = s_(a, n, {}), o), {});
Qee = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), Zee = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), rte = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in ib || Xe.autoFetchSvg, r = s_(Aze, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
ete = r.names, tte = r.unicodes, b6 = dw(Xe.styleDefault, {
family: Xe.familyDefault
});
};
bze((e) => {
b6 = dw(e.styleDefault, {
family: Xe.familyDefault
});
});
nte();
function y6(e, t) {
return (Qee[e] || {})[t];
}
function Tze(e, t) {
return (Zee[e] || {})[t];
}
function gu(e, t) {
return (rte[e] || {})[t];
}
function ote(e) {
return ete[e] || {
prefix: null,
iconName: null
};
}
function Ize(e) {
const t = tte[e], r = y6("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function Dc() {
return b6;
}
const ate = () => ({
prefix: null,
iconName: null,
rest: []
});
function jze(e) {
let t = Pn;
const r = Jee.reduce((n, o) => (n[o] = "".concat(Xe.cssPrefix, "-").concat(o), n), {});
return Fee.forEach((n) => {
(e.includes(r[n]) || e.some((o) => Pze[n].includes(o))) && (t = n);
}), t;
}
function dw(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = Pn
} = t, n = cze[r][e];
if (r === uw && !e)
return "fad";
const o = BL[r][e] || BL[r][n], a = e in ri.styles ? e : null;
return o || a || null;
}
function Rze(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = Nze(Xe.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function XL(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function pw(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = v5.concat(J8e), a = XL(e.filter((l) => o.includes(l))), i = XL(e.filter((l) => !v5.includes(l))), s = a.filter((l) => (n = l, !Dee.includes(l))), [u = null] = s, c = jze(a), d = Oe(Oe({}, Rze(i)), {}, {
prefix: dw(u, {
family: c
})
});
return Oe(Oe(Oe({}, d), Lze({
values: e,
family: c,
styles: ib,
config: Xe,
canonical: d,
givenPrefix: n
})), Mze(r, n, d));
}
function Mze(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? ote(o) : {}, i = gu(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !ib.far && ib.fas && !Xe.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const Dze = Fee.filter((e) => e !== Pn || e !== uw), Fze = Object.keys(y5).filter((e) => e !== Pn).map((e) => Object.keys(y5[e])).flat();
function Lze(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === uw, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && Dze.includes(r) && (Object.keys(a).find((l) => Fze.includes(l)) || i.autoFetchSvg)) {
const l = H8e.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = gu(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = Dc() || "fas"), n;
}
class zze {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = Oe(Oe({}, this.definitions[a] || {}), o[a]), O5(a, o[a]);
const i = m6[Pn][a];
i && O5(i, o[a]), nte();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}
let JL = [], Yf = {};
const Ad = {}, Wze = Object.keys(Ad);
function Vze(e, t) {
let {
mixoutsTo: r
} = t;
return JL = e, Yf = {}, Object.keys(Ad).forEach((n) => {
Wze.indexOf(n) === -1 && delete Ad[n];
}), JL.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Yf[i] || (Yf[i] = []), Yf[i].push(a[i]);
});
}
n.provides && n.provides(Ad);
}), r;
}
function S5(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Yf[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function Zu(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Yf[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function Fc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return Ad[e] ? Ad[e].apply(null, t) : void 0;
}
function E5(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || Dc();
if (t)
return t = gu(r, t) || t, qL(ite.definitions, r, t) || qL(ri.styles, r, t);
}
const ite = new zze(), Hze = () => {
Xe.autoReplaceSvg = !1, Xe.observeMutations = !1, Zu("noAuto");
}, Gze = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return ks ? (Zu("beforeI2svg", e), Fc("pseudoElements2svg", e), Fc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
Xe.autoReplaceSvg === !1 && (Xe.autoReplaceSvg = !0), Xe.observeMutations = !0, Oze(() => {
Bze({
autoReplaceSvgRoot: t
}), Zu("watch", e);
});
}
}, Uze = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: gu(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = dw(e[0]);
return {
prefix: r,
iconName: gu(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(Xe.cssPrefix, "-")) > -1 || e.match(uze))) {
const t = pw(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || Dc(),
iconName: gu(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = Dc();
return {
prefix: t,
iconName: gu(t, e) || e
};
}
}
}, go = {
noAuto: Hze,
config: Xe,
dom: Gze,
parse: Uze,
library: ite,
findIconDefinition: E5,
toHtml: ey
}, Bze = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Br
} = e;
(Object.keys(ri.styles).length > 0 || Xe.autoFetchSvg) && ks && Xe.autoReplaceSvg && go.dom.i2svg({
node: t
});
};
function mw(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => ey(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!ks) return;
const r = Br.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function Yze(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (g6(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = fw(Oe(Oe({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function qze(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(Xe.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: Oe(Oe({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function v6(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = q8e.includes(n), m = [Xe.replacementClass, o ? "".concat(Xe.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: Oe(Oe({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[Qu] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || ab())
},
children: [s]
}), delete h.attributes.title);
const $ = Oe(Oe({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: Oe(Oe({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? Fc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : Fc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? qze($) : Yze($);
}
function QL(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = Oe(Oe(Oe({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[Qu] = "");
const c = Oe({}, i.styles);
g6(o) && (c.transform = $ze({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = fw(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function Kze(e) {
const {
content: t,
title: r,
extra: n
} = e, o = Oe(Oe(Oe({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = fw(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: l_
} = ri;
function A5(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(Xe.cssPrefix, "-").concat(a_.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(Xe.cssPrefix, "-").concat(a_.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(Xe.cssPrefix, "-").concat(a_.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const Xze = {
found: !1,
width: 512,
height: 512
};
function Jze(e, t) {
!Vee && !Xe.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function P5(e, t) {
let r = t;
return t === "fa" && Xe.styleDefault !== null && (t = Dc()), new Promise((n, o) => {
if (r === "fa") {
const a = ote(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && l_[t] && l_[t][e]) {
const a = l_[t][e];
return n(A5(a));
}
Jze(e, t), n(Oe(Oe({}, Xze), {}, {
icon: Xe.showMissingIcons && e ? Fc("missingIconAbstract") || {} : {}
}));
});
}
const ZL = () => {
}, C5 = Xe.measurePerformance && pv && pv.mark && pv.measure ? pv : {
mark: ZL,
measure: ZL
}, xh = 'FA "6.7.2"', Qze = (e) => (C5.mark("".concat(xh, " ").concat(e, " begins")), () => ste(e)), ste = (e) => {
C5.mark("".concat(xh, " ").concat(e, " ends")), C5.measure("".concat(xh, " ").concat(e), "".concat(xh, " ").concat(e, " begins"), "".concat(xh, " ").concat(e, " ends"));
};
var x6 = {
begin: Qze,
end: ste
};
const a1 = () => {
};
function e8(e) {
return typeof (e.getAttribute ? e.getAttribute(Qu) : null) == "string";
}
function Zze(e) {
const t = e.getAttribute ? e.getAttribute(d6) : null, r = e.getAttribute ? e.getAttribute(p6) : null;
return t && r;
}
function eWe(e) {
return e && e.classList && e.classList.contains && e.classList.contains(Xe.replacementClass);
}
function tWe() {
return Xe.autoReplaceSvg === !0 ? i1.replace : i1[Xe.autoReplaceSvg] || i1.replace;
}
function rWe(e) {
return Br.createElementNS("http://www.w3.org/2000/svg", e);
}
function nWe(e) {
return Br.createElement(e);
}
function lte(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? rWe : nWe
} = t;
if (typeof e == "string")
return Br.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(lte(o, {
ceFn: r
}));
}), n;
}
function oWe(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const i1 = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(lte(r), t);
}), t.getAttribute(Qu) === null && Xe.keepOriginalSource) {
let r = Br.createComment(oWe(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~h6(t).indexOf(Xe.replacementClass))
return i1.replace(e);
const n = new RegExp("".concat(Xe.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === Xe.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => ey(a)).join(`
`);
t.setAttribute(Qu, ""), t.innerHTML = o;
}
};
function t8(e) {
e();
}
function cte(e, t) {
const r = typeof t == "function" ? t : a1;
if (e.length === 0)
r();
else {
let n = t8;
Xe.mutateApproach === sze && (n = Mc.requestAnimationFrame || t8), n(() => {
const o = tWe(), a = x6.begin("mutate");
e.map(o), a(), r();
});
}
}
let w6 = !1;
function ute() {
w6 = !0;
}
function N5() {
w6 = !1;
}
let h0 = null;
function r8(e) {
if (!VL || !Xe.observeMutations)
return;
const {
treeCallback: t = a1,
nodeCallback: r = a1,
pseudoElementsCallback: n = a1,
observeMutationsRoot: o = Br
} = e;
h0 = new VL((a) => {
if (w6) return;
const i = Dc();
Ap(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !e8(s.addedNodes[0]) && (Xe.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && Xe.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && e8(s.target) && ~pze.indexOf(s.attributeName))
if (s.attributeName === "class" && Zze(s.target)) {
const {
prefix: u,
iconName: c
} = pw(h6(s.target));
s.target.setAttribute(d6, u || i), c && s.target.setAttribute(p6, c);
} else eWe(s.target) && r(s.target);
});
}), ks && h0.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function aWe() {
h0 && h0.disconnect();
}
function iWe(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function sWe(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = pw(h6(e));
return o.prefix || (o.prefix = Dc()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = Tze(o.prefix, e.innerText) || y6(o.prefix, Xee(e.innerText))), !o.iconName && Xe.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function lWe(e) {
const t = Ap(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return Xe.autoA11y && (r ? t["aria-labelledby"] = "".concat(Xe.replacementClass, "-title-").concat(n || ab()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function cWe() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: ti,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function n8(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = sWe(e), a = lWe(e), i = S5("parseNodeAttributes", {}, e);
let s = t.styleParser ? iWe(e) : [];
return Oe({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: ti,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: uWe
} = ri;
function fte(e) {
const t = Xe.autoReplaceSvg === "nest" ? n8(e, {
styleParser: !1
}) : n8(e);
return ~t.extra.classes.indexOf(Gee) ? Fc("generateLayersText", e, t) : Fc("generateSvgReplacementMutation", e, t);
}
function fWe() {
return [...U8e, ...v5];
}
function o8(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!ks) return Promise.resolve();
const r = Br.documentElement.classList, n = (d) => r.add("".concat(UL, "-").concat(d)), o = (d) => r.remove("".concat(UL, "-").concat(d)), a = Xe.autoFetchSvg ? fWe() : Dee.concat(Object.keys(uWe));
a.includes("fa") || a.push("fa");
const i = [".".concat(Gee, ":not([").concat(Qu, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(Qu, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = Ap(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = x6.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = fte(l);
f && d.push(f);
} catch (f) {
Vee || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
cte(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function dWe(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
fte(e).then((r) => {
r && cte([r], t);
});
}
function pWe(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : E5(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : E5(o || {})), e(n, Oe(Oe({}, r), {}, {
mask: o
}));
};
}
const mWe = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = ti,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return mw(Oe({
type: "icon"
}, e), () => (Zu("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), Xe.autoA11y && (i ? c["aria-labelledby"] = "".concat(Xe.replacementClass, "-title-").concat(s || ab()) : (c["aria-hidden"] = "true", c.focusable = "false")), v6({
icons: {
main: A5(p),
mask: o ? A5(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: Oe(Oe({}, ti), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var hWe = {
mixout() {
return {
icon: pWe(mWe)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = o8, e.nodeCallback = dWe, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Br,
callback: n = () => {
}
} = t;
return o8(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([P5(n, i), c.iconName ? P5(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, v6({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = fw(i);
s.length > 0 && (n.style = s);
let u;
return g6(a) && (u = Fc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, gWe = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return mw({
type: "layer"
}, () => {
Zu("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(Xe.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, bWe = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return mw({
type: "counter",
content: e
}, () => (Zu("beforeDOMElementCreation", {
content: e,
params: t
}), Kze({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(Xe.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, yWe = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = ti,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return mw({
type: "text",
content: e
}, () => (Zu("beforeDOMElementCreation", {
content: e,
params: t
}), QL({
content: e,
transform: Oe(Oe({}, ti), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(Xe.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (Ree) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return Xe.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, QL({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const vWe = new RegExp('"', "ug"), a8 = [1105920, 1112319], i8 = Oe(Oe(Oe(Oe({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), V8e), aze), Q8e), T5 = Object.keys(i8).reduce((e, t) => (e[t.toLowerCase()] = i8[t], e), {}), xWe = Object.keys(T5).reduce((e, t) => {
const r = T5[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function wWe(e) {
const t = e.replace(vWe, ""), r = Eze(t, 0), n = r >= a8[0] && r <= a8[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: Xee(o ? t[0] : t),
isSecondary: n || o
};
}
function $We(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (T5[r] || {})[o] || xWe[r];
}
function s8(e, t) {
const r = "".concat(ize).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = Ap(e.children).filter((l) => l.getAttribute(w5) === t)[0], i = Mc.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(fze), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = $We(s, c);
const {
value: p,
isSecondary: y
} = wWe(l), m = u[0].startsWith("FontAwesome");
let h = y6(f, p), w = h;
if (m) {
const $ = Ize(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(d6) !== f || a.getAttribute(p6) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = cWe(), {
extra: _
} = $;
_.attributes[w5] = t, P5(h, f).then((S) => {
const b = v6(Oe(Oe({}, $), {}, {
icons: {
main: S,
mask: ate()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = Br.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => ey(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function kWe(e) {
return Promise.all([s8(e, "::before"), s8(e, "::after")]);
}
function _We(e) {
return e.parentNode !== document.head && !~lze.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(w5) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function l8(e) {
if (ks)
return new Promise((t, r) => {
const n = Ap(e.querySelectorAll("*")).filter(_We).map(kWe), o = x6.begin("searchPseudoElements");
ute(), Promise.all(n).then(() => {
o(), N5(), t();
}).catch(() => {
o(), N5(), r();
});
});
}
var OWe = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = l8, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Br
} = t;
Xe.searchPseudoElements && l8(r);
};
}
};
let c8 = !1;
var SWe = {
mixout() {
return {
dom: {
unwatch() {
ute(), c8 = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
r8(S5("mutationObserverCallbacks", {}));
},
noAuto() {
aWe();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
c8 ? N5() : r8(S5("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const u8 = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var EWe = {
mixout() {
return {
parse: {
transform: (e) => u8(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = u8(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: Oe({}, f.outer),
children: [{
tag: "g",
attributes: Oe({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: Oe(Oe({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const c_ = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function f8(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function AWe(e) {
return e.tag === "g" ? e.children : [e];
}
var PWe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? pw(r.split(" ").map((o) => o.trim())) : ate();
return n.prefix || (n.prefix = Dc()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = wze({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: Oe(Oe({}, c_), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(f8)
} : {}, m = {
tag: "g",
attributes: Oe({}, f.inner),
children: [f8(Oe({
tag: c.tag,
attributes: Oe(Oe({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: Oe({}, f.outer),
children: [m]
}, w = "mask-".concat(i || ab()), $ = "clip-".concat(i || ab()), _ = {
tag: "mask",
attributes: Oe(Oe({}, c_), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: AWe(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: Oe({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, c_)
}), {
children: r,
attributes: n
};
};
}
}, CWe = {
provides(e) {
let t = !1;
Mc.matchMedia && (t = Mc.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: Oe(Oe({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = Oe(Oe({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: Oe(Oe({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: Oe(Oe({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: Oe(Oe({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: Oe(Oe({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: Oe(Oe({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: Oe(Oe({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: Oe(Oe({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, NWe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, TWe = [_ze, hWe, gWe, bWe, yWe, OWe, SWe, EWe, PWe, CWe, NWe];
Vze(TWe, {
mixoutsTo: go
});
go.noAuto;
go.config;
go.library;
go.dom;
const I5 = go.parse;
go.findIconDefinition;
go.toHtml;
const IWe = go.icon;
go.layer;
go.text;
go.counter;
function jWe(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var hv = { exports: {} }, u_ = { exports: {} }, nr = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var d8;
function RWe() {
if (d8) return nr;
d8 = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return nr.AsyncMode = u, nr.ConcurrentMode = c, nr.ContextConsumer = s, nr.ContextProvider = i, nr.Element = t, nr.ForwardRef = d, nr.Fragment = n, nr.Lazy = y, nr.Memo = p, nr.Portal = r, nr.Profiler = a, nr.StrictMode = o, nr.Suspense = l, nr.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, nr.isConcurrentMode = S, nr.isContextConsumer = function(b) {
return _(b) === s;
}, nr.isContextProvider = function(b) {
return _(b) === i;
}, nr.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, nr.isForwardRef = function(b) {
return _(b) === d;
}, nr.isFragment = function(b) {
return _(b) === n;
}, nr.isLazy = function(b) {
return _(b) === y;
}, nr.isMemo = function(b) {
return _(b) === p;
}, nr.isPortal = function(b) {
return _(b) === r;
}, nr.isProfiler = function(b) {
return _(b) === a;
}, nr.isStrictMode = function(b) {
return _(b) === o;
}, nr.isSuspense = function(b) {
return _(b) === l;
}, nr.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, nr.typeOf = _, nr;
}
var hr = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var p8;
function MWe() {
return p8 || (p8 = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
hr.AsyncMode = b, hr.ConcurrentMode = F, hr.ContextConsumer = z, hr.ContextProvider = q, hr.Element = Y, hr.ForwardRef = B, hr.Fragment = Z, hr.Lazy = M, hr.Memo = te, hr.Portal = G, hr.Profiler = H, hr.StrictMode = U, hr.Suspense = W, hr.isAsyncMode = ee, hr.isConcurrentMode = v, hr.isContextConsumer = g, hr.isContextProvider = O, hr.isElement = P, hr.isForwardRef = A, hr.isFragment = T, hr.isLazy = N, hr.isMemo = C, hr.isPortal = I, hr.isProfiler = j, hr.isStrictMode = R, hr.isSuspense = Q, hr.isValidElementType = _, hr.typeOf = S;
}()), hr;
}
var m8;
function dte() {
return m8 || (m8 = 1, process.env.NODE_ENV === "production" ? u_.exports = RWe() : u_.exports = MWe()), u_.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var f_, h8;
function DWe() {
if (h8) return f_;
h8 = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return f_ = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, f_;
}
var d_, g8;
function $6() {
if (g8) return d_;
g8 = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return d_ = e, d_;
}
var b8, y8;
function pte() {
return y8 || (y8 = 1, b8 = Function.call.bind(Object.prototype.hasOwnProperty)), b8;
}
var p_, v8;
function FWe() {
if (v8) return p_;
v8 = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ $6(), r = {}, n = /* @__PURE__ */ pte();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, p_ = o, p_;
}
var m_, x8;
function LWe() {
if (x8) return m_;
x8 = 1;
var e = dte(), t = DWe(), r = /* @__PURE__ */ $6(), n = /* @__PURE__ */ pte(), o = /* @__PURE__ */ FWe(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return m_ = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, m_;
}
var h_, w8;
function zWe() {
if (w8) return h_;
w8 = 1;
var e = /* @__PURE__ */ $6();
function t() {
}
function r() {
}
return r.resetWarningCache = t, h_ = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, h_;
}
var $8;
function WWe() {
if ($8) return hv.exports;
if ($8 = 1, process.env.NODE_ENV !== "production") {
var e = dte(), t = !0;
hv.exports = /* @__PURE__ */ LWe()(e.isElement, t);
} else
hv.exports = /* @__PURE__ */ zWe()();
return hv.exports;
}
var VWe = /* @__PURE__ */ WWe();
const Dt = /* @__PURE__ */ jWe(VWe);
function k8(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function Pa(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? k8(Object(r), !0).forEach(function(n) {
qf(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : k8(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function g0(e) {
"@babel/helpers - typeof";
return g0 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, g0(e);
}
function qf(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function HWe(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function GWe(e, t) {
if (e == null) return {};
var r = HWe(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function j5(e) {
return UWe(e) || BWe(e) || YWe(e) || qWe();
}
function UWe(e) {
if (Array.isArray(e)) return R5(e);
}
function BWe(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function YWe(e, t) {
if (e) {
if (typeof e == "string") return R5(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return R5(e, t);
}
}
function R5(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function qWe() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function KWe(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, qf(t, "fa-".concat(w), typeof w < "u" && w !== null), qf(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), qf(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), qf(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function XWe(e) {
return e = e - 0, e === e;
}
function mte(e) {
return XWe(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var JWe = ["style"];
function QWe(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function ZWe(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = mte(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[QWe(o)] = a : t[o] = a, t;
}, {});
}
function hte(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return hte(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = ZWe(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[mte(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = GWe(r, JWe);
return o.attrs.style = Pa(Pa({}, o.attrs.style), i), e.apply(void 0, [t.tag, Pa(Pa({}, o.attrs), s)].concat(j5(n)));
}
var gte = !1;
try {
gte = process.env.NODE_ENV === "production";
} catch {
}
function eVe() {
if (!gte && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function _8(e) {
if (e && g0(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (I5.icon)
return I5.icon(e);
if (e === null)
return null;
if (e && g0(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function g_(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? qf({}, e, t) : {};
}
var O8 = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, k6 = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = Pa(Pa({}, O8), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = _8(n), l = g_("classes", [].concat(j5(KWe(r)), j5((i || "").split(" ")))), f = g_("transform", typeof r.transform == "string" ? I5.transform(r.transform) : r.transform), p = g_("mask", _8(o)), y = IWe(d, Pa(Pa(Pa(Pa({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return eVe("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
O8.hasOwnProperty(w) || (h[w] = r[w]);
}), tVe(m[0], h);
});
k6.displayName = "FontAwesomeIcon";
k6.propTypes = {
beat: Dt.bool,
border: Dt.bool,
beatFade: Dt.bool,
bounce: Dt.bool,
className: Dt.string,
fade: Dt.bool,
flash: Dt.bool,
mask: Dt.oneOfType([Dt.object, Dt.array, Dt.string]),
maskId: Dt.string,
fixedWidth: Dt.bool,
inverse: Dt.bool,
flip: Dt.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: Dt.oneOfType([Dt.object, Dt.array, Dt.string]),
listItem: Dt.bool,
pull: Dt.oneOf(["right", "left"]),
pulse: Dt.bool,
rotation: Dt.oneOf([0, 90, 180, 270]),
shake: Dt.bool,
size: Dt.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: Dt.bool,
spinPulse: Dt.bool,
spinReverse: Dt.bool,
symbol: Dt.oneOfType([Dt.bool, Dt.string]),
title: Dt.string,
titleId: Dt.string,
transform: Dt.oneOfType([Dt.string, Dt.object]),
swapOpacity: Dt.bool
};
var tVe = hte.bind(null, ae.createElement);
const _6 = "-", rVe = (e) => {
const t = oVe(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(_6);
return a[0] === "" && a.length !== 1 && a.shift(), bte(a, t) || nVe(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, bte = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? bte(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(_6);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, S8 = /^\[(.+)\]$/, nVe = (e) => {
if (S8.test(e)) {
const t = S8.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, oVe = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return iVe(Object.entries(e.classGroups), r).forEach(([o, a]) => {
M5(a, n, o, t);
}), n;
}, M5 = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : E8(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (aVe(o)) {
M5(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
M5(i, E8(t, a), r, n);
});
});
}, E8 = (e, t) => {
let r = e;
return t.split(_6).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, aVe = (e) => e.isThemeGetter, iVe = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, sVe = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, yte = "!", lVe = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const u = [];
let c = 0, d = 0, l;
for (let h = 0; h < s.length; h++) {
let w = s[h];
if (c === 0) {
if (w === o && (n || s.slice(h, h + a) === t)) {
u.push(s.slice(d, h)), d = h + a;
continue;
}
if (w === "/") {
l = h;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const f = u.length === 0 ? s : s.substring(d), p = f.startsWith(yte), y = p ? f.substring(1) : f, m = l && l > d ? l - d : void 0;
return {
modifiers: u,
hasImportantModifier: p,
baseClassName: y,
maybePostfixModifierPosition: m
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, cVe = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, uVe = (e) => ({
cache: sVe(e.cacheSize),
parseClassName: lVe(e),
...rVe(e)
}), fVe = /\s+/, dVe = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(fVe);
let s = "";
for (let u = i.length - 1; u >= 0; u -= 1) {
const c = i[u], {
modifiers: d,
hasImportantModifier: l,
baseClassName: f,
maybePostfixModifierPosition: p
} = r(c);
let y = !!p, m = n(y ? f.substring(0, p) : f);
if (!m) {
if (!y) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (m = n(f), !m) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
y = !1;
}
const h = cVe(d).join(":"), w = l ? h + yte : h, $ = w + m;
if (a.includes($))
continue;
a.push($);
const _ = o(m, y);
for (let S = 0; S < _.length; ++S) {
const b = _[S];
a.push(w + b);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function pVe() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = vte(t)) && (n && (n += " "), n += r);
return n;
}
const vte = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = vte(e[n])) && (r && (r += " "), r += t);
return r;
};
function mVe(e, ...t) {
let r, n, o, a = i;
function i(u) {
const c = t.reduce((d, l) => l(d), e());
return r = uVe(c), n = r.cache.get, o = r.cache.set, a = s, s(u);
}
function s(u) {
const c = n(u);
if (c)
return c;
const d = dVe(u, r);
return o(u, d), d;
}
return function() {
return a(pVe.apply(null, arguments));
};
}
const Rr = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, xte = /^\[(?:([a-z-]+):)?(.+)\]$/i, hVe = /^\d+\/\d+$/, gVe = /* @__PURE__ */ new Set(["px", "full", "screen"]), bVe = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, yVe = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, vVe = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, xVe = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, wVe = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Ci = (e) => Pd(e) || gVe.has(e) || hVe.test(e), Il = (e) => Pp(e, "length", PVe), Pd = (e) => !!e && !Number.isNaN(Number(e)), b_ = (e) => Pp(e, "number", Pd), Jm = (e) => !!e && Number.isInteger(Number(e)), $Ve = (e) => e.endsWith("%") && Pd(e.slice(0, -1)), xt = (e) => xte.test(e), jl = (e) => bVe.test(e), kVe = /* @__PURE__ */ new Set(["length", "size", "percentage"]), _Ve = (e) => Pp(e, kVe, wte), OVe = (e) => Pp(e, "position", wte), SVe = /* @__PURE__ */ new Set(["image", "url"]), EVe = (e) => Pp(e, SVe, NVe), AVe = (e) => Pp(e, "", CVe), Qm = () => !0, Pp = (e, t, r) => {
const n = xte.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, PVe = (e) => (
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
yVe.test(e) && !vVe.test(e)
), wte = () => !1, CVe = (e) => xVe.test(e), NVe = (e) => wVe.test(e), TVe = () => {
const e = Rr("colors"), t = Rr("spacing"), r = Rr("blur"), n = Rr("brightness"), o = Rr("borderColor"), a = Rr("borderRadius"), i = Rr("borderSpacing"), s = Rr("borderWidth"), u = Rr("contrast"), c = Rr("grayscale"), d = Rr("hueRotate"), l = Rr("invert"), f = Rr("gap"), p = Rr("gradientColorStops"), y = Rr("gradientColorStopPositions"), m = Rr("inset"), h = Rr("margin"), w = Rr("opacity"), $ = Rr("padding"), _ = Rr("saturate"), S = Rr("scale"), b = Rr("sepia"), F = Rr("skew"), z = Rr("space"), q = Rr("translate"), Y = () => ["auto", "contain", "none"], B = () => ["auto", "hidden", "clip", "visible", "scroll"], Z = () => ["auto", xt, t], M = () => [xt, t], te = () => ["", Ci, Il], G = () => ["auto", Pd, xt], H = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], W = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], X = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], ee = () => ["", "0", xt], v = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], g = () => [Pd, xt];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [Qm],
spacing: [Ci, Il],
blur: ["none", "", jl, xt],
brightness: g(),
borderColor: [e],
borderRadius: ["none", "", "full", jl, xt],
borderSpacing: M(),
borderWidth: te(),
contrast: g(),
grayscale: ee(),
hueRotate: g(),
invert: ee(),
gap: M(),
gradientColorStops: [e],
gradientColorStopPositions: [$Ve, Il],
inset: Z(),
margin: Z(),
opacity: g(),
padding: M(),
saturate: g(),
scale: g(),
sepia: ee(),
skew: g(),
space: M(),
translate: M()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", xt]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [jl]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": v()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": v()
}],
/**
* Break Inside
* @see https://tailwindcss.com/docs/break-inside
*/
"break-inside": [{
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
}],
/**
* Box Decoration Break
* @see https://tailwindcss.com/docs/box-decoration-break
*/
"box-decoration": [{
"box-decoration": ["slice", "clone"]
}],
/**
* Box Sizing
* @see https://tailwindcss.com/docs/box-sizing
*/
box: [{
box: ["border", "content"]
}],
/**
* Display
* @see https://tailwindcss.com/docs/display
*/
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
/**
* Floats
* @see https://tailwindcss.com/docs/float
*/
float: [{
float: ["right", "left", "none", "start", "end"]
}],
/**
* Clear
* @see https://tailwindcss.com/docs/clear
*/
clear: [{
clear: ["left", "right", "both", "none", "start", "end"]
}],
/**
* Isolation
* @see https://tailwindcss.com/docs/isolation
*/
isolation: ["isolate", "isolation-auto"],
/**
* Object Fit
* @see https://tailwindcss.com/docs/object-fit
*/
"object-fit": [{
object: ["contain", "cover", "fill", "none", "scale-down"]
}],
/**
* Object Position
* @see https://tailwindcss.com/docs/object-position
*/
"object-position": [{
object: [...H(), xt]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: B()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": B()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": B()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: Y()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": Y()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": Y()
}],
/**
* Position
* @see https://tailwindcss.com/docs/position
*/
position: ["static", "fixed", "absolute", "relative", "sticky"],
/**
* Top / Right / Bottom / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
inset: [{
inset: [m]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [m]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [m]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [m]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [m]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [m]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [m]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [m]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [m]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", Jm, xt]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Z()
}],
/**
* Flex Direction
* @see https://tailwindcss.com/docs/flex-direction
*/
"flex-direction": [{
flex: ["row", "row-reverse", "col", "col-reverse"]
}],
/**
* Flex Wrap
* @see https://tailwindcss.com/docs/flex-wrap
*/
"flex-wrap": [{
flex: ["wrap", "wrap-reverse", "nowrap"]
}],
/**
* Flex
* @see https://tailwindcss.com/docs/flex
*/
flex: [{
flex: ["1", "auto", "initial", "none", xt]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: ee()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: ee()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", Jm, xt]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [Qm]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", Jm, xt]
}, xt]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": G()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": G()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [Qm]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [Jm, xt]
}, xt]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": G()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": G()
}],
/**
* Grid Auto Flow
* @see https://tailwindcss.com/docs/grid-auto-flow
*/
"grid-flow": [{
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
}],
/**
* Grid Auto Columns
* @see https://tailwindcss.com/docs/grid-auto-columns
*/
"auto-cols": [{
"auto-cols": ["auto", "min", "max", "fr", xt]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", xt]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [f]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [f]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [f]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...X()]
}],
/**
* Justify Items
* @see https://tailwindcss.com/docs/justify-items
*/
"justify-items": [{
"justify-items": ["start", "end", "center", "stretch"]
}],
/**
* Justify Self
* @see https://tailwindcss.com/docs/justify-self
*/
"justify-self": [{
"justify-self": ["auto", "start", "end", "center", "stretch"]
}],
/**
* Align Content
* @see https://tailwindcss.com/docs/align-content
*/
"align-content": [{
content: ["normal", ...X(), "baseline"]
}],
/**
* Align Items
* @see https://tailwindcss.com/docs/align-items
*/
"align-items": [{
items: ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Align Self
* @see https://tailwindcss.com/docs/align-self
*/
"align-self": [{
self: ["auto", "start", "end", "center", "stretch", "baseline"]
}],
/**
* Place Content
* @see https://tailwindcss.com/docs/place-content
*/
"place-content": [{
"place-content": [...X(), "baseline"]
}],
/**
* Place Items
* @see https://tailwindcss.com/docs/place-items
*/
"place-items": [{
"place-items": ["start", "end", "center", "baseline", "stretch"]
}],
/**
* Place Self
* @see https://tailwindcss.com/docs/place-self
*/
"place-self": [{
"place-self": ["auto", "start", "end", "center", "stretch"]
}],
// Spacing
/**
* Padding
* @see https://tailwindcss.com/docs/padding
*/
p: [{
p: [$]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [$]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [$]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [$]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [$]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [$]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [$]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [$]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [$]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [h]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [h]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [h]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [h]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [h]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [h]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [h]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [h]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [h]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [z]
}],
/**
* Space Between X Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-x-reverse": ["space-x-reverse"],
/**
* Space Between Y
* @see https://tailwindcss.com/docs/space
*/
"space-y": [{
"space-y": [z]
}],
/**
* Space Between Y Reverse
* @see https://tailwindcss.com/docs/space
*/
"space-y-reverse": ["space-y-reverse"],
// Sizing
/**
* Width
* @see https://tailwindcss.com/docs/width
*/
w: [{
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", xt, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [xt, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [xt, t, "none", "full", "min", "max", "fit", "prose", {
screen: [jl]
}, jl]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [xt, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [xt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [xt, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [xt, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", jl, Il]
}],
/**
* Font Smoothing
* @see https://tailwindcss.com/docs/font-smoothing
*/
"font-smoothing": ["antialiased", "subpixel-antialiased"],
/**
* Font Style
* @see https://tailwindcss.com/docs/font-style
*/
"font-style": ["italic", "not-italic"],
/**
* Font Weight
* @see https://tailwindcss.com/docs/font-weight
*/
"font-weight": [{
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", b_]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [Qm]
}],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-normal": ["normal-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-ordinal": ["ordinal"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-slashed-zero": ["slashed-zero"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-figure": ["lining-nums", "oldstyle-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-spacing": ["proportional-nums", "tabular-nums"],
/**
* Font Variant Numeric
* @see https://tailwindcss.com/docs/font-variant-numeric
*/
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
/**
* Letter Spacing
* @see https://tailwindcss.com/docs/letter-spacing
*/
tracking: [{
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", xt]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", Pd, b_]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", Ci, xt]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", xt]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", xt]
}],
/**
* List Style Position
* @see https://tailwindcss.com/docs/list-style-position
*/
"list-style-position": [{
list: ["inside", "outside"]
}],
/**
* Placeholder Color
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/placeholder-color
*/
"placeholder-color": [{
placeholder: [e]
}],
/**
* Placeholder Opacity
* @see https://tailwindcss.com/docs/placeholder-opacity
*/
"placeholder-opacity": [{
"placeholder-opacity": [w]
}],
/**
* Text Alignment
* @see https://tailwindcss.com/docs/text-align
*/
"text-alignment": [{
text: ["left", "center", "right", "justify", "start", "end"]
}],
/**
* Text Color
* @see https://tailwindcss.com/docs/text-color
*/
"text-color": [{
text: [e]
}],
/**
* Text Opacity
* @see https://tailwindcss.com/docs/text-opacity
*/
"text-opacity": [{
"text-opacity": [w]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", Ci, Il]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", Ci, xt]
}],
/**
* Text Decoration Color
* @see https://tailwindcss.com/docs/text-decoration-color
*/
"text-decoration-color": [{
decoration: [e]
}],
/**
* Text Transform
* @see https://tailwindcss.com/docs/text-transform
*/
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
/**
* Text Overflow
* @see https://tailwindcss.com/docs/text-overflow
*/
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
/**
* Text Wrap
* @see https://tailwindcss.com/docs/text-wrap
*/
"text-wrap": [{
text: ["wrap", "nowrap", "balance", "pretty"]
}],
/**
* Text Indent
* @see https://tailwindcss.com/docs/text-indent
*/
indent: [{
indent: M()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", xt]
}],
/**
* Whitespace
* @see https://tailwindcss.com/docs/whitespace
*/
whitespace: [{
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
}],
/**
* Word Break
* @see https://tailwindcss.com/docs/word-break
*/
break: [{
break: ["normal", "words", "all", "keep"]
}],
/**
* Hyphens
* @see https://tailwindcss.com/docs/hyphens
*/
hyphens: [{
hyphens: ["none", "manual", "auto"]
}],
/**
* Content
* @see https://tailwindcss.com/docs/content
*/
content: [{
content: ["none", xt]
}],
// Backgrounds
/**
* Background Attachment
* @see https://tailwindcss.com/docs/background-attachment
*/
"bg-attachment": [{
bg: ["fixed", "local", "scroll"]
}],
/**
* Background Clip
* @see https://tailwindcss.com/docs/background-clip
*/
"bg-clip": [{
"bg-clip": ["border", "padding", "content", "text"]
}],
/**
* Background Opacity
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/background-opacity
*/
"bg-opacity": [{
"bg-opacity": [w]
}],
/**
* Background Origin
* @see https://tailwindcss.com/docs/background-origin
*/
"bg-origin": [{
"bg-origin": ["border", "padding", "content"]
}],
/**
* Background Position
* @see https://tailwindcss.com/docs/background-position
*/
"bg-position": [{
bg: [...H(), OVe]
}],
/**
* Background Repeat
* @see https://tailwindcss.com/docs/background-repeat
*/
"bg-repeat": [{
bg: ["no-repeat", {
repeat: ["", "x", "y", "round", "space"]
}]
}],
/**
* Background Size
* @see https://tailwindcss.com/docs/background-size
*/
"bg-size": [{
bg: ["auto", "cover", "contain", _Ve]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, EVe]
}],
/**
* Background Color
* @see https://tailwindcss.com/docs/background-color
*/
"bg-color": [{
bg: [e]
}],
/**
* Gradient Color Stops From Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from-pos": [{
from: [y]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [y]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [y]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [p]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [p]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [p]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [w]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [w]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [Ci, xt]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [Ci, Il]
}],
/**
* Outline Color
* @see https://tailwindcss.com/docs/outline-color
*/
"outline-color": [{
outline: [e]
}],
/**
* Ring Width
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w": [{
ring: te()
}],
/**
* Ring Width Inset
* @see https://tailwindcss.com/docs/ring-width
*/
"ring-w-inset": ["ring-inset"],
/**
* Ring Color
* @see https://tailwindcss.com/docs/ring-color
*/
"ring-color": [{
ring: [e]
}],
/**
* Ring Opacity
* @see https://tailwindcss.com/docs/ring-opacity
*/
"ring-opacity": [{
"ring-opacity": [w]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [Ci, Il]
}],
/**
* Ring Offset Color
* @see https://tailwindcss.com/docs/ring-offset-color
*/
"ring-offset-color": [{
"ring-offset": [e]
}],
// Effects
/**
* Box Shadow
* @see https://tailwindcss.com/docs/box-shadow
*/
shadow: [{
shadow: ["", "inner", "none", jl, AVe]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [Qm]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [w]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...W(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": W()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [u]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", jl, xt]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [d]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [l]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [_]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [b]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [u]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [c]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [d]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [l]
}],
/**
* Backdrop Opacity
* @see https://tailwindcss.com/docs/backdrop-opacity
*/
"backdrop-opacity": [{
"backdrop-opacity": [w]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [_]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [b]
}],
// Tables
/**
* Border Collapse
* @see https://tailwindcss.com/docs/border-collapse
*/
"border-collapse": [{
border: ["collapse", "separate"]
}],
/**
* Border Spacing
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing": [{
"border-spacing": [i]
}],
/**
* Border Spacing X
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-x": [{
"border-spacing-x": [i]
}],
/**
* Border Spacing Y
* @see https://tailwindcss.com/docs/border-spacing
*/
"border-spacing-y": [{
"border-spacing-y": [i]
}],
/**
* Table Layout
* @see https://tailwindcss.com/docs/table-layout
*/
"table-layout": [{
table: ["auto", "fixed"]
}],
/**
* Caption Side
* @see https://tailwindcss.com/docs/caption-side
*/
caption: [{
caption: ["top", "bottom"]
}],
// Transitions and Animation
/**
* Tranisition Property
* @see https://tailwindcss.com/docs/transition-property
*/
transition: [{
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", xt]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: g()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", xt]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: g()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", xt]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [S]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [S]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [S]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [Jm, xt]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [q]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [q]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [F]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [F]
}],
/**
* Transform Origin
* @see https://tailwindcss.com/docs/transform-origin
*/
"transform-origin": [{
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", xt]
}],
// Interactivity
/**
* Accent Color
* @see https://tailwindcss.com/docs/accent-color
*/
accent: [{
accent: ["auto", e]
}],
/**
* Appearance
* @see https://tailwindcss.com/docs/appearance
*/
appearance: [{
appearance: ["none", "auto"]
}],
/**
* Cursor
* @see https://tailwindcss.com/docs/cursor
*/
cursor: [{
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", xt]
}],
/**
* Caret Color
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
*/
"caret-color": [{
caret: [e]
}],
/**
* Pointer Events
* @see https://tailwindcss.com/docs/pointer-events
*/
"pointer-events": [{
"pointer-events": ["none", "auto"]
}],
/**
* Resize
* @see https://tailwindcss.com/docs/resize
*/
resize: [{
resize: ["none", "y", "x", ""]
}],
/**
* Scroll Behavior
* @see https://tailwindcss.com/docs/scroll-behavior
*/
"scroll-behavior": [{
scroll: ["auto", "smooth"]
}],
/**
* Scroll Margin
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-m": [{
"scroll-m": M()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": M()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": M()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": M()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": M()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": M()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": M()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": M()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": M()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": M()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": M()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": M()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": M()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": M()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": M()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": M()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": M()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": M()
}],
/**
* Scroll Snap Align
* @see https://tailwindcss.com/docs/scroll-snap-align
*/
"snap-align": [{
snap: ["start", "end", "center", "align-none"]
}],
/**
* Scroll Snap Stop
* @see https://tailwindcss.com/docs/scroll-snap-stop
*/
"snap-stop": [{
snap: ["normal", "always"]
}],
/**
* Scroll Snap Type
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-type": [{
snap: ["none", "x", "y", "both"]
}],
/**
* Scroll Snap Type Strictness
* @see https://tailwindcss.com/docs/scroll-snap-type
*/
"snap-strictness": [{
snap: ["mandatory", "proximity"]
}],
/**
* Touch Action
* @see https://tailwindcss.com/docs/touch-action
*/
touch: [{
touch: ["auto", "none", "manipulation"]
}],
/**
* Touch Action X
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-x": [{
"touch-pan": ["x", "left", "right"]
}],
/**
* Touch Action Y
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-y": [{
"touch-pan": ["y", "up", "down"]
}],
/**
* Touch Action Pinch Zoom
* @see https://tailwindcss.com/docs/touch-action
*/
"touch-pz": ["touch-pinch-zoom"],
/**
* User Select
* @see https://tailwindcss.com/docs/user-select
*/
select: [{
select: ["none", "text", "all", "auto"]
}],
/**
* Will Change
* @see https://tailwindcss.com/docs/will-change
*/
"will-change": [{
"will-change": ["auto", "scroll", "contents", "transform", xt]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [Ci, Il, b_]
}],
/**
* Stroke
* @see https://tailwindcss.com/docs/stroke
*/
stroke: [{
stroke: [e, "none"]
}],
// Accessibility
/**
* Screen Readers
* @see https://tailwindcss.com/docs/screen-readers
*/
sr: ["sr-only", "not-sr-only"],
/**
* Forced Color Adjust
* @see https://tailwindcss.com/docs/forced-color-adjust
*/
"forced-color-adjust": [{
"forced-color-adjust": ["auto", "none"]
}]
},
conflictingClassGroups: {
overflow: ["overflow-x", "overflow-y"],
overscroll: ["overscroll-x", "overscroll-y"],
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
"inset-x": ["right", "left"],
"inset-y": ["top", "bottom"],
flex: ["basis", "grow", "shrink"],
gap: ["gap-x", "gap-y"],
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
px: ["pr", "pl"],
py: ["pt", "pb"],
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
mx: ["mr", "ml"],
my: ["mt", "mb"],
size: ["w", "h"],
"font-size": ["leading"],
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
"fvn-ordinal": ["fvn-normal"],
"fvn-slashed-zero": ["fvn-normal"],
"fvn-figure": ["fvn-normal"],
"fvn-spacing": ["fvn-normal"],
"fvn-fraction": ["fvn-normal"],
"line-clamp": ["display", "overflow"],
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
"rounded-s": ["rounded-ss", "rounded-es"],
"rounded-e": ["rounded-se", "rounded-ee"],
"rounded-t": ["rounded-tl", "rounded-tr"],
"rounded-r": ["rounded-tr", "rounded-br"],
"rounded-b": ["rounded-br", "rounded-bl"],
"rounded-l": ["rounded-tl", "rounded-bl"],
"border-spacing": ["border-spacing-x", "border-spacing-y"],
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
"border-w-x": ["border-w-r", "border-w-l"],
"border-w-y": ["border-w-t", "border-w-b"],
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
"border-color-x": ["border-color-r", "border-color-l"],
"border-color-y": ["border-color-t", "border-color-b"],
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
"scroll-mx": ["scroll-mr", "scroll-ml"],
"scroll-my": ["scroll-mt", "scroll-mb"],
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
"scroll-px": ["scroll-pr", "scroll-pl"],
"scroll-py": ["scroll-pt", "scroll-pb"],
touch: ["touch-x", "touch-y", "touch-pz"],
"touch-x": ["touch"],
"touch-y": ["touch"],
"touch-pz": ["touch"]
},
conflictingClassGroupModifiers: {
"font-size": ["leading"]
}
};
}, IVe = /* @__PURE__ */ mVe(TVe), jVe = ({
onClick: e,
className: t,
size: r = "md"
}) => /* @__PURE__ */ K(
"button",
{
onClick: e,
className: IVe(
"flex items-center justify-center rounded-full bg-black/40 text-white/60 transition-all hover:bg-black/70 hover:text-white",
{
sm: "h-5 w-5 text-sm",
md: "h-7 w-7 text-md",
lg: "h-9 w-9 text-xl"
}[r],
t
),
children: /* @__PURE__ */ K(k6, { icon: T8e })
}
);
var O6 = ry(), st = (e) => ty(e, O6), S6 = ry();
st.write = (e) => ty(e, S6);
var hw = ry();
st.onStart = (e) => ty(e, hw);
var E6 = ry();
st.onFrame = (e) => ty(e, E6);
var A6 = ry();
st.onFinish = (e) => ty(e, A6);
var Cd = [];
st.setTimeout = (e, t) => {
const r = st.now() + t, n = () => {
const a = Cd.findIndex((i) => i.cancel == n);
~a && Cd.splice(a, 1), Xl -= ~a ? 1 : 0;
}, o = { time: r, handler: e, cancel: n };
return Cd.splice($te(r), 0, o), Xl += 1, kte(), o;
};
var $te = (e) => ~(~Cd.findIndex((t) => t.time > e) || ~Cd.length);
st.cancel = (e) => {
hw.delete(e), E6.delete(e), A6.delete(e), O6.delete(e), S6.delete(e);
};
st.sync = (e) => {
D5 = !0, st.batchedUpdates(e), D5 = !1;
};
st.throttle = (e) => {
let t;
function r() {
try {
e(...t);
} finally {
t = null;
}
}
function n(...o) {
t = o, st.onStart(r);
}
return n.handler = e, n.cancel = () => {
hw.delete(r), t = null;
}, n;
};
var P6 = typeof window < "u" ? window.requestAnimationFrame : (
// eslint-disable-next-line @typescript-eslint/no-empty-function
() => {
}
);
st.use = (e) => P6 = e;
st.now = typeof performance < "u" ? () => performance.now() : Date.now;
st.batchedUpdates = (e) => e();
st.catch = console.error;
st.frameLoop = "always";
st.advance = () => {
st.frameLoop !== "demand" ? console.warn(
"Cannot call the manual advancement of rafz whilst frameLoop is not set as demand"
) : Ote();
};
var Kl = -1, Xl = 0, D5 = !1;
function ty(e, t) {
D5 ? (t.delete(e), e(0)) : (t.add(e), kte());
}
function kte() {
Kl < 0 && (Kl = 0, st.frameLoop !== "demand" && P6(_te));
}
function RVe() {
Kl = -1;
}
function _te() {
~Kl && (P6(_te), st.batchedUpdates(Ote));
}
function Ote() {
const e = Kl;
Kl = st.now();
const t = $te(Kl);
if (t && (Ste(Cd.splice(0, t), (r) => r.handler()), Xl -= t), !Xl) {
RVe();
return;
}
hw.flush(), O6.flush(e ? Math.min(64, Kl - e) : 16.667), E6.flush(), S6.flush(), A6.flush();
}
function ry() {
let e = /* @__PURE__ */ new Set(), t = e;
return {
add(r) {
Xl += t == e && !e.has(r) ? 1 : 0, e.add(r);
},
delete(r) {
return Xl -= t == e && e.has(r) ? 1 : 0, e.delete(r);
},
flush(r) {
t.size && (e = /* @__PURE__ */ new Set(), Xl -= t.size, Ste(t, (n) => n(r) && e.add(n)), Xl += e.size, t = e);
}
};
}
function Ste(e, t) {
e.forEach((r) => {
try {
t(r);
} catch (n) {
st.catch(n);
}
});
}
var MVe = Object.defineProperty, DVe = (e, t) => {
for (var r in t)
MVe(e, r, { get: t[r], enumerable: !0 });
}, ca = {};
DVe(ca, {
assign: () => LVe,
colors: () => rc,
createStringInterpolator: () => N6,
skipAnimation: () => Ate,
to: () => Ete,
willAdvance: () => T6
});
function F5() {
}
var FVe = (e, t, r) => Object.defineProperty(e, t, { value: r, writable: !0, configurable: !0 }), Pe = {
arr: Array.isArray,
obj: (e) => !!e && e.constructor.name === "Object",
fun: (e) => typeof e == "function",
str: (e) => typeof e == "string",
num: (e) => typeof e == "number",
und: (e) => e === void 0
};
function Ri(e, t) {
if (Pe.arr(e)) {
if (!Pe.arr(t) || e.length !== t.length) return !1;
for (let r = 0; r < e.length; r++)
if (e[r] !== t[r]) return !1;
return !0;
}
return e === t;
}
var $t = (e, t) => e.forEach(t);
function di(e, t, r) {
if (Pe.arr(e)) {
for (let n = 0; n < e.length; n++)
t.call(r, e[n], `${n}`);
return;
}
for (const n in e)
e.hasOwnProperty(n) && t.call(r, e[n], n);
}
var Mn = (e) => Pe.und(e) ? [] : Pe.arr(e) ? e : [e];
function lg(e, t) {
if (e.size) {
const r = Array.from(e);
e.clear(), $t(r, t);
}
}
var wh = (e, ...t) => lg(e, (r) => r(...t)), C6 = () => typeof window > "u" || !window.navigator || /ServerSideRendering|^Deno\//.test(window.navigator.userAgent), N6, Ete, rc = null, Ate = !1, T6 = F5, LVe = (e) => {
e.to && (Ete = e.to), e.now && (st.now = e.now), e.colors !== void 0 && (rc = e.colors), e.skipAnimation != null && (Ate = e.skipAnimation), e.createStringInterpolator && (N6 = e.createStringInterpolator), e.requestAnimationFrame && st.use(e.requestAnimationFrame), e.batchedUpdates && (st.batchedUpdates = e.batchedUpdates), e.willAdvance && (T6 = e.willAdvance), e.frameLoop && (st.frameLoop = e.frameLoop);
}, cg = /* @__PURE__ */ new Set(), No = [], y_ = [], b0 = 0, gw = {
get idle() {
return !cg.size && !No.length;
},
/** Advance the given animation on every frame until idle. */
start(e) {
b0 > e.priority ? (cg.add(e), st.onStart(zVe)) : (Pte(e), st(L5));
},
/** Advance all animations by the given time. */
advance: L5,
/** Call this when an animation's priority changes. */
sort(e) {
if (b0)
st.onFrame(() => gw.sort(e));
else {
const t = No.indexOf(e);
~t && (No.splice(t, 1), Cte(e));
}
},
/**
* Clear all animations. For testing purposes.
*
* ☠️ Never call this from within the frameloop.
*/
clear() {
No = [], cg.clear();
}
};
function zVe() {
cg.forEach(Pte), cg.clear(), st(L5);
}
function Pte(e) {
No.includes(e) || Cte(e);
}
function Cte(e) {
No.splice(
WVe(No, (t) => t.priority > e.priority),
0,
e
);
}
function L5(e) {
const t = y_;
for (let r = 0; r < No.length; r++) {
const n = No[r];
b0 = n.priority, n.idle || (T6(n), n.advance(e), n.idle || t.push(n));
}
return b0 = 0, y_ = No, y_.length = 0, No = t, No.length > 0;
}
function WVe(e, t) {
const r = e.findIndex(t);
return r < 0 ? e.length : r;
}
var VVe = {
transparent: 0,
aliceblue: 4042850303,
antiquewhite: 4209760255,
aqua: 16777215,
aquamarine: 2147472639,
azure: 4043309055,
beige: 4126530815,
bisque: 4293182719,
black: 255,
blanchedalmond: 4293643775,
blue: 65535,
blueviolet: 2318131967,
brown: 2771004159,
burlywood: 3736635391,
burntsienna: 3934150143,
cadetblue: 1604231423,
chartreuse: 2147418367,
chocolate: 3530104575,
coral: 4286533887,
cornflowerblue: 1687547391,
cornsilk: 4294499583,
crimson: 3692313855,
cyan: 16777215,
darkblue: 35839,
darkcyan: 9145343,
darkgoldenrod: 3095792639,
darkgray: 2846468607,
darkgreen: 6553855,
darkgrey: 2846468607,
darkkhaki: 3182914559,
darkmagenta: 2332068863,
darkolivegreen: 1433087999,
darkorange: 4287365375,
darkorchid: 2570243327,
darkred: 2332033279,
darksalmon: 3918953215,
darkseagreen: 2411499519,
darkslateblue: 1211993087,
darkslategray: 793726975,
darkslategrey: 793726975,
darkturquoise: 13554175,
darkviolet: 2483082239,
deeppink: 4279538687,
deepskyblue: 12582911,
dimgray: 1768516095,
dimgrey: 1768516095,
dodgerblue: 512819199,
firebrick: 2988581631,
floralwhite: 4294635775,
forestgreen: 579543807,
fuchsia: 4278255615,
gainsboro: 3705462015,
ghostwhite: 4177068031,
gold: 4292280575,
goldenrod: 3668254975,
gray: 2155905279,
green: 8388863,
greenyellow: 2919182335,
grey: 2155905279,
honeydew: 4043305215,
hotpink: 4285117695,
indianred: 3445382399,
indigo: 1258324735,
ivory: 4294963455,
khaki: 4041641215,
lavender: 3873897215,
lavenderblush: 4293981695,
lawngreen: 2096890111,
lemonchiffon: 4294626815,
lightblue: 2916673279,
lightcoral: 4034953471,
lightcyan: 3774873599,
lightgoldenrodyellow: 4210742015,
lightgray: 3553874943,
lightgreen: 2431553791,
lightgrey: 3553874943,
lightpink: 4290167295,
lightsalmon: 4288707327,
lightseagreen: 548580095,
lightskyblue: 2278488831,
lightslategray: 2005441023,
lightslategrey: 2005441023,
lightsteelblue: 2965692159,
lightyellow: 4294959359,
lime: 16711935,
limegreen: 852308735,
linen: 4210091775,
magenta: 4278255615,
maroon: 2147483903,
mediumaquamarine: 1724754687,
mediumblue: 52735,
mediumorchid: 3126187007,
mediumpurple: 2473647103,
mediumseagreen: 1018393087,
mediumslateblue: 2070474495,
mediumspringgreen: 16423679,
mediumturquoise: 1221709055,
mediumvioletred: 3340076543,
midnightblue: 421097727,
mintcream: 4127193855,
mistyrose: 4293190143,
moccasin: 4293178879,
navajowhite: 4292783615,
navy: 33023,
oldlace: 4260751103,
olive: 2155872511,
olivedrab: 1804477439,
orange: 4289003775,
orangered: 4282712319,
orchid: 3664828159,
palegoldenrod: 4008225535,
palegreen: 2566625535,
paleturquoise: 2951671551,
palevioletred: 3681588223,
papayawhip: 4293907967,
peachpuff: 4292524543,
peru: 3448061951,
pink: 4290825215,
plum: 3718307327,
powderblue: 2967529215,
purple: 2147516671,
rebeccapurple: 1714657791,
red: 4278190335,
rosybrown: 3163525119,
royalblue: 1097458175,
saddlebrown: 2336560127,
salmon: 4202722047,
sandybrown: 4104413439,
seagreen: 780883967,
seashell: 4294307583,
sienna: 2689740287,
silver: 3233857791,
skyblue: 2278484991,
slateblue: 1784335871,
slategray: 1887473919,
slategrey: 1887473919,
snow: 4294638335,
springgreen: 16744447,
steelblue: 1182971135,
tan: 3535047935,
teal: 8421631,
thistle: 3636451583,
tomato: 4284696575,
turquoise: 1088475391,
violet: 4001558271,
wheat: 4125012991,
white: 4294967295,
whitesmoke: 4126537215,
yellow: 4294902015,
yellowgreen: 2597139199
}, oa = "[-+]?\\d*\\.?\\d+", y0 = oa + "%";
function bw(...e) {
return "\\(\\s*(" + e.join(")\\s*,\\s*(") + ")\\s*\\)";
}
var HVe = new RegExp("rgb" + bw(oa, oa, oa)), GVe = new RegExp("rgba" + bw(oa, oa, oa, oa)), UVe = new RegExp("hsl" + bw(oa, y0, y0)), BVe = new RegExp(
"hsla" + bw(oa, y0, y0, oa)
), YVe = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, qVe = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, KVe = /^#([0-9a-fA-F]{6})$/, XVe = /^#([0-9a-fA-F]{8})$/;
function JVe(e) {
let t;
return typeof e == "number" ? e >>> 0 === e && e >= 0 && e <= 4294967295 ? e : null : (t = KVe.exec(e)) ? parseInt(t[1] + "ff", 16) >>> 0 : rc && rc[e] !== void 0 ? rc[e] : (t = HVe.exec(e)) ? (wf(t[1]) << 24 | // r
wf(t[2]) << 16 | // g
wf(t[3]) << 8 | // b
255) >>> // a
0 : (t = GVe.exec(e)) ? (wf(t[1]) << 24 | // r
wf(t[2]) << 16 | // g
wf(t[3]) << 8 | // b
C8(t[4])) >>> // a
0 : (t = YVe.exec(e)) ? parseInt(
t[1] + t[1] + // r
t[2] + t[2] + // g
t[3] + t[3] + // b
"ff",
// a
16
) >>> 0 : (t = XVe.exec(e)) ? parseInt(t[1], 16) >>> 0 : (t = qVe.exec(e)) ? parseInt(
t[1] + t[1] + // r
t[2] + t[2] + // g
t[3] + t[3] + // b
t[4] + t[4],
// a
16
) >>> 0 : (t = UVe.exec(e)) ? (A8(
P8(t[1]),
// h
gv(t[2]),
// s
gv(t[3])
// l
) | 255) >>> // a
0 : (t = BVe.exec(e)) ? (A8(
P8(t[1]),
// h
gv(t[2]),
// s
gv(t[3])
// l
) | C8(t[4])) >>> // a
0 : null;
}
function v_(e, t, r) {
return r < 0 && (r += 1), r > 1 && (r -= 1), r < 1 / 6 ? e + (t - e) * 6 * r : r < 1 / 2 ? t : r < 2 / 3 ? e + (t - e) * (2 / 3 - r) * 6 : e;
}
function A8(e, t, r) {
const n = r < 0.5 ? r * (1 + t) : r + t - r * t, o = 2 * r - n, a = v_(o, n, e + 1 / 3), i = v_(o, n, e), s = v_(o, n, e - 1 / 3);
return Math.round(a * 255) << 24 | Math.round(i * 255) << 16 | Math.round(s * 255) << 8;
}
function wf(e) {
const t = parseInt(e, 10);
return t < 0 ? 0 : t > 255 ? 255 : t;
}
function P8(e) {
return (parseFloat(e) % 360 + 360) % 360 / 360;
}
function C8(e) {
const t = parseFloat(e);
return t < 0 ? 0 : t > 1 ? 255 : Math.round(t * 255);
}
function gv(e) {
const t = parseFloat(e);
return t < 0 ? 0 : t > 100 ? 1 : t / 100;
}
function N8(e) {
let t = JVe(e);
if (t === null) return e;
t = t || 0;
const r = (t & 4278190080) >>> 24, n = (t & 16711680) >>> 16, o = (t & 65280) >>> 8, a = (t & 255) / 255;
return `rgba(${r}, ${n}, ${o}, ${a})`;
}
var sb = (e, t, r) => {
if (Pe.fun(e))
return e;
if (Pe.arr(e))
return sb({
range: e,
output: t,
extrapolate: r
});
if (Pe.str(e.output[0]))
return N6(e);
const n = e, o = n.output, a = n.range || [0, 1], i = n.extrapolateLeft || n.extrapolate || "extend", s = n.extrapolateRight || n.extrapolate || "extend", u = n.easing || ((c) => c);
return (c) => {
const d = ZVe(c, a);
return QVe(
c,
a[d],
a[d + 1],
o[d],
o[d + 1],
u,
i,
s,
n.map
);
};
};
function QVe(e, t, r, n, o, a, i, s, u) {
let c = u ? u(e) : e;
if (c < t) {
if (i === "identity") return c;
i === "clamp" && (c = t);
}
if (c > r) {
if (s === "identity") return c;
s === "clamp" && (c = r);
}
return n === o ? n : t === r ? e <= t ? n : o : (t === -1 / 0 ? c = -c : r === 1 / 0 ? c = c - t : c = (c - t) / (r - t), c = a(c), n === -1 / 0 ? c = -c : o === 1 / 0 ? c = c + n : c = c * (o - n) + n, c);
}
function ZVe(e, t) {
for (var r = 1; r < t.length - 1 && !(t[r] >= e); ++r)
;
return r - 1;
}
var eHe = {
linear: (e) => e
}, lb = Symbol.for("FluidValue.get"), qd = Symbol.for("FluidValue.observers"), Ao = (e) => !!(e && e[lb]), Qn = (e) => e && e[lb] ? e[lb]() : e, T8 = (e) => e[qd] || null;
function tHe(e, t) {
e.eventObserved ? e.eventObserved(t) : e(t);
}
function cb(e, t) {
const r = e[qd];
r && r.forEach((n) => {
tHe(n, t);
});
}
var Nte = class {
constructor(e) {
if (!e && !(e = this.get))
throw Error("Unknown getter");
rHe(this, e);
}
}, rHe = (e, t) => Tte(e, lb, t);
function Cp(e, t) {
if (e[lb]) {
let r = e[qd];
r || Tte(e, qd, r = /* @__PURE__ */ new Set()), r.has(t) || (r.add(t), e.observerAdded && e.observerAdded(r.size, t));
}
return t;
}
function ub(e, t) {
const r = e[qd];
if (r && r.has(t)) {
const n = r.size - 1;
n ? r.delete(t) : e[qd] = null, e.observerRemoved && e.observerRemoved(n, t);
}
}
var Tte = (e, t, r) => Object.defineProperty(e, t, {
value: r,
writable: !0,
configurable: !0
}), s1 = /[+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, nHe = /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\((-?\d+%?[,\s]+){2,3}\s*[\d\.]+%?\))/gi, I8 = new RegExp(`(${s1.source})(%|[a-z]+)`, "i"), oHe = /rgba\(([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+)\)/gi, yw = /var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/, Ite = (e) => {
const [t, r] = aHe(e);
if (!t || C6())
return e;
const n = window.getComputedStyle(document.documentElement).getPropertyValue(t);
return n ? n.trim() : r && r.startsWith("--") ? window.getComputedStyle(document.documentElement).getPropertyValue(r) || e : r && yw.test(r) ? Ite(r) : r || e;
}, aHe = (e) => {
const t = yw.exec(e);
if (!t) return [,];
const [, r, n] = t;
return [r, n];
}, x_, iHe = (e, t, r, n, o) => `rgba(${Math.round(t)}, ${Math.round(r)}, ${Math.round(n)}, ${o})`, jte = (e) => {
x_ || (x_ = rc ? (
// match color names, ignore partial matches
new RegExp(`(${Object.keys(rc).join("|")})(?!\\w)`, "g")
) : (
// never match
/^\b$/
));
const t = e.output.map((o) => Qn(o).replace(yw, Ite).replace(nHe, N8).replace(x_, N8)), r = t.map((o) => o.match(s1).map(Number)), n = r[0].map(
(o, a) => r.map((i) => {
if (!(a in i))
throw Error('The arity of each "output" value must be equal');
return i[a];
})
).map(
(o) => sb({ ...e, output: o })
);
return (o) => {
var a;
const i = !I8.test(t[0]) && ((a = t.find((u) => I8.test(u))) == null ? void 0 : a.replace(s1, ""));
let s = 0;
return t[0].replace(
s1,
() => `${n[s++](o)}${i || ""}`
).replace(oHe, iHe);
};
}, I6 = "react-spring: ", Rte = (e) => {
const t = e;
let r = !1;
if (typeof t != "function")
throw new TypeError(`${I6}once requires a function parameter`);
return (...n) => {
r || (t(...n), r = !0);
};
}, sHe = Rte(console.warn);
function lHe() {
sHe(
`${I6}The "interpolate" function is deprecated in v9 (use "to" instead)`
);
}
var cHe = Rte(console.warn);
function uHe() {
cHe(
`${I6}Directly calling start instead of using the api object is deprecated in v9 (use ".start" instead), this will be removed in later 0.X.0 versions`
);
}
function vw(e) {
return Pe.str(e) && (e[0] == "#" || /\d/.test(e) || // Do not identify a CSS variable as an AnimatedString if its SSR
!C6() && yw.test(e) || e in (rc || {}));
}
var Kf = C6() ? ue : pi, fHe = () => {
const e = ne(!1);
return Kf(() => (e.current = !0, () => {
e.current = !1;
}), []), e;
};
function Mte() {
const e = de()[1], t = fHe();
return () => {
t.current && e(Math.random());
};
}
var Dte = (e) => ue(e, dHe), dHe = [];
function pHe(e) {
const t = ne(void 0);
return ue(() => {
t.current = e;
}), t.current;
}
var fb = Symbol.for("Animated:node"), mHe = (e) => !!e && e[fb] === e, ba = (e) => e && e[fb], j6 = (e, t) => FVe(e, fb, t), xw = (e) => e && e[fb] && e[fb].getPayload(), Fte = class {
constructor() {
j6(this, this);
}
/** Get every `AnimatedValue` used by this node. */
getPayload() {
return this.payload || [];
}
}, ww = class Lte extends Fte {
constructor(t) {
super(), this._value = t, this.done = !0, this.durationProgress = 0, Pe.num(this._value) && (this.lastPosition = this._value);
}
/** @internal */
static create(t) {
return new Lte(t);
}
getPayload() {
return [this];
}
getValue() {
return this._value;
}
setValue(t, r) {
return Pe.num(t) && (this.lastPosition = t, r && (t = Math.round(t / r) * r, this.done && (this.lastPosition = t))), this._value === t ? !1 : (this._value = t, !0);
}
reset() {
const { done: t } = this;
this.done = !1, Pe.num(this._value) && (this.elapsedTime = 0, this.durationProgress = 0, this.lastPosition = this._value, t && (this.lastVelocity = null), this.v0 = null);
}
}, v0 = class zte extends ww {
constructor(t) {
super(0), this._string = null, this._toString = sb({
output: [t, t]
});
}
/** @internal */
static create(t) {
return new zte(t);
}
getValue() {
return this._string ?? (this._string = this._toString(this._value));
}
setValue(t) {
if (Pe.str(t)) {
if (t == this._string)
return !1;
this._string = t, this._value = 1;
} else if (super.setValue(t))
this._string = null;
else
return !1;
return !0;
}
reset(t) {
t && (this._toString = sb({
output: [this.getValue(), t]
})), this._value = 0, super.reset();
}
}, x0 = { dependencies: null }, $w = class extends Fte {
constructor(e) {
super(), this.source = e, this.setValue(e);
}
getValue(e) {
const t = {};
return di(this.source, (r, n) => {
mHe(r) ? t[n] = r.getValue(e) : Ao(r) ? t[n] = Qn(r) : e || (t[n] = r);
}), t;
}
/** Replace the raw object data */
setValue(e) {
this.source = e, this.payload = this._makePayload(e);
}
reset() {
this.payload && $t(this.payload, (e) => e.reset());
}
/** Create a payload set. */
_makePayload(e) {
if (e) {
const t = /* @__PURE__ */ new Set();
return di(e, this._addToPayload, t), Array.from(t);
}
}
/** Add to a payload set. */
_addToPayload(e) {
x0.dependencies && Ao(e) && x0.dependencies.add(e);
const t = xw(e);
t && $t(t, (r) => this.add(r));
}
}, hHe = class Wte extends $w {
constructor(t) {
super(t);
}
/** @internal */
static create(t) {
return new Wte(t);
}
getValue() {
return this.source.map((t) => t.getValue());
}
setValue(t) {
const r = this.getPayload();
return t.length == r.length ? r.map((n, o) => n.setValue(t[o])).some(Boolean) : (super.setValue(t.map(gHe)), !0);
}
};
function gHe(e) {
return (vw(e) ? v0 : ww).create(e);
}
function z5(e) {
const t = ba(e);
return t ? t.constructor : Pe.arr(e) ? hHe : vw(e) ? v0 : ww;
}
var j8 = (e, t) => {
const r = (
// Function components must use "forwardRef" to avoid being
// re-rendered on every animation frame.
!Pe.fun(e) || e.prototype && e.prototype.isReactComponent
);
return sf((n, o) => {
const a = ne(null), i = r && // eslint-disable-next-line react-hooks/rules-of-hooks
Ne(
(y) => {
a.current = vHe(o, y);
},
[o]
), [s, u] = yHe(n, t), c = Mte(), d = () => {
const y = a.current;
r && !y || (y ? t.applyAnimatedValues(y, s.getValue(!0)) : !1) === !1 && c();
}, l = new bHe(d, u), f = ne(void 0);
Kf(() => (f.current = l, $t(u, (y) => Cp(y, l)), () => {
f.current && ($t(
f.current.deps,
(y) => ub(y, f.current)
), st.cancel(f.current.update));
})), ue(d, []), Dte(() => () => {
const y = f.current;
$t(y.deps, (m) => ub(m, y));
});
const p = t.getComponentProps(s.getValue());
return /* @__PURE__ */ V.createElement(e, { ...p, ref: i });
});
}, bHe = class {
constructor(e, t) {
this.update = e, this.deps = t;
}
eventObserved(e) {
e.type == "change" && st.write(this.update);
}
};
function yHe(e, t) {
const r = /* @__PURE__ */ new Set();
return x0.dependencies = r, e.style && (e = {
...e,
style: t.createAnimatedStyle(e.style)
}), e = new $w(e), x0.dependencies = null, [e, r];
}
function vHe(e, t) {
return e && (Pe.fun(e) ? e(t) : e.current = t), t;
}
var R8 = Symbol.for("AnimatedComponent"), xHe = (e, {
applyAnimatedValues: t = () => !1,
createAnimatedStyle: r = (o) => new $w(o),
getComponentProps: n = (o) => o
} = {}) => {
const o = {
applyAnimatedValues: t,
createAnimatedStyle: r,
getComponentProps: n
}, a = (i) => {
const s = M8(i) || "Anonymous";
return Pe.str(i) ? i = a[i] || (a[i] = j8(i, o)) : i = i[R8] || (i[R8] = j8(i, o)), i.displayName = `Animated(${s})`, i;
};
return di(e, (i, s) => {
Pe.arr(e) && (s = M8(i)), a[s] = a(i);
}), {
animated: a
};
}, M8 = (e) => Pe.str(e) ? e : e && Pe.str(e.displayName) ? e.displayName : Pe.fun(e) && e.name || null;
function Zn(e, ...t) {
return Pe.fun(e) ? e(...t) : e;
}
var ug = (e, t) => e === !0 || !!(t && e && (Pe.fun(e) ? e(t) : Mn(e).includes(t))), Vte = (e, t) => Pe.obj(e) ? t && e[t] : e, Hte = (e, t) => e.default === !0 ? e[t] : e.default ? e.default[t] : void 0, wHe = (e) => e, R6 = (e, t = wHe) => {
let r = $He;
e.default && e.default !== !0 && (e = e.default, r = Object.keys(e));
const n = {};
for (const o of r) {
const a = t(e[o], o);
Pe.und(a) || (n[o] = a);
}
return n;
}, $He = [
"config",
"onProps",
"onStart",
"onChange",
"onPause",
"onResume",
"onRest"
], kHe = {
config: 1,
from: 1,
to: 1,
ref: 1,
loop: 1,
reset: 1,
pause: 1,
cancel: 1,
reverse: 1,
immediate: 1,
default: 1,
delay: 1,
onProps: 1,
onStart: 1,
onChange: 1,
onPause: 1,
onResume: 1,
onRest: 1,
onResolve: 1,
// Transition props
items: 1,
trail: 1,
sort: 1,
expires: 1,
initial: 1,
enter: 1,
update: 1,
leave: 1,
children: 1,
onDestroyed: 1,
// Internal props
keys: 1,
callId: 1,
parentId: 1
};
function _He(e) {
const t = {};
let r = 0;
if (di(e, (n, o) => {
kHe[o] || (t[o] = n, r++);
}), r)
return t;
}
function M6(e) {
const t = _He(e);
if (t) {
const r = { to: t };
return di(e, (n, o) => o in t || (r[o] = n)), r;
}
return { ...e };
}
function db(e) {
return e = Qn(e), Pe.arr(e) ? e.map(db) : vw(e) ? ca.createStringInterpolator({
range: [0, 1],
output: [e, e]
})(1) : e;
}
function OHe(e) {
for (const t in e) return !0;
return !1;
}
function W5(e) {
return Pe.fun(e) || Pe.arr(e) && Pe.obj(e[0]);
}
function D8(e, t) {
var r;
(r = e.ref) == null || r.delete(e), t == null || t.delete(e);
}
function SHe(e, t) {
var r;
t && e.ref !== t && ((r = e.ref) == null || r.delete(e), t.add(e), e.ref = t);
}
var EHe = {
default: { tension: 170, friction: 26 }
}, V5 = {
...EHe.default,
mass: 1,
damping: 1,
easing: eHe.linear,
clamp: !1
}, AHe = class {
constructor() {
this.velocity = 0, Object.assign(this, V5);
}
};
function PHe(e, t, r) {
r && (r = { ...r }, F8(r, t), t = { ...r, ...t }), F8(e, t), Object.assign(e, t);
for (const i in V5)
e[i] == null && (e[i] = V5[i]);
let { frequency: n, damping: o } = e;
const { mass: a } = e;
return Pe.und(n) || (n < 0.01 && (n = 0.01), o < 0 && (o = 0), e.tension = Math.pow(2 * Math.PI / n, 2) * a, e.friction = 4 * Math.PI * o * a / n), e;
}
function F8(e, t) {
if (!Pe.und(t.decay))
e.duration = void 0;
else {
const r = !Pe.und(t.tension) || !Pe.und(t.friction);
(r || !Pe.und(t.frequency) || !Pe.und(t.damping) || !Pe.und(t.mass)) && (e.duration = void 0, e.decay = void 0), r && (e.frequency = void 0);
}
}
var L8 = [], CHe = class {
constructor() {
this.changed = !1, this.values = L8, this.toValues = null, this.fromValues = L8, this.config = new AHe(), this.immediate = !1;
}
};
function Gte(e, { key: t, props: r, defaultProps: n, state: o, actions: a }) {
return new Promise((i, s) => {
let u, c, d = ug(r.cancel ?? (n == null ? void 0 : n.cancel), t);
if (d)
p();
else {
Pe.und(r.pause) || (o.paused = ug(r.pause, t));
let y = n == null ? void 0 : n.pause;
y !== !0 && (y = o.paused || ug(y, t)), u = Zn(r.delay || 0, t), y ? (o.resumeQueue.add(f), a.pause()) : (a.resume(), f());
}
function l() {
o.resumeQueue.add(f), o.timeouts.delete(c), c.cancel(), u = c.time - st.now();
}
function f() {
u > 0 && !ca.skipAnimation ? (o.delayed = !0, c = st.setTimeout(p, u), o.pauseQueue.add(l), o.timeouts.add(c)) : p();
}
function p() {
o.delayed && (o.delayed = !1), o.pauseQueue.delete(l), o.timeouts.delete(c), e <= (o.cancelId || 0) && (d = !0);
try {
a.start({ ...r, callId: e, cancel: d }, i);
} catch (y) {
s(y);
}
}
});
}
var D6 = (e, t) => t.length == 1 ? t[0] : t.some((r) => r.cancelled) ? Nd(e.get()) : t.every((r) => r.noop) ? Ute(e.get()) : Zo(
e.get(),
t.every((r) => r.finished)
), Ute = (e) => ({
value: e,
noop: !0,
finished: !0,
cancelled: !1
}), Zo = (e, t, r = !1) => ({
value: e,
finished: t,
cancelled: r
}), Nd = (e) => ({
value: e,
cancelled: !0,
finished: !1
});
function Bte(e, t, r, n) {
const { callId: o, parentId: a, onRest: i } = t, { asyncTo: s, promise: u } = r;
return !a && e === s && !t.reset ? u : r.promise = (async () => {
r.asyncId = o, r.asyncTo = e;
const c = R6(
t,
(h, w) => (
// The `onRest` prop is only called when the `runAsync` promise is resolved.
w === "onRest" ? void 0 : h
)
);
let d, l;
const f = new Promise(
(h, w) => (d = h, l = w)
), p = (h) => {
const w = (
// The `cancel` prop or `stop` method was used.
o <= (r.cancelId || 0) && Nd(n) || // The async `to` prop was replaced.
o !== r.asyncId && Zo(n, !1)
);
if (w)
throw h.result = w, l(h), h;
}, y = (h, w) => {
const $ = new z8(), _ = new W8();
return (async () => {
if (ca.skipAnimation)
throw pb(r), _.result = Zo(n, !1), l(_), _;
p($);
const S = Pe.obj(h) ? { ...h } : { ...w, to: h };
S.parentId = o, di(c, (F, z) => {
Pe.und(S[z]) && (S[z] = F);
});
const b = await n.start(S);
return p($), r.paused && await new Promise((F) => {
r.resumeQueue.add(F);
}), b;
})();
};
let m;
if (ca.skipAnimation)
return pb(r), Zo(n, !1);
try {
let h;
Pe.arr(e) ? h = (async (w) => {
for (const $ of w)
await y($);
})(e) : h = Promise.resolve(e(y, n.stop.bind(n))), await Promise.all([h.then(d), f]), m = Zo(n.get(), !0, !1);
} catch (h) {
if (h instanceof z8)
m = h.result;
else if (h instanceof W8)
m = h.result;
else
throw h;
} finally {
o == r.asyncId && (r.asyncId = a, r.asyncTo = a ? s : void 0, r.promise = a ? u : void 0);
}
return Pe.fun(i) && st.batchedUpdates(() => {
i(m, n, n.item);
}), m;
})();
}
function pb(e, t) {
lg(e.timeouts, (r) => r.cancel()), e.pauseQueue.clear(), e.resumeQueue.clear(), e.asyncId = e.asyncTo = e.promise = void 0, t && (e.cancelId = t);
}
var z8 = class extends Error {
constructor() {
super(
"An async animation has been interrupted. You see this error because you forgot to use `await` or `.catch(...)` on its returned promise."
);
}
}, W8 = class extends Error {
constructor() {
super("SkipAnimationSignal");
}
}, H5 = (e) => e instanceof F6, NHe = 1, F6 = class extends Nte {
constructor() {
super(...arguments), this.id = NHe++, this._priority = 0;
}
get priority() {
return this._priority;
}
set priority(e) {
this._priority != e && (this._priority = e, this._onPriorityChange(e));
}
/** Get the current value */
get() {
const e = ba(this);
return e && e.getValue();
}
/** Create a spring that maps our value to another value */
to(...e) {
return ca.to(this, e);
}
/** @deprecated Use the `to` method instead. */
interpolate(...e) {
return lHe(), ca.to(this, e);
}
toJSON() {
return this.get();
}
observerAdded(e) {
e == 1 && this._attach();
}
observerRemoved(e) {
e == 0 && this._detach();
}
/** Called when the first child is added. */
_attach() {
}
/** Called when the last child is removed. */
_detach() {
}
/** Tell our children about our new value */
_onChange(e, t = !1) {
cb(this, {
type: "change",
parent: this,
value: e,
idle: t
});
}
/** Tell our children about our new priority */
_onPriorityChange(e) {
this.idle || gw.sort(this), cb(this, {
type: "priority",
parent: this,
priority: e
});
}
}, ef = Symbol.for("SpringPhase"), Yte = 1, qte = 2, Kte = 4, w_ = (e) => (e[ef] & Yte) > 0, Rl = (e) => (e[ef] & qte) > 0, Zm = (e) => (e[ef] & Kte) > 0, V8 = (e, t) => t ? e[ef] |= qte | Yte : e[ef] &= -3, H8 = (e, t) => t ? e[ef] |= Kte : e[ef] &= -5, THe = class extends F6 {
constructor(e, t) {
if (super(), this.animation = new CHe(), this.defaultProps = {}, this._state = {
paused: !1,
delayed: !1,
pauseQueue: /* @__PURE__ */ new Set(),
resumeQueue: /* @__PURE__ */ new Set(),
timeouts: /* @__PURE__ */ new Set()
}, this._pendingCalls = /* @__PURE__ */ new Set(), this._lastCallId = 0, this._lastToId = 0, this._memoizedDuration = 0, !Pe.und(e) || !Pe.und(t)) {
const r = Pe.obj(e) ? { ...e } : { ...t, from: e };
Pe.und(r.default) && (r.default = !0), this.start(r);
}
}
/** Equals true when not advancing on each frame. */
get idle() {
return !(Rl(this) || this._state.asyncTo) || Zm(this);
}
get goal() {
return Qn(this.animation.to);
}
get velocity() {
const e = ba(this);
return e instanceof ww ? e.lastVelocity || 0 : e.getPayload().map((t) => t.lastVelocity || 0);
}
/**
* When true, this value has been animated at least once.
*/
get hasAnimated() {
return w_(this);
}
/**
* When true, this value has an unfinished animation,
* which is either active or paused.
*/
get isAnimating() {
return Rl(this);
}
/**
* When true, all current and future animations are paused.
*/
get isPaused() {
return Zm(this);
}
/**
*
*
*/
get isDelayed() {
return this._state.delayed;
}
/** Advance the current animation by a number of milliseconds */
advance(e) {
let t = !0, r = !1;
const n = this.animation;
let { toValues: o } = n;
const { config: a } = n, i = xw(n.to);
!i && Ao(n.to) && (o = Mn(Qn(n.to))), n.values.forEach((c, d) => {
if (c.done) return;
const l = (
// Animated strings always go from 0 to 1.
c.constructor == v0 ? 1 : i ? i[d].lastPosition : o[d]
);
let f = n.immediate, p = l;
if (!f) {
if (p = c.lastPosition, a.tension <= 0) {
c.done = !0;
return;
}
let y = c.elapsedTime += e;
const m = n.fromValues[d], h = c.v0 != null ? c.v0 : c.v0 = Pe.arr(a.velocity) ? a.velocity[d] : a.velocity;
let w;
const $ = a.precision || (m == l ? 5e-3 : Math.min(1, Math.abs(l - m) * 1e-3));
if (Pe.und(a.duration))
if (a.decay) {
const _ = a.decay === !0 ? 0.998 : a.decay, S = Math.exp(-(1 - _) * y);
p = m + h / (1 - _) * (1 - S), f = Math.abs(c.lastPosition - p) <= $, w = h * S;
} else {
w = c.lastVelocity == null ? h : c.lastVelocity;
const _ = a.restVelocity || $ / 10, S = a.clamp ? 0 : a.bounce, b = !Pe.und(S), F = m == l ? c.v0 > 0 : m < l;
let z, q = !1;
const Y = 1, B = Math.ceil(e / Y);
for (let Z = 0; Z < B && (z = Math.abs(w) > _, !(!z && (f = Math.abs(l - p) <= $, f))); ++Z) {
b && (q = p == l || p > l == F, q && (w = -w * S, p = l));
const M = -a.tension * 1e-6 * (p - l), te = -a.friction * 1e-3 * w, G = (M + te) / a.mass;
w = w + G * Y, p = p + w * Y;
}
}
else {
let _ = 1;
a.duration > 0 && (this._memoizedDuration !== a.duration && (this._memoizedDuration = a.duration, c.durationProgress > 0 && (c.elapsedTime = a.duration * c.durationProgress, y = c.elapsedTime += e)), _ = (a.progress || 0) + y / this._memoizedDuration, _ = _ > 1 ? 1 : _ < 0 ? 0 : _, c.durationProgress = _), p = m + a.easing(_) * (l - m), w = (p - c.lastPosition) / e, f = _ == 1;
}
c.lastVelocity = w, Number.isNaN(p) && (console.warn("Got NaN while animating:", this), f = !0);
}
i && !i[d].done && (f = !1), f ? c.done = !0 : t = !1, c.setValue(p, a.round) && (r = !0);
});
const s = ba(this), u = s.getValue();
if (t) {
const c = Qn(n.to);
(u !== c || r) && !a.decay ? (s.setValue(c), this._onChange(c)) : r && a.decay && this._onChange(u), this._stop();
} else r && this._onChange(u);
}
/** Set the current value, while stopping the current animation */
set(e) {
return st.batchedUpdates(() => {
this._stop(), this._focus(e), this._set(e);
}), this;
}
/**
* Freeze the active animation in time, as well as any updates merged
* before `resume` is called.
*/
pause() {
this._update({ pause: !0 });
}
/** Resume the animation if paused. */
resume() {
this._update({ pause: !1 });
}
/** Skip to the end of the current animation. */
finish() {
if (Rl(this)) {
const { to: e, config: t } = this.animation;
st.batchedUpdates(() => {
this._onStart(), t.decay || this._set(e, !1), this._stop();
});
}
return this;
}
/** Push props into the pending queue. */
update(e) {
return (this.queue || (this.queue = [])).push(e), this;
}
start(e, t) {
let r;
return Pe.und(e) ? (r = this.queue || [], this.queue = []) : r = [Pe.obj(e) ? e : { ...t, to: e }], Promise.all(
r.map((n) => this._update(n))
).then((n) => D6(this, n));
}
/**
* Stop the current animation, and cancel any delayed updates.
*
* Pass `true` to call `onRest` with `cancelled: true`.
*/
stop(e) {
const { to: t } = this.animation;
return this._focus(this.get()), pb(this._state, e && this._lastCallId), st.batchedUpdates(() => this._stop(t, e)), this;
}
/** Restart the animation. */
reset() {
this._update({ reset: !0 });
}
/** @internal */
eventObserved(e) {
e.type == "change" ? this._start() : e.type == "priority" && (this.priority = e.priority + 1);
}
/**
* Parse the `to` and `from` range from the given `props` object.
*
* This also ensures the initial value is available to animated components
* during the render phase.
*/
_prepareNode(e) {
const t = this.key || "";
let { to: r, from: n } = e;
r = Pe.obj(r) ? r[t] : r, (r == null || W5(r)) && (r = void 0), n = Pe.obj(n) ? n[t] : n, n == null && (n = void 0);
const o = { to: r, from: n };
return w_(this) || (e.reverse && ([r, n] = [n, r]), n = Qn(n), Pe.und(n) ? ba(this) || this._set(r) : this._set(n)), o;
}
/** Every update is processed by this method before merging. */
_update({ ...e }, t) {
const { key: r, defaultProps: n } = this;
e.default && Object.assign(
n,
R6(
e,
(i, s) => /^on/.test(s) ? Vte(i, r) : i
)
), U8(this, e, "onProps"), th(this, "onProps", e, this);
const o = this._prepareNode(e);
if (Object.isFrozen(this))
throw Error(
"Cannot animate a `SpringValue` object that is frozen. Did you forget to pass your component to `animated(...)` before animating its props?"
);
const a = this._state;
return Gte(++this._lastCallId, {
key: r,
props: e,
defaultProps: n,
state: a,
actions: {
pause: () => {
Zm(this) || (H8(this, !0), wh(a.pauseQueue), th(
this,
"onPause",
Zo(this, eh(this, this.animation.to)),
this
));
},
resume: () => {
Zm(this) && (H8(this, !1), Rl(this) && this._resume(), wh(a.resumeQueue), th(
this,
"onResume",
Zo(this, eh(this, this.animation.to)),
this
));
},
start: this._merge.bind(this, o)
}
}).then((i) => {
if (e.loop && i.finished && !(t && i.noop)) {
const s = Xte(e);
if (s)
return this._update(s, !0);
}
return i;
});
}
/** Merge props into the current animation */
_merge(e, t, r) {
if (t.cancel)
return this.stop(!0), r(Nd(this));
const n = !Pe.und(e.to), o = !Pe.und(e.from);
if (n || o)
if (t.callId > this._lastToId)
this._lastToId = t.callId;
else
return r(Nd(this));
const { key: a, defaultProps: i, animation: s } = this, { to: u, from: c } = s;
let { to: d = u, from: l = c } = e;
o && !n && (!t.default || Pe.und(d)) && (d = l), t.reverse && ([d, l] = [l, d]);
const f = !Ri(l, c);
f && (s.from = l), l = Qn(l);
const p = !Ri(d, u);
p && this._focus(d);
const y = W5(t.to), { config: m } = s, { decay: h, velocity: w } = m;
(n || o) && (m.velocity = 0), t.config && !y && PHe(
m,
Zn(t.config, a),
// Avoid calling the same "config" prop twice.
t.config !== i.config ? Zn(i.config, a) : void 0
);
let $ = ba(this);
if (!$ || Pe.und(d))
return r(Zo(this, !0));
const _ = (
// When `reset` is undefined, the `from` prop implies `reset: true`,
// except for declarative updates. When `reset` is defined, there
// must exist a value to animate from.
Pe.und(t.reset) ? o && !t.default : !Pe.und(l) && ug(t.reset, a)
), S = _ ? l : this.get(), b = db(d), F = Pe.num(b) || Pe.arr(b) || vw(b), z = !y && (!F || ug(i.immediate || t.immediate, a));
if (p) {
const Z = z5(d);
if (Z !== $.constructor)
if (z)
$ = this._set(b);
else
throw Error(
`Cannot animate between ${$.constructor.name} and ${Z.name}, as the "to" prop suggests`
);
}
const q = $.constructor;
let Y = Ao(d), B = !1;
if (!Y) {
const Z = _ || !w_(this) && f;
(p || Z) && (B = Ri(db(S), b), Y = !B), (!Ri(s.immediate, z) && !z || !Ri(m.decay, h) || !Ri(m.velocity, w)) && (Y = !0);
}
if (B && Rl(this) && (s.changed && !_ ? Y = !0 : Y || this._stop(u)), !y && ((Y || Ao(u)) && (s.values = $.getPayload(), s.toValues = Ao(d) ? null : q == v0 ? [1] : Mn(b)), s.immediate != z && (s.immediate = z, !z && !_ && this._set(u)), Y)) {
const { onRest: Z } = s;
$t(IHe, (te) => U8(this, t, te));
const M = Zo(this, eh(this, u));
wh(this._pendingCalls, M), this._pendingCalls.add(r), s.changed && st.batchedUpdates(() => {
var te;
s.changed = !_, Z == null || Z(M, this), _ ? Zn(i.onRest, M) : (te = s.onStart) == null || te.call(s, M, this);
});
}
_ && this._set(S), y ? r(Bte(t.to, t, this._state, this)) : Y ? this._start() : Rl(this) && !p ? this._pendingCalls.add(r) : r(Ute(S));
}
/** Update the `animation.to` value, which might be a `FluidValue` */
_focus(e) {
const t = this.animation;
e !== t.to && (T8(this) && this._detach(), t.to = e, T8(this) && this._attach());
}
_attach() {
let e = 0;
const { to: t } = this.animation;
Ao(t) && (Cp(t, this), H5(t) && (e = t.priority + 1)), this.priority = e;
}
_detach() {
const { to: e } = this.animation;
Ao(e) && ub(e, this);
}
/**
* Update the current value from outside the frameloop,
* and return the `Animated` node.
*/
_set(e, t = !0) {
const r = Qn(e);
if (!Pe.und(r)) {
const n = ba(this);
if (!n || !Ri(r, n.getValue())) {
const o = z5(r);
!n || n.constructor != o ? j6(this, o.create(r)) : n.setValue(r), n && st.batchedUpdates(() => {
this._onChange(r, t);
});
}
}
return ba(this);
}
_onStart() {
const e = this.animation;
e.changed || (e.changed = !0, th(
this,
"onStart",
Zo(this, eh(this, e.to)),
this
));
}
_onChange(e, t) {
t || (this._onStart(), Zn(this.animation.onChange, e, this)), Zn(this.defaultProps.onChange, e, this), super._onChange(e, t);
}
// This method resets the animation state (even if already animating) to
// ensure the latest from/to range is used, and it also ensures this spring
// is added to the frameloop.
_start() {
const e = this.animation;
ba(this).reset(Qn(e.to)), e.immediate || (e.fromValues = e.values.map((t) => t.lastPosition)), Rl(this) || (V8(this, !0), Zm(this) || this._resume());
}
_resume() {
ca.skipAnimation ? this.finish() : gw.start(this);
}
/**
* Exit the frameloop and notify `onRest` listeners.
*
* Always wrap `_stop` calls with `batchedUpdates`.
*/
_stop(e, t) {
if (Rl(this)) {
V8(this, !1);
const r = this.animation;
$t(r.values, (o) => {
o.done = !0;
}), r.toValues && (r.onChange = r.onPause = r.onResume = void 0), cb(this, {
type: "idle",
parent: this
});
const n = t ? Nd(this.get()) : Zo(this.get(), eh(this, e ?? r.to));
wh(this._pendingCalls, n), r.changed && (r.changed = !1, th(this, "onRest", n, this));
}
}
};
function eh(e, t) {
const r = db(t), n = db(e.get());
return Ri(n, r);
}
function Xte(e, t = e.loop, r = e.to) {
const n = Zn(t);
if (n) {
const o = n !== !0 && M6(n), a = (o || e).reverse, i = !o || o.reset;
return w0({
...e,
loop: t,
// Avoid updating default props when looping.
default: !1,
// Never loop the `pause` prop.
pause: void 0,
// For the "reverse" prop to loop as expected, the "to" prop
// must be undefined. The "reverse" prop is ignored when the
// "to" prop is an array or function.
to: !a || W5(r) ? r : void 0,
// Ignore the "from" prop except on reset.
from: i ? e.from : void 0,
reset: i,
// The "loop" prop can return a "useSpring" props object to
// override any of the original props.
...o
});
}
}
function w0(e) {
const { to: t, from: r } = e = M6(e), n = /* @__PURE__ */ new Set();
return Pe.obj(t) && G8(t, n), Pe.obj(r) && G8(r, n), e.keys = n.size ? Array.from(n) : null, e;
}
function G8(e, t) {
di(e, (r, n) => r != null && t.add(n));
}
var IHe = [
"onStart",
"onRest",
"onChange",
"onPause",
"onResume"
];
function U8(e, t, r) {
e.animation[r] = t[r] !== Hte(t, r) ? Vte(t[r], e.key) : void 0;
}
function th(e, t, ...r) {
var n, o, a, i;
(o = (n = e.animation)[t]) == null || o.call(n, ...r), (i = (a = e.defaultProps)[t]) == null || i.call(a, ...r);
}
var jHe = ["onStart", "onChange", "onRest"], RHe = 1, MHe = class {
constructor(e, t) {
this.id = RHe++, this.springs = {}, this.queue = [], this._lastAsyncId = 0, this._active = /* @__PURE__ */ new Set(), this._changed = /* @__PURE__ */ new Set(), this._started = !1, this._state = {
paused: !1,
pauseQueue: /* @__PURE__ */ new Set(),
resumeQueue: /* @__PURE__ */ new Set(),
timeouts: /* @__PURE__ */ new Set()
}, this._events = {
onStart: /* @__PURE__ */ new Map(),
onChange: /* @__PURE__ */ new Map(),
onRest: /* @__PURE__ */ new Map()
}, this._onFrame = this._onFrame.bind(this), t && (this._flush = t), e && this.start({ default: !0, ...e });
}
/**
* Equals `true` when no spring values are in the frameloop, and
* no async animation is currently active.
*/
get idle() {
return !this._state.asyncTo && Object.values(this.springs).every((e) => e.idle && !e.isDelayed && !e.isPaused);
}
get item() {
return this._item;
}
set item(e) {
this._item = e;
}
/** Get the current values of our springs */
get() {
const e = {};
return this.each((t, r) => e[r] = t.get()), e;
}
/** Set the current values without animating. */
set(e) {
for (const t in e) {
const r = e[t];
Pe.und(r) || this.springs[t].set(r);
}
}
/** Push an update onto the queue of each value. */
update(e) {
return e && this.queue.push(w0(e)), this;
}
/**
* Start the queued animations for every spring, and resolve the returned
* promise once all queued animations have finished or been cancelled.
*
* When you pass a queue (instead of nothing), that queue is used instead of
* the queued animations added with the `update` method, which are left alone.
*/
start(e) {
let { queue: t } = this;
return e ? t = Mn(e).map(w0) : this.queue = [], this._flush ? this._flush(this, t) : (ere(this, t), DHe(this, t));
}
/** @internal */
stop(e, t) {
if (e !== !!e && (t = e), t) {
const r = this.springs;
$t(Mn(t), (n) => r[n].stop(!!e));
} else
pb(this._state, this._lastAsyncId), this.each((r) => r.stop(!!e));
return this;
}
/** Freeze the active animation in time */
pause(e) {
if (Pe.und(e))
this.start({ pause: !0 });
else {
const t = this.springs;
$t(Mn(e), (r) => t[r].pause());
}
return this;
}
/** Resume the animation if paused. */
resume(e) {
if (Pe.und(e))
this.start({ pause: !1 });
else {
const t = this.springs;
$t(Mn(e), (r) => t[r].resume());
}
return this;
}
/** Call a function once per spring value */
each(e) {
di(this.springs, e);
}
/** @internal Called at the end of every animation frame */
_onFrame() {
const { onStart: e, onChange: t, onRest: r } = this._events, n = this._active.size > 0, o = this._changed.size > 0;
(n && !this._started || o && !this._started) && (this._started = !0, lg(e, ([s, u]) => {
u.value = this.get(), s(u, this, this._item);
}));
const a = !n && this._started, i = o || a && r.size ? this.get() : null;
o && t.size && lg(t, ([s, u]) => {
u.value = i, s(u, this, this._item);
}), a && (this._started = !1, lg(r, ([s, u]) => {
u.value = i, s(u, this, this._item);
}));
}
/** @internal */
eventObserved(e) {
if (e.type == "change")
this._changed.add(e.parent), e.idle || this._active.add(e.parent);
else if (e.type == "idle")
this._active.delete(e.parent);
else return;
st.onFrame(this._onFrame);
}
};
function DHe(e, t) {
return Promise.all(t.map((r) => Jte(e, r))).then(
(r) => D6(e, r)
);
}
async function Jte(e, t, r) {
const { keys: n, to: o, from: a, loop: i, onRest: s, onResolve: u } = t, c = Pe.obj(t.default) && t.default;
i && (t.loop = !1), o === !1 && (t.to = null), a === !1 && (t.from = null);
const d = Pe.arr(o) || Pe.fun(o) ? o : void 0;
d ? (t.to = void 0, t.onRest = void 0, c && (c.onRest = void 0)) : $t(jHe, (m) => {
const h = t[m];
if (Pe.fun(h)) {
const w = e._events[m];
t[m] = ({ finished: $, cancelled: _ }) => {
const S = w.get(h);
S ? ($ || (S.finished = !1), _ && (S.cancelled = !0)) : w.set(h, {
value: null,
finished: $ || !1,
cancelled: _ || !1
});
}, c && (c[m] = t[m]);
}
});
const l = e._state;
t.pause === !l.paused ? (l.paused = t.pause, wh(t.pause ? l.pauseQueue : l.resumeQueue)) : l.paused && (t.pause = !0);
const f = (n || Object.keys(e.springs)).map(
(m) => e.springs[m].start(t)
), p = t.cancel === !0 || Hte(t, "cancel") === !0;
(d || p && l.asyncId) && f.push(
Gte(++e._lastAsyncId, {
props: t,
state: l,
actions: {
pause: F5,
resume: F5,
start(m, h) {
p ? (pb(l, e._lastAsyncId), h(Nd(e))) : (m.onRest = s, h(
Bte(
d,
m,
l,
e
)
));
}
}
})
), l.paused && await new Promise((m) => {
l.resumeQueue.add(m);
});
const y = D6(e, await Promise.all(f));
if (i && y.finished && !(r && y.noop)) {
const m = Xte(t, i, o);
if (m)
return ere(e, [m]), Jte(e, m, !0);
}
return u && st.batchedUpdates(() => u(y, e, e.item)), y;
}
function FHe(e, t) {
const r = { ...e.springs };
return t && $t(Mn(t), (n) => {
Pe.und(n.keys) && (n = w0(n)), Pe.obj(n.to) || (n = { ...n, to: void 0 }), Zte(r, n, (o) => Qte(o));
}), LHe(e, r), r;
}
function LHe(e, t) {
di(t, (r, n) => {
e.springs[n] || (e.springs[n] = r, Cp(r, e));
});
}
function Qte(e, t) {
const r = new THe();
return r.key = e, t && Cp(r, t), r;
}
function Zte(e, t, r) {
t.keys && $t(t.keys, (n) => {
(e[n] || (e[n] = r(n)))._prepareNode(t);
});
}
function ere(e, t) {
$t(t, (r) => {
Zte(e.springs, r, (n) => Qte(n, e));
});
}
var zHe = V.createContext({
pause: !1,
immediate: !1
}), WHe = () => {
const e = [], t = function(n) {
uHe();
const o = [];
return $t(e, (a, i) => {
if (Pe.und(n))
o.push(a.start());
else {
const s = r(n, a, i);
s && o.push(a.start(s));
}
}), o;
};
t.current = e, t.add = function(n) {
e.includes(n) || e.push(n);
}, t.delete = function(n) {
const o = e.indexOf(n);
~o && e.splice(o, 1);
}, t.pause = function() {
return $t(e, (n) => n.pause(...arguments)), this;
}, t.resume = function() {
return $t(e, (n) => n.resume(...arguments)), this;
}, t.set = function(n) {
$t(e, (o, a) => {
const i = Pe.fun(n) ? n(a, o) : n;
i && o.set(i);
});
}, t.start = function(n) {
const o = [];
return $t(e, (a, i) => {
if (Pe.und(n))
o.push(a.start());
else {
const s = this._getProps(n, a, i);
s && o.push(a.start(s));
}
}), o;
}, t.stop = function() {
return $t(e, (n) => n.stop(...arguments)), this;
}, t.update = function(n) {
return $t(e, (o, a) => o.update(this._getProps(n, o, a))), this;
};
const r = function(n, o, a) {
return Pe.fun(n) ? n(a, o) : n;
};
return t._getProps = r, t;
};
function B8(e, t, r) {
const n = Pe.fun(t) && t, {
reset: o,
sort: a,
trail: i = 0,
expires: s = !0,
exitBeforeEnter: u = !1,
onDestroyed: c,
ref: d,
config: l
} = n ? n() : t, f = Ie(
() => n || arguments.length == 3 ? WHe() : void 0,
[]
), p = Mn(e), y = [], m = ne(null), h = o ? null : m.current;
Kf(() => {
m.current = y;
}), Dte(() => ($t(y, (G) => {
f == null || f.add(G.ctrl), G.ctrl.ref = f;
}), () => {
$t(m.current, (G) => {
G.expired && clearTimeout(G.expirationId), D8(G.ctrl, f), G.ctrl.stop(!0);
});
}));
const w = HHe(p, n ? n() : t, h), $ = o && m.current || [];
Kf(
() => $t($, ({ ctrl: G, item: H, key: U }) => {
D8(G, f), Zn(c, H, U);
})
);
const _ = [];
if (h && $t(h, (G, H) => {
G.expired ? (clearTimeout(G.expirationId), $.push(G)) : (H = _[H] = w.indexOf(G.key), ~H && (y[H] = G));
}), $t(p, (G, H) => {
y[H] || (y[H] = {
key: w[H],
item: G,
phase: "mount",
ctrl: new MHe()
}, y[H].ctrl.item = G);
}), _.length) {
let G = -1;
const { leave: H } = n ? n() : t;
$t(_, (U, W) => {
const X = h[W];
~U ? (G = y.indexOf(X), y[G] = { ...X, item: p[U] }) : H && y.splice(++G, 0, X);
});
}
Pe.fun(a) && y.sort((G, H) => a(G.item, H.item));
let S = -i;
const b = Mte(), F = R6(t), z = /* @__PURE__ */ new Map(), q = ne(/* @__PURE__ */ new Map()), Y = ne(!1);
$t(y, (G, H) => {
const U = G.key, W = G.phase, X = n ? n() : t;
let ee, v;
const g = Zn(X.delay || 0, U);
if (W == "mount")
ee = X.enter, v = "enter";
else {
const T = w.indexOf(U) < 0;
if (W != "leave")
if (T)
ee = X.leave, v = "leave";
else if (ee = X.update)
v = "update";
else return;
else if (!T)
ee = X.enter, v = "enter";
else return;
}
if (ee = Zn(ee, G.item, H), ee = Pe.obj(ee) ? M6(ee) : { to: ee }, !ee.config) {
const T = l || F.config;
ee.config = Zn(T, G.item, H, v);
}
S += i;
const O = {
...F,
// we need to add our props.delay value you here.
delay: g + S,
ref: d,
immediate: X.immediate,
// This prevents implied resets.
reset: !1,
// Merge any phase-specific props.
...ee
};
if (v == "enter" && Pe.und(O.from)) {
const T = n ? n() : t, N = Pe.und(T.initial) || h ? T.from : T.initial;
O.from = Zn(N, G.item, H);
}
const { onResolve: P } = O;
O.onResolve = (T) => {
Zn(P, T);
const N = m.current, C = N.find((I) => I.key === U);
if (C && !(T.cancelled && C.phase != "update") && C.ctrl.idle) {
const I = N.every((j) => j.ctrl.idle);
if (C.phase == "leave") {
const j = Zn(s, C.item);
if (j !== !1) {
const R = j === !0 ? 0 : j;
if (C.expired = !0, !I && R > 0) {
R <= 2147483647 && (C.expirationId = setTimeout(b, R));
return;
}
}
}
I && N.some((j) => j.expired) && (q.current.delete(C), u && (Y.current = !0), b());
}
};
const A = FHe(G.ctrl, O);
v === "leave" && u ? q.current.set(G, { phase: v, springs: A, payload: O }) : z.set(G, { phase: v, springs: A, payload: O });
});
const B = nt(zHe), Z = pHe(B), M = B !== Z && OHe(B);
Kf(() => {
M && $t(y, (G) => {
G.ctrl.start({ default: B });
});
}, [B]), $t(z, (G, H) => {
if (q.current.size) {
const U = y.findIndex((W) => W.key === H.key);
y.splice(U, 1);
}
}), Kf(
() => {
$t(
q.current.size ? q.current : z,
({ phase: G, payload: H }, U) => {
const { ctrl: W } = U;
U.phase = G, f == null || f.add(W), M && G == "enter" && W.start({ default: B }), H && (SHe(W, H.ref), (W.ref || f) && !Y.current ? W.update(H) : (W.start(H), Y.current && (Y.current = !1)));
}
);
},
o ? void 0 : r
);
const te = (G) => /* @__PURE__ */ V.createElement(V.Fragment, null, y.map((H, U) => {
const { springs: W } = z.get(H) || H.ctrl, X = G({ ...W }, H.item, H, U);
return X && X.type ? /* @__PURE__ */ V.createElement(
X.type,
{
...X.props,
key: Pe.str(H.key) || Pe.num(H.key) ? H.key : H.ctrl.id,
ref: X.ref
}
) : X;
}));
return f ? [te, f] : te;
}
var VHe = 1;
function HHe(e, { key: t, keys: r = t }, n) {
if (r === null) {
const o = /* @__PURE__ */ new Set();
return e.map((a) => {
const i = n && n.find(
(s) => s.item === a && s.phase !== "leave" && !o.has(s)
);
return i ? (o.add(i), i.key) : VHe++;
});
}
return Pe.und(r) ? e : Pe.fun(r) ? e.map(r) : Mn(r);
}
var GHe = class extends F6 {
constructor(e, t) {
super(), this.source = e, this.idle = !0, this._active = /* @__PURE__ */ new Set(), this.calc = sb(...t);
const r = this._get(), n = z5(r);
j6(this, n.create(r));
}
advance(e) {
const t = this._get(), r = this.get();
Ri(t, r) || (ba(this).setValue(t), this._onChange(t, this.idle)), !this.idle && Y8(this._active) && $_(this);
}
_get() {
const e = Pe.arr(this.source) ? this.source.map(Qn) : Mn(Qn(this.source));
return this.calc(...e);
}
_start() {
this.idle && !Y8(this._active) && (this.idle = !1, $t(xw(this), (e) => {
e.done = !1;
}), ca.skipAnimation ? (st.batchedUpdates(() => this.advance()), $_(this)) : gw.start(this));
}
// Observe our sources only when we're observed.
_attach() {
let e = 1;
$t(Mn(this.source), (t) => {
Ao(t) && Cp(t, this), H5(t) && (t.idle || this._active.add(t), e = Math.max(e, t.priority + 1));
}), this.priority = e, this._start();
}
// Stop observing our sources once we have no observers.
_detach() {
$t(Mn(this.source), (e) => {
Ao(e) && ub(e, this);
}), this._active.clear(), $_(this);
}
/** @internal */
eventObserved(e) {
e.type == "change" ? e.idle ? this.advance() : (this._active.add(e.parent), this._start()) : e.type == "idle" ? this._active.delete(e.parent) : e.type == "priority" && (this.priority = Mn(this.source).reduce(
(t, r) => Math.max(t, (H5(r) ? r.priority : 0) + 1),
0
));
}
};
function UHe(e) {
return e.idle !== !1;
}
function Y8(e) {
return !e.size || Array.from(e).every(UHe);
}
function $_(e) {
e.idle || (e.idle = !0, $t(xw(e), (t) => {
t.done = !0;
}), cb(e, {
type: "idle",
parent: e
}));
}
ca.assign({
createStringInterpolator: jte,
to: (e, t) => new GHe(e, t)
});
var tre = /^--/;
function BHe(e, t) {
return t == null || typeof t == "boolean" || t === "" ? "" : typeof t == "number" && t !== 0 && !tre.test(e) && !(fg.hasOwnProperty(e) && fg[e]) ? t + "px" : ("" + t).trim();
}
var q8 = {};
function YHe(e, t) {
if (!e.nodeType || !e.setAttribute)
return !1;
const r = e.nodeName === "filter" || e.parentNode && e.parentNode.nodeName === "filter", {
className: n,
style: o,
children: a,
scrollTop: i,
scrollLeft: s,
viewBox: u,
...c
} = t, d = Object.values(c), l = Object.keys(c).map(
(f) => r || e.hasAttribute(f) ? f : q8[f] || (q8[f] = f.replace(
/([A-Z])/g,
// Attributes are written in dash case
(p) => "-" + p.toLowerCase()
))
);
a !== void 0 && (e.textContent = a);
for (const f in o)
if (o.hasOwnProperty(f)) {
const p = BHe(f, o[f]);
tre.test(f) ? e.style.setProperty(f, p) : e.style[f] = p;
}
l.forEach((f, p) => {
e.setAttribute(f, d[p]);
}), n !== void 0 && (e.className = n), i !== void 0 && (e.scrollTop = i), s !== void 0 && (e.scrollLeft = s), u !== void 0 && e.setAttribute("viewBox", u);
}
var fg = {
animationIterationCount: !0,
borderImageOutset: !0,
borderImageSlice: !0,
borderImageWidth: !0,
boxFlex: !0,
boxFlexGroup: !0,
boxOrdinalGroup: !0,
columnCount: !0,
columns: !0,
flex: !0,
flexGrow: !0,
flexPositive: !0,
flexShrink: !0,
flexNegative: !0,
flexOrder: !0,
gridRow: !0,
gridRowEnd: !0,
gridRowSpan: !0,
gridRowStart: !0,
gridColumn: !0,
gridColumnEnd: !0,
gridColumnSpan: !0,
gridColumnStart: !0,
fontWeight: !0,
lineClamp: !0,
lineHeight: !0,
opacity: !0,
order: !0,
orphans: !0,
tabSize: !0,
widows: !0,
zIndex: !0,
zoom: !0,
// SVG-related properties
fillOpacity: !0,
floodOpacity: !0,
stopOpacity: !0,
strokeDasharray: !0,
strokeDashoffset: !0,
strokeMiterlimit: !0,
strokeOpacity: !0,
strokeWidth: !0
}, qHe = (e, t) => e + t.charAt(0).toUpperCase() + t.substring(1), KHe = ["Webkit", "Ms", "Moz", "O"];
fg = Object.keys(fg).reduce((e, t) => (KHe.forEach((r) => e[qHe(r, t)] = e[t]), e), fg);
var XHe = /^(matrix|translate|scale|rotate|skew)/, JHe = /^(translate)/, QHe = /^(rotate|skew)/, k_ = (e, t) => Pe.num(e) && e !== 0 ? e + t : e, l1 = (e, t) => Pe.arr(e) ? e.every((r) => l1(r, t)) : Pe.num(e) ? e === t : parseFloat(e) === t, ZHe = class extends $w {
constructor({ x: e, y: t, z: r, ...n }) {
const o = [], a = [];
(e || t || r) && (o.push([e || 0, t || 0, r || 0]), a.push((i) => [
`translate3d(${i.map((s) => k_(s, "px")).join(",")})`,
// prettier-ignore
l1(i, 0)
])), di(n, (i, s) => {
if (s === "transform")
o.push([i || ""]), a.push((u) => [u, u === ""]);
else if (XHe.test(s)) {
if (delete n[s], Pe.und(i)) return;
const u = JHe.test(s) ? "px" : QHe.test(s) ? "deg" : "";
o.push(Mn(i)), a.push(
s === "rotate3d" ? ([c, d, l, f]) => [
`rotate3d(${c},${d},${l},${k_(f, u)})`,
l1(f, 0)
] : (c) => [
`${s}(${c.map((d) => k_(d, u)).join(",")})`,
l1(c, s.startsWith("scale") ? 1 : 0)
]
);
}
}), o.length && (n.transform = new eGe(o, a)), super(n);
}
}, eGe = class extends Nte {
constructor(e, t) {
super(), this.inputs = e, this.transforms = t, this._value = null;
}
get() {
return this._value || (this._value = this._get());
}
_get() {
let e = "", t = !0;
return $t(this.inputs, (r, n) => {
const o = Qn(r[0]), [a, i] = this.transforms[n](
Pe.arr(o) ? o : r.map(Qn)
);
e += " " + a, t = t && i;
}), t ? "none" : e;
}
// Start observing our inputs once we have an observer.
observerAdded(e) {
e == 1 && $t(
this.inputs,
(t) => $t(
t,
(r) => Ao(r) && Cp(r, this)
)
);
}
// Stop observing our inputs once we have no observers.
observerRemoved(e) {
e == 0 && $t(
this.inputs,
(t) => $t(
t,
(r) => Ao(r) && ub(r, this)
)
);
}
eventObserved(e) {
e.type == "change" && (this._value = null), cb(this, e);
}
}, tGe = [
"a",
"abbr",
"address",
"area",
"article",
"aside",
"audio",
"b",
"base",
"bdi",
"bdo",
"big",
"blockquote",
"body",
"br",
"button",
"canvas",
"caption",
"cite",
"code",
"col",
"colgroup",
"data",
"datalist",
"dd",
"del",
"details",
"dfn",
"dialog",
"div",
"dl",
"dt",
"em",
"embed",
"fieldset",
"figcaption",
"figure",
"footer",
"form",
"h1",
"h2",
"h3",
"h4",
"h5",
"h6",
"head",
"header",
"hgroup",
"hr",
"html",
"i",
"iframe",
"img",
"input",
"ins",
"kbd",
"keygen",
"label",
"legend",
"li",
"link",
"main",
"map",
"mark",
"menu",
"menuitem",
"meta",
"meter",
"nav",
"noscript",
"object",
"ol",
"optgroup",
"option",
"output",
"p",
"param",
"picture",
"pre",
"progress",
"q",
"rp",
"rt",
"ruby",
"s",
"samp",
"script",
"section",
"select",
"small",
"source",
"span",
"strong",
"style",
"sub",
"summary",
"sup",
"table",
"tbody",
"td",
"textarea",
"tfoot",
"th",
"thead",
"time",
"title",
"tr",
"track",
"u",
"ul",
"var",
"video",
"wbr",
// SVG
"circle",
"clipPath",
"defs",
"ellipse",
"foreignObject",
"g",
"image",
"line",
"linearGradient",
"mask",
"path",
"pattern",
"polygon",
"polyline",
"radialGradient",
"rect",
"stop",
"svg",
"text",
"tspan"
];
ca.assign({
batchedUpdates: Of,
createStringInterpolator: jte,
colors: VVe
});
var rGe = xHe(tGe, {
applyAnimatedValues: YHe,
createAnimatedStyle: (e) => new ZHe(e),
// eslint-disable-next-line @typescript-eslint/no-unused-vars
getComponentProps: ({ scrollTop: e, scrollLeft: t, ...r }) => r
}), rre = rGe.animated;
/*!
* Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
* Copyright 2024 Fonticons, Inc.
*/
const nGe = {
prefix: "fas",
iconName: "down-left-and-up-right-to-center",
icon: [512, 512, ["compress-alt"], "f422", "M439 7c9.4-9.4 24.6-9.4 33.9 0l32 32c9.4 9.4 9.4 24.6 0 33.9l-87 87 39 39c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8l-144 0c-13.3 0-24-10.7-24-24l0-144c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l39 39L439 7zM72 272l144 0c13.3 0 24 10.7 24 24l0 144c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39L73 505c-9.4 9.4-24.6 9.4-33.9 0L7 473c-9.4-9.4-9.4-24.6 0-33.9l87-87L55 313c-6.9-6.9-8.9-17.2-5.2-26.2s12.5-14.8 22.2-14.8z"]
}, oGe = {
prefix: "fas",
iconName: "up-right-and-down-left-from-center",
icon: [512, 512, ["expand-alt"], "f424", "M344 0L488 0c13.3 0 24 10.7 24 24l0 144c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39-87 87c-9.4 9.4-24.6 9.4-33.9 0l-32-32c-9.4-9.4-9.4-24.6 0-33.9l87-87L327 41c-6.9-6.9-8.9-17.2-5.2-26.2S334.3 0 344 0zM168 512L24 512c-13.3 0-24-10.7-24-24L0 344c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l39 39 87-87c9.4-9.4 24.6-9.4 33.9 0l32 32c9.4 9.4 9.4 24.6 0 33.9l-87 87 39 39c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8z"]
};
var G5 = /* @__PURE__ */ ((e) => (e[e.NONE = 0] = "NONE", e[e.INPUT = 1] = "INPUT", e[e.PANEL = 2] = "PANEL", e[e.DIALOGUE = 3] = "DIALOGUE", e))(G5 || {}), aGe = Object.freeze({
// See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss
position: "absolute",
border: 0,
width: 1,
height: 1,
padding: 0,
margin: -1,
overflow: "hidden",
clip: "rect(0, 0, 0, 0)",
whiteSpace: "nowrap",
wordWrap: "normal"
}), iGe = "VisuallyHidden", nre = V.forwardRef(
(e, t) => /* @__PURE__ */ K(
bi.span,
{
...e,
ref: t,
style: { ...aGe, ...e.style }
}
)
);
nre.displayName = iGe;
var K8 = nre;
const mb = [], sGe = (e) => {
mb.push(e);
}, lGe = (e) => {
const t = mb.findIndex((r) => r.id === e);
t !== -1 && mb.splice(t, 1);
}, cGe = (e, t) => {
const r = mb.find((n) => n.id === e);
r && Object.assign(r, t);
}, uGe = () => mb.filter((e) => e.closeOnEsc).sort((e, t) => t.zIndex - e.zIndex)[0];
typeof window < "u" && !window.__modalEscListenerInstalled && (window.__modalEscListenerInstalled = !0, window.addEventListener("keydown", (e) => {
if (e.key !== "Escape" && e.key !== "Esc") return;
const t = uGe();
t && (e.preventDefault(), t.onClose());
}));
let rh = 70;
const fGe = ({
styles: e,
backdropClassName: t,
disableHotkeyInput: r,
enableHotkeyInput: n
}) => (ue(() => (r(G5.DIALOGUE), () => {
n(G5.DIALOGUE);
}), [r, n]), /* @__PURE__ */ K(PDe, { forceMount: !0, asChild: !0, children: /* @__PURE__ */ K(
rre.div,
{
className: ng("fixed inset-0 z-[69]", t),
style: {
opacity: e.opacity,
pointerEvents: "none",
background: "radial-gradient(800px 400px at 10% -10%, rgba(45,129,255,0.10), transparent), radial-gradient(600px 320px at 110% 110%, rgba(28,182,190,0.10), transparent), rgba(0,0,0,0.60)"
}
}
) })), U5 = ({ children: e }) => /* @__PURE__ */ K(rn, { children: e }), ore = zt(
void 0
), L6 = ({ className: e, size: t = "md" }) => {
const r = nt(ore);
if (!r) return null;
const { expanded: n, toggleExpanded: o } = r;
return /* @__PURE__ */ K(
"button",
{
type: "button",
"aria-label": n ? "Restore modal size" : "Expand modal",
onClick: o,
className: ng(
"flex items-center justify-center rounded-full bg-black/40 text-white/60 transition-all hover:bg-black/70 hover:text-white",
{
sm: "h-5 w-5 text-sm",
md: "h-7 w-7 text-md",
lg: "h-9 w-9 text-xl"
}[t],
"relative z-[70]",
e
),
children: /* @__PURE__ */ K(
ob,
{
icon: n ? nGe : oGe
}
)
}
);
};
L6.displayName = "ModalExpandButton";
const kw = ({
isOpen: e,
title: t,
titleIcon: r,
onTitleIconClick: n,
onClose: o,
enableHotkeyInput: a = () => {
},
disableHotkeyInput: i = () => {
},
className: s,
backdropClassName: u,
width: c,
children: d,
childPadding: l = !0,
titleIconClassName: f,
showClose: p = !0,
draggable: y = !1,
resizable: m = !1,
initialPosition: h,
closeOnOutsideClick: w = !0,
closeOnEsc: $ = !0,
allowBackgroundInteraction: _ = !1,
expandable: S = !1,
accessibleTitle: b,
accessibleDescription: F
}) => {
const [z, q] = de(
null
), [Y, B] = de(!1), [Z, M] = de(!1), te = ne({ x: 0, y: 0 }), G = ne({ x: 0, y: 0 }), H = ne(null), U = ne(null), W = ne(null), [X, ee] = de(() => ++rh), [v, g] = de(!1), O = ne(null), P = B8(e, {
from: {
opacity: 0,
transform: "scale(0.95) translateY(-10px)"
},
enter: {
opacity: 1,
transform: "scale(1) translateY(0px)"
},
leave: {
opacity: 0,
transform: "scale(0.95) translateY(10px)"
},
config: {
tension: 300,
friction: 30,
mass: 0.8
}
}), A = B8(e, {
from: { opacity: 0 },
enter: { opacity: 1 },
leave: { opacity: 0 },
config: {
tension: 280,
friction: 25
}
});
ue(() => {
v ? (U.current && (O.current = { ...U.current }), q({ x: 0, y: 0 }), U.current = { x: 0, y: 0 }, H.current && (H.current.style.left = "0px", H.current.style.top = "0px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X))) : O.current && (q({ ...O.current }), U.current = { ...O.current }, H.current && (H.current.style.left = O.current.x + "px", H.current.style.top = O.current.y + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X)));
}, [v, X]);
const T = () => g((ce) => !ce);
ue(() => {
e ? W.current ? (q({ ...W.current }), U.current = { ...W.current }, H.current && (H.current.style.left = W.current.x + "px", H.current.style.top = W.current.y + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X))) : h && (q({ ...h }), U.current = { ...h }, H.current && (H.current.style.left = h.x + "px", H.current.style.top = h.y + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X))) : U.current && (W.current = { ...U.current });
}, [e, X]), ue(() => {
if (!Y) return;
let ce = null;
const le = (ot) => {
if (!H.current) return;
const kt = ot.clientX - G.current.x, De = ot.clientY - G.current.y, Ze = te.current.x + kt, rt = te.current.y + De, Wt = H.current, { width: lt, height: $r } = Wt.getBoundingClientRect(), pn = window.innerWidth, ro = window.innerHeight, kr = 450, vo = -450, Mo = 0, Do = pn - lt + kr, yr = ro - $r + kr, Tn = Math.max(vo, Math.min(Ze, Do)), Fo = Math.max(Mo, Math.min(rt, yr));
U.current = { x: Tn, y: Fo }, H.current && (ce && cancelAnimationFrame(ce), ce = requestAnimationFrame(() => {
H.current && U.current && (H.current.style.left = U.current.x + "px", H.current.style.top = U.current.y + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X));
}));
}, fe = () => {
B(!1), U.current && q({ ...U.current });
};
return window.addEventListener("mousemove", le), window.addEventListener("mouseup", fe), () => {
window.removeEventListener("mousemove", le), window.removeEventListener("mouseup", fe), ce && cancelAnimationFrame(ce);
};
}, [Y, X]);
const N = (ce) => {
var le, fe;
if (!H.current) return;
v && g(!1), ce.preventDefault(), ce.stopPropagation();
const ot = H.current, { width: kt, height: De } = ot.getBoundingClientRect(), Ze = window.innerWidth, rt = window.innerHeight;
let Wt = ((le = U.current) == null ? void 0 : le.x) ?? (z == null ? void 0 : z.x), lt = ((fe = U.current) == null ? void 0 : fe.y) ?? (z == null ? void 0 : z.y);
(Wt === void 0 || lt === void 0) && (h ? (Wt = h.x, lt = h.y) : (Wt = (Ze - kt) / 2, lt = (rt - De) / 2)), te.current = { x: Wt, y: lt }, G.current = { x: ce.clientX, y: ce.clientY }, B(!0), !z && !U.current && (q({ x: Wt, y: lt }), U.current = { x: Wt, y: lt }, H.current && (H.current.style.left = Wt + "px", H.current.style.top = lt + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X)));
};
let C = d;
if (y) {
let ce = !1;
C = Array.isArray(d) ? d.map((le) => {
if (!ce && Fi(le) && (le.type === U5 || le.type.displayName === "ModalDragHandle")) {
ce = !0;
const fe = le;
return Li(fe, {
children: /* @__PURE__ */ K(
"div",
{
style: { cursor: "move", userSelect: "none" },
onMouseDown: N,
children: fe.props.children
}
)
});
}
return le;
}) : Fi(d) && (d.type === U5 || d.type.displayName === "ModalDragHandle") ? (() => {
const le = d;
return Li(le, {
children: /* @__PURE__ */ K(
"div",
{
style: { cursor: "move", userSelect: "none" },
onMouseDown: N,
children: le.props.children
}
)
});
})() : d;
}
const I = ne(null), j = ne(null), R = (ce, le) => {
if (!H.current || (ce.preventDefault(), ce.stopPropagation(), v)) return;
const fe = H.current.getBoundingClientRect();
I.current = le, j.current = {
mouseX: ce.clientX,
mouseY: ce.clientY,
width: fe.width,
height: fe.height,
x: fe.left,
y: fe.top
}, M(!0);
};
ue(() => {
if (!Z) return;
let ce = null;
const le = (ot) => {
if (!H.current || !j.current || !I.current)
return;
const kt = ot.clientX - j.current.mouseX, De = ot.clientY - j.current.mouseY;
let Ze = j.current.width, rt = j.current.height, Wt = j.current.x, lt = j.current.y;
const $r = I.current;
$r.includes("right") && (Ze = j.current.width + kt), $r.includes("left") && (Ze = j.current.width - kt, Wt = j.current.x + kt), $r.includes("bottom") && (rt = j.current.height + De), $r.includes("top") && (rt = j.current.height - De, lt = j.current.y + De), Ze = Math.max(320, Ze), rt = Math.max(240, rt), U.current = { x: Wt, y: lt }, me.current = { width: Ze, height: rt }, ce && cancelAnimationFrame(ce), ce = requestAnimationFrame(() => {
H.current && U.current && (H.current.style.width = Ze + "px", H.current.style.height = rt + "px", H.current.style.left = U.current.x + "px", H.current.style.top = U.current.y + "px", H.current.style.margin = "0", H.current.style.position = "fixed", H.current.style.zIndex = String(X));
});
}, fe = () => {
M(!1), U.current && q({ ...U.current }), me.current && oe({ ...me.current });
};
return window.addEventListener("mousemove", le), window.addEventListener("mouseup", fe), () => {
window.removeEventListener("mousemove", le), window.removeEventListener("mouseup", fe), ce && cancelAnimationFrame(ce);
};
}, [Z, X]);
const Q = () => {
if (!m || v) return null;
const ce = "absolute z-[75] bg-transparent select-none", le = 5, fe = 2, ot = [
{ dir: "top", className: `top-0 left-0 w-full h-${fe}` },
{ dir: "bottom", className: `bottom-0 left-0 w-full h-${fe}` },
{ dir: "left", className: `left-0 top-0 h-full w-${fe}` },
{ dir: "right", className: `right-0 top-0 h-full w-${fe}` },
{
dir: "top-left",
className: `top-0 left-0 w-${le} h-${le}`
},
{
dir: "top-right",
className: `top-0 right-0 w-${le} h-${le}`
},
{
dir: "bottom-left",
className: `bottom-0 left-0 w-${le} h-${le}`
},
{
dir: "bottom-right",
className: `bottom-0 right-0 w-${le} h-${le}`
}
], kt = {
top: "n-resize",
bottom: "s-resize",
left: "w-resize",
right: "e-resize",
"top-left": "nw-resize",
"top-right": "ne-resize",
"bottom-left": "sw-resize",
"bottom-right": "se-resize"
};
return ot.map((De) => /* @__PURE__ */ K(
"div",
{
className: `${ce} ${De.className}`,
style: { cursor: kt[De.dir] },
onMouseDown: (Ze) => R(Ze, De.dir)
},
De.dir
));
}, [k, oe] = de(
null
), me = ne(null), Le = ne(null);
ue(() => {
if (e && !k && H.current && m) {
const { width: ce, height: le } = H.current.getBoundingClientRect();
oe({ width: ce, height: le }), me.current = { width: ce, height: le };
}
}, [e, k, m]), ue(() => {
if (m) {
if (!e)
me.current && (Le.current = { ...me.current });
else if (Le.current && H.current) {
const { width: ce, height: le } = Le.current;
H.current.style.width = ce + "px", H.current.style.height = le + "px", oe({ width: ce, height: le }), me.current = { width: ce, height: le };
}
}
}, [e, m]), ue(() => {
const ce = () => {
H.current && X < rh && (rh += 1, ee(rh), H.current.style.zIndex = String(rh));
}, le = H.current;
return le && le.addEventListener("mousedown", ce), () => {
le && le.removeEventListener("mousedown", ce);
};
}, [X]), ue(() => {
if (!e || _) return;
const ce = (le) => {
if (le.key === "Escape" || le.key === "Esc") return;
const fe = le.target;
fe && (fe.closest(
'[role="dialog"], [role="menu"], [role="listbox"], [data-headlessui-portal]'
) || fe.matches("input, textarea, select, button, [contenteditable]")) || le.stopPropagation();
};
return window.addEventListener("keydown", ce, !0), () => {
window.removeEventListener("keydown", ce, !0);
};
}, [e, _]), ue(() => {
if (!_) return;
const ce = H.current;
if (!ce) return;
const le = (De) => {
De && (De.hasAttribute("inert") && De.removeAttribute("inert"), De.inert && (De.inert = !1), De.getAttribute("aria-hidden") === "true" && De.removeAttribute("aria-hidden"));
};
let fe = ce;
for (; fe; )
le(fe), fe = fe.parentElement;
const ot = new MutationObserver((De) => {
De.forEach((Ze) => {
if (Ze.type === "attributes" && Ze.attributeName === "inert" && Ze.target instanceof HTMLElement) {
const rt = Ze.target;
(rt === ce || ce.contains(rt)) && le(rt);
}
});
});
ot.observe(ce, {
attributes: !0,
subtree: !1,
attributeFilter: ["inert"]
}), document.querySelectorAll(
"[data-radix-portal][inert], [data-headlessui-portal][inert]"
).forEach((De) => De.removeAttribute("inert"));
const kt = new MutationObserver((De) => {
De.forEach((Ze) => {
if (Ze.type === "attributes" && Ze.attributeName === "inert" && Ze.target.hasAttribute("inert")) {
const rt = Ze.target;
(rt.hasAttribute("data-radix-portal") || rt.hasAttribute("data-headlessui-portal")) && le(rt);
}
});
});
return kt.observe(document.body, {
attributes: !0,
subtree: !0,
attributeFilter: ["inert"]
}), () => {
ot.disconnect(), kt.disconnect();
};
}, [_]);
const Xr = ne(Math.floor(Math.random() * 1e9));
ue(() => {
if (e)
return sGe({
id: Xr.current,
zIndex: X,
onClose: o,
closeOnEsc: $
}), () => {
lGe(Xr.current);
};
}, [e]), ue(() => {
e && cGe(Xr.current, { zIndex: X, onClose: o, closeOnEsc: $ });
}, [e, X, o, $]);
const Jr = () => v ? {
position: "fixed",
left: 0,
top: 0,
margin: 0,
zIndex: X,
width: "100vw",
height: "100vh",
..._ ? { pointerEvents: "auto" } : {}
} : !y || !z ? {
...m && k ? { width: k.width, height: k.height } : {},
..._ ? { pointerEvents: "auto" } : {}
} : {
position: "fixed",
left: z.x,
top: z.y,
margin: 0,
zIndex: X,
...m && k ? { width: k.width, height: k.height } : {},
..._ ? { pointerEvents: "auto" } : {}
};
return /* @__PURE__ */ K(
EDe,
{
open: e,
onOpenChange: (ce) => !ce && w && o(),
modal: !_,
children: /* @__PURE__ */ K(ADe, { children: /* @__PURE__ */ Te(
"div",
{
className: "fixed inset-0 z-[70]",
style: _ ? { pointerEvents: "none" } : void 0,
children: [
!_ && A(
(ce, le) => le ? /* @__PURE__ */ K(
fGe,
{
styles: ce,
backdropClassName: u,
disableHotkeyInput: i,
enableHotkeyInput: a
},
"backdrop"
) : null
),
_ && /* @__PURE__ */ K(
"div",
{
className: ng("fixed inset-0 z-[69]", u),
style: { pointerEvents: "none" }
}
),
/* @__PURE__ */ K(ore.Provider, { value: { expanded: v, toggleExpanded: T }, children: /* @__PURE__ */ K(
"div",
{
className: "flex min-h-full items-center justify-center p-4 text-center",
style: _ ? { pointerEvents: "none" } : void 0,
children: P((ce, le) => le ? /* @__PURE__ */ K(
CDe,
{
forceMount: !0,
asChild: !0,
...F ? {} : { "aria-describedby": void 0 },
onPointerDownOutside: (fe) => {
(!w || _) && fe.preventDefault();
},
onEscapeKeyDown: (fe) => {
$ || fe.preventDefault();
},
onInteractOutside: (fe) => {
_ && fe.preventDefault();
},
children: /* @__PURE__ */ Te(
rre.div,
{
className: ng(
"w-full max-w-lg rounded-xl relative border border-ui-panel-border bg-ui-modal text-left align-middle shadow-2xl z-[70]",
l && !v ? "p-4" : "",
s,
"!transition-none",
// Always disable CSS transitions for spring animations
v && "w-screen h-screen max-w-screen max-h-screen rounded-none"
),
ref: H,
style: {
...Jr(),
opacity: ce.opacity,
transform: ce.transform,
transformOrigin: "center center",
willChange: "transform, opacity"
// Optimize for animations
},
children: [
/* @__PURE__ */ Te("div", { className: "w-full h-full", children: [
F && /* @__PURE__ */ K(K8, { asChild: !0, children: /* @__PURE__ */ K(NDe, { children: F }) }),
t ? /* @__PURE__ */ K(
KF,
{
className: ng(
"mb-4 flex justify-between pb-0 text-xl font-bold text-base-fg"
),
children: /* @__PURE__ */ K(rn, { children: n ? /* @__PURE__ */ Te(
"button",
{
className: "flex items-center gap-3",
onClick: n,
children: [
r && /* @__PURE__ */ K(
ob,
{
icon: r,
className: f
}
),
t
]
}
) : /* @__PURE__ */ Te("div", { className: "flex items-center gap-3", children: [
r && /* @__PURE__ */ K(
ob,
{
icon: r,
className: f
}
),
t
] }) })
}
) : /* @__PURE__ */ K(K8, { asChild: !0, children: /* @__PURE__ */ K(KF, { children: b ?? "Dialog" }) }),
/* @__PURE__ */ K("div", { className: "h-full".trim(), children: C }),
Q()
] }),
(p || S) && /* @__PURE__ */ Te("div", { className: "absolute top-0 right-0 m-2.5 z-[80] flex items-center gap-2", children: [
S && /* @__PURE__ */ K(kw.ExpandButton, {}),
p && /* @__PURE__ */ K(jVe, { onClick: o })
] })
]
}
)
}
) : null)
}
) })
]
}
) })
}
);
};
kw.DragHandle = U5;
kw.DragHandle.displayName = "ModalDragHandle";
kw.ExpandButton = L6;
L6.displayName = "ModalExpandButton";
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function dGe(e, t, r) {
return (t = mGe(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function X8(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function Se(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? X8(Object(r), !0).forEach(function(n) {
dGe(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : X8(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function pGe(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function mGe(e) {
var t = pGe(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const J8 = () => {
};
let z6 = {}, are = {}, ire = null, sre = {
mark: J8,
measure: J8
};
try {
typeof window < "u" && (z6 = window), typeof document < "u" && (are = document), typeof MutationObserver < "u" && (ire = MutationObserver), typeof performance < "u" && (sre = performance);
} catch {
}
const {
userAgent: Q8 = ""
} = z6.navigator || {}, Lc = z6, Yr = are, Z8 = ire, bv = sre;
Lc.document;
const _s = !!Yr.documentElement && !!Yr.head && typeof Yr.addEventListener == "function" && typeof Yr.createElement == "function", lre = ~Q8.indexOf("MSIE") || ~Q8.indexOf("Trident/");
var hGe = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, gGe = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, cre = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, bGe = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, ure = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Cn = "classic", _w = "duotone", yGe = "sharp", vGe = "sharp-duotone", fre = [Cn, _w, yGe, vGe], xGe = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, wGe = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, $Ge = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), kGe = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, _Ge = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], ez = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, OGe = ["kit"], SGe = {
kit: {
"fa-kit": "fak"
}
}, EGe = ["fak", "fakd"], AGe = {
kit: {
fak: "fa-kit"
}
}, tz = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, yv = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, PGe = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], CGe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], NGe = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, TGe = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, IGe = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, B5 = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, jGe = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], Y5 = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...PGe, ...jGe], RGe = ["solid", "regular", "light", "thin", "duotone", "brands"], dre = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], MGe = dre.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), DGe = [...Object.keys(IGe), ...RGe, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", yv.GROUP, yv.SWAP_OPACITY, yv.PRIMARY, yv.SECONDARY].concat(dre.map((e) => "".concat(e, "x"))).concat(MGe.map((e) => "w-".concat(e))), FGe = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const cs = "___FONT_AWESOME___", q5 = 16, pre = "fa", mre = "svg-inline--fa", tf = "data-fa-i2svg", K5 = "data-fa-pseudo-element", LGe = "data-fa-pseudo-element-pending", W6 = "data-prefix", V6 = "data-icon", rz = "fontawesome-i2svg", zGe = "async", WGe = ["HTML", "HEAD", "STYLE", "SCRIPT"], hre = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function ny(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[Cn];
}
});
}
const gre = Se({}, cre);
gre[Cn] = Se(Se(Se(Se({}, {
"fa-duotone": "duotone"
}), cre[Cn]), ez.kit), ez["kit-duotone"]);
const VGe = ny(gre), X5 = Se({}, kGe);
X5[Cn] = Se(Se(Se(Se({}, {
duotone: "fad"
}), X5[Cn]), tz.kit), tz["kit-duotone"]);
const nz = ny(X5), J5 = Se({}, B5);
J5[Cn] = Se(Se({}, J5[Cn]), AGe.kit);
const H6 = ny(J5), Q5 = Se({}, TGe);
Q5[Cn] = Se(Se({}, Q5[Cn]), SGe.kit);
ny(Q5);
const HGe = hGe, bre = "fa-layers-text", GGe = gGe, UGe = Se({}, xGe);
ny(UGe);
const BGe = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], __ = bGe, YGe = [...OGe, ...DGe], dg = Lc.FontAwesomeConfig || {};
function qGe(e) {
var t = Yr.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function KGe(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Yr && typeof Yr.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = KGe(qGe(t));
n != null && (dg[r] = n);
});
const yre = {
styleDefault: "solid",
familyDefault: Cn,
cssPrefix: pre,
replacementClass: mre,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
dg.familyPrefix && (dg.cssPrefix = dg.familyPrefix);
const Kd = Se(Se({}, yre), dg);
Kd.autoReplaceSvg || (Kd.observeMutations = !1);
const Je = {};
Object.keys(yre).forEach((e) => {
Object.defineProperty(Je, e, {
enumerable: !0,
set: function(t) {
Kd[e] = t, pg.forEach((r) => r(Je));
},
get: function() {
return Kd[e];
}
});
});
Object.defineProperty(Je, "familyPrefix", {
enumerable: !0,
set: function(e) {
Kd.cssPrefix = e, pg.forEach((t) => t(Je));
},
get: function() {
return Kd.cssPrefix;
}
});
Lc.FontAwesomeConfig = Je;
const pg = [];
function XGe(e) {
return pg.push(e), () => {
pg.splice(pg.indexOf(e), 1);
};
}
const Ml = q5, ni = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function JGe(e) {
if (!e || !_s)
return;
const t = Yr.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Yr.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Yr.head.insertBefore(t, n), e;
}
const QGe = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function hb() {
let e = 12, t = "";
for (; e-- > 0; )
t += QGe[Math.random() * 62 | 0];
return t;
}
function Np(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function G6(e) {
return e.classList ? Np(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function vre(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function ZGe(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(vre(e[r]), '" '), "").trim();
}
function Ow(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function U6(e) {
return e.size !== ni.size || e.x !== ni.x || e.y !== ni.y || e.rotate !== ni.rotate || e.flipX || e.flipY;
}
function eUe(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function tUe(e) {
let {
transform: t,
width: r = q5,
height: n = q5,
startCentered: o = !1
} = e, a = "";
return o && lre ? a += "translate(".concat(t.x / Ml - r / 2, "em, ").concat(t.y / Ml - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / Ml, "em), calc(-50% + ").concat(t.y / Ml, "em)) ") : a += "translate(".concat(t.x / Ml, "em, ").concat(t.y / Ml, "em) "), a += "scale(".concat(t.size / Ml * (t.flipX ? -1 : 1), ", ").concat(t.size / Ml * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var rUe = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function xre() {
const e = pre, t = mre, r = Je.cssPrefix, n = Je.replacementClass;
let o = rUe;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let oz = !1;
function O_() {
Je.autoAddCss && !oz && (JGe(xre()), oz = !0);
}
var nUe = {
mixout() {
return {
dom: {
css: xre,
insertCss: O_
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
O_();
},
beforeI2svg() {
O_();
}
};
}
};
const us = Lc || {};
us[cs] || (us[cs] = {});
us[cs].styles || (us[cs].styles = {});
us[cs].hooks || (us[cs].hooks = {});
us[cs].shims || (us[cs].shims = []);
var oi = us[cs];
const wre = [], $re = function() {
Yr.removeEventListener("DOMContentLoaded", $re), $0 = 1, wre.map((e) => e());
};
let $0 = !1;
_s && ($0 = (Yr.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Yr.readyState), $0 || Yr.addEventListener("DOMContentLoaded", $re));
function oUe(e) {
_s && ($0 ? setTimeout(e, 0) : wre.push(e));
}
function oy(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? vre(e) : "<".concat(t, " ").concat(ZGe(r), ">").concat(n.map(oy).join(""), "</").concat(t, ">");
}
function az(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var S_ = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function aUe(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function kre(e) {
const t = aUe(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function iUe(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function iz(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function Z5(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = iz(t);
typeof oi.hooks.addPack == "function" && !n ? oi.hooks.addPack(e, iz(t)) : oi.styles[e] = Se(Se({}, oi.styles[e] || {}), o), e === "fas" && Z5("fa", t);
}
const {
styles: gb,
shims: sUe
} = oi, _re = Object.keys(H6), lUe = _re.reduce((e, t) => (e[t] = Object.keys(H6[t]), e), {});
let B6 = null, Ore = {}, Sre = {}, Ere = {}, Are = {}, Pre = {};
function cUe(e) {
return ~YGe.indexOf(e);
}
function uUe(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !cUe(o) ? o : null;
}
const Cre = () => {
const e = (n) => S_(gb, (o, a, i) => (o[i] = S_(a, n, {}), o), {});
Ore = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), Sre = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), Pre = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in gb || Je.autoFetchSvg, r = S_(sUe, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
Ere = r.names, Are = r.unicodes, B6 = Sw(Je.styleDefault, {
family: Je.familyDefault
});
};
XGe((e) => {
B6 = Sw(e.styleDefault, {
family: Je.familyDefault
});
});
Cre();
function Y6(e, t) {
return (Ore[e] || {})[t];
}
function fUe(e, t) {
return (Sre[e] || {})[t];
}
function bu(e, t) {
return (Pre[e] || {})[t];
}
function Nre(e) {
return Ere[e] || {
prefix: null,
iconName: null
};
}
function dUe(e) {
const t = Are[e], r = Y6("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function zc() {
return B6;
}
const Tre = () => ({
prefix: null,
iconName: null,
rest: []
});
function pUe(e) {
let t = Cn;
const r = _re.reduce((n, o) => (n[o] = "".concat(Je.cssPrefix, "-").concat(o), n), {});
return fre.forEach((n) => {
(e.includes(r[n]) || e.some((o) => lUe[n].includes(o))) && (t = n);
}), t;
}
function Sw(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = Cn
} = t, n = VGe[r][e];
if (r === _w && !e)
return "fad";
const o = nz[r][e] || nz[r][n], a = e in oi.styles ? e : null;
return o || a || null;
}
function mUe(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = uUe(Je.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function sz(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function Ew(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = Y5.concat(CGe), a = sz(e.filter((l) => o.includes(l))), i = sz(e.filter((l) => !Y5.includes(l))), s = a.filter((l) => (n = l, !ure.includes(l))), [u = null] = s, c = pUe(a), d = Se(Se({}, mUe(i)), {}, {
prefix: Sw(u, {
family: c
})
});
return Se(Se(Se({}, d), yUe({
values: e,
family: c,
styles: gb,
config: Je,
canonical: d,
givenPrefix: n
})), hUe(r, n, d));
}
function hUe(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? Nre(o) : {}, i = bu(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !gb.far && gb.fas && !Je.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const gUe = fre.filter((e) => e !== Cn || e !== _w), bUe = Object.keys(B5).filter((e) => e !== Cn).map((e) => Object.keys(B5[e])).flat();
function yUe(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === _w, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && gUe.includes(r) && (Object.keys(a).find((l) => bUe.includes(l)) || i.autoFetchSvg)) {
const l = $Ge.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = bu(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = zc() || "fas"), n;
}
class vUe {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = Se(Se({}, this.definitions[a] || {}), o[a]), Z5(a, o[a]);
const i = H6[Cn][a];
i && Z5(i, o[a]), Cre();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}
let lz = [], Xf = {};
const Td = {}, xUe = Object.keys(Td);
function wUe(e, t) {
let {
mixoutsTo: r
} = t;
return lz = e, Xf = {}, Object.keys(Td).forEach((n) => {
xUe.indexOf(n) === -1 && delete Td[n];
}), lz.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Xf[i] || (Xf[i] = []), Xf[i].push(a[i]);
});
}
n.provides && n.provides(Td);
}), r;
}
function e4(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Xf[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function rf(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Xf[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function Wc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return Td[e] ? Td[e].apply(null, t) : void 0;
}
function t4(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || zc();
if (t)
return t = bu(r, t) || t, az(Ire.definitions, r, t) || az(oi.styles, r, t);
}
const Ire = new vUe(), $Ue = () => {
Je.autoReplaceSvg = !1, Je.observeMutations = !1, rf("noAuto");
}, kUe = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return _s ? (rf("beforeI2svg", e), Wc("pseudoElements2svg", e), Wc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
Je.autoReplaceSvg === !1 && (Je.autoReplaceSvg = !0), Je.observeMutations = !0, oUe(() => {
OUe({
autoReplaceSvgRoot: t
}), rf("watch", e);
});
}
}, _Ue = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: bu(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = Sw(e[0]);
return {
prefix: r,
iconName: bu(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(Je.cssPrefix, "-")) > -1 || e.match(HGe))) {
const t = Ew(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || zc(),
iconName: bu(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = zc();
return {
prefix: t,
iconName: bu(t, e) || e
};
}
}
}, bo = {
noAuto: $Ue,
config: Je,
dom: kUe,
parse: _Ue,
library: Ire,
findIconDefinition: t4,
toHtml: oy
}, OUe = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Yr
} = e;
(Object.keys(oi.styles).length > 0 || Je.autoFetchSvg) && _s && Je.autoReplaceSvg && bo.dom.i2svg({
node: t
});
};
function Aw(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => oy(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!_s) return;
const r = Yr.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function SUe(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (U6(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = Ow(Se(Se({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function EUe(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(Je.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: Se(Se({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function q6(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = EGe.includes(n), m = [Je.replacementClass, o ? "".concat(Je.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: Se(Se({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[tf] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || hb())
},
children: [s]
}), delete h.attributes.title);
const $ = Se(Se({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: Se(Se({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? Wc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : Wc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? EUe($) : SUe($);
}
function cz(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = Se(Se(Se({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[tf] = "");
const c = Se({}, i.styles);
U6(o) && (c.transform = tUe({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = Ow(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function AUe(e) {
const {
content: t,
title: r,
extra: n
} = e, o = Se(Se(Se({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = Ow(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: E_
} = oi;
function r4(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(Je.cssPrefix, "-").concat(__.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(Je.cssPrefix, "-").concat(__.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(Je.cssPrefix, "-").concat(__.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const PUe = {
found: !1,
width: 512,
height: 512
};
function CUe(e, t) {
!hre && !Je.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function n4(e, t) {
let r = t;
return t === "fa" && Je.styleDefault !== null && (t = zc()), new Promise((n, o) => {
if (r === "fa") {
const a = Nre(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && E_[t] && E_[t][e]) {
const a = E_[t][e];
return n(r4(a));
}
CUe(e, t), n(Se(Se({}, PUe), {}, {
icon: Je.showMissingIcons && e ? Wc("missingIconAbstract") || {} : {}
}));
});
}
const uz = () => {
}, o4 = Je.measurePerformance && bv && bv.mark && bv.measure ? bv : {
mark: uz,
measure: uz
}, $h = 'FA "6.7.2"', NUe = (e) => (o4.mark("".concat($h, " ").concat(e, " begins")), () => jre(e)), jre = (e) => {
o4.mark("".concat($h, " ").concat(e, " ends")), o4.measure("".concat($h, " ").concat(e), "".concat($h, " ").concat(e, " begins"), "".concat($h, " ").concat(e, " ends"));
};
var K6 = {
begin: NUe,
end: jre
};
const c1 = () => {
};
function fz(e) {
return typeof (e.getAttribute ? e.getAttribute(tf) : null) == "string";
}
function TUe(e) {
const t = e.getAttribute ? e.getAttribute(W6) : null, r = e.getAttribute ? e.getAttribute(V6) : null;
return t && r;
}
function IUe(e) {
return e && e.classList && e.classList.contains && e.classList.contains(Je.replacementClass);
}
function jUe() {
return Je.autoReplaceSvg === !0 ? u1.replace : u1[Je.autoReplaceSvg] || u1.replace;
}
function RUe(e) {
return Yr.createElementNS("http://www.w3.org/2000/svg", e);
}
function MUe(e) {
return Yr.createElement(e);
}
function Rre(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? RUe : MUe
} = t;
if (typeof e == "string")
return Yr.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(Rre(o, {
ceFn: r
}));
}), n;
}
function DUe(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const u1 = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(Rre(r), t);
}), t.getAttribute(tf) === null && Je.keepOriginalSource) {
let r = Yr.createComment(DUe(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~G6(t).indexOf(Je.replacementClass))
return u1.replace(e);
const n = new RegExp("".concat(Je.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === Je.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => oy(a)).join(`
`);
t.setAttribute(tf, ""), t.innerHTML = o;
}
};
function dz(e) {
e();
}
function Mre(e, t) {
const r = typeof t == "function" ? t : c1;
if (e.length === 0)
r();
else {
let n = dz;
Je.mutateApproach === zGe && (n = Lc.requestAnimationFrame || dz), n(() => {
const o = jUe(), a = K6.begin("mutate");
e.map(o), a(), r();
});
}
}
let X6 = !1;
function Dre() {
X6 = !0;
}
function a4() {
X6 = !1;
}
let k0 = null;
function pz(e) {
if (!Z8 || !Je.observeMutations)
return;
const {
treeCallback: t = c1,
nodeCallback: r = c1,
pseudoElementsCallback: n = c1,
observeMutationsRoot: o = Yr
} = e;
k0 = new Z8((a) => {
if (X6) return;
const i = zc();
Np(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !fz(s.addedNodes[0]) && (Je.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && Je.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && fz(s.target) && ~BGe.indexOf(s.attributeName))
if (s.attributeName === "class" && TUe(s.target)) {
const {
prefix: u,
iconName: c
} = Ew(G6(s.target));
s.target.setAttribute(W6, u || i), c && s.target.setAttribute(V6, c);
} else IUe(s.target) && r(s.target);
});
}), _s && k0.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function FUe() {
k0 && k0.disconnect();
}
function LUe(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function zUe(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = Ew(G6(e));
return o.prefix || (o.prefix = zc()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = fUe(o.prefix, e.innerText) || Y6(o.prefix, kre(e.innerText))), !o.iconName && Je.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function WUe(e) {
const t = Np(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return Je.autoA11y && (r ? t["aria-labelledby"] = "".concat(Je.replacementClass, "-title-").concat(n || hb()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function VUe() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: ni,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function mz(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = zUe(e), a = WUe(e), i = e4("parseNodeAttributes", {}, e);
let s = t.styleParser ? LUe(e) : [];
return Se({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: ni,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: HUe
} = oi;
function Fre(e) {
const t = Je.autoReplaceSvg === "nest" ? mz(e, {
styleParser: !1
}) : mz(e);
return ~t.extra.classes.indexOf(bre) ? Wc("generateLayersText", e, t) : Wc("generateSvgReplacementMutation", e, t);
}
function GUe() {
return [..._Ge, ...Y5];
}
function hz(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!_s) return Promise.resolve();
const r = Yr.documentElement.classList, n = (d) => r.add("".concat(rz, "-").concat(d)), o = (d) => r.remove("".concat(rz, "-").concat(d)), a = Je.autoFetchSvg ? GUe() : ure.concat(Object.keys(HUe));
a.includes("fa") || a.push("fa");
const i = [".".concat(bre, ":not([").concat(tf, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(tf, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = Np(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = K6.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = Fre(l);
f && d.push(f);
} catch (f) {
hre || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
Mre(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function UUe(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
Fre(e).then((r) => {
r && Mre([r], t);
});
}
function BUe(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : t4(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : t4(o || {})), e(n, Se(Se({}, r), {}, {
mask: o
}));
};
}
const YUe = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = ni,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return Aw(Se({
type: "icon"
}, e), () => (rf("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), Je.autoA11y && (i ? c["aria-labelledby"] = "".concat(Je.replacementClass, "-title-").concat(s || hb()) : (c["aria-hidden"] = "true", c.focusable = "false")), q6({
icons: {
main: r4(p),
mask: o ? r4(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: Se(Se({}, ni), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var qUe = {
mixout() {
return {
icon: BUe(YUe)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = hz, e.nodeCallback = UUe, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Yr,
callback: n = () => {
}
} = t;
return hz(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([n4(n, i), c.iconName ? n4(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, q6({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = Ow(i);
s.length > 0 && (n.style = s);
let u;
return U6(a) && (u = Wc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, KUe = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return Aw({
type: "layer"
}, () => {
rf("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(Je.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, XUe = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return Aw({
type: "counter",
content: e
}, () => (rf("beforeDOMElementCreation", {
content: e,
params: t
}), AUe({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(Je.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, JUe = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = ni,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return Aw({
type: "text",
content: e
}, () => (rf("beforeDOMElementCreation", {
content: e,
params: t
}), cz({
content: e,
transform: Se(Se({}, ni), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(Je.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (lre) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return Je.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, cz({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const QUe = new RegExp('"', "ug"), gz = [1105920, 1112319], bz = Se(Se(Se(Se({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), wGe), FGe), NGe), i4 = Object.keys(bz).reduce((e, t) => (e[t.toLowerCase()] = bz[t], e), {}), ZUe = Object.keys(i4).reduce((e, t) => {
const r = i4[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function eBe(e) {
const t = e.replace(QUe, ""), r = iUe(t, 0), n = r >= gz[0] && r <= gz[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: kre(o ? t[0] : t),
isSecondary: n || o
};
}
function tBe(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (i4[r] || {})[o] || ZUe[r];
}
function yz(e, t) {
const r = "".concat(LGe).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = Np(e.children).filter((l) => l.getAttribute(K5) === t)[0], i = Lc.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(GGe), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = tBe(s, c);
const {
value: p,
isSecondary: y
} = eBe(l), m = u[0].startsWith("FontAwesome");
let h = Y6(f, p), w = h;
if (m) {
const $ = dUe(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(W6) !== f || a.getAttribute(V6) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = VUe(), {
extra: _
} = $;
_.attributes[K5] = t, n4(h, f).then((S) => {
const b = q6(Se(Se({}, $), {}, {
icons: {
main: S,
mask: Tre()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = Yr.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => oy(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function rBe(e) {
return Promise.all([yz(e, "::before"), yz(e, "::after")]);
}
function nBe(e) {
return e.parentNode !== document.head && !~WGe.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(K5) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function vz(e) {
if (_s)
return new Promise((t, r) => {
const n = Np(e.querySelectorAll("*")).filter(nBe).map(rBe), o = K6.begin("searchPseudoElements");
Dre(), Promise.all(n).then(() => {
o(), a4(), t();
}).catch(() => {
o(), a4(), r();
});
});
}
var oBe = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = vz, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Yr
} = t;
Je.searchPseudoElements && vz(r);
};
}
};
let xz = !1;
var aBe = {
mixout() {
return {
dom: {
unwatch() {
Dre(), xz = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
pz(e4("mutationObserverCallbacks", {}));
},
noAuto() {
FUe();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
xz ? a4() : pz(e4("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const wz = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var iBe = {
mixout() {
return {
parse: {
transform: (e) => wz(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = wz(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: Se({}, f.outer),
children: [{
tag: "g",
attributes: Se({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: Se(Se({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const A_ = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function $z(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function sBe(e) {
return e.tag === "g" ? e.children : [e];
}
var lBe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? Ew(r.split(" ").map((o) => o.trim())) : Tre();
return n.prefix || (n.prefix = zc()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = eUe({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: Se(Se({}, A_), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map($z)
} : {}, m = {
tag: "g",
attributes: Se({}, f.inner),
children: [$z(Se({
tag: c.tag,
attributes: Se(Se({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: Se({}, f.outer),
children: [m]
}, w = "mask-".concat(i || hb()), $ = "clip-".concat(i || hb()), _ = {
tag: "mask",
attributes: Se(Se({}, A_), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: sBe(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: Se({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, A_)
}), {
children: r,
attributes: n
};
};
}
}, cBe = {
provides(e) {
let t = !1;
Lc.matchMedia && (t = Lc.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: Se(Se({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = Se(Se({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: Se(Se({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: Se(Se({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: Se(Se({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: Se(Se({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: Se(Se({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: Se(Se({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: Se(Se({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, uBe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, fBe = [nUe, qUe, KUe, XUe, JUe, oBe, aBe, iBe, lBe, cBe, uBe];
wUe(fBe, {
mixoutsTo: bo
});
bo.noAuto;
bo.config;
bo.library;
bo.dom;
const s4 = bo.parse;
bo.findIconDefinition;
bo.toHtml;
const dBe = bo.icon;
bo.layer;
bo.text;
bo.counter;
function pBe(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var vv = { exports: {} }, P_ = { exports: {} }, or = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var kz;
function mBe() {
if (kz) return or;
kz = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return or.AsyncMode = u, or.ConcurrentMode = c, or.ContextConsumer = s, or.ContextProvider = i, or.Element = t, or.ForwardRef = d, or.Fragment = n, or.Lazy = y, or.Memo = p, or.Portal = r, or.Profiler = a, or.StrictMode = o, or.Suspense = l, or.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, or.isConcurrentMode = S, or.isContextConsumer = function(b) {
return _(b) === s;
}, or.isContextProvider = function(b) {
return _(b) === i;
}, or.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, or.isForwardRef = function(b) {
return _(b) === d;
}, or.isFragment = function(b) {
return _(b) === n;
}, or.isLazy = function(b) {
return _(b) === y;
}, or.isMemo = function(b) {
return _(b) === p;
}, or.isPortal = function(b) {
return _(b) === r;
}, or.isProfiler = function(b) {
return _(b) === a;
}, or.isStrictMode = function(b) {
return _(b) === o;
}, or.isSuspense = function(b) {
return _(b) === l;
}, or.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, or.typeOf = _, or;
}
var gr = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var _z;
function hBe() {
return _z || (_z = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
gr.AsyncMode = b, gr.ConcurrentMode = F, gr.ContextConsumer = z, gr.ContextProvider = q, gr.Element = Y, gr.ForwardRef = B, gr.Fragment = Z, gr.Lazy = M, gr.Memo = te, gr.Portal = G, gr.Profiler = H, gr.StrictMode = U, gr.Suspense = W, gr.isAsyncMode = ee, gr.isConcurrentMode = v, gr.isContextConsumer = g, gr.isContextProvider = O, gr.isElement = P, gr.isForwardRef = A, gr.isFragment = T, gr.isLazy = N, gr.isMemo = C, gr.isPortal = I, gr.isProfiler = j, gr.isStrictMode = R, gr.isSuspense = Q, gr.isValidElementType = _, gr.typeOf = S;
}()), gr;
}
var Oz;
function Lre() {
return Oz || (Oz = 1, process.env.NODE_ENV === "production" ? P_.exports = mBe() : P_.exports = hBe()), P_.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var C_, Sz;
function gBe() {
if (Sz) return C_;
Sz = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return C_ = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, C_;
}
var N_, Ez;
function J6() {
if (Ez) return N_;
Ez = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return N_ = e, N_;
}
var Az, Pz;
function zre() {
return Pz || (Pz = 1, Az = Function.call.bind(Object.prototype.hasOwnProperty)), Az;
}
var T_, Cz;
function bBe() {
if (Cz) return T_;
Cz = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ J6(), r = {}, n = /* @__PURE__ */ zre();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, T_ = o, T_;
}
var I_, Nz;
function yBe() {
if (Nz) return I_;
Nz = 1;
var e = Lre(), t = gBe(), r = /* @__PURE__ */ J6(), n = /* @__PURE__ */ zre(), o = /* @__PURE__ */ bBe(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return I_ = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, I_;
}
var j_, Tz;
function vBe() {
if (Tz) return j_;
Tz = 1;
var e = /* @__PURE__ */ J6();
function t() {
}
function r() {
}
return r.resetWarningCache = t, j_ = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, j_;
}
var Iz;
function xBe() {
if (Iz) return vv.exports;
if (Iz = 1, process.env.NODE_ENV !== "production") {
var e = Lre(), t = !0;
vv.exports = /* @__PURE__ */ yBe()(e.isElement, t);
} else
vv.exports = /* @__PURE__ */ vBe()();
return vv.exports;
}
var wBe = /* @__PURE__ */ xBe();
const Ft = /* @__PURE__ */ pBe(wBe);
function jz(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function Ca(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? jz(Object(r), !0).forEach(function(n) {
Jf(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : jz(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function _0(e) {
"@babel/helpers - typeof";
return _0 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, _0(e);
}
function Jf(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function $Be(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function kBe(e, t) {
if (e == null) return {};
var r = $Be(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function l4(e) {
return _Be(e) || OBe(e) || SBe(e) || EBe();
}
function _Be(e) {
if (Array.isArray(e)) return c4(e);
}
function OBe(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function SBe(e, t) {
if (e) {
if (typeof e == "string") return c4(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return c4(e, t);
}
}
function c4(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function EBe() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function ABe(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, Jf(t, "fa-".concat(w), typeof w < "u" && w !== null), Jf(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), Jf(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), Jf(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function PBe(e) {
return e = e - 0, e === e;
}
function Wre(e) {
return PBe(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var CBe = ["style"];
function NBe(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function TBe(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = Wre(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[NBe(o)] = a : t[o] = a, t;
}, {});
}
function Vre(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return Vre(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = TBe(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[Wre(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = kBe(r, CBe);
return o.attrs.style = Ca(Ca({}, o.attrs.style), i), e.apply(void 0, [t.tag, Ca(Ca({}, o.attrs), s)].concat(l4(n)));
}
var Hre = !1;
try {
Hre = process.env.NODE_ENV === "production";
} catch {
}
function IBe() {
if (!Hre && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function Rz(e) {
if (e && _0(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (s4.icon)
return s4.icon(e);
if (e === null)
return null;
if (e && _0(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function R_(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Jf({}, e, t) : {};
}
var Mz = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, Gre = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = Ca(Ca({}, Mz), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = Rz(n), l = R_("classes", [].concat(l4(ABe(r)), l4((i || "").split(" ")))), f = R_("transform", typeof r.transform == "string" ? s4.transform(r.transform) : r.transform), p = R_("mask", Rz(o)), y = dBe(d, Ca(Ca(Ca(Ca({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return IBe("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
Mz.hasOwnProperty(w) || (h[w] = r[w]);
}), jBe(m[0], h);
});
Gre.displayName = "FontAwesomeIcon";
Gre.propTypes = {
beat: Ft.bool,
border: Ft.bool,
beatFade: Ft.bool,
bounce: Ft.bool,
className: Ft.string,
fade: Ft.bool,
flash: Ft.bool,
mask: Ft.oneOfType([Ft.object, Ft.array, Ft.string]),
maskId: Ft.string,
fixedWidth: Ft.bool,
inverse: Ft.bool,
flip: Ft.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: Ft.oneOfType([Ft.object, Ft.array, Ft.string]),
listItem: Ft.bool,
pull: Ft.oneOf(["right", "left"]),
pulse: Ft.bool,
rotation: Ft.oneOf([0, 90, 180, 270]),
shake: Ft.bool,
size: Ft.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: Ft.bool,
spinPulse: Ft.bool,
spinReverse: Ft.bool,
symbol: Ft.oneOfType([Ft.bool, Ft.string]),
title: Ft.string,
titleId: Ft.string,
transform: Ft.oneOfType([Ft.string, Ft.object]),
swapOpacity: Ft.bool
};
var jBe = Vre.bind(null, ae.createElement), f1 = /* @__PURE__ */ ((e) => (e[e.ALL = 0] = "ALL", e[e.FEATURED = 1] = "FEATURED", e[e.MINE = 2] = "MINE", e[e.BOOKMARKED = 3] = "BOOKMARKED", e))(f1 || {});
f1.FEATURED, f1.MINE, f1.BOOKMARKED;
const Dz = (e) => {
let t;
const r = /* @__PURE__ */ new Set(), n = (s, u) => {
const c = typeof s == "function" ? s(t) : s;
if (!Object.is(c, t)) {
const d = t;
t = u ?? (typeof c != "object" || c === null) ? c : Object.assign({}, t, c), r.forEach((l) => l(t, d));
}
}, o = () => t, a = { setState: n, getState: o, getInitialState: () => i, subscribe: (s) => (r.add(s), () => r.delete(s)) }, i = t = e(n, o, a);
return a;
}, RBe = (e) => e ? Dz(e) : Dz, MBe = (e) => e;
function DBe(e, t = MBe) {
const r = ae.useSyncExternalStore(
e.subscribe,
() => t(e.getState()),
() => t(e.getInitialState())
);
return ae.useDebugValue(r), r;
}
const Fz = (e) => {
const t = RBe(e), r = (n) => DBe(t, n);
return Object.assign(r, t), r;
}, Ure = (e) => e ? Fz(e) : Fz, FBe = Ure((e) => ({
isOpen: !1,
subscription: {
currentPlanId: "free",
hasActiveSubscription: !1
},
openModal: () => e({ isOpen: !0 }),
closeModal: () => e({ isOpen: !1 }),
toggleModal: () => e((t) => ({ isOpen: !t.isOpen })),
setSubscription: (t) => e((r) => ({
subscription: { ...r.subscription, ...t }
})),
updateCurrentPlan: (t, r) => e((n) => ({
subscription: {
...n.subscription,
currentPlanId: t,
hasActiveSubscription: r
}
}))
}));
var LBe = Object.defineProperty, zBe = (e, t, r) => t in e ? LBe(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, M_ = (e, t, r) => (zBe(e, typeof t != "symbol" ? t + "" : t, r), r);
let WBe = class {
constructor() {
M_(this, "current", this.detect()), M_(this, "handoffState", "pending"), M_(this, "currentId", 0);
}
set(e) {
this.current !== e && (this.handoffState = "pending", this.currentId = 0, this.current = e);
}
reset() {
this.set(this.detect());
}
nextId() {
return ++this.currentId;
}
get isServer() {
return this.current === "server";
}
get isClient() {
return this.current === "client";
}
detect() {
return typeof window > "u" || typeof document > "u" ? "server" : "client";
}
handoff() {
this.handoffState === "pending" && (this.handoffState = "complete");
}
get isHandoffComplete() {
return this.handoffState === "complete";
}
}, d1 = new WBe();
function VBe(e) {
typeof queueMicrotask == "function" ? queueMicrotask(e) : Promise.resolve().then(e).catch((t) => setTimeout(() => {
throw t;
}));
}
function Pw() {
let e = [], t = { addEventListener(r, n, o, a) {
return r.addEventListener(n, o, a), t.add(() => r.removeEventListener(n, o, a));
}, requestAnimationFrame(...r) {
let n = requestAnimationFrame(...r);
return t.add(() => cancelAnimationFrame(n));
}, nextFrame(...r) {
return t.requestAnimationFrame(() => t.requestAnimationFrame(...r));
}, setTimeout(...r) {
let n = setTimeout(...r);
return t.add(() => clearTimeout(n));
}, microTask(...r) {
let n = { current: !0 };
return VBe(() => {
n.current && r[0]();
}), t.add(() => {
n.current = !1;
});
}, style(r, n, o) {
let a = r.style.getPropertyValue(n);
return Object.assign(r.style, { [n]: o }), this.add(() => {
Object.assign(r.style, { [n]: a });
});
}, group(r) {
let n = Pw();
return r(n), this.add(() => n.dispose());
}, add(r) {
return e.includes(r) || e.push(r), () => {
let n = e.indexOf(r);
if (n >= 0) for (let o of e.splice(n, 1)) o();
};
}, dispose() {
for (let r of e.splice(0)) r();
} };
return t;
}
function Bre() {
let [e] = de(Pw);
return ue(() => () => e.dispose(), [e]), e;
}
let nc = (e, t) => {
d1.isServer ? ue(e, t) : pi(e, t);
};
function Yre(e) {
let t = ne(e);
return nc(() => {
t.current = e;
}, [e]), t;
}
let Di = function(e) {
let t = Yre(e);
return ae.useCallback((...r) => t.current(...r), [t]);
};
function u4(...e) {
return Array.from(new Set(e.flatMap((t) => typeof t == "string" ? t.split(" ") : []))).filter(Boolean).join(" ");
}
function Cw(e, t, ...r) {
if (e in t) {
let o = t[e];
return typeof o == "function" ? o(...r) : o;
}
let n = new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map((o) => `"${o}"`).join(", ")}.`);
throw Error.captureStackTrace && Error.captureStackTrace(n, Cw), n;
}
var qre = ((e) => (e[e.None = 0] = "None", e[e.RenderStrategy = 1] = "RenderStrategy", e[e.Static = 2] = "Static", e))(qre || {}), Jl = ((e) => (e[e.Unmount = 0] = "Unmount", e[e.Hidden = 1] = "Hidden", e))(Jl || {});
function Kre() {
let e = GBe();
return Ne((t) => HBe({ mergeRefs: e, ...t }), [e]);
}
function HBe({ ourProps: e, theirProps: t, slot: r, defaultTag: n, features: o, visible: a = !0, name: i, mergeRefs: s }) {
s = s ?? UBe;
let u = Xre(t, e);
if (a) return xv(u, r, n, i, s);
let c = o ?? 0;
if (c & 2) {
let { static: d = !1, ...l } = u;
if (d) return xv(l, r, n, i, s);
}
if (c & 1) {
let { unmount: d = !0, ...l } = u;
return Cw(d ? 0 : 1, { 0() {
return null;
}, 1() {
return xv({ ...l, hidden: !0, style: { display: "none" } }, r, n, i, s);
} });
}
return xv(u, r, n, i, s);
}
function xv(e, t = {}, r, n, o) {
let { as: a = r, children: i, refName: s = "ref", ...u } = D_(e, ["unmount", "static"]), c = e.ref !== void 0 ? { [s]: e.ref } : {}, d = typeof i == "function" ? i(t) : i;
"className" in u && u.className && typeof u.className == "function" && (u.className = u.className(t)), u["aria-labelledby"] && u["aria-labelledby"] === u.id && (u["aria-labelledby"] = void 0);
let l = {};
if (t) {
let f = !1, p = [];
for (let [y, m] of Object.entries(t)) typeof m == "boolean" && (f = !0), m === !0 && p.push(y.replace(/([A-Z])/g, (h) => `-${h.toLowerCase()}`));
if (f) {
l["data-headlessui-state"] = p.join(" ");
for (let y of p) l[`data-${y}`] = "";
}
}
if (a === Ut && (Object.keys(eu(u)).length > 0 || Object.keys(eu(l)).length > 0)) if (!Fi(d) || Array.isArray(d) && d.length > 1) {
if (Object.keys(eu(u)).length > 0) throw new Error(['Passing props on "Fragment"!', "", `The current component <${n} /> is rendering a "Fragment".`, "However we need to passthrough the following props:", Object.keys(eu(u)).concat(Object.keys(eu(l))).map((f) => ` - ${f}`).join(`
`), "", "You can apply a few solutions:", ['Add an `as="..."` prop, to ensure that we render an actual element instead of a "Fragment".', "Render a single element as the child so that we can forward the props onto that element."].map((f) => ` - ${f}`).join(`
`)].join(`
`));
} else {
let f = d.props, p = f == null ? void 0 : f.className, y = typeof p == "function" ? (...w) => u4(p(...w), u.className) : u4(p, u.className), m = y ? { className: y } : {}, h = Xre(d.props, eu(D_(u, ["ref"])));
for (let w in l) w in h && delete l[w];
return Li(d, Object.assign({}, h, l, c, { ref: o(BBe(d), c.ref) }, m));
}
return vb(a, Object.assign({}, D_(u, ["ref"]), a !== Ut && c, a !== Ut && l), d);
}
function GBe() {
let e = ne([]), t = Ne((r) => {
for (let n of e.current) n != null && (typeof n == "function" ? n(r) : n.current = r);
}, []);
return (...r) => {
if (!r.every((n) => n == null)) return e.current = r, t;
};
}
function UBe(...e) {
return e.every((t) => t == null) ? void 0 : (t) => {
for (let r of e) r != null && (typeof r == "function" ? r(t) : r.current = t);
};
}
function Xre(...e) {
if (e.length === 0) return {};
if (e.length === 1) return e[0];
let t = {}, r = {};
for (let n of e) for (let o in n) o.startsWith("on") && typeof n[o] == "function" ? (r[o] != null || (r[o] = []), r[o].push(n[o])) : t[o] = n[o];
if (t.disabled || t["aria-disabled"]) for (let n in r) /^(on(?:Click|Pointer|Mouse|Key)(?:Down|Up|Press)?)$/.test(n) && (r[n] = [(o) => {
var a;
return (a = o == null ? void 0 : o.preventDefault) == null ? void 0 : a.call(o);
}]);
for (let n in r) Object.assign(t, { [n](o, ...a) {
let i = r[n];
for (let s of i) {
if ((o instanceof Event || (o == null ? void 0 : o.nativeEvent) instanceof Event) && o.defaultPrevented) return;
s(o, ...a);
}
} });
return t;
}
function Q6(e) {
var t;
return Object.assign(sf(e), { displayName: (t = e.displayName) != null ? t : e.name });
}
function eu(e) {
let t = Object.assign({}, e);
for (let r in t) t[r] === void 0 && delete t[r];
return t;
}
function D_(e, t = []) {
let r = Object.assign({}, e);
for (let n of t) n in r && delete r[n];
return r;
}
function BBe(e) {
return ae.version.split(".")[0] >= "19" ? e.props.ref : e.ref;
}
let YBe = Symbol();
function Jre(...e) {
let t = ne(e);
ue(() => {
t.current = e;
}, [e]);
let r = Di((n) => {
for (let o of t.current) o != null && (typeof o == "function" ? o(n) : o.current = n);
});
return e.every((n) => n == null || (n == null ? void 0 : n[YBe])) ? void 0 : r;
}
function qBe(e = 0) {
let [t, r] = de(e), n = Ne((u) => r(u), [t]), o = Ne((u) => r((c) => c | u), [t]), a = Ne((u) => (t & u) === u, [t]), i = Ne((u) => r((c) => c & ~u), [r]), s = Ne((u) => r((c) => c ^ u), [r]);
return { flags: t, setFlag: n, addFlag: o, hasFlag: a, removeFlag: i, toggleFlag: s };
}
var Lz, zz;
typeof process < "u" && typeof globalThis < "u" && typeof Element < "u" && ((Lz = process == null ? void 0 : process.env) == null ? void 0 : Lz.NODE_ENV) === "test" && typeof ((zz = Element == null ? void 0 : Element.prototype) == null ? void 0 : zz.getAnimations) > "u" && (Element.prototype.getAnimations = function() {
return console.warn(["Headless UI has polyfilled `Element.prototype.getAnimations` for your tests.", "Please install a proper polyfill e.g. `jsdom-testing-mocks`, to silence these warnings.", "", "Example usage:", "```js", "import { mockAnimationsApi } from 'jsdom-testing-mocks'", "mockAnimationsApi()", "```"].join(`
`)), [];
});
var KBe = ((e) => (e[e.None = 0] = "None", e[e.Closed = 1] = "Closed", e[e.Enter = 2] = "Enter", e[e.Leave = 4] = "Leave", e))(KBe || {});
function XBe(e) {
let t = {};
for (let r in e) e[r] === !0 && (t[`data-${r}`] = "");
return t;
}
function JBe(e, t, r, n) {
let [o, a] = de(r), { hasFlag: i, addFlag: s, removeFlag: u } = qBe(e && o ? 3 : 0), c = ne(!1), d = ne(!1), l = Bre();
return nc(() => {
var f;
if (e) {
if (r && a(!0), !t) {
r && s(3);
return;
}
return (f = n == null ? void 0 : n.start) == null || f.call(n, r), QBe(t, { inFlight: c, prepare() {
d.current ? d.current = !1 : d.current = c.current, c.current = !0, !d.current && (r ? (s(3), u(4)) : (s(4), u(2)));
}, run() {
d.current ? r ? (u(3), s(4)) : (u(4), s(3)) : r ? u(1) : s(1);
}, done() {
var p;
d.current && typeof t.getAnimations == "function" && t.getAnimations().length > 0 || (c.current = !1, u(7), r || a(!1), (p = n == null ? void 0 : n.end) == null || p.call(n, r));
} });
}
}, [e, r, t, l]), e ? [o, { closed: i(1), enter: i(2), leave: i(4), transition: i(2) || i(4) }] : [r, { closed: void 0, enter: void 0, leave: void 0, transition: void 0 }];
}
function QBe(e, { prepare: t, run: r, done: n, inFlight: o }) {
let a = Pw();
return eYe(e, { prepare: t, inFlight: o }), a.nextFrame(() => {
r(), a.requestAnimationFrame(() => {
a.add(ZBe(e, n));
});
}), a.dispose;
}
function ZBe(e, t) {
var r, n;
let o = Pw();
if (!e) return o.dispose;
let a = !1;
o.add(() => {
a = !0;
});
let i = (n = (r = e.getAnimations) == null ? void 0 : r.call(e).filter((s) => s instanceof CSSTransition)) != null ? n : [];
return i.length === 0 ? (t(), o.dispose) : (Promise.allSettled(i.map((s) => s.finished)).then(() => {
a || t();
}), o.dispose);
}
function eYe(e, { inFlight: t, prepare: r }) {
if (t != null && t.current) {
r();
return;
}
let n = e.style.transition;
e.style.transition = "none", r(), e.offsetHeight, e.style.transition = n;
}
let Z6 = zt(null);
Z6.displayName = "OpenClosedContext";
var yu = ((e) => (e[e.Open = 1] = "Open", e[e.Closed = 2] = "Closed", e[e.Closing = 4] = "Closing", e[e.Opening = 8] = "Opening", e))(yu || {});
function Qre() {
return nt(Z6);
}
function tYe({ value: e, children: t }) {
return ae.createElement(Z6.Provider, { value: e }, t);
}
function rYe() {
let e = typeof document > "u";
return "useSyncExternalStore" in V ? ((t) => t.useSyncExternalStore)(V)(() => () => {
}, () => !1, () => !e) : !1;
}
function Zre() {
let e = rYe(), [t, r] = V.useState(d1.isHandoffComplete);
return t && d1.isHandoffComplete === !1 && r(!1), V.useEffect(() => {
t !== !0 && r(!0);
}, [t]), V.useEffect(() => d1.handoff(), []), e ? !1 : t;
}
function nYe() {
let e = ne(!1);
return nc(() => (e.current = !0, () => {
e.current = !1;
}), []), e;
}
function ene(e) {
var t;
return !!(e.enter || e.enterFrom || e.enterTo || e.leave || e.leaveFrom || e.leaveTo) || ((t = e.as) != null ? t : rne) !== Ut || ae.Children.count(e.children) === 1;
}
let Nw = zt(null);
Nw.displayName = "TransitionContext";
var oYe = ((e) => (e.Visible = "visible", e.Hidden = "hidden", e))(oYe || {});
function aYe() {
let e = nt(Nw);
if (e === null) throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");
return e;
}
function iYe() {
let e = nt(Tw);
if (e === null) throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");
return e;
}
let Tw = zt(null);
Tw.displayName = "NestingContext";
function Iw(e) {
return "children" in e ? Iw(e.children) : e.current.filter(({ el: t }) => t.current !== null).filter(({ state: t }) => t === "visible").length > 0;
}
function tne(e, t) {
let r = Yre(e), n = ne([]), o = nYe(), a = Bre(), i = Di((p, y = Jl.Hidden) => {
let m = n.current.findIndex(({ el: h }) => h === p);
m !== -1 && (Cw(y, { [Jl.Unmount]() {
n.current.splice(m, 1);
}, [Jl.Hidden]() {
n.current[m].state = "hidden";
} }), a.microTask(() => {
var h;
!Iw(n) && o.current && ((h = r.current) == null || h.call(r));
}));
}), s = Di((p) => {
let y = n.current.find(({ el: m }) => m === p);
return y ? y.state !== "visible" && (y.state = "visible") : n.current.push({ el: p, state: "visible" }), () => i(p, Jl.Unmount);
}), u = ne([]), c = ne(Promise.resolve()), d = ne({ enter: [], leave: [] }), l = Di((p, y, m) => {
u.current.splice(0), t && (t.chains.current[y] = t.chains.current[y].filter(([h]) => h !== p)), t == null || t.chains.current[y].push([p, new Promise((h) => {
u.current.push(h);
})]), t == null || t.chains.current[y].push([p, new Promise((h) => {
Promise.all(d.current[y].map(([w, $]) => $)).then(() => h());
})]), y === "enter" ? c.current = c.current.then(() => t == null ? void 0 : t.wait.current).then(() => m(y)) : m(y);
}), f = Di((p, y, m) => {
Promise.all(d.current[y].splice(0).map(([h, w]) => w)).then(() => {
var h;
(h = u.current.shift()) == null || h();
}).then(() => m(y));
});
return Ie(() => ({ children: n, register: s, unregister: i, onStart: l, onStop: f, wait: c, chains: d }), [s, i, n, l, f, d, c]);
}
let rne = Ut, nne = qre.RenderStrategy;
function sYe(e, t) {
var r, n;
let { transition: o = !0, beforeEnter: a, afterEnter: i, beforeLeave: s, afterLeave: u, enter: c, enterFrom: d, enterTo: l, entered: f, leave: p, leaveFrom: y, leaveTo: m, ...h } = e, [w, $] = de(null), _ = ne(null), S = ene(e), b = Jre(...S ? [_, t, $] : t === null ? [] : [t]), F = (r = h.unmount) == null || r ? Jl.Unmount : Jl.Hidden, { show: z, appear: q, initial: Y } = aYe(), [B, Z] = de(z ? "visible" : "hidden"), M = iYe(), { register: te, unregister: G } = M;
nc(() => te(_), [te, _]), nc(() => {
if (F === Jl.Hidden && _.current) {
if (z && B !== "visible") {
Z("visible");
return;
}
return Cw(B, { hidden: () => G(_), visible: () => te(_) });
}
}, [B, _, te, G, z, F]);
let H = Zre();
nc(() => {
if (S && H && B === "visible" && _.current === null) throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?");
}, [_, B, H, S]);
let U = Y && !q, W = q && z && Y, X = ne(!1), ee = tne(() => {
X.current || (Z("hidden"), G(_));
}, M), v = Di((C) => {
X.current = !0;
let I = C ? "enter" : "leave";
ee.onStart(_, I, (j) => {
j === "enter" ? a == null || a() : j === "leave" && (s == null || s());
});
}), g = Di((C) => {
let I = C ? "enter" : "leave";
X.current = !1, ee.onStop(_, I, (j) => {
j === "enter" ? i == null || i() : j === "leave" && (u == null || u());
}), I === "leave" && !Iw(ee) && (Z("hidden"), G(_));
});
ue(() => {
S && o || (v(z), g(z));
}, [z, S, o]);
let O = !(!o || !S || !H || U), [, P] = JBe(O, w, z, { start: v, end: g }), A = eu({ ref: b, className: ((n = u4(h.className, W && c, W && d, P.enter && c, P.enter && P.closed && d, P.enter && !P.closed && l, P.leave && p, P.leave && !P.closed && y, P.leave && P.closed && m, !P.transition && z && f)) == null ? void 0 : n.trim()) || void 0, ...XBe(P) }), T = 0;
B === "visible" && (T |= yu.Open), B === "hidden" && (T |= yu.Closed), z && B === "hidden" && (T |= yu.Opening), !z && B === "visible" && (T |= yu.Closing);
let N = Kre();
return ae.createElement(Tw.Provider, { value: ee }, ae.createElement(tYe, { value: T }, N({ ourProps: A, theirProps: h, defaultTag: rne, features: nne, visible: B === "visible", name: "Transition.Child" })));
}
function lYe(e, t) {
let { show: r, appear: n = !1, unmount: o = !0, ...a } = e, i = ne(null), s = ene(e), u = Jre(...s ? [i, t] : t === null ? [] : [t]);
Zre();
let c = Qre();
if (r === void 0 && c !== null && (r = (c & yu.Open) === yu.Open), r === void 0) throw new Error("A <Transition /> is used but it is missing a `show={true | false}` prop.");
let [d, l] = de(r ? "visible" : "hidden"), f = tne(() => {
r || l("hidden");
}), [p, y] = de(!0), m = ne([r]);
nc(() => {
p !== !1 && m.current[m.current.length - 1] !== r && (m.current.push(r), y(!1));
}, [m, r]);
let h = Ie(() => ({ show: r, appear: n, initial: p }), [r, n, p]);
nc(() => {
r ? l("visible") : !Iw(f) && i.current !== null && l("hidden");
}, [r, f]);
let w = { unmount: o }, $ = Di(() => {
var b;
p && y(!1), (b = e.beforeEnter) == null || b.call(e);
}), _ = Di(() => {
var b;
p && y(!1), (b = e.beforeLeave) == null || b.call(e);
}), S = Kre();
return ae.createElement(Tw.Provider, { value: f }, ae.createElement(Nw.Provider, { value: h }, S({ ourProps: { ...w, as: Ut, children: ae.createElement(one, { ref: u, ...w, ...a, beforeEnter: $, beforeLeave: _ }) }, theirProps: {}, defaultTag: Ut, features: nne, visible: d === "visible", name: "Transition" })));
}
function cYe(e, t) {
let r = nt(Nw) !== null, n = Qre() !== null;
return ae.createElement(ae.Fragment, null, !r && n ? ae.createElement(f4, { ref: t, ...e }) : ae.createElement(one, { ref: t, ...e }));
}
let f4 = Q6(lYe), one = Q6(sYe), uYe = Q6(cYe);
Object.assign(f4, { Child: uYe, Root: f4 });
const ane = typeof document < "u" ? ae.useLayoutEffect : () => {
};
function fYe(e) {
const t = ne(null);
return ane(() => {
t.current = e;
}, [
e
]), Ne((...r) => {
const n = t.current;
return n == null ? void 0 : n(...r);
}, []);
}
const qc = (e) => {
var t;
return (t = e == null ? void 0 : e.ownerDocument) !== null && t !== void 0 ? t : document;
}, vu = (e) => e && "window" in e && e.window === e ? e : qc(e).defaultView || window;
function ine(e, t) {
return t && e ? e.contains(t) : !1;
}
const d4 = (e = document) => e.activeElement;
function sne(e) {
return e.target;
}
function dYe(e) {
var t;
return typeof window > "u" || window.navigator == null ? !1 : ((t = window.navigator.userAgentData) === null || t === void 0 ? void 0 : t.brands.some((r) => e.test(r.brand))) || e.test(window.navigator.userAgent);
}
function pYe(e) {
var t;
return typeof window < "u" && window.navigator != null ? e.test(((t = window.navigator.userAgentData) === null || t === void 0 ? void 0 : t.platform) || window.navigator.platform) : !1;
}
function lne(e) {
let t = null;
return () => (t == null && (t = e()), t);
}
const mYe = lne(function() {
return pYe(/^Mac/i);
}), hYe = lne(function() {
return dYe(/Android/i);
});
function cne() {
let e = ne(/* @__PURE__ */ new Map()), t = Ne((o, a, i, s) => {
let u = s != null && s.once ? (...c) => {
e.current.delete(i), i(...c);
} : i;
e.current.set(i, {
type: a,
eventTarget: o,
fn: u,
options: s
}), o.addEventListener(a, u, s);
}, []), r = Ne((o, a, i, s) => {
var u;
let c = ((u = e.current.get(i)) === null || u === void 0 ? void 0 : u.fn) || i;
o.removeEventListener(a, c, s), e.current.delete(i);
}, []), n = Ne(() => {
e.current.forEach((o, a) => {
r(o.eventTarget, o.type, a, o.options);
});
}, [
r
]);
return ue(() => n, [
n
]), {
addGlobalListener: t,
removeGlobalListener: r,
removeAllGlobalListeners: n
};
}
function gYe(e) {
return e.mozInputSource === 0 && e.isTrusted ? !0 : hYe() && e.pointerType ? e.type === "click" && e.buttons === 1 : e.detail === 0 && !e.pointerType;
}
class une {
isDefaultPrevented() {
return this.nativeEvent.defaultPrevented;
}
preventDefault() {
this.defaultPrevented = !0, this.nativeEvent.preventDefault();
}
stopPropagation() {
this.nativeEvent.stopPropagation(), this.isPropagationStopped = () => !0;
}
isPropagationStopped() {
return !1;
}
persist() {
}
constructor(t, r) {
this.nativeEvent = r, this.target = r.target, this.currentTarget = r.currentTarget, this.relatedTarget = r.relatedTarget, this.bubbles = r.bubbles, this.cancelable = r.cancelable, this.defaultPrevented = r.defaultPrevented, this.eventPhase = r.eventPhase, this.isTrusted = r.isTrusted, this.timeStamp = r.timeStamp, this.type = t;
}
}
function fne(e) {
let t = ne({
isFocused: !1,
observer: null
});
ane(() => {
const n = t.current;
return () => {
n.observer && (n.observer.disconnect(), n.observer = null);
};
}, []);
let r = fYe((n) => {
e == null || e(n);
});
return Ne((n) => {
if (n.target instanceof HTMLButtonElement || n.target instanceof HTMLInputElement || n.target instanceof HTMLTextAreaElement || n.target instanceof HTMLSelectElement) {
t.current.isFocused = !0;
let o = n.target, a = (i) => {
t.current.isFocused = !1, o.disabled && r(new une("blur", i)), t.current.observer && (t.current.observer.disconnect(), t.current.observer = null);
};
o.addEventListener("focusout", a, {
once: !0
}), t.current.observer = new MutationObserver(() => {
if (t.current.isFocused && o.disabled) {
var i;
(i = t.current.observer) === null || i === void 0 || i.disconnect();
let s = o === document.activeElement ? null : document.activeElement;
o.dispatchEvent(new FocusEvent("blur", {
relatedTarget: s
})), o.dispatchEvent(new FocusEvent("focusout", {
bubbles: !0,
relatedTarget: s
}));
}
}), t.current.observer.observe(o, {
attributes: !0,
attributeFilter: [
"disabled"
]
});
}
}, [
r
]);
}
let bYe = !1, ay = null, p4 = /* @__PURE__ */ new Set(), mg = /* @__PURE__ */ new Map(), nf = !1, m4 = !1;
const yYe = {
Tab: !0,
Escape: !0
};
function eN(e, t) {
for (let r of p4) r(e, t);
}
function vYe(e) {
return !(e.metaKey || !mYe() && e.altKey || e.ctrlKey || e.key === "Control" || e.key === "Shift" || e.key === "Meta");
}
function O0(e) {
nf = !0, vYe(e) && (ay = "keyboard", eN("keyboard", e));
}
function Po(e) {
ay = "pointer", (e.type === "mousedown" || e.type === "pointerdown") && (nf = !0, eN("pointer", e));
}
function dne(e) {
gYe(e) && (nf = !0, ay = "virtual");
}
function pne(e) {
e.target === window || e.target === document || bYe || !e.isTrusted || (!nf && !m4 && (ay = "virtual", eN("virtual", e)), nf = !1, m4 = !1);
}
function mne() {
nf = !1, m4 = !0;
}
function h4(e) {
if (typeof window > "u" || mg.get(vu(e))) return;
const t = vu(e), r = qc(e);
let n = t.HTMLElement.prototype.focus;
t.HTMLElement.prototype.focus = function() {
nf = !0, n.apply(this, arguments);
}, r.addEventListener("keydown", O0, !0), r.addEventListener("keyup", O0, !0), r.addEventListener("click", dne, !0), t.addEventListener("focus", pne, !0), t.addEventListener("blur", mne, !1), typeof PointerEvent < "u" ? (r.addEventListener("pointerdown", Po, !0), r.addEventListener("pointermove", Po, !0), r.addEventListener("pointerup", Po, !0)) : (r.addEventListener("mousedown", Po, !0), r.addEventListener("mousemove", Po, !0), r.addEventListener("mouseup", Po, !0)), t.addEventListener("beforeunload", () => {
hne(e);
}, {
once: !0
}), mg.set(t, {
focus: n
});
}
const hne = (e, t) => {
const r = vu(e), n = qc(e);
t && n.removeEventListener("DOMContentLoaded", t), mg.has(r) && (r.HTMLElement.prototype.focus = mg.get(r).focus, n.removeEventListener("keydown", O0, !0), n.removeEventListener("keyup", O0, !0), n.removeEventListener("click", dne, !0), r.removeEventListener("focus", pne, !0), r.removeEventListener("blur", mne, !1), typeof PointerEvent < "u" ? (n.removeEventListener("pointerdown", Po, !0), n.removeEventListener("pointermove", Po, !0), n.removeEventListener("pointerup", Po, !0)) : (n.removeEventListener("mousedown", Po, !0), n.removeEventListener("mousemove", Po, !0), n.removeEventListener("mouseup", Po, !0)), mg.delete(r));
};
function xYe(e) {
const t = qc(e);
let r;
return t.readyState !== "loading" ? h4(e) : (r = () => {
h4(e);
}, t.addEventListener("DOMContentLoaded", r)), () => hne(e, r);
}
typeof document < "u" && xYe();
function gne() {
return ay !== "pointer";
}
const wYe = /* @__PURE__ */ new Set([
"checkbox",
"radio",
"range",
"color",
"file",
"image",
"button",
"submit",
"reset"
]);
function $Ye(e, t, r) {
let n = qc(r == null ? void 0 : r.target);
const o = typeof window < "u" ? vu(r == null ? void 0 : r.target).HTMLInputElement : HTMLInputElement, a = typeof window < "u" ? vu(r == null ? void 0 : r.target).HTMLTextAreaElement : HTMLTextAreaElement, i = typeof window < "u" ? vu(r == null ? void 0 : r.target).HTMLElement : HTMLElement, s = typeof window < "u" ? vu(r == null ? void 0 : r.target).KeyboardEvent : KeyboardEvent;
return e = e || n.activeElement instanceof o && !wYe.has(n.activeElement.type) || n.activeElement instanceof a || n.activeElement instanceof i && n.activeElement.isContentEditable, !(e && t === "keyboard" && r instanceof s && !yYe[r.key]);
}
function kYe(e, t, r) {
h4(), ue(() => {
let n = (o, a) => {
$Ye(!!(r != null && r.isTextInput), o, a) && e(gne());
};
return p4.add(n), () => {
p4.delete(n);
};
}, t);
}
function _Ye(e) {
let { isDisabled: t, onFocus: r, onBlur: n, onFocusChange: o } = e;
const a = Ne((u) => {
if (u.target === u.currentTarget)
return n && n(u), o && o(!1), !0;
}, [
n,
o
]), i = fne(a), s = Ne((u) => {
const c = qc(u.target), d = c ? d4(c) : d4();
u.target === u.currentTarget && d === sne(u.nativeEvent) && (r && r(u), o && o(!0), i(u));
}, [
o,
r,
i
]);
return {
focusProps: {
onFocus: !t && (r || o || n) ? s : void 0,
onBlur: !t && (n || o) ? a : void 0
}
};
}
function OYe(e) {
let { isDisabled: t, onBlurWithin: r, onFocusWithin: n, onFocusWithinChange: o } = e, a = ne({
isFocusWithin: !1
}), { addGlobalListener: i, removeAllGlobalListeners: s } = cne(), u = Ne((l) => {
l.currentTarget.contains(l.target) && a.current.isFocusWithin && !l.currentTarget.contains(l.relatedTarget) && (a.current.isFocusWithin = !1, s(), r && r(l), o && o(!1));
}, [
r,
o,
a,
s
]), c = fne(u), d = Ne((l) => {
if (!l.currentTarget.contains(l.target)) return;
const f = qc(l.target), p = d4(f);
if (!a.current.isFocusWithin && p === sne(l.nativeEvent)) {
n && n(l), o && o(!0), a.current.isFocusWithin = !0, c(l);
let y = l.currentTarget;
i(f, "focus", (m) => {
if (a.current.isFocusWithin && !ine(y, m.target)) {
let h = new une("blur", new f.defaultView.FocusEvent("blur", {
relatedTarget: m.target
}));
h.target = y, h.currentTarget = y, u(h);
}
}, {
capture: !0
});
}
}, [
n,
o,
c,
i,
u
]);
return t ? {
focusWithinProps: {
// These cannot be null, that would conflict in mergeProps
onFocus: void 0,
onBlur: void 0
}
} : {
focusWithinProps: {
onFocus: d,
onBlur: u
}
};
}
let S0 = !1, F_ = 0;
function g4() {
S0 = !0, setTimeout(() => {
S0 = !1;
}, 50);
}
function Wz(e) {
e.pointerType === "touch" && g4();
}
function SYe() {
if (!(typeof document > "u"))
return typeof PointerEvent < "u" ? document.addEventListener("pointerup", Wz) : document.addEventListener("touchend", g4), F_++, () => {
F_--, !(F_ > 0) && (typeof PointerEvent < "u" ? document.removeEventListener("pointerup", Wz) : document.removeEventListener("touchend", g4));
};
}
function EYe(e) {
let { onHoverStart: t, onHoverChange: r, onHoverEnd: n, isDisabled: o } = e, [a, i] = de(!1), s = ne({
isHovered: !1,
ignoreEmulatedMouseEvents: !1,
pointerType: "",
target: null
}).current;
ue(SYe, []);
let { addGlobalListener: u, removeAllGlobalListeners: c } = cne(), { hoverProps: d, triggerHoverEnd: l } = Ie(() => {
let f = (m, h) => {
if (s.pointerType = h, o || h === "touch" || s.isHovered || !m.currentTarget.contains(m.target)) return;
s.isHovered = !0;
let w = m.currentTarget;
s.target = w, u(qc(m.target), "pointerover", ($) => {
s.isHovered && s.target && !ine(s.target, $.target) && p($, $.pointerType);
}, {
capture: !0
}), t && t({
type: "hoverstart",
target: w,
pointerType: h
}), r && r(!0), i(!0);
}, p = (m, h) => {
let w = s.target;
s.pointerType = "", s.target = null, !(h === "touch" || !s.isHovered || !w) && (s.isHovered = !1, c(), n && n({
type: "hoverend",
target: w,
pointerType: h
}), r && r(!1), i(!1));
}, y = {};
return typeof PointerEvent < "u" ? (y.onPointerEnter = (m) => {
S0 && m.pointerType === "mouse" || f(m, m.pointerType);
}, y.onPointerLeave = (m) => {
!o && m.currentTarget.contains(m.target) && p(m, m.pointerType);
}) : (y.onTouchStart = () => {
s.ignoreEmulatedMouseEvents = !0;
}, y.onMouseEnter = (m) => {
!s.ignoreEmulatedMouseEvents && !S0 && f(m, "mouse"), s.ignoreEmulatedMouseEvents = !1;
}, y.onMouseLeave = (m) => {
!o && m.currentTarget.contains(m.target) && p(m, "mouse");
}), {
hoverProps: y,
triggerHoverEnd: p
};
}, [
t,
r,
n,
o,
s,
u,
c
]);
return ue(() => {
o && l({
currentTarget: s.target
}, s.pointerType);
}, [
o
]), {
hoverProps: d,
isHovered: a
};
}
function bne(e = {}) {
let { autoFocus: t = !1, isTextInput: r, within: n } = e, o = ne({
isFocused: !1,
isFocusVisible: t || gne()
}), [a, i] = de(!1), [s, u] = de(() => o.current.isFocused && o.current.isFocusVisible), c = Ne(() => u(o.current.isFocused && o.current.isFocusVisible), []), d = Ne((p) => {
o.current.isFocused = p, i(p), c();
}, [
c
]);
kYe((p) => {
o.current.isFocusVisible = p, c();
}, [], {
isTextInput: r
});
let { focusProps: l } = _Ye({
isDisabled: n,
onFocusChange: d
}), { focusWithinProps: f } = OYe({
isDisabled: !n,
onFocusWithinChange: d
});
return {
isFocused: a,
isFocusVisible: s,
focusProps: n ? f : l
};
}
var AYe = Object.defineProperty, PYe = (e, t, r) => t in e ? AYe(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, L_ = (e, t, r) => (PYe(e, typeof t != "symbol" ? t + "" : t, r), r);
let CYe = class {
constructor() {
L_(this, "current", this.detect()), L_(this, "handoffState", "pending"), L_(this, "currentId", 0);
}
set(e) {
this.current !== e && (this.handoffState = "pending", this.currentId = 0, this.current = e);
}
reset() {
this.set(this.detect());
}
nextId() {
return ++this.currentId;
}
get isServer() {
return this.current === "server";
}
get isClient() {
return this.current === "client";
}
detect() {
return typeof window > "u" || typeof document > "u" ? "server" : "client";
}
handoff() {
this.handoffState === "pending" && (this.handoffState = "complete");
}
get isHandoffComplete() {
return this.handoffState === "complete";
}
}, yne = new CYe();
function vne(e) {
var t, r;
return yne.isServer ? null : e ? "ownerDocument" in e ? e.ownerDocument : "current" in e ? (r = (t = e.current) == null ? void 0 : t.ownerDocument) != null ? r : document : null : document;
}
function xne(e) {
typeof queueMicrotask == "function" ? queueMicrotask(e) : Promise.resolve().then(e).catch((t) => setTimeout(() => {
throw t;
}));
}
function wne() {
let e = [], t = { addEventListener(r, n, o, a) {
return r.addEventListener(n, o, a), t.add(() => r.removeEventListener(n, o, a));
}, requestAnimationFrame(...r) {
let n = requestAnimationFrame(...r);
return t.add(() => cancelAnimationFrame(n));
}, nextFrame(...r) {
return t.requestAnimationFrame(() => t.requestAnimationFrame(...r));
}, setTimeout(...r) {
let n = setTimeout(...r);
return t.add(() => clearTimeout(n));
}, microTask(...r) {
let n = { current: !0 };
return xne(() => {
n.current && r[0]();
}), t.add(() => {
n.current = !1;
});
}, style(r, n, o) {
let a = r.style.getPropertyValue(n);
return Object.assign(r.style, { [n]: o }), this.add(() => {
Object.assign(r.style, { [n]: a });
});
}, group(r) {
let n = wne();
return r(n), this.add(() => n.dispose());
}, add(r) {
return e.includes(r) || e.push(r), () => {
let n = e.indexOf(r);
if (n >= 0) for (let o of e.splice(n, 1)) o();
};
}, dispose() {
for (let r of e.splice(0)) r();
} };
return t;
}
function NYe() {
let [e] = de(wne);
return ue(() => () => e.dispose(), [e]), e;
}
let Xd = (e, t) => {
yne.isServer ? ue(e, t) : pi(e, t);
};
function kh(e) {
let t = ne(e);
return Xd(() => {
t.current = e;
}, [e]), t;
}
let ai = function(e) {
let t = kh(e);
return ae.useCallback((...r) => t.current(...r), [t]);
};
function TYe(e) {
let t = e.width / 2, r = e.height / 2;
return { top: e.clientY - r, right: e.clientX + t, bottom: e.clientY + r, left: e.clientX - t };
}
function IYe(e, t) {
return !(!e || !t || e.right < t.left || e.left > t.right || e.bottom < t.top || e.top > t.bottom);
}
function jYe({ disabled: e = !1 } = {}) {
let t = ne(null), [r, n] = de(!1), o = NYe(), a = ai(() => {
t.current = null, n(!1), o.dispose();
}), i = ai((s) => {
if (o.dispose(), t.current === null) {
t.current = s.currentTarget, n(!0);
{
let u = vne(s.currentTarget);
o.addEventListener(u, "pointerup", a, !1), o.addEventListener(u, "pointermove", (c) => {
if (t.current) {
let d = TYe(c);
n(IYe(d, t.current.getBoundingClientRect()));
}
}, !1), o.addEventListener(u, "pointercancel", a, !1);
}
}
});
return { pressed: r, pressProps: e ? {} : { onPointerDown: i, onPointerUp: a, onClick: a } };
}
function Vz(...e) {
return Array.from(new Set(e.flatMap((t) => typeof t == "string" ? t.split(" ") : []))).filter(Boolean).join(" ");
}
function ku(e, t, ...r) {
if (e in t) {
let o = t[e];
return typeof o == "function" ? o(...r) : o;
}
let n = new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map((o) => `"${o}"`).join(", ")}.`);
throw Error.captureStackTrace && Error.captureStackTrace(n, ku), n;
}
var b4 = ((e) => (e[e.None = 0] = "None", e[e.RenderStrategy = 1] = "RenderStrategy", e[e.Static = 2] = "Static", e))(b4 || {}), RYe = ((e) => (e[e.Unmount = 0] = "Unmount", e[e.Hidden = 1] = "Hidden", e))(RYe || {});
function Tp() {
let e = DYe();
return Ne((t) => MYe({ mergeRefs: e, ...t }), [e]);
}
function MYe({ ourProps: e, theirProps: t, slot: r, defaultTag: n, features: o, visible: a = !0, name: i, mergeRefs: s }) {
s = s ?? FYe;
let u = $ne(t, e);
if (a) return wv(u, r, n, i, s);
let c = o ?? 0;
if (c & 2) {
let { static: d = !1, ...l } = u;
if (d) return wv(l, r, n, i, s);
}
if (c & 1) {
let { unmount: d = !0, ...l } = u;
return ku(d ? 0 : 1, { 0() {
return null;
}, 1() {
return wv({ ...l, hidden: !0, style: { display: "none" } }, r, n, i, s);
} });
}
return wv(u, r, n, i, s);
}
function wv(e, t = {}, r, n, o) {
let { as: a = r, children: i, refName: s = "ref", ...u } = z_(e, ["unmount", "static"]), c = e.ref !== void 0 ? { [s]: e.ref } : {}, d = typeof i == "function" ? i(t) : i;
"className" in u && u.className && typeof u.className == "function" && (u.className = u.className(t)), u["aria-labelledby"] && u["aria-labelledby"] === u.id && (u["aria-labelledby"] = void 0);
let l = {};
if (t) {
let f = !1, p = [];
for (let [y, m] of Object.entries(t)) typeof m == "boolean" && (f = !0), m === !0 && p.push(y.replace(/([A-Z])/g, (h) => `-${h.toLowerCase()}`));
if (f) {
l["data-headlessui-state"] = p.join(" ");
for (let y of p) l[`data-${y}`] = "";
}
}
if (a === Ut && (Object.keys($f(u)).length > 0 || Object.keys($f(l)).length > 0)) if (!Fi(d) || Array.isArray(d) && d.length > 1) {
if (Object.keys($f(u)).length > 0) throw new Error(['Passing props on "Fragment"!', "", `The current component <${n} /> is rendering a "Fragment".`, "However we need to passthrough the following props:", Object.keys($f(u)).concat(Object.keys($f(l))).map((f) => ` - ${f}`).join(`
`), "", "You can apply a few solutions:", ['Add an `as="..."` prop, to ensure that we render an actual element instead of a "Fragment".', "Render a single element as the child so that we can forward the props onto that element."].map((f) => ` - ${f}`).join(`
`)].join(`
`));
} else {
let f = d.props, p = f == null ? void 0 : f.className, y = typeof p == "function" ? (...w) => Vz(p(...w), u.className) : Vz(p, u.className), m = y ? { className: y } : {}, h = $ne(d.props, $f(z_(u, ["ref"])));
for (let w in l) w in h && delete l[w];
return Li(d, Object.assign({}, h, l, c, { ref: o(LYe(d), c.ref) }, m));
}
return vb(a, Object.assign({}, z_(u, ["ref"]), a !== Ut && c, a !== Ut && l), d);
}
function DYe() {
let e = ne([]), t = Ne((r) => {
for (let n of e.current) n != null && (typeof n == "function" ? n(r) : n.current = r);
}, []);
return (...r) => {
if (!r.every((n) => n == null)) return e.current = r, t;
};
}
function FYe(...e) {
return e.every((t) => t == null) ? void 0 : (t) => {
for (let r of e) r != null && (typeof r == "function" ? r(t) : r.current = t);
};
}
function $ne(...e) {
if (e.length === 0) return {};
if (e.length === 1) return e[0];
let t = {}, r = {};
for (let n of e) for (let o in n) o.startsWith("on") && typeof n[o] == "function" ? (r[o] != null || (r[o] = []), r[o].push(n[o])) : t[o] = n[o];
if (t.disabled || t["aria-disabled"]) for (let n in r) /^(on(?:Click|Pointer|Mouse|Key)(?:Down|Up|Press)?)$/.test(n) && (r[n] = [(o) => {
var a;
return (a = o == null ? void 0 : o.preventDefault) == null ? void 0 : a.call(o);
}]);
for (let n in r) Object.assign(t, { [n](o, ...a) {
let i = r[n];
for (let s of i) {
if ((o instanceof Event || (o == null ? void 0 : o.nativeEvent) instanceof Event) && o.defaultPrevented) return;
s(o, ...a);
}
} });
return t;
}
function kne(...e) {
if (e.length === 0) return {};
if (e.length === 1) return e[0];
let t = {}, r = {};
for (let n of e) for (let o in n) o.startsWith("on") && typeof n[o] == "function" ? (r[o] != null || (r[o] = []), r[o].push(n[o])) : t[o] = n[o];
for (let n in r) Object.assign(t, { [n](...o) {
let a = r[n];
for (let i of a) i == null || i(...o);
} });
return t;
}
function Ip(e) {
var t;
return Object.assign(sf(e), { displayName: (t = e.displayName) != null ? t : e.name });
}
function $f(e) {
let t = Object.assign({}, e);
for (let r in t) t[r] === void 0 && delete t[r];
return t;
}
function z_(e, t = []) {
let r = Object.assign({}, e);
for (let n of t) n in r && delete r[n];
return r;
}
function LYe(e) {
return ae.version.split(".")[0] >= "19" ? e.props.ref : e.ref;
}
let zYe = "span";
var _ne = ((e) => (e[e.None = 1] = "None", e[e.Focusable = 2] = "Focusable", e[e.Hidden = 4] = "Hidden", e))(_ne || {});
function WYe(e, t) {
var r;
let { features: n = 1, ...o } = e, a = { ref: t, "aria-hidden": (n & 2) === 2 ? !0 : (r = o["aria-hidden"]) != null ? r : void 0, hidden: (n & 4) === 4 ? !0 : void 0, style: { position: "fixed", top: 1, left: 1, width: 1, height: 0, padding: 0, margin: -1, overflow: "hidden", clip: "rect(0, 0, 0, 0)", whiteSpace: "nowrap", borderWidth: "0", ...(n & 4) === 4 && (n & 2) !== 2 && { display: "none" } } };
return Tp()({ ourProps: a, theirProps: o, slot: {}, defaultTag: zYe, name: "Hidden" });
}
let One = Ip(WYe), VYe = Symbol();
function iy(...e) {
let t = ne(e);
ue(() => {
t.current = e;
}, [e]);
let r = ai((n) => {
for (let o of t.current) o != null && (typeof o == "function" ? o(n) : o.current = n);
});
return e.every((n) => n == null || (n == null ? void 0 : n[VYe])) ? void 0 : r;
}
var Xo = ((e) => (e.Space = " ", e.Enter = "Enter", e.Escape = "Escape", e.Backspace = "Backspace", e.Delete = "Delete", e.ArrowLeft = "ArrowLeft", e.ArrowUp = "ArrowUp", e.ArrowRight = "ArrowRight", e.ArrowDown = "ArrowDown", e.Home = "Home", e.End = "End", e.PageUp = "PageUp", e.PageDown = "PageDown", e.Tab = "Tab", e))(Xo || {});
let HYe = ["[contentEditable=true]", "[tabindex]", "a[href]", "area[href]", "button:not([disabled])", "iframe", "input:not([disabled])", "select:not([disabled])", "textarea:not([disabled])"].map((e) => `${e}:not([tabindex='-1'])`).join(","), GYe = ["[data-autofocus]"].map((e) => `${e}:not([tabindex='-1'])`).join(",");
var Jo = ((e) => (e[e.First = 1] = "First", e[e.Previous = 2] = "Previous", e[e.Next = 4] = "Next", e[e.Last = 8] = "Last", e[e.WrapAround = 16] = "WrapAround", e[e.NoScroll = 32] = "NoScroll", e[e.AutoFocus = 64] = "AutoFocus", e))(Jo || {}), _h = ((e) => (e[e.Error = 0] = "Error", e[e.Overflow = 1] = "Overflow", e[e.Success = 2] = "Success", e[e.Underflow = 3] = "Underflow", e))(_h || {}), UYe = ((e) => (e[e.Previous = -1] = "Previous", e[e.Next = 1] = "Next", e))(UYe || {});
function BYe(e = document.body) {
return e == null ? [] : Array.from(e.querySelectorAll(HYe)).sort((t, r) => Math.sign((t.tabIndex || Number.MAX_SAFE_INTEGER) - (r.tabIndex || Number.MAX_SAFE_INTEGER)));
}
function YYe(e = document.body) {
return e == null ? [] : Array.from(e.querySelectorAll(GYe)).sort((t, r) => Math.sign((t.tabIndex || Number.MAX_SAFE_INTEGER) - (r.tabIndex || Number.MAX_SAFE_INTEGER)));
}
var qYe = ((e) => (e[e.Strict = 0] = "Strict", e[e.Loose = 1] = "Loose", e))(qYe || {}), KYe = ((e) => (e[e.Keyboard = 0] = "Keyboard", e[e.Mouse = 1] = "Mouse", e))(KYe || {});
typeof window < "u" && typeof document < "u" && (document.addEventListener("keydown", (e) => {
e.metaKey || e.altKey || e.ctrlKey || (document.documentElement.dataset.headlessuiFocusVisible = "");
}, !0), document.addEventListener("click", (e) => {
e.detail === 1 ? delete document.documentElement.dataset.headlessuiFocusVisible : e.detail === 0 && (document.documentElement.dataset.headlessuiFocusVisible = "");
}, !0));
let XYe = ["textarea", "input"].join(",");
function JYe(e) {
var t, r;
return (r = (t = e == null ? void 0 : e.matches) == null ? void 0 : t.call(e, XYe)) != null ? r : !1;
}
function Qf(e, t = (r) => r) {
return e.slice().sort((r, n) => {
let o = t(r), a = t(n);
if (o === null || a === null) return 0;
let i = o.compareDocumentPosition(a);
return i & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : i & Node.DOCUMENT_POSITION_PRECEDING ? 1 : 0;
});
}
function kf(e, t, { sorted: r = !0, relativeTo: n = null, skipElements: o = [] } = {}) {
let a = Array.isArray(e) ? e.length > 0 ? e[0].ownerDocument : document : e.ownerDocument, i = Array.isArray(e) ? r ? Qf(e) : e : t & 64 ? YYe(e) : BYe(e);
o.length > 0 && i.length > 1 && (i = i.filter((p) => !o.some((y) => y != null && "current" in y ? (y == null ? void 0 : y.current) === p : y === p))), n = n ?? a.activeElement;
let s = (() => {
if (t & 5) return 1;
if (t & 10) return -1;
throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last");
})(), u = (() => {
if (t & 1) return 0;
if (t & 2) return Math.max(0, i.indexOf(n)) - 1;
if (t & 4) return Math.max(0, i.indexOf(n)) + 1;
if (t & 8) return i.length - 1;
throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last");
})(), c = t & 32 ? { preventScroll: !0 } : {}, d = 0, l = i.length, f;
do {
if (d >= l || d + l <= 0) return 0;
let p = u + d;
if (t & 16) p = (p + l) % l;
else {
if (p < 0) return 3;
if (p >= l) return 1;
}
f = i[p], f == null || f.focus(c), d += s;
} while (f !== a.activeElement);
return t & 6 && JYe(f) && f.select(), 2;
}
function QYe(e, t) {
return Ie(() => {
var r;
if (e.type) return e.type;
let n = (r = e.as) != null ? r : "button";
if (typeof n == "string" && n.toLowerCase() === "button" || (t == null ? void 0 : t.tagName) === "BUTTON" && !t.hasAttribute("type")) return "button";
}, [e.type, e.as, t]);
}
function ZYe() {
let e = ne(!1);
return Xd(() => (e.current = !0, () => {
e.current = !1;
}), []), e;
}
function eqe({ onFocus: e }) {
let [t, r] = de(!0), n = ZYe();
return t ? ae.createElement(One, { as: "button", type: "button", features: _ne.Focusable, onFocus: (o) => {
o.preventDefault();
let a, i = 50;
function s() {
if (i-- <= 0) {
a && cancelAnimationFrame(a);
return;
}
if (e()) {
if (cancelAnimationFrame(a), !n.current) return;
r(!1);
return;
}
a = requestAnimationFrame(s);
}
a = requestAnimationFrame(s);
} }) : null;
}
const Sne = V.createContext(null);
function tqe() {
return { groups: /* @__PURE__ */ new Map(), get(e, t) {
var r;
let n = this.groups.get(e);
n || (n = /* @__PURE__ */ new Map(), this.groups.set(e, n));
let o = (r = n.get(t)) != null ? r : 0;
n.set(t, o + 1);
let a = Array.from(n.keys()).indexOf(t);
function i() {
let s = n.get(t);
s > 1 ? n.set(t, s - 1) : n.delete(t);
}
return [a, i];
} };
}
function rqe({ children: e }) {
let t = V.useRef(tqe());
return V.createElement(Sne.Provider, { value: t }, e);
}
function Ene(e) {
let t = V.useContext(Sne);
if (!t) throw new Error("You must wrap your component in a <StableCollection>");
let r = V.useId(), [n, o] = t.current.get(e, r);
return V.useEffect(() => o, []), n;
}
var nqe = ((e) => (e[e.Forwards = 0] = "Forwards", e[e.Backwards = 1] = "Backwards", e))(nqe || {}), oqe = ((e) => (e[e.Less = -1] = "Less", e[e.Equal = 0] = "Equal", e[e.Greater = 1] = "Greater", e))(oqe || {}), aqe = ((e) => (e[e.SetSelectedIndex = 0] = "SetSelectedIndex", e[e.RegisterTab = 1] = "RegisterTab", e[e.UnregisterTab = 2] = "UnregisterTab", e[e.RegisterPanel = 3] = "RegisterPanel", e[e.UnregisterPanel = 4] = "UnregisterPanel", e))(aqe || {});
let iqe = { 0(e, t) {
var r;
let n = Qf(e.tabs, (d) => d.current), o = Qf(e.panels, (d) => d.current), a = n.filter((d) => {
var l;
return !((l = d.current) != null && l.hasAttribute("disabled"));
}), i = { ...e, tabs: n, panels: o };
if (t.index < 0 || t.index > n.length - 1) {
let d = ku(Math.sign(t.index - e.selectedIndex), { [-1]: () => 1, 0: () => ku(Math.sign(t.index), { [-1]: () => 0, 0: () => 0, 1: () => 1 }), 1: () => 0 });
if (a.length === 0) return i;
let l = ku(d, { 0: () => n.indexOf(a[0]), 1: () => n.indexOf(a[a.length - 1]) });
return { ...i, selectedIndex: l === -1 ? e.selectedIndex : l };
}
let s = n.slice(0, t.index), u = [...n.slice(t.index), ...s].find((d) => a.includes(d));
if (!u) return i;
let c = (r = n.indexOf(u)) != null ? r : e.selectedIndex;
return c === -1 && (c = e.selectedIndex), { ...i, selectedIndex: c };
}, 1(e, t) {
if (e.tabs.includes(t.tab)) return e;
let r = e.tabs[e.selectedIndex], n = Qf([...e.tabs, t.tab], (a) => a.current), o = e.selectedIndex;
return e.info.current.isControlled || (o = n.indexOf(r), o === -1 && (o = e.selectedIndex)), { ...e, tabs: n, selectedIndex: o };
}, 2(e, t) {
return { ...e, tabs: e.tabs.filter((r) => r !== t.tab) };
}, 3(e, t) {
return e.panels.includes(t.panel) ? e : { ...e, panels: Qf([...e.panels, t.panel], (r) => r.current) };
}, 4(e, t) {
return { ...e, panels: e.panels.filter((r) => r !== t.panel) };
} }, tN = zt(null);
tN.displayName = "TabsDataContext";
function Jd(e) {
let t = nt(tN);
if (t === null) {
let r = new Error(`<${e} /> is missing a parent <Tab.Group /> component.`);
throw Error.captureStackTrace && Error.captureStackTrace(r, Jd), r;
}
return t;
}
let rN = zt(null);
rN.displayName = "TabsActionsContext";
function nN(e) {
let t = nt(rN);
if (t === null) {
let r = new Error(`<${e} /> is missing a parent <Tab.Group /> component.`);
throw Error.captureStackTrace && Error.captureStackTrace(r, nN), r;
}
return t;
}
function sqe(e, t) {
return ku(t.type, iqe, e, t);
}
let lqe = "div";
function cqe(e, t) {
let { defaultIndex: r = 0, vertical: n = !1, manual: o = !1, onChange: a, selectedIndex: i = null, ...s } = e;
const u = n ? "vertical" : "horizontal", c = o ? "manual" : "auto";
let d = i !== null, l = kh({ isControlled: d }), f = iy(t), [p, y] = D4(sqe, { info: l, selectedIndex: i ?? r, tabs: [], panels: [] }), m = Ie(() => ({ selectedIndex: p.selectedIndex }), [p.selectedIndex]), h = kh(a || (() => {
})), w = kh(p.tabs), $ = Ie(() => ({ orientation: u, activation: c, ...p }), [u, c, p]), _ = ai((B) => (y({ type: 1, tab: B }), () => y({ type: 2, tab: B }))), S = ai((B) => (y({ type: 3, panel: B }), () => y({ type: 4, panel: B }))), b = ai((B) => {
F.current !== B && h.current(B), d || y({ type: 0, index: B });
}), F = kh(d ? e.selectedIndex : p.selectedIndex), z = Ie(() => ({ registerTab: _, registerPanel: S, change: b }), []);
Xd(() => {
y({ type: 0, index: i ?? r });
}, [i]), Xd(() => {
if (F.current === void 0 || p.tabs.length <= 0) return;
let B = Qf(p.tabs, (Z) => Z.current);
B.some((Z, M) => p.tabs[M] !== Z) && b(B.indexOf(p.tabs[F.current]));
});
let q = { ref: f }, Y = Tp();
return ae.createElement(rqe, null, ae.createElement(rN.Provider, { value: z }, ae.createElement(tN.Provider, { value: $ }, $.tabs.length <= 0 && ae.createElement(eqe, { onFocus: () => {
var B, Z;
for (let M of w.current) if (((B = M.current) == null ? void 0 : B.tabIndex) === 0) return (Z = M.current) == null || Z.focus(), !0;
return !1;
} }), Y({ ourProps: q, theirProps: s, slot: m, defaultTag: lqe, name: "Tabs" }))));
}
let uqe = "div";
function fqe(e, t) {
let { orientation: r, selectedIndex: n } = Jd("Tab.List"), o = iy(t), a = Ie(() => ({ selectedIndex: n }), [n]), i = e, s = { ref: o, role: "tablist", "aria-orientation": r };
return Tp()({ ourProps: s, theirProps: i, slot: a, defaultTag: uqe, name: "Tabs.List" });
}
let dqe = "button";
function pqe(e, t) {
var r, n;
let o = ua(), { id: a = `headlessui-tabs-tab-${o}`, disabled: i = !1, autoFocus: s = !1, ...u } = e, { orientation: c, activation: d, selectedIndex: l, tabs: f, panels: p } = Jd("Tab"), y = nN("Tab"), m = Jd("Tab"), [h, w] = de(null), $ = ne(null), _ = iy($, t, w);
Xd(() => y.registerTab($), [y, $]);
let S = Ene("tabs"), b = f.indexOf($);
b === -1 && (b = S);
let F = b === l, z = ai((v) => {
var g;
let O = v();
if (O === _h.Success && d === "auto") {
let P = (g = vne($)) == null ? void 0 : g.activeElement, A = m.tabs.findIndex((T) => T.current === P);
A !== -1 && y.change(A);
}
return O;
}), q = ai((v) => {
let g = f.map((O) => O.current).filter(Boolean);
if (v.key === Xo.Space || v.key === Xo.Enter) {
v.preventDefault(), v.stopPropagation(), y.change(b);
return;
}
switch (v.key) {
case Xo.Home:
case Xo.PageUp:
return v.preventDefault(), v.stopPropagation(), z(() => kf(g, Jo.First));
case Xo.End:
case Xo.PageDown:
return v.preventDefault(), v.stopPropagation(), z(() => kf(g, Jo.Last));
}
if (z(() => ku(c, { vertical() {
return v.key === Xo.ArrowUp ? kf(g, Jo.Previous | Jo.WrapAround) : v.key === Xo.ArrowDown ? kf(g, Jo.Next | Jo.WrapAround) : _h.Error;
}, horizontal() {
return v.key === Xo.ArrowLeft ? kf(g, Jo.Previous | Jo.WrapAround) : v.key === Xo.ArrowRight ? kf(g, Jo.Next | Jo.WrapAround) : _h.Error;
} })) === _h.Success) return v.preventDefault();
}), Y = ne(!1), B = ai(() => {
var v;
Y.current || (Y.current = !0, (v = $.current) == null || v.focus({ preventScroll: !0 }), y.change(b), xne(() => {
Y.current = !1;
}));
}), Z = ai((v) => {
v.preventDefault();
}), { isFocusVisible: M, focusProps: te } = bne({ autoFocus: s }), { isHovered: G, hoverProps: H } = EYe({ isDisabled: i }), { pressed: U, pressProps: W } = jYe({ disabled: i }), X = Ie(() => ({ selected: F, hover: G, active: U, focus: M, autofocus: s, disabled: i }), [F, G, M, U, s, i]), ee = kne({ ref: _, onKeyDown: q, onMouseDown: Z, onClick: B, id: a, role: "tab", type: QYe(e, h), "aria-controls": (n = (r = p[b]) == null ? void 0 : r.current) == null ? void 0 : n.id, "aria-selected": F, tabIndex: F ? 0 : -1, disabled: i || void 0, autoFocus: s }, te, H, W);
return Tp()({ ourProps: ee, theirProps: u, slot: X, defaultTag: dqe, name: "Tabs.Tab" });
}
let mqe = "div";
function hqe(e, t) {
let { selectedIndex: r } = Jd("Tab.Panels"), n = iy(t), o = Ie(() => ({ selectedIndex: r }), [r]), a = e, i = { ref: n };
return Tp()({ ourProps: i, theirProps: a, slot: o, defaultTag: mqe, name: "Tabs.Panels" });
}
let gqe = "div", bqe = b4.RenderStrategy | b4.Static;
function yqe(e, t) {
var r, n, o, a;
let i = ua(), { id: s = `headlessui-tabs-panel-${i}`, tabIndex: u = 0, ...c } = e, { selectedIndex: d, tabs: l, panels: f } = Jd("Tab.Panel"), p = nN("Tab.Panel"), y = ne(null), m = iy(y, t);
Xd(() => p.registerPanel(y), [p, y]);
let h = Ene("panels"), w = f.indexOf(y);
w === -1 && (w = h);
let $ = w === d, { isFocusVisible: _, focusProps: S } = bne(), b = Ie(() => ({ selected: $, focus: _ }), [$, _]), F = kne({ ref: m, id: s, role: "tabpanel", "aria-labelledby": (n = (r = l[w]) == null ? void 0 : r.current) == null ? void 0 : n.id, tabIndex: $ ? u : -1 }, S), z = Tp();
return !$ && ((o = c.unmount) == null || o) && !((a = c.static) != null && a) ? ae.createElement(One, { "aria-hidden": "true", ...F }) : z({ ourProps: F, theirProps: c, slot: b, defaultTag: gqe, features: bqe, visible: $, name: "Tabs.Panel" });
}
let vqe = Ip(pqe), xqe = Ip(cqe), wqe = Ip(fqe), $qe = Ip(hqe), kqe = Ip(yqe);
Object.assign(vqe, { Group: xqe, List: wqe, Panels: $qe, Panel: kqe });
const _qe = {
slug: "free",
name: "Free",
isPaidPlan: !1,
monthlyPrice: 0,
yearlyPrice: 0,
features: [
{ text: "Free daily generations", included: !0 },
{ text: "Limited access to ArtCraft tools", included: !0 }
],
colorScheme: "dark"
}, Oqe = [
_qe,
{
slug: "artcraft_basic",
name: "Basic",
isPaidPlan: !0,
monthlyPrice: 8,
yearlyPrice: 96,
originalMonthlyPrice: 10,
originalYearlyPrice: 120,
features: [
{ text: "~1,010 Flux images", included: !0 },
{ text: "~36,000 real-time images", included: !0 },
{ text: "~180 enhanced images", included: !0 },
{ text: "~6 training jobs", included: !0 },
{ text: "Commercial license", included: !0 }
],
colorScheme: "green"
},
{
slug: "artcraft_pro",
name: "Pro",
isPaidPlan: !0,
monthlyPrice: 28,
yearlyPrice: 336,
originalMonthlyPrice: 35,
originalYearlyPrice: 420,
features: [
{ text: "~5,048 Flux images", included: !0 },
{ text: "~180,000 real-time images", included: !0 },
{ text: "~900 enhanced images", included: !0 },
{ text: "~30 training jobs", included: !0 },
{ text: "Commercial license", included: !0 }
],
colorScheme: "purple"
},
{
slug: "artcraft_max",
name: "Max",
isPaidPlan: !0,
monthlyPrice: 48,
yearlyPrice: 576,
originalMonthlyPrice: 60,
originalYearlyPrice: 720,
features: [
{ text: "~15,142 Flux images", included: !0 },
{ text: "~540,000 real-time images", included: !0 },
{ text: "~2,700 enhanced images", included: !0 },
{ text: "~90 training jobs", included: !0 },
{ text: "Commercial license", included: !0 }
],
colorScheme: "orange"
}
];
new Map(
Oqe.map((e) => [e.slug, e])
);
const Hz = (e) => {
let t;
const r = /* @__PURE__ */ new Set(), n = (s, u) => {
const c = typeof s == "function" ? s(t) : s;
if (!Object.is(c, t)) {
const d = t;
t = u ?? (typeof c != "object" || c === null) ? c : Object.assign({}, t, c), r.forEach((l) => l(t, d));
}
}, o = () => t, a = { setState: n, getState: o, getInitialState: () => i, subscribe: (s) => (r.add(s), () => r.delete(s)) }, i = t = e(n, o, a);
return a;
}, Sqe = (e) => e ? Hz(e) : Hz, Eqe = (e) => e;
function Aqe(e, t = Eqe) {
const r = ae.useSyncExternalStore(
e.subscribe,
() => t(e.getState()),
() => t(e.getInitialState())
);
return ae.useDebugValue(r), r;
}
const Gz = (e) => {
const t = Sqe(e), r = (n) => Aqe(t, n);
return Object.assign(r, t), r;
}, Pqe = (e) => e ? Gz(e) : Gz;
async function Cqe(e, t = {}, r) {
return window.__TAURI_INTERNALS__.invoke(e, t, r);
}
const Nqe = async () => {
try {
return await Cqe("storyteller_get_subscription_command");
} catch (e) {
throw e;
}
};
var Uz;
(function(e) {
e.WINDOW_RESIZED = "tauri://resize", e.WINDOW_MOVED = "tauri://move", e.WINDOW_CLOSE_REQUESTED = "tauri://close-requested", e.WINDOW_DESTROYED = "tauri://destroyed", e.WINDOW_FOCUS = "tauri://focus", e.WINDOW_BLUR = "tauri://blur", e.WINDOW_SCALE_FACTOR_CHANGED = "tauri://scale-change", e.WINDOW_THEME_CHANGED = "tauri://theme-changed", e.WINDOW_CREATED = "tauri://window-created", e.WEBVIEW_CREATED = "tauri://webview-created", e.DRAG_ENTER = "tauri://drag-enter", e.DRAG_OVER = "tauri://drag-over", e.DRAG_DROP = "tauri://drag-drop", e.DRAG_LEAVE = "tauri://drag-leave";
})(Uz || (Uz = {}));
Pqe((e, t) => ({
subscriptionInfo: void 0,
// Returns true if the user has a paid plan.
// (We do not store "free" as a plan.)
hasPaidPlan: () => {
var r;
return ((r = t().subscriptionInfo) == null ? void 0 : r.subscriptionToken) !== void 0;
},
// Returns true if the user can cancel their plan.
// (The user can't cancel an already set to cancel/expire plan again)
canCancelPlan: () => {
const r = t().subscriptionInfo;
return (r == null ? void 0 : r.subscriptionToken) !== void 0 && (r == null ? void 0 : r.subscriptionEndAt) === void 0;
},
// Call to fetch credits from the server
fetchFromServer: async () => {
let r;
try {
r = await Nqe();
} catch (n) {
console.error("Error fetching subscription", n);
return;
}
if (console.log("Fetched subscription from server: ", r), r.payload) {
let n;
r.payload.active_subscription && (n = {
subscriptionToken: r.payload.active_subscription.subscription_token,
productSlug: r.payload.active_subscription.product_slug,
namespace: r.payload.active_subscription.namespace,
nextBillAt: r.payload.active_subscription.next_bill_at ? new Date(r.payload.active_subscription.next_bill_at) : void 0,
subscriptionEndAt: r.payload.active_subscription.subscription_end_at ? new Date(r.payload.active_subscription.subscription_end_at) : void 0
}), e((o) => ({
subscriptionInfo: n
}));
}
}
}));
/*!
* Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.
*/
function Tqe(e, t, r) {
return (t = jqe(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function Bz(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function Ee(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? Bz(Object(r), !0).forEach(function(n) {
Tqe(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : Bz(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function Iqe(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function jqe(e) {
var t = Iqe(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const Yz = () => {
};
let oN = {}, Ane = {}, Pne = null, Cne = {
mark: Yz,
measure: Yz
};
try {
typeof window < "u" && (oN = window), typeof document < "u" && (Ane = document), typeof MutationObserver < "u" && (Pne = MutationObserver), typeof performance < "u" && (Cne = performance);
} catch {
}
const {
userAgent: qz = ""
} = oN.navigator || {}, Vc = oN, qr = Ane, Kz = Pne, $v = Cne;
Vc.document;
const Os = !!qr.documentElement && !!qr.head && typeof qr.addEventListener == "function" && typeof qr.createElement == "function", Nne = ~qz.indexOf("MSIE") || ~qz.indexOf("Trident/");
var Rqe = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, Mqe = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, Tne = {
classic: {
fa: "solid",
fas: "solid",
"fa-solid": "solid",
far: "regular",
"fa-regular": "regular",
fal: "light",
"fa-light": "light",
fat: "thin",
"fa-thin": "thin",
fab: "brands",
"fa-brands": "brands"
},
duotone: {
fa: "solid",
fad: "solid",
"fa-solid": "solid",
"fa-duotone": "solid",
fadr: "regular",
"fa-regular": "regular",
fadl: "light",
"fa-light": "light",
fadt: "thin",
"fa-thin": "thin"
},
sharp: {
fa: "solid",
fass: "solid",
"fa-solid": "solid",
fasr: "regular",
"fa-regular": "regular",
fasl: "light",
"fa-light": "light",
fast: "thin",
"fa-thin": "thin"
},
"sharp-duotone": {
fa: "solid",
fasds: "solid",
"fa-solid": "solid",
fasdr: "regular",
"fa-regular": "regular",
fasdl: "light",
"fa-light": "light",
fasdt: "thin",
"fa-thin": "thin"
}
}, Dqe = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, Ine = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Nn = "classic", jw = "duotone", Fqe = "sharp", Lqe = "sharp-duotone", jne = [Nn, jw, Fqe, Lqe], zqe = {
classic: {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
duotone: {
900: "fad",
400: "fadr",
300: "fadl",
100: "fadt"
},
sharp: {
900: "fass",
400: "fasr",
300: "fasl",
100: "fast"
},
"sharp-duotone": {
900: "fasds",
400: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, Wqe = {
"Font Awesome 6 Free": {
900: "fas",
400: "far"
},
"Font Awesome 6 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal",
100: "fat"
},
"Font Awesome 6 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 6 Duotone": {
900: "fad",
400: "fadr",
normal: "fadr",
300: "fadl",
100: "fadt"
},
"Font Awesome 6 Sharp": {
900: "fass",
400: "fasr",
normal: "fasr",
300: "fasl",
100: "fast"
},
"Font Awesome 6 Sharp Duotone": {
900: "fasds",
400: "fasdr",
normal: "fasdr",
300: "fasdl",
100: "fasdt"
}
}, Vqe = /* @__PURE__ */ new Map([["classic", {
defaultShortPrefixId: "fas",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin", "brands"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp", {
defaultShortPrefixId: "fass",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["duotone", {
defaultShortPrefixId: "fad",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}], ["sharp-duotone", {
defaultShortPrefixId: "fasds",
defaultStyleId: "solid",
styleIds: ["solid", "regular", "light", "thin"],
futureStyleIds: [],
defaultFontWeight: 900
}]]), Hqe = {
classic: {
solid: "fas",
regular: "far",
light: "fal",
thin: "fat",
brands: "fab"
},
duotone: {
solid: "fad",
regular: "fadr",
light: "fadl",
thin: "fadt"
},
sharp: {
solid: "fass",
regular: "fasr",
light: "fasl",
thin: "fast"
},
"sharp-duotone": {
solid: "fasds",
regular: "fasdr",
light: "fasdl",
thin: "fasdt"
}
}, Gqe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], Xz = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, Uqe = ["kit"], Bqe = {
kit: {
"fa-kit": "fak"
}
}, Yqe = ["fak", "fakd"], qqe = {
kit: {
fak: "fa-kit"
}
}, Jz = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, kv = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, Kqe = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Xqe = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], Jqe = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, Qqe = {
classic: {
"fa-brands": "fab",
"fa-duotone": "fad",
"fa-light": "fal",
"fa-regular": "far",
"fa-solid": "fas",
"fa-thin": "fat"
},
duotone: {
"fa-regular": "fadr",
"fa-light": "fadl",
"fa-thin": "fadt"
},
sharp: {
"fa-solid": "fass",
"fa-regular": "fasr",
"fa-light": "fasl",
"fa-thin": "fast"
},
"sharp-duotone": {
"fa-solid": "fasds",
"fa-regular": "fasdr",
"fa-light": "fasdl",
"fa-thin": "fasdt"
}
}, Zqe = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, y4 = {
classic: {
fab: "fa-brands",
fad: "fa-duotone",
fal: "fa-light",
far: "fa-regular",
fas: "fa-solid",
fat: "fa-thin"
},
duotone: {
fadr: "fa-regular",
fadl: "fa-light",
fadt: "fa-thin"
},
sharp: {
fass: "fa-solid",
fasr: "fa-regular",
fasl: "fa-light",
fast: "fa-thin"
},
"sharp-duotone": {
fasds: "fa-solid",
fasdr: "fa-regular",
fasdl: "fa-light",
fasdt: "fa-thin"
}
}, eKe = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], v4 = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...Kqe, ...eKe], tKe = ["solid", "regular", "light", "thin", "duotone", "brands"], Rne = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], rKe = Rne.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), nKe = [...Object.keys(Zqe), ...tKe, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", kv.GROUP, kv.SWAP_OPACITY, kv.PRIMARY, kv.SECONDARY].concat(Rne.map((e) => "".concat(e, "x"))).concat(rKe.map((e) => "w-".concat(e))), oKe = {
"Font Awesome 5 Free": {
900: "fas",
400: "far"
},
"Font Awesome 5 Pro": {
900: "fas",
400: "far",
normal: "far",
300: "fal"
},
"Font Awesome 5 Brands": {
400: "fab",
normal: "fab"
},
"Font Awesome 5 Duotone": {
900: "fad"
}
};
const fs = "___FONT_AWESOME___", x4 = 16, Mne = "fa", Dne = "svg-inline--fa", of = "data-fa-i2svg", w4 = "data-fa-pseudo-element", aKe = "data-fa-pseudo-element-pending", aN = "data-prefix", iN = "data-icon", Qz = "fontawesome-i2svg", iKe = "async", sKe = ["HTML", "HEAD", "STYLE", "SCRIPT"], Fne = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function sy(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[Nn];
}
});
}
const Lne = Ee({}, Tne);
Lne[Nn] = Ee(Ee(Ee(Ee({}, {
"fa-duotone": "duotone"
}), Tne[Nn]), Xz.kit), Xz["kit-duotone"]);
const lKe = sy(Lne), $4 = Ee({}, Hqe);
$4[Nn] = Ee(Ee(Ee(Ee({}, {
duotone: "fad"
}), $4[Nn]), Jz.kit), Jz["kit-duotone"]);
const Zz = sy($4), k4 = Ee({}, y4);
k4[Nn] = Ee(Ee({}, k4[Nn]), qqe.kit);
const sN = sy(k4), _4 = Ee({}, Qqe);
_4[Nn] = Ee(Ee({}, _4[Nn]), Bqe.kit);
sy(_4);
const cKe = Rqe, zne = "fa-layers-text", uKe = Mqe, fKe = Ee({}, zqe);
sy(fKe);
const dKe = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], W_ = Dqe, pKe = [...Uqe, ...nKe], hg = Vc.FontAwesomeConfig || {};
function mKe(e) {
var t = qr.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function hKe(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
qr && typeof qr.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = hKe(mKe(t));
n != null && (hg[r] = n);
});
const Wne = {
styleDefault: "solid",
familyDefault: Nn,
cssPrefix: Mne,
replacementClass: Dne,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
hg.familyPrefix && (hg.cssPrefix = hg.familyPrefix);
const Qd = Ee(Ee({}, Wne), hg);
Qd.autoReplaceSvg || (Qd.observeMutations = !1);
const Qe = {};
Object.keys(Wne).forEach((e) => {
Object.defineProperty(Qe, e, {
enumerable: !0,
set: function(t) {
Qd[e] = t, gg.forEach((r) => r(Qe));
},
get: function() {
return Qd[e];
}
});
});
Object.defineProperty(Qe, "familyPrefix", {
enumerable: !0,
set: function(e) {
Qd.cssPrefix = e, gg.forEach((t) => t(Qe));
},
get: function() {
return Qd.cssPrefix;
}
});
Vc.FontAwesomeConfig = Qe;
const gg = [];
function gKe(e) {
return gg.push(e), () => {
gg.splice(gg.indexOf(e), 1);
};
}
const Dl = x4, ii = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function bKe(e) {
if (!e || !Os)
return;
const t = qr.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = qr.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return qr.head.insertBefore(t, n), e;
}
const yKe = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function bb() {
let e = 12, t = "";
for (; e-- > 0; )
t += yKe[Math.random() * 62 | 0];
return t;
}
function jp(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function lN(e) {
return e.classList ? jp(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function Vne(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function vKe(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(Vne(e[r]), '" '), "").trim();
}
function Rw(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function cN(e) {
return e.size !== ii.size || e.x !== ii.x || e.y !== ii.y || e.rotate !== ii.rotate || e.flipX || e.flipY;
}
function xKe(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), u = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: u,
path: c
};
}
function wKe(e) {
let {
transform: t,
width: r = x4,
height: n = x4,
startCentered: o = !1
} = e, a = "";
return o && Nne ? a += "translate(".concat(t.x / Dl - r / 2, "em, ").concat(t.y / Dl - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / Dl, "em), calc(-50% + ").concat(t.y / Dl, "em)) ") : a += "translate(".concat(t.x / Dl, "em, ").concat(t.y / Dl, "em) "), a += "scale(".concat(t.size / Dl * (t.flipX ? -1 : 1), ", ").concat(t.size / Dl * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var $Ke = `:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}`;
function Hne() {
const e = Mne, t = Dne, r = Qe.cssPrefix, n = Qe.replacementClass;
let o = $Ke;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let eW = !1;
function V_() {
Qe.autoAddCss && !eW && (bKe(Hne()), eW = !0);
}
var kKe = {
mixout() {
return {
dom: {
css: Hne,
insertCss: V_
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
V_();
},
beforeI2svg() {
V_();
}
};
}
};
const ds = Vc || {};
ds[fs] || (ds[fs] = {});
ds[fs].styles || (ds[fs].styles = {});
ds[fs].hooks || (ds[fs].hooks = {});
ds[fs].shims || (ds[fs].shims = []);
var si = ds[fs];
const Gne = [], Une = function() {
qr.removeEventListener("DOMContentLoaded", Une), E0 = 1, Gne.map((e) => e());
};
let E0 = !1;
Os && (E0 = (qr.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(qr.readyState), E0 || qr.addEventListener("DOMContentLoaded", Une));
function _Ke(e) {
Os && (E0 ? setTimeout(e, 0) : Gne.push(e));
}
function ly(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? Vne(e) : "<".concat(t, " ").concat(vKe(r), ">").concat(n.map(ly).join(""), "</").concat(t, ">");
}
function tW(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var H_ = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, u, c;
for (r === void 0 ? (s = 1, c = e[o[0]]) : (s = 0, c = r); s < a; s++)
u = o[s], c = i(c, e[u], u, e);
return c;
};
function OKe(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function Bne(e) {
const t = OKe(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function SKe(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function rW(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function O4(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = rW(t);
typeof si.hooks.addPack == "function" && !n ? si.hooks.addPack(e, rW(t)) : si.styles[e] = Ee(Ee({}, si.styles[e] || {}), o), e === "fas" && O4("fa", t);
}
const {
styles: yb,
shims: EKe
} = si, Yne = Object.keys(sN), AKe = Yne.reduce((e, t) => (e[t] = Object.keys(sN[t]), e), {});
let uN = null, qne = {}, Kne = {}, Xne = {}, Jne = {}, Qne = {};
function PKe(e) {
return ~pKe.indexOf(e);
}
function CKe(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !PKe(o) ? o : null;
}
const Zne = () => {
const e = (n) => H_(yb, (o, a, i) => (o[i] = H_(a, n, {}), o), {});
qne = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), Kne = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), Qne = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in yb || Qe.autoFetchSvg, r = H_(EKe, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
Xne = r.names, Jne = r.unicodes, uN = Mw(Qe.styleDefault, {
family: Qe.familyDefault
});
};
gKe((e) => {
uN = Mw(e.styleDefault, {
family: Qe.familyDefault
});
});
Zne();
function fN(e, t) {
return (qne[e] || {})[t];
}
function NKe(e, t) {
return (Kne[e] || {})[t];
}
function xu(e, t) {
return (Qne[e] || {})[t];
}
function eoe(e) {
return Xne[e] || {
prefix: null,
iconName: null
};
}
function TKe(e) {
const t = Jne[e], r = fN("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function Hc() {
return uN;
}
const toe = () => ({
prefix: null,
iconName: null,
rest: []
});
function IKe(e) {
let t = Nn;
const r = Yne.reduce((n, o) => (n[o] = "".concat(Qe.cssPrefix, "-").concat(o), n), {});
return jne.forEach((n) => {
(e.includes(r[n]) || e.some((o) => AKe[n].includes(o))) && (t = n);
}), t;
}
function Mw(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = Nn
} = t, n = lKe[r][e];
if (r === jw && !e)
return "fad";
const o = Zz[r][e] || Zz[r][n], a = e in si.styles ? e : null;
return o || a || null;
}
function jKe(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = CKe(Qe.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function nW(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function Dw(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = v4.concat(Xqe), a = nW(e.filter((l) => o.includes(l))), i = nW(e.filter((l) => !v4.includes(l))), s = a.filter((l) => (n = l, !Ine.includes(l))), [u = null] = s, c = IKe(a), d = Ee(Ee({}, jKe(i)), {}, {
prefix: Mw(u, {
family: c
})
});
return Ee(Ee(Ee({}, d), FKe({
values: e,
family: c,
styles: yb,
config: Qe,
canonical: d,
givenPrefix: n
})), RKe(r, n, d));
}
function RKe(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? eoe(o) : {}, i = xu(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !yb.far && yb.fas && !Qe.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const MKe = jne.filter((e) => e !== Nn || e !== jw), DKe = Object.keys(y4).filter((e) => e !== Nn).map((e) => Object.keys(y4[e])).flat();
function FKe(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === jw, u = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", d = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (u || c || d) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && MKe.includes(r) && (Object.keys(a).find((l) => DKe.includes(l)) || i.autoFetchSvg)) {
const l = Vqe.get(r).defaultShortPrefixId;
n.prefix = l, n.iconName = xu(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = Hc() || "fas"), n;
}
class LKe {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = Ee(Ee({}, this.definitions[a] || {}), o[a]), O4(a, o[a]);
const i = sN[Nn][a];
i && O4(i, o[a]), Zne();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], u = s[2];
t[a] || (t[a] = {}), u.length > 0 && u.forEach((c) => {
typeof c == "string" && (t[a][c] = s);
}), t[a][i] = s;
}), t;
}
}
let oW = [], Zf = {};
const Id = {}, zKe = Object.keys(Id);
function WKe(e, t) {
let {
mixoutsTo: r
} = t;
return oW = e, Zf = {}, Object.keys(Id).forEach((n) => {
zKe.indexOf(n) === -1 && delete Id[n];
}), oW.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
Zf[i] || (Zf[i] = []), Zf[i].push(a[i]);
});
}
n.provides && n.provides(Id);
}), r;
}
function S4(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (Zf[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function af(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(Zf[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function Gc() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return Id[e] ? Id[e].apply(null, t) : void 0;
}
function E4(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || Hc();
if (t)
return t = xu(r, t) || t, tW(roe.definitions, r, t) || tW(si.styles, r, t);
}
const roe = new LKe(), VKe = () => {
Qe.autoReplaceSvg = !1, Qe.observeMutations = !1, af("noAuto");
}, HKe = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return Os ? (af("beforeI2svg", e), Gc("pseudoElements2svg", e), Gc("i2svg", e)) : Promise.reject(new Error("Operation requires a DOM of some kind."));
},
watch: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t
} = e;
Qe.autoReplaceSvg === !1 && (Qe.autoReplaceSvg = !0), Qe.observeMutations = !0, _Ke(() => {
UKe({
autoReplaceSvgRoot: t
}), af("watch", e);
});
}
}, GKe = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: xu(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = Mw(e[0]);
return {
prefix: r,
iconName: xu(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(Qe.cssPrefix, "-")) > -1 || e.match(cKe))) {
const t = Dw(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || Hc(),
iconName: xu(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = Hc();
return {
prefix: t,
iconName: xu(t, e) || e
};
}
}
}, yo = {
noAuto: VKe,
config: Qe,
dom: HKe,
parse: GKe,
library: roe,
findIconDefinition: E4,
toHtml: ly
}, UKe = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = qr
} = e;
(Object.keys(si.styles).length > 0 || Qe.autoFetchSvg) && Os && Qe.autoReplaceSvg && yo.dom.i2svg({
node: t
});
};
function Fw(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => ly(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!Os) return;
const r = qr.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function BKe(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (cN(i) && r.found && !n.found) {
const {
width: s,
height: u
} = r, c = {
x: s / u / 2,
y: 0.5
};
o.style = Rw(Ee(Ee({}, a), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function YKe(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(Qe.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: Ee(Ee({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function dN(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: u,
titleId: c,
extra: d,
watchable: l = !1
} = e, {
width: f,
height: p
} = r.found ? r : t, y = Yqe.includes(n), m = [Qe.replacementClass, o ? "".concat(Qe.cssPrefix, "-").concat(o) : ""].filter((b) => d.classes.indexOf(b) === -1).filter((b) => b !== "" || !!b).concat(d.classes).join(" ");
let h = {
children: [],
attributes: Ee(Ee({}, d.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: m,
role: d.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(f, " ").concat(p)
})
};
const w = y && !~d.classes.indexOf("fa-fw") ? {
width: "".concat(f / p * 16 * 0.0625, "em")
} : {};
l && (h.attributes[of] = ""), s && (h.children.push({
tag: "title",
attributes: {
id: h.attributes["aria-labelledby"] || "title-".concat(c || bb())
},
children: [s]
}), delete h.attributes.title);
const $ = Ee(Ee({}, h), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: u,
transform: a,
symbol: i,
styles: Ee(Ee({}, w), d.styles)
}), {
children: _,
attributes: S
} = r.found && t.found ? Gc("generateAbstractMask", $) || {
children: [],
attributes: {}
} : Gc("generateAbstractIcon", $) || {
children: [],
attributes: {}
};
return $.children = _, $.attributes = S, i ? YKe($) : BKe($);
}
function aW(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, u = Ee(Ee(Ee({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (u[of] = "");
const c = Ee({}, i.styles);
cN(o) && (c.transform = wKe({
transform: o,
startCentered: !0,
width: r,
height: n
}), c["-webkit-transform"] = c.transform);
const d = Rw(c);
d.length > 0 && (u.style = d);
const l = [];
return l.push({
tag: "span",
attributes: u,
children: [t]
}), a && l.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), l;
}
function qKe(e) {
const {
content: t,
title: r,
extra: n
} = e, o = Ee(Ee(Ee({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = Rw(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: G_
} = si;
function A4(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(Qe.cssPrefix, "-").concat(W_.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(Qe.cssPrefix, "-").concat(W_.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(Qe.cssPrefix, "-").concat(W_.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const KKe = {
found: !1,
width: 512,
height: 512
};
function XKe(e, t) {
!Fne && !Qe.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function P4(e, t) {
let r = t;
return t === "fa" && Qe.styleDefault !== null && (t = Hc()), new Promise((n, o) => {
if (r === "fa") {
const a = eoe(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && G_[t] && G_[t][e]) {
const a = G_[t][e];
return n(A4(a));
}
XKe(e, t), n(Ee(Ee({}, KKe), {}, {
icon: Qe.showMissingIcons && e ? Gc("missingIconAbstract") || {} : {}
}));
});
}
const iW = () => {
}, C4 = Qe.measurePerformance && $v && $v.mark && $v.measure ? $v : {
mark: iW,
measure: iW
}, Oh = 'FA "6.7.2"', JKe = (e) => (C4.mark("".concat(Oh, " ").concat(e, " begins")), () => noe(e)), noe = (e) => {
C4.mark("".concat(Oh, " ").concat(e, " ends")), C4.measure("".concat(Oh, " ").concat(e), "".concat(Oh, " ").concat(e, " begins"), "".concat(Oh, " ").concat(e, " ends"));
};
var pN = {
begin: JKe,
end: noe
};
const p1 = () => {
};
function sW(e) {
return typeof (e.getAttribute ? e.getAttribute(of) : null) == "string";
}
function QKe(e) {
const t = e.getAttribute ? e.getAttribute(aN) : null, r = e.getAttribute ? e.getAttribute(iN) : null;
return t && r;
}
function ZKe(e) {
return e && e.classList && e.classList.contains && e.classList.contains(Qe.replacementClass);
}
function eXe() {
return Qe.autoReplaceSvg === !0 ? m1.replace : m1[Qe.autoReplaceSvg] || m1.replace;
}
function tXe(e) {
return qr.createElementNS("http://www.w3.org/2000/svg", e);
}
function rXe(e) {
return qr.createElement(e);
}
function ooe(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? tXe : rXe
} = t;
if (typeof e == "string")
return qr.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(ooe(o, {
ceFn: r
}));
}), n;
}
function nXe(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const m1 = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(ooe(r), t);
}), t.getAttribute(of) === null && Qe.keepOriginalSource) {
let r = qr.createComment(nXe(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~lN(t).indexOf(Qe.replacementClass))
return m1.replace(e);
const n = new RegExp("".concat(Qe.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === Qe.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => ly(a)).join(`
`);
t.setAttribute(of, ""), t.innerHTML = o;
}
};
function lW(e) {
e();
}
function aoe(e, t) {
const r = typeof t == "function" ? t : p1;
if (e.length === 0)
r();
else {
let n = lW;
Qe.mutateApproach === iKe && (n = Vc.requestAnimationFrame || lW), n(() => {
const o = eXe(), a = pN.begin("mutate");
e.map(o), a(), r();
});
}
}
let mN = !1;
function ioe() {
mN = !0;
}
function N4() {
mN = !1;
}
let A0 = null;
function cW(e) {
if (!Kz || !Qe.observeMutations)
return;
const {
treeCallback: t = p1,
nodeCallback: r = p1,
pseudoElementsCallback: n = p1,
observeMutationsRoot: o = qr
} = e;
A0 = new Kz((a) => {
if (mN) return;
const i = Hc();
jp(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !sW(s.addedNodes[0]) && (Qe.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && Qe.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && sW(s.target) && ~dKe.indexOf(s.attributeName))
if (s.attributeName === "class" && QKe(s.target)) {
const {
prefix: u,
iconName: c
} = Dw(lN(s.target));
s.target.setAttribute(aN, u || i), c && s.target.setAttribute(iN, c);
} else ZKe(s.target) && r(s.target);
});
}), Os && A0.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function oXe() {
A0 && A0.disconnect();
}
function aXe(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function iXe(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = Dw(lN(e));
return o.prefix || (o.prefix = Hc()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = NKe(o.prefix, e.innerText) || fN(o.prefix, Bne(e.innerText))), !o.iconName && Qe.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function sXe(e) {
const t = jp(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return Qe.autoA11y && (r ? t["aria-labelledby"] = "".concat(Qe.replacementClass, "-title-").concat(n || bb()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function lXe() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: ii,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function uW(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = iXe(e), a = sXe(e), i = S4("parseNodeAttributes", {}, e);
let s = t.styleParser ? aXe(e) : [];
return Ee({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: ii,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: cXe
} = si;
function soe(e) {
const t = Qe.autoReplaceSvg === "nest" ? uW(e, {
styleParser: !1
}) : uW(e);
return ~t.extra.classes.indexOf(zne) ? Gc("generateLayersText", e, t) : Gc("generateSvgReplacementMutation", e, t);
}
function uXe() {
return [...Gqe, ...v4];
}
function fW(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!Os) return Promise.resolve();
const r = qr.documentElement.classList, n = (d) => r.add("".concat(Qz, "-").concat(d)), o = (d) => r.remove("".concat(Qz, "-").concat(d)), a = Qe.autoFetchSvg ? uXe() : Ine.concat(Object.keys(cXe));
a.includes("fa") || a.push("fa");
const i = [".".concat(zne, ":not([").concat(of, "])")].concat(a.map((d) => ".".concat(d, ":not([").concat(of, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = jp(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const u = pN.begin("onTree"), c = s.reduce((d, l) => {
try {
const f = soe(l);
f && d.push(f);
} catch (f) {
Fne || f.name === "MissingIcon" && console.error(f);
}
return d;
}, []);
return new Promise((d, l) => {
Promise.all(c).then((f) => {
aoe(f, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), u(), d();
});
}).catch((f) => {
u(), l(f);
});
});
}
function fXe(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
soe(e).then((r) => {
r && aoe([r], t);
});
}
function dXe(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : E4(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : E4(o || {})), e(n, Ee(Ee({}, r), {}, {
mask: o
}));
};
}
const pXe = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = ii,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: u = [],
attributes: c = {},
styles: d = {}
} = t;
if (!e) return;
const {
prefix: l,
iconName: f,
icon: p
} = e;
return Fw(Ee({
type: "icon"
}, e), () => (af("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), Qe.autoA11y && (i ? c["aria-labelledby"] = "".concat(Qe.replacementClass, "-title-").concat(s || bb()) : (c["aria-hidden"] = "true", c.focusable = "false")), dN({
icons: {
main: A4(p),
mask: o ? A4(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: l,
iconName: f,
transform: Ee(Ee({}, ii), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: c,
styles: d,
classes: u
}
})));
};
var mXe = {
mixout() {
return {
icon: dXe(pXe)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = fW, e.nodeCallback = fXe, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = qr,
callback: n = () => {
}
} = t;
return fW(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: u,
mask: c,
maskId: d,
extra: l
} = r;
return new Promise((f, p) => {
Promise.all([P4(n, i), c.iconName ? P4(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((y) => {
let [m, h] = y;
f([t, dN({
icons: {
main: m,
mask: h
},
prefix: i,
iconName: n,
transform: s,
symbol: u,
maskId: d,
title: o,
titleId: a,
extra: l,
watchable: !0
})]);
}).catch(p);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = Rw(i);
s.length > 0 && (n.style = s);
let u;
return cN(a) && (u = Gc("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(u || o.icon), {
children: r,
attributes: n
};
};
}
}, hXe = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return Fw({
type: "layer"
}, () => {
af("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(Qe.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, gXe = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return Fw({
type: "counter",
content: e
}, () => (af("beforeDOMElementCreation", {
content: e,
params: t
}), qKe({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(Qe.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, bXe = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = ii,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return Fw({
type: "text",
content: e
}, () => (af("beforeDOMElementCreation", {
content: e,
params: t
}), aW({
content: e,
transform: Ee(Ee({}, ii), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(Qe.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (Nne) {
const u = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / u, s = c.height / u;
}
return Qe.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, aW({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const yXe = new RegExp('"', "ug"), dW = [1105920, 1112319], pW = Ee(Ee(Ee(Ee({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), Wqe), oKe), Jqe), T4 = Object.keys(pW).reduce((e, t) => (e[t.toLowerCase()] = pW[t], e), {}), vXe = Object.keys(T4).reduce((e, t) => {
const r = T4[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function xXe(e) {
const t = e.replace(yXe, ""), r = SKe(t, 0), n = r >= dW[0] && r <= dW[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: Bne(o ? t[0] : t),
isSecondary: n || o
};
}
function wXe(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (T4[r] || {})[o] || vXe[r];
}
function mW(e, t) {
const r = "".concat(aKe).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = jp(e.children).filter((l) => l.getAttribute(w4) === t)[0], i = Vc.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), u = s.match(uKe), c = i.getPropertyValue("font-weight"), d = i.getPropertyValue("content");
if (a && !u)
return e.removeChild(a), n();
if (u && d !== "none" && d !== "") {
const l = i.getPropertyValue("content");
let f = wXe(s, c);
const {
value: p,
isSecondary: y
} = xXe(l), m = u[0].startsWith("FontAwesome");
let h = fN(f, p), w = h;
if (m) {
const $ = TKe(p);
$.iconName && $.prefix && (h = $.iconName, f = $.prefix);
}
if (h && !y && (!a || a.getAttribute(aN) !== f || a.getAttribute(iN) !== w)) {
e.setAttribute(r, w), a && e.removeChild(a);
const $ = lXe(), {
extra: _
} = $;
_.attributes[w4] = t, P4(h, f).then((S) => {
const b = dN(Ee(Ee({}, $), {}, {
icons: {
main: S,
mask: toe()
},
prefix: f,
iconName: w,
extra: _,
watchable: !0
})), F = qr.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(F, e.firstChild) : e.appendChild(F), F.outerHTML = b.map((z) => ly(z)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function $Xe(e) {
return Promise.all([mW(e, "::before"), mW(e, "::after")]);
}
function kXe(e) {
return e.parentNode !== document.head && !~sKe.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(w4) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function hW(e) {
if (Os)
return new Promise((t, r) => {
const n = jp(e.querySelectorAll("*")).filter(kXe).map($Xe), o = pN.begin("searchPseudoElements");
ioe(), Promise.all(n).then(() => {
o(), N4(), t();
}).catch(() => {
o(), N4(), r();
});
});
}
var _Xe = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = hW, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = qr
} = t;
Qe.searchPseudoElements && hW(r);
};
}
};
let gW = !1;
var OXe = {
mixout() {
return {
dom: {
unwatch() {
ioe(), gW = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
cW(S4("mutationObserverCallbacks", {}));
},
noAuto() {
oXe();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
gW ? N4() : cW(S4("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const bW = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var SXe = {
mixout() {
return {
parse: {
transform: (e) => bW(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = bW(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), u = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), c = "rotate(".concat(n.rotate, " 0 0)"), d = {
transform: "".concat(s, " ").concat(u, " ").concat(c)
}, l = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, f = {
outer: i,
inner: d,
path: l
};
return {
tag: "g",
attributes: Ee({}, f.outer),
children: [{
tag: "g",
attributes: Ee({}, f.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: Ee(Ee({}, r.icon.attributes), f.path)
}]
}]
};
};
}
};
const U_ = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function yW(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
return e.attributes && (e.attributes.fill || t) && (e.attributes.fill = "black"), e;
}
function EXe(e) {
return e.tag === "g" ? e.children : [e];
}
var AXe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? Dw(r.split(" ").map((o) => o.trim())) : toe();
return n.prefix || (n.prefix = Hc()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: u,
icon: c
} = o, {
width: d,
icon: l
} = a, f = xKe({
transform: s,
containerWidth: d,
iconWidth: u
}), p = {
tag: "rect",
attributes: Ee(Ee({}, U_), {}, {
fill: "white"
})
}, y = c.children ? {
children: c.children.map(yW)
} : {}, m = {
tag: "g",
attributes: Ee({}, f.inner),
children: [yW(Ee({
tag: c.tag,
attributes: Ee(Ee({}, c.attributes), f.path)
}, y))]
}, h = {
tag: "g",
attributes: Ee({}, f.outer),
children: [m]
}, w = "mask-".concat(i || bb()), $ = "clip-".concat(i || bb()), _ = {
tag: "mask",
attributes: Ee(Ee({}, U_), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [p, h]
}, S = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: $
},
children: EXe(l)
}, _]
};
return r.push(S, {
tag: "rect",
attributes: Ee({
fill: "currentColor",
"clip-path": "url(#".concat($, ")"),
mask: "url(#".concat(w, ")")
}, U_)
}), {
children: r,
attributes: n
};
};
}
}, PXe = {
provides(e) {
let t = !1;
Vc.matchMedia && (t = Vc.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: Ee(Ee({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = Ee(Ee({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: Ee(Ee({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: Ee(Ee({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: Ee(Ee({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: Ee(Ee({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: Ee(Ee({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: Ee(Ee({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: Ee(Ee({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, CXe = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, NXe = [kKe, mXe, hXe, gXe, bXe, _Xe, OXe, SXe, AXe, PXe, CXe];
WKe(NXe, {
mixoutsTo: yo
});
yo.noAuto;
yo.config;
yo.library;
yo.dom;
const I4 = yo.parse;
yo.findIconDefinition;
yo.toHtml;
const TXe = yo.icon;
yo.layer;
yo.text;
yo.counter;
function IXe(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var _v = { exports: {} }, B_ = { exports: {} }, ar = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var vW;
function jXe() {
if (vW) return ar;
vW = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(b) {
if (typeof b == "object" && b !== null) {
var F = b.$$typeof;
switch (F) {
case t:
switch (b = b.type, b) {
case u:
case c:
case n:
case a:
case o:
case l:
return b;
default:
switch (b = b && b.$$typeof, b) {
case s:
case d:
case y:
case p:
case i:
return b;
default:
return F;
}
}
case r:
return F;
}
}
}
function S(b) {
return _(b) === c;
}
return ar.AsyncMode = u, ar.ConcurrentMode = c, ar.ContextConsumer = s, ar.ContextProvider = i, ar.Element = t, ar.ForwardRef = d, ar.Fragment = n, ar.Lazy = y, ar.Memo = p, ar.Portal = r, ar.Profiler = a, ar.StrictMode = o, ar.Suspense = l, ar.isAsyncMode = function(b) {
return S(b) || _(b) === u;
}, ar.isConcurrentMode = S, ar.isContextConsumer = function(b) {
return _(b) === s;
}, ar.isContextProvider = function(b) {
return _(b) === i;
}, ar.isElement = function(b) {
return typeof b == "object" && b !== null && b.$$typeof === t;
}, ar.isForwardRef = function(b) {
return _(b) === d;
}, ar.isFragment = function(b) {
return _(b) === n;
}, ar.isLazy = function(b) {
return _(b) === y;
}, ar.isMemo = function(b) {
return _(b) === p;
}, ar.isPortal = function(b) {
return _(b) === r;
}, ar.isProfiler = function(b) {
return _(b) === a;
}, ar.isStrictMode = function(b) {
return _(b) === o;
}, ar.isSuspense = function(b) {
return _(b) === l;
}, ar.isValidElementType = function(b) {
return typeof b == "string" || typeof b == "function" || b === n || b === c || b === a || b === o || b === l || b === f || typeof b == "object" && b !== null && (b.$$typeof === y || b.$$typeof === p || b.$$typeof === i || b.$$typeof === s || b.$$typeof === d || b.$$typeof === h || b.$$typeof === w || b.$$typeof === $ || b.$$typeof === m);
}, ar.typeOf = _, ar;
}
var br = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var xW;
function RXe() {
return xW || (xW = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, l = e ? Symbol.for("react.suspense") : 60113, f = e ? Symbol.for("react.suspense_list") : 60120, p = e ? Symbol.for("react.memo") : 60115, y = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, h = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, $ = e ? Symbol.for("react.scope") : 60119;
function _(k) {
return typeof k == "string" || typeof k == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
k === n || k === c || k === a || k === o || k === l || k === f || typeof k == "object" && k !== null && (k.$$typeof === y || k.$$typeof === p || k.$$typeof === i || k.$$typeof === s || k.$$typeof === d || k.$$typeof === h || k.$$typeof === w || k.$$typeof === $ || k.$$typeof === m);
}
function S(k) {
if (typeof k == "object" && k !== null) {
var oe = k.$$typeof;
switch (oe) {
case t:
var me = k.type;
switch (me) {
case u:
case c:
case n:
case a:
case o:
case l:
return me;
default:
var Le = me && me.$$typeof;
switch (Le) {
case s:
case d:
case y:
case p:
case i:
return Le;
default:
return oe;
}
}
case r:
return oe;
}
}
}
var b = u, F = c, z = s, q = i, Y = t, B = d, Z = n, M = y, te = p, G = r, H = a, U = o, W = l, X = !1;
function ee(k) {
return X || (X = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), v(k) || S(k) === u;
}
function v(k) {
return S(k) === c;
}
function g(k) {
return S(k) === s;
}
function O(k) {
return S(k) === i;
}
function P(k) {
return typeof k == "object" && k !== null && k.$$typeof === t;
}
function A(k) {
return S(k) === d;
}
function T(k) {
return S(k) === n;
}
function N(k) {
return S(k) === y;
}
function C(k) {
return S(k) === p;
}
function I(k) {
return S(k) === r;
}
function j(k) {
return S(k) === a;
}
function R(k) {
return S(k) === o;
}
function Q(k) {
return S(k) === l;
}
br.AsyncMode = b, br.ConcurrentMode = F, br.ContextConsumer = z, br.ContextProvider = q, br.Element = Y, br.ForwardRef = B, br.Fragment = Z, br.Lazy = M, br.Memo = te, br.Portal = G, br.Profiler = H, br.StrictMode = U, br.Suspense = W, br.isAsyncMode = ee, br.isConcurrentMode = v, br.isContextConsumer = g, br.isContextProvider = O, br.isElement = P, br.isForwardRef = A, br.isFragment = T, br.isLazy = N, br.isMemo = C, br.isPortal = I, br.isProfiler = j, br.isStrictMode = R, br.isSuspense = Q, br.isValidElementType = _, br.typeOf = S;
}()), br;
}
var wW;
function loe() {
return wW || (wW = 1, process.env.NODE_ENV === "production" ? B_.exports = jXe() : B_.exports = RXe()), B_.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var Y_, $W;
function MXe() {
if ($W) return Y_;
$W = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var u = Object.getOwnPropertyNames(i).map(function(d) {
return i[d];
});
if (u.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return Y_ = o() ? Object.assign : function(a, i) {
for (var s, u = n(a), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var l in s)
t.call(s, l) && (u[l] = s[l]);
if (e) {
c = e(s);
for (var f = 0; f < c.length; f++)
r.call(s, c[f]) && (u[c[f]] = s[c[f]]);
}
}
return u;
}, Y_;
}
var q_, kW;
function hN() {
if (kW) return q_;
kW = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return q_ = e, q_;
}
var _W, OW;
function coe() {
return OW || (OW = 1, _W = Function.call.bind(Object.prototype.hasOwnProperty)), _W;
}
var K_, SW;
function DXe() {
if (SW) return K_;
SW = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ hN(), r = {}, n = /* @__PURE__ */ coe();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, u, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in a)
if (n(a, d)) {
var l;
try {
if (typeof a[d] != "function") {
var f = Error(
(u || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw f.name = "Invariant Violation", f;
}
l = a[d](i, d, u, s, null, t);
} catch (y) {
l = y;
}
if (l && !(l instanceof Error) && e(
(u || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof l + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), l instanceof Error && !(l.message in r)) {
r[l.message] = !0;
var p = c ? c() : "";
e(
"Failed " + s + " type: " + l.message + (p ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, K_ = o, K_;
}
var X_, EW;
function FXe() {
if (EW) return X_;
EW = 1;
var e = loe(), t = MXe(), r = /* @__PURE__ */ hN(), n = /* @__PURE__ */ coe(), o = /* @__PURE__ */ DXe(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var u = "Warning: " + s;
typeof console < "u" && console.error(u);
try {
throw new Error(u);
} catch {
}
});
function i() {
return null;
}
return X_ = function(s, u) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function l(v) {
var g = v && (c && v[c] || v[d]);
if (typeof g == "function")
return g;
}
var f = "<<anonymous>>", p = {
array: w("array"),
bigint: w("bigint"),
bool: w("boolean"),
func: w("function"),
number: w("number"),
object: w("object"),
string: w("string"),
symbol: w("symbol"),
any: $(),
arrayOf: _,
element: S(),
elementType: b(),
instanceOf: F,
node: B(),
objectOf: q,
oneOf: z,
oneOfType: Y,
shape: M,
exact: te
};
function y(v, g) {
return v === g ? v !== 0 || 1 / v === 1 / g : v !== v && g !== g;
}
function m(v, g) {
this.message = v, this.data = g && typeof g == "object" ? g : {}, this.stack = "";
}
m.prototype = Error.prototype;
function h(v) {
if (process.env.NODE_ENV !== "production")
var g = {}, O = 0;
function P(T, N, C, I, j, R, Q) {
if (I = I || f, R = R || C, Q !== r) {
if (u) {
var k = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw k.name = "Invariant Violation", k;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var oe = I + ":" + C;
!g[oe] && // Avoid spamming the console because they are often not actionable except for lib authors
O < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + R + "` prop on `" + I + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), g[oe] = !0, O++);
}
}
return N[C] == null ? T ? N[C] === null ? new m("The " + j + " `" + R + "` is marked as required " + ("in `" + I + "`, but its value is `null`.")) : new m("The " + j + " `" + R + "` is marked as required in " + ("`" + I + "`, but its value is `undefined`.")) : null : v(N, C, I, j, R);
}
var A = P.bind(null, !1);
return A.isRequired = P.bind(null, !0), A;
}
function w(v) {
function g(O, P, A, T, N, C) {
var I = O[P], j = U(I);
if (j !== v) {
var R = W(I);
return new m(
"Invalid " + T + " `" + N + "` of type " + ("`" + R + "` supplied to `" + A + "`, expected ") + ("`" + v + "`."),
{ expectedType: v }
);
}
return null;
}
return h(g);
}
function $() {
return h(i);
}
function _(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside arrayOf.");
var C = O[P];
if (!Array.isArray(C)) {
var I = U(C);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an array."));
}
for (var j = 0; j < C.length; j++) {
var R = v(C, j, A, T, N + "[" + j + "]", r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function S() {
function v(g, O, P, A, T) {
var N = g[O];
if (!s(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement."));
}
return null;
}
return h(v);
}
function b() {
function v(g, O, P, A, T) {
var N = g[O];
if (!e.isValidElementType(N)) {
var C = U(N);
return new m("Invalid " + A + " `" + T + "` of type " + ("`" + C + "` supplied to `" + P + "`, expected a single ReactElement type."));
}
return null;
}
return h(v);
}
function F(v) {
function g(O, P, A, T, N) {
if (!(O[P] instanceof v)) {
var C = v.name || f, I = ee(O[P]);
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return h(g);
}
function z(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function g(O, P, A, T, N) {
for (var C = O[P], I = 0; I < v.length; I++)
if (y(C, v[I]))
return null;
var j = JSON.stringify(v, function(R, Q) {
var k = W(Q);
return k === "symbol" ? String(Q) : Q;
});
return new m("Invalid " + T + " `" + N + "` of value `" + String(C) + "` " + ("supplied to `" + A + "`, expected one of " + j + "."));
}
return h(g);
}
function q(v) {
function g(O, P, A, T, N) {
if (typeof v != "function")
return new m("Property `" + N + "` of component `" + A + "` has invalid PropType notation inside objectOf.");
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type " + ("`" + I + "` supplied to `" + A + "`, expected an object."));
for (var j in C)
if (n(C, j)) {
var R = v(C, j, A, T, N + "." + j, r);
if (R instanceof Error)
return R;
}
return null;
}
return h(g);
}
function Y(v) {
if (!Array.isArray(v))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var g = 0; g < v.length; g++) {
var O = v[g];
if (typeof O != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + X(O) + " at index " + g + "."
), i;
}
function P(A, T, N, C, I) {
for (var j = [], R = 0; R < v.length; R++) {
var Q = v[R], k = Q(A, T, N, C, I, r);
if (k == null)
return null;
k.data && n(k.data, "expectedType") && j.push(k.data.expectedType);
}
var oe = j.length > 0 ? ", expected one of type [" + j.join(", ") + "]" : "";
return new m("Invalid " + C + " `" + I + "` supplied to " + ("`" + N + "`" + oe + "."));
}
return h(P);
}
function B() {
function v(g, O, P, A, T) {
return G(g[O]) ? null : new m("Invalid " + A + " `" + T + "` supplied to " + ("`" + P + "`, expected a ReactNode."));
}
return h(v);
}
function Z(v, g, O, P, A) {
return new m(
(v || "React class") + ": " + g + " type `" + O + "." + P + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + A + "`."
);
}
function M(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
for (var j in v) {
var R = v[j];
if (typeof R != "function")
return Z(A, T, N, j, W(R));
var Q = R(C, j, A, T, N + "." + j, r);
if (Q)
return Q;
}
return null;
}
return h(g);
}
function te(v) {
function g(O, P, A, T, N) {
var C = O[P], I = U(C);
if (I !== "object")
return new m("Invalid " + T + " `" + N + "` of type `" + I + "` " + ("supplied to `" + A + "`, expected `object`."));
var j = t({}, O[P], v);
for (var R in j) {
var Q = v[R];
if (n(v, R) && typeof Q != "function")
return Z(A, T, N, R, W(Q));
if (!Q)
return new m(
"Invalid " + T + " `" + N + "` key `" + R + "` supplied to `" + A + "`.\nBad object: " + JSON.stringify(O[P], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(v), null, " ")
);
var k = Q(C, R, A, T, N + "." + R, r);
if (k)
return k;
}
return null;
}
return h(g);
}
function G(v) {
switch (typeof v) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !v;
case "object":
if (Array.isArray(v))
return v.every(G);
if (v === null || s(v))
return !0;
var g = l(v);
if (g) {
var O = g.call(v), P;
if (g !== v.entries) {
for (; !(P = O.next()).done; )
if (!G(P.value))
return !1;
} else
for (; !(P = O.next()).done; ) {
var A = P.value;
if (A && !G(A[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function H(v, g) {
return v === "symbol" ? !0 : g ? g["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && g instanceof Symbol : !1;
}
function U(v) {
var g = typeof v;
return Array.isArray(v) ? "array" : v instanceof RegExp ? "object" : H(g, v) ? "symbol" : g;
}
function W(v) {
if (typeof v > "u" || v === null)
return "" + v;
var g = U(v);
if (g === "object") {
if (v instanceof Date)
return "date";
if (v instanceof RegExp)
return "regexp";
}
return g;
}
function X(v) {
var g = W(v);
switch (g) {
case "array":
case "object":
return "an " + g;
case "boolean":
case "date":
case "regexp":
return "a " + g;
default:
return g;
}
}
function ee(v) {
return !v.constructor || !v.constructor.name ? f : v.constructor.name;
}
return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
}, X_;
}
var J_, AW;
function LXe() {
if (AW) return J_;
AW = 1;
var e = /* @__PURE__ */ hN();
function t() {
}
function r() {
}
return r.resetWarningCache = t, J_ = function() {
function n(i, s, u, c, d, l) {
if (l !== e) {
var f = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw f.name = "Invariant Violation", f;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, J_;
}
var PW;
function zXe() {
if (PW) return _v.exports;
if (PW = 1, process.env.NODE_ENV !== "production") {
var e = loe(), t = !0;
_v.exports = /* @__PURE__ */ FXe()(e.isElement, t);
} else
_v.exports = /* @__PURE__ */ LXe()();
return _v.exports;
}
var WXe = /* @__PURE__ */ zXe();
const Lt = /* @__PURE__ */ IXe(WXe);
function CW(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function Na(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? CW(Object(r), !0).forEach(function(n) {
ed(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : CW(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function P0(e) {
"@babel/helpers - typeof";
return P0 = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
return typeof t;
} : function(t) {
return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
}, P0(e);
}
function ed(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function VXe(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function HXe(e, t) {
if (e == null) return {};
var r = VXe(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function j4(e) {
return GXe(e) || UXe(e) || BXe(e) || YXe();
}
function GXe(e) {
if (Array.isArray(e)) return R4(e);
}
function UXe(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function BXe(e, t) {
if (e) {
if (typeof e == "string") return R4(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return R4(e, t);
}
}
function R4(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function YXe() {
throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function qXe(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, u = e.spin, c = e.spinPulse, d = e.spinReverse, l = e.pulse, f = e.fixedWidth, p = e.inverse, y = e.border, m = e.listItem, h = e.flip, w = e.size, $ = e.rotation, _ = e.pull, S = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": u,
"fa-spin-reverse": d,
"fa-spin-pulse": c,
"fa-pulse": l,
"fa-fw": f,
"fa-inverse": p,
"fa-border": y,
"fa-li": m,
"fa-flip": h === !0,
"fa-flip-horizontal": h === "horizontal" || h === "both",
"fa-flip-vertical": h === "vertical" || h === "both"
}, ed(t, "fa-".concat(w), typeof w < "u" && w !== null), ed(t, "fa-rotate-".concat($), typeof $ < "u" && $ !== null && $ !== 0), ed(t, "fa-pull-".concat(_), typeof _ < "u" && _ !== null), ed(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(S).map(function(b) {
return S[b] ? b : null;
}).filter(function(b) {
return b;
});
}
function KXe(e) {
return e = e - 0, e === e;
}
function uoe(e) {
return KXe(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var XXe = ["style"];
function JXe(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function QXe(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = uoe(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[JXe(o)] = a : t[o] = a, t;
}, {});
}
function foe(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(u) {
return foe(e, u);
}), o = Object.keys(t.attributes || {}).reduce(function(u, c) {
var d = t.attributes[c];
switch (c) {
case "class":
u.attrs.className = d, delete t.attributes.class;
break;
case "style":
u.attrs.style = QXe(d);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? u.attrs[c.toLowerCase()] = d : u.attrs[uoe(c)] = d;
}
return u;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = HXe(r, XXe);
return o.attrs.style = Na(Na({}, o.attrs.style), i), e.apply(void 0, [t.tag, Na(Na({}, o.attrs), s)].concat(j4(n)));
}
var doe = !1;
try {
doe = process.env.NODE_ENV === "production";
} catch {
}
function ZXe() {
if (!doe && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function NW(e) {
if (e && P0(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (I4.icon)
return I4.icon(e);
if (e === null)
return null;
if (e && P0(e) === "object" && e.prefix && e.iconName)
return e;
if (Array.isArray(e) && e.length === 2)
return {
prefix: e[0],
iconName: e[1]
};
if (typeof e == "string")
return {
prefix: "fas",
iconName: e
};
}
function Q_(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? ed({}, e, t) : {};
}
var TW = {
border: !1,
className: "",
mask: null,
maskId: null,
fixedWidth: !1,
inverse: !1,
flip: !1,
icon: null,
listItem: !1,
pull: null,
pulse: !1,
rotation: null,
size: null,
spin: !1,
spinPulse: !1,
spinReverse: !1,
beat: !1,
fade: !1,
beatFade: !1,
bounce: !1,
shake: !1,
symbol: !1,
title: "",
titleId: null,
transform: null,
swapOpacity: !1
}, poe = /* @__PURE__ */ ae.forwardRef(function(e, t) {
var r = Na(Na({}, TW), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, u = r.titleId, c = r.maskId, d = NW(n), l = Q_("classes", [].concat(j4(qXe(r)), j4((i || "").split(" ")))), f = Q_("transform", typeof r.transform == "string" ? I4.transform(r.transform) : r.transform), p = Q_("mask", NW(o)), y = TXe(d, Na(Na(Na(Na({}, l), f), p), {}, {
symbol: a,
title: s,
titleId: u,
maskId: c
}));
if (!y)
return ZXe("Could not find icon", d), null;
var m = y.abstract, h = {
ref: t
};
return Object.keys(r).forEach(function(w) {
TW.hasOwnProperty(w) || (h[w] = r[w]);
}), eJe(m[0], h);
});
poe.displayName = "FontAwesomeIcon";
poe.propTypes = {
beat: Lt.bool,
border: Lt.bool,
beatFade: Lt.bool,
bounce: Lt.bool,
className: Lt.string,
fade: Lt.bool,
flash: Lt.bool,
mask: Lt.oneOfType([Lt.object, Lt.array, Lt.string]),
maskId: Lt.string,
fixedWidth: Lt.bool,
inverse: Lt.bool,
flip: Lt.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: Lt.oneOfType([Lt.object, Lt.array, Lt.string]),
listItem: Lt.bool,
pull: Lt.oneOf(["right", "left"]),
pulse: Lt.bool,
rotation: Lt.oneOf([0, 90, 180, 270]),
shake: Lt.bool,
size: Lt.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: Lt.bool,
spinPulse: Lt.bool,
spinReverse: Lt.bool,
symbol: Lt.oneOfType([Lt.bool, Lt.string]),
title: Lt.string,
titleId: Lt.string,
transform: Lt.oneOfType([Lt.string, Lt.object]),
swapOpacity: Lt.bool
};
var eJe = foe.bind(null, ae.createElement);
const tJe = "grep_for_single_inclusion_12345", rJe = Ure((e) => ({
isOpen: !1,
openModal: () => e({ isOpen: !0 }),
closeModal: () => e({ isOpen: !1 }),
toggleModal: () => {
console.log(tJe), e((t) => ({ isOpen: !t.isOpen }));
}
})), IW = (e) => {
let t;
const r = /* @__PURE__ */ new Set(), n = (s, u) => {
const c = typeof s == "function" ? s(t) : s;
if (!Object.is(c, t)) {
const d = t;
t = u ?? (typeof c != "object" || c === null) ? c : Object.assign({}, t, c), r.forEach((l) => l(t, d));
}
}, o = () => t, a = { setState: n, getState: o, getInitialState: () => i, subscribe: (s) => (r.add(s), () => r.delete(s)) }, i = t = e(n, o, a);
return a;
}, nJe = (e) => e ? IW(e) : IW, oJe = (e) => e;
function aJe(e, t = oJe) {
const r = ae.useSyncExternalStore(
e.subscribe,
() => t(e.getState()),
() => t(e.getInitialState())
);
return ae.useDebugValue(r), r;
}
const jW = (e) => {
const t = nJe(e), r = (n) => aJe(t, n);
return Object.assign(r, t), r;
}, iJe = (e) => e ? jW(e) : jW;
async function sJe(e, t = {}, r) {
return window.__TAURI_INTERNALS__.invoke(e, t, r);
}
const lJe = async () => {
try {
return await sJe("storyteller_get_credits_command");
} catch (e) {
throw e;
}
};
var RW;
(function(e) {
e.WINDOW_RESIZED = "tauri://resize", e.WINDOW_MOVED = "tauri://move", e.WINDOW_CLOSE_REQUESTED = "tauri://close-requested", e.WINDOW_DESTROYED = "tauri://destroyed", e.WINDOW_FOCUS = "tauri://focus", e.WINDOW_BLUR = "tauri://blur", e.WINDOW_SCALE_FACTOR_CHANGED = "tauri://scale-change", e.WINDOW_THEME_CHANGED = "tauri://theme-changed", e.WINDOW_CREATED = "tauri://window-created", e.WEBVIEW_CREATED = "tauri://webview-created", e.DRAG_ENTER = "tauri://drag-enter", e.DRAG_OVER = "tauri://drag-over", e.DRAG_DROP = "tauri://drag-drop", e.DRAG_LEAVE = "tauri://drag-leave";
})(RW || (RW = {}));
const cJe = iJe((e) => ({
freeCredits: 0,
monthlyCredits: 0,
bankedCredits: 0,
totalCredits: 0,
// Call to fetch credits from the server
fetchFromServer: async () => {
let t;
try {
t = await lJe();
} catch (r) {
console.error("Error fetching credits", r);
return;
}
console.log("Fetched credits from server: ", t), t.payload && e((r) => ({
freeCredits: t.payload.free_credits,
monthlyCredits: t.payload.monthly_credits,
bankedCredits: t.payload.banked_credits,
totalCredits: t.payload.sum_total_credits
}));
}
})), M4 = {
slug: "free",
name: "Free",
isPaidPlan: !1,
monthlyPrice: 0,
yearlyPrice: 0,
features: [
{ text: "Free daily generations", included: !0 },
{ text: "Limited access to ArtCraft tools", included: !0 }
],
colorScheme: "dark"
}, uJe = [
M4,
{
slug: "artcraft_basic",
name: "Basic",
isPaidPlan: !0,
monthlyPrice: 8,
yearlyPrice: 96,
originalMonthlyPrice: 10,
originalYearlyPrice: 120,
features: [
{ text: "~1,010 Flux images", included: !0 },
{ text: "~36,000 real-time images", included: !0 },
{ text: "~180 enhanced images", included: !0 },
{ text: "~6 training jobs", included: !0 },
{ text: "Commercial license", included: !0 }
],
colorScheme: "green"
},
{
slug: "artcraft_pro",
name: "Pro",
isPaidPlan: !0,
monthlyPrice: 28,
yearlyPrice: 336,
originalMonthlyPrice: 35,
originalYearlyPrice: 420,
features: [
{ text: "~5,048 Flux images", included: !0 },
{ text: "~180,000 real-time images", included: !0 },
{ text: "~900 enhanced images", included: !0 },
{ text: "~30 training jobs", included: !0 },
{ text: "Commercial license", included: !0 }
],
colorScheme: "purple"
},
{
slug: "artcraft_max",
name: "Max",
isPaidPlan: !0,
monthlyPrice: 48,
yearlyPrice: 576,
originalMonthlyPrice: 60,
originalYearlyPrice: 720,
features: [
{ text: "~15,142 Flux images", included: !0 },
{ text: "~540,000 real-time images", included: !0 },
{ text: "~2,700 enhanced images", included: !0 },
{ text: "~90 training jobs", included: !0 },
{ text: "Commercial license", included: !0 }
],
colorScheme: "orange"
}
], fJe = new Map(
uJe.map((e) => [e.slug, e])
), MW = (e) => {
let t;
const r = /* @__PURE__ */ new Set(), n = (s, u) => {
const c = typeof s == "function" ? s(t) : s;
if (!Object.is(c, t)) {
const d = t;
t = u ?? (typeof c != "object" || c === null) ? c : Object.assign({}, t, c), r.forEach((l) => l(t, d));
}
}, o = () => t, a = { setState: n, getState: o, getInitialState: () => i, subscribe: (s) => (r.add(s), () => r.delete(s)) }, i = t = e(n, o, a);
return a;
}, dJe = (e) => e ? MW(e) : MW, pJe = (e) => e;
function mJe(e, t = pJe) {
const r = ae.useSyncExternalStore(
e.subscribe,
() => t(e.getState()),
() => t(e.getInitialState())
);
return ae.useDebugValue(r), r;
}
const DW = (e) => {
const t = dJe(e), r = (n) => mJe(t, n);
return Object.assign(r, t), r;
}, hJe = (e) => e ? DW(e) : DW;
async function gJe(e, t = {}, r) {
return window.__TAURI_INTERNALS__.invoke(e, t, r);
}
const bJe = async () => {
try {
return await gJe("storyteller_get_subscription_command");
} catch (e) {
throw e;
}
};
var FW;
(function(e) {
e.WINDOW_RESIZED = "tauri://resize", e.WINDOW_MOVED = "tauri://move", e.WINDOW_CLOSE_REQUESTED = "tauri://close-requested", e.WINDOW_DESTROYED = "tauri://destroyed", e.WINDOW_FOCUS = "tauri://focus", e.WINDOW_BLUR = "tauri://blur", e.WINDOW_SCALE_FACTOR_CHANGED = "tauri://scale-change", e.WINDOW_THEME_CHANGED = "tauri://theme-changed", e.WINDOW_CREATED = "tauri://window-created", e.WEBVIEW_CREATED = "tauri://webview-created", e.DRAG_ENTER = "tauri://drag-enter", e.DRAG_OVER = "tauri://drag-over", e.DRAG_DROP = "tauri://drag-drop", e.DRAG_LEAVE = "tauri://drag-leave";
})(FW || (FW = {}));
const yJe = hJe((e, t) => ({
subscriptionInfo: void 0,
// Returns true if the user has a paid plan.
// (We do not store "free" as a plan.)
hasPaidPlan: () => {
var r;
return ((r = t().subscriptionInfo) == null ? void 0 : r.subscriptionToken) !== void 0;
},
// Returns true if the user can cancel their plan.
// (The user can't cancel an already set to cancel/expire plan again)
canCancelPlan: () => {
const r = t().subscriptionInfo;
return (r == null ? void 0 : r.subscriptionToken) !== void 0 && (r == null ? void 0 : r.subscriptionEndAt) === void 0;
},
// Call to fetch credits from the server
fetchFromServer: async () => {
let r;
try {
r = await bJe();
} catch (n) {
console.error("Error fetching subscription", n);
return;
}
if (console.log("Fetched subscription from server: ", r), r.payload) {
let n;
r.payload.active_subscription && (n = {
subscriptionToken: r.payload.active_subscription.subscription_token,
productSlug: r.payload.active_subscription.product_slug,
namespace: r.payload.active_subscription.namespace,
nextBillAt: r.payload.active_subscription.next_bill_at ? new Date(r.payload.active_subscription.next_bill_at) : void 0,
subscriptionEndAt: r.payload.active_subscription.subscription_end_at ? new Date(r.payload.active_subscription.subscription_end_at) : void 0
}), e((o) => ({
subscriptionInfo: n
}));
}
}
})), vJe = (e) => {
var l, f, p, y, m;
const { toggleModal: t } = FBe(), r = cJe(), n = r.totalCredits, o = yJe(), a = (l = o.subscriptionInfo) == null ? void 0 : l.productSlug, i = a && fJe.get(a) || M4, s = o.canCancelPlan(), u = (p = (f = o.subscriptionInfo) == null ? void 0 : f.nextBillAt) == null ? void 0 : p.toLocaleDateString(), c = (m = (y = o.subscriptionInfo) == null ? void 0 : y.subscriptionEndAt) == null ? void 0 : m.toLocaleDateString(), d = s ? "Change plan" : "Upgrade plan";
return ue(() => {
r.fetchFromServer(), o.fetchFromServer();
}, []), /* @__PURE__ */ K(rn, { children: /* @__PURE__ */ Te("div", { className: "space-y-4 text-base-fg", children: [
/* @__PURE__ */ Te("div", { className: "space-y-2", children: [
/* @__PURE__ */ K(jn, { children: "Current Plan" }),
/* @__PURE__ */ Te("div", { className: "flex items-center justify-between", children: [
/* @__PURE__ */ Te("div", { className: "flex items-center gap-2 text-xl font-semibold ", children: [
/* @__PURE__ */ K(
To,
{
icon: age,
className: "text-[#C03FFF] text-lg"
}
),
i.name
] }),
/* @__PURE__ */ Te("div", { className: "flex gap-2", children: [
s && /* @__PURE__ */ K(xJe, {}),
/* @__PURE__ */ K(
Io,
{
variant: "primary",
className: "h-[30px]",
onClick: () => t(),
children: d
}
)
] })
] })
] }),
c && /* @__PURE__ */ Te("div", { className: "flex items-center gap-2 text-white/50", children: [
/* @__PURE__ */ K(To, { icon: gj }),
"Subscription ends on ",
c
] }),
u && /* @__PURE__ */ Te("div", { className: "flex items-center gap-2 text-white/50", children: [
/* @__PURE__ */ K(To, { icon: gj }),
"Next payment on ",
u
] }),
/* @__PURE__ */ K("hr", { className: "border-ui-panel-border" }),
/* @__PURE__ */ Te("div", { className: "flex flex-col", children: [
/* @__PURE__ */ K(jn, { htmlFor: "credits", className: "flex items-center gap-2", children: "Your credit balance" }),
/* @__PURE__ */ Te("div", { className: "flex items-center justify-between", children: [
/* @__PURE__ */ Te("div", { className: "flex items-center gap-2", children: [
/* @__PURE__ */ K(
To,
{
icon: ige,
className: "text-primary text-lg"
}
),
/* @__PURE__ */ K("span", { className: "text-2xl font-bold", children: n })
] }),
/* @__PURE__ */ K("div", { className: "flex gap-2", children: /* @__PURE__ */ K(wJe, {}) })
] }),
/* @__PURE__ */ K($Je, { creditsStore: r })
] })
] }) });
}, xJe = () => /* @__PURE__ */ K(Io, { variant: "secondary", className: "h-[30px]", onClick: async () => {
await Mg("storyteller_open_customer_portal_cancel_plan_command");
}, children: "Cancel plan" }), wJe = () => {
const { toggleModal: e } = rJe();
return /* @__PURE__ */ K(
Io,
{
variant: "primary",
className: "h-[30px]",
onClick: () => e(),
children: "Buy credits"
}
);
}, $Je = ({ creditsStore: e }) => /* @__PURE__ */ K("div", { className: "flex pl-5 pt-3", children: /* @__PURE__ */ Te("ul", { className: "list-disc", children: [
/* @__PURE__ */ Te("li", { children: [
" ",
e.monthlyCredits,
" monthly credits (refilled monthly)",
" "
] }),
/* @__PURE__ */ Te("li", { children: [
" ",
e.bankedCredits,
" purchased credits "
] })
] }) }), moe = "st-theme";
function kJe() {
const e = (localStorage.getItem(moe) || "").trim();
return e === "light" || e === "gray" || e === "black" || e === "aurora" || e === "sunset" || e === "gradient" ? e === "gradient" ? "aurora" : e : "gray";
}
function _Je(e) {
const t = document.documentElement, r = [];
t.classList.forEach((n) => {
n.startsWith("theme-") && r.push(n);
}), r.forEach((n) => t.classList.remove(n)), t.classList.add(`theme-${e}`), localStorage.setItem(moe, e);
}
const OJe = () => {
const [e, t] = de(kJe());
ue(() => {
_Je(e);
}, [e]);
const r = Ie(
() => [
{
id: "light",
label: "Light",
swatch: /* @__PURE__ */ K(
"div",
{
className: "h-8 w-8 rounded-full border border-gray-300",
style: { background: "#ffffff" }
}
)
},
{
id: "gray",
label: "Gray",
swatch: /* @__PURE__ */ K(
"div",
{
className: "h-8 w-8 rounded-full border border-gray-700",
style: { background: "#242424" }
}
)
},
{
id: "black",
label: "Black",
swatch: /* @__PURE__ */ K(
"div",
{
className: "h-8 w-8 rounded-full border border-gray-800",
style: { background: "#000000" }
}
)
},
{
id: "aurora",
label: "Aurora",
swatch: /* @__PURE__ */ K(
"div",
{
className: "h-8 w-8 rounded-full border border-gray-700",
style: {
background: "radial-gradient(28px 14px at 20% 10%, #2d81ff, transparent), radial-gradient(32px 20px at 80% 80%, #1cb6be, transparent), #0d0f16"
}
}
)
},
{
id: "sunset",
label: "Sunset",
swatch: /* @__PURE__ */ K(
"div",
{
className: "h-8 w-8 rounded-full border border-gray-700",
style: {
background: "radial-gradient(28px 14px at 20% 10%, #8b5cf6, transparent), radial-gradient(32px 20px at 80% 80%, #fb923c, transparent), #140b12"
}
}
)
}
],
[]
);
return /* @__PURE__ */ Te("div", { className: "space-y-4", children: [
/* @__PURE__ */ Te("div", { children: [
/* @__PURE__ */ K(jn, { children: "Themes" }),
/* @__PURE__ */ K("p", { className: "text-sm opacity-70", children: "Choose your preferred look. Applies instantly." })
] }),
/* @__PURE__ */ K("div", { className: "grid grid-cols-2 gap-3", children: r.map((n) => /* @__PURE__ */ Te(
"button",
{
className: `group flex items-center gap-3 rounded-lg border border-white/10 bg-[#63636B]/10 p-2 text-left transition-colors duration-100 hover:bg-[#63636B]/30 ${e === n.id ? "ring-2 ring-brand-primary-500" : ""}`,
onClick: () => t(n.id),
"aria-pressed": e === n.id,
children: [
n.swatch,
/* @__PURE__ */ K("div", { className: "text-sm opacity-90", children: n.label })
]
},
n.id
)) })
] });
}, gQe = ({
isOpen: e,
onClose: t,
globalAccountLogoutCallback: r,
initialSection: n = "general"
}) => {
var u;
const [o, a] = de(n);
ue(() => {
e && a(n);
}, [e, n]);
const i = [
{ id: "general", label: "General", icon: fge },
{ id: "accounts", label: "Accounts", icon: oge },
{ id: "billing", label: "Plan & Credits", icon: pge },
{
id: "provider_priority",
label: "Provider Priority",
icon: cge
},
{ id: "appearance", label: "Appearance", icon: sge },
{ id: "alerts", label: "Alerts", icon: lge },
{ id: "about", label: "About", icon: yU }
//{ id: "video" as const, label: "Video", icon: faVideo },
//{ id: "image" as const, label: "Image", icon: faImage },
], s = () => {
switch (o) {
case "appearance":
return /* @__PURE__ */ K(OJe, {});
case "alerts":
return /* @__PURE__ */ K(UOe, {});
case "general":
return /* @__PURE__ */ K(M1e, {});
case "accounts":
return /* @__PURE__ */ K(
F9e,
{
globalAccountLogoutCallback: r
}
);
case "about":
return /* @__PURE__ */ K(L9e, {});
case "provider_priority":
return /* @__PURE__ */ K(B7e, {});
case "billing":
return /* @__PURE__ */ K(vJe, {});
}
};
return /* @__PURE__ */ K(
Sb,
{
isOpen: e,
onClose: t,
className: "max-w-3xl",
childPadding: !1,
children: /* @__PURE__ */ K("div", { className: "h-[560px]", children: /* @__PURE__ */ Te("div", { className: "grid h-full grid-cols-12 gap-3", children: [
/* @__PURE__ */ Te("div", { className: "relative col-span-4 p-3 pt-2 after:absolute after:right-0 after:top-0 after:h-full after:w-px after:bg-ui-panel-border", children: [
/* @__PURE__ */ K("div", { className: "flex items-center justify-between gap-2.5 py-0.5", children: /* @__PURE__ */ K("h2", { className: "text-[18px] font-semibold opacity-80", children: "Settings" }) }),
/* @__PURE__ */ K("hr", { className: "my-2 w-full border-ui-panel-border" }),
/* @__PURE__ */ K("div", { className: "space-y-1", children: i.map((c) => /* @__PURE__ */ K(
"button",
{
className: Uge(
"h-9 w-full rounded-lg p-2 text-left transition-colors duration-100 hover:bg-[#63636B]/30",
c.id === o ? "bg-[#63636B]/20" : ""
),
onClick: () => {
Y7e("switch_settings_section", {
section: c.id
}), a(c.id);
},
children: /* @__PURE__ */ Te("div", { className: "flex items-center gap-2.5 text-sm", children: [
/* @__PURE__ */ K(To, { icon: c.icon }),
c.label
] })
},
c.id
)) })
] }),
/* @__PURE__ */ Te("div", { className: "col-span-8 flex h-full flex-col", children: [
/* @__PURE__ */ K("div", { className: "w-full border-b border-ui-panel-border py-2.5 ps-0", children: /* @__PURE__ */ K("h2", { className: "text-[18px] font-semibold", children: (u = i.find((c) => c.id === o)) == null ? void 0 : u.label }) }),
/* @__PURE__ */ K("div", { className: "p-3 ps-0 text-sm h-full", children: s() })
] })
] }) })
}
);
};
export {
gQe as SettingsModal
};