diff --git a/dist/index.js b/dist/index.js
index ea4cb95..b7f7389 100644
--- a/dist/index.js
+++ b/dist/index.js
@@ -1,55 +1,56 @@
-import { jsxs as I, jsx as a, Fragment as Z } from "react/jsx-runtime";
-import { useState as v, useRef as N, useEffect as C, useCallback as E, createContext as $, useMemo as _, useContext as P } from "react";
-import { HStack as k, IconButton as K, Button as R, Input as L, Text as S, Spinner as ee } from "@chakra-ui/react";
-import { IoChevronForwardOutline as O, IoChevronBackOutline as W } from "react-icons/io5";
-import te from "keycloak-js";
-import { useQuery as ne } from "@tanstack/react-query";
-import re from "axios";
-const De = (e) => new Intl.NumberFormat("fa-IR").format(Number(e)), p = (e) => String(e).replace(/\d/g, (t) => "۰۱۲۳۴۵۶۷۸۹"[Number(t)]), D = (e) => String(e).replace(/[۰-۹]/g, (n) => String("۰۱۲۳۴۵۶۷۸۹".indexOf(n))), Ke = ({
+import { jsxs as Y, jsx as x } from "react/jsx-runtime";
+import * as F from "react";
+import { useState as P, useRef as te, useEffect as L, useCallback as j, createContext as Je, useMemo as fe, useContext as He, forwardRef as Kr } from "react";
+import { HStack as W, IconButton as J, Button as Te, Input as _e, Text as q, extendTheme as Yr, withDefaultColorScheme as Vr, ChakraProvider as Wr, Spinner as qr } from "@chakra-ui/react";
+import { IoChevronForwardOutline as $e, IoChevronBackOutline as Re } from "react-icons/io5";
+import jr from "keycloak-js";
+import { useQuery as Ur, QueryClient as Gr, QueryClientProvider as Jr } from "@tanstack/react-query";
+import Hr from "axios";
+const xn = (e) => new Intl.NumberFormat("fa-IR").format(Number(e)), _ = (e) => String(e).replace(/\d/g, (r) => "۰۱۲۳۴۵۶۷۸۹"[Number(r)]), U = (e) => String(e).replace(/[۰-۹]/g, (t) => String("۰۱۲۳۴۵۶۷۸۹".indexOf(t))), Sn = ({
currentPage: e,
- totalPages: t,
- totalCount: n,
- onPageChange: l
+ totalPages: r,
+ totalCount: t,
+ onPageChange: n
}) => {
- const [c, s] = v(p(e)), [i, o] = v(!1), [d, u] = v(null), b = N(null), y = [.../* @__PURE__ */ new Set([1, e, t])].filter(
- (r) => r >= 1 && r <= t
+ const [i, o] = P(_(e)), [s, a] = P(!1), [u, c] = P(null), d = te(null), y = [.../* @__PURE__ */ new Set([1, e, r])].filter(
+ (f) => f >= 1 && f <= r
);
- C(() => {
- if (d !== null) {
- e === d && (u(null), o(!1), s(p(e)));
+ L(() => {
+ if (u !== null) {
+ e === u && (c(null), a(!1), o(_(e)));
return;
}
- i || s(p(e));
- }, [e, i, d]), C(() => {
- if (!i || !c || d !== null) return;
- const r = parseInt(D(c), 10);
- if (isNaN(r)) return;
- const h = setTimeout(() => {
- var w;
- const m = Math.min(Math.max(r, 1), t);
- m !== e ? (u(m), s(p(m)), l(m)) : (o(!1), s(p(e))), (w = b.current) == null || w.blur();
+ s || o(_(e));
+ }, [e, s, u]), L(() => {
+ if (!s || !i || u !== null) return;
+ const f = parseInt(U(i), 10);
+ if (isNaN(f)) return;
+ const m = setTimeout(() => {
+ var b;
+ const h = Math.min(Math.max(f, 1), r);
+ h !== e ? (c(h), o(_(h)), n(h)) : (a(!1), o(_(e))), (b = d.current) == null || b.blur();
}, 1e3);
- return () => clearTimeout(h);
+ return () => clearTimeout(m);
}, [
- c,
i,
- d,
- t,
+ s,
+ u,
+ r,
e,
- l
+ n
]);
- const A = () => {
- var m, w;
- const r = parseInt(D(c), 10);
- if (isNaN(r)) {
- s(p(e)), o(!1), u(null), (m = b.current) == null || m.blur();
+ const $ = () => {
+ var h, b;
+ const f = parseInt(U(i), 10);
+ if (isNaN(f)) {
+ o(_(e)), a(!1), c(null), (h = d.current) == null || h.blur();
return;
}
- const h = Math.min(Math.max(r, 1), t);
- h !== e ? (u(h), s(p(h)), l(h)) : (s(p(e)), o(!1), u(null)), (w = b.current) == null || w.blur();
+ const m = Math.min(Math.max(f, 1), r);
+ m !== e ? (c(m), o(_(m)), n(m)) : (o(_(e)), a(!1), c(null)), (b = d.current) == null || b.blur();
};
- return t === 0 || !n ? null : /* @__PURE__ */ I(
- k,
+ return r === 0 || !t ? null : /* @__PURE__ */ Y(
+ W,
{
justifyContent: "space-around",
backgroundColor: "white",
@@ -60,68 +61,68 @@ const De = (e) => new Intl.NumberFormat("fa-IR").format(Number(e)), p = (e) => S
borderColor: "blue.200",
w: "100%",
children: [
- /* @__PURE__ */ I(k, { spacing: 2, alignItems: "center", justifyContent: "center", children: [
- /* @__PURE__ */ a(
- K,
+ /* @__PURE__ */ Y(W, { spacing: 2, alignItems: "center", justifyContent: "center", children: [
+ /* @__PURE__ */ x(
+ J,
{
size: "md",
bg: "#e6e6f1",
color: "#4B49AC",
_hover: { bg: "#cbcbe8" },
- onClick: () => l(e - 1),
+ onClick: () => n(e - 1),
isDisabled: e === 1,
- icon: /* @__PURE__ */ a(O, {}),
+ icon: /* @__PURE__ */ x($e, {}),
"aria-label": "صفحه قبلی"
}
),
- y.map((r) => /* @__PURE__ */ a(
- R,
+ y.map((f) => /* @__PURE__ */ x(
+ Te,
{
size: "md",
px: 2,
- bg: e === r ? "#4B49AC" : "#e6e6f1",
- color: e === r ? "#e6e6f1" : "#4B49AC",
- _hover: { bg: e === r ? "#4B49AC" : "#cbcbe8" },
- onClick: () => l(r),
+ bg: e === f ? "#4B49AC" : "#e6e6f1",
+ color: e === f ? "#e6e6f1" : "#4B49AC",
+ _hover: { bg: e === f ? "#4B49AC" : "#cbcbe8" },
+ onClick: () => n(f),
variant: "soft",
- children: p(r)
+ children: _(f)
},
- r
+ f
)),
- /* @__PURE__ */ a(
- K,
+ /* @__PURE__ */ x(
+ J,
{
size: "md",
bg: "#e6e6f1",
color: "#4B49AC",
_hover: { bg: "#cbcbe8" },
- onClick: () => l(e + 1),
- isDisabled: e === t,
- icon: /* @__PURE__ */ a(W, {}),
+ onClick: () => n(e + 1),
+ isDisabled: e === r,
+ icon: /* @__PURE__ */ x(Re, {}),
"aria-label": "صفحه بعدی"
}
),
- /* @__PURE__ */ a(
- L,
+ /* @__PURE__ */ x(
+ _e,
{
- ref: b,
+ ref: d,
type: "text",
inputMode: "numeric",
placeholder: "صفحه",
w: "56px",
- value: c,
+ value: i,
onFocus: () => {
- o(!0), u(null), s("");
+ a(!0), c(null), o("");
},
- onChange: (r) => {
- const h = r.target.value, m = D(h).replace(/\D/g, "");
- s(p(m));
+ onChange: (f) => {
+ const m = f.target.value, h = U(m).replace(/\D/g, "");
+ o(_(h));
},
onBlur: () => {
- c || (s(p(e)), o(!1), u(null));
+ i || (o(_(e)), a(!1), c(null));
},
- onKeyDown: (r) => {
- r.key === "Enter" && A();
+ onKeyDown: (f) => {
+ f.key === "Enter" && $();
},
textAlign: "center",
color: "#1D2939",
@@ -131,58 +132,58 @@ const De = (e) => new Intl.NumberFormat("fa-IR").format(Number(e)), p = (e) => S
}
)
] }),
- /* @__PURE__ */ I(k, { spacing: 2, children: [
- /* @__PURE__ */ a(S, { w: "auto", fontWeight: "bold", whiteSpace: "nowrap", children: "تعداد کل:" }),
- /* @__PURE__ */ a(S, { children: p(n) })
+ /* @__PURE__ */ Y(W, { spacing: 2, children: [
+ /* @__PURE__ */ x(q, { w: "auto", fontWeight: "bold", whiteSpace: "nowrap", children: "تعداد کل:" }),
+ /* @__PURE__ */ x(q, { children: _(t) })
] })
]
}
);
-}, Ne = ({
+}, En = ({
currentPage: e,
- totalPages: t,
- totalCount: n,
- onPageChange: l
+ totalPages: r,
+ totalCount: t,
+ onPageChange: n
}) => {
- const [c, s] = v(p(e)), [i, o] = v(!1), [d, u] = v(null), b = N(null), y = Array.from(
- /* @__PURE__ */ new Set([1, e, e + 1, t])
- ).filter((r) => r >= 1 && r <= t).sort((r, h) => r - h);
- C(() => {
- if (d !== null) {
- e === d && (u(null), o(!1), s(p(e)));
+ const [i, o] = P(_(e)), [s, a] = P(!1), [u, c] = P(null), d = te(null), y = Array.from(
+ /* @__PURE__ */ new Set([1, e, e + 1, r])
+ ).filter((f) => f >= 1 && f <= r).sort((f, m) => f - m);
+ L(() => {
+ if (u !== null) {
+ e === u && (c(null), a(!1), o(_(e)));
return;
}
- i || s(p(e));
- }, [e, i, d]), C(() => {
- if (!i || !c || d !== null) return;
- const r = parseInt(D(c), 10);
- if (isNaN(r)) return;
- const h = setTimeout(() => {
- var w;
- const m = Math.min(Math.max(r, 1), t);
- m !== e ? (u(m), s(p(m)), l(m)) : (o(!1), s(p(e))), (w = b.current) == null || w.blur();
+ s || o(_(e));
+ }, [e, s, u]), L(() => {
+ if (!s || !i || u !== null) return;
+ const f = parseInt(U(i), 10);
+ if (isNaN(f)) return;
+ const m = setTimeout(() => {
+ var b;
+ const h = Math.min(Math.max(f, 1), r);
+ h !== e ? (c(h), o(_(h)), n(h)) : (a(!1), o(_(e))), (b = d.current) == null || b.blur();
}, 1e3);
- return () => clearTimeout(h);
+ return () => clearTimeout(m);
}, [
- c,
i,
- d,
- t,
+ s,
+ u,
+ r,
e,
- l
+ n
]);
- const A = () => {
- var m, w;
- const r = parseInt(D(c), 10);
- if (isNaN(r)) {
- s(p(e)), o(!1), u(null), (m = b.current) == null || m.blur();
+ const $ = () => {
+ var h, b;
+ const f = parseInt(U(i), 10);
+ if (isNaN(f)) {
+ o(_(e)), a(!1), c(null), (h = d.current) == null || h.blur();
return;
}
- const h = Math.min(Math.max(r, 1), t);
- h !== e ? (u(h), s(p(h)), l(h)) : (s(p(e)), o(!1), u(null)), (w = b.current) == null || w.blur();
+ const m = Math.min(Math.max(f, 1), r);
+ m !== e ? (c(m), o(_(m)), n(m)) : (o(_(e)), a(!1), c(null)), (b = d.current) == null || b.blur();
};
- return t === 0 || !n ? null : /* @__PURE__ */ I(
- k,
+ return r === 0 || !t ? null : /* @__PURE__ */ Y(
+ W,
{
justifyContent: "space-around",
backgroundColor: "white",
@@ -193,73 +194,73 @@ const De = (e) => new Intl.NumberFormat("fa-IR").format(Number(e)), p = (e) => S
borderColor: "blue.200",
w: "100%",
children: [
- /* @__PURE__ */ I(k, { spacing: 2, whiteSpace: "nowrap", children: [
- /* @__PURE__ */ a(S, { fontWeight: "bold", children: "صفحه" }),
- /* @__PURE__ */ a(S, { children: p(e) }),
- /* @__PURE__ */ a(S, { fontWeight: "bold", children: "از" }),
- /* @__PURE__ */ a(S, { children: p(t) })
+ /* @__PURE__ */ Y(W, { spacing: 2, whiteSpace: "nowrap", children: [
+ /* @__PURE__ */ x(q, { fontWeight: "bold", children: "صفحه" }),
+ /* @__PURE__ */ x(q, { children: _(e) }),
+ /* @__PURE__ */ x(q, { fontWeight: "bold", children: "از" }),
+ /* @__PURE__ */ x(q, { children: _(r) })
] }),
- /* @__PURE__ */ I(k, { spacing: 2, alignItems: "center", justifyContent: "center", children: [
- /* @__PURE__ */ a(
- K,
+ /* @__PURE__ */ Y(W, { spacing: 2, alignItems: "center", justifyContent: "center", children: [
+ /* @__PURE__ */ x(
+ J,
{
size: "md",
bg: "#e6e6f1",
color: "#4B49AC",
_hover: { bg: "#cbcbe8" },
- onClick: () => l(e - 1),
+ onClick: () => n(e - 1),
isDisabled: e === 1,
- icon: /* @__PURE__ */ a(O, {}),
+ icon: /* @__PURE__ */ x($e, {}),
"aria-label": "صفحه قبلی"
}
),
- y.map((r) => /* @__PURE__ */ a(
- R,
+ y.map((f) => /* @__PURE__ */ x(
+ Te,
{
size: "md",
- bg: e === r ? "#4B49AC" : "#e6e6f1",
- color: e === r ? "#e6e6f1" : "#4B49AC",
- _hover: { bg: e === r ? "#4B49AC" : "#cbcbe8" },
- onClick: () => l(r),
+ bg: e === f ? "#4B49AC" : "#e6e6f1",
+ color: e === f ? "#e6e6f1" : "#4B49AC",
+ _hover: { bg: e === f ? "#4B49AC" : "#cbcbe8" },
+ onClick: () => n(f),
variant: "soft",
- children: p(r)
+ children: _(f)
},
- r
+ f
)),
- /* @__PURE__ */ a(
- K,
+ /* @__PURE__ */ x(
+ J,
{
size: "md",
bg: "#e6e6f1",
color: "#4B49AC",
_hover: { bg: "#cbcbe8" },
- onClick: () => l(e + 1),
- isDisabled: e === t,
- icon: /* @__PURE__ */ a(W, {}),
+ onClick: () => n(e + 1),
+ isDisabled: e === r,
+ icon: /* @__PURE__ */ x(Re, {}),
"aria-label": "صفحه بعدی"
}
),
- /* @__PURE__ */ a(
- L,
+ /* @__PURE__ */ x(
+ _e,
{
- ref: b,
+ ref: d,
type: "text",
inputMode: "numeric",
placeholder: "صفحه",
w: "100px",
- value: c,
+ value: i,
onFocus: () => {
- o(!0), u(null), s("");
+ a(!0), c(null), o("");
},
- onChange: (r) => {
- const h = r.target.value, m = D(h).replace(/\D/g, "");
- s(p(m));
+ onChange: (f) => {
+ const m = f.target.value, h = U(m).replace(/\D/g, "");
+ o(_(h));
},
onBlur: () => {
- c || (s(p(e)), o(!1), u(null));
+ i || (o(_(e)), a(!1), c(null));
},
- onKeyDown: (r) => {
- r.key === "Enter" && A();
+ onKeyDown: (f) => {
+ f.key === "Enter" && $();
},
textAlign: "center",
color: "#1D2939",
@@ -269,69 +270,69 @@ const De = (e) => new Intl.NumberFormat("fa-IR").format(Number(e)), p = (e) => S
}
)
] }),
- /* @__PURE__ */ I(k, { spacing: 2, whiteSpace: "nowrap", children: [
- /* @__PURE__ */ a(S, { fontWeight: "bold", children: "تعداد کل:" }),
- /* @__PURE__ */ a(S, { children: p(n) })
+ /* @__PURE__ */ Y(W, { spacing: 2, whiteSpace: "nowrap", children: [
+ /* @__PURE__ */ x(q, { fontWeight: "bold", children: "تعداد کل:" }),
+ /* @__PURE__ */ x(q, { children: _(t) })
] })
]
}
);
-}, Te = ({
+}, Cn = ({
currentPage: e,
- totalPages: t,
- totalCount: n,
- onPageChange: l
+ totalPages: r,
+ totalCount: t,
+ onPageChange: n
}) => {
- const [c, s] = v(""), [i, o] = v(!1), [d, u] = v(null), b = N(null), y = d ?? e, A = E(
- (x) => {
- const B = Math.min(Math.max(x, 1), t);
- o(!1), s(""), u(null), B !== e && l(B);
+ const [i, o] = P(""), [s, a] = P(!1), [u, c] = P(null), d = te(null), y = u ?? e, $ = j(
+ (w) => {
+ const v = Math.min(Math.max(w, 1), r);
+ a(!1), o(""), c(null), v !== e && n(v);
},
- [e, t, l]
- ), r = E(() => {
- if (!c) {
- o(!1), s(""), u(null);
+ [e, r, n]
+ ), f = j(() => {
+ if (!i) {
+ a(!1), o(""), c(null);
return;
}
- const x = parseInt(D(c), 10);
- if (isNaN(x)) {
- o(!1), s(""), u(null);
+ const w = parseInt(U(i), 10);
+ if (isNaN(w)) {
+ a(!1), o(""), c(null);
return;
}
- const B = Math.min(Math.max(x, 1), t);
- o(!1), s(""), B !== e ? (u(B), l(B)) : u(null);
- }, [c, e, t, l]);
- C(() => {
- var x;
- i && ((x = b.current) == null || x.focus());
- }, [i]), C(() => {
- d !== null && e === d && u(null);
- }, [e, d]), C(() => {
- if (!i || !c) return;
- const x = setTimeout(() => {
- r();
+ const v = Math.min(Math.max(w, 1), r);
+ a(!1), o(""), v !== e ? (c(v), n(v)) : c(null);
+ }, [i, e, r, n]);
+ L(() => {
+ var w;
+ s && ((w = d.current) == null || w.focus());
+ }, [s]), L(() => {
+ u !== null && e === u && c(null);
+ }, [e, u]), L(() => {
+ if (!s || !i) return;
+ const w = setTimeout(() => {
+ f();
}, 1e3);
- return () => clearTimeout(x);
- }, [c, i, r]);
- const h = () => {
- u(null), s(""), o(!0);
- }, m = (x, B = !1) => /* @__PURE__ */ a(
- R,
+ return () => clearTimeout(w);
+ }, [i, s, f]);
+ const m = () => {
+ c(null), o(""), a(!0);
+ }, h = (w, v = !1) => /* @__PURE__ */ x(
+ Te,
{
size: "md",
- bg: B ? "#4B49AC" : "#e6e6f1",
- color: B ? "#e6e6f1" : "#4B49AC",
- _hover: { bg: B ? "#4B49AC" : "#cbcbe8" },
- onClick: B ? h : () => A(x),
+ bg: v ? "#4B49AC" : "#e6e6f1",
+ color: v ? "#e6e6f1" : "#4B49AC",
+ _hover: { bg: v ? "#4B49AC" : "#cbcbe8" },
+ onClick: v ? m : () => $(w),
variant: "soft",
- children: p(x)
+ children: _(w)
},
- x
+ w
);
- if (t === 0 || !n) return null;
- const w = t > 1 && y !== 1, g = t > 1 && y !== t;
- return /* @__PURE__ */ a(
- k,
+ if (r === 0 || !t) return null;
+ const b = r > 1 && y !== 1, T = r > 1 && y !== r;
+ return /* @__PURE__ */ x(
+ W,
{
justifyContent: "center",
backgroundColor: "white",
@@ -341,39 +342,39 @@ const De = (e) => new Intl.NumberFormat("fa-IR").format(Number(e)), p = (e) => S
border: "1px",
borderColor: "blue.200",
w: "100%",
- children: /* @__PURE__ */ I(k, { spacing: 2, alignItems: "center", justifyContent: "center", children: [
- /* @__PURE__ */ a(
- K,
+ children: /* @__PURE__ */ Y(W, { spacing: 2, alignItems: "center", justifyContent: "center", children: [
+ /* @__PURE__ */ x(
+ J,
{
size: "md",
bg: "#e6e6f1",
color: "#4B49AC",
_hover: { bg: "#cbcbe8" },
- onClick: () => A(y - 1),
+ onClick: () => $(y - 1),
isDisabled: y === 1,
- icon: /* @__PURE__ */ a(O, {}),
+ icon: /* @__PURE__ */ x($e, {}),
"aria-label": "صفحه قبلی"
}
),
- w && m(1),
- i ? /* @__PURE__ */ a(
- L,
+ b && h(1),
+ s ? /* @__PURE__ */ x(
+ _e,
{
- ref: b,
+ ref: d,
type: "text",
inputMode: "numeric",
placeholder: "صفحه",
w: "48px",
- value: c,
- onChange: (x) => {
- const B = x.target.value, X = D(B).replace(/\D/g, "");
- s(p(X));
+ value: i,
+ onChange: (w) => {
+ const v = w.target.value, k = U(v).replace(/\D/g, "");
+ o(_(k));
},
onBlur: () => {
- c ? r() : (s(""), o(!1), u(null));
+ i ? f() : (o(""), a(!1), c(null));
},
- onKeyDown: (x) => {
- x.key === "Enter" && r(), x.key === "Escape" && (s(""), o(!1), u(null));
+ onKeyDown: (w) => {
+ w.key === "Enter" && f(), w.key === "Escape" && (o(""), a(!1), c(null));
},
textAlign: "center",
color: "#1D2939",
@@ -381,18 +382,18 @@ const De = (e) => new Intl.NumberFormat("fa-IR").format(Number(e)), p = (e) => S
minW: 0,
dir: "ltr"
}
- ) : m(y, !0),
- g && m(t),
- /* @__PURE__ */ a(
- K,
+ ) : h(y, !0),
+ T && h(r),
+ /* @__PURE__ */ x(
+ J,
{
size: "md",
bg: "#e6e6f1",
color: "#4B49AC",
_hover: { bg: "#cbcbe8" },
- onClick: () => A(y + 1),
- isDisabled: y === t,
- icon: /* @__PURE__ */ a(W, {}),
+ onClick: () => $(y + 1),
+ isDisabled: y === r,
+ icon: /* @__PURE__ */ x(Re, {}),
"aria-label": "صفحه بعدی"
}
)
@@ -400,250 +401,250 @@ const De = (e) => new Intl.NumberFormat("fa-IR").format(Number(e)), p = (e) => S
}
);
};
-let V = null, f = null, F = null, j = !1;
-const ie = $(null), oe = ({ url: e, realm: t, clientId: n }) => (f || (f = new te({
+let xe = null, C = null, ve = null, Se = !1;
+const Xr = Je(null), Qr = ({ url: e, realm: r, clientId: t }) => (C || (C = new jr({
url: e,
- realm: t,
- clientId: n
-})), f), se = (e) => (V = e, V), le = () => j, G = () => !!(f != null && f.authenticated), T = () => (f == null ? void 0 : f.token) ?? null, q = async (e = 30) => f ? f.updateToken(e) : !1, H = (e) => f == null ? void 0 : f.logout(e), _e = (e) => f == null ? void 0 : f.login(e), J = ({ config: e, initOptions: t = {} } = {}) => {
- const n = e ?? V;
- if (!(n != null && n.url) || !(n != null && n.realm) || !(n != null && n.clientId))
+ realm: r,
+ clientId: t
+})), C), Zr = (e) => (xe = e, xe), et = () => Se, Xe = () => !!(C != null && C.authenticated), se = () => (C == null ? void 0 : C.token) ?? null, Be = async (e = 30) => C ? C.updateToken(e) : !1, Qe = (e) => C == null ? void 0 : C.logout(e), gn = (e) => C == null ? void 0 : C.login(e), Ze = ({ config: e, initOptions: r = {} } = {}) => {
+ const t = e ?? xe;
+ if (!(t != null && t.url) || !(t != null && t.realm) || !(t != null && t.clientId))
throw new Error("Keycloak config is required.");
- se(n);
- const l = oe(n);
- return F || (F = l.init({
+ Zr(t);
+ const n = Qr(t);
+ return ve || (ve = n.init({
onLoad: "login-required",
checkLoginIframe: !1,
flow: "implicit",
- ...t
- }).then((c) => (j = !0, c)).catch((c) => {
- throw j = !0, c;
- })), F;
-}, ce = ({
+ ...r
+ }).then((i) => (Se = !0, i)).catch((i) => {
+ throw Se = !0, i;
+ })), ve;
+}, rt = ({
children: e,
- config: t,
- initOptions: n,
- loading: l = null
+ config: r,
+ initOptions: t,
+ loading: n = null
}) => {
- const [c, s] = v(!1), [i, o] = v(!1), [d, u] = v(null), b = N(!1), y = E(() => {
- f && (o(!!f.authenticated), u(f.token ?? null));
+ const [i, o] = P(!1), [s, a] = P(!1), [u, c] = P(null), d = te(!1), y = j(() => {
+ C && (a(!!C.authenticated), c(C.token ?? null));
}, []);
- C(() => (b.current = !0, J({ config: t, initOptions: n }).then((w) => {
- b.current && (o(!!w), u((f == null ? void 0 : f.token) ?? null), s(!0));
+ L(() => (d.current = !0, Ze({ config: r, initOptions: t }).then((b) => {
+ d.current && (a(!!b), c((C == null ? void 0 : C.token) ?? null), o(!0));
}).catch(() => {
- b.current && (o(!1), u(null), s(!0));
+ d.current && (a(!1), c(null), o(!0));
}), () => {
- b.current = !1;
- }), [t, n]);
- const A = E(() => f == null ? void 0 : f.login(), []), r = E((w) => f == null ? void 0 : f.logout(w), []), h = E(
- async (w = 30) => {
- if (!f) return !1;
- const g = await f.updateToken(w);
- return y(), g;
+ d.current = !1;
+ }), [r, t]);
+ const $ = j(() => C == null ? void 0 : C.login(), []), f = j((b) => C == null ? void 0 : C.logout(b), []), m = j(
+ async (b = 30) => {
+ if (!C) return !1;
+ const T = await C.updateToken(b);
+ return y(), T;
},
[y]
- ), m = _(
+ ), h = fe(
() => ({
- initialized: c,
- authenticated: i,
- token: d,
- login: A,
- logout: r,
- updateToken: h
+ initialized: i,
+ authenticated: s,
+ token: u,
+ login: $,
+ logout: f,
+ updateToken: m
}),
- [c, i, d, A, r, h]
+ [i, s, u, $, f, m]
);
- return c ? /* @__PURE__ */ a(ie.Provider, { value: m, children: e }) : l;
-}, Q = $(null), M = "permissions", ue = (e) => (e == null ? void 0 : e.storageKey) || M, ae = ({
+ return i ? /* @__PURE__ */ x(Xr.Provider, { value: h, children: e }) : n;
+}, er = Je(null), he = "permissions", tt = (e) => (e == null ? void 0 : e.storageKey) || he, nt = ({
user: e = null,
- children: t,
- config: n,
- loading: l = /* @__PURE__ */ a("div", { children: "Loading permissions..." }),
- errorFallback: c = /* @__PURE__ */ a("div", { children: "Error loading permissions" })
+ children: r,
+ config: t,
+ loading: n = /* @__PURE__ */ x("div", { children: "Loading permissions..." }),
+ errorFallback: i = /* @__PURE__ */ x("div", { children: "Error loading permissions" })
}) => {
- const s = ue(n), [i, o] = v(
- () => de(s)
- ), { data: d, isLoading: u, error: b } = be(n), y = d ?? i;
- C(() => {
- d && (fe(s, d), o(d));
- }, [d, s]);
- const A = _(
- () => pe(y),
+ const o = tt(t), [s, a] = P(
+ () => it(o)
+ ), { data: u, isLoading: c, error: d } = ut(t), y = u ?? s;
+ L(() => {
+ u && (ot(o, u), a(u));
+ }, [u, o]);
+ const $ = fe(
+ () => st(y),
[y]
- ), r = E(
- (w = "") => he(A, w),
- [A]
- ), h = E((w = "") => !r(w), [r]), m = _(
+ ), f = j(
+ (b = "") => at($, b),
+ [$]
+ ), m = j((b = "") => !f(b), [f]), h = fe(
() => ({
user: e,
- can: r,
- cannot: h,
+ can: f,
+ cannot: m,
permissions: y,
- isLoading: u,
- error: b
+ isLoading: c,
+ error: d
}),
- [e, r, h, y, u, b]
+ [e, f, m, y, c, d]
);
- return b && !y ? c : u && !y ? l : /* @__PURE__ */ a(Q.Provider, { value: m, children: t });
-}, de = (e = M) => {
+ return d && !y ? i : c && !y ? n : /* @__PURE__ */ x(er.Provider, { value: h, children: r });
+}, it = (e = he) => {
if (!(typeof window > "u"))
try {
- const t = localStorage.getItem(e);
- return t ? JSON.parse(t) : void 0;
+ const r = localStorage.getItem(e);
+ return r ? JSON.parse(r) : void 0;
} catch {
return;
}
-}, fe = (e = M, t) => {
+}, ot = (e = he, r) => {
if (!(typeof window > "u"))
try {
- localStorage.setItem(e, JSON.stringify(t));
+ localStorage.setItem(e, JSON.stringify(r));
} catch {
}
-}, ze = (e = M) => {
+}, An = (e = he) => {
if (!(typeof window > "u"))
try {
localStorage.removeItem(e);
} catch {
}
-}, pe = (e) => e ? new Set(e.map((t) => t.name)) : /* @__PURE__ */ new Set(), he = (e, t = "") => {
- if (!t) return !1;
- if (e.has(t) || [...e].some((l) => l.startsWith(t))) return !0;
- let n = t;
- for (; n.includes(":"); )
- if (n = n.slice(0, n.lastIndexOf(":")), e.has(`${n}:*`)) return !0;
+}, st = (e) => e ? new Set(e.map((r) => r.name)) : /* @__PURE__ */ new Set(), at = (e, r = "") => {
+ if (!r) return !1;
+ if (e.has(r) || [...e].some((n) => n.startsWith(r))) return !0;
+ let t = r;
+ for (; t.includes(":"); )
+ if (t = t.slice(0, t.lastIndexOf(":")), e.has(`${t}:*`)) return !0;
return !1;
-}, Y = {
+}, rr = {
all: ["permissions"],
- list: (e) => [...Y.all, e]
-}, me = async (e) => {
+ list: (e) => [...rr.all, e]
+}, ct = async (e) => {
if (!(e != null && e.url) || !(e != null && e.clientId))
throw new Error("Permission config requires url and clientId.");
- const t = T(), n = new URL(e.url);
- n.searchParams.set("client_id", e.clientId);
- const l = await fetch(n.toString(), {
+ const r = se(), t = new URL(e.url);
+ t.searchParams.set("client_id", e.clientId);
+ const n = await fetch(t.toString(), {
method: "GET",
headers: {
- ...t ? { Authorization: `Bearer ${t}` } : {}
+ ...r ? { Authorization: `Bearer ${r}` } : {}
}
});
- if (!l.ok)
+ if (!n.ok)
throw new Error("Failed to load permissions");
- return l.json();
-}, U = () => {
- const e = P(Q);
+ return n.json();
+}, ke = () => {
+ const e = He(er);
if (!e)
throw new Error("usePermission must be used within PermissionProvider");
return e;
-}, be = (e) => ne({
- queryKey: Y.list(e == null ? void 0 : e.clientId),
- queryFn: () => me(e),
- enabled: !!(e != null && e.url) && !!(e != null && e.clientId) && G(),
+}, ut = (e) => Ur({
+ queryKey: rr.list(e == null ? void 0 : e.clientId),
+ queryFn: () => ct(e),
+ enabled: !!(e != null && e.url) && !!(e != null && e.clientId) && Xe(),
staleTime: 1 / 0,
refetchOnWindowFocus: !1,
refetchOnReconnect: !1
-}), Me = ({
+}), Tn = ({
perm: e,
- children: t,
- fallback: n = /* @__PURE__ */ a("div", { children: "You are not allowed to do this" })
+ children: r,
+ fallback: t = /* @__PURE__ */ x("div", { children: "You are not allowed to do this" })
}) => {
- const { can: l } = U();
- return l(e) ? t : n;
-}, ge = ({ children: e }) => {
- const { can: t, permissions: n } = U();
- return n && t("admin") ? e : null;
-}, Fe = ({ children: e }) => {
- const { can: t, isLoading: n } = U();
- return C(() => {
- n || t("panel_access") || H();
- }, [n, t]), e;
+ const { can: n } = ke();
+ return n(e) ? r : t;
+}, _n = ({ children: e }) => {
+ const { can: r, permissions: t } = ke();
+ return t && r("admin") ? e : null;
+}, $n = ({ children: e }) => {
+ const { can: r, isLoading: t } = ke();
+ return L(() => {
+ t || r("panel_access") || Qe();
+ }, [t, r]), e;
};
-let z = null;
-const we = (e) => {
- const { api: t } = e, n = re.create({
- baseURL: t.baseUrl
- }), l = async () => {
- (!le() || !G()) && await J();
- }, c = async (i) => {
- await l();
- let o = T();
- if (o) {
+let le = null;
+const ft = (e) => {
+ const { api: r } = e, t = Hr.create({
+ baseURL: r.baseUrl
+ }), n = async () => {
+ (!et() || !Xe()) && await Ze();
+ }, i = async (s) => {
+ await n();
+ let a = se();
+ if (a) {
try {
- await q(5), o = T();
+ await Be(5), a = se();
} catch {
}
- i.headers = {
- ...i.headers,
- Authorization: `Bearer ${o}`
+ s.headers = {
+ ...s.headers,
+ Authorization: `Bearer ${a}`
};
}
- return i;
- }, s = async (i) => {
- var d;
- const o = i.config;
- if (((d = i == null ? void 0 : i.response) == null ? void 0 : d.status) === 401 && !(o != null && o._retry)) {
- o._retry = !0;
+ return s;
+ }, o = async (s) => {
+ var u;
+ const a = s.config;
+ if (((u = s == null ? void 0 : s.response) == null ? void 0 : u.status) === 401 && !(a != null && a._retry)) {
+ a._retry = !0;
try {
- await q(30);
- const u = T();
- return o.headers = {
- ...o.headers,
- Authorization: `Bearer ${u}`
- }, n(o);
+ await Be(30);
+ const c = se();
+ return a.headers = {
+ ...a.headers,
+ Authorization: `Bearer ${c}`
+ }, t(a);
} catch {
- H({ redirectUri: window.location.origin });
+ Qe({ redirectUri: window.location.origin });
}
}
- return Promise.reject(i);
+ return Promise.reject(s);
};
- return n.interceptors.request.use(c), n.interceptors.response.use(
- (i) => i,
- s
+ return t.interceptors.request.use(i), t.interceptors.response.use(
+ (s) => s,
+ o
), {
- api: n
+ api: t
};
-}, ye = (e) => (z = we(e), z), xe = () => {
- if (!z)
+}, lt = (e) => (le = ft(e), le), dt = () => {
+ if (!le)
throw new Error("api is not configured. Call configureApi(config) first.");
- return z.api;
-}, Ve = new Proxy(
+ return le.api;
+}, Rn = new Proxy(
{},
{
- get(e, t) {
- return xe()[t];
+ get(e, r) {
+ return dt()[r];
}
}
);
-function ve() {
- const [e, t] = v(!1), n = N(null);
- return C(() => {
+function ht() {
+ const [e, r] = P(!1), t = te(null);
+ return L(() => {
if (process.env.NODE_ENV !== "production") return;
- let l;
- const c = async () => {
- const i = await fetch(`/version.json?t=${Date.now()}`, {
+ let n;
+ const i = async () => {
+ const s = await fetch(`/version.json?t=${Date.now()}`, {
cache: "no-store"
});
- if (!i.ok)
- throw new Error(`Failed to fetch version: ${i.status}`);
- const o = await i.json();
- return String(o.version);
+ if (!s.ok)
+ throw new Error(`Failed to fetch version: ${s.status}`);
+ const a = await s.json();
+ return String(a.version);
};
return (async () => {
try {
- n.current = await c(), l = setInterval(async () => {
+ t.current = await i(), n = setInterval(async () => {
try {
- const i = await c();
- n.current && i !== n.current && (t(!0), clearInterval(l));
- } catch (i) {
- console.error("Update check failed:", i);
+ const s = await i();
+ t.current && s !== t.current && (r(!0), clearInterval(n));
+ } catch (s) {
+ console.error("Update check failed:", s);
}
}, 3e4);
- } catch (i) {
- console.error("Initial version fetch failed:", i);
+ } catch (s) {
+ console.error("Initial version fetch failed:", s);
}
})(), () => {
- l && clearInterval(l);
+ n && clearInterval(n);
};
- }, []), e ? /* @__PURE__ */ a(
+ }, []), e ? /* @__PURE__ */ x(
"div",
{
style: {
@@ -662,80 +663,1166 @@ function ve() {
}
) : null;
}
-function je({
+const pt = new Gr({
+ defaultOptions: {
+ queries: {
+ retry: 1,
+ refetchOnWindowFocus: !1
+ }
+ }
+});
+function mt(e) {
+ if (e.sheet)
+ return e.sheet;
+ for (var r = 0; r < document.styleSheets.length; r++)
+ if (document.styleSheets[r].ownerNode === e)
+ return document.styleSheets[r];
+}
+function yt(e) {
+ var r = document.createElement("style");
+ return r.setAttribute("data-emotion", e.key), e.nonce !== void 0 && r.setAttribute("nonce", e.nonce), r.appendChild(document.createTextNode("")), r.setAttribute("data-s", ""), r;
+}
+var bt = /* @__PURE__ */ function() {
+ function e(t) {
+ var n = this;
+ this._insertTag = function(i) {
+ var o;
+ n.tags.length === 0 ? n.insertionPoint ? o = n.insertionPoint.nextSibling : n.prepend ? o = n.container.firstChild : o = n.before : o = n.tags[n.tags.length - 1].nextSibling, n.container.insertBefore(i, o), n.tags.push(i);
+ }, this.isSpeedy = t.speedy === void 0 ? !0 : t.speedy, this.tags = [], this.ctr = 0, this.nonce = t.nonce, this.key = t.key, this.container = t.container, this.prepend = t.prepend, this.insertionPoint = t.insertionPoint, this.before = null;
+ }
+ var r = e.prototype;
+ return r.hydrate = function(n) {
+ n.forEach(this._insertTag);
+ }, r.insert = function(n) {
+ this.ctr % (this.isSpeedy ? 65e3 : 1) === 0 && this._insertTag(yt(this));
+ var i = this.tags[this.tags.length - 1];
+ if (this.isSpeedy) {
+ var o = mt(i);
+ try {
+ o.insertRule(n, o.cssRules.length);
+ } catch {
+ }
+ } else
+ i.appendChild(document.createTextNode(n));
+ this.ctr++;
+ }, r.flush = function() {
+ this.tags.forEach(function(n) {
+ var i;
+ return (i = n.parentNode) == null ? void 0 : i.removeChild(n);
+ }), this.tags = [], this.ctr = 0;
+ }, e;
+}(), O = "-ms-", de = "-moz-", S = "-webkit-", tr = "comm", Ie = "rule", Me = "decl", vt = "@import", nr = "@keyframes", wt = "@layer", xt = Math.abs, pe = String.fromCharCode, St = Object.assign;
+function Et(e, r) {
+ return M(e, 0) ^ 45 ? (((r << 2 ^ M(e, 0)) << 2 ^ M(e, 1)) << 2 ^ M(e, 2)) << 2 ^ M(e, 3) : 0;
+}
+function ir(e) {
+ return e.trim();
+}
+function Ct(e, r) {
+ return (e = r.exec(e)) ? e[0] : e;
+}
+function E(e, r, t) {
+ return e.replace(r, t);
+}
+function Ee(e, r) {
+ return e.indexOf(r);
+}
+function M(e, r) {
+ return e.charCodeAt(r) | 0;
+}
+function Z(e, r, t) {
+ return e.slice(r, t);
+}
+function z(e) {
+ return e.length;
+}
+function Ne(e) {
+ return e.length;
+}
+function oe(e, r) {
+ return r.push(e), e;
+}
+function gt(e, r) {
+ return e.map(r).join("");
+}
+var me = 1, H = 1, or = 0, D = 0, I = 0, X = "";
+function ye(e, r, t, n, i, o, s) {
+ return { value: e, root: r, parent: t, type: n, props: i, children: o, line: me, column: H, length: s, return: "" };
+}
+function Q(e, r) {
+ return St(ye("", null, null, "", null, null, 0), e, { length: -e.length }, r);
+}
+function At() {
+ return I;
+}
+function Tt() {
+ return I = D > 0 ? M(X, --D) : 0, H--, I === 10 && (H = 1, me--), I;
+}
+function B() {
+ return I = D < or ? M(X, D++) : 0, H++, I === 10 && (H = 1, me++), I;
+}
+function V() {
+ return M(X, D);
+}
+function ae() {
+ return D;
+}
+function ne(e, r) {
+ return Z(X, e, r);
+}
+function ee(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 sr(e) {
+ return me = H = 1, or = z(X = e), D = 0, [];
+}
+function ar(e) {
+ return X = "", e;
+}
+function ce(e) {
+ return ir(ne(D - 1, Ce(e === 91 ? e + 2 : e === 40 ? e + 1 : e)));
+}
+function _t(e) {
+ for (; (I = V()) && I < 33; )
+ B();
+ return ee(e) > 2 || ee(I) > 3 ? "" : " ";
+}
+function $t(e, r) {
+ for (; --r && B() && !(I < 48 || I > 102 || I > 57 && I < 65 || I > 70 && I < 97); )
+ ;
+ return ne(e, ae() + (r < 6 && V() == 32 && B() == 32));
+}
+function Ce(e) {
+ for (; B(); )
+ switch (I) {
+ case e:
+ return D;
+ case 34:
+ case 39:
+ e !== 34 && e !== 39 && Ce(I);
+ break;
+ case 40:
+ e === 41 && Ce(e);
+ break;
+ case 92:
+ B();
+ break;
+ }
+ return D;
+}
+function Rt(e, r) {
+ for (; B() && e + I !== 57; )
+ if (e + I === 84 && V() === 47)
+ break;
+ return "/*" + ne(r, D - 1) + "*" + pe(e === 47 ? e : B());
+}
+function kt(e) {
+ for (; !ee(V()); )
+ B();
+ return ne(e, D);
+}
+function It(e) {
+ return ar(ue("", null, null, null, [""], e = sr(e), 0, [0], e));
+}
+function ue(e, r, t, n, i, o, s, a, u) {
+ for (var c = 0, d = 0, y = s, $ = 0, f = 0, m = 0, h = 1, b = 1, T = 1, w = 0, v = "", k = i, l = o, N = n, R = v; b; )
+ switch (m = w, w = B()) {
+ case 40:
+ if (m != 108 && M(R, y - 1) == 58) {
+ Ee(R += E(ce(w), "&", "&\f"), "&\f") != -1 && (T = -1);
+ break;
+ }
+ case 34:
+ case 39:
+ case 91:
+ R += ce(w);
+ break;
+ case 9:
+ case 10:
+ case 13:
+ case 32:
+ R += _t(m);
+ break;
+ case 92:
+ R += $t(ae() - 1, 7);
+ continue;
+ case 47:
+ switch (V()) {
+ case 42:
+ case 47:
+ oe(Mt(Rt(B(), ae()), r, t), u);
+ break;
+ default:
+ R += "/";
+ }
+ break;
+ case 123 * h:
+ a[c++] = z(R) * T;
+ case 125 * h:
+ case 59:
+ case 0:
+ switch (w) {
+ case 0:
+ case 125:
+ b = 0;
+ case 59 + d:
+ T == -1 && (R = E(R, /\f/g, "")), f > 0 && z(R) - y && oe(f > 32 ? ze(R + ";", n, t, y - 1) : ze(E(R, " ", "") + ";", n, t, y - 2), u);
+ break;
+ case 59:
+ R += ";";
+ default:
+ if (oe(N = Le(R, r, t, c, d, i, a, v, k = [], l = [], y), o), w === 123)
+ if (d === 0)
+ ue(R, r, N, N, k, o, y, a, l);
+ else
+ switch ($ === 99 && M(R, 3) === 110 ? 100 : $) {
+ case 100:
+ case 108:
+ case 109:
+ case 115:
+ ue(e, N, N, n && oe(Le(e, N, N, 0, 0, i, a, v, i, k = [], y), l), i, l, y, a, n ? k : l);
+ break;
+ default:
+ ue(R, N, N, N, [""], l, 0, a, l);
+ }
+ }
+ c = d = f = 0, h = T = 1, v = R = "", y = s;
+ break;
+ case 58:
+ y = 1 + z(R), f = m;
+ default:
+ if (h < 1) {
+ if (w == 123)
+ --h;
+ else if (w == 125 && h++ == 0 && Tt() == 125)
+ continue;
+ }
+ switch (R += pe(w), w * h) {
+ case 38:
+ T = d > 0 ? 1 : (R += "\f", -1);
+ break;
+ case 44:
+ a[c++] = (z(R) - 1) * T, T = 1;
+ break;
+ case 64:
+ V() === 45 && (R += ce(B())), $ = V(), d = y = z(v = R += kt(ae())), w++;
+ break;
+ case 45:
+ m === 45 && z(R) == 2 && (h = 0);
+ }
+ }
+ return o;
+}
+function Le(e, r, t, n, i, o, s, a, u, c, d) {
+ for (var y = i - 1, $ = i === 0 ? o : [""], f = Ne($), m = 0, h = 0, b = 0; m < n; ++m)
+ for (var T = 0, w = Z(e, y + 1, y = xt(h = s[m])), v = e; T < f; ++T)
+ (v = ir(h > 0 ? $[T] + " " + w : E(w, /&\f/g, $[T]))) && (u[b++] = v);
+ return ye(e, r, t, i === 0 ? Ie : a, u, c, d);
+}
+function Mt(e, r, t) {
+ return ye(e, r, t, tr, pe(At()), Z(e, 2, -2), 0);
+}
+function ze(e, r, t, n) {
+ return ye(e, r, t, Me, Z(e, 0, n), Z(e, n + 1, -1), n);
+}
+function G(e, r) {
+ for (var t = "", n = Ne(e), i = 0; i < n; i++)
+ t += r(e[i], i, e, r) || "";
+ return t;
+}
+function Nt(e, r, t, n) {
+ switch (e.type) {
+ case wt:
+ if (e.children.length) break;
+ case vt:
+ case Me:
+ return e.return = e.return || e.value;
+ case tr:
+ return "";
+ case nr:
+ return e.return = e.value + "{" + G(e.children, n) + "}";
+ case Ie:
+ e.value = e.props.join(",");
+ }
+ return z(t = G(e.children, n)) ? e.return = e.value + "{" + t + "}" : "";
+}
+function Ot(e) {
+ var r = Ne(e);
+ return function(t, n, i, o) {
+ for (var s = "", a = 0; a < r; a++)
+ s += e[a](t, n, i, o) || "";
+ return s;
+ };
+}
+function Ft(e) {
+ return function(r) {
+ r.root || (r = r.return) && e(r);
+ };
+}
+function Pt(e) {
+ var r = /* @__PURE__ */ Object.create(null);
+ return function(t) {
+ return r[t] === void 0 && (r[t] = e(t)), r[t];
+ };
+}
+var Dt = function(r, t, n) {
+ for (var i = 0, o = 0; i = o, o = V(), i === 38 && o === 12 && (t[n] = 1), !ee(o); )
+ B();
+ return ne(r, D);
+}, Bt = function(r, t) {
+ var n = -1, i = 44;
+ do
+ switch (ee(i)) {
+ case 0:
+ i === 38 && V() === 12 && (t[n] = 1), r[n] += Dt(D - 1, t, n);
+ break;
+ case 2:
+ r[n] += ce(i);
+ break;
+ case 4:
+ if (i === 44) {
+ r[++n] = V() === 58 ? "&\f" : "", t[n] = r[n].length;
+ break;
+ }
+ default:
+ r[n] += pe(i);
+ }
+ while (i = B());
+ return r;
+}, Lt = function(r, t) {
+ return ar(Bt(sr(r), t));
+}, Ke = /* @__PURE__ */ new WeakMap(), zt = function(r) {
+ if (!(r.type !== "rule" || !r.parent || // positive .length indicates that this rule contains pseudo
+ // negative .length indicates that this rule has been already prefixed
+ r.length < 1)) {
+ for (var t = r.value, n = r.parent, i = r.column === n.column && r.line === n.line; n.type !== "rule"; )
+ if (n = n.parent, !n) return;
+ if (!(r.props.length === 1 && t.charCodeAt(0) !== 58 && !Ke.get(n)) && !i) {
+ Ke.set(r, !0);
+ for (var o = [], s = Lt(t, o), a = n.props, u = 0, c = 0; u < s.length; u++)
+ for (var d = 0; d < a.length; d++, c++)
+ r.props[c] = o[u] ? s[u].replace(/&\f/g, a[d]) : a[d] + " " + s[u];
+ }
+ }
+}, Kt = function(r) {
+ if (r.type === "decl") {
+ var t = r.value;
+ // charcode for l
+ t.charCodeAt(0) === 108 && // charcode for b
+ t.charCodeAt(2) === 98 && (r.return = "", r.value = "");
+ }
+};
+function cr(e, r) {
+ switch (Et(e, r)) {
+ case 5103:
+ return S + "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 S + e + e;
+ case 5349:
+ case 4246:
+ case 4810:
+ case 6968:
+ case 2756:
+ return S + e + de + e + O + e + e;
+ case 6828:
+ case 4268:
+ return S + e + O + e + e;
+ case 6165:
+ return S + e + O + "flex-" + e + e;
+ case 5187:
+ return S + e + E(e, /(\w+).+(:[^]+)/, S + "box-$1$2" + O + "flex-$1$2") + e;
+ case 5443:
+ return S + e + O + "flex-item-" + E(e, /flex-|-self/, "") + e;
+ case 4675:
+ return S + e + O + "flex-line-pack" + E(e, /align-content|flex-|-self/, "") + e;
+ case 5548:
+ return S + e + O + E(e, "shrink", "negative") + e;
+ case 5292:
+ return S + e + O + E(e, "basis", "preferred-size") + e;
+ case 6060:
+ return S + "box-" + E(e, "-grow", "") + S + e + O + E(e, "grow", "positive") + e;
+ case 4554:
+ return S + E(e, /([^-])(transform)/g, "$1" + S + "$2") + e;
+ case 6187:
+ return E(E(E(e, /(zoom-|grab)/, S + "$1"), /(image-set)/, S + "$1"), e, "") + e;
+ case 5495:
+ case 3959:
+ return E(e, /(image-set\([^]*)/, S + "$1$`$1");
+ case 4968:
+ return E(E(e, /(.+:)(flex-)?(.*)/, S + "box-pack:$3" + O + "flex-pack:$3"), /s.+-b[^;]+/, "justify") + S + e + e;
+ case 4095:
+ case 3583:
+ case 4068:
+ case 2532:
+ return E(e, /(.+)-inline(.+)/, S + "$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 (z(e) - 1 - r > 6) switch (M(e, r + 1)) {
+ case 109:
+ if (M(e, r + 4) !== 45) break;
+ case 102:
+ return E(e, /(.+:)(.+)-([^]+)/, "$1" + S + "$2-$3$1" + de + (M(e, r + 3) == 108 ? "$3" : "$2-$3")) + e;
+ case 115:
+ return ~Ee(e, "stretch") ? cr(E(e, "stretch", "fill-available"), r) + e : e;
+ }
+ break;
+ case 4949:
+ if (M(e, r + 1) !== 115) break;
+ case 6444:
+ switch (M(e, z(e) - 3 - (~Ee(e, "!important") && 10))) {
+ case 107:
+ return E(e, ":", ":" + S) + e;
+ case 101:
+ return E(e, /(.+:)([^;!]+)(;|!.+)?/, "$1" + S + (M(e, 14) === 45 ? "inline-" : "") + "box$3$1" + S + "$2$3$1" + O + "$2box$3") + e;
+ }
+ break;
+ case 5936:
+ switch (M(e, r + 11)) {
+ case 114:
+ return S + e + O + E(e, /[svh]\w+-[tblr]{2}/, "tb") + e;
+ case 108:
+ return S + e + O + E(e, /[svh]\w+-[tblr]{2}/, "tb-rl") + e;
+ case 45:
+ return S + e + O + E(e, /[svh]\w+-[tblr]{2}/, "lr") + e;
+ }
+ return S + e + O + e + e;
+ }
+ return e;
+}
+var Yt = function(r, t, n, i) {
+ if (r.length > -1 && !r.return) switch (r.type) {
+ case Me:
+ r.return = cr(r.value, r.length);
+ break;
+ case nr:
+ return G([Q(r, {
+ value: E(r.value, "@", "@" + S)
+ })], i);
+ case Ie:
+ if (r.length) return gt(r.props, function(o) {
+ switch (Ct(o, /(::plac\w+|:read-\w+)/)) {
+ case ":read-only":
+ case ":read-write":
+ return G([Q(r, {
+ props: [E(o, /:(read-\w+)/, ":" + de + "$1")]
+ })], i);
+ case "::placeholder":
+ return G([Q(r, {
+ props: [E(o, /:(plac\w+)/, ":" + S + "input-$1")]
+ }), Q(r, {
+ props: [E(o, /:(plac\w+)/, ":" + de + "$1")]
+ }), Q(r, {
+ props: [E(o, /:(plac\w+)/, O + "input-$1")]
+ })], i);
+ }
+ return "";
+ });
+ }
+}, Vt = [Yt], Wt = function(r) {
+ var t = r.key;
+ if (t === "css") {
+ var n = document.querySelectorAll("style[data-emotion]:not([data-s])");
+ Array.prototype.forEach.call(n, function(h) {
+ var b = h.getAttribute("data-emotion");
+ b.indexOf(" ") !== -1 && (document.head.appendChild(h), h.setAttribute("data-s", ""));
+ });
+ }
+ var i = r.stylisPlugins || Vt, o = {}, s, a = [];
+ s = r.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^="' + t + ' "]'),
+ function(h) {
+ for (var b = h.getAttribute("data-emotion").split(" "), T = 1; T < b.length; T++)
+ o[b[T]] = !0;
+ a.push(h);
+ }
+ );
+ var u, c = [zt, Kt];
+ {
+ var d, y = [Nt, Ft(function(h) {
+ d.insert(h);
+ })], $ = Ot(c.concat(i, y)), f = function(b) {
+ return G(It(b), $);
+ };
+ u = function(b, T, w, v) {
+ d = w, f(b ? b + "{" + T.styles + "}" : T.styles), v && (m.inserted[T.name] = !0);
+ };
+ }
+ var m = {
+ key: t,
+ sheet: new bt({
+ key: t,
+ container: s,
+ nonce: r.nonce,
+ speedy: r.speedy,
+ prepend: r.prepend,
+ insertionPoint: r.insertionPoint
+ }),
+ nonce: r.nonce,
+ inserted: o,
+ registered: {},
+ insert: u
+ };
+ return m.sheet.hydrate(a), m;
+}, ge = { 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 Ye;
+function qt() {
+ if (Ye) return g;
+ Ye = 1;
+ var e = typeof Symbol == "function" && Symbol.for, r = e ? Symbol.for("react.element") : 60103, t = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, i = e ? Symbol.for("react.strict_mode") : 60108, o = e ? Symbol.for("react.profiler") : 60114, s = e ? Symbol.for("react.provider") : 60109, a = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, y = e ? Symbol.for("react.suspense") : 60113, $ = e ? Symbol.for("react.suspense_list") : 60120, f = e ? Symbol.for("react.memo") : 60115, m = e ? Symbol.for("react.lazy") : 60116, h = e ? Symbol.for("react.block") : 60121, b = e ? Symbol.for("react.fundamental") : 60117, T = e ? Symbol.for("react.responder") : 60118, w = e ? Symbol.for("react.scope") : 60119;
+ function v(l) {
+ if (typeof l == "object" && l !== null) {
+ var N = l.$$typeof;
+ switch (N) {
+ case r:
+ switch (l = l.type, l) {
+ case u:
+ case c:
+ case n:
+ case o:
+ case i:
+ case y:
+ return l;
+ default:
+ switch (l = l && l.$$typeof, l) {
+ case a:
+ case d:
+ case m:
+ case f:
+ case s:
+ return l;
+ default:
+ return N;
+ }
+ }
+ case t:
+ return N;
+ }
+ }
+ }
+ function k(l) {
+ return v(l) === c;
+ }
+ return g.AsyncMode = u, g.ConcurrentMode = c, g.ContextConsumer = a, g.ContextProvider = s, g.Element = r, g.ForwardRef = d, g.Fragment = n, g.Lazy = m, g.Memo = f, g.Portal = t, g.Profiler = o, g.StrictMode = i, g.Suspense = y, g.isAsyncMode = function(l) {
+ return k(l) || v(l) === u;
+ }, g.isConcurrentMode = k, g.isContextConsumer = function(l) {
+ return v(l) === a;
+ }, g.isContextProvider = function(l) {
+ return v(l) === s;
+ }, g.isElement = function(l) {
+ return typeof l == "object" && l !== null && l.$$typeof === r;
+ }, g.isForwardRef = function(l) {
+ return v(l) === d;
+ }, g.isFragment = function(l) {
+ return v(l) === n;
+ }, g.isLazy = function(l) {
+ return v(l) === m;
+ }, g.isMemo = function(l) {
+ return v(l) === f;
+ }, g.isPortal = function(l) {
+ return v(l) === t;
+ }, g.isProfiler = function(l) {
+ return v(l) === o;
+ }, g.isStrictMode = function(l) {
+ return v(l) === i;
+ }, g.isSuspense = function(l) {
+ return v(l) === y;
+ }, g.isValidElementType = function(l) {
+ return typeof l == "string" || typeof l == "function" || l === n || l === c || l === o || l === i || l === y || l === $ || typeof l == "object" && l !== null && (l.$$typeof === m || l.$$typeof === f || l.$$typeof === s || l.$$typeof === a || l.$$typeof === d || l.$$typeof === b || l.$$typeof === T || l.$$typeof === w || l.$$typeof === h);
+ }, g.typeOf = v, g;
+}
+var A = {};
+/** @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 Ve;
+function jt() {
+ return Ve || (Ve = 1, process.env.NODE_ENV !== "production" && function() {
+ var e = typeof Symbol == "function" && Symbol.for, r = e ? Symbol.for("react.element") : 60103, t = e ? Symbol.for("react.portal") : 60106, n = e ? Symbol.for("react.fragment") : 60107, i = e ? Symbol.for("react.strict_mode") : 60108, o = e ? Symbol.for("react.profiler") : 60114, s = e ? Symbol.for("react.provider") : 60109, a = e ? Symbol.for("react.context") : 60110, u = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, y = e ? Symbol.for("react.suspense") : 60113, $ = e ? Symbol.for("react.suspense_list") : 60120, f = e ? Symbol.for("react.memo") : 60115, m = e ? Symbol.for("react.lazy") : 60116, h = e ? Symbol.for("react.block") : 60121, b = e ? Symbol.for("react.fundamental") : 60117, T = e ? Symbol.for("react.responder") : 60118, w = e ? Symbol.for("react.scope") : 60119;
+ function v(p) {
+ return typeof p == "string" || typeof p == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
+ p === n || p === c || p === o || p === i || p === y || p === $ || typeof p == "object" && p !== null && (p.$$typeof === m || p.$$typeof === f || p.$$typeof === s || p.$$typeof === a || p.$$typeof === d || p.$$typeof === b || p.$$typeof === T || p.$$typeof === w || p.$$typeof === h);
+ }
+ function k(p) {
+ if (typeof p == "object" && p !== null) {
+ var be = p.$$typeof;
+ switch (be) {
+ case r:
+ var ie = p.type;
+ switch (ie) {
+ case u:
+ case c:
+ case n:
+ case o:
+ case i:
+ case y:
+ return ie;
+ default:
+ var De = ie && ie.$$typeof;
+ switch (De) {
+ case a:
+ case d:
+ case m:
+ case f:
+ case s:
+ return De;
+ default:
+ return be;
+ }
+ }
+ case t:
+ return be;
+ }
+ }
+ }
+ var l = u, N = c, R = a, wr = s, xr = r, Sr = d, Er = n, Cr = m, gr = f, Ar = t, Tr = o, _r = i, $r = y, Fe = !1;
+ function Rr(p) {
+ return Fe || (Fe = !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.")), Pe(p) || k(p) === u;
+ }
+ function Pe(p) {
+ return k(p) === c;
+ }
+ function kr(p) {
+ return k(p) === a;
+ }
+ function Ir(p) {
+ return k(p) === s;
+ }
+ function Mr(p) {
+ return typeof p == "object" && p !== null && p.$$typeof === r;
+ }
+ function Nr(p) {
+ return k(p) === d;
+ }
+ function Or(p) {
+ return k(p) === n;
+ }
+ function Fr(p) {
+ return k(p) === m;
+ }
+ function Pr(p) {
+ return k(p) === f;
+ }
+ function Dr(p) {
+ return k(p) === t;
+ }
+ function Br(p) {
+ return k(p) === o;
+ }
+ function Lr(p) {
+ return k(p) === i;
+ }
+ function zr(p) {
+ return k(p) === y;
+ }
+ A.AsyncMode = l, A.ConcurrentMode = N, A.ContextConsumer = R, A.ContextProvider = wr, A.Element = xr, A.ForwardRef = Sr, A.Fragment = Er, A.Lazy = Cr, A.Memo = gr, A.Portal = Ar, A.Profiler = Tr, A.StrictMode = _r, A.Suspense = $r, A.isAsyncMode = Rr, A.isConcurrentMode = Pe, A.isContextConsumer = kr, A.isContextProvider = Ir, A.isElement = Mr, A.isForwardRef = Nr, A.isFragment = Or, A.isLazy = Fr, A.isMemo = Pr, A.isPortal = Dr, A.isProfiler = Br, A.isStrictMode = Lr, A.isSuspense = zr, A.isValidElementType = v, A.typeOf = k;
+ }()), A;
+}
+process.env.NODE_ENV === "production" ? ge.exports = qt() : ge.exports = jt();
+var Ut = ge.exports, ur = Ut, Gt = {
+ $$typeof: !0,
+ render: !0,
+ defaultProps: !0,
+ displayName: !0,
+ propTypes: !0
+}, Jt = {
+ $$typeof: !0,
+ compare: !0,
+ defaultProps: !0,
+ displayName: !0,
+ propTypes: !0,
+ type: !0
+}, fr = {};
+fr[ur.ForwardRef] = Gt;
+fr[ur.Memo] = Jt;
+var Ht = !0;
+function Xt(e, r, t) {
+ var n = "";
+ return t.split(" ").forEach(function(i) {
+ e[i] !== void 0 ? r.push(e[i] + ";") : i && (n += i + " ");
+ }), n;
+}
+var lr = function(r, t, n) {
+ var i = r.key + "-" + t.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
+ Ht === !1) && r.registered[i] === void 0 && (r.registered[i] = t.styles);
+}, dr = function(r, t, n) {
+ lr(r, t, n);
+ var i = r.key + "-" + t.name;
+ if (r.inserted[t.name] === void 0) {
+ var o = t;
+ do
+ r.insert(t === o ? "." + i : "", o, r.sheet, !0), o = o.next;
+ while (o !== void 0);
+ }
+};
+function Qt(e) {
+ for (var r = 0, t, n = 0, i = e.length; i >= 4; ++n, i -= 4)
+ t = e.charCodeAt(n) & 255 | (e.charCodeAt(++n) & 255) << 8 | (e.charCodeAt(++n) & 255) << 16 | (e.charCodeAt(++n) & 255) << 24, t = /* Math.imul(k, m): */
+ (t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16), t ^= /* k >>> r: */
+ t >>> 24, r = /* Math.imul(k, m): */
+ (t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16) ^ /* Math.imul(h, m): */
+ (r & 65535) * 1540483477 + ((r >>> 16) * 59797 << 16);
+ switch (i) {
+ case 3:
+ r ^= (e.charCodeAt(n + 2) & 255) << 16;
+ case 2:
+ r ^= (e.charCodeAt(n + 1) & 255) << 8;
+ case 1:
+ r ^= e.charCodeAt(n) & 255, r = /* Math.imul(h, m): */
+ (r & 65535) * 1540483477 + ((r >>> 16) * 59797 << 16);
+ }
+ return r ^= r >>> 13, r = /* Math.imul(h, m): */
+ (r & 65535) * 1540483477 + ((r >>> 16) * 59797 << 16), ((r ^ r >>> 15) >>> 0).toString(36);
+}
+var Zt = {
+ 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
+}, en = /[A-Z]|^ms/g, rn = /_EMO_([^_]+?)_([^]*?)_EMO_/g, hr = function(r) {
+ return r.charCodeAt(1) === 45;
+}, We = function(r) {
+ return r != null && typeof r != "boolean";
+}, we = /* @__PURE__ */ Pt(function(e) {
+ return hr(e) ? e : e.replace(en, "-$&").toLowerCase();
+}), qe = function(r, t) {
+ switch (r) {
+ case "animation":
+ case "animationName":
+ if (typeof t == "string")
+ return t.replace(rn, function(n, i, o) {
+ return K = {
+ name: i,
+ styles: o,
+ next: K
+ }, i;
+ });
+ }
+ return Zt[r] !== 1 && !hr(r) && typeof t == "number" && t !== 0 ? t + "px" : t;
+};
+function re(e, r, t) {
+ if (t == null)
+ return "";
+ var n = t;
+ if (n.__emotion_styles !== void 0)
+ return n;
+ switch (typeof t) {
+ case "boolean":
+ return "";
+ case "object": {
+ var i = t;
+ if (i.anim === 1)
+ return K = {
+ name: i.name,
+ styles: i.styles,
+ next: K
+ }, i.name;
+ var o = t;
+ if (o.styles !== void 0) {
+ var s = o.next;
+ if (s !== void 0)
+ for (; s !== void 0; )
+ K = {
+ name: s.name,
+ styles: s.styles,
+ next: K
+ }, s = s.next;
+ var a = o.styles + ";";
+ return a;
+ }
+ return tn(e, r, t);
+ }
+ case "function": {
+ if (e !== void 0) {
+ var u = K, c = t(e);
+ return K = u, re(e, r, c);
+ }
+ break;
+ }
+ }
+ var d = t;
+ return d;
+}
+function tn(e, r, t) {
+ var n = "";
+ if (Array.isArray(t))
+ for (var i = 0; i < t.length; i++)
+ n += re(e, r, t[i]) + ";";
+ else
+ for (var o in t) {
+ var s = t[o];
+ if (typeof s != "object") {
+ var a = s;
+ We(a) && (n += we(o) + ":" + qe(o, a) + ";");
+ } else if (Array.isArray(s) && typeof s[0] == "string" && r == null)
+ for (var u = 0; u < s.length; u++)
+ We(s[u]) && (n += we(o) + ":" + qe(o, s[u]) + ";");
+ else {
+ var c = re(e, r, s);
+ switch (o) {
+ case "animation":
+ case "animationName": {
+ n += we(o) + ":" + c + ";";
+ break;
+ }
+ default:
+ n += o + "{" + c + "}";
+ }
+ }
+ }
+ return n;
+}
+var je = /label:\s*([^\s;{]+)\s*(;|$)/g, K;
+function pr(e, r, t) {
+ if (e.length === 1 && typeof e[0] == "object" && e[0] !== null && e[0].styles !== void 0)
+ return e[0];
+ var n = !0, i = "";
+ K = void 0;
+ var o = e[0];
+ if (o == null || o.raw === void 0)
+ n = !1, i += re(t, r, o);
+ else {
+ var s = o;
+ i += s[0];
+ }
+ for (var a = 1; a < e.length; a++)
+ if (i += re(t, r, e[a]), n) {
+ var u = o;
+ i += u[a];
+ }
+ je.lastIndex = 0;
+ for (var c = "", d; (d = je.exec(i)) !== null; )
+ c += "-" + d[1];
+ var y = Qt(i) + c;
+ return {
+ name: y,
+ styles: i,
+ next: K
+ };
+}
+var nn = function(r) {
+ return r();
+}, mr = F.useInsertionEffect ? F.useInsertionEffect : !1, on = mr || nn, Ue = mr || F.useLayoutEffect, yr = /* @__PURE__ */ F.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__ */ Wt({
+ key: "css"
+ }) : null
+);
+yr.Provider;
+var br = function(r) {
+ return /* @__PURE__ */ Kr(function(t, n) {
+ var i = He(yr);
+ return r(t, i, n);
+ });
+}, vr = /* @__PURE__ */ F.createContext({}), Oe = {}.hasOwnProperty, Ae = "__EMOTION_TYPE_PLEASE_DO_NOT_USE__", sn = function(r, t) {
+ var n = {};
+ for (var i in t)
+ Oe.call(t, i) && (n[i] = t[i]);
+ return n[Ae] = r, n;
+}, an = function(r) {
+ var t = r.cache, n = r.serialized, i = r.isStringTag;
+ return lr(t, n, i), on(function() {
+ return dr(t, n, i);
+ }), null;
+}, cn = /* @__PURE__ */ br(function(e, r, t) {
+ var n = e.css;
+ typeof n == "string" && r.registered[n] !== void 0 && (n = r.registered[n]);
+ var i = e[Ae], o = [n], s = "";
+ typeof e.className == "string" ? s = Xt(r.registered, o, e.className) : e.className != null && (s = e.className + " ");
+ var a = pr(o, void 0, F.useContext(vr));
+ s += r.key + "-" + a.name;
+ var u = {};
+ for (var c in e)
+ Oe.call(e, c) && c !== "css" && c !== Ae && (u[c] = e[c]);
+ return u.className = s, t && (u.ref = t), /* @__PURE__ */ F.createElement(F.Fragment, null, /* @__PURE__ */ F.createElement(an, {
+ cache: r,
+ serialized: a,
+ isStringTag: typeof i == "string"
+ }), /* @__PURE__ */ F.createElement(i, u));
+}), un = cn, Ge = function(r, t) {
+ var n = arguments;
+ if (t == null || !Oe.call(t, "css"))
+ return F.createElement.apply(void 0, n);
+ var i = n.length, o = new Array(i);
+ o[0] = un, o[1] = sn(r, t);
+ for (var s = 2; s < i; s++)
+ o[s] = n[s];
+ return F.createElement.apply(null, o);
+};
+(function(e) {
+ var r;
+ r || (r = e.JSX || (e.JSX = {}));
+})(Ge || (Ge = {}));
+var fn = /* @__PURE__ */ br(function(e, r) {
+ var t = e.styles, n = pr([t], void 0, F.useContext(vr)), i = F.useRef();
+ return Ue(function() {
+ var o = r.key + "-global", s = new r.sheet.constructor({
+ key: o,
+ nonce: r.sheet.nonce,
+ container: r.sheet.container,
+ speedy: r.sheet.isSpeedy
+ }), a = !1, u = document.querySelector('style[data-emotion="' + o + " " + n.name + '"]');
+ return r.sheet.tags.length && (s.before = r.sheet.tags[0]), u !== null && (a = !0, u.setAttribute("data-emotion", o), s.hydrate([u])), i.current = [s, a], function() {
+ s.flush();
+ };
+ }, [r]), Ue(function() {
+ var o = i.current, s = o[0], a = o[1];
+ if (a) {
+ o[1] = !1;
+ return;
+ }
+ if (n.next !== void 0 && dr(r, n.next, !0), s.tags.length) {
+ var u = s.tags[s.tags.length - 1].nextElementSibling;
+ s.before = u, s.flush();
+ }
+ r.insert("", n, s, !1);
+ }, [r, n.name]), null;
+});
+const ln = Yr(
+ {
+ direction: "rtl",
+ styles: {
+ global: {
+ html: {
+ fontSize: "14px"
+ },
+ body: {
+ bg: "white"
+ }
+ }
+ },
+ fonts: {
+ heading: "Estedad",
+ body: "Estedad"
+ }
+ },
+ Vr({ colorScheme: "facebook" })
+), dn = () => /* @__PURE__ */ x(
+ fn,
+ {
+ styles: `
+ @font-face {
+ font-family: Estedad;
+ src: url('/fonts/estedad.woff2') format('woff2');
+ font-weight: 400;
+ font-style: normal;
+ font-display: swap;
+ }
+ `
+ }
+);
+function kn({
children: e,
- apiBaseUrl: t,
- keycloakClientId: n,
- permissionClientId: l,
- loading: c = /* @__PURE__ */ a(ee, {}),
- updateChecker: s = !0,
- updateCheckerProps: i,
- keycloakUrl: o = "https://auth.ibagher.ir",
- keycloakRealm: d = "bi",
- permissionUrl: u = "https://api.d.aiengines.ir/user_api/v1/permissions/list"
+ apiBaseUrl: r,
+ keycloakClientId: t,
+ permissionClientId: n,
+ loading: i = /* @__PURE__ */ x(qr, {}),
+ updateChecker: o = !0,
+ updateCheckerProps: s,
+ keycloakUrl: a = "https://auth.ibagher.ir",
+ keycloakRealm: u = "bi",
+ permissionUrl: c = "https://api.d.aiengines.ir/user_api/v1/permissions/list"
}) {
- const b = _(
+ const d = fe(
() => ({
api: {
- baseUrl: t
+ baseUrl: r
},
keycloak: {
- url: o,
- realm: d,
- clientId: n
+ url: a,
+ realm: u,
+ clientId: t
},
permission: {
- url: u,
- clientId: l
+ url: c,
+ clientId: n
}
}),
[
+ r,
t,
n,
- l,
- o,
- d,
- u
+ a,
+ u,
+ c
]
);
- return C(() => {
- ye(b);
- }, [b]), /* @__PURE__ */ I(Z, { children: [
- s && /* @__PURE__ */ a(ve, { ...i }),
- /* @__PURE__ */ a(ce, { config: b.keycloak, loading: c, children: /* @__PURE__ */ a(ae, { config: b.permission, loading: c, children: e }) })
- ] });
+ return L(() => {
+ lt(d);
+ }, [d]), /* @__PURE__ */ x(Wr, { theme: ln, children: /* @__PURE__ */ Y(Jr, { client: pt, children: [
+ o && /* @__PURE__ */ x(ht, { ...s }),
+ /* @__PURE__ */ x(rt, { config: d.keycloak, loading: i, children: /* @__PURE__ */ Y(nt, { config: d.permission, loading: i, children: [
+ /* @__PURE__ */ x(dn, {}),
+ e
+ ] }) })
+ ] }) });
}
export {
- ge as AdminGuard,
- je as BiProvider,
- Me as Can,
- ce as KeycloakProvider,
- Ke as LightPagination,
- Ne as Pagination,
- Fe as PanelAccessGuard,
- ae as PermissionProvider,
- Te as SimplePagination,
- Ve as api,
- he as checkPermission,
- ze as clearCachedPermissions,
- ye as configureApi,
- we as createApi,
- pe as createPermissionSet,
- xe as getApi,
- de as getCachedPermissions,
- T as getKeycloakToken,
- me as getPermissions,
- J as initKeycloak,
- G as isKeycloakAuthenticated,
- le as isKeycloakInitialized,
- _e as loginKeycloak,
- H as logoutKeycloak,
- Y as permissionKeys,
- fe as setCachedPermissions,
- D as toEnDigits,
- p as toFaDigits,
- De as toFaNumber,
- q as updateKeycloakToken,
- U as usePermission,
- be as usePermissionsQuery
+ _n as AdminGuard,
+ kn as BiProvider,
+ Tn as Can,
+ rt as KeycloakProvider,
+ Sn as LightPagination,
+ En as Pagination,
+ $n as PanelAccessGuard,
+ nt as PermissionProvider,
+ Cn as SimplePagination,
+ Rn as api,
+ at as checkPermission,
+ An as clearCachedPermissions,
+ lt as configureApi,
+ ft as createApi,
+ st as createPermissionSet,
+ dt as getApi,
+ it as getCachedPermissions,
+ se as getKeycloakToken,
+ ct as getPermissions,
+ Ze as initKeycloak,
+ Xe as isKeycloakAuthenticated,
+ et as isKeycloakInitialized,
+ gn as loginKeycloak,
+ Qe as logoutKeycloak,
+ rr as permissionKeys,
+ ot as setCachedPermissions,
+ U as toEnDigits,
+ _ as toFaDigits,
+ xn as toFaNumber,
+ Be as updateKeycloakToken,
+ ke as usePermission,
+ ut as usePermissionsQuery
};
diff --git a/package.json b/package.json
index d2fa0ef..1283e7e 100644
--- a/package.json
+++ b/package.json
@@ -12,6 +12,7 @@
},
"peerDependencies": {
"@chakra-ui/react": "^2.0.0",
+ "@emotion/react": "^11.0.0",
"@tanstack/react-query": "^5.0.0",
"react": "^18.0.0 || ^19.0.0",
"react-dom": "^18.0.0 || ^19.0.0",
@@ -19,6 +20,7 @@
},
"devDependencies": {
"@chakra-ui/react": "^2.0.0",
+ "@emotion/react": "^11.14.0",
"@tanstack/react-query": "^5.0.0",
"@vitejs/plugin-react": "4.3.4",
"axios": "^1.17.0",
diff --git a/src/core/query.js b/src/core/query.js
new file mode 100644
index 0000000..6bc5929
--- /dev/null
+++ b/src/core/query.js
@@ -0,0 +1,10 @@
+import { QueryClient } from "@tanstack/react-query";
+
+export const queryClient = new QueryClient({
+ defaultOptions: {
+ queries: {
+ retry: 1,
+ refetchOnWindowFocus: false,
+ },
+ },
+});
diff --git a/src/core/style.jsx b/src/core/style.jsx
new file mode 100644
index 0000000..0b6e2f8
--- /dev/null
+++ b/src/core/style.jsx
@@ -0,0 +1,37 @@
+import { extendTheme, withDefaultColorScheme } from "@chakra-ui/react";
+import { Global } from "@emotion/react";
+
+export const theme = extendTheme(
+ {
+ direction: "rtl",
+ styles: {
+ global: {
+ html: {
+ fontSize: "14px",
+ },
+ body: {
+ bg: "white",
+ },
+ },
+ },
+ fonts: {
+ heading: "Estedad",
+ body: "Estedad",
+ },
+ },
+ withDefaultColorScheme({ colorScheme: "facebook" }),
+);
+
+export const Fonts = () => (
+
+);
diff --git a/src/provider/BiProvider.jsx b/src/provider/BiProvider.jsx
index 130412c..67f1bf4 100644
--- a/src/provider/BiProvider.jsx
+++ b/src/provider/BiProvider.jsx
@@ -1,9 +1,12 @@
import { useEffect, useMemo } from "react";
-import { Spinner } from "@chakra-ui/react";
+import { ChakraProvider, Spinner } from "@chakra-ui/react";
+import { QueryClientProvider } from "@tanstack/react-query";
import { KeycloakProvider } from "../core/keycloak.jsx";
import { PermissionProvider } from "../core/permission.jsx";
import { UpdateChecker } from "../components/UpdateChecker.jsx";
import { configureApi } from "../core/api.js";
+import { queryClient } from "../core/query.js";
+import { Fonts, theme } from "../core/style.jsx";
export function BiProvider({
children,
@@ -47,14 +50,16 @@ export function BiProvider({
}, [config]);
return (
- <>
- {updateChecker && }
-
-
-
- {children}
-
-
- >
+
+
+ {updateChecker && }
+
+
+
+ {children}
+
+
+
+
);
}
diff --git a/yarn.lock b/yarn.lock
index c80c33e..b155304 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2,7 +2,7 @@
# yarn lockfile v1
-"@babel/code-frame@^7.29.7":
+"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.29.7":
version "7.29.7"
resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.29.7.tgz#f2fbbfea87c44a21590ec515b778b2c26d8866e7"
integrity sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==
@@ -64,7 +64,7 @@
resolved "https://registry.yarnpkg.com/@babel/helper-globals/-/helper-globals-7.29.7.tgz#f04a96fbd8473241b1079243f5b3f03a3010ab7b"
integrity sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==
-"@babel/helper-module-imports@^7.29.7":
+"@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.29.7":
version "7.29.7"
resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz#ef25048a518e828d7393fac5882ddd73921d7396"
integrity sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==
@@ -130,7 +130,7 @@
dependencies:
"@babel/helper-plugin-utils" "^7.29.7"
-"@babel/runtime@^7.0.0", "@babel/runtime@^7.12.13":
+"@babel/runtime@^7.0.0", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.18.3":
version "7.29.7"
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.29.7.tgz#12022450c45a4da6d8d8287b18a4ff2ddb23f768"
integrity sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==
@@ -230,6 +230,94 @@
"@types/lodash.mergewith" "4.6.9"
lodash.mergewith "4.6.2"
+"@emotion/babel-plugin@^11.13.5":
+ version "11.13.5"
+ resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz#eab8d65dbded74e0ecfd28dc218e75607c4e7bc0"
+ integrity sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==
+ dependencies:
+ "@babel/helper-module-imports" "^7.16.7"
+ "@babel/runtime" "^7.18.3"
+ "@emotion/hash" "^0.9.2"
+ "@emotion/memoize" "^0.9.0"
+ "@emotion/serialize" "^1.3.3"
+ babel-plugin-macros "^3.1.0"
+ convert-source-map "^1.5.0"
+ escape-string-regexp "^4.0.0"
+ find-root "^1.1.0"
+ source-map "^0.5.7"
+ stylis "4.2.0"
+
+"@emotion/cache@^11.14.0":
+ version "11.14.0"
+ resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.14.0.tgz#ee44b26986eeb93c8be82bb92f1f7a9b21b2ed76"
+ integrity sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==
+ dependencies:
+ "@emotion/memoize" "^0.9.0"
+ "@emotion/sheet" "^1.4.0"
+ "@emotion/utils" "^1.4.2"
+ "@emotion/weak-memoize" "^0.4.0"
+ stylis "4.2.0"
+
+"@emotion/hash@^0.9.2":
+ version "0.9.2"
+ resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.2.tgz#ff9221b9f58b4dfe61e619a7788734bd63f6898b"
+ integrity sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==
+
+"@emotion/memoize@^0.9.0":
+ version "0.9.0"
+ resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.9.0.tgz#745969d649977776b43fc7648c556aaa462b4102"
+ integrity sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==
+
+"@emotion/react@^11.14.0":
+ version "11.14.0"
+ resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.14.0.tgz#cfaae35ebc67dd9ef4ea2e9acc6cd29e157dd05d"
+ integrity sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==
+ dependencies:
+ "@babel/runtime" "^7.18.3"
+ "@emotion/babel-plugin" "^11.13.5"
+ "@emotion/cache" "^11.14.0"
+ "@emotion/serialize" "^1.3.3"
+ "@emotion/use-insertion-effect-with-fallbacks" "^1.2.0"
+ "@emotion/utils" "^1.4.2"
+ "@emotion/weak-memoize" "^0.4.0"
+ hoist-non-react-statics "^3.3.1"
+
+"@emotion/serialize@^1.3.3":
+ version "1.3.3"
+ resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.3.3.tgz#d291531005f17d704d0463a032fe679f376509e8"
+ integrity sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==
+ dependencies:
+ "@emotion/hash" "^0.9.2"
+ "@emotion/memoize" "^0.9.0"
+ "@emotion/unitless" "^0.10.0"
+ "@emotion/utils" "^1.4.2"
+ csstype "^3.0.2"
+
+"@emotion/sheet@^1.4.0":
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.4.0.tgz#c9299c34d248bc26e82563735f78953d2efca83c"
+ integrity sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==
+
+"@emotion/unitless@^0.10.0":
+ version "0.10.0"
+ resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.10.0.tgz#2af2f7c7e5150f497bdabd848ce7b218a27cf745"
+ integrity sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==
+
+"@emotion/use-insertion-effect-with-fallbacks@^1.2.0":
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz#8a8cb77b590e09affb960f4ff1e9a89e532738bf"
+ integrity sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==
+
+"@emotion/utils@^1.4.2":
+ version "1.4.2"
+ resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.4.2.tgz#6df6c45881fcb1c412d6688a311a98b7f59c1b52"
+ integrity sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==
+
+"@emotion/weak-memoize@^0.4.0":
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz#5e13fac887f08c44f76b0ccaf3370eb00fec9bb6"
+ integrity sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==
+
"@esbuild/aix-ppc64@0.21.5":
version "0.21.5"
resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz#c7184a326533fcdf1b8ee0733e21c713b975575f"
@@ -571,6 +659,11 @@
resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.17.24.tgz#4ae334fc62c0e915ca8ed8e35dcc6d4eeb29215f"
integrity sha512-gIW7lQLZbue7lRSWEFql49QJJWThrTFFeIMJdp3eH4tKoxm1OvEPg02rm4wCCSHS0cL3/Fizimb35b7k8atwsQ==
+"@types/parse-json@^4.0.0":
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.2.tgz#5950e50960793055845e956c427fc2b0d70c5239"
+ integrity sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==
+
"@vitejs/plugin-react@4.3.4":
version "4.3.4"
resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-4.3.4.tgz#c64be10b54c4640135a5b28a2432330e88ad7c20"
@@ -628,6 +721,15 @@ axios@^1.17.0:
https-proxy-agent "^5.0.1"
proxy-from-env "^2.1.0"
+babel-plugin-macros@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1"
+ integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==
+ dependencies:
+ "@babel/runtime" "^7.12.5"
+ cosmiconfig "^7.0.0"
+ resolve "^1.19.0"
+
baseline-browser-mapping@^2.10.12:
version "2.10.35"
resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.10.35.tgz#f0f2232e0de2d2f82cc491bcf830b05ed05937c6"
@@ -652,6 +754,11 @@ call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2:
es-errors "^1.3.0"
function-bind "^1.1.2"
+callsites@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
+ integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
+
caniuse-lite@^1.0.30001782:
version "1.0.30001799"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001799.tgz#5c909138c27f1a61219d3e092071c1cc7d32dc55"
@@ -669,6 +776,11 @@ combined-stream@^1.0.8:
dependencies:
delayed-stream "~1.0.0"
+convert-source-map@^1.5.0:
+ version "1.9.0"
+ resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f"
+ integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==
+
convert-source-map@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a"
@@ -681,7 +793,18 @@ copy-to-clipboard@3.3.3:
dependencies:
toggle-selection "^1.0.6"
-csstype@^3.1.2:
+cosmiconfig@^7.0.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6"
+ integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==
+ dependencies:
+ "@types/parse-json" "^4.0.0"
+ import-fresh "^3.2.1"
+ parse-json "^5.0.0"
+ path-type "^4.0.0"
+ yaml "^1.10.0"
+
+csstype@^3.0.2, csstype@^3.1.2:
version "3.2.3"
resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.2.3.tgz#ec48c0f3e993e50648c86da559e2610995cf989a"
integrity sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==
@@ -717,6 +840,13 @@ electron-to-chromium@^1.5.328:
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.371.tgz#fa5684f2a514c57368823f9e75553f9a7c5ef0be"
integrity sha512-e9htk9mAYL6AzmkEhSvVVw7IWGSBJ/Bqdn2eRyRLrj1g6sncN4WbFt5qnILYoCktktr45pyjIrOiRvBThQ808w==
+error-ex@^1.3.1:
+ version "1.3.4"
+ resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.4.tgz#b3a8d8bb6f92eecc1629e3e27d3c8607a8a32414"
+ integrity sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==
+ dependencies:
+ is-arrayish "^0.2.1"
+
es-define-property@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa"
@@ -778,6 +908,16 @@ escalade@^3.2.0:
resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5"
integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==
+escape-string-regexp@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
+ integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
+
+find-root@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4"
+ integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==
+
focus-lock@^1.3.6:
version "1.3.6"
resolved "https://registry.yarnpkg.com/focus-lock/-/focus-lock-1.3.6.tgz#955eec1e10591d56f679258edb94aedb11d691cd"
@@ -869,13 +1009,20 @@ has-tostringtag@^1.0.2:
dependencies:
has-symbols "^1.0.3"
-hasown@^2.0.2, hasown@^2.0.4:
+hasown@^2.0.2, hasown@^2.0.3, hasown@^2.0.4:
version "2.0.4"
resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.4.tgz#8c62d8cb90beb2aad5d0a5b67581ad9854c3f003"
integrity sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==
dependencies:
function-bind "^1.1.2"
+hoist-non-react-statics@^3.3.1:
+ version "3.3.2"
+ resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
+ integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
+ dependencies:
+ react-is "^16.7.0"
+
https-proxy-agent@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6"
@@ -884,6 +1031,26 @@ https-proxy-agent@^5.0.1:
agent-base "6"
debug "4"
+import-fresh@^3.2.1:
+ version "3.3.1"
+ resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf"
+ integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==
+ dependencies:
+ parent-module "^1.0.0"
+ resolve-from "^4.0.0"
+
+is-arrayish@^0.2.1:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
+ integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==
+
+is-core-module@^2.16.1:
+ version "2.16.2"
+ resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.2.tgz#3e07450a8080ebce3fbf0cac494f4d2ab324e082"
+ integrity sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==
+ dependencies:
+ hasown "^2.0.3"
+
"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
@@ -894,6 +1061,11 @@ jsesc@^3.0.2:
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d"
integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==
+json-parse-even-better-errors@^2.3.0:
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
+ integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
+
json5@^2.2.3:
version "2.2.3"
resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
@@ -904,6 +1076,11 @@ keycloak-js@^26.2.4:
resolved "https://registry.yarnpkg.com/keycloak-js/-/keycloak-js-26.2.4.tgz#b96ff33ed08ff6fd8d1e09d9e5055c7b3f2fa918"
integrity sha512-PnXpR3ubETGOt0B/Qt2lxmPbkZr5bc3vlQsOqDoTPPQsZRp7JjhTKxlJ187uWh8qJhvBab6Gsjb06a8ayOPfuw==
+lines-and-columns@^1.1.6:
+ version "1.2.4"
+ resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
+ integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
+
lodash.mergewith@4.6.2:
version "4.6.2"
resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz#617121f89ac55f59047c7aec1ccd6654c6590f55"
@@ -960,6 +1137,33 @@ object-assign@^4.1.1:
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
+parent-module@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
+ integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
+ dependencies:
+ callsites "^3.0.0"
+
+parse-json@^5.0.0:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
+ integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==
+ dependencies:
+ "@babel/code-frame" "^7.0.0"
+ error-ex "^1.3.1"
+ json-parse-even-better-errors "^2.3.0"
+ lines-and-columns "^1.1.6"
+
+path-parse@^1.0.7:
+ version "1.0.7"
+ resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
+ integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
+
+path-type@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
+ integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
+
picocolors@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b"
@@ -1025,7 +1229,7 @@ react-icons@^5.0.0:
resolved "https://registry.yarnpkg.com/react-icons/-/react-icons-5.6.0.tgz#27bcc4acbc836e762548d76041cf9b9fef4e3837"
integrity sha512-RH93p5ki6LfOiIt0UtDyNg/cee+HLVR6cHHtW3wALfo+eOHTp8RnU2kRkI6E+H19zMIs03DyxUG/GfZMOGvmiA==
-react-is@^16.13.1:
+react-is@^16.13.1, react-is@^16.7.0:
version "16.13.1"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
@@ -1069,6 +1273,21 @@ react@^18.0.0:
dependencies:
loose-envify "^1.1.0"
+resolve-from@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
+ integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
+
+resolve@^1.19.0:
+ version "1.22.12"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.12.tgz#f5b2a680897c69c238a13cd16b15671f8b73549f"
+ integrity sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==
+ dependencies:
+ es-errors "^1.3.0"
+ is-core-module "^2.16.1"
+ path-parse "^1.0.7"
+ supports-preserve-symlinks-flag "^1.0.0"
+
rollup@^4.20.0:
version "4.61.1"
resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.61.1.tgz#4a053204912e9083e51cb3a0bf02ffdc397264fb"
@@ -1120,6 +1339,21 @@ source-map-js@^1.2.1:
resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46"
integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==
+source-map@^0.5.7:
+ version "0.5.7"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
+ integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==
+
+stylis@4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51"
+ integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==
+
+supports-preserve-symlinks-flag@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
+ integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
+
toggle-selection@^1.0.6:
version "1.0.6"
resolved "https://registry.yarnpkg.com/toggle-selection/-/toggle-selection-1.0.6.tgz#6e45b1263f2017fa0acc7d89d78b15b8bf77da32"
@@ -1173,3 +1407,8 @@ yallist@^3.0.2:
version "3.1.1"
resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
+
+yaml@^1.10.0:
+ version "1.10.3"
+ resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.3.tgz#76e407ed95c42684fb8e14641e5de62fe65bbcb3"
+ integrity sha512-vIYeF1u3CjlhAFekPPAk2h/Kv4T3mAkMox5OymRiJQB0spDP10LHvt+K7G9Ny6NuuMAb25/6n1qyUjAcGNf/AA==