|
@@ -5,13 +5,14 @@ import {
|
|
|
StyledAccordion,
|
|
StyledAccordion,
|
|
|
StyledAccordionDetails,
|
|
StyledAccordionDetails,
|
|
|
StyledAccordionSummary,
|
|
StyledAccordionSummary,
|
|
|
- StyledDrawer,
|
|
|
|
|
StyledBonus,
|
|
StyledBonus,
|
|
|
StyledButton,
|
|
StyledButton,
|
|
|
StyledThemeTabs,
|
|
StyledThemeTabs,
|
|
|
StyledThemeTab,
|
|
StyledThemeTab,
|
|
|
StyledAct,
|
|
StyledAct,
|
|
|
- StyledRefer
|
|
|
|
|
|
|
+ StyledRefer,
|
|
|
|
|
+ StyledBlock,
|
|
|
|
|
+ StyledIconLink
|
|
|
}
|
|
}
|
|
|
from './styles';
|
|
from './styles';
|
|
|
|
|
|
|
@@ -49,13 +50,21 @@ import spin_3 from "@assets/activity/spin_3.png";
|
|
|
import imgrefer from "@assets/activity/rio_refer.png";
|
|
import imgrefer from "@assets/activity/rio_refer.png";
|
|
|
import imgrefer_f from "@assets/activity/rio_refer_f.png";
|
|
import imgrefer_f from "@assets/activity/rio_refer_f.png";
|
|
|
import {useSelector} from "react-redux";
|
|
import {useSelector} from "react-redux";
|
|
|
-import {allNavs, getRoute, isFullRoute, nBlocks} from "@features/mainSlice";
|
|
|
|
|
-import {ROUTE_TYPE_POP} from "@constants/routes";
|
|
|
|
|
-const drawerWidth = 250;
|
|
|
|
|
|
|
+import {allNavs, getBlockColumn, getRoute, getRouteStyles, isFullRoute, nBlocks} from "@features/mainSlice";
|
|
|
|
|
+import {
|
|
|
|
|
+ ROUTE_TYPE_POP,
|
|
|
|
|
+ ROUTE_TYPE_POP_OR_FULL,
|
|
|
|
|
+ SIDE_TYPE_GRID,
|
|
|
|
|
+ SIDE_TYPE_NOMAL,
|
|
|
|
|
+ SIDE_TYPE_SPECIAL
|
|
|
|
|
+} from "@constants/routes";
|
|
|
|
|
+import SvgIcon from "@components/SvgIcon";
|
|
|
|
|
+const drawWidth = 250;
|
|
|
|
|
+const drawMobieWidth=250;
|
|
|
const i18n=global.i18n;
|
|
const i18n=global.i18n;
|
|
|
|
|
|
|
|
-const openedMixin = (theme) => ({
|
|
|
|
|
- width: drawerWidth,
|
|
|
|
|
|
|
+const openedMixin = (theme,width) => ({
|
|
|
|
|
+ width: width,
|
|
|
transition: theme.transitions.create('width', {
|
|
transition: theme.transitions.create('width', {
|
|
|
easing: theme.transitions.easing.sharp,
|
|
easing: theme.transitions.easing.sharp,
|
|
|
duration: theme.transitions.duration.enteringScreen,
|
|
duration: theme.transitions.duration.enteringScreen,
|
|
@@ -85,22 +94,23 @@ const closedMixin = (theme) => ({
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
const Drawer = styled(MuiDrawer, { shouldForwardProp: (prop) => prop !== 'open' })(
|
|
const Drawer = styled(MuiDrawer, { shouldForwardProp: (prop) => prop !== 'open' })(
|
|
|
- ({ theme, open }) => ({
|
|
|
|
|
- width: drawerWidth,
|
|
|
|
|
|
|
+ ({ theme, open}) => ({
|
|
|
|
|
+ width: drawWidth,
|
|
|
flexShrink: 0,
|
|
flexShrink: 0,
|
|
|
whiteSpace: 'nowrap',
|
|
whiteSpace: 'nowrap',
|
|
|
boxSizing: 'border-box',
|
|
boxSizing: 'border-box',
|
|
|
// overflowX:'hidden',
|
|
// overflowX:'hidden',
|
|
|
...(open && {
|
|
...(open && {
|
|
|
- ...openedMixin(theme,),
|
|
|
|
|
- '& .MuiDrawer-paper': openedMixin(theme,),
|
|
|
|
|
|
|
+ ...openedMixin(theme),
|
|
|
|
|
+ '& .MuiDrawer-paper': openedMixin(theme,drawWidth),
|
|
|
}),
|
|
}),
|
|
|
...(!open && {
|
|
...(!open && {
|
|
|
- ...closedMixin(theme,'0px'),
|
|
|
|
|
- '& .MuiDrawer-paper': closedMixin(theme,),
|
|
|
|
|
|
|
+ ...closedMixin(theme),
|
|
|
|
|
+ '& .MuiDrawer-paper': closedMixin(theme),
|
|
|
}),
|
|
}),
|
|
|
}),
|
|
}),
|
|
|
);
|
|
);
|
|
|
|
|
+
|
|
|
const DrawerHeader = styled('div')(({ theme }) => ({
|
|
const DrawerHeader = styled('div')(({ theme }) => ({
|
|
|
display: 'flex',
|
|
display: 'flex',
|
|
|
alignItems: 'center',
|
|
alignItems: 'center',
|
|
@@ -132,13 +142,12 @@ const Sidebar = () => {
|
|
|
|
|
|
|
|
const navBlocks=useSelector(nBlocks);
|
|
const navBlocks=useSelector(nBlocks);
|
|
|
const currRoute = useSelector(getRoute(pathname));
|
|
const currRoute = useSelector(getRoute(pathname));
|
|
|
- // const navBlocks=JSON.parse(JSON.stringify(oriNavBlocks));
|
|
|
|
|
- // let expandRoutes=[];
|
|
|
|
|
|
|
+ const blocksColumn=useSelector(getBlockColumn);
|
|
|
|
|
+ const routeStyles=useSelector(getRouteStyles);
|
|
|
const handleActEnter = () => {
|
|
const handleActEnter = () => {
|
|
|
if (open)return;
|
|
if (open)return;
|
|
|
setIsActHovered(true);
|
|
setIsActHovered(true);
|
|
|
};
|
|
};
|
|
|
-
|
|
|
|
|
const handleActLeave = () => {
|
|
const handleActLeave = () => {
|
|
|
if (open)return;
|
|
if (open)return;
|
|
|
setIsActHovered(false);
|
|
setIsActHovered(false);
|
|
@@ -161,17 +170,23 @@ const Sidebar = () => {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
const checkNavOpen=()=>{
|
|
const checkNavOpen=()=>{
|
|
|
- // let index=getRootRoute(pathname);
|
|
|
|
|
- // if (index==-1)setExpanded(undefined);
|
|
|
|
|
- // else
|
|
|
|
|
- // {
|
|
|
|
|
- // setExpanded("panel"+index);
|
|
|
|
|
- // }
|
|
|
|
|
- // setExpanded(pathname);
|
|
|
|
|
if (currRoute==null)return;
|
|
if (currRoute==null)return;
|
|
|
let lv=currRoute.lv;
|
|
let lv=currRoute.lv;
|
|
|
setExpanded(lv);
|
|
setExpanded(lv);
|
|
|
}
|
|
}
|
|
|
|
|
+ const getOLStyles=(styleID)=>{
|
|
|
|
|
+ let styles=routeStyles[styleID];
|
|
|
|
|
+ if (styles==null){
|
|
|
|
|
+ styles=routeStyles[1];
|
|
|
|
|
+ }
|
|
|
|
|
+ let style={};
|
|
|
|
|
+ if (styles!=null){
|
|
|
|
|
+ style=styles.style;
|
|
|
|
|
+ }
|
|
|
|
|
+ let thstyles=style[theme];
|
|
|
|
|
+ if (thstyles==null)thstyles={};
|
|
|
|
|
+ return thstyles;
|
|
|
|
|
+ }
|
|
|
// collapse opened accordion on route change when the drawer is temporary
|
|
// collapse opened accordion on route change when the drawer is temporary
|
|
|
useEffect(() => {
|
|
useEffect(() => {
|
|
|
checkNavOpen();
|
|
checkNavOpen();
|
|
@@ -184,90 +199,82 @@ const Sidebar = () => {
|
|
|
let lv=currRoute.lv;
|
|
let lv=currRoute.lv;
|
|
|
return lv===link.lv;
|
|
return lv===link.lv;
|
|
|
}
|
|
}
|
|
|
|
|
+ const renderIconLink=(link,olStyle)=>{
|
|
|
|
|
+ let ispop=link.type===ROUTE_TYPE_POP||link.type===ROUTE_TYPE_POP_OR_FULL;
|
|
|
|
|
+ let linkIcon=(<SvgIcon className={"icon"} herf={link.icon}/>);
|
|
|
|
|
+ let linkA=ispop?(
|
|
|
|
|
+ <a href={link.path}>
|
|
|
|
|
+ {linkIcon}
|
|
|
|
|
+ </a>
|
|
|
|
|
+ ):(
|
|
|
|
|
+ <NavLink to={link.path}>
|
|
|
|
|
+ {linkIcon}
|
|
|
|
|
+ </NavLink>
|
|
|
|
|
+ );
|
|
|
|
|
+ return (
|
|
|
|
|
+ <MTooltip disableHoverListener={open} title={i18n.t(link.title)} arrow placement="right">
|
|
|
|
|
+ <StyledIconLink olStyle={olStyle}>
|
|
|
|
|
+ {linkA}
|
|
|
|
|
+ </StyledIconLink>
|
|
|
|
|
+ </MTooltip>
|
|
|
|
|
+ );
|
|
|
|
|
+ }
|
|
|
const renderLink=(link)=>{
|
|
const renderLink=(link)=>{
|
|
|
let pages=link.subs||link.pages;
|
|
let pages=link.subs||link.pages;
|
|
|
- let linkItem=(
|
|
|
|
|
- <StyledAccordion defaultExpanded={true} open={open} square={true} key={link.lv} expanded={checkCkey(link.lv)} onChange={handleChange(`${link.lv}`,link.path)}>
|
|
|
|
|
- <MTooltip disableHoverListener={open} title={i18n.t(link.title)} arrow placement="right">
|
|
|
|
|
- <StyledAccordionSummary open={open}>
|
|
|
|
|
- <Link open={open} className={`${checkPath(link) ? 'active' : ''} h4`}>
|
|
|
|
|
- <svg className={"icon"}>
|
|
|
|
|
- <use xlinkHref={`${symbol}#${link.icon}`} />
|
|
|
|
|
- </svg>
|
|
|
|
|
- {open?i18n.t(link.title):''}
|
|
|
|
|
- </Link>
|
|
|
|
|
- {
|
|
|
|
|
- open?(
|
|
|
|
|
- <svg className="icon-chevron-down">
|
|
|
|
|
- <use xlinkHref={`${symbol}#icon_Arrow`} />
|
|
|
|
|
- </svg>
|
|
|
|
|
- ):(<></>)
|
|
|
|
|
- }
|
|
|
|
|
- </StyledAccordionSummary>
|
|
|
|
|
- </MTooltip>
|
|
|
|
|
- {
|
|
|
|
|
- open?(
|
|
|
|
|
- <StyledAccordionDetails>
|
|
|
|
|
|
|
+ let styles=getOLStyles(link.style);
|
|
|
|
|
+ let linkItem=open?(
|
|
|
|
|
+ <StyledAccordion olStyle={styles} defaultExpanded={true} square={true} key={link.lv} expanded={checkCkey(link.lv)} onChange={handleChange(`${link.lv}`,link.path)}>
|
|
|
|
|
+ <StyledAccordionSummary olStyle={styles}>
|
|
|
|
|
+ <Link olStyle={styles} className={`${checkPath(link) ? 'active' : ''} h4`}>
|
|
|
|
|
+ <SvgIcon className={"icon"} herf={link.icon}/>
|
|
|
|
|
+ {i18n.t(link.title)}
|
|
|
|
|
+ </Link>
|
|
|
|
|
+ <SvgIcon className={"icon-chevron-down"} herf={'icon_Arrow'}/>
|
|
|
|
|
+ </StyledAccordionSummary>
|
|
|
|
|
+ <StyledAccordionDetails olStyle={styles}>
|
|
|
|
|
+ {
|
|
|
|
|
+ pages.map((page,pindex)=>{
|
|
|
|
|
+ let subs=page.subs;
|
|
|
|
|
+ if (subs==null||subs.length==0)return renderRLink(page);
|
|
|
|
|
+ else
|
|
|
{
|
|
{
|
|
|
- pages.map((page,pindex)=>{
|
|
|
|
|
- let subs=page.subs;
|
|
|
|
|
- if (subs==null||subs.length==0)return renderRLink(page);
|
|
|
|
|
- else
|
|
|
|
|
- {
|
|
|
|
|
- return renderLink(page);
|
|
|
|
|
- }
|
|
|
|
|
- })
|
|
|
|
|
|
|
+ return renderLink(page);
|
|
|
}
|
|
}
|
|
|
- </StyledAccordionDetails>
|
|
|
|
|
- ):(<></>)
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ </StyledAccordionDetails>
|
|
|
</StyledAccordion>
|
|
</StyledAccordion>
|
|
|
- );
|
|
|
|
|
|
|
+ ):renderIconLink(link,styles);
|
|
|
return linkItem
|
|
return linkItem
|
|
|
}
|
|
}
|
|
|
- const renderLinks=()=>{
|
|
|
|
|
|
|
|
|
|
- return (
|
|
|
|
|
- <nav className="d-flex flex-column g-4 sidebar-nav-block">
|
|
|
|
|
- {
|
|
|
|
|
- LINKS.map((link, index) => (
|
|
|
|
|
- renderLink(link,index)
|
|
|
|
|
- ))
|
|
|
|
|
- }
|
|
|
|
|
- </nav>
|
|
|
|
|
- )
|
|
|
|
|
- }
|
|
|
|
|
const renderRLink=(link)=>{
|
|
const renderRLink=(link)=>{
|
|
|
let isActive=checkPath(link);
|
|
let isActive=checkPath(link);
|
|
|
- let ispop=link.type===ROUTE_TYPE_POP;
|
|
|
|
|
|
|
+ let ispop=link.type===ROUTE_TYPE_POP||link.type===ROUTE_TYPE_POP_OR_FULL;
|
|
|
let clname=`${isActive?'active':''} h4`;
|
|
let clname=`${isActive?'active':''} h4`;
|
|
|
let linktxt=(
|
|
let linktxt=(
|
|
|
<>
|
|
<>
|
|
|
- <svg className={"icon"}>
|
|
|
|
|
- <use xlinkHref={`${symbol}#${link.icon}`} />
|
|
|
|
|
- </svg>
|
|
|
|
|
- {open?i18n.t(`${link.title}`):''}
|
|
|
|
|
|
|
+ <SvgIcon className={"icon"} herf={link.icon}/>
|
|
|
|
|
+ {i18n.t(`${link.title}`)}
|
|
|
</>
|
|
</>
|
|
|
)
|
|
)
|
|
|
return ispop?(<a className={clname} href={link.path}>{linktxt}</a>):(<NavLink className={clname} to={link.path}>{linktxt}</NavLink>)
|
|
return ispop?(<a className={clname} href={link.path}>{linktxt}</a>):(<NavLink className={clname} to={link.path}>{linktxt}</NavLink>)
|
|
|
}
|
|
}
|
|
|
const renderSingleLink=(link)=>{
|
|
const renderSingleLink=(link)=>{
|
|
|
- return (
|
|
|
|
|
- <MTooltip key={link.path} disableHoverListener={open} title={i18n.t(`${link.title}`)} arrow placement="right">
|
|
|
|
|
- <SingleLink open={open}>
|
|
|
|
|
- {
|
|
|
|
|
- renderRLink(link)
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- </SingleLink>
|
|
|
|
|
- </MTooltip>
|
|
|
|
|
- )
|
|
|
|
|
|
|
+ let styles=getOLStyles(link.style);
|
|
|
|
|
+ return open?(
|
|
|
|
|
+ <SingleLink olStyle={styles}>
|
|
|
|
|
+ {
|
|
|
|
|
+ renderRLink(link)
|
|
|
|
|
+ }
|
|
|
|
|
+ </SingleLink>
|
|
|
|
|
+ ):renderIconLink(link,styles)
|
|
|
}
|
|
}
|
|
|
const renderLinkNav=(link)=>{
|
|
const renderLinkNav=(link)=>{
|
|
|
let linkItem=(<></>);
|
|
let linkItem=(<></>);
|
|
|
let subs=link.subs;
|
|
let subs=link.subs;
|
|
|
let len=subs.length;
|
|
let len=subs.length;
|
|
|
- if (len==0&&link.plv==""){
|
|
|
|
|
|
|
+ if (len===0&&link.plv===""){
|
|
|
linkItem=renderSingleLink(link);
|
|
linkItem=renderSingleLink(link);
|
|
|
}
|
|
}
|
|
|
else
|
|
else
|
|
@@ -277,15 +284,24 @@ const Sidebar = () => {
|
|
|
return linkItem;
|
|
return linkItem;
|
|
|
}
|
|
}
|
|
|
const renderBlock=(block)=>{
|
|
const renderBlock=(block)=>{
|
|
|
|
|
+ if (block==null)return (<></>);
|
|
|
|
|
+ let first=block[0];
|
|
|
|
|
+ if (first==null)return (<></>);
|
|
|
|
|
+ let blockID=first.block;
|
|
|
|
|
+ let column=1;
|
|
|
|
|
+ if (blocksColumn!=null){
|
|
|
|
|
+ let blockC=blocksColumn[blockID];
|
|
|
|
|
+ if (blockC!=null)column=blockC.column;
|
|
|
|
|
+ }
|
|
|
return (
|
|
return (
|
|
|
<>
|
|
<>
|
|
|
- <nav className="d-flex flex-column g-4 sidebar-nav-block">
|
|
|
|
|
|
|
+ <StyledBlock open={open} column={column}>
|
|
|
{
|
|
{
|
|
|
block.map((link, index) => {
|
|
block.map((link, index) => {
|
|
|
return renderLinkNav(link)
|
|
return renderLinkNav(link)
|
|
|
})
|
|
})
|
|
|
}
|
|
}
|
|
|
- </nav>
|
|
|
|
|
|
|
+ </StyledBlock>
|
|
|
{renderLine()}
|
|
{renderLine()}
|
|
|
</>
|
|
</>
|
|
|
)
|
|
)
|
|
@@ -302,23 +318,26 @@ const Sidebar = () => {
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
const renderBonus=()=>{
|
|
const renderBonus=()=>{
|
|
|
|
|
+ let styles=getOLStyles(0);
|
|
|
|
|
+ let herf="/bonus";
|
|
|
|
|
+ let link={type:0,title:'links.bonus',icon:'icon_Gift',path:herf}
|
|
|
return (
|
|
return (
|
|
|
- <div className="sidebar-nav-block">
|
|
|
|
|
|
|
+ <StyledBlock open={open}>
|
|
|
<StyledBonus className="d-flex flex-column g-6" open={open}>
|
|
<StyledBonus className="d-flex flex-column g-6" open={open}>
|
|
|
- <MTooltip disableHoverListener={open} title={i18n.t("links.bonus")} arrow placement="right">
|
|
|
|
|
- <SingleLink open={open}>
|
|
|
|
|
- <NavLink className={`${pathname === `/bonus` ? 'active' : ''} h4`} to={'/bonus'}>
|
|
|
|
|
- <svg className={"icon"}>
|
|
|
|
|
- <use xlinkHref={`${symbol}#icon_Gift`} />
|
|
|
|
|
- </svg>
|
|
|
|
|
- {open?i18n.t("links.bonus"):''}
|
|
|
|
|
- </NavLink>
|
|
|
|
|
- </SingleLink>
|
|
|
|
|
- </MTooltip>
|
|
|
|
|
|
|
+ {
|
|
|
|
|
+ open?(
|
|
|
|
|
+ <SingleLink olStyle={styles}>
|
|
|
|
|
+ <NavLink className={`${pathname === herf ? 'active' : ''} h4`} to={herf}>
|
|
|
|
|
+ <SvgIcon className={"icon"} herf={"icon_Gift"}/>
|
|
|
|
|
+ {i18n.t("links.bonus")}
|
|
|
|
|
+ </NavLink>
|
|
|
|
|
+ </SingleLink>
|
|
|
|
|
+ ):renderIconLink(link,styles)
|
|
|
|
|
+ }
|
|
|
<StyledAct open={open} enter={isActHovered} onMouseEnter={handleActEnter} onMouseLeave={handleActLeave}>
|
|
<StyledAct open={open} enter={isActHovered} onMouseEnter={handleActEnter} onMouseLeave={handleActLeave}>
|
|
|
<div className="bonus-item li-quests">
|
|
<div className="bonus-item li-quests">
|
|
|
<button className="bonus-item-btn">
|
|
<button className="bonus-item-btn">
|
|
|
- <img className="img-bg" src={questsimg} alt={"quests"}></img>
|
|
|
|
|
|
|
+ <img className="img-bg" src={questsimg} alt={"quests"}/>
|
|
|
{open?i18n.t("links.quest"):""}
|
|
{open?i18n.t("links.quest"):""}
|
|
|
</button>
|
|
</button>
|
|
|
</div>
|
|
</div>
|
|
@@ -340,21 +359,19 @@ const Sidebar = () => {
|
|
|
</div>
|
|
</div>
|
|
|
</StyledAct>
|
|
</StyledAct>
|
|
|
</StyledBonus>
|
|
</StyledBonus>
|
|
|
- </div>
|
|
|
|
|
|
|
+ </StyledBlock>
|
|
|
);
|
|
);
|
|
|
}
|
|
}
|
|
|
const renderSuport=()=>{
|
|
const renderSuport=()=>{
|
|
|
return (
|
|
return (
|
|
|
- <div className="sidebar-nav-block">
|
|
|
|
|
|
|
+ <StyledBlock open={open}>
|
|
|
<MTooltip disableHoverListener={open} title={i18n.t("links.live_support")} arrow placement="right">
|
|
<MTooltip disableHoverListener={open} title={i18n.t("links.live_support")} arrow placement="right">
|
|
|
<StyledButton open={open} className="h4" fill={"#3bc117"}>
|
|
<StyledButton open={open} className="h4" fill={"#3bc117"}>
|
|
|
- <svg className={"icon"}>
|
|
|
|
|
- <use xlinkHref={`${symbol}#icon_Support`} />
|
|
|
|
|
- </svg>
|
|
|
|
|
|
|
+ <SvgIcon className={"icon"} herf={"icon_Support"}/>
|
|
|
{open?i18n.t("links.live_support"):""}
|
|
{open?i18n.t("links.live_support"):""}
|
|
|
</StyledButton>
|
|
</StyledButton>
|
|
|
</MTooltip>
|
|
</MTooltip>
|
|
|
- </div>
|
|
|
|
|
|
|
+ </StyledBlock>
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
const handleTheme = (event, value) => {
|
|
const handleTheme = (event, value) => {
|
|
@@ -368,42 +385,41 @@ const Sidebar = () => {
|
|
|
const renderThemeTabs=()=>{
|
|
const renderThemeTabs=()=>{
|
|
|
if (open){
|
|
if (open){
|
|
|
return (
|
|
return (
|
|
|
- <div className="sidebar-nav-block" >
|
|
|
|
|
|
|
+ <StyledBlock open={open} >
|
|
|
<StyledThemeTabs sx={{
|
|
<StyledThemeTabs sx={{
|
|
|
marginTop:'16px',
|
|
marginTop:'16px',
|
|
|
}} className={theme} exclusive value={theme} onChange={handleTheme}>
|
|
}} className={theme} exclusive value={theme} onChange={handleTheme}>
|
|
|
- <div className="theme-bg"></div>
|
|
|
|
|
|
|
+ <div className="theme-bg"/>
|
|
|
<StyledThemeTab value={"dark"}>
|
|
<StyledThemeTab value={"dark"}>
|
|
|
- <svg className={"icon"}>
|
|
|
|
|
- <use xlinkHref={`${symbol}#icon_Dark`} />
|
|
|
|
|
- </svg>
|
|
|
|
|
|
|
+ <SvgIcon className={"icon"} herf={"icon_Dark"}/>
|
|
|
{i18n.t("theme.dark")}
|
|
{i18n.t("theme.dark")}
|
|
|
</StyledThemeTab>
|
|
</StyledThemeTab>
|
|
|
<StyledThemeTab value={"light"}>
|
|
<StyledThemeTab value={"light"}>
|
|
|
- <svg className={"icon"}>
|
|
|
|
|
- <use xlinkHref={`${symbol}#icon_Light`} />
|
|
|
|
|
- </svg>
|
|
|
|
|
|
|
+ <SvgIcon className={"icon"} herf={"icon_Light"}/>
|
|
|
{i18n.t("theme.light")}
|
|
{i18n.t("theme.light")}
|
|
|
</StyledThemeTab>
|
|
</StyledThemeTab>
|
|
|
</StyledThemeTabs>
|
|
</StyledThemeTabs>
|
|
|
- </div>
|
|
|
|
|
|
|
+ </StyledBlock>
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
else return(<></>);
|
|
else return(<></>);
|
|
|
}
|
|
}
|
|
|
const renderLine=(key="1")=>{
|
|
const renderLine=(key="1")=>{
|
|
|
- if (open)return(<></>);
|
|
|
|
|
- else
|
|
|
|
|
- {
|
|
|
|
|
- return (
|
|
|
|
|
- <div className="fold-line"></div>
|
|
|
|
|
- )
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ // if (open)return(<></>);
|
|
|
|
|
+ // else
|
|
|
|
|
+ // {
|
|
|
|
|
+ // return (
|
|
|
|
|
+ // <div className="fold-line"></div>
|
|
|
|
|
+ // )
|
|
|
|
|
+ // }
|
|
|
|
|
+ return (
|
|
|
|
|
+ <div className="fold-line"></div>
|
|
|
|
|
+ )
|
|
|
}
|
|
}
|
|
|
const renderBanner=()=>{
|
|
const renderBanner=()=>{
|
|
|
let refimg=open?imgrefer:imgrefer_f;
|
|
let refimg=open?imgrefer:imgrefer_f;
|
|
|
return (
|
|
return (
|
|
|
- <div className="sidebar-nav-block">
|
|
|
|
|
|
|
+ <StyledBlock open={open}>
|
|
|
<MTooltip disableHoverListener={open} title={i18n.t("refer.title")} arrow placement="right">
|
|
<MTooltip disableHoverListener={open} title={i18n.t("refer.title")} arrow placement="right">
|
|
|
<StyledRefer open={open}>
|
|
<StyledRefer open={open}>
|
|
|
<img alt={"refer"} src={refimg}/>
|
|
<img alt={"refer"} src={refimg}/>
|
|
@@ -417,13 +433,24 @@ const Sidebar = () => {
|
|
|
}
|
|
}
|
|
|
</StyledRefer>
|
|
</StyledRefer>
|
|
|
</MTooltip>
|
|
</MTooltip>
|
|
|
- </div>
|
|
|
|
|
|
|
+ </StyledBlock>
|
|
|
|
|
+ )
|
|
|
|
|
+ }
|
|
|
|
|
+ const renderContent=()=>{
|
|
|
|
|
+ return (
|
|
|
|
|
+ <>
|
|
|
|
|
+ {renderBonus()}
|
|
|
|
|
+ {renderBanner()}
|
|
|
|
|
+ {renderLine()}
|
|
|
|
|
+ {renderLinkBlocks()}
|
|
|
|
|
+ {renderSuport()}
|
|
|
|
|
+ {renderThemeTabs()}
|
|
|
|
|
+ </>
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
const renderDesktop=()=>{
|
|
const renderDesktop=()=>{
|
|
|
return (
|
|
return (
|
|
|
<Drawer variant="permanent" open={open} sx={{
|
|
<Drawer variant="permanent" open={open} sx={{
|
|
|
-
|
|
|
|
|
}}>
|
|
}}>
|
|
|
<DrawerHeader>
|
|
<DrawerHeader>
|
|
|
<SidebarTrigger/>
|
|
<SidebarTrigger/>
|
|
@@ -433,25 +460,51 @@ const Sidebar = () => {
|
|
|
</DrawerHeader>
|
|
</DrawerHeader>
|
|
|
<div className={`d-flex flex-column sidebar-nav ${visiblecls}`}>
|
|
<div className={`d-flex flex-column sidebar-nav ${visiblecls}`}>
|
|
|
<div className={`d-flex flex-column g-4 ${visiblecls}`}>
|
|
<div className={`d-flex flex-column g-4 ${visiblecls}`}>
|
|
|
- {renderBonus()}
|
|
|
|
|
- {renderLine()}
|
|
|
|
|
- {renderBanner()}
|
|
|
|
|
- {/*{renderLine()}*/}
|
|
|
|
|
- {/*{renderLinks()}*/}
|
|
|
|
|
- {renderLine()}
|
|
|
|
|
- {renderLinkBlocks()}
|
|
|
|
|
- {renderSuport()}
|
|
|
|
|
- {renderThemeTabs()}
|
|
|
|
|
|
|
+ {
|
|
|
|
|
+ renderContent()
|
|
|
|
|
+ }
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</Drawer>
|
|
</Drawer>
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
|
|
+ const renderMobile=()=>{
|
|
|
|
|
+ return (
|
|
|
|
|
+ <MuiDrawer open={open} sx={{
|
|
|
|
|
+ "& .MuiDrawer-paper": {
|
|
|
|
|
+ width: drawMobieWidth,
|
|
|
|
|
+ boxSizing: "border-box",
|
|
|
|
|
+ overflow:'visible !important',
|
|
|
|
|
+ backgroundColor:'var(--standard);',
|
|
|
|
|
+ boxShadow:'var(--widget-shadow);',
|
|
|
|
|
+ },
|
|
|
|
|
+ "& .MuiModal-backdrop":{
|
|
|
|
|
+ backgroundColor:'rgba(0,0,0,0)',
|
|
|
|
|
+ }
|
|
|
|
|
+ }} variant="temporary" onClose={()=>{
|
|
|
|
|
+ setOpen(false);
|
|
|
|
|
+ }}>
|
|
|
|
|
+ <DrawerHeader>
|
|
|
|
|
+ <SidebarTrigger/>
|
|
|
|
|
+ {
|
|
|
|
|
+ open?<Logo/>:<></>
|
|
|
|
|
+ }
|
|
|
|
|
+ </DrawerHeader>
|
|
|
|
|
+ <div className={`d-flex flex-column sidebar-nav ${visiblecls}`}>
|
|
|
|
|
+ <div className={`d-flex flex-column g-4 ${visiblecls}`}>
|
|
|
|
|
+ {
|
|
|
|
|
+ renderContent()
|
|
|
|
|
+ }
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </MuiDrawer>
|
|
|
|
|
+ )
|
|
|
|
|
+ }
|
|
|
const {isMobile} = useThemeProvider();
|
|
const {isMobile} = useThemeProvider();
|
|
|
return (
|
|
return (
|
|
|
<>
|
|
<>
|
|
|
{
|
|
{
|
|
|
- isMobile()?(<></>):renderDesktop()
|
|
|
|
|
|
|
+ isMobile()?(renderMobile()):renderDesktop()
|
|
|
}
|
|
}
|
|
|
</>
|
|
</>
|
|
|
)
|
|
)
|