Compare commits

..

1 Commits

Author SHA1 Message Date
myf 122c972815 all 2022-05-05 11:08:34 +08:00
37 changed files with 288 additions and 6656 deletions

View File

@ -1,9 +0,0 @@
import React from "react";
import { ConfigProviderProps } from "./types";
import { ConfigContext } from "./context";
const ConfigProvider: React.FC<ConfigProviderProps> = ({ children, t = (v) => v }) => {
return <ConfigContext.Provider value={{ t }}>{children}</ConfigContext.Provider>;
};
export default ConfigProvider;

View File

@ -1,8 +0,0 @@
import React from "react";
import { ConfigProviderProps } from "./types";
export const ConfigContext = React.createContext<ConfigProviderProps>({
t: (val) => val,
});
export default ConfigContext;

View File

@ -1,2 +0,0 @@
export { default as ConfigProvider } from "./ConfigProvider";
export type { ConfigProviderProps } from "./types";

View File

@ -1,9 +0,0 @@
import { ReactText } from "react";
type ContextData = {
[key: string]: ReactText;
};
export interface ConfigProviderProps {
t: (key: string, data?: ContextData) => string;
}

File diff suppressed because one or more lines are too long

View File

@ -5,10 +5,7 @@ import { SvgProps } from "../types";
const Icon: React.FC<SvgProps> = (props) => {
return (
<Svg viewBox="0 0 24 24" {...props}>
<path
fill="#1FC7D4"
d="M11.99 2C6.47 2 2 6.48 2 12C2 17.52 6.47 22 11.99 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 11.99 2ZM18.92 8H15.97C15.65 6.75 15.19 5.55 14.59 4.44C16.43 5.07 17.96 6.35 18.92 8ZM12 4.04C12.83 5.24 13.48 6.57 13.91 8H10.09C10.52 6.57 11.17 5.24 12 4.04ZM4.26 14C4.1 13.36 4 12.69 4 12C4 11.31 4.1 10.64 4.26 10H7.64C7.56 10.66 7.5 11.32 7.5 12C7.5 12.68 7.56 13.34 7.64 14H4.26ZM5.08 16H8.03C8.35 17.25 8.81 18.45 9.41 19.56C7.57 18.93 6.04 17.66 5.08 16ZM8.03 8H5.08C6.04 6.34 7.57 5.07 9.41 4.44C8.81 5.55 8.35 6.75 8.03 8ZM12 19.96C11.17 18.76 10.52 17.43 10.09 16H13.91C13.48 17.43 12.83 18.76 12 19.96ZM14.34 14H9.66C9.57 13.34 9.5 12.68 9.5 12C9.5 11.32 9.57 10.65 9.66 10H14.34C14.43 10.65 14.5 11.32 14.5 12C14.5 12.68 14.43 13.34 14.34 14ZM14.59 19.56C15.19 18.45 15.65 17.25 15.97 16H18.92C17.96 17.65 16.43 18.93 14.59 19.56ZM16.36 14C16.44 13.34 16.5 12.68 16.5 12C16.5 11.32 16.44 10.66 16.36 10H19.74C19.9 10.64 20 11.31 20 12C20 12.69 19.9 13.36 19.74 14H16.36Z"
/>
<path d="M11.99 2C6.47 2 2 6.48 2 12C2 17.52 6.47 22 11.99 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 11.99 2ZM18.92 8H15.97C15.65 6.75 15.19 5.55 14.59 4.44C16.43 5.07 17.96 6.35 18.92 8ZM12 4.04C12.83 5.24 13.48 6.57 13.91 8H10.09C10.52 6.57 11.17 5.24 12 4.04ZM4.26 14C4.1 13.36 4 12.69 4 12C4 11.31 4.1 10.64 4.26 10H7.64C7.56 10.66 7.5 11.32 7.5 12C7.5 12.68 7.56 13.34 7.64 14H4.26ZM5.08 16H8.03C8.35 17.25 8.81 18.45 9.41 19.56C7.57 18.93 6.04 17.66 5.08 16ZM8.03 8H5.08C6.04 6.34 7.57 5.07 9.41 4.44C8.81 5.55 8.35 6.75 8.03 8ZM12 19.96C11.17 18.76 10.52 17.43 10.09 16H13.91C13.48 17.43 12.83 18.76 12 19.96ZM14.34 14H9.66C9.57 13.34 9.5 12.68 9.5 12C9.5 11.32 9.57 10.65 9.66 10H14.34C14.43 10.65 14.5 11.32 14.5 12C14.5 12.68 14.43 13.34 14.34 14ZM14.59 19.56C15.19 18.45 15.65 17.25 15.97 16H18.92C17.96 17.65 16.43 18.93 14.59 19.56ZM16.36 14C16.44 13.34 16.5 12.68 16.5 12C16.5 11.32 16.44 10.66 16.36 10H19.74C19.9 10.64 20 11.31 20 12C20 12.69 19.9 13.36 19.74 14H16.36Z" />
</Svg>
);
};

View File

@ -1,13 +0,0 @@
import React from "react";
import Svg from "../Svg";
import { SvgProps } from "../types";
const Icon: React.FC<SvgProps> = (props) => {
return (
<Svg viewBox="0 0 24 24" {...props}>
<path d="M22,11A11,11,0,1,0,11,22,11,11,0,0,0,22,11ZM17,9a2,2,0,1,1-2,2A2,2,0,0,1,17,9ZM5,13a2,2,0,1,1,2-2A2,2,0,0,1,5,13Zm4-2a2,2,0,1,1,2,2A2,2,0,0,1,9,11Z" />
</Svg>
);
};
export default Icon;

View File

@ -29,8 +29,6 @@ export { default as CopyIcon } from "./Icons/Copy";
export { default as CrownIcon } from "./Icons/Crown";
export { default as ErrorIcon } from "./Icons/Error";
export { default as HelpIcon } from "./Icons/Help";
export { default as More } from "./Icons/More";
export { default as HighIcon } from "./Icons/HighIcon";
export { default as HistoryIcon } from "./Icons/History";
export { default as InfoIcon } from "./Icons/Info";
export { default as LanguageIcon } from "./Icons/Language";

View File

@ -30,7 +30,6 @@ export * from "./components/TabMenu";
export * from "./components/Tag";
export * from "./components/Text";
export * from "./components/Toggle";
export * from "./components/ConfigProvider";
// Hooks
export * from "./hooks";

View File

