@cgi-learning-hub/ui
Version:
@cgi-learning-hub/ui is an open-source React component library that implements UI for HUB's features
1,623 lines • 257 kB
JavaScript
import * as v from "react";
import { createElement as un } from "react";
import { P as t } from "./index-Sy88PpwE.js";
import { CacheProvider as fn, ThemeContext as mn, css as Qe, keyframes as Ze } from "@emotion/react";
import { jsx as C, jsxs as ue } from "react/jsx-runtime";
import { H as I, K as E, Q as bn, G as D, $ as gn, t as yn, u as No, O as hn, X as Je, T as Ie, C as vn, V as Tn, z as Cn, F as V, Y as Dt, m as ut, s as Eo, q as Ao, n as te } from "./identifier-PWESmBq6.js";
import { R as xn, u as ht } from "./index-DX2Sl0Ig.js";
import { a as Sn } from "./useTheme--i9fxE_A.js";
import { e as Vt, H as wn } from "./Portal-BlK6ttxt.js";
import { D as Pn, c as z, u as _, s as O, r as kn, e as On, b as Rn } from "./DefaultPropsProvider-DqazQPtr.js";
import { u as Mn, a as Mt } from "./useEventCallback-Y2KwRxBw.js";
import { a as $n } from "./index-8G2jvqZ8.js";
import { m as j } from "./memoTheme-DAFDflPY.js";
import { u as B, e as ao } from "./useSlot-BzdKwDQ5.js";
import { u as Bo } from "./useControlled-nm4pBabJ.js";
import { C as Nn } from "./CustomTreeItem-B9FylIhL.js";
import { P as et } from "./Paper-IQckggbn.js";
import { c as vt } from "./chainPropTypes-D9lkm76m.js";
import { B as De } from "./ButtonBase-6TF6t2SP.js";
import { c as we } from "./createSimplePaletteValueFilter-B7--0ryQ.js";
import { c as Me } from "./createSvgIcon-B1E6Wo8z.js";
import { u as En } from "./useSlotProps-DdMuGelR.js";
import { T as Ge, t as io } from "./Typography-Dy8r_tT2.js";
import { i as de } from "./integerPropType-BihGt2aU.js";
import { s as An } from "./styled-C7gyRDlj.js";
import { u as Bn } from "./useThemeProps-B4VFkcP0.js";
import { u as zt } from "./useTheme-XJ9sFCWX.js";
import { m as In } from "./mergeSlotProps-ChAye7iz.js";
import { T as jn, g as co, r as Ln } from "./utils-BQenyzDz.js";
import { u as Io } from "./useForkRef-u29GSuCu.js";
import { g as jo, e as Lo } from "./elementAcceptingRef-CEweUuUA.js";
import { d as Dn } from "./debounce-46wSf_lW.js";
import { o as Do } from "./ownerWindow-niciwP7I.js";
import { M as Vn } from "./Modal-D3Q9vEAI.js";
import { g as zn, M as _n } from "./MenuItem-C8nduSzJ.js";
import { a as Fn } from "./List-CB_cqCSw.js";
import { u as Un } from "./useTimeout-CrCYVizI.js";
import { o as wt } from "./ownerDocument-CUrv0DIK.js";
import { G as Hn } from "./Grow-BfjkXlG8.js";
import { K as Wn, l as Gn } from "./Tab-Ckr6Bn59.js";
import { I as rt } from "./IconButton-BYvak8Nw.js";
import { u as lo } from "./useId-CK6Kn3Tn.js";
import { I as qn } from "./InputBase-BS5oknUK.js";
import { S as Kn } from "./Select-CpNF3a57.js";
function Yn(e) {
if (e.sheet)
return e.sheet;
for (var o = 0; o < document.styleSheets.length; o++)
if (document.styleSheets[o].ownerNode === e)
return document.styleSheets[o];
}
function Xn(e) {
var o = document.createElement("style");
return o.setAttribute("data-emotion", e.key), e.nonce !== void 0 && o.setAttribute("nonce", e.nonce), o.appendChild(document.createTextNode("")), o.setAttribute("data-s", ""), o;
}
var Vo = /* @__PURE__ */ function() {
function e(n) {
var r = this;
this._insertTag = function(s) {
var a;
r.tags.length === 0 ? r.insertionPoint ? a = r.insertionPoint.nextSibling : r.prepend ? a = r.container.firstChild : a = r.before : a = r.tags[r.tags.length - 1].nextSibling, r.container.insertBefore(s, a), r.tags.push(s);
}, this.isSpeedy = n.speedy === void 0 ? !0 : n.speedy, this.tags = [], this.ctr = 0, this.nonce = n.nonce, this.key = n.key, this.container = n.container, this.prepend = n.prepend, this.insertionPoint = n.insertionPoint, this.before = null;
}
var o = e.prototype;
return o.hydrate = function(r) {
r.forEach(this._insertTag);
}, o.insert = function(r) {
this.ctr % (this.isSpeedy ? 65e3 : 1) === 0 && this._insertTag(Xn(this));
var s = this.tags[this.tags.length - 1];
if (this.isSpeedy) {
var a = Yn(s);
try {
a.insertRule(r, a.cssRules.length);
} catch {
}
} else
s.appendChild(document.createTextNode(r));
this.ctr++;
}, o.flush = function() {
this.tags.forEach(function(r) {
var s;
return (s = r.parentNode) == null ? void 0 : s.removeChild(r);
}), this.tags = [], this.ctr = 0;
}, e;
}(), ae = "-ms-", ft = "-moz-", F = "-webkit-", zo = "comm", _t = "rule", Ft = "decl", Qn = "@import", _o = "@keyframes", Zn = "@layer", Jn = Math.abs, Tt = String.fromCharCode, er = Object.assign;
function tr(e, o) {
return re(e, 0) ^ 45 ? (((o << 2 ^ re(e, 0)) << 2 ^ re(e, 1)) << 2 ^ re(e, 2)) << 2 ^ re(e, 3) : 0;
}
function Fo(e) {
return e.trim();
}
function or(e, o) {
return (e = o.exec(e)) ? e[0] : e;
}
function U(e, o, n) {
return e.replace(o, n);
}
function $t(e, o) {
return e.indexOf(o);
}
function re(e, o) {
return e.charCodeAt(o) | 0;
}
function Ke(e, o, n) {
return e.slice(o, n);
}
function xe(e) {
return e.length;
}
function Ut(e) {
return e.length;
}
function st(e, o) {
return o.push(e), e;
}
function nr(e, o) {
return e.map(o).join("");
}
var Ct = 1, Le = 1, Uo = 0, fe = 0, J = 0, Ve = "";
function xt(e, o, n, r, s, a, i) {
return { value: e, root: o, parent: n, type: r, props: s, children: a, line: Ct, column: Le, length: i, return: "" };
}
function He(e, o) {
return er(xt("", null, null, "", null, null, 0), e, { length: -e.length }, o);
}
function rr() {
return J;
}
function sr() {
return J = fe > 0 ? re(Ve, --fe) : 0, Le--, J === 10 && (Le = 1, Ct--), J;
}
function me() {
return J = fe < Uo ? re(Ve, fe++) : 0, Le++, J === 10 && (Le = 1, Ct++), J;
}
function Se() {
return re(Ve, fe);
}
function lt() {
return fe;
}
function tt(e, o) {
return Ke(Ve, e, o);
}
function Ye(e) {
switch (e) {
// \0 \t \n \r \s whitespace token
case 0:
case 9:
case 10:
case 13:
case 32:
return 5;
// ! + , / > @ ~ isolate token
case 33:
case 43:
case 44:
case 47:
case 62:
case 64:
case 126:
// ; { } breakpoint token
case 59:
case 123:
case 125:
return 4;
// : accompanied token
case 58:
return 3;
// " ' ( [ opening delimit token
case 34:
case 39:
case 40:
case 91:
return 2;
// ) ] closing delimit token
case 41:
case 93:
return 1;
}
return 0;
}
function Ho(e) {
return Ct = Le = 1, Uo = xe(Ve = e), fe = 0, [];
}
function Wo(e) {
return Ve = "", e;
}
function pt(e) {
return Fo(tt(fe - 1, Nt(e === 91 ? e + 2 : e === 40 ? e + 1 : e)));
}
function ar(e) {
for (; (J = Se()) && J < 33; )
me();
return Ye(e) > 2 || Ye(J) > 3 ? "" : " ";
}
function ir(e, o) {
for (; --o && me() && !(J < 48 || J > 102 || J > 57 && J < 65 || J > 70 && J < 97); )
;
return tt(e, lt() + (o < 6 && Se() == 32 && me() == 32));
}
function Nt(e) {
for (; me(); )
switch (J) {
// ] ) " '
case e:
return fe;
// " '
case 34:
case 39:
e !== 34 && e !== 39 && Nt(J);
break;
// (
case 40:
e === 41 && Nt(e);
break;
// \
case 92:
me();
break;
}
return fe;
}
function cr(e, o) {
for (; me() && e + J !== 57; )
if (e + J === 84 && Se() === 47)
break;
return "/*" + tt(o, fe - 1) + "*" + Tt(e === 47 ? e : me());
}
function lr(e) {
for (; !Ye(Se()); )
me();
return tt(e, fe);
}
function pr(e) {
return Wo(dt("", null, null, null, [""], e = Ho(e), 0, [0], e));
}
function dt(e, o, n, r, s, a, i, c, l) {
for (var m = 0, p = 0, u = i, T = 0, g = 0, y = 0, d = 1, b = 1, f = 1, h = 0, k = "", $ = s, R = a, N = r, S = k; b; )
switch (y = h, h = me()) {
// (
case 40:
if (y != 108 && re(S, u - 1) == 58) {
$t(S += U(pt(h), "&", "&\f"), "&\f") != -1 && (f = -1);
break;
}
// " ' [
case 34:
case 39:
case 91:
S += pt(h);
break;
// \t \n \r \s
case 9:
case 10:
case 13:
case 32:
S += ar(y);
break;
// \
case 92:
S += ir(lt() - 1, 7);
continue;
// /
case 47:
switch (Se()) {
case 42:
case 47:
st(dr(cr(me(), lt()), o, n), l);
break;
default:
S += "/";
}
break;
// {
case 123 * d:
c[m++] = xe(S) * f;
// } ; \0
case 125 * d:
case 59:
case 0:
switch (h) {
// \0 }
case 0:
case 125:
b = 0;
// ;
case 59 + p:
f == -1 && (S = U(S, /\f/g, "")), g > 0 && xe(S) - u && st(g > 32 ? uo(S + ";", r, n, u - 1) : uo(U(S, " ", "") + ";", r, n, u - 2), l);
break;
// @ ;
case 59:
S += ";";
// { rule/at-rule
default:
if (st(N = po(S, o, n, m, p, s, c, k, $ = [], R = [], u), a), h === 123)
if (p === 0)
dt(S, o, N, N, $, a, u, c, R);
else
switch (T === 99 && re(S, 3) === 110 ? 100 : T) {
// d l m s
case 100:
case 108:
case 109:
case 115:
dt(e, N, N, r && st(po(e, N, N, 0, 0, s, c, k, s, $ = [], u), R), s, R, u, c, r ? $ : R);
break;
default:
dt(S, N, N, N, [""], R, 0, c, R);
}
}
m = p = g = 0, d = f = 1, k = S = "", u = i;
break;
// :
case 58:
u = 1 + xe(S), g = y;
default:
if (d < 1) {
if (h == 123)
--d;
else if (h == 125 && d++ == 0 && sr() == 125)
continue;
}
switch (S += Tt(h), h * d) {
// &
case 38:
f = p > 0 ? 1 : (S += "\f", -1);
break;
// ,
case 44:
c[m++] = (xe(S) - 1) * f, f = 1;
break;
// @
case 64:
Se() === 45 && (S += pt(me())), T = Se(), p = u = xe(k = S += lr(lt())), h++;
break;
// -
case 45:
y === 45 && xe(S) == 2 && (d = 0);
}
}
return a;
}
function po(e, o, n, r, s, a, i, c, l, m, p) {
for (var u = s - 1, T = s === 0 ? a : [""], g = Ut(T), y = 0, d = 0, b = 0; y < r; ++y)
for (var f = 0, h = Ke(e, u + 1, u = Jn(d = i[y])), k = e; f < g; ++f)
(k = Fo(d > 0 ? T[f] + " " + h : U(h, /&\f/g, T[f]))) && (l[b++] = k);
return xt(e, o, n, s === 0 ? _t : c, l, m, p);
}
function dr(e, o, n) {
return xt(e, o, n, zo, Tt(rr()), Ke(e, 2, -2), 0);
}
function uo(e, o, n, r) {
return xt(e, o, n, Ft, Ke(e, 0, r), Ke(e, r + 1, -1), r);
}
function je(e, o) {
for (var n = "", r = Ut(e), s = 0; s < r; s++)
n += o(e[s], s, e, o) || "";
return n;
}
function ur(e, o, n, r) {
switch (e.type) {
case Zn:
if (e.children.length) break;
case Qn:
case Ft:
return e.return = e.return || e.value;
case zo:
return "";
case _o:
return e.return = e.value + "{" + je(e.children, r) + "}";
case _t:
e.value = e.props.join(",");
}
return xe(n = je(e.children, r)) ? e.return = e.value + "{" + n + "}" : "";
}
function fr(e) {
var o = Ut(e);
return function(n, r, s, a) {
for (var i = "", c = 0; c < o; c++)
i += e[c](n, r, s, a) || "";
return i;
};
}
function mr(e) {
return function(o) {
o.root || (o = o.return) && e(o);
};
}
var br = function(o, n, r) {
for (var s = 0, a = 0; s = a, a = Se(), s === 38 && a === 12 && (n[r] = 1), !Ye(a); )
me();
return tt(o, fe);
}, gr = function(o, n) {
var r = -1, s = 44;
do
switch (Ye(s)) {
case 0:
s === 38 && Se() === 12 && (n[r] = 1), o[r] += br(fe - 1, n, r);
break;
case 2:
o[r] += pt(s);
break;
case 4:
if (s === 44) {
o[++r] = Se() === 58 ? "&\f" : "", n[r] = o[r].length;
break;
}
// fallthrough
default:
o[r] += Tt(s);
}
while (s = me());
return o;
}, yr = function(o, n) {
return Wo(gr(Ho(o), n));
}, fo = /* @__PURE__ */ new WeakMap(), hr = function(o) {
if (!(o.type !== "rule" || !o.parent || // positive .length indicates that this rule contains pseudo
// negative .length indicates that this rule has been already prefixed
o.length < 1)) {
for (var n = o.value, r = o.parent, s = o.column === r.column && o.line === r.line; r.type !== "rule"; )
if (r = r.parent, !r) return;
if (!(o.props.length === 1 && n.charCodeAt(0) !== 58 && !fo.get(r)) && !s) {
fo.set(o, !0);
for (var a = [], i = yr(n, a), c = r.props, l = 0, m = 0; l < i.length; l++)
for (var p = 0; p < c.length; p++, m++)
o.props[m] = a[l] ? i[l].replace(/&\f/g, c[p]) : c[p] + " " + i[l];
}
}
}, vr = function(o) {
if (o.type === "decl") {
var n = o.value;
// charcode for l
n.charCodeAt(0) === 108 && // charcode for b
n.charCodeAt(2) === 98 && (o.return = "", o.value = "");
}
};
function Go(e, o) {
switch (tr(e, o)) {
// color-adjust
case 5103:
return F + "print-" + e + e;
// animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)
case 5737:
case 4201:
case 3177:
case 3433:
case 1641:
case 4457:
case 2921:
// text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break
case 5572:
case 6356:
case 5844:
case 3191:
case 6645:
case 3005:
// mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,
case 6391:
case 5879:
case 5623:
case 6135:
case 4599:
case 4855:
// background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)
case 4215:
case 6389:
case 5109:
case 5365:
case 5621:
case 3829:
return F + e + e;
// appearance, user-select, transform, hyphens, text-size-adjust
case 5349:
case 4246:
case 4810:
case 6968:
case 2756:
return F + e + ft + e + ae + e + e;
// flex, flex-direction
case 6828:
case 4268:
return F + e + ae + e + e;
// order
case 6165:
return F + e + ae + "flex-" + e + e;
// align-items
case 5187:
return F + e + U(e, /(\w+).+(:[^]+)/, F + "box-$1$2" + ae + "flex-$1$2") + e;
// align-self
case 5443:
return F + e + ae + "flex-item-" + U(e, /flex-|-self/, "") + e;
// align-content
case 4675:
return F + e + ae + "flex-line-pack" + U(e, /align-content|flex-|-self/, "") + e;
// flex-shrink
case 5548:
return F + e + ae + U(e, "shrink", "negative") + e;
// flex-basis
case 5292:
return F + e + ae + U(e, "basis", "preferred-size") + e;
// flex-grow
case 6060:
return F + "box-" + U(e, "-grow", "") + F + e + ae + U(e, "grow", "positive") + e;
// transition
case 4554:
return F + U(e, /([^-])(transform)/g, "$1" + F + "$2") + e;
// cursor
case 6187:
return U(U(U(e, /(zoom-|grab)/, F + "$1"), /(image-set)/, F + "$1"), e, "") + e;
// background, background-image
case 5495:
case 3959:
return U(e, /(image-set\([^]*)/, F + "$1$`$1");
// justify-content
case 4968:
return U(U(e, /(.+:)(flex-)?(.*)/, F + "box-pack:$3" + ae + "flex-pack:$3"), /s.+-b[^;]+/, "justify") + F + e + e;
// (margin|padding)-inline-(start|end)
case 4095:
case 3583:
case 4068:
case 2532:
return U(e, /(.+)-inline(.+)/, F + "$1$2") + e;
// (min|max)?(width|height|inline-size|block-size)
case 8116:
case 7059:
case 5753:
case 5535:
case 5445:
case 5701:
case 4933:
case 4677:
case 5533:
case 5789:
case 5021:
case 4765:
if (xe(e) - 1 - o > 6) switch (re(e, o + 1)) {
// (m)ax-content, (m)in-content
case 109:
if (re(e, o + 4) !== 45) break;
// (f)ill-available, (f)it-content
case 102:
return U(e, /(.+:)(.+)-([^]+)/, "$1" + F + "$2-$3$1" + ft + (re(e, o + 3) == 108 ? "$3" : "$2-$3")) + e;
// (s)tretch
case 115:
return ~$t(e, "stretch") ? Go(U(e, "stretch", "fill-available"), o) + e : e;
}
break;
// position: sticky
case 4949:
if (re(e, o + 1) !== 115) break;
// display: (flex|inline-flex)
case 6444:
switch (re(e, xe(e) - 3 - (~$t(e, "!important") && 10))) {
// stic(k)y
case 107:
return U(e, ":", ":" + F) + e;
// (inline-)?fl(e)x
case 101:
return U(e, /(.+:)([^;!]+)(;|!.+)?/, "$1" + F + (re(e, 14) === 45 ? "inline-" : "") + "box$3$1" + F + "$2$3$1" + ae + "$2box$3") + e;
}
break;
// writing-mode
case 5936:
switch (re(e, o + 11)) {
// vertical-l(r)
case 114:
return F + e + ae + U(e, /[svh]\w+-[tblr]{2}/, "tb") + e;
// vertical-r(l)
case 108:
return F + e + ae + U(e, /[svh]\w+-[tblr]{2}/, "tb-rl") + e;
// horizontal(-)tb
case 45:
return F + e + ae + U(e, /[svh]\w+-[tblr]{2}/, "lr") + e;
}
return F + e + ae + e + e;
}
return e;
}
var Tr = function(o, n, r, s) {
if (o.length > -1 && !o.return) switch (o.type) {
case Ft:
o.return = Go(o.value, o.length);
break;
case _o:
return je([He(o, {
value: U(o.value, "@", "@" + F)
})], s);
case _t:
if (o.length) return nr(o.props, function(a) {
switch (or(a, /(::plac\w+|:read-\w+)/)) {
// :read-(only|write)
case ":read-only":
case ":read-write":
return je([He(o, {
props: [U(a, /:(read-\w+)/, ":" + ft + "$1")]
})], s);
// :placeholder
case "::placeholder":
return je([He(o, {
props: [U(a, /:(plac\w+)/, ":" + F + "input-$1")]
}), He(o, {
props: [U(a, /:(plac\w+)/, ":" + ft + "$1")]
}), He(o, {
props: [U(a, /:(plac\w+)/, ae + "input-$1")]
})], s);
}
return "";
});
}
}, Cr = [Tr], xr = function(o) {
var n = o.key;
if (n === "css") {
var r = document.querySelectorAll("style[data-emotion]:not([data-s])");
Array.prototype.forEach.call(r, function(d) {
var b = d.getAttribute("data-emotion");
b.indexOf(" ") !== -1 && (document.head.appendChild(d), d.setAttribute("data-s", ""));
});
}
var s = o.stylisPlugins || Cr, a = {}, i, c = [];
i = o.container || document.head, Array.prototype.forEach.call(
// this means we will ignore elements which don't have a space in them which
// means that the style elements we're looking at are only Emotion 11 server-rendered style elements
document.querySelectorAll('style[data-emotion^="' + n + ' "]'),
function(d) {
for (var b = d.getAttribute("data-emotion").split(" "), f = 1; f < b.length; f++)
a[b[f]] = !0;
c.push(d);
}
);
var l, m = [hr, vr];
{
var p, u = [ur, mr(function(d) {
p.insert(d);
})], T = fr(m.concat(s, u)), g = function(b) {
return je(pr(b), T);
};
l = function(b, f, h, k) {
p = h, g(b ? b + "{" + f.styles + "}" : f.styles), k && (y.inserted[f.name] = !0);
};
}
var y = {
key: n,
sheet: new Vo({
key: n,
container: i,
nonce: o.nonce,
speedy: o.speedy,
prepend: o.prepend,
insertionPoint: o.insertionPoint
}),
nonce: o.nonce,
inserted: a,
registered: {},
insert: l
};
return y.sheet.hydrate(c), y;
};
const Pt = /* @__PURE__ */ new Map(), Sr = (e, o) => {
const n = xr(e);
return n.sheet = new o({
key: n.key,
nonce: n.sheet.nonce,
container: n.sheet.container,
speedy: n.sheet.isSpeedy,
prepend: n.sheet.prepend,
insertionPoint: n.sheet.insertionPoint
}), n;
};
let ke;
if (typeof document == "object" && (ke = document.querySelector('[name="emotion-insertion-point"]'), !ke)) {
ke = document.createElement("meta"), ke.setAttribute("name", "emotion-insertion-point"), ke.setAttribute("content", "");
const e = document.querySelector("head");
e && e.prepend(ke);
}
function wr(e, o) {
if (e || o) {
class n extends Vo {
insert(a, i) {
return this.key && this.key.endsWith("global") && (this.before = ke), super.insert(a, i);
}
}
const r = Sr({
key: "css",
insertionPoint: e ? ke : void 0
}, n);
if (o) {
const s = r.insert;
r.insert = (...a) => (a[1].styles.startsWith("@layer") || (a[1].styles = `@layer mui {${a[1].styles}}`), s(...a));
}
return r;
}
}
function Pr(e) {
const {
injectFirst: o,
enableCssLayer: n,
children: r
} = e, s = v.useMemo(() => {
const a = `${o}-${n}`;
if (Pt.has(a))
return Pt.get(a);
const i = wr(o, n);
return Pt.set(a, i), i;
}, [o, n]);
return s ? /* @__PURE__ */ C(fn, {
value: s,
children: r
}) : r;
}
process.env.NODE_ENV !== "production" && (Pr.propTypes = {
/**
* Your component tree.
*/
children: t.node,
/**
* If `true`, the styles are wrapped in `@layer mui`.
* Learn more about [Cascade layers](https://developer.mozilla.org/en-US/docs/Learn_web_development/Core/Styling_basics/Cascade_layers).
*/
enableCssLayer: t.bool,
/**
* By default, the styles are injected last in the <head> element of the page.
* As a result, they gain more specificity than any other style sheet.
* If you want to override MUI's styles, set this prop.
*/
injectFirst: t.bool
});
const Ht = /* @__PURE__ */ v.createContext(null);
process.env.NODE_ENV !== "production" && (Ht.displayName = "ThemeContext");
function Wt() {
const e = v.useContext(Ht);
return process.env.NODE_ENV !== "production" && v.useDebugValue(e), e;
}
const kr = typeof Symbol == "function" && Symbol.for, Or = kr ? Symbol.for("mui.nested") : "__THEME_NESTED__";
function Rr(e, o) {
if (typeof o == "function") {
const n = o(e);
return process.env.NODE_ENV !== "production" && (n || console.error(["MUI: You should return an object from your theme function, i.e.", "<ThemeProvider theme={() => ({})} />"].join(`
`))), n;
}
return {
...e,
...o
};
}
function mt(e) {
const {
children: o,
theme: n
} = e, r = Wt();
process.env.NODE_ENV !== "production" && r === null && typeof n == "function" && console.error(["MUI: You are providing a theme function prop to the ThemeProvider component:", "<ThemeProvider theme={outerTheme => outerTheme} />", "", "However, no outer theme is present.", "Make sure a theme is already injected higher in the React tree or provide a theme object."].join(`
`));
const s = v.useMemo(() => {
const a = r === null ? {
...n
} : Rr(r, n);
return a != null && (a[Or] = r !== null), a;
}, [n, r]);
return /* @__PURE__ */ C(Ht.Provider, {
value: s,
children: o
});
}
process.env.NODE_ENV !== "production" && (mt.propTypes = {
/**
* Your component tree.
*/
children: t.node,
/**
* A theme object. You can provide a function to extend the outer theme.
*/
theme: t.oneOfType([t.object, t.func]).isRequired
});
process.env.NODE_ENV !== "production" && process.env.NODE_ENV !== "production" && (mt.propTypes = Vt(mt.propTypes));
const mo = {};
function bo(e, o, n, r = !1) {
return v.useMemo(() => {
const s = e && o[e] || o;
if (typeof n == "function") {
const a = n(s), i = e ? {
...o,
[e]: a
} : a;
return r ? () => i : i;
}
return e ? {
...o,
[e]: n
} : {
...o,
...n
};
}, [e, o, n, r]);
}
function Xe(e) {
const {
children: o,
theme: n,
themeId: r
} = e, s = Sn(mo), a = Wt() || mo;
process.env.NODE_ENV !== "production" && (s === null && typeof n == "function" || r && s && !s[r] && typeof n == "function") && console.error(["MUI: You are providing a theme function prop to the ThemeProvider component:", "<ThemeProvider theme={outerTheme => outerTheme} />", "", "However, no outer theme is present.", "Make sure a theme is already injected higher in the React tree or provide a theme object."].join(`
`));
const i = bo(r, s, n), c = bo(r, a, n, !0), l = (r ? i[r] : i).direction === "rtl";
return /* @__PURE__ */ C(mt, {
theme: c,
children: /* @__PURE__ */ C(mn.Provider, {
value: i,
children: /* @__PURE__ */ C(xn, {
value: l,
children: /* @__PURE__ */ C(Pn, {
value: r ? i[r].components : i.components,
children: o
})
})
})
});
}
process.env.NODE_ENV !== "production" && (Xe.propTypes = {
// ┌────────────────────────────── Warning ──────────────────────────────┐
// │ These PropTypes are generated from the TypeScript type definitions. │
// │ To update them, edit the d.ts file and run `pnpm proptypes`. │
// └─────────────────────────────────────────────────────────────────────┘
/**
* Your component tree.
*/
children: t.node,
/**
* A theme object. You can provide a function to extend the outer theme.
*/
theme: t.oneOfType([t.func, t.object]).isRequired,
/**
* The design system's unique id for getting the corresponded theme when there are multiple design systems.
*/
themeId: t.string
});
process.env.NODE_ENV !== "production" && process.env.NODE_ENV !== "production" && (Xe.propTypes = Vt(Xe.propTypes));
const Gt = "mode", qt = "color-scheme", Mr = "data-color-scheme";
function $r(e) {
const {
defaultMode: o = "system",
defaultLightColorScheme: n = "light",
defaultDarkColorScheme: r = "dark",
modeStorageKey: s = Gt,
colorSchemeStorageKey: a = qt,
attribute: i = Mr,
colorSchemeNode: c = "document.documentElement",
nonce: l
} = e || {};
let m = "", p = i;
if (i === "class" && (p = ".%s"), i === "data" && (p = "[data-%s]"), p.startsWith(".")) {
const T = p.substring(1);
m += `${c}.classList.remove('${T}'.replace('%s', light), '${T}'.replace('%s', dark));
${c}.classList.add('${T}'.replace('%s', colorScheme));`;
}
const u = p.match(/\[([^\]]+)\]/);
if (u) {
const [T, g] = u[1].split("=");
g || (m += `${c}.removeAttribute('${T}'.replace('%s', light));
${c}.removeAttribute('${T}'.replace('%s', dark));`), m += `
${c}.setAttribute('${T}'.replace('%s', colorScheme), ${g ? `${g}.replace('%s', colorScheme)` : '""'});`;
} else
m += `${c}.setAttribute('${p}', colorScheme);`;
return /* @__PURE__ */ C("script", {
suppressHydrationWarning: !0,
nonce: typeof window > "u" ? l : "",
dangerouslySetInnerHTML: {
__html: `(function() {
try {
let colorScheme = '';
const mode = localStorage.getItem('${s}') || '${o}';
const dark = localStorage.getItem('${a}-dark') || '${r}';
const light = localStorage.getItem('${a}-light') || '${n}';
if (mode === 'system') {
// handle system mode
const mql = window.matchMedia('(prefers-color-scheme: dark)');
if (mql.matches) {
colorScheme = dark
} else {
colorScheme = light
}
}
if (mode === 'light') {
colorScheme = light;
}
if (mode === 'dark') {
colorScheme = dark;
}
if (colorScheme) {
${m}
}
} catch(e){}})();`
}
}, "mui-color-scheme-init");
}
function Nr() {
}
const Er = ({
key: e,
storageWindow: o
}) => (!o && typeof window < "u" && (o = window), {
get(n) {
if (typeof window > "u")
return;
if (!o)
return n;
let r;
try {
r = o.localStorage.getItem(e);
} catch {
}
return r || n;
},
set: (n) => {
if (o)
try {
o.localStorage.setItem(e, n);
} catch {
}
},
subscribe: (n) => {
if (!o)
return Nr;
const r = (s) => {
const a = s.newValue;
s.key === e && n(a);
};
return o.addEventListener("storage", r), () => {
o.removeEventListener("storage", r);
};
}
});
function kt() {
}
function go(e) {
if (typeof window < "u" && typeof window.matchMedia == "function" && e === "system")
return window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
}
function qo(e, o) {
if (e.mode === "light" || e.mode === "system" && e.systemMode === "light")
return o("light");
if (e.mode === "dark" || e.mode === "system" && e.systemMode === "dark")
return o("dark");
}
function Ar(e) {
return qo(e, (o) => {
if (o === "light")
return e.lightColorScheme;
if (o === "dark")
return e.darkColorScheme;
});
}
function Br(e) {
const {
defaultMode: o = "light",
defaultLightColorScheme: n,
defaultDarkColorScheme: r,
supportedColorSchemes: s = [],
modeStorageKey: a = Gt,
colorSchemeStorageKey: i = qt,
storageWindow: c = typeof window > "u" ? void 0 : window,
storageManager: l = Er,
noSsr: m = !1
} = e, p = s.join(","), u = s.length > 1, T = v.useMemo(() => l == null ? void 0 : l({
key: a,
storageWindow: c
}), [l, a, c]), g = v.useMemo(() => l == null ? void 0 : l({
key: `${i}-light`,
storageWindow: c
}), [l, i, c]), y = v.useMemo(() => l == null ? void 0 : l({
key: `${i}-dark`,
storageWindow: c
}), [l, i, c]), [d, b] = v.useState(() => {
const P = (T == null ? void 0 : T.get(o)) || o, x = (g == null ? void 0 : g.get(n)) || n, w = (y == null ? void 0 : y.get(r)) || r;
return {
mode: P,
systemMode: go(P),
lightColorScheme: x,
darkColorScheme: w
};
}), [f, h] = v.useState(m || !u);
v.useEffect(() => {
h(!0);
}, []);
const k = Ar(d), $ = v.useCallback((P) => {
b((x) => {
if (P === x.mode)
return x;
const w = P ?? o;
return T == null || T.set(w), {
...x,
mode: w,
systemMode: go(w)
};
});
}, [T, o]), R = v.useCallback((P) => {
P ? typeof P == "string" ? P && !p.includes(P) ? console.error(`\`${P}\` does not exist in \`theme.colorSchemes\`.`) : b((x) => {
const w = {
...x
};
return qo(x, (M) => {
M === "light" && (g == null || g.set(P), w.lightColorScheme = P), M === "dark" && (y == null || y.set(P), w.darkColorScheme = P);
}), w;
}) : b((x) => {
const w = {
...x
}, M = P.light === null ? n : P.light, L = P.dark === null ? r : P.dark;
return M && (p.includes(M) ? (w.lightColorScheme = M, g == null || g.set(M)) : console.error(`\`${M}\` does not exist in \`theme.colorSchemes\`.`)), L && (p.includes(L) ? (w.darkColorScheme = L, y == null || y.set(L)) : console.error(`\`${L}\` does not exist in \`theme.colorSchemes\`.`)), w;
}) : b((x) => (g == null || g.set(n), y == null || y.set(r), {
...x,
lightColorScheme: n,
darkColorScheme: r
}));
}, [p, g, y, n, r]), N = v.useCallback((P) => {
d.mode === "system" && b((x) => {
const w = P != null && P.matches ? "dark" : "light";
return x.systemMode === w ? x : {
...x,
systemMode: w
};
});
}, [d.mode]), S = v.useRef(N);
return S.current = N, v.useEffect(() => {
if (typeof window.matchMedia != "function" || !u)
return;
const P = (...w) => S.current(...w), x = window.matchMedia("(prefers-color-scheme: dark)");
return x.addListener(P), P(x), () => {
x.removeListener(P);
};
}, [u]), v.useEffect(() => {
if (u) {
const P = (T == null ? void 0 : T.subscribe((M) => {
(!M || ["light", "dark", "system"].includes(M)) && $(M || o);
})) || kt, x = (g == null ? void 0 : g.subscribe((M) => {
(!M || p.match(M)) && R({
light: M
});
})) || kt, w = (y == null ? void 0 : y.subscribe((M) => {
(!M || p.match(M)) && R({
dark: M
});
})) || kt;
return () => {
P(), x(), w();
};
}
}, [R, $, p, o, c, u, T, g, y]), {
...d,
mode: f ? d.mode : void 0,
systemMode: f ? d.systemMode : void 0,
colorScheme: f ? k : void 0,
setMode: $,
setColorScheme: R
};
}
const Ir = "*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";
function jr(e) {
const {
themeId: o,
/**
* This `theme` object needs to follow a certain structure to
* be used correctly by the finel `CssVarsProvider`. It should have a
* `colorSchemes` key with the light and dark (and any other) palette.
* It should also ideally have a vars object created using `prepareCssVars`.
*/
theme: n = {},
modeStorageKey: r = Gt,
colorSchemeStorageKey: s = qt,
disableTransitionOnChange: a = !1,
defaultColorScheme: i,
resolveTheme: c
} = e, l = {
allColorSchemes: [],
colorScheme: void 0,
darkColorScheme: void 0,
lightColorScheme: void 0,
mode: void 0,
setColorScheme: () => {
},
setMode: () => {
},
systemMode: void 0
}, m = /* @__PURE__ */ v.createContext(void 0);
process.env.NODE_ENV !== "production" && (m.displayName = "ColorSchemeContext");
const p = () => v.useContext(m) || l, u = {}, T = {};
function g(f) {
var oo, no, ro, so;
const {
children: h,
theme: k,
modeStorageKey: $ = r,
colorSchemeStorageKey: R = s,
disableTransitionOnChange: N = a,
storageManager: S,
storageWindow: P = typeof window > "u" ? void 0 : window,
documentNode: x = typeof document > "u" ? void 0 : document,
colorSchemeNode: w = typeof document > "u" ? void 0 : document.documentElement,
disableNestedContext: M = !1,
disableStyleSheetGeneration: L = !1,
defaultMode: W = "system",
forceThemeRerender: G = !1,
noSsr: q
} = f, ee = v.useRef(!1), X = Wt(), A = v.useContext(m), H = !!A && !M, oe = v.useMemo(() => k || (typeof n == "function" ? n() : n), [k]), ve = oe[o], Y = ve || oe, {
colorSchemes: Z = u,
components: ge = T,
cssVarPrefix: ie
} = Y, $e = Object.keys(Z).filter((se) => !!Z[se]).join(","), Te = v.useMemo(() => $e.split(","), [$e]), Ne = typeof i == "string" ? i : i.light, Ee = typeof i == "string" ? i : i.dark, _e = Z[Ne] && Z[Ee] ? W : ((no = (oo = Z[Y.defaultColorScheme]) == null ? void 0 : oo.palette) == null ? void 0 : no.mode) || ((ro = Y.palette) == null ? void 0 : ro.mode), {
mode: Fe,
setMode: ce,
systemMode: ne,
lightColorScheme: pe,
darkColorScheme: be,
colorScheme: ot,
setColorScheme: Jt
} = Br({
supportedColorSchemes: Te,
defaultLightColorScheme: Ne,
defaultDarkColorScheme: Ee,
modeStorageKey: $,
colorSchemeStorageKey: R,
defaultMode: _e,
storageManager: S,
storageWindow: P,
noSsr: q
});
let St = Fe, ye = ot;
H && (St = A.mode, ye = A.colorScheme), process.env.NODE_ENV !== "production" && G && !Y.vars && console.warn(["MUI: The `forceThemeRerender` prop should only be used with CSS theme variables.", "Note that it will slow down the app when changing between modes, so only do this when you cannot find a better solution."].join(`
`));
let nt = ye || Y.defaultColorScheme;
Y.vars && !G && (nt = Y.defaultColorScheme);
const Ae = v.useMemo(() => {
var Oe;
const se = ((Oe = Y.generateThemeVars) == null ? void 0 : Oe.call(Y)) || Y.vars, Q = {
...Y,
components: ge,
colorSchemes: Z,
cssVarPrefix: ie,
vars: se
};
if (typeof Q.generateSpacing == "function" && (Q.spacing = Q.generateSpacing()), nt) {
const Ce = Z[nt];
Ce && typeof Ce == "object" && Object.keys(Ce).forEach((he) => {
Ce[he] && typeof Ce[he] == "object" ? Q[he] = {
...Q[he],
...Ce[he]
} : Q[he] = Ce[he];
});
}
return c ? c(Q) : Q;
}, [Y, nt, ge, Z, ie]), Ue = Y.colorSchemeSelector;
Mn(() => {
if (ye && w && Ue && Ue !== "media") {
const se = Ue;
let Q = Ue;
if (se === "class" && (Q = ".%s"), se === "data" && (Q = "[data-%s]"), se != null && se.startsWith("data-") && !se.includes("%s") && (Q = `[${se}="%s"]`), Q.startsWith("."))
w.classList.remove(...Te.map((Oe) => Q.substring(1).replace("%s", Oe))), w.classList.add(Q.substring(1).replace("%s", ye));
else {
const Oe = Q.replace("%s", ye).match(/\[([^\]]+)\]/);
if (Oe) {
const [Ce, he] = Oe[1].split("=");
he || Te.forEach((dn) => {
w.removeAttribute(Ce.replace(ye, dn));
}), w.setAttribute(Ce, he ? he.replace(/"|'/g, "") : "");
} else
w.setAttribute(Q, ye);
}
}
}, [ye, Ue, w, Te]), v.useEffect(() => {
let se;
if (N && ee.current && x) {
const Q = x.createElement("style");
Q.appendChild(x.createTextNode(Ir)), x.head.appendChild(Q), window.getComputedStyle(x.body), se = setTimeout(() => {
x.head.removeChild(Q);
}, 1);
}
return () => {
clearTimeout(se);
};
}, [ye, N, x]), v.useEffect(() => (ee.current = !0, () => {
ee.current = !1;
}), []);
const pn = v.useMemo(() => ({
allColorSchemes: Te,
colorScheme: ye,
darkColorScheme: be,
lightColorScheme: pe,
mode: St,
setColorScheme: Jt,
setMode: process.env.NODE_ENV === "production" ? ce : (se) => {
Ae.colorSchemeSelector === "media" && console.error(["MUI: The `setMode` function has no effect if `colorSchemeSelector` is `media` (`media` is the default value).", "To toggle the mode manually, please configure `colorSchemeSelector` to use a class or data attribute.", "To learn more, visit https://mui.com/material-ui/customization/css-theme-variables/configuration/#toggling-dark-mode-manually"].join(`
`)), ce(se);
},
systemMode: ne
}), [Te, ye, be, pe, St, Jt, ce, ne, Ae.colorSchemeSelector]);
let eo = !0;
(L || Y.cssVariables === !1 || H && (X == null ? void 0 : X.cssVarPrefix) === ie) && (eo = !1);
const to = /* @__PURE__ */ ue(v.Fragment, {
children: [/* @__PURE__ */ C(Xe, {
themeId: ve ? o : void 0,
theme: Ae,
children: h
}), eo && /* @__PURE__ */ C($n, {
styles: ((so = Ae.generateStyleSheets) == null ? void 0 : so.call(Ae)) || []
})]
});
return H ? to : /* @__PURE__ */ C(m.Provider, {
value: pn,
children: to
});
}
process.env.NODE_ENV !== "production" && (g.propTypes = {
/**
* The component tree.
*/
children: t.node,
/**
* The node used to attach the color-scheme attribute
*/
colorSchemeNode: t.any,
/**
* localStorage key used to store `colorScheme`
*/
colorSchemeStorageKey: t.string,
/**
* The default mode when the storage is empty,
* require the theme to have `colorSchemes` with light and dark.
*/
defaultMode: t.string,
/**
* If `true`, the provider creates its own context and generate stylesheet as if it is a root `CssVarsProvider`.
*/
disableNestedContext: t.bool,
/**
* If `true`, the style sheet won't be generated.
*
* This is useful for controlling nested CssVarsProvider behavior.
*/
disableStyleSheetGeneration: t.bool,
/**
* Disable CSS transitions when switching between modes or color schemes.
*/
disableTransitionOnChange: t.bool,
/**
* The document to attach the attribute to.
*/
documentNode: t.any,
/**
* If `true`, theme values are recalculated when the mode changes.
*/
forceThemeRerender: t.bool,
/**
* The key in the local storage used to store current color scheme.
*/
modeStorageKey: t.string,
/**
* If `true`, the mode will be the same value as the storage without an extra rerendering after the hydration.
* You should use this option in conjuction with `InitColorSchemeScript` component.
*/
noSsr: t.bool,
/**
* The storage manager to be used for storing the mode and color scheme
* @default using `window.localStorage`
*/
storageManager: t.func,
/**
* The window that attaches the 'storage' event listener.
* @default window
*/
storageWindow: t.any,
/**
* The calculated theme object that will be passed through context.
*/
theme: t.object
});
const y = typeof i == "string" ? i : i.light, d = typeof i == "string" ? i : i.dark;
return {
CssVarsProvider: g,
useColorScheme: p,
getInitColorSchemeScript: (f) => $r({
colorSchemeStorageKey: s,
defaultLightColorScheme: y,
defaultDarkColorScheme: d,
modeStorageKey: r,
...f
})
};
}
const Lr = bn(), Dr = An("div", {
name: "MuiContainer",
slot: "Root",
overridesResolver: (e, o) => {
const {
ownerState: n
} = e;
return [o.root, o[`maxWidth${E(String(n.maxWidth))}`], n.fixed && o.fixed, n.disableGutters && o.disableGutters];
}
}), Vr = (e) => Bn({
props: e,
name: "MuiContainer",
defaultTheme: Lr
}), zr = (e, o) => {
const n = (l) => D(o, l), {
classes: r,
fixed: s,
disableGutters: a,
maxWidth: i
} = e, c = {
root: ["root", i && `maxWidth${E(String(i))}`, s && "fixed", a && "disableGutters"]
};
return z(c, n, r);
};
function _r(e = {}) {
const {
// This will allow adding custom styled fn (for example for custom sx style function)
createStyledComponent: o = Dr,
useThemeProps: n = Vr,
componentName: r = "MuiContainer"
} = e, s = o(({
theme: i,
ownerState: c
}) => ({
width: "100%",
marginLeft: "auto",
boxSizing: "border-box",
marginRight: "auto",
...!c.disableGutters && {
paddingLeft: i.spacing(2),
paddingRight: i.spacing(2),
// @ts-ignore module augmentation fails if custom breakpoints are used
[i.breakpoints.up("sm")]: {
paddingLeft: i.spacing(3),
paddingRight: i.spacing(3)
}
}
}), ({
theme: i,
ownerState: c
}) => c.fixed && Object.keys(i.breakpoints.values).reduce((l, m) => {
const p = m, u = i.breakpoints.values[p];
return u !== 0 && (l[i.breakpoints.up(p)] = {
maxWidth: `${u}${i.breakpoints.unit}`
}), l;
}, {}), ({
theme: i,
ownerState: c
}) => ({
// @ts-ignore module augmentation fails if custom breakpoints are used
...c.maxWidth === "xs" && {
// @ts-ignore module augmentation fails if custom breakpoints are used
[i.breakpoints.up("xs")]: {
// @ts-ignore module augmentation fails if custom breakpoints are used
maxWidth: Math.max(i.breakpoints.values.xs, 444)
}
},
...c.maxWidth && // @ts-ignore module augmentation fails if custom breakpoints are used
c.maxWidth !== "xs" && {
// @ts-ignore module augmentation fails if custom breakpoints are used
[i.breakpoints.up(c.maxWidth)]: {
// @ts-ignore module augmentation fails if custom breakpoints are used
maxWidth: `${i.breakpoints.values[c.maxWidth]}${i.breakpoints.unit}`
}
}
})), a = /* @__PURE__ */ v.forwardRef(function(c, l) {
const m = n(c), {
className: p,
component: u = "div",
disableGutters: T = !1,
fixed: g = !1,
maxWidth: y = "lg",
classes: d,
...b
} = m, f = {
...m,
component: u,
disableGutters: T,
fixed: g,
maxWidth: y
}, h = zr(f, r);
return (
// @ts-ignore theme is injected by the styled util
/* @__PURE__ */ C(s, {
as: u,
ownerState: f,
className: I(h.root, p),
ref: l,
...b
})
);
});
return process.env.NODE_ENV !== "production" && (a.propTypes = {
children: t.node,
classes: t.object,
className: t.string,
component: t.elementType,
disableGutters: t.bool,
fixed: t.bool,
maxWidth: t.oneOfType([t.oneOf(["xs", "sm", "md", "lg", "xl", !1]), t.string]),
sx: t.oneOfType([t.arrayOf(t.oneOfType([t.func, t.object, t.bool])), t.func, t.object])
}), a;
}
function pl(e) {
process.env.NODE_ENV !== "production" && console.warn(["MUI: adaptV4Theme() is deprecated.", "Follow the upgrade guide on https://mui.com/r/migration-v4#theme."].join(`
`));
const {
defaultProps: o = {},
mixins: n = {},
overrides: r = {},
palette: s = {},
props: a = {},
styleOverrides: i = {},
...c
} = e, l = {
...c,
components: {}
};
Object.keys(o).forEach((d) => {
const b = l.components[d] || {};
b.defaultProps = o[d], l.components[d] = b;
}), Object.keys(a).forEach((d) => {
const b = l.components[d] || {};
b.defaultProps = a[d], l.components[d] = b;
}), Object.keys(i).forEach((d) => {
const b = l.components[d] || {};
b.styleOverrides = i[d], l.components[d] = b;
}), Object.keys(r).forEach((d) => {
const b = l.components[d] || {};
b.styleOverrides = r[d], l.components[d] = b;
}), l.spacing = gn(e.spacing);
const m = yn(e.breakpoints || {}), p = l.spacing;
l.mixins = {
gutters: (d = {}) => ({
paddingLeft: p(2),
paddingRight: p(2),
...d,
[m.up("sm")]: {
paddingLeft: p(3),
paddingRight: p(3),
...d[m.up("sm")]
}
}),
...n
};
const {
type: u,
mode: T,
...g
} = s, y = T || u || "light";
return l.palette = {
// theme.palette.text.hint
text: {
hint: y === "dark" ? "rgba(255, 255, 255, 0.5)" : "rgba(0, 0, 0, 0.38)"
},
mode: y,
type: y,
...g
}, l;
}
function dl(e, ...o) {
return No(hn({
unstable_strictMode: !0
}, e), ...o);
}
let yo = !1;
function ul(e) {
return yo || (console.warn(["MUI: createStyles from @mui/material/styles is deprecated.", "Please use @mui/styles/createStyles"].join(`
`)), yo = !0), e;
}
function ho(e) {
return String(parseFloat(e)).length === String(e).length;
}
function Ko(e) {
return String(e).match(/[\d.\-+]*\s*(.*)/)[1] || "";
}
function Pe(e) {
return parseFloat(e);
}
function Fr(e) {
return (o, n) => {
const r = Ko(o);
if (r === n)
return o;
let s = Pe(o);
r !== "px" && (r === "em" || r === "rem") && (s = Pe(o) * Pe(e));
let a = s;
if (n !== "px")
if (n === "em")
a = s / Pe(e);
else if (n === "rem")
a = s / Pe(e);
else
return o;
return parseFloat(a.toFixed(5)) + n;
};
}
function Ur({
size: e,
grid: o
}) {
const n = e - e % o, r = n + o;
return e - n < r - e ? n : r;
}
function Hr({
lineHeight: e,
pixels: o,
htmlFontSize: n
}) {
return o / (e * n);
}
function Wr({
cssProperty: e,
min: o,
max: n,
unit: r = "rem",
breakpoints: s = [600, 900, 1200],
transform: a = null
}) {
const i = {
[e]: `${o}${r}`
}, c = (n - o) / s[s.length - 1];
return s.forEach((l) => {
let m = o + c * l;
a !== null && (m = a(m)), i[`@media (min-width:${l}px)`] = {
[e]: `${Math.round(m * 1e4) / 1e4}${r}`
};
}), i;
}
function fl(e, o = {}) {
const {
breakpoints: n = ["sm", "md", "lg"],
disableAlign: r = !1,
factor: s = 2,
variants: a = ["h1", "h2", "h3", "h4", "h5", "h6", "subtitle1", "subtitle2", "body1", "body2", "caption", "button", "overline"]
} = o, i = {
...e
};
i.typography = {
...i.typography
};
const c = i.typography, l = Fr(c.htmlFontSize), m = n.map((p) => i.breakpoints.values[p]);
return a.forEach((p) => {
const u = c[p];
if (!u)
return;
const T = parseFloat(l(u.fontSize, "rem"));
if (T <= 1)
return;
const g = T, y = 1 + (g - 1) / s;
let {
lineHeight: d
} = u;
if (!ho(d) && !r)
throw new Error(process.env.NODE_ENV !== "production" ? `MUI: Unsupported non-unitless line height with grid alignment.
Use unitless line heights instead.` : Je(6));
ho(d) || (d = parseFloat(l(d, "rem")) / parseFloat(T));
let b = null;
r || (b = (f) => Ur({
size: f,
grid: Hr({
pixels: 4,
lineHeight: d,
htmlFontSize: c.htmlFontSize
})
})), c[p] = {
...u,
...Wr({
cssProperty: "fontSize",
min: y,
max: g,
unit: "rem",
breakpoints: m,
transform: b
})
};
}), i;
}
function Gr({
theme: e,
...o
}) {
const n = Ie in e ? e[Ie] : void 0;
return /* @__PURE__ */ C(Xe, {
...o,
themeId: n ? Ie : void 0,
theme: n || e
});
}
const at = {
colorSchemeStorageKey: "mui-color-scheme",
defaultLightColorScheme: "light",
defaultDarkColorScheme: "dark",
modeStorageKey: "mui-mode"
};
process.env.NODE_ENV !== "production" && (t.string, t.string, t.string, t.string, t.string, t.oneOf(["dark", "light", "system"]), t.string, t.string);
const {
CssVarsProvider: Yo,
useColorScheme: ml,
getInitColorSchemeScript: qr
} = jr({
themeId: Ie,
// @ts-ignore ignore module augmentation tests
theme: () => No({
cssVariables: !0
}),
colorSchemeStorageKey: at.colorSchemeStorageKey,
modeStorageKey: at.modeStorageKey,
defaultColorScheme: {
light: at.defaultLightColorScheme,
dark: at.defaultDarkColorScheme
},
resolveTheme: (e) => {
const o = {
...e,
typography: vn(e.palette, e.typography)
};
return o.unstable_sx = function(r) {
return Tn({
sx: r,
theme: this
});
}, o;
}
});
let vo = !1;
function bl(e) {
return process.env.NODE_ENV !== "production" && (vo || (console.warn(["MUI: The Experimental_CssVarsProvider component has been ported into ThemeProvider.", "", "You should use `import { ThemeProvider } from '@mui/material/styles'` instead.", "For more details, check out https://mui.com/material-ui/customization/css-