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

8204 lines
218 KiB
JavaScript

import { jsx as de, jsxs as Bn } from "react/jsx-runtime";
import Kr from "react";
/*!
* Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
* Copyright 2024 Fonticons, Inc.
*/
const qn = {
prefix: "fas",
iconName: "chevron-left",
icon: [320, 512, [9001], "f053", "M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z"]
}, Xn = {
prefix: "fas",
iconName: "chevron-right",
icon: [320, 512, [9002], "f054", "M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z"]
}, Wt = "-", Kn = (e) => {
const t = Zn(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (i) => {
const s = i.split(Wt);
return s[0] === "" && s.length !== 1 && s.shift(), Jr(s, t) || Jn(i);
},
getConflictingClassGroupIds: (i, s) => {
const c = r[i] || [];
return s && n[i] ? [...c, ...n[i]] : c;
}
};
}, Jr = (e, t) => {
var i;
if (e.length === 0)
return t.classGroupId;
const r = e[0], n = t.nextPart.get(r), o = n ? Jr(e.slice(1), n) : void 0;
if (o)
return o;
if (t.validators.length === 0)
return;
const a = e.join(Wt);
return (i = t.validators.find(({
validator: s
}) => s(a))) == null ? void 0 : i.classGroupId;
}, or = /^\[(.+)\]$/, Jn = (e) => {
if (or.test(e)) {
const t = or.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, Zn = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return eo(Object.entries(e.classGroups), r).forEach(([a, i]) => {
kt(i, n, a, t);
}), n;
}, kt = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : ar(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (Qn(o)) {
kt(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
kt(i, ar(t, a), r, n);
});
});
}, ar = (e, t) => {
let r = e;
return t.split(Wt).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, Qn = (e) => e.isThemeGetter, eo = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, to = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, Zr = "!", ro = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const c = [];
let l = 0, f = 0, p;
for (let g = 0; g < s.length; g++) {
let x = s[g];
if (l === 0) {
if (x === o && (n || s.slice(g, g + a) === t)) {
c.push(s.slice(f, g)), f = g + a;
continue;
}
if (x === "/") {
p = g;
continue;
}
}
x === "[" ? l++ : x === "]" && l--;
}
const h = c.length === 0 ? s : s.substring(f), w = h.startsWith(Zr), C = w ? h.substring(1) : h, y = p && p > f ? p - f : void 0;
return {
modifiers: c,
hasImportantModifier: w,
baseClassName: C,
maybePostfixModifierPosition: y
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, no = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, oo = (e) => ({
cache: to(e.cacheSize),
parseClassName: ro(e),
...Kn(e)
}), ao = /\s+/, io = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(ao);
let s = "";
for (let c = i.length - 1; c >= 0; c -= 1) {
const l = i[c], {
modifiers: f,
hasImportantModifier: p,
baseClassName: h,
maybePostfixModifierPosition: w
} = r(l);
let C = !!w, y = n(C ? h.substring(0, w) : h);
if (!y) {
if (!C) {
s = l + (s.length > 0 ? " " + s : s);
continue;
}
if (y = n(h), !y) {
s = l + (s.length > 0 ? " " + s : s);
continue;
}
C = !1;
}
const g = no(f).join(":"), x = p ? g + Zr : g, O = x + y;
if (a.includes(O))
continue;
a.push(O);
const N = o(y, C);
for (let A = 0; A < N.length; ++A) {
const m = N[A];
a.push(x + m);
}
s = l + (s.length > 0 ? " " + s : s);
}
return s;
};
function so() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = Qr(t)) && (n && (n += " "), n += r);
return n;
}
const Qr = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = Qr(e[n])) && (r && (r += " "), r += t);
return r;
};
function lo(e, ...t) {
let r, n, o, a = i;
function i(c) {
const l = t.reduce((f, p) => p(f), e());
return r = oo(l), n = r.cache.get, o = r.cache.set, a = s, s(c);
}
function s(c) {
const l = n(c);
if (l)
return l;
const f = io(c, r);
return o(c, f), f;
}
return function() {
return a(so.apply(null, arguments));
};
}
const W = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, en = /^\[(?:([a-z-]+):)?(.+)\]$/i, co = /^\d+\/\d+$/, fo = /* @__PURE__ */ new Set(["px", "full", "screen"]), uo = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, po = /\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$/, mo = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, go = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, bo = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, fe = (e) => je(e) || fo.has(e) || co.test(e), he = (e) => Re(e, "length", So), je = (e) => !!e && !Number.isNaN(Number(e)), lt = (e) => Re(e, "number", je), Le = (e) => !!e && Number.isInteger(Number(e)), ho = (e) => e.endsWith("%") && je(e.slice(0, -1)), P = (e) => en.test(e), ye = (e) => uo.test(e), yo = /* @__PURE__ */ new Set(["length", "size", "percentage"]), vo = (e) => Re(e, yo, tn), xo = (e) => Re(e, "position", tn), wo = /* @__PURE__ */ new Set(["image", "url"]), ko = (e) => Re(e, wo, Ao), Oo = (e) => Re(e, "", Co), $e = () => !0, Re = (e, t, r) => {
const n = en.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, So = (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.
po.test(e) && !mo.test(e)
), tn = () => !1, Co = (e) => go.test(e), Ao = (e) => bo.test(e), Po = () => {
const e = W("colors"), t = W("spacing"), r = W("blur"), n = W("brightness"), o = W("borderColor"), a = W("borderRadius"), i = W("borderSpacing"), s = W("borderWidth"), c = W("contrast"), l = W("grayscale"), f = W("hueRotate"), p = W("invert"), h = W("gap"), w = W("gradientColorStops"), C = W("gradientColorStopPositions"), y = W("inset"), g = W("margin"), x = W("opacity"), O = W("padding"), N = W("saturate"), A = W("scale"), m = W("sepia"), H = W("skew"), te = W("space"), se = W("translate"), re = () => ["auto", "contain", "none"], ne = () => ["auto", "hidden", "clip", "visible", "scroll"], Q = () => ["auto", P, t], S = () => [P, t], le = () => ["", fe, he], q = () => ["auto", je, P], ce = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], J = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], ee = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], K = () => ["", "0", P], d = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], b = () => [je, P];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [$e],
spacing: [fe, he],
blur: ["none", "", ye, P],
brightness: b(),
borderColor: [e],
borderRadius: ["none", "", "full", ye, P],
borderSpacing: S(),
borderWidth: le(),
contrast: b(),
grayscale: K(),
hueRotate: b(),
invert: K(),
gap: S(),
gradientColorStops: [e],
gradientColorStopPositions: [ho, he],
inset: Q(),
margin: Q(),
opacity: b(),
padding: S(),
saturate: b(),
scale: b(),
sepia: K(),
skew: b(),
space: S(),
translate: S()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", P]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [ye]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": d()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": d()
}],
/**
* 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: [...ce(), P]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: ne()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": ne()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": ne()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: re()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": re()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": re()
}],
/**
* 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: [y]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [y]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [y]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [y]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [y]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [y]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [y]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [y]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [y]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", Le, P]
}],
// 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", P]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: K()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: K()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", Le, P]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [$e]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", Le, P]
}, P]
}],
/**
* 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": [$e]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [Le, P]
}, P]
}],
/**
* 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", P]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", P]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [h]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [h]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [h]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...ee()]
}],
/**
* 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", ...ee(), "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": [...ee(), "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: [O]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [O]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [O]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [O]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [O]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [O]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [O]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [O]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [O]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [g]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [g]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [g]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [g]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [g]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [g]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [g]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [g]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [g]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [te]
}],
/**
* 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": [te]
}],
/**
* 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", P, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [P, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [P, t, "none", "full", "min", "max", "fit", "prose", {
screen: [ye]
}, ye]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [P, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [P, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [P, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [P, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", ye, he]
}],
/**
* 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", lt]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [$e]
}],
/**
* 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", P]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", je, lt]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", fe, P]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", P]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", P]
}],
/**
* 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": [x]
}],
/**
* 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": [x]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", fe, he]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", fe, P]
}],
/**
* 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: S()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", P]
}],
/**
* 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", P]
}],
// 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": [x]
}],
/**
* 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: [...ce(), xo]
}],
/**
* 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", vo]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, ko]
}],
/**
* 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: [C]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [C]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [C]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [w]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [w]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [w]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [x]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [x]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [fe, P]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [fe, he]
}],
/**
* 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: le()
}],
/**
* 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": [x]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [fe, he]
}],
/**
* 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", ye, Oo]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [$e]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [x]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...J(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": J()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [c]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", ye, P]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [l]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [f]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [p]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [N]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [m]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [c]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [l]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [f]
}],
/**
* 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": [x]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [N]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [m]
}],
// 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", P]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: b()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", P]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: b()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", P]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [A]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [A]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [A]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [Le, P]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [se]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [se]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [H]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [H]
}],
/**
* 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", P]
}],
// 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", P]
}],
/**
* 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": S()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": S()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": S()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": S()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": S()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": S()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": S()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": S()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": S()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": S()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": S()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": S()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": S()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": S()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": S()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": S()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": S()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": S()
}],
/**
* 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", P]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [fe, he, lt]
}],
/**
* 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"]
}
};
}, zo = /* @__PURE__ */ lo(Po);
/*!
* 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 No(e, t, r) {
return (t = Eo(t)) in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function ir(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function u(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? ir(Object(r), !0).forEach(function(n) {
No(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : ir(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function jo(e, t) {
if (typeof e != "object" || !e) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var n = r.call(e, t);
if (typeof n != "object") return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
}
function Eo(e) {
var t = jo(e, "string");
return typeof t == "symbol" ? t : t + "";
}
const sr = () => {
};
let Vt = {}, rn = {}, nn = null, on = {
mark: sr,
measure: sr
};
try {
typeof window < "u" && (Vt = window), typeof document < "u" && (rn = document), typeof MutationObserver < "u" && (nn = MutationObserver), typeof performance < "u" && (on = performance);
} catch {
}
const {
userAgent: lr = ""
} = Vt.navigator || {}, ke = Vt, Y = rn, cr = nn, Xe = on;
ke.document;
const ge = !!Y.documentElement && !!Y.head && typeof Y.addEventListener == "function" && typeof Y.createElement == "function", an = ~lr.indexOf("MSIE") || ~lr.indexOf("Trident/");
var Io = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/, Mo = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i, sn = {
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"
}
}, Ro = {
GROUP: "duotone-group",
PRIMARY: "primary",
SECONDARY: "secondary"
}, ln = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], X = "classic", nt = "duotone", To = "sharp", Fo = "sharp-duotone", cn = [X, nt, To, Fo], Lo = {
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"
}
}, $o = {
"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"
}
}, Go = /* @__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
}]]), _o = {
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"
}
}, Do = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], fr = {
kit: {
fak: "kit",
"fa-kit": "kit"
},
"kit-duotone": {
fakd: "kit-duotone",
"fa-kit-duotone": "kit-duotone"
}
}, Wo = ["kit"], Vo = {
kit: {
"fa-kit": "fak"
}
}, Yo = ["fak", "fakd"], Uo = {
kit: {
fak: "fa-kit"
}
}, ur = {
kit: {
kit: "fak"
},
"kit-duotone": {
"kit-duotone": "fakd"
}
}, Ke = {
GROUP: "duotone-group",
SWAP_OPACITY: "swap-opacity",
PRIMARY: "primary",
SECONDARY: "secondary"
}, Ho = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"], Bo = ["fak", "fa-kit", "fakd", "fa-kit-duotone"], qo = {
"Font Awesome Kit": {
400: "fak",
normal: "fak"
},
"Font Awesome Kit Duotone": {
400: "fakd",
normal: "fakd"
}
}, Xo = {
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"
}
}, Ko = {
classic: ["fas", "far", "fal", "fat", "fad"],
duotone: ["fadr", "fadl", "fadt"],
sharp: ["fass", "fasr", "fasl", "fast"],
"sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
}, Ot = {
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"
}
}, Jo = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"], St = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...Ho, ...Jo], Zo = ["solid", "regular", "light", "thin", "duotone", "brands"], fn = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], Qo = fn.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]), ea = [...Object.keys(Ko), ...Zo, "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", Ke.GROUP, Ke.SWAP_OPACITY, Ke.PRIMARY, Ke.SECONDARY].concat(fn.map((e) => "".concat(e, "x"))).concat(Qo.map((e) => "w-".concat(e))), ta = {
"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 pe = "___FONT_AWESOME___", Ct = 16, un = "fa", dn = "svg-inline--fa", Ae = "data-fa-i2svg", At = "data-fa-pseudo-element", ra = "data-fa-pseudo-element-pending", Yt = "data-prefix", Ut = "data-icon", dr = "fontawesome-i2svg", na = "async", oa = ["HTML", "HEAD", "STYLE", "SCRIPT"], pn = (() => {
try {
return process.env.NODE_ENV === "production";
} catch {
return !1;
}
})();
function He(e) {
return new Proxy(e, {
get(t, r) {
return r in t ? t[r] : t[X];
}
});
}
const mn = u({}, sn);
mn[X] = u(u(u(u({}, {
"fa-duotone": "duotone"
}), sn[X]), fr.kit), fr["kit-duotone"]);
const aa = He(mn), Pt = u({}, _o);
Pt[X] = u(u(u(u({}, {
duotone: "fad"
}), Pt[X]), ur.kit), ur["kit-duotone"]);
const pr = He(Pt), zt = u({}, Ot);
zt[X] = u(u({}, zt[X]), Uo.kit);
const Ht = He(zt), Nt = u({}, Xo);
Nt[X] = u(u({}, Nt[X]), Vo.kit);
He(Nt);
const ia = Io, gn = "fa-layers-text", sa = Mo, la = u({}, Lo);
He(la);
const ca = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"], ct = Ro, fa = [...Wo, ...ea], We = ke.FontAwesomeConfig || {};
function ua(e) {
var t = Y.querySelector("script[" + e + "]");
if (t)
return t.getAttribute(e);
}
function da(e) {
return e === "" ? !0 : e === "false" ? !1 : e === "true" ? !0 : e;
}
Y && typeof Y.querySelector == "function" && [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]].forEach((e) => {
let [t, r] = e;
const n = da(ua(t));
n != null && (We[r] = n);
});
const bn = {
styleDefault: "solid",
familyDefault: X,
cssPrefix: un,
replacementClass: dn,
autoReplaceSvg: !0,
autoAddCss: !0,
autoA11y: !0,
searchPseudoElements: !1,
observeMutations: !0,
mutateApproach: "async",
keepOriginalSource: !0,
measurePerformance: !1,
showMissingIcons: !0
};
We.familyPrefix && (We.cssPrefix = We.familyPrefix);
const Me = u(u({}, bn), We);
Me.autoReplaceSvg || (Me.observeMutations = !1);
const k = {};
Object.keys(bn).forEach((e) => {
Object.defineProperty(k, e, {
enumerable: !0,
set: function(t) {
Me[e] = t, Ve.forEach((r) => r(k));
},
get: function() {
return Me[e];
}
});
});
Object.defineProperty(k, "familyPrefix", {
enumerable: !0,
set: function(e) {
Me.cssPrefix = e, Ve.forEach((t) => t(k));
},
get: function() {
return Me.cssPrefix;
}
});
ke.FontAwesomeConfig = k;
const Ve = [];
function pa(e) {
return Ve.push(e), () => {
Ve.splice(Ve.indexOf(e), 1);
};
}
const ve = Ct, ae = {
size: 16,
x: 0,
y: 0,
rotate: 0,
flipX: !1,
flipY: !1
};
function ma(e) {
if (!e || !ge)
return;
const t = Y.createElement("style");
t.setAttribute("type", "text/css"), t.innerHTML = e;
const r = Y.head.childNodes;
let n = null;
for (let o = r.length - 1; o > -1; o--) {
const a = r[o], i = (a.tagName || "").toUpperCase();
["STYLE", "LINK"].indexOf(i) > -1 && (n = a);
}
return Y.head.insertBefore(t, n), e;
}
const ga = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
function Ye() {
let e = 12, t = "";
for (; e-- > 0; )
t += ga[Math.random() * 62 | 0];
return t;
}
function Te(e) {
const t = [];
for (let r = (e || []).length >>> 0; r--; )
t[r] = e[r];
return t;
}
function Bt(e) {
return e.classList ? Te(e.classList) : (e.getAttribute("class") || "").split(" ").filter((t) => t);
}
function hn(e) {
return "".concat(e).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
function ba(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, '="').concat(hn(e[r]), '" '), "").trim();
}
function ot(e) {
return Object.keys(e || {}).reduce((t, r) => t + "".concat(r, ": ").concat(e[r].trim(), ";"), "");
}
function qt(e) {
return e.size !== ae.size || e.x !== ae.x || e.y !== ae.y || e.rotate !== ae.rotate || e.flipX || e.flipY;
}
function ha(e) {
let {
transform: t,
containerWidth: r,
iconWidth: n
} = e;
const o = {
transform: "translate(".concat(r / 2, " 256)")
}, a = "translate(".concat(t.x * 32, ", ").concat(t.y * 32, ") "), i = "scale(".concat(t.size / 16 * (t.flipX ? -1 : 1), ", ").concat(t.size / 16 * (t.flipY ? -1 : 1), ") "), s = "rotate(".concat(t.rotate, " 0 0)"), c = {
transform: "".concat(a, " ").concat(i, " ").concat(s)
}, l = {
transform: "translate(".concat(n / 2 * -1, " -256)")
};
return {
outer: o,
inner: c,
path: l
};
}
function ya(e) {
let {
transform: t,
width: r = Ct,
height: n = Ct,
startCentered: o = !1
} = e, a = "";
return o && an ? a += "translate(".concat(t.x / ve - r / 2, "em, ").concat(t.y / ve - n / 2, "em) ") : o ? a += "translate(calc(-50% + ".concat(t.x / ve, "em), calc(-50% + ").concat(t.y / ve, "em)) ") : a += "translate(".concat(t.x / ve, "em, ").concat(t.y / ve, "em) "), a += "scale(".concat(t.size / ve * (t.flipX ? -1 : 1), ", ").concat(t.size / ve * (t.flipY ? -1 : 1), ") "), a += "rotate(".concat(t.rotate, "deg) "), a;
}
var va = `: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 yn() {
const e = un, t = dn, r = k.cssPrefix, n = k.replacementClass;
let o = va;
if (r !== e || n !== t) {
const a = new RegExp("\\.".concat(e, "\\-"), "g"), i = new RegExp("\\--".concat(e, "\\-"), "g"), s = new RegExp("\\.".concat(t), "g");
o = o.replace(a, ".".concat(r, "-")).replace(i, "--".concat(r, "-")).replace(s, ".".concat(n));
}
return o;
}
let mr = !1;
function ft() {
k.autoAddCss && !mr && (ma(yn()), mr = !0);
}
var xa = {
mixout() {
return {
dom: {
css: yn,
insertCss: ft
}
};
},
hooks() {
return {
beforeDOMElementCreation() {
ft();
},
beforeI2svg() {
ft();
}
};
}
};
const me = ke || {};
me[pe] || (me[pe] = {});
me[pe].styles || (me[pe].styles = {});
me[pe].hooks || (me[pe].hooks = {});
me[pe].shims || (me[pe].shims = []);
var ie = me[pe];
const vn = [], xn = function() {
Y.removeEventListener("DOMContentLoaded", xn), et = 1, vn.map((e) => e());
};
let et = !1;
ge && (et = (Y.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(Y.readyState), et || Y.addEventListener("DOMContentLoaded", xn));
function wa(e) {
ge && (et ? setTimeout(e, 0) : vn.push(e));
}
function Be(e) {
const {
tag: t,
attributes: r = {},
children: n = []
} = e;
return typeof e == "string" ? hn(e) : "<".concat(t, " ").concat(ba(r), ">").concat(n.map(Be).join(""), "</").concat(t, ">");
}
function gr(e, t, r) {
if (e && e[t] && e[t][r])
return {
prefix: t,
iconName: r,
icon: e[t][r]
};
}
var ut = function(e, t, r, n) {
var o = Object.keys(e), a = o.length, i = t, s, c, l;
for (r === void 0 ? (s = 1, l = e[o[0]]) : (s = 0, l = r); s < a; s++)
c = o[s], l = i(l, e[c], c, e);
return l;
};
function ka(e) {
const t = [];
let r = 0;
const n = e.length;
for (; r < n; ) {
const o = e.charCodeAt(r++);
if (o >= 55296 && o <= 56319 && r < n) {
const a = e.charCodeAt(r++);
(a & 64512) == 56320 ? t.push(((o & 1023) << 10) + (a & 1023) + 65536) : (t.push(o), r--);
} else
t.push(o);
}
return t;
}
function wn(e) {
const t = ka(e);
return t.length === 1 ? t[0].toString(16) : null;
}
function Oa(e, t) {
const r = e.length;
let n = e.charCodeAt(t), o;
return n >= 55296 && n <= 56319 && r > t + 1 && (o = e.charCodeAt(t + 1), o >= 56320 && o <= 57343) ? (n - 55296) * 1024 + o - 56320 + 65536 : n;
}
function br(e) {
return Object.keys(e).reduce((t, r) => {
const n = e[r];
return n.icon ? t[n.iconName] = n.icon : t[r] = n, t;
}, {});
}
function jt(e, t) {
let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
const {
skipHooks: n = !1
} = r, o = br(t);
typeof ie.hooks.addPack == "function" && !n ? ie.hooks.addPack(e, br(t)) : ie.styles[e] = u(u({}, ie.styles[e] || {}), o), e === "fas" && jt("fa", t);
}
const {
styles: Ue,
shims: Sa
} = ie, kn = Object.keys(Ht), Ca = kn.reduce((e, t) => (e[t] = Object.keys(Ht[t]), e), {});
let Xt = null, On = {}, Sn = {}, Cn = {}, An = {}, Pn = {};
function Aa(e) {
return ~fa.indexOf(e);
}
function Pa(e, t) {
const r = t.split("-"), n = r[0], o = r.slice(1).join("-");
return n === e && o !== "" && !Aa(o) ? o : null;
}
const zn = () => {
const e = (n) => ut(Ue, (o, a, i) => (o[i] = ut(a, n, {}), o), {});
On = e((n, o, a) => (o[3] && (n[o[3]] = a), o[2] && o[2].filter((i) => typeof i == "number").forEach((i) => {
n[i.toString(16)] = a;
}), n)), Sn = e((n, o, a) => (n[a] = a, o[2] && o[2].filter((i) => typeof i == "string").forEach((i) => {
n[i] = a;
}), n)), Pn = e((n, o, a) => {
const i = o[2];
return n[a] = a, i.forEach((s) => {
n[s] = a;
}), n;
});
const t = "far" in Ue || k.autoFetchSvg, r = ut(Sa, (n, o) => {
const a = o[0];
let i = o[1];
const s = o[2];
return i === "far" && !t && (i = "fas"), typeof a == "string" && (n.names[a] = {
prefix: i,
iconName: s
}), typeof a == "number" && (n.unicodes[a.toString(16)] = {
prefix: i,
iconName: s
}), n;
}, {
names: {},
unicodes: {}
});
Cn = r.names, An = r.unicodes, Xt = at(k.styleDefault, {
family: k.familyDefault
});
};
pa((e) => {
Xt = at(e.styleDefault, {
family: k.familyDefault
});
});
zn();
function Kt(e, t) {
return (On[e] || {})[t];
}
function za(e, t) {
return (Sn[e] || {})[t];
}
function Ce(e, t) {
return (Pn[e] || {})[t];
}
function Nn(e) {
return Cn[e] || {
prefix: null,
iconName: null
};
}
function Na(e) {
const t = An[e], r = Kt("fas", e);
return t || (r ? {
prefix: "fas",
iconName: r
} : null) || {
prefix: null,
iconName: null
};
}
function Oe() {
return Xt;
}
const jn = () => ({
prefix: null,
iconName: null,
rest: []
});
function ja(e) {
let t = X;
const r = kn.reduce((n, o) => (n[o] = "".concat(k.cssPrefix, "-").concat(o), n), {});
return cn.forEach((n) => {
(e.includes(r[n]) || e.some((o) => Ca[n].includes(o))) && (t = n);
}), t;
}
function at(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
family: r = X
} = t, n = aa[r][e];
if (r === nt && !e)
return "fad";
const o = pr[r][e] || pr[r][n], a = e in ie.styles ? e : null;
return o || a || null;
}
function Ea(e) {
let t = [], r = null;
return e.forEach((n) => {
const o = Pa(k.cssPrefix, n);
o ? r = o : n && t.push(n);
}), {
iconName: r,
rest: t
};
}
function hr(e) {
return e.sort().filter((t, r, n) => n.indexOf(t) === r);
}
function it(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
skipLookups: r = !1
} = t;
let n = null;
const o = St.concat(Bo), a = hr(e.filter((p) => o.includes(p))), i = hr(e.filter((p) => !St.includes(p))), s = a.filter((p) => (n = p, !ln.includes(p))), [c = null] = s, l = ja(a), f = u(u({}, Ea(i)), {}, {
prefix: at(c, {
family: l
})
});
return u(u(u({}, f), Ta({
values: e,
family: l,
styles: Ue,
config: k,
canonical: f,
givenPrefix: n
})), Ia(r, n, f));
}
function Ia(e, t, r) {
let {
prefix: n,
iconName: o
} = r;
if (e || !n || !o)
return {
prefix: n,
iconName: o
};
const a = t === "fa" ? Nn(o) : {}, i = Ce(n, o);
return o = a.iconName || i || o, n = a.prefix || n, n === "far" && !Ue.far && Ue.fas && !k.autoFetchSvg && (n = "fas"), {
prefix: n,
iconName: o
};
}
const Ma = cn.filter((e) => e !== X || e !== nt), Ra = Object.keys(Ot).filter((e) => e !== X).map((e) => Object.keys(Ot[e])).flat();
function Ta(e) {
const {
values: t,
family: r,
canonical: n,
givenPrefix: o = "",
styles: a = {},
config: i = {}
} = e, s = r === nt, c = t.includes("fa-duotone") || t.includes("fad"), l = i.familyDefault === "duotone", f = n.prefix === "fad" || n.prefix === "fa-duotone";
if (!s && (c || l || f) && (n.prefix = "fad"), (t.includes("fa-brands") || t.includes("fab")) && (n.prefix = "fab"), !n.prefix && Ma.includes(r) && (Object.keys(a).find((p) => Ra.includes(p)) || i.autoFetchSvg)) {
const p = Go.get(r).defaultShortPrefixId;
n.prefix = p, n.iconName = Ce(n.prefix, n.iconName) || n.iconName;
}
return (n.prefix === "fa" || o === "fa") && (n.prefix = Oe() || "fas"), n;
}
class Fa {
constructor() {
this.definitions = {};
}
add() {
for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)
r[n] = arguments[n];
const o = r.reduce(this._pullDefinitions, {});
Object.keys(o).forEach((a) => {
this.definitions[a] = u(u({}, this.definitions[a] || {}), o[a]), jt(a, o[a]);
const i = Ht[X][a];
i && jt(i, o[a]), zn();
});
}
reset() {
this.definitions = {};
}
_pullDefinitions(t, r) {
const n = r.prefix && r.iconName && r.icon ? {
0: r
} : r;
return Object.keys(n).map((o) => {
const {
prefix: a,
iconName: i,
icon: s
} = n[o], c = s[2];
t[a] || (t[a] = {}), c.length > 0 && c.forEach((l) => {
typeof l == "string" && (t[a][l] = s);
}), t[a][i] = s;
}), t;
}
}
let yr = [], ze = {};
const Ee = {}, La = Object.keys(Ee);
function $a(e, t) {
let {
mixoutsTo: r
} = t;
return yr = e, ze = {}, Object.keys(Ee).forEach((n) => {
La.indexOf(n) === -1 && delete Ee[n];
}), yr.forEach((n) => {
const o = n.mixout ? n.mixout() : {};
if (Object.keys(o).forEach((a) => {
typeof o[a] == "function" && (r[a] = o[a]), typeof o[a] == "object" && Object.keys(o[a]).forEach((i) => {
r[a] || (r[a] = {}), r[a][i] = o[a][i];
});
}), n.hooks) {
const a = n.hooks();
Object.keys(a).forEach((i) => {
ze[i] || (ze[i] = []), ze[i].push(a[i]);
});
}
n.provides && n.provides(Ee);
}), r;
}
function Et(e, t) {
for (var r = arguments.length, n = new Array(r > 2 ? r - 2 : 0), o = 2; o < r; o++)
n[o - 2] = arguments[o];
return (ze[e] || []).forEach((a) => {
t = a.apply(null, [t, ...n]);
}), t;
}
function Pe(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)
r[n - 1] = arguments[n];
(ze[e] || []).forEach((o) => {
o.apply(null, r);
});
}
function Se() {
const e = arguments[0], t = Array.prototype.slice.call(arguments, 1);
return Ee[e] ? Ee[e].apply(null, t) : void 0;
}
function It(e) {
e.prefix === "fa" && (e.prefix = "fas");
let {
iconName: t
} = e;
const r = e.prefix || Oe();
if (t)
return t = Ce(r, t) || t, gr(En.definitions, r, t) || gr(ie.styles, r, t);
}
const En = new Fa(), Ga = () => {
k.autoReplaceSvg = !1, k.observeMutations = !1, Pe("noAuto");
}, _a = {
i2svg: function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
return ge ? (Pe("beforeI2svg", e), Se("pseudoElements2svg", e), Se("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;
k.autoReplaceSvg === !1 && (k.autoReplaceSvg = !0), k.observeMutations = !0, wa(() => {
Wa({
autoReplaceSvgRoot: t
}), Pe("watch", e);
});
}
}, Da = {
icon: (e) => {
if (e === null)
return null;
if (typeof e == "object" && e.prefix && e.iconName)
return {
prefix: e.prefix,
iconName: Ce(e.prefix, e.iconName) || e.iconName
};
if (Array.isArray(e) && e.length === 2) {
const t = e[1].indexOf("fa-") === 0 ? e[1].slice(3) : e[1], r = at(e[0]);
return {
prefix: r,
iconName: Ce(r, t) || t
};
}
if (typeof e == "string" && (e.indexOf("".concat(k.cssPrefix, "-")) > -1 || e.match(ia))) {
const t = it(e.split(" "), {
skipLookups: !0
});
return {
prefix: t.prefix || Oe(),
iconName: Ce(t.prefix, t.iconName) || t.iconName
};
}
if (typeof e == "string") {
const t = Oe();
return {
prefix: t,
iconName: Ce(t, e) || e
};
}
}
}, Z = {
noAuto: Ga,
config: k,
dom: _a,
parse: Da,
library: En,
findIconDefinition: It,
toHtml: Be
}, Wa = function() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const {
autoReplaceSvgRoot: t = Y
} = e;
(Object.keys(ie.styles).length > 0 || k.autoFetchSvg) && ge && k.autoReplaceSvg && Z.dom.i2svg({
node: t
});
};
function st(e, t) {
return Object.defineProperty(e, "abstract", {
get: t
}), Object.defineProperty(e, "html", {
get: function() {
return e.abstract.map((r) => Be(r));
}
}), Object.defineProperty(e, "node", {
get: function() {
if (!ge) return;
const r = Y.createElement("div");
return r.innerHTML = e.html, r.children;
}
}), e;
}
function Va(e) {
let {
children: t,
main: r,
mask: n,
attributes: o,
styles: a,
transform: i
} = e;
if (qt(i) && r.found && !n.found) {
const {
width: s,
height: c
} = r, l = {
x: s / c / 2,
y: 0.5
};
o.style = ot(u(u({}, a), {}, {
"transform-origin": "".concat(l.x + i.x / 16, "em ").concat(l.y + i.y / 16, "em")
}));
}
return [{
tag: "svg",
attributes: o,
children: t
}];
}
function Ya(e) {
let {
prefix: t,
iconName: r,
children: n,
attributes: o,
symbol: a
} = e;
const i = a === !0 ? "".concat(t, "-").concat(k.cssPrefix, "-").concat(r) : a;
return [{
tag: "svg",
attributes: {
style: "display: none;"
},
children: [{
tag: "symbol",
attributes: u(u({}, o), {}, {
id: i
}),
children: n
}]
}];
}
function Jt(e) {
const {
icons: {
main: t,
mask: r
},
prefix: n,
iconName: o,
transform: a,
symbol: i,
title: s,
maskId: c,
titleId: l,
extra: f,
watchable: p = !1
} = e, {
width: h,
height: w
} = r.found ? r : t, C = Yo.includes(n), y = [k.replacementClass, o ? "".concat(k.cssPrefix, "-").concat(o) : ""].filter((m) => f.classes.indexOf(m) === -1).filter((m) => m !== "" || !!m).concat(f.classes).join(" ");
let g = {
children: [],
attributes: u(u({}, f.attributes), {}, {
"data-prefix": n,
"data-icon": o,
class: y,
role: f.attributes.role || "img",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 ".concat(h, " ").concat(w)
})
};
const x = C && !~f.classes.indexOf("fa-fw") ? {
width: "".concat(h / w * 16 * 0.0625, "em")
} : {};
p && (g.attributes[Ae] = ""), s && (g.children.push({
tag: "title",
attributes: {
id: g.attributes["aria-labelledby"] || "title-".concat(l || Ye())
},
children: [s]
}), delete g.attributes.title);
const O = u(u({}, g), {}, {
prefix: n,
iconName: o,
main: t,
mask: r,
maskId: c,
transform: a,
symbol: i,
styles: u(u({}, x), f.styles)
}), {
children: N,
attributes: A
} = r.found && t.found ? Se("generateAbstractMask", O) || {
children: [],
attributes: {}
} : Se("generateAbstractIcon", O) || {
children: [],
attributes: {}
};
return O.children = N, O.attributes = A, i ? Ya(O) : Va(O);
}
function vr(e) {
const {
content: t,
width: r,
height: n,
transform: o,
title: a,
extra: i,
watchable: s = !1
} = e, c = u(u(u({}, i.attributes), a ? {
title: a
} : {}), {}, {
class: i.classes.join(" ")
});
s && (c[Ae] = "");
const l = u({}, i.styles);
qt(o) && (l.transform = ya({
transform: o,
startCentered: !0,
width: r,
height: n
}), l["-webkit-transform"] = l.transform);
const f = ot(l);
f.length > 0 && (c.style = f);
const p = [];
return p.push({
tag: "span",
attributes: c,
children: [t]
}), a && p.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [a]
}), p;
}
function Ua(e) {
const {
content: t,
title: r,
extra: n
} = e, o = u(u(u({}, n.attributes), r ? {
title: r
} : {}), {}, {
class: n.classes.join(" ")
}), a = ot(n.styles);
a.length > 0 && (o.style = a);
const i = [];
return i.push({
tag: "span",
attributes: o,
children: [t]
}), r && i.push({
tag: "span",
attributes: {
class: "sr-only"
},
children: [r]
}), i;
}
const {
styles: dt
} = ie;
function Mt(e) {
const t = e[0], r = e[1], [n] = e.slice(4);
let o = null;
return Array.isArray(n) ? o = {
tag: "g",
attributes: {
class: "".concat(k.cssPrefix, "-").concat(ct.GROUP)
},
children: [{
tag: "path",
attributes: {
class: "".concat(k.cssPrefix, "-").concat(ct.SECONDARY),
fill: "currentColor",
d: n[0]
}
}, {
tag: "path",
attributes: {
class: "".concat(k.cssPrefix, "-").concat(ct.PRIMARY),
fill: "currentColor",
d: n[1]
}
}]
} : o = {
tag: "path",
attributes: {
fill: "currentColor",
d: n
}
}, {
found: !0,
width: t,
height: r,
icon: o
};
}
const Ha = {
found: !1,
width: 512,
height: 512
};
function Ba(e, t) {
!pn && !k.showMissingIcons && e && console.error('Icon with name "'.concat(e, '" and prefix "').concat(t, '" is missing.'));
}
function Rt(e, t) {
let r = t;
return t === "fa" && k.styleDefault !== null && (t = Oe()), new Promise((n, o) => {
if (r === "fa") {
const a = Nn(e) || {};
e = a.iconName || e, t = a.prefix || t;
}
if (e && t && dt[t] && dt[t][e]) {
const a = dt[t][e];
return n(Mt(a));
}
Ba(e, t), n(u(u({}, Ha), {}, {
icon: k.showMissingIcons && e ? Se("missingIconAbstract") || {} : {}
}));
});
}
const xr = () => {
}, Tt = k.measurePerformance && Xe && Xe.mark && Xe.measure ? Xe : {
mark: xr,
measure: xr
}, De = 'FA "6.7.2"', qa = (e) => (Tt.mark("".concat(De, " ").concat(e, " begins")), () => In(e)), In = (e) => {
Tt.mark("".concat(De, " ").concat(e, " ends")), Tt.measure("".concat(De, " ").concat(e), "".concat(De, " ").concat(e, " begins"), "".concat(De, " ").concat(e, " ends"));
};
var Zt = {
begin: qa,
end: In
};
const Ze = () => {
};
function wr(e) {
return typeof (e.getAttribute ? e.getAttribute(Ae) : null) == "string";
}
function Xa(e) {
const t = e.getAttribute ? e.getAttribute(Yt) : null, r = e.getAttribute ? e.getAttribute(Ut) : null;
return t && r;
}
function Ka(e) {
return e && e.classList && e.classList.contains && e.classList.contains(k.replacementClass);
}
function Ja() {
return k.autoReplaceSvg === !0 ? Qe.replace : Qe[k.autoReplaceSvg] || Qe.replace;
}
function Za(e) {
return Y.createElementNS("http://www.w3.org/2000/svg", e);
}
function Qa(e) {
return Y.createElement(e);
}
function Mn(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
ceFn: r = e.tag === "svg" ? Za : Qa
} = t;
if (typeof e == "string")
return Y.createTextNode(e);
const n = r(e.tag);
return Object.keys(e.attributes || []).forEach(function(o) {
n.setAttribute(o, e.attributes[o]);
}), (e.children || []).forEach(function(o) {
n.appendChild(Mn(o, {
ceFn: r
}));
}), n;
}
function ei(e) {
let t = " ".concat(e.outerHTML, " ");
return t = "".concat(t, "Font Awesome fontawesome.com "), t;
}
const Qe = {
replace: function(e) {
const t = e[0];
if (t.parentNode)
if (e[1].forEach((r) => {
t.parentNode.insertBefore(Mn(r), t);
}), t.getAttribute(Ae) === null && k.keepOriginalSource) {
let r = Y.createComment(ei(t));
t.parentNode.replaceChild(r, t);
} else
t.remove();
},
nest: function(e) {
const t = e[0], r = e[1];
if (~Bt(t).indexOf(k.replacementClass))
return Qe.replace(e);
const n = new RegExp("".concat(k.cssPrefix, "-.*"));
if (delete r[0].attributes.id, r[0].attributes.class) {
const a = r[0].attributes.class.split(" ").reduce((i, s) => (s === k.replacementClass || s.match(n) ? i.toSvg.push(s) : i.toNode.push(s), i), {
toNode: [],
toSvg: []
});
r[0].attributes.class = a.toSvg.join(" "), a.toNode.length === 0 ? t.removeAttribute("class") : t.setAttribute("class", a.toNode.join(" "));
}
const o = r.map((a) => Be(a)).join(`
`);
t.setAttribute(Ae, ""), t.innerHTML = o;
}
};
function kr(e) {
e();
}
function Rn(e, t) {
const r = typeof t == "function" ? t : Ze;
if (e.length === 0)
r();
else {
let n = kr;
k.mutateApproach === na && (n = ke.requestAnimationFrame || kr), n(() => {
const o = Ja(), a = Zt.begin("mutate");
e.map(o), a(), r();
});
}
}
let Qt = !1;
function Tn() {
Qt = !0;
}
function Ft() {
Qt = !1;
}
let tt = null;
function Or(e) {
if (!cr || !k.observeMutations)
return;
const {
treeCallback: t = Ze,
nodeCallback: r = Ze,
pseudoElementsCallback: n = Ze,
observeMutationsRoot: o = Y
} = e;
tt = new cr((a) => {
if (Qt) return;
const i = Oe();
Te(a).forEach((s) => {
if (s.type === "childList" && s.addedNodes.length > 0 && !wr(s.addedNodes[0]) && (k.searchPseudoElements && n(s.target), t(s.target)), s.type === "attributes" && s.target.parentNode && k.searchPseudoElements && n(s.target.parentNode), s.type === "attributes" && wr(s.target) && ~ca.indexOf(s.attributeName))
if (s.attributeName === "class" && Xa(s.target)) {
const {
prefix: c,
iconName: l
} = it(Bt(s.target));
s.target.setAttribute(Yt, c || i), l && s.target.setAttribute(Ut, l);
} else Ka(s.target) && r(s.target);
});
}), ge && tt.observe(o, {
childList: !0,
attributes: !0,
characterData: !0,
subtree: !0
});
}
function ti() {
tt && tt.disconnect();
}
function ri(e) {
const t = e.getAttribute("style");
let r = [];
return t && (r = t.split(";").reduce((n, o) => {
const a = o.split(":"), i = a[0], s = a.slice(1);
return i && s.length > 0 && (n[i] = s.join(":").trim()), n;
}, {})), r;
}
function ni(e) {
const t = e.getAttribute("data-prefix"), r = e.getAttribute("data-icon"), n = e.innerText !== void 0 ? e.innerText.trim() : "";
let o = it(Bt(e));
return o.prefix || (o.prefix = Oe()), t && r && (o.prefix = t, o.iconName = r), o.iconName && o.prefix || (o.prefix && n.length > 0 && (o.iconName = za(o.prefix, e.innerText) || Kt(o.prefix, wn(e.innerText))), !o.iconName && k.autoFetchSvg && e.firstChild && e.firstChild.nodeType === Node.TEXT_NODE && (o.iconName = e.firstChild.data)), o;
}
function oi(e) {
const t = Te(e.attributes).reduce((o, a) => (o.name !== "class" && o.name !== "style" && (o[a.name] = a.value), o), {}), r = e.getAttribute("title"), n = e.getAttribute("data-fa-title-id");
return k.autoA11y && (r ? t["aria-labelledby"] = "".concat(k.replacementClass, "-title-").concat(n || Ye()) : (t["aria-hidden"] = "true", t.focusable = "false")), t;
}
function ai() {
return {
iconName: null,
title: null,
titleId: null,
prefix: null,
transform: ae,
symbol: !1,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
extra: {
classes: [],
styles: {},
attributes: {}
}
};
}
function Sr(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
styleParser: !0
};
const {
iconName: r,
prefix: n,
rest: o
} = ni(e), a = oi(e), i = Et("parseNodeAttributes", {}, e);
let s = t.styleParser ? ri(e) : [];
return u({
iconName: r,
title: e.getAttribute("title"),
titleId: e.getAttribute("data-fa-title-id"),
prefix: n,
transform: ae,
mask: {
iconName: null,
prefix: null,
rest: []
},
maskId: null,
symbol: !1,
extra: {
classes: o,
styles: s,
attributes: a
}
}, i);
}
const {
styles: ii
} = ie;
function Fn(e) {
const t = k.autoReplaceSvg === "nest" ? Sr(e, {
styleParser: !1
}) : Sr(e);
return ~t.extra.classes.indexOf(gn) ? Se("generateLayersText", e, t) : Se("generateSvgReplacementMutation", e, t);
}
function si() {
return [...Do, ...St];
}
function Cr(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
if (!ge) return Promise.resolve();
const r = Y.documentElement.classList, n = (f) => r.add("".concat(dr, "-").concat(f)), o = (f) => r.remove("".concat(dr, "-").concat(f)), a = k.autoFetchSvg ? si() : ln.concat(Object.keys(ii));
a.includes("fa") || a.push("fa");
const i = [".".concat(gn, ":not([").concat(Ae, "])")].concat(a.map((f) => ".".concat(f, ":not([").concat(Ae, "])"))).join(", ");
if (i.length === 0)
return Promise.resolve();
let s = [];
try {
s = Te(e.querySelectorAll(i));
} catch {
}
if (s.length > 0)
n("pending"), o("complete");
else
return Promise.resolve();
const c = Zt.begin("onTree"), l = s.reduce((f, p) => {
try {
const h = Fn(p);
h && f.push(h);
} catch (h) {
pn || h.name === "MissingIcon" && console.error(h);
}
return f;
}, []);
return new Promise((f, p) => {
Promise.all(l).then((h) => {
Rn(h, () => {
n("active"), n("complete"), o("pending"), typeof t == "function" && t(), c(), f();
});
}).catch((h) => {
c(), p(h);
});
});
}
function li(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
Fn(e).then((r) => {
r && Rn([r], t);
});
}
function ci(e) {
return function(t) {
let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const n = (t || {}).icon ? t : It(t || {});
let {
mask: o
} = r;
return o && (o = (o || {}).icon ? o : It(o || {})), e(n, u(u({}, r), {}, {
mask: o
}));
};
}
const fi = function(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = ae,
symbol: n = !1,
mask: o = null,
maskId: a = null,
title: i = null,
titleId: s = null,
classes: c = [],
attributes: l = {},
styles: f = {}
} = t;
if (!e) return;
const {
prefix: p,
iconName: h,
icon: w
} = e;
return st(u({
type: "icon"
}, e), () => (Pe("beforeDOMElementCreation", {
iconDefinition: e,
params: t
}), k.autoA11y && (i ? l["aria-labelledby"] = "".concat(k.replacementClass, "-title-").concat(s || Ye()) : (l["aria-hidden"] = "true", l.focusable = "false")), Jt({
icons: {
main: Mt(w),
mask: o ? Mt(o.icon) : {
found: !1,
width: null,
height: null,
icon: {}
}
},
prefix: p,
iconName: h,
transform: u(u({}, ae), r),
symbol: n,
title: i,
maskId: a,
titleId: s,
extra: {
attributes: l,
styles: f,
classes: c
}
})));
};
var ui = {
mixout() {
return {
icon: ci(fi)
};
},
hooks() {
return {
mutationObserverCallbacks(e) {
return e.treeCallback = Cr, e.nodeCallback = li, e;
}
};
},
provides(e) {
e.i2svg = function(t) {
const {
node: r = Y,
callback: n = () => {
}
} = t;
return Cr(r, n);
}, e.generateSvgReplacementMutation = function(t, r) {
const {
iconName: n,
title: o,
titleId: a,
prefix: i,
transform: s,
symbol: c,
mask: l,
maskId: f,
extra: p
} = r;
return new Promise((h, w) => {
Promise.all([Rt(n, i), l.iconName ? Rt(l.iconName, l.prefix) : Promise.resolve({
found: !1,
width: 512,
height: 512,
icon: {}
})]).then((C) => {
let [y, g] = C;
h([t, Jt({
icons: {
main: y,
mask: g
},
prefix: i,
iconName: n,
transform: s,
symbol: c,
maskId: f,
title: o,
titleId: a,
extra: p,
watchable: !0
})]);
}).catch(w);
});
}, e.generateAbstractIcon = function(t) {
let {
children: r,
attributes: n,
main: o,
transform: a,
styles: i
} = t;
const s = ot(i);
s.length > 0 && (n.style = s);
let c;
return qt(a) && (c = Se("generateAbstractTransformGrouping", {
main: o,
transform: a,
containerWidth: o.width,
iconWidth: o.width
})), r.push(c || o.icon), {
children: r,
attributes: n
};
};
}
}, di = {
mixout() {
return {
layer(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
classes: r = []
} = t;
return st({
type: "layer"
}, () => {
Pe("beforeDOMElementCreation", {
assembler: e,
params: t
});
let n = [];
return e((o) => {
Array.isArray(o) ? o.map((a) => {
n = n.concat(a.abstract);
}) : n = n.concat(o.abstract);
}), [{
tag: "span",
attributes: {
class: ["".concat(k.cssPrefix, "-layers"), ...r].join(" ")
},
children: n
}];
});
}
};
}
}, pi = {
mixout() {
return {
counter(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
title: r = null,
classes: n = [],
attributes: o = {},
styles: a = {}
} = t;
return st({
type: "counter",
content: e
}, () => (Pe("beforeDOMElementCreation", {
content: e,
params: t
}), Ua({
content: e.toString(),
title: r,
extra: {
attributes: o,
styles: a,
classes: ["".concat(k.cssPrefix, "-layers-counter"), ...n]
}
})));
}
};
}
}, mi = {
mixout() {
return {
text(e) {
let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
const {
transform: r = ae,
title: n = null,
classes: o = [],
attributes: a = {},
styles: i = {}
} = t;
return st({
type: "text",
content: e
}, () => (Pe("beforeDOMElementCreation", {
content: e,
params: t
}), vr({
content: e,
transform: u(u({}, ae), r),
title: n,
extra: {
attributes: a,
styles: i,
classes: ["".concat(k.cssPrefix, "-layers-text"), ...o]
}
})));
}
};
},
provides(e) {
e.generateLayersText = function(t, r) {
const {
title: n,
transform: o,
extra: a
} = r;
let i = null, s = null;
if (an) {
const c = parseInt(getComputedStyle(t).fontSize, 10), l = t.getBoundingClientRect();
i = l.width / c, s = l.height / c;
}
return k.autoA11y && !n && (a.attributes["aria-hidden"] = "true"), Promise.resolve([t, vr({
content: t.innerHTML,
width: i,
height: s,
transform: o,
title: n,
extra: a,
watchable: !0
})]);
};
}
};
const gi = new RegExp('"', "ug"), Ar = [1105920, 1112319], Pr = u(u(u(u({}, {
FontAwesome: {
normal: "fas",
400: "fas"
}
}), $o), ta), qo), Lt = Object.keys(Pr).reduce((e, t) => (e[t.toLowerCase()] = Pr[t], e), {}), bi = Object.keys(Lt).reduce((e, t) => {
const r = Lt[t];
return e[t] = r[900] || [...Object.entries(r)][0][1], e;
}, {});
function hi(e) {
const t = e.replace(gi, ""), r = Oa(t, 0), n = r >= Ar[0] && r <= Ar[1], o = t.length === 2 ? t[0] === t[1] : !1;
return {
value: wn(o ? t[0] : t),
isSecondary: n || o
};
}
function yi(e, t) {
const r = e.replace(/^['"]|['"]$/g, "").toLowerCase(), n = parseInt(t), o = isNaN(n) ? "normal" : n;
return (Lt[r] || {})[o] || bi[r];
}
function zr(e, t) {
const r = "".concat(ra).concat(t.replace(":", "-"));
return new Promise((n, o) => {
if (e.getAttribute(r) !== null)
return n();
const a = Te(e.children).filter((p) => p.getAttribute(At) === t)[0], i = ke.getComputedStyle(e, t), s = i.getPropertyValue("font-family"), c = s.match(sa), l = i.getPropertyValue("font-weight"), f = i.getPropertyValue("content");
if (a && !c)
return e.removeChild(a), n();
if (c && f !== "none" && f !== "") {
const p = i.getPropertyValue("content");
let h = yi(s, l);
const {
value: w,
isSecondary: C
} = hi(p), y = c[0].startsWith("FontAwesome");
let g = Kt(h, w), x = g;
if (y) {
const O = Na(w);
O.iconName && O.prefix && (g = O.iconName, h = O.prefix);
}
if (g && !C && (!a || a.getAttribute(Yt) !== h || a.getAttribute(Ut) !== x)) {
e.setAttribute(r, x), a && e.removeChild(a);
const O = ai(), {
extra: N
} = O;
N.attributes[At] = t, Rt(g, h).then((A) => {
const m = Jt(u(u({}, O), {}, {
icons: {
main: A,
mask: jn()
},
prefix: h,
iconName: x,
extra: N,
watchable: !0
})), H = Y.createElementNS("http://www.w3.org/2000/svg", "svg");
t === "::before" ? e.insertBefore(H, e.firstChild) : e.appendChild(H), H.outerHTML = m.map((te) => Be(te)).join(`
`), e.removeAttribute(r), n();
}).catch(o);
} else
n();
} else
n();
});
}
function vi(e) {
return Promise.all([zr(e, "::before"), zr(e, "::after")]);
}
function xi(e) {
return e.parentNode !== document.head && !~oa.indexOf(e.tagName.toUpperCase()) && !e.getAttribute(At) && (!e.parentNode || e.parentNode.tagName !== "svg");
}
function Nr(e) {
if (ge)
return new Promise((t, r) => {
const n = Te(e.querySelectorAll("*")).filter(xi).map(vi), o = Zt.begin("searchPseudoElements");
Tn(), Promise.all(n).then(() => {
o(), Ft(), t();
}).catch(() => {
o(), Ft(), r();
});
});
}
var wi = {
hooks() {
return {
mutationObserverCallbacks(e) {
return e.pseudoElementsCallback = Nr, e;
}
};
},
provides(e) {
e.pseudoElements2svg = function(t) {
const {
node: r = Y
} = t;
k.searchPseudoElements && Nr(r);
};
}
};
let jr = !1;
var ki = {
mixout() {
return {
dom: {
unwatch() {
Tn(), jr = !0;
}
}
};
},
hooks() {
return {
bootstrap() {
Or(Et("mutationObserverCallbacks", {}));
},
noAuto() {
ti();
},
watch(e) {
const {
observeMutationsRoot: t
} = e;
jr ? Ft() : Or(Et("mutationObserverCallbacks", {
observeMutationsRoot: t
}));
}
};
}
};
const Er = (e) => {
let t = {
size: 16,
x: 0,
y: 0,
flipX: !1,
flipY: !1,
rotate: 0
};
return e.toLowerCase().split(" ").reduce((r, n) => {
const o = n.toLowerCase().split("-"), a = o[0];
let i = o.slice(1).join("-");
if (a && i === "h")
return r.flipX = !0, r;
if (a && i === "v")
return r.flipY = !0, r;
if (i = parseFloat(i), isNaN(i))
return r;
switch (a) {
case "grow":
r.size = r.size + i;
break;
case "shrink":
r.size = r.size - i;
break;
case "left":
r.x = r.x - i;
break;
case "right":
r.x = r.x + i;
break;
case "up":
r.y = r.y - i;
break;
case "down":
r.y = r.y + i;
break;
case "rotate":
r.rotate = r.rotate + i;
break;
}
return r;
}, t);
};
var Oi = {
mixout() {
return {
parse: {
transform: (e) => Er(e)
}
};
},
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-transform");
return r && (e.transform = Er(r)), e;
}
};
},
provides(e) {
e.generateAbstractTransformGrouping = function(t) {
let {
main: r,
transform: n,
containerWidth: o,
iconWidth: a
} = t;
const i = {
transform: "translate(".concat(o / 2, " 256)")
}, s = "translate(".concat(n.x * 32, ", ").concat(n.y * 32, ") "), c = "scale(".concat(n.size / 16 * (n.flipX ? -1 : 1), ", ").concat(n.size / 16 * (n.flipY ? -1 : 1), ") "), l = "rotate(".concat(n.rotate, " 0 0)"), f = {
transform: "".concat(s, " ").concat(c, " ").concat(l)
}, p = {
transform: "translate(".concat(a / 2 * -1, " -256)")
}, h = {
outer: i,
inner: f,
path: p
};
return {
tag: "g",
attributes: u({}, h.outer),
children: [{
tag: "g",
attributes: u({}, h.inner),
children: [{
tag: r.icon.tag,
children: r.icon.children,
attributes: u(u({}, r.icon.attributes), h.path)
}]
}]
};
};
}
};
const pt = {
x: 0,
y: 0,
width: "100%",
height: "100%"
};
function Ir(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 Si(e) {
return e.tag === "g" ? e.children : [e];
}
var Ci = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-mask"), n = r ? it(r.split(" ").map((o) => o.trim())) : jn();
return n.prefix || (n.prefix = Oe()), e.mask = n, e.maskId = t.getAttribute("data-fa-mask-id"), e;
}
};
},
provides(e) {
e.generateAbstractMask = function(t) {
let {
children: r,
attributes: n,
main: o,
mask: a,
maskId: i,
transform: s
} = t;
const {
width: c,
icon: l
} = o, {
width: f,
icon: p
} = a, h = ha({
transform: s,
containerWidth: f,
iconWidth: c
}), w = {
tag: "rect",
attributes: u(u({}, pt), {}, {
fill: "white"
})
}, C = l.children ? {
children: l.children.map(Ir)
} : {}, y = {
tag: "g",
attributes: u({}, h.inner),
children: [Ir(u({
tag: l.tag,
attributes: u(u({}, l.attributes), h.path)
}, C))]
}, g = {
tag: "g",
attributes: u({}, h.outer),
children: [y]
}, x = "mask-".concat(i || Ye()), O = "clip-".concat(i || Ye()), N = {
tag: "mask",
attributes: u(u({}, pt), {}, {
id: x,
maskUnits: "userSpaceOnUse",
maskContentUnits: "userSpaceOnUse"
}),
children: [w, g]
}, A = {
tag: "defs",
children: [{
tag: "clipPath",
attributes: {
id: O
},
children: Si(p)
}, N]
};
return r.push(A, {
tag: "rect",
attributes: u({
fill: "currentColor",
"clip-path": "url(#".concat(O, ")"),
mask: "url(#".concat(x, ")")
}, pt)
}), {
children: r,
attributes: n
};
};
}
}, Ai = {
provides(e) {
let t = !1;
ke.matchMedia && (t = ke.matchMedia("(prefers-reduced-motion: reduce)").matches), e.missingIconAbstract = function() {
const r = [], n = {
fill: "currentColor"
}, o = {
attributeType: "XML",
repeatCount: "indefinite",
dur: "2s"
};
r.push({
tag: "path",
attributes: u(u({}, n), {}, {
d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
})
});
const a = u(u({}, o), {}, {
attributeName: "opacity"
}), i = {
tag: "circle",
attributes: u(u({}, n), {}, {
cx: "256",
cy: "364",
r: "28"
}),
children: []
};
return t || i.children.push({
tag: "animate",
attributes: u(u({}, o), {}, {
attributeName: "r",
values: "28;14;28;28;14;28;"
})
}, {
tag: "animate",
attributes: u(u({}, a), {}, {
values: "1;0;1;1;0;1;"
})
}), r.push(i), r.push({
tag: "path",
attributes: u(u({}, n), {}, {
opacity: "1",
d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
}),
children: t ? [] : [{
tag: "animate",
attributes: u(u({}, a), {}, {
values: "1;0;0;0;0;1;"
})
}]
}), t || r.push({
tag: "path",
attributes: u(u({}, n), {}, {
opacity: "0",
d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
}),
children: [{
tag: "animate",
attributes: u(u({}, a), {}, {
values: "0;0;1;1;0;0;"
})
}]
}), {
tag: "g",
attributes: {
class: "missing"
},
children: r
};
};
}
}, Pi = {
hooks() {
return {
parseNodeAttributes(e, t) {
const r = t.getAttribute("data-fa-symbol"), n = r === null ? !1 : r === "" ? !0 : r;
return e.symbol = n, e;
}
};
}
}, zi = [xa, ui, di, pi, mi, wi, ki, Oi, Ci, Ai, Pi];
$a(zi, {
mixoutsTo: Z
});
Z.noAuto;
Z.config;
Z.library;
Z.dom;
const $t = Z.parse;
Z.findIconDefinition;
Z.toHtml;
const Ni = Z.icon;
Z.layer;
Z.text;
Z.counter;
function ji(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var Je = { exports: {} }, mt = { exports: {} }, G = {};
/** @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 Mr;
function Ei() {
if (Mr) return G;
Mr = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, c = e ? Symbol.for("react.async_mode") : 60111, l = e ? Symbol.for("react.concurrent_mode") : 60111, f = e ? Symbol.for("react.forward_ref") : 60112, p = e ? Symbol.for("react.suspense") : 60113, h = e ? Symbol.for("react.suspense_list") : 60120, w = e ? Symbol.for("react.memo") : 60115, C = e ? Symbol.for("react.lazy") : 60116, y = e ? Symbol.for("react.block") : 60121, g = e ? Symbol.for("react.fundamental") : 60117, x = e ? Symbol.for("react.responder") : 60118, O = e ? Symbol.for("react.scope") : 60119;
function N(m) {
if (typeof m == "object" && m !== null) {
var H = m.$$typeof;
switch (H) {
case t:
switch (m = m.type, m) {
case c:
case l:
case n:
case a:
case o:
case p:
return m;
default:
switch (m = m && m.$$typeof, m) {
case s:
case f:
case C:
case w:
case i:
return m;
default:
return H;
}
}
case r:
return H;
}
}
}
function A(m) {
return N(m) === l;
}
return G.AsyncMode = c, G.ConcurrentMode = l, G.ContextConsumer = s, G.ContextProvider = i, G.Element = t, G.ForwardRef = f, G.Fragment = n, G.Lazy = C, G.Memo = w, G.Portal = r, G.Profiler = a, G.StrictMode = o, G.Suspense = p, G.isAsyncMode = function(m) {
return A(m) || N(m) === c;
}, G.isConcurrentMode = A, G.isContextConsumer = function(m) {
return N(m) === s;
}, G.isContextProvider = function(m) {
return N(m) === i;
}, G.isElement = function(m) {
return typeof m == "object" && m !== null && m.$$typeof === t;
}, G.isForwardRef = function(m) {
return N(m) === f;
}, G.isFragment = function(m) {
return N(m) === n;
}, G.isLazy = function(m) {
return N(m) === C;
}, G.isMemo = function(m) {
return N(m) === w;
}, G.isPortal = function(m) {
return N(m) === r;
}, G.isProfiler = function(m) {
return N(m) === a;
}, G.isStrictMode = function(m) {
return N(m) === o;
}, G.isSuspense = function(m) {
return N(m) === p;
}, G.isValidElementType = function(m) {
return typeof m == "string" || typeof m == "function" || m === n || m === l || m === a || m === o || m === p || m === h || typeof m == "object" && m !== null && (m.$$typeof === C || m.$$typeof === w || m.$$typeof === i || m.$$typeof === s || m.$$typeof === f || m.$$typeof === g || m.$$typeof === x || m.$$typeof === O || m.$$typeof === y);
}, G.typeOf = N, G;
}
var D = {};
/** @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 Rr;
function Ii() {
return Rr || (Rr = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, r = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, c = e ? Symbol.for("react.async_mode") : 60111, l = e ? Symbol.for("react.concurrent_mode") : 60111, f = e ? Symbol.for("react.forward_ref") : 60112, p = e ? Symbol.for("react.suspense") : 60113, h = e ? Symbol.for("react.suspense_list") : 60120, w = e ? Symbol.for("react.memo") : 60115, C = e ? Symbol.for("react.lazy") : 60116, y = e ? Symbol.for("react.block") : 60121, g = e ? Symbol.for("react.fundamental") : 60117, x = e ? Symbol.for("react.responder") : 60118, O = e ? Symbol.for("react.scope") : 60119;
function N(v) {
return typeof v == "string" || typeof v == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
v === n || v === l || v === a || v === o || v === p || v === h || typeof v == "object" && v !== null && (v.$$typeof === C || v.$$typeof === w || v.$$typeof === i || v.$$typeof === s || v.$$typeof === f || v.$$typeof === g || v.$$typeof === x || v.$$typeof === O || v.$$typeof === y);
}
function A(v) {
if (typeof v == "object" && v !== null) {
var be = v.$$typeof;
switch (be) {
case t:
var qe = v.type;
switch (qe) {
case c:
case l:
case n:
case a:
case o:
case p:
return qe;
default:
var nr = qe && qe.$$typeof;
switch (nr) {
case s:
case f:
case C:
case w:
case i:
return nr;
default:
return be;
}
}
case r:
return be;
}
}
}
var m = c, H = l, te = s, se = i, re = t, ne = f, Q = n, S = C, le = w, q = r, ce = a, U = o, J = p, ee = !1;
function K(v) {
return ee || (ee = !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.")), d(v) || A(v) === c;
}
function d(v) {
return A(v) === l;
}
function b(v) {
return A(v) === s;
}
function T(v) {
return A(v) === i;
}
function M(v) {
return typeof v == "object" && v !== null && v.$$typeof === t;
}
function j(v) {
return A(v) === f;
}
function F(v) {
return A(v) === n;
}
function E(v) {
return A(v) === C;
}
function R(v) {
return A(v) === w;
}
function L(v) {
return A(v) === r;
}
function _(v) {
return A(v) === a;
}
function $(v) {
return A(v) === o;
}
function B(v) {
return A(v) === p;
}
D.AsyncMode = m, D.ConcurrentMode = H, D.ContextConsumer = te, D.ContextProvider = se, D.Element = re, D.ForwardRef = ne, D.Fragment = Q, D.Lazy = S, D.Memo = le, D.Portal = q, D.Profiler = ce, D.StrictMode = U, D.Suspense = J, D.isAsyncMode = K, D.isConcurrentMode = d, D.isContextConsumer = b, D.isContextProvider = T, D.isElement = M, D.isForwardRef = j, D.isFragment = F, D.isLazy = E, D.isMemo = R, D.isPortal = L, D.isProfiler = _, D.isStrictMode = $, D.isSuspense = B, D.isValidElementType = N, D.typeOf = A;
}()), D;
}
var Tr;
function Ln() {
return Tr || (Tr = 1, process.env.NODE_ENV === "production" ? mt.exports = Ei() : mt.exports = Ii()), mt.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var gt, Fr;
function Mi() {
if (Fr) return gt;
Fr = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, r = Object.prototype.propertyIsEnumerable;
function n(a) {
if (a == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(a);
}
function o() {
try {
if (!Object.assign)
return !1;
var a = new String("abc");
if (a[5] = "de", Object.getOwnPropertyNames(a)[0] === "5")
return !1;
for (var i = {}, s = 0; s < 10; s++)
i["_" + String.fromCharCode(s)] = s;
var c = Object.getOwnPropertyNames(i).map(function(f) {
return i[f];
});
if (c.join("") !== "0123456789")
return !1;
var l = {};
return "abcdefghijklmnopqrst".split("").forEach(function(f) {
l[f] = f;
}), Object.keys(Object.assign({}, l)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return gt = o() ? Object.assign : function(a, i) {
for (var s, c = n(a), l, f = 1; f < arguments.length; f++) {
s = Object(arguments[f]);
for (var p in s)
t.call(s, p) && (c[p] = s[p]);
if (e) {
l = e(s);
for (var h = 0; h < l.length; h++)
r.call(s, l[h]) && (c[l[h]] = s[l[h]]);
}
}
return c;
}, gt;
}
var bt, Lr;
function er() {
if (Lr) return bt;
Lr = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return bt = e, bt;
}
var $r, Gr;
function $n() {
return Gr || (Gr = 1, $r = Function.call.bind(Object.prototype.hasOwnProperty)), $r;
}
var ht, _r;
function Ri() {
if (_r) return ht;
_r = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = /* @__PURE__ */ er(), r = {}, n = /* @__PURE__ */ $n();
e = function(a) {
var i = "Warning: " + a;
typeof console < "u" && console.error(i);
try {
throw new Error(i);
} catch {
}
};
}
function o(a, i, s, c, l) {
if (process.env.NODE_ENV !== "production") {
for (var f in a)
if (n(a, f)) {
var p;
try {
if (typeof a[f] != "function") {
var h = Error(
(c || "React class") + ": " + s + " type `" + f + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[f] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw h.name = "Invariant Violation", h;
}
p = a[f](i, f, c, s, null, t);
} catch (C) {
p = C;
}
if (p && !(p instanceof Error) && e(
(c || "React class") + ": type specification of " + s + " `" + f + "` 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 r)) {
r[p.message] = !0;
var w = l ? l() : "";
e(
"Failed " + s + " type: " + p.message + (w ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, ht = o, ht;
}
var yt, Dr;
function Ti() {
if (Dr) return yt;
Dr = 1;
var e = Ln(), t = Mi(), r = /* @__PURE__ */ er(), n = /* @__PURE__ */ $n(), o = /* @__PURE__ */ Ri(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(s) {
var c = "Warning: " + s;
typeof console < "u" && console.error(c);
try {
throw new Error(c);
} catch {
}
});
function i() {
return null;
}
return yt = function(s, c) {
var l = typeof Symbol == "function" && Symbol.iterator, f = "@@iterator";
function p(d) {
var b = d && (l && d[l] || d[f]);
if (typeof b == "function")
return b;
}
var h = "<<anonymous>>", w = {
array: x("array"),
bigint: x("bigint"),
bool: x("boolean"),
func: x("function"),
number: x("number"),
object: x("object"),
string: x("string"),
symbol: x("symbol"),
any: O(),
arrayOf: N,
element: A(),
elementType: m(),
instanceOf: H,
node: ne(),
objectOf: se,
oneOf: te,
oneOfType: re,
shape: S,
exact: le
};
function C(d, b) {
return d === b ? d !== 0 || 1 / d === 1 / b : d !== d && b !== b;
}
function y(d, b) {
this.message = d, this.data = b && typeof b == "object" ? b : {}, this.stack = "";
}
y.prototype = Error.prototype;
function g(d) {
if (process.env.NODE_ENV !== "production")
var b = {}, T = 0;
function M(F, E, R, L, _, $, B) {
if (L = L || h, $ = $ || R, B !== r) {
if (c) {
var v = 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 v.name = "Invariant Violation", v;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var be = L + ":" + R;
!b[be] && // Avoid spamming the console because they are often not actionable except for lib authors
T < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + $ + "` prop on `" + L + "`. 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."
), b[be] = !0, T++);
}
}
return E[R] == null ? F ? E[R] === null ? new y("The " + _ + " `" + $ + "` is marked as required " + ("in `" + L + "`, but its value is `null`.")) : new y("The " + _ + " `" + $ + "` is marked as required in " + ("`" + L + "`, but its value is `undefined`.")) : null : d(E, R, L, _, $);
}
var j = M.bind(null, !1);
return j.isRequired = M.bind(null, !0), j;
}
function x(d) {
function b(T, M, j, F, E, R) {
var L = T[M], _ = U(L);
if (_ !== d) {
var $ = J(L);
return new y(
"Invalid " + F + " `" + E + "` of type " + ("`" + $ + "` supplied to `" + j + "`, expected ") + ("`" + d + "`."),
{ expectedType: d }
);
}
return null;
}
return g(b);
}
function O() {
return g(i);
}
function N(d) {
function b(T, M, j, F, E) {
if (typeof d != "function")
return new y("Property `" + E + "` of component `" + j + "` has invalid PropType notation inside arrayOf.");
var R = T[M];
if (!Array.isArray(R)) {
var L = U(R);
return new y("Invalid " + F + " `" + E + "` of type " + ("`" + L + "` supplied to `" + j + "`, expected an array."));
}
for (var _ = 0; _ < R.length; _++) {
var $ = d(R, _, j, F, E + "[" + _ + "]", r);
if ($ instanceof Error)
return $;
}
return null;
}
return g(b);
}
function A() {
function d(b, T, M, j, F) {
var E = b[T];
if (!s(E)) {
var R = U(E);
return new y("Invalid " + j + " `" + F + "` of type " + ("`" + R + "` supplied to `" + M + "`, expected a single ReactElement."));
}
return null;
}
return g(d);
}
function m() {
function d(b, T, M, j, F) {
var E = b[T];
if (!e.isValidElementType(E)) {
var R = U(E);
return new y("Invalid " + j + " `" + F + "` of type " + ("`" + R + "` supplied to `" + M + "`, expected a single ReactElement type."));
}
return null;
}
return g(d);
}
function H(d) {
function b(T, M, j, F, E) {
if (!(T[M] instanceof d)) {
var R = d.name || h, L = K(T[M]);
return new y("Invalid " + F + " `" + E + "` of type " + ("`" + L + "` supplied to `" + j + "`, expected ") + ("instance of `" + R + "`."));
}
return null;
}
return g(b);
}
function te(d) {
if (!Array.isArray(d))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? a(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : a("Invalid argument supplied to oneOf, expected an array.")), i;
function b(T, M, j, F, E) {
for (var R = T[M], L = 0; L < d.length; L++)
if (C(R, d[L]))
return null;
var _ = JSON.stringify(d, function($, B) {
var v = J(B);
return v === "symbol" ? String(B) : B;
});
return new y("Invalid " + F + " `" + E + "` of value `" + String(R) + "` " + ("supplied to `" + j + "`, expected one of " + _ + "."));
}
return g(b);
}
function se(d) {
function b(T, M, j, F, E) {
if (typeof d != "function")
return new y("Property `" + E + "` of component `" + j + "` has invalid PropType notation inside objectOf.");
var R = T[M], L = U(R);
if (L !== "object")
return new y("Invalid " + F + " `" + E + "` of type " + ("`" + L + "` supplied to `" + j + "`, expected an object."));
for (var _ in R)
if (n(R, _)) {
var $ = d(R, _, j, F, E + "." + _, r);
if ($ instanceof Error)
return $;
}
return null;
}
return g(b);
}
function re(d) {
if (!Array.isArray(d))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), i;
for (var b = 0; b < d.length; b++) {
var T = d[b];
if (typeof T != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + ee(T) + " at index " + b + "."
), i;
}
function M(j, F, E, R, L) {
for (var _ = [], $ = 0; $ < d.length; $++) {
var B = d[$], v = B(j, F, E, R, L, r);
if (v == null)
return null;
v.data && n(v.data, "expectedType") && _.push(v.data.expectedType);
}
var be = _.length > 0 ? ", expected one of type [" + _.join(", ") + "]" : "";
return new y("Invalid " + R + " `" + L + "` supplied to " + ("`" + E + "`" + be + "."));
}
return g(M);
}
function ne() {
function d(b, T, M, j, F) {
return q(b[T]) ? null : new y("Invalid " + j + " `" + F + "` supplied to " + ("`" + M + "`, expected a ReactNode."));
}
return g(d);
}
function Q(d, b, T, M, j) {
return new y(
(d || "React class") + ": " + b + " type `" + T + "." + M + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + j + "`."
);
}
function S(d) {
function b(T, M, j, F, E) {
var R = T[M], L = U(R);
if (L !== "object")
return new y("Invalid " + F + " `" + E + "` of type `" + L + "` " + ("supplied to `" + j + "`, expected `object`."));
for (var _ in d) {
var $ = d[_];
if (typeof $ != "function")
return Q(j, F, E, _, J($));
var B = $(R, _, j, F, E + "." + _, r);
if (B)
return B;
}
return null;
}
return g(b);
}
function le(d) {
function b(T, M, j, F, E) {
var R = T[M], L = U(R);
if (L !== "object")
return new y("Invalid " + F + " `" + E + "` of type `" + L + "` " + ("supplied to `" + j + "`, expected `object`."));
var _ = t({}, T[M], d);
for (var $ in _) {
var B = d[$];
if (n(d, $) && typeof B != "function")
return Q(j, F, E, $, J(B));
if (!B)
return new y(
"Invalid " + F + " `" + E + "` key `" + $ + "` supplied to `" + j + "`.\nBad object: " + JSON.stringify(T[M], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(d), null, " ")
);
var v = B(R, $, j, F, E + "." + $, r);
if (v)
return v;
}
return null;
}
return g(b);
}
function q(d) {
switch (typeof d) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !d;
case "object":
if (Array.isArray(d))
return d.every(q);
if (d === null || s(d))
return !0;
var b = p(d);
if (b) {
var T = b.call(d), M;
if (b !== d.entries) {
for (; !(M = T.next()).done; )
if (!q(M.value))
return !1;
} else
for (; !(M = T.next()).done; ) {
var j = M.value;
if (j && !q(j[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function ce(d, b) {
return d === "symbol" ? !0 : b ? b["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && b instanceof Symbol : !1;
}
function U(d) {
var b = typeof d;
return Array.isArray(d) ? "array" : d instanceof RegExp ? "object" : ce(b, d) ? "symbol" : b;
}
function J(d) {
if (typeof d > "u" || d === null)
return "" + d;
var b = U(d);
if (b === "object") {
if (d instanceof Date)
return "date";
if (d instanceof RegExp)
return "regexp";
}
return b;
}
function ee(d) {
var b = J(d);
switch (b) {
case "array":
case "object":
return "an " + b;
case "boolean":
case "date":
case "regexp":
return "a " + b;
default:
return b;
}
}
function K(d) {
return !d.constructor || !d.constructor.name ? h : d.constructor.name;
}
return w.checkPropTypes = o, w.resetWarningCache = o.resetWarningCache, w.PropTypes = w, w;
}, yt;
}
var vt, Wr;
function Fi() {
if (Wr) return vt;
Wr = 1;
var e = /* @__PURE__ */ er();
function t() {
}
function r() {
}
return r.resetWarningCache = t, vt = function() {
function n(i, s, c, l, f, p) {
if (p !== e) {
var h = 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 h.name = "Invariant Violation", h;
}
}
n.isRequired = n;
function o() {
return n;
}
var a = {
array: n,
bigint: n,
bool: n,
func: n,
number: n,
object: n,
string: n,
symbol: n,
any: n,
arrayOf: o,
element: n,
elementType: n,
instanceOf: o,
node: n,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: r,
resetWarningCache: t
};
return a.PropTypes = a, a;
}, vt;
}
var Vr;
function Li() {
if (Vr) return Je.exports;
if (Vr = 1, process.env.NODE_ENV !== "production") {
var e = Ln(), t = !0;
Je.exports = /* @__PURE__ */ Ti()(e.isElement, t);
} else
Je.exports = /* @__PURE__ */ Fi()();
return Je.exports;
}
var $i = /* @__PURE__ */ Li();
const I = /* @__PURE__ */ ji($i);
function Yr(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function oe(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? Yr(Object(r), !0).forEach(function(n) {
Ne(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : Yr(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function rt(e) {
"@babel/helpers - typeof";
return rt = 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;
}, rt(e);
}
function Ne(e, t, r) {
return t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r, e;
}
function Gi(e, t) {
if (e == null) return {};
var r = {}, n = Object.keys(e), o, a;
for (a = 0; a < n.length; a++)
o = n[a], !(t.indexOf(o) >= 0) && (r[o] = e[o]);
return r;
}
function _i(e, t) {
if (e == null) return {};
var r = Gi(e, t), n, o;
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (o = 0; o < a.length; o++)
n = a[o], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
}
return r;
}
function Gt(e) {
return Di(e) || Wi(e) || Vi(e) || Yi();
}
function Di(e) {
if (Array.isArray(e)) return _t(e);
}
function Wi(e) {
if (typeof Symbol < "u" && e[Symbol.iterator] != null || e["@@iterator"] != null) return Array.from(e);
}
function Vi(e, t) {
if (e) {
if (typeof e == "string") return _t(e, t);
var r = Object.prototype.toString.call(e).slice(8, -1);
if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return _t(e, t);
}
}
function _t(e, t) {
(t == null || t > e.length) && (t = e.length);
for (var r = 0, n = new Array(t); r < t; r++) n[r] = e[r];
return n;
}
function Yi() {
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 Ui(e) {
var t, r = e.beat, n = e.fade, o = e.beatFade, a = e.bounce, i = e.shake, s = e.flash, c = e.spin, l = e.spinPulse, f = e.spinReverse, p = e.pulse, h = e.fixedWidth, w = e.inverse, C = e.border, y = e.listItem, g = e.flip, x = e.size, O = e.rotation, N = e.pull, A = (t = {
"fa-beat": r,
"fa-fade": n,
"fa-beat-fade": o,
"fa-bounce": a,
"fa-shake": i,
"fa-flash": s,
"fa-spin": c,
"fa-spin-reverse": f,
"fa-spin-pulse": l,
"fa-pulse": p,
"fa-fw": h,
"fa-inverse": w,
"fa-border": C,
"fa-li": y,
"fa-flip": g === !0,
"fa-flip-horizontal": g === "horizontal" || g === "both",
"fa-flip-vertical": g === "vertical" || g === "both"
}, Ne(t, "fa-".concat(x), typeof x < "u" && x !== null), Ne(t, "fa-rotate-".concat(O), typeof O < "u" && O !== null && O !== 0), Ne(t, "fa-pull-".concat(N), typeof N < "u" && N !== null), Ne(t, "fa-swap-opacity", e.swapOpacity), t);
return Object.keys(A).map(function(m) {
return A[m] ? m : null;
}).filter(function(m) {
return m;
});
}
function Hi(e) {
return e = e - 0, e === e;
}
function Gn(e) {
return Hi(e) ? e : (e = e.replace(/[\-_\s]+(.)?/g, function(t, r) {
return r ? r.toUpperCase() : "";
}), e.substr(0, 1).toLowerCase() + e.substr(1));
}
var Bi = ["style"];
function qi(e) {
return e.charAt(0).toUpperCase() + e.slice(1);
}
function Xi(e) {
return e.split(";").map(function(t) {
return t.trim();
}).filter(function(t) {
return t;
}).reduce(function(t, r) {
var n = r.indexOf(":"), o = Gn(r.slice(0, n)), a = r.slice(n + 1).trim();
return o.startsWith("webkit") ? t[qi(o)] = a : t[o] = a, t;
}, {});
}
function _n(e, t) {
var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (typeof t == "string")
return t;
var n = (t.children || []).map(function(c) {
return _n(e, c);
}), o = Object.keys(t.attributes || {}).reduce(function(c, l) {
var f = t.attributes[l];
switch (l) {
case "class":
c.attrs.className = f, delete t.attributes.class;
break;
case "style":
c.attrs.style = Xi(f);
break;
default:
l.indexOf("aria-") === 0 || l.indexOf("data-") === 0 ? c.attrs[l.toLowerCase()] = f : c.attrs[Gn(l)] = f;
}
return c;
}, {
attrs: {}
}), a = r.style, i = a === void 0 ? {} : a, s = _i(r, Bi);
return o.attrs.style = oe(oe({}, o.attrs.style), i), e.apply(void 0, [t.tag, oe(oe({}, o.attrs), s)].concat(Gt(n)));
}
var Dn = !1;
try {
Dn = process.env.NODE_ENV === "production";
} catch {
}
function Ki() {
if (!Dn && console && typeof console.error == "function") {
var e;
(e = console).error.apply(e, arguments);
}
}
function Ur(e) {
if (e && rt(e) === "object" && e.prefix && e.iconName && e.icon)
return e;
if ($t.icon)
return $t.icon(e);
if (e === null)
return null;
if (e && rt(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 xt(e, t) {
return Array.isArray(t) && t.length > 0 || !Array.isArray(t) && t ? Ne({}, e, t) : {};
}
var Hr = {
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
}, tr = /* @__PURE__ */ Kr.forwardRef(function(e, t) {
var r = oe(oe({}, Hr), e), n = r.icon, o = r.mask, a = r.symbol, i = r.className, s = r.title, c = r.titleId, l = r.maskId, f = Ur(n), p = xt("classes", [].concat(Gt(Ui(r)), Gt((i || "").split(" ")))), h = xt("transform", typeof r.transform == "string" ? $t.transform(r.transform) : r.transform), w = xt("mask", Ur(o)), C = Ni(f, oe(oe(oe(oe({}, p), h), w), {}, {
symbol: a,
title: s,
titleId: c,
maskId: l
}));
if (!C)
return Ki("Could not find icon", f), null;
var y = C.abstract, g = {
ref: t
};
return Object.keys(r).forEach(function(x) {
Hr.hasOwnProperty(x) || (g[x] = r[x]);
}), Ji(y[0], g);
});
tr.displayName = "FontAwesomeIcon";
tr.propTypes = {
beat: I.bool,
border: I.bool,
beatFade: I.bool,
bounce: I.bool,
className: I.string,
fade: I.bool,
flash: I.bool,
mask: I.oneOfType([I.object, I.array, I.string]),
maskId: I.string,
fixedWidth: I.bool,
inverse: I.bool,
flip: I.oneOf([!0, !1, "horizontal", "vertical", "both"]),
icon: I.oneOfType([I.object, I.array, I.string]),
listItem: I.bool,
pull: I.oneOf(["right", "left"]),
pulse: I.bool,
rotation: I.oneOf([0, 90, 180, 270]),
shake: I.bool,
size: I.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
spin: I.bool,
spinPulse: I.bool,
spinReverse: I.bool,
symbol: I.oneOfType([I.bool, I.string]),
title: I.string,
titleId: I.string,
transform: I.oneOfType([I.string, I.object]),
swapOpacity: I.bool
};
var Ji = _n.bind(null, Kr.createElement);
const rr = "-", Zi = (e) => {
const t = es(e), {
conflictingClassGroups: r,
conflictingClassGroupModifiers: n
} = e;
return {
getClassGroupId: (o) => {
const a = o.split(rr);
return a[0] === "" && a.length !== 1 && a.shift(), Wn(a, t) || Qi(o);
},
getConflictingClassGroupIds: (o, a) => {
const i = r[o] || [];
return a && n[o] ? [...i, ...n[o]] : i;
}
};
}, Wn = (e, t) => {
var r;
if (e.length === 0)
return t.classGroupId;
const n = e[0], o = t.nextPart.get(n), a = o ? Wn(e.slice(1), o) : void 0;
if (a)
return a;
if (t.validators.length === 0)
return;
const i = e.join(rr);
return (r = t.validators.find(({
validator: s
}) => s(i))) == null ? void 0 : r.classGroupId;
}, Br = /^\[(.+)\]$/, Qi = (e) => {
if (Br.test(e)) {
const t = Br.exec(e)[1], r = t == null ? void 0 : t.substring(0, t.indexOf(":"));
if (r)
return "arbitrary.." + r;
}
}, es = (e) => {
const {
theme: t,
prefix: r
} = e, n = {
nextPart: /* @__PURE__ */ new Map(),
validators: []
};
return rs(Object.entries(e.classGroups), r).forEach(([o, a]) => {
Dt(a, n, o, t);
}), n;
}, Dt = (e, t, r, n) => {
e.forEach((o) => {
if (typeof o == "string") {
const a = o === "" ? t : qr(t, o);
a.classGroupId = r;
return;
}
if (typeof o == "function") {
if (ts(o)) {
Dt(o(n), t, r, n);
return;
}
t.validators.push({
validator: o,
classGroupId: r
});
return;
}
Object.entries(o).forEach(([a, i]) => {
Dt(i, qr(t, a), r, n);
});
});
}, qr = (e, t) => {
let r = e;
return t.split(rr).forEach((n) => {
r.nextPart.has(n) || r.nextPart.set(n, {
nextPart: /* @__PURE__ */ new Map(),
validators: []
}), r = r.nextPart.get(n);
}), r;
}, ts = (e) => e.isThemeGetter, rs = (e, t) => t ? e.map(([r, n]) => {
const o = n.map((a) => typeof a == "string" ? t + a : typeof a == "object" ? Object.fromEntries(Object.entries(a).map(([i, s]) => [t + i, s])) : a);
return [r, o];
}) : e, ns = (e) => {
if (e < 1)
return {
get: () => {
},
set: () => {
}
};
let t = 0, r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
const o = (a, i) => {
r.set(a, i), t++, t > e && (t = 0, n = r, r = /* @__PURE__ */ new Map());
};
return {
get(a) {
let i = r.get(a);
if (i !== void 0)
return i;
if ((i = n.get(a)) !== void 0)
return o(a, i), i;
},
set(a, i) {
r.has(a) ? r.set(a, i) : o(a, i);
}
};
}, Vn = "!", os = (e) => {
const {
separator: t,
experimentalParseClassName: r
} = e, n = t.length === 1, o = t[0], a = t.length, i = (s) => {
const c = [];
let l = 0, f = 0, p;
for (let g = 0; g < s.length; g++) {
let x = s[g];
if (l === 0) {
if (x === o && (n || s.slice(g, g + a) === t)) {
c.push(s.slice(f, g)), f = g + a;
continue;
}
if (x === "/") {
p = g;
continue;
}
}
x === "[" ? l++ : x === "]" && l--;
}
const h = c.length === 0 ? s : s.substring(f), w = h.startsWith(Vn), C = w ? h.substring(1) : h, y = p && p > f ? p - f : void 0;
return {
modifiers: c,
hasImportantModifier: w,
baseClassName: C,
maybePostfixModifierPosition: y
};
};
return r ? (s) => r({
className: s,
parseClassName: i
}) : i;
}, as = (e) => {
if (e.length <= 1)
return e;
const t = [];
let r = [];
return e.forEach((n) => {
n[0] === "[" ? (t.push(...r.sort(), n), r = []) : r.push(n);
}), t.push(...r.sort()), t;
}, is = (e) => ({
cache: ns(e.cacheSize),
parseClassName: os(e),
...Zi(e)
}), ss = /\s+/, ls = (e, t) => {
const {
parseClassName: r,
getClassGroupId: n,
getConflictingClassGroupIds: o
} = t, a = [], i = e.trim().split(ss);
let s = "";
for (let c = i.length - 1; c >= 0; c -= 1) {
const l = i[c], {
modifiers: f,
hasImportantModifier: p,
baseClassName: h,
maybePostfixModifierPosition: w
} = r(l);
let C = !!w, y = n(C ? h.substring(0, w) : h);
if (!y) {
if (!C) {
s = l + (s.length > 0 ? " " + s : s);
continue;
}
if (y = n(h), !y) {
s = l + (s.length > 0 ? " " + s : s);
continue;
}
C = !1;
}
const g = as(f).join(":"), x = p ? g + Vn : g, O = x + y;
if (a.includes(O))
continue;
a.push(O);
const N = o(y, C);
for (let A = 0; A < N.length; ++A) {
const m = N[A];
a.push(x + m);
}
s = l + (s.length > 0 ? " " + s : s);
}
return s;
};
function cs() {
let e = 0, t, r, n = "";
for (; e < arguments.length; )
(t = arguments[e++]) && (r = Yn(t)) && (n && (n += " "), n += r);
return n;
}
const Yn = (e) => {
if (typeof e == "string")
return e;
let t, r = "";
for (let n = 0; n < e.length; n++)
e[n] && (t = Yn(e[n])) && (r && (r += " "), r += t);
return r;
};
function fs(e, ...t) {
let r, n, o, a = i;
function i(c) {
const l = t.reduce((f, p) => p(f), e());
return r = is(l), n = r.cache.get, o = r.cache.set, a = s, s(c);
}
function s(c) {
const l = n(c);
if (l)
return l;
const f = ls(c, r);
return o(c, f), f;
}
return function() {
return a(cs.apply(null, arguments));
};
}
const V = (e) => {
const t = (r) => r[e] || [];
return t.isThemeGetter = !0, t;
}, Un = /^\[(?:([a-z-]+):)?(.+)\]$/i, us = /^\d+\/\d+$/, ds = /* @__PURE__ */ new Set(["px", "full", "screen"]), ps = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, ms = /\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$/, gs = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, bs = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, hs = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, ue = (e) => Ie(e) || ds.has(e) || us.test(e), xe = (e) => Fe(e, "length", Cs), Ie = (e) => !!e && !Number.isNaN(Number(e)), wt = (e) => Fe(e, "number", Ie), Ge = (e) => !!e && Number.isInteger(Number(e)), ys = (e) => e.endsWith("%") && Ie(e.slice(0, -1)), z = (e) => Un.test(e), we = (e) => ps.test(e), vs = /* @__PURE__ */ new Set(["length", "size", "percentage"]), xs = (e) => Fe(e, vs, Hn), ws = (e) => Fe(e, "position", Hn), ks = /* @__PURE__ */ new Set(["image", "url"]), Os = (e) => Fe(e, ks, Ps), Ss = (e) => Fe(e, "", As), _e = () => !0, Fe = (e, t, r) => {
const n = Un.exec(e);
return n ? n[1] ? typeof t == "string" ? n[1] === t : t.has(n[1]) : r(n[2]) : !1;
}, Cs = (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.
ms.test(e) && !gs.test(e)
), Hn = () => !1, As = (e) => bs.test(e), Ps = (e) => hs.test(e), zs = () => {
const e = V("colors"), t = V("spacing"), r = V("blur"), n = V("brightness"), o = V("borderColor"), a = V("borderRadius"), i = V("borderSpacing"), s = V("borderWidth"), c = V("contrast"), l = V("grayscale"), f = V("hueRotate"), p = V("invert"), h = V("gap"), w = V("gradientColorStops"), C = V("gradientColorStopPositions"), y = V("inset"), g = V("margin"), x = V("opacity"), O = V("padding"), N = V("saturate"), A = V("scale"), m = V("sepia"), H = V("skew"), te = V("space"), se = V("translate"), re = () => ["auto", "contain", "none"], ne = () => ["auto", "hidden", "clip", "visible", "scroll"], Q = () => ["auto", z, t], S = () => [z, t], le = () => ["", ue, xe], q = () => ["auto", Ie, z], ce = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"], U = () => ["solid", "dashed", "dotted", "double", "none"], J = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], ee = () => ["start", "end", "center", "between", "around", "evenly", "stretch"], K = () => ["", "0", z], d = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], b = () => [Ie, z];
return {
cacheSize: 500,
separator: ":",
theme: {
colors: [_e],
spacing: [ue, xe],
blur: ["none", "", we, z],
brightness: b(),
borderColor: [e],
borderRadius: ["none", "", "full", we, z],
borderSpacing: S(),
borderWidth: le(),
contrast: b(),
grayscale: K(),
hueRotate: b(),
invert: K(),
gap: S(),
gradientColorStops: [e],
gradientColorStopPositions: [ys, xe],
inset: Q(),
margin: Q(),
opacity: b(),
padding: S(),
saturate: b(),
scale: b(),
sepia: K(),
skew: b(),
space: S(),
translate: S()
},
classGroups: {
// Layout
/**
* Aspect Ratio
* @see https://tailwindcss.com/docs/aspect-ratio
*/
aspect: [{
aspect: ["auto", "square", "video", z]
}],
/**
* Container
* @see https://tailwindcss.com/docs/container
*/
container: ["container"],
/**
* Columns
* @see https://tailwindcss.com/docs/columns
*/
columns: [{
columns: [we]
}],
/**
* Break After
* @see https://tailwindcss.com/docs/break-after
*/
"break-after": [{
"break-after": d()
}],
/**
* Break Before
* @see https://tailwindcss.com/docs/break-before
*/
"break-before": [{
"break-before": d()
}],
/**
* 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: [...ce(), z]
}],
/**
* Overflow
* @see https://tailwindcss.com/docs/overflow
*/
overflow: [{
overflow: ne()
}],
/**
* Overflow X
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-x": [{
"overflow-x": ne()
}],
/**
* Overflow Y
* @see https://tailwindcss.com/docs/overflow
*/
"overflow-y": [{
"overflow-y": ne()
}],
/**
* Overscroll Behavior
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
overscroll: [{
overscroll: re()
}],
/**
* Overscroll Behavior X
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-x": [{
"overscroll-x": re()
}],
/**
* Overscroll Behavior Y
* @see https://tailwindcss.com/docs/overscroll-behavior
*/
"overscroll-y": [{
"overscroll-y": re()
}],
/**
* 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: [y]
}],
/**
* Right / Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-x": [{
"inset-x": [y]
}],
/**
* Top / Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
"inset-y": [{
"inset-y": [y]
}],
/**
* Start
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
start: [{
start: [y]
}],
/**
* End
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
end: [{
end: [y]
}],
/**
* Top
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
top: [{
top: [y]
}],
/**
* Right
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
right: [{
right: [y]
}],
/**
* Bottom
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
bottom: [{
bottom: [y]
}],
/**
* Left
* @see https://tailwindcss.com/docs/top-right-bottom-left
*/
left: [{
left: [y]
}],
/**
* Visibility
* @see https://tailwindcss.com/docs/visibility
*/
visibility: ["visible", "invisible", "collapse"],
/**
* Z-Index
* @see https://tailwindcss.com/docs/z-index
*/
z: [{
z: ["auto", Ge, z]
}],
// 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", z]
}],
/**
* Flex Grow
* @see https://tailwindcss.com/docs/flex-grow
*/
grow: [{
grow: K()
}],
/**
* Flex Shrink
* @see https://tailwindcss.com/docs/flex-shrink
*/
shrink: [{
shrink: K()
}],
/**
* Order
* @see https://tailwindcss.com/docs/order
*/
order: [{
order: ["first", "last", "none", Ge, z]
}],
/**
* Grid Template Columns
* @see https://tailwindcss.com/docs/grid-template-columns
*/
"grid-cols": [{
"grid-cols": [_e]
}],
/**
* Grid Column Start / End
* @see https://tailwindcss.com/docs/grid-column
*/
"col-start-end": [{
col: ["auto", {
span: ["full", Ge, z]
}, z]
}],
/**
* 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": [_e]
}],
/**
* Grid Row Start / End
* @see https://tailwindcss.com/docs/grid-row
*/
"row-start-end": [{
row: ["auto", {
span: [Ge, z]
}, z]
}],
/**
* 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", z]
}],
/**
* Grid Auto Rows
* @see https://tailwindcss.com/docs/grid-auto-rows
*/
"auto-rows": [{
"auto-rows": ["auto", "min", "max", "fr", z]
}],
/**
* Gap
* @see https://tailwindcss.com/docs/gap
*/
gap: [{
gap: [h]
}],
/**
* Gap X
* @see https://tailwindcss.com/docs/gap
*/
"gap-x": [{
"gap-x": [h]
}],
/**
* Gap Y
* @see https://tailwindcss.com/docs/gap
*/
"gap-y": [{
"gap-y": [h]
}],
/**
* Justify Content
* @see https://tailwindcss.com/docs/justify-content
*/
"justify-content": [{
justify: ["normal", ...ee()]
}],
/**
* 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", ...ee(), "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": [...ee(), "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: [O]
}],
/**
* Padding X
* @see https://tailwindcss.com/docs/padding
*/
px: [{
px: [O]
}],
/**
* Padding Y
* @see https://tailwindcss.com/docs/padding
*/
py: [{
py: [O]
}],
/**
* Padding Start
* @see https://tailwindcss.com/docs/padding
*/
ps: [{
ps: [O]
}],
/**
* Padding End
* @see https://tailwindcss.com/docs/padding
*/
pe: [{
pe: [O]
}],
/**
* Padding Top
* @see https://tailwindcss.com/docs/padding
*/
pt: [{
pt: [O]
}],
/**
* Padding Right
* @see https://tailwindcss.com/docs/padding
*/
pr: [{
pr: [O]
}],
/**
* Padding Bottom
* @see https://tailwindcss.com/docs/padding
*/
pb: [{
pb: [O]
}],
/**
* Padding Left
* @see https://tailwindcss.com/docs/padding
*/
pl: [{
pl: [O]
}],
/**
* Margin
* @see https://tailwindcss.com/docs/margin
*/
m: [{
m: [g]
}],
/**
* Margin X
* @see https://tailwindcss.com/docs/margin
*/
mx: [{
mx: [g]
}],
/**
* Margin Y
* @see https://tailwindcss.com/docs/margin
*/
my: [{
my: [g]
}],
/**
* Margin Start
* @see https://tailwindcss.com/docs/margin
*/
ms: [{
ms: [g]
}],
/**
* Margin End
* @see https://tailwindcss.com/docs/margin
*/
me: [{
me: [g]
}],
/**
* Margin Top
* @see https://tailwindcss.com/docs/margin
*/
mt: [{
mt: [g]
}],
/**
* Margin Right
* @see https://tailwindcss.com/docs/margin
*/
mr: [{
mr: [g]
}],
/**
* Margin Bottom
* @see https://tailwindcss.com/docs/margin
*/
mb: [{
mb: [g]
}],
/**
* Margin Left
* @see https://tailwindcss.com/docs/margin
*/
ml: [{
ml: [g]
}],
/**
* Space Between X
* @see https://tailwindcss.com/docs/space
*/
"space-x": [{
"space-x": [te]
}],
/**
* 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": [te]
}],
/**
* 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", z, t]
}],
/**
* Min-Width
* @see https://tailwindcss.com/docs/min-width
*/
"min-w": [{
"min-w": [z, t, "min", "max", "fit"]
}],
/**
* Max-Width
* @see https://tailwindcss.com/docs/max-width
*/
"max-w": [{
"max-w": [z, t, "none", "full", "min", "max", "fit", "prose", {
screen: [we]
}, we]
}],
/**
* Height
* @see https://tailwindcss.com/docs/height
*/
h: [{
h: [z, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Min-Height
* @see https://tailwindcss.com/docs/min-height
*/
"min-h": [{
"min-h": [z, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Max-Height
* @see https://tailwindcss.com/docs/max-height
*/
"max-h": [{
"max-h": [z, t, "min", "max", "fit", "svh", "lvh", "dvh"]
}],
/**
* Size
* @see https://tailwindcss.com/docs/size
*/
size: [{
size: [z, t, "auto", "min", "max", "fit"]
}],
// Typography
/**
* Font Size
* @see https://tailwindcss.com/docs/font-size
*/
"font-size": [{
text: ["base", we, xe]
}],
/**
* 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", wt]
}],
/**
* Font Family
* @see https://tailwindcss.com/docs/font-family
*/
"font-family": [{
font: [_e]
}],
/**
* 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", z]
}],
/**
* Line Clamp
* @see https://tailwindcss.com/docs/line-clamp
*/
"line-clamp": [{
"line-clamp": ["none", Ie, wt]
}],
/**
* Line Height
* @see https://tailwindcss.com/docs/line-height
*/
leading: [{
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", ue, z]
}],
/**
* List Style Image
* @see https://tailwindcss.com/docs/list-style-image
*/
"list-image": [{
"list-image": ["none", z]
}],
/**
* List Style Type
* @see https://tailwindcss.com/docs/list-style-type
*/
"list-style-type": [{
list: ["none", "disc", "decimal", z]
}],
/**
* 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": [x]
}],
/**
* 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": [x]
}],
/**
* Text Decoration
* @see https://tailwindcss.com/docs/text-decoration
*/
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
/**
* Text Decoration Style
* @see https://tailwindcss.com/docs/text-decoration-style
*/
"text-decoration-style": [{
decoration: [...U(), "wavy"]
}],
/**
* Text Decoration Thickness
* @see https://tailwindcss.com/docs/text-decoration-thickness
*/
"text-decoration-thickness": [{
decoration: ["auto", "from-font", ue, xe]
}],
/**
* Text Underline Offset
* @see https://tailwindcss.com/docs/text-underline-offset
*/
"underline-offset": [{
"underline-offset": ["auto", ue, z]
}],
/**
* 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: S()
}],
/**
* Vertical Alignment
* @see https://tailwindcss.com/docs/vertical-align
*/
"vertical-align": [{
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", z]
}],
/**
* 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", z]
}],
// 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": [x]
}],
/**
* 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: [...ce(), ws]
}],
/**
* 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", xs]
}],
/**
* Background Image
* @see https://tailwindcss.com/docs/background-image
*/
"bg-image": [{
bg: ["none", {
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
}, Os]
}],
/**
* 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: [C]
}],
/**
* Gradient Color Stops Via Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via-pos": [{
via: [C]
}],
/**
* Gradient Color Stops To Position
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to-pos": [{
to: [C]
}],
/**
* Gradient Color Stops From
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-from": [{
from: [w]
}],
/**
* Gradient Color Stops Via
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-via": [{
via: [w]
}],
/**
* Gradient Color Stops To
* @see https://tailwindcss.com/docs/gradient-color-stops
*/
"gradient-to": [{
to: [w]
}],
// Borders
/**
* Border Radius
* @see https://tailwindcss.com/docs/border-radius
*/
rounded: [{
rounded: [a]
}],
/**
* Border Radius Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-s": [{
"rounded-s": [a]
}],
/**
* Border Radius End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-e": [{
"rounded-e": [a]
}],
/**
* Border Radius Top
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-t": [{
"rounded-t": [a]
}],
/**
* Border Radius Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-r": [{
"rounded-r": [a]
}],
/**
* Border Radius Bottom
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-b": [{
"rounded-b": [a]
}],
/**
* Border Radius Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-l": [{
"rounded-l": [a]
}],
/**
* Border Radius Start Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ss": [{
"rounded-ss": [a]
}],
/**
* Border Radius Start End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-se": [{
"rounded-se": [a]
}],
/**
* Border Radius End End
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-ee": [{
"rounded-ee": [a]
}],
/**
* Border Radius End Start
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-es": [{
"rounded-es": [a]
}],
/**
* Border Radius Top Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tl": [{
"rounded-tl": [a]
}],
/**
* Border Radius Top Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-tr": [{
"rounded-tr": [a]
}],
/**
* Border Radius Bottom Right
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-br": [{
"rounded-br": [a]
}],
/**
* Border Radius Bottom Left
* @see https://tailwindcss.com/docs/border-radius
*/
"rounded-bl": [{
"rounded-bl": [a]
}],
/**
* Border Width
* @see https://tailwindcss.com/docs/border-width
*/
"border-w": [{
border: [s]
}],
/**
* Border Width X
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-x": [{
"border-x": [s]
}],
/**
* Border Width Y
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-y": [{
"border-y": [s]
}],
/**
* Border Width Start
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-s": [{
"border-s": [s]
}],
/**
* Border Width End
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-e": [{
"border-e": [s]
}],
/**
* Border Width Top
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-t": [{
"border-t": [s]
}],
/**
* Border Width Right
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-r": [{
"border-r": [s]
}],
/**
* Border Width Bottom
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-b": [{
"border-b": [s]
}],
/**
* Border Width Left
* @see https://tailwindcss.com/docs/border-width
*/
"border-w-l": [{
"border-l": [s]
}],
/**
* Border Opacity
* @see https://tailwindcss.com/docs/border-opacity
*/
"border-opacity": [{
"border-opacity": [x]
}],
/**
* Border Style
* @see https://tailwindcss.com/docs/border-style
*/
"border-style": [{
border: [...U(), "hidden"]
}],
/**
* Divide Width X
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x": [{
"divide-x": [s]
}],
/**
* Divide Width X Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-x-reverse": ["divide-x-reverse"],
/**
* Divide Width Y
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y": [{
"divide-y": [s]
}],
/**
* Divide Width Y Reverse
* @see https://tailwindcss.com/docs/divide-width
*/
"divide-y-reverse": ["divide-y-reverse"],
/**
* Divide Opacity
* @see https://tailwindcss.com/docs/divide-opacity
*/
"divide-opacity": [{
"divide-opacity": [x]
}],
/**
* Divide Style
* @see https://tailwindcss.com/docs/divide-style
*/
"divide-style": [{
divide: U()
}],
/**
* Border Color
* @see https://tailwindcss.com/docs/border-color
*/
"border-color": [{
border: [o]
}],
/**
* Border Color X
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-x": [{
"border-x": [o]
}],
/**
* Border Color Y
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-y": [{
"border-y": [o]
}],
/**
* Border Color S
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-s": [{
"border-s": [o]
}],
/**
* Border Color E
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-e": [{
"border-e": [o]
}],
/**
* Border Color Top
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-t": [{
"border-t": [o]
}],
/**
* Border Color Right
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-r": [{
"border-r": [o]
}],
/**
* Border Color Bottom
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-b": [{
"border-b": [o]
}],
/**
* Border Color Left
* @see https://tailwindcss.com/docs/border-color
*/
"border-color-l": [{
"border-l": [o]
}],
/**
* Divide Color
* @see https://tailwindcss.com/docs/divide-color
*/
"divide-color": [{
divide: [o]
}],
/**
* Outline Style
* @see https://tailwindcss.com/docs/outline-style
*/
"outline-style": [{
outline: ["", ...U()]
}],
/**
* Outline Offset
* @see https://tailwindcss.com/docs/outline-offset
*/
"outline-offset": [{
"outline-offset": [ue, z]
}],
/**
* Outline Width
* @see https://tailwindcss.com/docs/outline-width
*/
"outline-w": [{
outline: [ue, xe]
}],
/**
* 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: le()
}],
/**
* 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": [x]
}],
/**
* Ring Offset Width
* @see https://tailwindcss.com/docs/ring-offset-width
*/
"ring-offset-w": [{
"ring-offset": [ue, xe]
}],
/**
* 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", we, Ss]
}],
/**
* Box Shadow Color
* @see https://tailwindcss.com/docs/box-shadow-color
*/
"shadow-color": [{
shadow: [_e]
}],
/**
* Opacity
* @see https://tailwindcss.com/docs/opacity
*/
opacity: [{
opacity: [x]
}],
/**
* Mix Blend Mode
* @see https://tailwindcss.com/docs/mix-blend-mode
*/
"mix-blend": [{
"mix-blend": [...J(), "plus-lighter", "plus-darker"]
}],
/**
* Background Blend Mode
* @see https://tailwindcss.com/docs/background-blend-mode
*/
"bg-blend": [{
"bg-blend": J()
}],
// Filters
/**
* Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/filter
*/
filter: [{
filter: ["", "none"]
}],
/**
* Blur
* @see https://tailwindcss.com/docs/blur
*/
blur: [{
blur: [r]
}],
/**
* Brightness
* @see https://tailwindcss.com/docs/brightness
*/
brightness: [{
brightness: [n]
}],
/**
* Contrast
* @see https://tailwindcss.com/docs/contrast
*/
contrast: [{
contrast: [c]
}],
/**
* Drop Shadow
* @see https://tailwindcss.com/docs/drop-shadow
*/
"drop-shadow": [{
"drop-shadow": ["", "none", we, z]
}],
/**
* Grayscale
* @see https://tailwindcss.com/docs/grayscale
*/
grayscale: [{
grayscale: [l]
}],
/**
* Hue Rotate
* @see https://tailwindcss.com/docs/hue-rotate
*/
"hue-rotate": [{
"hue-rotate": [f]
}],
/**
* Invert
* @see https://tailwindcss.com/docs/invert
*/
invert: [{
invert: [p]
}],
/**
* Saturate
* @see https://tailwindcss.com/docs/saturate
*/
saturate: [{
saturate: [N]
}],
/**
* Sepia
* @see https://tailwindcss.com/docs/sepia
*/
sepia: [{
sepia: [m]
}],
/**
* Backdrop Filter
* @deprecated since Tailwind CSS v3.0.0
* @see https://tailwindcss.com/docs/backdrop-filter
*/
"backdrop-filter": [{
"backdrop-filter": ["", "none"]
}],
/**
* Backdrop Blur
* @see https://tailwindcss.com/docs/backdrop-blur
*/
"backdrop-blur": [{
"backdrop-blur": [r]
}],
/**
* Backdrop Brightness
* @see https://tailwindcss.com/docs/backdrop-brightness
*/
"backdrop-brightness": [{
"backdrop-brightness": [n]
}],
/**
* Backdrop Contrast
* @see https://tailwindcss.com/docs/backdrop-contrast
*/
"backdrop-contrast": [{
"backdrop-contrast": [c]
}],
/**
* Backdrop Grayscale
* @see https://tailwindcss.com/docs/backdrop-grayscale
*/
"backdrop-grayscale": [{
"backdrop-grayscale": [l]
}],
/**
* Backdrop Hue Rotate
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
*/
"backdrop-hue-rotate": [{
"backdrop-hue-rotate": [f]
}],
/**
* 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": [x]
}],
/**
* Backdrop Saturate
* @see https://tailwindcss.com/docs/backdrop-saturate
*/
"backdrop-saturate": [{
"backdrop-saturate": [N]
}],
/**
* Backdrop Sepia
* @see https://tailwindcss.com/docs/backdrop-sepia
*/
"backdrop-sepia": [{
"backdrop-sepia": [m]
}],
// 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", z]
}],
/**
* Transition Duration
* @see https://tailwindcss.com/docs/transition-duration
*/
duration: [{
duration: b()
}],
/**
* Transition Timing Function
* @see https://tailwindcss.com/docs/transition-timing-function
*/
ease: [{
ease: ["linear", "in", "out", "in-out", z]
}],
/**
* Transition Delay
* @see https://tailwindcss.com/docs/transition-delay
*/
delay: [{
delay: b()
}],
/**
* Animation
* @see https://tailwindcss.com/docs/animation
*/
animate: [{
animate: ["none", "spin", "ping", "pulse", "bounce", z]
}],
// Transforms
/**
* Transform
* @see https://tailwindcss.com/docs/transform
*/
transform: [{
transform: ["", "gpu", "none"]
}],
/**
* Scale
* @see https://tailwindcss.com/docs/scale
*/
scale: [{
scale: [A]
}],
/**
* Scale X
* @see https://tailwindcss.com/docs/scale
*/
"scale-x": [{
"scale-x": [A]
}],
/**
* Scale Y
* @see https://tailwindcss.com/docs/scale
*/
"scale-y": [{
"scale-y": [A]
}],
/**
* Rotate
* @see https://tailwindcss.com/docs/rotate
*/
rotate: [{
rotate: [Ge, z]
}],
/**
* Translate X
* @see https://tailwindcss.com/docs/translate
*/
"translate-x": [{
"translate-x": [se]
}],
/**
* Translate Y
* @see https://tailwindcss.com/docs/translate
*/
"translate-y": [{
"translate-y": [se]
}],
/**
* Skew X
* @see https://tailwindcss.com/docs/skew
*/
"skew-x": [{
"skew-x": [H]
}],
/**
* Skew Y
* @see https://tailwindcss.com/docs/skew
*/
"skew-y": [{
"skew-y": [H]
}],
/**
* 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", z]
}],
// 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", z]
}],
/**
* 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": S()
}],
/**
* Scroll Margin X
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mx": [{
"scroll-mx": S()
}],
/**
* Scroll Margin Y
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-my": [{
"scroll-my": S()
}],
/**
* Scroll Margin Start
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ms": [{
"scroll-ms": S()
}],
/**
* Scroll Margin End
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-me": [{
"scroll-me": S()
}],
/**
* Scroll Margin Top
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mt": [{
"scroll-mt": S()
}],
/**
* Scroll Margin Right
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mr": [{
"scroll-mr": S()
}],
/**
* Scroll Margin Bottom
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-mb": [{
"scroll-mb": S()
}],
/**
* Scroll Margin Left
* @see https://tailwindcss.com/docs/scroll-margin
*/
"scroll-ml": [{
"scroll-ml": S()
}],
/**
* Scroll Padding
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-p": [{
"scroll-p": S()
}],
/**
* Scroll Padding X
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-px": [{
"scroll-px": S()
}],
/**
* Scroll Padding Y
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-py": [{
"scroll-py": S()
}],
/**
* Scroll Padding Start
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-ps": [{
"scroll-ps": S()
}],
/**
* Scroll Padding End
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pe": [{
"scroll-pe": S()
}],
/**
* Scroll Padding Top
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pt": [{
"scroll-pt": S()
}],
/**
* Scroll Padding Right
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pr": [{
"scroll-pr": S()
}],
/**
* Scroll Padding Bottom
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pb": [{
"scroll-pb": S()
}],
/**
* Scroll Padding Left
* @see https://tailwindcss.com/docs/scroll-padding
*/
"scroll-pl": [{
"scroll-pl": S()
}],
/**
* 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", z]
}],
// SVG
/**
* Fill
* @see https://tailwindcss.com/docs/fill
*/
fill: [{
fill: [e, "none"]
}],
/**
* Stroke Width
* @see https://tailwindcss.com/docs/stroke-width
*/
"stroke-w": [{
stroke: [ue, xe, wt]
}],
/**
* 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"]
}
};
}, Ns = /* @__PURE__ */ fs(zs), Xr = ({
icon: e,
size: t,
onClick: r,
className: n,
bgFill: o = !1,
disabled: a,
...i
}) => {
const s = Ns(
"box-content flex h-8 w-8 items-center justify-center rounded-lg transition-all duration-150",
o ? "bg-ui-controls-button hover:bg-ui-controls-button/[0.75]" : "bg-transparent hover:bg-ui-panel/[0.4]",
a && "opacity-50 hover:bg-transparent",
n
);
return /* @__PURE__ */ de("button", { className: s, onClick: r, disabled: a, children: /* @__PURE__ */ de(tr, { icon: e, size: t, ...i }) });
}, Is = ({
className: e,
currentPage: t,
totalPages: r,
onPageChange: n,
onFetchMorePages: o
}) => {
const i = Math.floor(t / 5), s = (i + 1) * 5 > r ? r % 5 : 5, c = i * 5, l = () => {
n(t - 1);
}, f = () => {
n(t + 1);
};
return /* @__PURE__ */ Bn(
"nav",
{
className: zo(
"flex items-center justify-between border-gray-200 px-4",
e
),
children: [
/* @__PURE__ */ de(
Xr,
{
className: "-ml-2 pt-2 text-gray-400",
icon: qn,
onClick: l,
disabled: t === 0,
"aria-hidden": !0
}
),
/* @__PURE__ */ de("div", { className: "hidden md:flex", children: [...Array(s)].map((p, h) => {
const w = h + c;
return w === t ? /* @__PURE__ */ de(
"button",
{
className: "border-indigo-500 text-indigo-600 inline-flex items-center border-t-2 px-4 pt-2 text-sm font-medium",
"aria-current": "page",
onClick: () => n(w),
children: w + 1
},
w
) : /* @__PURE__ */ de(
"button",
{
className: "inline-flex items-center border-t-2 border-transparent px-4 pt-2 text-sm font-medium text-gray-500 hover:border-brand-primary hover:text-brand-primary",
onClick: () => n(w),
children: w + 1
},
w
);
}) }),
/* @__PURE__ */ de("span", { children: t + 1 !== r ? /* @__PURE__ */ de(
Xr,
{
className: "-mr-2 pt-2 text-gray-500 hover:text-brand-primary",
icon: Xn,
onClick: f,
"aria-hidden": !0
}
) : o && /* @__PURE__ */ de(
"button",
{
className: "inline-flex items-center border-t-2 border-transparent pl-2 pr-4 pt-2 text-sm font-medium text-gray-500 hover:text-brand-primary",
onClick: o,
children: "More..."
},
r
) })
]
}
);
};
export {
Is as Pagination
};