rag-chatbot-ui-gptbots
Version:
React RAG Chatbot UI with Developer Console
6,523 lines • 207 kB
JavaScript
import * as de from "react";
import $e, { forwardRef as zn, useContext as Bn, useState as re, useRef as je, useEffect as ut } from "react";
function Ln(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var Xt = { exports: {} }, Xe = {};
/**
* @license React
* react-jsx-runtime.production.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var br;
function Fn() {
if (br) return Xe;
br = 1;
var e = Symbol.for("react.transitional.element"), t = Symbol.for("react.fragment");
function r(n, o, a) {
var c = null;
if (a !== void 0 && (c = "" + a), o.key !== void 0 && (c = "" + o.key), "key" in o) {
a = {};
for (var l in o)
l !== "key" && (a[l] = o[l]);
} else a = o;
return o = a.ref, {
$$typeof: e,
type: n,
key: c,
ref: o !== void 0 ? o : null,
props: a
};
}
return Xe.Fragment = t, Xe.jsx = r, Xe.jsxs = r, Xe;
}
var Je = {};
/**
* @license React
* react-jsx-runtime.development.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var xr;
function Vn() {
return xr || (xr = 1, process.env.NODE_ENV !== "production" && function() {
function e(u) {
if (u == null) return null;
if (typeof u == "function")
return u.$$typeof === i ? null : u.displayName || u.name || null;
if (typeof u == "string") return u;
switch (u) {
case s:
return "Fragment";
case O:
return "Profiler";
case E:
return "StrictMode";
case v:
return "Suspense";
case z:
return "SuspenseList";
case te:
return "Activity";
}
if (typeof u == "object")
switch (typeof u.tag == "number" && console.error(
"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
), u.$$typeof) {
case S:
return "Portal";
case j:
return (u.displayName || "Context") + ".Provider";
case I:
return (u._context.displayName || "Context") + ".Consumer";
case P:
var w = u.render;
return u = u.displayName, u || (u = w.displayName || w.name || "", u = u !== "" ? "ForwardRef(" + u + ")" : "ForwardRef"), u;
case M:
return w = u.displayName || null, w !== null ? w : e(u.type) || "Memo";
case K:
w = u._payload, u = u._init;
try {
return e(u(w));
} catch {
}
}
return null;
}
function t(u) {
return "" + u;
}
function r(u) {
try {
t(u);
var w = !1;
} catch {
w = !0;
}
if (w) {
w = console;
var $ = w.error, N = typeof Symbol == "function" && Symbol.toStringTag && u[Symbol.toStringTag] || u.constructor.name || "Object";
return $.call(
w,
"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
N
), t(u);
}
}
function n(u) {
if (u === s) return "<>";
if (typeof u == "object" && u !== null && u.$$typeof === K)
return "<...>";
try {
var w = e(u);
return w ? "<" + w + ">" : "<...>";
} catch {
return "<...>";
}
}
function o() {
var u = A.A;
return u === null ? null : u.getOwner();
}
function a() {
return Error("react-stack-top-frame");
}
function c(u) {
if (B.call(u, "key")) {
var w = Object.getOwnPropertyDescriptor(u, "key").get;
if (w && w.isReactWarning) return !1;
}
return u.key !== void 0;
}
function l(u, w) {
function $() {
oe || (oe = !0, console.error(
"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
w
));
}
$.isReactWarning = !0, Object.defineProperty(u, "key", {
get: $,
configurable: !0
});
}
function d() {
var u = e(this.type);
return Q[u] || (Q[u] = !0, console.error(
"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
)), u = this.props.ref, u !== void 0 ? u : null;
}
function p(u, w, $, N, D, L, g, C) {
return $ = L.ref, u = {
$$typeof: k,
type: u,
key: w,
props: L,
_owner: D
}, ($ !== void 0 ? $ : null) !== null ? Object.defineProperty(u, "ref", {
enumerable: !1,
get: d
}) : Object.defineProperty(u, "ref", { enumerable: !1, value: null }), u._store = {}, Object.defineProperty(u._store, "validated", {
configurable: !1,
enumerable: !1,
writable: !0,
value: 0
}), Object.defineProperty(u, "_debugInfo", {
configurable: !1,
enumerable: !1,
writable: !0,
value: null
}), Object.defineProperty(u, "_debugStack", {
configurable: !1,
enumerable: !1,
writable: !0,
value: g
}), Object.defineProperty(u, "_debugTask", {
configurable: !1,
enumerable: !1,
writable: !0,
value: C
}), Object.freeze && (Object.freeze(u.props), Object.freeze(u)), u;
}
function h(u, w, $, N, D, L, g, C) {
var T = w.children;
if (T !== void 0)
if (N)
if (V(T)) {
for (N = 0; N < T.length; N++)
m(T[N]);
Object.freeze && Object.freeze(T);
} else
console.error(
"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
);
else m(T);
if (B.call(w, "key")) {
T = e(u);
var x = Object.keys(w).filter(function(F) {
return F !== "key";
});
N = 0 < x.length ? "{key: someKey, " + x.join(": ..., ") + ": ...}" : "{key: someKey}", he[T + N] || (x = 0 < x.length ? "{" + x.join(": ..., ") + ": ...}" : "{}", console.error(
`A props object containing a "key" prop is being spread into JSX:
let props = %s;
<%s {...props} />
React keys must be passed directly to JSX without using spread:
let props = %s;
<%s key={someKey} {...props} />`,
N,
T,
x,
T
), he[T + N] = !0);
}
if (T = null, $ !== void 0 && (r($), T = "" + $), c(w) && (r(w.key), T = "" + w.key), "key" in w) {
$ = {};
for (var _ in w)
_ !== "key" && ($[_] = w[_]);
} else $ = w;
return T && l(
$,
typeof u == "function" ? u.displayName || u.name || "Unknown" : u
), p(
u,
T,
L,
D,
o(),
$,
g,
C
);
}
function m(u) {
typeof u == "object" && u !== null && u.$$typeof === k && u._store && (u._store.validated = 1);
}
var y = $e, k = Symbol.for("react.transitional.element"), S = Symbol.for("react.portal"), s = Symbol.for("react.fragment"), E = Symbol.for("react.strict_mode"), O = Symbol.for("react.profiler"), I = Symbol.for("react.consumer"), j = Symbol.for("react.context"), P = Symbol.for("react.forward_ref"), v = Symbol.for("react.suspense"), z = Symbol.for("react.suspense_list"), M = Symbol.for("react.memo"), K = Symbol.for("react.lazy"), te = Symbol.for("react.activity"), i = Symbol.for("react.client.reference"), A = y.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, B = Object.prototype.hasOwnProperty, V = Array.isArray, U = console.createTask ? console.createTask : function() {
return null;
};
y = {
"react-stack-bottom-frame": function(u) {
return u();
}
};
var oe, Q = {}, le = y["react-stack-bottom-frame"].bind(
y,
a
)(), me = U(n(a)), he = {};
Je.Fragment = s, Je.jsx = function(u, w, $, N, D) {
var L = 1e4 > A.recentlyCreatedOwnerStacks++;
return h(
u,
w,
$,
!1,
N,
D,
L ? Error("react-stack-top-frame") : le,
L ? U(n(u)) : me
);
}, Je.jsxs = function(u, w, $, N, D) {
var L = 1e4 > A.recentlyCreatedOwnerStacks++;
return h(
u,
w,
$,
!0,
N,
D,
L ? Error("react-stack-top-frame") : le,
L ? U(n(u)) : me
);
};
}()), Je;
}
process.env.NODE_ENV === "production" ? Xt.exports = Fn() : Xt.exports = Vn();
var f = Xt.exports;
const vr = (e) => e, Un = () => {
let e = vr;
return {
configure(t) {
e = t;
},
generate(t) {
return e(t);
},
reset() {
e = vr;
}
};
}, Wn = Un();
function Ne(e, ...t) {
const r = new URL(`https://mui.com/production-error/?code=${e}`);
return t.forEach((n) => r.searchParams.append("args[]", n)), `Minified MUI error #${e}; visit ${r} for the full message.`;
}
function ze(e) {
if (typeof e != "string")
throw new Error(process.env.NODE_ENV !== "production" ? "MUI: `capitalize(string)` expects a string argument." : Ne(7));
return e.charAt(0).toUpperCase() + e.slice(1);
}
var Jt = { exports: {} }, dt = { 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 wr;
function Yn() {
if (wr) return G;
wr = 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, c = e ? Symbol.for("react.provider") : 60109, l = e ? Symbol.for("react.context") : 60110, d = e ? Symbol.for("react.async_mode") : 60111, p = e ? Symbol.for("react.concurrent_mode") : 60111, h = e ? Symbol.for("react.forward_ref") : 60112, m = e ? Symbol.for("react.suspense") : 60113, y = e ? Symbol.for("react.suspense_list") : 60120, k = e ? Symbol.for("react.memo") : 60115, S = e ? Symbol.for("react.lazy") : 60116, s = e ? Symbol.for("react.block") : 60121, E = e ? Symbol.for("react.fundamental") : 60117, O = e ? Symbol.for("react.responder") : 60118, I = e ? Symbol.for("react.scope") : 60119;
function j(v) {
if (typeof v == "object" && v !== null) {
var z = v.$$typeof;
switch (z) {
case t:
switch (v = v.type, v) {
case d:
case p:
case n:
case a:
case o:
case m:
return v;
default:
switch (v = v && v.$$typeof, v) {
case l:
case h:
case S:
case k:
case c:
return v;
default:
return z;
}
}
case r:
return z;
}
}
}
function P(v) {
return j(v) === p;
}
return G.AsyncMode = d, G.ConcurrentMode = p, G.ContextConsumer = l, G.ContextProvider = c, G.Element = t, G.ForwardRef = h, G.Fragment = n, G.Lazy = S, G.Memo = k, G.Portal = r, G.Profiler = a, G.StrictMode = o, G.Suspense = m, G.isAsyncMode = function(v) {
return P(v) || j(v) === d;
}, G.isConcurrentMode = P, G.isContextConsumer = function(v) {
return j(v) === l;
}, G.isContextProvider = function(v) {
return j(v) === c;
}, G.isElement = function(v) {
return typeof v == "object" && v !== null && v.$$typeof === t;
}, G.isForwardRef = function(v) {
return j(v) === h;
}, G.isFragment = function(v) {
return j(v) === n;
}, G.isLazy = function(v) {
return j(v) === S;
}, G.isMemo = function(v) {
return j(v) === k;
}, G.isPortal = function(v) {
return j(v) === r;
}, G.isProfiler = function(v) {
return j(v) === a;
}, G.isStrictMode = function(v) {
return j(v) === o;
}, G.isSuspense = function(v) {
return j(v) === m;
}, G.isValidElementType = function(v) {
return typeof v == "string" || typeof v == "function" || v === n || v === p || v === a || v === o || v === m || v === y || typeof v == "object" && v !== null && (v.$$typeof === S || v.$$typeof === k || v.$$typeof === c || v.$$typeof === l || v.$$typeof === h || v.$$typeof === E || v.$$typeof === O || v.$$typeof === I || v.$$typeof === s);
}, G.typeOf = j, G;
}
var q = {};
/** @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 Sr;
function Hn() {
return Sr || (Sr = 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, c = e ? Symbol.for("react.provider") : 60109, l = e ? Symbol.for("react.context") : 60110, d = e ? Symbol.for("react.async_mode") : 60111, p = e ? Symbol.for("react.concurrent_mode") : 60111, h = e ? Symbol.for("react.forward_ref") : 60112, m = e ? Symbol.for("react.suspense") : 60113, y = e ? Symbol.for("react.suspense_list") : 60120, k = e ? Symbol.for("react.memo") : 60115, S = e ? Symbol.for("react.lazy") : 60116, s = e ? Symbol.for("react.block") : 60121, E = e ? Symbol.for("react.fundamental") : 60117, O = e ? Symbol.for("react.responder") : 60118, I = e ? Symbol.for("react.scope") : 60119;
function j(R) {
return typeof R == "string" || typeof R == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
R === n || R === p || R === a || R === o || R === m || R === y || typeof R == "object" && R !== null && (R.$$typeof === S || R.$$typeof === k || R.$$typeof === c || R.$$typeof === l || R.$$typeof === h || R.$$typeof === E || R.$$typeof === O || R.$$typeof === I || R.$$typeof === s);
}
function P(R) {
if (typeof R == "object" && R !== null) {
var pe = R.$$typeof;
switch (pe) {
case t:
var Be = R.type;
switch (Be) {
case d:
case p:
case n:
case a:
case o:
case m:
return Be;
default:
var De = Be && Be.$$typeof;
switch (De) {
case l:
case h:
case S:
case k:
case c:
return De;
default:
return pe;
}
}
case r:
return pe;
}
}
}
var v = d, z = p, M = l, K = c, te = t, i = h, A = n, B = S, V = k, U = r, oe = a, Q = o, le = m, me = !1;
function he(R) {
return me || (me = !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.")), u(R) || P(R) === d;
}
function u(R) {
return P(R) === p;
}
function w(R) {
return P(R) === l;
}
function $(R) {
return P(R) === c;
}
function N(R) {
return typeof R == "object" && R !== null && R.$$typeof === t;
}
function D(R) {
return P(R) === h;
}
function L(R) {
return P(R) === n;
}
function g(R) {
return P(R) === S;
}
function C(R) {
return P(R) === k;
}
function T(R) {
return P(R) === r;
}
function x(R) {
return P(R) === a;
}
function _(R) {
return P(R) === o;
}
function F(R) {
return P(R) === m;
}
q.AsyncMode = v, q.ConcurrentMode = z, q.ContextConsumer = M, q.ContextProvider = K, q.Element = te, q.ForwardRef = i, q.Fragment = A, q.Lazy = B, q.Memo = V, q.Portal = U, q.Profiler = oe, q.StrictMode = Q, q.Suspense = le, q.isAsyncMode = he, q.isConcurrentMode = u, q.isContextConsumer = w, q.isContextProvider = $, q.isElement = N, q.isForwardRef = D, q.isFragment = L, q.isLazy = g, q.isMemo = C, q.isPortal = T, q.isProfiler = x, q.isStrictMode = _, q.isSuspense = F, q.isValidElementType = j, q.typeOf = P;
}()), q;
}
var Cr;
function on() {
return Cr || (Cr = 1, process.env.NODE_ENV === "production" ? dt.exports = Yn() : dt.exports = Hn()), dt.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var Lt, Er;
function Gn() {
if (Er) return Lt;
Er = 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 c = {}, l = 0; l < 10; l++)
c["_" + String.fromCharCode(l)] = l;
var d = Object.getOwnPropertyNames(c).map(function(h) {
return c[h];
});
if (d.join("") !== "0123456789")
return !1;
var p = {};
return "abcdefghijklmnopqrst".split("").forEach(function(h) {
p[h] = h;
}), Object.keys(Object.assign({}, p)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return Lt = o() ? Object.assign : function(a, c) {
for (var l, d = n(a), p, h = 1; h < arguments.length; h++) {
l = Object(arguments[h]);
for (var m in l)
t.call(l, m) && (d[m] = l[m]);
if (e) {
p = e(l);
for (var y = 0; y < p.length; y++)
r.call(l, p[y]) && (d[p[y]] = l[p[y]]);
}
}
return d;
}, Lt;
}
var Ft, Tr;
function ir() {
if (Tr) return Ft;
Tr = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return Ft = e, Ft;
}
var Vt, kr;
function an() {
return kr || (kr = 1, Vt = Function.call.bind(Object.prototype.hasOwnProperty)), Vt;
}
var Ut, Or;
function qn() {
if (Or) return Ut;
Or = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = ir(), r = {}, n = an();
e = function(a) {
var c = "Warning: " + a;
typeof console < "u" && console.error(c);
try {
throw new Error(c);
} catch {
}
};
}
function o(a, c, l, d, p) {
if (process.env.NODE_ENV !== "production") {
for (var h in a)
if (n(a, h)) {
var m;
try {
if (typeof a[h] != "function") {
var y = Error(
(d || "React class") + ": " + l + " type `" + h + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof a[h] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw y.name = "Invariant Violation", y;
}
m = a[h](c, h, d, l, null, t);
} catch (S) {
m = S;
}
if (m && !(m instanceof Error) && e(
(d || "React class") + ": type specification of " + l + " `" + h + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof m + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), m instanceof Error && !(m.message in r)) {
r[m.message] = !0;
var k = p ? p() : "";
e(
"Failed " + l + " type: " + m.message + (k ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (r = {});
}, Ut = o, Ut;
}
var Wt, _r;
function Kn() {
if (_r) return Wt;
_r = 1;
var e = on(), t = Gn(), r = ir(), n = an(), o = qn(), a = function() {
};
process.env.NODE_ENV !== "production" && (a = function(l) {
var d = "Warning: " + l;
typeof console < "u" && console.error(d);
try {
throw new Error(d);
} catch {
}
});
function c() {
return null;
}
return Wt = function(l, d) {
var p = typeof Symbol == "function" && Symbol.iterator, h = "@@iterator";
function m(u) {
var w = u && (p && u[p] || u[h]);
if (typeof w == "function")
return w;
}
var y = "<<anonymous>>", k = {
array: O("array"),
bigint: O("bigint"),
bool: O("boolean"),
func: O("function"),
number: O("number"),
object: O("object"),
string: O("string"),
symbol: O("symbol"),
any: I(),
arrayOf: j,
element: P(),
elementType: v(),
instanceOf: z,
node: i(),
objectOf: K,
oneOf: M,
oneOfType: te,
shape: B,
exact: V
};
function S(u, w) {
return u === w ? u !== 0 || 1 / u === 1 / w : u !== u && w !== w;
}
function s(u, w) {
this.message = u, this.data = w && typeof w == "object" ? w : {}, this.stack = "";
}
s.prototype = Error.prototype;
function E(u) {
if (process.env.NODE_ENV !== "production")
var w = {}, $ = 0;
function N(L, g, C, T, x, _, F) {
if (T = T || y, _ = _ || C, F !== r) {
if (d) {
var R = 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 R.name = "Invariant Violation", R;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var pe = T + ":" + C;
!w[pe] && // Avoid spamming the console because they are often not actionable except for lib authors
$ < 3 && (a(
"You are manually calling a React.PropTypes validation function for the `" + _ + "` prop on `" + T + "`. 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."
), w[pe] = !0, $++);
}
}
return g[C] == null ? L ? g[C] === null ? new s("The " + x + " `" + _ + "` is marked as required " + ("in `" + T + "`, but its value is `null`.")) : new s("The " + x + " `" + _ + "` is marked as required in " + ("`" + T + "`, but its value is `undefined`.")) : null : u(g, C, T, x, _);
}
var D = N.bind(null, !1);
return D.isRequired = N.bind(null, !0), D;
}
function O(u) {
function w($, N, D, L, g, C) {
var T = $[N], x = Q(T);
if (x !== u) {
var _ = le(T);
return new s(
"Invalid " + L + " `" + g + "` of type " + ("`" + _ + "` supplied to `" + D + "`, expected ") + ("`" + u + "`."),
{ expectedType: u }
);
}
return null;
}
return E(w);
}
function I() {
return E(c);
}
function j(u) {
function w($, N, D, L, g) {
if (typeof u != "function")
return new s("Property `" + g + "` of component `" + D + "` has invalid PropType notation inside arrayOf.");
var C = $[N];
if (!Array.isArray(C)) {
var T = Q(C);
return new s("Invalid " + L + " `" + g + "` of type " + ("`" + T + "` supplied to `" + D + "`, expected an array."));
}
for (var x = 0; x < C.length; x++) {
var _ = u(C, x, D, L, g + "[" + x + "]", r);
if (_ instanceof Error)
return _;
}
return null;
}
return E(w);
}
function P() {
function u(w, $, N, D, L) {
var g = w[$];
if (!l(g)) {
var C = Q(g);
return new s("Invalid " + D + " `" + L + "` of type " + ("`" + C + "` supplied to `" + N + "`, expected a single ReactElement."));
}
return null;
}
return E(u);
}
function v() {
function u(w, $, N, D, L) {
var g = w[$];
if (!e.isValidElementType(g)) {
var C = Q(g);
return new s("Invalid " + D + " `" + L + "` of type " + ("`" + C + "` supplied to `" + N + "`, expected a single ReactElement type."));
}
return null;
}
return E(u);
}
function z(u) {
function w($, N, D, L, g) {
if (!($[N] instanceof u)) {
var C = u.name || y, T = he($[N]);
return new s("Invalid " + L + " `" + g + "` of type " + ("`" + T + "` supplied to `" + D + "`, expected ") + ("instance of `" + C + "`."));
}
return null;
}
return E(w);
}
function M(u) {
if (!Array.isArray(u))
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.")), c;
function w($, N, D, L, g) {
for (var C = $[N], T = 0; T < u.length; T++)
if (S(C, u[T]))
return null;
var x = JSON.stringify(u, function(F, R) {
var pe = le(R);
return pe === "symbol" ? String(R) : R;
});
return new s("Invalid " + L + " `" + g + "` of value `" + String(C) + "` " + ("supplied to `" + D + "`, expected one of " + x + "."));
}
return E(w);
}
function K(u) {
function w($, N, D, L, g) {
if (typeof u != "function")
return new s("Property `" + g + "` of component `" + D + "` has invalid PropType notation inside objectOf.");
var C = $[N], T = Q(C);
if (T !== "object")
return new s("Invalid " + L + " `" + g + "` of type " + ("`" + T + "` supplied to `" + D + "`, expected an object."));
for (var x in C)
if (n(C, x)) {
var _ = u(C, x, D, L, g + "." + x, r);
if (_ instanceof Error)
return _;
}
return null;
}
return E(w);
}
function te(u) {
if (!Array.isArray(u))
return process.env.NODE_ENV !== "production" && a("Invalid argument supplied to oneOfType, expected an instance of array."), c;
for (var w = 0; w < u.length; w++) {
var $ = u[w];
if (typeof $ != "function")
return a(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + me($) + " at index " + w + "."
), c;
}
function N(D, L, g, C, T) {
for (var x = [], _ = 0; _ < u.length; _++) {
var F = u[_], R = F(D, L, g, C, T, r);
if (R == null)
return null;
R.data && n(R.data, "expectedType") && x.push(R.data.expectedType);
}
var pe = x.length > 0 ? ", expected one of type [" + x.join(", ") + "]" : "";
return new s("Invalid " + C + " `" + T + "` supplied to " + ("`" + g + "`" + pe + "."));
}
return E(N);
}
function i() {
function u(w, $, N, D, L) {
return U(w[$]) ? null : new s("Invalid " + D + " `" + L + "` supplied to " + ("`" + N + "`, expected a ReactNode."));
}
return E(u);
}
function A(u, w, $, N, D) {
return new s(
(u || "React class") + ": " + w + " type `" + $ + "." + N + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + D + "`."
);
}
function B(u) {
function w($, N, D, L, g) {
var C = $[N], T = Q(C);
if (T !== "object")
return new s("Invalid " + L + " `" + g + "` of type `" + T + "` " + ("supplied to `" + D + "`, expected `object`."));
for (var x in u) {
var _ = u[x];
if (typeof _ != "function")
return A(D, L, g, x, le(_));
var F = _(C, x, D, L, g + "." + x, r);
if (F)
return F;
}
return null;
}
return E(w);
}
function V(u) {
function w($, N, D, L, g) {
var C = $[N], T = Q(C);
if (T !== "object")
return new s("Invalid " + L + " `" + g + "` of type `" + T + "` " + ("supplied to `" + D + "`, expected `object`."));
var x = t({}, $[N], u);
for (var _ in x) {
var F = u[_];
if (n(u, _) && typeof F != "function")
return A(D, L, g, _, le(F));
if (!F)
return new s(
"Invalid " + L + " `" + g + "` key `" + _ + "` supplied to `" + D + "`.\nBad object: " + JSON.stringify($[N], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(u), null, " ")
);
var R = F(C, _, D, L, g + "." + _, r);
if (R)
return R;
}
return null;
}
return E(w);
}
function U(u) {
switch (typeof u) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !u;
case "object":
if (Array.isArray(u))
return u.every(U);
if (u === null || l(u))
return !0;
var w = m(u);
if (w) {
var $ = w.call(u), N;
if (w !== u.entries) {
for (; !(N = $.next()).done; )
if (!U(N.value))
return !1;
} else
for (; !(N = $.next()).done; ) {
var D = N.value;
if (D && !U(D[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function oe(u, w) {
return u === "symbol" ? !0 : w ? w["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && w instanceof Symbol : !1;
}
function Q(u) {
var w = typeof u;
return Array.isArray(u) ? "array" : u instanceof RegExp ? "object" : oe(w, u) ? "symbol" : w;
}
function le(u) {
if (typeof u > "u" || u === null)
return "" + u;
var w = Q(u);
if (w === "object") {
if (u instanceof Date)
return "date";
if (u instanceof RegExp)
return "regexp";
}
return w;
}
function me(u) {
var w = le(u);
switch (w) {
case "array":
case "object":
return "an " + w;
case "boolean":
case "date":
case "regexp":
return "a " + w;
default:
return w;
}
}
function he(u) {
return !u.constructor || !u.constructor.name ? y : u.constructor.name;
}
return k.checkPropTypes = o, k.resetWarningCache = o.resetWarningCache, k.PropTypes = k, k;
}, Wt;
}
var Yt, Rr;
function Xn() {
if (Rr) return Yt;
Rr = 1;
var e = ir();
function t() {
}
function r() {
}
return r.resetWarningCache = t, Yt = function() {
function n(c, l, d, p, h, m) {
if (m !== e) {
var y = 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 y.name = "Invariant Violation", y;
}
}
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;
}, Yt;
}
if (process.env.NODE_ENV !== "production") {
var Jn = on(), Qn = !0;
Jt.exports = Kn()(Jn.isElement, Qn);
} else
Jt.exports = Xn()();
var Zn = Jt.exports;
const W = /* @__PURE__ */ Ln(Zn);
function sn(e) {
var t, r, n = "";
if (typeof e == "string" || typeof e == "number") n += e;
else if (typeof e == "object") if (Array.isArray(e)) {
var o = e.length;
for (t = 0; t < o; t++) e[t] && (r = sn(e[t])) && (n && (n += " "), n += r);
} else for (r in e) e[r] && (n && (n += " "), n += r);
return n;
}
function eo() {
for (var e, t, r = 0, n = "", o = arguments.length; r < o; r++) (e = arguments[r]) && (t = sn(e)) && (n && (n += " "), n += t);
return n;
}
function to(e, t, r = void 0) {
const n = {};
for (const o in e) {
const a = e[o];
let c = "", l = !0;
for (let d = 0; d < a.length; d += 1) {
const p = a[d];
p && (c += (l === !0 ? "" : " ") + t(p), l = !1, r && r[p] && (c += " " + r[p]));
}
n[o] = c;
}
return n;
}
var Qt = { exports: {} }, X = {};
/**
* @license React
* react-is.production.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var Pr;
function ro() {
if (Pr) return X;
Pr = 1;
var e = Symbol.for("react.transitional.element"), t = Symbol.for("react.portal"), r = Symbol.for("react.fragment"), n = Symbol.for("react.strict_mode"), o = Symbol.for("react.profiler"), a = Symbol.for("react.consumer"), c = Symbol.for("react.context"), l = Symbol.for("react.forward_ref"), d = Symbol.for("react.suspense"), p = Symbol.for("react.suspense_list"), h = Symbol.for("react.memo"), m = Symbol.for("react.lazy"), y = Symbol.for("react.view_transition"), k = Symbol.for("react.client.reference");
function S(s) {
if (typeof s == "object" && s !== null) {
var E = s.$$typeof;
switch (E) {
case e:
switch (s = s.type, s) {
case r:
case o:
case n:
case d:
case p:
case y:
return s;
default:
switch (s = s && s.$$typeof, s) {
case c:
case l:
case m:
case h:
return s;
case a:
return s;
default:
return E;
}
}
case t:
return E;
}
}
}
return X.ContextConsumer = a, X.ContextProvider = c, X.Element = e, X.ForwardRef = l, X.Fragment = r, X.Lazy = m, X.Memo = h, X.Portal = t, X.Profiler = o, X.StrictMode = n, X.Suspense = d, X.SuspenseList = p, X.isContextConsumer = function(s) {
return S(s) === a;
}, X.isContextProvider = function(s) {
return S(s) === c;
}, X.isElement = function(s) {
return typeof s == "object" && s !== null && s.$$typeof === e;
}, X.isForwardRef = function(s) {
return S(s) === l;
}, X.isFragment = function(s) {
return S(s) === r;
}, X.isLazy = function(s) {
return S(s) === m;
}, X.isMemo = function(s) {
return S(s) === h;
}, X.isPortal = function(s) {
return S(s) === t;
}, X.isProfiler = function(s) {
return S(s) === o;
}, X.isStrictMode = function(s) {
return S(s) === n;
}, X.isSuspense = function(s) {
return S(s) === d;
}, X.isSuspenseList = function(s) {
return S(s) === p;
}, X.isValidElementType = function(s) {
return typeof s == "string" || typeof s == "function" || s === r || s === o || s === n || s === d || s === p || typeof s == "object" && s !== null && (s.$$typeof === m || s.$$typeof === h || s.$$typeof === c || s.$$typeof === a || s.$$typeof === l || s.$$typeof === k || s.getModuleId !== void 0);
}, X.typeOf = S, X;
}
var J = {};
/**
* @license React
* react-is.development.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var Ar;
function no() {
return Ar || (Ar = 1, process.env.NODE_ENV !== "production" && function() {
function e(s) {
if (typeof s == "object" && s !== null) {
var E = s.$$typeof;
switch (E) {
case t:
switch (s = s.type, s) {
case n:
case a:
case o:
case p:
case h:
case k:
return s;
default:
switch (s = s && s.$$typeof, s) {
case l:
case d:
case y:
case m:
return s;
case c:
return s;
default:
return E;
}
}
case r:
return E;
}
}
}
var t = Symbol.for("react.transitional.element"), r = Symbol.for("react.portal"), n = Symbol.for("react.fragment"), o = Symbol.for("react.strict_mode"), a = Symbol.for("react.profiler"), c = Symbol.for("react.consumer"), l = Symbol.for("react.context"), d = Symbol.for("react.forward_ref"), p = Symbol.for("react.suspense"), h = Symbol.for("react.suspense_list"), m = Symbol.for("react.memo"), y = Symbol.for("react.lazy"), k = Symbol.for("react.view_transition"), S = Symbol.for("react.client.reference");
J.ContextConsumer = c, J.ContextProvider = l, J.Element = t, J.ForwardRef = d, J.Fragment = n, J.Lazy = y, J.Memo = m, J.Portal = r, J.Profiler = a, J.StrictMode = o, J.Suspense = p, J.SuspenseList = h, J.isContextConsumer = function(s) {
return e(s) === c;
}, J.isContextProvider = function(s) {
return e(s) === l;
}, J.isElement = function(s) {
return typeof s == "object" && s !== null && s.$$typeof === t;
}, J.isForwardRef = function(s) {
return e(s) === d;
}, J.isFragment = function(s) {
return e(s) === n;
}, J.isLazy = function(s) {
return e(s) === y;
}, J.isMemo = function(s) {
return e(s) === m;
}, J.isPortal = function(s) {
return e(s) === r;
}, J.isProfiler = function(s) {
return e(s) === a;
}, J.isStrictMode = function(s) {
return e(s) === o;
}, J.isSuspense = function(s) {
return e(s) === p;
}, J.isSuspenseList = function(s) {
return e(s) === h;
}, J.isValidElementType = function(s) {
return typeof s == "string" || typeof s == "function" || s === n || s === a || s === o || s === p || s === h || typeof s == "object" && s !== null && (s.$$typeof === y || s.$$typeof === m || s.$$typeof === l || s.$$typeof === c || s.$$typeof === d || s.$$typeof === S || s.getModuleId !== void 0);
}, J.typeOf = e;
}()), J;
}
process.env.NODE_ENV === "production" ? Qt.exports = ro() : Qt.exports = no();
var vt = Qt.exports;
function Re(e) {
if (typeof e != "object" || e === null)
return !1;
const t = Object.getPrototypeOf(e);
return (t === null || t === Object.prototype || Object.getPrototypeOf(t) === null) && !(Symbol.toStringTag in e) && !(Symbol.iterator in e);
}
function cn(e) {
if (/* @__PURE__ */ de.isValidElement(e) || vt.isValidElementType(e) || !Re(e))
return e;
const t = {};
return Object.keys(e).forEach((r) => {
t[r] = cn(e[r]);
}), t;
}
function be(e, t, r = {
clone: !0
}) {
const n = r.clone ? {
...e
} : e;
return Re(e) && Re(t) && Object.keys(t).forEach((o) => {
/* @__PURE__ */ de.isValidElement(t[o]) || vt.isValidElementType(t[o]) ? n[o] = t[o] : Re(t[o]) && // Avoid prototype pollution
Object.prototype.hasOwnProperty.call(e, o) && Re(e[o]) ? n[o] = be(e[o], t[o], r) : r.clone ? n[o] = Re(t[o]) ? cn(t[o]) : t[o] : n[o] = t[o];
}), n;
}
function rt(e, t) {
return t ? be(e, t, {
clone: !1
// No need to clone deep, it's way faster.
}) : e;
}
const Me = process.env.NODE_ENV !== "production" ? W.oneOfType([W.number, W.string, W.object, W.array]) : {};
function oo(e, t) {
if (!e.containerQueries)
return t;
const r = Object.keys(t).filter((n) => n.startsWith("@container")).sort((n, o) => {
var c, l;
const a = /min-width:\s*([0-9.]+)/;
return +(((c = n.match(a)) == null ? void 0 : c[1]) || 0) - +(((l = o.match(a)) == null ? void 0 : l[1]) || 0);
});
return r.length ? r.reduce((n, o) => {
const a = t[o];
return delete n[o], n[o] = a, n;
}, {
...t
}) : t;
}
function ao(e, t) {
return t === "@" || t.startsWith("@") && (e.some((r) => t.startsWith(`@${r}`)) || !!t.match(/^@\d/));
}
function io(e, t) {
const r = t.match(/^@([^/]+)?\/?(.+)?$/);
if (!r) {
if (process.env.NODE_ENV !== "production")
throw new Error(process.env.NODE_ENV !== "production" ? `MUI: The provided shorthand ${`(${t})`} is invalid. The format should be \`@<breakpoint | number>\` or \`@<breakpoint | number>/<container>\`.
For example, \`@sm\` or \`@600\` or \`@40rem/sidebar\`.` : Ne(18, `(${t})`));
return null;
}
const [, n, o] = r, a = Number.isNaN(+n) ? n || 0 : +n;
return e.containerQueries(o).up(a);
}
function so(e) {
const t = (a, c) => a.replace("@media", c ? `@container ${c}` : "@container");
function r(a, c) {
a.up = (...l) => t(e.breakpoints.up(...l), c), a.down = (...l) => t(e.breakpoints.down(...l), c), a.between = (...l) => t(e.breakpoints.between(...l), c), a.only = (...l) => t(e.breakpoints.only(...l), c), a.not = (...l) => {
const d = t(e.breakpoints.not(...l), c);
return d.includes("not all and") ? d.replace("not all and ", "").replace("min-width:", "width<").replace("max-width:", "width>").replace("and", "or") : d;
};
}
const n = {}, o = (a) => (r(n, a), n);
return r(o), {
...e,
containerQueries: o
};
}
const kt = {
xs: 0,
// phone
sm: 600,
// tablet
md: 900,
// small laptop
lg: 1200,
// desktop
xl: 1536
// large screen
}, jr = {
// Sorted ASC by size. That's important.
// It can't be configured as it's used statically for propTypes.
keys: ["xs", "sm", "md", "lg", "xl"],
up: (e) => `@media (min-width:${kt[e]}px)`
}, co = {
containerQueries: (e) => ({
up: (t) => {
let r = typeof t == "number" ? t : kt[t] || t;
return typeof r == "number" && (r = `${r}px`), e ? `@container ${e} (min-width:${r})` : `@container (min-width:${r})`;
}
})
};
function Pe(e, t, r) {
const n = e.theme || {};
if (Array.isArray(t)) {
const a = n.breakpoints || jr;
return t.reduce((c, l, d) => (c[a.up(a.keys[d])] = r(t[d]), c), {});
}
if (typeof t == "object") {
const a = n.breakpoints || jr;
return Object.keys(t).reduce((c, l) => {
if (ao(a.keys, l)) {
const d = io(n.containerQueries ? n : co, l);
d && (c[d] = r(t[l], l));
} else if (Object.keys(a.values || kt).includes(l)) {
const d = a.up(l);
c[d] = r(t[l], l);
} else {
const d = l;
c[d] = t[d];
}
return c;
}, {});
}
return r(t);
}
function lo(e = {}) {
var r;
return ((r = e.keys) == null ? void 0 : r.reduce((n, o) => {
const a = e.up(o);
return n[a] = {}, n;
}, {})) || {};
}
function uo(e, t) {
return e.reduce((r, n) => {
const o = r[n];
return (!o || Object.keys(o).length === 0) && delete r[n], r;
}, t);
}
function Ot(e, t, r = !0) {
if (!t || typeof t != "string")
return null;
if (e && e.vars && r) {
const n = `vars.${t}`.split(".").reduce((o, a) => o && o[a] ? o[a] : null, e);
if (n != null)
return n;
}
return t.split(".").reduce((n, o) => n && n[o] != null ? n[o] : null, e);
}
function wt(e, t, r, n = r) {
let o;
return typeof e == "function" ? o = e(r) : Array.isArray(e) ? o = e[r] || n : o = Ot(e, r) || n, t && (o = t(o, n, e)), o;
}
function se(e) {
const {
prop: t,
cssProperty: r = e.prop,
themeKey: n,
transform: o
} = e, a = (c) => {
if (c[t] == null)
return null;
const l = c[t], d = c.theme, p = Ot(d, n) || {};
return Pe(c, l, (m) => {
let y = wt(p, o, m);
return m === y && typeof m == "string" && (y = wt(p, o, `${t}${m === "default" ? "" : ze(m)}`, m)), r === !1 ? y : {
[r]: y
};
});
};
return a.propTypes = process.env.NODE_ENV !== "production" ? {
[t]: Me
} : {}, a.filterProps = [t], a;
}
function fo(e) {
const t = {};
return (r) => (t[r] === void 0 && (t[r] = e(r)), t[r]);
}
const po = {
m: "margin",
p: "padding"
}, mo = {
t: "Top",
r: "Right",
b: "Bottom",
l: "Left",
x: ["Left", "Right"],
y: ["Top", "Bottom"]
}, $r = {
marginX: "mx",
marginY: "my",
paddingX: "px",
paddingY: "py"
}, ho = fo((e) => {
if (e.length > 2)
if ($r[e])
e = $r[e];
else
return [e];
const [t, r] = e.split(""), n = po[t], o = mo[r] || "";
return Array.isArray(o) ? o.map((a) => n + a) : [n + o];
}), _t = ["m", "mt", "mr", "mb", "ml", "mx", "my", "margin", "marginTop", "marginRight", "marginBottom", "marginLeft", "marginX", "marginY", "marginInline", "marginInlineStart", "marginInlineEnd", "marginBlock", "marginBlockStart", "marginBlockEnd"], Rt = ["p", "pt", "pr", "pb", "pl", "px", "py", "padding", "paddingTop", "paddingRight", "paddingBottom", "paddingLeft", "paddingX", "paddingY", "paddingInline", "paddingInlineStart", "paddingInlineEnd", "paddingBlock", "paddingBlockStart", "paddingBlockEnd"], go = [..._t, ...Rt];
function st(e, t, r, n) {
const o = Ot(e, t, !0) ?? r;
return typeof o == "number" || typeof o == "string" ? (a) => typeof a == "string" ? a : (process.env.NODE_ENV !== "production" && typeof a != "number" && console.error(`MUI: Expected ${n} argument to be a number or a string, got ${a}.`), typeof o == "string" ? o.startsWith("var(") && a === 0 ? 0 : o.startsWith("var(") && a === 1 ? o : `calc(${a} * ${o})` : o * a) : Array.isArray(o) ? (a) => {
if (typeof a == "string")
return a;
const c = Math.abs(a);
process.env.NODE_ENV !== "production" && (Number.isInteger(c) ? c > o.length - 1 && console.error([`MUI: The value provided (${c}) overflows.`, `The supported values are: ${JSON.stringify(o)}.`, `${c} > ${o.length - 1}, you need to add the missing values.`].join(`
`)) : console.error([`MUI: The \`theme.${t}\` array type cannot be combined with non integer values.You should either use an integer value that can be used as index, or define the \`theme.${t}\` as a number.`].join(`
`)));
const l = o[c];
return a >= 0 ? l : typeof l == "number" ? -l : typeof l == "string" && l.startsWith("var(") ? `calc(-1 * ${l})` : `-${l}`;
} : typeof o == "function" ? o : (process.env.NODE_ENV !== "production" && console.error([`MUI: The \`theme.${t}\` value (${o}) is invalid.`, "It should be a number, an array or a function."].join(`
`)), () => {
});
}
function sr(e) {
return st(e, "spacing", 8, "spacing");
}
function ct(e, t) {
return typeof t == "string" || t == null ? t : e(t);
}
function yo(e, t) {
return (r) => e.reduce((n, o) => (n[o] = ct(t, r), n), {});
}
function bo(e, t, r, n) {
if (!t.includes(r))
return null;
const o = ho(r), a = yo(o, n), c = e[r];
return Pe(e, c, a);
}
function ln(e, t) {
const r = sr(e.theme);
return Object.keys(e).map((n) => bo(e, t, n, r)).reduce(rt, {});
}
function ae(e) {
return ln(e, _t);
}
ae.propTypes = process.env.NODE_ENV !== "production" ? _t.reduce((e, t) => (e[t] = Me, e), {}) : {};
ae.filterProps = _t;
function ie(e) {
return ln(e, Rt);
}
ie.propTypes = process.env.NODE_ENV !== "production" ? Rt.reduce((e, t) => (e[t] = Me, e), {}) : {};
ie.filterProps = Rt;
process.env.NODE_ENV !== "production" && go.reduce((e, t) => (e[t] = Me, e), {});
function Pt(...e) {
const t = e.reduce((n, o) => (o.filterProps.forEach((a) => {
n[a] = o;
}), n), {}), r = (n) => Object.keys(n).reduce((o, a) => t[a] ? rt(o, t[a](n)) : o, {});
return r.propTypes = process.env.NODE_ENV !== "production" ? e.reduce((n, o) => Object.assign(n, o.propTypes), {}) : {}, r.filterProps = e.reduce((n, o) => n.concat(o.filterProps), []), r;
}
function ve(e) {
return typeof e != "number" ? e : `${e}px solid`;
}
function we(e, t) {
return se({
prop: e,
themeKey: "borders",
transform: t
});
}
const xo = we("border", ve), vo = we("borderTop", ve), wo = we("borderRight", ve), So = we("borderBottom", ve), Co = we("borderLeft", ve), Eo = we("borderColor"), To = we("borderTopColor"), ko = we("borderRightColor"), Oo = we("borderBottomColor"), _o = we("borderLeftColor"), Ro = we("outline", ve), Po = we("outlineColor"), At = (e) => {
if (e.borderRadius !== void 0 && e.borderRadius !== null) {
const t = st(e.theme, "shape.borderRadius", 4, "borderRadius"), r = (n) => ({
borderRadius: ct(t, n)
});
return Pe(e, e.borderRadius, r);
}
return null;
};
At.propTypes = process.env.NODE_ENV !== "production" ? {
borderRadius: Me
} : {};
At.filterProps = ["borderRadius"];
Pt(xo, vo, wo, So, Co, Eo, To, ko, Oo, _o, At, Ro, Po);
const jt = (e) => {
if (e.gap !== void 0 && e.gap !== null) {
const t = st(e.theme, "spacing", 8, "gap"), r = (n) => ({
gap: ct(t, n)
});
return Pe(e, e.gap, r);
}
return null;
};
jt.propTypes = process.env.NODE_ENV !== "production" ? {
gap: Me
} : {};
jt.filterProps = ["gap"];
const $t = (e) => {
if (e.columnGap !== void 0 && e.columnGap !== null) {
const t = st(e.theme, "spacing", 8, "columnGap"), r = (n) => ({
columnGap: ct(t, n)
});
return Pe(e, e.columnGap, r);
}
return null;
};
$t.propTypes = process.env.NODE_ENV !== "production" ? {
columnGap: Me
} : {};
$t.filterProps = ["columnGap"];
const Nt = (e) => {
if (e.rowGap !== void 0 && e.rowGap !== null) {
const t = st(e.theme, "spacing", 8, "rowGap"), r = (n) => ({
rowGap: ct(t, n)
});
return Pe(e, e.rowGap, r);
}
return null;
};
Nt.propTypes = process.env.NODE_ENV !== "production" ? {
rowGap: Me
} : {};
Nt.filterProps = ["rowGap"];
const Ao = se({
prop: "gridColumn"
}), jo = se({
prop: "gridRow"
}), $o = se({
prop: "gridAutoFlow"
}), No = se({
prop: "gridAutoColumns"
}), Io = se({
prop: "gridAutoRows"
}), Mo = se({
prop: "gridTemplateColumns"
}), Do = se({
prop: "gridTemplateRows"
}), zo = se({
prop: "gridTemplateAreas"
}), Bo = se({
prop: "gridArea"
});
Pt(jt, $t, Nt, Ao, jo, $o, No, Io, Mo, Do, zo, Bo);
function Ye(e, t) {
return t === "grey" ? t : e;
}
const Lo = se({
prop: "color",
themeKey: "palette",
transform: Ye
}), Fo = se({
prop: "bgcolor",
cssProperty: "backgroundColor",
themeKey: "palette",
transform: Ye
}), Vo = se({
prop: "backgroundColor",
themeKey: "palette",
transform: Ye
});
Pt(Lo, Fo, Vo);
function ye(e) {
return e <= 1 && e !== 0 ? `${e * 100}%` : e;
}
const Uo = se({
prop: "width",
transform: ye
}), cr = (e) => {
if (e.maxWidth !== void 0 && e.maxWidth !== null) {
const t = (r) => {
var o, a, c, l, d;
const n = ((c = (a = (o = e.theme) == null ? void 0 : o.breakpoints) == null ? void 0 : a.values) == null ? void 0 : c[r]) || kt[r];
return n ? ((d = (l = e.theme) == null ? void 0 : l.breakpoints) == null ? void 0 : d.unit) !== "px" ? {
maxWidth: `${n}${e.theme.breakpoints.unit}`
} : {
maxWidth: n
} : {
maxWidth: ye(r)
};
};
return Pe(e, e.maxWidth, t);
}
return null;
};
cr.filterProps = ["maxWidth"];
const Wo = se({
prop: "minWidth",
transform: ye
}), Yo = se({
prop: "height",
transform: ye
}), Ho = se({
prop: "maxHeight",
transform: ye
}), Go = se({
prop: "minHeight",
transform: ye
});
se({
prop: "size",
cssProperty: "width",
transform: ye
});
se({
prop: "size",
cssProperty: "height",
transform: ye
});
const qo = se({
prop: "boxSizing"
});
Pt(Uo, cr, Wo, Yo, Ho, Go, qo);
const It = {
// borders
border: {
themeKey: "borders",
transform: ve
},
borderTop: {
themeKey: "borders",
transform: ve
},
borderRight: {
themeKey: "borders",
transform: ve
},
borderBottom: {
themeKey: "borders",
transform: ve
},
borderLeft: {
themeKey: "borders",
transform: ve
},
borderColor: {
themeKey: "palette"
},
borderTopColor: {
themeKey: "palette"
},
borderRightColor: {
themeKey: "palette"
},
borderBottomColor: {
themeKey: "palette"
},
borderLeftColor: {
themeKey: "palette"
},
outline: {
themeKey: "borders",
transform: ve
},
outlineColor: {
themeKey: "palette"
},
borderRadius: {
themeKey: "shape.borderRadius",
style: At
},
// palette
color: {
themeKey: "palette",
transform: Ye
},
bgcolor: {
themeKey: "palette",
cssProperty: "backgroundColor",
transform: Ye
},
backgroundColor: {
themeKey: "palette",
transform: Ye
},
// spacing
p: {
style: ie
},
pt: {
style: ie
},
pr: {
style: ie
},
pb: {
style: ie
},
pl: {
style: ie
},
px: {
style: ie
},
py: {
style: ie
},
padding: {
style: ie
},
paddingTop: {
style: ie
},
paddingRight: {
style: ie
},
paddingBottom: {
style: ie
},
paddingLeft: {
style: ie
},
paddingX: {
style: ie
},
paddingY: {
style: ie
},
paddingInline: {
style: ie
},
paddingInlineStart: {
style: ie
},
paddingInlineEnd: {
style: ie
},
paddingBlock: {
style: ie
},
paddingBlockStart: {
style: ie
},
paddingBlockEnd: {
style: ie
},
m: {
style: ae
},
mt: {
style: ae
},
mr: {
style: ae
},
mb: {
style: ae
},
ml: {
style: ae
},
mx: {
style: ae
},
my: {
style: ae
},
margin: {
style: ae
},
marginTop: {
style: ae
},
marginRight: {
style: ae
},
marginBottom: {
style: ae
},
marginLeft: {
style: ae
},
marginX: {
style: ae
},
marginY: {
style: ae
},
marginInline: {
style: ae
},
marginInlineStart: {
style: ae
},
marginInlineEnd: {
style: ae
},
marginBlock: {
style: ae
},
marginBlockStart: {
style: ae
},
marginBlockEnd: {
style: ae
},
// display
displayPrint: {
cssProperty: !1,
transform: (e) => ({
"@media print": {
display: e
}
})
},
display: {},
overflow: {},
textOverflow: {},
visibility: {},
whiteSpace: {},
// flexbox
flexBasis: {},
flexDirection: {},
flexWrap: {},
justifyContent: {},
alignItems: {},
alignContent: {},
order: {},
flex: {},
flexGrow: {},
flexShrink: {},
alignSelf: {},
justifyItems: {},
justifySelf: {},
// grid
gap: {
style: jt
},
rowGap: {
style: Nt
},
columnGap: {
style: $t
},
gridColumn: {},
gridRow: {},
gridAutoFlow: {},
gridAutoColumns: {},
gridAutoRows: {},
gridTemplateColumns: {},
gridTemplateRows: {},
gridTemplateAreas: {},
gridArea: {},
// positions
position: {},
zIndex: {
themeKey: "zIndex"
},
top: {},
right: {},
bottom: {},
left: {},
// shadows
boxShadow: {
themeKey: "shadows"
},
// sizing
width: {
transform: ye
},
maxWidth: {
style: cr
},
minWidth: {
transform: ye
},
height: {
transform: ye
},
maxHeight: {
transform: ye
},
minHeight: {
transform: ye
},
boxSizing: {},
// typography
font: {
themeKey: "font"
},
fontFamily: {
themeKey: "typography"
},
fontSize: {
themeKey: "typography"
},
fontStyle: {
themeKey: "typography"
},
fontWeight: {
themeKey: "typography"
},
letterSpacing: {},
textTransform: {},
lineHeight: {},
textAlign: {},
typography: {
cssProperty: !1,
themeKey: "typography"
}
};
function Ko(...e) {
const t = e.reduce((n, o) => n.concat(Object.keys(o)), []), r = new Set(t);
return e.every((n) => r.size === Object.keys(n).length);
}
function Xo(e, t) {
return typeof e == "function" ? e(t) : e;
}
function Jo() {
function e(r, n, o, a) {
const c = {
[r]: n,
theme: o
}, l = a[r];
if (!l)
return {
[r]: n
};
const {
cssProperty: d = r,
themeKey: p,
transform: h,
style: m
} = l;
if (n == null)
return null;
if (p === "typography" && n === "inherit")
return {
[r]: n
};
const y = Ot(o, p) || {};
return m ? m(c) : Pe(c, n, (S) => {
let s = wt(y, h, S);
return S === s && typeof S == "string" && (s = wt(y, h, `${r}${S === "default" ? "" : ze(S)}`, S)), d === !1 ? s : {
[d]: s
};
});
}
function t(r) {
const {
sx: n,
theme: o = {}
} = r || {};
if (!n)
return null;
const a = o.unstable_sxConfig ?? It;
function c(l) {
let d = l;
if (typeof l == "function")
d = l(o);
else if (typeof l != "object")
return l;
if (!d)
return null;
const p = lo(o.breakpoints), h = Object.keys(p);
let m = p;
return Object.keys(d).forEach((y) => {
const k = Xo(d[y], o);
if (k != null)
if (typeof k == "object")
if (a[y])
m = rt(m, e(y, k, o, a));
else {
const S = Pe({
theme: o
}, k, (s) => ({
[y]: s
}));
Ko(S, k) ? m[y] = t({
sx: k,
theme: o
}) : m = rt(m, S);
}
else
m = rt(m, e(y, k, o, a));
}), oo(o, uo(h, m));
}
return Array.isArray(n) ? n.map(c) : c(n);
}
return t;
}
const Ge = Jo();
Ge.filterProps = ["sx"];
function Zt() {
return Zt = Object.assign ? Object.assign.bind() : function(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t];
for (var n in r) ({}).hasOwnProperty.call(r, n) && (e[n] = r[n]);
}
return e;
}, Zt.apply(null, arguments);
}
function Qo(e) {
if (e.sheet)
return e.sheet;
for (var t = 0; t < document.styleSheets.length; t++)
if (document.styleSheets[t].ownerNode === e)
return document.styleSheets[t];
}
function Zo(e) {
var t = document.createElement("style");
return t.setAttribute("data-emotion", e.key), e.nonce !== void 0 && t.setAttribute("nonce", e.nonce), t.appendChild(document.createTextNode("")), t.setAttribute("data-s", ""), t;
}
var ea = /* @__PURE__ */ function() {
function e(r) {
var n = this;
this._insertTag = function(o) {
var a;
n.tags.length === 0 ? n.insertionPoint ? a = n.insertionPoint.nextSibling : n.prepend ? a = n.container.firstChild : a = n.before : a = n.tags[n.tags.length - 1].nextSibling, n.container.insertBefore(o, a), n.tags.push(o);
}, this.isSpeedy = r.speedy === void 0 ? !0 : r.speedy, this.tags = [], this.ctr = 0, this.nonce = r.nonce, this.key = r.key, this.container = r.container, this.prepend = r.prepend, this.insertionPoint = r.insertionPoint, this.before = null;
}
var t = e.prototype;
return t.hydrate = function(n) {
n.forEach(this._insertTag);
}, t.insert = function(n) {
this.ctr % (this.isSpeedy ? 65e3 : 1) === 0 && this._insertTag(Zo(this));
var o = this.tags[this.tags.length - 1];
if (this.isSpeedy) {
var a = Qo(o);
try {
a.insertRule(n, a.cssRules.length);
} catch {
}
} else
o.appendChild(document.createTextNode(n));
this.ctr++;
}, t.flush = function() {
this.tags.forEach(function(n) {
var o;
return (o = n.parentNode) == null ? void 0 : o.removeChild(n);
}), this.tags = [], this.ctr = 0;
}, e;
}(), fe = "-ms-", St = "-moz-", Y = "-webkit-", un = "comm", lr = "rule", ur = "decl", ta = "@import", dn = "@keyframes", ra = "@layer", na = Math.abs, Mt = String.fromCharCode, oa = Object.assign;
function aa(e, t) {
return ue(e, 0) ^ 45 ? (((t << 2 ^ ue(e, 0)) << 2 ^ ue(e, 1)) << 2 ^ ue(e, 2)) << 2 ^ ue(e, 3) : 0;
}
function fn(e) {
return e.trim();
}
function ia(e, t) {
return (e = t.exec(e)) ? e[0] : e;
}
function H(e, t, r) {
return e.replace(t, r);
}
function er(e, t) {
return e.indexOf(t);
}
function ue(e, t) {
return e.charCodeAt(t) | 0;
}
function nt(e, t, r) {
return e.slice(t, r);
}
function Ee(e) {
return e.length;
}
function dr(e) {
return e.length;
}
function ft(e, t) {
return t.push(e), e;
}
function sa(e, t) {
return e.map(t).join("");
}
var Dt = 1, qe = 1, pn = 0, ge = 0, ce = 0, Ke = "";
function zt(e, t, r, n, o, a, c) {
return { value: e, root: t, parent: r, type: n, props: o, children: a, line: Dt, column: qe, length: c, return: "" };
}
function Qe(e, t) {
return oa(zt("", null, null, "", null, null, 0), e, { length: -e.length }, t);
}
function ca() {
return ce;
}
function la() {
return ce = ge > 0 ? ue(Ke, --ge) : 0, qe--, ce === 10 && (qe = 1, Dt--), ce;
}
function xe() {
return ce = ge < pn ? ue(Ke, ge++) : 0, qe++, ce === 10 && (qe = 1, Dt++), ce;
}
function ke() {
return ue(Ke, ge);
}
function gt() {
return ge;
}
function lt(e, t) {
return nt(Ke, e, t);
}
function ot(e) {
switch (e) {
case 0:
case 9:
case 10:
case 13:
case 32:
return 5;
case 33:
case 43:
case 44:
case 47:
case 62:
case 64:
case 126:
case 59:
case 123:
case 125:
return 4;
case 58:
return 3;
case 34:
case 39:
case 40:
case 91:
return 2;
case 41:
case 93:
return 1;
}
return 0;
}
function mn(e) {
return Dt = qe = 1, pn = Ee(Ke = e), ge = 0, [];
}
function hn(e) {
return Ke = "", e;
}
function yt(e) {
return fn(lt(ge - 1, tr(e === 91 ? e + 2 : e === 40 ? e + 1 : e)));
}
function ua(e) {
for (; (ce = ke()) && ce < 33; )
xe();
return ot(e) > 2 || ot(ce) > 3 ? "" : " ";
}
function da(e, t) {
for (; --t && xe() && !(ce < 48 || ce > 102 || ce > 57 && ce < 65 || ce > 70 && ce < 97); )
;
return lt(e, gt() + (t < 6 && ke() == 32 && xe() == 32));
}
function tr(e) {
for (; xe(); )
switch (ce) {
case e:
return ge;
case 34:
case 39:
e !== 34 && e !== 39 && tr(ce);
break;
case 40:
e === 41 && tr(e);
break;
case 92:
xe();
break;
}
return ge;
}
function fa(e, t) {
for (; xe() && e + ce !== 57; )
if (e + ce === 84 && ke() === 47)
break;
return "/*" + lt(t, ge - 1) + "*" + Mt(e === 47 ? e : xe());
}
function pa(e) {
for (; !ot(ke()); )
xe();
return lt(e, ge);
}
function ma(e) {
return hn(bt("", null, null, null, [""], e = mn(e), 0, [0], e));
}
function bt(e, t, r, n, o, a, c, l, d) {
for (var p = 0, h = 0, m = c, y = 0, k = 0, S = 0, s = 1, E = 1, O = 1, I = 0, j = "", P = o, v = a, z = n, M = j; E; )
switch (S = I, I = xe()) {
case 40:
if (S != 108 && ue(M, m - 1) == 58) {
er(M += H(yt(I), "&", "&\f"), "&\f") != -1 && (O = -1);
break;
}
case 34:
case 39:
case 91:
M += yt(I);
break;
case 9:
case 10:
case 13:
case 32:
M += ua(S);
break;
case 92:
M += da(gt() - 1, 7);
continue;
case 47:
switch (ke()) {
case 42:
case 47:
ft(ha(fa(xe(), gt()), t, r), d);
break;
default:
M += "/";
}
break;
case 123 * s:
l[p++] = Ee(M) * O;
case 125 * s:
case 59:
case 0:
switch (I) {
case 0:
case 125:
E = 0;
case 59 + h:
O == -1 && (M = H(M, /\f/g, "")), k > 0 && Ee(M) - m && ft(k > 32 ? Ir(M + ";", n, r, m - 1) : Ir(H(M, " ", "") + ";", n, r, m - 2), d);
break;
case 59:
M += ";";
default:
if (ft(z = Nr(M, t, r, p, h, o, l, j, P = [], v = [], m), a), I === 123)
if (h === 0)
bt(M, t, z, z, P, a, m, l, v);
else
switch (y === 99 && ue(M, 3) === 110 ? 100 : y) {
case 100:
case 108:
case 109:
case 115:
bt(e, z, z, n && ft(Nr(e, z, z, 0, 0, o, l, j, o, P = [], m), v), o, v, m, l, n ? P : v);
break;
default:
bt(M, z, z, z, [""], v, 0, l, v);
}
}
p = h = k = 0, s = O = 1, j = M = "", m = c;
break;
case 58:
m = 1 + Ee(M), k = S;
default:
if (s < 1) {
if (I == 123)
--s;
else if (I == 125 && s++ == 0 && la() == 125)
continue;
}
switch (M += Mt(I), I * s) {
case 38:
O = h > 0 ? 1 : (M += "\f", -1);
break;
case 44:
l[p++] = (Ee(M) - 1) * O, O = 1;
break;
case 64:
ke() === 45 && (M += yt(xe())), y = ke(), h = m = Ee(j = M += pa(gt())), I++;
break;
case 45:
S === 45 && Ee(M) == 2 && (s = 0);
}
}
return a;
}
function Nr(e, t, r, n, o, a, c, l, d, p, h) {
for (var m = o - 1, y = o === 0 ? a : [""], k = dr(y), S = 0, s = 0, E = 0; S < n; ++S)
for (var O = 0, I = nt(e, m + 1, m = na(s = c[S])), j = e; O < k; ++O)
(j = fn(s > 0 ? y[O] + " " + I : H(I, /&\f/g, y[O]))) && (d[E++] = j);
return zt(e, t, r, o === 0 ? lr : l, d, p, h);
}
function ha(e, t, r) {
return zt(e, t, r, un, Mt(ca()), nt(e, 2, -2), 0);
}
function Ir(e, t, r, n) {
return zt(e, t, r, ur, nt(e, 0, n), nt(e, n + 1, -1), n);
}
function He(e, t) {
for (var r = "", n = dr(e), o = 0; o < n; o++)
r += t(e[o], o, e, t) || "";
return r;
}
function ga(e, t, r, n) {
switch (e.type) {
case ra:
if (e.children.length) break;
case ta:
case ur:
return e.return = e.return || e.value;
case un:
return "";
case dn:
return e.return = e.value + "{" + He(e.children, n) + "}";
case lr:
e.value = e.props.join(",");
}
return Ee(r = He(e.children, n)) ? e.return = e.value + "{" + r + "}" : "";
}
function ya(e) {
var t = dr(e);
return function(r, n, o, a) {
for (var c = "", l = 0; l < t; l++)
c += e[l](r, n, o, a) || "";
return c;
};
}
function ba(e) {
return function(t) {
t.root || (t = t.return) && e(t);
};
}
function gn(e) {
var t = /* @__PURE__ */ Object.create(null);
return function(r) {
return t[r] === void 0 && (t[r] = e(r)), t[r];
};
}
var xa = function(t, r, n) {
for (var o = 0, a = 0; o = a, a = ke(), o === 38 && a === 12 && (r[n] = 1), !ot(a); )
xe();
return lt(t, ge);
}, va = function(t, r) {
var n = -1, o = 44;
do
switch (ot(o)) {
case 0:
o === 38 && ke() === 12 && (r[n] = 1), t[n] += xa(ge - 1, r, n);
break;
case 2:
t[n] += yt(o);
break;
case 4:
if (o === 44) {
t[++n] = ke() === 58 ? "&\f" : "", r[n] = t[n].length;
break;
}
default:
t[n] += Mt(o);
}
while (o = xe());
return t;
}, wa = function(t, r) {
return hn(va(mn(t), r));
}, Mr = /* @__PURE__ */ new WeakMap(), Sa = function(t) {
if (!(t.type !== "rule" || !t.parent || // positive .length indicates that this rule contains pseudo
// negative .length indicates that this rule has been already prefixed
t.length < 1)) {
for (var r = t.value, n = t.parent, o = t.column === n.column && t.line === n.line; n.type !== "rule"; )
if (n = n.parent, !n) return;
if (!(t.props.length === 1 && r.charCodeAt(0) !== 58 && !Mr.get(n)) && !o) {
Mr.set(t, !0);
for (var a = [], c = wa(r, a), l = n.props, d = 0, p = 0; d < c.length; d++)
for (var h = 0; h < l.length; h++, p++)
t.props[p] = a[d] ? c[d].replace(/&\f/g, l[h]) : l[h] + " " + c[d];
}
}
}, Ca = function(t) {
if (t.type === "decl") {
var r = t.value;
// charcode for l
r.charCodeAt(0) === 108 && // charcode for b
r.charCodeAt(2) === 98 && (t.return = "", t.value = "");
}
};
function yn(e, t) {
switch (aa(e, t)) {
case 5103:
return Y + "print-" + e + e;
case 5737:
case 4201:
case 3177:
case 3433:
case 1641:
case 4457:
case 2921:
case 5572:
case 6356:
case 5844:
case 3191:
case 6645:
case 3005:
case 6391:
case 5879:
case 5623:
case 6135:
case 4599:
case 4855:
case 4215:
case 6389:
case 5109:
case 5365:
case 5621:
case 3829:
return Y + e + e;
case 5349:
case 4246:
case 4810:
case 6968:
case 2756:
return Y + e + St + e + fe + e + e;
case 6828:
case 4268:
return Y + e + fe + e + e;
case 6165:
return Y + e + fe + "flex-" + e + e;
case 5187:
return Y + e + H(e, /(\w+).+(:[^]+)/, Y + "box-$1$2" + fe + "flex-$1$2") + e;
case 5443:
return Y + e + fe + "flex-item-" + H(e, /flex-|-self/, "") + e;
case 4675:
return Y + e + fe + "flex-line-pack" + H(e, /align-content|flex-|-self/, "") + e;
case 5548:
return Y + e + fe + H(e, "shrink", "negative") + e;
case 5292:
return Y + e + fe + H(e, "basis", "preferred-size") + e;
case 6060:
return Y + "box-" + H(e, "-grow", "") + Y + e + fe + H(e, "grow", "positive") + e;
case 4554:
return Y + H(e, /([^-])(transform)/g, "$1" + Y + "$2") + e;
case 6187:
return H(H(H(e, /(zoom-|grab)/, Y + "$1"), /(image-set)/, Y + "$1"), e, "") + e;
case 5495:
case 3959:
return H(e, /(image-set\([^]*)/, Y + "$1$`$1");
case 4968:
return H(H(e, /(.+:)(flex-)?(.*)/, Y + "box-pack:$3" + fe + "flex-pack:$3"), /s.+-b[^;]+/, "justify") + Y + e + e;
case 4095:
case 3583:
case 4068:
case 2532:
return H(e, /(.+)-inline(.+)/, Y + "$1$2") + e;
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 (Ee(e) - 1 - t > 6) switch (ue(e, t + 1)) {
case 109:
if (ue(e, t + 4) !== 45) break;
case 102:
return H(e, /(.+:)(.+)-([^]+)/, "$1" + Y + "$2-$3$1" + St + (ue(e, t + 3) == 108 ? "$3" : "$2-$3")) + e;
case 115:
return ~er(e, "stretch") ? yn(H(e, "stretch", "fill-available"), t) + e : e;
}
break;
case 4949:
if (ue(e, t + 1) !== 115) break;
case 6444:
switch (ue(e, Ee(e) - 3 - (~er(e, "!important") && 10))) {
case 107:
return H(e, ":", ":" + Y) + e;
case 101:
return H(e, /(.+:)([^;!]+)(;|!.+)?/, "$1" + Y + (ue(e, 14) === 45 ? "inline-" : "") + "box$3$1" + Y + "$2$3$1" + fe + "$2box$3") + e;
}
break;
case 5936:
switch (ue(e, t + 11)) {
case 114:
return Y + e + fe + H(e, /[svh]\w+-[tblr]{2}/, "tb") + e;
case 108:
return Y + e + fe + H(e, /[svh]\w+-[tblr]{2}/, "tb-rl") + e;
case 45:
return Y + e + fe + H(e, /[svh]\w+-[tblr]{2}/, "lr") + e;
}
return Y + e + fe + e + e;
}
return e;
}
var Ea = function(t, r, n, o) {
if (t.length > -1 && !t.return) switch (t.type) {
case ur:
t.return = yn(t.value, t.length);
break;
case dn:
return He([Qe(t, {
value: H(t.value, "@", "@" + Y)
})], o);
case lr:
if (t.length) return sa(t.props, function(a) {
switch (ia(a, /(::plac\w+|:read-\w+)/)) {
case ":read-only":
case ":read-write":
return He([Qe(t, {
props: [H(a, /:(read-\w+)/, ":" + St + "$1")]
})], o);
case "::placeholder":
return He([Qe(t, {
props: [H(a, /:(plac\w+)/, ":" + Y + "input-$1")]
}), Qe(t, {
props: [H(a, /:(plac\w+)/, ":" + St + "$1")]
}), Qe(t, {
props: [H(a, /:(plac\w+)/, fe + "input-$1")]
})], o);
}
return "";
});
}
}, Ta = [Ea], ka = function(t) {
var r = t.key;
if (r === "css") {
var n = document.querySelectorAll("style[data-emotion]:not([data-s])");
Array.prototype.forEach.call(n, function(s) {
var E = s.getAttribute("data-emotion");
E.indexOf(" ") !== -1 && (document.head.appendChild(s), s.setAttribute("data-s", ""));
});
}
var o = t.stylisPlugins || Ta, a = {}, c, l = [];
c = t.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^="' + r + ' "]'),
function(s) {
for (var E = s.getAttribute("data-emotion").split(" "), O = 1; O < E.length; O++)
a[E[O]] = !0;
l.push(s);
}
);
var d, p = [Sa, Ca];
{
var h, m = [ga, ba(function(s) {
h.insert(s);
})], y = ya(p.concat(o, m)), k = function(E) {
return He(ma(E), y);
};
d = function(E, O, I, j) {
h = I, k(E ? E + "{" + O.styles + "}" : O.styles), j && (S.inserted[O.name] = !0);
};
}
var S = {
key: r,
sheet: new ea({
key: r,
container: c,
nonce: t.nonce,
speedy: t.speedy,
prepend: t.prepend,
insertionPoint: t.insertionPoint
}),
nonce: t.nonce,
inserted: a,
registered: {},
insert: d
};
return S.sheet.hydrate(l), S;
}, Oa = !0;
function _a(e, t, r) {
var n = "";
return r.split(" ").forEach(function(o) {
e[o] !== void 0 ? t.push(e[o] + ";") : o && (n += o + " ");
}), n;
}
var bn = function(t, r, n) {
var o = t.key + "-" + r.name;
// we only need to add the styles to the registered cache if the
// class name could be used further down
// the tree but if it's a string tag, we know it won't
// so we don't have to add it to registered cache.
// this improves memory usage since we can avoid storing the whole style string
(n === !1 || // we need to always store it if we're in compat mode and
// in node since emotion-server relies on whether a style is in
// the registered cache to know whether a style is global or not
// also, note that this check will be dead code eliminated in the browser
Oa === !1) && t.registered[o] === void 0 && (t.registered[o] = r.styles);
}, Ra = function(t, r, n) {
bn(t, r, n);
var o = t.key + "-" + r.name;
if (t.inserted[r.name] === void 0) {
var a = r;
do
t.insert(r === a ? "." + o : "", a, t.sheet, !0), a = a.next;
while (a !== void 0);
}
};
function Pa(e) {
for (var t = 0, r, n = 0, o = e.length; o >= 4; ++n, o -= 4)
r = e.charCodeAt(n) & 255 | (e.charCodeAt(++n) & 255) << 8 | (e.charCodeAt(++n) & 255) << 16 | (e.charCodeAt(++n) & 255) << 24, r = /* Math.imul(k, m): */
(r & 65535) * 1540483477 + ((r >>> 16) * 59797 << 16), r ^= /* k >>> r: */
r >>> 24, t = /* Math.imul(k, m): */
(r & 65535) * 1540483477 + ((r >>> 16) * 59797 << 16) ^ /* Math.imul(h, m): */
(t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16);
switch (o) {
case 3:
t ^= (e.charCodeAt(n + 2) & 255) << 16;
case 2:
t ^= (e.charCodeAt(n + 1) & 255) << 8;
case 1:
t ^= e.charCodeAt(n) & 255, t = /* Math.imul(h, m): */
(t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16);
}
return t ^= t >>> 13, t = /* Math.imul(h, m): */
(t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16), ((t ^ t >>> 15) >>> 0).toString(36);
}
var Aa = {
animationIterationCount: 1,
aspectRatio: 1,
borderImageOutset: 1,
borderImageSlice: 1,
borderImageWidth: 1,
boxFlex: 1,
boxFlexGroup: 1,
boxOrdinalGroup: 1,
columnCount: 1,
columns: 1,
flex: 1,
flexGrow: 1,
flexPositive: 1,
flexShrink: 1,
flexNegative: 1,
flexOrder: 1,
gridRow: 1,
gridRowEnd: 1,
gridRowSpan: 1,
gridRowStart: 1,
gridColumn: 1,
gridColumnEnd: 1,
gridColumnSpan: 1,
gridColumnStart: 1,
msGridRow: 1,
msGridRowSpan: 1,
msGridColumn: 1,
msGridColumnSpan: 1,
fontWeight: 1,
lineHeight: 1,
opacity: 1,
order: 1,
orphans: 1,
scale: 1,
tabSize: 1,
widows: 1,
zIndex: 1,
zoom: 1,
WebkitLineClamp: 1,
// SVG-related properties
fillOpacity: 1,
floodOpacity: 1,
stopOpacity: 1,
strokeDasharray: 1,
strokeDashoffset: 1,
strokeMiterlimit: 1,
strokeOpacity: 1,
strokeWidth: 1
}, ja = /[A-Z]|^ms/g, $a = /_EMO_([^_]+?)_([^]*?)_EMO_/g, xn = function(t) {
return t.charCodeAt(1) === 45;
}, Dr = function(t) {
return t != null && typeof t != "boolean";
}, Ht = /* @__PURE__ */ gn(function(e) {
return xn(e) ? e : e.replace(ja, "-$&").toLowerCase();
}), zr = function(t, r) {
switch (t) {
case "animation":
case "animationName":
if (typeof r == "string")
return r.replace($a, function(n, o, a) {
return Te = {
name: o,
styles: a,
next: Te
}, o;
});
}
return Aa[t] !== 1 && !xn(t) && typeof r == "number" && r !== 0 ? r + "px" : r;
};
function at(e, t, r) {
if (r == null)
return "";
var n = r;
if (n.__emotion_styles !== void 0)
return n;
switch (typeof r) {
case "boolean":
return "";
case "object": {
var o = r;
if (o.anim === 1)
return Te = {
name: o.name,
styles: o.styles,
next: Te
}, o.name;
var a = r;
if (a.styles !== void 0) {
var c = a.next;
if (c !== void 0)
for (; c !== void 0; )
Te = {
name: c.name,
styles: c.styles,
next: Te
}, c = c.next;
var l = a.styles + ";";
return l;
}
return Na(e, t, r);
}
case "function": {
if (e !== void 0) {
var d = Te, p = r(e);
return Te = d, at(e, t, p);
}
break;
}
}
var h = r;
if (t == null)
return h;
var m = t[h];
return m !== void 0 ? m : h;
}
function Na(e, t, r) {
var n = "";
if (Array.isArray(r))
for (var o = 0; o < r.length; o++)
n += at(e, t, r[o]) + ";";
else
for (var a in r) {
var c = r[a];
if (typeof c != "object") {
var l = c;
t != null && t[l] !== void 0 ? n += a + "{" + t[l] + "}" : Dr(l) && (n += Ht(a) + ":" + zr(a, l) + ";");
} else if (Array.isArray(c) && typeof c[0] == "string" && (t == null || t[c[0]] === void 0))
for (var d = 0; d < c.length; d++)
Dr(c[d]) && (n += Ht(a) + ":" + zr(a, c[d]) + ";");
else {
var p = at(e, t, c);
switch (a) {
case "animation":
case "animationName": {
n += Ht(a) + ":" + p + ";";
break;
}
default:
n += a + "{" + p + "}";
}
}
}
return n;
}
var Br = /label:\s*([^\s;{]+)\s*(;|$)/g, Te;
function vn(e, t, r) {
if (e.length === 1 && typeof e[0] == "object" && e[0] !== null && e[0].styles !== void 0)
return e[0];
var n = !0, o = "";
Te = void 0;
var a = e[0];
if (a == null || a.raw === void 0)
n = !1, o += at(r, t, a);
else {
var c = a;
o += c[0];
}
for (var l = 1; l < e.length; l++)
if (o += at(r, t, e[l]), n) {
var d = a;
o += d[l];
}
Br.lastIndex = 0;
for (var p = "", h; (h = Br.exec(o)) !== null; )
p += "-" + h[1];
var m = Pa(o) + p;
return {
name: m,
styles: o,
next: Te
};
}
var Ia = function(t) {
return t();
}, Ma = de.useInsertionEffect ? de.useInsertionEffect : !1, Da = Ma || Ia, wn = /* @__PURE__ */ de.createContext(
// we're doing this to avoid preconstruct's dead code elimination in this one case
// because this module is primarily intended for the browser and node
// but it's also required in react native and similar environments sometimes
// and we could have a special build just for that
// but this is much easier and the native packages
// might use a different theme context in the future anyway
typeof HTMLElement < "u" ? /* @__PURE__ */ ka({
key: "css"
}) : null
);
wn.Provider;
var za = function(t) {
return /* @__PURE__ */ zn(function(r, n) {
var o = Bn(wn);
return t(r, o, n);
});
}, Ba = /* @__PURE__ */ de.createContext({}), La = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/, Fa = /* @__PURE__ */ gn(
function(e) {
return La.test(e) || e.charCodeAt(0) === 111 && e.charCodeAt(1) === 110 && e.charCodeAt(2) < 91;
}
/* Z+1 */
), Va = Fa, Ua = function(t) {
return t !== "theme";
}, Lr = function(t) {
return typeof t == "string" && // 96 is one less than the char code
// for "a" so this is checking that
// it's a lowercase character
t.charCodeAt(0) > 96 ? Va : Ua;
}, Fr = function(t, r, n) {
var o;
if (r) {
var a = r.shouldForwardProp;
o = t.__emotion_forwardProp && a ? function(c) {
return t.__emotion_forwardProp(c) && a(c);
} : a;
}
return typeof o != "function" && n && (o = t.__emotion_forwardProp), o;
}, Wa = function(t) {
var r = t.cache, n = t.serialized, o = t.isStringTag;
return bn(r, n, o), Da(function() {
return Ra(r, n, o);
}), null;
}, Ya = function e(t, r) {
var n = t.__emotion_real === t, o = n && t.__emotion_base || t, a, c;
r !== void 0 && (a = r.label, c = r.target);
var l = Fr(t, r, n), d = l || Lr(o), p = !d("as");
return function() {
var h = arguments, m = n && t.__emotion_styles !== void 0 ? t.__emotion_styles.slice(0) : [];
if (a !== void 0 && m.push("label:" + a + ";"), h[0] == null || h[0].raw === void 0)
m.push.apply(m, h);
else {
var y = h[0];
m.push(y[0]);
for (var k = h.length, S = 1; S < k; S++)
m.push(h[S], y[S]);
}
var s = za(function(E, O, I) {
var j = p && E.as || o, P = "", v = [], z = E;
if (E.theme == null) {
z = {};
for (var M in E)
z[M] = E[M];
z.theme = de.useContext(Ba);
}
typeof E.className == "string" ? P = _a(O.registered, v, E.className) : E.className != null && (P = E.className + " ");
var K = vn(m.concat(v), O.registered, z);
P += O.key + "-" + K.name, c !== void 0 && (P += " " + c);
var te = p && l === void 0 ? Lr(j) : d, i = {};
for (var A in E)
p && A === "as" || te(A) && (i[A] = E[A]);
return i.className = P, I && (i.ref = I), /* @__PURE__ */ de.createElement(de.Fragment, null, /* @__PURE__ */ de.createElement(Wa, {
cache: O,
serialized: K,
isStringTag: typeof j == "string"
}), /* @__PURE__ */ de.createElement(j, i));
});
return s.displayName = a !== void 0 ? a : "Styled(" + (typeof o == "string" ? o : o.displayName || o.name || "Component") + ")", s.defaultProps = t.defaultProps, s.__emotion_real = s, s.__emotion_base = o, s.__emotion_styles = m, s.__emotion_forwardProp = l, Object.defineProperty(s, "toString", {
value: function() {
return "." + c;
}
}), s.withComponent = function(E, O) {
var I = e(E, Zt({}, r, O, {
shouldForwardProp: Fr(s, O, !0)
}));
return I.apply(void 0, m);
}, s;
};
}, Ha = [
"a",
"abbr",
"address",
"area",
"article",
"aside",
"audio",
"b",
"base",
"bdi",
"bdo",
"big",
"blockquote",
"body",
"br",
"button",
"canvas",
"caption",
"cite",
"code",
"col",
"colgroup",
"data",
"datalist",
"dd",
"del",
"details",
"dfn",
"dialog",
"div",
"dl",
"dt",
"em",
"embed",
"fieldset",
"figcaption",
"figure",
"footer",
"form",
"h1",
"h2",
"h3",
"h4",
"h5",
"h6",
"head",
"header",
"hgroup",
"hr",
"html",
"i",
"iframe",
"img",
"input",
"ins",
"kbd",
"keygen",
"label",
"legend",
"li",
"link",
"main",
"map",
"mark",
"marquee",
"menu",
"menuitem",
"meta",
"meter",
"nav",
"noscript",
"object",
"ol",
"optgroup",
"option",
"output",
"p",
"param",
"picture",
"pre",
"progress",
"q",
"rp",
"rt",
"ruby",
"s",
"samp",
"script",
"section",
"select",
"small",
"source",
"span",
"strong",
"style",
"sub",
"summary",
"sup",
"table",
"tbody",
"td",
"textarea",
"tfoot",
"th",
"thead",
"time",
"title",
"tr",
"track",
"u",
"ul",
"var",
"video",
"wbr",
// SVG
"circle",
"clipPath",
"defs",
"ellipse",
"foreignObject",
"g",
"image",
"line",
"linearGradient",
"mask",
"path",
"pattern",
"polygon",
"polyline",
"radialGradient",
"rect",
"stop",
"svg",
"text",
"tspan"
], rr = Ya.bind(null);
Ha.forEach(function(e) {
rr[e] = rr(e);
});
/**
* @mui/styled-engine v7.1.1
*
* @license MIT
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
function Ga(e, t) {
const r = rr(e, t);
return process.env.NODE_ENV !== "production" ? (...n) => {
const o = typeof e == "string" ? `"${e}"` : "component";
return n.length === 0 ? console.error([`MUI: Seems like you called \`styled(${o})()\` without a \`style\` argument.`, 'You must provide a `styles` argument: `styled("div")(styleYouForgotToPass)`.'].join(`
`)) : n.some((a) => a === void 0) && console.error(`MUI: the styled(${o})(...args) API requires all its args to be defined.`), r(...n);
} : r;
}
function qa(e, t) {
Array.isArray(e.__emotion_styles) && (e.__emotion_styles = t(e.__emotion_styles));
}
const Vr = [];
function Ur(e) {
return Vr[0] = e, vn(Vr);
}
const Ka = (e) => {
const t = Object.keys(e).map((r) => ({
key: r,
val: e[r]
})) || [];
return t.sort((r, n) => r.val - n.val), t.reduce((r, n) => ({
...r,
[n.key]: n.val
}), {});
};
function Xa(e) {
const {
// The breakpoint **start** at this value.
// For instance with the first breakpoint xs: [xs, sm).
values: t = {
xs: 0,
// phone
sm: 600,
// tablet
md: 900,
// small laptop
lg: 1200,
// desktop
xl: 1536
// large screen
},
unit: r = "px",
step: n = 5,
...o
} = e, a = Ka(t), c = Object.keys(a);
function l(y) {
return `@media (min-width:${typeof t[y] == "number" ? t[y] : y}${r})`;
}
function d(y) {
return `@media (max-width:${(typeof t[y] == "number" ? t[y] : y) - n / 100}${r})`;
}
function p(y, k) {
const S = c.indexOf(k);
return `@media (min-width:${typeof t[y] == "number" ? t[y] : y}${r}) and (max-width:${(S !== -1 && typeof t[c[S]] == "number" ? t[c[S]] : k) - n / 100}${r})`;
}
function h(y) {
return c.indexOf(y) + 1 < c.length ? p(y, c[c.indexOf(y) + 1]) : l(y);
}
function m(y) {
const k = c.indexOf(y);
return k === 0 ? l(c[1]) : k === c.length - 1 ? d(c[k]) : p(y, c[c.indexOf(y) + 1]).replace("@media", "@media not all and");
}
return {
keys: c,
values: a,
up: l,
down: d,
between: p,
only: h,
not: m,
unit: r,
...o
};
}
const Ja = {
borderRadius: 4
};
function Sn(e = 8, t = sr({
spacing: e
})) {
if (e.mui)
return e;
const r = (...n) => (process.env.NODE_ENV !== "production" && (n.length <= 4 || console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${n.length}`)), (n.length === 0 ? [1] : n).map((a) => {
const c = t(a);
return typeof c == "number" ? `${c}px` : c;
}).join(" "));
return r.mui = !0, r;
}
function Qa(e, t) {
var n;
const r = this;
if (r.vars) {
if (!((n = r.colorSchemes) != null && n[e]) || typeof r.getColorSchemeSelector != "function")
return {};
let o = r.getColorSchemeSelector(e);
return o === "&" ? t : ((o.includes("data-") || o.includes(".")) && (o = `*:where(${o.replace(/\s*&$/, "")}) &`), {
[o]: t
});
}
return r.palette.mode === e ? t : {};
}
function Cn(e = {}, ...t) {
const {
breakpoints: r = {},
palette: n = {},
spacing: o,
shape: a = {},
...c
} = e, l = Xa(r), d = Sn(o);
let p = be({
breakpoints: l,
direction: "ltr",
components: {},
// Inject component definitions.
palette: {
mode: "light",
...n
},
spacing: d,
shape: {
...Ja,
...a
}
}, c);
return p = so(p), p.applyStyles = Qa, p = t.reduce((h, m) => be(h, m), p), p.unstable_sxConfig = {
...It,
...c == null ? void 0 : c.unstable_sxConfig
}, p.unstable_sx = function(m) {
return Ge({
sx: m,
theme: this
});
}, p;
}
const Za = {
active: "active",
checked: "checked",
completed: "completed",
disabled: "disabled",
error: "error",
expanded: "expanded",
focused: "focused",
focusVisible: "focusVisible",
open: "open",
readOnly: "readOnly",
required: "required",
selected: "selected"
};
function fr(e, t, r = "Mui") {
const n = Za[t];
return n ? `${r}-${n}` : `${Wn.generate(e)}-${t}`;
}
function ei(e, t, r = "Mui") {
const n = {};
return t.forEach((o) => {
n[o] = fr(e, o, r);
}), n;
}
function En(e, t = "") {
return e.displayName || e.name || t;
}
function Wr(e, t, r) {
const n = En(t);
return e.displayName || (n !== "" ? `${r}(${n})` : r);
}
function ti(e) {
if (e != null) {
if (typeof e == "string")
return e;
if (typeof e == "function")
return En(e, "Component");
if (typeof e == "object")
switch (e.$$typeof) {
case vt.ForwardRef:
return Wr(e, e.render, "ForwardRef");
case vt.Memo:
return Wr(e, e.type, "memo");
default:
return;
}
}
}
function Tn(e) {
const {
variants: t,
...r
} = e, n = {
variants: t,
style: Ur(r),
isProcessed: !0
};
return n.style === r || t && t.forEach((o) => {
typeof o.style != "function" && (o.style = Ur(o.style));
}), n;
}
const ri = Cn();
function Gt(e) {
return e !== "ownerState" && e !== "theme" && e !== "sx" && e !== "as";
}
function ni(e) {
return e ? (t, r) => r[e] : null;
}
function oi(e, t, r) {
e.theme = ci(e.theme) ? r : e.theme[t] || e.theme;
}
function xt(e, t) {
const r = typeof t == "function" ? t(e) : t;
if (Array.isArray(r))
return r.flatMap((n) => xt(e, n));
if (Array.isArray(r == null ? void 0 : r.variants)) {
let n;
if (r.isProcessed)
n = r.style;
else {
const {
variants: o,
...a
} = r;
n = a;
}
return kn(e, r.variants, [n]);
}
return r != null && r.isProcessed ? r.style : r;
}
function kn(e, t, r = []) {
var o;
let n;
e: for (let a = 0; a < t.length; a += 1) {
const c = t[a];
if (typeof c.props == "function") {
if (n ?? (n = {
...e,
...e.ownerState,
ownerState: e.ownerState
}), !c.props(n))
continue;
} else
for (const l in c.props)
if (e[l] !== c.props[l] && ((o = e.ownerState) == null ? void 0 : o[l]) !== c.props[l])
continue e;
typeof c.style == "function" ? (n ?? (n = {
...e,
...e.ownerState,
ownerState: e.ownerState
}), r.push(c.style(n))) : r.push(c.style);
}
return r;
}
function ai(e = {}) {
const {
themeId: t,
defaultTheme: r = ri,
rootShouldForwardProp: n = Gt,
slotShouldForwardProp: o = Gt
} = e;
function a(l) {
oi(l, t, r);
}
return (l, d = {}) => {
qa(l, (v) => v.filter((z) => z !== Ge));
const {
name: p,
slot: h,
skipVariantsResolver: m,
skipSx: y,
// TODO v6: remove `lowercaseFirstLetter()` in the next major release
// For more details: https://github.com/mui/material-ui/pull/37908
overridesResolver: k = ni(On(h)),
...S
} = d, s = m !== void 0 ? m : (
// TODO v6: remove `Root` in the next major release
// For more details: https://github.com/mui/material-ui/pull/37908
h && h !== "Root" && h !== "root" || !1
), E = y || !1;
let O = Gt;
h === "Root" || h === "root" ? O = n : h ? O = o : li(l) && (O = void 0);
const I = Ga(l, {
shouldForwardProp: O,
label: si(p, h),
...S
}), j = (v) => {
if (v.__emotion_real === v)
return v;
if (typeof v == "function")
return function(M) {
return xt(M, v);
};
if (Re(v)) {
const z = Tn(v);
return z.variants ? function(K) {
return xt(K, z);
} : z.style;
}
return v;
}, P = (...v) => {
const z = [], M = v.map(j), K = [];
if (z.push(a), p && k && K.push(function(B) {
var Q, le;
const U = (le = (Q = B.theme.components) == null ? void 0 : Q[p]) == null ? void 0 : le.styleOverrides;
if (!U)
return null;
const oe = {};
for (const me in U)
oe[me] = xt(B, U[me]);
return k(B, oe);
}), p && !s && K.push(function(B) {
var oe, Q;
const V = B.theme, U = (Q = (oe = V == null ? void 0 : V.components) == null ? void 0 : oe[p]) == null ? void 0 : Q.variants;
return U ? kn(B, U) : null;
}), E || K.push(Ge), Array.isArray(M[0])) {
const A = M.shift(), B = new Array(z.length).fill(""), V = new Array(K.length).fill("");
let U;
U = [...B, ...A, ...V], U.raw = [...B, ...A.raw, ...V], z.unshift(U);
}
const te = [...z, ...M, ...K], i = I(...te);
return l.muiName && (i.muiName = l.muiName), process.env.NODE_ENV !== "production" && (i.displayName = ii(p, h, l)), i;
};
return I.withConfig && (P.withConfig = I.withConfig), P;
};
}
function ii(e, t, r) {
return e ? `${e}${ze(t || "")}` : `Styled(${ti(r)})`;
}
function si(e, t) {
let r;
return process.env.NODE_ENV !== "production" && e && (r = `${e}-${On(t || "Root")}`), r;
}
function ci(e) {
for (const t in e)
return !1;
return !0;
}
function li(e) {
return typeof e == "string" && // 96 is one less than the char code
// for "a" so this is checking that
// it's a lowercase character
e.charCodeAt(0) > 96;
}
function On(e) {
return e && e.charAt(0).toLowerCase() + e.slice(1);
}
function nr(e, t) {
const r = {
...t
};
for (const n in e)
if (Object.prototype.hasOwnProperty.call(e, n)) {
const o = n;
if (o === "components" || o === "slots")
r[o] = {
...e[o],
...r[o]
};
else if (o === "componentsProps" || o === "slotProps") {
const a = e[o], c = t[o];
if (!c)
r[o] = a || {};
else if (!a)
r[o] = c;
else {
r[o] = {
...c
};
for (const l in a)
if (Object.prototype.hasOwnProperty.call(a, l)) {
const d = l;
r[o][d] = nr(a[d], c[d]);
}
}
} else r[o] === void 0 && (r[o] = e[o]);
}
return r;
}
function ui(e, t = Number.MIN_SAFE_INTEGER, r = Number.MAX_SAFE_INTEGER) {
return Math.max(t, Math.min(e, r));
}
function pr(e, t = 0, r = 1) {
return process.env.NODE_ENV !== "production" && (e < t || e > r) && console.error(`MUI: The value provided ${e} is out of range [${t}, ${r}].`), ui(e, t, r);
}
function di(e) {
e = e.slice(1);
const t = new RegExp(`.{1,${e.length >= 6 ? 2 : 1}}`, "g");
let r = e.match(t);
return r && r[0].length === 1 && (r = r.map((n) => n + n)), process.env.NODE_ENV !== "production" && e.length !== e.trim().length && console.error(`MUI: The color: "${e}" is invalid. Make sure the color input doesn't contain leading/trailing space.`), r ? `rgb${r.length === 4 ? "a" : ""}(${r.map((n, o) => o < 3 ? parseInt(n, 16) : Math.round(parseInt(n, 16) / 255 * 1e3) / 1e3).join(", ")})` : "";
}
function Ie(e) {
if (e.type)
return e;
if (e.charAt(0) === "#")
return Ie(di(e));
const t = e.indexOf("("), r = e.substring(0, t);
if (!["rgb", "rgba", "hsl", "hsla", "color"].includes(r))
throw new Error(process.env.NODE_ENV !== "production" ? `MUI: Unsupported \`${e}\` color.
The following formats are supported: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().` : Ne(9, e));
let n = e.substring(t + 1, e.length - 1), o;
if (r === "color") {
if (n = n.split(" "), o = n.shift(), n.length === 4 && n[3].charAt(0) === "/" && (n[3] = n[3].slice(1)), !["srgb", "display-p3", "a98-rgb", "prophoto-rgb", "rec-2020"].includes(o))
throw new Error(process.env.NODE_ENV !== "production" ? `MUI: unsupported \`${o}\` color space.
The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rgb, rec-2020.` : Ne(10, o));
} else
n = n.split(",");
return n = n.map((a) => parseFloat(a)), {
type: r,
values: n,
colorSpace: o
};
}
const fi = (e) => {
const t = Ie(e);
return t.values.slice(0, 3).map((r, n) => t.type.includes("hsl") && n !== 0 ? `${r}%` : r).join(" ");
}, et = (e, t) => {
try {
return fi(e);
} catch {
return t && process.env.NODE_ENV !== "production" && console.warn(t), e;
}
};
function Bt(e) {
const {
type: t,
colorSpace: r
} = e;
let {
values: n
} = e;
return t.includes("rgb") ? n = n.map((o, a) => a < 3 ? parseInt(o, 10) : o) : t.includes("hsl") && (n[1] = `${n[1]}%`, n[2] = `${n[2]}%`), t.includes("color") ? n = `${r} ${n.join(" ")}` : n = `${n.join(", ")}`, `${t}(${n})`;
}
function _n(e) {
e = Ie(e);
const {
values: t
} = e, r = t[0], n = t[1] / 100, o = t[2] / 100, a = n * Math.min(o, 1 - o), c = (p, h = (p + r / 30) % 12) => o - a * Math.max(Math.min(h - 3, 9 - h, 1), -1);
let l = "rgb";
const d = [Math.round(c(0) * 255), Math.round(c(8) * 255), Math.round(c(4) * 255)];
return e.type === "hsla" && (l += "a", d.push(t[3])), Bt({
type: l,
values: d
});
}
function or(e) {
e = Ie(e);
let t = e.type === "hsl" || e.type === "hsla" ? Ie(_n(e)).values : e.values;
return t = t.map((r) => (e.type !== "color" && (r /= 255), r <= 0.03928 ? r / 12.92 : ((r + 0.055) / 1.055) ** 2.4)), Number((0.2126 * t[0] + 0.7152 * t[1] + 0.0722 * t[2]).toFixed(3));
}
function Yr(e, t) {
const r = or(e), n = or(t);
return (Math.max(r, n) + 0.05) / (Math.min(r, n) + 0.05);
}
function pi(e, t) {
return e = Ie(e), t = pr(t), (e.type === "rgb" || e.type === "hsl") && (e.type += "a"), e.type === "color" ? e.values[3] = `/${t}` : e.values[3] = t, Bt(e);
}
function pt(e, t, r) {
try {
return pi(e, t);
} catch {
return e;
}
}
function mr(e, t) {
if (e = Ie(e), t = pr(t), e.type.includes("hsl"))
e.values[2] *= 1 - t;
else if (e.type.includes("rgb") || e.type.includes("color"))
for (let r = 0; r < 3; r += 1)
e.values[r] *= 1 - t;
return Bt(e);
}
function Z(e, t, r) {
try {
return mr(e, t);
} catch {
return e;
}
}
function hr(e, t) {
if (e = Ie(e), t = pr(t), e.type.includes("hsl"))
e.values[2] += (100 - e.values[2]) * t;
else if (e.type.includes("rgb"))
for (let r = 0; r < 3; r += 1)
e.values[r] += (255 - e.values[r]) * t;
else if (e.type.includes("color"))
for (let r = 0; r < 3; r += 1)
e.values[r] += (1 - e.values[r]) * t;
return Bt(e);
}
function ee(e, t, r) {
try {
return hr(e, t);
} catch {
return e;
}
}
function mi(e, t = 0.15) {
return or(e) > 0.5 ? mr(e, t) : hr(e, t);
}
function mt(e, t, r) {
try {
return mi(e, t);
} catch {
return e;
}
}
const hi = /* @__PURE__ */ de.createContext(void 0);
process.env.NODE_ENV !== "production" && (W.node, W.object);
function gi(e) {
const {
theme: t,
name: r,
props: n
} = e;
if (!t || !t.components || !t.components[r])
return n;
const o = t.components[r];
return o.defaultProps ? nr(o.defaultProps, n) : !o.styleOverrides && !o.variants ? nr(o, n) : n;
}
function yi({
props: e,
name: t
}) {
const r = de.useContext(hi);
return gi({
props: e,
name: t,
theme: {
components: r
}
});
}
const Hr = {
theme: void 0
};
function bi(e) {
let t, r;
return function(o) {
let a = t;
return (a === void 0 || o.theme !== r) && (Hr.theme = o.theme, a = Tn(e(Hr)), t = a, r = o.theme), a;
};
}
function xi(e = "") {
function t(...n) {
if (!n.length)
return "";
const o = n[0];
return typeof o == "string" && !o.match(/(#|\(|\)|(-?(\d*\.)?\d+)(px|em|%|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc))|^(-?(\d*\.)?\d+)$|(\d+ \d+ \d+)/) ? `, var(--${e ? `${e}-` : ""}${o}${t(...n.slice(1))})` : `, ${o}`;
}
return (n, ...o) => `var(--${e ? `${e}-` : ""}${n}${t(...o)})`;
}
const Gr = (e, t, r, n = []) => {
let o = e;
t.forEach((a, c) => {
c === t.length - 1 ? Array.isArray(o) ? o[Number(a)] = r : o && typeof o == "object" && (o[a] = r) : o && typeof o == "object" && (o[a] || (o[a] = n.includes(a) ? [] : {}), o = o[a]);
});
}, vi = (e, t, r) => {
function n(o, a = [], c = []) {
Object.entries(o).forEach(([l, d]) => {
(!r || r && !r([...a, l])) && d != null && (typeof d == "object" && Object.keys(d).length > 0 ? n(d, [...a, l], Array.isArray(d) ? [...c, l] : c) : t([...a, l], d, c));
});
}
n(e);
}, wi = (e, t) => typeof t == "number" ? ["lineHeight", "fontWeight", "opacity", "zIndex"].some((n) => e.includes(n)) || e[e.length - 1].toLowerCase().includes("opacity") ? t : `${t}px` : t;
function qt(e, t) {
const {
prefix: r,
shouldSkipGeneratingVar: n
} = t || {}, o = {}, a = {}, c = {};
return vi(
e,
(l, d, p) => {
if ((typeof d == "string" || typeof d == "number") && (!n || !n(l, d))) {
const h = `--${r ? `${r}-` : ""}${l.join("-")}`, m = wi(l, d);
Object.assign(o, {
[h]: m
}), Gr(a, l, `var(${h})`, p), Gr(c, l, `var(${h}, ${m})`, p);
}
},
(l) => l[0] === "vars"
// skip 'vars/*' paths
), {
css: o,
vars: a,
varsWithDefaults: c
};
}
function Si(e, t = {}) {
const {
getSelector: r = E,
disableCssColorScheme: n,
colorSchemeSelector: o
} = t, {
colorSchemes: a = {},
components: c,
defaultColorScheme: l = "light",
...d
} = e, {
vars: p,
css: h,
varsWithDefaults: m
} = qt(d, t);
let y = m;
const k = {}, {
[l]: S,
...s
} = a;
if (Object.entries(s || {}).forEach(([j, P]) => {
const {
vars: v,
css: z,
varsWithDefaults: M
} = qt(P, t);
y = be(y, M), k[j] = {
css: z,
vars: v
};
}), S) {
const {
css: j,
vars: P,
varsWithDefaults: v
} = qt(S, t);
y = be(y, v), k[l] = {
css: j,
vars: P
};
}
function E(j, P) {
var z, M;
let v = o;
if (o === "class" && (v = ".%s"), o === "data" && (v = "[data-%s]"), o != null && o.startsWith("data-") && !o.includes("%s") && (v = `[${o}="%s"]`), j) {
if (v === "media")
return e.defaultColorScheme === j ? ":root" : {
[`@media (prefers-color-scheme: ${((M = (z = a[j]) == null ? void 0 : z.palette) == null ? void 0 : M.mode) || j})`]: {
":root": P
}
};
if (v)
return e.defaultColorScheme === j ? `:root, ${v.replace("%s", String(j))}` : v.replace("%s", String(j));
}
return ":root";
}
return {
vars: y,
generateThemeVars: () => {
let j = {
...p
};
return Object.entries(k).forEach(([, {
vars: P
}]) => {
j = be(j, P);
}), j;
},
generateStyleSheets: () => {
var K, te;
const j = [], P = e.defaultColorScheme || "light";
function v(i, A) {
Object.keys(A).length && j.push(typeof i == "string" ? {
[i]: {
...A
}
} : i);
}
v(r(void 0, {
...h
}), h);
const {
[P]: z,
...M
} = k;
if (z) {
const {
css: i
} = z, A = (te = (K = a[P]) == null ? void 0 : K.palette) == null ? void 0 : te.mode, B = !n && A ? {
colorScheme: A,
...i
} : {
...i
};
v(r(P, {
...B
}), B);
}
return Object.entries(M).forEach(([i, {
css: A
}]) => {
var U, oe;
const B = (oe = (U = a[i]) == null ? void 0 : U.palette) == null ? void 0 : oe.mode, V = !n && B ? {
colorScheme: B,
...A
} : {
...A
};
v(r(i, {
...V
}), V);
}), j;
}
};
}
function Ci(e) {
return function(r) {
return e === "media" ? (process.env.NODE_ENV !== "production" && r !== "light" && r !== "dark" && console.error(`MUI: @media (prefers-color-scheme) supports only 'light' or 'dark', but receive '${r}'.`), `@media (prefers-color-scheme: ${r})`) : e ? e.startsWith("data-") && !e.includes("%s") ? `[${e}="${r}"] &` : e === "class" ? `.${r} &` : e === "data" ? `[data-${r}] &` : `${e.replace("%s", r)} &` : "&";
};
}
const it = {
black: "#000",
white: "#fff"
}, Ei = {
50: "#fafafa",
100: "#f5f5f5",
200: "#eeeeee",
300: "#e0e0e0",
400: "#bdbdbd",
500: "#9e9e9e",
600: "#757575",
700: "#616161",
800: "#424242",
900: "#212121",
A100: "#f5f5f5",
A200: "#eeeeee",
A400: "#bdbdbd",
A700: "#616161"
}, Le = {
50: "#f3e5f5",
200: "#ce93d8",
300: "#ba68c8",
400: "#ab47bc",
500: "#9c27b0",
700: "#7b1fa2"
}, Fe = {
300: "#e57373",
400: "#ef5350",
500: "#f44336",
700: "#d32f2f",
800: "#c62828"
}, Ze = {
300: "#ffb74d",
400: "#ffa726",
500: "#ff9800",
700: "#f57c00",
900: "#e65100"
}, Ve = {
50: "#e3f2fd",
200: "#90caf9",
400: "#42a5f5",
700: "#1976d2",
800: "#1565c0"
}, Ue = {
300: "#4fc3f7",
400: "#29b6f6",
500: "#03a9f4",
700: "#0288d1",
900: "#01579b"
}, We = {
300: "#81c784",
400: "#66bb6a",
500: "#4caf50",
700: "#388e3c",
800: "#2e7d32",
900: "#1b5e20"
};
function Rn() {
return {
// The colors used to style the text.
text: {
// The most important text.
primary: "rgba(0, 0, 0, 0.87)",
// Secondary text.
secondary: "rgba(0, 0, 0, 0.6)",
// Disabled text have even lower visual prominence.
disabled: "rgba(0, 0, 0, 0.38)"
},
// The color used to divide different elements.
divider: "rgba(0, 0, 0, 0.12)",
// The background colors used to style the surfaces.
// Consistency between these values is important.
background: {
paper: it.white,
default: it.white
},
// The colors used to style the action elements.
action: {
// The color of an active action like an icon button.
active: "rgba(0, 0, 0, 0.54)",
// The color of an hovered action.
hover: "rgba(0, 0, 0, 0.04)",
hoverOpacity: 0.04,
// The color of a selected action.
selected: "rgba(0, 0, 0, 0.08)",
selectedOpacity: 0.08,
// The color of a disabled action.
disabled: "rgba(0, 0, 0, 0.26)",
// The background color of a disabled action.
disabledBackground: "rgba(0, 0, 0, 0.12)",
disabledOpacity: 0.38,
focus: "rgba(0, 0, 0, 0.12)",
focusOpacity: 0.12,
activatedOpacity: 0.12
}
};
}
const Ti = Rn();
function Pn() {
return {
text: {
primary: it.white,
secondary: "rgba(255, 255, 255, 0.7)",
disabled: "rgba(255, 255, 255, 0.5)",
icon: "rgba(255, 255, 255, 0.5)"
},
divider: "rgba(255, 255, 255, 0.12)",
background: {
paper: "#121212",
default: "#121212"
},
action: {
active: it.white,
hover: "rgba(255, 255, 255, 0.08)",
hoverOpacity: 0.08,
selected: "rgba(255, 255, 255, 0.16)",
selectedOpacity: 0.16,
disabled: "rgba(255, 255, 255, 0.3)",
disabledBackground: "rgba(255, 255, 255, 0.12)",
disabledOpacity: 0.38,
focus: "rgba(255, 255, 255, 0.12)",
focusOpacity: 0.12,
activatedOpacity: 0.24
}
};
}
const qr = Pn();
function Kr(e, t, r, n) {
const o = n.light || n, a = n.dark || n * 1.5;
e[t] || (e.hasOwnProperty(r) ? e[t] = e[r] : t === "light" ? e.light = hr(e.main, o) : t === "dark" && (e.dark = mr(e.main, a)));
}
function ki(e = "light") {
return e === "dark" ? {
main: Ve[200],
light: Ve[50],
dark: Ve[400]
} : {
main: Ve[700],
light: Ve[400],
dark: Ve[800]
};
}
function Oi(e = "light") {
return e === "dark" ? {
main: Le[200],
light: Le[50],
dark: Le[400]
} : {
main: Le[500],
light: Le[300],
dark: Le[700]
};
}
function _i(e = "light") {
return e === "dark" ? {
main: Fe[500],
light: Fe[300],
dark: Fe[700]
} : {
main: Fe[700],
light: Fe[400],
dark: Fe[800]
};
}
function Ri(e = "light") {
return e === "dark" ? {
main: Ue[400],
light: Ue[300],
dark: Ue[700]
} : {
main: Ue[700],
light: Ue[500],
dark: Ue[900]
};
}
function Pi(e = "light") {
return e === "dark" ? {
main: We[400],
light: We[300],
dark: We[700]
} : {
main: We[800],
light: We[500],
dark: We[900]
};
}
function Ai(e = "light") {
return e === "dark" ? {
main: Ze[400],
light: Ze[300],
dark: Ze[700]
} : {
main: "#ed6c02",
// closest to orange[800] that pass 3:1.
light: Ze[500],
dark: Ze[900]
};
}
function gr(e) {
const {
mode: t = "light",
contrastThreshold: r = 3,
tonalOffset: n = 0.2,
...o
} = e, a = e.primary || ki(t), c = e.secondary || Oi(t), l = e.error || _i(t), d = e.info || Ri(t), p = e.success || Pi(t), h = e.warning || Ai(t);
function m(s) {
const E = Yr(s, qr.text.primary) >= r ? qr.text.primary : Ti.text.primary;
if (process.env.NODE_ENV !== "production") {
const O = Yr(s, E);
O < 3 && console.error([`MUI: The contrast ratio of ${O}:1 for ${E} on ${s}`, "falls below the WCAG recommended absolute minimum contrast ratio of 3:1.", "https://www.w3.org/TR/2008/REC-WCAG20-20081211/#visual-audio-contrast-contrast"].join(`
`));
}
return E;
}
const y = ({
color: s,
name: E,
mainShade: O = 500,
lightShade: I = 300,
darkShade: j = 700
}) => {
if (s = {
...s
}, !s.main && s[O] && (s.main = s[O]), !s.hasOwnProperty("main"))
throw new Error(process.env.NODE_ENV !== "production" ? `MUI: The color${E ? ` (${E})` : ""} provided to augmentColor(color) is invalid.
The color object needs to have a \`main\` property or a \`${O}\` property.` : Ne(11, E ? ` (${E})` : "", O));
if (typeof s.main != "string")
throw new Error(process.env.NODE_ENV !== "production" ? `MUI: The color${E ? ` (${E})` : ""} provided to augmentColor(color) is invalid.
\`color.main\` should be a string, but \`${JSON.stringify(s.main)}\` was provided instead.
Did you intend to use one of the following approaches?
import { green } from "@mui/material/colors";
const theme1 = createTheme({ palette: {
primary: green,
} });
const theme2 = createTheme({ palette: {
primary: { main: green[500] },
} });` : Ne(12, E ? ` (${E})` : "", JSON.stringify(s.main)));
return Kr(s, "light", I, n), Kr(s, "dark", j, n), s.contrastText || (s.contrastText = m(s.main)), s;
};
let k;
return t === "light" ? k = Rn() : t === "dark" && (k = Pn()), process.env.NODE_ENV !== "production" && (k || console.error(`MUI: The palette mode \`${t}\` is not supported.`)), be({
// A collection of common colors.
common: {
...it
},
// prevent mutable object.
// The palette mode, can be light or dark.
mode: t,
// The colors used to represent primary interface elements for a user.
primary: y({
color: a,
name: "primary"
}),
// The colors used to represent secondary interface elements for a user.
secondary: y({
color: c,
name: "secondary",
mainShade: "A400",
lightShade: "A200",
darkShade: "A700"
}),
// The colors used to represent interface elements that the user should be made aware of.
error: y({
color: l,
name: "error"
}),
// The colors used to represent potentially dangerous actions or important messages.
warning: y({
color: h,
name: "warning"
}),
// The colors used to present information to the user that is neutral and not necessarily important.
info: y({
color: d,
name: "info"
}),
// The colors used to indicate the successful completion of an action that user triggered.
success: y({
color: p,
name: "success"
}),
// The grey colors.
grey: Ei,
// Used by `getContrastText()` to maximize the contrast between
// the background and the text.
contrastThreshold: r,
// Takes a background color and returns the text color that maximizes the contrast.
getContrastText: m,
// Generate a rich color object.
augmentColor: y,
// Used by the functions below to shift a color's luminance by approximately
// two indexes within its tonal palette.
// E.g., shift from Red 500 to Red 300 or Red 700.
tonalOffset: n,
// The light and dark mode object.
...k
}, o);
}
function ji(e) {
const t = {};
return Object.entries(e).forEach((n) => {
const [o, a] = n;
typeof a == "object" && (t[o] = `${a.fontStyle ? `${a.fontStyle} ` : ""}${a.fontVariant ? `${a.fontVariant} ` : ""}${a.fontWeight ? `${a.fontWeight} ` : ""}${a.fontStretch ? `${a.fontStretch} ` : ""}${a.fontSize || ""}${a.lineHeight ? `/${a.lineHeight} ` : ""}${a.fontFamily || ""}`);
}), t;
}
function $i(e, t) {
return {
toolbar: {
minHeight: 56,
[e.up("xs")]: {
"@media (orientation: landscape)": {
minHeight: 48
}
},
[e.up("sm")]: {
minHeight: 64
}
},
...t
};
}
function Ni(e) {
return Math.round(e * 1e5) / 1e5;
}
const Xr = {
textTransform: "uppercase"
}, Jr = '"Roboto", "Helvetica", "Arial", sans-serif';
function Ii(e, t) {
const {
fontFamily: r = Jr,
// The default font size of the Material Specification.
fontSize: n = 14,
// px
fontWeightLight: o = 300,
fontWeightRegular: a = 400,
fontWeightMedium: c = 500,
fontWeightBold: l = 700,
// Tell MUI what's the font-size on the html element.
// 16px is the default font-size used by browsers.
htmlFontSize: d = 16,
// Apply the CSS properties to all the variants.
allVariants: p,
pxToRem: h,
...m
} = typeof t == "function" ? t(e) : t;
process.env.NODE_ENV !== "production" && (typeof n != "number" && console.error("MUI: `fontSize` is required to be a number."), typeof d != "number" && console.error("MUI: `htmlFontSize` is required to be a number."));
const y = n / 14, k = h || ((E) => `${E / d * y}rem`), S = (E, O, I, j, P) => ({
fontFamily: r,
fontWeight: E,
fontSize: k(O),
// Unitless following https://meyerweb.com/eric/thoughts/2006/02/08/unitless-line-heights/
lineHeight: I,
// The letter spacing was designed for the Roboto font-family. Using the same letter-spacing
// across font-families can cause issues with the kerning.
...r === Jr ? {
letterSpacing: `${Ni(j / O)}em`
} : {},
...P,
...p
}), s = {
h1: S(o, 96, 1.167, -1.5),
h2: S(o, 60, 1.2, -0.5),
h3: S(a, 48, 1.167, 0),
h4: S(a, 34, 1.235, 0.25),
h5: S(a, 24, 1.334, 0),
h6: S(c, 20, 1.6, 0.15),
subtitle1: S(a, 16, 1.75, 0.15),
subtitle2: S(c, 14, 1.57, 0.1),
body1: S(a, 16, 1.5, 0.15),
body2: S(a, 14, 1.43, 0.15),
button: S(c, 14, 1.75, 0.4, Xr),
caption: S(a, 12, 1.66, 0.4),
overline: S(a, 12, 2.66, 1, Xr),
// TODO v6: Remove handling of 'inherit' variant from the theme as it is already handled in Material UI's Typography component. Also, remember to remove the associated types.
inherit: {
fontFamily: "inherit",
fontWeight: "inherit",
fontSize: "inherit",
lineHeight: "inherit",
letterSpacing: "inherit"
}
};
return be({
htmlFontSize: d,
pxToRem: k,
fontFamily: r,
fontSize: n,
fontWeightLight: o,
fontWeightRegular: a,
fontWeightMedium: c,
fontWeightBold: l,
...s
}, m, {
clone: !1
// No need to clone deep
});
}
const Mi = 0.2, Di = 0.14, zi = 0.12;
function ne(...e) {
return [`${e[0]}px ${e[1]}px ${e[2]}px ${e[3]}px rgba(0,0,0,${Mi})`, `${e[4]}px ${e[5]}px ${e[6]}px ${e[7]}px rgba(0,0,0,${Di})`, `${e[8]}px ${e[9]}px ${e[10]}px ${e[11]}px rgba(0,0,0,${zi})`].join(",");
}
const Bi = ["none", ne(0, 2, 1, -1, 0, 1, 1, 0, 0, 1, 3, 0), ne(0, 3, 1, -2, 0, 2, 2, 0, 0, 1, 5, 0), ne(0, 3, 3, -2, 0, 3, 4, 0, 0, 1, 8, 0), ne(0, 2, 4, -1, 0, 4, 5, 0, 0, 1, 10, 0), ne(0, 3, 5, -1, 0, 5, 8, 0, 0, 1, 14, 0), ne(0, 3, 5, -1, 0, 6, 10, 0, 0, 1, 18, 0), ne(0, 4, 5, -2, 0, 7, 10, 1, 0, 2, 16, 1), ne(0, 5, 5, -3, 0, 8, 10, 1, 0, 3, 14, 2), ne(0, 5, 6, -3, 0, 9, 12, 1, 0, 3, 16, 2), ne(0, 6, 6, -3, 0, 10, 14, 1, 0, 4, 18, 3), ne(0, 6, 7, -4, 0, 11, 15, 1, 0, 4, 20, 3), ne(0, 7, 8, -4, 0, 12, 17, 2, 0, 5, 22, 4), ne(0, 7, 8, -4, 0, 13, 19, 2, 0, 5, 24, 4), ne(0, 7, 9, -4, 0, 14, 21, 2, 0, 5, 26, 4), ne(0, 8, 9, -5, 0, 15, 22, 2, 0, 6, 28, 5), ne(0, 8, 10, -5, 0, 16, 24, 2, 0, 6, 30, 5), ne(0, 8, 11, -5, 0, 17, 26, 2, 0, 6, 32, 5), ne(0, 9, 11, -5, 0, 18, 28, 2, 0, 7, 34, 6), ne(0, 9, 12, -6, 0, 19, 29, 2, 0, 7, 36, 6), ne(0, 10, 13, -6, 0, 20, 31, 3, 0, 8, 38, 7), ne(0, 10, 13, -6, 0, 21, 33, 3, 0, 8, 40, 7), ne(0, 10, 14, -6, 0, 22, 35, 3, 0, 8, 42, 7), ne(0, 11, 14, -7, 0, 23, 36, 3, 0, 9, 44, 8), ne(0, 11, 15, -7, 0, 24, 38, 3, 0, 9, 46, 8)], Li = {
// This is the most common easing curve.
easeInOut: "cubic-bezier(0.4, 0, 0.2, 1)",
// Objects enter the screen at full velocity from off-screen and
// slowly decelerate to a resting point.
easeOut: "cubic-bezier(0.0, 0, 0.2, 1)",
// Objects leave the screen at full velocity. They do not decelerate when off-screen.
easeIn: "cubic-bezier(0.4, 0, 1, 1)",
// The sharp curve is used by objects that may return to the screen at any time.
sharp: "cubic-bezier(0.4, 0, 0.6, 1)"
}, Fi = {
shortest: 150,
shorter: 200,
short: 250,
// most basic recommended timing
standard: 300,
// this is to be used in complex animations
complex: 375,
// recommended when something is entering screen
enteringScreen: 225,
// recommended when something is leaving screen
leavingScreen: 195
};
function Qr(e) {
return `${Math.round(e)}ms`;
}
function Vi(e) {
if (!e)
return 0;
const t = e / 36;
return Math.min(Math.round((4 + 15 * t ** 0.25 + t / 5) * 10), 3e3);
}
function Ui(e) {
const t = {
...Li,
...e.easing
}, r = {
...Fi,
...e.duration
};
return {
getAutoHeightDuration: Vi,
create: (o = ["all"], a = {}) => {
const {
duration: c = r.standard,
easing: l = t.easeInOut,
delay: d = 0,
...p
} = a;
if (process.env.NODE_ENV !== "production") {
const h = (y) => typeof y == "string", m = (y) => !Number.isNaN(parseFloat(y));
!h(o) && !Array.isArray(o) && console.error('MUI: Argument "props" must be a string or Array.'), !m(c) && !h(c) && console.error(`MUI: Argument "duration" must be a number or a string but found ${c}.`), h(l) || console.error('MUI: Argument "easing" must be a string.'), !m(d) && !h(d) && console.error('MUI: Argument "delay" must be a number or a string.'), typeof a != "object" && console.error(["MUI: Secong argument of transition.create must be an object.", "Arguments should be either `create('prop1', options)` or `create(['prop1', 'prop2'], options)`"].join(`
`)), Object.keys(p).length !== 0 && console.error(`MUI: Unrecognized argument(s) [${Object.keys(p).join(",")}].`);
}
return (Array.isArray(o) ? o : [o]).map((h) => `${h} ${typeof c == "string" ? c : Qr(c)} ${l} ${typeof d == "string" ? d : Qr(d)}`).join(",");
},
...e,
easing: t,
duration: r
};
}
const Wi = {
mobileStepper: 1e3,
fab: 1050,
speedDial: 1050,
appBar: 1100,
drawer: 1200,
modal: 1300,
snackbar: 1400,
tooltip: 1500
};
function Yi(e) {
return Re(e) || typeof e > "u" || typeof e == "string" || typeof e == "boolean" || typeof e == "number" || Array.isArray(e);
}
function An(e = {}) {
const t = {
...e
};
function r(n) {
const o = Object.entries(n);
for (let a = 0; a < o.length; a++) {
const [c, l] = o[a];
!Yi(l) || c.startsWith("unstable_") ? delete n[c] : Re(l) && (n[c] = {
...l
}, r(n[c]));
}
}
return r(t), `import { unstable_createBreakpoints as createBreakpoints, createTransitions } from '@mui/material/styles';
const theme = ${JSON.stringify(t, null, 2)};
theme.breakpoints = createBreakpoints(theme.breakpoints || {});
theme.transitions = createTransitions(theme.transitions || {});
export default theme;`;
}
function ar(e = {}, ...t) {
const {
breakpoints: r,
mixins: n = {},
spacing: o,
palette: a = {},
transitions: c = {},
typography: l = {},
shape: d,
...p
} = e;
if (e.vars && // The error should throw only for the root theme creation because user is not allowed to use a custom node `vars`.
// `generateThemeVars` is the closest identifier for checking that the `options` is a result of `createTheme` with CSS variables so that user can create new theme for nested ThemeProvider.
e.generateThemeVars === void 0)
throw new Error(process.env.NODE_ENV !== "production" ? "MUI: `vars` is a private field used for CSS variables support.\nPlease use another name or follow the [docs](https://mui.com/material-ui/customization/css-theme-variables/usage/) to enable the feature." : Ne(20));
const h = gr(a), m = Cn(e);
let y = be(m, {
mixins: $i(m.breakpoints, n),
palette: h,
// Don't use [...shadows] until you've verified its transpiled code is not invoking the iterator protocol.
shadows: Bi.slice(),
typography: Ii(h, l),
transitions: Ui(c),
zIndex: {
...Wi
}
});
if (y = be(y, p), y = t.reduce((k, S) => be(k, S), y), process.env.NODE_ENV !== "production") {
const k = ["active", "checked", "completed", "disabled", "error", "expanded", "focused", "focusVisible", "required", "selected"], S = (s, E) => {
let O;
for (O in s) {
const I = s[O];
if (k.includes(O) && Object.keys(I).length > 0) {
if (process.env.NODE_ENV !== "production") {
const j = fr("", O);
console.error([`MUI: The \`${E}\` component increases the CSS specificity of the \`${O}\` internal state.`, "You can not override it like this: ", JSON.stringify(s, null, 2), "", `Instead, you need to use the '&.${j}' syntax:`, JSON.stringify({
root: {
[`&.${j}`]: I
}
}, null, 2), "", "https://mui.com/r/state-classes-guide"].join(`
`));
}
s[O] = {};
}
}
};
Object.keys(y.components).forEach((s) => {
const E = y.components[s].styleOverrides;
E && s.startsWith("Mui") && S(E, s);
});
}
return y.unstable_sxConfig = {
...It,
...p == null ? void 0 : p.unstable_sxConfig
}, y.unstable_sx = function(S) {
return Ge({
sx: S,
theme: this
});
}, y.toRuntimeSource = An, y;
}
function Hi(e) {
let t;
return e < 1 ? t = 5.11916 * e ** 2 : t = 4.5 * Math.log(e + 1) + 2, Math.round(t * 10) / 1e3;
}
const Gi = [...Array(25)].map((e, t) => {
if (t === 0)
return "none";
const r = Hi(t);
return `linear-gradient(rgba(255 255 255 / ${r}), rgba(255 255 255 / ${r}))`;
});
function jn(e) {
return {
inputPlaceholder: e === "dark" ? 0.5 : 0.42,
inputUnderline: e === "dark" ? 0.7 : 0.42,
switchTrackDisabled: e === "dark" ? 0.2 : 0.12,
switchTrack: e === "dark" ? 0.3 : 0.38
};
}
function $n(e) {
return e === "dark" ? Gi : [];
}
function qi(e) {
const {
palette: t = {
mode: "light"
},
// need to cast to avoid module augmentation test
opacity: r,
overlays: n,
...o
} = e, a = gr(t);
return {
palette: a,
opacity: {
...jn(a.mode),
...r
},
overlays: n || $n(a.mode),
...o
};
}
function Ki(e) {
var t;
return !!e[0].match(/(cssVarPrefix|colorSchemeSelector|rootSelector|typography|mixins|breakpoints|direction|transitions)/) || !!e[0].match(/sxConfig$/) || // ends with sxConfig
e[0] === "palette" && !!((t = e[1]) != null && t.match(/(mode|contrastThreshold|tonalOffset)/));
}
const Xi = (e) => [...[...Array(25)].map((t, r) => `--${e ? `${e}-` : ""}overlays-${r}`), `--${e ? `${e}-` : ""}palette-AppBar-darkBg`, `--${e ? `${e}-` : ""}palette-AppBar-darkColor`], Ji = (e) => (t, r) => {
const n = e.rootSelector || ":root", o = e.colorSchemeSelector;
let a = o;
if (o === "class" && (a = ".%s"), o === "data" && (a = "[data-%s]"), o != null && o.startsWith("data-") && !o.includes("%s") && (a = `[${o}="%s"]`), e.defaultColorScheme === t) {
if (t === "dark") {
const c = {};
return Xi(e.cssVarPrefix).forEach((l) => {
c[l] = r[l], delete r[l];
}), a === "media" ? {
[n]: r,
"@media (prefers-color-scheme: dark)": {
[n]: c
}
} : a ? {
[a.replace("%s", t)]: c,
[`${n}, ${a.replace("%s", t)}`]: r
} : {
[n]: {
...r,
...c
}
};
}
if (a && a !== "media")
return `${n}, ${a.replace("%s", String(t))}`;
} else if (t) {
if (a === "media")
return {
[`@media (prefers-color-scheme: ${String(t)})`]: {
[n]: r
}
};
if (a)
return a.replace("%s", String(t));
}
return n;
};
function Qi(e, t) {
t.forEach((r) => {
e[r] || (e[r] = {});
});
}
function b(e, t, r) {
!e[t] && r && (e[t] = r);
}
function tt(e) {
return typeof e != "string" || !e.startsWith("hsl") ? e : _n(e);
}
function _e(e, t) {
`${t}Channel` in e || (e[`${t}Channel`] = et(tt(e[t]), `MUI: Can't create \`palette.${t}Channel\` because \`palette.${t}\` is not one of these formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().
To suppress this warning, you need to explicitly provide the \`palette.${t}Channel\` as a string (in rgb format, for example "12 12 12") or undefined if you want to remove the channel token.`));
}
function Zi(e) {
return typeof e == "number" ? `${e}px` : typeof e == "string" || typeof e == "function" || Array.isArray(e) ? e : "8px";
}
const Ce = (e) => {
try {
return e();
} catch {
}
}, es = (e = "mui") => xi(e);
function Kt(e, t, r, n) {
if (!t)
return;
t = t === !0 ? {} : t;
const o = n === "dark" ? "dark" : "light";
if (!r) {
e[n] = qi({
...t,
palette: {
mode: o,
...t == null ? void 0 : t.palette
}
});
return;
}
const {
palette: a,
...c
} = ar({
...r,
palette: {
mode: o,
...t == null ? void 0 : t.palette
}
});
return e[n] = {
...t,
palette: a,
opacity: {
...jn(o),
...t == null ? void 0 : t.opacity
},
overlays: (t == null ? void 0 : t.overlays) || $n(o)
}, c;
}
function ts(e = {}, ...t) {
const {
colorSchemes: r = {
light: !0
},
defaultColorScheme: n,
disableCssColorScheme: o = !1,
cssVarPrefix: a = "mui",
shouldSkipGeneratingVar: c = Ki,
colorSchemeSelector: l = r.light && r.dark ? "media" : void 0,
rootSelector: d = ":root",
...p
} = e, h = Object.keys(r)[0], m = n || (r.light && h !== "light" ? "light" : h), y = es(a), {
[m]: k,
light: S,
dark: s,
...E
} = r, O = {
...E
};
let I = k;
if ((m === "dark" && !("dark" in r) || m === "light" && !("light" in r)) && (I = !0), !I)
throw new Error(process.env.NODE_ENV !== "production" ? `MUI: The \`colorSchemes.${m}\` option is either missing or invalid.` : Ne(21, m));
const j = Kt(O, I, p, m);
S && !O.light && Kt(O, S, void 0, "light"), s && !O.dark && Kt(O, s, void 0, "dark");
let P = {
defaultColorScheme: m,
...j,
cssVarPrefix: a,
colorSchemeSelector: l,
rootSelector: d,
getCssVar: y,
colorSchemes: O,
font: {
...ji(j.typography),
...j.font
},
spacing: Zi(p.spacing)
};
Object.keys(P.colorSchemes).forEach((te) => {
const i = P.colorSchemes[te].palette, A = (B) => {
const V = B.split("-"), U = V[1], oe = V[2];
return y(B, i[U][oe]);
};
if (i.mode === "light" && (b(i.common, "background", "#fff"), b(i.common, "onBackground", "#000")), i.mode === "dark" && (b(i.common, "background", "#000"), b(i.common, "onBackground", "#fff")), Qi(i, ["Alert", "AppBar", "Avatar", "Button", "Chip", "FilledInput", "LinearProgress", "Skeleton", "Slider", "SnackbarContent", "SpeedDialAction", "StepConnector", "StepContent", "Switch", "TableCell", "Tooltip"]), i.mode === "light") {
b(i.Alert, "errorColor", Z(i.error.light, 0.6)), b(i.Alert, "infoColor", Z(i.info.light, 0.6)), b(i.Alert, "successColor", Z(i.success.light, 0.6)), b(i.Alert, "warningColor", Z(i.warning.light, 0.6)), b(i.Alert, "errorFilledBg", A("palette-error-main")), b(i.Alert, "infoFilledBg", A("palette-info-main")), b(i.Alert, "successFilledBg", A("palette-success-main")), b(i.Alert, "warningFilledBg", A("palette-warning-main")), b(i.Alert, "errorFilledColor", Ce(() => i.getContrastText(i.error.main))), b(i.Alert, "infoFilledColor", Ce(() => i.getContrastText(i.info.main))), b(i.Alert, "successFilledColor", Ce(() => i.getContrastText(i.success.main))), b(i.Alert, "warningFilledColor", Ce(() => i.getContrastText(i.warning.main))), b(i.Alert, "errorStandardBg", ee(i.error.light, 0.9)), b(i.Alert, "infoStandardBg", ee(i.info.light, 0.9)), b(i.Alert, "successStandardBg", ee(i.success.light, 0.9)), b(i.Alert, "warningStandardBg", ee(i.warning.light, 0.9)), b(i.Alert, "errorIconColor", A("palette-error-main")), b(i.Alert, "infoIconColor", A("palette-info-main")), b(i.Alert, "successIconColor", A("palette-success-main")), b(i.Alert, "warningIconColor", A("palette-warning-main")), b(i.AppBar, "defaultBg", A("palette-grey-100")), b(i.Avatar, "defaultBg", A("palette-grey-400")), b(i.Button, "inheritContainedBg", A("palette-grey-300")), b(i.Button, "inheritContainedHoverBg", A("palette-grey-A100")), b(i.Chip, "defaultBorder", A("palette-grey-400")), b(i.Chip, "defaultAvatarColor", A("palette-grey-700")), b(i.Chip, "defaultIconColor", A("palette-grey-700")), b(i.FilledInput, "bg", "rgba(0, 0, 0, 0.06)"), b(i.FilledInput, "hoverBg", "rgba(0, 0, 0, 0.09)"), b(i.FilledInput, "disabledBg", "rgba(0, 0, 0, 0.12)"), b(i.LinearProgress, "primaryBg", ee(i.primary.main, 0.62)), b(i.LinearProgress, "secondaryBg", ee(i.secondary.main, 0.62)), b(i.LinearProgress, "errorBg", ee(i.error.main, 0.62)), b(i.LinearProgress, "infoBg", ee(i.info.main, 0.62)), b(i.LinearProgress, "successBg", ee(i.success.main, 0.62)), b(i.LinearProgress, "warningBg", ee(i.warning.main, 0.62)), b(i.Skeleton, "bg", `rgba(${A("palette-text-primaryChannel")} / 0.11)`), b(i.Slider, "primaryTrack", ee(i.primary.main, 0.62)), b(i.Slider, "secondaryTrack", ee(i.secondary.main, 0.62)), b(i.Slider, "errorTrack", ee(i.error.main, 0.62)), b(i.Slider, "infoTrack", ee(i.info.main, 0.62)), b(i.Slider, "successTrack", ee(i.success.main, 0.62)), b(i.Slider, "warningTrack", ee(i.warning.main, 0.62));
const B = mt(i.background.default, 0.8);
b(i.SnackbarContent, "bg", B), b(i.SnackbarContent, "color", Ce(() => i.getContrastText(B))), b(i.SpeedDialAction, "fabHoverBg", mt(i.background.paper, 0.15)), b(i.StepConnector, "border", A("palette-grey-400")), b(i.StepContent, "border", A("palette-grey-400")), b(i.Switch, "defaultColor", A("palette-common-white")), b(i.Switch, "defaultDisabledColor", A("palette-grey-100")), b(i.Switch, "primaryDisabledColor", ee(i.primary.main, 0.62)), b(i.Switch, "secondaryDisabledColor", ee(i.secondary.main, 0.62)), b(i.Switch, "errorDisabledColor", ee(i.error.main, 0.62)), b(i.Switch, "infoDisabledColor", ee(i.info.main, 0.62)), b(i.Switch, "successDisabledColor", ee(i.success.main, 0.62)), b(i.Switch, "warningDisabledColor", ee(i.warning.main, 0.62)), b(i.TableCell, "border", ee(pt(i.divider, 1), 0.88)), b(i.Tooltip, "bg", pt(i.grey[700], 0.92));
}
if (i.mode === "dark") {
b(i.Alert, "errorColor", ee(i.error.light, 0.6)), b(i.Alert, "infoColor", ee(i.info.light, 0.6)), b(i.Alert, "successColor", ee(i.success.light, 0.6)), b(i.Alert, "warningColor", ee(i.warning.light, 0.6)), b(i.Alert, "errorFilledBg", A("palette-error-dark")), b(i.Alert, "infoFilledBg", A("palette-info-dark")), b(i.Alert, "successFilledBg", A("palette-success-dark")), b(i.Alert, "warningFilledBg", A("palette-warning-dark")), b(i.Alert, "errorFilledColor", Ce(() => i.getContrastText(i.error.dark))), b(i.Alert, "infoFilledColor", Ce(() => i.getContrastText(i.info.dark))), b(i.Alert, "successFilledColor", Ce(() => i.getContrastText(i.success.dark))), b(i.Alert, "warningFilledColor", Ce(() => i.getContrastText(i.warning.dark))), b(i.Alert, "errorStandardBg", Z(i.error.light, 0.9)), b(i.Alert, "infoStandardBg", Z(i.info.light, 0.9)), b(i.Alert, "successStandardBg", Z(i.success.light, 0.9)), b(i.Alert, "warningStandardBg", Z(i.warning.light, 0.9)), b(i.Alert, "errorIconColor", A("palette-error-main")), b(i.Alert, "infoIconColor", A("palette-info-main")), b(i.Alert, "successIconColor", A("palette-success-main")), b(i.Alert, "warningIconColor", A("palette-warning-main")), b(i.AppBar, "defaultBg", A("palette-grey-900")), b(i.AppBar, "darkBg", A("palette-background-paper")), b(i.AppBar, "darkColor", A("palette-text-primary")), b(i.Avatar, "defaultBg", A("palette-grey-600")), b(i.Button, "inheritContainedBg", A("palette-grey-800")), b(i.Button, "inheritContainedHoverBg", A("palette-grey-700")), b(i.Chip, "defaultBorder", A("palette-grey-700")), b(i.Chip, "defaultAvatarColor", A("palette-grey-300")), b(i.Chip, "defaultIconColor", A("palette-grey-300")), b(i.FilledInput, "bg", "rgba(255, 255, 255, 0.09)"), b(i.FilledInput, "hoverBg", "rgba(255, 255, 255, 0.13)"), b(i.FilledInput, "disabledBg", "rgba(255, 255, 255, 0.12)"), b(i.LinearProgress, "primaryBg", Z(i.primary.main, 0.5)), b(i.LinearProgress, "secondaryBg", Z(i.secondary.main, 0.5)), b(i.LinearProgress, "errorBg", Z(i.error.main, 0.5)), b(i.LinearProgress, "infoBg", Z(i.info.main, 0.5)), b(i.LinearProgress, "successBg", Z(i.success.main, 0.5)), b(i.LinearProgress, "warningBg", Z(i.warning.main, 0.5)), b(i.Skeleton, "bg", `rgba(${A("palette-text-primaryChannel")} / 0.13)`), b(i.Slider, "primaryTrack", Z(i.primary.main, 0.5)), b(i.Slider, "secondaryTrack", Z(i.secondary.main, 0.5)), b(i.Slider, "errorTrack", Z(i.error.main, 0.5)), b(i.Slider, "infoTrack", Z(i.info.main, 0.5)), b(i.Slider, "successTrack", Z(i.success.main, 0.5)), b(i.Slider, "warningTrack", Z(i.warning.main, 0.5));
const B = mt(i.background.default, 0.98);
b(i.SnackbarContent, "bg", B), b(i.SnackbarContent, "color", Ce(() => i.getContrastText(B))), b(i.SpeedDialAction, "fabHoverBg", mt(i.background.paper, 0.15)), b(i.StepConnector, "border", A("palette-grey-600")), b(i.StepContent, "border", A("palette-grey-600")), b(i.Switch, "defaultColor", A("palette-grey-300")), b(i.Switch, "defaultDisabledColor", A("palette-grey-600")), b(i.Switch, "primaryDisabledColor", Z(i.primary.main, 0.55)), b(i.Switch, "secondaryDisabledColor", Z(i.secondary.main, 0.55)), b(i.Switch, "errorDisabledColor", Z(i.error.main, 0.55)), b(i.Switch, "infoDisabledColor", Z(i.info.main, 0.55)), b(i.Switch, "successDisabledColor", Z(i.success.main, 0.55)), b(i.Switch, "warningDisabledColor", Z(i.warning.main, 0.55)), b(i.TableCell, "border", Z(pt(i.divider, 1), 0.68)), b(i.Tooltip, "bg", pt(i.grey[700], 0.92));
}
_e(i.background, "default"), _e(i.background, "paper"), _e(i.common, "background"), _e(i.common, "onBackground"), _e(i, "divider"), Object.keys(i).forEach((B) => {
const V = i[B];
B !== "tonalOffset" && V && typeof V == "object" && (V.main && b(i[B], "mainChannel", et(tt(V.main))), V.light && b(i[B], "lightChannel", et(tt(V.light))), V.dark && b(i[B], "darkChannel", et(tt(V.dark))), V.contrastText && b(i[B], "contrastTextChannel", et(tt(V.contrastText))), B === "text" && (_e(i[B], "primary"), _e(i[B], "secondary")), B === "action" && (V.active && _e(i[B], "active"), V.selected && _e(i[B], "selected")));
});
}), P = t.reduce((te, i) => be(te, i), P);
const v = {
prefix: a,
disableCssColorScheme: o,
shouldSkipGeneratingVar: c,
getSelector: Ji(P)
}, {
vars: z,
generateThemeVars: M,
generateStyleSheets: K
} = Si(P, v);
return P.vars = z, Object.entries(P.colorSchemes[P.defaultColorScheme]).forEach(([te, i]) => {
P[te] = i;
}), P.generateThemeVars = M, P.generateStyleSheets = K, P.generateSpacing = function() {
return Sn(p.spacing, sr(this));
}, P.getColorSchemeSelector = Ci(l), P.spacing = P.generateSpacing(), P.shouldSkipGeneratingVar = c, P.unstable_sxConfig = {
...It,
...p == null ? void 0 : p.unstable_sxConfig
}, P.unstable_sx = function(i) {
return Ge({
sx: i,
theme: this
});
}, P.toRuntimeSource = An, P;
}
function Zr(e, t, r) {
e.colorSchemes && r && (e.colorSchemes[t] = {
...r !== !0 && r,
palette: gr({
...r === !0 ? {} : r.palette,
mode: t
})
// cast type to skip module augmentation test
});
}
function rs(e = {}, ...t) {
const {
palette: r,
cssVariables: n = !1,
colorSchemes: o = r ? void 0 : {
light: !0
},
defaultColorScheme: a = r == null ? void 0 : r.mode,
...c
} = e, l = a || "light", d = o == null ? void 0 : o[l], p = {
...o,
...r ? {
[l]: {
...typeof d != "boolean" && d,
palette: r
}
} : void 0
};
if (n === !1) {
if (!("colorSchemes" in e))
return ar(e, ...t);
let h = r;
"palette" in e || p[l] && (p[l] !== !0 ? h = p[l].palette : l === "dark" && (h = {
mode: "dark"
}));
const m = ar({
...e,
palette: h
}, ...t);
return m.defaultColorScheme = l, m.colorSchemes = p, m.palette.mode === "light" && (m.colorSchemes.light = {
...p.light !== !0 && p.light,
palette: m.palette
}, Zr(m, "dark", p.dark)), m.palette.mode === "dark" && (m.colorSchemes.dark = {
...p.dark !== !0 && p.dark,
palette: m.palette
}, Zr(m, "light", p.light)), m;
}
return !r && !("light" in p) && l === "light" && (p.light = !0), ts({
...c,
colorSchemes: p,
defaultColorScheme: l,
...typeof n != "boolean" && n
}, ...t);
}
const ns = rs(), os = "$$material";
function as(e) {
return e !== "ownerState" && e !== "theme" && e !== "sx" && e !== "as";
}
const is = (e) => as(e) && e !== "classes", ss = ai({
themeId: os,
defaultTheme: ns,
rootShouldForwardProp: is
}), cs = bi;
process.env.NODE_ENV !== "production" && (W.node, W.object.isRequired);
function ls(e) {
return yi(e);
}
function us(e) {
return fr("MuiSvgIcon", e);
}
ei("MuiSvgIcon", ["root", "colorPrimary", "colorSecondary", "colorAction", "colorError", "colorDisabled", "fontSizeInherit", "fontSizeSmall", "fontSizeMedium", "fontSizeLarge"]);
const ds = (e) => {
const {
color: t,
fontSize: r,
classes: n
} = e, o = {
root: ["root", t !== "inherit" && `color${ze(t)}`, `fontSize${ze(r)}`]
};
return to(o, us, n);
}, fs = ss("svg", {
name: "MuiSvgIcon",
slot: "Root",
overridesResolver: (e, t) => {
const {
ownerState: r
} = e;
return [t.root, r.color !== "inherit" && t[`color${ze(r.color)}`], t[`fontSize${ze(r.fontSize)}`]];
}
})(cs(({
theme: e
}) => {
var t, r, n, o, a, c, l, d, p, h, m, y, k, S;
return {
userSelect: "none",
width: "1em",
height: "1em",
display: "inline-block",
flexShrink: 0,
transition: (o = (t = e.transitions) == null ? void 0 : t.create) == null ? void 0 : o.call(t, "fill", {
duration: (n = (r = (e.vars ?? e).transitions) == null ? void 0 : r.duration) == null ? void 0 : n.shorter
}),
variants: [
{
props: (s) => !s.hasSvgAsChild,
style: {
// the <svg> will define the property that has `currentColor`
// for example heroicons uses fill="none" and stroke="currentColor"
fill: "currentColor"
}
},
{
props: {
fontSize: "inherit"
},
style: {
fontSize: "inherit"
}
},
{
props: {
fontSize: "small"
},
style: {
fontSize: ((c = (a = e.typography) == null ? void 0 : a.pxToRem) == null ? void 0 : c.call(a, 20)) || "1.25rem"
}
},
{
props: {
fontSize: "medium"
},
style: {
fontSize: ((d = (l = e.typography) == null ? void 0 : l.pxToRem) == null ? void 0 : d.call(l, 24)) || "1.5rem"
}
},
{
props: {
fontSize: "large"
},
style: {
fontSize: ((h = (p = e.typography) == null ? void 0 : p.pxToRem) == null ? void 0 : h.call(p, 35)) || "2.1875rem"
}
},
// TODO v5 deprecate color prop, v6 remove for sx
...Object.entries((e.vars ?? e).palette).filter(([, s]) => s && s.main).map(([s]) => {
var E, O;
return {
props: {
color: s
},
style: {
color: (O = (E = (e.vars ?? e).palette) == null ? void 0 : E[s]) == null ? void 0 : O.main
}
};
}),
{
props: {
color: "action"
},
style: {
color: (y = (m = (e.vars ?? e).palette) == null ? void 0 : m.action) == null ? void 0 : y.active
}
},
{
props: {
color: "disabled"
},
style: {
color: (S = (k = (e.vars ?? e).palette) == null ? void 0 : k.action) == null ? void 0 : S.disabled
}
},
{
props: {
color: "inherit"
},
style: {
color: void 0
}
}
]
};
})), Ct = /* @__PURE__ */ de.forwardRef(function(t, r) {
const n = ls({
props: t,
name: "MuiSvgIcon"
}), {
children: o,
className: a,
color: c = "inherit",
component: l = "svg",
fontSize: d = "medium",
htmlColor: p,
inheritViewBox: h = !1,
titleAccess: m,
viewBox: y = "0 0 24 24",
...k
} = n, S = /* @__PURE__ */ de.isValidElement(o) && o.type === "svg", s = {
...n,
color: c,
component: l,
fontSize: d,
instanceFontSize: t.fontSize,
inheritViewBox: h,
viewBox: y,
hasSvgAsChild: S
}, E = {};
h || (E.viewBox = y);
const O = ds(s);
return /* @__PURE__ */ f.jsxs(fs, {
as: l,
className: eo(O.root, a),
focusable: "false",
color: p,
"aria-hidden": m ? void 0 : !0,
role: m ? "img" : void 0,
ref: r,
...E,
...k,
...S && o.props,
ownerState: s,
children: [S ? o.props.children : o, m ? /* @__PURE__ */ f.jsx("title", {
children: m
}) : null]
});
});
process.env.NODE_ENV !== "production" && (Ct.propTypes = {
// ┌────────────────────────────── Warning ──────────────────────────────┐
// │ These PropTypes are generated from the TypeScript type definitions. │
// │ To update them, edit the d.ts file and run `pnpm proptypes`. │
// └─────────────────────────────────────────────────────────────────────┘
/**
* Node passed into the SVG element.
*/
children: W.node,
/**
* Override or extend the styles applied to the component.
*/
classes: W.object,
/**
* @ignore
*/
className: W.string,
/**
* The color of the component.
* It supports both default and custom theme colors, which can be added as shown in the
* [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
* You can use the `htmlColor` prop to apply a color attribute to the SVG element.
* @default 'inherit'
*/
color: W.oneOfType([W.oneOf(["inherit", "action", "disabled", "primary", "secondary", "error", "info", "success", "warning"]), W.string]),
/**
* The component used for the root node.
* Either a string to use a HTML element or a component.
*/
component: W.elementType,
/**
* The fontSize applied to the icon. Defaults to 24px, but can be configure to inherit font size.
* @default 'medium'
*/
fontSize: W.oneOfType([W.oneOf(["inherit", "large", "medium", "small"]), W.string]),
/**
* Applies a color attribute to the SVG element.
*/
htmlColor: W.string,
/**
* If `true`, the root node will inherit the custom `component`'s viewBox and the `viewBox`
* prop will be ignored.
* Useful when you want to reference a custom `component` and have `SvgIcon` pass that
* `component`'s viewBox to the root node.
* @default false
*/
inheritViewBox: W.bool,
/**
* The shape-rendering attribute. The behavior of the different options is described on the
* [MDN Web Docs](https://developer.mozilla.org/en-US/docs/Web/SVG/Reference/Attribute/shape-rendering).
* If you are having issues with blurry icons you should investigate this prop.
*/
shapeRendering: W.string,
/**
* The system prop that allows defining system overrides as well as additional CSS styles.
*/
sx: W.oneOfType([W.arrayOf(W.oneOfType([W.func, W.object, W.bool])), W.func, W.object]),
/**
* Provides a human-readable title for the element that contains it.
* https://www.w3.org/TR/SVG-access/#Equivalent
*/
titleAccess: W.string,
/**
* Allows you to redefine what the coordinates without units mean inside an SVG element.
* For example, if the SVG element is 500 (width) by 200 (height),
* and you pass viewBox="0 0 50 20",
* this means that the coordinates inside the SVG will go from the top left corner (0,0)
* to bottom right (50,20) and each unit will be worth 10px.
* @default '0 0 24 24'
*/
viewBox: W.string
});
Ct.muiName = "SvgIcon";
function Se(e, t) {
function r(n, o) {
return /* @__PURE__ */ f.jsx(Ct, {
"data-testid": process.env.NODE_ENV !== "production" ? `${t}Icon` : void 0,
ref: o,
...n,
children: e
});
}
return process.env.NODE_ENV !== "production" && (r.displayName = `${t}Icon`), r.muiName = Ct.muiName, /* @__PURE__ */ de.memo(/* @__PURE__ */ de.forwardRef(r));
}
const ht = Se(/* @__PURE__ */ f.jsx("path", {
d: "M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
}), "Close"), ps = Se(/* @__PURE__ */ f.jsx("path", {
d: "M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58c.18-.14.23-.41.12-.61l-1.92-3.32c-.12-.22-.37-.29-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54c-.04-.24-.24-.41-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58c-.18.14-.23.41-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6"
}), "Settings"), ms = ({ closeConsole: e, openChatbot: t }) => {
const [r, n] = re([]), [o, a] = re([""]), [c, l] = re(1500), [d, p] = re(500), [h, m] = re(""), [y, k] = re(!1), [S, s] = re(!1), [E, O] = re(""), [I, j] = re(""), [P, v] = re(""), [z, M] = re(1024), [K, te] = re(""), [i, A] = re("AI Chat Assistant"), [B, V] = re("Hello! 👋 How can I help you today?"), [U, oe] = re(8), [Q, le] = re(0.3), me = [
"all-MiniLM-L6-v2",
"paraphrase-MiniLM-L6-v2",
"distilbert-base-nli-stsb-mean-tokens",
"all-distilroberta-v1",
"paraphrase-distilroberta-base-v1",
"stsb-roberta-base"
], he = ["Chroma", "FAISS", "Pinecone", "Weaviate", "Qdrant"], u = [
"Qwen/QwQ-32B-Preview",
"meta-llama/Llama-3.3-70B-Instruct-Turbo",
"meta-llama/Meta-Llama-3.1-405B-Instruct-Turbo",
"scb10x/scb10x-llama3-typhoon-v1-5-8b-instruct",
"meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo",
"OpenAI/ChatGPT",
"Google/Gemini",
"llama3-8b-8192",
"llama3-70b-8192"
], w = (x, _ = 3e3) => {
te(x), setTimeout(() => {
te("");
}, _);
}, $ = (x) => {
const _ = x.target.files ? Array.from(x.target.files) : [];
n((F) => [...F, ..._]);
}, N = (x) => {
n((_) => _.filter((F, R) => R !== x));
}, D = (x, _) => {
const F = [...o];
F[x] = _, a(F);
}, L = (x) => {
a((_) => _.filter((F, R) => R !== x));
}, g = () => a([...o, ""]), C = async () => {
if (!h) {
w("Please select an embedding model.");
return;
}
k(!0);
const x = new FormData();
x.append("project_name", "genaitechsol."), r.forEach((_) => x.append("doc_files", _)), x.append("links", JSON.stringify(o.filter((_) => _.trim() !== ""))), x.append("embedding_model", h), x.append("chunk_size", String(c)), x.append("chunk_overlap", String(d));
try {
const _ = await fetch("https://datalysis.rag-chatbot-web.shop/preprocess", {
method: "POST",
body: x
}), F = await _.json();
if (_.ok || F.status === "success")
s(!0), w("✅ Preprocessing completed successfully!");
else
throw new Error(F.detail || "Preprocessing failed");
} catch (_) {
console.error("❌ Preprocessing error:", _), w("❌ Preprocessing failed. Please try again.");
} finally {
k(!1);
}
}, T = async () => {
if (!E || !I) {
w("Please select both vector database and chat model.");
return;
}
try {
const x = await fetch("https://datalysis.rag-chatbot-web.shop/select_vectordb", {
method: "POST",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: new URLSearchParams({ vectordb: E })
});
if (!x.ok) throw new Error("Vector database selection failed.");
await x.json();
const _ = new FormData();
_.append("custom_prompt", P), _.append("chatbot_title", i.trim()), _.append("initial_message", B.trim()), _.append("chat_model", I), _.append("project_name", "genaitechsol."), _.append("max_output_tokens", String(z)), _.append("top_k", String(U)), _.append("temperature", String(Q));
const F = await fetch("https://datalysis.rag-chatbot-web.shop/select_chat_model", {
method: "POST",
body: _
});
if (!F.ok) throw new Error("Chat model selection failed.");
await F.json(), w("✅ Chatbot is ready!"), e && e(), typeof t == "function" && t();
} catch (x) {
console.error("Error:", x), w("❌ Error in configuration. Please try again.");
}
};
return /* @__PURE__ */ f.jsxs("div", { className: "developer-console", children: [
/* @__PURE__ */ f.jsx("style", { children: hs }),
/* @__PURE__ */ f.jsx("h2", { children: "Developer Console" }),
!S && /* @__PURE__ */ f.jsxs(f.Fragment, { children: [
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Upload Documents (PDF/DOCX):" }),
/* @__PURE__ */ f.jsx("input", { type: "file", multiple: !0, accept: ".pdf,.docx", onChange: $ }),
/* @__PURE__ */ f.jsx("ul", { children: r.map((x, _) => /* @__PURE__ */ f.jsxs("li", { children: [
x.name,
/* @__PURE__ */ f.jsx("button", { className: "remove-btn", onClick: () => N(_), children: "❌" })
] }, _)) })
] }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Enter URLs for Web Scraping:" }),
o.map((x, _) => /* @__PURE__ */ f.jsxs("div", { className: "url-input-container", children: [
/* @__PURE__ */ f.jsx(
"input",
{
type: "text",
placeholder: `URL ${_ + 1}`,
value: x,
onChange: (F) => D(_, F.target.value)
}
),
/* @__PURE__ */ f.jsx("button", { className: "remove-btn", onClick: () => L(_), children: "❌" })
] }, _)),
/* @__PURE__ */ f.jsx("button", { onClick: g, className: "add-url-btn", children: "+ Add More" })
] }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Chunk Size:" }),
/* @__PURE__ */ f.jsx("input", { type: "number", value: c, onChange: (x) => l(Number(x.target.value)) })
] }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Chunk Overlap:" }),
/* @__PURE__ */ f.jsx("input", { type: "number", value: d, onChange: (x) => p(Number(x.target.value)) })
] }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Select Vector Database:" }),
/* @__PURE__ */ f.jsxs("select", { value: E, onChange: (x) => O(x.target.value), children: [
/* @__PURE__ */ f.jsx("option", { value: "", children: "Select Database" }),
he.map((x) => /* @__PURE__ */ f.jsx("option", { value: x, children: x }, x))
] })
] }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Select Embedding Model:" }),
/* @__PURE__ */ f.jsxs("select", { value: h, onChange: (x) => m(x.target.value), children: [
/* @__PURE__ */ f.jsx("option", { value: "", children: "Select Model" }),
me.map((x) => /* @__PURE__ */ f.jsx("option", { value: x, children: x }, x))
] })
] }),
/* @__PURE__ */ f.jsx("button", { onClick: C, disabled: y, children: y ? "Processing..." : "Start Preprocessing" })
] }),
S && /* @__PURE__ */ f.jsxs(f.Fragment, { children: [
/* @__PURE__ */ f.jsx("h3", { className: "preprocessed-message", children: "✅ Preprocessing completed!" }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Custom Prompt Template (Optional):" }),
/* @__PURE__ */ f.jsx(
"textarea",
{
value: P,
onChange: (x) => v(x.target.value),
rows: 10,
placeholder: "Enter a custom prompt template here...",
style: { width: "100%", fontFamily: "monospace" }
}
)
] }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Initial Bot Message:" }),
/* @__PURE__ */ f.jsx(
"input",
{
type: "text",
value: B,
onChange: (x) => V(x.target.value),
placeholder: "Enter welcome message",
style: { width: "100%" }
}
)
] }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Chatbot Title:" }),
/* @__PURE__ */ f.jsx(
"input",
{
type: "text",
value: i,
onChange: (x) => A(x.target.value),
placeholder: "Enter Chatbot Title",
style: { width: "100%" }
}
)
] }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Max Output Tokens:" }),
/* @__PURE__ */ f.jsx(
"input",
{
type: "number",
min: 1,
max: 4096,
value: z,
onChange: (x) => M(Number(x.target.value)),
placeholder: "1024"
}
)
] }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Top K Results (top_k):" }),
/* @__PURE__ */ f.jsx(
"input",
{
type: "number",
min: 1,
max: 50,
value: U,
onChange: (x) => oe(Number(x.target.value)),
placeholder: "Enter number of top chunks to retrieve"
}
)
] }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Temperature:" }),
/* @__PURE__ */ f.jsx(
"input",
{
type: "number",
step: 0.01,
min: 0,
max: 1,
value: Q,
onChange: (x) => le(Number(x.target.value)),
placeholder: "Enter temperature for randomness"
}
)
] }),
/* @__PURE__ */ f.jsxs("div", { className: "section", children: [
/* @__PURE__ */ f.jsx("label", { children: "Select Chat Model:" }),
/* @__PURE__ */ f.jsxs("select", { value: I, onChange: (x) => j(x.target.value), children: [
/* @__PURE__ */ f.jsx("option", { value: "", children: "Select Chat Model" }),
u.map((x) => /* @__PURE__ */ f.jsx("option", { value: x, children: x }, x))
] })
] }),
/* @__PURE__ */ f.jsx("button", { onClick: T, disabled: !I, style: { opacity: I ? 1 : 0.5, cursor: I ? "pointer" : "not-allowed" }, children: "Run Chatbot" })
] }),
K && /* @__PURE__ */ f.jsx("div", { className: "fade-message", children: K })
] });
}, hs = `
/* DeveloperConsole.css */
/* General Styling */
body {
font-family: "Poppins", sans-serif;
background: linear-gradient(90deg, #121212, #1e1e1e);
color: #f1f1f1;
margin: 0;
padding: 0;
}
/* Developer Console Box */
.developer-console {
max-width: 700px;
margin: 40px auto;
padding: 20px;
background: #1a1a1a;
border-radius: 16px;
box-shadow: 0px 8px 25px rgba(0, 0, 0, 0.6);
animation: fadeIn 0.4s ease-in-out;
}
/* Fade In Animation */
@keyframes fadeIn {
from { opacity: 0; transform: translateY(-20px); }
to { opacity: 1; transform: translateY(0); }
}
/* Headings */
h2 {
text-align: center;
font-size: 26px;
font-weight: 600;
color: #00c2ff;
margin-bottom: 25px;
}
/* Section Block */
.section {
max-width: 100%;
background: #222;
padding: 15px;
border-radius: 12px;
box-shadow: 0 2px 10px rgba(0,0,0,0.4);
margin-bottom: 50px;
transition: transform 0.2s ease-in-out;
}
.section:hover {
transform: scale(1.01);
}
/* Labels */
label {
font-size: 14px;
font-weight: 500;
color: #ccc;
display: block;
margin-bottom: 8px;
}
/* Inputs and Selects */
input , select {
width: 80%;
padding: 12px;
font-size: 14px;
border: 1px solid #333;
border-radius: 10px;
background: #2b2b2b;
color: #f1f1f1;
transition: all 0.3s ease-in-out;
margin-bottom: 30px;
}
input:focus, select:focus {
border: 1px solid #00c2ff;
background: #1e1e1e;
outline: none;
}
.section,
.file-upload-container,
.url-input-container,
.admin-input {
max-width: 90%; /* Reduce to 80% or 70% if needed */
margin: 0 auto; /* Center it */
}
/* File Upload */
.file-upload-container {
padding: 12px;
border-radius: 12px;
background: #2a2a2a;
display: flex;
flex-direction: column;
align-items: center;
border: 1px dashed #00c2ff;
}
/* Uploaded File Item */
.file-item {
display: flex;
align-items: center;
justify-content: space-between;
background: #1e1e1e;
padding: 10px;
margin: 5px 0;
border-radius: 6px;
width: 100%;
font-size: 14px;
transition: background 0.3s ease-in-out;
color: #ddd;
}
.file-item:hover {
background: #2c2c2c;
}
/* Remove Button */
.remove-btn {
background: transparent;
color: #ff6b6b;
border: none;
font-size: 11px;
cursor: pointer;
transition: color 0.3s ease-in-out;
padding: 4px;
}
.remove-btn:hover {
color: #ff2e2e;
}
/* Buttons */
button {
width: 100%;
padding: 14px;
font-size: 15px;
font-weight: bold;
color: white;
background: #00c2ff;
border: none;
border-radius: 10px;
cursor: pointer;
transition: all 0.3s ease-in-out;
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
}
button:hover {
background: #0099cc;
}
button:disabled {
background: #555;
cursor: not-allowed;
}
/* Add More URL Button */
.add-url-btn {
background: #00c2ff;
color: white;
padding: 10px;
border: none;
border-radius: 8px;
cursor: pointer;
}
.add-url-btn:hover {
background: #0099cc;
}
/* Confirmation Message */
.preprocessed-message {
color: #00e676;
font-weight: 600;
text-align: center;
margin-top: 12px;
animation: slideIn 0.5s ease-in-out;
}
@keyframes slideIn {
from { opacity: 0; transform: translateY(-10px); }
to { opacity: 1; transform: translateY(0); }
}
/* Responsive Layout */
@media (max-width: 768px) {
.developer-console {
padding: 15px;
margin: 20px auto;
}
}
.section + .section {
margin-top: 40px;
}
/* URL Input */
.url-input-container {
display: flex;
align-items: center;
gap: 16px;
margin-bottom: 20px;
background: #2c2c2c;
padding: 8px;
border-radius: 8px;
width: 100%;
}
.url-input-container input {
flex-grow: 1;
padding: 10px;
font-size: 14px;
border: 1px solid #444;
border-radius: 8px;
background: #1e1e1e;
color: #eee;
word-break: break-all;
}
/* Message Content */
.message-content {
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
}
/* Speaker Button */
.speaker-button {
background: none;
border: none;
color: #aaa;
cursor: pointer;
padding: 2px;
transition: color 0.2s ease;
}
.speaker-button:hover {
color: white;
}
/* Toast Message */
.fade-message {
position: absolute;
bottom: 100px;
left: 50%;
transform: translateX(-50%);
background-color: #222;
color: #fff;
padding: 10px 20px;
border-radius: 20px;
opacity: 0.95;
animation: fadeOut 3s forwards;
font-size: 14px;
z-index: 999;
}
@keyframes fadeOut {
0% { opacity: 0.95; }
80% { opacity: 0.6; }
100% { opacity: 0; display: none; }
}
`, gs = Se(/* @__PURE__ */ f.jsx("path", {
d: "M2.01 21 23 12 2.01 3 2 10l15 2-15 2z"
}), "Send");
var Nn = {
color: void 0,
size: void 0,
className: void 0,
style: void 0,
attr: void 0
}, en = $e.createContext && /* @__PURE__ */ $e.createContext(Nn), ys = ["attr", "size", "title"];
function bs(e, t) {
if (e == null) return {};
var r = xs(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 xs(e, t) {
if (e == null) return {};
var r = {};
for (var n in e)
if (Object.prototype.hasOwnProperty.call(e, n)) {
if (t.indexOf(n) >= 0) continue;
r[n] = e[n];
}
return r;
}
function Et() {
return Et = Object.assign ? Object.assign.bind() : function(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t];
for (var n in r)
Object.prototype.hasOwnProperty.call(r, n) && (e[n] = r[n]);
}
return e;
}, Et.apply(this, arguments);
}
function tn(e, t) {
var r = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var n = Object.getOwnPropertySymbols(e);
t && (n = n.filter(function(o) {
return Object.getOwnPropertyDescriptor(e, o).enumerable;
})), r.push.apply(r, n);
}
return r;
}
function Tt(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t] != null ? arguments[t] : {};
t % 2 ? tn(Object(r), !0).forEach(function(n) {
vs(e, n, r[n]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : tn(Object(r)).forEach(function(n) {
Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
});
}
return e;
}
function vs(e, t, r) {
return t = ws(t), t in e ? Object.defineProperty(e, t, { value: r, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = r, e;
}
function ws(e) {
var t = Ss(e, "string");
return typeof t == "symbol" ? t : t + "";
}
function Ss(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 In(e) {
return e && e.map((t, r) => /* @__PURE__ */ $e.createElement(t.tag, Tt({
key: r
}, t.attr), In(t.child)));
}
function Mn(e) {
return (t) => /* @__PURE__ */ $e.createElement(Cs, Et({
attr: Tt({}, e.attr)
}, t), In(e.child));
}
function Cs(e) {
var t = (r) => {
var {
attr: n,
size: o,
title: a
} = e, c = bs(e, ys), l = o || r.size || "1em", d;
return r.className && (d = r.className), e.className && (d = (d ? d + " " : "") + e.className), /* @__PURE__ */ $e.createElement("svg", Et({
stroke: "currentColor",
fill: "currentColor",
strokeWidth: "0"
}, r.attr, n, c, {
className: d,
style: Tt(Tt({
color: e.color || r.color
}, r.style), e.style),
height: l,
width: l,
xmlns: "http://www.w3.org/2000/svg"
}), a && /* @__PURE__ */ $e.createElement("title", null, a), e.children);
};
return en !== void 0 ? /* @__PURE__ */ $e.createElement(en.Consumer, null, (r) => t(r)) : t(Nn);
}
function Es(e) {
return Mn({ attr: { viewBox: "0 0 1024 1024" }, child: [{ tag: "path", attr: { d: "M909.1 209.3l-56.4 44.1C775.8 155.1 656.2 92 521.9 92 290 92 102.3 279.5 102 511.5 101.7 743.7 289.8 932 521.9 932c181.3 0 335.8-115 394.6-276.1 1.5-4.2-.7-8.9-4.9-10.3l-56.7-19.5a8 8 0 0 0-10.1 4.8c-1.8 5-3.8 10-5.9 14.9-17.3 41-42.1 77.8-73.7 109.4A344.77 344.77 0 0 1 655.9 829c-42.3 17.9-87.4 27-133.8 27-46.5 0-91.5-9.1-133.8-27A341.5 341.5 0 0 1 279 755.2a342.16 342.16 0 0 1-73.7-109.4c-17.9-42.4-27-87.4-27-133.9s9.1-91.5 27-133.9c17.3-41 42.1-77.8 73.7-109.4 31.6-31.6 68.4-56.4 109.3-73.8 42.3-17.9 87.4-27 133.8-27 46.5 0 91.5 9.1 133.8 27a341.5 341.5 0 0 1 109.3 73.8c9.9 9.9 19.2 20.4 27.8 31.4l-60.2 47a8 8 0 0 0 3 14.1l175.6 43c5 1.2 9.9-2.6 9.9-7.7l.8-180.9c-.1-6.6-7.8-10.3-13-6.2z" }, child: [] }] })(e);
}
const rn = Se(/* @__PURE__ */ f.jsx("path", {
d: "M12 14c1.66 0 2.99-1.34 2.99-3L15 5c0-1.66-1.34-3-3-3S9 3.34 9 5v6c0 1.66 1.34 3 3 3m5.3-3c0 3-2.54 5.1-5.3 5.1S6.7 14 6.7 11H5c0 3.41 2.72 6.23 6 6.72V21h2v-3.28c3.28-.48 6-3.3 6-6.72z"
}), "Mic"), Ts = Se(/* @__PURE__ */ f.jsx("path", {
d: "M3 9v6h4l5 5V4L7 9zm13.5 3c0-1.77-1.02-3.29-2.5-4.03v8.05c1.48-.73 2.5-2.25 2.5-4.02M14 3.23v2.06c2.89.86 5 3.54 5 6.71s-2.11 5.85-5 6.71v2.06c4.01-.91 7-4.49 7-8.77s-2.99-7.86-7-8.77"
}), "VolumeUp"), ks = Se(/* @__PURE__ */ f.jsx("path", {
d: "M6 19h4V5H6zm8-14v14h4V5z"
}), "Pause");
function Os(e) {
return Mn({ attr: { viewBox: "0 0 24 24" }, child: [{ tag: "path", attr: { fill: "none", d: "M0 0h24v24H0z" }, child: [] }, { tag: "path", attr: { d: "M21 12.22C21 6.73 16.74 3 12 3c-4.69 0-9 3.65-9 9.28-.6.34-1 .98-1 1.72v2c0 1.1.9 2 2 2h1v-6.1c0-3.87 3.13-7 7-7s7 3.13 7 7V19h-8v2h8c1.1 0 2-.9 2-2v-1.22c.59-.31 1-.92 1-1.64v-2.3c0-.7-.41-1.31-1-1.62z" }, child: [] }, { tag: "circle", attr: { cx: "9", cy: "13", r: "1" }, child: [] }, { tag: "circle", attr: { cx: "15", cy: "13", r: "1" }, child: [] }, { tag: "path", attr: { d: "M18 11.03A6.04 6.04 0 0 0 12.05 6c-3.03 0-6.29 2.51-6.03 6.45a8.075 8.075 0 0 0 4.86-5.89c1.31 2.63 4 4.44 7.12 4.47z" }, child: [] }] })(e);
}
const _s = Se(/* @__PURE__ */ f.jsx("path", {
d: "M7 18h2V6H7zm4 4h2V2h-2zm-8-8h2v-4H3zm12 4h2V6h-2zm4-8v4h2v-4z"
}), "GraphicEq"), Rs = Se(/* @__PURE__ */ f.jsx("path", {
d: "M19 11h-1.7c0 .74-.16 1.43-.43 2.05l1.23 1.23c.56-.98.9-2.09.9-3.28m-4.02.17c0-.06.02-.11.02-.17V5c0-1.66-1.34-3-3-3S9 3.34 9 5v.18zM4.27 3 3 4.27l6.01 6.01V11c0 1.66 1.33 3 2.99 3 .22 0 .44-.03.65-.08l1.66 1.66c-.71.33-1.5.52-2.31.52-2.76 0-5.3-2.1-5.3-5.1H5c0 3.41 2.72 6.23 6 6.72V21h2v-3.28c.91-.13 1.77-.45 2.54-.9L19.73 21 21 19.73z"
}), "MicOff"), Ps = Se(/* @__PURE__ */ f.jsx("path", {
d: "M20.01 15.38c-1.23 0-2.42-.2-3.53-.56-.35-.12-.74-.03-1.01.24l-1.57 1.97c-2.83-1.35-5.48-3.9-6.89-6.83l1.95-1.66c.27-.28.35-.67.24-1.02-.37-1.11-.56-2.3-.56-3.53 0-.54-.45-.99-.99-.99H4.19C3.65 3 3 3.24 3 3.99 3 13.28 10.73 21 20.01 21c.71 0 .99-.63.99-1.18v-3.45c0-.54-.45-.99-.99-.99"
}), "Call"), As = Se(/* @__PURE__ */ f.jsx("path", {
d: "M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2M6 9h12v2H6zm8 5H6v-2h8zm4-6H6V6h12z"
}), "Chat"), js = Se(/* @__PURE__ */ f.jsx("path", {
d: "m17.34 14.54-1.43-1.43c.56-.73 1.05-1.5 1.47-2.32l-2.2-2.2c-.28-.28-.36-.67-.25-1.02.37-1.12.57-2.32.57-3.57 0-.55.45-1 1-1H20c.55 0 1 .45 1 1 0 3.98-1.37 7.64-3.66 10.54m-2.82 2.81C11.63 19.64 7.97 21 4 21c-.55 0-1-.45-1-1v-3.49c0-.55.45-1 1-1 1.24 0 2.45-.2 3.57-.57.35-.12.75-.03 1.02.24l2.2 2.2c.81-.42 1.58-.9 2.3-1.46L1.39 4.22l1.42-1.41L21.19 21.2l-1.41 1.41z"
}), "PhoneDisabled"), $s = Se(/* @__PURE__ */ f.jsx("path", {
d: "M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2m0 16H8V7h11z"
}), "ContentCopy"), nn = (e) => `${String(Math.floor(e / 60)).padStart(2, "0")}:${String(e % 60).padStart(2, "0")}`, Ns = (e) => e.toLocaleString("en-US", {
month: "short",
day: "numeric",
hour: "numeric",
minute: "2-digit",
hour12: !0
});
function Ds() {
const [e, t] = re({
isOpen: !1,
showSettings: !1,
showDeveloperConsole: !1,
showSettingsIcon: !1,
notification: "",
isRecording: !1,
isMuted: !1,
isBotResponding: !1,
isLoading: !1
}), [r, n] = re(""), [o, a] = re(!1), [c, l] = re({
modal: !1,
state: "idle",
time: 0
}), [d, p] = re({
title: "AI Chat Assistant",
messages: [],
input: "",
speakingIndex: null
}), h = je(null), [m, y] = re(0), [k, S] = re("Hello! 👋 How can I help you today?"), s = je(null);
je(null);
const E = je(null), O = je(!1), I = je(!1), j = je("en-US"), P = je(c.state), [v, z] = re(!1), [M, K] = re(-1), [te, i] = re(0);
ut(() => {
P.current = c.state;
}, [c.state]);
const A = (g) => g.startsWith("hi") ? "hi-IN" : "en-IN", B = (g, C = 3e3) => {
t((T) => ({ ...T, notification: g })), setTimeout(() => t((T) => ({ ...T, notification: "" })), C);
}, V = () => {
t((g) => ({
...g,
isOpen: !g.isOpen,
showSettings: !1,
showDeveloperConsole: !1,
showSettingsIcon: !1
})), e.isOpen || (i(0), z(!0), K(d.messages.length - 1));
}, U = () => h.current = setInterval(() => {
l((g) => ({ ...g, time: g.time + 1 }));
}, 1e3), oe = () => {
h.current && clearInterval(h.current);
}, Q = async (g, C, T) => {
var yr;
const x = window.speechSynthesis, F = await new Promise((Oe) => {
let Ae = x.getVoices();
if (Ae.length) return Oe(Ae);
const Dn = setInterval(() => {
Ae = x.getVoices(), Ae.length && (clearInterval(Dn), Oe(Ae));
}, 200);
}), R = C.toLowerCase().startsWith("hi") ? "hi-IN" : "en-IN", pe = {
"en-IN": ["Lekha"],
"hi-IN": ["Google हिन्दी", "Lekha"]
}, Be = F.find((Oe) => {
var Ae;
return (Ae = pe[R]) == null ? void 0 : Ae.includes(Oe.name);
}) || F.find((Oe) => Oe.lang === R && Oe.name.toLowerCase().includes("female")) || F.find((Oe) => Oe.lang === R) || F[0], De = new SpeechSynthesisUtterance(g);
De.lang = R, De.voice = Be, O.current = !0, De.onend = () => {
O.current = !1, setTimeout(() => T == null ? void 0 : T(), 2e3);
}, (yr = s.current) == null || yr.abort(), x.cancel(), x.speak(De);
}, le = () => {
const g = s.current;
if (!g) return;
g.continuous = !0, g.interimResults = !0, g.lang = "en-IN";
let C = "";
g.onresult = (T) => {
let x = "";
for (let F = T.resultIndex; F < T.results.length; F++) {
const R = T.results[F][0].transcript;
T.results[F].isFinal ? C += R : x += R;
}
const _ = C + x;
p((F) => ({ ...F, input: _ }));
}, g.onerror = (T) => {
console.error("🎤 Recognition error:", T), t((x) => ({ ...x, isRecording: !1 }));
}, g.onend = () => {
console.log("🎤 Recognition ended"), t((T) => ({ ...T, isRecording: !1 }));
};
try {
g.start(), t((T) => ({ ...T, isRecording: !0 }));
} catch (T) {
console.error("🎤 Error starting recognition:", T);
}
}, me = async (g) => new Promise(async (C) => {
try {
const T = await fetch("https://datalysis.rag-chatbot-web.shop/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ query: g, project_name: "genaitechsol." })
}), x = await T.json(), _ = T.ok ? x.response : "Sorry, I couldn't understand that.", F = T.ok ? x.language : "en", R = A(F);
j.current = R, console.log("🌐 Detected language:", F, "| Locale:", R), p((pe) => ({
...pe,
messages: [
...pe.messages,
{ text: g, sender: "user", timestamp: /* @__PURE__ */ new Date() },
{ text: _, sender: "bot", timestamp: /* @__PURE__ */ new Date() }
]
})), Q(_, F, () => C());
} catch (T) {
console.error("❌ Chat fetch error:", T), Q("Something went wrong.", "en", () => C());
}
}), he = () => {
const g = s.current;
if (!g) {
console.error("❌ recognitionRef is null");
return;
}
if (O.current) {
console.log("⛔ Skipping recognition — bot still speaking");
return;
}
if (I.current) {
console.log("⏳ Recognition already active, skipping start.");
return;
}
g.continuous = !1, g.interimResults = !1, g.lang = j.current || "en-IN", g.onstart = () => {
console.log("✅ Recognition started"), I.current = !0;
}, g.onend = () => {
if (I.current = !1, P.current !== "active") return;
const C = () => {
O.current ? (console.log("🛑 Still speaking... delaying recognition retry"), setTimeout(C, 1e3)) : (console.log("🎧 Restarting recognition (not speaking)"), he());
};
setTimeout(C, 500);
}, g.onerror = (C) => {
I.current = !1, console.error("❌ Recognition error:", C), P.current === "active" && setTimeout(() => he(), 500);
}, g.onresult = (C) => {
if (O.current) {
console.log("🛑 Ignored input — bot still speaking");
return;
}
const T = C.results[0][0].transcript.trim();
console.log("🗣️ Heard:", T), me(T).then(() => {
P.current === "active" && he();
});
};
try {
console.log("🎙️ Starting recognition in", g.lang), g.start();
} catch (C) {
console.error("❌ Failed to start:", C);
}
}, u = (g, C) => {
const T = new SpeechSynthesisUtterance(g);
T.lang = "en-US", T.onend = () => p((x) => ({ ...x, speakingIndex: null })), window.speechSynthesis.cancel(), window.speechSynthesis.speak(T), p((x) => ({ ...x, speakingIndex: C }));
}, w = () => {
window.speechSynthesis.cancel(), p((g) => ({ ...g, speakingIndex: null }));
}, $ = async () => {
try {
const C = await (await fetch("https://datalysis.rag-chatbot-web.shop/get_config?project_name=genaitechsol.")).json(), T = C.initial_message || k, x = C.chatbot_title || d.title;
S(T), p((_) => ({
..._,
title: x,
messages: [{ text: T, sender: "bot", timestamp: /* @__PURE__ */ new Date() }]
})), v && !e.isOpen && i((_) => _ + 1);
} catch {
const g = "Hello! 👋 How can I help you today?";
S(g), p((C) => ({
...C,
messages: [{ text: g, sender: "bot", timestamp: /* @__PURE__ */ new Date() }]
}));
}
}, N = async () => {
if (!d.input.trim() || e.isBotResponding) return;
const g = {
text: d.input,
sender: "user",
timestamp: /* @__PURE__ */ new Date()
};
p((C) => ({ ...C, input: "", messages: [...C.messages, g] })), t((C) => ({ ...C, isBotResponding: !0, isLoading: !0 }));
try {
const C = await fetch("https://datalysis.rag-chatbot-web.shop/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ query: g.text, project_name: "genaitechsol." })
}), T = await C.json(), x = {
text: C.ok ? T.response : `Error: ${T.detail}`,
sender: "bot",
timestamp: /* @__PURE__ */ new Date()
};
p((_) => ({ ..._, messages: [..._.messages, x] }));
} catch {
p((C) => ({
...C,
messages: [
...C.messages,
{
text: "Error connecting to server.",
sender: "bot",
timestamp: /* @__PURE__ */ new Date()
}
]
}));
} finally {
t((C) => ({ ...C, isBotResponding: !1, isLoading: !1 }));
}
}, D = async (g) => {
try {
await navigator.clipboard.writeText(g), B("Copied to clipboard!");
} catch (C) {
console.error("Failed to copy: ", C);
}
};
ut(() => {
e.isOpen ? (i(0), K(d.messages.length - 1)) : i(d.messages.length - (M + 1));
}, [d.messages, e.isOpen, M]), ut(() => {
const g = window.SpeechRecognition || window.webkitSpeechRecognition;
g && (s.current = new g()), $();
}, []), ut(() => {
E.current && (E.current.scrollTop = E.current.scrollHeight);
}, [d.messages]);
const L = (g, C) => /* @__PURE__ */ f.jsxs("span", { style: { display: "flex", alignItems: "center", gap: "8px" }, children: [
d.speakingIndex === C ? /* @__PURE__ */ f.jsx(
ks,
{
onClick: w,
fontSize: "small",
style: { cursor: "pointer", color: "white" }
}
) : /* @__PURE__ */ f.jsx(
Ts,
{
onClick: () => u(g.text, C),
fontSize: "small",
style: { cursor: "pointer", color: "white" }
}
),
/* @__PURE__ */ f.jsx(
$s,
{
onClick: () => D(g.text),
fontSize: "small",
style: { cursor: "pointer", color: "white" }
}
)
] });
return /* @__PURE__ */ f.jsxs("div", { className: "chatbot-container", children: [
!e.isOpen && /* @__PURE__ */ f.jsxs("button", { className: "chat-icon", onClick: V, children: [
"💬",
te > 0 && /* @__PURE__ */ f.jsx("span", { className: "chat-badge", children: te })
] }),
e.isOpen && /* @__PURE__ */ f.jsxs("div", { className: "chatbox", children: [
/* @__PURE__ */ f.jsxs("div", { className: "chat-header", children: [
/* @__PURE__ */ f.jsx(
"span",
{
onClick: () => {
y((g) => {
const C = g + 1;
return C === 3 ? (t((T) => ({ ...T, showSettingsIcon: !0 })), 0) : (setTimeout(() => y(0), 400), C);
});
},
children: d.title
}
),
/* @__PURE__ */ f.jsxs("div", { className: "icons", children: [
/* @__PURE__ */ f.jsx(Es, { className: "icon", onClick: $, title: "Reset" }),
e.showSettingsIcon && /* @__PURE__ */ f.jsx(
ps,
{
className: "icon",
onClick: () => t((g) => ({ ...g, showSettings: !0 }))
}
),
/* @__PURE__ */ f.jsx(ht, { className: "icon", onClick: V })
] })
] }),
/* @__PURE__ */ f.jsx("div", { className: "chat-body", ref: E, children: e.showDeveloperConsole ? /* @__PURE__ */ f.jsx(
ms,
{
closeConsole: () => {
a(!1), t((g) => ({ ...g, showDeveloperConsole: !1 })), $();
},
openChatbot: () => t((g) => ({ ...g, isOpen: !0 }))
}
) : /* @__PURE__ */ f.jsxs(f.Fragment, { children: [
d.messages.map((g, C) => /* @__PURE__ */ f.jsxs(
"div",
{
className: g.sender === "bot" ? "bot-message" : "user-message",
children: [
/* @__PURE__ */ f.jsx("div", { className: "message-content", children: g.text }),
/* @__PURE__ */ f.jsxs("div", { className: "message-meta", children: [
/* @__PURE__ */ f.jsx("span", { className: "timestamp", children: Ns(new Date(g.timestamp)) }),
g.sender === "bot" && L(g, C)
] })
]
},
C
)),
e.isLoading && /* @__PURE__ */ f.jsxs("div", { className: "bot-message thinking-icon", children: [
/* @__PURE__ */ f.jsx("span", { className: "dot one" }),
/* @__PURE__ */ f.jsx("span", { className: "dot two" }),
/* @__PURE__ */ f.jsx("span", { className: "dot three" })
] })
] }) }),
c.modal && /* @__PURE__ */ f.jsxs("div", { className: "call-ui", children: [
/* @__PURE__ */ f.jsxs(
"div",
{
className: "call-header",
style: {
display: "flex",
justifyContent: "space-between",
alignItems: "center",
padding: "0 10px"
},
children: [
/* @__PURE__ */ f.jsx(
ht,
{
style: { cursor: "pointer" },
onClick: () => {
var g;
(g = s.current) == null || g.stop(), speechSynthesis.cancel(), oe(), l({ modal: !1, state: "idle", time: 0 });
}
}
),
/* @__PURE__ */ f.jsx(
"span",
{
style: {
flex: 1,
textAlign: "center",
fontWeight: "bold",
fontSize: "18px"
},
children: "Agent"
}
),
/* @__PURE__ */ f.jsx("div", { style: { width: "24px" } })
]
}
),
/* @__PURE__ */ f.jsxs("div", { className: "call-content", children: [
/* @__PURE__ */ f.jsx("img", { src: "/agent.jpg", alt: "Agent", className: "call-avatar" }),
/* @__PURE__ */ f.jsxs("h2", { className: "agent-name", children: [
"Sera ",
/* @__PURE__ */ f.jsx("span", { className: "ai-badge", children: "AI" })
] }),
/* @__PURE__ */ f.jsx("p", { children: "Customer Support Specialist" }),
c.state === "idle" && /* @__PURE__ */ f.jsxs(
"button",
{
className: "talk-button",
onClick: () => {
l({ modal: !0, state: "active", time: 0 }), Q(
"Hello, my name is Sera, Customer Support Specialist. How can I assist you today?",
"en",
() => {
he(), U();
}
);
},
children: [
/* @__PURE__ */ f.jsx(_s, { className: "talk-button-icon" }),
" Talk to Sera"
]
}
),
c.state === "active" && /* @__PURE__ */ f.jsxs(f.Fragment, { children: [
/* @__PURE__ */ f.jsx("p", { className: "listening-text", children: "Listening..." }),
/* @__PURE__ */ f.jsx("p", { style: { color: "#ccc", marginTop: "4px" }, children: nn(c.time) }),
/* @__PURE__ */ f.jsxs("div", { className: "call-control-buttons", children: [
/* @__PURE__ */ f.jsx(
"button",
{
className: "mute-call-button",
onClick: () => t((g) => ({ ...g, isMuted: !g.isMuted })),
children: e.isMuted ? /* @__PURE__ */ f.jsx(Rs, { style: { fontSize: 24 } }) : /* @__PURE__ */ f.jsx(rn, { style: { fontSize: 24 } })
}
),
/* @__PURE__ */ f.jsx(
"button",
{
className: "end-call-button",
onClick: () => {
var g;
(g = s.current) == null || g.stop(), speechSynthesis.cancel(), l((C) => ({ ...C, state: "ended" })), oe();
},
children: /* @__PURE__ */ f.jsx(ht, { style: { fontSize: 24 } })
}
)
] }),
/* @__PURE__ */ f.jsxs("div", { className: "call-control-labels", children: [
/* @__PURE__ */ f.jsx("span", { children: e.isMuted ? "Unmute" : "Mute" }),
/* @__PURE__ */ f.jsx("span", { children: "End Call" })
] })
] }),
c.state === "ended" && /* @__PURE__ */ f.jsxs(f.Fragment, { children: [
/* @__PURE__ */ f.jsxs("div", { className: "call-ended-section", children: [
/* @__PURE__ */ f.jsx(js, { style: { fontSize: 20 } }),
/* @__PURE__ */ f.jsx("span", { className: "call-ended-text", children: "Call Ended" }),
/* @__PURE__ */ f.jsx("span", { className: "call-time", children: nn(c.time) })
] }),
/* @__PURE__ */ f.jsxs("div", { className: "call-ended-buttons", children: [
/* @__PURE__ */ f.jsxs(
"button",
{
onClick: () => {
l({ modal: !0, state: "active", time: 0 }), Q(
"Welcome back. How can I help you again?",
"en",
() => {
U(), he();
}
);
},
children: [
/* @__PURE__ */ f.jsx(Ps, { style: { fontSize: 18 } }),
"Call Again"
]
}
),
/* @__PURE__ */ f.jsxs(
"button",
{
onClick: () => l((g) => ({ ...g, modal: !1 })),
children: [
/* @__PURE__ */ f.jsx(As, { style: { fontSize: 18 } }),
"Back to Chat"
]
}
)
] })
] })
] })
] }),
!e.showDeveloperConsole && /* @__PURE__ */ f.jsxs(f.Fragment, { children: [
/* @__PURE__ */ f.jsxs("div", { className: "chat-input-container", children: [
/* @__PURE__ */ f.jsx(
"input",
{
className: "chat-input",
value: d.input,
placeholder: e.isBotResponding ? "You can type, but wait..." : "Type or hold mic to speak...",
onChange: (g) => p((C) => ({ ...C, input: g.target.value })),
onKeyDown: (g) => g.key === "Enter" && !e.isBotResponding && N()
}
),
/* @__PURE__ */ f.jsx(
"button",
{
className: "send-button",
onClick: N,
disabled: e.isBotResponding,
children: /* @__PURE__ */ f.jsx(gs, { fontSize: "small" })
}
)
] }),
/* @__PURE__ */ f.jsxs("div", { className: "chat-input-secondary-buttons", children: [
/* @__PURE__ */ f.jsx(
"button",
{
className: `mic-button ${e.isRecording ? "recording" : ""}`,
onMouseDown: le,
onMouseUp: () => {
var g;
(g = s.current) == null || g.stop(), t((C) => ({ ...C, isRecording: !1 }));
},
onTouchStart: le,
onTouchEnd: () => {
var g;
(g = s.current) == null || g.stop(), t((C) => ({ ...C, isRecording: !1 }));
},
title: "Hold to record",
children: /* @__PURE__ */ f.jsx(rn, {})
}
),
/* @__PURE__ */ f.jsx(
"button",
{
className: "call-agent-circle-button",
onClick: () => l({ modal: !0, state: "idle", time: 0 }),
title: "Talk to Agent",
children: /* @__PURE__ */ f.jsx(Os, { size: 30 })
}
)
] })
] }),
e.showSettings && /* @__PURE__ */ f.jsx("div", { className: "admin-modal", children: /* @__PURE__ */ f.jsxs("div", { className: "admin-modal-content", children: [
/* @__PURE__ */ f.jsxs("div", { className: "admin-header", children: [
/* @__PURE__ */ f.jsx("h3", { children: "Enter Admin Key" }),
/* @__PURE__ */ f.jsx(
ht,
{
className: "close-icon",
onClick: () => t((g) => ({ ...g, showSettings: !1 }))
}
)
] }),
/* @__PURE__ */ f.jsx(
"input",
{
type: "password",
value: r,
onChange: (g) => n(g.target.value),
className: "admin-input",
placeholder: "Enter admin key"
}
),
/* @__PURE__ */ f.jsx(
"button",
{
className: "admin-submit",
onClick: () => {
r === "admin123" ? (a(!0), t((g) => ({
...g,
showSettings: !1,
showDeveloperConsole: !0
}))) : B("Incorrect Admin Key!");
},
children: "Submit"
}
)
] }) }),
e.notification && /* @__PURE__ */ f.jsx("div", { className: "fade-message", children: e.notification }),
/* @__PURE__ */ f.jsx("div", { className: "powered-by-section", children: /* @__PURE__ */ f.jsxs(
"a",
{
href: "https://genaitechsol.com",
target: "_blank",
rel: "noopener noreferrer",
className: "powered-by-link",
children: [
/* @__PURE__ */ f.jsx("span", { children: "Powered by" }),
/* @__PURE__ */ f.jsx(
"img",
{
src: "/logo.png",
alt: "GTS Logo",
className: "powered-by-logo"
}
),
/* @__PURE__ */ f.jsx("span", { children: "GenerativeAI Technology Solutions (GTS)" })
]
}
) })
] })
] });
}
const Is = `
/* your entire CSS string... */
.chatbot-container {
position: fixed;
bottom: 20px;
right: 20px;
z-index: 1000;
}
.admin-modal {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(15, 15, 15, 0.95);
display: flex;
justify-content: center;
align-items: center;
z-index: 1001;
border-radius: 10px;
}
.admin-modal-content {
background: #111;
padding: 24px 18px;
border-radius: 16px;
width: 90%;
max-width: 360px;
box-shadow: 0 0 12px rgba(0, 255, 255, 0.1);
display: flex;
flex-direction: column;
gap: 18px;
}
.admin-header {
display: flex;
justify-content: space-between;
align-items: center;
color: white;
}
.admin-header h3 {
margin: 0;
font-size: 18px;
}
.close-icon {
cursor: pointer;
font-size: 22px;
color: white;
transition: transform 0.2s ease;
}
.close-icon:hover {
transform: scale(1.2);
}
.admin-input {
padding: 12px 14px;
font-size: 14px;
border-radius: 8px;
border: 1px solid #333;
background: #1a1a1a;
color: white;
outline: none;
}
.admin-input::placeholder {
color: #777;
}
.admin-submit {
padding: 12px;
border: none;
border-radius: 10px;
font-size: 14px;
font-weight: bold;
background: linear-gradient(145deg, #00f0ff, #1831ed);
color: white;
cursor: pointer;
transition: background 0.3s ease;
}
.admin-submit:hover {
background: #222;
}
.chat-icon {
background: linear-gradient(145deg, #00f0ff, #1831ed);
color: white;
border: none;
border-radius: 50%;
width: 50px;
height: 50px;
font-size: 22px;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 0 15px rgba(0, 240, 255, 0.4);
transition: transform 0.2s ease;
margin-left: 250px;
}
.chat-icon.hidden {
opacity: 0;
pointer-events: none;
}
.chat-icon:hover { transform: scale(1.1); }
.chatbox {
position: fixed;
bottom: 80px;
right: 20px;
width: 430px;
height: 650px;
background: #111;
border-radius: 10px;
box-shadow: 0 0 20px rgba(0, 255, 255, 0.15);
display: flex;
flex-direction: column;
overflow: hidden;
animation: fadeIn 0.3s ease-in-out;
}
@keyframes fadeIn {
from { opacity: 0; transform: translateY(10px); }
to { opacity: 1; transform: translateY(0); }
}
.chat-header {
background: linear-gradient(145deg, #00f0ff, #1831ed);
color: black;
padding: 12px;
font-size: 18px;
display: flex;
font-weight: 900;
justify-content: space-between;
align-items: center;
}
.chat-header .icons {
display: flex; gap: 10px;
filter: drop-shadow(0 0 1px rgba(0, 0, 0, 0.4));
}
.chat-header .icon {
cursor: pointer;
font-size: 30px;
transition: transform 0.2s ease-in-out;
}
.chat-header .icon:hover { transform: scale(1.2); }
.chat-body {
flex: 1;
overflow-y: auto;
padding: 15px;
display: flex;
flex-direction: column;
gap: 10px;
align-items: flex-start;
}
.bot-message, .user-message {
padding: 8px 12px;
border-radius: 10px;
max-width: 80%;
box-shadow: 0 2px 4px rgba(0, 255, 255, 0.05);
}
.bot-message {
background: #222;
color: #e0e0e0;
align-self: flex-start;
padding: 12px 16px;
border-radius: 12px;
max-width: 80%;
width: fit-content;
margin: 4px 0;
box-shadow: 0 2px 4px rgba(0, 255, 255, 0.08);
word-break: break-word;
line-height: 1.4;
text-align: left;
}
.message-row {
display: flex;
flex-direction: column;
align-items: flex-start;
}
.message-row.user {
align-items: flex-end;
}
.message-content {
white-space: pre-wrap;
word-wrap: break-word;
font-size: 16px;
}
.user-message {
background: #333;
color: #fff;
align-self: flex-end;
padding: 10px 14px;
border-radius: 10px;
max-width: 80%;
margin: 4px 0;
box-shadow: 0 2px 4px rgba(0, 255, 255, 0.05);
word-break: break-word;
text-align: left;
}
.message-meta {
display: flex;
align-items: center;
justify-content: flex-start;
gap: 10px;
margin-top: 6px;
font-size: 12px;
color: white;
}
.timestamp {
white-space: nowrap;
font-size: 12px;
color: white;
margin-left: 8px;
margin-right: 80px;
}
.chat-input-container {
display: flex;
align-items: stretch;
padding: 10px;
gap: 10px;
background: #111;
border-top: 1px solid #333;
}
.chat-input {
flex: 1;
height: 60px; /* Match the send button height */
padding: 10px;
border-radius: 8px;
font-size: 14px;
background: #1a1a1a;
color: white;
border: 1px solid #333;
resize: none; /* Optional: if you want to prevent manual resizing */
margin-bottom: 0px;
}
.send-button {
width: 44px;
height: 80px;
margin-bottom: 0;
align-self: flex-end;
background: linear-gradient(145deg, #00f0ff, #1831ed);
border: none;
border-radius: 8px;
display: flex;
justify-content: center;
align-items: center;
color: white;
cursor: pointer;
}
.send-button:disabled {
background: rgb(94, 94, 96);
cursor: not-allowed;
}
.chat-input-secondary-buttons {
display: flex;
justify-content: center;
gap: 20px;
padding: 8px 0;
background: #111;
border-top: 1px solid #333;
}
.mic-button, .call-agent-circle-button {
width: 200px;
height: 50px;
font-size: 20px;
border-radius: 12px;
display: flex;
align-items: center;
justify-content: center;
background: linear-gradient(145deg, #00f0ff, #1831ed);
color: white;
border: none;
cursor: pointer;
transition: transform 0.2s ease;
}
.mic-button:hover, .call-agent-circle-button:hover {
background: #111;
transform: scale(1.01);
}
.thinking-icon {
display: flex;
gap: 5px;
}
.dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: #555;
animation: blink 1.4s infinite both;
}
.dot.one { animation-delay: 0s; }
.dot.two { animation-delay: 0.2s; }
.dot.three { animation-delay: 0.4s; }
@keyframes blink {
0%, 80%, 100% { opacity: 0; }
40% { opacity: 1; }
}
.call-ui {
position: absolute;
top: 0;
left: 0;
background: #111;
padding: 30px 20px;
border-radius: 0 0 20px 20px;
width: 100%;
height: 100%;
z-index: 5; /* make sure it overlays other elements */
box-sizing: border-box;
text-align: center;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.call-header {
display: flex;
justify-content: space-between;
align-items: center;
width: 100%;
color: white;
font-size: 18px;
font-weight: bold;
margin-bottom: 10px;
}
.call-header > span {
flex: 1;
text-align: center;
}
.call-header > svg {
cursor: pointer;
}
.call-content {
display: flex;
flex-direction: column;
align-items: center;
}
.call-content img.call-avatar {
width: 130px;
height: 130px;
border-radius: 50%;
object-fit: cover;
object-position: top center;
box-shadow: 0 0 12px rgba(0, 240, 255, 0.5);
margin: 20px auto 10px;
}
.agent-name {
display: flex;
align-items: center;
justify-content: center;
color: white;
font-weight: bold;
font-size: 22px;
margin-top: 10px;
gap: 8px;
}
.ai-badge {
font-size: 12px;
background: white;
color: black;
padding: 3px 6px;
border-radius: 6px;
}
.call-content p {
color: #ccc;
margin: 6px 0 20px;
font-size: 14px;
}
.talk-button {
background: linear-gradient(145deg, #00f0ff, #1831ed);
color: white;
border-radius: 20px;
font-weight: bold;
padding: 10px 18px;
width: 180px;
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
cursor: pointer;
}
.talk-button:hover {
background: #222;
}
.chat-badge {
position: absolute;
top: -4px;
right: -4px;
background: #ff3b30; /* iOS-like red */
color: white;
font-size: 12px;
font-weight: bold;
width: 20px;
height: 20px;
border-radius: 50%;
display: flex;
justify-content: center;
align-items: center;
box-shadow: 0 2px 6px rgba(0,0,0,0.3);
animation: pop-in 0.3s ease;
}
@keyframes pop-in {
0% { transform: scale(0.5); opacity: 0; }
80% { transform: scale(1.2); opacity: 1; }
100% { transform: scale(1); }
}
.listening-text { animation: wave 2s infinite; color: white; font-size: 14px; }
@keyframes wave { 0%, 100% { opacity: 1; } 50% { opacity: 0.6; } }
.call-control-buttons {
display: flex;
justify-content: center;
gap: 30px;
margin-top: 20px;
}
.mute-call-button, .end-call-button {
width: 60px;
height: 60px;
border-radius: 50%;
border: none;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
}
.mute-call-button { background: #d1cde8; color: black; }
.end-call-button { background: #ff4c4c; color: white; }
.mute-call-button:hover, .end-call-button:hover { transform: scale(1.1); }
.call-control-labels {
display: flex;
justify-content: center;
gap: 50px;
margin-top: 8px;
color: white;
font-size: 14px;
}
.call-ended-section {
display: flex;
justify-content: center;
align-items: center;
color: white;
gap: 10px;
margin-top: 10px;
}
.call-ended-buttons {
display: flex;
justify-content: center;
gap: 20px;
margin-top: 20px;
}
.call-ended-buttons button {
display: flex;
align-items: center;
gap: 8px;
background: #111;
color: white;
border: 1px solid #666;
border-radius: 25px;
padding: 10px 18px;
font-size: 14px;
cursor: pointer;
}
.call-ended-buttons button:hover {
background: #333;
transform: scale(1.05);
}
.powered-by-section {
text-align: center;
padding: 10px;
background-color: #0f0f0f;
border-top: 1px solid #333;
}
.powered-by-link {
display: inline-flex;
align-items: center;
gap: 6px;
color: #ccc;
font-size: 12px;
text-decoration: none;
transition: color 0.3s ease;
}
.powered-by-link:hover {
color: #00f0ff;
}
.powered-by-logo {
height: 16px;
width: auto;
vertical-align: middle;
}
@media screen and (max-width: 480px) {
.chatbox {
width: 95vw;
height: 90vh;
right: 2.5vw;
bottom: 10px;
border-radius: 12px;
}
.chat-icon {
margin-left: 0; /* Avoid unnecessary margin on small screens */
}
.chat-input-container {
flex-direction: column;
gap: 8px;
}
.send-button {
width: 100%;
height: 44px;
}
.chat-input {
height: 80px;
}
.mic-button, .call-agent-circle-button {
width: 100%;
font-size: 18px;
}
.call-ui {
padding: 20px 10px;
}
.call-header {
font-size: 16px;
}
.agent-name {
font-size: 18px;
}
.talk-button {
width: 100%;
}
.call-control-buttons {
flex-direction: row; /* horizontal layout */
flex-wrap: wrap;
justify-content: center;
gap: 15px;
}
.call-control-labels {
flex-direction: row; /* horizontal layout */
flex-wrap: wrap;
justify-content: center;
gap: 15px;
}
.chat-floating-bubble {
right: 15px;
}
.mic-button.recording svg {
color: red;
animation: blinkMic 1s infinite;
}
@keyframes blinkMic {
0%, 100% { opacity: 1; }
50% { opacity: 0.4; }
}
.chatbox {
width: 430px;
height: 650px;
/* other styles */
}
@media screen and (max-width: 480px) {
.chatbox {
width: 95vw;
height: 90vh;
right: 2.5vw;
bottom: 10px;
border-radius: 12px;
}
}
}
`;
if (typeof document < "u") {
const e = document.createElement("style");
e.innerHTML = Is, document.head.appendChild(e);
}
export {
Ds as Chatbot,
ms as DeveloperConsole
};