555 lines
21 KiB
JavaScript
555 lines
21 KiB
JavaScript
import { jsx as e, jsxs as g, Fragment as F } from "react/jsx-runtime";
|
|
import { Box as c, HStack as u, VStack as C, Image as j, Text as s, useDisclosure as J, Stack as K, Tooltip as T, IconButton as Z, Icon as d, Drawer as q, DrawerOverlay as $, DrawerContent as _, DrawerCloseButton as AA, DrawerHeader as eA, DrawerBody as oA, SimpleGrid as nA, Link as tA } from "@chakra-ui/react";
|
|
import { useRef as rA, Children as gA, isValidElement as lA, forwardRef as aA } from "react";
|
|
import { FiMoreHorizontal as iA } from "react-icons/fi/index.js";
|
|
import { IoExit as IA } from "react-icons/io5/index.js";
|
|
import { u as cA, l as sA } from "./chunks/permission-DL7ciWwc.js";
|
|
const dA = "data:image/webp;base64,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MCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2UvcG5nPC9kYzpmb3JtYXQ+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE4LTA4LTEzVDE0OjI1OjUzKzA0OjMwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE4LTA4LTEzVDE0OjI1OjUzKzA0OjMwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxOC0wOC0xM1QxNDoyNTo1MyswNDozMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcE1NOkhpc3Rvcnk+CiAgICAgICAgICAgIDxyZGY6U2VxPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxOC0wOC0xM1QxNDoyNTo1MyswNDozMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDoxMDU3ZjgxNy03YTEzLThiNGEtODc1Ni1lYWM1MWEyZDRiYTY8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTgtMDgtMTNUMTQ6MjU6NTMrMDQ6MzA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6MDZjNmM4ODYtZDY2My1jMzQzLTkwZTUtNjQ4ZWJlYTkxYzgxPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjEwNTdmODE3LTdhMTMtOGI0YS04NzU2LWVhYzUxYTJkNGJhNjwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD5hZG9iZTpkb2NpZDpwaG90b3Nob3A6NWI3ZmJlNDgtMDc0ZS01NzRhLWFlNTctN2RmYjA4NmI1N2Q3PC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjA2YzZjODg2LWQ2NjMtYzM0My05MGU1LTY0OGViZWE5MWM4MTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHBob3Rvc2hvcDpJQ0NQcm9maWxlPnNSR0IgSUVDNjE5NjYtMi4xPC9waG90b3Nob3A6SUNDUHJvZmlsZT4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHBob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4KICAgICAgICAgICAgPHJkZjpCYWc+CiAgICAgICAgICAgICAgIDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmEwYjgxNWMzLTkzYjMtODU0MC04NmY0LTA0OTEyZTY5Y2Y4NTwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpCYWc+CiAgICAgICAgIDwvcGhvdG9zaG9wOkRvY3VtZW50QW5jZXN0b3JzPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4K";
|
|
function CA({ children: o, ...A }) {
|
|
return /* @__PURE__ */ e(
|
|
c,
|
|
{
|
|
as: "header",
|
|
w: "100%",
|
|
h: { base: "64px", lg: "110px" },
|
|
flexShrink: 0,
|
|
borderBottom: "1px",
|
|
borderColor: "gray.200",
|
|
bg: "#4299E1",
|
|
px: { base: 3, sm: 4, lg: "20px" },
|
|
color: "white",
|
|
...A,
|
|
children: /* @__PURE__ */ e(
|
|
u,
|
|
{
|
|
h: "100%",
|
|
w: "100%",
|
|
minW: 0,
|
|
alignItems: "center",
|
|
justifyContent: "space-between",
|
|
children: o
|
|
}
|
|
)
|
|
}
|
|
);
|
|
}
|
|
function bA({ children: o, ...A }) {
|
|
return /* @__PURE__ */ e(
|
|
u,
|
|
{
|
|
alignItems: "center",
|
|
h: "100%",
|
|
minW: 0,
|
|
flex: "1",
|
|
spacing: { base: 2.5, lg: 3 },
|
|
py: { base: "6px", lg: "10px" },
|
|
...A,
|
|
children: o
|
|
}
|
|
);
|
|
}
|
|
function pA(o) {
|
|
return /* @__PURE__ */ e(
|
|
j,
|
|
{
|
|
loading: "lazy",
|
|
alt: "logo",
|
|
w: { base: "46px", lg: "80px" },
|
|
maxW: { base: "46px", lg: "80px" },
|
|
maxH: { base: "48px", lg: "80px" },
|
|
objectFit: "contain",
|
|
flexShrink: 0,
|
|
...o
|
|
}
|
|
);
|
|
}
|
|
function hA({ children: o, ...A }) {
|
|
return /* @__PURE__ */ e(
|
|
C,
|
|
{
|
|
alignItems: "start",
|
|
justifyContent: "center",
|
|
h: "100%",
|
|
minW: 0,
|
|
flex: "1",
|
|
spacing: { base: 0, lg: 1 },
|
|
...A,
|
|
children: o
|
|
}
|
|
);
|
|
}
|
|
function uA({ children: o, ...A }) {
|
|
return /* @__PURE__ */ e(
|
|
s,
|
|
{
|
|
w: "100%",
|
|
fontWeight: "bold",
|
|
fontSize: { base: "15px", lg: "20px" },
|
|
lineHeight: "short",
|
|
noOfLines: 1,
|
|
...A,
|
|
children: o
|
|
}
|
|
);
|
|
}
|
|
function xA({ children: o, ...A }) {
|
|
return /* @__PURE__ */ e(
|
|
s,
|
|
{
|
|
w: "100%",
|
|
fontSize: { base: "10px", sm: "11px", lg: "16px" },
|
|
lineHeight: { base: "shorter", lg: "normal" },
|
|
noOfLines: 1,
|
|
...A,
|
|
children: o
|
|
}
|
|
);
|
|
}
|
|
function mA({ logoSrc: o = dA, ...A }) {
|
|
return /* @__PURE__ */ g(
|
|
C,
|
|
{
|
|
w: "fit-content",
|
|
flexShrink: 0,
|
|
alignItems: "center",
|
|
justifyContent: "center",
|
|
spacing: { base: 0, lg: 1 },
|
|
py: { base: "6px", lg: "10px" },
|
|
...A,
|
|
children: [
|
|
/* @__PURE__ */ e(
|
|
j,
|
|
{
|
|
src: o,
|
|
alt: "نشان مؤسسه باقرالعلوم",
|
|
loading: "lazy",
|
|
w: { base: "38px", lg: "90px" },
|
|
maxH: { base: "46px", lg: "72px" },
|
|
objectFit: "contain"
|
|
}
|
|
),
|
|
/* @__PURE__ */ e(
|
|
s,
|
|
{
|
|
display: { base: "none", lg: "block" },
|
|
fontSize: "xs",
|
|
fontWeight: "bold",
|
|
textAlign: "center",
|
|
whiteSpace: "nowrap",
|
|
children: "مؤسسه تولید سیستمهای خبره و هوشمند اسلامی باقرالعلوم(ع)"
|
|
}
|
|
)
|
|
]
|
|
}
|
|
);
|
|
}
|
|
const SA = Object.assign(CA, {
|
|
BrandSection: bA,
|
|
Logo: pA,
|
|
Brand: hA,
|
|
Title: uA,
|
|
Description: xA,
|
|
Bi: mA
|
|
}), N = (o = "") => {
|
|
const A = String(o).split(/[?#]/)[0] || "";
|
|
return !A || A === "/" ? A || "/" : A.replace(/\/+$/, "");
|
|
}, P = (o, A) => {
|
|
const t = N(o);
|
|
return [A == null ? void 0 : A.path, ...(A == null ? void 0 : A.aliases) || []].filter(Boolean).map(N).some(
|
|
(l) => t === l || t.startsWith(`${l}/`)
|
|
);
|
|
}, MA = (o = [], A) => o.find((t) => P(A, t)), G = aA(
|
|
({ linkComponent: o, href: A, children: t, ...r }, l) => /* @__PURE__ */ e(tA, { ref: l, href: A, ...o ? { as: o } : {}, ...r, children: t })
|
|
);
|
|
G.displayName = "SidebarLink";
|
|
const RA = ({
|
|
item: o,
|
|
isActive: A,
|
|
isDisabled: t,
|
|
linkComponent: r,
|
|
onNavigate: l
|
|
}) => {
|
|
const a = {
|
|
variant: "ghost",
|
|
position: "relative",
|
|
bg: "transparent",
|
|
_before: A ? {
|
|
content: '""',
|
|
position: "absolute",
|
|
top: 0,
|
|
bottom: 0,
|
|
insetInlineStart: "4px",
|
|
insetInlineEnd: "4px",
|
|
bg: "gray.200",
|
|
borderRadius: "md",
|
|
zIndex: 0
|
|
} : void 0,
|
|
sx: {
|
|
"> svg": {
|
|
position: "relative",
|
|
zIndex: 1
|
|
}
|
|
},
|
|
icon: /* @__PURE__ */ e(d, { as: o.icon }),
|
|
fontSize: "xl",
|
|
size: { base: "sm", lg: "md" },
|
|
"aria-label": o.title,
|
|
"aria-current": A ? "page" : void 0
|
|
};
|
|
let b;
|
|
if (t || A)
|
|
b = /* @__PURE__ */ e(
|
|
Z,
|
|
{
|
|
...a,
|
|
isDisabled: t,
|
|
cursor: A && !t ? "default" : void 0
|
|
}
|
|
);
|
|
else {
|
|
const x = r ? { as: r, href: o.path } : { as: "a", href: o.path };
|
|
b = /* @__PURE__ */ e(Z, { ...a, ...x, onClick: l });
|
|
}
|
|
return /* @__PURE__ */ e(
|
|
T,
|
|
{
|
|
label: t ? "عدم دسترسی" : o.title,
|
|
placement: "left-start",
|
|
hasArrow: !0,
|
|
rounded: "md",
|
|
py: 2,
|
|
px: 4,
|
|
fontWeight: "bold",
|
|
closeDelay: 150,
|
|
children: /* @__PURE__ */ e(c, { as: "span", children: b })
|
|
}
|
|
);
|
|
}, fA = ({
|
|
item: o,
|
|
isActive: A,
|
|
isDisabled: t,
|
|
linkComponent: r,
|
|
onNavigate: l
|
|
}) => {
|
|
const a = /* @__PURE__ */ g(
|
|
C,
|
|
{
|
|
as: "span",
|
|
spacing: 0.5,
|
|
w: "full",
|
|
minW: 0,
|
|
py: 1,
|
|
px: 1,
|
|
borderRadius: "xl",
|
|
color: A ? "blue.600" : "gray.600",
|
|
bg: A ? "blue.50" : "transparent",
|
|
opacity: t ? 0.4 : 1,
|
|
transition: "background-color 150ms ease, color 150ms ease",
|
|
children: [
|
|
/* @__PURE__ */ e(d, { as: o.icon, boxSize: 5 }),
|
|
/* @__PURE__ */ e(
|
|
s,
|
|
{
|
|
as: "span",
|
|
w: "full",
|
|
fontSize: "10px",
|
|
fontWeight: A ? "bold" : "medium",
|
|
lineHeight: "short",
|
|
textAlign: "center",
|
|
noOfLines: 1,
|
|
children: o.mobileTitle || o.title
|
|
}
|
|
)
|
|
]
|
|
}
|
|
);
|
|
return t || A ? /* @__PURE__ */ e(
|
|
c,
|
|
{
|
|
flex: "1",
|
|
minW: 0,
|
|
display: "flex",
|
|
alignItems: "center",
|
|
"aria-disabled": t ? "true" : void 0,
|
|
"aria-current": A ? "page" : void 0,
|
|
children: a
|
|
}
|
|
) : /* @__PURE__ */ e(
|
|
G,
|
|
{
|
|
linkComponent: r,
|
|
href: o.path,
|
|
flex: "1",
|
|
minW: 0,
|
|
display: "flex",
|
|
alignItems: "center",
|
|
_hover: { textDecoration: "none" },
|
|
onClick: l,
|
|
"aria-current": A ? "page" : void 0,
|
|
children: a
|
|
}
|
|
);
|
|
}, B = () => null, wA = ({
|
|
items: o = [],
|
|
currentPath: A,
|
|
linkComponent: t,
|
|
onNavigate: r,
|
|
children: l,
|
|
primaryMobileCount: a = 4,
|
|
moreTitle: b = "بیشتر",
|
|
moreDrawerTitle: x = "سایر بخشهای سامانه",
|
|
desktopProps: Q,
|
|
mobileProps: O
|
|
}) => {
|
|
var k, Y;
|
|
const { isOpen: L, onOpen: V, onClose: m } = J(), v = rA(), { cannot: U } = cA(), I = gA.toArray(l).find(
|
|
(n) => lA(n) && n.type === B
|
|
), R = !!I, f = ((k = I == null ? void 0 : I.props) == null ? void 0 : k.title) || "خروج", W = ((Y = I == null ? void 0 : I.props) == null ? void 0 : Y.icon) || IA, H = A ?? (typeof window < "u" ? `${window.location.pathname}${window.location.search}` : ""), X = o.slice(0, a), w = o.slice(a), y = (n) => (Array.isArray(n == null ? void 0 : n.perm) ? n.perm : [n == null ? void 0 : n.perm]).filter(Boolean).some((i) => U(i)), p = (n) => P(H, n), D = w.some(p), S = w.length > 0 || R, M = (n) => {
|
|
r == null || r(n), m();
|
|
}, z = () => {
|
|
m(), sA();
|
|
};
|
|
return /* @__PURE__ */ g(F, { children: [
|
|
/* @__PURE__ */ e(
|
|
K,
|
|
{
|
|
py: 6,
|
|
as: "nav",
|
|
flexShrink: 0,
|
|
justify: "space-between",
|
|
h: "full",
|
|
borderLeft: "1px",
|
|
borderColor: "gray.200",
|
|
overflowY: "scroll",
|
|
sx: {
|
|
"::-webkit-scrollbar": { display: "none" },
|
|
scrollbarWidth: "none",
|
|
msOverflowStyle: "none"
|
|
},
|
|
display: { base: "none", lg: "flex" },
|
|
...Q,
|
|
children: /* @__PURE__ */ g(C, { spacing: 2, children: [
|
|
o.map((n) => /* @__PURE__ */ e(
|
|
RA,
|
|
{
|
|
item: n,
|
|
isDisabled: y(n),
|
|
isActive: p(n),
|
|
linkComponent: t,
|
|
onNavigate: () => r == null ? void 0 : r(n)
|
|
},
|
|
n.path
|
|
)),
|
|
R && /* @__PURE__ */ e(
|
|
T,
|
|
{
|
|
label: f,
|
|
placement: "left-start",
|
|
hasArrow: !0,
|
|
rounded: "md",
|
|
py: 2,
|
|
px: 4,
|
|
fontWeight: "bold",
|
|
closeDelay: 150,
|
|
children: /* @__PURE__ */ e(
|
|
Z,
|
|
{
|
|
variant: "ghost",
|
|
icon: /* @__PURE__ */ e(d, { as: W }),
|
|
fontSize: "xl",
|
|
size: { base: "sm", lg: "lg" },
|
|
"aria-label": f,
|
|
onClick: z
|
|
}
|
|
)
|
|
}
|
|
)
|
|
] })
|
|
}
|
|
),
|
|
/* @__PURE__ */ e(
|
|
c,
|
|
{
|
|
as: "nav",
|
|
"aria-label": "ناوبری اصلی موبایل",
|
|
display: { base: "block", lg: "none" },
|
|
position: "fixed",
|
|
insetInline: 0,
|
|
bottom: 0,
|
|
zIndex: 1200,
|
|
bg: "white",
|
|
borderTopWidth: "1px",
|
|
borderColor: "gray.200",
|
|
boxShadow: "0 -6px 18px rgba(0, 0, 0, 0.08)",
|
|
pb: "env(safe-area-inset-bottom)",
|
|
...O,
|
|
children: /* @__PURE__ */ g(u, { h: "56px", px: 1.5, spacing: 1, align: "stretch", children: [
|
|
X.map((n) => /* @__PURE__ */ e(
|
|
fA,
|
|
{
|
|
item: n,
|
|
isDisabled: y(n),
|
|
isActive: p(n),
|
|
linkComponent: t,
|
|
onNavigate: () => M(n)
|
|
},
|
|
n.path
|
|
)),
|
|
S && /* @__PURE__ */ e(
|
|
c,
|
|
{
|
|
as: "button",
|
|
ref: v,
|
|
type: "button",
|
|
flex: "1",
|
|
minW: 0,
|
|
h: "full",
|
|
p: 0,
|
|
border: 0,
|
|
bg: "transparent",
|
|
font: "inherit",
|
|
display: "flex",
|
|
alignItems: "center",
|
|
justifyContent: "center",
|
|
cursor: "pointer",
|
|
onClick: V,
|
|
"aria-label": "نمایش سایر بخشها",
|
|
children: /* @__PURE__ */ g(
|
|
C,
|
|
{
|
|
spacing: 0.5,
|
|
w: "full",
|
|
py: 1,
|
|
px: 1,
|
|
borderRadius: "xl",
|
|
color: D ? "blue.600" : "gray.600",
|
|
bg: D ? "blue.50" : "transparent",
|
|
children: [
|
|
/* @__PURE__ */ e(d, { as: iA, boxSize: 5 }),
|
|
/* @__PURE__ */ e(
|
|
s,
|
|
{
|
|
fontSize: "10px",
|
|
fontWeight: D ? "bold" : "medium",
|
|
lineHeight: "short",
|
|
children: b
|
|
}
|
|
)
|
|
]
|
|
}
|
|
)
|
|
}
|
|
)
|
|
] })
|
|
}
|
|
),
|
|
S && /* @__PURE__ */ g(
|
|
q,
|
|
{
|
|
isOpen: L,
|
|
placement: "bottom",
|
|
onClose: m,
|
|
finalFocusRef: v,
|
|
children: [
|
|
/* @__PURE__ */ e($, {}),
|
|
/* @__PURE__ */ g(
|
|
_,
|
|
{
|
|
borderTopRadius: "2xl",
|
|
maxH: "min(78dvh, 620px)",
|
|
pb: "env(safe-area-inset-bottom)",
|
|
children: [
|
|
/* @__PURE__ */ e(AA, { insetInlineEnd: 3, insetInlineStart: "auto" }),
|
|
/* @__PURE__ */ e(eA, { borderBottomWidth: "1px", fontSize: "md", children: x }),
|
|
/* @__PURE__ */ g(oA, { py: 4, overflowY: "auto", children: [
|
|
/* @__PURE__ */ e(nA, { columns: 4, spacing: 2, children: w.map((n) => {
|
|
const h = y(n), i = p(n), E = /* @__PURE__ */ g(
|
|
C,
|
|
{
|
|
h: "70px",
|
|
minW: 0,
|
|
justify: "center",
|
|
spacing: 1,
|
|
px: 1,
|
|
borderWidth: "1px",
|
|
borderColor: i ? "blue.300" : "gray.200",
|
|
borderRadius: "lg",
|
|
bg: i ? "blue.50" : "white",
|
|
color: i ? "blue.700" : "gray.700",
|
|
opacity: h ? 0.4 : 1,
|
|
children: [
|
|
/* @__PURE__ */ e(d, { as: n.icon, boxSize: 5, flexShrink: 0 }),
|
|
/* @__PURE__ */ e(
|
|
s,
|
|
{
|
|
w: "full",
|
|
fontSize: "10px",
|
|
lineHeight: "shorter",
|
|
fontWeight: i ? "bold" : "medium",
|
|
textAlign: "center",
|
|
noOfLines: 2,
|
|
children: n.mobileTitle || n.title
|
|
}
|
|
)
|
|
]
|
|
}
|
|
);
|
|
return h || i ? /* @__PURE__ */ e(
|
|
c,
|
|
{
|
|
"aria-disabled": h ? "true" : void 0,
|
|
"aria-current": i ? "page" : void 0,
|
|
children: E
|
|
},
|
|
n.path
|
|
) : /* @__PURE__ */ e(
|
|
G,
|
|
{
|
|
linkComponent: t,
|
|
href: n.path,
|
|
_hover: { textDecoration: "none" },
|
|
onClick: () => M(n),
|
|
"aria-current": i ? "page" : void 0,
|
|
children: E
|
|
},
|
|
n.path
|
|
);
|
|
}) }),
|
|
R && /* @__PURE__ */ e(c, { mt: 4, pt: 4, borderTopWidth: "1px", borderColor: "gray.200", children: /* @__PURE__ */ g(
|
|
u,
|
|
{
|
|
as: "button",
|
|
type: "button",
|
|
w: "full",
|
|
justify: "center",
|
|
py: 3,
|
|
borderRadius: "xl",
|
|
border: 0,
|
|
color: "red.600",
|
|
bg: "red.50",
|
|
cursor: "pointer",
|
|
onClick: z,
|
|
children: [
|
|
/* @__PURE__ */ e(d, { as: W, boxSize: 5 }),
|
|
/* @__PURE__ */ e(s, { fontWeight: "bold", children: f })
|
|
]
|
|
}
|
|
) })
|
|
] })
|
|
]
|
|
}
|
|
)
|
|
]
|
|
}
|
|
)
|
|
] });
|
|
}, zA = Object.assign(wA, {
|
|
Exit: B
|
|
});
|
|
export {
|
|
SA as Header,
|
|
zA as Sidebar,
|
|
MA as getActiveSidebarItem,
|
|
P as isSidebarPathActive
|
|
};
|