Files
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

20879 lines
613 KiB
JavaScript

import { jsx as se, jsxs as Ge, Fragment as yn } from "react/jsx-runtime";
import * as ie from "react";
import ue, { createContext as at, forwardRef as Vh, Fragment as Rt, useRef as xe, useState as $e, useMemo as ze, useContext as Ue, useReducer as xd, createRef as $o, useEffect as Le, useId as jr, useCallback as Be, useLayoutEffect as Xs, isValidElement as Uh, cloneElement as qh, createElement as Kh, useSyncExternalStore as Xh } from "react";
import * as ja from "react-dom";
import { createPortal as Jh } from "react-dom";
/*!
* Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
* Copyright 2024 Fonticons, Inc.
*/
const Zh = {
prefix: "fas",
iconName: "film",
icon: [512, 512, [127902], "f008", "M0 96C0 60.7 28.7 32 64 32l384 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zM48 368l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm368-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM48 240l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm368-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM48 112l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16L64 96c-8.8 0-16 7.2-16 16zM416 96c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM160 128l0 64c0 17.7 14.3 32 32 32l128 0c17.7 0 32-14.3 32-32l0-64c0-17.7-14.3-32-32-32L192 96c-17.7 0-32 14.3-32 32zm32 160c-17.7 0-32 14.3-32 32l0 64c0 17.7 14.3 32 32 32l128 0c17.7 0 32-14.3 32-32l0-64c0-17.7-14.3-32-32-32l-128 0z"]
}, Xa = {
prefix: "fas",
iconName: "image",
icon: [512, 512, [], "f03e", "M0 96C0 60.7 28.7 32 64 32l384 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zM323.8 202.5c-4.5-6.6-11.9-10.5-19.8-10.5s-15.4 3.9-19.8 10.5l-87 127.6L170.7 297c-4.6-5.7-11.5-9-18.7-9s-14.2 3.3-18.7 9l-64 80c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6l96 0 32 0 208 0c8.9 0 17.1-4.9 21.2-12.8s3.6-17.4-1.4-24.7l-120-176zM112 192a48 48 0 1 0 0-96 48 48 0 1 0 0 96z"]
}, Qh = {
prefix: "fas",
iconName: "clock",
icon: [512, 512, [128339, "clock-four"], "f017", "M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 120l0 136c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2 280 120c0-13.3-10.7-24-24-24s-24 10.7-24 24z"]
};
/*!
* 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 ey(e, t, n) {
return (t = ny(t)) in e ? Object.defineProperty(e, t, {
value: n,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = n, e;
}
function Ic(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter(function(a) {
return Object.getOwnPropertyDescriptor(e, a).enumerable;
})), n.push.apply(n, r);
}
return n;
}
function $(e) {
for (var t = 1; t < arguments.length; t++) {
var n = arguments[t] != null ? arguments[t] : {};
t % 2 ? Ic(Object(n), !0).forEach(function(r) {
ey(e, r, n[r]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : Ic(Object(n)).forEach(function(r) {
Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
});
}
return e;
}
function ty(e, t) {
if (typeof e != "object" || !e) return e;
var n = e[Symbol.toPrimitive];
if (n !== void 0) {
var r = n.call(e, t);
if (typeof r != "object") return r;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function ny(e) {
var t = ty(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const jc = () => {
};
let Js = {}, wd = {}, Ed = null, kd = {
mark: jc,
measure: jc
};
try {
typeof window < "u" && (Js = window), typeof document < "u" && (wd = document), typeof MutationObserver < "u" && (Ed = MutationObserver), typeof performance < "u" && (kd = performance);
} catch {
}
const {
userAgent: Mc = ""
} = Js.navigator || {}, rn = Js, Ie = wd, Fc = Ed, da = kd;
rn.document;
const Gt = !!Ie.documentElement && !!Ie.head && typeof Ie.addEventListener == "function" && typeof Ie.createElement == "function", Pd = ~Mc.indexOf("MSIE") || ~Mc.indexOf("Trident/");
var ry = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, ay = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, Od = {
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"
}
}, oy = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, Sd = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Je = "classic", Ja = "duotone", iy = "sharp", sy = "sharp-duotone", Ad = [Je, Ja, iy, sy], ly = {
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"
}
}, cy = {
"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"
}
}, uy = /* @__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
}]]), fy = {
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"
}
}, dy = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], Rc = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, py = ["kit"], my = {
kit: {
"fa-kit": "fak"
}
}, gy = ["fak", "fakd"], hy = {
kit: {
fak: "fa-kit"
}
}, Lc = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, pa = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, yy = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], by = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], vy = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, xy = {
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"
}
}, wy = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, Fi = {
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"
}
}, Ey = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], Ri = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...yy, ...Ey], ky = ["solid", "regular", "light", "thin", "duotone", "brands"], Cd = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], Py = Cd.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), Oy = [...Object.keys(wy), ...ky, "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", pa.GROUP, pa.SWAP_OPACITY, pa.PRIMARY, pa.SECONDARY].concat(Cd.map((e) => "".concat(e, "x"))).concat(Py.map((e) => "w-".concat(e))), Sy = {
"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 Lt = "___FONT_AWESOME___", Li = 16, _d = "fa", Td = "svg-inline--fa", Sn = "data-fa-i2svg", Di = "data-fa-pseudo-element", Ay = "data-fa-pseudo-element-pending", Zs = "data-prefix", Qs = "data-icon", Dc = "fontawesome-i2svg", Cy = "async", _y = ["HTML", "HEAD", "STYLE", "SCRIPT"], Nd = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function Gr(e) {
return new Proxy(e, {
get(t, n) {
return n in t ? t[n] : t[Je];
}
});
}
const Id = $({}, Od);
Id[Je] = $($($($({}, {
"fa-duotone": "duotone"
}), Od[Je]), Rc.kit), Rc["kit-duotone"]);
const Ty = Gr(Id), zi = $({}, fy);
zi[Je] = $($($($({}, {
duotone: "fad"
}), zi[Je]), Lc.kit), Lc["kit-duotone"]);
const zc = Gr(zi), $i = $({}, Fi);
$i[Je] = $($({}, $i[Je]), hy.kit);
const el = Gr($i), Hi = $({}, xy);
Hi[Je] = $($({}, Hi[Je]), my.kit);
Gr(Hi);
const Ny = ry, jd = "fa-layers-text", Iy = ay, jy = $({}, ly);
Gr(jy);
const My = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], Ho = oy, Fy = [...py, ...Oy], Or = rn.FontAwesomeConfig || {};
function Ry(e) {
var t = Ie.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function Ly(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Ie && typeof Ie.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 [n, r] = t;
const a = Ly(Ry(n));
a != null && (Or[r] = a);
});
const Md = {
styleDefault: "solid",
familyDefault: Je,
cssPrefix: _d,
replacementClass: Td,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Or.familyPrefix && (Or.cssPrefix = Or.familyPrefix);
const er = $($({}, Md), Or);
er.autoReplaceSvg || (er.observeMutations = !1);
const ne = {};
Object.keys(Md).forEach((e) => {
Object.defineProperty(ne, e, {
enumerable: !0,
set: function(t) {
er[e] = t, Sr.forEach((n) => n(ne));
},
get: function() {
return er[e];
}
});
});
Object.defineProperty(ne, "familyPrefix", {
enumerable: !0,
set: function(e) {
er.cssPrefix = e, Sr.forEach((t) => t(ne));
},
get: function() {
return er.cssPrefix;
}
});
rn.FontAwesomeConfig = ne;
const Sr = [];
function Dy(e) {
return Sr.push(e), () => {
Sr.splice(Sr.indexOf(e), 1);
};
}
const qt = Li, wt = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function zy(e) {
if (!e || !Gt)
return;
const t = Ie.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const n = Ie.head.childNodes;
let r = null;
for (let a = n.length - 1; a > -1; a--) {
const o = n[a], i = (o.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (r = o);
}
return Ie.head.insertBefore(t, r), e;
}
const $y = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function Mr() {
let e = 12, t = "";
for (; e-- > 0; )
t += $y[Math.random() * 62 | 0];
return t;
}
function ir(e) {
const t = [];
for (let n = (e || []).length >>> 0; n--; )
t[n] = e[n];
return t;
}
function tl(e) {
return e.classList ? ir(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function Fd(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function Hy(e) {
return Object.keys(e || {}).reduce((t, n) => t + "".concat(n, '="').concat(Fd(e[n]), '" '), "").trim();
}
function Za(e) {
return Object.keys(e || {}).reduce((t, n) => t + "".concat(n, ": ").concat(e[n].trim(), ";"), "");
}
function nl(e) {
return e.size !== wt.size || e.x !== wt.x || e.y !== wt.y || e.rotate !== wt.rotate || e.flipX || e.flipY;
}
function Wy(e) {
let {
transform: t,
containerWidth: n,
iconWidth: r
} = e;
const a = {
transform: "translate(".concat(n / 2, " 256)")
}, o = "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)"), l = {
transform: "".concat(o, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(r / 2 * -1, " -256)")
};
return {
outer: a,
inner: l,
path: c
};
}
function By(e) {
let {
transform: t,
width: n = Li,
height: r = Li,
startCentered: a = !1
} = e, o = "";
return a && Pd ? o += "translate(".concat(t.x / qt - n / 2, "em, ").concat(t.y / qt - r / 2, "em) ") : a ? o += "translate(calc(-50% + ".concat(t.x / qt, "em), calc(-50% + ").concat(t.y / qt, "em)) ") : o += "translate(".concat(t.x / qt, "em, ").concat(t.y / qt, "em) "), o += "scale(".concat(t.size / qt * (t.flipX ? -1 : 1), ", ").concat(t.size / qt * (t.flipY ? -1 : 1), ") "), o += "rotate(".concat(t.rotate, "deg) "), o;
}
var Gy = `: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 Rd() {
const e = _d, t = Td, n = ne.cssPrefix, r = ne.replacementClass;
let a = Gy;
if (n !== e || r !== t) {
const o = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
a = a.replace(o, ".".concat(n, "-")).replace(i, "--".concat(n, "-")).replace(s, ".".concat(r));
}
return a;
}
let $c = !1;
function Wo() {
ne.autoAddCss && !$c && (zy(Rd()), $c = !0);
}
var Yy = {
mixout() {
return {
dom: {
css: Rd,
insertCss: Wo
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
Wo();
},
beforeI2svg() {
Wo();
}
};
}
};
const Dt = rn || {};
Dt[Lt] || (Dt[Lt] = {});
Dt[Lt].styles || (Dt[Lt].styles = {});
Dt[Lt].hooks || (Dt[Lt].hooks = {});
Dt[Lt].shims || (Dt[Lt].shims = []);
var Et = Dt[Lt];
const Ld = [], Dd = function() {
Ie.removeEventListener("DOMContentLoaded", Dd), Ma = 1, Ld.map((e) => e());
};
let Ma = !1;
Gt && (Ma = (Ie.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Ie.readyState), Ma || Ie.addEventListener("DOMContentLoaded", Dd));
function Vy(e) {
Gt && (Ma ? setTimeout(e, 0) : Ld.push(e));
}
function Yr(e) {
const {
tag: t,
attributes: n = {},
children: r = []
} = e;
return typeof e == "string" ? Fd(e) : "<".concat(t, " ").concat(Hy(n), ">").concat(r.map(Yr).join(""), "</").concat(t, ">");
}
function Hc(e, t, n) {
if (e && e[t] && e[t][n])
return {
prefix: t,
iconName: n,
icon: e[t][n]
};
}
var Bo = function(t, n, r, a) {
var o = Object.keys(t), i = o.length, s = n, l, c, u;
for (r === void 0 ? (l = 1, u = t[o[0]]) : (l = 0, u = r); l < i; l++)
c = o[l], u = s(u, t[c], c, t);
return u;
};
function Uy(e) {
const t = [];
let n = 0;
const r = e.length;
for (; n < r; ) {
const a = e.charCodeAt(n++);
if (a >= 55296 && a <= 56319 && n < r) {
const o = e.charCodeAt(n++);
(o & 64512) == 56320 ? t.push(((a & 1023) << 10) + (o & 1023) + 65536) : (t.push(a), n--);
} else
t.push(a);
}
return t;
}
function Wi(e) {
const t = Uy(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function qy(e, t) {
const n = e.length;
let r = e.charCodeAt(t), a;
return r >= 55296 && r <= 56319 && n > t + 1 && (a = e.charCodeAt(t + 1), a >= 56320 && a <= 57343) ? (r - 55296) * 1024 + a - 56320 + 65536 : r;
}
function Wc(e) {
return Object.keys(e).reduce((t, n) => {
const r = e[n];
return !!r.icon ? t[r.iconName] = r.icon : t[n] = r, t;
}, {});
}
function Bi(e, t) {
let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: r = !1
} = n, a = Wc(t);
typeof Et.hooks.addPack == "function" && !r ? Et.hooks.addPack(e, Wc(t)) : Et.styles[e] = $($({}, Et.styles[e] || {}), a), e === "fas" && Bi("fa", t);
}
const {
styles: Fr,
shims: Ky
} = Et, zd = Object.keys(el), Xy = zd.reduce((e, t) => (e[t] = Object.keys(el[t]), e), {});
let rl = null, $d = {}, Hd = {}, Wd = {}, Bd = {}, Gd = {};
function Jy(e) {
return ~Fy.indexOf(e);
}
function Zy(e, t) {
const n = t.split("-"), r = n[0], a = n.slice(1).join("-");
return r === e && a !== "" && !Jy(a) ? a : null;
}
const Yd = () => {
const e = (r) => Bo(Fr, (a, o, i) => (a[i] = Bo(o, r, {}), a), {});
$d = e((r, a, o) => (a[3] && (r[a[3]] = o), a[2] && a[2].filter((s) => typeof s == "number").forEach((s) => {
r[s.toString(16)] = o;
}), r)), Hd = e((r, a, o) => (r[o] = o, a[2] && a[2].filter((s) => typeof s == "string").forEach((s) => {
r[s] = o;
}), r)), Gd = e((r, a, o) => {
const i = a[2];
return r[o] = o, i.forEach((s) => {
r[s] = o;
}), r;
});
const t = "far" in Fr || ne.autoFetchSvg, n = Bo(Ky, (r, a) => {
const o = a[0];
let i = a[1];
const s = a[2];
return i === "far" && !t && (i = "fas"), typeof o == "string" && (r.names[o] = {
prefix: i,
iconName: s
}), typeof o == "number" && (r.unicodes[o.toString(16)] = {
prefix: i,
iconName: s
}), r;
}, {
names: {},
unicodes: {}
});
Wd = n.names, Bd = n.unicodes, rl = Qa(ne.styleDefault, {
family: ne.familyDefault
});
};
Dy((e) => {
rl = Qa(e.styleDefault, {
family: ne.familyDefault
});
});
Yd();
function al(e, t) {
return ($d[e] || {})[t];
}
function Qy(e, t) {
return (Hd[e] || {})[t];
}
function vn(e, t) {
return (Gd[e] || {})[t];
}
function Vd(e) {
return Wd[e] || {
prefix: null,
iconName: null
};
}
function eb(e) {
const t = Bd[e], n = al("fas", e);
return t || (n ? {
prefix: "fas",
iconName: n
} : null) || {
prefix: null,
iconName: null
};
}
function an() {
return rl;
}
const Ud = () => ({
prefix: null,
iconName: null,
rest: []
});
function tb(e) {
let t = Je;
const n = zd.reduce((r, a) => (r[a] = "".concat(ne.cssPrefix, "-").concat(a), r), {});
return Ad.forEach((r) => {
(e.includes(n[r]) || e.some((a) => Xy[r].includes(a))) && (t = r);
}), t;
}
function Qa(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: n = Je
} = t, r = Ty[n][e];
if (n === Ja && !e)
return "fad";
const a = zc[n][e] || zc[n][r], o = e in Et.styles ? e : null;
return a || o || null;
}
function nb(e) {
let t = [], n = null;
return e.forEach((r) => {
const a = Zy(ne.cssPrefix, r);
a ? n = a : r && t.push(r);
}), {
iconName: n,
rest: t
};
}
function Bc(e) {
return e.sort().filter((t, n, r) => r.indexOf(t) === n);
}
function eo(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: n = !1
} = t;
let r = null;
const a = Ri.concat(by), o = Bc(e.filter((p) => a.includes(p))), i = Bc(e.filter((p) => !Ri.includes(p))), s = o.filter((p) => (r = p, !Sd.includes(p))), [l = null] = s, c = tb(o), u = $($({}, nb(i)), {}, {
prefix: Qa(l, {
family: c
})
});
return $($($({}, u), ib({
values: e,
family: c,
styles: Fr,
config: ne,
canonical: u,
givenPrefix: r
})), rb(n, r, u));
}
function rb(e, t, n) {
let {
prefix: r,
iconName: a
} = n;
if (e || !r || !a)
return {
prefix: r,
iconName: a
};
const o = t === "fa" ? Vd(a) : {}, i = vn(r, a);
return a = o.iconName || i || a, r = o.prefix || r, r === "far" && !Fr.far && Fr.fas && !ne.autoFetchSvg && (r = "fas"), {
prefix: r,
iconName: a
};
}
const ab = Ad.filter((e) => e !== Je || e !== Ja), ob = Object.keys(Fi).filter((e) => e !== Je).map((e) => Object.keys(Fi[e])).flat();
function ib(e) {
const {
values: t,
family: n,
canonical: r,
givenPrefix: a = "",
styles: o = {},
config: i = {}
} = e, s = n === Ja, l = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", u = r.prefix === "fad" || r.prefix === "fa-duotone";
if (!s && (l || c || u) && (r.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (r.prefix = "fab"), !r.prefix && ab.includes(n) && (Object.keys(o).find((m) => ob.includes(m)) || i.autoFetchSvg)) {
const m = uy.get(n).defaultShortPrefixId;
r.prefix = m, r.iconName = vn(r.prefix, r.iconName) || r.iconName;
}
return (r.prefix === "fa" || a === "fa") && (r.prefix = an() || "fas"), r;
}
class sb {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++)
n[r] = arguments[r];
const a = n.reduce(this._pullDefinitions, {});
Object.keys(a).forEach((o) => {
this.definitions[o] = $($({}, this.definitions[o] || {}), a[o]), Bi(o, a[o]);
const i = el[Je][o];
i && Bi(i, a[o]), Yd();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, n) {
const r = n.prefix && n.iconName && n.icon ? {
0: n
} : n;
return Object.keys(r).map((a) => {
const {
prefix: o,
iconName: i,
icon: s
} = r[a], l = s[2];
t[o] || (t[o] = {}), l.length > 0 && l.forEach((c) => {
typeof c == "string" && (t[o][c] = s);
}), t[o][i] = s;
}), t;
}
}
let Gc = [], Wn = {};
const qn = {}, lb = Object.keys(qn);
function cb(e, t) {
let {
mixoutsTo: n
} = t;
return Gc = e, Wn = {}, Object.keys(qn).forEach((r) => {
lb.indexOf(r) === -1 && delete qn[r];
}), Gc.forEach((r) => {
const a = r.mixout ? r.mixout() : {};
if (Object.keys(a).forEach((o) => {
typeof a[o] == "function" && (n[o] = a[o]), typeof a[o] == "object" && Object.keys(a[o]).forEach((i) => {
n[o] || (n[o] = {}), n[o][i] = a[o][i];
});
}), r.hooks) {
const o = r.hooks();
Object.keys(o).forEach((i) => {
Wn[i] || (Wn[i] = []), Wn[i].push(o[i]);
});
}
r.provides && r.provides(qn);
}), n;
}
function Gi(e, t) {
for (var n = arguments.length, r = new Array(n > 2 ? n - 2 : 0), a = 2; a < n; a++)
r[a - 2] = arguments[a];
return (Wn[e] || []).forEach((i) => {
t = i.apply(null, [t, ...r]);
}), t;
}
function An(e) {
for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++)
n[r - 1] = arguments[r];
(Wn[e] || []).forEach((o) => {
o.apply(null, n);
});
}
function on() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return qn[e] ? qn[e].apply(null, t) : void 0;
}
function Yi(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const n = e.prefix || an();
if (t)
return t = vn(n, t) || t, Hc(qd.definitions, n, t) || Hc(Et.styles, n, t);
}
const qd = new sb(), ub = () => {
ne.autoReplaceSvg = !1, ne.observeMutations = !1, An("noAuto");
}, fb = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return Gt ? (An("beforeI2svg", e), on("pseudoElements2svg", e), on("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;
ne.autoReplaceSvg === !1 && (ne.autoReplaceSvg = !0), ne.observeMutations = !0, Vy(() => {
pb({
autoReplaceSvgRoot: t
}), An("watch", e);
});
}
}, db = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: vn(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], n = Qa(e[0]);
return {
prefix: n,
iconName: vn(n, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(ne.cssPrefix, "-")) > -1 || e.match(Ny))) {
const t = eo(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || an(),
iconName: vn(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = an();
return {
prefix: t,
iconName: vn(t, e) || e
};
}
}
}, st = {
noAuto: ub,
config: ne,
dom: fb,
parse: db,
library: qd,
findIconDefinition: Yi,
toHtml: Yr
}, pb = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Ie
} = e;
(Object.keys(Et.styles).length > 0 || ne.autoFetchSvg) && Gt && ne.autoReplaceSvg && st.dom.i2svg({
node: t
});
};
function to(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((n) => Yr(n));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!Gt) return;
const n = Ie.createElement("div");
return n.innerHTML = e.html, n.children;
}
}), e;
}
function mb(e) {
let {
children: t,
main: n,
mask: r,
attributes: a,
styles: o,
transform: i
} = e;
if (nl(i) && n.found && !r.found) {
const {
width: s,
height: l
} = n, c = {
x: s / l / 2,
y: 0.5
};
a.style = Za($($({}, o), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: a,
children: t
}];
}
function gb(e) {
let {
prefix: t,
iconName: n,
children: r,
attributes: a,
symbol: o
} = e;
const i = o === !0 ? "".concat(t, "-").concat(ne.cssPrefix, "-").concat(n) : o;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: $($({}, a), {}, {
id: i
}),
children: r
}]
}];
}
function ol(e) {
const {
icons: {
main: t,
mask: n
},
prefix: r,
iconName: a,
transform: o,
symbol: i,
title: s,
maskId: l,
titleId: c,
extra: u,
watchable: p = !1
} = e, {
width: m,
height: b
} = n.found ? n : t, x = gy.includes(r), v = [ne.replacementClass, a ? "".concat(ne.cssPrefix, "-").concat(a) : ""].filter((h) => u.classes.indexOf(h) === -1).filter((h) => h !== "" || !!h).concat(u.classes).join(" ");
let y = {
children: [],
attributes: $($({}, u.attributes), {}, {
"data-prefix": r,
"data-icon": a,
class: v,
role: u.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(m, " ").concat(b)
})
};
const w = x && !~u.classes.indexOf("fa-fw") ? {
width: "".concat(m / b * 16 * 0.0625, "em")
} : {};
p && (y.attributes[Sn] = ""), s && (y.children.push({
tag: "title",
attributes: {
id: y.attributes["aria-labelledby"] || "title-".concat(c || Mr())
},
children: [s]
}), delete y.attributes.title);
const P = $($({}, y), {}, {
prefix: r,
iconName: a,
main: t,
mask: n,
maskId: l,
transform: o,
symbol: i,
styles: $($({}, w), u.styles)
}), {
children: S,
attributes: _
} = n.found && t.found ? on("generateAbstractMask", P) || {
children: [],
attributes: {}
} : on("generateAbstractIcon", P) || {
children: [],
attributes: {}
};
return P.children = S, P.attributes = _, i ? gb(P) : mb(P);
}
function Yc(e) {
const {
content: t,
width: n,
height: r,
transform: a,
title: o,
extra: i,
watchable: s = !1
} = e, l = $($($({}, i.attributes), o ? {
title: o
} : {}), {}, {
class: i.classes.join(" ")
});
s && (l[Sn] = "");
const c = $({}, i.styles);
nl(a) && (c.transform = By({
transform: a,
startCentered: !0,
width: n,
height: r
}), c["-webkit-transform"] = c.transform);
const u = Za(c);
u.length > 0 && (l.style = u);
const p = [];
return p.push({
tag: "span",
attributes: l,
children: [t]
}), o && p.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [o]
}), p;
}
function hb(e) {
const {
content: t,
title: n,
extra: r
} = e, a = $($($({}, r.attributes), n ? {
title: n
} : {}), {}, {
class: r.classes.join(" ")
}), o = Za(r.styles);
o.length > 0 && (a.style = o);
const i = [];
return i.push({
tag: "span",
attributes: a,
children: [t]
}), n && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [n]
}), i;
}
const {
styles: Go
} = Et;
function Vi(e) {
const t = e[0], n = e[1], [r] = e.slice(4);
let a = null;
return Array.isArray(r) ? a = {
tag: "g",
attributes: {
class: "".concat(ne.cssPrefix, "-").concat(Ho.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(ne.cssPrefix, "-").concat(Ho.SECONDARY),
fill: "currentColor",
d: r[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(ne.cssPrefix, "-").concat(Ho.PRIMARY),
fill: "currentColor",
d: r[1]
}
}]
} : a = {
tag: "path",
attributes: {
fill: "currentColor",
d: r
}
}, {
found: !0,
width: t,
height: n,
icon: a
};
}
const yb = {
found: !1,
width: 512,
height: 512
};
function bb(e, t) {
!Nd && !ne.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function Ui(e, t) {
let n = t;
return t === "fa" && ne.styleDefault !== null && (t = an()), new Promise((r, a) => {
if (n === "fa") {
const o = Vd(e) || {};
e = o.iconName || e, t = o.prefix || t;
}
if (e && t && Go[t] && Go[t][e]) {
const o = Go[t][e];
return r(Vi(o));
}
bb(e, t), r($($({}, yb), {}, {
icon: ne.showMissingIcons && e ? on("missingIconAbstract") || {} : {}
}));
});
}
const Vc = () => {
}, qi = ne.measurePerformance && da && da.mark && da.measure ? da : {
mark: Vc,
measure: Vc
}, Er = 'FA "6.7.2"', vb = (e) => (qi.mark("".concat(Er, " ").concat(e, " begins")), () => Kd(e)), Kd = (e) => {
qi.mark("".concat(Er, " ").concat(e, " ends")), qi.measure("".concat(Er, " ").concat(e), "".concat(Er, " ").concat(e, " begins"), "".concat(Er, " ").concat(e, " ends"));
};
var il = {
begin: vb,
end: Kd
};
const Pa = () => {
};
function Uc(e) {
return typeof (e.getAttribute ? e.getAttribute(Sn) : null) == "string";
}
function xb(e) {
const t = e.getAttribute ? e.getAttribute(Zs) : null, n = e.getAttribute ? e.getAttribute(Qs) : null;
return t && n;
}
function wb(e) {
return e && e.classList && e.classList.contains && e.classList.contains(ne.replacementClass);
}
function Eb() {
return ne.autoReplaceSvg === !0 ? Oa.replace : Oa[ne.autoReplaceSvg] || Oa.replace;
}
function kb(e) {
return Ie.createElementNS("http://www.w3.org/2000/svg", e);
}
function Pb(e) {
return Ie.createElement(e);
}
function Xd(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: n = e.tag === "svg" ? kb : Pb
} = t;
if (typeof e == "string")
return Ie.createTextNode(e);
const r = n(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
r.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
r.appendChild(Xd(o, {
ceFn: n
}));
}), r;
}
function Ob(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const Oa = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((n) => {
t.parentNode.insertBefore(Xd(n), t);
}), t.getAttribute(Sn) === null && ne.keepOriginalSource) {
let n = Ie.createComment(Ob(t));
t.parentNode.replaceChild(n, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], n = e[1];
if (~tl(t).indexOf(ne.replacementClass))
return Oa.replace(e);
const r = new RegExp("".concat(ne.cssPrefix, "-.*"));
if (delete n[0].attributes.id, n[0].attributes.class) {
const o = n[0].attributes.class.split(" ").reduce((i, s) => (s === ne.replacementClass || s.match(r) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
n[0].attributes.class = o.toSvg.join(" "), o.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", o.toNode.join(" "));
}
const a = n.map((o) => Yr(o)).join(`
`);
t.setAttribute(Sn, ""), t.innerHTML = a;
}
};
function qc(e) {
e();
}
function Jd(e, t) {
const n = typeof t == "function" ? t : Pa;
if (e.length === 0)
n();
else {
let r = qc;
ne.mutateApproach === Cy && (r = rn.requestAnimationFrame || qc), r(() => {
const a = Eb(), o = il.begin("mutate");
e.map(a), o(), n();
});
}
}
let sl = !1;
function Zd() {
sl = !0;
}
function Ki() {
sl = !1;
}
let Fa = null;
function Kc(e) {
if (!Fc || !ne.observeMutations)
return;
const {
treeCallback: t = Pa,
nodeCallback: n = Pa,
pseudoElementsCallback: r = Pa,
observeMutationsRoot: a = Ie
} = e;
Fa = new Fc((o) => {
if (sl) return;
const i = an();
ir(o).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !Uc(s.addedNodes[0]) && (ne.searchPseudoElements && r(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && ne.searchPseudoElements && r(s.target.parentNode), s.type === "attributes" && Uc(s.target) && ~My.indexOf(s.attributeName))
if (s.attributeName === "class" && xb(s.target)) {
const {
prefix: l,
iconName: c
} = eo(tl(s.target));
s.target.setAttribute(Zs, l || i), c && s.target.setAttribute(Qs, c);
} else wb(s.target) && n(s.target);
});
}), Gt && Fa.observe(a, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function Sb() {
Fa && Fa.disconnect();
}
function Ab(e) {
const t = e.getAttribute("style");
let n = [];
return t && (n = t.split(";").reduce((r, a) => {
const o = a.split(":"), i = o[0], s = o.slice(1);
return i && s.length > 0 && (r[i] = s.join(":").trim()), r;
}, {})), n;
}
function Cb(e) {
const t = e.getAttribute("data-prefix"), n = e.getAttribute("data-icon"), r = e.innerText !== void 0 ? e.innerText.trim() : "";
let a = eo(tl(e));
return a.prefix || (a.prefix = an()), t && n && (a.prefix = t, a.iconName = n), a.iconName && a.prefix || (a.prefix && r.length > 0 && (a.iconName = Qy(a.prefix, e.innerText) || al(a.prefix, Wi(e.innerText))), !a.iconName && ne.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (a.iconName = e.firstChild.data)), a;
}
function _b(e) {
const t = ir(e.attributes).reduce((a, o) => (a.name !== "class" && a.name !== "style" && (a[o.name] = o.value), a), {}), n = e.getAttribute("title"), r = e.getAttribute("data-fa-title-id");
return ne.autoA11y && (n ? t["aria-labelledby"] = "".concat(ne.replacementClass, "-title-").concat(r || Mr()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function Tb() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: wt,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function Xc(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: n,
prefix: r,
rest: a
} = Cb(e), o = _b(e), i = Gi("parseNodeAttributes", {}, e);
let s = t.styleParser ? Ab(e) : [];
return $({
iconName: n,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: r,
transform: wt,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: a,
styles: s,
attributes: o
}
}, i);
}
const {
styles: Nb
} = Et;
function Qd(e) {
const t = ne.autoReplaceSvg === "nest" ? Xc(e, {
styleParser: !1
}) : Xc(e);
return ~t.extra.classes.indexOf(jd) ? on("generateLayersText", e, t) : on("generateSvgReplacementMutation", e, t);
}
function Ib() {
return [...dy, ...Ri];
}
function Jc(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!Gt) return Promise.resolve();
const n = Ie.documentElement.classList, r = (u) => n.add("".concat(Dc, "-").concat(u)), a = (u) => n.remove("".concat(Dc, "-").concat(u)), o = ne.autoFetchSvg ? Ib() : Sd.concat(Object.keys(Nb));
o.includes("fa") || o.push("fa");
const i = [".".concat(jd, ":not([").concat(Sn, "])")].concat(o.map((u) => ".".concat(u, ":not([").concat(Sn, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = ir(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
r("pending"), a("complete");
else
return Promise.resolve();
const l = il.begin("onTree"), c = s.reduce((u, p) => {
try {
const m = Qd(p);
m && u.push(m);
} catch (m) {
Nd || m.name === "MissingIcon" && console.error(m);
}
return u;
}, []);
return new Promise((u, p) => {
Promise.all(c).then((m) => {
Jd(m, () => {
r("active"), r("complete"), a("pending"), typeof t == "function" && t(), l(), u();
});
}).catch((m) => {
l(), p(m);
});
});
}
function jb(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
Qd(e).then((n) => {
n && Jd([n], t);
});
}
function Mb(e) {
return function(t) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const r = (t || {}).icon ? t : Yi(t || {});
let {
mask: a
} = n;
return a && (a = (a || {}).icon ? a : Yi(a || {})), e(r, $($({}, n), {}, {
mask: a
}));
};
}
const Fb = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: n = wt,
symbol: r = !1,
mask: a = null,
maskId: o = null,
title: i = null,
titleId: s = null,
classes: l = [],
attributes: c = {},
styles: u = {}
} = t;
if (!e) return;
const {
prefix: p,
iconName: m,
icon: b
} = e;
return to($({
type: "icon"
}, e), () => (An("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), ne.autoA11y && (i ? c["aria-labelledby"] = "".concat(ne.replacementClass, "-title-").concat(s || Mr()) : (c["aria-hidden"] = "true", c.focusable = "false")), ol({
icons: {
main: Vi(b),
mask: a ? Vi(a.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: p,
iconName: m,
transform: $($({}, wt), n),
symbol: r,
title: i,
maskId: o,
titleId: s,
extra: {
attributes: c,
styles: u,
classes: l
}
})));
};
var Rb = {
mixout() {
return {
icon: Mb(Fb)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = Jc, e.nodeCallback = jb, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: n = Ie,
callback: r = () => {
}
} = t;
return Jc(n, r);
}, e.generateSvgReplacementMutation = function(t, n) {
const {
iconName: r,
title: a,
titleId: o,
prefix: i,
transform: s,
symbol: l,
mask: c,
maskId: u,
extra: p
} = n;
return new Promise((m, b) => {
Promise.all([Ui(r, i), c.iconName ? Ui(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((x) => {
let [v, y] = x;
m([t, ol({
icons: {
main: v,
mask: y
},
prefix: i,
iconName: r,
transform: s,
symbol: l,
maskId: u,
title: a,
titleId: o,
extra: p,
watchable: !0
})]);
}).catch(b);
});
}, e.generateAbstractIcon = function(t) {
let {
children: n,
attributes: r,
main: a,
transform: o,
styles: i
} = t;
const s = Za(i);
s.length > 0 && (r.style = s);
let l;
return nl(o) && (l = on("generateAbstractTransformGrouping", {
main: a,
transform: o,
containerWidth: a.width,
iconWidth: a.width
})), n.push(l || a.icon), {
children: n,
attributes: r
};
};
}
}, Lb = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: n = []
} = t;
return to({
type: "layer"
}, () => {
An("beforeDOMElementCreation", {
assembler: e,
params: t
});
let r = [];
return e((a) => {
Array.isArray(a) ? a.map((o) => {
r = r.concat(o.abstract);
}) : r = r.concat(a.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(ne.cssPrefix, "-layers"), ...n].join(" ")
},
children: r
}];
});
}
};
}
}, Db = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: n = null,
classes: r = [],
attributes: a = {},
styles: o = {}
} = t;
return to({
type: "counter",
content: e
}, () => (An("beforeDOMElementCreation", {
content: e,
params: t
}), hb({
content: e.toString(),
title: n,
extra: {
attributes: a,
styles: o,
classes: ["".concat(ne.cssPrefix, "-layers-counter"), ...r]
}
})));
}
};
}
}, zb = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: n = wt,
title: r = null,
classes: a = [],
attributes: o = {},
styles: i = {}
} = t;
return to({
type: "text",
content: e
}, () => (An("beforeDOMElementCreation", {
content: e,
params: t
}), Yc({
content: e,
transform: $($({}, wt), n),
title: r,
extra: {
attributes: o,
styles: i,
classes: ["".concat(ne.cssPrefix, "-layers-text"), ...a]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, n) {
const {
title: r,
transform: a,
extra: o
} = n;
let i = null, s = null;
if (Pd) {
const l = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / l, s = c.height / l;
}
return ne.autoA11y && !r && (o.attributes["aria-hidden"] = "true"), Promise.resolve([t, Yc({
content: t.innerHTML,
width: i,
height: s,
transform: a,
title: r,
extra: o,
watchable: !0
})]);
};
}
};
const $b = new RegExp('"', "ug"), Zc = [1105920, 1112319], Qc = $($($($({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), cy), Sy), vy), Xi = Object.keys(Qc).reduce((e, t) => (e[t.toLowerCase()] = Qc[t], e), {}), Hb = Object.keys(Xi).reduce((e, t) => {
const n = Xi[t];
return e[t] = n[900] || [...Object.entries(n)][0][1], e;
}, {});
function Wb(e) {
const t = e.replace($b, ""), n = qy(t, 0), r = n >= Zc[0] && n <= Zc[1], a = t.length === 2 ? t[0] === t[1] : !1;
return {
value: Wi(a ? t[0] : t),
isSecondary: r || a
};
}
function Bb(e, t) {
const n = e.replace(/^['"]|['"]$/g, "").toLowerCase(), r = parseInt(t), a = isNaN(r) ? "normal" : r;
return (Xi[n] || {})[a] || Hb[n];
}
function eu(e, t) {
const n = "".concat(Ay).concat(t.replace(":", "-"));
return new Promise((r, a) => {
if (e.getAttribute(n) !== null)
return r();
const i = ir(e.children).filter((m) => m.getAttribute(Di) === t)[0], s = rn.getComputedStyle(e, t), l = s.getPropertyValue("font-family"), c = l.match(Iy), u = s.getPropertyValue("font-weight"), p = s.getPropertyValue("content");
if (i && !c)
return e.removeChild(i), r();
if (c && p !== "none" && p !== "") {
const m = s.getPropertyValue("content");
let b = Bb(l, u);
const {
value: x,
isSecondary: v
} = Wb(m), y = c[0].startsWith("FontAwesome");
let w = al(b, x), P = w;
if (y) {
const S = eb(x);
S.iconName && S.prefix && (w = S.iconName, b = S.prefix);
}
if (w && !v && (!i || i.getAttribute(Zs) !== b || i.getAttribute(Qs) !== P)) {
e.setAttribute(n, P), i && e.removeChild(i);
const S = Tb(), {
extra: _
} = S;
_.attributes[Di] = t, Ui(w, b).then((h) => {
const G = ol($($({}, S), {}, {
icons: {
main: h,
mask: Ud()
},
prefix: b,
iconName: P,
extra: _,
watchable: !0
})), U = Ie.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(U, e.firstChild) : e.appendChild(U), U.outerHTML = G.map((te) => Yr(te)).join(`
`), e.removeAttribute(n), r();
}).catch(a);
} else
r();
} else
r();
});
}
function Gb(e) {
return Promise.all([eu(e, "::before"), eu(e, "::after")]);
}
function Yb(e) {
return e.parentNode !== document.head && !~_y.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(Di) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function tu(e) {
if (Gt)
return new Promise((t, n) => {
const r = ir(e.querySelectorAll("*")).filter(Yb).map(Gb), a = il.begin("searchPseudoElements");
Zd(), Promise.all(r).then(() => {
a(), Ki(), t();
}).catch(() => {
a(), Ki(), n();
});
});
}
var Vb = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = tu, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: n = Ie
} = t;
ne.searchPseudoElements && tu(n);
};
}
};
let nu = !1;
var Ub = {
mixout() {
return {
dom: {
unwatch() {
Zd(), nu = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
Kc(Gi("mutationObserverCallbacks", {}));
},
noAuto() {
Sb();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
nu ? Ki() : Kc(Gi("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const ru = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((n, r) => {
const a = r.toLowerCase().split("-"), o = a[0];
let i = a.slice(1).join("-");
if (o && i === "h")
return n.flipX = !0, n;
if (o && i === "v")
return n.flipY = !0, n;
if (i = parseFloat(i), isNaN(i))
return n;
switch (o) {
case "grow":
n.size = n.size + i;
break;
case "shrink":
n.size = n.size - i;
break;
case "left":
n.x = n.x - i;
break;
case "right":
n.x = n.x + i;
break;
case "up":
n.y = n.y - i;
break;
case "down":
n.y = n.y + i;
break;
case "rotate":
n.rotate = n.rotate + i;
break;
}
return n;
}, t);
};
var qb = {
mixout() {
return {
parse: {
transform: (e) => ru(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const n = t.getAttribute("data-fa-transform");
return n && (e.transform = ru(n)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: n,
transform: r,
containerWidth: a,
iconWidth: o
} = t;
const i = {
transform: "translate(".concat(a / 2, " 256)")
}, s = "translate(".concat(r.x * 32, ", ").concat(r.y * 32, ") "), l = "scale(".concat(r.size / 16 * (r.flipX ? -1 : 1), ", ").concat(r.size / 16 * (r.flipY ? -1 : 1), ") "), c = "rotate(".concat(r.rotate, " 0 0)"), u = {
transform: "".concat(s, " ").concat(l, " ").concat(c)
}, p = {
transform: "translate(".concat(o / 2 * -1, " -256)")
}, m = {
outer: i,
inner: u,
path: p
};
return {
tag: "g",
attributes: $({}, m.outer),
children: [{
tag: "g",
attributes: $({}, m.inner),
children: [{
tag: n.icon.tag,
children: n.icon.children,
attributes: $($({}, n.icon.attributes), m.path)
}]
}]
};
};
}
};
const Yo = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function au(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 Kb(e) {
return e.tag === "g" ? e.children : [e];
}
var Xb = {
hooks() {
return {
parseNodeAttributes(e, t) {
const n = t.getAttribute("data-fa-mask"), r = n ? eo(n.split(" ").map((a) => a.trim())) : Ud();
return r.prefix || (r.prefix = an()), e.mask = r, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: n,
attributes: r,
main: a,
mask: o,
maskId: i,
transform: s
} = t;
const {
width: l,
icon: c
} = a, {
width: u,
icon: p
} = o, m = Wy({
transform: s,
containerWidth: u,
iconWidth: l
}), b = {
tag: "rect",
attributes: $($({}, Yo), {}, {
fill: "white"
})
}, x = c.children ? {
children: c.children.map(au)
} : {}, v = {
tag: "g",
attributes: $({}, m.inner),
children: [au($({
tag: c.tag,
attributes: $($({}, c.attributes), m.path)
}, x))]
}, y = {
tag: "g",
attributes: $({}, m.outer),
children: [v]
}, w = "mask-".concat(i || Mr()), P = "clip-".concat(i || Mr()), S = {
tag: "mask",
attributes: $($({}, Yo), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [b, y]
}, _ = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: P
},
children: Kb(p)
}, S]
};
return n.push(_, {
tag: "rect",
attributes: $({
fill: "currentColor",
"clip-path": "url(#".concat(P, ")"),
mask: "url(#".concat(w, ")")
}, Yo)
}), {
children: n,
attributes: r
};
};
}
}, Jb = {
provides(e) {
let t = !1;
rn.matchMedia && (t = rn.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const n = [], r = {
fill: "currentColor"
}, a = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
n.push({
tag: "path",
attributes: $($({}, r), {}, {
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 o = $($({}, a), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: $($({}, r), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: $($({}, a), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: $($({}, o), {}, {
values: "1;0;1;1;0;1;"
})
}), n.push(i), n.push({
tag: "path",
attributes: $($({}, r), {}, {
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: $($({}, o), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || n.push({
tag: "path",
attributes: $($({}, r), {}, {
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: $($({}, o), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: n
};
};
}
}, Zb = {
hooks() {
return {
parseNodeAttributes(e, t) {
const n = t.getAttribute("data-fa-symbol"), r = n === null ? !1 : n === "" ? !0 : n;
return e.symbol = r, e;
}
};
}
}, Qb = [Yy, Rb, Lb, Db, zb, Vb, Ub, qb, Xb, Jb, Zb];
cb(Qb, {
mixoutsTo: st
});
st.noAuto;
st.config;
st.library;
st.dom;
const Ji = st.parse;
st.findIconDefinition;
st.toHtml;
const ev = st.icon;
st.layer;
st.text;
st.counter;
function tv(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var ma = { exports: {} }, ga = { exports: {} }, ke = {};
/** @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 ou;
function nv() {
if (ou) return ke;
ou = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, n = e ? Symbol.for("react.portal") : 60106, r = e ? Symbol.for("react.fragment") : 60107, a = e ? Symbol.for("react.strict_mode") : 60108, o = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, l = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, u = e ? Symbol.for("react.forward_ref") : 60112, p = e ? Symbol.for("react.suspense") : 60113, m = e ? Symbol.for("react.suspense_list") : 60120, b = e ? Symbol.for("react.memo") : 60115, x = e ? Symbol.for("react.lazy") : 60116, v = e ? Symbol.for("react.block") : 60121, y = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, P = e ? Symbol.for("react.scope") : 60119;
function S(h) {
if (typeof h == "object" && h !== null) {
var G = h.$$typeof;
switch (G) {
case t:
switch (h = h.type, h) {
case l:
case c:
case r:
case o:
case a:
case p:
return h;
default:
switch (h = h && h.$$typeof, h) {
case s:
case u:
case x:
case b:
case i:
return h;
default:
return G;
}
}
case n:
return G;
}
}
}
function _(h) {
return S(h) === c;
}
return ke.AsyncMode = l, ke.ConcurrentMode = c, ke.ContextConsumer = s, ke.ContextProvider = i, ke.Element = t, ke.ForwardRef = u, ke.Fragment = r, ke.Lazy = x, ke.Memo = b, ke.Portal = n, ke.Profiler = o, ke.StrictMode = a, ke.Suspense = p, ke.isAsyncMode = function(h) {
return _(h) || S(h) === l;
}, ke.isConcurrentMode = _, ke.isContextConsumer = function(h) {
return S(h) === s;
}, ke.isContextProvider = function(h) {
return S(h) === i;
}, ke.isElement = function(h) {
return typeof h == "object" && h !== null && h.$$typeof === t;
}, ke.isForwardRef = function(h) {
return S(h) === u;
}, ke.isFragment = function(h) {
return S(h) === r;
}, ke.isLazy = function(h) {
return S(h) === x;
}, ke.isMemo = function(h) {
return S(h) === b;
}, ke.isPortal = function(h) {
return S(h) === n;
}, ke.isProfiler = function(h) {
return S(h) === o;
}, ke.isStrictMode = function(h) {
return S(h) === a;
}, ke.isSuspense = function(h) {
return S(h) === p;
}, ke.isValidElementType = function(h) {
return typeof h == "string" || typeof h == "function" || h === r || h === c || h === o || h === a || h === p || h === m || typeof h == "object" && h !== null && (h.$$typeof === x || h.$$typeof === b || h.$$typeof === i || h.$$typeof === s || h.$$typeof === u || h.$$typeof === y || h.$$typeof === w || h.$$typeof === P || h.$$typeof === v);
}, ke.typeOf = S, ke;
}
var Pe = {};
/** @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 iu;
function rv() {
return iu || (iu = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, n = e ? Symbol.for("react.portal") : 60106, r = e ? Symbol.for("react.fragment") : 60107, a = e ? Symbol.for("react.strict_mode") : 60108, o = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, l = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, u = e ? Symbol.for("react.forward_ref") : 60112, p = e ? Symbol.for("react.suspense") : 60113, m = e ? Symbol.for("react.suspense_list") : 60120, b = e ? Symbol.for("react.memo") : 60115, x = e ? Symbol.for("react.lazy") : 60116, v = e ? Symbol.for("react.block") : 60121, y = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, P = e ? Symbol.for("react.scope") : 60119;
function S(O) {
return typeof O == "string" || typeof O == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
O === r || O === c || O === o || O === a || O === p || O === m || typeof O == "object" && O !== null && (O.$$typeof === x || O.$$typeof === b || O.$$typeof === i || O.$$typeof === s || O.$$typeof === u || O.$$typeof === y || O.$$typeof === w || O.$$typeof === P || O.$$typeof === v);
}
function _(O) {
if (typeof O == "object" && O !== null) {
var Ee = O.$$typeof;
switch (Ee) {
case t:
var qe = O.type;
switch (qe) {
case l:
case c:
case r:
case o:
case a:
case p:
return qe;
default:
var ht = qe && qe.$$typeof;
switch (ht) {
case s:
case u:
case x:
case b:
case i:
return ht;
default:
return Ee;
}
}
case n:
return Ee;
}
}
}
var h = l, G = c, U = s, te = i, X = t, Z = u, Q = r, B = x, oe = b, q = n, J = o, Y = a, M = p, K = !1;
function z(O) {
return K || (K = !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.")), g(O) || _(O) === l;
}
function g(O) {
return _(O) === c;
}
function d(O) {
return _(O) === s;
}
function E(O) {
return _(O) === i;
}
function A(O) {
return typeof O == "object" && O !== null && O.$$typeof === t;
}
function C(O) {
return _(O) === u;
}
function T(O) {
return _(O) === r;
}
function I(O) {
return _(O) === x;
}
function N(O) {
return _(O) === b;
}
function F(O) {
return _(O) === n;
}
function L(O) {
return _(O) === o;
}
function D(O) {
return _(O) === a;
}
function ce(O) {
return _(O) === p;
}
Pe.AsyncMode = h, Pe.ConcurrentMode = G, Pe.ContextConsumer = U, Pe.ContextProvider = te, Pe.Element = X, Pe.ForwardRef = Z, Pe.Fragment = Q, Pe.Lazy = B, Pe.Memo = oe, Pe.Portal = q, Pe.Profiler = J, Pe.StrictMode = Y, Pe.Suspense = M, Pe.isAsyncMode = z, Pe.isConcurrentMode = g, Pe.isContextConsumer = d, Pe.isContextProvider = E, Pe.isElement = A, Pe.isForwardRef = C, Pe.isFragment = T, Pe.isLazy = I, Pe.isMemo = N, Pe.isPortal = F, Pe.isProfiler = L, Pe.isStrictMode = D, Pe.isSuspense = ce, Pe.isValidElementType = S, Pe.typeOf = _;
}()), Pe;
}
var su;
function ep() {
return su || (su = 1, process.env.NODE_ENV === "production" ? ga.exports = nv() : ga.exports = rv()), ga.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var Vo, lu;
function av() {
if (lu) return Vo;
lu = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, n = Object.prototype.propertyIsEnumerable;
function r(o) {
if (o == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(o);
}
function a() {
try {
if (!Object.assign)
return !1;
var o = new String("abc");
if (o[5] = "de", Object.getOwnPropertyNames(o)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var l = Object.getOwnPropertyNames(i).map(function(u) {
return i[u];
});
if (l.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(u) {
c[u] = u;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return Vo = a() ? Object.assign : function(o, i) {
for (var s, l = r(o), c, u = 1; u < arguments.length; u++) {
s = Object(arguments[u]);
for (var p in s)
t.call(s, p) && (l[p] = s[p]);
if (e) {
c = e(s);
for (var m = 0; m < c.length; m++)
n.call(s, c[m]) && (l[c[m]] = s[c[m]]);
}
}
return l;
}, Vo;
}
var Uo, cu;
function ll() {
if (cu) return Uo;
cu = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return Uo = e, Uo;
}
var qo, uu;
function tp() {
return uu || (uu = 1, qo = Function.call.bind(Object.prototype.hasOwnProperty)), qo;
}
var Ko, fu;
function ov() {
if (fu) return Ko;
fu = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ ll(), n = {}, r = /* @__PURE__ */ tp();
e = function(o) {
var i = "Warning: " + o;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function a(o, i, s, l, c) {
if (process.env.NODE_ENV !== "production") {
for (var u in o)
if (r(o, u)) {
var p;
try {
if (typeof o[u] != "function") {
var m = Error(
(l || "React class") + ": " + s + " type `" + u + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof o[u] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw m.name = "Invariant Violation", m;
}
p = o[u](i, u, l, s, null, t);
} catch (x) {
p = x;
}
if (p && !(p instanceof Error) && e(
(l || "React class") + ": type specification of " + s + " `" + u + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof p + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), p instanceof Error && !(p.message in n)) {
n[p.message] = !0;
var b = c ? c() : "";
e(
"Failed " + s + " type: " + p.message + (b ?? "")
);
}
}
}
}
return a.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (n = {});
}, Ko = a, Ko;
}
var Xo, du;
function iv() {
if (du) return Xo;
du = 1;
var e = ep(), t = av(), n = /* @__PURE__ */ ll(), r = /* @__PURE__ */ tp(), a = /* @__PURE__ */ ov(), o = function() {
};
process.env.NODE_ENV !== "production" && (o = function(s) {
var l = "Warning: " + s;
typeof console < "u" && console.error(l);
try {
throw new Error(l);
} catch {
}
});
function i() {
return null;
}
return Xo = function(s, l) {
var c = typeof Symbol == "function" && Symbol.iterator, u = "@@iterator";
function p(g) {
var d = g && (c && g[c] || g[u]);
if (typeof d == "function")
return d;
}
var m = "<<anonymous>>", b = {
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: P(),
arrayOf: S,
element: _(),
elementType: h(),
instanceOf: G,
node: Z(),
objectOf: te,
oneOf: U,
oneOfType: X,
shape: B,
exact: oe
};
function x(g, d) {
return g === d ? g !== 0 || 1 / g === 1 / d : g !== g && d !== d;
}
function v(g, d) {
this.message = g, this.data = d && typeof d == "object" ? d : {}, this.stack = "";
}
v.prototype = Error.prototype;
function y(g) {
if (process.env.NODE_ENV !== "production")
var d = {}, E = 0;
function A(T, I, N, F, L, D, ce) {
if (F = F || m, D = D || N, ce !== n) {
if (l) {
var O = 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 O.name = "Invariant Violation", O;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var Ee = F + ":" + N;
!d[Ee] && // Avoid spamming the console because they are often not actionable except for lib authors
E < 3 && (o(
"You are manually calling a React.PropTypes validation function for the `" + D + "` prop on `" + F + "`. 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."
), d[Ee] = !0, E++);
}
}
return I[N] == null ? T ? I[N] === null ? new v("The " + L + " `" + D + "` is marked as required " + ("in `" + F + "`, but its value is `null`.")) : new v("The " + L + " `" + D + "` is marked as required in " + ("`" + F + "`, but its value is `undefined`.")) : null : g(I, N, F, L, D);
}
var C = A.bind(null, !1);
return C.isRequired = A.bind(null, !0), C;
}
function w(g) {
function d(E, A, C, T, I, N) {
var F = E[A], L = Y(F);
if (L !== g) {
var D = M(F);
return new v(
"Invalid " + T + " `" + I + "` of type " + ("`" + D + "` supplied to `" + C + "`, expected ") + ("`" + g + "`."),
{ expectedType: g }
);
}
return null;
}
return y(d);
}
function P() {
return y(i);
}
function S(g) {
function d(E, A, C, T, I) {
if (typeof g != "function")
return new v("Property `" + I + "` of component `" + C + "` has invalid PropType notation inside arrayOf.");
var N = E[A];
if (!Array.isArray(N)) {
var F = Y(N);
return new v("Invalid " + T + " `" + I + "` of type " + ("`" + F + "` supplied to `" + C + "`, expected an array."));
}
for (var L = 0; L < N.length; L++) {
var D = g(N, L, C, T, I + "[" + L + "]", n);
if (D instanceof Error)
return D;
}
return null;
}
return y(d);
}
function _() {
function g(d, E, A, C, T) {
var I = d[E];
if (!s(I)) {
var N = Y(I);
return new v("Invalid " + C + " `" + T + "` of type " + ("`" + N + "` supplied to `" + A + "`, expected a single ReactElement."));
}
return null;
}
return y(g);
}
function h() {
function g(d, E, A, C, T) {
var I = d[E];
if (!e.isValidElementType(I)) {
var N = Y(I);
return new v("Invalid " + C + " `" + T + "` of type " + ("`" + N + "` supplied to `" + A + "`, expected a single ReactElement type."));
}
return null;
}
return y(g);
}
function G(g) {
function d(E, A, C, T, I) {
if (!(E[A] instanceof g)) {
var N = g.name || m, F = z(E[A]);
return new v("Invalid " + T + " `" + I + "` of type " + ("`" + F + "` supplied to `" + C + "`, expected ") + ("instance of `" + N + "`."));
}
return null;
}
return y(d);
}
function U(g) {
if (!Array.isArray(g))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? o(
"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])."
) : o("Invalid argument supplied to oneOf, expected an array.")), i;
function d(E, A, C, T, I) {
for (var N = E[A], F = 0; F < g.length; F++)
if (x(N, g[F]))
return null;
var L = JSON.stringify(g, function(ce, O) {
var Ee = M(O);
return Ee === "symbol" ? String(O) : O;
});
return new v("Invalid " + T + " `" + I + "` of value `" + String(N) + "` " + ("supplied to `" + C + "`, expected one of " + L + "."));
}
return y(d);
}
function te(g) {
function d(E, A, C, T, I) {
if (typeof g != "function")
return new v("Property `" + I + "` of component `" + C + "` has invalid PropType notation inside objectOf.");
var N = E[A], F = Y(N);
if (F !== "object")
return new v("Invalid " + T + " `" + I + "` of type " + ("`" + F + "` supplied to `" + C + "`, expected an object."));
for (var L in N)
if (r(N, L)) {
var D = g(N, L, C, T, I + "." + L, n);
if (D instanceof Error)
return D;
}
return null;
}
return y(d);
}
function X(g) {
if (!Array.isArray(g))
return process.env.NODE_ENV !== "production" && o("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var d = 0; d < g.length; d++) {
var E = g[d];
if (typeof E != "function")
return o(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + K(E) + " at index " + d + "."
), i;
}
function A(C, T, I, N, F) {
for (var L = [], D = 0; D < g.length; D++) {
var ce = g[D], O = ce(C, T, I, N, F, n);
if (O == null)
return null;
O.data && r(O.data, "expectedType") && L.push(O.data.expectedType);
}
var Ee = L.length > 0 ? ", expected one of type [" + L.join(", ") + "]" : "";
return new v("Invalid " + N + " `" + F + "` supplied to " + ("`" + I + "`" + Ee + "."));
}
return y(A);
}
function Z() {
function g(d, E, A, C, T) {
return q(d[E]) ? null : new v("Invalid " + C + " `" + T + "` supplied to " + ("`" + A + "`, expected a ReactNode."));
}
return y(g);
}
function Q(g, d, E, A, C) {
return new v(
(g || "React class") + ": " + d + " type `" + E + "." + A + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + C + "`."
);
}
function B(g) {
function d(E, A, C, T, I) {
var N = E[A], F = Y(N);
if (F !== "object")
return new v("Invalid " + T + " `" + I + "` of type `" + F + "` " + ("supplied to `" + C + "`, expected `object`."));
for (var L in g) {
var D = g[L];
if (typeof D != "function")
return Q(C, T, I, L, M(D));
var ce = D(N, L, C, T, I + "." + L, n);
if (ce)
return ce;
}
return null;
}
return y(d);
}
function oe(g) {
function d(E, A, C, T, I) {
var N = E[A], F = Y(N);
if (F !== "object")
return new v("Invalid " + T + " `" + I + "` of type `" + F + "` " + ("supplied to `" + C + "`, expected `object`."));
var L = t({}, E[A], g);
for (var D in L) {
var ce = g[D];
if (r(g, D) && typeof ce != "function")
return Q(C, T, I, D, M(ce));
if (!ce)
return new v(
"Invalid " + T + " `" + I + "` key `" + D + "` supplied to `" + C + "`.\nBad object: " + JSON.stringify(E[A], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(g), null, " ")
);
var O = ce(N, D, C, T, I + "." + D, n);
if (O)
return O;
}
return null;
}
return y(d);
}
function q(g) {
switch (typeof g) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !g;
case "object":
if (Array.isArray(g))
return g.every(q);
if (g === null || s(g))
return !0;
var d = p(g);
if (d) {
var E = d.call(g), A;
if (d !== g.entries) {
for (; !(A = E.next()).done; )
if (!q(A.value))
return !1;
} else
for (; !(A = E.next()).done; ) {
var C = A.value;
if (C && !q(C[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function J(g, d) {
return g === "symbol" ? !0 : d ? d["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && d instanceof Symbol : !1;
}
function Y(g) {
var d = typeof g;
return Array.isArray(g) ? "array" : g instanceof RegExp ? "object" : J(d, g) ? "symbol" : d;
}
function M(g) {
if (typeof g > "u" || g === null)
return "" + g;
var d = Y(g);
if (d === "object") {
if (g instanceof Date)
return "date";
if (g instanceof RegExp)
return "regexp";
}
return d;
}
function K(g) {
var d = M(g);
switch (d) {
case "array":
case "object":
return "an " + d;
case "boolean":
case "date":
case "regexp":
return "a " + d;
default:
return d;
}
}
function z(g) {
return !g.constructor || !g.constructor.name ? m : g.constructor.name;
}
return b.checkPropTypes = a, b.resetWarningCache = a.resetWarningCache, b.PropTypes = b, b;
}, Xo;
}
var Jo, pu;
function sv() {
if (pu) return Jo;
pu = 1;
var e = /* @__PURE__ */ ll();
function t() {
}
function n() {
}
return n.resetWarningCache = t, Jo = function() {
function r(i, s, l, c, u, p) {
if (p !== e) {
var m = 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 m.name = "Invariant Violation", m;
}
}
r.isRequired = r;
function a() {
return r;
}
var o = {
array: r,
bigint: r,
bool: r,
func: r,
number: r,
object: r,
string: r,
symbol: r,
any: r,
arrayOf: a,
element: r,
elementType: r,
instanceOf: a,
node: r,
objectOf: a,
oneOf: a,
oneOfType: a,
shape: a,
exact: a,
checkPropTypes: n,
resetWarningCache: t
};
return o.PropTypes = o, o;
}, Jo;
}
var mu;
function lv() {
if (mu) return ma.exports;
if (mu = 1, process.env.NODE_ENV !== "production") {
var e = ep(), t = !0;
ma.exports = /* @__PURE__ */ iv()(e.isElement, t);
} else
ma.exports = /* @__PURE__ */ sv()();
return ma.exports;
}
var cv = /* @__PURE__ */ lv();
const he = /* @__PURE__ */ tv(cv);
function gu(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter(function(a) {
return Object.getOwnPropertyDescriptor(e, a).enumerable;
})), n.push.apply(n, r);
}
return n;
}
function bt(e) {
for (var t = 1; t < arguments.length; t++) {
var n = arguments[t] != null ? arguments[t] : {};
t % 2 ? gu(Object(n), !0).forEach(function(r) {
Bn(e, r, n[r]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : gu(Object(n)).forEach(function(r) {
Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
});
}
return e;
}
function Ra(e) {
"@babel/helpers - typeof";
return Ra = 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;
}, Ra(e);
}
function Bn(e, t, n) {
return t in e ? Object.defineProperty(e, t, {
value: n,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = n, e;
}
function uv(e, t) {
if (e == null) return {};
var n = {}, r = Object.keys(e), a, o;
for (o = 0; o < r.length; o++)
a = r[o], !(t.indexOf(a) >= 0) && (n[a] = e[a]);
return n;
}
function fv(e, t) {
if (e == null) return {};
var n = uv(e, t), r, a;
if (Object.getOwnPropertySymbols) {
var o = Object.getOwnPropertySymbols(e);
for (a = 0; a < o.length; a++)
r = o[a], !(t.indexOf(r) >= 0) && Object.prototype.propertyIsEnumerable.call(e, r) && (n[r] = e[r]);
}
return n;
}
function Zi(e) {
return dv(e) || pv(e) || mv(e) || gv();
}
function dv(e) {
if (Array.isArray(e)) return Qi(e);
}
function pv(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function mv(e, t) {
if (e) {
if (typeof e == "string") return Qi(e, t);
var n = Object.prototype.toString.call(e).slice(8, -1);
if (n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set") return Array.from(e);
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Qi(e, t);
}
}
function Qi(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
return r;
}
function gv() {
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 hv(e) {
var t, n = e.beat, r = e.fade, a = e.beatFade, o = e.bounce, i = e.shake, s = e.flash, l = e.spin, c = e.spinPulse, u = e.spinReverse, p = e.pulse, m = e.fixedWidth, b = e.inverse, x = e.border, v = e.listItem, y = e.flip, w = e.size, P = e.rotation, S = e.pull, _ = (t = {
"fa-beat": n,
"fa-fade": r,
"fa-beat-fade": a,
"fa-bounce": o,
"fa-shake": i,
"fa-flash": s,
"fa-spin": l,
"fa-spin-reverse": u,
"fa-spin-pulse": c,
"fa-pulse": p,
"fa-fw": m,
"fa-inverse": b,
"fa-border": x,
"fa-li": v,
"fa-flip": y === !0,
"fa-flip-horizontal": y === "horizontal" || y === "both",
"fa-flip-vertical": y === "vertical" || y === "both"
}, Bn(t, "fa-".concat(w), typeof w < "u" && w !== null), Bn(t, "fa-rotate-".concat(P), typeof P < "u" && P !== null && P !== 0), Bn(t, "fa-pull-".concat(S), typeof S < "u" && S !== null), Bn(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(_).map(function(h) {
return _[h] ? h : null;
}).filter(function(h) {
return h;
});
}
function yv(e) {
return e = e - 0, e === e;
}
function np(e) {
return yv(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, n) {
return n ? n.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var bv = ["style"];
function vv(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function xv(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, n) {
var r = n.indexOf(":"), a = np(n.slice(0, r)), o = n.slice(r + 1).trim();
return a.startsWith("webkit") ? t[vv(a)] = o : t[a] = o, t;
}, {});
}
function rp(e, t) {
var n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var r = (t.children || []).map(function(l) {
return rp(e, l);
}), a = Object.keys(t.attributes || {}).reduce(function(l, c) {
var u = t.attributes[c];
switch (c) {
case "class":
l.attrs.className = u, delete t.attributes.class;
break;
case "style":
l.attrs.style = xv(u);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? l.attrs[c.toLowerCase()] = u : l.attrs[np(c)] = u;
}
return l;
}, {
attrs: {}
}), o = n.style, i = o === void 0 ? {} : o, s = fv(n, bv);
return a.attrs.style = bt(bt({}, a.attrs.style), i), e.apply(void 0, [t.tag, bt(bt({}, a.attrs), s)].concat(Zi(r)));
}
var ap = !1;
try {
ap = process.env.NODE_ENV === "production";
} catch {
}
function wv() {
if (!ap && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function hu(e) {
if (e && Ra(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (Ji.icon)
return Ji.icon(e);
if (e === null)
return null;
if (e && Ra(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 Zo(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Bn({}, e, t) : {};
}
var yu = {
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
}, gn = /* @__PURE__ */ ue.forwardRef(function(e, t) {
var n = bt(bt({}, yu), e), r = n.icon, a = n.mask, o = n.symbol, i = n.className, s = n.title, l = n.titleId, c = n.maskId, u = hu(r), p = Zo("classes", [].concat(Zi(hv(n)), Zi((i || "").split(" ")))), m = Zo("transform", typeof n.transform == "string" ? Ji.transform(n.transform) : n.transform), b = Zo("mask", hu(a)), x = ev(u, bt(bt(bt(bt({}, p), m), b), {}, {
symbol: o,
title: s,
titleId: l,
maskId: c
}));
if (!x)
return wv("Could not find icon", u), null;
var v = x.abstract, y = {
ref: t
};
return Object.keys(n).forEach(function(w) {
yu.hasOwnProperty(w) || (y[w] = n[w]);
}), Ev(v[0], y);
});
gn.displayName = "FontAwesomeIcon";
gn.propTypes = {
beat: he.bool,
border: he.bool,
beatFade: he.bool,
bounce: he.bool,
className: he.string,
fade: he.bool,
flash: he.bool,
mask: he.oneOfType([he.object, he.array, he.string]),
maskId: he.string,
fixedWidth: he.bool,
inverse: he.bool,
flip: he.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: he.oneOfType([he.object, he.array, he.string]),
listItem: he.bool,
pull: he.oneOf(["right", "left"]),
pulse: he.bool,
rotation: he.oneOf([0, 90, 180, 270]),
shake: he.bool,
size: he.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: he.bool,
spinPulse: he.bool,
spinReverse: he.bool,
symbol: he.oneOfType([he.bool, he.string]),
title: he.string,
titleId: he.string,
transform: he.oneOfType([he.string, he.object]),
swapOpacity: he.bool
};
var Ev = rp.bind(null, ue.createElement), kv = Object.defineProperty, Pv = (e, t, n) => t in e ? kv(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n, We = (e, t, n) => Pv(e, typeof t != "symbol" ? t + "" : t, n);
let op = class {
constructor(t) {
We(this, "kind", "model"), We(this, "id"), We(this, "tauriId"), We(this, "fullName"), We(this, "category"), We(this, "creator"), We(this, "selectorName"), We(this, "selectorDescription"), We(this, "selectorBadges"), We(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: []
};
}
};
class yt extends op {
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), We(this, "kind", "image_model"), We(this, "maxGenerationCount"), We(this, "defaultGenerationCount"), We(this, "canEditImages"), We(this, "usesInpaintingMask"), We(this, "canUseImagePrompt"), We(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);
}
}
class hr extends op {
constructor(t) {
super(t), We(this, "kind", "video_model"), We(this, "startFrame"), We(this, "endFrame"), this.startFrame = t.startFrame, this.endFrame = t.endFrame;
}
}
var le = /* @__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))(le || {});
function Ov(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var Qo = { exports: {} }, ge = {};
/**
* @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 bu;
function Sv() {
if (bu) return ge;
bu = 1;
var e = Symbol.for("react.element"), t = Symbol.for("react.portal"), n = Symbol.for("react.fragment"), r = Symbol.for("react.strict_mode"), a = Symbol.for("react.profiler"), o = Symbol.for("react.provider"), i = Symbol.for("react.context"), s = Symbol.for("react.forward_ref"), l = Symbol.for("react.suspense"), c = Symbol.for("react.memo"), u = Symbol.for("react.lazy"), p = Symbol.iterator;
function m(d) {
return d === null || typeof d != "object" ? null : (d = p && d[p] || d["@@iterator"], typeof d == "function" ? d : null);
}
var b = { isMounted: function() {
return !1;
}, enqueueForceUpdate: function() {
}, enqueueReplaceState: function() {
}, enqueueSetState: function() {
} }, x = Object.assign, v = {};
function y(d, E, A) {
this.props = d, this.context = E, this.refs = v, this.updater = A || b;
}
y.prototype.isReactComponent = {}, y.prototype.setState = function(d, E) {
if (typeof d != "object" && typeof d != "function" && d != 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, d, E, "setState");
}, y.prototype.forceUpdate = function(d) {
this.updater.enqueueForceUpdate(this, d, "forceUpdate");
};
function w() {
}
w.prototype = y.prototype;
function P(d, E, A) {
this.props = d, this.context = E, this.refs = v, this.updater = A || b;
}
var S = P.prototype = new w();
S.constructor = P, x(S, y.prototype), S.isPureReactComponent = !0;
var _ = Array.isArray, h = Object.prototype.hasOwnProperty, G = { current: null }, U = { key: !0, ref: !0, __self: !0, __source: !0 };
function te(d, E, A) {
var C, T = {}, I = null, N = null;
if (E != null) for (C in E.ref !== void 0 && (N = E.ref), E.key !== void 0 && (I = "" + E.key), E) h.call(E, C) && !U.hasOwnProperty(C) && (T[C] = E[C]);
var F = arguments.length - 2;
if (F === 1) T.children = A;
else if (1 < F) {
for (var L = Array(F), D = 0; D < F; D++) L[D] = arguments[D + 2];
T.children = L;
}
if (d && d.defaultProps) for (C in F = d.defaultProps, F) T[C] === void 0 && (T[C] = F[C]);
return { $$typeof: e, type: d, key: I, ref: N, props: T, _owner: G.current };
}
function X(d, E) {
return { $$typeof: e, type: d.type, key: E, ref: d.ref, props: d.props, _owner: d._owner };
}
function Z(d) {
return typeof d == "object" && d !== null && d.$$typeof === e;
}
function Q(d) {
var E = { "=": "=0", ":": "=2" };
return "$" + d.replace(/[=:]/g, function(A) {
return E[A];
});
}
var B = /\/+/g;
function oe(d, E) {
return typeof d == "object" && d !== null && d.key != null ? Q("" + d.key) : E.toString(36);
}
function q(d, E, A, C, T) {
var I = typeof d;
(I === "undefined" || I === "boolean") && (d = null);
var N = !1;
if (d === null) N = !0;
else switch (I) {
case "string":
case "number":
N = !0;
break;
case "object":
switch (d.$$typeof) {
case e:
case t:
N = !0;
}
}
if (N) return N = d, T = T(N), d = C === "" ? "." + oe(N, 0) : C, _(T) ? (A = "", d != null && (A = d.replace(B, "$&/") + "/"), q(T, E, A, "", function(D) {
return D;
})) : T != null && (Z(T) && (T = X(T, A + (!T.key || N && N.key === T.key ? "" : ("" + T.key).replace(B, "$&/") + "/") + d)), E.push(T)), 1;
if (N = 0, C = C === "" ? "." : C + ":", _(d)) for (var F = 0; F < d.length; F++) {
I = d[F];
var L = C + oe(I, F);
N += q(I, E, A, L, T);
}
else if (L = m(d), typeof L == "function") for (d = L.call(d), F = 0; !(I = d.next()).done; ) I = I.value, L = C + oe(I, F++), N += q(I, E, A, L, T);
else if (I === "object") throw E = String(d), Error("Objects are not valid as a React child (found: " + (E === "[object Object]" ? "object with keys {" + Object.keys(d).join(", ") + "}" : E) + "). If you meant to render a collection of children, use an array instead.");
return N;
}
function J(d, E, A) {
if (d == null) return d;
var C = [], T = 0;
return q(d, C, "", "", function(I) {
return E.call(A, I, T++);
}), C;
}
function Y(d) {
if (d._status === -1) {
var E = d._result;
E = E(), E.then(function(A) {
(d._status === 0 || d._status === -1) && (d._status = 1, d._result = A);
}, function(A) {
(d._status === 0 || d._status === -1) && (d._status = 2, d._result = A);
}), d._status === -1 && (d._status = 0, d._result = E);
}
if (d._status === 1) return d._result.default;
throw d._result;
}
var M = { current: null }, K = { transition: null }, z = { ReactCurrentDispatcher: M, ReactCurrentBatchConfig: K, ReactCurrentOwner: G };
function g() {
throw Error("act(...) is not supported in production builds of React.");
}
return ge.Children = { map: J, forEach: function(d, E, A) {
J(d, function() {
E.apply(this, arguments);
}, A);
}, count: function(d) {
var E = 0;
return J(d, function() {
E++;
}), E;
}, toArray: function(d) {
return J(d, function(E) {
return E;
}) || [];
}, only: function(d) {
if (!Z(d)) throw Error("React.Children.only expected to receive a single React element child.");
return d;
} }, ge.Component = y, ge.Fragment = n, ge.Profiler = a, ge.PureComponent = P, ge.StrictMode = r, ge.Suspense = l, ge.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = z, ge.act = g, ge.cloneElement = function(d, E, A) {
if (d == null) throw Error("React.cloneElement(...): The argument must be a React element, but you passed " + d + ".");
var C = x({}, d.props), T = d.key, I = d.ref, N = d._owner;
if (E != null) {
if (E.ref !== void 0 && (I = E.ref, N = G.current), E.key !== void 0 && (T = "" + E.key), d.type && d.type.defaultProps) var F = d.type.defaultProps;
for (L in E) h.call(E, L) && !U.hasOwnProperty(L) && (C[L] = E[L] === void 0 && F !== void 0 ? F[L] : E[L]);
}
var L = arguments.length - 2;
if (L === 1) C.children = A;
else if (1 < L) {
F = Array(L);
for (var D = 0; D < L; D++) F[D] = arguments[D + 2];
C.children = F;
}
return { $$typeof: e, type: d.type, key: T, ref: I, props: C, _owner: N };
}, ge.createContext = function(d) {
return d = { $$typeof: i, _currentValue: d, _currentValue2: d, _threadCount: 0, Provider: null, Consumer: null, _defaultValue: null, _globalName: null }, d.Provider = { $$typeof: o, _context: d }, d.Consumer = d;
}, ge.createElement = te, ge.createFactory = function(d) {
var E = te.bind(null, d);
return E.type = d, E;
}, ge.createRef = function() {
return { current: null };
}, ge.forwardRef = function(d) {
return { $$typeof: s, render: d };
}, ge.isValidElement = Z, ge.lazy = function(d) {
return { $$typeof: u, _payload: { _status: -1, _result: d }, _init: Y };
}, ge.memo = function(d, E) {
return { $$typeof: c, type: d, compare: E === void 0 ? null : E };
}, ge.startTransition = function(d) {
var E = K.transition;
K.transition = {};
try {
d();
} finally {
K.transition = E;
}
}, ge.unstable_act = g, ge.useCallback = function(d, E) {
return M.current.useCallback(d, E);
}, ge.useContext = function(d) {
return M.current.useContext(d);
}, ge.useDebugValue = function() {
}, ge.useDeferredValue = function(d) {
return M.current.useDeferredValue(d);
}, ge.useEffect = function(d, E) {
return M.current.useEffect(d, E);
}, ge.useId = function() {
return M.current.useId();
}, ge.useImperativeHandle = function(d, E, A) {
return M.current.useImperativeHandle(d, E, A);
}, ge.useInsertionEffect = function(d, E) {
return M.current.useInsertionEffect(d, E);
}, ge.useLayoutEffect = function(d, E) {
return M.current.useLayoutEffect(d, E);
}, ge.useMemo = function(d, E) {
return M.current.useMemo(d, E);
}, ge.useReducer = function(d, E, A) {
return M.current.useReducer(d, E, A);
}, ge.useRef = function(d) {
return M.current.useRef(d);
}, ge.useState = function(d) {
return M.current.useState(d);
}, ge.useSyncExternalStore = function(d, E, A) {
return M.current.useSyncExternalStore(d, E, A);
}, ge.useTransition = function() {
return M.current.useTransition();
}, ge.version = "18.3.1", ge;
}
var Sa = { 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.
*/
Sa.exports;
var vu;
function Av() {
return vu || (vu = 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 n = "18.3.1", r = Symbol.for("react.element"), a = Symbol.for("react.portal"), o = Symbol.for("react.fragment"), i = Symbol.for("react.strict_mode"), s = Symbol.for("react.profiler"), l = Symbol.for("react.provider"), c = Symbol.for("react.context"), u = Symbol.for("react.forward_ref"), p = Symbol.for("react.suspense"), m = Symbol.for("react.suspense_list"), b = Symbol.for("react.memo"), x = Symbol.for("react.lazy"), v = Symbol.for("react.offscreen"), y = Symbol.iterator, w = "@@iterator";
function P(f) {
if (f === null || typeof f != "object")
return null;
var k = y && f[y] || f[w];
return typeof k == "function" ? k : null;
}
var S = {
/**
* @internal
* @type {ReactComponent}
*/
current: null
}, _ = {
transition: null
}, h = {
current: null,
// Used to reproduce behavior of `batchedUpdates` in legacy mode.
isBatchingLegacy: !1,
didScheduleLegacyUpdate: !1
}, G = {
/**
* @internal
* @type {ReactComponent}
*/
current: null
}, U = {}, te = null;
function X(f) {
te = f;
}
U.setExtraStackFrame = function(f) {
te = f;
}, U.getCurrentStack = null, U.getStackAddendum = function() {
var f = "";
te && (f += te);
var k = U.getCurrentStack;
return k && (f += k() || ""), f;
};
var Z = !1, Q = !1, B = !1, oe = !1, q = !1, J = {
ReactCurrentDispatcher: S,
ReactCurrentBatchConfig: _,
ReactCurrentOwner: G
};
J.ReactDebugCurrentFrame = U, J.ReactCurrentActQueue = h;
function Y(f) {
{
for (var k = arguments.length, j = new Array(k > 1 ? k - 1 : 0), R = 1; R < k; R++)
j[R - 1] = arguments[R];
K("warn", f, j);
}
}
function M(f) {
{
for (var k = arguments.length, j = new Array(k > 1 ? k - 1 : 0), R = 1; R < k; R++)
j[R - 1] = arguments[R];
K("error", f, j);
}
}
function K(f, k, j) {
{
var R = J.ReactDebugCurrentFrame, V = R.getStackAddendum();
V !== "" && (k += "%s", j = j.concat([V]));
var fe = j.map(function(ee) {
return String(ee);
});
fe.unshift("Warning: " + k), Function.prototype.apply.call(console[f], console, fe);
}
}
var z = {};
function g(f, k) {
{
var j = f.constructor, R = j && (j.displayName || j.name) || "ReactClass", V = R + "." + k;
if (z[V])
return;
M("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.", k, R), z[V] = !0;
}
}
var d = {
/**
* 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(f) {
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(f, k, j) {
g(f, "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(f, k, j, R) {
g(f, "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(f, k, j, R) {
g(f, "setState");
}
}, E = Object.assign, A = {};
Object.freeze(A);
function C(f, k, j) {
this.props = f, this.context = k, this.refs = A, this.updater = j || d;
}
C.prototype.isReactComponent = {}, C.prototype.setState = function(f, k) {
if (typeof f != "object" && typeof f != "function" && f != 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, f, k, "setState");
}, C.prototype.forceUpdate = function(f) {
this.updater.enqueueForceUpdate(this, f, "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)."]
}, I = function(f, k) {
Object.defineProperty(C.prototype, f, {
get: function() {
Y("%s(...) is deprecated in plain JavaScript React classes. %s", k[0], k[1]);
}
});
};
for (var N in T)
T.hasOwnProperty(N) && I(N, T[N]);
}
function F() {
}
F.prototype = C.prototype;
function L(f, k, j) {
this.props = f, this.context = k, this.refs = A, this.updater = j || d;
}
var D = L.prototype = new F();
D.constructor = L, E(D, C.prototype), D.isPureReactComponent = !0;
function ce() {
var f = {
current: null
};
return Object.seal(f), f;
}
var O = Array.isArray;
function Ee(f) {
return O(f);
}
function qe(f) {
{
var k = typeof Symbol == "function" && Symbol.toStringTag, j = k && f[Symbol.toStringTag] || f.constructor.name || "Object";
return j;
}
}
function ht(f) {
try {
return Kl(f), !1;
} catch {
return !0;
}
}
function Kl(f) {
return "" + f;
}
function na(f) {
if (ht(f))
return M("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.", qe(f)), Kl(f);
}
function Gg(f, k, j) {
var R = f.displayName;
if (R)
return R;
var V = k.displayName || k.name || "";
return V !== "" ? j + "(" + V + ")" : j;
}
function Xl(f) {
return f.displayName || "Context";
}
function Ut(f) {
if (f == null)
return null;
if (typeof f.tag == "number" && M("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."), typeof f == "function")
return f.displayName || f.name || null;
if (typeof f == "string")
return f;
switch (f) {
case o:
return "Fragment";
case a:
return "Portal";
case s:
return "Profiler";
case i:
return "StrictMode";
case p:
return "Suspense";
case m:
return "SuspenseList";
}
if (typeof f == "object")
switch (f.$$typeof) {
case c:
var k = f;
return Xl(k) + ".Consumer";
case l:
var j = f;
return Xl(j._context) + ".Provider";
case u:
return Gg(f, f.render, "ForwardRef");
case b:
var R = f.displayName || null;
return R !== null ? R : Ut(f.type) || "Memo";
case x: {
var V = f, fe = V._payload, ee = V._init;
try {
return Ut(ee(fe));
} catch {
return null;
}
}
}
return null;
}
var pr = Object.prototype.hasOwnProperty, Jl = {
key: !0,
ref: !0,
__self: !0,
__source: !0
}, Zl, Ql, Co;
Co = {};
function ec(f) {
if (pr.call(f, "ref")) {
var k = Object.getOwnPropertyDescriptor(f, "ref").get;
if (k && k.isReactWarning)
return !1;
}
return f.ref !== void 0;
}
function tc(f) {
if (pr.call(f, "key")) {
var k = Object.getOwnPropertyDescriptor(f, "key").get;
if (k && k.isReactWarning)
return !1;
}
return f.key !== void 0;
}
function Yg(f, k) {
var j = function() {
Zl || (Zl = !0, M("%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)", k));
};
j.isReactWarning = !0, Object.defineProperty(f, "key", {
get: j,
configurable: !0
});
}
function Vg(f, k) {
var j = function() {
Ql || (Ql = !0, M("%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)", k));
};
j.isReactWarning = !0, Object.defineProperty(f, "ref", {
get: j,
configurable: !0
});
}
function Ug(f) {
if (typeof f.ref == "string" && G.current && f.__self && G.current.stateNode !== f.__self) {
var k = Ut(G.current.type);
Co[k] || (M('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', k, f.ref), Co[k] = !0);
}
}
var _o = function(f, k, j, R, V, fe, ee) {
var de = {
// This tag allows us to uniquely identify this as a React Element
$$typeof: r,
// Built-in properties that belong on the element
type: f,
key: k,
ref: j,
props: ee,
// Record the component responsible for creating this element.
_owner: fe
};
return de._store = {}, Object.defineProperty(de._store, "validated", {
configurable: !1,
enumerable: !1,
writable: !0,
value: !1
}), Object.defineProperty(de, "_self", {
configurable: !1,
enumerable: !1,
writable: !1,
value: R
}), Object.defineProperty(de, "_source", {
configurable: !1,
enumerable: !1,
writable: !1,
value: V
}), Object.freeze && (Object.freeze(de.props), Object.freeze(de)), de;
};
function qg(f, k, j) {
var R, V = {}, fe = null, ee = null, de = null, we = null;
if (k != null) {
ec(k) && (ee = k.ref, Ug(k)), tc(k) && (na(k.key), fe = "" + k.key), de = k.__self === void 0 ? null : k.__self, we = k.__source === void 0 ? null : k.__source;
for (R in k)
pr.call(k, R) && !Jl.hasOwnProperty(R) && (V[R] = k[R]);
}
var _e = arguments.length - 2;
if (_e === 1)
V.children = j;
else if (_e > 1) {
for (var Fe = Array(_e), Re = 0; Re < _e; Re++)
Fe[Re] = arguments[Re + 2];
Object.freeze && Object.freeze(Fe), V.children = Fe;
}
if (f && f.defaultProps) {
var De = f.defaultProps;
for (R in De)
V[R] === void 0 && (V[R] = De[R]);
}
if (fe || ee) {
var He = typeof f == "function" ? f.displayName || f.name || "Unknown" : f;
fe && Yg(V, He), ee && Vg(V, He);
}
return _o(f, fe, ee, de, we, G.current, V);
}
function Kg(f, k) {
var j = _o(f.type, k, f.ref, f._self, f._source, f._owner, f.props);
return j;
}
function Xg(f, k, j) {
if (f == null)
throw new Error("React.cloneElement(...): The argument must be a React element, but you passed " + f + ".");
var R, V = E({}, f.props), fe = f.key, ee = f.ref, de = f._self, we = f._source, _e = f._owner;
if (k != null) {
ec(k) && (ee = k.ref, _e = G.current), tc(k) && (na(k.key), fe = "" + k.key);
var Fe;
f.type && f.type.defaultProps && (Fe = f.type.defaultProps);
for (R in k)
pr.call(k, R) && !Jl.hasOwnProperty(R) && (k[R] === void 0 && Fe !== void 0 ? V[R] = Fe[R] : V[R] = k[R]);
}
var Re = arguments.length - 2;
if (Re === 1)
V.children = j;
else if (Re > 1) {
for (var De = Array(Re), He = 0; He < Re; He++)
De[He] = arguments[He + 2];
V.children = De;
}
return _o(f.type, fe, ee, de, we, _e, V);
}
function Dn(f) {
return typeof f == "object" && f !== null && f.$$typeof === r;
}
var nc = ".", Jg = ":";
function Zg(f) {
var k = /[=:]/g, j = {
"=": "=0",
":": "=2"
}, R = f.replace(k, function(V) {
return j[V];
});
return "$" + R;
}
var rc = !1, Qg = /\/+/g;
function ac(f) {
return f.replace(Qg, "$&/");
}
function To(f, k) {
return typeof f == "object" && f !== null && f.key != null ? (na(f.key), Zg("" + f.key)) : k.toString(36);
}
function ra(f, k, j, R, V) {
var fe = typeof f;
(fe === "undefined" || fe === "boolean") && (f = null);
var ee = !1;
if (f === null)
ee = !0;
else
switch (fe) {
case "string":
case "number":
ee = !0;
break;
case "object":
switch (f.$$typeof) {
case r:
case a:
ee = !0;
}
}
if (ee) {
var de = f, we = V(de), _e = R === "" ? nc + To(de, 0) : R;
if (Ee(we)) {
var Fe = "";
_e != null && (Fe = ac(_e) + "/"), ra(we, k, Fe, "", function(Yh) {
return Yh;
});
} else we != null && (Dn(we) && (we.key && (!de || de.key !== we.key) && na(we.key), we = Kg(
we,
// Keep both the (mapped) and old keys if they differ, just as
// traverseAllChildren used to do for objects as children
j + // $FlowFixMe Flow incorrectly thinks React.Portal doesn't have a key
(we.key && (!de || de.key !== we.key) ? (
// $FlowFixMe Flow incorrectly thinks existing element's key can be a number
// eslint-disable-next-line react-internal/safe-string-coercion
ac("" + we.key) + "/"
) : "") + _e
)), k.push(we));
return 1;
}
var Re, De, He = 0, Ve = R === "" ? nc : R + Jg;
if (Ee(f))
for (var fa = 0; fa < f.length; fa++)
Re = f[fa], De = Ve + To(Re, fa), He += ra(Re, k, j, De, V);
else {
var zo = P(f);
if (typeof zo == "function") {
var _c = f;
zo === _c.entries && (rc || Y("Using Maps as children is not supported. Use an array of keyed ReactElements instead."), rc = !0);
for (var Bh = zo.call(_c), Tc, Gh = 0; !(Tc = Bh.next()).done; )
Re = Tc.value, De = Ve + To(Re, Gh++), He += ra(Re, k, j, De, V);
} else if (fe === "object") {
var Nc = String(f);
throw new Error("Objects are not valid as a React child (found: " + (Nc === "[object Object]" ? "object with keys {" + Object.keys(f).join(", ") + "}" : Nc) + "). If you meant to render a collection of children, use an array instead.");
}
}
return He;
}
function aa(f, k, j) {
if (f == null)
return f;
var R = [], V = 0;
return ra(f, R, "", "", function(fe) {
return k.call(j, fe, V++);
}), R;
}
function eh(f) {
var k = 0;
return aa(f, function() {
k++;
}), k;
}
function th(f, k, j) {
aa(f, function() {
k.apply(this, arguments);
}, j);
}
function nh(f) {
return aa(f, function(k) {
return k;
}) || [];
}
function rh(f) {
if (!Dn(f))
throw new Error("React.Children.only expected to receive a single React element child.");
return f;
}
function ah(f) {
var k = {
$$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: f,
_currentValue2: f,
// 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
};
k.Provider = {
$$typeof: l,
_context: k
};
var j = !1, R = !1, V = !1;
{
var fe = {
$$typeof: c,
_context: k
};
Object.defineProperties(fe, {
Provider: {
get: function() {
return R || (R = !0, M("Rendering <Context.Consumer.Provider> is not supported and will be removed in a future major release. Did you mean to render <Context.Provider> instead?")), k.Provider;
},
set: function(ee) {
k.Provider = ee;
}
},
_currentValue: {
get: function() {
return k._currentValue;
},
set: function(ee) {
k._currentValue = ee;
}
},
_currentValue2: {
get: function() {
return k._currentValue2;
},
set: function(ee) {
k._currentValue2 = ee;
}
},
_threadCount: {
get: function() {
return k._threadCount;
},
set: function(ee) {
k._threadCount = ee;
}
},
Consumer: {
get: function() {
return j || (j = !0, M("Rendering <Context.Consumer.Consumer> is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?")), k.Consumer;
}
},
displayName: {
get: function() {
return k.displayName;
},
set: function(ee) {
V || (Y("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.", ee), V = !0);
}
}
}), k.Consumer = fe;
}
return k._currentRenderer = null, k._currentRenderer2 = null, k;
}
var mr = -1, No = 0, oc = 1, oh = 2;
function ih(f) {
if (f._status === mr) {
var k = f._result, j = k();
if (j.then(function(fe) {
if (f._status === No || f._status === mr) {
var ee = f;
ee._status = oc, ee._result = fe;
}
}, function(fe) {
if (f._status === No || f._status === mr) {
var ee = f;
ee._status = oh, ee._result = fe;
}
}), f._status === mr) {
var R = f;
R._status = No, R._result = j;
}
}
if (f._status === oc) {
var V = f._result;
return V === void 0 && M(`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?`, V), "default" in V || M(`lazy: Expected the result of a dynamic import() call. Instead received: %s
Your code should look like:
const MyComponent = lazy(() => import('./MyComponent'))`, V), V.default;
} else
throw f._result;
}
function sh(f) {
var k = {
// We use these fields to store the result.
_status: mr,
_result: f
}, j = {
$$typeof: x,
_payload: k,
_init: ih
};
{
var R, V;
Object.defineProperties(j, {
defaultProps: {
configurable: !0,
get: function() {
return R;
},
set: function(fe) {
M("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."), R = fe, Object.defineProperty(j, "defaultProps", {
enumerable: !0
});
}
},
propTypes: {
configurable: !0,
get: function() {
return V;
},
set: function(fe) {
M("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."), V = fe, Object.defineProperty(j, "propTypes", {
enumerable: !0
});
}
}
});
}
return j;
}
function lh(f) {
f != null && f.$$typeof === b ? M("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...)).") : typeof f != "function" ? M("forwardRef requires a render function but was given %s.", f === null ? "null" : typeof f) : f.length !== 0 && f.length !== 2 && M("forwardRef render functions accept exactly two parameters: props and ref. %s", f.length === 1 ? "Did you forget to use the ref parameter?" : "Any additional parameter will be undefined."), f != null && (f.defaultProps != null || f.propTypes != null) && M("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?");
var k = {
$$typeof: u,
render: f
};
{
var j;
Object.defineProperty(k, "displayName", {
enumerable: !1,
configurable: !0,
get: function() {
return j;
},
set: function(R) {
j = R, !f.name && !f.displayName && (f.displayName = R);
}
});
}
return k;
}
var ic;
ic = Symbol.for("react.module.reference");
function sc(f) {
return !!(typeof f == "string" || typeof f == "function" || f === o || f === s || q || f === i || f === p || f === m || oe || f === v || Z || Q || B || typeof f == "object" && f !== null && (f.$$typeof === x || f.$$typeof === b || f.$$typeof === l || f.$$typeof === c || f.$$typeof === u || // 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.
f.$$typeof === ic || f.getModuleId !== void 0));
}
function ch(f, k) {
sc(f) || M("memo: The first argument must be a component. Instead received: %s", f === null ? "null" : typeof f);
var j = {
$$typeof: b,
type: f,
compare: k === void 0 ? null : k
};
{
var R;
Object.defineProperty(j, "displayName", {
enumerable: !1,
configurable: !0,
get: function() {
return R;
},
set: function(V) {
R = V, !f.name && !f.displayName && (f.displayName = V);
}
});
}
return j;
}
function et() {
var f = S.current;
return f === null && M(`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.`), f;
}
function uh(f) {
var k = et();
if (f._context !== void 0) {
var j = f._context;
j.Consumer === f ? M("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?") : j.Provider === f && M("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?");
}
return k.useContext(f);
}
function fh(f) {
var k = et();
return k.useState(f);
}
function dh(f, k, j) {
var R = et();
return R.useReducer(f, k, j);
}
function ph(f) {
var k = et();
return k.useRef(f);
}
function mh(f, k) {
var j = et();
return j.useEffect(f, k);
}
function gh(f, k) {
var j = et();
return j.useInsertionEffect(f, k);
}
function hh(f, k) {
var j = et();
return j.useLayoutEffect(f, k);
}
function yh(f, k) {
var j = et();
return j.useCallback(f, k);
}
function bh(f, k) {
var j = et();
return j.useMemo(f, k);
}
function vh(f, k, j) {
var R = et();
return R.useImperativeHandle(f, k, j);
}
function xh(f, k) {
{
var j = et();
return j.useDebugValue(f, k);
}
}
function wh() {
var f = et();
return f.useTransition();
}
function Eh(f) {
var k = et();
return k.useDeferredValue(f);
}
function kh() {
var f = et();
return f.useId();
}
function Ph(f, k, j) {
var R = et();
return R.useSyncExternalStore(f, k, j);
}
var gr = 0, lc, cc, uc, fc, dc, pc, mc;
function gc() {
}
gc.__reactDisabledLog = !0;
function Oh() {
{
if (gr === 0) {
lc = console.log, cc = console.info, uc = console.warn, fc = console.error, dc = console.group, pc = console.groupCollapsed, mc = console.groupEnd;
var f = {
configurable: !0,
enumerable: !0,
value: gc,
writable: !0
};
Object.defineProperties(console, {
info: f,
log: f,
warn: f,
error: f,
group: f,
groupCollapsed: f,
groupEnd: f
});
}
gr++;
}
}
function Sh() {
{
if (gr--, gr === 0) {
var f = {
configurable: !0,
enumerable: !0,
writable: !0
};
Object.defineProperties(console, {
log: E({}, f, {
value: lc
}),
info: E({}, f, {
value: cc
}),
warn: E({}, f, {
value: uc
}),
error: E({}, f, {
value: fc
}),
group: E({}, f, {
value: dc
}),
groupCollapsed: E({}, f, {
value: pc
}),
groupEnd: E({}, f, {
value: mc
})
});
}
gr < 0 && M("disabledDepth fell below zero. This is a bug in React. Please file an issue.");
}
}
var Io = J.ReactCurrentDispatcher, jo;
function oa(f, k, j) {
{
if (jo === void 0)
try {
throw Error();
} catch (V) {
var R = V.stack.trim().match(/\n( *(at )?)/);
jo = R && R[1] || "";
}
return `
` + jo + f;
}
}
var Mo = !1, ia;
{
var Ah = typeof WeakMap == "function" ? WeakMap : Map;
ia = new Ah();
}
function hc(f, k) {
if (!f || Mo)
return "";
{
var j = ia.get(f);
if (j !== void 0)
return j;
}
var R;
Mo = !0;
var V = Error.prepareStackTrace;
Error.prepareStackTrace = void 0;
var fe;
fe = Io.current, Io.current = null, Oh();
try {
if (k) {
var ee = function() {
throw Error();
};
if (Object.defineProperty(ee.prototype, "props", {
set: function() {
throw Error();
}
}), typeof Reflect == "object" && Reflect.construct) {
try {
Reflect.construct(ee, []);
} catch (Ve) {
R = Ve;
}
Reflect.construct(f, [], ee);
} else {
try {
ee.call();
} catch (Ve) {
R = Ve;
}
f.call(ee.prototype);
}
} else {
try {
throw Error();
} catch (Ve) {
R = Ve;
}
f();
}
} catch (Ve) {
if (Ve && R && typeof Ve.stack == "string") {
for (var de = Ve.stack.split(`
`), we = R.stack.split(`
`), _e = de.length - 1, Fe = we.length - 1; _e >= 1 && Fe >= 0 && de[_e] !== we[Fe]; )
Fe--;
for (; _e >= 1 && Fe >= 0; _e--, Fe--)
if (de[_e] !== we[Fe]) {
if (_e !== 1 || Fe !== 1)
do
if (_e--, Fe--, Fe < 0 || de[_e] !== we[Fe]) {
var Re = `
` + de[_e].replace(" at new ", " at ");
return f.displayName && Re.includes("<anonymous>") && (Re = Re.replace("<anonymous>", f.displayName)), typeof f == "function" && ia.set(f, Re), Re;
}
while (_e >= 1 && Fe >= 0);
break;
}
}
} finally {
Mo = !1, Io.current = fe, Sh(), Error.prepareStackTrace = V;
}
var De = f ? f.displayName || f.name : "", He = De ? oa(De) : "";
return typeof f == "function" && ia.set(f, He), He;
}
function Ch(f, k, j) {
return hc(f, !1);
}
function _h(f) {
var k = f.prototype;
return !!(k && k.isReactComponent);
}
function sa(f, k, j) {
if (f == null)
return "";
if (typeof f == "function")
return hc(f, _h(f));
if (typeof f == "string")
return oa(f);
switch (f) {
case p:
return oa("Suspense");
case m:
return oa("SuspenseList");
}
if (typeof f == "object")
switch (f.$$typeof) {
case u:
return Ch(f.render);
case b:
return sa(f.type, k, j);
case x: {
var R = f, V = R._payload, fe = R._init;
try {
return sa(fe(V), k, j);
} catch {
}
}
}
return "";
}
var yc = {}, bc = J.ReactDebugCurrentFrame;
function la(f) {
if (f) {
var k = f._owner, j = sa(f.type, f._source, k ? k.type : null);
bc.setExtraStackFrame(j);
} else
bc.setExtraStackFrame(null);
}
function Th(f, k, j, R, V) {
{
var fe = Function.call.bind(pr);
for (var ee in f)
if (fe(f, ee)) {
var de = void 0;
try {
if (typeof f[ee] != "function") {
var we = Error((R || "React class") + ": " + j + " type `" + ee + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof f[ee] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");
throw we.name = "Invariant Violation", we;
}
de = f[ee](k, ee, R, j, null, "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");
} catch (_e) {
de = _e;
}
de && !(de instanceof Error) && (la(V), M("%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).", R || "React class", j, ee, typeof de), la(null)), de instanceof Error && !(de.message in yc) && (yc[de.message] = !0, la(V), M("Failed %s type: %s", j, de.message), la(null));
}
}
}
function zn(f) {
if (f) {
var k = f._owner, j = sa(f.type, f._source, k ? k.type : null);
X(j);
} else
X(null);
}
var Fo;
Fo = !1;
function vc() {
if (G.current) {
var f = Ut(G.current.type);
if (f)
return `
Check the render method of \`` + f + "`.";
}
return "";
}
function Nh(f) {
if (f !== void 0) {
var k = f.fileName.replace(/^.*[\\\/]/, ""), j = f.lineNumber;
return `
Check your code at ` + k + ":" + j + ".";
}
return "";
}
function Ih(f) {
return f != null ? Nh(f.__source) : "";
}
var xc = {};
function jh(f) {
var k = vc();
if (!k) {
var j = typeof f == "string" ? f : f.displayName || f.name;
j && (k = `
Check the top-level render call using <` + j + ">.");
}
return k;
}
function wc(f, k) {
if (!(!f._store || f._store.validated || f.key != null)) {
f._store.validated = !0;
var j = jh(k);
if (!xc[j]) {
xc[j] = !0;
var R = "";
f && f._owner && f._owner !== G.current && (R = " It was passed a child from " + Ut(f._owner.type) + "."), zn(f), M('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.', j, R), zn(null);
}
}
}
function Ec(f, k) {
if (typeof f == "object") {
if (Ee(f))
for (var j = 0; j < f.length; j++) {
var R = f[j];
Dn(R) && wc(R, k);
}
else if (Dn(f))
f._store && (f._store.validated = !0);
else if (f) {
var V = P(f);
if (typeof V == "function" && V !== f.entries)
for (var fe = V.call(f), ee; !(ee = fe.next()).done; )
Dn(ee.value) && wc(ee.value, k);
}
}
}
function kc(f) {
{
var k = f.type;
if (k == null || typeof k == "string")
return;
var j;
if (typeof k == "function")
j = k.propTypes;
else if (typeof k == "object" && (k.$$typeof === u || // Note: Memo only checks outer props here.
// Inner props are checked in the reconciler.
k.$$typeof === b))
j = k.propTypes;
else
return;
if (j) {
var R = Ut(k);
Th(j, f.props, "prop", R, f);
} else if (k.PropTypes !== void 0 && !Fo) {
Fo = !0;
var V = Ut(k);
M("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?", V || "Unknown");
}
typeof k.getDefaultProps == "function" && !k.getDefaultProps.isReactClassApproved && M("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.");
}
}
function Mh(f) {
{
for (var k = Object.keys(f.props), j = 0; j < k.length; j++) {
var R = k[j];
if (R !== "children" && R !== "key") {
zn(f), M("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.", R), zn(null);
break;
}
}
f.ref !== null && (zn(f), M("Invalid attribute `ref` supplied to `React.Fragment`."), zn(null));
}
}
function Pc(f, k, j) {
var R = sc(f);
if (!R) {
var V = "";
(f === void 0 || typeof f == "object" && f !== null && Object.keys(f).length === 0) && (V += " 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 fe = Ih(k);
fe ? V += fe : V += vc();
var ee;
f === null ? ee = "null" : Ee(f) ? ee = "array" : f !== void 0 && f.$$typeof === r ? (ee = "<" + (Ut(f.type) || "Unknown") + " />", V = " Did you accidentally export a JSX literal instead of a component?") : ee = typeof f, M("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s", ee, V);
}
var de = qg.apply(this, arguments);
if (de == null)
return de;
if (R)
for (var we = 2; we < arguments.length; we++)
Ec(arguments[we], f);
return f === o ? Mh(de) : kc(de), de;
}
var Oc = !1;
function Fh(f) {
var k = Pc.bind(null, f);
return k.type = f, Oc || (Oc = !0, Y("React.createFactory() is deprecated and will be removed in a future major release. Consider using JSX or use React.createElement() directly instead.")), Object.defineProperty(k, "type", {
enumerable: !1,
get: function() {
return Y("Factory.type is deprecated. Access the class directly before passing it to createFactory."), Object.defineProperty(this, "type", {
value: f
}), f;
}
}), k;
}
function Rh(f, k, j) {
for (var R = Xg.apply(this, arguments), V = 2; V < arguments.length; V++)
Ec(arguments[V], R.type);
return kc(R), R;
}
function Lh(f, k) {
var j = _.transition;
_.transition = {};
var R = _.transition;
_.transition._updatedFibers = /* @__PURE__ */ new Set();
try {
f();
} finally {
if (_.transition = j, j === null && R._updatedFibers) {
var V = R._updatedFibers.size;
V > 10 && Y("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."), R._updatedFibers.clear();
}
}
}
var Sc = !1, ca = null;
function Dh(f) {
if (ca === null)
try {
var k = ("require" + Math.random()).slice(0, 7), j = e && e[k];
ca = j.call(e, "timers").setImmediate;
} catch {
ca = function(R) {
Sc === !1 && (Sc = !0, typeof MessageChannel > "u" && M("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 V = new MessageChannel();
V.port1.onmessage = R, V.port2.postMessage(void 0);
};
}
return ca(f);
}
var $n = 0, Ac = !1;
function Cc(f) {
{
var k = $n;
$n++, h.current === null && (h.current = []);
var j = h.isBatchingLegacy, R;
try {
if (h.isBatchingLegacy = !0, R = f(), !j && h.didScheduleLegacyUpdate) {
var V = h.current;
V !== null && (h.didScheduleLegacyUpdate = !1, Do(V));
}
} catch (De) {
throw ua(k), De;
} finally {
h.isBatchingLegacy = j;
}
if (R !== null && typeof R == "object" && typeof R.then == "function") {
var fe = R, ee = !1, de = {
then: function(De, He) {
ee = !0, fe.then(function(Ve) {
ua(k), $n === 0 ? Ro(Ve, De, He) : De(Ve);
}, function(Ve) {
ua(k), He(Ve);
});
}
};
return !Ac && typeof Promise < "u" && Promise.resolve().then(function() {
}).then(function() {
ee || (Ac = !0, M("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 () => ...);"));
}), de;
} else {
var we = R;
if (ua(k), $n === 0) {
var _e = h.current;
_e !== null && (Do(_e), h.current = null);
var Fe = {
then: function(De, He) {
h.current === null ? (h.current = [], Ro(we, De, He)) : De(we);
}
};
return Fe;
} else {
var Re = {
then: function(De, He) {
De(we);
}
};
return Re;
}
}
}
}
function ua(f) {
f !== $n - 1 && M("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "), $n = f;
}
function Ro(f, k, j) {
{
var R = h.current;
if (R !== null)
try {
Do(R), Dh(function() {
R.length === 0 ? (h.current = null, k(f)) : Ro(f, k, j);
});
} catch (V) {
j(V);
}
else
k(f);
}
}
var Lo = !1;
function Do(f) {
if (!Lo) {
Lo = !0;
var k = 0;
try {
for (; k < f.length; k++) {
var j = f[k];
do
j = j(!0);
while (j !== null);
}
f.length = 0;
} catch (R) {
throw f = f.slice(k + 1), R;
} finally {
Lo = !1;
}
}
}
var zh = Pc, $h = Rh, Hh = Fh, Wh = {
map: aa,
forEach: th,
count: eh,
toArray: nh,
only: rh
};
t.Children = Wh, t.Component = C, t.Fragment = o, t.Profiler = s, t.PureComponent = L, t.StrictMode = i, t.Suspense = p, t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = J, t.act = Cc, t.cloneElement = $h, t.createContext = ah, t.createElement = zh, t.createFactory = Hh, t.createRef = ce, t.forwardRef = lh, t.isValidElement = Dn, t.lazy = sh, t.memo = ch, t.startTransition = Lh, t.unstable_act = Cc, t.useCallback = yh, t.useContext = uh, t.useDebugValue = xh, t.useDeferredValue = Eh, t.useEffect = mh, t.useId = kh, t.useImperativeHandle = vh, t.useInsertionEffect = gh, t.useLayoutEffect = hh, t.useMemo = bh, t.useReducer = dh, t.useRef = ph, t.useState = fh, t.useSyncExternalStore = Ph, t.useTransition = wh, t.version = n, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());
}();
}(Sa, Sa.exports)), Sa.exports;
}
var xu;
function Cv() {
return xu || (xu = 1, process.env.NODE_ENV === "production" ? Qo.exports = Sv() : Qo.exports = Av()), Qo.exports;
}
var _v = Cv();
const Tv = /* @__PURE__ */ Ov(_v), Nv = {
[le.BlackForestLabs]: "/resources/images/services/blackforestlabs.svg",
[le.Kling]: "/resources/images/services/kling.svg",
[le.Midjourney]: "/resources/images/services/midjourney.svg",
[le.OpenAi]: "/resources/images/services/openai.svg",
[le.Bytedance]: "/resources/images/services/bytedance.svg",
[le.Google]: "/resources/images/services/google.svg",
[le.Recraft]: "/resources/images/services/recraft.svg",
[le.Tencent]: "/resources/images/services/tencent.svg",
[le.Krea]: "/resources/images/services/krea.svg",
[le.Fal]: "/resources/images/services/fal.svg",
[le.Replicate]: "/resources/images/services/replicate.svg",
[le.TensorArt]: "/resources/images/services/tensorart.svg",
[le.OpenArt]: "/resources/images/services/openart.svg",
[le.Higgsfield]: "/resources/images/services/higgsfield.svg",
[le.Alibaba]: "/resources/images/services/alibaba.svg",
[le.Vidu]: "/resources/images/services/vidu.svg",
[le.ArtCraft]: "/resources/images/services/artcraft.svg"
}, Iv = "/resources/images/services/generic.svg", jv = (e) => Nv[e], Mv = (e, t = "h-4 w-4 invert") => {
const n = jv(e) ?? Iv;
return Tv.createElement("img", {
src: n,
alt: `${e} logo`,
className: t
});
};
le.BlackForestLabs, le.BlackForestLabs, le.BlackForestLabs, le.BlackForestLabs, le.OpenAi, le.Kling, le.Kling, le.Kling, le.Bytedance, le.Google, le.Recraft, le.Tencent, le.Midjourney, le.Midjourney, le.Midjourney, le.Midjourney, le.Midjourney, le.Midjourney, le.Midjourney;
var kt = /* @__PURE__ */ ((e) => (e.InstructiveEdit = "instructiveEdit", e.MaskedInpainting = "maskedInpainting", e.NonMaskedInpainting = "nonMaskedInpainting", e))(kt || {});
const tt = le, Fv = {
maxGenerationCount: 1,
defaultGenerationCount: 1
}, nt = (e) => ({
label: e.label ?? e.info.name,
description: e.description,
badges: e.badges,
capabilities: e.capabilities ?? Fv,
tags: e.tags ?? [],
...e
});
//////////////////////////////
// Image models
//////////////////////////////
nt({
id: "midjourney",
category: "image",
info: {
name: "Midjourney",
tauri_id: "midjourney",
creator: tt.Midjourney
},
description: "Incredible style and quality",
badges: [{ label: "15 sec." }],
capabilities: { maxGenerationCount: 4, defaultGenerationCount: 4 }
}), nt({
id: "flux_pro_1_1_ultra",
category: "image",
info: {
name: "Flux Pro 1.1 Ultra",
tauri_id: "flux_pro_11_ultra",
creator: tt.BlackForestLabs
},
description: "High quality model",
badges: [{ label: "15 sec." }],
capabilities: { maxGenerationCount: 4, defaultGenerationCount: 4 }
}), nt({
id: "flux_pro_1_1",
category: "image",
info: {
name: "Flux Pro 1.1",
tauri_id: "flux_pro_11",
creator: tt.BlackForestLabs
},
description: "High quality model",
badges: [{ label: "15 sec." }],
capabilities: { maxGenerationCount: 4, defaultGenerationCount: 4 }
}), nt({
id: "flux_1_dev",
category: "image",
info: {
name: "Flux 1 Dev",
tauri_id: "flux_1_dev",
creator: tt.BlackForestLabs
},
description: "High quality model",
badges: [{ label: "15 sec." }],
capabilities: { maxGenerationCount: 4, defaultGenerationCount: 4 }
}), nt({
id: "flux_1_schnell",
category: "image",
info: {
name: "Flux 1 Schnell",
tauri_id: "flux_1_schnell",
creator: tt.BlackForestLabs
},
description: "High quality model",
badges: [{ label: "15 sec." }],
capabilities: { maxGenerationCount: 4, defaultGenerationCount: 4 }
}), nt({
id: "gpt_image_1",
category: "image",
info: {
name: "GPT Image 1 (GPT-4o)",
tauri_id: "gpt_image_1",
creator: tt.OpenAi
},
description: "Slow, ultra instructive model",
badges: [{ label: "45 sec." }],
capabilities: { maxGenerationCount: 1 },
tags: ["instructiveEdit"]
}), nt({
id: "flux_pro_kontext_max",
category: "image",
info: {
name: "Flux Pro Kontext Max",
tauri_id: "flux_pro_kontext_max",
creator: tt.BlackForestLabs
},
description: "Fast and high-quality model",
badges: [{ label: "20 sec." }],
capabilities: {
maxGenerationCount: 4
},
tags: [kt.InstructiveEdit, kt.NonMaskedInpainting]
}), nt({
id: "flux_pro_inpaint",
category: "image",
info: {
name: "Flux Pro 1 (Inpainting)",
tauri_id: "flux_pro_1",
creator: tt.BlackForestLabs
},
description: "Fast and high-quality model",
badges: [{ label: "20 sec." }],
capabilities: {
maxGenerationCount: 1
// NB: For some reason Fal only supports ONE image!
},
tags: [kt.MaskedInpainting]
}), nt({
id: "flux_dev_juggernaut_inpaint",
category: "image",
info: {
name: "Flux Dev Juggernaut (Inpainting)",
tauri_id: "flux_dev_juggernaut",
creator: tt.BlackForestLabs
},
description: "Fast and high-quality model",
badges: [{ label: "20 sec." }],
capabilities: {
maxGenerationCount: 4
},
tags: [kt.MaskedInpainting]
}), //////////////////////////////
// Video models
//////////////////////////////
nt({
id: "kling_1_6_pro",
category: "video",
info: {
name: "Kling 1.6 Pro",
tauri_id: "kling_1.6_pro",
creator: tt.Kling
},
description: "Good quality model",
badges: [{ label: "2 min." }],
capabilities: { maxGenerationCount: 1 }
}), nt({
id: "kling_2_1_pro",
category: "video",
info: {
name: "Kling 2.1 Pro",
tauri_id: "kling_2.1_pro",
creator: tt.Kling
},
description: "High quality model",
badges: [{ label: "2 min." }],
capabilities: { maxGenerationCount: 1 }
}), nt({
id: "kling_2_1_master",
category: "video",
info: {
name: "Kling 2.1 Master",
tauri_id: "kling_2.1_master",
creator: tt.Kling
},
description: "Master quality model ($$)",
badges: [{ label: "2 min." }],
capabilities: { maxGenerationCount: 1 }
}), nt({
id: "seedance_1_0_lite",
category: "video",
info: {
name: "Seedance 1.0 Lite",
tauri_id: "seedance_1.0_lite",
creator: tt.Bytedance
},
description: "Fast and high-quality model",
badges: [{ label: "2 min." }],
capabilities: { maxGenerationCount: 1 }
}), nt({
id: "veo_2",
category: "video",
info: { name: "Google Veo 2", tauri_id: "veo_2", creator: tt.Google },
description: "Fast and high-quality model",
badges: [{ label: "2 min." }],
capabilities: { maxGenerationCount: 1 }
});
const Rn = [
new yt({
id: "midjourney",
tauriId: "midjourney",
fullName: "Midjourney",
category: "image",
creator: le.Midjourney,
selectorName: "Midjourney",
selectorDescription: "Incredible style and quality",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canUseImagePrompt: !1,
maxImagePromptCount: 6
}),
new yt({
id: "flux_pro_1_1_ultra",
tauriId: "flux_pro_11_ultra",
fullName: "Flux Pro 1.1 Ultra",
category: "image",
creator: le.BlackForestLabs,
selectorName: "Flux Pro 1.1 Ultra",
selectorDescription: "High quality model",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canUseImagePrompt: !0,
maxImagePromptCount: 6
}),
new yt({
id: "flux_pro_1_1",
tauriId: "flux_pro_11",
fullName: "Flux Pro 1.1",
category: "image",
creator: le.BlackForestLabs,
selectorName: "Flux Pro 1.1",
selectorDescription: "High quality model",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canUseImagePrompt: !0,
maxImagePromptCount: 6
}),
new yt({
id: "flux_1_dev",
tauriId: "flux_1_dev",
fullName: "Flux 1 Dev",
category: "image",
creator: le.BlackForestLabs,
selectorName: "Flux 1 Dev",
selectorDescription: "High quality model",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canUseImagePrompt: !0,
maxImagePromptCount: 6
}),
new yt({
id: "flux_1_schnell",
tauriId: "flux_1_schnell",
fullName: "Flux 1 Schnell",
category: "image",
creator: le.BlackForestLabs,
selectorName: "Flux 1 Schnell",
selectorDescription: "High quality model",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canUseImagePrompt: !0,
maxImagePromptCount: 6
}),
new yt({
id: "gemini_25_flash",
tauriId: "gemini_25_flash",
fullName: "Gemini 2.5 Flash",
category: "image",
creator: le.Google,
selectorName: "Gemini 2.5 Flash",
selectorDescription: "Ultra instructive model",
selectorBadges: ["35 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 1,
canEditImages: !0,
canUseImagePrompt: !0,
maxImagePromptCount: 6,
tags: [kt.InstructiveEdit]
}),
new yt({
id: "gpt_image_1",
tauriId: "gpt_image_1",
fullName: "GPT Image 1 (GPT-4o)",
category: "image",
creator: le.OpenAi,
selectorName: "GPT Image 1 (GPT-4o)",
selectorDescription: "Slow, ultra instructive model",
selectorBadges: ["45 sec."],
maxGenerationCount: 1,
defaultGenerationCount: 1,
tags: [kt.InstructiveEdit],
canEditImages: !0,
canUseImagePrompt: !0,
maxImagePromptCount: 6
}),
new yt({
id: "flux_pro_kontext_max",
tauriId: "flux_pro_kontext_max",
fullName: "Flux Pro Kontext Max",
category: "image",
creator: le.BlackForestLabs,
selectorName: "Flux Pro Kontext Max",
selectorDescription: "Fast instructive editing",
selectorBadges: ["20 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canEditImages: !0,
tags: [kt.InstructiveEdit]
}),
new yt({
id: "flux_pro_inpaint",
tauriId: "flux_pro_1",
fullName: "Flux Pro Inpaint",
category: "image",
creator: le.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 yt({
id: "flux_dev_juggernaut_inpaint",
tauriId: "flux_dev_juggernaut",
fullName: "Flux Dev Juggernaut Inpaint",
category: "image",
creator: le.BlackForestLabs,
selectorName: "Flux Dev Juggernaut",
selectorDescription: "Fast inpainting",
selectorBadges: ["15 sec."],
maxGenerationCount: 4,
defaultGenerationCount: 4,
canEditImages: !0,
usesInpaintingMask: !0
})
], no = new Map(
Rn.map((e) => [e.id, e])
);
if (no.size !== Rn.length)
throw new Error("All image models must have unique IDs");
const ip = [
new hr({
id: "kling_1_6_pro",
tauriId: "kling_1.6_pro",
fullName: "Kling 1.6 Pro",
category: "video",
creator: le.Kling,
selectorName: "Kling 1.6 Pro",
selectorDescription: "Fast video model",
selectorBadges: ["2 min."],
startFrame: !0,
endFrame: !0
}),
new hr({
id: "kling_2_1_pro",
tauriId: "kling_2.1_pro",
fullName: "Kling 2.1 Pro",
category: "video",
creator: le.Kling,
selectorName: "Kling 2.1 Pro",
selectorDescription: "Fast video model",
selectorBadges: ["2 min."],
startFrame: !0,
endFrame: !0
}),
new hr({
id: "kling_2_1_master",
tauriId: "kling_2.1_master",
fullName: "Kling 2.1 Master",
category: "video",
creator: le.Kling,
selectorName: "Kling 2.1 Master",
selectorDescription: "Fast video model",
selectorBadges: ["2 min."],
startFrame: !0,
endFrame: !1
}),
new hr({
id: "seedance_1_0_lite",
tauriId: "seedance_1.0_lite",
fullName: "Seedance 1.0 Lite",
category: "video",
creator: le.Bytedance,
selectorName: "Seedance 1.0 Lite",
selectorDescription: "Fast video model",
selectorBadges: ["2 min."],
startFrame: !0,
endFrame: !1
}),
new hr({
id: "veo_2",
tauriId: "veo_2",
fullName: "Google Veo 2",
category: "video",
creator: le.Google,
selectorName: "Google Veo 2",
selectorDescription: "Fast video model",
selectorBadges: ["2 min."],
startFrame: !0,
endFrame: !1
})
], sp = [...Rn, ...ip], Rv = new Map(
sp.map((e) => [e.id, e])
);
if (Rv.size !== sp.length)
throw new Error("All models must have unique IDs");
const Lv = (e, t) => e || t, Vr = (e, t) => e.map((n) => {
var r;
return {
label: n.selectorName,
icon: Lv(Mv(n.creator), t),
description: n.selectorDescription,
badges: (r = n.toLegacyBadges()) == null ? void 0 : r.map((a) => ({
label: a.label,
icon: /* @__PURE__ */ se(gn, { icon: Qh })
})),
modelConfig: n.toLegacyModelConfig(),
// Access to full object.
model: n
};
}), cS = Vr(
function() {
const e = /* @__PURE__ */ new Set();
return e.add(no.get("flux_pro_1_1")), Rn.filter((t) => !t.usesInpaintingMask).filter((t) => t.id !== "flux_pro_kontext_max").forEach((t) => e.add(t)), Array.from(e);
}(),
/* @__PURE__ */ se(gn, { icon: Xa, className: "h-4 w-4" })
), uS = Vr(
function() {
const e = /* @__PURE__ */ new Set();
return e.add(no.get("gpt_image_1")), Rn.filter((t) => {
var n;
return (n = t.tags) == null ? void 0 : n.includes(kt.InstructiveEdit);
}).forEach((t) => e.add(t)), Array.from(e);
}(),
/* @__PURE__ */ se(gn, { icon: Xa, className: "h-4 w-4" })
), fS = Vr(
function() {
const e = /* @__PURE__ */ new Set();
return e.add(no.get("gpt_image_1")), Rn.filter((t) => {
var n;
return (n = t.tags) == null ? void 0 : n.includes(kt.InstructiveEdit);
}).forEach((t) => e.add(t)), Array.from(e);
}(),
/* @__PURE__ */ se(gn, { icon: Xa, className: "h-4 w-4" })
), dS = Vr(
//[
// ALL_MODELS_BY_ID.get("flux_pro_inpaint")!,
// ALL_MODELS_BY_ID.get("flux_dev_juggernaut_inpaint")!,
// ALL_MODELS_BY_ID.get("flux_pro_kontext_max")!,
//],
function() {
const e = /* @__PURE__ */ new Set();
return Rn.filter((t) => t.canEditImages).forEach((t) => e.add(t)), Array.from(e);
}(),
/* @__PURE__ */ se(gn, { icon: Xa, className: "h-4 w-4" })
), pS = Vr(
ip,
/* @__PURE__ */ se(gn, { icon: Zh, className: "h-4 w-4" })
);
var Dv = /* @__PURE__ */ ((e) => (e.TextToImage = "text-to-image", e.ImageToVideo = "image-to-video", e.Canvas2D = "canvas-2d", e.Stage3D = "stage-3d", e.ImageEditor = "image-editor", e))(Dv || {});
const lp = typeof document < "u" ? ue.useLayoutEffect : () => {
};
function zv(e) {
const t = xe(null);
return lp(() => {
t.current = e;
}, [
e
]), Be((...n) => {
const r = t.current;
return r == null ? void 0 : r(...n);
}, []);
}
const hn = (e) => {
var t;
return (t = e == null ? void 0 : e.ownerDocument) !== null && t !== void 0 ? t : document;
}, xn = (e) => e && "window" in e && e.window === e ? e : hn(e).defaultView || window;
function cp(e, t) {
return t && e ? e.contains(t) : !1;
}
const es = (e = document) => e.activeElement;
function up(e) {
return e.target;
}
function $v(e) {
var t;
return typeof window > "u" || window.navigator == null ? !1 : ((t = window.navigator.userAgentData) === null || t === void 0 ? void 0 : t.brands.some((n) => e.test(n.brand))) || e.test(window.navigator.userAgent);
}
function Hv(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 fp(e) {
let t = null;
return () => (t == null && (t = e()), t);
}
const Wv = fp(function() {
return Hv(/^Mac/i);
}), Bv = fp(function() {
return $v(/Android/i);
});
function dp() {
let e = xe(/* @__PURE__ */ new Map()), t = Be((a, o, i, s) => {
let l = s != null && s.once ? (...c) => {
e.current.delete(i), i(...c);
} : i;
e.current.set(i, {
type: o,
eventTarget: a,
fn: l,
options: s
}), a.addEventListener(o, l, s);
}, []), n = Be((a, o, i, s) => {
var l;
let c = ((l = e.current.get(i)) === null || l === void 0 ? void 0 : l.fn) || i;
a.removeEventListener(o, c, s), e.current.delete(i);
}, []), r = Be(() => {
e.current.forEach((a, o) => {
n(a.eventTarget, a.type, o, a.options);
});
}, [
n
]);
return Le(() => r, [
r
]), {
addGlobalListener: t,
removeGlobalListener: n,
removeAllGlobalListeners: r
};
}
function Gv(e) {
return e.mozInputSource === 0 && e.isTrusted ? !0 : Bv() && e.pointerType ? e.type === "click" && e.buttons === 1 : e.detail === 0 && !e.pointerType;
}
class pp {
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, n) {
this.nativeEvent = n, this.target = n.target, this.currentTarget = n.currentTarget, this.relatedTarget = n.relatedTarget, this.bubbles = n.bubbles, this.cancelable = n.cancelable, this.defaultPrevented = n.defaultPrevented, this.eventPhase = n.eventPhase, this.isTrusted = n.isTrusted, this.timeStamp = n.timeStamp, this.type = t;
}
}
function mp(e) {
let t = xe({
isFocused: !1,
observer: null
});
lp(() => {
const r = t.current;
return () => {
r.observer && (r.observer.disconnect(), r.observer = null);
};
}, []);
let n = zv((r) => {
e == null || e(r);
});
return Be((r) => {
if (r.target instanceof HTMLButtonElement || r.target instanceof HTMLInputElement || r.target instanceof HTMLTextAreaElement || r.target instanceof HTMLSelectElement) {
t.current.isFocused = !0;
let a = r.target, o = (i) => {
t.current.isFocused = !1, a.disabled && n(new pp("blur", i)), t.current.observer && (t.current.observer.disconnect(), t.current.observer = null);
};
a.addEventListener("focusout", o, {
once: !0
}), t.current.observer = new MutationObserver(() => {
if (t.current.isFocused && a.disabled) {
var i;
(i = t.current.observer) === null || i === void 0 || i.disconnect();
let s = a === document.activeElement ? null : document.activeElement;
a.dispatchEvent(new FocusEvent("blur", {
relatedTarget: s
})), a.dispatchEvent(new FocusEvent("focusout", {
bubbles: !0,
relatedTarget: s
}));
}
}), t.current.observer.observe(a, {
attributes: !0,
attributeFilter: [
"disabled"
]
});
}
}, [
n
]);
}
let Yv = !1, Ur = null, ts = /* @__PURE__ */ new Set(), Ar = /* @__PURE__ */ new Map(), Cn = !1, ns = !1;
const Vv = {
Tab: !0,
Escape: !0
};
function cl(e, t) {
for (let n of ts) n(e, t);
}
function Uv(e) {
return !(e.metaKey || !Wv() && e.altKey || e.ctrlKey || e.key === "Control" || e.key === "Shift" || e.key === "Meta");
}
function La(e) {
Cn = !0, Uv(e) && (Ur = "keyboard", cl("keyboard", e));
}
function ft(e) {
Ur = "pointer", (e.type === "mousedown" || e.type === "pointerdown") && (Cn = !0, cl("pointer", e));
}
function gp(e) {
Gv(e) && (Cn = !0, Ur = "virtual");
}
function hp(e) {
e.target === window || e.target === document || Yv || !e.isTrusted || (!Cn && !ns && (Ur = "virtual", cl("virtual", e)), Cn = !1, ns = !1);
}
function yp() {
Cn = !1, ns = !0;
}
function rs(e) {
if (typeof window > "u" || Ar.get(xn(e))) return;
const t = xn(e), n = hn(e);
let r = t.HTMLElement.prototype.focus;
t.HTMLElement.prototype.focus = function() {
Cn = !0, r.apply(this, arguments);
}, n.addEventListener("keydown", La, !0), n.addEventListener("keyup", La, !0), n.addEventListener("click", gp, !0), t.addEventListener("focus", hp, !0), t.addEventListener("blur", yp, !1), typeof PointerEvent < "u" ? (n.addEventListener("pointerdown", ft, !0), n.addEventListener("pointermove", ft, !0), n.addEventListener("pointerup", ft, !0)) : (n.addEventListener("mousedown", ft, !0), n.addEventListener("mousemove", ft, !0), n.addEventListener("mouseup", ft, !0)), t.addEventListener("beforeunload", () => {
bp(e);
}, {
once: !0
}), Ar.set(t, {
focus: r
});
}
const bp = (e, t) => {
const n = xn(e), r = hn(e);
t && r.removeEventListener("DOMContentLoaded", t), Ar.has(n) && (n.HTMLElement.prototype.focus = Ar.get(n).focus, r.removeEventListener("keydown", La, !0), r.removeEventListener("keyup", La, !0), r.removeEventListener("click", gp, !0), n.removeEventListener("focus", hp, !0), n.removeEventListener("blur", yp, !1), typeof PointerEvent < "u" ? (r.removeEventListener("pointerdown", ft, !0), r.removeEventListener("pointermove", ft, !0), r.removeEventListener("pointerup", ft, !0)) : (r.removeEventListener("mousedown", ft, !0), r.removeEventListener("mousemove", ft, !0), r.removeEventListener("mouseup", ft, !0)), Ar.delete(n));
};
function qv(e) {
const t = hn(e);
let n;
return t.readyState !== "loading" ? rs(e) : (n = () => {
rs(e);
}, t.addEventListener("DOMContentLoaded", n)), () => bp(e, n);
}
typeof document < "u" && qv();
function vp() {
return Ur !== "pointer";
}
const Kv = /* @__PURE__ */ new Set([
"checkbox",
"radio",
"range",
"color",
"file",
"image",
"button",
"submit",
"reset"
]);
function Xv(e, t, n) {
let r = hn(n == null ? void 0 : n.target);
const a = typeof window < "u" ? xn(n == null ? void 0 : n.target).HTMLInputElement : HTMLInputElement, o = typeof window < "u" ? xn(n == null ? void 0 : n.target).HTMLTextAreaElement : HTMLTextAreaElement, i = typeof window < "u" ? xn(n == null ? void 0 : n.target).HTMLElement : HTMLElement, s = typeof window < "u" ? xn(n == null ? void 0 : n.target).KeyboardEvent : KeyboardEvent;
return e = e || r.activeElement instanceof a && !Kv.has(r.activeElement.type) || r.activeElement instanceof o || r.activeElement instanceof i && r.activeElement.isContentEditable, !(e && t === "keyboard" && n instanceof s && !Vv[n.key]);
}
function Jv(e, t, n) {
rs(), Le(() => {
let r = (a, o) => {
Xv(!!(n != null && n.isTextInput), a, o) && e(vp());
};
return ts.add(r), () => {
ts.delete(r);
};
}, t);
}
function Zv(e) {
let { isDisabled: t, onFocus: n, onBlur: r, onFocusChange: a } = e;
const o = Be((l) => {
if (l.target === l.currentTarget)
return r && r(l), a && a(!1), !0;
}, [
r,
a
]), i = mp(o), s = Be((l) => {
const c = hn(l.target), u = c ? es(c) : es();
l.target === l.currentTarget && u === up(l.nativeEvent) && (n && n(l), a && a(!0), i(l));
}, [
a,
n,
i
]);
return {
focusProps: {
onFocus: !t && (n || a || r) ? s : void 0,
onBlur: !t && (r || a) ? o : void 0
}
};
}
function Qv(e) {
let { isDisabled: t, onBlurWithin: n, onFocusWithin: r, onFocusWithinChange: a } = e, o = xe({
isFocusWithin: !1
}), { addGlobalListener: i, removeAllGlobalListeners: s } = dp(), l = Be((p) => {
p.currentTarget.contains(p.target) && o.current.isFocusWithin && !p.currentTarget.contains(p.relatedTarget) && (o.current.isFocusWithin = !1, s(), n && n(p), a && a(!1));
}, [
n,
a,
o,
s
]), c = mp(l), u = Be((p) => {
if (!p.currentTarget.contains(p.target)) return;
const m = hn(p.target), b = es(m);
if (!o.current.isFocusWithin && b === up(p.nativeEvent)) {
r && r(p), a && a(!0), o.current.isFocusWithin = !0, c(p);
let x = p.currentTarget;
i(m, "focus", (v) => {
if (o.current.isFocusWithin && !cp(x, v.target)) {
let y = new pp("blur", new m.defaultView.FocusEvent("blur", {
relatedTarget: v.target
}));
y.target = x, y.currentTarget = x, l(y);
}
}, {
capture: !0
});
}
}, [
r,
a,
c,
i,
l
]);
return t ? {
focusWithinProps: {
// These cannot be null, that would conflict in mergeProps
onFocus: void 0,
onBlur: void 0
}
} : {
focusWithinProps: {
onFocus: u,
onBlur: l
}
};
}
let Da = !1, ei = 0;
function as() {
Da = !0, setTimeout(() => {
Da = !1;
}, 50);
}
function wu(e) {
e.pointerType === "touch" && as();
}
function e0() {
if (!(typeof document > "u"))
return typeof PointerEvent < "u" ? document.addEventListener("pointerup", wu) : document.addEventListener("touchend", as), ei++, () => {
ei--, !(ei > 0) && (typeof PointerEvent < "u" ? document.removeEventListener("pointerup", wu) : document.removeEventListener("touchend", as));
};
}
function t0(e) {
let { onHoverStart: t, onHoverChange: n, onHoverEnd: r, isDisabled: a } = e, [o, i] = $e(!1), s = xe({
isHovered: !1,
ignoreEmulatedMouseEvents: !1,
pointerType: "",
target: null
}).current;
Le(e0, []);
let { addGlobalListener: l, removeAllGlobalListeners: c } = dp(), { hoverProps: u, triggerHoverEnd: p } = ze(() => {
let m = (v, y) => {
if (s.pointerType = y, a || y === "touch" || s.isHovered || !v.currentTarget.contains(v.target)) return;
s.isHovered = !0;
let w = v.currentTarget;
s.target = w, l(hn(v.target), "pointerover", (P) => {
s.isHovered && s.target && !cp(s.target, P.target) && b(P, P.pointerType);
}, {
capture: !0
}), t && t({
type: "hoverstart",
target: w,
pointerType: y
}), n && n(!0), i(!0);
}, b = (v, y) => {
let w = s.target;
s.pointerType = "", s.target = null, !(y === "touch" || !s.isHovered || !w) && (s.isHovered = !1, c(), r && r({
type: "hoverend",
target: w,
pointerType: y
}), n && n(!1), i(!1));
}, x = {};
return typeof PointerEvent < "u" ? (x.onPointerEnter = (v) => {
Da && v.pointerType === "mouse" || m(v, v.pointerType);
}, x.onPointerLeave = (v) => {
!a && v.currentTarget.contains(v.target) && b(v, v.pointerType);
}) : (x.onTouchStart = () => {
s.ignoreEmulatedMouseEvents = !0;
}, x.onMouseEnter = (v) => {
!s.ignoreEmulatedMouseEvents && !Da && m(v, "mouse"), s.ignoreEmulatedMouseEvents = !1;
}, x.onMouseLeave = (v) => {
!a && v.currentTarget.contains(v.target) && b(v, "mouse");
}), {
hoverProps: x,
triggerHoverEnd: b
};
}, [
t,
n,
r,
a,
s,
l,
c
]);
return Le(() => {
a && p({
currentTarget: s.target
}, s.pointerType);
}, [
a
]), {
hoverProps: u,
isHovered: o
};
}
function n0(e = {}) {
let { autoFocus: t = !1, isTextInput: n, within: r } = e, a = xe({
isFocused: !1,
isFocusVisible: t || vp()
}), [o, i] = $e(!1), [s, l] = $e(() => a.current.isFocused && a.current.isFocusVisible), c = Be(() => l(a.current.isFocused && a.current.isFocusVisible), []), u = Be((b) => {
a.current.isFocused = b, i(b), c();
}, [
c
]);
Jv((b) => {
a.current.isFocusVisible = b, c();
}, [], {
isTextInput: n
});
let { focusProps: p } = Zv({
isDisabled: r,
onFocusChange: u
}), { focusWithinProps: m } = Qv({
isDisabled: !r,
onFocusWithinChange: u
});
return {
isFocused: o,
isFocusVisible: s,
focusProps: r ? m : p
};
}
var r0 = Object.defineProperty, a0 = (e, t, n) => t in e ? r0(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n, ti = (e, t, n) => (a0(e, typeof t != "symbol" ? t + "" : t, n), n);
let o0 = class {
constructor() {
ti(this, "current", this.detect()), ti(this, "handoffState", "pending"), ti(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";
}
}, On = new o0();
function qr(e) {
var t, n;
return On.isServer ? null : e ? "ownerDocument" in e ? e.ownerDocument : "current" in e ? (n = (t = e.current) == null ? void 0 : t.ownerDocument) != null ? n : document : null : document;
}
function xp(e) {
typeof queueMicrotask == "function" ? queueMicrotask(e) : Promise.resolve().then(e).catch((t) => setTimeout(() => {
throw t;
}));
}
function Ln() {
let e = [], t = { addEventListener(n, r, a, o) {
return n.addEventListener(r, a, o), t.add(() => n.removeEventListener(r, a, o));
}, requestAnimationFrame(...n) {
let r = requestAnimationFrame(...n);
return t.add(() => cancelAnimationFrame(r));
}, nextFrame(...n) {
return t.requestAnimationFrame(() => t.requestAnimationFrame(...n));
}, setTimeout(...n) {
let r = setTimeout(...n);
return t.add(() => clearTimeout(r));
}, microTask(...n) {
let r = { current: !0 };
return xp(() => {
r.current && n[0]();
}), t.add(() => {
r.current = !1;
});
}, style(n, r, a) {
let o = n.style.getPropertyValue(r);
return Object.assign(n.style, { [r]: a }), this.add(() => {
Object.assign(n.style, { [r]: o });
});
}, group(n) {
let r = Ln();
return n(r), this.add(() => r.dispose());
}, add(n) {
return e.includes(n) || e.push(n), () => {
let r = e.indexOf(n);
if (r >= 0) for (let a of e.splice(r, 1)) a();
};
}, dispose() {
for (let n of e.splice(0)) n();
} };
return t;
}
function ro() {
let [e] = $e(Ln);
return Le(() => () => e.dispose(), [e]), e;
}
let Ye = (e, t) => {
On.isServer ? Le(e, t) : Xs(e, t);
};
function zt(e) {
let t = xe(e);
return Ye(() => {
t.current = e;
}, [e]), t;
}
let ve = function(e) {
let t = zt(e);
return ue.useCallback((...n) => t.current(...n), [t]);
};
function i0(e) {
let t = e.width / 2, n = e.height / 2;
return { top: e.clientY - n, right: e.clientX + t, bottom: e.clientY + n, left: e.clientX - t };
}
function s0(e, t) {
return !(!e || !t || e.right < t.left || e.left > t.right || e.bottom < t.top || e.top > t.bottom);
}
function l0({ disabled: e = !1 } = {}) {
let t = xe(null), [n, r] = $e(!1), a = ro(), o = ve(() => {
t.current = null, r(!1), a.dispose();
}), i = ve((s) => {
if (a.dispose(), t.current === null) {
t.current = s.currentTarget, r(!0);
{
let l = qr(s.currentTarget);
a.addEventListener(l, "pointerup", o, !1), a.addEventListener(l, "pointermove", (c) => {
if (t.current) {
let u = i0(c);
r(s0(u, t.current.getBoundingClientRect()));
}
}, !1), a.addEventListener(l, "pointercancel", o, !1);
}
}
});
return { pressed: n, pressProps: e ? {} : { onPointerDown: i, onPointerUp: o, onClick: o } };
}
function os(...e) {
return Array.from(new Set(e.flatMap((t) => typeof t == "string" ? t.split(" ") : []))).filter(Boolean).join(" ");
}
function dt(e, t, ...n) {
if (e in t) {
let a = t[e];
return typeof a == "function" ? a(...n) : a;
}
let r = new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map((a) => `"${a}"`).join(", ")}.`);
throw Error.captureStackTrace && Error.captureStackTrace(r, dt), r;
}
var tr = ((e) => (e[e.None = 0] = "None", e[e.RenderStrategy = 1] = "RenderStrategy", e[e.Static = 2] = "Static", e))(tr || {}), nn = ((e) => (e[e.Unmount = 0] = "Unmount", e[e.Hidden = 1] = "Hidden", e))(nn || {});
function gt() {
let e = u0();
return Be((t) => c0({ mergeRefs: e, ...t }), [e]);
}
function c0({ ourProps: e, theirProps: t, slot: n, defaultTag: r, features: a, visible: o = !0, name: i, mergeRefs: s }) {
s = s ?? f0;
let l = wp(t, e);
if (o) return ha(l, n, r, i, s);
let c = a ?? 0;
if (c & 2) {
let { static: u = !1, ...p } = l;
if (u) return ha(p, n, r, i, s);
}
if (c & 1) {
let { unmount: u = !0, ...p } = l;
return dt(u ? 0 : 1, { 0() {
return null;
}, 1() {
return ha({ ...p, hidden: !0, style: { display: "none" } }, n, r, i, s);
} });
}
return ha(l, n, r, i, s);
}
function ha(e, t = {}, n, r, a) {
let { as: o = n, children: i, refName: s = "ref", ...l } = ni(e, ["unmount", "static"]), c = e.ref !== void 0 ? { [s]: e.ref } : {}, u = typeof i == "function" ? i(t) : i;
"className" in l && l.className && typeof l.className == "function" && (l.className = l.className(t)), l["aria-labelledby"] && l["aria-labelledby"] === l.id && (l["aria-labelledby"] = void 0);
let p = {};
if (t) {
let m = !1, b = [];
for (let [x, v] of Object.entries(t)) typeof v == "boolean" && (m = !0), v === !0 && b.push(x.replace(/([A-Z])/g, (y) => `-${y.toLowerCase()}`));
if (m) {
p["data-headlessui-state"] = b.join(" ");
for (let x of b) p[`data-${x}`] = "";
}
}
if (o === Rt && (Object.keys(bn(l)).length > 0 || Object.keys(bn(p)).length > 0)) if (!Uh(u) || Array.isArray(u) && u.length > 1) {
if (Object.keys(bn(l)).length > 0) throw new Error(['Passing props on "Fragment"!', "", `The current component <${r} /> is rendering a "Fragment".`, "However we need to passthrough the following props:", Object.keys(bn(l)).concat(Object.keys(bn(p))).map((m) => ` - ${m}`).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((m) => ` - ${m}`).join(`
`)].join(`
`));
} else {
let m = u.props, b = m == null ? void 0 : m.className, x = typeof b == "function" ? (...w) => os(b(...w), l.className) : os(b, l.className), v = x ? { className: x } : {}, y = wp(u.props, bn(ni(l, ["ref"])));
for (let w in p) w in y && delete p[w];
return qh(u, Object.assign({}, y, p, c, { ref: a(d0(u), c.ref) }, v));
}
return Kh(o, Object.assign({}, ni(l, ["ref"]), o !== Rt && c, o !== Rt && p), u);
}
function u0() {
let e = xe([]), t = Be((n) => {
for (let r of e.current) r != null && (typeof r == "function" ? r(n) : r.current = n);
}, []);
return (...n) => {
if (!n.every((r) => r == null)) return e.current = n, t;
};
}
function f0(...e) {
return e.every((t) => t == null) ? void 0 : (t) => {
for (let n of e) n != null && (typeof n == "function" ? n(t) : n.current = t);
};
}
function wp(...e) {
if (e.length === 0) return {};
if (e.length === 1) return e[0];
let t = {}, n = {};
for (let r of e) for (let a in r) a.startsWith("on") && typeof r[a] == "function" ? (n[a] != null || (n[a] = []), n[a].push(r[a])) : t[a] = r[a];
if (t.disabled || t["aria-disabled"]) for (let r in n) /^(on(?:Click|Pointer|Mouse|Key)(?:Down|Up|Press)?)$/.test(r) && (n[r] = [(a) => {
var o;
return (o = a == null ? void 0 : a.preventDefault) == null ? void 0 : o.call(a);
}]);
for (let r in n) Object.assign(t, { [r](a, ...o) {
let i = n[r];
for (let s of i) {
if ((a instanceof Event || (a == null ? void 0 : a.nativeEvent) instanceof Event) && a.defaultPrevented) return;
s(a, ...o);
}
} });
return t;
}
function Ep(...e) {
if (e.length === 0) return {};
if (e.length === 1) return e[0];
let t = {}, n = {};
for (let r of e) for (let a in r) a.startsWith("on") && typeof r[a] == "function" ? (n[a] != null || (n[a] = []), n[a].push(r[a])) : t[a] = r[a];
for (let r in n) Object.assign(t, { [r](...a) {
let o = n[r];
for (let i of o) i == null || i(...a);
} });
return t;
}
function lt(e) {
var t;
return Object.assign(Vh(e), { displayName: (t = e.displayName) != null ? t : e.name });
}
function bn(e) {
let t = Object.assign({}, e);
for (let n in t) t[n] === void 0 && delete t[n];
return t;
}
function ni(e, t = []) {
let n = Object.assign({}, e);
for (let r of t) r in n && delete n[r];
return n;
}
function d0(e) {
return ue.version.split(".")[0] >= "19" ? e.props.ref : e.ref;
}
let p0 = "span";
var Rr = ((e) => (e[e.None = 1] = "None", e[e.Focusable = 2] = "Focusable", e[e.Hidden = 4] = "Hidden", e))(Rr || {});
function m0(e, t) {
var n;
let { features: r = 1, ...a } = e, o = { ref: t, "aria-hidden": (r & 2) === 2 ? !0 : (n = a["aria-hidden"]) != null ? n : void 0, hidden: (r & 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", ...(r & 4) === 4 && (r & 2) !== 2 && { display: "none" } } };
return gt()({ ourProps: o, theirProps: a, slot: {}, defaultTag: p0, name: "Hidden" });
}
let za = lt(m0);
function kp(e) {
let t = e.parentElement, n = null;
for (; t && !(t instanceof HTMLFieldSetElement); ) t instanceof HTMLLegendElement && (n = t), t = t.parentElement;
let r = (t == null ? void 0 : t.getAttribute("disabled")) === "";
return r && g0(n) ? !1 : r;
}
function g0(e) {
if (!e) return !1;
let t = e.previousElementSibling;
for (; t !== null; ) {
if (t instanceof HTMLLegendElement) return !1;
t = t.previousElementSibling;
}
return !0;
}
let Pp = Symbol();
function Op(e, t = !0) {
return Object.assign(e, { [Pp]: t });
}
function pt(...e) {
let t = xe(e);
Le(() => {
t.current = e;
}, [e]);
let n = ve((r) => {
for (let a of t.current) a != null && (typeof a == "function" ? a(r) : a.current = r);
});
return e.every((r) => r == null || (r == null ? void 0 : r[Pp])) ? void 0 : n;
}
var tn = ((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))(tn || {});
let h0 = at(() => {
});
function y0({ value: e, children: t }) {
return ue.createElement(h0.Provider, { value: e }, t);
}
function b0(e) {
if (e === null) return { width: 0, height: 0 };
let { width: t, height: n } = e.getBoundingClientRect();
return { width: t, height: n };
}
function v0(e, t = !1) {
let [n, r] = xd(() => ({}), {}), a = ze(() => b0(e), [e, n]);
return Ye(() => {
if (!e) return;
let o = new ResizeObserver(r);
return o.observe(e), () => {
o.disconnect();
};
}, [e]), t ? { width: `${a.width}px`, height: `${a.height}px` } : a;
}
let x0 = class extends Map {
constructor(e) {
super(), this.factory = e;
}
get(e) {
let t = super.get(e);
return t === void 0 && (t = this.factory(e), this.set(e, t)), t;
}
};
function Sp(e, t) {
let n = e(), r = /* @__PURE__ */ new Set();
return { getSnapshot() {
return n;
}, subscribe(a) {
return r.add(a), () => r.delete(a);
}, dispatch(a, ...o) {
let i = t[a].call(n, ...o);
i && (n = i, r.forEach((s) => s()));
} };
}
function Ap(e) {
return Xh(e.subscribe, e.getSnapshot, e.getSnapshot);
}
let w0 = new x0(() => Sp(() => [], { ADD(e) {
return this.includes(e) ? this : [...this, e];
}, REMOVE(e) {
let t = this.indexOf(e);
if (t === -1) return this;
let n = this.slice();
return n.splice(t, 1), n;
} }));
function Cp(e, t) {
let n = w0.get(t), r = jr(), a = Ap(n);
if (Ye(() => {
if (e) return n.dispatch("ADD", r), () => n.dispatch("REMOVE", r);
}, [n, e]), !e) return !1;
let o = a.indexOf(r), i = a.length;
return o === -1 && (o = i, i += 1), o === i - 1;
}
function E0(e, t, n) {
let r = zt((a) => {
let o = a.getBoundingClientRect();
o.x === 0 && o.y === 0 && o.width === 0 && o.height === 0 && n();
});
Le(() => {
if (!e) return;
let a = t === null ? null : t instanceof HTMLElement ? t : t.current;
if (!a) return;
let o = Ln();
if (typeof ResizeObserver < "u") {
let i = new ResizeObserver(() => r.current(a));
i.observe(a), o.add(() => i.disconnect());
}
if (typeof IntersectionObserver < "u") {
let i = new IntersectionObserver(() => r.current(a));
i.observe(a), o.add(() => i.disconnect());
}
return () => o.dispose();
}, [t, r, e]);
}
let is = ["[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(","), k0 = ["[data-autofocus]"].map((e) => `${e}:not([tabindex='-1'])`).join(",");
var Mt = ((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))(Mt || {}), $a = ((e) => (e[e.Error = 0] = "Error", e[e.Overflow = 1] = "Overflow", e[e.Success = 2] = "Success", e[e.Underflow = 3] = "Underflow", e))($a || {}), P0 = ((e) => (e[e.Previous = -1] = "Previous", e[e.Next = 1] = "Next", e))(P0 || {});
function ao(e = document.body) {
return e == null ? [] : Array.from(e.querySelectorAll(is)).sort((t, n) => Math.sign((t.tabIndex || Number.MAX_SAFE_INTEGER) - (n.tabIndex || Number.MAX_SAFE_INTEGER)));
}
function O0(e = document.body) {
return e == null ? [] : Array.from(e.querySelectorAll(k0)).sort((t, n) => Math.sign((t.tabIndex || Number.MAX_SAFE_INTEGER) - (n.tabIndex || Number.MAX_SAFE_INTEGER)));
}
var ul = ((e) => (e[e.Strict = 0] = "Strict", e[e.Loose = 1] = "Loose", e))(ul || {});
function _p(e, t = 0) {
var n;
return e === ((n = qr(e)) == null ? void 0 : n.body) ? !1 : dt(t, { 0() {
return e.matches(is);
}, 1() {
let r = e;
for (; r !== null; ) {
if (r.matches(is)) return !0;
r = r.parentElement;
}
return !1;
} });
}
var S0 = ((e) => (e[e.Keyboard = 0] = "Keyboard", e[e.Mouse = 1] = "Mouse", e))(S0 || {});
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 A0 = ["textarea", "input"].join(",");
function C0(e) {
var t, n;
return (n = (t = e == null ? void 0 : e.matches) == null ? void 0 : t.call(e, A0)) != null ? n : !1;
}
function _0(e, t = (n) => n) {
return e.slice().sort((n, r) => {
let a = t(n), o = t(r);
if (a === null || o === null) return 0;
let i = a.compareDocumentPosition(o);
return i & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : i & Node.DOCUMENT_POSITION_PRECEDING ? 1 : 0;
});
}
function wn(e, t, { sorted: n = !0, relativeTo: r = null, skipElements: a = [] } = {}) {
let o = Array.isArray(e) ? e.length > 0 ? e[0].ownerDocument : document : e.ownerDocument, i = Array.isArray(e) ? n ? _0(e) : e : t & 64 ? O0(e) : ao(e);
a.length > 0 && i.length > 1 && (i = i.filter((b) => !a.some((x) => x != null && "current" in x ? (x == null ? void 0 : x.current) === b : x === b))), r = r ?? o.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");
})(), l = (() => {
if (t & 1) return 0;
if (t & 2) return Math.max(0, i.indexOf(r)) - 1;
if (t & 4) return Math.max(0, i.indexOf(r)) + 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 } : {}, u = 0, p = i.length, m;
do {
if (u >= p || u + p <= 0) return 0;
let b = l + u;
if (t & 16) b = (b + p) % p;
else {
if (b < 0) return 3;
if (b >= p) return 1;
}
m = i[b], m == null || m.focus(c), u += s;
} while (m !== o.activeElement);
return t & 6 && C0(m) && m.select(), 2;
}
function Tp() {
return /iPhone/gi.test(window.navigator.platform) || /Mac/gi.test(window.navigator.platform) && window.navigator.maxTouchPoints > 0;
}
function T0() {
return /Android/gi.test(window.navigator.userAgent);
}
function N0() {
return Tp() || T0();
}
function yr(e, t, n, r) {
let a = zt(n);
Le(() => {
if (!e) return;
function o(i) {
a.current(i);
}
return document.addEventListener(t, o, r), () => document.removeEventListener(t, o, r);
}, [e, t, r]);
}
function Np(e, t, n, r) {
let a = zt(n);
Le(() => {
if (!e) return;
function o(i) {
a.current(i);
}
return window.addEventListener(t, o, r), () => window.removeEventListener(t, o, r);
}, [e, t, r]);
}
const Eu = 30;
function I0(e, t, n) {
let r = Cp(e, "outside-click"), a = zt(n), o = Be(function(l, c) {
if (l.defaultPrevented) return;
let u = c(l);
if (u === null || !u.getRootNode().contains(u) || !u.isConnected) return;
let p = function m(b) {
return typeof b == "function" ? m(b()) : Array.isArray(b) || b instanceof Set ? b : [b];
}(t);
for (let m of p) if (m !== null && (m.contains(u) || l.composed && l.composedPath().includes(m))) return;
return !_p(u, ul.Loose) && u.tabIndex !== -1 && l.preventDefault(), a.current(l, u);
}, [a, t]), i = xe(null);
yr(r, "pointerdown", (l) => {
var c, u;
i.current = ((u = (c = l.composedPath) == null ? void 0 : c.call(l)) == null ? void 0 : u[0]) || l.target;
}, !0), yr(r, "mousedown", (l) => {
var c, u;
i.current = ((u = (c = l.composedPath) == null ? void 0 : c.call(l)) == null ? void 0 : u[0]) || l.target;
}, !0), yr(r, "click", (l) => {
N0() || i.current && (o(l, () => i.current), i.current = null);
}, !0);
let s = xe({ x: 0, y: 0 });
yr(r, "touchstart", (l) => {
s.current.x = l.touches[0].clientX, s.current.y = l.touches[0].clientY;
}, !0), yr(r, "touchend", (l) => {
let c = { x: l.changedTouches[0].clientX, y: l.changedTouches[0].clientY };
if (!(Math.abs(c.x - s.current.x) >= Eu || Math.abs(c.y - s.current.y) >= Eu)) return o(l, () => l.target instanceof HTMLElement ? l.target : null);
}, !0), Np(r, "blur", (l) => o(l, () => window.document.activeElement instanceof HTMLIFrameElement ? window.document.activeElement : null), !0);
}
function nr(...e) {
return ze(() => qr(...e), [...e]);
}
function j0(e, t, n, r) {
let a = zt(n);
Le(() => {
e = e ?? window;
function o(i) {
a.current(i);
}
return e.addEventListener(t, o, r), () => e.removeEventListener(t, o, r);
}, [e, t, r]);
}
function M0(e, t) {
return ze(() => {
var n;
if (e.type) return e.type;
let r = (n = e.as) != null ? n : "button";
if (typeof r == "string" && r.toLowerCase() === "button" || (t == null ? void 0 : t.tagName) === "BUTTON" && !t.hasAttribute("type")) return "button";
}, [e.type, e.as, t]);
}
function F0() {
let e;
return { before({ doc: t }) {
var n;
let r = t.documentElement, a = (n = t.defaultView) != null ? n : window;
e = Math.max(0, a.innerWidth - r.clientWidth);
}, after({ doc: t, d: n }) {
let r = t.documentElement, a = Math.max(0, r.clientWidth - r.offsetWidth), o = Math.max(0, e - a);
n.style(r, "paddingRight", `${o}px`);
} };
}
function R0() {
return Tp() ? { before({ doc: e, d: t, meta: n }) {
function r(a) {
return n.containers.flatMap((o) => o()).some((o) => o.contains(a));
}
t.microTask(() => {
var a;
if (window.getComputedStyle(e.documentElement).scrollBehavior !== "auto") {
let s = Ln();
s.style(e.documentElement, "scrollBehavior", "auto"), t.add(() => t.microTask(() => s.dispose()));
}
let o = (a = window.scrollY) != null ? a : window.pageYOffset, i = null;
t.addEventListener(e, "click", (s) => {
if (s.target instanceof HTMLElement) try {
let l = s.target.closest("a");
if (!l) return;
let { hash: c } = new URL(l.href), u = e.querySelector(c);
u && !r(u) && (i = u);
} catch {
}
}, !0), t.addEventListener(e, "touchstart", (s) => {
if (s.target instanceof HTMLElement) if (r(s.target)) {
let l = s.target;
for (; l.parentElement && r(l.parentElement); ) l = l.parentElement;
t.style(l, "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 (r(s.target)) {
let l = s.target;
for (; l.parentElement && l.dataset.headlessuiPortal !== "" && !(l.scrollHeight > l.clientHeight || l.scrollWidth > l.clientWidth); ) l = l.parentElement;
l.dataset.headlessuiPortal === "" && s.preventDefault();
} else s.preventDefault();
}
}, { passive: !1 }), t.add(() => {
var s;
let l = (s = window.scrollY) != null ? s : window.pageYOffset;
o !== l && window.scrollTo(0, o), i && i.isConnected && (i.scrollIntoView({ block: "nearest" }), i = null);
});
});
} } : {};
}
function L0() {
return { before({ doc: e, d: t }) {
t.style(e.documentElement, "overflow", "hidden");
} };
}
function D0(e) {
let t = {};
for (let n of e) Object.assign(t, n(t));
return t;
}
let En = Sp(() => /* @__PURE__ */ new Map(), { PUSH(e, t) {
var n;
let r = (n = this.get(e)) != null ? n : { doc: e, count: 0, d: Ln(), meta: /* @__PURE__ */ new Set() };
return r.count++, r.meta.add(t), this.set(e, r), this;
}, POP(e, t) {
let n = this.get(e);
return n && (n.count--, n.meta.delete(t)), this;
}, SCROLL_PREVENT({ doc: e, d: t, meta: n }) {
let r = { doc: e, d: t, meta: D0(n) }, a = [R0(), F0(), L0()];
a.forEach(({ before: o }) => o == null ? void 0 : o(r)), a.forEach(({ after: o }) => o == null ? void 0 : o(r));
}, SCROLL_ALLOW({ d: e }) {
e.dispose();
}, TEARDOWN({ doc: e }) {
this.delete(e);
} });
En.subscribe(() => {
let e = En.getSnapshot(), t = /* @__PURE__ */ new Map();
for (let [n] of e) t.set(n, n.documentElement.style.overflow);
for (let n of e.values()) {
let r = t.get(n.doc) === "hidden", a = n.count !== 0;
(a && !r || !a && r) && En.dispatch(n.count > 0 ? "SCROLL_PREVENT" : "SCROLL_ALLOW", n), n.count === 0 && En.dispatch("TEARDOWN", n);
}
});
function z0(e, t, n = () => ({ containers: [] })) {
let r = Ap(En), a = t ? r.get(t) : void 0, o = a ? a.count > 0 : !1;
return Ye(() => {
if (!(!t || !e)) return En.dispatch("PUSH", t, n), () => En.dispatch("POP", t, n);
}, [e, t]), o;
}
function $0(e, t, n = () => [document.body]) {
let r = Cp(e, "scroll-lock");
z0(r, t, (a) => {
var o;
return { containers: [...(o = a.containers) != null ? o : [], n] };
});
}
function H0(e = 0) {
let [t, n] = $e(e), r = Be((l) => n(l), [t]), a = Be((l) => n((c) => c | l), [t]), o = Be((l) => (t & l) === l, [t]), i = Be((l) => n((c) => c & ~l), [n]), s = Be((l) => n((c) => c ^ l), [n]);
return { flags: t, setFlag: r, addFlag: a, hasFlag: o, removeFlag: i, toggleFlag: s };
}
var ku, Pu;
typeof process < "u" && typeof globalThis < "u" && typeof Element < "u" && ((ku = process == null ? void 0 : process.env) == null ? void 0 : ku.NODE_ENV) === "test" && typeof ((Pu = Element == null ? void 0 : Element.prototype) == null ? void 0 : Pu.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 W0 = ((e) => (e[e.None = 0] = "None", e[e.Closed = 1] = "Closed", e[e.Enter = 2] = "Enter", e[e.Leave = 4] = "Leave", e))(W0 || {});
function fl(e) {
let t = {};
for (let n in e) e[n] === !0 && (t[`data-${n}`] = "");
return t;
}
function dl(e, t, n, r) {
let [a, o] = $e(n), { hasFlag: i, addFlag: s, removeFlag: l } = H0(e && a ? 3 : 0), c = xe(!1), u = xe(!1), p = ro();
return Ye(() => {
var m;
if (e) {
if (n && o(!0), !t) {
n && s(3);
return;
}
return (m = r == null ? void 0 : r.start) == null || m.call(r, n), B0(t, { inFlight: c, prepare() {
u.current ? u.current = !1 : u.current = c.current, c.current = !0, !u.current && (n ? (s(3), l(4)) : (s(4), l(2)));
}, run() {
u.current ? n ? (l(3), s(4)) : (l(4), s(3)) : n ? l(1) : s(1);
}, done() {
var b;
u.current && typeof t.getAnimations == "function" && t.getAnimations().length > 0 || (c.current = !1, l(7), n || o(!1), (b = r == null ? void 0 : r.end) == null || b.call(r, n));
} });
}
}, [e, n, t, p]), e ? [a, { closed: i(1), enter: i(2), leave: i(4), transition: i(2) || i(4) }] : [n, { closed: void 0, enter: void 0, leave: void 0, transition: void 0 }];
}
function B0(e, { prepare: t, run: n, done: r, inFlight: a }) {
let o = Ln();
return Y0(e, { prepare: t, inFlight: a }), o.nextFrame(() => {
n(), o.requestAnimationFrame(() => {
o.add(G0(e, r));
});
}), o.dispose;
}
function G0(e, t) {
var n, r;
let a = Ln();
if (!e) return a.dispose;
let o = !1;
a.add(() => {
o = !0;
});
let i = (r = (n = e.getAnimations) == null ? void 0 : n.call(e).filter((s) => s instanceof CSSTransition)) != null ? r : [];
return i.length === 0 ? (t(), a.dispose) : (Promise.allSettled(i.map((s) => s.finished)).then(() => {
o || t();
}), a.dispose);
}
function Y0(e, { inFlight: t, prepare: n }) {
if (t != null && t.current) {
n();
return;
}
let r = e.style.transition;
e.style.transition = "none", n(), e.offsetHeight, e.style.transition = r;
}
function oo() {
return typeof window < "u";
}
function sr(e) {
return Ip(e) ? (e.nodeName || "").toLowerCase() : "#document";
}
function it(e) {
var t;
return (e == null || (t = e.ownerDocument) == null ? void 0 : t.defaultView) || window;
}
function Tt(e) {
var t;
return (t = (Ip(e) ? e.ownerDocument : e.document) || window.document) == null ? void 0 : t.documentElement;
}
function Ip(e) {
return oo() ? e instanceof Node || e instanceof it(e).Node : !1;
}
function Xe(e) {
return oo() ? e instanceof Element || e instanceof it(e).Element : !1;
}
function _t(e) {
return oo() ? e instanceof HTMLElement || e instanceof it(e).HTMLElement : !1;
}
function Ou(e) {
return !oo() || typeof ShadowRoot > "u" ? !1 : e instanceof ShadowRoot || e instanceof it(e).ShadowRoot;
}
function Kr(e) {
const {
overflow: t,
overflowX: n,
overflowY: r,
display: a
} = mt(e);
return /auto|scroll|overlay|hidden|clip/.test(t + r + n) && !["inline", "contents"].includes(a);
}
function V0(e) {
return ["table", "td", "th"].includes(sr(e));
}
function io(e) {
return [":popover-open", ":modal"].some((t) => {
try {
return e.matches(t);
} catch {
return !1;
}
});
}
function pl(e) {
const t = ml(), n = Xe(e) ? mt(e) : e;
return ["transform", "translate", "scale", "rotate", "perspective"].some((r) => n[r] ? n[r] !== "none" : !1) || (n.containerType ? n.containerType !== "normal" : !1) || !t && (n.backdropFilter ? n.backdropFilter !== "none" : !1) || !t && (n.filter ? n.filter !== "none" : !1) || ["transform", "translate", "scale", "rotate", "perspective", "filter"].some((r) => (n.willChange || "").includes(r)) || ["paint", "layout", "strict", "content"].some((r) => (n.contain || "").includes(r));
}
function U0(e) {
let t = sn(e);
for (; _t(t) && !rr(t); ) {
if (pl(t))
return t;
if (io(t))
return null;
t = sn(t);
}
return null;
}
function ml() {
return typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter", "none");
}
function rr(e) {
return ["html", "body", "#document"].includes(sr(e));
}
function mt(e) {
return it(e).getComputedStyle(e);
}
function so(e) {
return Xe(e) ? {
scrollLeft: e.scrollLeft,
scrollTop: e.scrollTop
} : {
scrollLeft: e.scrollX,
scrollTop: e.scrollY
};
}
function sn(e) {
if (sr(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.
Ou(e) && e.host || // Fallback.
Tt(e)
);
return Ou(t) ? t.host : t;
}
function jp(e) {
const t = sn(e);
return rr(t) ? e.ownerDocument ? e.ownerDocument.body : e.body : _t(t) && Kr(t) ? t : jp(t);
}
function Lr(e, t, n) {
var r;
t === void 0 && (t = []), n === void 0 && (n = !0);
const a = jp(e), o = a === ((r = e.ownerDocument) == null ? void 0 : r.body), i = it(a);
if (o) {
const s = ss(i);
return t.concat(i, i.visualViewport || [], Kr(a) ? a : [], s && n ? Lr(s) : []);
}
return t.concat(a, Lr(a, [], n));
}
function ss(e) {
return e.parent && Object.getPrototypeOf(e.parent) ? e.frameElement : null;
}
function q0() {
const e = navigator.userAgentData;
return e && Array.isArray(e.brands) ? e.brands.map((t) => {
let {
brand: n,
version: r
} = t;
return n + "/" + r;
}).join(" ") : navigator.userAgent;
}
const _n = Math.min, Ke = Math.max, Dr = Math.round, ya = Math.floor, Ct = (e) => ({
x: e,
y: e
}), K0 = {
left: "right",
right: "left",
bottom: "top",
top: "bottom"
}, X0 = {
start: "end",
end: "start"
};
function Su(e, t, n) {
return Ke(e, _n(t, n));
}
function lr(e, t) {
return typeof e == "function" ? e(t) : e;
}
function ln(e) {
return e.split("-")[0];
}
function Xr(e) {
return e.split("-")[1];
}
function Mp(e) {
return e === "x" ? "y" : "x";
}
function Fp(e) {
return e === "y" ? "height" : "width";
}
function Tn(e) {
return ["top", "bottom"].includes(ln(e)) ? "y" : "x";
}
function Rp(e) {
return Mp(Tn(e));
}
function J0(e, t, n) {
n === void 0 && (n = !1);
const r = Xr(e), a = Rp(e), o = Fp(a);
let i = a === "x" ? r === (n ? "end" : "start") ? "right" : "left" : r === "start" ? "bottom" : "top";
return t.reference[o] > t.floating[o] && (i = Ha(i)), [i, Ha(i)];
}
function Z0(e) {
const t = Ha(e);
return [ls(e), t, ls(t)];
}
function ls(e) {
return e.replace(/start|end/g, (t) => X0[t]);
}
function Q0(e, t, n) {
const r = ["left", "right"], a = ["right", "left"], o = ["top", "bottom"], i = ["bottom", "top"];
switch (e) {
case "top":
case "bottom":
return n ? t ? a : r : t ? r : a;
case "left":
case "right":
return t ? o : i;
default:
return [];
}
}
function e1(e, t, n, r) {
const a = Xr(e);
let o = Q0(ln(e), n === "start", r);
return a && (o = o.map((i) => i + "-" + a), t && (o = o.concat(o.map(ls)))), o;
}
function Ha(e) {
return e.replace(/left|right|bottom|top/g, (t) => K0[t]);
}
function t1(e) {
return {
top: 0,
right: 0,
bottom: 0,
left: 0,
...e
};
}
function n1(e) {
return typeof e != "number" ? t1(e) : {
top: e,
right: e,
bottom: e,
left: e
};
}
function Wa(e) {
const {
x: t,
y: n,
width: r,
height: a
} = e;
return {
width: r,
height: a,
top: n,
left: t,
right: t + r,
bottom: n + a,
x: t,
y: n
};
}
function Au(e, t, n) {
let {
reference: r,
floating: a
} = e;
const o = Tn(t), i = Rp(t), s = Fp(i), l = ln(t), c = o === "y", u = r.x + r.width / 2 - a.width / 2, p = r.y + r.height / 2 - a.height / 2, m = r[s] / 2 - a[s] / 2;
let b;
switch (l) {
case "top":
b = {
x: u,
y: r.y - a.height
};
break;
case "bottom":
b = {
x: u,
y: r.y + r.height
};
break;
case "right":
b = {
x: r.x + r.width,
y: p
};
break;
case "left":
b = {
x: r.x - a.width,
y: p
};
break;
default:
b = {
x: r.x,
y: r.y
};
}
switch (Xr(t)) {
case "start":
b[i] -= m * (n && c ? -1 : 1);
break;
case "end":
b[i] += m * (n && c ? -1 : 1);
break;
}
return b;
}
const r1 = async (e, t, n) => {
const {
placement: r = "bottom",
strategy: a = "absolute",
middleware: o = [],
platform: i
} = n, s = o.filter(Boolean), l = await (i.isRTL == null ? void 0 : i.isRTL(t));
let c = await i.getElementRects({
reference: e,
floating: t,
strategy: a
}), {
x: u,
y: p
} = Au(c, r, l), m = r, b = {}, x = 0;
for (let v = 0; v < s.length; v++) {
const {
name: y,
fn: w
} = s[v], {
x: P,
y: S,
data: _,
reset: h
} = await w({
x: u,
y: p,
initialPlacement: r,
placement: m,
strategy: a,
middlewareData: b,
rects: c,
platform: i,
elements: {
reference: e,
floating: t
}
});
u = P ?? u, p = S ?? p, b = {
...b,
[y]: {
...b[y],
..._
}
}, h && x <= 50 && (x++, typeof h == "object" && (h.placement && (m = h.placement), h.rects && (c = h.rects === !0 ? await i.getElementRects({
reference: e,
floating: t,
strategy: a
}) : h.rects), {
x: u,
y: p
} = Au(c, m, l)), v = -1);
}
return {
x: u,
y: p,
placement: m,
strategy: a,
middlewareData: b
};
};
async function lo(e, t) {
var n;
t === void 0 && (t = {});
const {
x: r,
y: a,
platform: o,
rects: i,
elements: s,
strategy: l
} = e, {
boundary: c = "clippingAncestors",
rootBoundary: u = "viewport",
elementContext: p = "floating",
altBoundary: m = !1,
padding: b = 0
} = lr(t, e), x = n1(b), v = s[m ? p === "floating" ? "reference" : "floating" : p], y = Wa(await o.getClippingRect({
element: (n = await (o.isElement == null ? void 0 : o.isElement(v))) == null || n ? v : v.contextElement || await (o.getDocumentElement == null ? void 0 : o.getDocumentElement(s.floating)),
boundary: c,
rootBoundary: u,
strategy: l
})), w = p === "floating" ? {
x: r,
y: a,
width: i.floating.width,
height: i.floating.height
} : i.reference, P = await (o.getOffsetParent == null ? void 0 : o.getOffsetParent(s.floating)), S = await (o.isElement == null ? void 0 : o.isElement(P)) ? await (o.getScale == null ? void 0 : o.getScale(P)) || {
x: 1,
y: 1
} : {
x: 1,
y: 1
}, _ = Wa(o.convertOffsetParentRelativeRectToViewportRelativeRect ? await o.convertOffsetParentRelativeRectToViewportRelativeRect({
elements: s,
rect: w,
offsetParent: P,
strategy: l
}) : w);
return {
top: (y.top - _.top + x.top) / S.y,
bottom: (_.bottom - y.bottom + x.bottom) / S.y,
left: (y.left - _.left + x.left) / S.x,
right: (_.right - y.right + x.right) / S.x
};
}
const a1 = function(e) {
return e === void 0 && (e = {}), {
name: "flip",
options: e,
async fn(t) {
var n, r;
const {
placement: a,
middlewareData: o,
rects: i,
initialPlacement: s,
platform: l,
elements: c
} = t, {
mainAxis: u = !0,
crossAxis: p = !0,
fallbackPlacements: m,
fallbackStrategy: b = "bestFit",
fallbackAxisSideDirection: x = "none",
flipAlignment: v = !0,
...y
} = lr(e, t);
if ((n = o.arrow) != null && n.alignmentOffset)
return {};
const w = ln(a), P = Tn(s), S = ln(s) === s, _ = await (l.isRTL == null ? void 0 : l.isRTL(c.floating)), h = m || (S || !v ? [Ha(s)] : Z0(s)), G = x !== "none";
!m && G && h.push(...e1(s, v, x, _));
const U = [s, ...h], te = await lo(t, y), X = [];
let Z = ((r = o.flip) == null ? void 0 : r.overflows) || [];
if (u && X.push(te[w]), p) {
const q = J0(a, i, _);
X.push(te[q[0]], te[q[1]]);
}
if (Z = [...Z, {
placement: a,
overflows: X
}], !X.every((q) => q <= 0)) {
var Q, B;
const q = (((Q = o.flip) == null ? void 0 : Q.index) || 0) + 1, J = U[q];
if (J)
return {
data: {
index: q,
overflows: Z
},
reset: {
placement: J
}
};
let Y = (B = Z.filter((M) => M.overflows[0] <= 0).sort((M, K) => M.overflows[1] - K.overflows[1])[0]) == null ? void 0 : B.placement;
if (!Y)
switch (b) {
case "bestFit": {
var oe;
const M = (oe = Z.filter((K) => {
if (G) {
const z = Tn(K.placement);
return z === P || // Create a bias to the `y` side axis due to horizontal
// reading directions favoring greater width.
z === "y";
}
return !0;
}).map((K) => [K.placement, K.overflows.filter((z) => z > 0).reduce((z, g) => z + g, 0)]).sort((K, z) => K[1] - z[1])[0]) == null ? void 0 : oe[0];
M && (Y = M);
break;
}
case "initialPlacement":
Y = s;
break;
}
if (a !== Y)
return {
reset: {
placement: Y
}
};
}
return {};
}
};
};
async function o1(e, t) {
const {
placement: n,
platform: r,
elements: a
} = e, o = await (r.isRTL == null ? void 0 : r.isRTL(a.floating)), i = ln(n), s = Xr(n), l = Tn(n) === "y", c = ["left", "top"].includes(i) ? -1 : 1, u = o && l ? -1 : 1, p = lr(t, e);
let {
mainAxis: m,
crossAxis: b,
alignmentAxis: x
} = typeof p == "number" ? {
mainAxis: p,
crossAxis: 0,
alignmentAxis: null
} : {
mainAxis: p.mainAxis || 0,
crossAxis: p.crossAxis || 0,
alignmentAxis: p.alignmentAxis
};
return s && typeof x == "number" && (b = s === "end" ? x * -1 : x), l ? {
x: b * u,
y: m * c
} : {
x: m * c,
y: b * u
};
}
const i1 = function(e) {
return e === void 0 && (e = 0), {
name: "offset",
options: e,
async fn(t) {
var n, r;
const {
x: a,
y: o,
placement: i,
middlewareData: s
} = t, l = await o1(t, e);
return i === ((n = s.offset) == null ? void 0 : n.placement) && (r = s.arrow) != null && r.alignmentOffset ? {} : {
x: a + l.x,
y: o + l.y,
data: {
...l,
placement: i
}
};
}
};
}, s1 = function(e) {
return e === void 0 && (e = {}), {
name: "shift",
options: e,
async fn(t) {
const {
x: n,
y: r,
placement: a
} = t, {
mainAxis: o = !0,
crossAxis: i = !1,
limiter: s = {
fn: (y) => {
let {
x: w,
y: P
} = y;
return {
x: w,
y: P
};
}
},
...l
} = lr(e, t), c = {
x: n,
y: r
}, u = await lo(t, l), p = Tn(ln(a)), m = Mp(p);
let b = c[m], x = c[p];
if (o) {
const y = m === "y" ? "top" : "left", w = m === "y" ? "bottom" : "right", P = b + u[y], S = b - u[w];
b = Su(P, b, S);
}
if (i) {
const y = p === "y" ? "top" : "left", w = p === "y" ? "bottom" : "right", P = x + u[y], S = x - u[w];
x = Su(P, x, S);
}
const v = s.fn({
...t,
[m]: b,
[p]: x
});
return {
...v,
data: {
x: v.x - n,
y: v.y - r,
enabled: {
[m]: o,
[p]: i
}
}
};
}
};
}, l1 = function(e) {
return e === void 0 && (e = {}), {
name: "size",
options: e,
async fn(t) {
var n, r;
const {
placement: a,
rects: o,
platform: i,
elements: s
} = t, {
apply: l = () => {
},
...c
} = lr(e, t), u = await lo(t, c), p = ln(a), m = Xr(a), b = Tn(a) === "y", {
width: x,
height: v
} = o.floating;
let y, w;
p === "top" || p === "bottom" ? (y = p, w = m === (await (i.isRTL == null ? void 0 : i.isRTL(s.floating)) ? "start" : "end") ? "left" : "right") : (w = p, y = m === "end" ? "top" : "bottom");
const P = v - u.top - u.bottom, S = x - u.left - u.right, _ = _n(v - u[y], P), h = _n(x - u[w], S), G = !t.middlewareData.shift;
let U = _, te = h;
if ((n = t.middlewareData.shift) != null && n.enabled.x && (te = S), (r = t.middlewareData.shift) != null && r.enabled.y && (U = P), G && !m) {
const Z = Ke(u.left, 0), Q = Ke(u.right, 0), B = Ke(u.top, 0), oe = Ke(u.bottom, 0);
b ? te = x - 2 * (Z !== 0 || Q !== 0 ? Z + Q : Ke(u.left, u.right)) : U = v - 2 * (B !== 0 || oe !== 0 ? B + oe : Ke(u.top, u.bottom));
}
await l({
...t,
availableWidth: te,
availableHeight: U
});
const X = await i.getDimensions(s.floating);
return x !== X.width || v !== X.height ? {
reset: {
rects: !0
}
} : {};
}
};
};
function Lp(e) {
const t = mt(e);
let n = parseFloat(t.width) || 0, r = parseFloat(t.height) || 0;
const a = _t(e), o = a ? e.offsetWidth : n, i = a ? e.offsetHeight : r, s = Dr(n) !== o || Dr(r) !== i;
return s && (n = o, r = i), {
width: n,
height: r,
$: s
};
}
function gl(e) {
return Xe(e) ? e : e.contextElement;
}
function Kn(e) {
const t = gl(e);
if (!_t(t))
return Ct(1);
const n = t.getBoundingClientRect(), {
width: r,
height: a,
$: o
} = Lp(t);
let i = (o ? Dr(n.width) : n.width) / r, s = (o ? Dr(n.height) : n.height) / a;
return (!i || !Number.isFinite(i)) && (i = 1), (!s || !Number.isFinite(s)) && (s = 1), {
x: i,
y: s
};
}
const c1 = /* @__PURE__ */ Ct(0);
function Dp(e) {
const t = it(e);
return !ml() || !t.visualViewport ? c1 : {
x: t.visualViewport.offsetLeft,
y: t.visualViewport.offsetTop
};
}
function u1(e, t, n) {
return t === void 0 && (t = !1), !n || t && n !== it(e) ? !1 : t;
}
function Nn(e, t, n, r) {
t === void 0 && (t = !1), n === void 0 && (n = !1);
const a = e.getBoundingClientRect(), o = gl(e);
let i = Ct(1);
t && (r ? Xe(r) && (i = Kn(r)) : i = Kn(e));
const s = u1(o, n, r) ? Dp(o) : Ct(0);
let l = (a.left + s.x) / i.x, c = (a.top + s.y) / i.y, u = a.width / i.x, p = a.height / i.y;
if (o) {
const m = it(o), b = r && Xe(r) ? it(r) : r;
let x = m, v = ss(x);
for (; v && r && b !== x; ) {
const y = Kn(v), w = v.getBoundingClientRect(), P = mt(v), S = w.left + (v.clientLeft + parseFloat(P.paddingLeft)) * y.x, _ = w.top + (v.clientTop + parseFloat(P.paddingTop)) * y.y;
l *= y.x, c *= y.y, u *= y.x, p *= y.y, l += S, c += _, x = it(v), v = ss(x);
}
}
return Wa({
width: u,
height: p,
x: l,
y: c
});
}
function hl(e, t) {
const n = so(e).scrollLeft;
return t ? t.left + n : Nn(Tt(e)).left + n;
}
function zp(e, t, n) {
n === void 0 && (n = !1);
const r = e.getBoundingClientRect(), a = r.left + t.scrollLeft - (n ? 0 : (
// RTL <body> scrollbar.
hl(e, r)
)), o = r.top + t.scrollTop;
return {
x: a,
y: o
};
}
function f1(e) {
let {
elements: t,
rect: n,
offsetParent: r,
strategy: a
} = e;
const o = a === "fixed", i = Tt(r), s = t ? io(t.floating) : !1;
if (r === i || s && o)
return n;
let l = {
scrollLeft: 0,
scrollTop: 0
}, c = Ct(1);
const u = Ct(0), p = _t(r);
if ((p || !p && !o) && ((sr(r) !== "body" || Kr(i)) && (l = so(r)), _t(r))) {
const b = Nn(r);
c = Kn(r), u.x = b.x + r.clientLeft, u.y = b.y + r.clientTop;
}
const m = i && !p && !o ? zp(i, l, !0) : Ct(0);
return {
width: n.width * c.x,
height: n.height * c.y,
x: n.x * c.x - l.scrollLeft * c.x + u.x + m.x,
y: n.y * c.y - l.scrollTop * c.y + u.y + m.y
};
}
function d1(e) {
return Array.from(e.getClientRects());
}
function p1(e) {
const t = Tt(e), n = so(e), r = e.ownerDocument.body, a = Ke(t.scrollWidth, t.clientWidth, r.scrollWidth, r.clientWidth), o = Ke(t.scrollHeight, t.clientHeight, r.scrollHeight, r.clientHeight);
let i = -n.scrollLeft + hl(e);
const s = -n.scrollTop;
return mt(r).direction === "rtl" && (i += Ke(t.clientWidth, r.clientWidth) - a), {
width: a,
height: o,
x: i,
y: s
};
}
function m1(e, t) {
const n = it(e), r = Tt(e), a = n.visualViewport;
let o = r.clientWidth, i = r.clientHeight, s = 0, l = 0;
if (a) {
o = a.width, i = a.height;
const c = ml();
(!c || c && t === "fixed") && (s = a.offsetLeft, l = a.offsetTop);
}
return {
width: o,
height: i,
x: s,
y: l
};
}
function g1(e, t) {
const n = Nn(e, !0, t === "fixed"), r = n.top + e.clientTop, a = n.left + e.clientLeft, o = _t(e) ? Kn(e) : Ct(1), i = e.clientWidth * o.x, s = e.clientHeight * o.y, l = a * o.x, c = r * o.y;
return {
width: i,
height: s,
x: l,
y: c
};
}
function Cu(e, t, n) {
let r;
if (t === "viewport")
r = m1(e, n);
else if (t === "document")
r = p1(Tt(e));
else if (Xe(t))
r = g1(t, n);
else {
const a = Dp(e);
r = {
x: t.x - a.x,
y: t.y - a.y,
width: t.width,
height: t.height
};
}
return Wa(r);
}
function $p(e, t) {
const n = sn(e);
return n === t || !Xe(n) || rr(n) ? !1 : mt(n).position === "fixed" || $p(n, t);
}
function h1(e, t) {
const n = t.get(e);
if (n)
return n;
let r = Lr(e, [], !1).filter((s) => Xe(s) && sr(s) !== "body"), a = null;
const o = mt(e).position === "fixed";
let i = o ? sn(e) : e;
for (; Xe(i) && !rr(i); ) {
const s = mt(i), l = pl(i);
!l && s.position === "fixed" && (a = null), (o ? !l && !a : !l && s.position === "static" && a && ["absolute", "fixed"].includes(a.position) || Kr(i) && !l && $p(e, i)) ? r = r.filter((c) => c !== i) : a = s, i = sn(i);
}
return t.set(e, r), r;
}
function y1(e) {
let {
element: t,
boundary: n,
rootBoundary: r,
strategy: a
} = e;
const o = [...n === "clippingAncestors" ? io(t) ? [] : h1(t, this._c) : [].concat(n), r], i = o[0], s = o.reduce((l, c) => {
const u = Cu(t, c, a);
return l.top = Ke(u.top, l.top), l.right = _n(u.right, l.right), l.bottom = _n(u.bottom, l.bottom), l.left = Ke(u.left, l.left), l;
}, Cu(t, i, a));
return {
width: s.right - s.left,
height: s.bottom - s.top,
x: s.left,
y: s.top
};
}
function b1(e) {
const {
width: t,
height: n
} = Lp(e);
return {
width: t,
height: n
};
}
function v1(e, t, n) {
const r = _t(t), a = Tt(t), o = n === "fixed", i = Nn(e, !0, o, t);
let s = {
scrollLeft: 0,
scrollTop: 0
};
const l = Ct(0);
if (r || !r && !o)
if ((sr(t) !== "body" || Kr(a)) && (s = so(t)), r) {
const m = Nn(t, !0, o, t);
l.x = m.x + t.clientLeft, l.y = m.y + t.clientTop;
} else a && (l.x = hl(a));
const c = a && !r && !o ? zp(a, s) : Ct(0), u = i.left + s.scrollLeft - l.x - c.x, p = i.top + s.scrollTop - l.y - c.y;
return {
x: u,
y: p,
width: i.width,
height: i.height
};
}
function ri(e) {
return mt(e).position === "static";
}
function _u(e, t) {
if (!_t(e) || mt(e).position === "fixed")
return null;
if (t)
return t(e);
let n = e.offsetParent;
return Tt(e) === n && (n = n.ownerDocument.body), n;
}
function Hp(e, t) {
const n = it(e);
if (io(e))
return n;
if (!_t(e)) {
let a = sn(e);
for (; a && !rr(a); ) {
if (Xe(a) && !ri(a))
return a;
a = sn(a);
}
return n;
}
let r = _u(e, t);
for (; r && V0(r) && ri(r); )
r = _u(r, t);
return r && rr(r) && ri(r) && !pl(r) ? n : r || U0(e) || n;
}
const x1 = async function(e) {
const t = this.getOffsetParent || Hp, n = this.getDimensions, r = await n(e.floating);
return {
reference: v1(e.reference, await t(e.floating), e.strategy),
floating: {
x: 0,
y: 0,
width: r.width,
height: r.height
}
};
};
function w1(e) {
return mt(e).direction === "rtl";
}
const E1 = {
convertOffsetParentRelativeRectToViewportRelativeRect: f1,
getDocumentElement: Tt,
getClippingRect: y1,
getOffsetParent: Hp,
getElementRects: x1,
getClientRects: d1,
getDimensions: b1,
getScale: Kn,
isElement: Xe,
isRTL: w1
};
function Wp(e, t) {
return e.x === t.x && e.y === t.y && e.width === t.width && e.height === t.height;
}
function k1(e, t) {
let n = null, r;
const a = Tt(e);
function o() {
var s;
clearTimeout(r), (s = n) == null || s.disconnect(), n = null;
}
function i(s, l) {
s === void 0 && (s = !1), l === void 0 && (l = 1), o();
const c = e.getBoundingClientRect(), {
left: u,
top: p,
width: m,
height: b
} = c;
if (s || t(), !m || !b)
return;
const x = ya(p), v = ya(a.clientWidth - (u + m)), y = ya(a.clientHeight - (p + b)), w = ya(u), P = {
rootMargin: -x + "px " + -v + "px " + -y + "px " + -w + "px",
threshold: Ke(0, _n(1, l)) || 1
};
let S = !0;
function _(h) {
const G = h[0].intersectionRatio;
if (G !== l) {
if (!S)
return i();
G ? i(!1, G) : r = setTimeout(() => {
i(!1, 1e-7);
}, 1e3);
}
G === 1 && !Wp(c, e.getBoundingClientRect()) && i(), S = !1;
}
try {
n = new IntersectionObserver(_, {
...P,
// Handle <iframe>s
root: a.ownerDocument
});
} catch {
n = new IntersectionObserver(_, P);
}
n.observe(e);
}
return i(!0), o;
}
function P1(e, t, n, r) {
r === void 0 && (r = {});
const {
ancestorScroll: a = !0,
ancestorResize: o = !0,
elementResize: i = typeof ResizeObserver == "function",
layoutShift: s = typeof IntersectionObserver == "function",
animationFrame: l = !1
} = r, c = gl(e), u = a || o ? [...c ? Lr(c) : [], ...Lr(t)] : [];
u.forEach((w) => {
a && w.addEventListener("scroll", n, {
passive: !0
}), o && w.addEventListener("resize", n);
});
const p = c && s ? k1(c, n) : null;
let m = -1, b = null;
i && (b = new ResizeObserver((w) => {
let [P] = w;
P && P.target === c && b && (b.unobserve(t), cancelAnimationFrame(m), m = requestAnimationFrame(() => {
var S;
(S = b) == null || S.observe(t);
})), n();
}), c && !l && b.observe(c), b.observe(t));
let x, v = l ? Nn(e) : null;
l && y();
function y() {
const w = Nn(e);
v && !Wp(v, w) && n(), v = w, x = requestAnimationFrame(y);
}
return n(), () => {
var w;
u.forEach((P) => {
a && P.removeEventListener("scroll", n), o && P.removeEventListener("resize", n);
}), p == null || p(), (w = b) == null || w.disconnect(), b = null, l && cancelAnimationFrame(x);
};
}
const ai = lo, O1 = i1, S1 = s1, A1 = a1, C1 = l1, _1 = (e, t, n) => {
const r = /* @__PURE__ */ new Map(), a = {
platform: E1,
...n
}, o = {
...a.platform,
_c: r
};
return r1(e, t, {
...a,
platform: o
});
};
var Aa = typeof document < "u" ? Xs : Le;
function Ba(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 n, r, a;
if (e && t && typeof e == "object") {
if (Array.isArray(e)) {
if (n = e.length, n !== t.length) return !1;
for (r = n; r-- !== 0; )
if (!Ba(e[r], t[r]))
return !1;
return !0;
}
if (a = Object.keys(e), n = a.length, n !== Object.keys(t).length)
return !1;
for (r = n; r-- !== 0; )
if (!{}.hasOwnProperty.call(t, a[r]))
return !1;
for (r = n; r-- !== 0; ) {
const o = a[r];
if (!(o === "_owner" && e.$$typeof) && !Ba(e[o], t[o]))
return !1;
}
return !0;
}
return e !== e && t !== t;
}
function Bp(e) {
return typeof window > "u" ? 1 : (e.ownerDocument.defaultView || window).devicePixelRatio || 1;
}
function Tu(e, t) {
const n = Bp(e);
return Math.round(t * n) / n;
}
function oi(e) {
const t = ie.useRef(e);
return Aa(() => {
t.current = e;
}), t;
}
function T1(e) {
e === void 0 && (e = {});
const {
placement: t = "bottom",
strategy: n = "absolute",
middleware: r = [],
platform: a,
elements: {
reference: o,
floating: i
} = {},
transform: s = !0,
whileElementsMounted: l,
open: c
} = e, [u, p] = ie.useState({
x: 0,
y: 0,
strategy: n,
placement: t,
middlewareData: {},
isPositioned: !1
}), [m, b] = ie.useState(r);
Ba(m, r) || b(r);
const [x, v] = ie.useState(null), [y, w] = ie.useState(null), P = ie.useCallback((K) => {
K !== G.current && (G.current = K, v(K));
}, []), S = ie.useCallback((K) => {
K !== U.current && (U.current = K, w(K));
}, []), _ = o || x, h = i || y, G = ie.useRef(null), U = ie.useRef(null), te = ie.useRef(u), X = l != null, Z = oi(l), Q = oi(a), B = oi(c), oe = ie.useCallback(() => {
if (!G.current || !U.current)
return;
const K = {
placement: t,
strategy: n,
middleware: m
};
Q.current && (K.platform = Q.current), _1(G.current, U.current, K).then((z) => {
const g = {
...z,
// 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: B.current !== !1
};
q.current && !Ba(te.current, g) && (te.current = g, ja.flushSync(() => {
p(g);
}));
});
}, [m, t, n, Q, B]);
Aa(() => {
c === !1 && te.current.isPositioned && (te.current.isPositioned = !1, p((K) => ({
...K,
isPositioned: !1
})));
}, [c]);
const q = ie.useRef(!1);
Aa(() => (q.current = !0, () => {
q.current = !1;
}), []), Aa(() => {
if (_ && (G.current = _), h && (U.current = h), _ && h) {
if (Z.current)
return Z.current(_, h, oe);
oe();
}
}, [_, h, oe, Z, X]);
const J = ie.useMemo(() => ({
reference: G,
floating: U,
setReference: P,
setFloating: S
}), [P, S]), Y = ie.useMemo(() => ({
reference: _,
floating: h
}), [_, h]), M = ie.useMemo(() => {
const K = {
position: n,
left: 0,
top: 0
};
if (!Y.floating)
return K;
const z = Tu(Y.floating, u.x), g = Tu(Y.floating, u.y);
return s ? {
...K,
transform: "translate(" + z + "px, " + g + "px)",
...Bp(Y.floating) >= 1.5 && {
willChange: "transform"
}
} : {
position: n,
left: z,
top: g
};
}, [n, s, Y.floating, u.x, u.y]);
return ie.useMemo(() => ({
...u,
update: oe,
refs: J,
elements: Y,
floatingStyles: M
}), [u, oe, J, Y, M]);
}
const Gp = (e, t) => ({
...O1(e),
options: [e, t]
}), N1 = (e, t) => ({
...S1(e),
options: [e, t]
}), I1 = (e, t) => ({
...A1(e),
options: [e, t]
}), j1 = (e, t) => ({
...C1(e),
options: [e, t]
}), Yp = {
...ie
}, M1 = Yp.useInsertionEffect, F1 = M1 || ((e) => e());
function Vp(e) {
const t = ie.useRef(() => {
if (process.env.NODE_ENV !== "production")
throw new Error("Cannot call an event handler while rendering.");
});
return F1(() => {
t.current = e;
}), ie.useCallback(function() {
for (var n = arguments.length, r = new Array(n), a = 0; a < n; a++)
r[a] = arguments[a];
return t.current == null ? void 0 : t.current(...r);
}, []);
}
var cs = typeof document < "u" ? Xs : Le;
let Nu = !1, R1 = 0;
const Iu = () => (
// Ensure the id is unique with multiple independent versions of Floating UI
// on <React 18
"floating-ui-" + Math.random().toString(36).slice(2, 6) + R1++
);
function L1() {
const [e, t] = ie.useState(() => Nu ? Iu() : void 0);
return cs(() => {
e == null && t(Iu());
}, []), ie.useEffect(() => {
Nu = !0;
}, []), e;
}
const D1 = Yp.useId, z1 = D1 || L1;
let zr;
process.env.NODE_ENV !== "production" && (zr = /* @__PURE__ */ new Set());
function $1() {
for (var e, t = arguments.length, n = new Array(t), r = 0; r < t; r++)
n[r] = arguments[r];
const a = "Floating UI: " + n.join(" ");
if (!((e = zr) != null && e.has(a))) {
var o;
(o = zr) == null || o.add(a), console.warn(a);
}
}
function H1() {
for (var e, t = arguments.length, n = new Array(t), r = 0; r < t; r++)
n[r] = arguments[r];
const a = "Floating UI: " + n.join(" ");
if (!((e = zr) != null && e.has(a))) {
var o;
(o = zr) == null || o.add(a), console.error(a);
}
}
function W1() {
const e = /* @__PURE__ */ new Map();
return {
emit(t, n) {
var r;
(r = e.get(t)) == null || r.forEach((a) => a(n));
},
on(t, n) {
e.set(t, [...e.get(t) || [], n]);
},
off(t, n) {
var r;
e.set(t, ((r = e.get(t)) == null ? void 0 : r.filter((a) => a !== n)) || []);
}
};
}
const B1 = /* @__PURE__ */ ie.createContext(null), G1 = /* @__PURE__ */ ie.createContext(null), Y1 = () => {
var e;
return ((e = ie.useContext(B1)) == null ? void 0 : e.id) || null;
}, V1 = () => ie.useContext(G1), U1 = "data-floating-ui-focusable";
function q1(e) {
const {
open: t = !1,
onOpenChange: n,
elements: r
} = e, a = z1(), o = ie.useRef({}), [i] = ie.useState(() => W1()), s = Y1() != null;
if (process.env.NODE_ENV !== "production") {
const b = r.reference;
b && !Xe(b) && H1("Cannot pass a virtual element to the `elements.reference` option,", "as it must be a real DOM element. Use `refs.setPositionReference()`", "instead.");
}
const [l, c] = ie.useState(r.reference), u = Vp((b, x, v) => {
o.current.openEvent = b ? x : void 0, i.emit("openchange", {
open: b,
event: x,
reason: v,
nested: s
}), n == null || n(b, x, v);
}), p = ie.useMemo(() => ({
setPositionReference: c
}), []), m = ie.useMemo(() => ({
reference: l || r.reference || null,
floating: r.floating || null,
domReference: r.reference
}), [l, r.reference, r.floating]);
return ie.useMemo(() => ({
dataRef: o,
open: t,
onOpenChange: u,
elements: m,
events: i,
floatingId: a,
refs: p
}), [t, u, m, i, a, p]);
}
function K1(e) {
e === void 0 && (e = {});
const {
nodeId: t
} = e, n = q1({
...e,
elements: {
reference: null,
floating: null,
...e.elements
}
}), r = e.rootContext || n, a = r.elements, [o, i] = ie.useState(null), [s, l] = ie.useState(null), c = (a == null ? void 0 : a.domReference) || o, u = ie.useRef(null), p = V1();
cs(() => {
c && (u.current = c);
}, [c]);
const m = T1({
...e,
elements: {
...a,
...s && {
reference: s
}
}
}), b = ie.useCallback((P) => {
const S = Xe(P) ? {
getBoundingClientRect: () => P.getBoundingClientRect(),
contextElement: P
} : P;
l(S), m.refs.setReference(S);
}, [m.refs]), x = ie.useCallback((P) => {
(Xe(P) || P === null) && (u.current = P, i(P)), (Xe(m.refs.reference.current) || m.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.
P !== null && !Xe(P)) && m.refs.setReference(P);
}, [m.refs]), v = ie.useMemo(() => ({
...m.refs,
setReference: x,
setPositionReference: b,
domReference: u
}), [m.refs, x, b]), y = ie.useMemo(() => ({
...m.elements,
domReference: c
}), [m.elements, c]), w = ie.useMemo(() => ({
...m,
...r,
refs: v,
elements: y,
nodeId: t
}), [m, v, y, t, r]);
return cs(() => {
r.dataRef.current.floatingContext = w;
const P = p == null ? void 0 : p.nodesRef.current.find((S) => S.id === t);
P && (P.context = w);
}), ie.useMemo(() => ({
...m,
context: w,
refs: v,
elements: y
}), [m, v, y, w]);
}
const ju = "active", Mu = "selected";
function ii(e, t, n) {
const r = /* @__PURE__ */ new Map(), a = n === "item";
let o = e;
if (a && e) {
const {
[ju]: i,
[Mu]: s,
...l
} = e;
o = l;
}
return {
...n === "floating" && {
tabIndex: -1,
[U1]: ""
},
...o,
...t.map((i) => {
const s = i ? i[n] : null;
return typeof s == "function" ? e ? s(e) : null : s;
}).concat(e).reduce((i, s) => (s && Object.entries(s).forEach((l) => {
let [c, u] = l;
if (!(a && [ju, Mu].includes(c)))
if (c.indexOf("on") === 0) {
if (r.has(c) || r.set(c, []), typeof u == "function") {
var p;
(p = r.get(c)) == null || p.push(u), i[c] = function() {
for (var m, b = arguments.length, x = new Array(b), v = 0; v < b; v++)
x[v] = arguments[v];
return (m = r.get(c)) == null ? void 0 : m.map((y) => y(...x)).find((y) => y !== void 0);
};
}
} else
i[c] = u;
}), i), {})
};
}
function X1(e) {
e === void 0 && (e = []);
const t = e.map((s) => s == null ? void 0 : s.reference), n = e.map((s) => s == null ? void 0 : s.floating), r = e.map((s) => s == null ? void 0 : s.item), a = ie.useCallback(
(s) => ii(s, e, "reference"),
// eslint-disable-next-line react-hooks/exhaustive-deps
t
), o = ie.useCallback(
(s) => ii(s, e, "floating"),
// eslint-disable-next-line react-hooks/exhaustive-deps
n
), i = ie.useCallback(
(s) => ii(s, e, "item"),
// eslint-disable-next-line react-hooks/exhaustive-deps
r
);
return ie.useMemo(() => ({
getReferenceProps: a,
getFloatingProps: o,
getItemProps: i
}), [a, o, i]);
}
function Fu(e, t) {
return {
...e,
rects: {
...e.rects,
floating: {
...e.rects.floating,
height: t
}
}
};
}
const J1 = (e) => ({
name: "inner",
options: e,
async fn(t) {
const {
listRef: n,
overflowRef: r,
onFallbackChange: a,
offset: o = 0,
index: i = 0,
minItemsVisible: s = 4,
referenceOverflowThreshold: l = 0,
scrollRef: c,
...u
} = lr(e, t), {
rects: p,
elements: {
floating: m
}
} = t, b = n.current[i], x = (c == null ? void 0 : c.current) || m, v = m.clientTop || x.clientTop, y = m.clientTop !== 0, w = x.clientTop !== 0, P = m === x;
if (process.env.NODE_ENV !== "production" && (t.placement.startsWith("bottom") || $1('`placement` side must be "bottom" when using the `inner`', "middleware.")), !b)
return {};
const S = {
...t,
...await Gp(-b.offsetTop - m.clientTop - p.reference.height / 2 - b.offsetHeight / 2 - o).fn(t)
}, _ = await ai(Fu(S, x.scrollHeight + v + m.clientTop), u), h = await ai(S, {
...u,
elementContext: "reference"
}), G = Ke(0, _.top), U = S.y + G, te = (x.scrollHeight > x.clientHeight ? (X) => X : Dr)(Ke(0, x.scrollHeight + (y && P || w ? v * 2 : 0) - G - Ke(0, _.bottom)));
if (x.style.maxHeight = te + "px", x.scrollTop = G, a) {
const X = x.offsetHeight < b.offsetHeight * _n(s, n.current.length) - 1 || h.top >= -l || h.bottom >= -l;
ja.flushSync(() => a(X));
}
return r && (r.current = await ai(Fu({
...S,
y: U
}, x.offsetHeight + v + m.clientTop), u)), {
y: U
};
}
});
function Z1(e, t) {
const {
open: n,
elements: r
} = e, {
enabled: a = !0,
overflowRef: o,
scrollRef: i,
onChange: s
} = t, l = Vp(s), c = ie.useRef(!1), u = ie.useRef(null), p = ie.useRef(null);
ie.useEffect(() => {
if (!a) return;
function b(v) {
if (v.ctrlKey || !x || o.current == null)
return;
const y = v.deltaY, w = o.current.top >= -0.5, P = o.current.bottom >= -0.5, S = x.scrollHeight - x.clientHeight, _ = y < 0 ? -1 : 1, h = y < 0 ? "max" : "min";
x.scrollHeight <= x.clientHeight || (!w && y > 0 || !P && y < 0 ? (v.preventDefault(), ja.flushSync(() => {
l((G) => G + Math[h](y, S * _));
})) : /firefox/i.test(q0()) && (x.scrollTop += y));
}
const x = (i == null ? void 0 : i.current) || r.floating;
if (n && x)
return x.addEventListener("wheel", b), requestAnimationFrame(() => {
u.current = x.scrollTop, o.current != null && (p.current = {
...o.current
});
}), () => {
u.current = null, p.current = null, x.removeEventListener("wheel", b);
};
}, [a, n, r.floating, o, i, l]);
const m = ie.useMemo(() => ({
onKeyDown() {
c.current = !0;
},
onWheel() {
c.current = !1;
},
onPointerMove() {
c.current = !1;
},
onScroll() {
const b = (i == null ? void 0 : i.current) || r.floating;
if (!(!o.current || !b || !c.current)) {
if (u.current !== null) {
const x = b.scrollTop - u.current;
(o.current.bottom < -0.5 && x < -1 || o.current.top < -0.5 && x > 1) && ja.flushSync(() => l((v) => v + x));
}
requestAnimationFrame(() => {
u.current = b.scrollTop;
});
}
}
}), [r.floating, l, o, i]);
return ie.useMemo(() => a ? {
floating: m
} : {}, [a, m]);
}
let Jr = at({ styles: void 0, setReference: () => {
}, setFloating: () => {
}, getReferenceProps: () => ({}), getFloatingProps: () => ({}), slot: {} });
Jr.displayName = "FloatingContext";
let yl = at(null);
yl.displayName = "PlacementContext";
function Q1(e) {
return ze(() => e ? typeof e == "string" ? { to: e } : e : null, [e]);
}
function ex() {
return Ue(Jr).setReference;
}
function tx() {
let { getFloatingProps: e, slot: t } = Ue(Jr);
return Be((...n) => Object.assign({}, e(...n), { "data-anchor": t.anchor }), [e, t]);
}
function nx(e = null) {
e === !1 && (e = null), typeof e == "string" && (e = { to: e });
let t = Ue(yl), n = ze(() => e, [JSON.stringify(e, (a, o) => {
var i;
return (i = o == null ? void 0 : o.outerHTML) != null ? i : o;
})]);
Ye(() => {
t == null || t(n ?? null);
}, [t, n]);
let r = Ue(Jr);
return ze(() => [r.setFloating, e ? r.styles : {}], [r.setFloating, e, r.styles]);
}
let Ru = 4;
function rx({ children: e, enabled: t = !0 }) {
let [n, r] = $e(null), [a, o] = $e(0), i = xe(null), [s, l] = $e(null);
ax(s);
let c = t && n !== null && s !== null, { to: u = "bottom", gap: p = 0, offset: m = 0, padding: b = 0, inner: x } = ox(n, s), [v, y = "center"] = u.split(" ");
Ye(() => {
c && o(0);
}, [c]);
let { refs: w, floatingStyles: P, context: S } = K1({ open: c, placement: v === "selection" ? y === "center" ? "bottom" : `bottom-${y}` : y === "center" ? `${v}` : `${v}-${y}`, strategy: "absolute", transform: !1, middleware: [Gp({ mainAxis: v === "selection" ? 0 : p, crossAxis: m }), N1({ padding: b }), v !== "selection" && I1({ padding: b }), v === "selection" && x ? J1({ ...x, padding: b, overflowRef: i, offset: a, minItemsVisible: Ru, referenceOverflowThreshold: b, onFallbackChange(Q) {
var B, oe;
if (!Q) return;
let q = S.elements.floating;
if (!q) return;
let J = parseFloat(getComputedStyle(q).scrollPaddingBottom) || 0, Y = Math.min(Ru, q.childElementCount), M = 0, K = 0;
for (let z of (oe = (B = S.elements.floating) == null ? void 0 : B.childNodes) != null ? oe : []) if (z instanceof HTMLElement) {
let g = z.offsetTop, d = g + z.clientHeight + J, E = q.scrollTop, A = E + q.clientHeight;
if (g >= E && d <= A) Y--;
else {
K = Math.max(0, Math.min(d, A) - Math.max(g, E)), M = z.clientHeight;
break;
}
}
Y >= 1 && o((z) => {
let g = M * Y - K + J;
return z >= g ? z : g;
});
} }) : null, j1({ padding: b, apply({ availableWidth: Q, availableHeight: B, elements: oe }) {
Object.assign(oe.floating.style, { overflow: "auto", maxWidth: `${Q}px`, maxHeight: `min(var(--anchor-max-height, 100vh), ${B}px)` });
} })].filter(Boolean), whileElementsMounted: P1 }), [_ = v, h = y] = S.placement.split("-");
v === "selection" && (_ = "selection");
let G = ze(() => ({ anchor: [_, h].filter(Boolean).join(" ") }), [_, h]), U = Z1(S, { overflowRef: i, onChange: o }), { getReferenceProps: te, getFloatingProps: X } = X1([U]), Z = ve((Q) => {
l(Q), w.setFloating(Q);
});
return ie.createElement(yl.Provider, { value: r }, ie.createElement(Jr.Provider, { value: { setFloating: Z, setReference: w.setReference, styles: P, getReferenceProps: te, getFloatingProps: X, slot: G } }, e));
}
function ax(e) {
Ye(() => {
if (!e) return;
let t = new MutationObserver(() => {
let n = window.getComputedStyle(e).maxHeight, r = parseFloat(n);
if (isNaN(r)) return;
let a = parseInt(n);
isNaN(a) || r !== a && (e.style.maxHeight = `${Math.ceil(r)}px`);
});
return t.observe(e, { attributes: !0, attributeFilter: ["style"] }), () => {
t.disconnect();
};
}, [e]);
}
function ox(e, t) {
var n, r, a;
let o = si((n = e == null ? void 0 : e.gap) != null ? n : "var(--anchor-gap, 0)", t), i = si((r = e == null ? void 0 : e.offset) != null ? r : "var(--anchor-offset, 0)", t), s = si((a = e == null ? void 0 : e.padding) != null ? a : "var(--anchor-padding, 0)", t);
return { ...e, gap: o, offset: i, padding: s };
}
function si(e, t, n = void 0) {
let r = ro(), a = ve((l, c) => {
if (l == null) return [n, null];
if (typeof l == "number") return [l, null];
if (typeof l == "string") {
if (!c) return [n, null];
let u = Lu(l, c);
return [u, (p) => {
let m = Up(l);
{
let b = m.map((x) => window.getComputedStyle(c).getPropertyValue(x));
r.requestAnimationFrame(function x() {
r.nextFrame(x);
let v = !1;
for (let [w, P] of m.entries()) {
let S = window.getComputedStyle(c).getPropertyValue(P);
if (b[w] !== S) {
b[w] = S, v = !0;
break;
}
}
if (!v) return;
let y = Lu(l, c);
u !== y && (p(y), u = y);
});
}
return r.dispose;
}];
}
return [n, null];
}), o = ze(() => a(e, t)[0], [e, t]), [i = o, s] = $e();
return Ye(() => {
let [l, c] = a(e, t);
if (s(l), !!c) return c(s);
}, [e, t]), i;
}
function Up(e) {
let t = /var\((.*)\)/.exec(e);
if (t) {
let n = t[1].indexOf(",");
if (n === -1) return [t[1]];
let r = t[1].slice(0, n).trim(), a = t[1].slice(n + 1).trim();
return a ? [r, ...Up(a)] : [r];
}
return [];
}
function Lu(e, t) {
let n = document.createElement("div");
t.appendChild(n), n.style.setProperty("margin-top", "0px", "important"), n.style.setProperty("margin-top", e, "important");
let r = parseFloat(window.getComputedStyle(n).marginTop) || 0;
return t.removeChild(n), r;
}
let co = at(null);
co.displayName = "OpenClosedContext";
var ot = ((e) => (e[e.Open = 1] = "Open", e[e.Closed = 2] = "Closed", e[e.Closing = 4] = "Closing", e[e.Opening = 8] = "Opening", e))(ot || {});
function uo() {
return Ue(co);
}
function qp({ value: e, children: t }) {
return ue.createElement(co.Provider, { value: e }, t);
}
function ix({ children: e }) {
return ue.createElement(co.Provider, { value: null }, e);
}
function sx(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
function lx(e) {
let t = ve(e), n = xe(!1);
Le(() => (n.current = !1, () => {
n.current = !0, xp(() => {
n.current && t();
});
}), [t]);
}
function cx() {
let e = typeof document > "u";
return "useSyncExternalStore" in ie ? ((t) => t.useSyncExternalStore)(ie)(() => () => {
}, () => !1, () => !e) : !1;
}
function bl() {
let e = cx(), [t, n] = ie.useState(On.isHandoffComplete);
return t && On.isHandoffComplete === !1 && n(!1), ie.useEffect(() => {
t !== !0 && n(!0);
}, [t]), ie.useEffect(() => On.handoff(), []), e ? !1 : t;
}
let ux = at(!1);
function fx() {
return Ue(ux);
}
function dx(e) {
let t = fx(), n = Ue(Xp), [r, a] = $e(() => {
var o;
if (!t && n !== null) return (o = n.current) != null ? o : null;
if (On.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 Le(() => {
r !== null && (e != null && e.body.contains(r) || e == null || e.body.appendChild(r));
}, [r, e]), Le(() => {
t || n !== null && a(n.current);
}, [n, a, t]), r;
}
let Kp = Rt, px = lt(function(e, t) {
let { ownerDocument: n = null, ...r } = e, a = xe(null), o = pt(Op((b) => {
a.current = b;
}), t), i = nr(a), s = n ?? i, l = dx(s), [c] = $e(() => {
var b;
return On.isServer ? null : (b = s == null ? void 0 : s.createElement("div")) != null ? b : null;
}), u = Ue(us), p = bl();
Ye(() => {
!l || !c || l.contains(c) || (c.setAttribute("data-headlessui-portal", ""), l.appendChild(c));
}, [l, c]), Ye(() => {
if (c && u) return u.register(c);
}, [u, c]), lx(() => {
var b;
!l || !c || (c instanceof Node && l.contains(c) && l.removeChild(c), l.childNodes.length <= 0 && ((b = l.parentElement) == null || b.removeChild(l)));
});
let m = gt();
return p ? !l || !c ? null : Jh(m({ ourProps: { ref: o }, theirProps: r, slot: {}, defaultTag: Kp, name: "Portal" }), c) : null;
});
function mx(e, t) {
let n = pt(t), { enabled: r = !0, ownerDocument: a, ...o } = e, i = gt();
return r ? ue.createElement(px, { ...o, ownerDocument: a, ref: n }) : i({ ourProps: { ref: n }, theirProps: o, slot: {}, defaultTag: Kp, name: "Portal" });
}
let gx = Rt, Xp = at(null);
function hx(e, t) {
let { target: n, ...r } = e, a = { ref: pt(t) }, o = gt();
return ue.createElement(Xp.Provider, { value: n }, o({ ourProps: a, theirProps: r, defaultTag: gx, name: "Popover.Group" }));
}
let us = at(null);
function yx() {
let e = Ue(us), t = xe([]), n = ve((o) => (t.current.push(o), e && e.register(o), () => r(o))), r = ve((o) => {
let i = t.current.indexOf(o);
i !== -1 && t.current.splice(i, 1), e && e.unregister(o);
}), a = ze(() => ({ register: n, unregister: r, portals: t }), [n, r, t]);
return [t, ze(() => function({ children: o }) {
return ue.createElement(us.Provider, { value: a }, o);
}, [a])];
}
let bx = lt(mx), vx = lt(hx), xx = Object.assign(bx, { Group: vx });
function wx({ defaultContainers: e = [], portals: t, mainTreeNode: n } = {}) {
let r = nr(n), a = ve(() => {
var o, i;
let s = [];
for (let l of e) l !== null && (l instanceof HTMLElement ? s.push(l) : "current" in l && l.current instanceof HTMLElement && s.push(l.current));
if (t != null && t.current) for (let l of t.current) s.push(l);
for (let l of (o = r == null ? void 0 : r.querySelectorAll("html > *, body > *")) != null ? o : []) l !== document.body && l !== document.head && l instanceof HTMLElement && l.id !== "headlessui-portal-root" && (n && (l.contains(n) || l.contains((i = n == null ? void 0 : n.getRootNode()) == null ? void 0 : i.host)) || s.some((c) => l.contains(c)) || s.push(l));
return s;
});
return { resolveContainers: a, contains: ve((o) => a().some((i) => i.contains(o))) };
}
let Jp = at(null);
function Zp({ children: e, node: t }) {
let [n, r] = $e(null), a = Qp(t ?? n);
return ue.createElement(Jp.Provider, { value: a }, e, a === null && ue.createElement(za, { features: Rr.Hidden, ref: (o) => {
var i, s;
if (o) {
for (let l of (s = (i = qr(o)) == null ? void 0 : i.querySelectorAll("html > *, body > *")) != null ? s : []) if (l !== document.body && l !== document.head && l instanceof HTMLElement && l != null && l.contains(o)) {
r(l);
break;
}
}
} }));
}
function Qp(e = null) {
var t;
return (t = Ue(Jp)) != null ? t : e;
}
function Ex() {
let e = xe(!1);
return Ye(() => (e.current = !0, () => {
e.current = !1;
}), []), e;
}
var Ft = ((e) => (e[e.Forwards = 0] = "Forwards", e[e.Backwards = 1] = "Backwards", e))(Ft || {});
function em() {
let e = xe(0);
return Np(!0, "keydown", (t) => {
t.key === "Tab" && (e.current = t.shiftKey ? 1 : 0);
}, !0), e;
}
function tm(e) {
var t;
return !!(e.enter || e.enterFrom || e.enterTo || e.leave || e.leaveFrom || e.leaveTo) || ((t = e.as) != null ? t : rm) !== Rt || ue.Children.count(e.children) === 1;
}
let fo = at(null);
fo.displayName = "TransitionContext";
var kx = ((e) => (e.Visible = "visible", e.Hidden = "hidden", e))(kx || {});
function Px() {
let e = Ue(fo);
if (e === null) throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");
return e;
}
function Ox() {
let e = Ue(po);
if (e === null) throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");
return e;
}
let po = at(null);
po.displayName = "NestingContext";
function mo(e) {
return "children" in e ? mo(e.children) : e.current.filter(({ el: t }) => t.current !== null).filter(({ state: t }) => t === "visible").length > 0;
}
function nm(e, t) {
let n = zt(e), r = xe([]), a = Ex(), o = ro(), i = ve((b, x = nn.Hidden) => {
let v = r.current.findIndex(({ el: y }) => y === b);
v !== -1 && (dt(x, { [nn.Unmount]() {
r.current.splice(v, 1);
}, [nn.Hidden]() {
r.current[v].state = "hidden";
} }), o.microTask(() => {
var y;
!mo(r) && a.current && ((y = n.current) == null || y.call(n));
}));
}), s = ve((b) => {
let x = r.current.find(({ el: v }) => v === b);
return x ? x.state !== "visible" && (x.state = "visible") : r.current.push({ el: b, state: "visible" }), () => i(b, nn.Unmount);
}), l = xe([]), c = xe(Promise.resolve()), u = xe({ enter: [], leave: [] }), p = ve((b, x, v) => {
l.current.splice(0), t && (t.chains.current[x] = t.chains.current[x].filter(([y]) => y !== b)), t == null || t.chains.current[x].push([b, new Promise((y) => {
l.current.push(y);
})]), t == null || t.chains.current[x].push([b, new Promise((y) => {
Promise.all(u.current[x].map(([w, P]) => P)).then(() => y());
})]), x === "enter" ? c.current = c.current.then(() => t == null ? void 0 : t.wait.current).then(() => v(x)) : v(x);
}), m = ve((b, x, v) => {
Promise.all(u.current[x].splice(0).map(([y, w]) => w)).then(() => {
var y;
(y = l.current.shift()) == null || y();
}).then(() => v(x));
});
return ze(() => ({ children: r, register: s, unregister: i, onStart: p, onStop: m, wait: c, chains: u }), [s, i, r, p, m, u, c]);
}
let rm = Rt, am = tr.RenderStrategy;
function Sx(e, t) {
var n, r;
let { transition: a = !0, beforeEnter: o, afterEnter: i, beforeLeave: s, afterLeave: l, enter: c, enterFrom: u, enterTo: p, entered: m, leave: b, leaveFrom: x, leaveTo: v, ...y } = e, [w, P] = $e(null), S = xe(null), _ = tm(e), h = pt(..._ ? [S, t, P] : t === null ? [] : [t]), G = (n = y.unmount) == null || n ? nn.Unmount : nn.Hidden, { show: U, appear: te, initial: X } = Px(), [Z, Q] = $e(U ? "visible" : "hidden"), B = Ox(), { register: oe, unregister: q } = B;
Ye(() => oe(S), [oe, S]), Ye(() => {
if (G === nn.Hidden && S.current) {
if (U && Z !== "visible") {
Q("visible");
return;
}
return dt(Z, { hidden: () => q(S), visible: () => oe(S) });
}
}, [Z, S, oe, q, U, G]);
let J = bl();
Ye(() => {
if (_ && J && Z === "visible" && S.current === null) throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?");
}, [S, Z, J, _]);
let Y = X && !te, M = te && U && X, K = xe(!1), z = nm(() => {
K.current || (Q("hidden"), q(S));
}, B), g = ve((N) => {
K.current = !0;
let F = N ? "enter" : "leave";
z.onStart(S, F, (L) => {
L === "enter" ? o == null || o() : L === "leave" && (s == null || s());
});
}), d = ve((N) => {
let F = N ? "enter" : "leave";
K.current = !1, z.onStop(S, F, (L) => {
L === "enter" ? i == null || i() : L === "leave" && (l == null || l());
}), F === "leave" && !mo(z) && (Q("hidden"), q(S));
});
Le(() => {
_ && a || (g(U), d(U));
}, [U, _, a]);
let E = !(!a || !_ || !J || Y), [, A] = dl(E, w, U, { start: g, end: d }), C = bn({ ref: h, className: ((r = os(y.className, M && c, M && u, A.enter && c, A.enter && A.closed && u, A.enter && !A.closed && p, A.leave && b, A.leave && !A.closed && x, A.leave && A.closed && v, !A.transition && U && m)) == null ? void 0 : r.trim()) || void 0, ...fl(A) }), T = 0;
Z === "visible" && (T |= ot.Open), Z === "hidden" && (T |= ot.Closed), U && Z === "hidden" && (T |= ot.Opening), !U && Z === "visible" && (T |= ot.Closing);
let I = gt();
return ue.createElement(po.Provider, { value: z }, ue.createElement(qp, { value: T }, I({ ourProps: C, theirProps: y, defaultTag: rm, features: am, visible: Z === "visible", name: "Transition.Child" })));
}
function Ax(e, t) {
let { show: n, appear: r = !1, unmount: a = !0, ...o } = e, i = xe(null), s = tm(e), l = pt(...s ? [i, t] : t === null ? [] : [t]);
bl();
let c = uo();
if (n === void 0 && c !== null && (n = (c & ot.Open) === ot.Open), n === void 0) throw new Error("A <Transition /> is used but it is missing a `show={true | false}` prop.");
let [u, p] = $e(n ? "visible" : "hidden"), m = nm(() => {
n || p("hidden");
}), [b, x] = $e(!0), v = xe([n]);
Ye(() => {
b !== !1 && v.current[v.current.length - 1] !== n && (v.current.push(n), x(!1));
}, [v, n]);
let y = ze(() => ({ show: n, appear: r, initial: b }), [n, r, b]);
Ye(() => {
n ? p("visible") : !mo(m) && i.current !== null && p("hidden");
}, [n, m]);
let w = { unmount: a }, P = ve(() => {
var h;
b && x(!1), (h = e.beforeEnter) == null || h.call(e);
}), S = ve(() => {
var h;
b && x(!1), (h = e.beforeLeave) == null || h.call(e);
}), _ = gt();
return ue.createElement(po.Provider, { value: m }, ue.createElement(fo.Provider, { value: y }, _({ ourProps: { ...w, as: Rt, children: ue.createElement(om, { ref: l, ...w, ...o, beforeEnter: P, beforeLeave: S }) }, theirProps: {}, defaultTag: Rt, features: am, visible: u === "visible", name: "Transition" })));
}
function Cx(e, t) {
let n = Ue(fo) !== null, r = uo() !== null;
return ue.createElement(ue.Fragment, null, !n && r ? ue.createElement(fs, { ref: t, ...e }) : ue.createElement(om, { ref: t, ...e }));
}
let fs = lt(Ax), om = lt(Sx), _x = lt(Cx), Tx = Object.assign(fs, { Child: _x, Root: fs });
var Nx = ((e) => (e[e.Open = 0] = "Open", e[e.Closed = 1] = "Closed", e))(Nx || {}), Ix = ((e) => (e[e.TogglePopover = 0] = "TogglePopover", e[e.ClosePopover = 1] = "ClosePopover", e[e.SetButton = 2] = "SetButton", e[e.SetButtonId = 3] = "SetButtonId", e[e.SetPanel = 4] = "SetPanel", e[e.SetPanelId = 5] = "SetPanelId", e))(Ix || {});
let jx = { 0: (e) => ({ ...e, popoverState: dt(e.popoverState, { 0: 1, 1: 0 }), __demoMode: !1 }), 1(e) {
return e.popoverState === 1 ? e : { ...e, popoverState: 1, __demoMode: !1 };
}, 2(e, t) {
return e.button === t.button ? e : { ...e, button: t.button };
}, 3(e, t) {
return e.buttonId === t.buttonId ? e : { ...e, buttonId: t.buttonId };
}, 4(e, t) {
return e.panel === t.panel ? e : { ...e, panel: t.panel };
}, 5(e, t) {
return e.panelId === t.panelId ? e : { ...e, panelId: t.panelId };
} }, vl = at(null);
vl.displayName = "PopoverContext";
function go(e) {
let t = Ue(vl);
if (t === null) {
let n = new Error(`<${e} /> is missing a parent <Popover /> component.`);
throw Error.captureStackTrace && Error.captureStackTrace(n, go), n;
}
return t;
}
let ho = at(null);
ho.displayName = "PopoverAPIContext";
function xl(e) {
let t = Ue(ho);
if (t === null) {
let n = new Error(`<${e} /> is missing a parent <Popover /> component.`);
throw Error.captureStackTrace && Error.captureStackTrace(n, xl), n;
}
return t;
}
let wl = at(null);
wl.displayName = "PopoverGroupContext";
function im() {
return Ue(wl);
}
let yo = at(null);
yo.displayName = "PopoverPanelContext";
function Mx() {
return Ue(yo);
}
function Fx(e, t) {
return dt(t.type, jx, e, t);
}
let Rx = "div";
function Lx(e, t) {
var n;
let { __demoMode: r = !1, ...a } = e, o = xe(null), i = pt(t, Op((z) => {
o.current = z;
})), s = xe([]), l = xd(Fx, { __demoMode: r, popoverState: r ? 0 : 1, buttons: s, button: null, buttonId: null, panel: null, panelId: null, beforePanelSentinel: $o(), afterPanelSentinel: $o(), afterButtonSentinel: $o() }), [{ popoverState: c, button: u, buttonId: p, panel: m, panelId: b, beforePanelSentinel: x, afterPanelSentinel: v, afterButtonSentinel: y }, w] = l, P = nr((n = o.current) != null ? n : u), S = ze(() => {
if (!u || !m) return !1;
for (let T of document.querySelectorAll("body > *")) if (Number(T == null ? void 0 : T.contains(u)) ^ Number(T == null ? void 0 : T.contains(m))) return !0;
let z = ao(), g = z.indexOf(u), d = (g + z.length - 1) % z.length, E = (g + 1) % z.length, A = z[d], C = z[E];
return !m.contains(A) && !m.contains(C);
}, [u, m]), _ = zt(p), h = zt(b), G = ze(() => ({ buttonId: _, panelId: h, close: () => w({ type: 1 }) }), [_, h, w]), U = im(), te = U == null ? void 0 : U.registerPopover, X = ve(() => {
var z;
return (z = U == null ? void 0 : U.isFocusWithinPopoverGroup()) != null ? z : (P == null ? void 0 : P.activeElement) && ((u == null ? void 0 : u.contains(P.activeElement)) || (m == null ? void 0 : m.contains(P.activeElement)));
});
Le(() => te == null ? void 0 : te(G), [te, G]);
let [Z, Q] = yx(), B = Qp(u), oe = wx({ mainTreeNode: B, portals: Z, defaultContainers: [u, m] });
j0(P == null ? void 0 : P.defaultView, "focus", (z) => {
var g, d, E, A, C, T;
z.target !== window && z.target instanceof HTMLElement && c === 0 && (X() || u && m && (oe.contains(z.target) || (d = (g = x.current) == null ? void 0 : g.contains) != null && d.call(g, z.target) || (A = (E = v.current) == null ? void 0 : E.contains) != null && A.call(E, z.target) || (T = (C = y.current) == null ? void 0 : C.contains) != null && T.call(C, z.target) || w({ type: 1 })));
}, !0), I0(c === 0, oe.resolveContainers, (z, g) => {
w({ type: 1 }), _p(g, ul.Loose) || (z.preventDefault(), u == null || u.focus());
});
let q = ve((z) => {
w({ type: 1 });
let g = z ? z instanceof HTMLElement ? z : "current" in z && z.current instanceof HTMLElement ? z.current : u : u;
g == null || g.focus();
}), J = ze(() => ({ close: q, isPortalled: S }), [q, S]), Y = ze(() => ({ open: c === 0, close: q }), [c, q]), M = { ref: i }, K = gt();
return ue.createElement(Zp, { node: B }, ue.createElement(rx, null, ue.createElement(yo.Provider, { value: null }, ue.createElement(vl.Provider, { value: l }, ue.createElement(ho.Provider, { value: J }, ue.createElement(y0, { value: q }, ue.createElement(qp, { value: dt(c, { 0: ot.Open, 1: ot.Closed }) }, ue.createElement(Q, null, K({ ourProps: M, theirProps: a, slot: Y, defaultTag: Rx, name: "Popover" })))))))));
}
let Dx = "button";
function zx(e, t) {
let n = jr(), { id: r = `headlessui-popover-button-${n}`, disabled: a = !1, autoFocus: o = !1, ...i } = e, [s, l] = go("Popover.Button"), { isPortalled: c } = xl("Popover.Button"), u = xe(null), p = `headlessui-focus-sentinel-${jr()}`, m = im(), b = m == null ? void 0 : m.closeOthers, x = Mx() !== null;
Le(() => {
if (!x) return l({ type: 3, buttonId: r }), () => {
l({ type: 3, buttonId: null });
};
}, [x, r, l]);
let [v] = $e(() => Symbol()), y = pt(u, t, ex(), ve((g) => {
if (!x) {
if (g) s.buttons.current.push(v);
else {
let d = s.buttons.current.indexOf(v);
d !== -1 && s.buttons.current.splice(d, 1);
}
s.buttons.current.length > 1 && console.warn("You are already using a <Popover.Button /> but only 1 <Popover.Button /> is supported."), g && l({ type: 2, button: g });
}
})), w = pt(u, t), P = nr(u), S = ve((g) => {
var d, E, A;
if (x) {
if (s.popoverState === 1) return;
switch (g.key) {
case tn.Space:
case tn.Enter:
g.preventDefault(), (E = (d = g.target).click) == null || E.call(d), l({ type: 1 }), (A = s.button) == null || A.focus();
break;
}
} else switch (g.key) {
case tn.Space:
case tn.Enter:
g.preventDefault(), g.stopPropagation(), s.popoverState === 1 && (b == null || b(s.buttonId)), l({ type: 0 });
break;
case tn.Escape:
if (s.popoverState !== 0) return b == null ? void 0 : b(s.buttonId);
if (!u.current || P != null && P.activeElement && !u.current.contains(P.activeElement)) return;
g.preventDefault(), g.stopPropagation(), l({ type: 1 });
break;
}
}), _ = ve((g) => {
x || g.key === tn.Space && g.preventDefault();
}), h = ve((g) => {
var d, E;
kp(g.currentTarget) || a || (x ? (l({ type: 1 }), (d = s.button) == null || d.focus()) : (g.preventDefault(), g.stopPropagation(), s.popoverState === 1 && (b == null || b(s.buttonId)), l({ type: 0 }), (E = s.button) == null || E.focus()));
}), G = ve((g) => {
g.preventDefault(), g.stopPropagation();
}), { isFocusVisible: U, focusProps: te } = n0({ autoFocus: o }), { isHovered: X, hoverProps: Z } = t0({ isDisabled: a }), { pressed: Q, pressProps: B } = l0({ disabled: a }), oe = s.popoverState === 0, q = ze(() => ({ open: oe, active: Q || oe, disabled: a, hover: X, focus: U, autofocus: o }), [oe, X, U, Q, a, o]), J = M0(e, s.button), Y = Ep(x ? { ref: w, type: J, onKeyDown: S, onClick: h, disabled: a || void 0, autoFocus: o } : { ref: y, id: s.buttonId, type: J, "aria-expanded": s.popoverState === 0, "aria-controls": s.panel ? s.panelId : void 0, disabled: a || void 0, autoFocus: o, onKeyDown: S, onKeyUp: _, onClick: h, onMouseDown: G }, te, Z, B), M = em(), K = ve(() => {
let g = s.panel;
if (!g) return;
function d() {
dt(M.current, { [Ft.Forwards]: () => wn(g, Mt.First), [Ft.Backwards]: () => wn(g, Mt.Last) }) === $a.Error && wn(ao().filter((E) => E.dataset.headlessuiFocusGuard !== "true"), dt(M.current, { [Ft.Forwards]: Mt.Next, [Ft.Backwards]: Mt.Previous }), { relativeTo: s.button });
}
d();
}), z = gt();
return ue.createElement(ue.Fragment, null, z({ ourProps: Y, theirProps: i, slot: q, defaultTag: Dx, name: "Popover.Button" }), oe && !x && c && ue.createElement(za, { id: p, ref: s.afterButtonSentinel, features: Rr.Focusable, "data-headlessui-focus-guard": !0, as: "button", type: "button", onFocus: K }));
}
let $x = "div", Hx = tr.RenderStrategy | tr.Static;
function sm(e, t) {
let n = jr(), { id: r = `headlessui-popover-backdrop-${n}`, transition: a = !1, ...o } = e, [{ popoverState: i }, s] = go("Popover.Backdrop"), [l, c] = $e(null), u = pt(t, c), p = uo(), [m, b] = dl(a, l, p !== null ? (p & ot.Open) === ot.Open : i === 0), x = ve((w) => {
if (kp(w.currentTarget)) return w.preventDefault();
s({ type: 1 });
}), v = ze(() => ({ open: i === 0 }), [i]), y = { ref: u, id: r, "aria-hidden": !0, onClick: x, ...fl(b) };
return gt()({ ourProps: y, theirProps: o, slot: v, defaultTag: $x, features: Hx, visible: m, name: "Popover.Backdrop" });
}
let Wx = "div", Bx = tr.RenderStrategy | tr.Static;
function Gx(e, t) {
let n = jr(), { id: r = `headlessui-popover-panel-${n}`, focus: a = !1, anchor: o, portal: i = !1, modal: s = !1, transition: l = !1, ...c } = e, [u, p] = go("Popover.Panel"), { close: m, isPortalled: b } = xl("Popover.Panel"), x = `headlessui-focus-sentinel-before-${n}`, v = `headlessui-focus-sentinel-after-${n}`, y = xe(null), w = Q1(o), [P, S] = nx(w), _ = tx();
w && (i = !0);
let [h, G] = $e(null), U = pt(y, t, w ? P : null, ve((d) => p({ type: 4, panel: d })), G), te = nr(u.button), X = nr(y);
Ye(() => (p({ type: 5, panelId: r }), () => {
p({ type: 5, panelId: null });
}), [r, p]);
let Z = uo(), [Q, B] = dl(l, h, Z !== null ? (Z & ot.Open) === ot.Open : u.popoverState === 0);
E0(Q, u.button, () => {
p({ type: 1 });
});
let oe = u.__demoMode ? !1 : s && Q;
$0(oe, X);
let q = ve((d) => {
var E;
switch (d.key) {
case tn.Escape:
if (u.popoverState !== 0 || !y.current || X != null && X.activeElement && !y.current.contains(X.activeElement)) return;
d.preventDefault(), d.stopPropagation(), p({ type: 1 }), (E = u.button) == null || E.focus();
break;
}
});
Le(() => {
var d;
e.static || u.popoverState === 1 && ((d = e.unmount) == null || d) && p({ type: 4, panel: null });
}, [u.popoverState, e.unmount, e.static, p]), Le(() => {
if (u.__demoMode || !a || u.popoverState !== 0 || !y.current) return;
let d = X == null ? void 0 : X.activeElement;
y.current.contains(d) || wn(y.current, Mt.First);
}, [u.__demoMode, a, y.current, u.popoverState]);
let J = ze(() => ({ open: u.popoverState === 0, close: m }), [u.popoverState, m]), Y = Ep(w ? _() : {}, { ref: U, id: r, onKeyDown: q, onBlur: a && u.popoverState === 0 ? (d) => {
var E, A, C, T, I;
let N = d.relatedTarget;
N && y.current && ((E = y.current) != null && E.contains(N) || (p({ type: 1 }), ((C = (A = u.beforePanelSentinel.current) == null ? void 0 : A.contains) != null && C.call(A, N) || (I = (T = u.afterPanelSentinel.current) == null ? void 0 : T.contains) != null && I.call(T, N)) && N.focus({ preventScroll: !0 })));
} : void 0, tabIndex: -1, style: { ...c.style, ...S, "--button-width": v0(u.button, !0).width }, ...fl(B) }), M = em(), K = ve(() => {
let d = y.current;
if (!d) return;
function E() {
dt(M.current, { [Ft.Forwards]: () => {
var A;
wn(d, Mt.First) === $a.Error && ((A = u.afterPanelSentinel.current) == null || A.focus());
}, [Ft.Backwards]: () => {
var A;
(A = u.button) == null || A.focus({ preventScroll: !0 });
} });
}
E();
}), z = ve(() => {
let d = y.current;
if (!d) return;
function E() {
dt(M.current, { [Ft.Forwards]: () => {
if (!u.button) return;
let A = ao(), C = A.indexOf(u.button), T = A.slice(0, C + 1), I = [...A.slice(C + 1), ...T];
for (let N of I.slice()) if (N.dataset.headlessuiFocusGuard === "true" || h != null && h.contains(N)) {
let F = I.indexOf(N);
F !== -1 && I.splice(F, 1);
}
wn(I, Mt.First, { sorted: !1 });
}, [Ft.Backwards]: () => {
var A;
wn(d, Mt.Previous) === $a.Error && ((A = u.button) == null || A.focus());
} });
}
E();
}), g = gt();
return ue.createElement(ix, null, ue.createElement(yo.Provider, { value: r }, ue.createElement(ho.Provider, { value: { close: m, isPortalled: b } }, ue.createElement(xx, { enabled: i ? e.static || Q : !1, ownerDocument: te }, Q && b && ue.createElement(za, { id: x, ref: u.beforePanelSentinel, features: Rr.Focusable, "data-headlessui-focus-guard": !0, as: "button", type: "button", onFocus: K }), g({ ourProps: Y, theirProps: c, slot: J, defaultTag: Wx, features: Bx, visible: Q, name: "Popover.Panel" }), Q && b && ue.createElement(za, { id: v, ref: u.afterPanelSentinel, features: Rr.Focusable, "data-headlessui-focus-guard": !0, as: "button", type: "button", onFocus: z })))));
}
let Yx = "div";
function Vx(e, t) {
let n = xe(null), r = pt(n, t), [a, o] = $e([]), i = ve((v) => {
o((y) => {
let w = y.indexOf(v);
if (w !== -1) {
let P = y.slice();
return P.splice(w, 1), P;
}
return y;
});
}), s = ve((v) => (o((y) => [...y, v]), () => i(v))), l = ve(() => {
var v;
let y = qr(n);
if (!y) return !1;
let w = y.activeElement;
return (v = n.current) != null && v.contains(w) ? !0 : a.some((P) => {
var S, _;
return ((S = y.getElementById(P.buttonId.current)) == null ? void 0 : S.contains(w)) || ((_ = y.getElementById(P.panelId.current)) == null ? void 0 : _.contains(w));
});
}), c = ve((v) => {
for (let y of a) y.buttonId.current !== v && y.close();
}), u = ze(() => ({ registerPopover: s, unregisterPopover: i, isFocusWithinPopoverGroup: l, closeOthers: c }), [s, i, l, c]), p = ze(() => ({}), []), m = e, b = { ref: r }, x = gt();
return ue.createElement(Zp, null, ue.createElement(wl.Provider, { value: u }, x({ ourProps: b, theirProps: m, slot: p, defaultTag: Yx, name: "Popover.Group" })));
}
let Ux = lt(Lx), lm = lt(zx), qx = lt(sm), Kx = lt(sm), cm = lt(Gx), Xx = lt(Vx), Jx = Object.assign(Ux, { Button: lm, Backdrop: Kx, Overlay: qx, Panel: cm, Group: Xx });
const El = "-", Zx = (e) => {
const t = ew(e), {
conflictingClassGroups: n,
conflictingClassGroupModifiers: r
} = e;
return {
getClassGroupId: (a) => {
const o = a.split(El);
return o[0] === "" && o.length !== 1 && o.shift(), um(o, t) || Qx(a);
},
getConflictingClassGroupIds: (a, o) => {
const i = n[a] || [];
return o && r[a] ? [...i, ...r[a]] : i;
}
};
}, um = (e, t) => {
var n;
if (e.length === 0)
return t.classGroupId;
const r = e[0], a = t.nextPart.get(r), o = a ? um(e.slice(1), a) : void 0;
if (o)
return o;
if (t.validators.length === 0)
return;
const i = e.join(El);
return (n = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : n.classGroupId;
}, Du = /^\[(.+)\]$/, Qx = (e) => {
if (Du.test(e)) {
const t = Du.exec(e)[1], n = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (n)
return "arbitrary.." + n;
}
}, ew = (e) => {
const {
theme: t,
prefix: n
} = e, r = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return nw(Object.entries(e.classGroups), n).forEach(([a, o]) => {
ds(o, r, a, t);
}), r;
}, ds = (e, t, n, r) => {
e.forEach((a) => {
if (typeof a == "string") {
const o = a === "" ? t : zu(t, a);
o.classGroupId = n;
return;
}
if (typeof a == "function") {
if (tw(a)) {
ds(a(r), t, n, r);
return;
}
t.validators.push({
validator: a,
classGroupId: n
});
return;
}
Object.entries(a).forEach(([o, i]) => {
ds(i, zu(t, o), n, r);
});
});
}, zu = (e, t) => {
let n = e;
return t.split(El).forEach((r) => {
n.nextPart.has(r) || n.nextPart.set(r, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), n = n.nextPart.get(r);
}), n;
}, tw = (e) => e.isThemeGetter, nw = (e, t) => t ? e.map(([n, r]) => {
const a = r.map((o) => typeof o == "string" ? t + o : typeof o == "object" ? Object.fromEntries(Object.entries(o).map(([i, s]) => [t + i, s])) : o);
return [n, a];
}) : e, rw = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, n = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map();
const a = (o, i) => {
n.set(o, i), t++, t > e && (t = 0, r = n, n = /* @__PURE__ */ new Map());
};
return {
get(o) {
let i = n.get(o);
if (i !== void 0)
return i;
if ((i = r.get(o)) !== void 0)
return a(o, i), i;
},
set(o, i) {
n.has(o) ? n.set(o, i) : a(o, i);
}
};
}, fm = "!", aw = (e) => {
const {
separator: t,
experimentalParseClassName: n
} = e, r = t.length === 1, a = t[0], o = t.length, i = (s) => {
const l = [];
let c = 0, u = 0, p;
for (let y = 0; y < s.length; y++) {
let w = s[y];
if (c === 0) {
if (w === a && (r || s.slice(y, y + o) === t)) {
l.push(s.slice(u, y)), u = y + o;
continue;
}
if (w === "/") {
p = y;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const m = l.length === 0 ? s : s.substring(u), b = m.startsWith(fm), x = b ? m.substring(1) : m, v = p && p > u ? p - u : void 0;
return {
modifiers: l,
hasImportantModifier: b,
baseClassName: x,
maybePostfixModifierPosition: v
};
};
return n ? (s) => n({
className: s,
parseClassName: i
}) : i;
}, ow = (e) => {
if (e.length <= 1)
return e;
const t = [];
let n = [];
return e.forEach((r) => {
r[0] === "[" ? (t.push(...n.sort(), r), n = []) : n.push(r);
}), t.push(...n.sort()), t;
}, iw = (e) => ({
cache: rw(e.cacheSize),
parseClassName: aw(e),
...Zx(e)
}), sw = /\s+/, lw = (e, t) => {
const {
parseClassName: n,
getClassGroupId: r,
getConflictingClassGroupIds: a
} = t, o = [], i = e.trim().split(sw);
let s = "";
for (let l = i.length - 1; l >= 0; l -= 1) {
const c = i[l], {
modifiers: u,
hasImportantModifier: p,
baseClassName: m,
maybePostfixModifierPosition: b
} = n(c);
let x = !!b, v = r(x ? m.substring(0, b) : m);
if (!v) {
if (!x) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (v = r(m), !v) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
x = !1;
}
const y = ow(u).join(":"), w = p ? y + fm : y, P = w + v;
if (o.includes(P))
continue;
o.push(P);
const S = a(v, x);
for (let _ = 0; _ < S.length; ++_) {
const h = S[_];
o.push(w + h);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function cw() {
let e = 0, t, n, r = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (n = dm(t)) && (r && (r += " "), r += n);
return r;
}
const dm = (e) => {
if (typeof e == "string")
return e;
let t, n = "";
for (let r = 0; r < e.length; r++)
e[r] && (t = dm(e[r])) && (n && (n += " "), n += t);
return n;
};
function uw(e, ...t) {
let n, r, a, o = i;
function i(l) {
const c = t.reduce((u, p) => p(u), e());
return n = iw(c), r = n.cache.get, a = n.cache.set, o = s, s(l);
}
function s(l) {
const c = r(l);
if (c)
return c;
const u = lw(l, n);
return a(l, u), u;
}
return function() {
return o(cw.apply(null, arguments));
};
}
const Te = (e) => {
const t = (n) => n[e] || [];
return t.isThemeGetter = !0, t;
}, pm = /^\[(?:([a-z-]+):)?(.+)\]$/i, fw = /^\d+\/\d+$/, dw = /* @__PURE__ */ new Set(["px", "full", "screen"]), pw = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, mw = /\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$/, gw = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, hw = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, yw = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Nt = (e) => Xn(e) || dw.has(e) || fw.test(e), Kt = (e) => cr(e, "length", Ow), Xn = (e) => !!e && !Number.isNaN(Number(e)), li = (e) => cr(e, "number", Xn), br = (e) => !!e && Number.isInteger(Number(e)), bw = (e) => e.endsWith("%") && Xn(e.slice(0, -1)), pe = (e) => pm.test(e), Xt = (e) => pw.test(e), vw = /* @__PURE__ */ new Set(["length", "size", "percentage"]), xw = (e) => cr(e, vw, mm), ww = (e) => cr(e, "position", mm), Ew = /* @__PURE__ */ new Set(["image", "url"]), kw = (e) => cr(e, Ew, Aw), Pw = (e) => cr(e, "", Sw), vr = () => !0, cr = (e, t, n) => {
const r = pm.exec(e);
return r ? r[1] ? typeof t == "string" ? r[1] === t : t.has(r[1]) : n(r[2]) : !1;
}, Ow = (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.
mw.test(e) && !gw.test(e)
), mm = () => !1, Sw = (e) => hw.test(e), Aw = (e) => yw.test(e), Cw = () => {
const e = Te("colors"), t = Te("spacing"), n = Te("blur"), r = Te("brightness"), a = Te("borderColor"), o = Te("borderRadius"), i = Te("borderSpacing"), s = Te("borderWidth"), l = Te("contrast"), c = Te("grayscale"), u = Te("hueRotate"), p = Te("invert"), m = Te("gap"), b = Te("gradientColorStops"), x = Te("gradientColorStopPositions"), v = Te("inset"), y = Te("margin"), w = Te("opacity"), P = Te("padding"), S = Te("saturate"), _ = Te("scale"), h = Te("sepia"), G = Te("skew"), U = Te("space"), te = Te("translate"), X = () => ["auto", "contain", "none"], Z = () => ["auto", "hidden", "clip", "visible", "scroll"], Q = () => ["auto", pe, t], B = () => [pe, t], oe = () => ["", Nt, Kt], q = () => ["auto", Xn, pe], J = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], Y = () => ["solid", "dashed", "dotted", "double", "none"], M = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], K = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], z = () => ["", "0", pe], g = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], d = () => [Xn, pe];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [vr],
spacing: [Nt, Kt],
blur: ["none", "", Xt, pe],
brightness: d(),
borderColor: [e],
borderRadius: ["none", "", "full", Xt, pe],
borderSpacing: B(),
borderWidth: oe(),
contrast: d(),
grayscale: z(),
hueRotate: d(),
invert: z(),
gap: B(),
gradientColorStops: [e],
gradientColorStopPositions: [bw, Kt],
inset: Q(),
margin: Q(),
opacity: d(),
padding: B(),
saturate: d(),
scale: d(),
sepia: z(),
skew: d(),
space: B(),
translate: B()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", pe]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [Xt]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": g()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": g()
}],
/**
* 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: [...J(), pe]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: Z()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": Z()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": Z()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: X()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": X()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": X()
}],
/**
* 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: [v]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [v]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [v]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [v]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [v]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [v]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [v]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [v]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [v]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", br, pe]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Q()
}],
/**
* 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", pe]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: z()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: z()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", br, pe]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [vr]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", br, pe]
}, pe]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": q()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": q()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [vr]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [br, pe]
}, pe]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": q()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": q()
}],
/**
* 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", pe]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", pe]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [m]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [m]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [m]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...K()]
}],
/**
* 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", ...K(), "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": [...K(), "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: [P]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [P]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [P]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [P]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [P]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [P]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [P]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [P]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [P]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [y]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [y]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [y]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [y]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [y]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [y]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [y]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [y]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [y]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [U]
}],
/**
* 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": [U]
}],
/**
* 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", pe, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [pe, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [pe, t, "none", "full", "min", "max", "fit", "prose", {
screen: [Xt]
}, Xt]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [pe, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [pe, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [pe, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [pe, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", Xt, Kt]
}],
/**
* 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", li]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [vr]
}],
/**
* 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", pe]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", Xn, li]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", Nt, pe]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", pe]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", pe]
}],
/**
* 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: [...Y(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", Nt, Kt]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", Nt, pe]
}],
/**
* 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: B()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", pe]
}],
/**
* 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", pe]
}],
// 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: [...J(), ww]
}],
/**
* 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", xw]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, kw]
}],
/**
* 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: [x]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [x]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [x]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [b]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [b]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [b]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [o]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [o]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [o]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [o]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [o]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [o]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [o]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [o]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [o]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [o]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [o]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [o]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [o]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [o]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [o]
}],
/**
* 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: [...Y(), "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: Y()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [a]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [a]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [a]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [a]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [a]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [a]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [a]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [a]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [a]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [a]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...Y()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [Nt, pe]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [Nt, Kt]
}],
/**
* 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: oe()
}],
/**
* 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": [Nt, Kt]
}],
/**
* 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", Xt, Pw]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [vr]
}],
/**
* 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": [...M(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": M()
}],
// 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: [n]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [r]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [l]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", Xt, pe]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [u]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [p]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [S]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [h]
}],
/**
* 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": [n]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [r]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [l]
}],
/**
* 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": [u]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [p]
}],
/**
* 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": [S]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [h]
}],
// 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", pe]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: d()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", pe]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: d()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", pe]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [_]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [_]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [_]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [br, pe]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [te]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [te]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [G]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [G]
}],
/**
* 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", pe]
}],
// 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", pe]
}],
/**
* 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": B()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": B()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": B()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": B()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": B()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": B()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": B()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": B()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": B()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": B()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": B()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": B()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": B()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": B()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": B()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": B()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": B()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": B()
}],
/**
* 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", pe]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [Nt, Kt, li]
}],
/**
* 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"]
}
};
}, It = /* @__PURE__ */ uw(Cw);
/*!
* 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 _w(e, t, n) {
return (t = Nw(t)) in e ? Object.defineProperty(e, t, {
value: n,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = n, e;
}
function $u(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter(function(a) {
return Object.getOwnPropertyDescriptor(e, a).enumerable;
})), n.push.apply(n, r);
}
return n;
}
function H(e) {
for (var t = 1; t < arguments.length; t++) {
var n = arguments[t] != null ? arguments[t] : {};
t % 2 ? $u(Object(n), !0).forEach(function(r) {
_w(e, r, n[r]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : $u(Object(n)).forEach(function(r) {
Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
});
}
return e;
}
function Tw(e, t) {
if (typeof e != "object" || !e) return e;
var n = e[Symbol.toPrimitive];
if (n !== void 0) {
var r = n.call(e, t);
if (typeof r != "object") return r;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function Nw(e) {
var t = Tw(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const Hu = () => {
};
let kl = {}, gm = {}, hm = null, ym = {
mark: Hu,
measure: Hu
};
try {
typeof window < "u" && (kl = window), typeof document < "u" && (gm = document), typeof MutationObserver < "u" && (hm = MutationObserver), typeof performance < "u" && (ym = performance);
} catch {
}
const {
userAgent: Wu = ""
} = kl.navigator || {}, cn = kl, je = gm, Bu = hm, ba = ym;
cn.document;
const Yt = !!je.documentElement && !!je.head && typeof je.addEventListener == "function" && typeof je.createElement == "function", bm = ~Wu.indexOf("MSIE") || ~Wu.indexOf("Trident/");
var Iw = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, jw = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, vm = {
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"
}
}, Mw = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, xm = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Ze = "classic", bo = "duotone", Fw = "sharp", Rw = "sharp-duotone", wm = [Ze, bo, Fw, Rw], Lw = {
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"
}
}, Dw = {
"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"
}
}, zw = /* @__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
}]]), $w = {
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"
}
}, Hw = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], Gu = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, Ww = ["kit"], Bw = {
kit: {
"fa-kit": "fak"
}
}, Gw = ["fak", "fakd"], Yw = {
kit: {
fak: "fa-kit"
}
}, Yu = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, va = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, Vw = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Uw = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], qw = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, Kw = {
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"
}
}, Xw = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, ps = {
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"
}
}, Jw = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], ms = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...Vw, ...Jw], Zw = ["solid", "regular", "light", "thin", "duotone", "brands"], Em = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], Qw = Em.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), e2 = [...Object.keys(Xw), ...Zw, "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", va.GROUP, va.SWAP_OPACITY, va.PRIMARY, va.SECONDARY].concat(Em.map((e) => "".concat(e, "x"))).concat(Qw.map((e) => "w-".concat(e))), t2 = {
"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 $t = "___FONT_AWESOME___", gs = 16, km = "fa", Pm = "svg-inline--fa", In = "data-fa-i2svg", hs = "data-fa-pseudo-element", n2 = "data-fa-pseudo-element-pending", Pl = "data-prefix", Ol = "data-icon", Vu = "fontawesome-i2svg", r2 = "async", a2 = ["HTML", "HEAD", "STYLE", "SCRIPT"], Om = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function Zr(e) {
return new Proxy(e, {
get(t, n) {
return n in t ? t[n] : t[Ze];
}
});
}
const Sm = H({}, vm);
Sm[Ze] = H(H(H(H({}, {
"fa-duotone": "duotone"
}), vm[Ze]), Gu.kit), Gu["kit-duotone"]);
const o2 = Zr(Sm), ys = H({}, $w);
ys[Ze] = H(H(H(H({}, {
duotone: "fad"
}), ys[Ze]), Yu.kit), Yu["kit-duotone"]);
const Uu = Zr(ys), bs = H({}, ps);
bs[Ze] = H(H({}, bs[Ze]), Yw.kit);
const Sl = Zr(bs), vs = H({}, Kw);
vs[Ze] = H(H({}, vs[Ze]), Bw.kit);
Zr(vs);
const i2 = Iw, Am = "fa-layers-text", s2 = jw, l2 = H({}, Lw);
Zr(l2);
const c2 = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], ci = Mw, u2 = [...Ww, ...e2], Cr = cn.FontAwesomeConfig || {};
function f2(e) {
var t = je.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function d2(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
je && typeof je.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, n] = e;
const r = d2(f2(t));
r != null && (Cr[n] = r);
});
const Cm = {
styleDefault: "solid",
familyDefault: Ze,
cssPrefix: km,
replacementClass: Pm,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Cr.familyPrefix && (Cr.cssPrefix = Cr.familyPrefix);
const ar = H(H({}, Cm), Cr);
ar.autoReplaceSvg || (ar.observeMutations = !1);
const re = {};
Object.keys(Cm).forEach((e) => {
Object.defineProperty(re, e, {
enumerable: !0,
set: function(t) {
ar[e] = t, _r.forEach((n) => n(re));
},
get: function() {
return ar[e];
}
});
});
Object.defineProperty(re, "familyPrefix", {
enumerable: !0,
set: function(e) {
ar.cssPrefix = e, _r.forEach((t) => t(re));
},
get: function() {
return ar.cssPrefix;
}
});
cn.FontAwesomeConfig = re;
const _r = [];
function p2(e) {
return _r.push(e), () => {
_r.splice(_r.indexOf(e), 1);
};
}
const Jt = gs, Pt = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function m2(e) {
if (!e || !Yt)
return;
const t = je.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const n = je.head.childNodes;
let r = null;
for (let a = n.length - 1; a > -1; a--) {
const o = n[a], i = (o.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (r = o);
}
return je.head.insertBefore(t, r), e;
}
const g2 = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function $r() {
let e = 12, t = "";
for (; e-- > 0; )
t += g2[Math.random() * 62 | 0];
return t;
}
function ur(e) {
const t = [];
for (let n = (e || []).length >>> 0; n--; )
t[n] = e[n];
return t;
}
function Al(e) {
return e.classList ? ur(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function _m(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function h2(e) {
return Object.keys(e || {}).reduce((t, n) => t + "".concat(n, '="').concat(_m(e[n]), '" '), "").trim();
}
function vo(e) {
return Object.keys(e || {}).reduce((t, n) => t + "".concat(n, ": ").concat(e[n].trim(), ";"), "");
}
function Cl(e) {
return e.size !== Pt.size || e.x !== Pt.x || e.y !== Pt.y || e.rotate !== Pt.rotate || e.flipX || e.flipY;
}
function y2(e) {
let {
transform: t,
containerWidth: n,
iconWidth: r
} = e;
const a = {
transform: "translate(".concat(n / 2, " 256)")
}, o = "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)"), l = {
transform: "".concat(o, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(r / 2 * -1, " -256)")
};
return {
outer: a,
inner: l,
path: c
};
}
function b2(e) {
let {
transform: t,
width: n = gs,
height: r = gs,
startCentered: a = !1
} = e, o = "";
return a && bm ? o += "translate(".concat(t.x / Jt - n / 2, "em, ").concat(t.y / Jt - r / 2, "em) ") : a ? o += "translate(calc(-50% + ".concat(t.x / Jt, "em), calc(-50% + ").concat(t.y / Jt, "em)) ") : o += "translate(".concat(t.x / Jt, "em, ").concat(t.y / Jt, "em) "), o += "scale(".concat(t.size / Jt * (t.flipX ? -1 : 1), ", ").concat(t.size / Jt * (t.flipY ? -1 : 1), ") "), o += "rotate(".concat(t.rotate, "deg) "), o;
}
var v2 = `: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 Tm() {
const e = km, t = Pm, n = re.cssPrefix, r = re.replacementClass;
let a = v2;
if (n !== e || r !== t) {
const o = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
a = a.replace(o, ".".concat(n, "-")).replace(i, "--".concat(n, "-")).replace(s, ".".concat(r));
}
return a;
}
let qu = !1;
function ui() {
re.autoAddCss && !qu && (m2(Tm()), qu = !0);
}
var x2 = {
mixout() {
return {
dom: {
css: Tm,
insertCss: ui
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
ui();
},
beforeI2svg() {
ui();
}
};
}
};
const Ht = cn || {};
Ht[$t] || (Ht[$t] = {});
Ht[$t].styles || (Ht[$t].styles = {});
Ht[$t].hooks || (Ht[$t].hooks = {});
Ht[$t].shims || (Ht[$t].shims = []);
var Ot = Ht[$t];
const Nm = [], Im = function() {
je.removeEventListener("DOMContentLoaded", Im), Ga = 1, Nm.map((e) => e());
};
let Ga = !1;
Yt && (Ga = (je.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(je.readyState), Ga || je.addEventListener("DOMContentLoaded", Im));
function w2(e) {
Yt && (Ga ? setTimeout(e, 0) : Nm.push(e));
}
function Qr(e) {
const {
tag: t,
attributes: n = {},
children: r = []
} = e;
return typeof e == "string" ? _m(e) : "<".concat(t, " ").concat(h2(n), ">").concat(r.map(Qr).join(""), "</").concat(t, ">");
}
function Ku(e, t, n) {
if (e && e[t] && e[t][n])
return {
prefix: t,
iconName: n,
icon: e[t][n]
};
}
var fi = function(e, t, n, r) {
var a = Object.keys(e), o = a.length, i = t, s, l, c;
for (n === void 0 ? (s = 1, c = e[a[0]]) : (s = 0, c = n); s < o; s++)
l = a[s], c = i(c, e[l], l, e);
return c;
};
function E2(e) {
const t = [];
let n = 0;
const r = e.length;
for (; n < r; ) {
const a = e.charCodeAt(n++);
if (a >= 55296 && a <= 56319 && n < r) {
const o = e.charCodeAt(n++);
(o & 64512) == 56320 ? t.push(((a & 1023) << 10) + (o & 1023) + 65536) : (t.push(a), n--);
} else
t.push(a);
}
return t;
}
function jm(e) {
const t = E2(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function k2(e, t) {
const n = e.length;
let r = e.charCodeAt(t), a;
return r >= 55296 && r <= 56319 && n > t + 1 && (a = e.charCodeAt(t + 1), a >= 56320 && a <= 57343) ? (r - 55296) * 1024 + a - 56320 + 65536 : r;
}
function Xu(e) {
return Object.keys(e).reduce((t, n) => {
const r = e[n];
return r.icon ? t[r.iconName] = r.icon : t[n] = r, t;
}, {});
}
function xs(e, t) {
let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: r = !1
} = n, a = Xu(t);
typeof Ot.hooks.addPack == "function" && !r ? Ot.hooks.addPack(e, Xu(t)) : Ot.styles[e] = H(H({}, Ot.styles[e] || {}), a), e === "fas" && xs("fa", t);
}
const {
styles: Hr,
shims: P2
} = Ot, Mm = Object.keys(Sl), O2 = Mm.reduce((e, t) => (e[t] = Object.keys(Sl[t]), e), {});
let _l = null, Fm = {}, Rm = {}, Lm = {}, Dm = {}, zm = {};
function S2(e) {
return ~u2.indexOf(e);
}
function A2(e, t) {
const n = t.split("-"), r = n[0], a = n.slice(1).join("-");
return r === e && a !== "" && !S2(a) ? a : null;
}
const $m = () => {
const e = (r) => fi(Hr, (a, o, i) => (a[i] = fi(o, r, {}), a), {});
Fm = e((r, a, o) => (a[3] && (r[a[3]] = o), a[2] && a[2].filter((i) => typeof i == "number").forEach((i) => {
r[i.toString(16)] = o;
}), r)), Rm = e((r, a, o) => (r[o] = o, a[2] && a[2].filter((i) => typeof i == "string").forEach((i) => {
r[i] = o;
}), r)), zm = e((r, a, o) => {
const i = a[2];
return r[o] = o, i.forEach((s) => {
r[s] = o;
}), r;
});
const t = "far" in Hr || re.autoFetchSvg, n = fi(P2, (r, a) => {
const o = a[0];
let i = a[1];
const s = a[2];
return i === "far" && !t && (i = "fas"), typeof o == "string" && (r.names[o] = {
prefix: i,
iconName: s
}), typeof o == "number" && (r.unicodes[o.toString(16)] = {
prefix: i,
iconName: s
}), r;
}, {
names: {},
unicodes: {}
});
Lm = n.names, Dm = n.unicodes, _l = xo(re.styleDefault, {
family: re.familyDefault
});
};
p2((e) => {
_l = xo(e.styleDefault, {
family: re.familyDefault
});
});
$m();
function Tl(e, t) {
return (Fm[e] || {})[t];
}
function C2(e, t) {
return (Rm[e] || {})[t];
}
function kn(e, t) {
return (zm[e] || {})[t];
}
function Hm(e) {
return Lm[e] || {
prefix: null,
iconName: null
};
}
function _2(e) {
const t = Dm[e], n = Tl("fas", e);
return t || (n ? {
prefix: "fas",
iconName: n
} : null) || {
prefix: null,
iconName: null
};
}
function un() {
return _l;
}
const Wm = () => ({
prefix: null,
iconName: null,
rest: []
});
function T2(e) {
let t = Ze;
const n = Mm.reduce((r, a) => (r[a] = "".concat(re.cssPrefix, "-").concat(a), r), {});
return wm.forEach((r) => {
(e.includes(n[r]) || e.some((a) => O2[r].includes(a))) && (t = r);
}), t;
}
function xo(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: n = Ze
} = t, r = o2[n][e];
if (n === bo && !e)
return "fad";
const a = Uu[n][e] || Uu[n][r], o = e in Ot.styles ? e : null;
return a || o || null;
}
function N2(e) {
let t = [], n = null;
return e.forEach((r) => {
const a = A2(re.cssPrefix, r);
a ? n = a : r && t.push(r);
}), {
iconName: n,
rest: t
};
}
function Ju(e) {
return e.sort().filter((t, n, r) => r.indexOf(t) === n);
}
function wo(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: n = !1
} = t;
let r = null;
const a = ms.concat(Uw), o = Ju(e.filter((p) => a.includes(p))), i = Ju(e.filter((p) => !ms.includes(p))), s = o.filter((p) => (r = p, !xm.includes(p))), [l = null] = s, c = T2(o), u = H(H({}, N2(i)), {}, {
prefix: xo(l, {
family: c
})
});
return H(H(H({}, u), F2({
values: e,
family: c,
styles: Hr,
config: re,
canonical: u,
givenPrefix: r
})), I2(n, r, u));
}
function I2(e, t, n) {
let {
prefix: r,
iconName: a
} = n;
if (e || !r || !a)
return {
prefix: r,
iconName: a
};
const o = t === "fa" ? Hm(a) : {}, i = kn(r, a);
return a = o.iconName || i || a, r = o.prefix || r, r === "far" && !Hr.far && Hr.fas && !re.autoFetchSvg && (r = "fas"), {
prefix: r,
iconName: a
};
}
const j2 = wm.filter((e) => e !== Ze || e !== bo), M2 = Object.keys(ps).filter((e) => e !== Ze).map((e) => Object.keys(ps[e])).flat();
function F2(e) {
const {
values: t,
family: n,
canonical: r,
givenPrefix: a = "",
styles: o = {},
config: i = {}
} = e, s = n === bo, l = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", u = r.prefix === "fad" || r.prefix === "fa-duotone";
if (!s && (l || c || u) && (r.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (r.prefix = "fab"), !r.prefix && j2.includes(n) && (Object.keys(o).find((p) => M2.includes(p)) || i.autoFetchSvg)) {
const p = zw.get(n).defaultShortPrefixId;
r.prefix = p, r.iconName = kn(r.prefix, r.iconName) || r.iconName;
}
return (r.prefix === "fa" || a === "fa") && (r.prefix = un() || "fas"), r;
}
class R2 {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++)
n[r] = arguments[r];
const a = n.reduce(this._pullDefinitions, {});
Object.keys(a).forEach((o) => {
this.definitions[o] = H(H({}, this.definitions[o] || {}), a[o]), xs(o, a[o]);
const i = Sl[Ze][o];
i && xs(i, a[o]), $m();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, n) {
const r = n.prefix && n.iconName && n.icon ? {
0: n
} : n;
return Object.keys(r).map((a) => {
const {
prefix: o,
iconName: i,
icon: s
} = r[a], l = s[2];
t[o] || (t[o] = {}), l.length > 0 && l.forEach((c) => {
typeof c == "string" && (t[o][c] = s);
}), t[o][i] = s;
}), t;
}
}
let Zu = [], Gn = {};
const Jn = {}, L2 = Object.keys(Jn);
function D2(e, t) {
let {
mixoutsTo: n
} = t;
return Zu = e, Gn = {}, Object.keys(Jn).forEach((r) => {
L2.indexOf(r) === -1 && delete Jn[r];
}), Zu.forEach((r) => {
const a = r.mixout ? r.mixout() : {};
if (Object.keys(a).forEach((o) => {
typeof a[o] == "function" && (n[o] = a[o]), typeof a[o] == "object" && Object.keys(a[o]).forEach((i) => {
n[o] || (n[o] = {}), n[o][i] = a[o][i];
});
}), r.hooks) {
const o = r.hooks();
Object.keys(o).forEach((i) => {
Gn[i] || (Gn[i] = []), Gn[i].push(o[i]);
});
}
r.provides && r.provides(Jn);
}), n;
}
function ws(e, t) {
for (var n = arguments.length, r = new Array(n > 2 ? n - 2 : 0), a = 2; a < n; a++)
r[a - 2] = arguments[a];
return (Gn[e] || []).forEach((o) => {
t = o.apply(null, [t, ...r]);
}), t;
}
function jn(e) {
for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++)
n[r - 1] = arguments[r];
(Gn[e] || []).forEach((a) => {
a.apply(null, n);
});
}
function fn() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return Jn[e] ? Jn[e].apply(null, t) : void 0;
}
function Es(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const n = e.prefix || un();
if (t)
return t = kn(n, t) || t, Ku(Bm.definitions, n, t) || Ku(Ot.styles, n, t);
}
const Bm = new R2(), z2 = () => {
re.autoReplaceSvg = !1, re.observeMutations = !1, jn("noAuto");
}, $2 = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return Yt ? (jn("beforeI2svg", e), fn("pseudoElements2svg", e), fn("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;
re.autoReplaceSvg === !1 && (re.autoReplaceSvg = !0), re.observeMutations = !0, w2(() => {
W2({
autoReplaceSvgRoot: t
}), jn("watch", e);
});
}
}, H2 = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: kn(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], n = xo(e[0]);
return {
prefix: n,
iconName: kn(n, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(re.cssPrefix, "-")) > -1 || e.match(i2))) {
const t = wo(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || un(),
iconName: kn(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = un();
return {
prefix: t,
iconName: kn(t, e) || e
};
}
}
}, ct = {
noAuto: z2,
config: re,
dom: $2,
parse: H2,
library: Bm,
findIconDefinition: Es,
toHtml: Qr
}, W2 = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = je
} = e;
(Object.keys(Ot.styles).length > 0 || re.autoFetchSvg) && Yt && re.autoReplaceSvg && ct.dom.i2svg({
node: t
});
};
function Eo(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((n) => Qr(n));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!Yt) return;
const n = je.createElement("div");
return n.innerHTML = e.html, n.children;
}
}), e;
}
function B2(e) {
let {
children: t,
main: n,
mask: r,
attributes: a,
styles: o,
transform: i
} = e;
if (Cl(i) && n.found && !r.found) {
const {
width: s,
height: l
} = n, c = {
x: s / l / 2,
y: 0.5
};
a.style = vo(H(H({}, o), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: a,
children: t
}];
}
function G2(e) {
let {
prefix: t,
iconName: n,
children: r,
attributes: a,
symbol: o
} = e;
const i = o === !0 ? "".concat(t, "-").concat(re.cssPrefix, "-").concat(n) : o;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: H(H({}, a), {}, {
id: i
}),
children: r
}]
}];
}
function Nl(e) {
const {
icons: {
main: t,
mask: n
},
prefix: r,
iconName: a,
transform: o,
symbol: i,
title: s,
maskId: l,
titleId: c,
extra: u,
watchable: p = !1
} = e, {
width: m,
height: b
} = n.found ? n : t, x = Gw.includes(r), v = [re.replacementClass, a ? "".concat(re.cssPrefix, "-").concat(a) : ""].filter((h) => u.classes.indexOf(h) === -1).filter((h) => h !== "" || !!h).concat(u.classes).join(" ");
let y = {
children: [],
attributes: H(H({}, u.attributes), {}, {
"data-prefix": r,
"data-icon": a,
class: v,
role: u.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(m, " ").concat(b)
})
};
const w = x && !~u.classes.indexOf("fa-fw") ? {
width: "".concat(m / b * 16 * 0.0625, "em")
} : {};
p && (y.attributes[In] = ""), s && (y.children.push({
tag: "title",
attributes: {
id: y.attributes["aria-labelledby"] || "title-".concat(c || $r())
},
children: [s]
}), delete y.attributes.title);
const P = H(H({}, y), {}, {
prefix: r,
iconName: a,
main: t,
mask: n,
maskId: l,
transform: o,
symbol: i,
styles: H(H({}, w), u.styles)
}), {
children: S,
attributes: _
} = n.found && t.found ? fn("generateAbstractMask", P) || {
children: [],
attributes: {}
} : fn("generateAbstractIcon", P) || {
children: [],
attributes: {}
};
return P.children = S, P.attributes = _, i ? G2(P) : B2(P);
}
function Qu(e) {
const {
content: t,
width: n,
height: r,
transform: a,
title: o,
extra: i,
watchable: s = !1
} = e, l = H(H(H({}, i.attributes), o ? {
title: o
} : {}), {}, {
class: i.classes.join(" ")
});
s && (l[In] = "");
const c = H({}, i.styles);
Cl(a) && (c.transform = b2({
transform: a,
startCentered: !0,
width: n,
height: r
}), c["-webkit-transform"] = c.transform);
const u = vo(c);
u.length > 0 && (l.style = u);
const p = [];
return p.push({
tag: "span",
attributes: l,
children: [t]
}), o && p.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [o]
}), p;
}
function Y2(e) {
const {
content: t,
title: n,
extra: r
} = e, a = H(H(H({}, r.attributes), n ? {
title: n
} : {}), {}, {
class: r.classes.join(" ")
}), o = vo(r.styles);
o.length > 0 && (a.style = o);
const i = [];
return i.push({
tag: "span",
attributes: a,
children: [t]
}), n && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [n]
}), i;
}
const {
styles: di
} = Ot;
function ks(e) {
const t = e[0], n = e[1], [r] = e.slice(4);
let a = null;
return Array.isArray(r) ? a = {
tag: "g",
attributes: {
class: "".concat(re.cssPrefix, "-").concat(ci.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(re.cssPrefix, "-").concat(ci.SECONDARY),
fill: "currentColor",
d: r[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(re.cssPrefix, "-").concat(ci.PRIMARY),
fill: "currentColor",
d: r[1]
}
}]
} : a = {
tag: "path",
attributes: {
fill: "currentColor",
d: r
}
}, {
found: !0,
width: t,
height: n,
icon: a
};
}
const V2 = {
found: !1,
width: 512,
height: 512
};
function U2(e, t) {
!Om && !re.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function Ps(e, t) {
let n = t;
return t === "fa" && re.styleDefault !== null && (t = un()), new Promise((r, a) => {
if (n === "fa") {
const o = Hm(e) || {};
e = o.iconName || e, t = o.prefix || t;
}
if (e && t && di[t] && di[t][e]) {
const o = di[t][e];
return r(ks(o));
}
U2(e, t), r(H(H({}, V2), {}, {
icon: re.showMissingIcons && e ? fn("missingIconAbstract") || {} : {}
}));
});
}
const ef = () => {
}, Os = re.measurePerformance && ba && ba.mark && ba.measure ? ba : {
mark: ef,
measure: ef
}, kr = 'FA "6.7.2"', q2 = (e) => (Os.mark("".concat(kr, " ").concat(e, " begins")), () => Gm(e)), Gm = (e) => {
Os.mark("".concat(kr, " ").concat(e, " ends")), Os.measure("".concat(kr, " ").concat(e), "".concat(kr, " ").concat(e, " begins"), "".concat(kr, " ").concat(e, " ends"));
};
var Il = {
begin: q2,
end: Gm
};
const Ca = () => {
};
function tf(e) {
return typeof (e.getAttribute ? e.getAttribute(In) : null) == "string";
}
function K2(e) {
const t = e.getAttribute ? e.getAttribute(Pl) : null, n = e.getAttribute ? e.getAttribute(Ol) : null;
return t && n;
}
function X2(e) {
return e && e.classList && e.classList.contains && e.classList.contains(re.replacementClass);
}
function J2() {
return re.autoReplaceSvg === !0 ? _a.replace : _a[re.autoReplaceSvg] || _a.replace;
}
function Z2(e) {
return je.createElementNS("http://www.w3.org/2000/svg", e);
}
function Q2(e) {
return je.createElement(e);
}
function Ym(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: n = e.tag === "svg" ? Z2 : Q2
} = t;
if (typeof e == "string")
return je.createTextNode(e);
const r = n(e.tag);
return Object.keys(e.attributes || []).forEach(function(a) {
r.setAttribute(a, e.attributes[a]);
}), (e.children || []).forEach(function(a) {
r.appendChild(Ym(a, {
ceFn: n
}));
}), r;
}
function eE(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const _a = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((n) => {
t.parentNode.insertBefore(Ym(n), t);
}), t.getAttribute(In) === null && re.keepOriginalSource) {
let n = je.createComment(eE(t));
t.parentNode.replaceChild(n, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], n = e[1];
if (~Al(t).indexOf(re.replacementClass))
return _a.replace(e);
const r = new RegExp("".concat(re.cssPrefix, "-.*"));
if (delete n[0].attributes.id, n[0].attributes.class) {
const o = n[0].attributes.class.split(" ").reduce((i, s) => (s === re.replacementClass || s.match(r) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
n[0].attributes.class = o.toSvg.join(" "), o.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", o.toNode.join(" "));
}
const a = n.map((o) => Qr(o)).join(`
`);
t.setAttribute(In, ""), t.innerHTML = a;
}
};
function nf(e) {
e();
}
function Vm(e, t) {
const n = typeof t == "function" ? t : Ca;
if (e.length === 0)
n();
else {
let r = nf;
re.mutateApproach === r2 && (r = cn.requestAnimationFrame || nf), r(() => {
const a = J2(), o = Il.begin("mutate");
e.map(a), o(), n();
});
}
}
let jl = !1;
function Um() {
jl = !0;
}
function Ss() {
jl = !1;
}
let Ya = null;
function rf(e) {
if (!Bu || !re.observeMutations)
return;
const {
treeCallback: t = Ca,
nodeCallback: n = Ca,
pseudoElementsCallback: r = Ca,
observeMutationsRoot: a = je
} = e;
Ya = new Bu((o) => {
if (jl) return;
const i = un();
ur(o).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !tf(s.addedNodes[0]) && (re.searchPseudoElements && r(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && re.searchPseudoElements && r(s.target.parentNode), s.type === "attributes" && tf(s.target) && ~c2.indexOf(s.attributeName))
if (s.attributeName === "class" && K2(s.target)) {
const {
prefix: l,
iconName: c
} = wo(Al(s.target));
s.target.setAttribute(Pl, l || i), c && s.target.setAttribute(Ol, c);
} else X2(s.target) && n(s.target);
});
}), Yt && Ya.observe(a, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function tE() {
Ya && Ya.disconnect();
}
function nE(e) {
const t = e.getAttribute("style");
let n = [];
return t && (n = t.split(";").reduce((r, a) => {
const o = a.split(":"), i = o[0], s = o.slice(1);
return i && s.length > 0 && (r[i] = s.join(":").trim()), r;
}, {})), n;
}
function rE(e) {
const t = e.getAttribute("data-prefix"), n = e.getAttribute("data-icon"), r = e.innerText !== void 0 ? e.innerText.trim() : "";
let a = wo(Al(e));
return a.prefix || (a.prefix = un()), t && n && (a.prefix = t, a.iconName = n), a.iconName && a.prefix || (a.prefix && r.length > 0 && (a.iconName = C2(a.prefix, e.innerText) || Tl(a.prefix, jm(e.innerText))), !a.iconName && re.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (a.iconName = e.firstChild.data)), a;
}
function aE(e) {
const t = ur(e.attributes).reduce((a, o) => (a.name !== "class" && a.name !== "style" && (a[o.name] = o.value), a), {}), n = e.getAttribute("title"), r = e.getAttribute("data-fa-title-id");
return re.autoA11y && (n ? t["aria-labelledby"] = "".concat(re.replacementClass, "-title-").concat(r || $r()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function oE() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: Pt,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function af(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: n,
prefix: r,
rest: a
} = rE(e), o = aE(e), i = ws("parseNodeAttributes", {}, e);
let s = t.styleParser ? nE(e) : [];
return H({
iconName: n,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: r,
transform: Pt,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: a,
styles: s,
attributes: o
}
}, i);
}
const {
styles: iE
} = Ot;
function qm(e) {
const t = re.autoReplaceSvg === "nest" ? af(e, {
styleParser: !1
}) : af(e);
return ~t.extra.classes.indexOf(Am) ? fn("generateLayersText", e, t) : fn("generateSvgReplacementMutation", e, t);
}
function sE() {
return [...Hw, ...ms];
}
function of(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!Yt) return Promise.resolve();
const n = je.documentElement.classList, r = (u) => n.add("".concat(Vu, "-").concat(u)), a = (u) => n.remove("".concat(Vu, "-").concat(u)), o = re.autoFetchSvg ? sE() : xm.concat(Object.keys(iE));
o.includes("fa") || o.push("fa");
const i = [".".concat(Am, ":not([").concat(In, "])")].concat(o.map((u) => ".".concat(u, ":not([").concat(In, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = ur(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
r("pending"), a("complete");
else
return Promise.resolve();
const l = Il.begin("onTree"), c = s.reduce((u, p) => {
try {
const m = qm(p);
m && u.push(m);
} catch (m) {
Om || m.name === "MissingIcon" && console.error(m);
}
return u;
}, []);
return new Promise((u, p) => {
Promise.all(c).then((m) => {
Vm(m, () => {
r("active"), r("complete"), a("pending"), typeof t == "function" && t(), l(), u();
});
}).catch((m) => {
l(), p(m);
});
});
}
function lE(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
qm(e).then((n) => {
n && Vm([n], t);
});
}
function cE(e) {
return function(t) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const r = (t || {}).icon ? t : Es(t || {});
let {
mask: a
} = n;
return a && (a = (a || {}).icon ? a : Es(a || {})), e(r, H(H({}, n), {}, {
mask: a
}));
};
}
const uE = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: n = Pt,
symbol: r = !1,
mask: a = null,
maskId: o = null,
title: i = null,
titleId: s = null,
classes: l = [],
attributes: c = {},
styles: u = {}
} = t;
if (!e) return;
const {
prefix: p,
iconName: m,
icon: b
} = e;
return Eo(H({
type: "icon"
}, e), () => (jn("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), re.autoA11y && (i ? c["aria-labelledby"] = "".concat(re.replacementClass, "-title-").concat(s || $r()) : (c["aria-hidden"] = "true", c.focusable = "false")), Nl({
icons: {
main: ks(b),
mask: a ? ks(a.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: p,
iconName: m,
transform: H(H({}, Pt), n),
symbol: r,
title: i,
maskId: o,
titleId: s,
extra: {
attributes: c,
styles: u,
classes: l
}
})));
};
var fE = {
mixout() {
return {
icon: cE(uE)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = of, e.nodeCallback = lE, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: n = je,
callback: r = () => {
}
} = t;
return of(n, r);
}, e.generateSvgReplacementMutation = function(t, n) {
const {
iconName: r,
title: a,
titleId: o,
prefix: i,
transform: s,
symbol: l,
mask: c,
maskId: u,
extra: p
} = n;
return new Promise((m, b) => {
Promise.all([Ps(r, i), c.iconName ? Ps(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((x) => {
let [v, y] = x;
m([t, Nl({
icons: {
main: v,
mask: y
},
prefix: i,
iconName: r,
transform: s,
symbol: l,
maskId: u,
title: a,
titleId: o,
extra: p,
watchable: !0
})]);
}).catch(b);
});
}, e.generateAbstractIcon = function(t) {
let {
children: n,
attributes: r,
main: a,
transform: o,
styles: i
} = t;
const s = vo(i);
s.length > 0 && (r.style = s);
let l;
return Cl(o) && (l = fn("generateAbstractTransformGrouping", {
main: a,
transform: o,
containerWidth: a.width,
iconWidth: a.width
})), n.push(l || a.icon), {
children: n,
attributes: r
};
};
}
}, dE = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: n = []
} = t;
return Eo({
type: "layer"
}, () => {
jn("beforeDOMElementCreation", {
assembler: e,
params: t
});
let r = [];
return e((a) => {
Array.isArray(a) ? a.map((o) => {
r = r.concat(o.abstract);
}) : r = r.concat(a.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(re.cssPrefix, "-layers"), ...n].join(" ")
},
children: r
}];
});
}
};
}
}, pE = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: n = null,
classes: r = [],
attributes: a = {},
styles: o = {}
} = t;
return Eo({
type: "counter",
content: e
}, () => (jn("beforeDOMElementCreation", {
content: e,
params: t
}), Y2({
content: e.toString(),
title: n,
extra: {
attributes: a,
styles: o,
classes: ["".concat(re.cssPrefix, "-layers-counter"), ...r]
}
})));
}
};
}
}, mE = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: n = Pt,
title: r = null,
classes: a = [],
attributes: o = {},
styles: i = {}
} = t;
return Eo({
type: "text",
content: e
}, () => (jn("beforeDOMElementCreation", {
content: e,
params: t
}), Qu({
content: e,
transform: H(H({}, Pt), n),
title: r,
extra: {
attributes: o,
styles: i,
classes: ["".concat(re.cssPrefix, "-layers-text"), ...a]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, n) {
const {
title: r,
transform: a,
extra: o
} = n;
let i = null, s = null;
if (bm) {
const l = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / l, s = c.height / l;
}
return re.autoA11y && !r && (o.attributes["aria-hidden"] = "true"), Promise.resolve([t, Qu({
content: t.innerHTML,
width: i,
height: s,
transform: a,
title: r,
extra: o,
watchable: !0
})]);
};
}
};
const gE = new RegExp('"', "ug"), sf = [1105920, 1112319], lf = H(H(H(H({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), Dw), t2), qw), As = Object.keys(lf).reduce((e, t) => (e[t.toLowerCase()] = lf[t], e), {}), hE = Object.keys(As).reduce((e, t) => {
const n = As[t];
return e[t] = n[900] || [...Object.entries(n)][0][1], e;
}, {});
function yE(e) {
const t = e.replace(gE, ""), n = k2(t, 0), r = n >= sf[0] && n <= sf[1], a = t.length === 2 ? t[0] === t[1] : !1;
return {
value: jm(a ? t[0] : t),
isSecondary: r || a
};
}
function bE(e, t) {
const n = e.replace(/^['"]|['"]$/g, "").toLowerCase(), r = parseInt(t), a = isNaN(r) ? "normal" : r;
return (As[n] || {})[a] || hE[n];
}
function cf(e, t) {
const n = "".concat(n2).concat(t.replace(":", "-"));
return new Promise((r, a) => {
if (e.getAttribute(n) !== null)
return r();
const o = ur(e.children).filter((p) => p.getAttribute(hs) === t)[0], i = cn.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), l = s.match(s2), c = i.getPropertyValue("font-weight"), u = i.getPropertyValue("content");
if (o && !l)
return e.removeChild(o), r();
if (l && u !== "none" && u !== "") {
const p = i.getPropertyValue("content");
let m = bE(s, c);
const {
value: b,
isSecondary: x
} = yE(p), v = l[0].startsWith("FontAwesome");
let y = Tl(m, b), w = y;
if (v) {
const P = _2(b);
P.iconName && P.prefix && (y = P.iconName, m = P.prefix);
}
if (y && !x && (!o || o.getAttribute(Pl) !== m || o.getAttribute(Ol) !== w)) {
e.setAttribute(n, w), o && e.removeChild(o);
const P = oE(), {
extra: S
} = P;
S.attributes[hs] = t, Ps(y, m).then((_) => {
const h = Nl(H(H({}, P), {}, {
icons: {
main: _,
mask: Wm()
},
prefix: m,
iconName: w,
extra: S,
watchable: !0
})), G = je.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(G, e.firstChild) : e.appendChild(G), G.outerHTML = h.map((U) => Qr(U)).join(`
`), e.removeAttribute(n), r();
}).catch(a);
} else
r();
} else
r();
});
}
function vE(e) {
return Promise.all([cf(e, "::before"), cf(e, "::after")]);
}
function xE(e) {
return e.parentNode !== document.head && !~a2.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(hs) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function uf(e) {
if (Yt)
return new Promise((t, n) => {
const r = ur(e.querySelectorAll("*")).filter(xE).map(vE), a = Il.begin("searchPseudoElements");
Um(), Promise.all(r).then(() => {
a(), Ss(), t();
}).catch(() => {
a(), Ss(), n();
});
});
}
var wE = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = uf, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: n = je
} = t;
re.searchPseudoElements && uf(n);
};
}
};
let ff = !1;
var EE = {
mixout() {
return {
dom: {
unwatch() {
Um(), ff = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
rf(ws("mutationObserverCallbacks", {}));
},
noAuto() {
tE();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
ff ? Ss() : rf(ws("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const df = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((n, r) => {
const a = r.toLowerCase().split("-"), o = a[0];
let i = a.slice(1).join("-");
if (o && i === "h")
return n.flipX = !0, n;
if (o && i === "v")
return n.flipY = !0, n;
if (i = parseFloat(i), isNaN(i))
return n;
switch (o) {
case "grow":
n.size = n.size + i;
break;
case "shrink":
n.size = n.size - i;
break;
case "left":
n.x = n.x - i;
break;
case "right":
n.x = n.x + i;
break;
case "up":
n.y = n.y - i;
break;
case "down":
n.y = n.y + i;
break;
case "rotate":
n.rotate = n.rotate + i;
break;
}
return n;
}, t);
};
var kE = {
mixout() {
return {
parse: {
transform: (e) => df(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const n = t.getAttribute("data-fa-transform");
return n && (e.transform = df(n)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: n,
transform: r,
containerWidth: a,
iconWidth: o
} = t;
const i = {
transform: "translate(".concat(a / 2, " 256)")
}, s = "translate(".concat(r.x * 32, ", ").concat(r.y * 32, ") "), l = "scale(".concat(r.size / 16 * (r.flipX ? -1 : 1), ", ").concat(r.size / 16 * (r.flipY ? -1 : 1), ") "), c = "rotate(".concat(r.rotate, " 0 0)"), u = {
transform: "".concat(s, " ").concat(l, " ").concat(c)
}, p = {
transform: "translate(".concat(o / 2 * -1, " -256)")
}, m = {
outer: i,
inner: u,
path: p
};
return {
tag: "g",
attributes: H({}, m.outer),
children: [{
tag: "g",
attributes: H({}, m.inner),
children: [{
tag: n.icon.tag,
children: n.icon.children,
attributes: H(H({}, n.icon.attributes), m.path)
}]
}]
};
};
}
};
const pi = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function pf(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 PE(e) {
return e.tag === "g" ? e.children : [e];
}
var OE = {
hooks() {
return {
parseNodeAttributes(e, t) {
const n = t.getAttribute("data-fa-mask"), r = n ? wo(n.split(" ").map((a) => a.trim())) : Wm();
return r.prefix || (r.prefix = un()), e.mask = r, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: n,
attributes: r,
main: a,
mask: o,
maskId: i,
transform: s
} = t;
const {
width: l,
icon: c
} = a, {
width: u,
icon: p
} = o, m = y2({
transform: s,
containerWidth: u,
iconWidth: l
}), b = {
tag: "rect",
attributes: H(H({}, pi), {}, {
fill: "white"
})
}, x = c.children ? {
children: c.children.map(pf)
} : {}, v = {
tag: "g",
attributes: H({}, m.inner),
children: [pf(H({
tag: c.tag,
attributes: H(H({}, c.attributes), m.path)
}, x))]
}, y = {
tag: "g",
attributes: H({}, m.outer),
children: [v]
}, w = "mask-".concat(i || $r()), P = "clip-".concat(i || $r()), S = {
tag: "mask",
attributes: H(H({}, pi), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [b, y]
}, _ = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: P
},
children: PE(p)
}, S]
};
return n.push(_, {
tag: "rect",
attributes: H({
fill: "currentColor",
"clip-path": "url(#".concat(P, ")"),
mask: "url(#".concat(w, ")")
}, pi)
}), {
children: n,
attributes: r
};
};
}
}, SE = {
provides(e) {
let t = !1;
cn.matchMedia && (t = cn.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const n = [], r = {
fill: "currentColor"
}, a = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
n.push({
tag: "path",
attributes: H(H({}, r), {}, {
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 o = H(H({}, a), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: H(H({}, r), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: H(H({}, a), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: H(H({}, o), {}, {
values: "1;0;1;1;0;1;"
})
}), n.push(i), n.push({
tag: "path",
attributes: H(H({}, r), {}, {
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: H(H({}, o), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || n.push({
tag: "path",
attributes: H(H({}, r), {}, {
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: H(H({}, o), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: n
};
};
}
}, AE = {
hooks() {
return {
parseNodeAttributes(e, t) {
const n = t.getAttribute("data-fa-symbol"), r = n === null ? !1 : n === "" ? !0 : n;
return e.symbol = r, e;
}
};
}
}, CE = [x2, fE, dE, pE, mE, wE, EE, kE, OE, SE, AE];
D2(CE, {
mixoutsTo: ct
});
ct.noAuto;
ct.config;
ct.library;
ct.dom;
const Cs = ct.parse;
ct.findIconDefinition;
ct.toHtml;
const _E = ct.icon;
ct.layer;
ct.text;
ct.counter;
function TE(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var xa = { exports: {} }, mi = { exports: {} }, Oe = {};
/** @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 mf;
function NE() {
if (mf) return Oe;
mf = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, n = e ? Symbol.for("react.portal") : 60106, r = e ? Symbol.for("react.fragment") : 60107, a = e ? Symbol.for("react.strict_mode") : 60108, o = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, l = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, u = e ? Symbol.for("react.forward_ref") : 60112, p = e ? Symbol.for("react.suspense") : 60113, m = e ? Symbol.for("react.suspense_list") : 60120, b = e ? Symbol.for("react.memo") : 60115, x = e ? Symbol.for("react.lazy") : 60116, v = e ? Symbol.for("react.block") : 60121, y = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, P = e ? Symbol.for("react.scope") : 60119;
function S(h) {
if (typeof h == "object" && h !== null) {
var G = h.$$typeof;
switch (G) {
case t:
switch (h = h.type, h) {
case l:
case c:
case r:
case o:
case a:
case p:
return h;
default:
switch (h = h && h.$$typeof, h) {
case s:
case u:
case x:
case b:
case i:
return h;
default:
return G;
}
}
case n:
return G;
}
}
}
function _(h) {
return S(h) === c;
}
return Oe.AsyncMode = l, Oe.ConcurrentMode = c, Oe.ContextConsumer = s, Oe.ContextProvider = i, Oe.Element = t, Oe.ForwardRef = u, Oe.Fragment = r, Oe.Lazy = x, Oe.Memo = b, Oe.Portal = n, Oe.Profiler = o, Oe.StrictMode = a, Oe.Suspense = p, Oe.isAsyncMode = function(h) {
return _(h) || S(h) === l;
}, Oe.isConcurrentMode = _, Oe.isContextConsumer = function(h) {
return S(h) === s;
}, Oe.isContextProvider = function(h) {
return S(h) === i;
}, Oe.isElement = function(h) {
return typeof h == "object" && h !== null && h.$$typeof === t;
}, Oe.isForwardRef = function(h) {
return S(h) === u;
}, Oe.isFragment = function(h) {
return S(h) === r;
}, Oe.isLazy = function(h) {
return S(h) === x;
}, Oe.isMemo = function(h) {
return S(h) === b;
}, Oe.isPortal = function(h) {
return S(h) === n;
}, Oe.isProfiler = function(h) {
return S(h) === o;
}, Oe.isStrictMode = function(h) {
return S(h) === a;
}, Oe.isSuspense = function(h) {
return S(h) === p;
}, Oe.isValidElementType = function(h) {
return typeof h == "string" || typeof h == "function" || h === r || h === c || h === o || h === a || h === p || h === m || typeof h == "object" && h !== null && (h.$$typeof === x || h.$$typeof === b || h.$$typeof === i || h.$$typeof === s || h.$$typeof === u || h.$$typeof === y || h.$$typeof === w || h.$$typeof === P || h.$$typeof === v);
}, Oe.typeOf = S, Oe;
}
var Ae = {};
/** @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 gf;
function IE() {
return gf || (gf = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, n = e ? Symbol.for("react.portal") : 60106, r = e ? Symbol.for("react.fragment") : 60107, a = e ? Symbol.for("react.strict_mode") : 60108, o = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, l = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, u = e ? Symbol.for("react.forward_ref") : 60112, p = e ? Symbol.for("react.suspense") : 60113, m = e ? Symbol.for("react.suspense_list") : 60120, b = e ? Symbol.for("react.memo") : 60115, x = e ? Symbol.for("react.lazy") : 60116, v = e ? Symbol.for("react.block") : 60121, y = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, P = e ? Symbol.for("react.scope") : 60119;
function S(O) {
return typeof O == "string" || typeof O == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
O === r || O === c || O === o || O === a || O === p || O === m || typeof O == "object" && O !== null && (O.$$typeof === x || O.$$typeof === b || O.$$typeof === i || O.$$typeof === s || O.$$typeof === u || O.$$typeof === y || O.$$typeof === w || O.$$typeof === P || O.$$typeof === v);
}
function _(O) {
if (typeof O == "object" && O !== null) {
var Ee = O.$$typeof;
switch (Ee) {
case t:
var qe = O.type;
switch (qe) {
case l:
case c:
case r:
case o:
case a:
case p:
return qe;
default:
var ht = qe && qe.$$typeof;
switch (ht) {
case s:
case u:
case x:
case b:
case i:
return ht;
default:
return Ee;
}
}
case n:
return Ee;
}
}
}
var h = l, G = c, U = s, te = i, X = t, Z = u, Q = r, B = x, oe = b, q = n, J = o, Y = a, M = p, K = !1;
function z(O) {
return K || (K = !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.")), g(O) || _(O) === l;
}
function g(O) {
return _(O) === c;
}
function d(O) {
return _(O) === s;
}
function E(O) {
return _(O) === i;
}
function A(O) {
return typeof O == "object" && O !== null && O.$$typeof === t;
}
function C(O) {
return _(O) === u;
}
function T(O) {
return _(O) === r;
}
function I(O) {
return _(O) === x;
}
function N(O) {
return _(O) === b;
}
function F(O) {
return _(O) === n;
}
function L(O) {
return _(O) === o;
}
function D(O) {
return _(O) === a;
}
function ce(O) {
return _(O) === p;
}
Ae.AsyncMode = h, Ae.ConcurrentMode = G, Ae.ContextConsumer = U, Ae.ContextProvider = te, Ae.Element = X, Ae.ForwardRef = Z, Ae.Fragment = Q, Ae.Lazy = B, Ae.Memo = oe, Ae.Portal = q, Ae.Profiler = J, Ae.StrictMode = Y, Ae.Suspense = M, Ae.isAsyncMode = z, Ae.isConcurrentMode = g, Ae.isContextConsumer = d, Ae.isContextProvider = E, Ae.isElement = A, Ae.isForwardRef = C, Ae.isFragment = T, Ae.isLazy = I, Ae.isMemo = N, Ae.isPortal = F, Ae.isProfiler = L, Ae.isStrictMode = D, Ae.isSuspense = ce, Ae.isValidElementType = S, Ae.typeOf = _;
}()), Ae;
}
var hf;
function Km() {
return hf || (hf = 1, process.env.NODE_ENV === "production" ? mi.exports = NE() : mi.exports = IE()), mi.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var gi, yf;
function jE() {
if (yf) return gi;
yf = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, n = Object.prototype.propertyIsEnumerable;
function r(o) {
if (o == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(o);
}
function a() {
try {
if (!Object.assign)
return !1;
var o = new String("abc");
if (o[5] = "de", Object.getOwnPropertyNames(o)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var l = Object.getOwnPropertyNames(i).map(function(u) {
return i[u];
});
if (l.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(u) {
c[u] = u;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return gi = a() ? Object.assign : function(o, i) {
for (var s, l = r(o), c, u = 1; u < arguments.length; u++) {
s = Object(arguments[u]);
for (var p in s)
t.call(s, p) && (l[p] = s[p]);
if (e) {
c = e(s);
for (var m = 0; m < c.length; m++)
n.call(s, c[m]) && (l[c[m]] = s[c[m]]);
}
}
return l;
}, gi;
}
var hi, bf;
function Ml() {
if (bf) return hi;
bf = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return hi = e, hi;
}
var vf, xf;
function Xm() {
return xf || (xf = 1, vf = Function.call.bind(Object.prototype.hasOwnProperty)), vf;
}
var yi, wf;
function ME() {
if (wf) return yi;
wf = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ Ml(), n = {}, r = /* @__PURE__ */ Xm();
e = function(o) {
var i = "Warning: " + o;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function a(o, i, s, l, c) {
if (process.env.NODE_ENV !== "production") {
for (var u in o)
if (r(o, u)) {
var p;
try {
if (typeof o[u] != "function") {
var m = Error(
(l || "React class") + ": " + s + " type `" + u + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof o[u] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw m.name = "Invariant Violation", m;
}
p = o[u](i, u, l, s, null, t);
} catch (x) {
p = x;
}
if (p && !(p instanceof Error) && e(
(l || "React class") + ": type specification of " + s + " `" + u + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof p + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), p instanceof Error && !(p.message in n)) {
n[p.message] = !0;
var b = c ? c() : "";
e(
"Failed " + s + " type: " + p.message + (b ?? "")
);
}
}
}
}
return a.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (n = {});
}, yi = a, yi;
}
var bi, Ef;
function FE() {
if (Ef) return bi;
Ef = 1;
var e = Km(), t = jE(), n = /* @__PURE__ */ Ml(), r = /* @__PURE__ */ Xm(), a = /* @__PURE__ */ ME(), o = function() {
};
process.env.NODE_ENV !== "production" && (o = function(s) {
var l = "Warning: " + s;
typeof console < "u" && console.error(l);
try {
throw new Error(l);
} catch {
}
});
function i() {
return null;
}
return bi = function(s, l) {
var c = typeof Symbol == "function" && Symbol.iterator, u = "@@iterator";
function p(g) {
var d = g && (c && g[c] || g[u]);
if (typeof d == "function")
return d;
}
var m = "<<anonymous>>", b = {
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: P(),
arrayOf: S,
element: _(),
elementType: h(),
instanceOf: G,
node: Z(),
objectOf: te,
oneOf: U,
oneOfType: X,
shape: B,
exact: oe
};
function x(g, d) {
return g === d ? g !== 0 || 1 / g === 1 / d : g !== g && d !== d;
}
function v(g, d) {
this.message = g, this.data = d && typeof d == "object" ? d : {}, this.stack = "";
}
v.prototype = Error.prototype;
function y(g) {
if (process.env.NODE_ENV !== "production")
var d = {}, E = 0;
function A(T, I, N, F, L, D, ce) {
if (F = F || m, D = D || N, ce !== n) {
if (l) {
var O = 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 O.name = "Invariant Violation", O;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var Ee = F + ":" + N;
!d[Ee] && // Avoid spamming the console because they are often not actionable except for lib authors
E < 3 && (o(
"You are manually calling a React.PropTypes validation function for the `" + D + "` prop on `" + F + "`. 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."
), d[Ee] = !0, E++);
}
}
return I[N] == null ? T ? I[N] === null ? new v("The " + L + " `" + D + "` is marked as required " + ("in `" + F + "`, but its value is `null`.")) : new v("The " + L + " `" + D + "` is marked as required in " + ("`" + F + "`, but its value is `undefined`.")) : null : g(I, N, F, L, D);
}
var C = A.bind(null, !1);
return C.isRequired = A.bind(null, !0), C;
}
function w(g) {
function d(E, A, C, T, I, N) {
var F = E[A], L = Y(F);
if (L !== g) {
var D = M(F);
return new v(
"Invalid " + T + " `" + I + "` of type " + ("`" + D + "` supplied to `" + C + "`, expected ") + ("`" + g + "`."),
{ expectedType: g }
);
}
return null;
}
return y(d);
}
function P() {
return y(i);
}
function S(g) {
function d(E, A, C, T, I) {
if (typeof g != "function")
return new v("Property `" + I + "` of component `" + C + "` has invalid PropType notation inside arrayOf.");
var N = E[A];
if (!Array.isArray(N)) {
var F = Y(N);
return new v("Invalid " + T + " `" + I + "` of type " + ("`" + F + "` supplied to `" + C + "`, expected an array."));
}
for (var L = 0; L < N.length; L++) {
var D = g(N, L, C, T, I + "[" + L + "]", n);
if (D instanceof Error)
return D;
}
return null;
}
return y(d);
}
function _() {
function g(d, E, A, C, T) {
var I = d[E];
if (!s(I)) {
var N = Y(I);
return new v("Invalid " + C + " `" + T + "` of type " + ("`" + N + "` supplied to `" + A + "`, expected a single ReactElement."));
}
return null;
}
return y(g);
}
function h() {
function g(d, E, A, C, T) {
var I = d[E];
if (!e.isValidElementType(I)) {
var N = Y(I);
return new v("Invalid " + C + " `" + T + "` of type " + ("`" + N + "` supplied to `" + A + "`, expected a single ReactElement type."));
}
return null;
}
return y(g);
}
function G(g) {
function d(E, A, C, T, I) {
if (!(E[A] instanceof g)) {
var N = g.name || m, F = z(E[A]);
return new v("Invalid " + T + " `" + I + "` of type " + ("`" + F + "` supplied to `" + C + "`, expected ") + ("instance of `" + N + "`."));
}
return null;
}
return y(d);
}
function U(g) {
if (!Array.isArray(g))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? o(
"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])."
) : o("Invalid argument supplied to oneOf, expected an array.")), i;
function d(E, A, C, T, I) {
for (var N = E[A], F = 0; F < g.length; F++)
if (x(N, g[F]))
return null;
var L = JSON.stringify(g, function(D, ce) {
var O = M(ce);
return O === "symbol" ? String(ce) : ce;
});
return new v("Invalid " + T + " `" + I + "` of value `" + String(N) + "` " + ("supplied to `" + C + "`, expected one of " + L + "."));
}
return y(d);
}
function te(g) {
function d(E, A, C, T, I) {
if (typeof g != "function")
return new v("Property `" + I + "` of component `" + C + "` has invalid PropType notation inside objectOf.");
var N = E[A], F = Y(N);
if (F !== "object")
return new v("Invalid " + T + " `" + I + "` of type " + ("`" + F + "` supplied to `" + C + "`, expected an object."));
for (var L in N)
if (r(N, L)) {
var D = g(N, L, C, T, I + "." + L, n);
if (D instanceof Error)
return D;
}
return null;
}
return y(d);
}
function X(g) {
if (!Array.isArray(g))
return process.env.NODE_ENV !== "production" && o("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var d = 0; d < g.length; d++) {
var E = g[d];
if (typeof E != "function")
return o(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + K(E) + " at index " + d + "."
), i;
}
function A(C, T, I, N, F) {
for (var L = [], D = 0; D < g.length; D++) {
var ce = g[D], O = ce(C, T, I, N, F, n);
if (O == null)
return null;
O.data && r(O.data, "expectedType") && L.push(O.data.expectedType);
}
var Ee = L.length > 0 ? ", expected one of type [" + L.join(", ") + "]" : "";
return new v("Invalid " + N + " `" + F + "` supplied to " + ("`" + I + "`" + Ee + "."));
}
return y(A);
}
function Z() {
function g(d, E, A, C, T) {
return q(d[E]) ? null : new v("Invalid " + C + " `" + T + "` supplied to " + ("`" + A + "`, expected a ReactNode."));
}
return y(g);
}
function Q(g, d, E, A, C) {
return new v(
(g || "React class") + ": " + d + " type `" + E + "." + A + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + C + "`."
);
}
function B(g) {
function d(E, A, C, T, I) {
var N = E[A], F = Y(N);
if (F !== "object")
return new v("Invalid " + T + " `" + I + "` of type `" + F + "` " + ("supplied to `" + C + "`, expected `object`."));
for (var L in g) {
var D = g[L];
if (typeof D != "function")
return Q(C, T, I, L, M(D));
var ce = D(N, L, C, T, I + "." + L, n);
if (ce)
return ce;
}
return null;
}
return y(d);
}
function oe(g) {
function d(E, A, C, T, I) {
var N = E[A], F = Y(N);
if (F !== "object")
return new v("Invalid " + T + " `" + I + "` of type `" + F + "` " + ("supplied to `" + C + "`, expected `object`."));
var L = t({}, E[A], g);
for (var D in L) {
var ce = g[D];
if (r(g, D) && typeof ce != "function")
return Q(C, T, I, D, M(ce));
if (!ce)
return new v(
"Invalid " + T + " `" + I + "` key `" + D + "` supplied to `" + C + "`.\nBad object: " + JSON.stringify(E[A], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(g), null, " ")
);
var O = ce(N, D, C, T, I + "." + D, n);
if (O)
return O;
}
return null;
}
return y(d);
}
function q(g) {
switch (typeof g) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !g;
case "object":
if (Array.isArray(g))
return g.every(q);
if (g === null || s(g))
return !0;
var d = p(g);
if (d) {
var E = d.call(g), A;
if (d !== g.entries) {
for (; !(A = E.next()).done; )
if (!q(A.value))
return !1;
} else
for (; !(A = E.next()).done; ) {
var C = A.value;
if (C && !q(C[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function J(g, d) {
return g === "symbol" ? !0 : d ? d["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && d instanceof Symbol : !1;
}
function Y(g) {
var d = typeof g;
return Array.isArray(g) ? "array" : g instanceof RegExp ? "object" : J(d, g) ? "symbol" : d;
}
function M(g) {
if (typeof g > "u" || g === null)
return "" + g;
var d = Y(g);
if (d === "object") {
if (g instanceof Date)
return "date";
if (g instanceof RegExp)
return "regexp";
}
return d;
}
function K(g) {
var d = M(g);
switch (d) {
case "array":
case "object":
return "an " + d;
case "boolean":
case "date":
case "regexp":
return "a " + d;
default:
return d;
}
}
function z(g) {
return !g.constructor || !g.constructor.name ? m : g.constructor.name;
}
return b.checkPropTypes = a, b.resetWarningCache = a.resetWarningCache, b.PropTypes = b, b;
}, bi;
}
var vi, kf;
function RE() {
if (kf) return vi;
kf = 1;
var e = /* @__PURE__ */ Ml();
function t() {
}
function n() {
}
return n.resetWarningCache = t, vi = function() {
function r(i, s, l, c, u, p) {
if (p !== e) {
var m = 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 m.name = "Invariant Violation", m;
}
}
r.isRequired = r;
function a() {
return r;
}
var o = {
array: r,
bigint: r,
bool: r,
func: r,
number: r,
object: r,
string: r,
symbol: r,
any: r,
arrayOf: a,
element: r,
elementType: r,
instanceOf: a,
node: r,
objectOf: a,
oneOf: a,
oneOfType: a,
shape: a,
exact: a,
checkPropTypes: n,
resetWarningCache: t
};
return o.PropTypes = o, o;
}, vi;
}
var Pf;
function LE() {
if (Pf) return xa.exports;
if (Pf = 1, process.env.NODE_ENV !== "production") {
var e = Km(), t = !0;
xa.exports = /* @__PURE__ */ FE()(e.isElement, t);
} else
xa.exports = /* @__PURE__ */ RE()();
return xa.exports;
}
var DE = /* @__PURE__ */ LE();
const ye = /* @__PURE__ */ TE(DE);
function Of(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter(function(a) {
return Object.getOwnPropertyDescriptor(e, a).enumerable;
})), n.push.apply(n, r);
}
return n;
}
function vt(e) {
for (var t = 1; t < arguments.length; t++) {
var n = arguments[t] != null ? arguments[t] : {};
t % 2 ? Of(Object(n), !0).forEach(function(r) {
Yn(e, r, n[r]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : Of(Object(n)).forEach(function(r) {
Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
});
}
return e;
}
function Va(e) {
"@babel/helpers - typeof";
return Va = 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;
}, Va(e);
}
function Yn(e, t, n) {
return t in e ? Object.defineProperty(e, t, {
value: n,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = n, e;
}
function zE(e, t) {
if (e == null) return {};
var n = {}, r = Object.keys(e), a, o;
for (o = 0; o < r.length; o++)
a = r[o], !(t.indexOf(a) >= 0) && (n[a] = e[a]);
return n;
}
function $E(e, t) {
if (e == null) return {};
var n = zE(e, t), r, a;
if (Object.getOwnPropertySymbols) {
var o = Object.getOwnPropertySymbols(e);
for (a = 0; a < o.length; a++)
r = o[a], !(t.indexOf(r) >= 0) && Object.prototype.propertyIsEnumerable.call(e, r) && (n[r] = e[r]);
}
return n;
}
function _s(e) {
return HE(e) || WE(e) || BE(e) || GE();
}
function HE(e) {
if (Array.isArray(e)) return Ts(e);
}
function WE(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function BE(e, t) {
if (e) {
if (typeof e == "string") return Ts(e, t);
var n = Object.prototype.toString.call(e).slice(8, -1);
if (n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set") return Array.from(e);
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Ts(e, t);
}
}
function Ts(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
return r;
}
function GE() {
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 YE(e) {
var t, n = e.beat, r = e.fade, a = e.beatFade, o = e.bounce, i = e.shake, s = e.flash, l = e.spin, c = e.spinPulse, u = e.spinReverse, p = e.pulse, m = e.fixedWidth, b = e.inverse, x = e.border, v = e.listItem, y = e.flip, w = e.size, P = e.rotation, S = e.pull, _ = (t = {
"fa-beat": n,
"fa-fade": r,
"fa-beat-fade": a,
"fa-bounce": o,
"fa-shake": i,
"fa-flash": s,
"fa-spin": l,
"fa-spin-reverse": u,
"fa-spin-pulse": c,
"fa-pulse": p,
"fa-fw": m,
"fa-inverse": b,
"fa-border": x,
"fa-li": v,
"fa-flip": y === !0,
"fa-flip-horizontal": y === "horizontal" || y === "both",
"fa-flip-vertical": y === "vertical" || y === "both"
}, Yn(t, "fa-".concat(w), typeof w < "u" && w !== null), Yn(t, "fa-rotate-".concat(P), typeof P < "u" && P !== null && P !== 0), Yn(t, "fa-pull-".concat(S), typeof S < "u" && S !== null), Yn(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(_).map(function(h) {
return _[h] ? h : null;
}).filter(function(h) {
return h;
});
}
function VE(e) {
return e = e - 0, e === e;
}
function Jm(e) {
return VE(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, n) {
return n ? n.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var UE = ["style"];
function qE(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function KE(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, n) {
var r = n.indexOf(":"), a = Jm(n.slice(0, r)), o = n.slice(r + 1).trim();
return a.startsWith("webkit") ? t[qE(a)] = o : t[a] = o, t;
}, {});
}
function Zm(e, t) {
var n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var r = (t.children || []).map(function(l) {
return Zm(e, l);
}), a = Object.keys(t.attributes || {}).reduce(function(l, c) {
var u = t.attributes[c];
switch (c) {
case "class":
l.attrs.className = u, delete t.attributes.class;
break;
case "style":
l.attrs.style = KE(u);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? l.attrs[c.toLowerCase()] = u : l.attrs[Jm(c)] = u;
}
return l;
}, {
attrs: {}
}), o = n.style, i = o === void 0 ? {} : o, s = $E(n, UE);
return a.attrs.style = vt(vt({}, a.attrs.style), i), e.apply(void 0, [t.tag, vt(vt({}, a.attrs), s)].concat(_s(r)));
}
var Qm = !1;
try {
Qm = process.env.NODE_ENV === "production";
} catch {
}
function XE() {
if (!Qm && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function Sf(e) {
if (e && Va(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (Cs.icon)
return Cs.icon(e);
if (e === null)
return null;
if (e && Va(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 xi(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Yn({}, e, t) : {};
}
var Af = {
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
}, rt = /* @__PURE__ */ ue.forwardRef(function(e, t) {
var n = vt(vt({}, Af), e), r = n.icon, a = n.mask, o = n.symbol, i = n.className, s = n.title, l = n.titleId, c = n.maskId, u = Sf(r), p = xi("classes", [].concat(_s(YE(n)), _s((i || "").split(" ")))), m = xi("transform", typeof n.transform == "string" ? Cs.transform(n.transform) : n.transform), b = xi("mask", Sf(a)), x = _E(u, vt(vt(vt(vt({}, p), m), b), {}, {
symbol: o,
title: s,
titleId: l,
maskId: c
}));
if (!x)
return XE("Could not find icon", u), null;
var v = x.abstract, y = {
ref: t
};
return Object.keys(n).forEach(function(w) {
Af.hasOwnProperty(w) || (y[w] = n[w]);
}), JE(v[0], y);
});
rt.displayName = "FontAwesomeIcon";
rt.propTypes = {
beat: ye.bool,
border: ye.bool,
beatFade: ye.bool,
bounce: ye.bool,
className: ye.string,
fade: ye.bool,
flash: ye.bool,
mask: ye.oneOfType([ye.object, ye.array, ye.string]),
maskId: ye.string,
fixedWidth: ye.bool,
inverse: ye.bool,
flip: ye.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: ye.oneOfType([ye.object, ye.array, ye.string]),
listItem: ye.bool,
pull: ye.oneOf(["right", "left"]),
pulse: ye.bool,
rotation: ye.oneOf([0, 90, 180, 270]),
shake: ye.bool,
size: ye.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: ye.bool,
spinPulse: ye.bool,
spinReverse: ye.bool,
symbol: ye.oneOfType([ye.bool, ye.string]),
title: ye.string,
titleId: ye.string,
transform: ye.oneOfType([ye.string, ye.object]),
swapOpacity: ye.bool
};
var JE = Zm.bind(null, ue.createElement);
const Fl = "-", ZE = (e) => {
const t = ek(e), {
conflictingClassGroups: n,
conflictingClassGroupModifiers: r
} = e;
return {
getClassGroupId: (a) => {
const o = a.split(Fl);
return o[0] === "" && o.length !== 1 && o.shift(), eg(o, t) || QE(a);
},
getConflictingClassGroupIds: (a, o) => {
const i = n[a] || [];
return o && r[a] ? [...i, ...r[a]] : i;
}
};
}, eg = (e, t) => {
var n;
if (e.length === 0)
return t.classGroupId;
const r = e[0], a = t.nextPart.get(r), o = a ? eg(e.slice(1), a) : void 0;
if (o)
return o;
if (t.validators.length === 0)
return;
const i = e.join(Fl);
return (n = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : n.classGroupId;
}, Cf = /^\[(.+)\]$/, QE = (e) => {
if (Cf.test(e)) {
const t = Cf.exec(e)[1], n = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (n)
return "arbitrary.." + n;
}
}, ek = (e) => {
const {
theme: t,
prefix: n
} = e, r = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return nk(Object.entries(e.classGroups), n).forEach(([a, o]) => {
Ns(o, r, a, t);
}), r;
}, Ns = (e, t, n, r) => {
e.forEach((a) => {
if (typeof a == "string") {
const o = a === "" ? t : _f(t, a);
o.classGroupId = n;
return;
}
if (typeof a == "function") {
if (tk(a)) {
Ns(a(r), t, n, r);
return;
}
t.validators.push({
validator: a,
classGroupId: n
});
return;
}
Object.entries(a).forEach(([o, i]) => {
Ns(i, _f(t, o), n, r);
});
});
}, _f = (e, t) => {
let n = e;
return t.split(Fl).forEach((r) => {
n.nextPart.has(r) || n.nextPart.set(r, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), n = n.nextPart.get(r);
}), n;
}, tk = (e) => e.isThemeGetter, nk = (e, t) => t ? e.map(([n, r]) => {
const a = r.map((o) => typeof o == "string" ? t + o : typeof o == "object" ? Object.fromEntries(Object.entries(o).map(([i, s]) => [t + i, s])) : o);
return [n, a];
}) : e, rk = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, n = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map();
const a = (o, i) => {
n.set(o, i), t++, t > e && (t = 0, r = n, n = /* @__PURE__ */ new Map());
};
return {
get(o) {
let i = n.get(o);
if (i !== void 0)
return i;
if ((i = r.get(o)) !== void 0)
return a(o, i), i;
},
set(o, i) {
n.has(o) ? n.set(o, i) : a(o, i);
}
};
}, tg = "!", ak = (e) => {
const {
separator: t,
experimentalParseClassName: n
} = e, r = t.length === 1, a = t[0], o = t.length, i = (s) => {
const l = [];
let c = 0, u = 0, p;
for (let y = 0; y < s.length; y++) {
let w = s[y];
if (c === 0) {
if (w === a && (r || s.slice(y, y + o) === t)) {
l.push(s.slice(u, y)), u = y + o;
continue;
}
if (w === "/") {
p = y;
continue;
}
}
w === "[" ? c++ : w === "]" && c--;
}
const m = l.length === 0 ? s : s.substring(u), b = m.startsWith(tg), x = b ? m.substring(1) : m, v = p && p > u ? p - u : void 0;
return {
modifiers: l,
hasImportantModifier: b,
baseClassName: x,
maybePostfixModifierPosition: v
};
};
return n ? (s) => n({
className: s,
parseClassName: i
}) : i;
}, ok = (e) => {
if (e.length <= 1)
return e;
const t = [];
let n = [];
return e.forEach((r) => {
r[0] === "[" ? (t.push(...n.sort(), r), n = []) : n.push(r);
}), t.push(...n.sort()), t;
}, ik = (e) => ({
cache: rk(e.cacheSize),
parseClassName: ak(e),
...ZE(e)
}), sk = /\s+/, lk = (e, t) => {
const {
parseClassName: n,
getClassGroupId: r,
getConflictingClassGroupIds: a
} = t, o = [], i = e.trim().split(sk);
let s = "";
for (let l = i.length - 1; l >= 0; l -= 1) {
const c = i[l], {
modifiers: u,
hasImportantModifier: p,
baseClassName: m,
maybePostfixModifierPosition: b
} = n(c);
let x = !!b, v = r(x ? m.substring(0, b) : m);
if (!v) {
if (!x) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
if (v = r(m), !v) {
s = c + (s.length > 0 ? " " + s : s);
continue;
}
x = !1;
}
const y = ok(u).join(":"), w = p ? y + tg : y, P = w + v;
if (o.includes(P))
continue;
o.push(P);
const S = a(v, x);
for (let _ = 0; _ < S.length; ++_) {
const h = S[_];
o.push(w + h);
}
s = c + (s.length > 0 ? " " + s : s);
}
return s;
};
function ck() {
let e = 0, t, n, r = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (n = ng(t)) && (r && (r += " "), r += n);
return r;
}
const ng = (e) => {
if (typeof e == "string")
return e;
let t, n = "";
for (let r = 0; r < e.length; r++)
e[r] && (t = ng(e[r])) && (n && (n += " "), n += t);
return n;
};
function uk(e, ...t) {
let n, r, a, o = i;
function i(l) {
const c = t.reduce((u, p) => p(u), e());
return n = ik(c), r = n.cache.get, a = n.cache.set, o = s, s(l);
}
function s(l) {
const c = r(l);
if (c)
return c;
const u = lk(l, n);
return a(l, u), u;
}
return function() {
return o(ck.apply(null, arguments));
};
}
const Ne = (e) => {
const t = (n) => n[e] || [];
return t.isThemeGetter = !0, t;
}, rg = /^\[(?:([a-z-]+):)?(.+)\]$/i, fk = /^\d+\/\d+$/, dk = /* @__PURE__ */ new Set(["px", "full", "screen"]), pk = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, mk = /\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$/, gk = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, hk = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, yk = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, jt = (e) => Zn(e) || dk.has(e) || fk.test(e), Zt = (e) => fr(e, "length", Ok), Zn = (e) => !!e && !Number.isNaN(Number(e)), wi = (e) => fr(e, "number", Zn), xr = (e) => !!e && Number.isInteger(Number(e)), bk = (e) => e.endsWith("%") && Zn(e.slice(0, -1)), me = (e) => rg.test(e), Qt = (e) => pk.test(e), vk = /* @__PURE__ */ new Set(["length", "size", "percentage"]), xk = (e) => fr(e, vk, ag), wk = (e) => fr(e, "position", ag), Ek = /* @__PURE__ */ new Set(["image", "url"]), kk = (e) => fr(e, Ek, Ak), Pk = (e) => fr(e, "", Sk), wr = () => !0, fr = (e, t, n) => {
const r = rg.exec(e);
return r ? r[1] ? typeof t == "string" ? r[1] === t : t.has(r[1]) : n(r[2]) : !1;
}, Ok = (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.
mk.test(e) && !gk.test(e)
), ag = () => !1, Sk = (e) => hk.test(e), Ak = (e) => yk.test(e), Ck = () => {
const e = Ne("colors"), t = Ne("spacing"), n = Ne("blur"), r = Ne("brightness"), a = Ne("borderColor"), o = Ne("borderRadius"), i = Ne("borderSpacing"), s = Ne("borderWidth"), l = Ne("contrast"), c = Ne("grayscale"), u = Ne("hueRotate"), p = Ne("invert"), m = Ne("gap"), b = Ne("gradientColorStops"), x = Ne("gradientColorStopPositions"), v = Ne("inset"), y = Ne("margin"), w = Ne("opacity"), P = Ne("padding"), S = Ne("saturate"), _ = Ne("scale"), h = Ne("sepia"), G = Ne("skew"), U = Ne("space"), te = Ne("translate"), X = () => ["auto", "contain", "none"], Z = () => ["auto", "hidden", "clip", "visible", "scroll"], Q = () => ["auto", me, t], B = () => [me, t], oe = () => ["", jt, Zt], q = () => ["auto", Zn, me], J = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], Y = () => ["solid", "dashed", "dotted", "double", "none"], M = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], K = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], z = () => ["", "0", me], g = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], d = () => [Zn, me];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [wr],
spacing: [jt, Zt],
blur: ["none", "", Qt, me],
brightness: d(),
borderColor: [e],
borderRadius: ["none", "", "full", Qt, me],
borderSpacing: B(),
borderWidth: oe(),
contrast: d(),
grayscale: z(),
hueRotate: d(),
invert: z(),
gap: B(),
gradientColorStops: [e],
gradientColorStopPositions: [bk, Zt],
inset: Q(),
margin: Q(),
opacity: d(),
padding: B(),
saturate: d(),
scale: d(),
sepia: z(),
skew: d(),
space: B(),
translate: B()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", me]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [Qt]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": g()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": g()
}],
/**
* 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: [...J(), me]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: Z()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": Z()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": Z()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: X()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": X()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": X()
}],
/**
* 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: [v]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [v]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [v]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [v]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [v]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [v]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [v]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [v]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [v]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", xr, me]
}],
// Flexbox and Grid
/**
* Flex Basis
* @see https://tailwindcss.com/docs/flex-basis
*/
basis: [{
basis: Q()
}],
/**
* 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", me]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: z()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: z()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", xr, me]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [wr]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", xr, me]
}, me]
}],
/**
* Grid Column Start
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start": [{
"col-start": q()
}],
/**
* Grid Column End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-end": [{
"col-end": q()
}],
/**
* Grid Template Rows
* @see https://tailwindcss.com/docs/grid-template-rows
*/
"grid-rows": [{
"grid-rows": [wr]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [xr, me]
}, me]
}],
/**
* Grid Row Start
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start": [{
"row-start": q()
}],
/**
* Grid Row End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-end": [{
"row-end": q()
}],
/**
* 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", me]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", me]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [m]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [m]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [m]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...K()]
}],
/**
* 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", ...K(), "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": [...K(), "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: [P]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [P]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [P]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [P]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [P]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [P]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [P]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [P]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [P]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [y]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [y]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [y]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [y]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [y]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [y]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [y]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [y]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [y]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [U]
}],
/**
* 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": [U]
}],
/**
* 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", me, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [me, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [me, t, "none", "full", "min", "max", "fit", "prose", {
screen: [Qt]
}, Qt]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [me, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [me, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [me, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [me, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", Qt, Zt]
}],
/**
* 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", wi]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [wr]
}],
/**
* 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", me]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", Zn, wi]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", jt, me]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", me]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", me]
}],
/**
* 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: [...Y(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", jt, Zt]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", jt, me]
}],
/**
* 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: B()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", me]
}],
/**
* 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", me]
}],
// 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: [...J(), wk]
}],
/**
* 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", xk]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, kk]
}],
/**
* 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: [x]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [x]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [x]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [b]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [b]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [b]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [o]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [o]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [o]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [o]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [o]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [o]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [o]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [o]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [o]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [o]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [o]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [o]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [o]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [o]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [o]
}],
/**
* 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: [...Y(), "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: Y()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [a]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [a]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [a]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [a]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [a]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [a]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [a]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [a]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [a]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [a]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...Y()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [jt, me]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [jt, Zt]
}],
/**
* 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: oe()
}],
/**
* 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": [jt, Zt]
}],
/**
* 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", Qt, Pk]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [wr]
}],
/**
* 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": [...M(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": M()
}],
// 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: [n]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [r]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [l]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", Qt, me]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [c]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [u]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [p]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [S]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [h]
}],
/**
* 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": [n]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [r]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [l]
}],
/**
* 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": [u]
}],
/**
* Backdrop Invert
* @see https://tailwindcss.com/docs/backdrop-invert
*/
"backdrop-invert": [{
"backdrop-invert": [p]
}],
/**
* 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": [S]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [h]
}],
// 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", me]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: d()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", me]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: d()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", me]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [_]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [_]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [_]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [xr, me]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [te]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [te]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [G]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [G]
}],
/**
* 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", me]
}],
// 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", me]
}],
/**
* 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": B()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": B()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": B()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": B()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": B()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": B()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": B()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": B()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": B()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": B()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": B()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": B()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": B()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": B()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": B()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": B()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": B()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": B()
}],
/**
* 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", me]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [jt, Zt, wi]
}],
/**
* 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"]
}
};
}, Tf = /* @__PURE__ */ uk(Ck);
/*!
* Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
* Copyright 2024 Fonticons, Inc.
*/
const Hn = {
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"]
}, Ei = ({
icon: e,
iconClassName: t,
children: n,
className: r,
htmlFor: a,
variant: o = "primary",
disabled: i,
iconFlip: s = !1,
loading: l,
as: c = "button",
href: u,
target: p,
...m
}) => {
function b(y) {
switch (y) {
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 x = Tf(
i || l ? "opacity-50 pointer-events-none" : ""
), v = Tf(
"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",
b(o),
r,
x
);
return a ? /* @__PURE__ */ Ge("label", { className: v, htmlFor: a, style: m.style, children: [
l && !s ? /* @__PURE__ */ se(rt, { icon: Hn, className: "animate-spin" }) : /* @__PURE__ */ se(yn, { children: e && !s ? /* @__PURE__ */ se(rt, { icon: e, className: t }) : null }),
n,
l && s ? /* @__PURE__ */ se(rt, { icon: Hn, className: "animate-spin" }) : /* @__PURE__ */ se(yn, { children: e && s ? /* @__PURE__ */ se(rt, { icon: e, className: t }) : null })
] }) : c === "link" && u ? /* @__PURE__ */ Ge(
"a",
{
href: u,
className: v,
style: m.style,
...m,
target: p,
children: [
l && !s ? /* @__PURE__ */ se(rt, { icon: Hn, className: "animate-spin" }) : /* @__PURE__ */ se(yn, { children: e && !s ? /* @__PURE__ */ se(rt, { icon: e, className: t }) : null }),
n,
l && s ? /* @__PURE__ */ se(rt, { icon: Hn, className: "animate-spin" }) : /* @__PURE__ */ se(yn, { children: e && s ? /* @__PURE__ */ se(rt, { icon: e, className: t }) : null })
]
}
) : /* @__PURE__ */ Ge(
"button",
{
className: v,
disabled: i || l,
...m,
htmlFor: a,
children: [
l && !s ? /* @__PURE__ */ se(rt, { icon: Hn, className: "animate-spin" }) : /* @__PURE__ */ se(yn, { children: e && !s ? /* @__PURE__ */ se(rt, { icon: e, className: t }) : null }),
n,
l && s ? /* @__PURE__ */ se(rt, { icon: Hn, className: "animate-spin" }) : /* @__PURE__ */ se(yn, { children: e && s ? /* @__PURE__ */ se(rt, { icon: e, className: t }) : null })
]
}
);
};
var Ta = /* @__PURE__ */ ((e) => (e[e.ALL = 0] = "ALL", e[e.FEATURED = 1] = "FEATURED", e[e.MINE = 2] = "MINE", e[e.BOOKMARKED = 3] = "BOOKMARKED", e))(Ta || {});
Ta.FEATURED, Ta.MINE, Ta.BOOKMARKED;
/*!
* 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 _k(e, t, n) {
return (t = Nk(t)) in e ? Object.defineProperty(e, t, {
value: n,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = n, e;
}
function Nf(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter(function(a) {
return Object.getOwnPropertyDescriptor(e, a).enumerable;
})), n.push.apply(n, r);
}
return n;
}
function W(e) {
for (var t = 1; t < arguments.length; t++) {
var n = arguments[t] != null ? arguments[t] : {};
t % 2 ? Nf(Object(n), !0).forEach(function(r) {
_k(e, r, n[r]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : Nf(Object(n)).forEach(function(r) {
Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
});
}
return e;
}
function Tk(e, t) {
if (typeof e != "object" || !e) return e;
var n = e[Symbol.toPrimitive];
if (n !== void 0) {
var r = n.call(e, t);
if (typeof r != "object") return r;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function Nk(e) {
var t = Tk(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const If = () => {
};
let Rl = {}, og = {}, ig = null, sg = {
mark: If,
measure: If
};
try {
typeof window < "u" && (Rl = window), typeof document < "u" && (og = document), typeof MutationObserver < "u" && (ig = MutationObserver), typeof performance < "u" && (sg = performance);
} catch {
}
const {
userAgent: jf = ""
} = Rl.navigator || {}, dn = Rl, Me = og, Mf = ig, wa = sg;
dn.document;
const Vt = !!Me.documentElement && !!Me.head && typeof Me.addEventListener == "function" && typeof Me.createElement == "function", lg = ~jf.indexOf("MSIE") || ~jf.indexOf("Trident/");
var Ik = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, jk = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, cg = {
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"
}
}, Mk = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, ug = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Qe = "classic", ko = "duotone", Fk = "sharp", Rk = "sharp-duotone", fg = [Qe, ko, Fk, Rk], Lk = {
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"
}
}, Dk = {
"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"
}
}, zk = /* @__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
}]]), $k = {
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"
}
}, Hk = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], Ff = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, Wk = ["kit"], Bk = {
kit: {
"fa-kit": "fak"
}
}, Gk = ["fak", "fakd"], Yk = {
kit: {
fak: "fa-kit"
}
}, Rf = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, Ea = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, Vk = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Uk = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], qk = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, Kk = {
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"
}
}, Xk = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, Is = {
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"
}
}, Jk = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], js = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...Vk, ...Jk], Zk = ["solid", "regular", "light", "thin", "duotone", "brands"], dg = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], Qk = dg.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), eP = [...Object.keys(Xk), ...Zk, "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", Ea.GROUP, Ea.SWAP_OPACITY, Ea.PRIMARY, Ea.SECONDARY].concat(dg.map((e) => "".concat(e, "x"))).concat(Qk.map((e) => "w-".concat(e))), tP = {
"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 Wt = "___FONT_AWESOME___", Ms = 16, pg = "fa", mg = "svg-inline--fa", Mn = "data-fa-i2svg", Fs = "data-fa-pseudo-element", nP = "data-fa-pseudo-element-pending", Ll = "data-prefix", Dl = "data-icon", Lf = "fontawesome-i2svg", rP = "async", aP = ["HTML", "HEAD", "STYLE", "SCRIPT"], gg = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function ea(e) {
return new Proxy(e, {
get(t, n) {
return n in t ? t[n] : t[Qe];
}
});
}
const hg = W({}, cg);
hg[Qe] = W(W(W(W({}, {
"fa-duotone": "duotone"
}), cg[Qe]), Ff.kit), Ff["kit-duotone"]);
const oP = ea(hg), Rs = W({}, $k);
Rs[Qe] = W(W(W(W({}, {
duotone: "fad"
}), Rs[Qe]), Rf.kit), Rf["kit-duotone"]);
const Df = ea(Rs), Ls = W({}, Is);
Ls[Qe] = W(W({}, Ls[Qe]), Yk.kit);
const zl = ea(Ls), Ds = W({}, Kk);
Ds[Qe] = W(W({}, Ds[Qe]), Bk.kit);
ea(Ds);
const iP = Ik, yg = "fa-layers-text", sP = jk, lP = W({}, Lk);
ea(lP);
const cP = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], ki = Mk, uP = [...Wk, ...eP], Tr = dn.FontAwesomeConfig || {};
function fP(e) {
var t = Me.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function dP(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Me && typeof Me.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, n] = e;
const r = dP(fP(t));
r != null && (Tr[n] = r);
});
const bg = {
styleDefault: "solid",
familyDefault: Qe,
cssPrefix: pg,
replacementClass: mg,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
Tr.familyPrefix && (Tr.cssPrefix = Tr.familyPrefix);
const or = W(W({}, bg), Tr);
or.autoReplaceSvg || (or.observeMutations = !1);
const ae = {};
Object.keys(bg).forEach((e) => {
Object.defineProperty(ae, e, {
enumerable: !0,
set: function(t) {
or[e] = t, Nr.forEach((n) => n(ae));
},
get: function() {
return or[e];
}
});
});
Object.defineProperty(ae, "familyPrefix", {
enumerable: !0,
set: function(e) {
or.cssPrefix = e, Nr.forEach((t) => t(ae));
},
get: function() {
return or.cssPrefix;
}
});
dn.FontAwesomeConfig = ae;
const Nr = [];
function pP(e) {
return Nr.push(e), () => {
Nr.splice(Nr.indexOf(e), 1);
};
}
const en = Ms, St = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function mP(e) {
if (!e || !Vt)
return;
const t = Me.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const n = Me.head.childNodes;
let r = null;
for (let a = n.length - 1; a > -1; a--) {
const o = n[a], i = (o.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (r = o);
}
return Me.head.insertBefore(t, r), e;
}
const gP = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function Wr() {
let e = 12, t = "";
for (; e-- > 0; )
t += gP[Math.random() * 62 | 0];
return t;
}
function dr(e) {
const t = [];
for (let n = (e || []).length >>> 0; n--; )
t[n] = e[n];
return t;
}
function $l(e) {
return e.classList ? dr(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function vg(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function hP(e) {
return Object.keys(e || {}).reduce((t, n) => t + "".concat(n, '="').concat(vg(e[n]), '" '), "").trim();
}
function Po(e) {
return Object.keys(e || {}).reduce((t, n) => t + "".concat(n, ": ").concat(e[n].trim(), ";"), "");
}
function Hl(e) {
return e.size !== St.size || e.x !== St.x || e.y !== St.y || e.rotate !== St.rotate || e.flipX || e.flipY;
}
function yP(e) {
let {
transform: t,
containerWidth: n,
iconWidth: r
} = e;
const a = {
transform: "translate(".concat(n / 2, " 256)")
}, o = "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)"), l = {
transform: "".concat(o, " ").concat(i, " ").concat(s)
}, c = {
transform: "translate(".concat(r / 2 * -1, " -256)")
};
return {
outer: a,
inner: l,
path: c
};
}
function bP(e) {
let {
transform: t,
width: n = Ms,
height: r = Ms,
startCentered: a = !1
} = e, o = "";
return a && lg ? o += "translate(".concat(t.x / en - n / 2, "em, ").concat(t.y / en - r / 2, "em) ") : a ? o += "translate(calc(-50% + ".concat(t.x / en, "em), calc(-50% + ").concat(t.y / en, "em)) ") : o += "translate(".concat(t.x / en, "em, ").concat(t.y / en, "em) "), o += "scale(".concat(t.size / en * (t.flipX ? -1 : 1), ", ").concat(t.size / en * (t.flipY ? -1 : 1), ") "), o += "rotate(".concat(t.rotate, "deg) "), o;
}
var vP = `: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 xg() {
const e = pg, t = mg, n = ae.cssPrefix, r = ae.replacementClass;
let a = vP;
if (n !== e || r !== t) {
const o = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
a = a.replace(o, ".".concat(n, "-")).replace(i, "--".concat(n, "-")).replace(s, ".".concat(r));
}
return a;
}
let zf = !1;
function Pi() {
ae.autoAddCss && !zf && (mP(xg()), zf = !0);
}
var xP = {
mixout() {
return {
dom: {
css: xg,
insertCss: Pi
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
Pi();
},
beforeI2svg() {
Pi();
}
};
}
};
const Bt = dn || {};
Bt[Wt] || (Bt[Wt] = {});
Bt[Wt].styles || (Bt[Wt].styles = {});
Bt[Wt].hooks || (Bt[Wt].hooks = {});
Bt[Wt].shims || (Bt[Wt].shims = []);
var At = Bt[Wt];
const wg = [], Eg = function() {
Me.removeEventListener("DOMContentLoaded", Eg), Ua = 1, wg.map((e) => e());
};
let Ua = !1;
Vt && (Ua = (Me.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Me.readyState), Ua || Me.addEventListener("DOMContentLoaded", Eg));
function wP(e) {
Vt && (Ua ? setTimeout(e, 0) : wg.push(e));
}
function ta(e) {
const {
tag: t,
attributes: n = {},
children: r = []
} = e;
return typeof e == "string" ? vg(e) : "<".concat(t, " ").concat(hP(n), ">").concat(r.map(ta).join(""), "</").concat(t, ">");
}
function $f(e, t, n) {
if (e && e[t] && e[t][n])
return {
prefix: t,
iconName: n,
icon: e[t][n]
};
}
var Oi = function(e, t, n, r) {
var a = Object.keys(e), o = a.length, i = t, s, l, c;
for (n === void 0 ? (s = 1, c = e[a[0]]) : (s = 0, c = n); s < o; s++)
l = a[s], c = i(c, e[l], l, e);
return c;
};
function EP(e) {
const t = [];
let n = 0;
const r = e.length;
for (; n < r; ) {
const a = e.charCodeAt(n++);
if (a >= 55296 && a <= 56319 && n < r) {
const o = e.charCodeAt(n++);
(o & 64512) == 56320 ? t.push(((a & 1023) << 10) + (o & 1023) + 65536) : (t.push(a), n--);
} else
t.push(a);
}
return t;
}
function kg(e) {
const t = EP(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function kP(e, t) {
const n = e.length;
let r = e.charCodeAt(t), a;
return r >= 55296 && r <= 56319 && n > t + 1 && (a = e.charCodeAt(t + 1), a >= 56320 && a <= 57343) ? (r - 55296) * 1024 + a - 56320 + 65536 : r;
}
function Hf(e) {
return Object.keys(e).reduce((t, n) => {
const r = e[n];
return r.icon ? t[r.iconName] = r.icon : t[n] = r, t;
}, {});
}
function zs(e, t) {
let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: r = !1
} = n, a = Hf(t);
typeof At.hooks.addPack == "function" && !r ? At.hooks.addPack(e, Hf(t)) : At.styles[e] = W(W({}, At.styles[e] || {}), a), e === "fas" && zs("fa", t);
}
const {
styles: Br,
shims: PP
} = At, Pg = Object.keys(zl), OP = Pg.reduce((e, t) => (e[t] = Object.keys(zl[t]), e), {});
let Wl = null, Og = {}, Sg = {}, Ag = {}, Cg = {}, _g = {};
function SP(e) {
return ~uP.indexOf(e);
}
function AP(e, t) {
const n = t.split("-"), r = n[0], a = n.slice(1).join("-");
return r === e && a !== "" && !SP(a) ? a : null;
}
const Tg = () => {
const e = (r) => Oi(Br, (a, o, i) => (a[i] = Oi(o, r, {}), a), {});
Og = e((r, a, o) => (a[3] && (r[a[3]] = o), a[2] && a[2].filter((i) => typeof i == "number").forEach((i) => {
r[i.toString(16)] = o;
}), r)), Sg = e((r, a, o) => (r[o] = o, a[2] && a[2].filter((i) => typeof i == "string").forEach((i) => {
r[i] = o;
}), r)), _g = e((r, a, o) => {
const i = a[2];
return r[o] = o, i.forEach((s) => {
r[s] = o;
}), r;
});
const t = "far" in Br || ae.autoFetchSvg, n = Oi(PP, (r, a) => {
const o = a[0];
let i = a[1];
const s = a[2];
return i === "far" && !t && (i = "fas"), typeof o == "string" && (r.names[o] = {
prefix: i,
iconName: s
}), typeof o == "number" && (r.unicodes[o.toString(16)] = {
prefix: i,
iconName: s
}), r;
}, {
names: {},
unicodes: {}
});
Ag = n.names, Cg = n.unicodes, Wl = Oo(ae.styleDefault, {
family: ae.familyDefault
});
};
pP((e) => {
Wl = Oo(e.styleDefault, {
family: ae.familyDefault
});
});
Tg();
function Bl(e, t) {
return (Og[e] || {})[t];
}
function CP(e, t) {
return (Sg[e] || {})[t];
}
function Pn(e, t) {
return (_g[e] || {})[t];
}
function Ng(e) {
return Ag[e] || {
prefix: null,
iconName: null
};
}
function _P(e) {
const t = Cg[e], n = Bl("fas", e);
return t || (n ? {
prefix: "fas",
iconName: n
} : null) || {
prefix: null,
iconName: null
};
}
function pn() {
return Wl;
}
const Ig = () => ({
prefix: null,
iconName: null,
rest: []
});
function TP(e) {
let t = Qe;
const n = Pg.reduce((r, a) => (r[a] = "".concat(ae.cssPrefix, "-").concat(a), r), {});
return fg.forEach((r) => {
(e.includes(n[r]) || e.some((a) => OP[r].includes(a))) && (t = r);
}), t;
}
function Oo(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: n = Qe
} = t, r = oP[n][e];
if (n === ko && !e)
return "fad";
const a = Df[n][e] || Df[n][r], o = e in At.styles ? e : null;
return a || o || null;
}
function NP(e) {
let t = [], n = null;
return e.forEach((r) => {
const a = AP(ae.cssPrefix, r);
a ? n = a : r && t.push(r);
}), {
iconName: n,
rest: t
};
}
function Wf(e) {
return e.sort().filter((t, n, r) => r.indexOf(t) === n);
}
function So(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: n = !1
} = t;
let r = null;
const a = js.concat(Uk), o = Wf(e.filter((p) => a.includes(p))), i = Wf(e.filter((p) => !js.includes(p))), s = o.filter((p) => (r = p, !ug.includes(p))), [l = null] = s, c = TP(o), u = W(W({}, NP(i)), {}, {
prefix: Oo(l, {
family: c
})
});
return W(W(W({}, u), FP({
values: e,
family: c,
styles: Br,
config: ae,
canonical: u,
givenPrefix: r
})), IP(n, r, u));
}
function IP(e, t, n) {
let {
prefix: r,
iconName: a
} = n;
if (e || !r || !a)
return {
prefix: r,
iconName: a
};
const o = t === "fa" ? Ng(a) : {}, i = Pn(r, a);
return a = o.iconName || i || a, r = o.prefix || r, r === "far" && !Br.far && Br.fas && !ae.autoFetchSvg && (r = "fas"), {
prefix: r,
iconName: a
};
}
const jP = fg.filter((e) => e !== Qe || e !== ko), MP = Object.keys(Is).filter((e) => e !== Qe).map((e) => Object.keys(Is[e])).flat();
function FP(e) {
const {
values: t,
family: n,
canonical: r,
givenPrefix: a = "",
styles: o = {},
config: i = {}
} = e, s = n === ko, l = t.includes("fa-duotone") || t.includes("fad"), c = i.familyDefault === "duotone", u = r.prefix === "fad" || r.prefix === "fa-duotone";
if (!s && (l || c || u) && (r.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (r.prefix = "fab"), !r.prefix && jP.includes(n) && (Object.keys(o).find((p) => MP.includes(p)) || i.autoFetchSvg)) {
const p = zk.get(n).defaultShortPrefixId;
r.prefix = p, r.iconName = Pn(r.prefix, r.iconName) || r.iconName;
}
return (r.prefix === "fa" || a === "fa") && (r.prefix = pn() || "fas"), r;
}
class RP {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++)
n[r] = arguments[r];
const a = n.reduce(this._pullDefinitions, {});
Object.keys(a).forEach((o) => {
this.definitions[o] = W(W({}, this.definitions[o] || {}), a[o]), zs(o, a[o]);
const i = zl[Qe][o];
i && zs(i, a[o]), Tg();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, n) {
const r = n.prefix && n.iconName && n.icon ? {
0: n
} : n;
return Object.keys(r).map((a) => {
const {
prefix: o,
iconName: i,
icon: s
} = r[a], l = s[2];
t[o] || (t[o] = {}), l.length > 0 && l.forEach((c) => {
typeof c == "string" && (t[o][c] = s);
}), t[o][i] = s;
}), t;
}
}
let Bf = [], Vn = {};
const Qn = {}, LP = Object.keys(Qn);
function DP(e, t) {
let {
mixoutsTo: n
} = t;
return Bf = e, Vn = {}, Object.keys(Qn).forEach((r) => {
LP.indexOf(r) === -1 && delete Qn[r];
}), Bf.forEach((r) => {
const a = r.mixout ? r.mixout() : {};
if (Object.keys(a).forEach((o) => {
typeof a[o] == "function" && (n[o] = a[o]), typeof a[o] == "object" && Object.keys(a[o]).forEach((i) => {
n[o] || (n[o] = {}), n[o][i] = a[o][i];
});
}), r.hooks) {
const o = r.hooks();
Object.keys(o).forEach((i) => {
Vn[i] || (Vn[i] = []), Vn[i].push(o[i]);
});
}
r.provides && r.provides(Qn);
}), n;
}
function $s(e, t) {
for (var n = arguments.length, r = new Array(n > 2 ? n - 2 : 0), a = 2; a < n; a++)
r[a - 2] = arguments[a];
return (Vn[e] || []).forEach((o) => {
t = o.apply(null, [t, ...r]);
}), t;
}
function Fn(e) {
for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++)
n[r - 1] = arguments[r];
(Vn[e] || []).forEach((a) => {
a.apply(null, n);
});
}
function mn() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return Qn[e] ? Qn[e].apply(null, t) : void 0;
}
function Hs(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const n = e.prefix || pn();
if (t)
return t = Pn(n, t) || t, $f(jg.definitions, n, t) || $f(At.styles, n, t);
}
const jg = new RP(), zP = () => {
ae.autoReplaceSvg = !1, ae.observeMutations = !1, Fn("noAuto");
}, $P = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return Vt ? (Fn("beforeI2svg", e), mn("pseudoElements2svg", e), mn("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;
ae.autoReplaceSvg === !1 && (ae.autoReplaceSvg = !0), ae.observeMutations = !0, wP(() => {
WP({
autoReplaceSvgRoot: t
}), Fn("watch", e);
});
}
}, HP = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: Pn(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], n = Oo(e[0]);
return {
prefix: n,
iconName: Pn(n, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(ae.cssPrefix, "-")) > -1 || e.match(iP))) {
const t = So(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || pn(),
iconName: Pn(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = pn();
return {
prefix: t,
iconName: Pn(t, e) || e
};
}
}
}, ut = {
noAuto: zP,
config: ae,
dom: $P,
parse: HP,
library: jg,
findIconDefinition: Hs,
toHtml: ta
}, WP = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Me
} = e;
(Object.keys(At.styles).length > 0 || ae.autoFetchSvg) && Vt && ae.autoReplaceSvg && ut.dom.i2svg({
node: t
});
};
function Ao(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((n) => ta(n));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!Vt) return;
const n = Me.createElement("div");
return n.innerHTML = e.html, n.children;
}
}), e;
}
function BP(e) {
let {
children: t,
main: n,
mask: r,
attributes: a,
styles: o,
transform: i
} = e;
if (Hl(i) && n.found && !r.found) {
const {
width: s,
height: l
} = n, c = {
x: s / l / 2,
y: 0.5
};
a.style = Po(W(W({}, o), {}, {
"transform-origin": "".concat(c.x + i.x / 16, "em ").concat(c.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: a,
children: t
}];
}
function GP(e) {
let {
prefix: t,
iconName: n,
children: r,
attributes: a,
symbol: o
} = e;
const i = o === !0 ? "".concat(t, "-").concat(ae.cssPrefix, "-").concat(n) : o;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: W(W({}, a), {}, {
id: i
}),
children: r
}]
}];
}
function Gl(e) {
const {
icons: {
main: t,
mask: n
},
prefix: r,
iconName: a,
transform: o,
symbol: i,
title: s,
maskId: l,
titleId: c,
extra: u,
watchable: p = !1
} = e, {
width: m,
height: b
} = n.found ? n : t, x = Gk.includes(r), v = [ae.replacementClass, a ? "".concat(ae.cssPrefix, "-").concat(a) : ""].filter((h) => u.classes.indexOf(h) === -1).filter((h) => h !== "" || !!h).concat(u.classes).join(" ");
let y = {
children: [],
attributes: W(W({}, u.attributes), {}, {
"data-prefix": r,
"data-icon": a,
class: v,
role: u.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(m, " ").concat(b)
})
};
const w = x && !~u.classes.indexOf("fa-fw") ? {
width: "".concat(m / b * 16 * 0.0625, "em")
} : {};
p && (y.attributes[Mn] = ""), s && (y.children.push({
tag: "title",
attributes: {
id: y.attributes["aria-labelledby"] || "title-".concat(c || Wr())
},
children: [s]
}), delete y.attributes.title);
const P = W(W({}, y), {}, {
prefix: r,
iconName: a,
main: t,
mask: n,
maskId: l,
transform: o,
symbol: i,
styles: W(W({}, w), u.styles)
}), {
children: S,
attributes: _
} = n.found && t.found ? mn("generateAbstractMask", P) || {
children: [],
attributes: {}
} : mn("generateAbstractIcon", P) || {
children: [],
attributes: {}
};
return P.children = S, P.attributes = _, i ? GP(P) : BP(P);
}
function Gf(e) {
const {
content: t,
width: n,
height: r,
transform: a,
title: o,
extra: i,
watchable: s = !1
} = e, l = W(W(W({}, i.attributes), o ? {
title: o
} : {}), {}, {
class: i.classes.join(" ")
});
s && (l[Mn] = "");
const c = W({}, i.styles);
Hl(a) && (c.transform = bP({
transform: a,
startCentered: !0,
width: n,
height: r
}), c["-webkit-transform"] = c.transform);
const u = Po(c);
u.length > 0 && (l.style = u);
const p = [];
return p.push({
tag: "span",
attributes: l,
children: [t]
}), o && p.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [o]
}), p;
}
function YP(e) {
const {
content: t,
title: n,
extra: r
} = e, a = W(W(W({}, r.attributes), n ? {
title: n
} : {}), {}, {
class: r.classes.join(" ")
}), o = Po(r.styles);
o.length > 0 && (a.style = o);
const i = [];
return i.push({
tag: "span",
attributes: a,
children: [t]
}), n && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [n]
}), i;
}
const {
styles: Si
} = At;
function Ws(e) {
const t = e[0], n = e[1], [r] = e.slice(4);
let a = null;
return Array.isArray(r) ? a = {
tag: "g",
attributes: {
class: "".concat(ae.cssPrefix, "-").concat(ki.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(ae.cssPrefix, "-").concat(ki.SECONDARY),
fill: "currentColor",
d: r[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(ae.cssPrefix, "-").concat(ki.PRIMARY),
fill: "currentColor",
d: r[1]
}
}]
} : a = {
tag: "path",
attributes: {
fill: "currentColor",
d: r
}
}, {
found: !0,
width: t,
height: n,
icon: a
};
}
const VP = {
found: !1,
width: 512,
height: 512
};
function UP(e, t) {
!gg && !ae.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function Bs(e, t) {
let n = t;
return t === "fa" && ae.styleDefault !== null && (t = pn()), new Promise((r, a) => {
if (n === "fa") {
const o = Ng(e) || {};
e = o.iconName || e, t = o.prefix || t;
}
if (e && t && Si[t] && Si[t][e]) {
const o = Si[t][e];
return r(Ws(o));
}
UP(e, t), r(W(W({}, VP), {}, {
icon: ae.showMissingIcons && e ? mn("missingIconAbstract") || {} : {}
}));
});
}
const Yf = () => {
}, Gs = ae.measurePerformance && wa && wa.mark && wa.measure ? wa : {
mark: Yf,
measure: Yf
}, Pr = 'FA "6.7.2"', qP = (e) => (Gs.mark("".concat(Pr, " ").concat(e, " begins")), () => Mg(e)), Mg = (e) => {
Gs.mark("".concat(Pr, " ").concat(e, " ends")), Gs.measure("".concat(Pr, " ").concat(e), "".concat(Pr, " ").concat(e, " begins"), "".concat(Pr, " ").concat(e, " ends"));
};
var Yl = {
begin: qP,
end: Mg
};
const Na = () => {
};
function Vf(e) {
return typeof (e.getAttribute ? e.getAttribute(Mn) : null) == "string";
}
function KP(e) {
const t = e.getAttribute ? e.getAttribute(Ll) : null, n = e.getAttribute ? e.getAttribute(Dl) : null;
return t && n;
}
function XP(e) {
return e && e.classList && e.classList.contains && e.classList.contains(ae.replacementClass);
}
function JP() {
return ae.autoReplaceSvg === !0 ? Ia.replace : Ia[ae.autoReplaceSvg] || Ia.replace;
}
function ZP(e) {
return Me.createElementNS("http://www.w3.org/2000/svg", e);
}
function QP(e) {
return Me.createElement(e);
}
function Fg(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: n = e.tag === "svg" ? ZP : QP
} = t;
if (typeof e == "string")
return Me.createTextNode(e);
const r = n(e.tag);
return Object.keys(e.attributes || []).forEach(function(a) {
r.setAttribute(a, e.attributes[a]);
}), (e.children || []).forEach(function(a) {
r.appendChild(Fg(a, {
ceFn: n
}));
}), r;
}
function eO(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const Ia = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((n) => {
t.parentNode.insertBefore(Fg(n), t);
}), t.getAttribute(Mn) === null && ae.keepOriginalSource) {
let n = Me.createComment(eO(t));
t.parentNode.replaceChild(n, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], n = e[1];
if (~$l(t).indexOf(ae.replacementClass))
return Ia.replace(e);
const r = new RegExp("".concat(ae.cssPrefix, "-.*"));
if (delete n[0].attributes.id, n[0].attributes.class) {
const o = n[0].attributes.class.split(" ").reduce((i, s) => (s === ae.replacementClass || s.match(r) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
n[0].attributes.class = o.toSvg.join(" "), o.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", o.toNode.join(" "));
}
const a = n.map((o) => ta(o)).join(`
`);
t.setAttribute(Mn, ""), t.innerHTML = a;
}
};
function Uf(e) {
e();
}
function Rg(e, t) {
const n = typeof t == "function" ? t : Na;
if (e.length === 0)
n();
else {
let r = Uf;
ae.mutateApproach === rP && (r = dn.requestAnimationFrame || Uf), r(() => {
const a = JP(), o = Yl.begin("mutate");
e.map(a), o(), n();
});
}
}
let Vl = !1;
function Lg() {
Vl = !0;
}
function Ys() {
Vl = !1;
}
let qa = null;
function qf(e) {
if (!Mf || !ae.observeMutations)
return;
const {
treeCallback: t = Na,
nodeCallback: n = Na,
pseudoElementsCallback: r = Na,
observeMutationsRoot: a = Me
} = e;
qa = new Mf((o) => {
if (Vl) return;
const i = pn();
dr(o).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !Vf(s.addedNodes[0]) && (ae.searchPseudoElements && r(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && ae.searchPseudoElements && r(s.target.parentNode), s.type === "attributes" && Vf(s.target) && ~cP.indexOf(s.attributeName))
if (s.attributeName === "class" && KP(s.target)) {
const {
prefix: l,
iconName: c
} = So($l(s.target));
s.target.setAttribute(Ll, l || i), c && s.target.setAttribute(Dl, c);
} else XP(s.target) && n(s.target);
});
}), Vt && qa.observe(a, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function tO() {
qa && qa.disconnect();
}
function nO(e) {
const t = e.getAttribute("style");
let n = [];
return t && (n = t.split(";").reduce((r, a) => {
const o = a.split(":"), i = o[0], s = o.slice(1);
return i && s.length > 0 && (r[i] = s.join(":").trim()), r;
}, {})), n;
}
function rO(e) {
const t = e.getAttribute("data-prefix"), n = e.getAttribute("data-icon"), r = e.innerText !== void 0 ? e.innerText.trim() : "";
let a = So($l(e));
return a.prefix || (a.prefix = pn()), t && n && (a.prefix = t, a.iconName = n), a.iconName && a.prefix || (a.prefix && r.length > 0 && (a.iconName = CP(a.prefix, e.innerText) || Bl(a.prefix, kg(e.innerText))), !a.iconName && ae.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (a.iconName = e.firstChild.data)), a;
}
function aO(e) {
const t = dr(e.attributes).reduce((a, o) => (a.name !== "class" && a.name !== "style" && (a[o.name] = o.value), a), {}), n = e.getAttribute("title"), r = e.getAttribute("data-fa-title-id");
return ae.autoA11y && (n ? t["aria-labelledby"] = "".concat(ae.replacementClass, "-title-").concat(r || Wr()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function oO() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: St,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function Kf(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: n,
prefix: r,
rest: a
} = rO(e), o = aO(e), i = $s("parseNodeAttributes", {}, e);
let s = t.styleParser ? nO(e) : [];
return W({
iconName: n,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: r,
transform: St,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: a,
styles: s,
attributes: o
}
}, i);
}
const {
styles: iO
} = At;
function Dg(e) {
const t = ae.autoReplaceSvg === "nest" ? Kf(e, {
styleParser: !1
}) : Kf(e);
return ~t.extra.classes.indexOf(yg) ? mn("generateLayersText", e, t) : mn("generateSvgReplacementMutation", e, t);
}
function sO() {
return [...Hk, ...js];
}
function Xf(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!Vt) return Promise.resolve();
const n = Me.documentElement.classList, r = (u) => n.add("".concat(Lf, "-").concat(u)), a = (u) => n.remove("".concat(Lf, "-").concat(u)), o = ae.autoFetchSvg ? sO() : ug.concat(Object.keys(iO));
o.includes("fa") || o.push("fa");
const i = [".".concat(yg, ":not([").concat(Mn, "])")].concat(o.map((u) => ".".concat(u, ":not([").concat(Mn, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = dr(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
r("pending"), a("complete");
else
return Promise.resolve();
const l = Yl.begin("onTree"), c = s.reduce((u, p) => {
try {
const m = Dg(p);
m && u.push(m);
} catch (m) {
gg || m.name === "MissingIcon" && console.error(m);
}
return u;
}, []);
return new Promise((u, p) => {
Promise.all(c).then((m) => {
Rg(m, () => {
r("active"), r("complete"), a("pending"), typeof t == "function" && t(), l(), u();
});
}).catch((m) => {
l(), p(m);
});
});
}
function lO(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
Dg(e).then((n) => {
n && Rg([n], t);
});
}
function cO(e) {
return function(t) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const r = (t || {}).icon ? t : Hs(t || {});
let {
mask: a
} = n;
return a && (a = (a || {}).icon ? a : Hs(a || {})), e(r, W(W({}, n), {}, {
mask: a
}));
};
}
const uO = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: n = St,
symbol: r = !1,
mask: a = null,
maskId: o = null,
title: i = null,
titleId: s = null,
classes: l = [],
attributes: c = {},
styles: u = {}
} = t;
if (!e) return;
const {
prefix: p,
iconName: m,
icon: b
} = e;
return Ao(W({
type: "icon"
}, e), () => (Fn("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), ae.autoA11y && (i ? c["aria-labelledby"] = "".concat(ae.replacementClass, "-title-").concat(s || Wr()) : (c["aria-hidden"] = "true", c.focusable = "false")), Gl({
icons: {
main: Ws(b),
mask: a ? Ws(a.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: p,
iconName: m,
transform: W(W({}, St), n),
symbol: r,
title: i,
maskId: o,
titleId: s,
extra: {
attributes: c,
styles: u,
classes: l
}
})));
};
var fO = {
mixout() {
return {
icon: cO(uO)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = Xf, e.nodeCallback = lO, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: n = Me,
callback: r = () => {
}
} = t;
return Xf(n, r);
}, e.generateSvgReplacementMutation = function(t, n) {
const {
iconName: r,
title: a,
titleId: o,
prefix: i,
transform: s,
symbol: l,
mask: c,
maskId: u,
extra: p
} = n;
return new Promise((m, b) => {
Promise.all([Bs(r, i), c.iconName ? Bs(c.iconName, c.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((x) => {
let [v, y] = x;
m([t, Gl({
icons: {
main: v,
mask: y
},
prefix: i,
iconName: r,
transform: s,
symbol: l,
maskId: u,
title: a,
titleId: o,
extra: p,
watchable: !0
})]);
}).catch(b);
});
}, e.generateAbstractIcon = function(t) {
let {
children: n,
attributes: r,
main: a,
transform: o,
styles: i
} = t;
const s = Po(i);
s.length > 0 && (r.style = s);
let l;
return Hl(o) && (l = mn("generateAbstractTransformGrouping", {
main: a,
transform: o,
containerWidth: a.width,
iconWidth: a.width
})), n.push(l || a.icon), {
children: n,
attributes: r
};
};
}
}, dO = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: n = []
} = t;
return Ao({
type: "layer"
}, () => {
Fn("beforeDOMElementCreation", {
assembler: e,
params: t
});
let r = [];
return e((a) => {
Array.isArray(a) ? a.map((o) => {
r = r.concat(o.abstract);
}) : r = r.concat(a.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(ae.cssPrefix, "-layers"), ...n].join(" ")
},
children: r
}];
});
}
};
}
}, pO = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: n = null,
classes: r = [],
attributes: a = {},
styles: o = {}
} = t;
return Ao({
type: "counter",
content: e
}, () => (Fn("beforeDOMElementCreation", {
content: e,
params: t
}), YP({
content: e.toString(),
title: n,
extra: {
attributes: a,
styles: o,
classes: ["".concat(ae.cssPrefix, "-layers-counter"), ...r]
}
})));
}
};
}
}, mO = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: n = St,
title: r = null,
classes: a = [],
attributes: o = {},
styles: i = {}
} = t;
return Ao({
type: "text",
content: e
}, () => (Fn("beforeDOMElementCreation", {
content: e,
params: t
}), Gf({
content: e,
transform: W(W({}, St), n),
title: r,
extra: {
attributes: o,
styles: i,
classes: ["".concat(ae.cssPrefix, "-layers-text"), ...a]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, n) {
const {
title: r,
transform: a,
extra: o
} = n;
let i = null, s = null;
if (lg) {
const l = parseInt(getComputedStyle(t).fontSize, 10), c = t.getBoundingClientRect();
i = c.width / l, s = c.height / l;
}
return ae.autoA11y && !r && (o.attributes["aria-hidden"] = "true"), Promise.resolve([t, Gf({
content: t.innerHTML,
width: i,
height: s,
transform: a,
title: r,
extra: o,
watchable: !0
})]);
};
}
};
const gO = new RegExp('"', "ug"), Jf = [1105920, 1112319], Zf = W(W(W(W({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), Dk), tP), qk), Vs = Object.keys(Zf).reduce((e, t) => (e[t.toLowerCase()] = Zf[t], e), {}), hO = Object.keys(Vs).reduce((e, t) => {
const n = Vs[t];
return e[t] = n[900] || [...Object.entries(n)][0][1], e;
}, {});
function yO(e) {
const t = e.replace(gO, ""), n = kP(t, 0), r = n >= Jf[0] && n <= Jf[1], a = t.length === 2 ? t[0] === t[1] : !1;
return {
value: kg(a ? t[0] : t),
isSecondary: r || a
};
}
function bO(e, t) {
const n = e.replace(/^['"]|['"]$/g, "").toLowerCase(), r = parseInt(t), a = isNaN(r) ? "normal" : r;
return (Vs[n] || {})[a] || hO[n];
}
function Qf(e, t) {
const n = "".concat(nP).concat(t.replace(":", "-"));
return new Promise((r, a) => {
if (e.getAttribute(n) !== null)
return r();
const o = dr(e.children).filter((p) => p.getAttribute(Fs) === t)[0], i = dn.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), l = s.match(sP), c = i.getPropertyValue("font-weight"), u = i.getPropertyValue("content");
if (o && !l)
return e.removeChild(o), r();
if (l && u !== "none" && u !== "") {
const p = i.getPropertyValue("content");
let m = bO(s, c);
const {
value: b,
isSecondary: x
} = yO(p), v = l[0].startsWith("FontAwesome");
let y = Bl(m, b), w = y;
if (v) {
const P = _P(b);
P.iconName && P.prefix && (y = P.iconName, m = P.prefix);
}
if (y && !x && (!o || o.getAttribute(Ll) !== m || o.getAttribute(Dl) !== w)) {
e.setAttribute(n, w), o && e.removeChild(o);
const P = oO(), {
extra: S
} = P;
S.attributes[Fs] = t, Bs(y, m).then((_) => {
const h = Gl(W(W({}, P), {}, {
icons: {
main: _,
mask: Ig()
},
prefix: m,
iconName: w,
extra: S,
watchable: !0
})), G = Me.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(G, e.firstChild) : e.appendChild(G), G.outerHTML = h.map((U) => ta(U)).join(`
`), e.removeAttribute(n), r();
}).catch(a);
} else
r();
} else
r();
});
}
function vO(e) {
return Promise.all([Qf(e, "::before"), Qf(e, "::after")]);
}
function xO(e) {
return e.parentNode !== document.head && !~aP.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(Fs) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function ed(e) {
if (Vt)
return new Promise((t, n) => {
const r = dr(e.querySelectorAll("*")).filter(xO).map(vO), a = Yl.begin("searchPseudoElements");
Lg(), Promise.all(r).then(() => {
a(), Ys(), t();
}).catch(() => {
a(), Ys(), n();
});
});
}
var wO = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = ed, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: n = Me
} = t;
ae.searchPseudoElements && ed(n);
};
}
};
let td = !1;
var EO = {
mixout() {
return {
dom: {
unwatch() {
Lg(), td = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
qf($s("mutationObserverCallbacks", {}));
},
noAuto() {
tO();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
td ? Ys() : qf($s("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const nd = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((n, r) => {
const a = r.toLowerCase().split("-"), o = a[0];
let i = a.slice(1).join("-");
if (o && i === "h")
return n.flipX = !0, n;
if (o && i === "v")
return n.flipY = !0, n;
if (i = parseFloat(i), isNaN(i))
return n;
switch (o) {
case "grow":
n.size = n.size + i;
break;
case "shrink":
n.size = n.size - i;
break;
case "left":
n.x = n.x - i;
break;
case "right":
n.x = n.x + i;
break;
case "up":
n.y = n.y - i;
break;
case "down":
n.y = n.y + i;
break;
case "rotate":
n.rotate = n.rotate + i;
break;
}
return n;
}, t);
};
var kO = {
mixout() {
return {
parse: {
transform: (e) => nd(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const n = t.getAttribute("data-fa-transform");
return n && (e.transform = nd(n)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: n,
transform: r,
containerWidth: a,
iconWidth: o
} = t;
const i = {
transform: "translate(".concat(a / 2, " 256)")
}, s = "translate(".concat(r.x * 32, ", ").concat(r.y * 32, ") "), l = "scale(".concat(r.size / 16 * (r.flipX ? -1 : 1), ", ").concat(r.size / 16 * (r.flipY ? -1 : 1), ") "), c = "rotate(".concat(r.rotate, " 0 0)"), u = {
transform: "".concat(s, " ").concat(l, " ").concat(c)
}, p = {
transform: "translate(".concat(o / 2 * -1, " -256)")
}, m = {
outer: i,
inner: u,
path: p
};
return {
tag: "g",
attributes: W({}, m.outer),
children: [{
tag: "g",
attributes: W({}, m.inner),
children: [{
tag: n.icon.tag,
children: n.icon.children,
attributes: W(W({}, n.icon.attributes), m.path)
}]
}]
};
};
}
};
const Ai = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function rd(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 PO(e) {
return e.tag === "g" ? e.children : [e];
}
var OO = {
hooks() {
return {
parseNodeAttributes(e, t) {
const n = t.getAttribute("data-fa-mask"), r = n ? So(n.split(" ").map((a) => a.trim())) : Ig();
return r.prefix || (r.prefix = pn()), e.mask = r, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: n,
attributes: r,
main: a,
mask: o,
maskId: i,
transform: s
} = t;
const {
width: l,
icon: c
} = a, {
width: u,
icon: p
} = o, m = yP({
transform: s,
containerWidth: u,
iconWidth: l
}), b = {
tag: "rect",
attributes: W(W({}, Ai), {}, {
fill: "white"
})
}, x = c.children ? {
children: c.children.map(rd)
} : {}, v = {
tag: "g",
attributes: W({}, m.inner),
children: [rd(W({
tag: c.tag,
attributes: W(W({}, c.attributes), m.path)
}, x))]
}, y = {
tag: "g",
attributes: W({}, m.outer),
children: [v]
}, w = "mask-".concat(i || Wr()), P = "clip-".concat(i || Wr()), S = {
tag: "mask",
attributes: W(W({}, Ai), {}, {
id: w,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [b, y]
}, _ = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: P
},
children: PO(p)
}, S]
};
return n.push(_, {
tag: "rect",
attributes: W({
fill: "currentColor",
"clip-path": "url(#".concat(P, ")"),
mask: "url(#".concat(w, ")")
}, Ai)
}), {
children: n,
attributes: r
};
};
}
}, SO = {
provides(e) {
let t = !1;
dn.matchMedia && (t = dn.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const n = [], r = {
fill: "currentColor"
}, a = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
n.push({
tag: "path",
attributes: W(W({}, r), {}, {
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 o = W(W({}, a), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: W(W({}, r), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: W(W({}, a), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: W(W({}, o), {}, {
values: "1;0;1;1;0;1;"
})
}), n.push(i), n.push({
tag: "path",
attributes: W(W({}, r), {}, {
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: W(W({}, o), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || n.push({
tag: "path",
attributes: W(W({}, r), {}, {
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: W(W({}, o), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: n
};
};
}
}, AO = {
hooks() {
return {
parseNodeAttributes(e, t) {
const n = t.getAttribute("data-fa-symbol"), r = n === null ? !1 : n === "" ? !0 : n;
return e.symbol = r, e;
}
};
}
}, CO = [xP, fO, dO, pO, mO, wO, EO, kO, OO, SO, AO];
DP(CO, {
mixoutsTo: ut
});
ut.noAuto;
ut.config;
ut.library;
ut.dom;
const Us = ut.parse;
ut.findIconDefinition;
ut.toHtml;
const _O = ut.icon;
ut.layer;
ut.text;
ut.counter;
var ka = { exports: {} }, Ci = { exports: {} }, Se = {};
/** @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 ad;
function TO() {
if (ad) return Se;
ad = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, n = e ? Symbol.for("react.portal") : 60106, r = e ? Symbol.for("react.fragment") : 60107, a = e ? Symbol.for("react.strict_mode") : 60108, o = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, l = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, u = e ? Symbol.for("react.forward_ref") : 60112, p = e ? Symbol.for("react.suspense") : 60113, m = e ? Symbol.for("react.suspense_list") : 60120, b = e ? Symbol.for("react.memo") : 60115, x = e ? Symbol.for("react.lazy") : 60116, v = e ? Symbol.for("react.block") : 60121, y = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, P = e ? Symbol.for("react.scope") : 60119;
function S(h) {
if (typeof h == "object" && h !== null) {
var G = h.$$typeof;
switch (G) {
case t:
switch (h = h.type, h) {
case l:
case c:
case r:
case o:
case a:
case p:
return h;
default:
switch (h = h && h.$$typeof, h) {
case s:
case u:
case x:
case b:
case i:
return h;
default:
return G;
}
}
case n:
return G;
}
}
}
function _(h) {
return S(h) === c;
}
return Se.AsyncMode = l, Se.ConcurrentMode = c, Se.ContextConsumer = s, Se.ContextProvider = i, Se.Element = t, Se.ForwardRef = u, Se.Fragment = r, Se.Lazy = x, Se.Memo = b, Se.Portal = n, Se.Profiler = o, Se.StrictMode = a, Se.Suspense = p, Se.isAsyncMode = function(h) {
return _(h) || S(h) === l;
}, Se.isConcurrentMode = _, Se.isContextConsumer = function(h) {
return S(h) === s;
}, Se.isContextProvider = function(h) {
return S(h) === i;
}, Se.isElement = function(h) {
return typeof h == "object" && h !== null && h.$$typeof === t;
}, Se.isForwardRef = function(h) {
return S(h) === u;
}, Se.isFragment = function(h) {
return S(h) === r;
}, Se.isLazy = function(h) {
return S(h) === x;
}, Se.isMemo = function(h) {
return S(h) === b;
}, Se.isPortal = function(h) {
return S(h) === n;
}, Se.isProfiler = function(h) {
return S(h) === o;
}, Se.isStrictMode = function(h) {
return S(h) === a;
}, Se.isSuspense = function(h) {
return S(h) === p;
}, Se.isValidElementType = function(h) {
return typeof h == "string" || typeof h == "function" || h === r || h === c || h === o || h === a || h === p || h === m || typeof h == "object" && h !== null && (h.$$typeof === x || h.$$typeof === b || h.$$typeof === i || h.$$typeof === s || h.$$typeof === u || h.$$typeof === y || h.$$typeof === w || h.$$typeof === P || h.$$typeof === v);
}, Se.typeOf = S, Se;
}
var Ce = {};
/** @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 od;
function NO() {
return od || (od = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, n = e ? Symbol.for("react.portal") : 60106, r = e ? Symbol.for("react.fragment") : 60107, a = e ? Symbol.for("react.strict_mode") : 60108, o = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, l = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, u = e ? Symbol.for("react.forward_ref") : 60112, p = e ? Symbol.for("react.suspense") : 60113, m = e ? Symbol.for("react.suspense_list") : 60120, b = e ? Symbol.for("react.memo") : 60115, x = e ? Symbol.for("react.lazy") : 60116, v = e ? Symbol.for("react.block") : 60121, y = e ? Symbol.for("react.fundamental") : 60117, w = e ? Symbol.for("react.responder") : 60118, P = e ? Symbol.for("react.scope") : 60119;
function S(O) {
return typeof O == "string" || typeof O == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
O === r || O === c || O === o || O === a || O === p || O === m || typeof O == "object" && O !== null && (O.$$typeof === x || O.$$typeof === b || O.$$typeof === i || O.$$typeof === s || O.$$typeof === u || O.$$typeof === y || O.$$typeof === w || O.$$typeof === P || O.$$typeof === v);
}
function _(O) {
if (typeof O == "object" && O !== null) {
var Ee = O.$$typeof;
switch (Ee) {
case t:
var qe = O.type;
switch (qe) {
case l:
case c:
case r:
case o:
case a:
case p:
return qe;
default:
var ht = qe && qe.$$typeof;
switch (ht) {
case s:
case u:
case x:
case b:
case i:
return ht;
default:
return Ee;
}
}
case n:
return Ee;
}
}
}
var h = l, G = c, U = s, te = i, X = t, Z = u, Q = r, B = x, oe = b, q = n, J = o, Y = a, M = p, K = !1;
function z(O) {
return K || (K = !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.")), g(O) || _(O) === l;
}
function g(O) {
return _(O) === c;
}
function d(O) {
return _(O) === s;
}
function E(O) {
return _(O) === i;
}
function A(O) {
return typeof O == "object" && O !== null && O.$$typeof === t;
}
function C(O) {
return _(O) === u;
}
function T(O) {
return _(O) === r;
}
function I(O) {
return _(O) === x;
}
function N(O) {
return _(O) === b;
}
function F(O) {
return _(O) === n;
}
function L(O) {
return _(O) === o;
}
function D(O) {
return _(O) === a;
}
function ce(O) {
return _(O) === p;
}
Ce.AsyncMode = h, Ce.ConcurrentMode = G, Ce.ContextConsumer = U, Ce.ContextProvider = te, Ce.Element = X, Ce.ForwardRef = Z, Ce.Fragment = Q, Ce.Lazy = B, Ce.Memo = oe, Ce.Portal = q, Ce.Profiler = J, Ce.StrictMode = Y, Ce.Suspense = M, Ce.isAsyncMode = z, Ce.isConcurrentMode = g, Ce.isContextConsumer = d, Ce.isContextProvider = E, Ce.isElement = A, Ce.isForwardRef = C, Ce.isFragment = T, Ce.isLazy = I, Ce.isMemo = N, Ce.isPortal = F, Ce.isProfiler = L, Ce.isStrictMode = D, Ce.isSuspense = ce, Ce.isValidElementType = S, Ce.typeOf = _;
}()), Ce;
}
var id;
function zg() {
return id || (id = 1, process.env.NODE_ENV === "production" ? Ci.exports = TO() : Ci.exports = NO()), Ci.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var _i, sd;
function IO() {
if (sd) return _i;
sd = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, n = Object.prototype.propertyIsEnumerable;
function r(o) {
if (o == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(o);
}
function a() {
try {
if (!Object.assign)
return !1;
var o = new String("abc");
if (o[5] = "de", Object.getOwnPropertyNames(o)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var l = Object.getOwnPropertyNames(i).map(function(u) {
return i[u];
});
if (l.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(u) {
c[u] = u;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return _i = a() ? Object.assign : function(o, i) {
for (var s, l = r(o), c, u = 1; u < arguments.length; u++) {
s = Object(arguments[u]);
for (var p in s)
t.call(s, p) && (l[p] = s[p]);
if (e) {
c = e(s);
for (var m = 0; m < c.length; m++)
n.call(s, c[m]) && (l[c[m]] = s[c[m]]);
}
}
return l;
}, _i;
}
var Ti, ld;
function Ul() {
if (ld) return Ti;
ld = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return Ti = e, Ti;
}
var cd, ud;
function $g() {
return ud || (ud = 1, cd = Function.call.bind(Object.prototype.hasOwnProperty)), cd;
}
var Ni, fd;
function jO() {
if (fd) return Ni;
fd = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ Ul(), n = {}, r = /* @__PURE__ */ $g();
e = function(o) {
var i = "Warning: " + o;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function a(o, i, s, l, c) {
if (process.env.NODE_ENV !== "production") {
for (var u in o)
if (r(o, u)) {
var p;
try {
if (typeof o[u] != "function") {
var m = Error(
(l || "React class") + ": " + s + " type `" + u + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof o[u] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw m.name = "Invariant Violation", m;
}
p = o[u](i, u, l, s, null, t);
} catch (x) {
p = x;
}
if (p && !(p instanceof Error) && e(
(l || "React class") + ": type specification of " + s + " `" + u + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof p + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), p instanceof Error && !(p.message in n)) {
n[p.message] = !0;
var b = c ? c() : "";
e(
"Failed " + s + " type: " + p.message + (b ?? "")
);
}
}
}
}
return a.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (n = {});
}, Ni = a, Ni;
}
var Ii, dd;
function MO() {
if (dd) return Ii;
dd = 1;
var e = zg(), t = IO(), n = /* @__PURE__ */ Ul(), r = /* @__PURE__ */ $g(), a = /* @__PURE__ */ jO(), o = function() {
};
process.env.NODE_ENV !== "production" && (o = function(s) {
var l = "Warning: " + s;
typeof console < "u" && console.error(l);
try {
throw new Error(l);
} catch {
}
});
function i() {
return null;
}
return Ii = function(s, l) {
var c = typeof Symbol == "function" && Symbol.iterator, u = "@@iterator";
function p(g) {
var d = g && (c && g[c] || g[u]);
if (typeof d == "function")
return d;
}
var m = "<<anonymous>>", b = {
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: P(),
arrayOf: S,
element: _(),
elementType: h(),
instanceOf: G,
node: Z(),
objectOf: te,
oneOf: U,
oneOfType: X,
shape: B,
exact: oe
};
function x(g, d) {
return g === d ? g !== 0 || 1 / g === 1 / d : g !== g && d !== d;
}
function v(g, d) {
this.message = g, this.data = d && typeof d == "object" ? d : {}, this.stack = "";
}
v.prototype = Error.prototype;
function y(g) {
if (process.env.NODE_ENV !== "production")
var d = {}, E = 0;
function A(T, I, N, F, L, D, ce) {
if (F = F || m, D = D || N, ce !== n) {
if (l) {
var O = 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 O.name = "Invariant Violation", O;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var Ee = F + ":" + N;
!d[Ee] && // Avoid spamming the console because they are often not actionable except for lib authors
E < 3 && (o(
"You are manually calling a React.PropTypes validation function for the `" + D + "` prop on `" + F + "`. 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."
), d[Ee] = !0, E++);
}
}
return I[N] == null ? T ? I[N] === null ? new v("The " + L + " `" + D + "` is marked as required " + ("in `" + F + "`, but its value is `null`.")) : new v("The " + L + " `" + D + "` is marked as required in " + ("`" + F + "`, but its value is `undefined`.")) : null : g(I, N, F, L, D);
}
var C = A.bind(null, !1);
return C.isRequired = A.bind(null, !0), C;
}
function w(g) {
function d(E, A, C, T, I, N) {
var F = E[A], L = Y(F);
if (L !== g) {
var D = M(F);
return new v(
"Invalid " + T + " `" + I + "` of type " + ("`" + D + "` supplied to `" + C + "`, expected ") + ("`" + g + "`."),
{ expectedType: g }
);
}
return null;
}
return y(d);
}
function P() {
return y(i);
}
function S(g) {
function d(E, A, C, T, I) {
if (typeof g != "function")
return new v("Property `" + I + "` of component `" + C + "` has invalid PropType notation inside arrayOf.");
var N = E[A];
if (!Array.isArray(N)) {
var F = Y(N);
return new v("Invalid " + T + " `" + I + "` of type " + ("`" + F + "` supplied to `" + C + "`, expected an array."));
}
for (var L = 0; L < N.length; L++) {
var D = g(N, L, C, T, I + "[" + L + "]", n);
if (D instanceof Error)
return D;
}
return null;
}
return y(d);
}
function _() {
function g(d, E, A, C, T) {
var I = d[E];
if (!s(I)) {
var N = Y(I);
return new v("Invalid " + C + " `" + T + "` of type " + ("`" + N + "` supplied to `" + A + "`, expected a single ReactElement."));
}
return null;
}
return y(g);
}
function h() {
function g(d, E, A, C, T) {
var I = d[E];
if (!e.isValidElementType(I)) {
var N = Y(I);
return new v("Invalid " + C + " `" + T + "` of type " + ("`" + N + "` supplied to `" + A + "`, expected a single ReactElement type."));
}
return null;
}
return y(g);
}
function G(g) {
function d(E, A, C, T, I) {
if (!(E[A] instanceof g)) {
var N = g.name || m, F = z(E[A]);
return new v("Invalid " + T + " `" + I + "` of type " + ("`" + F + "` supplied to `" + C + "`, expected ") + ("instance of `" + N + "`."));
}
return null;
}
return y(d);
}
function U(g) {
if (!Array.isArray(g))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? o(
"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])."
) : o("Invalid argument supplied to oneOf, expected an array.")), i;
function d(E, A, C, T, I) {
for (var N = E[A], F = 0; F < g.length; F++)
if (x(N, g[F]))
return null;
var L = JSON.stringify(g, function(D, ce) {
var O = M(ce);
return O === "symbol" ? String(ce) : ce;
});
return new v("Invalid " + T + " `" + I + "` of value `" + String(N) + "` " + ("supplied to `" + C + "`, expected one of " + L + "."));
}
return y(d);
}
function te(g) {
function d(E, A, C, T, I) {
if (typeof g != "function")
return new v("Property `" + I + "` of component `" + C + "` has invalid PropType notation inside objectOf.");
var N = E[A], F = Y(N);
if (F !== "object")
return new v("Invalid " + T + " `" + I + "` of type " + ("`" + F + "` supplied to `" + C + "`, expected an object."));
for (var L in N)
if (r(N, L)) {
var D = g(N, L, C, T, I + "." + L, n);
if (D instanceof Error)
return D;
}
return null;
}
return y(d);
}
function X(g) {
if (!Array.isArray(g))
return process.env.NODE_ENV !== "production" && o("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var d = 0; d < g.length; d++) {
var E = g[d];
if (typeof E != "function")
return o(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + K(E) + " at index " + d + "."
), i;
}
function A(C, T, I, N, F) {
for (var L = [], D = 0; D < g.length; D++) {
var ce = g[D], O = ce(C, T, I, N, F, n);
if (O == null)
return null;
O.data && r(O.data, "expectedType") && L.push(O.data.expectedType);
}
var Ee = L.length > 0 ? ", expected one of type [" + L.join(", ") + "]" : "";
return new v("Invalid " + N + " `" + F + "` supplied to " + ("`" + I + "`" + Ee + "."));
}
return y(A);
}
function Z() {
function g(d, E, A, C, T) {
return q(d[E]) ? null : new v("Invalid " + C + " `" + T + "` supplied to " + ("`" + A + "`, expected a ReactNode."));
}
return y(g);
}
function Q(g, d, E, A, C) {
return new v(
(g || "React class") + ": " + d + " type `" + E + "." + A + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + C + "`."
);
}
function B(g) {
function d(E, A, C, T, I) {
var N = E[A], F = Y(N);
if (F !== "object")
return new v("Invalid " + T + " `" + I + "` of type `" + F + "` " + ("supplied to `" + C + "`, expected `object`."));
for (var L in g) {
var D = g[L];
if (typeof D != "function")
return Q(C, T, I, L, M(D));
var ce = D(N, L, C, T, I + "." + L, n);
if (ce)
return ce;
}
return null;
}
return y(d);
}
function oe(g) {
function d(E, A, C, T, I) {
var N = E[A], F = Y(N);
if (F !== "object")
return new v("Invalid " + T + " `" + I + "` of type `" + F + "` " + ("supplied to `" + C + "`, expected `object`."));
var L = t({}, E[A], g);
for (var D in L) {
var ce = g[D];
if (r(g, D) && typeof ce != "function")
return Q(C, T, I, D, M(ce));
if (!ce)
return new v(
"Invalid " + T + " `" + I + "` key `" + D + "` supplied to `" + C + "`.\nBad object: " + JSON.stringify(E[A], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(g), null, " ")
);
var O = ce(N, D, C, T, I + "." + D, n);
if (O)
return O;
}
return null;
}
return y(d);
}
function q(g) {
switch (typeof g) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !g;
case "object":
if (Array.isArray(g))
return g.every(q);
if (g === null || s(g))
return !0;
var d = p(g);
if (d) {
var E = d.call(g), A;
if (d !== g.entries) {
for (; !(A = E.next()).done; )
if (!q(A.value))
return !1;
} else
for (; !(A = E.next()).done; ) {
var C = A.value;
if (C && !q(C[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function J(g, d) {
return g === "symbol" ? !0 : d ? d["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && d instanceof Symbol : !1;
}
function Y(g) {
var d = typeof g;
return Array.isArray(g) ? "array" : g instanceof RegExp ? "object" : J(d, g) ? "symbol" : d;
}
function M(g) {
if (typeof g > "u" || g === null)
return "" + g;
var d = Y(g);
if (d === "object") {
if (g instanceof Date)
return "date";
if (g instanceof RegExp)
return "regexp";
}
return d;
}
function K(g) {
var d = M(g);
switch (d) {
case "array":
case "object":
return "an " + d;
case "boolean":
case "date":
case "regexp":
return "a " + d;
default:
return d;
}
}
function z(g) {
return !g.constructor || !g.constructor.name ? m : g.constructor.name;
}
return b.checkPropTypes = a, b.resetWarningCache = a.resetWarningCache, b.PropTypes = b, b;
}, Ii;
}
var ji, pd;
function FO() {
if (pd) return ji;
pd = 1;
var e = /* @__PURE__ */ Ul();
function t() {
}
function n() {
}
return n.resetWarningCache = t, ji = function() {
function r(i, s, l, c, u, p) {
if (p !== e) {
var m = 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 m.name = "Invariant Violation", m;
}
}
r.isRequired = r;
function a() {
return r;
}
var o = {
array: r,
bigint: r,
bool: r,
func: r,
number: r,
object: r,
string: r,
symbol: r,
any: r,
arrayOf: a,
element: r,
elementType: r,
instanceOf: a,
node: r,
objectOf: a,
oneOf: a,
oneOfType: a,
shape: a,
exact: a,
checkPropTypes: n,
resetWarningCache: t
};
return o.PropTypes = o, o;
}, ji;
}
var md;
function RO() {
if (md) return ka.exports;
if (md = 1, process.env.NODE_ENV !== "production") {
var e = zg(), t = !0;
ka.exports = /* @__PURE__ */ MO()(e.isElement, t);
} else
ka.exports = /* @__PURE__ */ FO()();
return ka.exports;
}
var LO = /* @__PURE__ */ RO();
const be = /* @__PURE__ */ sx(LO);
function gd(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter(function(a) {
return Object.getOwnPropertyDescriptor(e, a).enumerable;
})), n.push.apply(n, r);
}
return n;
}
function xt(e) {
for (var t = 1; t < arguments.length; t++) {
var n = arguments[t] != null ? arguments[t] : {};
t % 2 ? gd(Object(n), !0).forEach(function(r) {
Un(e, r, n[r]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : gd(Object(n)).forEach(function(r) {
Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
});
}
return e;
}
function Ka(e) {
"@babel/helpers - typeof";
return Ka = 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;
}, Ka(e);
}
function Un(e, t, n) {
return t in e ? Object.defineProperty(e, t, {
value: n,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = n, e;
}
function DO(e, t) {
if (e == null) return {};
var n = {}, r = Object.keys(e), a, o;
for (o = 0; o < r.length; o++)
a = r[o], !(t.indexOf(a) >= 0) && (n[a] = e[a]);
return n;
}
function zO(e, t) {
if (e == null) return {};
var n = DO(e, t), r, a;
if (Object.getOwnPropertySymbols) {
var o = Object.getOwnPropertySymbols(e);
for (a = 0; a < o.length; a++)
r = o[a], !(t.indexOf(r) >= 0) && Object.prototype.propertyIsEnumerable.call(e, r) && (n[r] = e[r]);
}
return n;
}
function qs(e) {
return $O(e) || HO(e) || WO(e) || BO();
}
function $O(e) {
if (Array.isArray(e)) return Ks(e);
}
function HO(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function WO(e, t) {
if (e) {
if (typeof e == "string") return Ks(e, t);
var n = Object.prototype.toString.call(e).slice(8, -1);
if (n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set") return Array.from(e);
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Ks(e, t);
}
}
function Ks(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
return r;
}
function BO() {
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 GO(e) {
var t, n = e.beat, r = e.fade, a = e.beatFade, o = e.bounce, i = e.shake, s = e.flash, l = e.spin, c = e.spinPulse, u = e.spinReverse, p = e.pulse, m = e.fixedWidth, b = e.inverse, x = e.border, v = e.listItem, y = e.flip, w = e.size, P = e.rotation, S = e.pull, _ = (t = {
"fa-beat": n,
"fa-fade": r,
"fa-beat-fade": a,
"fa-bounce": o,
"fa-shake": i,
"fa-flash": s,
"fa-spin": l,
"fa-spin-reverse": u,
"fa-spin-pulse": c,
"fa-pulse": p,
"fa-fw": m,
"fa-inverse": b,
"fa-border": x,
"fa-li": v,
"fa-flip": y === !0,
"fa-flip-horizontal": y === "horizontal" || y === "both",
"fa-flip-vertical": y === "vertical" || y === "both"
}, Un(t, "fa-".concat(w), typeof w < "u" && w !== null), Un(t, "fa-rotate-".concat(P), typeof P < "u" && P !== null && P !== 0), Un(t, "fa-pull-".concat(S), typeof S < "u" && S !== null), Un(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(_).map(function(h) {
return _[h] ? h : null;
}).filter(function(h) {
return h;
});
}
function YO(e) {
return e = e - 0, e === e;
}
function Hg(e) {
return YO(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, n) {
return n ? n.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var VO = ["style"];
function UO(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function qO(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, n) {
var r = n.indexOf(":"), a = Hg(n.slice(0, r)), o = n.slice(r + 1).trim();
return a.startsWith("webkit") ? t[UO(a)] = o : t[a] = o, t;
}, {});
}
function Wg(e, t) {
var n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var r = (t.children || []).map(function(l) {
return Wg(e, l);
}), a = Object.keys(t.attributes || {}).reduce(function(l, c) {
var u = t.attributes[c];
switch (c) {
case "class":
l.attrs.className = u, delete t.attributes.class;
break;
case "style":
l.attrs.style = qO(u);
break;
default:
c.indexOf("aria-") === 0 || c.indexOf("data-") === 0 ? l.attrs[c.toLowerCase()] = u : l.attrs[Hg(c)] = u;
}
return l;
}, {
attrs: {}
}), o = n.style, i = o === void 0 ? {} : o, s = zO(n, VO);
return a.attrs.style = xt(xt({}, a.attrs.style), i), e.apply(void 0, [t.tag, xt(xt({}, a.attrs), s)].concat(qs(r)));
}
var Bg = !1;
try {
Bg = process.env.NODE_ENV === "production";
} catch {
}
function KO() {
if (!Bg && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function hd(e) {
if (e && Ka(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if (Us.icon)
return Us.icon(e);
if (e === null)
return null;
if (e && Ka(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 Mi(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Un({}, e, t) : {};
}
var yd = {
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
}, Ir = /* @__PURE__ */ ue.forwardRef(function(e, t) {
var n = xt(xt({}, yd), e), r = n.icon, a = n.mask, o = n.symbol, i = n.className, s = n.title, l = n.titleId, c = n.maskId, u = hd(r), p = Mi("classes", [].concat(qs(GO(n)), qs((i || "").split(" ")))), m = Mi("transform", typeof n.transform == "string" ? Us.transform(n.transform) : n.transform), b = Mi("mask", hd(a)), x = _O(u, xt(xt(xt(xt({}, p), m), b), {}, {
symbol: o,
title: s,
titleId: l,
maskId: c
}));
if (!x)
return KO("Could not find icon", u), null;
var v = x.abstract, y = {
ref: t
};
return Object.keys(n).forEach(function(w) {
yd.hasOwnProperty(w) || (y[w] = n[w]);
}), XO(v[0], y);
});
Ir.displayName = "FontAwesomeIcon";
Ir.propTypes = {
beat: be.bool,
border: be.bool,
beatFade: be.bool,
bounce: be.bool,
className: be.string,
fade: be.bool,
flash: be.bool,
mask: be.oneOfType([be.object, be.array, be.string]),
maskId: be.string,
fixedWidth: be.bool,
inverse: be.bool,
flip: be.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: be.oneOfType([be.object, be.array, be.string]),
listItem: be.bool,
pull: be.oneOf(["right", "left"]),
pulse: be.bool,
rotation: be.oneOf([0, 90, 180, 270]),
shake: be.bool,
size: be.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: be.bool,
spinPulse: be.bool,
spinReverse: be.bool,
symbol: be.oneOfType([be.bool, be.string]),
title: be.string,
titleId: be.string,
transform: be.oneOfType([be.string, be.object]),
swapOpacity: be.bool
};
var XO = Wg.bind(null, ue.createElement);
/*!
* Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
* Copyright 2024 Fonticons, Inc.
*/
const JO = {
prefix: "fas",
iconName: "chevron-up",
icon: [512, 512, [], "f077", "M233.4 105.4c12.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 173.3 86.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l192-192z"]
}, ZO = {
prefix: "fas",
iconName: "circle-check",
icon: [512, 512, [61533, "check-circle"], "f058", "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z"]
}, QO = {
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"]
}, eS = ({
items: e = [],
onSelect: t,
onAdd: n,
triggerIcon: r,
showAddButton: a = !1,
disableAddButton: o = !1,
showIconsInList: i = !1,
mode: s = "default",
triggerLabel: l,
children: c,
buttonClassName: u,
panelClassName: p,
onPanelAction: m,
panelTitle: b,
position: x = "top",
align: v = "start",
panelActionLabel: y,
onOpenChange: w
}) => {
const P = e.find((J) => J.selected), S = (J, Y) => {
s === "button" && J.action && m ? (m(J.action), Y()) : (t == null || t(J), Y());
}, _ = It(
"text-sm font-medium rounded-lg px-3 py-2 shadow-sm",
"flex gap-2 items-center justify-center outline-none",
"transition-all duration-150",
"bg-ui-controls/60 px-3 text-base-fg hover:bg-ui-controls/90 border border-ui-controls-border",
"active:scale-95 transform",
u
), h = {
top: "bottom-full",
bottom: "top-full"
}, G = {
start: "left-0",
center: "left-1/2 -translate-x-1/2",
end: "right-0"
}, [U, te] = $e(!1), X = xe(null), Z = xe(null);
Le(() => () => {
X.current && clearTimeout(X.current);
}, []);
const Q = (J, Y) => {
s === "hoverSelect" && (te(!0), X.current && (clearTimeout(X.current), X.current = null), J || (X.current = setTimeout(() => {
Y();
}, 100)));
}, B = (J) => {
s === "hoverSelect" && (te(!1), X.current && clearTimeout(X.current), X.current = setTimeout(() => {
U || J();
}, 300));
}, oe = () => {
s === "hoverSelect" && (te(!0), X.current && (clearTimeout(X.current), X.current = null));
}, q = (J) => {
s === "hoverSelect" && (te(!1), X.current && clearTimeout(X.current), X.current = setTimeout(() => {
J();
}, 300));
};
return /* @__PURE__ */ se("div", { className: "relative inline-block", children: /* @__PURE__ */ se(Jx, { children: ({ open: J, close: Y }) => /* @__PURE__ */ Ge(yn, { children: [
(Le(() => {
w == null || w(J);
}, [J]), null),
/* @__PURE__ */ Ge(
lm,
{
className: _,
onMouseEnter: () => Q(J, () => {
Z.current && !J && Z.current.click();
}),
onMouseLeave: () => B(Y),
onClick: (M) => {
s === "hoverSelect" && J && (M.preventDefault(), M.stopPropagation());
},
ref: Z,
children: [
r,
s === "toggle" && P ? /* @__PURE__ */ se("span", { className: "truncate", children: P.label }) : null,
s === "default" && l ? /* @__PURE__ */ se("span", { className: "truncate", children: l }) : null,
s === "hoverSelect" && P ? /* @__PURE__ */ Ge("div", { className: "flex items-center gap-1.5", children: [
/* @__PURE__ */ se("span", { className: "opacity-70", children: l }),
/* @__PURE__ */ Ge("div", { className: "flex items-center gap-2", children: [
/* @__PURE__ */ se("span", { className: "truncate", children: P.label }),
/* @__PURE__ */ se(Ir, { icon: JO, className: "text-sm" })
] })
] }) : null
]
}
),
/* @__PURE__ */ se(
Tx,
{
show: J,
enter: "transition duration-100 ease-out",
enterFrom: x === "bottom" ? "translate-y-2 opacity-0" : "-translate-y-2 opacity-0",
enterTo: "translate-y-0 opacity-100",
leave: "transition duration-100 ease-in",
leaveFrom: "translate-y-0 opacity-100",
leaveTo: x === "bottom" ? "translate-y-2 opacity-0" : "-translate-y-2 opacity-0",
children: /* @__PURE__ */ se(
cm,
{
static: !0,
className: It(
"absolute transform-gpu z-10",
h[x],
G[v],
x === "bottom" ? "origin-top" : "origin-bottom"
),
children: /* @__PURE__ */ Ge(
"div",
{
className: It(
"z-10 min-w-48 mt-2 rounded-lg bg-ui-panel p-1.5 shadow-lg border border-ui-panel-border",
x === "top" ? "mb-2" : "mt-2",
p
),
onMouseEnter: oe,
onMouseLeave: () => q(Y),
children: [
b && /* @__PURE__ */ Ge("div", { className: "mb-2 mt-0.5 flex justify-between px-1.5 text-sm font-normal text-base-fg opacity-70", children: [
b,
y && /* @__PURE__ */ se(
"button",
{
onClick: () => {
m == null || m(y), Y();
},
className: "text-end text-sm text-base-fg/85 hover:underline",
children: y
}
)
] }),
s === "default" && c ? /* @__PURE__ */ se("div", { className: "text-sm text-base-fg", children: typeof c == "function" ? c(Y) : c }) : s === "hoverSelect" ? /* @__PURE__ */ Ge("div", { className: "flex flex-col gap-0 text-sm text-base-fg", children: [
e.map((M, K) => /* @__PURE__ */ Ge("div", { children: [
/* @__PURE__ */ se(
"div",
{
onClick: () => {
M.disabled || S(M, Y);
},
className: It(
"group flex cursor-pointer items-start gap-2 rounded-lg px-2 py-2 transition-all",
M.selected ? "bg-black/40 border-l-4 border-primary" : "hover:bg-black/20",
M.disabled ? "!cursor-not-allowed opacity-50" : ""
),
style: { minHeight: 48 },
children: /* @__PURE__ */ Ge("div", { className: "flex items-center gap-2 w-full", children: [
/* @__PURE__ */ Ge("div", { className: "flex items-start gap-2 grow", children: [
i && /* @__PURE__ */ se("span", { className: "mt-1 flex h-5 w-5 items-center justify-center text-lg text-base-fg/80", children: M.icon }),
/* @__PURE__ */ Ge("div", { className: "flex flex-1 flex-col min-w-0", children: [
/* @__PURE__ */ se("div", { className: "flex items-center gap-2 min-w-0", children: /* @__PURE__ */ se("span", { className: "truncate font-semibold text-base-fg text-base", children: M.label }) }),
M.description && /* @__PURE__ */ se("div", { className: "truncate text-xs text-base-fg/60 mt-0.5", children: M.description }),
/* @__PURE__ */ se("div", { className: "flex flex-row gap-1 flex-wrap mt-1.5", children: M.badges && Array.isArray(M.badges) && M.badges.map((z, g) => /* @__PURE__ */ se(
"div",
{
className: "flex items-center gap-1 min-w-0",
children: /* @__PURE__ */ Ge("span", { className: "inline-flex items-center rounded bg-black/40 px-1.5 py-0.5 text-xs font-medium text-base-fg gap-1", children: [
(z == null ? void 0 : z.icon) && /* @__PURE__ */ se("span", { children: z.icon }),
(z == null ? void 0 : z.label) || ""
] })
},
g
)) })
] })
] }),
M.selected && /* @__PURE__ */ se("span", { className: "text-primary text-xl font-bold bg-white rounded-full p-0 h-4 w-4 flex items-center justify-center mr-1", children: /* @__PURE__ */ se(Ir, { icon: ZO }) })
] })
}
),
M.divider && /* @__PURE__ */ se("div", { className: "my-1 border-t border-white/10" })
] }, K)),
a && n && /* @__PURE__ */ se(
Ei,
{
variant: "secondary",
className: It(
"w-full mb-0.5 mt-2 border-none py-1",
o ? "cursor-not-allowed bg-[#7B7B84]/50 opacity-50" : "bg-[#7B7B84] hover:bg-[#8c8c96]"
),
onClick: n,
disabled: o,
children: "+ Add"
}
)
] }) : /* @__PURE__ */ Ge("div", { className: "flex flex-col gap-0 text-sm text-base-fg", children: [
e.map((M, K) => /* @__PURE__ */ Ge("div", { children: [
/* @__PURE__ */ Ge(
Ei,
{
className: It(
"flex w-full items-center shadow-none justify-between px-1.5",
"bg-transparent hover:bg-ui-controls/60",
s === "toggle" && M.selected ? "hover:bg-ui-controls/80" : "",
M.disabled ? "!cursor-not-allowed opacity-50" : "",
"border-0"
),
onClick: () => !M.disabled && S(M, Y),
variant: "secondary",
disabled: M.disabled,
children: [
/* @__PURE__ */ Ge("div", { className: "flex items-center gap-2 truncate", children: [
i && M.icon,
s === "toggle" ? /* @__PURE__ */ se(
"span",
{
className: It(
"truncate",
M.selected ? "text-base-fg" : "text-base-fg/70"
),
children: M.label
}
) : /* @__PURE__ */ se("span", { className: "truncate", children: M.label })
] }),
s === "toggle" && /* @__PURE__ */ se(
"span",
{
className: It(
"ml-2 h-5 w-5 rounded-full border flex items-center justify-center transition-colors",
M.selected ? "border-primary bg-primary" : "border-transparent bg-transparent"
),
children: M.selected && /* @__PURE__ */ se(
Ir,
{
icon: QO,
className: "text-base-fg text-xs font-bold"
}
)
}
)
]
}
),
M.divider && /* @__PURE__ */ se("div", { className: "my-1 border-t border-white/10" })
] }, K)),
a && n && /* @__PURE__ */ se(
Ei,
{
variant: "secondary",
className: It(
"w-full mb-0.5 mt-2 py-1 border-0",
o ? "cursor-not-allowed opacity-50" : ""
),
onClick: n,
disabled: o,
children: "+ Add"
}
)
] })
]
}
)
}
)
}
)
] }) }) });
}, bd = (e) => {
let t;
const n = /* @__PURE__ */ new Set(), r = (c, u) => {
const p = typeof c == "function" ? c(t) : c;
if (!Object.is(p, t)) {
const m = t;
t = u ?? (typeof p != "object" || p === null) ? p : Object.assign({}, t, p), n.forEach((b) => b(t, m));
}
}, a = () => t, s = { setState: r, getState: a, getInitialState: () => l, subscribe: (c) => (n.add(c), () => n.delete(c)) }, l = t = e(r, a, s);
return s;
}, tS = (e) => e ? bd(e) : bd, nS = (e) => e;
function rS(e, t = nS) {
const n = ue.useSyncExternalStore(
e.subscribe,
() => t(e.getState()),
() => t(e.getInitialState())
);
return ue.useDebugValue(n), n;
}
const vd = (e) => {
const t = tS(e), n = (r) => rS(t, r);
return Object.assign(n, t), n;
}, aS = (e) => e ? vd(e) : vd, ql = aS((e) => ({
selectedModels: {},
setSelectedModel: (t, n) => e((r) => ({
selectedModels: {
...r.selectedModels,
[t]: n
}
}))
})), mS = (e) => {
const { selectedModels: t } = ql(), n = t[e];
if (n && n.kind === "image_model")
return n;
}, gS = (e) => {
const { selectedModels: t } = ql(), n = t[e];
if (n && n.kind === "video_model")
return n;
};
function hS({
items: e,
page: t,
...n
}) {
var l;
const { selectedModels: r, setSelectedModel: a } = ql(), o = r[t] || ((l = e[0]) == null ? void 0 : l.model);
Le(() => {
!r[t] && e[0] && a(t, e[0].model);
}, []);
const i = (c) => {
console.log(`Model selector changed on page "${t}": `, c.model), a(t, c.model);
}, s = ze(
() => e.map((c) => ({
...c,
selected: c.model === o
})),
[e, o]
);
return /* @__PURE__ */ se(
eS,
{
items: s,
onSelect: i,
mode: "hoverSelect",
...n,
buttonClassName: "border-0 bg-transparent p-0 hover:bg-transparent text-lg hover:opacity-80 shadow-none"
}
);
}
export {
uS as CANVAS_2D_PAGE_MODEL_LIST,
hS as ClassyModelSelector,
dS as IMAGE_EDITOR_PAGE_MODEL_LIST,
pS as IMAGE_TO_VIDEO_PAGE_MODEL_LIST,
Dv as ModelPage,
fS as STAGE_3D_PAGE_MODEL_LIST,
cS as TEXT_TO_IMAGE_PAGE_MODEL_LIST,
mS as getSelectedImageModel,
gS as getSelectedVideoModel,
ql as useClassyModelSelectorStore
};