{
  "version": 3,
  "sources": ["../../src/components/refreshIcon/index.tsx", "../../src/pages/walletInfo/index.tsx"],
  "sourcesContent": ["import { motion, useAnimation } from 'framer-motion';\nimport React, { useEffect, useState } from 'react';\nimport { styled } from 'styled-components';\n\ninterface RefreshIconProps extends React.SVGProps<SVGSVGElement> {\n  spin?: boolean;\n}\n\nconst StyleRefreshIcon = styled.div`\n  color: var(--pcm-body-color-secondary);\n  width: 20px;\n  min-width: 20px;\n  display: flex;\n  align-items: center;\n\n  @media (hover: hover) and (pointer: fine) {\n    &:hover {\n      color: var(--pcm-body-color);\n    }\n  }\n`;\n\nexport const RefreshIcon: React.FC<RefreshIconProps> = ({ spin, ...props }) => {\n  const controls = useAnimation();\n  const [isSpinning, setIsSpinning] = useState(false);\n  useEffect(() => {\n    let animation;\n\n    const startSpinning = async () => {\n      if (isSpinning) {\n        animation = await controls.start({\n          rotate: [0, 360],\n          transition: { repeat: Infinity, duration: 1, ease: 'linear' },\n        });\n      }\n    };\n\n    if (spin) {\n      setIsSpinning(true);\n      startSpinning();\n    } else {\n      setIsSpinning(false);\n      controls.stop();\n    }\n\n    return () => {\n      if (animation) {\n        animation.stop();\n      }\n    };\n  }, [spin, controls, isSpinning]);\n\n  return (\n    <StyleRefreshIcon>\n      <motion.svg\n        width='20'\n        height='20'\n        viewBox='0 0 20 20'\n        fill='none'\n        xmlns='http://www.w3.org/2000/svg'\n        {...(props as any)}\n        animate={controls}\n      >\n        <path\n          d='M18.6187 5.63377C18.3947 5.52181 18.0589 5.63377 17.9469 5.96963L17.4991 7.20111C16.8274 5.52181 15.8198 4.17837 14.2525 3.28275C12.3493 2.16321 10.2221 1.7154 8.09503 2.27517C5.07229 2.94689 2.83323 5.18595 2.04955 8.20869C1.9376 8.54455 2.16151 8.76846 2.38541 8.88041C2.72127 8.88041 2.94518 8.76846 3.05713 8.4326C3.72885 5.74572 5.74401 3.73056 8.43089 3.17079C10.3341 2.72298 12.2373 3.05884 13.8047 4.06642C15.1481 4.85009 16.1557 6.08158 16.7154 7.53697L15.372 6.97721C15.1481 6.86525 14.8122 6.97721 14.7003 7.31307C14.5883 7.53697 14.7003 7.87283 14.9242 7.98479L17.1633 8.88041C17.2752 8.99237 17.3872 8.99237 17.4991 8.99237H17.6111C17.6111 8.99237 17.6111 8.99237 17.723 8.99237C17.835 8.99237 17.9469 8.88041 17.9469 8.76846L18.9545 6.19353C19.0665 5.96963 18.8426 5.74572 18.6187 5.63377Z'\n          fill='currentColor'\n          stroke='currentColor'\n          strokeWidth='0.3'\n        />\n        <path\n          d='M17.6111 11.1195C17.3872 11.0076 17.0513 11.2315 17.0513 11.4554C16.3796 14.1423 14.3644 16.1574 11.6776 16.7172C9.77434 17.165 7.87114 16.8291 6.30379 15.8216C4.96035 15.0379 3.95277 13.8064 3.393 12.351L4.73644 12.9108C4.96035 13.0227 5.29621 12.9108 5.40816 12.5749C5.52012 12.351 5.40816 12.0151 5.18426 11.9032L2.83324 11.1195C2.72128 11.1195 2.60933 11.0076 2.49738 11.0076H2.38542C2.38542 11.0076 2.38542 11.0076 2.27347 11.0076C2.16152 11.1195 2.04956 11.2315 2.04956 11.3434L1.04198 13.8064C0.930029 14.0303 1.04198 14.3662 1.37784 14.4781C1.60175 14.5901 1.93761 14.4781 2.04956 14.1423L2.49738 12.9108C3.1691 14.4781 4.17668 15.8216 5.74402 16.7172C7.64723 17.8367 9.77434 18.2845 11.9015 17.7248C14.9242 17.053 17.2752 14.702 17.9469 11.6793C18.0589 11.4554 17.835 11.2315 17.6111 11.1195Z'\n          fill='currentColor'\n          stroke='currentColor'\n          strokeWidth='0.3'\n        />\n      </motion.svg>\n    </StyleRefreshIcon>\n  );\n};\n\nexport default RefreshIcon;\n", "import { getChainIcon, getChainType, type SolanaChain } from '@particle-network/connector-core';\nimport { useEffect, useMemo, useRef, useState } from 'react';\nimport { RoutePath } from '..';\nimport AccountSecurityIcon from '../../assets/icons/AccountSecurityIcon';\nimport BuyIcon from '../../assets/icons/BuyIcon';\nimport DisconnectIcon from '../../assets/icons/DisconnectIcon';\nimport DownArrowIcon from '../../assets/icons/DownArrowIcon';\nimport ErrorIcon from '../../assets/icons/ErrorIcon';\nimport PlusIcon from '../../assets/icons/PlusIcon';\nimport ReceiveIcon from '../../assets/icons/ReceiveIcon';\nimport WalletIcon from '../../assets/icons/WalletIcon';\nimport ChainDropdown from '../../components/chainDropdown';\nimport CircleSpinner from '../../components/circleSpinner';\nimport { StyleSwitchNetwork } from '../../components/connectedWidget/styles';\nimport { FlexBetween, FlexCenter, FlexLeft, PageContent } from '../../components/modal/styles';\nimport RefreshIcon from '../../components/refreshIcon';\nimport { SocialItem } from '../../components/socialLogin/styles';\nimport { useAccount } from '../../hooks/useAccount';\nimport { useAddress } from '../../hooks/useAddress';\nimport { useAppearance } from '../../hooks/useAppearance';\nimport { useChains } from '../../hooks/useChains';\nimport { useDisconnect } from '../../hooks/useDisconnect';\nimport { useEmbeddedWallet } from '../../hooks/useEmbeddedWallet';\nimport useLocales from '../../hooks/useLocales';\nimport { useParticleAuth } from '../../hooks/useParticleAuth';\nimport { usePublicClient } from '../../hooks/usePublicClient';\nimport { useRouter } from '../../hooks/useRouter';\nimport { useWalletConnections } from '../../hooks/useWalletConnections';\nimport { useWallets } from '../../hooks/useWallets';\nimport { formatTokenAmount, getBuyUrl, popupWindow } from '../../utils';\nimport { getChainDisplayName } from '../../utils/chains';\nimport {\n  StyleActionIcon,\n  StyleActionText,\n  StyleActions,\n  StyleBalance,\n  StyleChainName,\n  StyleDisconnectContent,\n  StyleDisconnectLoading,\n  StyleFooter,\n  StyleFooterLabel,\n  StyleModalContainer,\n  StyleTextButton2,\n  StyleWalletIcon,\n  StyleWalletInfo,\n  StyleWalletInfoLeft,\n  StyleWalletInfoRight,\n  StyleWalletText,\n} from './styles';\n\nconst Page = () => {\n  const chainList = useChains();\n  const { chain, chainId: currentChainId, isConnected } = useAccount();\n  const locales = useLocales();\n  const chains = useChains();\n  const [walletConnection] = useWalletConnections();\n  const client = usePublicClient();\n  const [primaryWallet] = useWallets();\n  const { openAccountAndSecurity, openLinkLoginAccount, getUserInfo, openSetSecurityAccount } = useParticleAuth();\n  const embeddedWallet = useEmbeddedWallet();\n  const address = useAddress();\n  const { close, navigate } = useRouter();\n  const { disconnectAsync } = useDisconnect({\n    onSettled(data, error) {\n      console.log('wallet disconnect');\n    },\n  });\n\n  const [refreshBalance, setRefreshBalance] = useState(false);\n  const [chainDropdownVisible, setChainDropdownVisible] = useState(false);\n  const [balance, setBalance] = useState<string | null>(null);\n  const timer = useRef<NodeJS.Timeout>(undefined);\n  const walletInfoLeftRef = useRef<HTMLDivElement>(null);\n  const [disconnectLoading, setDisconnectLoading] = useState(false);\n\n  const currentChainType = useMemo(() => {\n    if (chainList && chainList?.length && currentChainId) {\n      const chain = chainList.find((item) => item.id === currentChainId);\n      if (chain) {\n        return getChainType(chain);\n      }\n      return '';\n    } else {\n      return '';\n    }\n  }, [chainList, currentChainId]);\n\n  /**\n   * \u662F\u5426\u652F\u6301\u5F53\u524D\u94FE\n   */\n  const supportChain = useMemo(() => {\n    return chains.some((item) => item.id === chain?.id);\n  }, [chain, chains]);\n\n  const getBalance = async () => {\n    if (!currentChainType) {\n      return;\n    }\n    const params =\n      currentChainType === 'evm' ? { address } : primaryWallet?.getWalletClient?.<SolanaChain>()?.publicKey;\n    if (address && params && client) {\n      client\n        .getBalance(params as any)\n        .then((res) => {\n          const { decimals = 1 } = chain?.nativeCurrency || {};\n\n          const balance = formatTokenAmount(BigInt(res), decimals, 5) || '0';\n          setBalance(balance);\n          const key = `${chain?.id}-${address}-balance`?.toLowerCase();\n          localStorage.setItem(key, balance);\n        })\n        .catch((e) => {\n          //ignore\n          console.log('get balance error', e);\n        });\n    }\n  };\n\n  const isParticle = useMemo(() => {\n    return Boolean(walletConnection && walletConnection.walletProps.connector.walletConnectorType === 'particleAuth');\n  }, [walletConnection]);\n\n  const getCachedBalance = () => {\n    const key = `${chain?.id}-${address}-balance`?.toLowerCase();\n    return localStorage.getItem(key) || '0';\n  };\n\n  const { appearance } = useAppearance();\n\n  const buyUrl = useMemo(() => {\n    if (address) {\n      return getBuyUrl(currentChainId, address, '', appearance.mode);\n    }\n    return undefined;\n  }, [address, currentChainId, appearance.mode]);\n\n  useEffect(() => {\n    if (address && chain && client && primaryWallet) {\n      setBalance(getCachedBalance());\n      getBalance();\n    }\n  }, [address, client, chain, primaryWallet]);\n\n  useEffect(() => {\n    if (chain?.id && address) {\n      setBalance(getCachedBalance());\n    }\n  }, [chain?.id, address, balance]);\n\n  return (\n    <PageContent>\n      <StyleModalContainer>\n        <StyleWalletInfo>\n          <StyleWalletInfoLeft\n            ref={walletInfoLeftRef}\n            selected={chains?.length > 1 || !supportChain}\n            onClick={() => {\n              if (chains?.length > 1 || !supportChain) {\n                setChainDropdownVisible(!chainDropdownVisible);\n              }\n            }}\n          >\n            {isConnected && (\n              <>\n                {supportChain ? (\n                  <>\n                    {chain && <StyleWalletIcon src={getChainIcon(chain)} alt='' />}\n                    <StyleChainName>{getChainDisplayName(chain)}</StyleChainName>\n                  </>\n                ) : (\n                  <StyleSwitchNetwork>\n                    <ErrorIcon />\n                    {locales.switchNetwork}\n                  </StyleSwitchNetwork>\n                )}\n\n                {(chains?.length > 1 || !supportChain) && (\n                  <StyleWalletText>\n                    <DownArrowIcon\n                      width={12}\n                      height={12}\n                      spin={!!chainDropdownVisible}\n                      color={supportChain ? 'var(--pcm-body-color-secondary)' : 'var(--pcm-error-color)'}\n                    />\n                  </StyleWalletText>\n                )}\n              </>\n            )}\n          </StyleWalletInfoLeft>\n          {supportChain && (\n            <StyleWalletInfoRight>\n              <StyleBalance>\n                {balance || 0} &nbsp;\n                {chain?.nativeCurrency.symbol?.replace('tBNB', 'BNB')}\n              </StyleBalance>\n              <RefreshIcon\n                style={{ cursor: 'pointer' }}\n                spin={refreshBalance}\n                onClick={async () => {\n                  clearTimeout(timer.current);\n                  const start = new Date().getTime();\n                  setRefreshBalance(true);\n                  await getBalance();\n                  const remain = 1000 - (new Date().getTime() - start);\n                  timer.current = setTimeout(\n                    () => {\n                      setRefreshBalance(false);\n                    },\n                    remain > 0 ? remain : 0\n                  );\n                }}\n              />\n            </StyleWalletInfoRight>\n          )}\n\n          <ChainDropdown\n            visible={chainDropdownVisible}\n            setVisible={setChainDropdownVisible}\n            clickAwayElements={[walletInfoLeftRef as any]}\n            maxHeight={200}\n            supportChain={supportChain}\n            top={50}\n          />\n        </StyleWalletInfo>\n        <StyleActions>\n          <SocialItem\n            $isDisabled={Boolean(!buyUrl)}\n            $felxRow={false}\n            onClick={() => {\n              if (!buyUrl) return;\n\n              const height = parseInt((window.innerHeight * 0.8).toString());\n              let width = height * 0.6;\n              if (width > 1000) {\n                width = 1000;\n              }\n              if (width > window.innerWidth) {\n                width = parseInt((window.innerWidth * 0.9).toString());\n              }\n              popupWindow(buyUrl, 'Particle Network', width, height);\n              close();\n            }}\n          >\n            <FlexCenter\n              style={{\n                width: '100%',\n                gap: '6px',\n              }}\n            >\n              <BuyIcon\n                className={StyleActionIcon}\n                style={{\n                  width: '20px',\n                }}\n              />\n              <StyleActionText>{locales.buy}</StyleActionText>\n            </FlexCenter>\n          </SocialItem>\n\n          <SocialItem\n            $felxRow={false}\n            $isDisabled={Boolean(!address) || !chain}\n            onClick={() => {\n              navigate(RoutePath.Receive);\n            }}\n          >\n            <FlexCenter\n              style={{\n                width: '100%',\n                gap: '6px',\n              }}\n            >\n              <ReceiveIcon\n                className={StyleActionIcon}\n                style={{\n                  width: '18px',\n                }}\n              />\n              <StyleActionText>{locales.receive}</StyleActionText>\n            </FlexCenter>\n          </SocialItem>\n\n          {embeddedWallet && embeddedWallet.isCanOpen && (\n            <SocialItem\n              $felxRow={false}\n              $isDisabled={Boolean(!address)}\n              onClick={() => {\n                embeddedWallet.openWallet();\n                close();\n              }}\n            >\n              <FlexCenter\n                style={{\n                  width: '100%',\n                  gap: '6px',\n                }}\n              >\n                <WalletIcon\n                  className={StyleActionIcon}\n                  style={{\n                    width: '20px',\n                  }}\n                />\n                <StyleActionText>{locales.wallet}</StyleActionText>\n              </FlexCenter>\n            </SocialItem>\n          )}\n\n          {isParticle && (\n            <SocialItem\n              $felxRow={false}\n              onClick={() => {\n                openAccountAndSecurity();\n                close();\n              }}\n            >\n              <FlexCenter\n                style={{\n                  width: '100%',\n                  gap: '6px',\n                }}\n              >\n                <AccountSecurityIcon\n                  className={StyleActionIcon}\n                  style={{\n                    width: '20px',\n                  }}\n                />\n                <StyleActionText>{locales.accountAndSecurity}</StyleActionText>\n              </FlexCenter>\n            </SocialItem>\n          )}\n        </StyleActions>\n        <StyleFooter>\n          <FlexBetween>\n            {isParticle ? (\n              <StyleTextButton2\n                onClick={() => {\n                  const useInfo = getUserInfo();\n                  const { email, phone } = useInfo.security_account || {};\n                  if (!email && !phone) {\n                    openSetSecurityAccount();\n                    close();\n                  } else {\n                    openLinkLoginAccount();\n                    close();\n                  }\n                }}\n              >\n                <FlexLeft gap={5}>\n                  <PlusIcon className={StyleActionIcon} />\n                  <StyleFooterLabel>{locales.linkLoginAccount}</StyleFooterLabel>\n                </FlexLeft>\n              </StyleTextButton2>\n            ) : (\n              <div></div>\n            )}\n\n            <StyleTextButton2 $disconnectLoading={disconnectLoading}>\n              <FlexLeft\n                gap={5}\n                onClick={() => {\n                  setDisconnectLoading(true);\n                  disconnectAsync().finally(() => {\n                    setTimeout(() => {\n                      setDisconnectLoading(false);\n                    }, 300);\n                  });\n                }}\n              >\n                <StyleDisconnectContent>\n                  {disconnectLoading && (\n                    <StyleDisconnectLoading>\n                      <CircleSpinner width={16} inset={0} height={16} logo={<></>} />\n                    </StyleDisconnectLoading>\n                  )}\n\n                  <DisconnectIcon className={StyleActionIcon} />\n                </StyleDisconnectContent>\n                <StyleFooterLabel>{locales.disconnect}</StyleFooterLabel>\n              </FlexLeft>\n            </StyleTextButton2>\n          </FlexBetween>\n        </StyleFooter>\n      </StyleModalContainer>\n    </PageContent>\n  );\n};\n\nexport default Page;\n"],
  "mappings": "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",
  "names": ["useEffect", "useState", "jsx", "jsxs", "init_styles", "chain", "balance"]
}