@ -9,7 +9,6 @@ import Panel from "./components/Panel";
import UserBlock from "./components/UserBlock";
import { NavProps } from "./types";
import Avatar from "./components/Avatar";
import CakePrice from "./components/CakePrice";
import { MENU_HEIGHT, SIDEBAR_WIDTH_REDUCED, SIDEBAR_WIDTH_FULL } from "./config";
const Wrapper = styled.div`
@ -75,9 +74,6 @@ const Menu: React.FC<NavProps> = ({
links,
profile,
children,
inviteUrl,
socialLink,
documentAddress,
}) => {
const { isXl } = useMatchBreakpoints();
const isMobile = isXl === false;
@ -126,15 +122,12 @@ const Menu: React.FC<NavProps> = ({
isDark={isDark}
href={homeLink?.href ?? "/"}
/>
<Flex>
<CakePrice cakePriceUsd={cakePriceUsd} />
{!!login && !!logout && (
<Flex>
<UserBlock account={account} inviteUrl={inviteUrl} login={login} logout={logout} />
{profile && <Avatar profile={profile} />}
</Flex>
)}
</Flex>
{!!login && !!logout && (
<Flex>
<UserBlock account={account} login={login} logout={logout} />
{profile && <Avatar profile={profile} />}
</Flex>
)}
</StyledNav>
<BodyWrapper>
<Panel
@ -149,8 +142,6 @@ const Menu: React.FC<NavProps> = ({
cakePriceUsd={cakePriceUsd}
pushNav={setIsPushed}
links={links}
socialLink={socialLink}
documentAddress={documentAddress}
/>
<Inner isPushed={isPushed} showMenu={showMenu}>
{children}

View File

@ -1,7 +1,8 @@
import React from "react";
import styled from "styled-components";
import { PancakeRoundIcon } from "../../../components/Svg";
import Text from "../../../components/Text/Text";
import HighIcon from "../../../components/Svg/Icons/HighIcon";
import Skeleton from "../../../components/Skeleton/Skeleton";
interface Props {
cakePriceUsd?: number;
@ -10,7 +11,6 @@ interface Props {
const PriceLink = styled.a`
display: flex;
align-items: center;
margin-right: 10px;
svg {
transition: transform 0.3s;
}
@ -22,16 +22,16 @@ const PriceLink = styled.a`
`;
const CakePrice: React.FC<Props> = ({ cakePriceUsd }) => {
return (
return cakePriceUsd ? (
<PriceLink
href="https://exchange.pancakeswap.finance/#/swap?outputCurrency=0x0e09fabb73bd3ade0a17ecc321fd13a19e81ce82"
target="_blank"
>
<HighIcon width="24px" mr="8px" />
<Text color="textSubtle" bold>
{cakePriceUsd ? `$${cakePriceUsd.toFixed(3)}` : "$0"}
</Text>
<PancakeRoundIcon width="24px" mr="8px" />
<Text color="textSubtle" bold>{`$${cakePriceUsd.toFixed(3)}`}</Text>
</PriceLink>
) : (
<Skeleton width={80} height={24} />
);
};

View File

@ -1,36 +0,0 @@
import React from "react";
import styled from "styled-components";
import { SocialLink } from "../types";
import Dropdown from "../../../components/Dropdown/Dropdown";
import ExternalLink from "./ExternalLink";
interface Props {
list: SocialLink[];
}
const Image = styled.img`
width: 30px;
height: 30px;
border-radius: 50%;
cursor: pointer;
`;
const PanelFooter: React.FC<Props> = ({ list }) => {
return (
<>
{list?.map((item) => {
return item.list && item.list.length > 1 ? (
<Dropdown position="top-right" key={item.key} target={<Image src={item.icon} title={item.name} />}>
{item.list?.map((childItem) => {
return <ExternalLink key={childItem.link} link={childItem.link} name={childItem.name} />;
})}
</Dropdown>
) : (
item.list && <ExternalLink key={item.key} link={item.list[0].link} icon={item.icon} name={item.name} />
);
})}
</>
);
};
export default PanelFooter;

View File

@ -1,35 +0,0 @@
import React from "react";
import styled from "styled-components";
import Flex from "../../../components/Box/Flex";
import Text from "../../../components/Text/Text";
import Dropdown from "../../../components/Dropdown/Dropdown";
import Link from "../../../components/Link/Link";
import MoreIcon from "../../../components/Svg/Icons/More";
interface ExternalLinkProps {
link?: string;
name?: string;
icon?: string;
}
const Image = styled.img`
width: 30px;
height: 30px;
border-radius: 50%;
cursor: pointer;
`;
const LinkText = styled(Text)`
word-break: break-all;
`;
const ExternalLink: React.FC<ExternalLinkProps> = ({ link = "", name = "", icon = "" }) => {
return (
<>
<Link external href={link} color="textSubtle">
{icon ? <Image src={icon} title={name} /> : <LinkText>{name}</LinkText>}
</Link>
</>
);
};
export default ExternalLink;

View File

@ -1,22 +0,0 @@
import React from "react";
import Text from "../../../components/Text/Text";
import { Modal } from "../../Modal";
import { CopyToClipboard } from "../../WalletModal";
interface Props {
inviteUrl: string;
title: string;
onDismiss?: () => void;
}
const InviteModal: React.FC<Props> = ({ inviteUrl, title, onDismiss }) => (
<Modal title={title} onDismiss={onDismiss}>
<CopyToClipboard toCopy={inviteUrl}>
<Text fontSize="20px" bold style={{ whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }}>
{inviteUrl}
</Text>
</CopyToClipboard>
</Modal>
);
export default InviteModal;

View File

@ -1,5 +1,4 @@
import React from "react";
import styled from "styled-components";
import Text from "../../../components/Text/Text";
import Dropdown from "../../../components/Dropdown/Dropdown";
import Button from "../../../components/Button/Button";
@ -13,17 +12,13 @@ interface Props {
setLang: (lang: Language) => void;
}
const ButtonStyle = styled(Button)`
padding-left: 0;
`;
const LangSelector: React.FC<Props> = ({ currentLang, langs, setLang }) => (
<Dropdown
position="top-right"
target={
<ButtonStyle variant="text" startIcon={<LanguageIcon color="textSubtle" width="24px" />}>
<Text color="#1FC7D4">{currentLang?.toUpperCase()}</Text>
</ButtonStyle>
<Button variant="text" startIcon={<LanguageIcon color="textSubtle" width="24px" />}>
<Text color="textSubtle">{currentLang?.toUpperCase()}</Text>
</Button>
}
>
{langs.map((lang) => (
@ -32,7 +27,7 @@ const LangSelector: React.FC<Props> = ({ currentLang, langs, setLang }) => (
fullWidth
onClick={() => setLang(lang)}
// Safari fix
style={{ minHeight: "32px", height: "auto", color: "#1FC7D4" }}
style={{ minHeight: "32px", height: "auto" }}
>
{lang.language}
</MenuButton>

View File

@ -2,9 +2,7 @@ import React from "react";
import styled, { keyframes } from "styled-components";
import { Link } from "react-router-dom";
import { LogoIcon } from "../../../components/Svg";
import HighIcon from "../../../components/Svg/Icons/HighIcon";
import Flex from "../../../components/Box/Flex";
import Text from "../../../components/Text/Text";
import { HamburgerIcon, HamburgerCloseIcon, LogoIcon as LogoWithText } from "../icons";
import MenuButton from "./MenuButton";
@ -29,15 +27,6 @@ const StyledLink = styled(Link)`
display: none;
}
}
.mobile-Text {
margin-left: 10px;
color: #000000;
font-size: 18px;
display: none;
${({ theme }) => theme.mediaQueries.md} {
display: block;
}
}
.desktop-icon {
width: 160px;
display: none;
@ -63,10 +52,8 @@ const Logo: React.FC<Props> = ({ isPushed, togglePush, isDark, href }) => {
const isAbsoluteUrl = href.startsWith("http");
const innerLogo = (
<>
{/* <LogoIcon className="mobile-icon" /> */}
{/* <LogoWithText className="desktop-icon" isDark={isDark} /> */}
<HighIcon width={30} height={30} />
<Text className="mobile-Text">Hi City Swap</Text>
<LogoIcon className="mobile-icon" />
<LogoWithText className="desktop-icon" isDark={isDark} />
</>
);

View File

@ -21,10 +21,8 @@ const rainbowAnimation = keyframes`
`;
const LinkLabel = styled.div<{ isPushed: boolean }>`
/* color: ${({ isPushed, theme }) => (isPushed ? theme.colors.textSubtle : "transparent")}; */
color: #999;
color: ${({ isPushed, theme }) => (isPushed ? theme.colors.textSubtle : "transparent")};
transition: color 0.4s;
padding-left: 5px;
flex-grow: 1;
`;

View File

@ -1,132 +0,0 @@
import React from "react";
import styled from "styled-components";
import { SocialLink } from "../types";
import Flex from "../../../components/Box/Flex";
import Text from "../../../components/Text/Text";
import Link from "../../../components/Link/Link";
import MoreIcon from "../../../components/Svg/Icons/More";
import ChevronRightIcon from "../../../components/Svg/Icons/ChevronRight";
import ExternalLink from "./ExternalLink";
interface Props {
list: SocialLink[];
}
const Image = styled.img`
width: 30px;
height: 30px;
border-radius: 50%;
cursor: pointer;
`;
const ImageDiv = styled.div`
position: relative;
cursor: pointer;
& > .content {
display: none;
background-color: #fff;
box-sizing: border-box;
border-radius: 10px;
position: absolute;
width: 140px;
right: 0px;
left: 0;
z-index: 99999;
bottom: 0;
margin: 20px auto;
box-shadow: 0px 2px 12px -8px rgb(25 19 38 / 10%), 0px 1px 1px rgb(25 19 38 / 5%);
}
:hover {
& > .content {
display: block;
}
}
`;
const ImageItem = styled.div`
/* padding: 5px 0; */
position: relative;
.itemDiv {
display: none;
background-color: #fff;
box-sizing: border-box;
padding: 0 10px;
border-radius: 10px;
position: absolute;
width: 100px;
right: 0px;
left: 130px;
z-index: 99999;
bottom: 0;
margin: 20px auto;
box-shadow: 0px 2px 12px -8px rgb(25 19 38 / 10%), 0px 1px 1px rgb(25 19 38 / 5%);
}
:hover {
& > .itemDiv {
display: block;
}
}
& > .content-item {
padding: 5px 10px;
}
& > .content-item:hover {
background-color: rgba(112, 112, 112, 0.2);
}
`;
const SingleLink = styled(Link)`
padding: 5px 10px;
width: 100%;
:hover {
background-color: rgba(112, 112, 112, 0.2);
}
`;
const MoreIconSvg = styled(MoreIcon)`
width: 30px;
height: 30px;
`;
const TextDiv = styled(Text)`
width: 70px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
`;
const MoreDropDown: React.FC<Props> = ({ list }) => {
return (
<>
<ImageDiv>
<div>
<MoreIconSvg />
</div>
<div className="content">
{list?.map((item) => {
return item.list && item.list.length > 1 ? (
<ImageItem key={item.key}>
<Flex className="content-item" alignItems="center" justifyContent="space-between">
<>
<Image src={item.icon} title={item.name} />
<TextDiv marginLeft="5px">{item.name}</TextDiv>
</>
<ChevronRightIcon />
</Flex>
<div className="itemDiv">
{item.list?.map((childItem) => {
return <ExternalLink key={childItem.link} link={childItem.link} name={childItem.name} />;
})}
</div>
</ImageItem>
) : (
item.list && item.list.length > 0 && (
<SingleLink key={item.key} external href={item.list[0].link} color="textSubtle">
<Image src={item.icon} title={item.name} />
<TextDiv marginLeft="5px">{item.name}</TextDiv>
</SingleLink>
)
);
})}
</div>
</ImageDiv>
</>
);
};
export default MoreDropDown;

View File

@ -8,7 +8,6 @@ import { PanelProps, PushedProps } from "../types";
interface Props extends PanelProps, PushedProps {
showMenu: boolean;
isMobile: boolean;
documentAddress?: string;
}
const StyledPanel = styled.div<{ isPushed: boolean; showMenu: boolean }>`

View File

@ -1,20 +1,15 @@
import React, { useContext } from "react";
import React from "react";
import styled from "styled-components";
import { CogIcon } from "../../../components/Svg";
import IconButton from "../../../components/Button/IconButton";
import Link from "../../../components/Link/Link";
import { MENU_ENTRY_HEIGHT } from "../config";
import { PanelProps, PushedProps } from "../types";
// import CakePrice from "./CakePrice";
import CakePrice from "./CakePrice";
import ThemeSwitcher from "./ThemeSwitcher";
import SocialLinks from "./SocialLinks";
import LangSelector from "./LangSelector";
import MoreDropDown from "./MoreDropDown";
import DefaultDropDown from "./DefaultDropDown";
import { ConfigContext } from "../../../components/ConfigProvider/context";
interface Props extends PanelProps, PushedProps {
documentAddress?: string;
}
interface Props extends PanelProps, PushedProps {}
const Container = styled.div`
flex: none;
@ -48,12 +43,7 @@ const PanelFooter: React.FC<Props> = ({
currentLang,
langs,
setLang,
socialLink,
documentAddress,
}) => {
const { t } = useContext(ConfigContext);
const defaultList = socialLink?.slice(0, 3);
const moreList = socialLink?.slice(3);
if (!isPushed) {
return (
<Container>
@ -63,21 +53,16 @@ const PanelFooter: React.FC<Props> = ({
</Container>
);
}
return (
<Container>
<SocialEntry>
{/* <CakePrice cakePriceUsd={cakePriceUsd} /> */}
<>
{defaultList && <DefaultDropDown list={defaultList} />}
{moreList && moreList.length > 0 && <MoreDropDown list={moreList} />}
</>
<CakePrice cakePriceUsd={cakePriceUsd} />
<SocialLinks />
</SocialEntry>
<SettingsEntry>
{/* <ThemeSwitcher isDark={isDark} toggleTheme={toggleTheme} /> */}
<ThemeSwitcher isDark={isDark} toggleTheme={toggleTheme} />
<LangSelector currentLang={currentLang} langs={langs} setLang={setLang} />
<Link href={documentAddress} target="_blank" color="#1FC7D4" style={{ cursor: "pointer" }}>
{t("help center")}
</Link>
</SettingsEntry>
</Container>
);

View File

@ -1,28 +1,37 @@
import React from "react";
import styled from "styled-components";
import { SvgProps } from "../../../components/Svg";
import Flex from "../../../components/Box/Flex";
import Dropdown from "../../../components/Dropdown/Dropdown";
import Link from "../../../components/Link/Link";
import Text from "../../../components/Text/Text";
import * as IconModule from "../icons";
import { socials } from "../config";
import { LinkLabel } from "./MenuEntry";
import { SocialLink } from "../types";
const Icons = IconModule as unknown as { [key: string]: React.FC<SvgProps> };
interface Props {
socialLink?: SocialLink[];
}
const Image = styled.img`
width: 30px;
height: 30px;
border-radius: 50%;
`;
const SocialLinks: React.FC<Props> = ({ socialLink }) => {
return <></>;
};
const SocialLinks: React.FC = () => (
<Flex>
{socials.map((social, index) => {
const Icon = Icons[social.icon];
const iconProps = { width: "24px", color: "textSubtle", style: { cursor: "pointer" } };
const mr = index < socials.length - 1 ? "24px" : 0;
if (social.items) {
return (
<Dropdown key={social.label} position="top" target={<Icon {...iconProps} mr={mr} />}>
{social.items.map((item) => (
<Link external key={item.label} href={item.href} aria-label={item.label} color="textSubtle">
{item.label}
</Link>
))}
</Dropdown>
);
}
return (
<Link external key={social.label} href={social.href} aria-label={social.label} mr={mr}>
<Icon {...iconProps} />
</Link>
);
})}
</Flex>
);
export default React.memo(SocialLinks, () => true);

View File

@ -1,34 +1,19 @@
import React, { useContext } from "react";
import React from "react";
import Button from "../../../components/Button/Button";
import { useModal } from "../../Modal";
import InviteModal from "./InviteModal";
import { useWalletModal } from "../../WalletModal";
import { Login } from "../../WalletModal/types";
import { ConfigContext } from "../../../components/ConfigProvider/context";
interface Props {
account?: string;
inviteUrl: string;
login: Login;
logout: () => void;
}
const UserBlock: React.FC<Props> = ({ account, login, logout, inviteUrl }) => {
const { t } = useContext(ConfigContext);
const UserBlock: React.FC<Props> = ({ account, login, logout }) => {
const { onPresentConnectModal, onPresentAccountModal } = useWalletModal(login, logout, account);
const [onPresentInviteModal] = useModal(<InviteModal title={t("Invite")} inviteUrl={inviteUrl} />);
const accountEllipsis = account ? `${account.substring(0, 4)}...${account.substring(account.length - 4)}` : null;
return (
<div>
<Button
scale="sm"
mr={10}
onClick={() => {
onPresentInviteModal();
}}
>
{t("Invite")}
</Button>
{account ? (
<Button
scale="sm"
@ -46,7 +31,7 @@ const UserBlock: React.FC<Props> = ({ account, login, logout, inviteUrl }) => {
onPresentConnectModal();
}}
>
{t("Connect")}
Connect
</Button>
)}
</div>

View File

@ -1,18 +0,0 @@
import React from "react";
import Svg from "../../../components/Svg/Svg";
import { SvgProps } from "../../../components/Svg/types";
const Icon: React.FC<SvgProps> = (props) => {
return (
<Svg viewBox="0 0 24 24" {...props}>
<path
id="公告"
fill="#999"
d="M17.4,0H2.6A2.568,2.568,0,0,0,0,2.52V13.613a2.567,2.567,0,0,0,2.6,2.521H4.831L4.364,17.7a.215.215,0,0,0,.052.252c.052.05.1.05.208.05h.1l4.26-1.866H17.4a2.568,2.568,0,0,0,2.6-2.52V2.52A2.6,2.6,0,0,0,17.4,0ZM5.923,8.42H3.532a.756.756,0,1,1,0-1.512H5.871a.787.787,0,0,1,.779.756.742.742,0,0,1-.727.756Zm5.351,0H8.933a.756.756,0,1,1,0-1.512h2.339a.756.756,0,1,1,0,1.512Zm5.143,0H14.443a.756.756,0,1,1,0-1.512h1.973a.787.787,0,0,1,.78.756.727.727,0,0,1-.223.537A.783.783,0,0,1,16.416,8.42Z"
transform="translate(0)"
/>
</Svg>
);
};
export default Icon;

View File

@ -1,18 +0,0 @@
import React from "react";
import Svg from "../../../components/Svg/Svg";
import { SvgProps } from "../../../components/Svg/types";
const Icon: React.FC<SvgProps> = (props) => {
return (
<Svg viewBox="0 0 24 24" {...props}>
<path
id="市场动态"
fill="#999"
d="M83.094,77.258H76.623v1.871h6.471Zm0-3.757H76.623v1.886h6.471Zm0-4.371H68.98V71H83.094Zm-14.114,10h5.286V73.5H68.98Zm14.6,5.629a1.726,1.726,0,0,0-3.314,0H77.694a1.726,1.726,0,0,0-3.314,0H71.808a1.726,1.726,0,0,0-3.314,0H66.037V66a1.212,1.212,0,0,1,1.171-1.243H84.866A1.212,1.212,0,0,1,86.037,66V84.758H83.58Z"
transform="translate(-66.037 -64.758)"
/>
</Svg>
);
};
export default Icon;

View File

@ -1,18 +0,0 @@
import React from "react";
import Svg from "../../../components/Svg/Svg";
import { SvgProps } from "../../../components/Svg/types";
const Icon: React.FC<SvgProps> = (props) => {
return (
<Svg viewBox="0 0 24 24" {...props}>
<path
id="盒子标签"
fill="#999"
d="M140.5,133.243v7.174a.287.287,0,0,1-.385.261l-2.476-1.015a.739.739,0,0,0-.591,0l-2.476,1.015a.282.282,0,0,1-.385-.261v-7.174h-6.85v14.074a.551.551,0,0,0,.55.549h18.9a.551.551,0,0,0,.55-.549V133.243Zm6.809-.782a.521.521,0,0,0-.11-.233l-3.37-4.156a.578.578,0,0,0-.426-.206H131.34a.565.565,0,0,0-.426.192l-3.453,4.17a.522.522,0,0,0-.11.233Z"
transform="translate(-127.337 -127.866)"
/>
</Svg>
);
};
export default Icon;

View File

@ -1,18 +0,0 @@
import React from "react";
import Svg from "../../../components/Svg/Svg";
import { SvgProps } from "../../../components/Svg/types";
const Icon: React.FC<SvgProps> = (props) => {
return (
<Svg viewBox="0 0 24 24" {...props}>
<path
id="资金账户"
fill="#999"
d="M190.666,238.866h-20v-2.8a1.331,1.331,0,0,1,1.25-1.4h17.5a1.331,1.331,0,0,1,1.25,1.4v2.8Zm0,1.4v11.2a1.331,1.331,0,0,1-1.25,1.4h-17.5a1.331,1.331,0,0,1-1.25-1.4v-11.2h20Zm-16.875,4.9a.7.7,0,0,0,0,1.4h5a.7.7,0,0,0,0-1.4Z"
transform="translate(-170.666 -234.667)"
/>
</Svg>
);
};
export default Icon;

View File

@ -1,18 +0,0 @@
import React from "react";
import Svg from "../../../components/Svg/Svg";
import { SvgProps } from "../../../components/Svg/types";
const Icon: React.FC<SvgProps> = (props) => {
return (
<Svg viewBox="0 0 24 24" {...props}>
<path
id="icons8-jira"
fill="#999"
d="M9.939,0a.476.476,0,0,0-.3.122A5.114,5.114,0,0,0,8.149,3.473,5.111,5.111,0,0,0,9.64,6.826l.4.382.6.575L12.942,10l-2.3,2.212.359.345a5.923,5.923,0,0,1,1.756,3.966,4.8,4.8,0,0,1-.132,1.1l6.978-6.7a1.268,1.268,0,0,0,0-1.845L10.279.122A.477.477,0,0,0,9.939,0ZM7.374,2.372.4,9.074a1.268,1.268,0,0,0,0,1.845l9.32,8.953a.466.466,0,0,0,.64,0,5.111,5.111,0,0,0,1.491-3.351,5.114,5.114,0,0,0-1.491-3.351L7.055,10l2.3-2.212L9,7.439A5.919,5.919,0,0,1,7.243,3.473a4.8,4.8,0,0,1,.131-1.1Z"
transform="translate(0.002 0.001)"
/>
</Svg>
);
};
export default Icon;

View File

@ -5,14 +5,7 @@ import { SvgProps } from "../../../components/Svg/types";
const Icon: React.FC<SvgProps> = (props) => {
return (
<Svg viewBox="0 0 24 24" {...props}>
<path
id="_204首页"
data-name="204首页"
fill="#999"
d="M119.285,143.223l-10.429-7.461a.839.839,0,0,0-.989,0l-10.493,7.461a.426.426,0,0,0,.258.774h2.107v11.611a.431.431,0,0,0,.43.43h5.161a.431.431,0,0,0,.43-.43v-6.451h5.161v6.451a.431.431,0,0,0,.43.43h5.161a.431.431,0,0,0,.43-.43V144h2.107A.425.425,0,0,0,119.285,143.223Z"
transform="translate(-97.191 -135.6)"
/>
{/* <path d="M9.99998 19V14H14V19C14 19.55 14.45 20 15 20H18C18.55 20 19 19.55 19 19V12H20.7C21.16 12 21.38 11.43 21.03 11.13L12.67 3.59997C12.29 3.25997 11.71 3.25997 11.33 3.59997L2.96998 11.13C2.62998 11.43 2.83998 12 3.29998 12H4.99998V19C4.99998 19.55 5.44998 20 5.99998 20H8.99998C9.54998 20 9.99998 19.55 9.99998 19Z" /> */}
<path d="M9.99998 19V14H14V19C14 19.55 14.45 20 15 20H18C18.55 20 19 19.55 19 19V12H20.7C21.16 12 21.38 11.43 21.03 11.13L12.67 3.59997C12.29 3.25997 11.71 3.25997 11.33 3.59997L2.96998 11.13C2.62998 11.43 2.83998 12 3.29998 12H4.99998V19C4.99998 19.55 5.44998 20 5.99998 20H8.99998C9.54998 20 9.99998 19.55 9.99998 19Z" />
</Svg>
);
};

View File

@ -1,28 +0,0 @@
import React from "react";
import Svg from "../../../components/Svg/Svg";
import { SvgProps } from "../../../components/Svg/types";
const Icon: React.FC<SvgProps> = (props) => {
return (
<Svg viewBox="0 0 24 24" {...props}>
<g id="兑换" transform="translate(-156.6 -227.17)">
<path
id="路径_1321"
data-name="路径 1321"
fill="#999899"
d="M175.271,245.308H157.929a1.419,1.419,0,0,1-1.329-1.5V228.665a1.419,1.419,0,0,1,1.329-1.5h17.342a1.419,1.419,0,0,1,1.329,1.5v15.147A1.42,1.42,0,0,1,175.271,245.308Z"
transform="translate(0 0)"
/>
<path
id="路径_1322"
data-name="路径 1322"
fill="#fcfcfc"
d="M272.043,332.482H260.73a.8.8,0,0,1,0-1.566h9.484l-1.88-1.848a.89.89,0,0,1-.089-1.1.588.588,0,0,1,.925-.106l3.291,3.235a.882.882,0,0,1,.2.869A.674.674,0,0,1,272.043,332.482Zm-8.022,7.041a.593.593,0,0,1-.418-.179l-3.291-3.235a.683.683,0,0,1-.629-.556.864.864,0,0,1,.265-.878.575.575,0,0,1,.782.048h11.313a.8.8,0,0,1,0,1.566h-9.484l1.88,1.848a.889.889,0,0,1,.089,1.1A.62.62,0,0,1,264.02,339.523Z"
transform="translate(-99.826 -97.363)"
/>
</g>
</Svg>
);
};
export default Icon;

View File

@ -1,19 +0,0 @@
import React from "react";
import Svg from "../../../components/Svg/Svg";
import { SvgProps } from "../../../components/Svg/types";
const Icon: React.FC<SvgProps> = (props) => {
return (
<Svg viewBox="0 0 24 24" {...props}>
<path
id="盒子_画板_1"
data-name="盒子_画板 1"
fill="#999899"
d="M289,418.5h18v10a1,1,0,0,1-1,1H290a1,1,0,0,1-1-1h0Zm6,2v2h6v-2Zm-7-8a1,1,0,0,1,1-1h18a1,1,0,0,1,1,1h0v4H288Z"
transform="translate(-288 -411.5)"
/>
</Svg>
);
};
export default Icon;

View File

@ -1,18 +0,0 @@
import React from "react";
import Svg from "../../../components/Svg/Svg";
import { SvgProps } from "../../../components/Svg/types";
const Icon: React.FC<SvgProps> = (props) => {
return (
<Svg viewBox="0 0 24 24" {...props}>
<path
id="icon_推荐-面"
fill="#999"
d="M157.485,19.458l-4.431,3.231h-.138V4.385A4.608,4.608,0,0,1,157.716,0h8.4a4.608,4.608,0,0,1,4.8,4.385v18.3h-.138l-8.862-6.463-4.431,3.231Zm.869-6.885,3.562-2.261,3.562,2.261-1.262-3.791,3.462-2.4-4.338-.08-1.425-3.745L160.491,6.3l-4.337.08,3.462,2.4-1.263,3.791Zm0,0"
transform="translate(-152.916)"
/>
</Svg>
);
};
export default Icon;

View File

@ -17,11 +17,3 @@ export { default as TelegramIcon } from "./Telegram";
export { default as TicketIcon } from "./Ticket";
export { default as TradeIcon } from "./Trade";
export { default as TwitterIcon } from "./Twitter";
export { default as BlindBox } from "./BlindBox";
export { default as Announcement } from "./Announcement";
export { default as Bazaar } from "./Bazaar";
export { default as Board } from "./Board";
export { default as NFTBox } from "./NFTBox";
export { default as Recommend } from "./Recommend";
export { default as Ido } from "./Ido";
export { default as Compound } from "./Compound";

View File

@ -54,27 +54,11 @@ export interface PanelProps {
langs: Language[];
setLang: (lang: Language) => void;
links: Array<MenuEntry>;
socialLink?: SocialLink[];
}
export interface NavProps extends PanelProps {
account?: string;
inviteUrl: string;
login?: Login;
profile?: Profile;
logout?: () => void;
socialLink?: SocialLink[];
documentAddress?: string;
}
export interface SocialLink {
icon?: string;
name?: string;
key?: string | number;
list?: SocialLinkList[];
}
export interface SocialLinkList {
name?: string;
icon?: string;
link?: string;
}

View File

@ -1,4 +1,4 @@
import React, { useContext } from "react";
import React from "react";
import Button from "../../components/Button/Button";
import Text from "../../components/Text/Text";
import LinkExternal from "../../components/Link/LinkExternal";
@ -6,7 +6,6 @@ import Flex from "../../components/Box/Flex";
import { Modal } from "../Modal";
import CopyToClipboard from "./CopyToClipboard";
import { connectorLocalStorageKey } from "./config";
import { ConfigContext } from "../../components/ConfigProvider/context";
interface Props {
account: string;
@ -14,39 +13,35 @@ interface Props {
onDismiss?: () => void;
}
const AccountModal: React.FC<Props> = ({ account, logout, onDismiss = () => null }) => {
const { t } = useContext(ConfigContext);
return (
<Modal title={t("my wallet")} onDismiss={onDismiss}>
<Text
fontSize="20px"
bold
style={{ whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis", marginBottom: "8px" }}
const AccountModal: React.FC<Props> = ({ account, logout, onDismiss = () => null }) => (
<Modal title="Your wallet" onDismiss={onDismiss}>
<Text
fontSize="20px"
bold
style={{ whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis", marginBottom: "8px" }}
>
{account}
</Text>
<Flex mb="32px">
<LinkExternal small href={`https://bscscan.com/address/${account}`} mr="16px">
View on BscScan
</LinkExternal>
<CopyToClipboard toCopy={account}>Copy Address</CopyToClipboard>
</Flex>
<Flex justifyContent="center">
<Button
scale="sm"
variant="secondary"
onClick={() => {
logout();
window.localStorage.removeItem(connectorLocalStorageKey);
onDismiss();
}}
>
{account}
</Text>
<Flex mb="32px">
<LinkExternal small href={`https://bscscan.com/address/${account}`} mr="16px">
Etherscan
</LinkExternal>
<CopyToClipboard toCopy={account}>{t("Copy the address")}</CopyToClipboard>
</Flex>
<Flex justifyContent="center">
<Button
scale="sm"
variant="secondary"
onClick={() => {
logout();
window.localStorage.removeItem(connectorLocalStorageKey);
onDismiss();
}}
>
{t("Logout")}
</Button>
</Flex>
</Modal>
);
};
Logout
</Button>
</Flex>
</Modal>
);
export default AccountModal;

View File

@ -1,5 +1,4 @@
import React, { useContext } from "react";
import { ConfigContext } from "../../components/ConfigProvider/context";
import React from "react";
import styled from "styled-components";
import { Link } from "../../components/Link";
import { HelpIcon } from "../../components/Svg";
@ -20,25 +19,22 @@ const HelpLink = styled(Link)`
margin-top: 24px;
`;
const ConnectModal: React.FC<Props> = ({ login, onDismiss = () => null }) => {
const { t } = useContext(ConfigContext);
return (
<Modal title={t("Connect the purse")} onDismiss={onDismiss}>
{config.map((entry, index) => (
<WalletCard
key={entry.title}
login={login}
walletConfig={entry}
onDismiss={onDismiss}
mb={index < config.length - 1 ? "8px" : "0"}
/>
))}
<HelpLink href="https://docs.pancakeswap.finance/get-started/connection-guide" external>
<HelpIcon color="primary" mr="6px" />
{t("How to use")}
</HelpLink>
</Modal>
);
};
const ConnectModal: React.FC<Props> = ({ login, onDismiss = () => null }) => (
<Modal title="Connect to a wallet" onDismiss={onDismiss}>
{config.map((entry, index) => (
<WalletCard
key={entry.title}
login={login}
walletConfig={entry}
onDismiss={onDismiss}
mb={index < config.length - 1 ? "8px" : "0"}
/>
))}
<HelpLink href="https://docs.pancakeswap.finance/get-started/connection-guide" external>
<HelpIcon color="primary" mr="6px" />
Learn how to connect
</HelpLink>
</Modal>
);
export default ConnectModal;

View File

@ -1,5 +1,4 @@
export { default as useWalletModal } from "./useWalletModal";
export { connectorLocalStorageKey } from "./config";
export { default as CopyToClipboard } from "./CopyToClipboard";
export { ConnectorNames } from "./types";
export type { Login } from "./types";

314
yarn.lock
View File

@ -3,11 +3,12 @@
"@ampproject/remapping@^2.1.0":
version "2.1.2"
resolved "https://registry.npmmirror.com/@ampproject/remapping/-/remapping-2.1.2.tgz#4edca94973ded9630d20101cd8559cedb8d8bd34"
integrity sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==
version "2.2.0"
resolved "https://registry.npmmirror.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d"
integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==
dependencies:
"@jridgewell/trace-mapping" "^0.3.0"
"@jridgewell/gen-mapping" "^0.1.0"
"@jridgewell/trace-mapping" "^0.3.9"
"@babel/code-frame@7.10.4":
version "7.10.4"
@ -52,10 +53,10 @@
resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.4.tgz#45720fe0cecf3fd42019e1d12cc3d27fadc98d58"
integrity sha512-i2wXrWQNkH6JplJQGn3Rd2I4Pij8GdHkXwHMxm+zV5YG/Jci+bCNrWZEWC4o+umiDkRrRs4dVzH3X4GP7vyjQQ==
"@babel/compat-data@^7.16.8", "@babel/compat-data@^7.17.0", "@babel/compat-data@^7.17.7":
version "7.17.7"
resolved "https://registry.npmmirror.com/@babel/compat-data/-/compat-data-7.17.7.tgz#078d8b833fbbcc95286613be8c716cef2b519fa2"
integrity sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==
"@babel/compat-data@^7.17.0", "@babel/compat-data@^7.17.10":
version "7.17.10"
resolved "https://registry.npmmirror.com/@babel/compat-data/-/compat-data-7.17.10.tgz#711dc726a492dfc8be8220028b1b92482362baab"
integrity sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw==
"@babel/core@7.12.9":
version "7.12.9"
@ -122,20 +123,20 @@
source-map "^0.5.0"
"@babel/core@^7.4.4":
version "7.17.9"
resolved "https://registry.npmmirror.com/@babel/core/-/core-7.17.9.tgz#6bae81a06d95f4d0dec5bb9d74bbc1f58babdcfe"
integrity sha512-5ug+SfZCpDAkVp9SFIZAzlW18rlzsOcJGaetCjkySnrXXDUw9AR8cDUm1iByTmdWM6yxX6/zycaV76w3YTF2gw==
version "7.17.10"
resolved "https://registry.npmmirror.com/@babel/core/-/core-7.17.10.tgz#74ef0fbf56b7dfc3f198fc2d927f4f03e12f4b05"
integrity sha512-liKoppandF3ZcBnIYFjfSDHZLKdLHGJRkoWtG8zQyGJBQfIYobpnVGI5+pLBNtS6psFLDzyq8+h5HiVljW9PNA==
dependencies:
"@ampproject/remapping" "^2.1.0"
"@babel/code-frame" "^7.16.7"
"@babel/generator" "^7.17.9"
"@babel/helper-compilation-targets" "^7.17.7"
"@babel/generator" "^7.17.10"
"@babel/helper-compilation-targets" "^7.17.10"
"@babel/helper-module-transforms" "^7.17.7"
"@babel/helpers" "^7.17.9"
"@babel/parser" "^7.17.9"
"@babel/parser" "^7.17.10"
"@babel/template" "^7.16.7"
"@babel/traverse" "^7.17.9"
"@babel/types" "^7.17.0"
"@babel/traverse" "^7.17.10"
"@babel/types" "^7.17.10"
convert-source-map "^1.7.0"
debug "^4.1.0"
gensync "^1.0.0-beta.2"
@ -160,14 +161,14 @@
jsesc "^2.5.1"
source-map "^0.5.0"
"@babel/generator@^7.17.9", "@babel/generator@^7.4.0":
version "7.17.9"
resolved "https://registry.npmmirror.com/@babel/generator/-/generator-7.17.9.tgz#f4af9fd38fa8de143c29fce3f71852406fc1e2fc"
integrity sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==
"@babel/generator@^7.17.10", "@babel/generator@^7.4.0":
version "7.17.10"
resolved "https://registry.npmmirror.com/@babel/generator/-/generator-7.17.10.tgz#c281fa35b0c349bbe9d02916f4ae08fc85ed7189"
integrity sha512-46MJZZo9y3o4kmhBVc7zW7i8dtR1oIK/sdO5NcfcZRhTGYi+KKJRtHNgsU6c4VUcJmUNV/LQdebD/9Dlv4K+Tg==
dependencies:
"@babel/types" "^7.17.0"
"@babel/types" "^7.17.10"
"@jridgewell/gen-mapping" "^0.1.0"
jsesc "^2.5.1"
source-map "^0.5.0"
"@babel/helper-annotate-as-pure@^7.0.0", "@babel/helper-annotate-as-pure@^7.10.4", "@babel/helper-annotate-as-pure@^7.12.13":
version "7.12.13"
@ -219,14 +220,14 @@
browserslist "^4.16.6"
semver "^6.3.0"
"@babel/helper-compilation-targets@^7.16.7", "@babel/helper-compilation-targets@^7.17.7":
version "7.17.7"
resolved "https://registry.npmmirror.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz#a3c2924f5e5f0379b356d4cfb313d1414dc30e46"
integrity sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==
"@babel/helper-compilation-targets@^7.16.7", "@babel/helper-compilation-targets@^7.17.10":
version "7.17.10"
resolved "https://registry.npmmirror.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.10.tgz#09c63106d47af93cf31803db6bc49fef354e2ebe"
integrity sha512-gh3RxjWbauw/dFiU/7whjd0qN9K6nPJMqe6+Er7rOavFh0CQUSwhAE3IcTho2rywPJFxej6TUUHDkWcYI6gGqQ==
dependencies:
"@babel/compat-data" "^7.17.7"
"@babel/compat-data" "^7.17.10"
"@babel/helper-validator-option" "^7.16.7"
browserslist "^4.17.5"
browserslist "^4.20.2"
semver "^6.3.0"
"@babel/helper-create-class-features-plugin@^7.13.0":
@ -285,7 +286,7 @@
"@babel/helper-annotate-as-pure" "^7.12.13"
regexpu-core "^4.7.1"
"@babel/helper-create-regexp-features-plugin@^7.16.7":
"@babel/helper-create-regexp-features-plugin@^7.16.7", "@babel/helper-create-regexp-features-plugin@^7.17.0":
version "7.17.0"
resolved "https://registry.npmmirror.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.0.tgz#1dcc7d40ba0c6b6b25618997c5dbfd310f186fe1"
integrity sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA==
@ -685,10 +686,10 @@
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.4.tgz#a5c560d6db6cd8e6ed342368dea8039232cbab18"
integrity sha512-ArliyUsWDUqEGfWcmzpGUzNfLxTdTp6WU4IuP6QFSp9gGfWS6boxFCkJSJ/L4+RG8z/FnIU3WxCk6hPL9SSWeA==
"@babel/parser@^7.16.7", "@babel/parser@^7.17.9", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0":
version "7.17.9"
resolved "https://registry.npmmirror.com/@babel/parser/-/parser-7.17.9.tgz#9c94189a6062f0291418ca021077983058e171ef"
integrity sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==
"@babel/parser@^7.16.7", "@babel/parser@^7.17.10", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0":
version "7.17.10"
resolved "https://registry.npmmirror.com/@babel/parser/-/parser-7.17.10.tgz#873b16db82a8909e0fbd7f115772f4b739f6ce78"
integrity sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ==
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.7":
version "7.16.7"
@ -775,7 +776,7 @@
"@babel/helper-plugin-utils" "^7.13.0"
"@babel/plugin-syntax-class-static-block" "^7.12.13"
"@babel/plugin-proposal-class-static-block@^7.16.7":
"@babel/plugin-proposal-class-static-block@^7.17.6":
version "7.17.6"
resolved "https://registry.npmmirror.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.17.6.tgz#164e8fd25f0d80fa48c5a4d1438a6629325ad83c"
integrity sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA==
@ -976,7 +977,7 @@
"@babel/plugin-syntax-object-rest-spread" "^7.8.3"
"@babel/plugin-transform-parameters" "^7.14.2"
"@babel/plugin-proposal-object-rest-spread@^7.16.7":
"@babel/plugin-proposal-object-rest-spread@^7.17.3":
version "7.17.3"
resolved "https://registry.npmmirror.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.17.3.tgz#d9eb649a54628a51701aef7e0ea3d17e2b9dd390"
integrity sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw==
@ -1407,7 +1408,7 @@
dependencies:
"@babel/helper-plugin-utils" "^7.13.0"
"@babel/plugin-transform-destructuring@^7.16.7":
"@babel/plugin-transform-destructuring@^7.17.7":
version "7.17.7"
resolved "https://registry.npmmirror.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.7.tgz#49dc2675a7afa9a5e4c6bdee636061136c3408d1"
integrity sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ==
@ -1564,7 +1565,7 @@
"@babel/helper-simple-access" "^7.13.12"
babel-plugin-dynamic-import-node "^2.3.3"
"@babel/plugin-transform-modules-commonjs@^7.16.8":
"@babel/plugin-transform-modules-commonjs@^7.17.9":
version "7.17.9"
resolved "https://registry.npmmirror.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.17.9.tgz#274be1a2087beec0254d4abd4d86e52442e1e5b6"
integrity sha512-2TBFd/r2I6VlYn0YRTz2JdazS+FoUuQ2rIFHoAxtyP/0G3D82SBLaRq9rnUkpqlLg03Byfl/+M32mpxjO6KaPw==
@ -1585,7 +1586,7 @@
"@babel/helper-validator-identifier" "^7.12.11"
babel-plugin-dynamic-import-node "^2.3.3"
"@babel/plugin-transform-modules-systemjs@^7.16.7":
"@babel/plugin-transform-modules-systemjs@^7.17.8":
version "7.17.8"
resolved "https://registry.npmmirror.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.17.8.tgz#81fd834024fae14ea78fbe34168b042f38703859"
integrity sha512-39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw==
@ -1619,12 +1620,12 @@
dependencies:
"@babel/helper-create-regexp-features-plugin" "^7.12.13"
"@babel/plugin-transform-named-capturing-groups-regex@^7.16.8":
version "7.16.8"
resolved "https://registry.npmmirror.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz#7f860e0e40d844a02c9dcf9d84965e7dfd666252"
integrity sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==
"@babel/plugin-transform-named-capturing-groups-regex@^7.17.10":
version "7.17.10"
resolved "https://registry.npmmirror.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.17.10.tgz#715dbcfafdb54ce8bccd3d12e8917296a4ba66a4"
integrity sha512-v54O6yLaJySCs6mGzaVOUw9T967GnH38T6CQSAtnzdNPwu84l2qAjssKzo/WSO8Yi7NF+7ekm5cVbF/5qiIgNA==
dependencies:
"@babel/helper-create-regexp-features-plugin" "^7.16.7"
"@babel/helper-create-regexp-features-plugin" "^7.17.0"
"@babel/plugin-transform-new-target@^7.12.13":
version "7.12.13"
@ -1731,7 +1732,7 @@
dependencies:
regenerator-transform "^0.14.2"
"@babel/plugin-transform-regenerator@^7.16.7", "@babel/plugin-transform-regenerator@^7.4.5":
"@babel/plugin-transform-regenerator@^7.17.9", "@babel/plugin-transform-regenerator@^7.4.5":
version "7.17.9"
resolved "https://registry.npmmirror.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.17.9.tgz#0a33c3a61cf47f45ed3232903683a0afd2d3460c"
integrity sha512-Lc2TfbxR1HOyn/c6b4Y/b6NHoTb67n/IoWLxTu4kC7h4KQnWlhCq2S8Tx0t2SVvv5Uu87Hs+6JEJ5kt2tYGylQ==
@ -1753,9 +1754,9 @@
"@babel/helper-plugin-utils" "^7.16.7"
"@babel/plugin-transform-runtime@^7.6.0":
version "7.17.0"
resolved "https://registry.npmmirror.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.17.0.tgz#0a2e08b5e2b2d95c4b1d3b3371a2180617455b70"
integrity sha512-fr7zPWnKXNc1xoHfrIU9mN/4XKX4VLZ45Q+oMhfsYIaHvg7mHgmhfOy/ckRWqDK7XF3QDigRpkh5DKq6+clE8A==
version "7.17.10"
resolved "https://registry.npmmirror.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.17.10.tgz#b89d821c55d61b5e3d3c3d1d636d8d5a81040ae1"
integrity sha512-6jrMilUAJhktTr56kACL8LnWC5hx3Lf27BS0R0DSyW/OoJfb/iTHeE96V3b1dgKG3FSFdd/0culnYWMkjcKCig==
dependencies:
"@babel/helper-module-imports" "^7.16.7"
"@babel/helper-plugin-utils" "^7.16.7"
@ -2117,26 +2118,26 @@
semver "^6.3.0"
"@babel/preset-env@^7.4.4":
version "7.16.11"
resolved "https://registry.npmmirror.com/@babel/preset-env/-/preset-env-7.16.11.tgz#5dd88fd885fae36f88fd7c8342475c9f0abe2982"
integrity sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g==
version "7.17.10"
resolved "https://registry.npmmirror.com/@babel/preset-env/-/preset-env-7.17.10.tgz#a81b093669e3eb6541bb81a23173c5963c5de69c"
integrity sha512-YNgyBHZQpeoBSRBg0xixsZzfT58Ze1iZrajvv0lJc70qDDGuGfonEnMGfWeSY0mQ3JTuCWFbMkzFRVafOyJx4g==
dependencies:
"@babel/compat-data" "^7.16.8"
"@babel/helper-compilation-targets" "^7.16.7"
"@babel/compat-data" "^7.17.10"
"@babel/helper-compilation-targets" "^7.17.10"
"@babel/helper-plugin-utils" "^7.16.7"
"@babel/helper-validator-option" "^7.16.7"
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.16.7"
"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.16.7"
"@babel/plugin-proposal-async-generator-functions" "^7.16.8"
"@babel/plugin-proposal-class-properties" "^7.16.7"
"@babel/plugin-proposal-class-static-block" "^7.16.7"
"@babel/plugin-proposal-class-static-block" "^7.17.6"
"@babel/plugin-proposal-dynamic-import" "^7.16.7"
"@babel/plugin-proposal-export-namespace-from" "^7.16.7"
"@babel/plugin-proposal-json-strings" "^7.16.7"
"@babel/plugin-proposal-logical-assignment-operators" "^7.16.7"
"@babel/plugin-proposal-nullish-coalescing-operator" "^7.16.7"
"@babel/plugin-proposal-numeric-separator" "^7.16.7"
"@babel/plugin-proposal-object-rest-spread" "^7.16.7"
"@babel/plugin-proposal-object-rest-spread" "^7.17.3"
"@babel/plugin-proposal-optional-catch-binding" "^7.16.7"
"@babel/plugin-proposal-optional-chaining" "^7.16.7"
"@babel/plugin-proposal-private-methods" "^7.16.11"
@ -2162,7 +2163,7 @@
"@babel/plugin-transform-block-scoping" "^7.16.7"
"@babel/plugin-transform-classes" "^7.16.7"
"@babel/plugin-transform-computed-properties" "^7.16.7"
"@babel/plugin-transform-destructuring" "^7.16.7"
"@babel/plugin-transform-destructuring" "^7.17.7"
"@babel/plugin-transform-dotall-regex" "^7.16.7"
"@babel/plugin-transform-duplicate-keys" "^7.16.7"
"@babel/plugin-transform-exponentiation-operator" "^7.16.7"
@ -2171,15 +2172,15 @@
"@babel/plugin-transform-literals" "^7.16.7"
"@babel/plugin-transform-member-expression-literals" "^7.16.7"
"@babel/plugin-transform-modules-amd" "^7.16.7"
"@babel/plugin-transform-modules-commonjs" "^7.16.8"
"@babel/plugin-transform-modules-systemjs" "^7.16.7"
"@babel/plugin-transform-modules-commonjs" "^7.17.9"
"@babel/plugin-transform-modules-systemjs" "^7.17.8"
"@babel/plugin-transform-modules-umd" "^7.16.7"
"@babel/plugin-transform-named-capturing-groups-regex" "^7.16.8"
"@babel/plugin-transform-named-capturing-groups-regex" "^7.17.10"
"@babel/plugin-transform-new-target" "^7.16.7"
"@babel/plugin-transform-object-super" "^7.16.7"
"@babel/plugin-transform-parameters" "^7.16.7"
"@babel/plugin-transform-property-literals" "^7.16.7"
"@babel/plugin-transform-regenerator" "^7.16.7"
"@babel/plugin-transform-regenerator" "^7.17.9"
"@babel/plugin-transform-reserved-words" "^7.16.7"
"@babel/plugin-transform-shorthand-properties" "^7.16.7"
"@babel/plugin-transform-spread" "^7.16.7"
@ -2189,11 +2190,11 @@
"@babel/plugin-transform-unicode-escapes" "^7.16.7"
"@babel/plugin-transform-unicode-regex" "^7.16.7"
"@babel/preset-modules" "^0.1.5"
"@babel/types" "^7.16.8"
"@babel/types" "^7.17.10"
babel-plugin-polyfill-corejs2 "^0.3.0"
babel-plugin-polyfill-corejs3 "^0.5.0"
babel-plugin-polyfill-regenerator "^0.3.0"
core-js-compat "^3.20.2"
core-js-compat "^3.22.1"
semver "^6.3.0"
"@babel/preset-flow@^7.12.1":
@ -2327,19 +2328,19 @@
debug "^4.1.0"
globals "^11.1.0"
"@babel/traverse@^7.16.7", "@babel/traverse@^7.16.8", "@babel/traverse@^7.17.3", "@babel/traverse@^7.17.9", "@babel/traverse@^7.4.3", "@babel/traverse@^7.7.0":
version "7.17.9"
resolved "https://registry.npmmirror.com/@babel/traverse/-/traverse-7.17.9.tgz#1f9b207435d9ae4a8ed6998b2b82300d83c37a0d"
integrity sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==
"@babel/traverse@^7.16.7", "@babel/traverse@^7.16.8", "@babel/traverse@^7.17.10", "@babel/traverse@^7.17.3", "@babel/traverse@^7.17.9", "@babel/traverse@^7.4.3", "@babel/traverse@^7.7.0":
version "7.17.10"
resolved "https://registry.npmmirror.com/@babel/traverse/-/traverse-7.17.10.tgz#1ee1a5ac39f4eac844e6cf855b35520e5eb6f8b5"
integrity sha512-VmbrTHQteIdUUQNTb+zE12SHS/xQVIShmBPhlNP12hD5poF2pbITW1Z4172d03HegaQWhLffdkRJYtAzp0AGcw==
dependencies:
"@babel/code-frame" "^7.16.7"
"@babel/generator" "^7.17.9"
"@babel/generator" "^7.17.10"
"@babel/helper-environment-visitor" "^7.16.7"
"@babel/helper-function-name" "^7.17.9"
"@babel/helper-hoist-variables" "^7.16.7"
"@babel/helper-split-export-declaration" "^7.16.7"
"@babel/parser" "^7.17.9"
"@babel/types" "^7.17.0"
"@babel/parser" "^7.17.10"
"@babel/types" "^7.17.10"
debug "^4.1.0"
globals "^11.1.0"
@ -2367,10 +2368,10 @@
"@babel/helper-validator-identifier" "^7.14.0"
to-fast-properties "^2.0.0"
"@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.16.8", "@babel/types@^7.17.0", "@babel/types@^7.4.0", "@babel/types@^7.7.0":
version "7.17.0"
resolved "https://registry.npmmirror.com/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b"
integrity sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==
"@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.16.8", "@babel/types@^7.17.0", "@babel/types@^7.17.10", "@babel/types@^7.4.0", "@babel/types@^7.7.0":
version "7.17.10"
resolved "https://registry.npmmirror.com/@babel/types/-/types-7.17.10.tgz#d35d7b4467e439fcf06d195f8100e0fea7fc82c4"
integrity sha512-9O26jG0mBYfGkUYCYZRnBwbVLd1UZOICEr2Em6InB6jVfsAv1GKgwXHmrSg+WFWDmeKTA6vyTZiN8tCSM5Oo3A==
dependencies:
"@babel/helper-validator-identifier" "^7.16.7"
to-fast-properties "^2.0.0"
@ -2915,9 +2916,9 @@
"@ethersproject/logger" "^5.6.0"
"@ethersproject/providers@^5.0.5":
version "5.6.3"
resolved "https://registry.npmmirror.com/@ethersproject/providers/-/providers-5.6.3.tgz#416c46e943319af6b114f47625be6325d10b3e32"
integrity sha512-PKTEZXjdAhGK/+hUwRLQqlGrwTRrK4D0FHEP2V9klUF8C6+AWfHkA3AoLI+a8oq5CUZoRAH0nMecYGkKxUjeSw==
version "5.6.5"
resolved "https://registry.npmmirror.com/@ethersproject/providers/-/providers-5.6.5.tgz#aefecf78459817a323452e05a16d56afcf807e27"
integrity sha512-TRS+c2Ud+cMpWodmGAc9xbnYRPWzRNYt2zkCSnj58nJoamBQ6x4cUbBeo0lTC3y+6RDVIBeJv18OqsDbSktLVg==
dependencies:
"@ethersproject/abstract-provider" "^5.6.0"
"@ethersproject/abstract-signer" "^5.6.0"
@ -2984,9 +2985,9 @@
elliptic "6.5.4"
"@ethersproject/signing-key@^5.6.0":
version "5.6.0"
resolved "https://registry.npmmirror.com/@ethersproject/signing-key/-/signing-key-5.6.0.tgz#4f02e3fb09e22b71e2e1d6dc4bcb5dafa69ce042"
integrity sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA==
version "5.6.1"
resolved "https://registry.npmmirror.com/@ethersproject/signing-key/-/signing-key-5.6.1.tgz#31b0a531520616254eb0465b9443e49515c4d457"
integrity sha512-XvqQ20DH0D+bS3qlrrgh+axRMth5kD1xuvqUQUTeezxUTXBOeR6hWz2/C6FBEu39FRytyybIWrYf7YLSAKr1LQ==
dependencies:
"@ethersproject/bytes" "^5.6.0"
"@ethersproject/logger" "^5.6.0"
@ -3412,20 +3413,33 @@
"@types/yargs" "^15.0.0"
chalk "^4.0.0"
"@jridgewell/gen-mapping@^0.1.0":
version "0.1.1"
resolved "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996"
integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==
dependencies:
"@jridgewell/set-array" "^1.0.0"
"@jridgewell/sourcemap-codec" "^1.4.10"
"@jridgewell/resolve-uri@^3.0.3":
version "3.0.5"
resolved "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz#68eb521368db76d040a6315cdb24bf2483037b9c"
integrity sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==
version "3.0.6"
resolved "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.6.tgz#4ac237f4dabc8dd93330386907b97591801f7352"
integrity sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw==
"@jridgewell/set-array@^1.0.0":
version "1.1.0"
resolved "https://registry.npmmirror.com/@jridgewell/set-array/-/set-array-1.1.0.tgz#1179863356ac8fbea64a5a4bcde93a4871012c01"
integrity sha512-SfJxIxNVYLTsKwzB3MoOQ1yxf4w/E6MdkvTgrgAt1bfxjSrLUoHMKrDOykwN14q65waezZIdqDneUIPh4/sKxg==
"@jridgewell/sourcemap-codec@^1.4.10":
version "1.4.11"
resolved "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec"
integrity sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==
version "1.4.12"
resolved "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.12.tgz#7ed98f6fa525ffb7c56a2cbecb5f7bb91abd2baf"
integrity sha512-az/NhpIwP3K33ILr0T2bso+k2E/SLf8Yidd8mHl0n6sCQ4YdyC8qDhZA6kOPDNDBA56ZnIjngVl0U3jREA0BUA==
"@jridgewell/trace-mapping@^0.3.0":
version "0.3.4"
resolved "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz#f6a0832dffd5b8a6aaa633b7d9f8e8e94c83a0c3"
integrity sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==
"@jridgewell/trace-mapping@^0.3.9":
version "0.3.9"
resolved "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9"
integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==
dependencies:
"@jridgewell/resolve-uri" "^3.0.3"
"@jridgewell/sourcemap-codec" "^1.4.10"
@ -6165,7 +6179,12 @@ JSONStream@^1.0.4:
jsonparse "^1.2.0"
through ">=2.2.7 <3"
abab@^2.0.0, abab@^2.0.3, abab@^2.0.5:
abab@^2.0.0:
version "2.0.6"
resolved "https://registry.npmmirror.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291"
integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==
abab@^2.0.3, abab@^2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a"
integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==
@ -6532,13 +6551,13 @@ array-includes@^3.0.3, array-includes@^3.1.1, array-includes@^3.1.2, array-inclu
is-string "^1.0.5"
array-includes@^3.1.4:
version "3.1.4"
resolved "https://registry.npmmirror.com/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9"
integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==
version "3.1.5"
resolved "https://registry.npmmirror.com/array-includes/-/array-includes-3.1.5.tgz#2c320010db8d31031fd2a5f6b3bbd4b1aad31bdb"
integrity sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==
dependencies:
call-bind "^1.0.2"
define-properties "^1.1.3"
es-abstract "^1.19.1"
define-properties "^1.1.4"
es-abstract "^1.19.5"
get-intrinsic "^1.1.1"
is-string "^1.0.7"
@ -7398,15 +7417,15 @@ browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.16.3, browserslist@^
escalade "^3.1.1"
node-releases "^1.1.71"
browserslist@^4.17.5, browserslist@^4.19.1:
version "4.20.2"
resolved "https://registry.npmmirror.com/browserslist/-/browserslist-4.20.2.tgz#567b41508757ecd904dab4d1c646c612cd3d4f88"
integrity sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==
browserslist@^4.20.2, browserslist@^4.20.3:
version "4.20.3"
resolved "https://registry.npmmirror.com/browserslist/-/browserslist-4.20.3.tgz#eb7572f49ec430e054f56d52ff0ebe9be915f8bf"
integrity sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==
dependencies:
caniuse-lite "^1.0.30001317"
electron-to-chromium "^1.4.84"
caniuse-lite "^1.0.30001332"
electron-to-chromium "^1.4.118"
escalade "^3.1.1"
node-releases "^2.0.2"
node-releases "^2.0.3"
picocolors "^1.0.0"
bs-logger@0.x:
@ -7689,10 +7708,10 @@ caniuse-lite@^1.0.30001219:
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001223.tgz#39b49ff0bfb3ee3587000d2f66c47addc6e14443"
integrity sha512-k/RYs6zc/fjbxTjaWZemeSmOjO0JJV+KguOBA3NwPup8uzxM1cMhR2BD9XmO86GuqaqTCO8CgkgH9Rz//vdDiA==
caniuse-lite@^1.0.30001317:
version "1.0.30001331"
resolved "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001331.tgz#41048f2a5cf0c3c6198f40207cd323388b3d4399"
integrity sha512-Y1xk6paHpUXKP/P6YjQv1xqyTbgAP05ycHBcRdQjTcyXlWol868sJJPlmk5ylOekw2BrucWes5jk+LvVd7WZ5Q==
caniuse-lite@^1.0.30001332:
version "1.0.30001335"
resolved "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001335.tgz#899254a0b70579e5a957c32dced79f0727c61f2a"
integrity sha512-ddP1Tgm7z2iIxu6QTtbZUv6HJxSaV/PZeSrWFZtbY4JZ69tOeNhBCl3HyRQgeNZKE5AOn1kpV7fhljigy0Ty3w==
capture-exit@^2.0.0:
version "2.0.0"
@ -8378,12 +8397,12 @@ copy-to-clipboard@^3.3.1:
dependencies:
toggle-selection "^1.0.6"
core-js-compat@^3.20.2, core-js-compat@^3.21.0:
version "3.21.1"
resolved "https://registry.npmmirror.com/core-js-compat/-/core-js-compat-3.21.1.tgz#cac369f67c8d134ff8f9bd1623e3bc2c42068c82"
integrity sha512-gbgX5AUvMb8gwxC7FLVWYT7Kkgu/y7+h/h1X43yJkNqhlK2fuYyQimqvKGNZFAY6CKii/GFKJ2cp/1/42TN36g==
core-js-compat@^3.21.0, core-js-compat@^3.22.1:
version "3.22.4"
resolved "https://registry.npmmirror.com/core-js-compat/-/core-js-compat-3.22.4.tgz#d700f451e50f1d7672dcad0ac85d910e6691e579"
integrity sha512-dIWcsszDezkFZrfm1cnB4f/J85gyhiCpxbgBdohWCDtSVuAaChTSpPV7ldOQf/Xds2U5xCIJZOK82G4ZPAIswA==
dependencies:
browserslist "^4.19.1"
browserslist "^4.20.3"
semver "7.0.0"
core-js-compat@^3.8.1, core-js-compat@^3.9.0:
@ -8843,6 +8862,14 @@ define-properties@^1.1.2, define-properties@^1.1.3:
dependencies:
object-keys "^1.0.12"
define-properties@^1.1.4:
version "1.1.4"
resolved "https://registry.npmmirror.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1"
integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==
dependencies:
has-property-descriptors "^1.0.0"
object-keys "^1.1.1"
define-property@^0.2.5:
version "0.2.5"
resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116"
@ -9185,10 +9212,10 @@ electron-to-chromium@^1.3.564, electron-to-chromium@^1.3.723:
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.727.tgz#857e310ca00f0b75da4e1db6ff0e073cc4a91ddf"
integrity sha512-Mfz4FIB4FSvEwBpDfdipRIrwd6uo8gUDoRDF4QEYb4h4tSuI3ov594OrjU6on042UlFHouIJpClDODGkPcBSbg==
electron-to-chromium@^1.4.84:
version "1.4.107"
resolved "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.4.107.tgz#564257014ab14033b4403a309c813123c58a3fb9"
integrity sha512-Huen6taaVrUrSy8o7mGStByba8PfOWWluHNxSHGBrCgEdFVLtvdQDBr9LBCF9Uci8SYxh28QNNMO0oC17wbGAg==
electron-to-chromium@^1.4.118:
version "1.4.134"
resolved "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.4.134.tgz#9baca7a018ca489d8e81a00c7cfe15161da38568"
integrity sha512-OdD7M2no4Mi8PopfvoOuNcwYDJ2mNFxaBfurA6okG3fLBaMcFah9S+si84FhX+FIWLKkdaiHfl4A+5ep/gOVrg==
element-resize-detector@^1.2.2:
version "1.2.2"
@ -9361,10 +9388,10 @@ es-abstract@^1.17.0-next.0, es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next
string.prototype.trimstart "^1.0.4"
unbox-primitive "^1.0.0"
es-abstract@^1.19.1, es-abstract@^1.19.2:
version "1.19.4"
resolved "https://registry.npmmirror.com/es-abstract/-/es-abstract-1.19.4.tgz#79a95527af382eb276075627e53762393ce8b57a"
integrity sha512-flV8e5g9/xulChMG48Fygk1ptpo4lQRJ0eJYtxJFgi7pklLx7EFcOJ34jnvr8pbWlaFN/AT1cZpe0hiFel9Hqg==
es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.5:
version "1.19.5"
resolved "https://registry.npmmirror.com/es-abstract/-/es-abstract-1.19.5.tgz#a2cb01eb87f724e815b278b0dd0d00f36ca9a7f1"
integrity sha512-Aa2G2+Rd3b6kxEUKTF4TaW67czBLyAv3z7VOhYRU50YBx+bbsYZ9xQP4lMNazePuFlybXI0V4MruPos7qUo5fA==
dependencies:
call-bind "^1.0.2"
es-to-primitive "^1.2.1"
@ -11227,6 +11254,11 @@ has-bigints@^1.0.1:
resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113"
integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==
has-bigints@^1.0.2:
version "1.0.2"
resolved "https://registry.npmmirror.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa"
integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==
has-flag@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
@ -11244,6 +11276,13 @@ has-glob@^1.0.0:
dependencies:
is-glob "^3.0.0"
has-property-descriptors@^1.0.0:
version "1.0.0"
resolved "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861"
integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==
dependencies:
get-intrinsic "^1.1.1"
has-symbol-support-x@^1.4.1:
version "1.4.2"
resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz#1409f98bc00247da45da67cee0a36f282ff26455"
@ -11944,9 +11983,9 @@ is-core-module@^2.2.0:
has "^1.0.3"
is-core-module@^2.8.1:
version "2.8.1"
resolved "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211"
integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==
version "2.9.0"
resolved "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.9.0.tgz#e1c34429cd51c6dd9e09e0799e396e27b19a9c69"
integrity sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==
dependencies:
has "^1.0.3"
@ -13463,9 +13502,9 @@ jsprim@^1.2.2:
object.assign "^4.1.2"
jsx-ast-utils@^3.2.1:
version "3.2.2"
resolved "https://registry.npmmirror.com/jsx-ast-utils/-/jsx-ast-utils-3.2.2.tgz#6ab1e52c71dfc0c0707008a91729a9491fe9f76c"
integrity sha512-HDAyJ4MNQBboGpUnHAVUNJs6X0lh058s6FuixsFGP7MgJYpD6Vasd6nzSG5iIfXu1zAYlHJ/zsOKNlrenTUBnw==
version "3.3.0"
resolved "https://registry.npmmirror.com/jsx-ast-utils/-/jsx-ast-utils-3.3.0.tgz#e624f259143b9062c92b6413ff92a164c80d3ccb"
integrity sha512-XzO9luP6L0xkxwhIJMTJQpZo/eeN60K08jHdexfD569AGxeNug6UketeHXEhROoM8aR7EcUoOQmIhcJQjcuq8Q==
dependencies:
array-includes "^3.1.4"
object.assign "^4.1.2"
@ -14740,10 +14779,10 @@ node-releases@^1.1.61, node-releases@^1.1.71:
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.71.tgz#cb1334b179896b1c89ecfdd4b725fb7bbdfc7dbb"
integrity sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==
node-releases@^2.0.2:
version "2.0.3"
resolved "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.3.tgz#225ee7488e4a5e636da8da52854844f9d716ca96"
integrity sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw==
node-releases@^2.0.3:
version "2.0.4"
resolved "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.4.tgz#f38252370c43854dc48aa431c766c6c398f40476"
integrity sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ==
nopt@^4.0.1:
version "4.0.3"
@ -16784,12 +16823,13 @@ regexp.prototype.flags@^1.3.1:
define-properties "^1.1.3"
regexp.prototype.flags@^1.4.1:
version "1.4.2"
resolved "https://registry.npmmirror.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.2.tgz#bf635117a2f4b755595ebb0c0ee2d2a49b2084db"
integrity sha512-Ynz8fTQW5/1elh+jWU2EDDzeoNbD0OQ0R+D1VJU5ATOkUaro4A9YEkdN2ODQl/8UQFPPpZNw91fOcLFamM7Pww==
version "1.4.3"
resolved "https://registry.npmmirror.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac"
integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==
dependencies:
call-bind "^1.0.2"
define-properties "^1.1.3"
functions-have-names "^1.2.2"
regexpp@^2.0.1:
version "2.0.1"
@ -19012,7 +19052,7 @@ umask@^1.1.0:
resolved "https://registry.yarnpkg.com/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d"
integrity sha1-8pzr8B31F5ErtY/5xOUP3o4zMg0=
unbox-primitive@^1.0.0, unbox-primitive@^1.0.1:
unbox-primitive@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471"
integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==
@ -19022,6 +19062,16 @@ unbox-primitive@^1.0.0, unbox-primitive@^1.0.1:
has-symbols "^1.0.2"
which-boxed-primitive "^1.0.2"
unbox-primitive@^1.0.1:
version "1.0.2"
resolved "https://registry.npmmirror.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e"
integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==
dependencies:
call-bind "^1.0.2"
has-bigints "^1.0.2"
has-symbols "^1.0.3"
which-boxed-primitive "^1.0.2"
underscore@1.9.1:
version "1.9.1"
resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.9.1.tgz#06dce34a0e68a7babc29b365b8e74b8925203961"