diff --git a/package.json b/package.json index 2e22ef74..27d6a7d3 100644 --- a/package.json +++ b/package.json @@ -126,6 +126,7 @@ "babel-loader": "8.1.0", "babel-plugin-named-asset-import": "^0.3.6", "babel-preset-react-app": "^9.1.2", + "bignumber.js": "^9.0.2", "camelcase": "^5.3.1", "case-sensitive-paths-webpack-plugin": "2.3.0", "compression-webpack-plugin": "^5.0.2", @@ -147,6 +148,8 @@ "jest-watch-typeahead": "0.4.2", "mini-css-extract-plugin": "0.9.0", "multichain-bridge": "^1.1.21", + "nebpay.js": "^0.2.2", + "nebulas": "^0.5.6", "optimize-css-assets-webpack-plugin": "5.0.3", "pnp-webpack-plugin": "1.6.4", "postcss-flexbugs-fixes": "4.1.0", diff --git a/src/assets/images/coin/source/NAS.png b/src/assets/images/coin/source/NAS.png new file mode 100644 index 00000000..c5c3feb9 Binary files /dev/null and b/src/assets/images/coin/source/NAS.png differ diff --git a/src/components/CrossChainPanelV2/crossChainNonEVM.tsx b/src/components/CrossChainPanelV2/crossChainNonEVM.tsx index 66f7feb1..ca95ca25 100644 --- a/src/components/CrossChainPanelV2/crossChainNonEVM.tsx +++ b/src/components/CrossChainPanelV2/crossChainNonEVM.tsx @@ -1,16 +1,15 @@ import React, { useEffect, useState, useContext, useMemo, useCallback } from 'react' - -import {isAddress} from 'multichain-bridge' +import { isAddress } from 'multichain-bridge' import { useTranslation } from 'react-i18next' import { ThemeContext } from 'styled-components' import { ArrowDown, Plus, Minus } from 'react-feather' -import { useWallet, ConnectType } from '@terra-money/wallet-provider' +import { useWallet, ConnectType } from '@terra-money/wallet-provider' import SelectChainIdInputPanel from './selectChainID' import Reminder from './reminder' -import {useActiveReact} from '../../hooks/useActiveReact' -import {useTerraCrossBridgeCallback} from '../../hooks/useBridgeCallback' +import { useActiveReact } from '../../hooks/useActiveReact' +import { useTerraCrossBridgeCallback } from '../../hooks/useBridgeCallback' // import { WrapType } from '../../hooks/useWrapCallback' import SelectCurrencyInputPanel from '../CurrencySelect/selectCurrency' @@ -29,8 +28,8 @@ import { useWalletModalToggle } from '../../state/application/hooks' import { useAllMergeBridgeTokenList } from '../../state/lists/hooks' import config from '../../config' -import {getParams} from '../../config/tools/getUrlParams' -import {selectNetwork} from '../../config/tools/methods' +import { getParams } from '../../config/tools/getUrlParams' +import { selectNetwork } from '../../config/tools/methods' // import {getNodeTotalsupply} from '../../utils/bridge/getBalanceV2' // import {formatDecimal, thousandBit} from '../../utils/tools/tools' @@ -44,34 +43,25 @@ import { ConfirmContent, // TxnsInfoText, ConfirmText, - FlexEC, + FlexEC } from '../../pages/styled' -import { - outputValue, - useInitSelectCurrency, - useDestChainid, - useDestCurrency -} from './hooks' +import { outputValue, useInitSelectCurrency, useDestChainid, useDestCurrency } from './hooks' + +import { useCurrentWNASBalance, useNebBridgeCallback } from '../../hooks/nebulas' // let intervalFN:any = '' -export default function CrossChain({ - bridgeKey -}: { - bridgeKey: any -}) { - +export default function CrossChain({ bridgeKey }: { bridgeKey: any }) { const { account, chainId, evmAccount } = useActiveReact() const { t } = useTranslation() - + const { connect } = useWallet() // const connectedWallet = useConnectedWallet() - - const allTokensList:any = useAllMergeBridgeTokenList(bridgeKey, chainId) + + const allTokensList: any = useAllMergeBridgeTokenList(bridgeKey, chainId) const theme = useContext(ThemeContext) const toggleWalletModal = useWalletModalToggle() - const [inputBridgeValue, setInputBridgeValue] = useState('') const [selectCurrency, setSelectCurrency] = useState() @@ -81,7 +71,7 @@ export default function CrossChain({ const [selectChainList, setSelectChainList] = useState>([]) const [recipient, setRecipient] = useState(evmAccount ?? '') const [swapType, setSwapType] = useState('swap') - + // const [intervalCount, setIntervalCount] = useState(0) const [modalOpen, setModalOpen] = useState(false) @@ -89,17 +79,16 @@ export default function CrossChain({ const [delayAction, setDelayAction] = useState(false) - let initBridgeToken:any = getParams('bridgetoken') ? getParams('bridgetoken') : '' + let initBridgeToken: any = getParams('bridgetoken') ? getParams('bridgetoken') : '' initBridgeToken = initBridgeToken ? initBridgeToken.toLowerCase() : '' const destConfig = useMemo(() => { - console.log(selectCurrency) if (selectDestCurrency) { return selectDestCurrency } return false }, [selectDestCurrency]) - + const isUnderlying = useMemo(() => { if (selectCurrency && selectCurrency?.underlying) { return true @@ -113,11 +102,11 @@ export default function CrossChain({ } return false }, [destConfig]) - - function onDelay () { + + function onDelay() { setDelayAction(true) } - function onClear (type?:any) { + function onClear(type?: any) { setDelayAction(false) setModalTipOpen(false) if (!type) { @@ -125,16 +114,21 @@ export default function CrossChain({ } } - function changeNetwork (chainID:any) { + function changeNetwork(chainID: any) { selectNetwork(chainID).then((res: any) => { - console.log(res) + // console.log(res) if (res.msg === 'Error') { - alert(t('changeMetamaskNetwork', {label: config.getCurChainInfo(chainID).networkName})) + alert(t('changeMetamaskNetwork', { label: config.getCurChainInfo(chainID).networkName })) } }) } - const { balance: terraBalance, wrapType: wrapTerraType, execute: onTerraWrap, inputError: wrapInputErrorTerra } = useTerraCrossBridgeCallback( + const { + balance: terraBalance, + wrapType: wrapTerraType, + execute: onTerraWrap, + inputError: wrapInputErrorTerra + } = useTerraCrossBridgeCallback( selectCurrency, destConfig.DepositAddress, inputBridgeValue, @@ -146,23 +140,42 @@ export default function CrossChain({ chainId ) - const {outputBridgeValue, fee} = outputValue(inputBridgeValue, destConfig, selectCurrency) + const { balanceBig: wnasBalance } = useCurrentWNASBalance() + + const { inputError: wrapInputErrorNeb, wrapType: wrapNebType, execute: onNebWrap } = useNebBridgeCallback({ + inputCurrency: selectCurrency, + typedValue: inputBridgeValue, + chainId, + recipient + }) + + const { outputBridgeValue, fee } = outputValue(inputBridgeValue, destConfig, selectCurrency) const useBalance = useMemo(() => { // console.log(terraBalance) if (terraBalance) { return terraBalance?.toSignificant(3) } + if (chainId === 'NAS') { + if (wnasBalance) { + const nasBalanceFormat = wnasBalance?.toSignificant(3) + // console.log('nasBalance', nasBalanceFormat) + return nasBalanceFormat + } + } + return '' - }, [terraBalance]) + }, [terraBalance, wnasBalance]) // console.log(terraBalance) const isWrapInputError = useMemo(() => { - if (wrapInputErrorTerra) { + if (wrapInputErrorTerra && chainId === 'TERRA') { return wrapInputErrorTerra + } else if (wrapInputErrorNeb && chainId === 'NAS') { + return wrapInputErrorNeb } else { return false } - }, [wrapInputErrorTerra]) + }, [wrapInputErrorTerra, wrapInputErrorNeb, chainId]) // console.log(selectCurrency) const isInputError = useMemo(() => { @@ -214,10 +227,11 @@ export default function CrossChain({ }, [selectCurrency, selectChain, isWrapInputError, inputBridgeValue, destConfig]) const errorTip = useMemo(() => { - const isAddr = isAddress( recipient, selectChain) + const isAddr = isAddress(recipient, selectChain) if (!account) { return undefined } else if (isInputError) { + // console.log('errorTip isInputError', isInputError) return isInputError } else if (recipient && !Boolean(isAddr)) { return { @@ -243,14 +257,14 @@ export default function CrossChain({ // return t('swap') // } return t('swap') - }, [errorTip, t, wrapTerraType]) + }, [errorTip, t, wrapTerraType, wrapNebType]) - const {initCurrency} = useInitSelectCurrency(allTokensList, chainId, initBridgeToken) + const { initCurrency } = useInitSelectCurrency(allTokensList, chainId, initBridgeToken) useEffect(() => { setSelectCurrency(initCurrency) }, [initCurrency]) - + useEffect(() => { if (swapType == 'swap' && evmAccount && !isNaN(selectChain)) { setRecipient(evmAccount) @@ -259,7 +273,7 @@ export default function CrossChain({ } }, [evmAccount, swapType, selectChain, destConfig]) - const {initChainId, initChainList} = useDestChainid(selectCurrency, selectChain, chainId) + const { initChainId, initChainList } = useDestChainid(selectCurrency, selectChain, chainId) useEffect(() => { // console.log(selectCurrency) @@ -270,7 +284,7 @@ export default function CrossChain({ setSelectChainList(initChainList) }, [initChainList]) - const {initDestCurrency, initDestCurrencyList} = useDestCurrency(selectCurrency, selectChain) + const { initDestCurrency, initDestCurrencyList } = useDestCurrency(selectCurrency, selectChain) useEffect(() => { setSelectDestCurrency(initDestCurrency) @@ -280,13 +294,16 @@ export default function CrossChain({ setSelectDestCurrencyList(initDestCurrencyList) }, [initDestCurrencyList]) - const handleMaxInput = useCallback((value) => { - if (value) { - setInputBridgeValue(value) - } else { - setInputBridgeValue('') - } - }, [setInputBridgeValue]) + const handleMaxInput = useCallback( + value => { + if (value) { + setInputBridgeValue(value) + } else { + setInputBridgeValue('') + } + }, + [setInputBridgeValue] + ) return ( <> @@ -312,23 +329,19 @@ export default function CrossChain({ selectCurrency={selectCurrency} fee={fee} /> - { - isUnderlying && isDestUnderlying ? ( - <> - - { - t('swapTip', { - symbol: config.getBaseCoin(selectCurrency?.underlying?.symbol, chainId), - symbol1: config.getBaseCoin(selectCurrency?.symbol ?? selectCurrency?.symbol, chainId), - chainName: config.getCurChainInfo(selectChain).name - }) - } - - - ) : ( - <> - ) - } + {isUnderlying && isDestUnderlying ? ( + <> + + {t('swapTip', { + symbol: config.getBaseCoin(selectCurrency?.underlying?.symbol, chainId), + symbol1: config.getBaseCoin(selectCurrency?.symbol ?? selectCurrency?.symbol, chainId), + chainName: config.getCurChainInfo(selectChain).name + })} + + + ) : ( + <> + )} {/* {inputBridgeValue + ' ' + config.getBaseCoin(selectCurrency?.symbol ?? selectCurrency?.symbol, chainId)} { isUnderlying && isDestUnderlying ? ( @@ -345,44 +358,49 @@ export default function CrossChain({ } */} {!account ? ( - {t('ConnectWallet')} - ) : ( - { - // { + {t('ConnectWallet')} + ) : ( + { + // { onDelay() - if (onTerraWrap) onTerraWrap().then(() => { - onClear() - }) - }}> - {t('Confirm')} - - ) - } + if (onTerraWrap && chainId === 'TERRA') + onTerraWrap().then(() => { + onClear() + }) + else if (onNebWrap && chainId === 'NAS') { + // console.log('onNebWrap') + onNebWrap().then(() => { + onClear() + }) + } + }} + > + {t('Confirm')} + + )} - - { - // console.log(value) + onUserInput={value => { setInputBridgeValue(value) }} - onCurrencySelect={(inputCurrency) => { - // console.log(inputCurrency) + onCurrencySelect={inputCurrency => { setSelectCurrency(inputCurrency) }} - onMax={(value) => { + onMax={value => { handleMaxInput(value) }} currency={selectCurrency} disableCurrencySelect={false} showMaxButton={true} isViewNetwork={true} - onOpenModalView={(value) => { + onOpenModalView={value => { // console.log(value) setModalOpen(value) }} @@ -395,15 +413,20 @@ export default function CrossChain({ customBalance={useBalance} /> - { - // toggleNetworkModal() - changeNetwork(selectChain) - }}> + { + changeNetwork(selectChain) + }} + > - { - destConfig?.type !== 'swapin' && !isNaN(selectChain) ? ( - { + {destConfig?.type !== 'swapin' && !isNaN(selectChain) ? ( + { if (swapType === 'swap') { setSwapType('send') } else { @@ -412,35 +435,37 @@ export default function CrossChain({ setRecipient(evmAccount) } } - }}> - { - swapType === 'swap' ? ( - - {t('sendto')} - - ) : ( - - {t('sendto')} - - ) - } - - ) : '' - } + }} + > + {swapType === 'swap' ? ( + + {' '} + {t('sendto')} + + ) : ( + + {' '} + {t('sendto')} + + )} + + ) : ( + '' + )} { + onUserInput={value => { setInputBridgeValue(value) }} - onChainSelect={(chainID) => { + onChainSelect={chainID => { setSelectChain(chainID) }} selectChainId={selectChain} id="selectChainID" - onCurrencySelect={(inputCurrency) => { + onCurrencySelect={inputCurrency => { console.log(inputCurrency) setSelectDestCurrency(inputCurrency) }} @@ -451,50 +476,60 @@ export default function CrossChain({ selectDestCurrencyList={selectDestCurrencyList} bridgeKey={bridgeKey} /> - { - swapType == 'send' || (isNaN(selectChain) && destConfig?.type === 'swapout') || isNaN(chainId) ? ( - - ) : '' - } + {swapType == 'send' || (isNaN(selectChain) && destConfig?.type === 'swapout') || isNaN(chainId) ? ( + + ) : ( + '' + )} - - + - { - config.isStopSystem ? ( - - {t('stopSystem')} - - ) : ( - - {!account ? ( - <> - - { - if (connect) { - try { - connect(ConnectType.CHROME_EXTENSION) - // setModalView(true) - } catch (error) { - alert('Please install Terra Station!') - } - } else { + + {config.isStopSystem ? ( + + {t('stopSystem')} + + ) : ( + + {!account ? ( + <> + { + if (connect) { + try { + connect(ConnectType.CHROME_EXTENSION) + // setModalView(true) + } catch (error) { alert('Please install Terra Station!') } - }}>{t('ConnectWallet')} - {/* {t('ConnectWallet')} */} - - ) : ( - { - setModalTipOpen(true) - }}> - {btnTxt} - - ) - } - - ) - } + } else { + alert('Please install Terra Station!') + } + }} + > + {t('ConnectWallet')} + + {/* {t('ConnectWallet')} */} + + ) : ( + { + setModalTipOpen(true) + }} + > + {btnTxt} + + )} + + )} ) -} \ No newline at end of file +} diff --git a/src/components/CrossChainPanelV2/hooks.ts b/src/components/CrossChainPanelV2/hooks.ts index fecf1568..2b723867 100644 --- a/src/components/CrossChainPanelV2/hooks.ts +++ b/src/components/CrossChainPanelV2/hooks.ts @@ -1,14 +1,16 @@ -import { useMemo, useCallback, useState, useEffect } from "react"; -import {isAddress} from 'multichain-bridge' -import {formatDecimal, thousandBit} from '../../utils/tools/tools' -import {getNodeBalance} from '../../utils/bridge/getBalanceV2' +import { useMemo, useCallback, useState, useEffect } from 'react' +import { isAddress } from 'multichain-bridge' +import { formatDecimal, thousandBit } from '../../utils/tools/tools' +import { getNodeBalance } from '../../utils/bridge/getBalanceV2' import config from '../../config' -export function outputValue (inputBridgeValue: any, destConfig:any, selectCurrency:any) { +export function outputValue(inputBridgeValue: any, destConfig: any, selectCurrency: any) { return useMemo(() => { if (inputBridgeValue && destConfig && selectCurrency) { - const baseFee = destConfig.BaseFeePercent ? (destConfig.MinimumSwapFee / (100 + destConfig.BaseFeePercent)) * 100 : 0 - let fee = Number(inputBridgeValue) * Number(destConfig.SwapFeeRatePerMillion) / 100 + const baseFee = destConfig.BaseFeePercent + ? (destConfig.MinimumSwapFee / (100 + destConfig.BaseFeePercent)) * 100 + : 0 + let fee = (Number(inputBridgeValue) * Number(destConfig.SwapFeeRatePerMillion)) / 100 let value = Number(inputBridgeValue) - fee if (fee < Number(destConfig.MinimumSwapFee)) { fee = Number(destConfig.MinimumSwapFee) @@ -39,32 +41,35 @@ export function outputValue (inputBridgeValue: any, destConfig:any, selectCurren }, [inputBridgeValue, destConfig, selectCurrency]) } -export function useInitSelectCurrency ( - allTokensList:any, - useChainId: any, - initToken?: any -) { +export function useInitSelectCurrency(allTokensList: any, useChainId: any, initToken?: any) { + console.log('useInitSelectCurrency', { allTokensList, useChainId, initToken }) + return useMemo(() => { - const t = initToken ? [initToken] : [config.getCurChainInfo(useChainId)?.bridgeInitToken?.toLowerCase(), config.getCurChainInfo(useChainId)?.crossBridgeInitToken?.toLowerCase()] + const t = initToken + ? [initToken] + : [ + config.getCurChainInfo(useChainId)?.bridgeInitToken?.toLowerCase(), + config.getCurChainInfo(useChainId)?.crossBridgeInitToken?.toLowerCase() + ] + + const list: any = {} - const list:any = {} + let initCurrency: any - let initCurrency:any - if (Object.keys(allTokensList).length > 0) { let useToken = '' let noMatchInitToken = '' for (const token in allTokensList) { if (!isAddress(token) && token !== config.getCurChainInfo(useChainId).symbol) continue list[token] = { - ...(allTokensList[token].tokenInfo ? allTokensList[token].tokenInfo : allTokensList[token]), + ...(allTokensList[token].tokenInfo ? allTokensList[token].tokenInfo : allTokensList[token]) } if (!noMatchInitToken) noMatchInitToken = token - if ( !useToken ) { + if (!useToken) { if ( - t.includes(token) - || t.includes(list[token]?.symbol?.toLowerCase()) - || t.includes(list[token]?.underlying?.symbol?.toLowerCase()) + t.includes(token) || + t.includes(list[token]?.symbol?.toLowerCase()) || + t.includes(list[token]?.underlying?.symbol?.toLowerCase()) ) { useToken = token } @@ -76,20 +81,19 @@ export function useInitSelectCurrency ( initCurrency = list[noMatchInitToken] } } + + console.log('initCurrency', initCurrency) + return { initCurrency } }, [allTokensList, useChainId, initToken]) } -export function useDestChainid ( - selectCurrency:any, - selectChain:any, - useChainId:any, -) { +export function useDestChainid(selectCurrency: any, selectChain: any, useChainId: any) { return useMemo(() => { - let initChainId:any = '', - initChainList:any = [] + let initChainId: any = '', + initChainList: any = [] if (selectCurrency) { const arr = [] for (const c in selectCurrency?.destChains) { @@ -97,12 +101,9 @@ export function useDestChainid ( arr.push(c) } // console.log(arr) - let useChain:any = selectChain ? selectChain : config.getCurChainInfo(selectChain).bridgeInitChain + let useChain: any = selectChain ? selectChain : config.getCurChainInfo(selectChain).bridgeInitChain if (arr.length > 0) { - if ( - !useChain - || (useChain && !arr.includes(useChain)) - ) { + if (!useChain || (useChain && !arr.includes(useChain))) { for (const c of arr) { if (config.getCurConfigInfo()?.hiddenChain?.includes(c)) continue useChain = c @@ -123,16 +124,13 @@ export function useDestChainid ( }, [selectCurrency]) } -export function useDestCurrency ( - selectCurrency:any, - selectChain:any, -) { +export function useDestCurrency(selectCurrency: any, selectChain: any) { return useMemo(() => { let initDestCurrency = '', - initDestCurrencyList = '' + initDestCurrencyList = '' if (selectCurrency && selectChain) { - const dl:any = selectCurrency?.destChains[selectChain] - const formatDl:any = {} + const dl: any = selectCurrency?.destChains[selectChain] + const formatDl: any = {} for (const t in dl) { formatDl[t] = { ...dl[t], @@ -147,8 +145,8 @@ export function useDestCurrency ( } else if (destTokenList.length > 1) { const typeArr = ['swapin', 'swapout'] let bridgeToken = '', - routerToken = '', - isRouterUnderlying = false + routerToken = '', + isRouterUnderlying = false for (const t of destTokenList) { if (typeArr.includes(formatDl[t].type)) { bridgeToken = t @@ -178,13 +176,13 @@ export function useDestCurrency ( }, [selectCurrency, selectChain]) } -export function getFTMSelectPool ( +export function getFTMSelectPool( selectCurrency: any, isUnderlying: any, isDestUnderlying: any, chainId: any, selectChain: any, - destConfig: any, + destConfig: any ) { const [curChain, setCurChain] = useState({ chain: chainId, @@ -196,34 +194,28 @@ export function getFTMSelectPool ( ts: '', bl: '' }) - const getFTMSelectPool = useCallback(async() => { - + const getFTMSelectPool = useCallback(async () => { if ( - selectCurrency - && chainId - && (isUnderlying || isDestUnderlying) - && (selectCurrency?.address === 'FTM' || destConfig?.address === 'FTM') + selectCurrency && + chainId && + (isUnderlying || isDestUnderlying) && + (selectCurrency?.address === 'FTM' || destConfig?.address === 'FTM') ) { // console.log(selectCurrency) const curChain = isUnderlying ? chainId : selectChain const destChain = isUnderlying ? selectChain : chainId const tokenA = isUnderlying ? selectCurrency : destConfig const dec = selectCurrency?.decimals - - const CC:any = await getNodeBalance( + + const CC: any = await getNodeBalance( tokenA?.underlying1 ? tokenA?.underlying1?.address : tokenA?.underlying?.address, tokenA?.address, curChain, - dec, + dec ) - let DC:any = '' + let DC: any = '' // console.log(!isNaN(selectChain)) - DC = await getNodeBalance( - destConfig?.DepositAddress, - selectCurrency.symbol, - destChain, - dec, - ) + DC = await getNodeBalance(destConfig?.DepositAddress, selectCurrency.symbol, destChain, dec) // console.log(curChain) // console.log(CC) // console.log(destChain) @@ -232,12 +224,12 @@ export function getFTMSelectPool ( if (isUnderlying) { setCurChain({ chain: chainId, - ts: CC, + ts: CC }) } else { setDestChain({ chain: selectChain, - ts: CC, + ts: CC }) } } @@ -246,12 +238,12 @@ export function getFTMSelectPool ( if (isUnderlying) { setDestChain({ chain: selectChain, - ts: DC, + ts: DC }) } else { setCurChain({ chain: chainId, - ts: DC, + ts: DC }) } } @@ -264,4 +256,4 @@ export function getFTMSelectPool ( curChain, destChain } -} \ No newline at end of file +} diff --git a/src/components/CurrencySelect/selectCurrency.tsx b/src/components/CurrencySelect/selectCurrency.tsx index ebd3e206..92684a32 100644 --- a/src/components/CurrencySelect/selectCurrency.tsx +++ b/src/components/CurrencySelect/selectCurrency.tsx @@ -1,5 +1,5 @@ import { Currency } from 'anyswap-sdk' -import React, { useState, useContext, useCallback, useEffect, useMemo} from 'react' +import React, { useState, useContext, useCallback, useEffect, useMemo } from 'react' import styled, { ThemeContext } from 'styled-components' import { useTranslation } from 'react-i18next' @@ -10,11 +10,12 @@ import TokenLogo from '../TokenLogo' import { TYPE } from '../../theme' -import { useActiveWeb3React } from '../../hooks' import { useToggleNetworkModal } from '../../state/application/hooks' import config from '../../config' -import {CROSS_BRIDGE_LIST} from '../../config/constant' -import {thousandBit} from '../../utils/tools/tools' +import { CROSS_BRIDGE_LIST } from '../../config/constant' +import { thousandBit } from '../../utils/tools/tools' +import { useActiveWeb3React } from '../../hooks' + // import { useBridgeAllTokenBalances } from '../../state/wallet/hooks' // import { useBridgeTokenList } from '../../state/lists/hooks' @@ -32,23 +33,21 @@ import { InputPanel, Container, StyledTokenName, - CurrencySelectBox, + CurrencySelectBox // HideSmallBox } from './styleds' import SearchModal from './searchModal' import { isAddress } from '../../utils' -const HeadterRightBox = styled.div` - -` +const HeadterRightBox = styled.div`` interface SelectCurrencyInputPanelProps { - value: string // token amount + value: string // token amount onUserInput: (value: string) => void // user input amount showMaxButton: boolean // is view max function onMax?: (value: any) => void // input max token amount - label?: string + label?: string onCurrencySelect?: (currency: Currency) => void // user select token // currency?: Currency | null currency?: any // select token @@ -60,7 +59,7 @@ interface SelectCurrencyInputPanelProps { otherCurrency?: Currency | null // id: string showCommonBases?: boolean - customBalanceText?: string + customBalanceText?: string inputType?: any // input type, object type, params:{swapType: 'withdraw' | 'deposit', ...{custom params}} // onlyUnderlying?: boolean isViewModal?: boolean // 是否显示选择token弹框 @@ -103,7 +102,7 @@ export default function SelectCurrencyInputPanel({ isViewNetwork, isError, isNativeToken, - isViewMode, + isViewMode, modeConent, onChangeMode, allTokens = {}, @@ -112,10 +111,13 @@ export default function SelectCurrencyInputPanel({ bridgeKey, allBalances, showETH, - isRouter, + isRouter }: SelectCurrencyInputPanelProps) { const { t } = useTranslation() + + // only for EVM const { account, chainId } = useActiveWeb3React() + // const allTokensList:any = useBridgeTokenList(bridgeKey, chainId) // const allBalances:any = useBridgeAllTokenBalances(bridgeKey, chainId) // const account = '0x4188663a85C92EEa35b5AD3AA5cA7CeB237C6fe9' @@ -144,7 +146,7 @@ export default function SelectCurrencyInputPanel({ const useBalance = useMemo(() => { // console.log(hideBalance) - // console.log(customBalance) + // console.log('customBalance', customBalance) if (customBalance) { return customBalance } else if (selectedCurrencyBalance && (!isNativeToken || isRouter === false)) { @@ -159,7 +161,16 @@ export default function SelectCurrencyInputPanel({ } else { return undefined } - }, [selectedCurrencyBalance, isNativeToken, selectedETHBalance, customBalance, currency, inputType, disableChainSelect, isRouter]) + }, [ + selectedCurrencyBalance, + isNativeToken, + selectedETHBalance, + customBalance, + currency, + inputType, + disableChainSelect, + isRouter + ]) const handleMax = useCallback(() => { if (onMax) { @@ -182,9 +193,9 @@ export default function SelectCurrencyInputPanel({ if (useTokenList && currency?.address) { for (const t in useTokenList) { if ( - t === currency?.address?.toLowerCase() - || useTokenList[t]?.underlying?.address?.toLowerCase() === currency?.address?.toLowerCase() - || useTokenList[t]?.tokenInfo?.underlying?.address?.toLowerCase() === currency?.address?.toLowerCase() + t === currency?.address?.toLowerCase() || + useTokenList[t]?.underlying?.address?.toLowerCase() === currency?.address?.toLowerCase() || + useTokenList[t]?.tokenInfo?.underlying?.address?.toLowerCase() === currency?.address?.toLowerCase() ) { // console.log(useTokenList[t]) return useTokenList[t]?.tokenInfo?.logoUrl ?? useTokenList[t]?.logoUrl @@ -203,9 +214,8 @@ export default function SelectCurrencyInputPanel({ {label} - - + {isViewMode && onChangeMode ? ( { @@ -219,8 +229,12 @@ export default function SelectCurrencyInputPanel({ fontWeight={500} fontSize={14} style={{ display: 'inline', cursor: 'pointer', marginRight: '10px', textDecoration: 'underline' }} - >{modeConent.txt} - ) : '' + > + {modeConent.txt} + + ) : ( + '' + ) // ( // // ) } + {account && showMaxButton && isViewNetwork ? ( <> {!hideBalance && !!currency && useBalance - ? (customBalanceText ?? (t('balanceTxt') + ': ')) + thousandBit(useBalance, 2) + ? (customBalanceText ?? t('balanceTxt') + ': ') + thousandBit(useBalance, 2) : t('balanceTxt') + ': ' + '-'} @@ -255,7 +270,7 @@ export default function SelectCurrencyInputPanel({ style={{ display: 'inline', cursor: 'pointer' }} > {!hideBalance && !!currency && useBalance && account - ? (customBalanceText ?? (t('balanceTxt') + ': ')) + thousandBit(useBalance, 2) + ? (customBalanceText ?? t('balanceTxt') + ': ') + thousandBit(useBalance, 2) : t('balanceTxt') + ': ' + '-'} {/* @@ -280,7 +295,6 @@ export default function SelectCurrencyInputPanel({ )} -

- { - ( - currency && currency.symbol && currency.symbol.length > 20 - ? currency.symbol.slice(0, 4) + '...' + currency.symbol.slice(currency.symbol.length - 5, currency.symbol.length) - : ( - CROSS_BRIDGE_LIST.includes(bridgeKey) ? - currency?.symbol - : - isRouter === false ? currency?.symbol : config.getBaseCoin(currency?.symbol, useChainId) - ) - ) || t('selectToken') - } + {(currency && currency.symbol && currency.symbol.length > 20 + ? currency.symbol.slice(0, 4) + + '...' + + currency.symbol.slice(currency.symbol.length - 5, currency.symbol.length) + : CROSS_BRIDGE_LIST.includes(bridgeKey) + ? currency?.symbol + : isRouter === false + ? currency?.symbol + : config.getBaseCoin(currency?.symbol, useChainId)) || t('selectToken')}

- {currency && currency.name && !CROSS_BRIDGE_LIST.includes(bridgeKey) ? (isRouter === false ? currency.name : config.getBaseCoin(currency.symbol, useChainId, 1, currency.name)) : currency?.name} + {currency && currency.name && !CROSS_BRIDGE_LIST.includes(bridgeKey) + ? isRouter === false + ? currency.name + : config.getBaseCoin(currency.symbol, useChainId, 1, currency.name) + : currency?.name}

{!disableCurrencySelect && !!currency && ( @@ -320,48 +335,51 @@ export default function SelectCurrencyInputPanel({ )}
- { - isViewNetwork ? ( - {toggleNetworkModal()}} - className="open-currency-select-button" - > - - - - - - {config.getCurChainInfo(useChainId).networkName} - - {!disableCurrencySelect && !!currency && ( - - - - )} - - - ) : ( - - { - !hideBalance && !!currency ? ( - - -
{t('balance')}
-

- {!hideBalance && !!currency && useBalance - ? (customBalanceText ?? '') + thousandBit(useBalance, 2) - : '-'}{' '} -

-
-
- ) : ( - t('balanceTxt') + ': ' + '-' - ) - } -
- ) - } + {isViewNetwork ? ( + { + toggleNetworkModal() + }} + className="open-currency-select-button" + > + + + + + + {config.getCurChainInfo(useChainId).networkName} + + {!disableCurrencySelect && !!currency && ( + + + + )} + + + ) : ( + + {!hideBalance && !!currency ? ( + + +
{t('balance')}
+

+ {!hideBalance && !!currency && useBalance + ? (customBalanceText ?? '') + thousandBit(useBalance, 2) + : '-'}{' '} +

+
+
+ ) : ( + t('balanceTxt') + ': ' + '-' + )} +
+ )}
diff --git a/src/components/Header/index.tsx b/src/components/Header/index.tsx index ee7c9db7..b20a17fd 100644 --- a/src/components/Header/index.tsx +++ b/src/components/Header/index.tsx @@ -1,4 +1,3 @@ - import React from 'react' import { Text } from 'rebass' import styled from 'styled-components' @@ -11,12 +10,14 @@ import IconDay from '../../assets/images/icon/day.svg' import IconNight from '../../assets/images/icon/night.svg' import { useBaseBalances } from '../../hooks/useBaseBalance' -import {useActiveReact} from '../../hooks/useActiveReact' +import { useActiveReact } from '../../hooks/useActiveReact' import { useDarkModeManager } from '../../state/user/hooks' // import { useETHBalances } from '../../state/wallet/hooks' import { ExternalLink } from '../../theme' +import { useCurrentAddress } from '../../hooks/nebulas' + // import Row, { RowFixed } from '../Row' import { RowFixed } from '../Row' import Web3Status from '../Web3Status' @@ -25,13 +26,12 @@ import NavListTop from './NavListTop' // import usePrevious from '../../hooks/usePrevious' import config from '../../config' - const HeaderFrameBox = styled.div` // position: fixed; // top:0; // left:0; // right:0; - width:100%; + width: 100%; ` const HeaderFrame = styled.div` @@ -48,7 +48,7 @@ const HeaderFrame = styled.div` padding: 0rem 1rem; z-index: 2; height: 70px; - margin:auto; + margin: auto; max-width: 1440px; ${({ theme }) => theme.mediaWidth.upToMedium` @@ -147,7 +147,7 @@ const UniIcon = styled.div` ${({ theme }) => theme.flexSC}; height: 100%; img { - height:42px + height: 42px; } .hiddenImg { display: none; @@ -183,24 +183,39 @@ const StyleDarkToggle = styled.div` ` const VersionLinkBox = styled(ExternalLink)` - ${({theme}) => theme.flexSC} + ${({ theme }) => theme.flexSC} text-decoration: none; color: rgb(115, 75, 226); line-height: 26px; margin-top: 17px; font-size: 18px; - font-weight:bold; - display:none; + font-weight: bold; + display: none; ` -function ViewAccountInfo () { - const {account, chainId} = useActiveReact() +function ViewAccountInfo() { + const { account, chainId } = useActiveReact() const baseBalance = useBaseBalances(account, chainId) + const address = useCurrentAddress() + // console.log(baseBalance) if (chainId === 'BTC') { return <> } - + + if (chainId === 'NAS') { + return ( + + {address ? ( + + {baseBalance?.toSignificant(3)} {config.getCurChainInfo(chainId).symbol} + + ) : null} + + + ) + } + return ( {account && baseBalance ? ( @@ -218,18 +233,15 @@ export default function Header() { // console.log(userEthBalance) return ( - <UniIcon> - <img src={isDark ? LogoDark : Logo} alt="logo" className='viewImg' /> - <img src={LogoColor} alt="logo" className='hiddenImg' /> + <img src={isDark ? LogoDark : Logo} alt="logo" className="viewImg" /> + <img src={LogoColor} alt="logo" className="hiddenImg" /> </UniIcon> - - V1↗ - + V1↗ @@ -241,15 +253,7 @@ export default function Header() { toggleDarkMode() }} > - { - isDark ? ( - - - ) : ( - - - ) - } + {isDark ? : } diff --git a/src/components/NonApprove/hooks.ts b/src/components/NonApprove/hooks.ts index a32f0ac5..700ae515 100644 --- a/src/components/NonApprove/hooks.ts +++ b/src/components/NonApprove/hooks.ts @@ -1,13 +1,13 @@ -import { useEffect, useCallback,useState, useMemo } from "react" +import { useEffect, useCallback, useState, useMemo } from 'react' import { JSBI } from 'anyswap-sdk' -import {useMulticall} from '../../utils/tools/multicall' +import { useMulticall } from '../../utils/tools/multicall' import ERC20_INTERFACE from '../../constants/abis/erc20' -import {useActiveWeb3React} from '../../hooks' -import {nonApproveList} from './nonApproveList' -import {useNonApproveCallback} from '../../hooks/useApproveCallback' +import { useActiveWeb3React } from '../../hooks' +import { nonApproveList } from './nonApproveList' +import { useNonApproveCallback } from '../../hooks/useApproveCallback' -export function useAllApproved () { - const {account, chainId} = useActiveWeb3React() +export function useAllApproved() { + const { account, chainId } = useActiveWeb3React() const [approveList, setApproveList] = useState([]) const [approvedList, setApprovedList] = useState([]) const [loading, setLoading] = useState(true) @@ -25,11 +25,10 @@ export function useAllApproved () { symbol: undefined } }, [chainId]) - const {isSetApprove} = useNonApproveCallback(useTokenInfo.token, useTokenInfo.anyToken, useTokenInfo.symbol) + const { isSetApprove } = useNonApproveCallback(useTokenInfo.token, useTokenInfo.anyToken, useTokenInfo.symbol) const getAllApprove = useCallback(() => { setLoading(true) if (account && chainId) { - const framekey = 'allowance' const arr = [] for (const c in nonApproveList) { @@ -44,13 +43,13 @@ export function useAllApproved () { arr.push(useMulticall(c, arr1)) } Promise.all(arr).then(res => { - // console.log(res) + console.log(res) let i = 0 const arr = [] const arr1 = [] for (const c in nonApproveList) { const list = res[i] - i ++ + i++ for (let j = 0, len = list.length; j < len; j++) { const value = list[j] const a = JSBI.greaterThan(JSBI.BigInt(value), JSBI.BigInt(0)) @@ -66,8 +65,8 @@ export function useAllApproved () { arr.push(obj) } } - // console.log(arr) - // console.log(arr1) + console.log(arr) + console.log(arr1) setApproveList(arr1) setApprovedList(arr) setLoading(false) @@ -80,5 +79,5 @@ export function useAllApproved () { useEffect(() => { getAllApprove() }, [account, isSetApprove, chainId]) - return {approveList, approvedList, loading} -} \ No newline at end of file + return { approveList, approvedList, loading } +} diff --git a/src/components/Web3Status/index.tsx b/src/components/Web3Status/index.tsx index 445f89b0..d7b934a3 100644 --- a/src/components/Web3Status/index.tsx +++ b/src/components/Web3Status/index.tsx @@ -10,7 +10,7 @@ import { useWallet, ConnectType } from '@terra-money/wallet-provider' import { injected } from '../../connectors' import { NetworkContextName } from '../../constants' import useENSName from '../../hooks/useENSName' -import {useActiveReact} from '../../hooks/useActiveReact' +import { useActiveReact } from '../../hooks/useActiveReact' import { useWalletModalToggle } from '../../state/application/hooks' import { isTransactionRecent, useAllTransactions } from '../../state/transactions/hooks' import { TransactionDetails } from '../../state/transactions/reducer' @@ -125,7 +125,7 @@ function Web3StatusInner() { const { t } = useTranslation() const { connector, error } = useWeb3React() const { connect } = useWallet() - const {account, chainId} = useActiveReact() + const { account, chainId } = useActiveReact() const { ENSName } = useENSName(account && !isNaN(chainId) ? account : undefined) // console.log(ENSName) @@ -146,16 +146,18 @@ function Web3StatusInner() { {hasPendingTransactions ? ( - {pending?.length} {t('Pending')} + + {pending?.length} {t('Pending')} + {' '} + ) : ( - <>{ - isMobile ? ( + <> + {isMobile ? ( {ENSName || shortenAddress1(account, 2)} ) : ( {ENSName || shortenAddress1(account)} - ) - } + )} )} {!hasPendingTransactions && connector && } @@ -171,22 +173,27 @@ function Web3StatusInner() { } else { if (chainId === 'TERRA') { return ( - { - // console.log(connect) - if (connect) { - try { - connect(ConnectType.CHROME_EXTENSION) - } catch (error) { + { + // console.log(connect) + if (connect) { + try { + connect(ConnectType.CHROME_EXTENSION) + } catch (error) { + alert('Please install Terra Station!') + } + } else { alert('Please install Terra Station!') } - } else { - alert('Please install Terra Station!') - } - }} faded={!account}> + }} + faded={!account} + > {t('ConnectToWallet')} ) } + return ( {t('ConnectToWallet')} diff --git a/src/config/chainConfig/index.ts b/src/config/chainConfig/index.ts index 5e8022c2..a824e920 100644 --- a/src/config/chainConfig/index.ts +++ b/src/config/chainConfig/index.ts @@ -1,44 +1,45 @@ -import arbitrum, {ARBITRUM_MAIN_CHAINID, ARBITRUM_TEST_CHAINID} from './arbitrum' -import avax, {AVAX_MAIN_CHAINID} from './avax' -import bsc, {BNB_MAIN_CHAINID, BNB_TEST_CHAINID} from './bsc' -import eth, {ETH_MAIN_CHAINID, ETH_TEST_CHAINID, ETH_TEST1_CHAINID} from './eth' -import fsn, {FSN_MAIN_CHAINID} from './fsn' -import ftm, {FTM_MAIN_CHAINID} from './ftm' -import ht, {HT_MAIN_CHAINID, HT_TEST_CHAINID} from './ht' -import matic, {MATIC_MAIN_CHAINID} from './matic' -import xdai, {XDAI_MAIN_CHAINID} from './xdai' -import kcc, {KCC_MAIN_CHAINID} from './kcc' -import okt, {OKT_MAIN_CHAINID} from './okt' -import one, {ONE_MAIN_CHAINID} from './one' -import omgx, {OMGX_TEST_CHAINID} from './omgx' -import optimism, {OPTIMISM_TEST_CHAINID, OPTIMISM_MAIN_CHAINID} from './optimism' -import movr, {MOVR_MAIN_CHAINID} from './movr' -import iotex, {IOTEX_MAIN_CHAINID} from './iotex' -import sdn, {SDN_MAIN_CHAINID} from './sdn' -import ltc, {LTC_MAIN_CHAINID} from './ltc' -import btc, {BTC_MAIN_CHAINID} from './btc' -import block, {BLOCK_MAIN_CHAINID} from './block' -import colx, {COLX_MAIN_CHAINID} from './colx' -import celo, {CELO_MAIN_CHAINID} from './celo' -import cro, {CRO_MAIN_CHAINID} from './cro' -import oeth, {OETH_MAIN_CHAINID} from './oeth' -import tlos, {TLOS_MAIN_CHAINID} from './tlos' -import terra, {TERRA_MAIN_CHAINID} from './terra' -import fuse, {FUSE_MAIN_CHAINID} from './fuse' -import aurora, {AURORA_MAIN_CHAINID} from './aurora' -import sys, {SYS_MAIN_CHAINID} from './sys' -import metis, {METIS_MAIN_CHAINID} from './metis' -import glmr, {GLMR_MAIN_CHAINID} from './moonbeam' -import astar, {ASTAR_MAIN_CHAINID} from './astar' -import rose, {ROSE_MAIN_CHAINID} from './rose' -import vlx, {VLX_MAIN_CHAINID} from './vlx' +import arbitrum, { ARBITRUM_MAIN_CHAINID, ARBITRUM_TEST_CHAINID } from './arbitrum' +import avax, { AVAX_MAIN_CHAINID } from './avax' +import bsc, { BNB_MAIN_CHAINID, BNB_TEST_CHAINID } from './bsc' +import eth, { ETH_MAIN_CHAINID, ETH_TEST_CHAINID, ETH_TEST1_CHAINID } from './eth' +import fsn, { FSN_MAIN_CHAINID } from './fsn' +import ftm, { FTM_MAIN_CHAINID } from './ftm' +import ht, { HT_MAIN_CHAINID, HT_TEST_CHAINID } from './ht' +import matic, { MATIC_MAIN_CHAINID } from './matic' +import xdai, { XDAI_MAIN_CHAINID } from './xdai' +import kcc, { KCC_MAIN_CHAINID } from './kcc' +import okt, { OKT_MAIN_CHAINID } from './okt' +import one, { ONE_MAIN_CHAINID } from './one' +import omgx, { OMGX_TEST_CHAINID } from './omgx' +import optimism, { OPTIMISM_TEST_CHAINID, OPTIMISM_MAIN_CHAINID } from './optimism' +import movr, { MOVR_MAIN_CHAINID } from './movr' +import iotex, { IOTEX_MAIN_CHAINID } from './iotex' +import sdn, { SDN_MAIN_CHAINID } from './sdn' +import ltc, { LTC_MAIN_CHAINID } from './ltc' +import btc, { BTC_MAIN_CHAINID } from './btc' +import block, { BLOCK_MAIN_CHAINID } from './block' +import colx, { COLX_MAIN_CHAINID } from './colx' +import celo, { CELO_MAIN_CHAINID } from './celo' +import cro, { CRO_MAIN_CHAINID } from './cro' +import oeth, { OETH_MAIN_CHAINID } from './oeth' +import tlos, { TLOS_MAIN_CHAINID } from './tlos' +import terra, { TERRA_MAIN_CHAINID } from './terra' +import fuse, { FUSE_MAIN_CHAINID } from './fuse' +import aurora, { AURORA_MAIN_CHAINID } from './aurora' +import sys, { SYS_MAIN_CHAINID } from './sys' +import metis, { METIS_MAIN_CHAINID } from './metis' +import glmr, { GLMR_MAIN_CHAINID } from './moonbeam' +import astar, { ASTAR_MAIN_CHAINID } from './astar' +import rose, { ROSE_MAIN_CHAINID } from './rose' +import vlx, { VLX_MAIN_CHAINID } from './vlx' +import neb, { NEBULAS_MAIN_CHAINID } from './neb' -import {VERSION, USE_VERSION, env} from '../constant' +import { VERSION, USE_VERSION, env } from '../constant' interface ConFig { [key: string]: any } -export const chainInfo:ConFig = { +export const chainInfo: ConFig = { ...arbitrum, ...avax, ...bsc, @@ -73,6 +74,7 @@ export const chainInfo:ConFig = { ...astar, ...rose, ...vlx, + ...neb } const allChainList = [ @@ -104,34 +106,21 @@ const allChainList = [ FUSE_MAIN_CHAINID, ASTAR_MAIN_CHAINID, VLX_MAIN_CHAINID, - ETH_TEST1_CHAINID, + ETH_TEST1_CHAINID ] -const useChain:any = { - [VERSION.V1]: [ - ETH_MAIN_CHAINID, - BNB_MAIN_CHAINID, - ], +const useChain: any = { + [VERSION.V1]: [ETH_MAIN_CHAINID, BNB_MAIN_CHAINID], [VERSION.V1_1]: [ ETH_MAIN_CHAINID, BNB_MAIN_CHAINID, MATIC_MAIN_CHAINID, AVAX_MAIN_CHAINID, HT_MAIN_CHAINID, - OKT_MAIN_CHAINID, - ], - [VERSION.V2]: [ - ETH_MAIN_CHAINID, - BNB_MAIN_CHAINID, - FTM_MAIN_CHAINID, - MATIC_MAIN_CHAINID - ], - [VERSION.V2_1]: [ - ETH_MAIN_CHAINID, - BNB_MAIN_CHAINID, - FTM_MAIN_CHAINID, - MATIC_MAIN_CHAINID + OKT_MAIN_CHAINID ], + [VERSION.V2]: [ETH_MAIN_CHAINID, BNB_MAIN_CHAINID, FTM_MAIN_CHAINID, MATIC_MAIN_CHAINID], + [VERSION.V2_1]: [ETH_MAIN_CHAINID, BNB_MAIN_CHAINID, FTM_MAIN_CHAINID, MATIC_MAIN_CHAINID], [VERSION.V2_2]: [ ETH_MAIN_CHAINID, BNB_MAIN_CHAINID, @@ -140,34 +129,13 @@ const useChain:any = { OKT_MAIN_CHAINID, AVAX_MAIN_CHAINID, ARBITRUM_MAIN_CHAINID, - MOVR_MAIN_CHAINID, - ], - [VERSION.V2_T1]: [ - ETH_TEST_CHAINID, - BNB_TEST_CHAINID, - HT_TEST_CHAINID, - ], - [VERSION.V2_T2]: [ - ETH_TEST_CHAINID, - ARBITRUM_TEST_CHAINID, - OMGX_TEST_CHAINID, - OPTIMISM_TEST_CHAINID - ], - [VERSION.V2_T3]: [ - ETH_TEST_CHAINID, - ARBITRUM_TEST_CHAINID, - OMGX_TEST_CHAINID, - OPTIMISM_TEST_CHAINID - ], - [VERSION.V3]: [ - ETH_MAIN_CHAINID, - ARBITRUM_MAIN_CHAINID - ], - [VERSION.V3_1]: [ - ETH_MAIN_CHAINID, - BNB_MAIN_CHAINID, - ARBITRUM_MAIN_CHAINID + MOVR_MAIN_CHAINID ], + [VERSION.V2_T1]: [ETH_TEST_CHAINID, BNB_TEST_CHAINID, HT_TEST_CHAINID], + [VERSION.V2_T2]: [ETH_TEST_CHAINID, ARBITRUM_TEST_CHAINID, OMGX_TEST_CHAINID, OPTIMISM_TEST_CHAINID], + [VERSION.V2_T3]: [ETH_TEST_CHAINID, ARBITRUM_TEST_CHAINID, OMGX_TEST_CHAINID, OPTIMISM_TEST_CHAINID], + [VERSION.V3]: [ETH_MAIN_CHAINID, ARBITRUM_MAIN_CHAINID], + [VERSION.V3_1]: [ETH_MAIN_CHAINID, BNB_MAIN_CHAINID, ARBITRUM_MAIN_CHAINID], [VERSION.V4]: [ ETH_MAIN_CHAINID, BNB_MAIN_CHAINID, @@ -181,15 +149,8 @@ const useChain:any = { OKT_MAIN_CHAINID, ONE_MAIN_CHAINID ], - [VERSION.V4_OKT]: [ - BNB_MAIN_CHAINID, - OKT_MAIN_CHAINID - ], - [VERSION.V4_MOVR]: [ - ETH_MAIN_CHAINID, - BNB_MAIN_CHAINID, - MOVR_MAIN_CHAINID - ], + [VERSION.V4_OKT]: [BNB_MAIN_CHAINID, OKT_MAIN_CHAINID], + [VERSION.V4_MOVR]: [ETH_MAIN_CHAINID, BNB_MAIN_CHAINID, MOVR_MAIN_CHAINID], [VERSION.V5]: [...allChainList], [VERSION.V6]: [ // ETH_MAIN_CHAINID, @@ -214,7 +175,7 @@ const useChain:any = { FTM_MAIN_CHAINID, // MATIC_MAIN_CHAINID, // HT_MAIN_CHAINID, - AVAX_MAIN_CHAINID, + AVAX_MAIN_CHAINID // XDAI_MAIN_CHAINID, // // ARBITRUM_MAIN_CHAINID, // KCC_MAIN_CHAINID, @@ -230,6 +191,7 @@ const useChain:any = { LTC_MAIN_CHAINID, BLOCK_MAIN_CHAINID, COLX_MAIN_CHAINID, + NEBULAS_MAIN_CHAINID ], ALL_MAIN: [ ETH_MAIN_CHAINID, @@ -247,9 +209,10 @@ const useChain:any = { MOVR_MAIN_CHAINID, TERRA_MAIN_CHAINID, AURORA_MAIN_CHAINID, - ASTAR_MAIN_CHAINID + ASTAR_MAIN_CHAINID, + NEBULAS_MAIN_CHAINID ] } -const envType:any = env -export const spportChainArr = envType === 'dev' ? useChain['ALL_MAIN'] : useChain[USE_VERSION] \ No newline at end of file +const envType: any = env +export const spportChainArr = envType === 'dev' ? useChain['ALL_MAIN'] : useChain[USE_VERSION] diff --git a/src/config/chainConfig/neb.js b/src/config/chainConfig/neb.js new file mode 100644 index 00000000..ad0ff50d --- /dev/null +++ b/src/config/chainConfig/neb.js @@ -0,0 +1,46 @@ +import {formatSwapTokenList} from './methods' +import {tokenListUrl, VERSION, USE_VERSION} from '../constant' + +export const NEBULAS_MAINNET = '' +export const NEBULAS_MAIN_CHAINID = 'NAS' +export const NEBULAS_MAIN_EXPLORER = 'https://explorer.nebulas.io/#' + +export const tokenList = [ + +] + +const symbol = 'NAS' + +const bridgeToken = { + [VERSION.V1]: { + bridgeInitToken: '', + bridgeInitChain: '' + } +} + +export default { + [NEBULAS_MAIN_CHAINID]: { + tokenListUrl: tokenListUrl + NEBULAS_MAIN_CHAINID, + tokenList: formatSwapTokenList(symbol, tokenList), + ...bridgeToken[USE_VERSION], + multicalToken: '', + v1FactoryToken: '', + v2FactoryToken: '', + timelock: '', + nodeRpc: NEBULAS_MAINNET, + chainID: NEBULAS_MAIN_CHAINID, + lookHash: NEBULAS_MAIN_EXPLORER + '/tx/', + lookAddr: NEBULAS_MAIN_EXPLORER + '/address/', + lookBlock: NEBULAS_MAIN_EXPLORER + '/block/', + explorer: NEBULAS_MAIN_EXPLORER, + symbol: symbol, + name: 'Nebulas', + networkName: 'Nebulas mainnet', + type: 'main', + label: NEBULAS_MAIN_CHAINID, + isSwitch: 1, + suffix: 'NAS', + anyToken: '', + chainType: 'NAS' + }, +} \ No newline at end of file diff --git a/src/config/constant.ts b/src/config/constant.ts index ed3f57c7..45e86e9c 100644 --- a/src/config/constant.ts +++ b/src/config/constant.ts @@ -1,7 +1,7 @@ export const tokenListUrl = 'https://list.htswap.io/tokenList/' -export const bridgeApi = 'https://bridgeapi.anyswap.exchange' +// export const bridgeApi = 'https://bridgeapi.anyswap.exchange' export const explorer = 'https://anyswap.net' -// export const bridgeApi = 'https://l2api.anyswap.exchange' +export const bridgeApi = 'https://l2api.anyswap.exchange' // export const bridgeApi = 'http://localhost:8107' // export const bridgeApi = 'http://192.168.19.68:8107' @@ -22,19 +22,19 @@ export enum VERSION { V5 = 'ALL', V6 = 'NFT_TEST', V6_1 = 'NFT', - V7 = 'SOURCE_CHAIN', + V7 = 'SOURCE_CHAIN' } export enum BRIDGE_KEY { routerTokenList = 'routerTokenList', bridgeTokenList = 'bridgeTokenList', - mergeTokenList = 'mergeTokenList', + mergeTokenList = 'mergeTokenList' } // export const CROSS_BRIDGE_LIST = [BRIDGE_KEY.bridgeTokenList, BRIDGE_KEY.mergeTokenList] export const CROSS_BRIDGE_LIST = [BRIDGE_KEY.bridgeTokenList] -export const env:any = 'pro' +export const env: any = 'pro' // export const env:any = 'dev' export const version = '0.1.25' @@ -50,9 +50,9 @@ export const timeout = 1000 * 60 * 30 // export const INIT_VERSION = VERSION.V6_1 export const INIT_VERSION = VERSION.V7 -function getUrlVersion (init:any) { +function getUrlVersion(init: any) { const url = window.location.href - let version:any + let version: any if (url.indexOf('https://stable.anyswap.exchange') === 0) { version = VERSION.V2_2 } else if (url.indexOf('https://router.anyswap.exchange') === 0) { @@ -61,10 +61,7 @@ function getUrlVersion (init:any) { version = VERSION.V4_OKT } else if (url.indexOf('https://movr.anyswap.exchange') === 0) { version = VERSION.V4_MOVR - } else if ( - url.indexOf('https://app.anyswap.exchange') === 0 - || url.indexOf('https://anyswap.exchange') === 0 - ) { + } else if (url.indexOf('https://app.anyswap.exchange') === 0 || url.indexOf('https://anyswap.exchange') === 0) { version = VERSION.V5 } else if (url.indexOf('https://arb.anyswap.exchange') === 0) { version = VERSION.V3_1 @@ -72,19 +69,16 @@ function getUrlVersion (init:any) { version = VERSION.V6_1 } else if (url.indexOf('https://nfttest.anyswap.exchange') === 0) { version = VERSION.V6 - } else if ( - url.indexOf('https://app.multichain.org') === 0 - || url.indexOf('https://app.multichain.tools') === 0 - ) { + } else if (url.indexOf('https://app.multichain.org') === 0 || url.indexOf('https://app.multichain.tools') === 0) { version = VERSION.V7 } else { version = init } return version } -export const USE_VERSION:any = getUrlVersion(INIT_VERSION) +export const USE_VERSION: any = getUrlVersion(INIT_VERSION) // console.log(USE_VERSION) -function initVersion (version:any, configVersion:any) { +function initVersion(version: any, configVersion: any) { const VERSION = version + '_VERSION' const curVersion = localStorage.getItem(VERSION) if (curVersion && curVersion !== configVersion) { @@ -97,8 +91,8 @@ function initVersion (version:any, configVersion:any) { } initVersion(USE_VERSION, version) -function formatHiddenCoin (list?:Array) { - const arr:any = [] +function formatHiddenCoin(list?: Array) { + const arr: any = [] if (list && list.length > 0) { for (let str of list) { arr.push(str) @@ -109,7 +103,7 @@ function formatHiddenCoin (list?:Array) { // console.log(arr) return arr } -export const controlConfig:any = { +export const controlConfig: any = { [VERSION.V1]: { bridgeInitDataChain: '56', hiddenCoin: formatHiddenCoin([]), @@ -130,7 +124,7 @@ export const controlConfig:any = { initNode: '56', isOpenRouter: 1, isOpenRouterTxns: env === 'dev' ? 1 : 0, - isOpenBridge: env === 'dev' ? 1 : 0, + isOpenBridge: env === 'dev' ? 1 : 0 }, [VERSION.V2]: { bridgeInitDataChain: '56', @@ -163,7 +157,7 @@ export const controlConfig:any = { initNode: env === 'dev' ? '56' : '1', isOpenRouter: 1, isOpenRouterTxns: env === 'dev' ? 1 : 0, - isOpenBridge: env === 'dev' ? 1 : 0, + isOpenBridge: env === 'dev' ? 1 : 0 }, [VERSION.V2_T1]: { bridgeInitDataChain: '256', @@ -262,7 +256,7 @@ export const controlConfig:any = { initNode: '1', isOpenRouter: 1, isOpenRouterTxns: 0, - isOpenBridge: 1, + isOpenBridge: 1 }, [VERSION.V6]: { bridgeInitDataChain: '4', @@ -274,7 +268,7 @@ export const controlConfig:any = { isOpenRouter: 0, isOpenRouterTxns: 0, isOpenBridge: 0, - isOpenNFT: 1, + isOpenNFT: 1 }, [VERSION.V6_1]: { bridgeInitDataChain: '1', @@ -286,7 +280,7 @@ export const controlConfig:any = { isOpenRouter: 0, isOpenRouterTxns: 0, isOpenBridge: 0, - isOpenNFT: 1, + isOpenNFT: 1 }, [VERSION.V7]: { bridgeInitDataChain: '56', @@ -299,10 +293,9 @@ export const controlConfig:any = { isOpenRouterTxns: env === 'dev' ? 1 : 0, isOpenBridge: 0, isOpenMerge: 1 - }, + } } - export const ENV_NODE_CONFIG = USE_VERSION + '_ENV_NODE_CONFIG' export const INIT_NODE = controlConfig[USE_VERSION].initNode diff --git a/src/hooks/nebulas/index.ts b/src/hooks/nebulas/index.ts new file mode 100644 index 00000000..8ec4a061 --- /dev/null +++ b/src/hooks/nebulas/index.ts @@ -0,0 +1,221 @@ +import { useEffect, useMemo, useState, useCallback } from 'react' +import nebulas from 'nebulas' +// import { tryParseAmount3 } from '../../state/swap/hooks' +import { Currency, JSBI, Fraction } from 'anyswap-sdk' +import { useTranslation } from 'react-i18next' + +import NebPay from 'nebpay.js' +import { BigNumber } from 'ethers' + +interface SendNasProp { + recipient: string + value: string +} + +export const NebAPIEndpoint = 'https://mainnet.nebulas.io' +export const WNASContract = 'n1jrKxgPEUcs7BU2vq3jBzNBdTwWH1oFXku' +export const NebChainID = 1 + +export const toNasBasic = (value: string) => { + const valueNum = Number(value) + const baseDecimals = 18 + const baseAmount = BigNumber.from(10).pow(BigNumber.from(baseDecimals)) + + const valueBig = BigNumber.from((valueNum * 10 ** 18).toString()) + + const stringAmount = baseAmount.mul(valueBig).div(baseAmount) + return stringAmount.toString() +} + +// use neb pay chrome extension to post function +export const bridgeNas = ({ recipient, value }: SendNasProp) => + new Promise((resolve, reject) => { + const callToAddress = WNASContract + const callFunction = 'transfer' + const depositAddress = 'n1avapCUsTfyZDkNkYYFofjtak3bmroSYmY' + const callArgs = JSON.stringify([depositAddress, toNasBasic(value), recipient]) + const nebPay = new NebPay() + nebPay.call(callToAddress, 0, callFunction, callArgs, { + extension: { + openExtension: true + }, + gasPrice: '20000000000', + gasLimit: '8000000', + // debug: true, + listener: (serialNumber: string, resp: string) => { + try { + // console.log('bridgeNas resp', resp, serialNumber) + resolve(serialNumber) + } catch (err) { + reject(err) + } + } + }) + }) + +export const isExtWalletInstall = () => { + return 'NasExtWallet' in window +} + +export const useCurrentAddress = () => { + const [address, setAddress] = useState('') + + const getUserAddress = useCallback(() => { + if (isExtWalletInstall() && !address) { + NasExtWallet.getUserAddress((addr: string) => { + setAddress(addr) + // console.log('user nas address: ' + address + Date.now()) + }) + } + }, [address]) + + getUserAddress() + + // useEffect(() => { + // getUserAddress() + // }, []) + + return useMemo(() => { + return address + }, [address]) +} + +export const useCurrentWNASBalance = () => { + const [balance, setBalance] = useState() + const address = useCurrentAddress() + const neb = new nebulas.Neb() + neb.setRequest(new nebulas.HttpRequest(NebAPIEndpoint)) + + const getWNASBalance = useCallback(async () => { + try { + if (!nebulas.Account.isValidAddress(address)) { + return false + } + const tx = await neb.api.call({ + chainID: NebChainID, + from: address, + to: WNASContract, + value: 0, + gasPrice: '20000000000', + gasLimit: '8000000', + contract: { + function: 'balanceOf', + args: JSON.stringify([address]) + } + }) + + const result = JSON.parse(tx.result) + setBalance(result) + return result + } catch (err) { + console.error(err) + } + }, [address]) + + useEffect(() => { + getWNASBalance() + }, [address]) + + return { + getWNASBalance, + balance, + balanceBig: balance + ? new Fraction(JSBI.BigInt(balance), JSBI.exponentiate(JSBI.BigInt(10), JSBI.BigInt(18))) + : undefined + } +} + +export const useCurrentNasBalance = () => { + const [balance, setBalance] = useState() + const address = useCurrentAddress() + const neb = new nebulas.Neb() + neb.setRequest(new nebulas.HttpRequest(NebAPIEndpoint)) + + const getNasBalance = useCallback(async () => { + if (nebulas.Account.isValidAddress(address)) { + const state = await neb.api.getAccountState(address) + setBalance(state.balance) + // console.log('getNasBalance', address, state) + return state.balance + } + }, [address]) + + useEffect(() => { + getNasBalance() + }, [address]) + + return { + getNasBalance, + balance, + balanceBig: balance + ? new Fraction(JSBI.BigInt(balance), JSBI.exponentiate(JSBI.BigInt(10), JSBI.BigInt(18))) + : undefined + } +} + +interface UseBridgeCallbackInterface { + inputCurrency: Currency | undefined + typedValue: string | undefined + chainId: string + recipient: string +} + +export enum WrapType { + NOT_APPLICABLE, + WRAP, + UNWRAP, + NOCONNECT +} + +// const NOT_APPLICABLE = { wrapType: WrapType.NOT_APPLICABLE } + +export function useNebBridgeCallback({ + inputCurrency, + typedValue, + chainId, + recipient +}: UseBridgeCallbackInterface): { + wrapType?: WrapType + inputError?: string + execute?: undefined | (() => Promise) +} { + const { t } = useTranslation() + const { balanceBig } = useCurrentWNASBalance() + + // console.log('useNebBridgeCallback', chainId, typedValue) + return useMemo(() => { + if (balanceBig && typedValue) { + // const inputAmount = useMemo( + // () => (inputCurrency ? tryParseAmount3(typedValue, inputCurrency?.decimals) : undefined), + // [inputCurrency, typedValue] + // ) + + // const sufficientBalance = inputAmount && balanceBig && !balanceBig.lessThan(inputAmount) + + const sufficientBalance = true + + const inputError = sufficientBalance ? undefined : t('Insufficient', { symbol: inputCurrency?.symbol }) + + // console.log('useNebBridgeCallback inputError', inputError) + + return { + inputError, + wrapType: WrapType.WRAP, + execute: typedValue + ? async () => { + // console.log('call neb pay wallet') + bridgeNas({ + recipient, + value: typedValue + }) + } + : undefined + } + } + + return { + inputError: '', + wrapType: WrapType.NOCONNECT + } + }, [balanceBig, typedValue]) +} diff --git a/src/hooks/nebulas/types.d.ts b/src/hooks/nebulas/types.d.ts new file mode 100644 index 00000000..b05d93f0 --- /dev/null +++ b/src/hooks/nebulas/types.d.ts @@ -0,0 +1,27 @@ +declare module 'nebulas' { + export class Account { + static isValidAddress(address: string): boolean + } + + export class HttpRequest { + constructor(endpoint) + } + + export class Neb { + setRequest(HttpRequest) + + api: { + getAccountState(address) + call(args) + } + } +} + +declare const NasExtWallet + +declare module 'nebpay.js' { + export default class { + pay(to, value, arg) + call(to, value, callFunction, callArgs, payload) + } +} diff --git a/src/hooks/useActiveReact.ts b/src/hooks/useActiveReact.ts index 6259a2be..c5ab7001 100644 --- a/src/hooks/useActiveReact.ts +++ b/src/hooks/useActiveReact.ts @@ -1,26 +1,34 @@ import { useActiveWeb3React } from './index' import { useConnectedWallet } from '@terra-money/wallet-provider' import { useUserSelectChainId } from '../state/user/hooks' +import { useCurrentAddress } from './nebulas' import { useMemo } from 'react' -export function useActiveReact () { +export function useActiveReact() { const { account, chainId } = useActiveWeb3React() const connectedWallet = useConnectedWallet() - const {selectNetworkInfo} = useUserSelectChainId() + const { selectNetworkInfo } = useUserSelectChainId() + // for nebulas + const nebAddress = useCurrentAddress() + return useMemo(() => { let useAccount = account - let useChainId:any = chainId + let useChainId: any = chainId if (selectNetworkInfo?.label === 'TERRA') { useAccount = connectedWallet?.walletAddress useChainId = selectNetworkInfo?.chainId } else if (selectNetworkInfo?.label === 'BTC') { useAccount = '' useChainId = selectNetworkInfo?.chainId + } else if (selectNetworkInfo?.label === 'NAS') { + useAccount = nebAddress + useChainId = selectNetworkInfo?.chainId } + return { account: useAccount, chainId: useChainId, evmAccount: account } - }, [account, connectedWallet, selectNetworkInfo, chainId]) -} \ No newline at end of file + }, [account, connectedWallet, nebAddress, selectNetworkInfo, chainId]) +} diff --git a/src/hooks/useBaseBalance.ts b/src/hooks/useBaseBalance.ts index 9864e0e8..b555bf7d 100644 --- a/src/hooks/useBaseBalance.ts +++ b/src/hooks/useBaseBalance.ts @@ -5,18 +5,22 @@ import { useCallback, useEffect, useMemo, useState } from 'react' import { useETHBalances } from '../state/wallet/hooks' import { useUserSelectChainId } from '../state/user/hooks' import useInterval from './useInterval' -import {useTerraBaseBalance} from './useTerraBalance' +import { useTerraBaseBalance } from './useTerraBalance' +import { useCurrentWNASBalance } from './nebulas' + // import {fromWei} from '../utils/tools/tools' +export function useBaseBalances(uncheckedAddresses?: string | null | undefined, chainId?: any) { + const { selectNetworkInfo } = useUserSelectChainId() + const userEthBalance = useETHBalances(uncheckedAddresses && !selectNetworkInfo?.label ? [uncheckedAddresses] : [])?.[ + uncheckedAddresses ?? '' + ] -export function useBaseBalances ( - uncheckedAddresses?: string | null | undefined, - chainId?: any -) { - const {selectNetworkInfo} = useUserSelectChainId() - const userEthBalance = useETHBalances((uncheckedAddresses && !selectNetworkInfo?.label) ? [uncheckedAddresses] : [])?.[uncheckedAddresses ?? ''] + console.log(selectNetworkInfo) // const userEthBalance = useETHBalances((uncheckedAddresses) ? [uncheckedAddresses] : [])?.[uncheckedAddresses ?? ''] - const {getTerraBaseBalances} = useTerraBaseBalance() + const { getTerraBaseBalances } = useTerraBaseBalance() + + const { getWNASBalance } = useCurrentWNASBalance() const [balance, setBalance] = useState() const fetchBalancesCallback = useCallback(() => { @@ -24,6 +28,10 @@ export function useBaseBalances ( getTerraBaseBalances().then(res => { setBalance(res) }) + } else if (selectNetworkInfo?.label === 'NAS') { + getWNASBalance().then(res => { + setBalance(res) + }) } }, [uncheckedAddresses, selectNetworkInfo, chainId]) @@ -39,8 +47,19 @@ export function useBaseBalances ( if (!selectNetworkInfo?.label) { return userEthBalance } else if (selectNetworkInfo?.label === 'TERRA') { - return balance?.uluna ? new Fraction(JSBI.BigInt(balance?.uluna), JSBI.exponentiate(JSBI.BigInt(10), JSBI.BigInt(6))) : undefined + return balance?.uluna + ? new Fraction(JSBI.BigInt(balance?.uluna), JSBI.exponentiate(JSBI.BigInt(10), JSBI.BigInt(6))) + : undefined + } else if (selectNetworkInfo?.label === 'NAS') { + console.log('useBaseBalances nas balance', balance) + try { + return balance + ? new Fraction(JSBI.BigInt(balance), JSBI.exponentiate(JSBI.BigInt(10), JSBI.BigInt(18))) + : undefined + } catch (err) { + console.error(err) + } } return undefined - }, [balance, userEthBalance, selectNetworkInfo]) -} \ No newline at end of file + }, [balance, userEthBalance, selectNetworkInfo?.label]) +} diff --git a/src/hooks/useBridgeCallback.ts b/src/hooks/useBridgeCallback.ts index 00823f0e..f3e821bf 100644 --- a/src/hooks/useBridgeCallback.ts +++ b/src/hooks/useBridgeCallback.ts @@ -1,11 +1,10 @@ - import { Currency, JSBI, Fraction } from 'anyswap-sdk' import { useMemo, useCallback, useEffect, useState } from 'react' import { useTranslation } from 'react-i18next' import { tryParseAmount, tryParseAmount1, tryParseAmount3 } from '../state/swap/hooks' import { useTransactionAdder } from '../state/transactions/hooks' import { useCurrencyBalance, useETHBalances } from '../state/wallet/hooks' -import {useTxnsDtilOpen} from '../state/application/hooks' +import { useTxnsDtilOpen } from '../state/application/hooks' // import { useAddPopup } from '../state/application/hooks' import { useActiveWeb3React } from './index' import { useBridgeContract, useSwapUnderlyingContract, useSwapBTCContract, useSwapETHContract } from './useContract' @@ -19,15 +18,15 @@ import { MsgSend, // Coins, // MsgExecuteContract, - StdFee, + StdFee // LCDClient, // Coin, // CreateTxOptions, } from '@terra-money/terra.js' -import {useTerraSend} from './terra' +import { useTerraSend } from './terra' -import {recordsTxns} from '../utils/bridge/register' +import { recordsTxns } from '../utils/bridge/register' import config from '../config' import useTerraBalance from './useTerraBalance' @@ -50,15 +49,15 @@ export function useBridgeCallback( routerToken: string | undefined, inputCurrency: Currency | undefined, inputToken: string | undefined, - toAddress: string | undefined, + toAddress: string | undefined, typedValue: string | undefined, toChainID: string | undefined, - version: string | undefined, -// ): { execute?: undefined | (() => Promise); inputError?: string } { + version: string | undefined + // ): { execute?: undefined | (() => Promise); inputError?: string } { ): { wrapType: WrapType; execute?: undefined | (() => Promise); inputError?: string } { const { chainId, account } = useActiveWeb3React() const bridgeContract = useBridgeContract(routerToken) - const {onChangeViewDtil} = useTxnsDtilOpen() + const { onChangeViewDtil } = useTxnsDtilOpen() const { t } = useTranslation() const balance = useCurrencyBalance(account ?? undefined, inputCurrency) // console.log(balance?.raw.toString(16)) @@ -79,7 +78,7 @@ export function useBridgeCallback( execute: sufficientBalance && inputAmount ? async () => { - const results:any = {} + const results: any = {} try { // console.log(bridgeContract) // console.log(inputAmount.raw.toString(16)) @@ -90,7 +89,10 @@ export function useBridgeCallback( toChainID ) addTransaction(txReceipt, { - summary: `Cross bridge ${inputAmount.toSignificant(6)} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}`, + summary: `Cross bridge ${inputAmount.toSignificant(6)} ${config.getBaseCoin( + inputCurrency?.symbol, + chainId + )}`, value: inputAmount.toSignificant(6), toChainId: toChainID, toAddress: toAddress?.toLowerCase(), @@ -125,31 +127,42 @@ export function useBridgeCallback( return results } : undefined, - inputError: sufficientBalance ? undefined : t('Insufficient', {symbol: inputCurrency?.symbol}) + inputError: sufficientBalance ? undefined : t('Insufficient', { symbol: inputCurrency?.symbol }) } - }, [bridgeContract, chainId, inputCurrency, inputAmount, balance, addTransaction, t, inputToken, toAddress, toChainID, version]) + }, [ + bridgeContract, + chainId, + inputCurrency, + inputAmount, + balance, + addTransaction, + t, + inputToken, + toAddress, + toChainID, + version + ]) } - /** * 跨链underlying * 给定选定的输入和输出货币,返回一个wrap回调 * @param inputCurrency 选定的输入货币 * @param typedValue 用户输入值 */ - export function useBridgeUnderlyingCallback( +export function useBridgeUnderlyingCallback( routerToken: string | undefined, inputCurrency: Currency | undefined, inputToken: string | undefined, - toAddress: string | undefined, + toAddress: string | undefined, typedValue: string | undefined, toChainID: string | undefined, - version: string | undefined, -// ): { execute?: undefined | (() => Promise); inputError?: string } { + version: string | undefined + // ): { execute?: undefined | (() => Promise); inputError?: string } { ): { wrapType: WrapType; execute?: undefined | (() => Promise); inputError?: string } { const { chainId, account } = useActiveWeb3React() const bridgeContract = useBridgeContract(routerToken) - const {onChangeViewDtil} = useTxnsDtilOpen() + const { onChangeViewDtil } = useTxnsDtilOpen() const { t } = useTranslation() const balance = useCurrencyBalance(account ?? undefined, inputCurrency) // console.log(balance) @@ -169,13 +182,13 @@ export function useBridgeCallback( execute: sufficientBalance && inputAmount ? async () => { - const results:any = {} + const results: any = {} try { // console.log(bridgeContract) // console.log(inputAmount.raw.toString(16)) // console.log(inputAmount.raw.toString()) // console.log(inputAmount?.toSignificant(6)) - + const txReceipt = await bridgeContract.anySwapOutUnderlying( inputToken, toAddress, @@ -184,7 +197,10 @@ export function useBridgeCallback( ) console.log(txReceipt) addTransaction(txReceipt, { - summary: `Cross bridge ${inputAmount.toSignificant(6)} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}`, + summary: `Cross bridge ${inputAmount.toSignificant(6)} ${config.getBaseCoin( + inputCurrency?.symbol, + chainId + )}`, value: inputAmount.toSignificant(6), toChainId: toChainID, toAddress: toAddress?.toLowerCase(), @@ -219,13 +235,23 @@ export function useBridgeCallback( return results } : undefined, - inputError: sufficientBalance ? undefined : t('Insufficient', {symbol: inputCurrency?.symbol}) + inputError: sufficientBalance ? undefined : t('Insufficient', { symbol: inputCurrency?.symbol }) } - }, [bridgeContract, chainId, inputCurrency, inputAmount, balance, addTransaction, t, inputToken, toAddress, toChainID, version]) + }, [ + bridgeContract, + chainId, + inputCurrency, + inputAmount, + balance, + addTransaction, + t, + inputToken, + toAddress, + toChainID, + version + ]) } - - /** * 跨链native * 给定选定的输入和输出货币,返回一个wrap回调 @@ -236,15 +262,15 @@ export function useBridgeNativeCallback( routerToken: string | undefined, inputCurrency: Currency | undefined, inputToken: string | undefined, - toAddress: string | undefined, + toAddress: string | undefined, typedValue: string | undefined, toChainID: string | undefined, - version: string | undefined, -// ): { execute?: undefined | (() => Promise); inputError?: string } { + version: string | undefined + // ): { execute?: undefined | (() => Promise); inputError?: string } { ): { wrapType: WrapType; execute?: undefined | (() => Promise); inputError?: string } { const { chainId, account } = useActiveWeb3React() const bridgeContract = useBridgeContract(routerToken) - const {onChangeViewDtil} = useTxnsDtilOpen() + const { onChangeViewDtil } = useTxnsDtilOpen() const { t } = useTranslation() const balance = useETHBalances(account ? [account] : [])?.[account ?? ''] // console.log(balance) @@ -267,14 +293,14 @@ export function useBridgeNativeCallback( try { // console.log(bridgeContract.anySwapOutNative) // console.log(inputAmount.raw.toString(16)) - const txReceipt = await bridgeContract.anySwapOutNative( - ...[inputToken, - toAddress, - toChainID], - {value: `0x${inputAmount.raw.toString(16)}`} - ) + const txReceipt = await bridgeContract.anySwapOutNative(...[inputToken, toAddress, toChainID], { + value: `0x${inputAmount.raw.toString(16)}` + }) addTransaction(txReceipt, { - summary: `Cross bridge ${inputAmount.toSignificant(6)} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}`, + summary: `Cross bridge ${inputAmount.toSignificant(6)} ${config.getBaseCoin( + inputCurrency?.symbol, + chainId + )}`, value: inputAmount.toSignificant(6), toChainId: toChainID, toAddress: toAddress?.toLowerCase(), @@ -307,9 +333,22 @@ export function useBridgeNativeCallback( } } : undefined, - inputError: sufficientBalance ? undefined : t('Insufficient', {symbol: inputCurrency?.symbol}) + inputError: sufficientBalance ? undefined : t('Insufficient', { symbol: inputCurrency?.symbol }) } - }, [bridgeContract, chainId, inputCurrency, inputAmount, balance, addTransaction, t, inputToken, toAddress, toChainID, version, routerToken]) + }, [ + bridgeContract, + chainId, + inputCurrency, + inputAmount, + balance, + addTransaction, + t, + inputToken, + toAddress, + toChainID, + version, + routerToken + ]) } /** @@ -318,12 +357,12 @@ export function useBridgeNativeCallback( * @param inputCurrency 选定的输入货币 * @param typedValue 用户输入值 */ - export function useSwapUnderlyingCallback( +export function useSwapUnderlyingCallback( inputCurrency: Currency | undefined, inputToken: string | undefined, typedValue: string | undefined, - swapType: string | undefined, -// ): { execute?: undefined | (() => Promise); inputError?: string } { + swapType: string | undefined + // ): { execute?: undefined | (() => Promise); inputError?: string } { ): { wrapType: WrapType; execute?: undefined | (() => Promise); inputError?: string } { const { chainId, account } = useActiveWeb3React() const bridgeContract = useSwapUnderlyingContract(inputToken) @@ -348,36 +387,38 @@ export function useBridgeNativeCallback( ? async () => { try { // console.log(inputAmount.raw.toString(16)) - const txReceipt = swapType === 'deposit' ? await bridgeContract.deposit( - `0x${inputAmount.raw.toString(16)}` - ) : await bridgeContract.withdraw( - `0x${inputAmount.raw.toString(16)}` - ) - addTransaction(txReceipt, { summary: `${swapType === 'deposit' ? 'Deposit' : 'Withdraw'} ${inputAmount.toSignificant(6)} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}` }) + const txReceipt = + swapType === 'deposit' + ? await bridgeContract.deposit(`0x${inputAmount.raw.toString(16)}`) + : await bridgeContract.withdraw(`0x${inputAmount.raw.toString(16)}`) + addTransaction(txReceipt, { + summary: `${swapType === 'deposit' ? 'Deposit' : 'Withdraw'} ${inputAmount.toSignificant( + 6 + )} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}` + }) } catch (error) { console.log('Could not swapout', error) } } : undefined, - inputError: sufficientBalance ? undefined : t('Insufficient', {symbol: inputCurrency?.symbol}) + inputError: sufficientBalance ? undefined : t('Insufficient', { symbol: inputCurrency?.symbol }) } }, [bridgeContract, chainId, inputCurrency, inputAmount, balance, addTransaction, t, swapType, inputToken]) } - /** * any token 充值与提现native * 给定选定的输入和输出货币,返回一个wrap回调 * @param inputCurrency 选定的输入货币 * @param typedValue 用户输入值 */ - export function useSwapNativeCallback( +export function useSwapNativeCallback( routerToken: string | undefined, inputCurrency: Currency | undefined, inputToken: string | undefined, typedValue: string | undefined, - swapType: string | undefined, -// ): { execute?: undefined | (() => Promise); inputError?: string } { + swapType: string | undefined + // ): { execute?: undefined | (() => Promise); inputError?: string } { ): { wrapType: WrapType; execute?: undefined | (() => Promise); inputError?: string } { const { chainId, account } = useActiveWeb3React() const bridgeContract = useBridgeContract(routerToken) @@ -408,39 +449,38 @@ export function useBridgeNativeCallback( ? async () => { try { // console.log(`0x${inputAmount.raw.toString(16)}`) - const v = {value: `0x${inputAmount.raw.toString(16)}`} + const v = { value: `0x${inputAmount.raw.toString(16)}` } // console.log(v) // console.log([inputToken, account]) - const txReceipt = swapType === 'deposit' ? await bridgeContract.depositNative( - ...[inputToken, account], - v - ) : await bridgeContract.withdrawNative( - inputToken, - `0x${inputAmount.raw.toString(16)}`, - account - ) - addTransaction(txReceipt, { summary: `${swapType === 'deposit' ? 'Deposit' : 'Withdraw'} ${inputAmount.toSignificant(6)} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}` }) + const txReceipt = + swapType === 'deposit' + ? await bridgeContract.depositNative(...[inputToken, account], v) + : await bridgeContract.withdrawNative(inputToken, `0x${inputAmount.raw.toString(16)}`, account) + addTransaction(txReceipt, { + summary: `${swapType === 'deposit' ? 'Deposit' : 'Withdraw'} ${inputAmount.toSignificant( + 6 + )} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}` + }) } catch (error) { console.log('Could not swapout', error) } } : undefined, - inputError: sufficientBalance ? undefined : t('Insufficient', {symbol: inputCurrency?.symbol}) + inputError: sufficientBalance ? undefined : t('Insufficient', { symbol: inputCurrency?.symbol }) } }, [bridgeContract, chainId, inputCurrency, inputAmount, balance, addTransaction, t, inputToken, account]) } - /** * 跨链交易 native swap to native * 给定选定的输入和输出货币,返回一个wrap回调 * @param inputCurrency 选定的输入货币 * @param typedValue 用户输入值 */ - export function useBridgeSwapNativeCallback( +export function useBridgeSwapNativeCallback( routerToken: string | undefined, inputCurrency: Currency | undefined, - toAddress: string | null | undefined, + toAddress: string | null | undefined, typedValue: string | undefined, toChainID: string | undefined, deadline: number | undefined, @@ -448,11 +488,11 @@ export function useBridgeNativeCallback( routerPath: any, isUnderlying: any, version: any -// ): { execute?: undefined | (() => Promise); inputError?: string } { + // ): { execute?: undefined | (() => Promise); inputError?: string } { ): { wrapType: WrapType; execute?: undefined | (() => Promise); inputError?: string } { const { chainId, account } = useActiveWeb3React() const bridgeContract = useBridgeContract(routerToken) - const {onChangeViewDtil} = useTxnsDtilOpen() + const { onChangeViewDtil } = useTxnsDtilOpen() const { t } = useTranslation() const balance = useCurrencyBalance(account ?? undefined, inputCurrency) // console.log(balance) @@ -462,7 +502,18 @@ export function useBridgeNativeCallback( const addTransaction = useTransactionAdder() return useMemo(() => { // console.log(inputCurrency) - if (!bridgeContract || !chainId || !inputCurrency || !toAddress || !toChainID || !deadline || !outputAmount || !routerPath || routerPath.length <= 0) return NOT_APPLICABLE + if ( + !bridgeContract || + !chainId || + !inputCurrency || + !toAddress || + !toChainID || + !deadline || + !outputAmount || + !routerPath || + routerPath.length <= 0 + ) + return NOT_APPLICABLE // console.log(typedValue) const sufficientBalance = inputAmount && balance && !balance.lessThan(inputAmount) @@ -480,7 +531,9 @@ export function useBridgeNativeCallback( // console.log(toAddress) // console.log(parseInt((Date.now()/1000 + deadline).toString())) // console.log(toChainID) - const txType = isUnderlying ? 'anySwapOutExactTokensForNativeUnderlying' : 'anySwapOutExactTokensForNative' + const txType = isUnderlying + ? 'anySwapOutExactTokensForNativeUnderlying' + : 'anySwapOutExactTokensForNative' // console.log(txType) // const txReceipt = await bridgeContract.anySwapOutExactTokensForNative( const txReceipt = await bridgeContract[txType]( @@ -488,11 +541,14 @@ export function useBridgeNativeCallback( outputAmount, routerPath, toAddress, - parseInt((Date.now()/1000 + deadline).toString()), + parseInt((Date.now() / 1000 + deadline).toString()), toChainID ) addTransaction(txReceipt, { - summary: `Cross bridge txns ${inputAmount.toSignificant(6)} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}`, + summary: `Cross bridge txns ${inputAmount.toSignificant(6)} ${config.getBaseCoin( + inputCurrency?.symbol, + chainId + )}`, value: inputAmount.toSignificant(6), toChainId: toChainID, toAddress: toAddress?.toLowerCase(), @@ -525,9 +581,22 @@ export function useBridgeNativeCallback( } } : undefined, - inputError: sufficientBalance ? undefined : t('Insufficient', {symbol: inputCurrency?.symbol}) + inputError: sufficientBalance ? undefined : t('Insufficient', { symbol: inputCurrency?.symbol }) } - }, [bridgeContract, chainId, inputCurrency, inputAmount, balance, addTransaction, t, outputAmount, routerPath, toAddress, deadline, toChainID]) + }, [ + bridgeContract, + chainId, + inputCurrency, + inputAmount, + balance, + addTransaction, + t, + outputAmount, + routerPath, + toAddress, + deadline, + toChainID + ]) } /** @@ -536,22 +605,22 @@ export function useBridgeNativeCallback( * @param inputCurrency 选定的输入货币 * @param typedValue 用户输入值 */ - export function useBridgeSwapUnderlyingCallback( +export function useBridgeSwapUnderlyingCallback( routerToken: string | undefined, inputCurrency: Currency | undefined, - toAddress: string | null | undefined, + toAddress: string | null | undefined, typedValue: string | undefined, toChainID: string | undefined, deadline: number | undefined, outputAmount: string | undefined, routerPath: any, isUnderlying: any, - version: any, -// ): { execute?: undefined | (() => Promise); inputError?: string } { + version: any + // ): { execute?: undefined | (() => Promise); inputError?: string } { ): { wrapType: WrapType; execute?: undefined | (() => Promise); inputError?: string } { const { chainId, account } = useActiveWeb3React() const bridgeContract = useBridgeContract(routerToken) - const {onChangeViewDtil} = useTxnsDtilOpen() + const { onChangeViewDtil } = useTxnsDtilOpen() const { t } = useTranslation() const balance = useCurrencyBalance(account ?? undefined, inputCurrency) // console.log(balance) @@ -561,7 +630,18 @@ export function useBridgeNativeCallback( const addTransaction = useTransactionAdder() return useMemo(() => { // console.log(inputCurrency) - if (!bridgeContract || !chainId || !inputCurrency || !toAddress || !toChainID || !deadline || !outputAmount || !routerPath || routerPath.length <= 0) return NOT_APPLICABLE + if ( + !bridgeContract || + !chainId || + !inputCurrency || + !toAddress || + !toChainID || + !deadline || + !outputAmount || + !routerPath || + routerPath.length <= 0 + ) + return NOT_APPLICABLE // console.log(typedValue) const sufficientBalance = inputAmount && balance && !balance.lessThan(inputAmount) @@ -580,17 +660,22 @@ export function useBridgeNativeCallback( // console.log(parseInt((Date.now()/1000 + deadline).toString())) // console.log(toChainID) // const txReceipt = await bridgeContract.anySwapOutExactTokensForNativeUnderlying( - const txType = isUnderlying ? 'anySwapOutExactTokensForTokensUnderlying' : 'anySwapOutExactTokensForTokens' + const txType = isUnderlying + ? 'anySwapOutExactTokensForTokensUnderlying' + : 'anySwapOutExactTokensForTokens' const txReceipt = await bridgeContract[txType]( `0x${inputAmount.raw.toString(16)}`, outputAmount, routerPath, toAddress, - parseInt((Date.now()/1000 + deadline).toString()), + parseInt((Date.now() / 1000 + deadline).toString()), toChainID ) addTransaction(txReceipt, { - summary: `Cross bridge txns ${inputAmount.toSignificant(6)} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}`, + summary: `Cross bridge txns ${inputAmount.toSignificant(6)} ${config.getBaseCoin( + inputCurrency?.symbol, + chainId + )}`, value: inputAmount.toSignificant(6), toChainId: toChainID, toAddress: toAddress?.toLowerCase(), @@ -623,30 +708,42 @@ export function useBridgeNativeCallback( } } : undefined, - inputError: sufficientBalance ? undefined : t('Insufficient', {symbol: inputCurrency?.symbol}) + inputError: sufficientBalance ? undefined : t('Insufficient', { symbol: inputCurrency?.symbol }) } - }, [bridgeContract, chainId, inputCurrency, inputAmount, balance, addTransaction, t, outputAmount, routerPath, toAddress, deadline, toChainID]) + }, [ + bridgeContract, + chainId, + inputCurrency, + inputAmount, + balance, + addTransaction, + t, + outputAmount, + routerPath, + toAddress, + deadline, + toChainID + ]) } - /** * 跨链桥 * 给定选定的输入和输出货币,返回一个wrap回调 * @param inputCurrency 选定的输入货币 * @param typedValue 用户输入值 */ - export function useCrossBridgeCallback( +export function useCrossBridgeCallback( inputCurrency: Currency | undefined, - toAddress: string | undefined, + toAddress: string | undefined, typedValue: string | undefined, toChainID: any, txnsType: string | undefined, inputToken: string | undefined, pairid: string | undefined, receiveAddress?: string | undefined, - selectCurrency?: any, + selectCurrency?: any ): { wrapType: WrapType; execute?: undefined | (() => Promise); inputError?: string } { - const {onChangeViewDtil} = useTxnsDtilOpen() + const { onChangeViewDtil } = useTxnsDtilOpen() const { chainId, account, library } = useActiveWeb3React() const { t } = useTranslation() // const balance = inputCurrency ? useCurrencyBalance(account ?? undefined, inputCurrency) : useETHBalances(account ? [account] : [])?.[account ?? ''] @@ -656,19 +753,16 @@ export function useBridgeNativeCallback( // console.log(library) // console.log(inputCurrency) // 我们总是可以解析输入货币的金额,因为包装是1:1 - const inputAmount = useMemo(() => inputCurrency ? tryParseAmount(typedValue, inputCurrency) : tryParseAmount1(typedValue, 18), [inputCurrency, typedValue]) + const inputAmount = useMemo( + () => (inputCurrency ? tryParseAmount(typedValue, inputCurrency) : tryParseAmount1(typedValue, 18)), + [inputCurrency, typedValue] + ) const addTransaction = useTransactionAdder() const contractBTC = useSwapBTCContract(isAddress(inputToken) ? inputToken : undefined) const contractETH = useSwapETHContract(isAddress(inputToken) ? inputToken : undefined) return useMemo(() => { // console.log(inputToken) - if ( - !chainId - || !toAddress - || !toChainID - || !library - || !receiveAddress - ) return NOT_APPLICABLE + if (!chainId || !toAddress || !toChainID || !library || !receiveAddress) return NOT_APPLICABLE // console.log(typedValue) // console.log(toChainID) @@ -683,7 +777,7 @@ export function useBridgeNativeCallback( ? async () => { try { console.log(txnsType) - let txReceipt:any + let txReceipt: any if (txnsType === 'swapin') { if (isAddress(inputToken)) { if (contractETH) { @@ -692,13 +786,13 @@ export function useBridgeNativeCallback( return } } else { - const data:any = { + const data: any = { from: account, to: toAddress, - value: `0x${inputAmount.raw.toString(16)}`, + value: `0x${inputAmount.raw.toString(16)}` } const hash = await library.send('eth_sendTransaction', [data]) - txReceipt = hash && hash.toString().indexOf('0x') === 0 ? {hash} : '' + txReceipt = hash && hash.toString().indexOf('0x') === 0 ? { hash } : '' } } else { if (toChainID && isNaN(toChainID)) { @@ -716,7 +810,7 @@ export function useBridgeNativeCallback( } } console.log(txReceipt) - const txData:any = {hash: txReceipt?.hash} + const txData: any = { hash: txReceipt?.hash } if (txData.hash && account) { // addTransaction(txData, { summary: `Cross bridge ${inputAmount.toSignificant(6)} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}` }) addTransaction(txData, { @@ -757,9 +851,23 @@ export function useBridgeNativeCallback( } } : undefined, - inputError: sufficientBalance ? undefined : t('Insufficient', {symbol: symbol}) + inputError: sufficientBalance ? undefined : t('Insufficient', { symbol: symbol }) } - }, [chainId, inputCurrency, inputAmount, balance, addTransaction, t, txnsType, toAddress, inputToken, toChainID, pairid, library, receiveAddress]) + }, [ + chainId, + inputCurrency, + inputAmount, + balance, + addTransaction, + t, + txnsType, + toAddress, + inputToken, + toChainID, + pairid, + library, + receiveAddress + ]) } /** @@ -768,67 +876,59 @@ export function useBridgeNativeCallback( * @param inputCurrency 选定的输入货币 * @param typedValue 用户输入值 */ - export function useTerraCrossBridgeCallback( +export function useTerraCrossBridgeCallback( inputCurrency: Currency | undefined, - toAddress: string, + toAddress: string, typedValue: string | undefined, toChainID: any, inputToken: string | undefined, pairid: string | undefined, terraRecipient: string | undefined, Unit: any, - srcChainid: string | undefined, -// ): { execute?: undefined | (() => Promise); inputError?: string } { -): { - wrapType: WrapType; - onConnect?: undefined | (() => Promise); - balance?: any, - execute?: undefined | (() => Promise); - inputError?: string + srcChainid: string | undefined + // ): { execute?: undefined | (() => Promise); inputError?: string } { +): { + wrapType: WrapType + onConnect?: undefined | (() => Promise) + balance?: any + execute?: undefined | (() => Promise) + inputError?: string } { const { chainId, account } = useActiveWeb3React() const { t } = useTranslation() - const {onChangeViewDtil} = useTxnsDtilOpen() + const { onChangeViewDtil } = useTxnsDtilOpen() const connectedWallet = useConnectedWallet() const addTransaction = useTransactionAdder() const { post, connect } = useWallet() // const addPopup = useAddPopup() - const {getTerraBalances} = useTerraBalance() + const { getTerraBalances } = useTerraBalance() - const {getTerraFeeList} = useTerraSend() + const { getTerraFeeList } = useTerraSend() // console.log(gasFee) // console.log(connectedWallet) const [balance, setBalance] = useState() const [fee, setFee] = useState() - // console.log(balance) // 我们总是可以解析输入货币的金额,因为包装是1:1 - const inputAmount = useMemo(() => inputCurrency ? tryParseAmount3(typedValue, inputCurrency?.decimals) : undefined, [inputCurrency, typedValue]) + const inputAmount = useMemo( + () => (inputCurrency ? tryParseAmount3(typedValue, inputCurrency?.decimals) : undefined), + [inputCurrency, typedValue] + ) // console.log(inputCurrency) // console.log(inputAmount?.toSignificant(6)) // console.log(tryParseAmount3(typedValue, inputCurrency?.decimals)?.toSignificant(6)) useEffect(() => { - if ( - connectedWallet?.walletAddress - && toAddress - && Unit - && inputAmount - ) { + if (connectedWallet?.walletAddress && toAddress && Unit && inputAmount) { // console.log(inputAmount) - getTerraFeeList( - connectedWallet?.walletAddress, - toAddress, - Unit, - inputAmount - ).then((res) => { + getTerraFeeList(connectedWallet?.walletAddress, toAddress, Unit, inputAmount).then(res => { console.log(res) - let fee:any = '' - let tax:any = '' - let lunaFee:any = '' - res.map((item:any) => { + let fee: any = '' + let tax: any = '' + let lunaFee: any = '' + res.map((item: any) => { if (item.denom === Unit) { fee = item.fee tax = item.tax @@ -840,10 +940,7 @@ export function useBridgeNativeCallback( if (!fee) { fee = lunaFee } - const txFee = - tax?.amount.greaterThan(0) && fee - ? new StdFee(fee.gas, fee.amount.add(tax)) - : fee + const txFee = tax?.amount.greaterThan(0) && fee ? new StdFee(fee.gas, fee.amount.add(tax)) : fee // console.log(fee) // console.log(txFee) // setFee(fee.gas * 100) @@ -854,10 +951,20 @@ export function useBridgeNativeCallback( const fetchBalance = useCallback(() => { if (Unit && connectedWallet) { - getTerraBalances({terraWhiteList: [{ - token: Unit - }]}).then((res:any) => { - const bl = res[Unit] && inputCurrency ? new Fraction(JSBI.BigInt(res[Unit]), JSBI.exponentiate(JSBI.BigInt(10), JSBI.BigInt(inputCurrency?.decimals))) : undefined + getTerraBalances({ + terraWhiteList: [ + { + token: Unit + } + ] + }).then((res: any) => { + const bl = + res[Unit] && inputCurrency + ? new Fraction( + JSBI.BigInt(res[Unit]), + JSBI.exponentiate(JSBI.BigInt(10), JSBI.BigInt(inputCurrency?.decimals)) + ) + : undefined setBalance(bl) }) } else { @@ -868,23 +975,27 @@ export function useBridgeNativeCallback( fetchBalance() }, [Unit, fetchBalance]) - const sendTx = useCallback(() => { // console.log(connectedWallet) - if (!connectedWallet || !account || !inputAmount || ConnectType.CHROME_EXTENSION !== connectedWallet.connectType || !terraRecipient || !Unit || !fee) return - const send:any = new MsgSend( - connectedWallet?.walletAddress, - toAddress, - { [Unit]: inputAmount } + if ( + !connectedWallet || + !account || + !inputAmount || + ConnectType.CHROME_EXTENSION !== connectedWallet.connectType || + !terraRecipient || + !Unit || + !fee ) - + return + const send: any = new MsgSend(connectedWallet?.walletAddress, toAddress, { [Unit]: inputAmount }) + // const gasFee:any = new StdFee(fee, new Coins({ [Unit]: fee })) - const gasFee:any = fee + const gasFee: any = fee return post({ msgs: [send], fee: gasFee, - memo: terraRecipient, + memo: terraRecipient }) }, [connectedWallet, account, inputAmount, toAddress, terraRecipient, Unit, fee]) @@ -902,7 +1013,11 @@ export function useBridgeNativeCallback( // console.log(typedValue) let sufficientBalance = false try { - sufficientBalance = inputCurrency && typedValue && balance && (Number(balance?.toSignificant(inputCurrency?.decimals)) > Number(typedValue)) + sufficientBalance = + inputCurrency && + typedValue && + balance && + Number(balance?.toSignificant(inputCurrency?.decimals)) > Number(typedValue) } catch (error) { console.log(error) } @@ -915,56 +1030,69 @@ export function useBridgeNativeCallback( connect(ConnectType.CHROME_EXTENSION) }, balance, - execute: - inputAmount - ? async () => { - try { - // console.log(12) - const txReceipt:any = await sendTx() - console.log(txReceipt) - if (txReceipt) { - const hash = txReceipt?.result?.txhash - const txData:any = {hash: hash} - addTransaction(txData, { - summary: `Cross bridge ${typedValue} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}`, - value: typedValue, - toChainId: toChainID, - toAddress: terraRecipient?.toLowerCase(), + execute: inputAmount + ? async () => { + try { + // console.log(12) + const txReceipt: any = await sendTx() + console.log(txReceipt) + if (txReceipt) { + const hash = txReceipt?.result?.txhash + const txData: any = { hash: hash } + addTransaction(txData, { + summary: `Cross bridge ${typedValue} ${config.getBaseCoin(inputCurrency?.symbol, chainId)}`, + value: typedValue, + toChainId: toChainID, + toAddress: terraRecipient?.toLowerCase(), + symbol: inputCurrency?.symbol, + version: 'swapin', + routerToken: '', + token: inputCurrency?.address, + logoUrl: inputCurrency?.logoUrl, + underlying: inputCurrency?.underlying + }) + if (txData.hash && account && terraRecipient) { + const data: any = { + hash: txData.hash?.toLowerCase(), + chainId: srcChainid, + selectChain: toChainID, + account: connectedWallet?.walletAddress, + value: inputAmount, + formatvalue: typedValue, + to: terraRecipient, symbol: inputCurrency?.symbol, version: 'swapin', - routerToken: '', - token: inputCurrency?.address, - logoUrl: inputCurrency?.logoUrl, - underlying: inputCurrency?.underlying - }) - if (txData.hash && account && terraRecipient) { - const data:any = { - hash: txData.hash?.toLowerCase(), - chainId: srcChainid, - selectChain: toChainID, - account: connectedWallet?.walletAddress, - value: inputAmount, - formatvalue: typedValue, - to: terraRecipient, - symbol: inputCurrency?.symbol, - version: 'swapin', - pairid: pairid, - } - recordsTxns(data) + pairid: pairid } - onChangeViewDtil(txData?.hash, true) - } - } catch (error) { - const err:any = error - if (err) { - // console.log(err) - alert(err.toString()) + recordsTxns(data) } - console.log('Could not swapout', error) + onChangeViewDtil(txData?.hash, true) + } + } catch (error) { + const err: any = error + if (err) { + // console.log(err) + alert(err.toString()) } + console.log('Could not swapout', error) } - : undefined, - inputError: sufficientBalance ? undefined : t('Insufficient', {symbol: inputCurrency?.symbol}) + } + : undefined, + inputError: sufficientBalance ? undefined : t('Insufficient', { symbol: inputCurrency?.symbol }) } - }, [chainId, inputCurrency, inputAmount, t, toAddress, inputToken, toChainID, terraRecipient, connectedWallet, pairid, srcChainid, balance, sendTx]) -} \ No newline at end of file + }, [ + chainId, + inputCurrency, + inputAmount, + t, + toAddress, + inputToken, + toChainID, + terraRecipient, + connectedWallet, + pairid, + srcChainid, + balance, + sendTx + ]) +} diff --git a/src/pages/App.tsx b/src/pages/App.tsx index 5cd8c234..801f296e 100644 --- a/src/pages/App.tsx +++ b/src/pages/App.tsx @@ -34,6 +34,7 @@ import QueryNonApprove from '../components/NonApprove/queryIsNeedNonApprove' import config from '../config' import farmlist from '../config/farmlist' + // console.log(ANYFarming) const AppWrapper = styled.div` // display: flex; @@ -169,28 +170,37 @@ export default function App() { } /> } /> } /> - } /> - } + exact + strict + path={config.getCurConfigInfo().isOpenBridge ? '/v1/router' : '/swap'} + component={() => } /> - { - Object.keys(farmlist).map((key, index) => { - if (farmlist[key].farmtype === 'noany') { - return ( - } key={index} /> - ) - } + + } /> + {Object.keys(farmlist).map((key, index) => { + if (farmlist[key].farmtype === 'noany') { return ( - } key={index} /> + } + key={index} + /> ) - }) - } + } + return ( + } + key={index} + /> + ) + })} - diff --git a/yarn.lock b/yarn.lock index ffb1c9e5..5dcc92e2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2475,7 +2475,17 @@ "@babel/runtime" "^7.7.2" regenerator-runtime "^0.13.3" -"@json-rpc-tools/types@^1.6.1": +"@json-rpc-tools/provider@^1.5.5": + version "1.7.6" + resolved "https://r2.cnpmjs.org/@json-rpc-tools/provider/-/provider-1.7.6.tgz#8a17c34c493fa892632e278fd9331104e8491ec6" + integrity sha512-z7D3xvJ33UfCGv77n40lbzOYjZKVM3k2+5cV7xS8G6SCvKTzMkhkUYuD/qzQUNT4cG/lv0e9mRToweEEVLVVmA== + dependencies: + "@json-rpc-tools/utils" "^1.7.6" + axios "^0.21.0" + safe-json-utils "^1.1.1" + ws "^7.4.0" + +"@json-rpc-tools/types@^1.6.1", "@json-rpc-tools/types@^1.7.6": version "1.7.6" resolved "https://registry.npmjs.org/@json-rpc-tools/types/-/types-1.7.6.tgz#5abd5fde01364a130c46093b501715bcce5bdc0e" integrity sha512-nDSqmyRNEqEK9TZHtM15uNnDljczhCUdBmRhpNZ95bIPKEDQ+nTDmGMFd2lLin3upc5h2VVVd9tkTDdbXUhDIQ== @@ -2489,6 +2499,14 @@ dependencies: "@json-rpc-tools/types" "^1.6.1" +"@json-rpc-tools/utils@^1.7.6": + version "1.7.6" + resolved "https://r2.cnpmjs.org/@json-rpc-tools/utils/-/utils-1.7.6.tgz#67f04987dbaa2e7adb6adff1575367b75a9a9ba1" + integrity sha512-HjA8x/U/Q78HRRe19yh8HVKoZ+Iaoo3YZjakJYxR+rw52NHo6jM+VE9b8+7ygkCFXl/EHID5wh/MkXaE/jGyYw== + dependencies: + "@json-rpc-tools/types" "^1.7.6" + "@pedrouid/environment" "^1.0.1" + "@makerdao/multicall@^0.12.0": version "0.12.0" resolved "https://registry.npmjs.org/@makerdao/multicall/-/multicall-0.12.0.tgz#490cb2698c8748b132bfdf59c79d7ef2598880b1" @@ -2503,7 +2521,7 @@ lodash "^4.17.11" ws "^7.2.0" -"@metamask/safe-event-emitter@^2.0.0": +"@metamask/safe-event-emitter@2.0.0", "@metamask/safe-event-emitter@^2.0.0": version "2.0.0" resolved "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz#af577b477c683fad17c619a78208cede06f9605c" integrity sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q== @@ -2563,6 +2581,59 @@ resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.9.2.tgz#adea7b6953cbb34651766b0548468e743c6a2353" integrity sha512-VZMYa7+fXHdwIq1TDhSXoVmSPEGM/aa+6Aiq3nVVJ9bXr24zScr+NlKFKC3iPljA7ho/GAZr+d2jOf5GIRC30Q== +"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2": + version "1.1.2" + resolved "https://r2.cnpmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf" + integrity sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ== + +"@protobufjs/base64@^1.1.2": + version "1.1.2" + resolved "https://r2.cnpmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz#4c85730e59b9a1f1f349047dbf24296034bb2735" + integrity sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg== + +"@protobufjs/codegen@^2.0.4": + version "2.0.4" + resolved "https://r2.cnpmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz#7ef37f0d010fb028ad1ad59722e506d9262815cb" + integrity sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg== + +"@protobufjs/eventemitter@^1.1.0": + version "1.1.0" + resolved "https://r2.cnpmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz#355cbc98bafad5978f9ed095f397621f1d066b70" + integrity sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q== + +"@protobufjs/fetch@^1.1.0": + version "1.1.0" + resolved "https://r2.cnpmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz#ba99fb598614af65700c1619ff06d454b0d84c45" + integrity sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ== + dependencies: + "@protobufjs/aspromise" "^1.1.1" + "@protobufjs/inquire" "^1.1.0" + +"@protobufjs/float@^1.0.2": + version "1.0.2" + resolved "https://r2.cnpmjs.org/@protobufjs/float/-/float-1.0.2.tgz#5e9e1abdcb73fc0a7cb8b291df78c8cbd97b87d1" + integrity sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ== + +"@protobufjs/inquire@^1.1.0": + version "1.1.0" + resolved "https://r2.cnpmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz#ff200e3e7cf2429e2dcafc1140828e8cc638f089" + integrity sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q== + +"@protobufjs/path@^1.1.2": + version "1.1.2" + resolved "https://r2.cnpmjs.org/@protobufjs/path/-/path-1.1.2.tgz#6cc2b20c5c9ad6ad0dccfd21ca7673d8d7fbf68d" + integrity sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA== + +"@protobufjs/pool@^1.1.0": + version "1.1.0" + resolved "https://r2.cnpmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz#09fd15f2d6d3abfa9b65bc366506d6ad7846ff54" + integrity sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw== + +"@protobufjs/utf8@^1.1.0": + version "1.1.0" + resolved "https://r2.cnpmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570" + integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw== + "@reach/dialog@^0.10.3": version "0.10.5" resolved "https://registry.npmjs.org/@reach/dialog/-/dialog-0.10.5.tgz#70bd832616fc2b0f31ed65aff81ae9e218c4dbc4" @@ -2981,6 +3052,34 @@ utf-8-validate "^5.0.5" ws "^7.4.2" +"@terra-money/terra.js@^3.0.1": + version "3.0.7" + resolved "https://r.cnpmjs.org/@terra-money/terra.js/-/terra.js-3.0.7.tgz#9c413f16da3f54195ee8d7d3e113a8fc5107200b" + integrity sha512-moeVBWqIPZaV0HmCY127Y9H/MsuFtH1VgW0xEvDQWqu1jpKhK5CtPHMLKNje3mKSjU8A7vXZ8hlW3KobqP2poQ== + dependencies: + "@terra-money/terra.proto" "^0.1.7" + axios "^0.24.0" + bech32 "^2.0.0" + bip32 "^2.0.6" + bip39 "^3.0.3" + bufferutil "^4.0.3" + decimal.js "^10.2.1" + jscrypto "^1.0.1" + readable-stream "^3.6.0" + secp256k1 "^4.0.2" + tmp "^0.2.1" + utf-8-validate "^5.0.5" + ws "^7.5.5" + +"@terra-money/terra.proto@^0.1.7": + version "0.1.7" + resolved "https://r2.cnpmjs.org/@terra-money/terra.proto/-/terra.proto-0.1.7.tgz#59c18f30da10d43200bab3ba8feb5b17e43a365f" + integrity sha512-NXD7f6pQCulvo6+mv6MAPzhOkUzRjgYVuHZE/apih+lVnPG5hDBU0rRYnOGGofwvKT5/jQoOENnFn/gioWWnyQ== + dependencies: + google-protobuf "^3.17.3" + long "^4.0.0" + protobufjs "~6.11.2" + "@terra-money/wallet-provider@^1.2.4": version "1.2.4" resolved "https://registry.nlark.com/@terra-money/wallet-provider/download/@terra-money/wallet-provider-1.2.4.tgz#4663e20bdbdf73d633ce5a3fb4089992ce777ab2" @@ -3141,6 +3240,11 @@ resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.170.tgz#0d67711d4bf7f4ca5147e9091b847479b87925d6" integrity sha512-bpcvu/MKHHeYX+qeEN8GE7DIravODWdACVA1ctevD8CN24RhPZIKMn9ntfAsrvLfSX3cR5RrBKAbYm9bGs0A+Q== +"@types/long@^4.0.1": + version "4.0.1" + resolved "https://r2.cnpmjs.org/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9" + integrity sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w== + "@types/luxon@^1.24.4": version "1.26.5" resolved "https://registry.npmjs.org/@types/luxon/-/luxon-1.26.5.tgz#843fb705e16e4d2a90847a351b799ea9d879859e" @@ -3173,6 +3277,11 @@ resolved "https://registry.nlark.com/@types/node/download/@types/node-11.11.6.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-11.11.6.tgz#df929d1bb2eee5afdda598a41930fe50b43eaa6a" integrity sha1-35KdG7Lu5a/dpZikGTD+ULQ+qmo= +"@types/node@>=13.7.0": + version "17.0.19" + resolved "https://r.cnpmjs.org/@types/node/-/node-17.0.19.tgz#726171367f404bfbe8512ba608a09ebad810c7e6" + integrity sha512-PfeQhvcMR4cPFVuYfBN4ifG7p9c+Dlh3yUZR6k+5yQK7wX3gDgVxBly4/WkBRs9x4dmcy1TVl08SY67wwtEvmA== + "@types/node@^10.11.7": version "10.17.60" resolved "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz#35f3d6213daed95da7f0f73e75bcc6980e90597b" @@ -3489,6 +3598,17 @@ window-getters "1.0.0" window-metadata "1.0.0" +"@walletconnect/browser-utils@^1.7.1": + version "1.7.1" + resolved "https://r.cnpmjs.org/@walletconnect/browser-utils/-/browser-utils-1.7.1.tgz#2a28846cd4d73166debbbf7d470e78ba25616f5e" + integrity sha512-y6KvxPhi52sWzS0/HtA3EhdgmtG8mXcxdc26YURDOVC/BJh3MxV8E16JFrT4InylOqYJs6dcSLWVfcnJaiPtZw== + dependencies: + "@walletconnect/safe-json" "1.0.0" + "@walletconnect/types" "^1.7.1" + "@walletconnect/window-getters" "1.0.0" + "@walletconnect/window-metadata" "1.0.0" + detect-browser "5.2.0" + "@walletconnect/client@^1.1.1-alpha.0": version "1.4.1" resolved "https://registry.npmjs.org/@walletconnect/client/-/client-1.4.1.tgz#c9c50df5afde23a35e23d96fe6d207c102e53850" @@ -3499,6 +3619,16 @@ "@walletconnect/types" "^1.4.1" "@walletconnect/utils" "^1.4.1" +"@walletconnect/client@^1.7.1": + version "1.7.1" + resolved "https://r.cnpmjs.org/@walletconnect/client/-/client-1.7.1.tgz#aaa74199bdc0605db9ac2ecdf8a463b271586d3b" + integrity sha512-xD8B8s1hL7Z5vJwb3L0u1bCVAk6cRQfIY9ycymf7KkmIhkAONQJNf2Y0C0xIpbPp2fdn9VwnSfLm5Ed/Ht/1IA== + dependencies: + "@walletconnect/core" "^1.7.1" + "@walletconnect/iso-crypto" "^1.7.1" + "@walletconnect/types" "^1.7.1" + "@walletconnect/utils" "^1.7.1" + "@walletconnect/core@^1.4.1": version "1.4.1" resolved "https://registry.npmjs.org/@walletconnect/core/-/core-1.4.1.tgz#68310ee7c9737a7a0a7f1308abbfc1c31212b9a6" @@ -3508,6 +3638,53 @@ "@walletconnect/types" "^1.4.1" "@walletconnect/utils" "^1.4.1" +"@walletconnect/core@^1.7.1": + version "1.7.1" + resolved "https://r.cnpmjs.org/@walletconnect/core/-/core-1.7.1.tgz#321c14d63af81241658b028022e0e5fa6dc7f374" + integrity sha512-qO+4wykyRNiq3HEuaAA2pW2PDnMM4y7pyPAgiCwfHiqF4PpWvtcdB301hI0K5am9ghuqKZMy1HlE9LWNOEBvcw== + dependencies: + "@walletconnect/socket-transport" "^1.7.1" + "@walletconnect/types" "^1.7.1" + "@walletconnect/utils" "^1.7.1" + +"@walletconnect/crypto@^1.0.1": + version "1.0.1" + resolved "https://r2.cnpmjs.org/@walletconnect/crypto/-/crypto-1.0.1.tgz#d4c1b1cd5dd1be88fe9a82dfc54cadbbb3f9d325" + integrity sha512-IgUReNrycIFxkGgq8YT9HsosCkhutakWD9Q411PR0aJfxpEa/VKJeaLRtoz6DvJpztWStwhIHnAbBoOVR72a6g== + dependencies: + "@walletconnect/encoding" "^1.0.0" + "@walletconnect/environment" "^1.0.0" + "@walletconnect/randombytes" "^1.0.1" + aes-js "^3.1.2" + hash.js "^1.1.7" + +"@walletconnect/encoding@^1.0.0": + version "1.0.0" + resolved "https://r2.cnpmjs.org/@walletconnect/encoding/-/encoding-1.0.0.tgz#e24190cb5e803526f9dfd7191fb0e4dc53c6d864" + integrity sha512-4nkJFnS0QF5JdieG/3VPD1/iEWkLSZ14EBInLZ00RWxmC6EMZrzAeHNAWIgm+xP3NK0lqz+7lEsmWGtcl5gYnQ== + dependencies: + is-typedarray "1.0.0" + typedarray-to-buffer "3.1.5" + +"@walletconnect/environment@^1.0.0": + version "1.0.0" + resolved "https://r2.cnpmjs.org/@walletconnect/environment/-/environment-1.0.0.tgz#c4545869fa9c389ec88c364e1a5f8178e8ab5034" + integrity sha512-4BwqyWy6KpSvkocSaV7WR3BlZfrxLbJSLkg+j7Gl6pTDE+U55lLhJvQaMuDVazXYxcjBsG09k7UlH7cGiUI5vQ== + +"@walletconnect/ethereum-provider@^1.5.4": + version "1.7.1" + resolved "https://r.cnpmjs.org/@walletconnect/ethereum-provider/-/ethereum-provider-1.7.1.tgz#706bbb18659bd6475750fed7e5a93438c97a9fa9" + integrity sha512-r01XPO8NHs0n/rjU77VXXgCtxC/hL8F34bu+UHGXmkMUHZGCSY2uKN4VCe2uptkCVYUQ9gCEDyCOUyQSQzULjw== + dependencies: + "@walletconnect/client" "^1.7.1" + "@walletconnect/jsonrpc-http-connection" "^1.0.0" + "@walletconnect/jsonrpc-provider" "^1.0.0" + "@walletconnect/signer-connection" "^1.7.1" + "@walletconnect/types" "^1.7.1" + "@walletconnect/utils" "^1.7.1" + eip1193-provider "1.0.1" + eventemitter3 "4.0.7" + "@walletconnect/http-connection@^1.1.1-alpha.0": version "1.4.1" resolved "https://registry.npmjs.org/@walletconnect/http-connection/-/http-connection-1.4.1.tgz#a36d3645eea2606c876e3824b7d46549bf237833" @@ -3527,6 +3704,47 @@ "@walletconnect/types" "^1.4.1" "@walletconnect/utils" "^1.4.1" +"@walletconnect/iso-crypto@^1.7.1": + version "1.7.1" + resolved "https://r.cnpmjs.org/@walletconnect/iso-crypto/-/iso-crypto-1.7.1.tgz#c463bb5874686c2f21344e2c7f3cf4d71c34ca70" + integrity sha512-qMiW0kLN6KCjnLMD50ijIj1lQqjNjGszGUwrSVUiS2/Dp4Ecx+4QEtHbmVwGEkfx4kelYPFpDJV3ZJpQ4Kqg/g== + dependencies: + "@walletconnect/crypto" "^1.0.1" + "@walletconnect/types" "^1.7.1" + "@walletconnect/utils" "^1.7.1" + +"@walletconnect/jsonrpc-http-connection@^1.0.0": + version "1.0.0" + resolved "https://r2.cnpmjs.org/@walletconnect/jsonrpc-http-connection/-/jsonrpc-http-connection-1.0.0.tgz#5bbdfbaf6d6519b3c08e492a6badb7460ab5ecd0" + integrity sha512-fmBTox7Zo9Tb8wzKpnOgYl5cYPu+2xXifNMDYMRGkWDAygXBzRzmfdhk7OowCkSXeh8aDhE5eFtMk+u8MOmntg== + dependencies: + "@walletconnect/jsonrpc-utils" "^1.0.0" + "@walletconnect/safe-json" "^1.0.0" + cross-fetch "^3.1.4" + +"@walletconnect/jsonrpc-provider@^1.0.0": + version "1.0.0" + resolved "https://r2.cnpmjs.org/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.0.tgz#066ee5a8a8554c55ea68f9ebf6fe8f96cdb66e7e" + integrity sha512-ZVe23tYT0LdykZ/denBdkKCjBC13fnpj8MiKFuvUl0idBv1PiYKYJR3LVJHy8+7zk0lBbDH3hBNrbMt/K4kjcw== + dependencies: + "@walletconnect/jsonrpc-utils" "^1.0.0" + "@walletconnect/safe-json" "^1.0.0" + +"@walletconnect/jsonrpc-types@^1.0.0": + version "1.0.0" + resolved "https://r2.cnpmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.0.tgz#fa75ad5e8f106a2e33287b1e6833e22ed0225055" + integrity sha512-11QXNq5H1PKZk7bP8SxgmCw3HRaDuPOVE+wObqEvmhc7OWYUZqfuaaMb+OXGRSOHL3sbC+XHfdeCxFTMXSFyng== + dependencies: + keyvaluestorage-interface "^1.0.0" + +"@walletconnect/jsonrpc-utils@^1.0.0": + version "1.0.0" + resolved "https://r2.cnpmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.0.tgz#1a2f668d606e8f0b6e7d8fdebae86001bd037a3f" + integrity sha512-qUHbKUK6sHeHn67qtHZoLoYk5hS6x1arTPjKDRkY93/6Fx+ZmNIpdm1owX3l6aYueyegJ7mz43FpvYHUqJ8xcw== + dependencies: + "@walletconnect/environment" "^1.0.0" + "@walletconnect/jsonrpc-types" "^1.0.0" + "@walletconnect/mobile-registry@^1.4.0": version "1.4.0" resolved "https://registry.npmjs.org/@walletconnect/mobile-registry/-/mobile-registry-1.4.0.tgz#502cf8ab87330841d794819081e748ebdef7aee5" @@ -3543,6 +3761,44 @@ preact "10.4.1" qrcode "1.4.4" +"@walletconnect/qrcode-modal@^1.7.1": + version "1.7.1" + resolved "https://r.cnpmjs.org/@walletconnect/qrcode-modal/-/qrcode-modal-1.7.1.tgz#89b19c2eb6466ec237ccd597388d7a1b1b946067" + integrity sha512-m/4lSx3pgj8V2eHVJcGnxBKUSCNFtyVIcg5tqbSJHi9HjKIBxvRq4D5M4X4yEpgXYtRmTucihxNCrj2zQrmlSQ== + dependencies: + "@walletconnect/browser-utils" "^1.7.1" + "@walletconnect/mobile-registry" "^1.4.0" + "@walletconnect/types" "^1.7.1" + copy-to-clipboard "^3.3.1" + preact "10.4.1" + qrcode "1.4.4" + +"@walletconnect/randombytes@^1.0.1": + version "1.0.1" + resolved "https://r2.cnpmjs.org/@walletconnect/randombytes/-/randombytes-1.0.1.tgz#87f0f02d9206704ce1c9e23f07d3b28898c48385" + integrity sha512-YJTyq69i0PtxVg7osEpKfvjTaWuAsR49QEcqGKZRKVQWMbGXBZ65fovemK/SRgtiFRv0V8PwsrlKSheqzfPNcg== + dependencies: + "@walletconnect/encoding" "^1.0.0" + "@walletconnect/environment" "^1.0.0" + randombytes "^2.1.0" + +"@walletconnect/safe-json@1.0.0", "@walletconnect/safe-json@^1.0.0": + version "1.0.0" + resolved "https://r2.cnpmjs.org/@walletconnect/safe-json/-/safe-json-1.0.0.tgz#12eeb11d43795199c045fafde97e3c91646683b2" + integrity sha512-QJzp/S/86sUAgWY6eh5MKYmSfZaRpIlmCJdi5uG4DJlKkZrHEF7ye7gA+VtbVzvTtpM/gRwO2plQuiooIeXjfg== + +"@walletconnect/signer-connection@^1.7.1": + version "1.7.1" + resolved "https://r.cnpmjs.org/@walletconnect/signer-connection/-/signer-connection-1.7.1.tgz#77d36fd7ca96c4ffc67ae649826b519b4a14ec8e" + integrity sha512-eEGahkxQP+uFRrUAU4qKXRmTR2jZTG6vtUOQAasSbq346NDCLF4oM9ZqLBwKX/JrAE2bdap+UBgDlb5zebUUWQ== + dependencies: + "@walletconnect/client" "^1.7.1" + "@walletconnect/jsonrpc-types" "^1.0.0" + "@walletconnect/jsonrpc-utils" "^1.0.0" + "@walletconnect/qrcode-modal" "^1.7.1" + "@walletconnect/types" "^1.7.1" + eventemitter3 "4.0.7" + "@walletconnect/socket-transport@^1.4.1": version "1.4.1" resolved "https://registry.npmjs.org/@walletconnect/socket-transport/-/socket-transport-1.4.1.tgz#d9b7ebb9a2843cc44cf96c880c62be78d4a1625f" @@ -3552,11 +3808,25 @@ "@walletconnect/utils" "^1.4.1" ws "7.3.0" +"@walletconnect/socket-transport@^1.7.1": + version "1.7.1" + resolved "https://r.cnpmjs.org/@walletconnect/socket-transport/-/socket-transport-1.7.1.tgz#cc4c8dcf21c40b805812ecb066b2abb156fdb146" + integrity sha512-Gu1RPro0eLe+HHtLhq/1T5TNFfO/HW2z3BnWuUYuJ/F8w1U9iK7+4LMHe+LTgwgWy9Ybcb2k0tiO5e3LgjHBHQ== + dependencies: + "@walletconnect/types" "^1.7.1" + "@walletconnect/utils" "^1.7.1" + ws "7.5.3" + "@walletconnect/types@^1.1.1-alpha.0", "@walletconnect/types@^1.4.1": version "1.4.1" resolved "https://registry.npmjs.org/@walletconnect/types/-/types-1.4.1.tgz#48297238b86f846b8c694504ca45f0059a2cca88" integrity sha512-lzS9NbXjVb5N+W/UnCZAflxjLtYepUi4ev1IeFozSvr/cWxAhEe/sjixe7WEIpYklW27kfBhKccMH/KjUoRC7w== +"@walletconnect/types@^1.7.1": + version "1.7.1" + resolved "https://r.cnpmjs.org/@walletconnect/types/-/types-1.7.1.tgz#86cc3832e02415dc9f518f3dcb5366722afbfc03" + integrity sha512-X0NunEUgq46ExDcKo7BnnFpFhuZ89bZ04/1FtohNziBWcP2Mblp2yf+FN7iwmZiuZ3bRTb8J1O4oJH2JGP9I7A== + "@walletconnect/utils@^1.1.1-alpha.0", "@walletconnect/utils@^1.4.1": version "1.4.1" resolved "https://registry.npmjs.org/@walletconnect/utils/-/utils-1.4.1.tgz#86108470c211a02609274a6c7bbd516c5182a22e" @@ -3570,7 +3840,20 @@ js-sha3 "0.8.0" query-string "6.13.5" -"@walletconnect/web3-provider@1.1.1-alpha.0", "@walletconnect/web3-provider@^1.4.1": +"@walletconnect/utils@^1.7.1": + version "1.7.1" + resolved "https://r.cnpmjs.org/@walletconnect/utils/-/utils-1.7.1.tgz#f858d5f22425a4c2da2a28ae493bde7f2eecf815" + integrity sha512-7Lig9rruqTMaFuwEhBrArq1QgzIf2NuzO6J3sCUYCZh60EQ7uIZjekaDonQjiQJAbfYcgWUBm8qa0PG1TzYN3Q== + dependencies: + "@walletconnect/browser-utils" "^1.7.1" + "@walletconnect/encoding" "^1.0.0" + "@walletconnect/jsonrpc-utils" "^1.0.0" + "@walletconnect/types" "^1.7.1" + bn.js "4.11.8" + js-sha3 "0.8.0" + query-string "6.13.5" + +"@walletconnect/web3-provider@1.1.1-alpha.0": version "1.1.1-alpha.0" resolved "https://registry.npmjs.org/@walletconnect/web3-provider/-/web3-provider-1.1.1-alpha.0.tgz#b8ca2158da4974b692f57e4f939b5128d8e4696f" integrity sha512-1AoTeCOtK8u2jIH+0NsvisPv2TySZLWHwWu0BIb72wzvzJeG3uD383/stHX8mBOI6a0aPoyDEYzA2R4c/O0vWQ== @@ -3582,6 +3865,18 @@ "@walletconnect/utils" "^1.1.1-alpha.0" web3-provider-engine "15.0.12" +"@walletconnect/window-getters@1.0.0", "@walletconnect/window-getters@^1.0.0": + version "1.0.0" + resolved "https://r2.cnpmjs.org/@walletconnect/window-getters/-/window-getters-1.0.0.tgz#1053224f77e725dfd611c83931b5f6c98c32bfc8" + integrity sha512-xB0SQsLaleIYIkSsl43vm8EwETpBzJ2gnzk7e0wMF3ktqiTGS6TFHxcprMl5R44KKh4tCcHCJwolMCaDSwtAaA== + +"@walletconnect/window-metadata@1.0.0": + version "1.0.0" + resolved "https://r2.cnpmjs.org/@walletconnect/window-metadata/-/window-metadata-1.0.0.tgz#93b1cc685e6b9b202f29c26be550fde97800c4e5" + integrity sha512-9eFvmJxIKCC3YWOL97SgRkKhlyGXkrHwamfechmqszbypFspaSk+t2jQXAEU7YClHF6Qjw5eYOmy1//zFi9/GA== + dependencies: + "@walletconnect/window-getters" "^1.0.0" + "@web3-react/abstract-connector@^6.0.7": version "6.0.7" resolved "https://registry.npmjs.org/@web3-react/abstract-connector/-/abstract-connector-6.0.7.tgz#401b3c045f1e0fab04256311be49d5144e9badc6" @@ -3614,16 +3909,25 @@ resolved "https://registry.npmjs.org/@web3-react/types/-/types-6.0.7.tgz#34a6204224467eedc6123abaf55fbb6baeb2809f" integrity sha512-ofGmfDhxmNT1/P/MgVa8IKSkCStFiyvXe+U5tyZurKdrtTDFU+wJ/LxClPDtFerWpczNFPUSrKcuhfPX1sI6+A== -"@web3-react/walletconnect-connector@^6.1.1": - version "6.2.0" - resolved "https://registry.npmjs.org/@web3-react/walletconnect-connector/-/walletconnect-connector-6.2.0.tgz#5451f332a25b94cf7e615a20cc7d22a27532629d" - integrity sha512-F6xYwI3MKiSdKa0248y2wBW0kTDddc2/IGn4CjMSYe0DJFggtxFsAAGHQTRmvwDcLlgQwtemJJ0cTA82MOVfEg== +"@web3-react/walletconnect-connector@^7.0.2-alpha.0": + version "7.0.2-alpha.0" + resolved "https://r2.cnpmjs.org/@web3-react/walletconnect-connector/-/walletconnect-connector-7.0.2-alpha.0.tgz#dacd59db626b42137a1e4f34ea23ef1f04cc8b99" + integrity sha512-Qr+AecDt5/gbAb8sFfW5kbMo0nberCAU/6AB9KmmwCm2YGEEqJrj8fW3Kin7SGxv8pgDxgXwPYsW7qMUzayXEQ== dependencies: - "@walletconnect/web3-provider" "^1.4.1" + "@walletconnect/ethereum-provider" "^1.5.4" "@web3-react/abstract-connector" "^6.0.7" "@web3-react/types" "^6.0.7" tiny-invariant "^1.0.6" +"@web3-react/walletlink-connector@^6.2.8": + version "6.2.12" + resolved "https://r.cnpmjs.org/@web3-react/walletlink-connector/-/walletlink-connector-6.2.12.tgz#dd68c4d880872f5906b78208ffbcaed4b63f7750" + integrity sha512-FNwSc/AlSvdUdI6bhiyBr21X6C7irJswO3m6rLTqlimm65L8NrZS+3FYE257tM4op94pSoHr1IHpUqA/ls/4VQ== + dependencies: + "@web3-react/abstract-connector" "^6.0.7" + "@web3-react/types" "^6.0.7" + walletlink "^2.4.7" + "@webassemblyjs/ast@1.8.5": version "1.8.5" resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz#51b1c5fe6576a34953bf4b253df9f0d490d9e359" @@ -3943,6 +4247,13 @@ ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: dependencies: type-fest "^0.21.3" +ansi-gray@^0.1.1: + version "0.1.1" + resolved "https://r2.cnpmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz#2962cf54ec9792c48510a3deb524436861ef7251" + integrity sha512-HrgGIZUl8h2EHuZaU9hTR/cU5nhKxpVE1V6kdGsQ8e4zirElJ5fvtfc8N7Q1oq1aatO275i8pUFUCpNWCAnVWw== + dependencies: + ansi-wrap "0.1.0" + ansi-html@0.0.7: version "0.0.7" resolved "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" @@ -3987,6 +4298,11 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" +ansi-wrap@0.1.0: + version "0.1.0" + resolved "https://r2.cnpmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" + integrity sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw== + any-base@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/any-base/-/any-base-1.1.0.tgz#ae101a62bc08a597b4c9ab5b7089d456630549fe" @@ -4036,6 +4352,11 @@ arch@^2.1.0, arch@^2.1.2, arch@^2.2.0: resolved "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz#1bc47818f305764f23ab3306b0bfc086c5a29d11" integrity sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ== +archy@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" + integrity sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw== + arg@2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/arg/-/arg-2.0.0.tgz#c06e7ff69ab05b3a4a03ebe0407fac4cba657545" @@ -4084,6 +4405,16 @@ arr-union@^3.1.0: resolved "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= +array-differ@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" + integrity sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ== + +array-each@^1.0.1: + version "1.0.1" + resolved "https://r2.cnpmjs.org/array-each/-/array-each-1.0.1.tgz#a794af0c05ab1752846ee753a1f211a05ba0c44f" + integrity sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA== + array-equal@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" @@ -4110,6 +4441,11 @@ array-includes@^3.0.3, array-includes@^3.1.1, array-includes@^3.1.2, array-inclu get-intrinsic "^1.1.1" is-string "^1.0.5" +array-slice@^1.0.0: + version "1.1.0" + resolved "https://r2.cnpmjs.org/array-slice/-/array-slice-1.1.0.tgz#e368ea15f89bc7069f7ffb89aec3a6c7d4ac22d4" + integrity sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w== + array-union@^1.0.1: version "1.0.2" resolved "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" @@ -4117,7 +4453,7 @@ array-union@^1.0.1: dependencies: array-uniq "^1.0.1" -array-uniq@^1.0.1: +array-uniq@^1.0.1, array-uniq@^1.0.2: version "1.0.3" resolved "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= @@ -4146,7 +4482,7 @@ array.prototype.flatmap@^1.2.4: es-abstract "^1.18.0-next.1" function-bind "^1.1.1" -arrify@^1.0.1: +arrify@^1.0.0, arrify@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= @@ -4297,6 +4633,21 @@ aws4@^1.8.0: resolved "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== +axios@^0.18.0: + version "0.18.1" + resolved "https://r2.cnpmjs.org/axios/-/axios-0.18.1.tgz#ff3f0de2e7b5d180e757ad98000f1081b87bcea3" + integrity sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g== + dependencies: + follow-redirects "1.5.10" + is-buffer "^2.0.2" + +axios@^0.21.0: + version "0.21.4" + resolved "https://r2.cnpmjs.org/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" + integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== + dependencies: + follow-redirects "^1.14.0" + axios@^0.21.1: version "0.21.1" resolved "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8" @@ -4304,6 +4655,13 @@ axios@^0.21.1: dependencies: follow-redirects "^1.10.0" +axios@^0.24.0: + version "0.24.0" + resolved "https://r2.cnpmjs.org/axios/-/axios-0.24.0.tgz#804e6fa1e4b9c5288501dd9dff56a7a0940d20d6" + integrity sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA== + dependencies: + follow-redirects "^1.14.4" + axobject-query@^2.0.2: version "2.2.0" resolved "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz#943d47e10c0b704aa42275e20edf3722648989be" @@ -4588,16 +4946,31 @@ bech32@^2.0.0: resolved "https://registry.npm.taobao.org/bech32/download/bech32-2.0.0.tgz#078d3686535075c8c79709f054b1b226a133b355" integrity sha1-B402hlNQdcjHlwnwVLGyJqEzs1U= +beeper@^1.0.0: + version "1.1.1" + resolved "https://r2.cnpmjs.org/beeper/-/beeper-1.1.1.tgz#e6d5ea8c5dad001304a70b22638447f69cb2f809" + integrity sha512-3vqtKL1N45I5dV0RdssXZG7X6pCqQrWPNOlBPZPrd+QkE2HEhR57Z04m0KtpbsZH73j+a3F8UD1TQnn+ExTvIA== + big.js@^5.2.2: version "5.2.2" resolved "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== +bignumber.js@^5.0.0: + version "5.0.0" + resolved "https://r2.cnpmjs.org/bignumber.js/-/bignumber.js-5.0.0.tgz#fbce63f09776b3000a83185badcde525daf34833" + integrity sha512-KWTu6ZMVk9sxlDJQh2YH1UOnfDP8O8TpxUxgQG/vKASoSnEjK9aVuOueFaPcQEYQ5fyNXNTOYwYw3099RYebWg== + bignumber.js@^9.0.0: version "9.0.1" resolved "https://registry.npm.taobao.org/bignumber.js/download/bignumber.js-9.0.1.tgz#8d7ba124c882bfd8e43260c67475518d0689e4e5" integrity sha1-jXuhJMiCv9jkMmDGdHVRjQaJ5OU= +bignumber.js@^9.0.2: + version "9.0.2" + resolved "https://r2.cnpmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz#71c6c6bed38de64e24a65ebe16cfcf23ae693673" + integrity sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw== + binary-extensions@^1.0.0: version "1.13.1" resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" @@ -4608,7 +4981,12 @@ binary-extensions@^2.0.0: resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== -bindings@^1.3.0, bindings@^1.5.0: +bind-decorator@^1.0.11: + version "1.0.11" + resolved "https://r2.cnpmjs.org/bind-decorator/-/bind-decorator-1.0.11.tgz#e41bc06a1f65dd9cec476c91c5daf3978488252f" + integrity sha512-yzkH0uog6Vv/vQ9+rhSKxecnqGUZHYncg7qS7voz3Q76+TAi1SGiOKk2mlOvusQnFz9Dc4BC/NMkeXu11YgjJg== + +bindings@^1.2.1, bindings@^1.3.0, bindings@^1.5.0: version "1.5.0" resolved "https://registry.nlark.com/bindings/download/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" integrity sha1-EDU8npRTNLwFEabZCzj7x8nFBN8= @@ -4643,7 +5021,7 @@ bip39@^3.0.3: pbkdf2 "^3.0.9" randombytes "^2.0.1" -bip66@^1.1.0: +bip66@^1.1.0, bip66@^1.1.5: version "1.1.5" resolved "https://registry.npm.taobao.org/bip66/download/bip66-1.1.5.tgz#01fa8748785ca70955d5011217d1b3139969ca22" integrity sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI= @@ -4767,7 +5145,7 @@ boxen@1.3.0: term-size "^1.2.0" widest-line "^2.0.0" -brace-expansion@^1.1.7: +brace-expansion@^1.0.0, brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== @@ -4815,7 +5193,7 @@ browser-resolve@^1.11.3: dependencies: resolve "1.1.7" -browserify-aes@^1.0.0, browserify-aes@^1.0.4, browserify-aes@^1.2.0: +browserify-aes@^1.0.0, browserify-aes@^1.0.4, browserify-aes@^1.0.6, browserify-aes@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== @@ -4897,7 +5275,7 @@ browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.16.6, browserslist@^4 escalade "^3.1.1" node-releases "^1.1.71" -bs58@^4.0.0: +bs58@^4.0.0, bs58@^4.0.1: version "4.0.1" resolved "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz#be161e76c354f6f788ae4071f63f34e8c4f0a42a" integrity sha1-vhYedsNU9veIrkBx9j806MTwpCo= @@ -5500,6 +5878,15 @@ cliui@^5.0.0: strip-ansi "^5.2.0" wrap-ansi "^5.1.0" +cliui@^6.0.0: + version "6.0.0" + resolved "https://r2.cnpmjs.org/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" + integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^6.2.0" + clone-deep@^0.2.4: version "0.2.4" resolved "https://registry.npmjs.org/clone-deep/-/clone-deep-0.2.4.tgz#4e73dd09e9fb971cc38670c5dced9c1896481cc6" @@ -5527,7 +5914,17 @@ clone-response@^1.0.2: dependencies: mimic-response "^1.0.0" -clone@^1.0.2: +clone-stats@^0.0.1: + version "0.0.1" + resolved "https://r2.cnpmjs.org/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" + integrity sha512-dhUqc57gSMCo6TX85FLfe51eC/s+Im2MLkAgJwfaRRexR2tA4dd3eLEW4L6efzHc2iNorrRRXITifnDLlRrhaA== + +clone@^0.2.0: + version "0.2.0" + resolved "https://r2.cnpmjs.org/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f" + integrity sha512-g62n3Kb9cszeZvmvBUqP/dsEJD/+80pDA8u8KqHnAPrVnQ2Je9rVV6opxkhuWCd1kCn2gOibzDKxCtBvD3q5kA== + +clone@^1.0.0, clone@^1.0.2: version "1.0.4" resolved "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= @@ -5537,6 +5934,11 @@ clone@^2.0.0, clone@^2.1.1: resolved "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= +clsx@^1.1.0: + version "1.1.1" + resolved "https://r2.cnpmjs.org/clsx/-/clsx-1.1.1.tgz#98b3134f9abbdf23b2663491ace13c5c03a73188" + integrity sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA== + co@^4.6.0: version "4.6.0" resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -5608,6 +6010,11 @@ color-string@^1.5.4: color-name "^1.0.0" simple-swizzle "^0.2.2" +color-support@^1.1.3: + version "1.1.3" + resolved "https://r2.cnpmjs.org/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" + integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== + color@^0.11.1: version "0.11.4" resolved "https://registry.npmjs.org/color/-/color-0.11.4.tgz#6d7b5c74fb65e841cd48792ad1ed5e07b904d764" @@ -5833,9 +6240,9 @@ copy-descriptor@^0.1.0: resolved "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= -copy-to-clipboard@^3.2.0: +copy-to-clipboard@^3.2.0, copy-to-clipboard@^3.3.1: version "3.3.1" - resolved "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz#115aa1a9998ffab6196f93076ad6da3b913662ae" + resolved "https://r2.cnpmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz#115aa1a9998ffab6196f93076ad6da3b913662ae" integrity sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw== dependencies: toggle-selection "^1.0.6" @@ -5958,6 +6365,13 @@ cross-fetch@^3.0.4: dependencies: node-fetch "2.6.1" +cross-fetch@^3.1.4: + version "3.1.5" + resolved "https://r.cnpmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz#e1389f44d9e7ba767907f7af8454787952ab534f" + integrity sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw== + dependencies: + node-fetch "2.6.7" + cross-spawn@7.0.1: version "7.0.1" resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.1.tgz#0ab56286e0f7c24e153d04cc2aa027e43a9a5d14" @@ -6390,6 +6804,11 @@ date-fns@^1.27.2: resolved "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz#2e71bf0b119153dbb4cc4e88d9ea5acfb50dc05c" integrity sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw== +dateformat@^2.0.0: + version "2.2.0" + resolved "https://r2.cnpmjs.org/dateformat/-/dateformat-2.2.0.tgz#4065e2013cf9fb916ddfd82efb506ad4c6769062" + integrity sha512-GODcnWq3YGoTnygPfi02ygEiRxqUxpJwuRHjdhJYuxpcZmDq4rjBiXYmbCCzStxo176ixfLT6i4NPwQooRySnw== + dayjs@^1.10.4: version "1.10.5" resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.10.5.tgz#5600df4548fc2453b3f163ebb2abbe965ccfb986" @@ -6416,6 +6835,13 @@ debug@4.3.2: dependencies: ms "2.1.2" +debug@=3.1.0: + version "3.1.0" + resolved "https://r2.cnpmjs.org/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== + dependencies: + ms "2.0.0" + debug@^3.1.0, debug@^3.1.1, debug@^3.2.5, debug@^3.2.7: version "3.2.7" resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -6480,6 +6906,13 @@ default-gateway@^4.2.0: execa "^1.0.0" ip-regex "^2.1.0" +defaults@^1.0.0: + version "1.0.3" + resolved "https://r2.cnpmjs.org/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + integrity sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA== + dependencies: + clone "^1.0.2" + defer-to-connect@^1.0.1: version "1.1.3" resolved "https://registry.nlark.com/defer-to-connect/download/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" @@ -6521,6 +6954,19 @@ define-property@^2.0.2: is-descriptor "^1.0.2" isobject "^3.0.1" +del@^2.2.2: + version "2.2.2" + resolved "https://r2.cnpmjs.org/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" + integrity sha512-Z4fzpbIRjOu7lO5jCETSWoqUDVe0IPOlfugBsF6suen2LKDlVb4QZpKEM9P+buNJ4KI1eN7I083w/pbKUpsrWQ== + dependencies: + globby "^5.0.0" + is-path-cwd "^1.0.0" + is-path-in-cwd "^1.0.0" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + rimraf "^2.2.8" + del@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" @@ -6544,6 +6990,11 @@ depd@~1.1.2: resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= +deprecated@^0.0.1: + version "0.0.1" + resolved "https://r2.cnpmjs.org/deprecated/-/deprecated-0.0.1.tgz#f9c9af5464afa1e7a971458a8bdef2aa94d5bb19" + integrity sha512-BRACtc6B1mJe2J2mruHFqHWrtLy0Qppu/7LKdqWH3o/9j1L/1phPUaQV+2S3H8ZDW0k6h+NEOKcHBDRikWLiOA== + des.js@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" @@ -6562,6 +7013,11 @@ detect-browser@5.2.0: resolved "https://registry.npmjs.org/detect-browser/-/detect-browser-5.2.0.tgz#c9cd5afa96a6a19fda0bbe9e9be48a6b6e1e9c97" integrity sha512-tr7XntDAu50BVENgQfajMLzacmSe34D+qZc4zjnniz0ZVuw/TZcLcyxHQjYpJTM36sGEkZZlYLnIM1hH7alTMA== +detect-file@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" + integrity sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q== + detect-newline@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" @@ -6771,6 +7227,22 @@ dotenv@8.2.0: resolved "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a" integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw== +drbg.js@^1.0.1: + version "1.0.1" + resolved "https://r2.cnpmjs.org/drbg.js/-/drbg.js-1.0.1.tgz#3e36b6c42b37043823cdbc332d58f31e2445480b" + integrity sha512-F4wZ06PvqxYLFEZKkFxTDcns9oFNk34hvmJSEwdzsxVQ8YI5YaxtACgQatkYgv2VI2CFkUd2Y+xosPQnHv809g== + dependencies: + browserify-aes "^1.0.6" + create-hash "^1.1.2" + create-hmac "^1.1.4" + +duplexer2@0.0.2: + version "0.0.2" + resolved "https://r2.cnpmjs.org/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" + integrity sha512-+AWBwjGadtksxjOQSFDhPNQbed7icNXApT4+2BNpsXzcCBiInq2H9XW0O8sfHFaPmnQRs7cg/P0fAr2IWQSW0g== + dependencies: + readable-stream "~1.1.9" + duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.npm.taobao.org/duplexer3/download/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" @@ -6804,6 +7276,13 @@ ee-first@1.1.1: resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= +eip1193-provider@1.0.1: + version "1.0.1" + resolved "https://r2.cnpmjs.org/eip1193-provider/-/eip1193-provider-1.0.1.tgz#420d29cf4f6c443e3f32e718fb16fafb250637c3" + integrity sha512-kSuqwQ26d7CzuS/t3yRXo2Su2cVH0QfvyKbr2H7Be7O5YDyIq4hQGCNTo5wRdP07bt+E2R/8nPCzey4ojBHf7g== + dependencies: + "@json-rpc-tools/provider" "^1.5.5" + electron-to-chromium@^1.3.378, electron-to-chromium@^1.3.723: version "1.3.750" resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.750.tgz#7e5ef6f478316b0bd656af5942fe502610e97eaf" @@ -6868,6 +7347,11 @@ enc-utils@3.0.0, enc-utils@^3.0.0: is-typedarray "1.0.0" typedarray-to-buffer "3.1.5" +encode-utf8@^1.0.3: + version "1.0.3" + resolved "https://r2.cnpmjs.org/encode-utf8/-/encode-utf8-1.0.3.tgz#f30fdd31da07fb596f281beb2f6b027851994cda" + integrity sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw== + encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" @@ -6887,6 +7371,13 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0: dependencies: once "^1.4.0" +end-of-stream@~0.1.5: + version "0.1.5" + resolved "https://r2.cnpmjs.org/end-of-stream/-/end-of-stream-0.1.5.tgz#8e177206c3c80837d85632e8b9359dfe8b2f6eaf" + integrity sha512-go5TQkd0YRXYhX+Lc3UrXkoKU5j+m72jEP5lHWr2Nh82L8wfZtH8toKgcg4T10o23ELIMGXQdwCbl+qAXIPDrw== + dependencies: + once "~1.3.0" + enhanced-resolve@^4.1.0: version "4.5.0" resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz#2f3cfd84dbe3b487f18f2db2ef1e064a571ca5ec" @@ -7246,7 +7737,7 @@ etag@~1.8.1: resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= -eth-block-tracker@^4.4.2: +eth-block-tracker@4.4.3, eth-block-tracker@^4.4.2: version "4.4.3" resolved "https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-4.4.3.tgz#766a0a0eb4a52c867a28328e9ae21353812cf626" integrity sha512-A8tG4Z4iNg4mw5tP1Vung9N9IjgMNqpiMoJ/FouSFwNCGHv2X0mmOYwtQOJzki6XN7r7Tyo01S29p7b224I4jw== @@ -7280,7 +7771,7 @@ eth-json-rpc-errors@^2.0.2: dependencies: fast-safe-stringify "^2.0.6" -eth-json-rpc-filters@^4.1.1: +eth-json-rpc-filters@4.2.2, eth-json-rpc-filters@^4.1.1: version "4.2.2" resolved "https://registry.npmjs.org/eth-json-rpc-filters/-/eth-json-rpc-filters-4.2.2.tgz#eb35e1dfe9357ace8a8908e7daee80b2cd60a10d" integrity sha512-DGtqpLU7bBg63wPMWg1sCpkKCf57dJ+hj/k3zF26anXMzkmtSBDExL8IhUu7LUd34f0Zsce3PYNO2vV2GaTzaw== @@ -7368,6 +7859,13 @@ eth-query@^2.1.0, eth-query@^2.1.2: json-rpc-random-id "^1.0.0" xtend "^4.0.1" +eth-rpc-errors@4.0.2: + version "4.0.2" + resolved "https://r2.cnpmjs.org/eth-rpc-errors/-/eth-rpc-errors-4.0.2.tgz#11bc164e25237a679061ac05b7da7537b673d3b7" + integrity sha512-n+Re6Gu8XGyfFy1it0AwbD1x0MUzspQs0D5UiPs1fFPCr6WAwZM+vbIhXheBFrpgosqN9bs5PqlB4Q61U/QytQ== + dependencies: + fast-safe-stringify "^2.0.6" + eth-rpc-errors@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-3.0.0.tgz#d7b22653c70dbf9defd4ef490fd08fe70608ca10" @@ -7812,6 +8310,13 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" +expand-tilde@^2.0.0, expand-tilde@^2.0.2: + version "2.0.2" + resolved "https://r2.cnpmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" + integrity sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw== + dependencies: + homedir-polyfill "^1.0.1" + expect@^24.9.0: version "24.9.0" resolved "https://registry.npmjs.org/expect/-/expect-24.9.0.tgz#b75165b4817074fa4a157794f46fe9f1ba15b6ca" @@ -7882,7 +8387,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@^3.0.0, extend@~3.0.2: +extend@>=3.0.1, extend@^3.0.0, extend@^3.0.1, extend@~3.0.2: version "3.0.2" resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -7948,6 +8453,16 @@ fake-merkle-patricia-tree@^1.0.1: dependencies: checkpoint-store "^1.1.0" +fancy-log@^1.1.0: + version "1.3.3" + resolved "https://r2.cnpmjs.org/fancy-log/-/fancy-log-1.3.3.tgz#dbc19154f558690150a23953a0adbd035be45fc7" + integrity sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw== + dependencies: + ansi-gray "^0.1.1" + color-support "^1.1.3" + parse-node-version "^1.0.0" + time-stamp "^1.0.0" + fast-deep-equal@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" @@ -8146,12 +8661,17 @@ find-cache-dir@^3.2.0, find-cache-dir@^3.3.1: make-dir "^3.0.2" pkg-dir "^4.1.0" +find-index@^0.1.1: + version "0.1.1" + resolved "https://r2.cnpmjs.org/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4" + integrity sha512-uJ5vWrfBKMcE6y2Z8834dwEZj9mNGxYa3t3I53OwFeuZ8D9oc2E5zcsrkuhX6h4iYrjhiv0T3szQmxlAV9uxDg== + find-root@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== -find-up@4.1.0, find-up@^4.0.0: +find-up@4.1.0, find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== @@ -8181,6 +8701,37 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" +findup-sync@^2.0.0: + version "2.0.0" + resolved "https://r2.cnpmjs.org/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc" + integrity sha512-vs+3unmJT45eczmcAZ6zMJtxN3l/QXeccaXQx5cu/MeJMhewVfoWZqibRkOxPnmoR59+Zy5hjabfQc6JLSah4g== + dependencies: + detect-file "^1.0.0" + is-glob "^3.1.0" + micromatch "^3.0.4" + resolve-dir "^1.0.1" + +fined@^1.0.1: + version "1.2.0" + resolved "https://r2.cnpmjs.org/fined/-/fined-1.2.0.tgz#d00beccf1aa2b475d16d423b0238b713a2c4a37b" + integrity sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng== + dependencies: + expand-tilde "^2.0.2" + is-plain-object "^2.0.3" + object.defaults "^1.1.0" + object.pick "^1.2.0" + parse-filepath "^1.0.1" + +first-chunk-stream@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz#59bfb50cd905f60d7c394cd3d9acaab4e6ad934e" + integrity sha512-ArRi5axuv66gEsyl3UuK80CzW7t56hem73YGNYxNWTGNKFJUadSb9Gu9SHijYEUi8ulQMf1bJomYNwSCPHhtTQ== + +flagged-respawn@^1.0.0: + version "1.0.1" + resolved "https://r2.cnpmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz#e7de6f1279ddd9ca9aac8a5971d618606b3aab41" + integrity sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q== + flat-cache@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" @@ -8215,11 +8766,23 @@ focus-lock@^0.9.1: dependencies: tslib "^2.0.3" +follow-redirects@1.5.10: + version "1.5.10" + resolved "https://r2.cnpmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a" + integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ== + dependencies: + debug "=3.1.0" + follow-redirects@^1.0.0, follow-redirects@^1.10.0: version "1.14.1" resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz#d9114ded0a1cfdd334e164e6662ad02bfd91ff43" integrity sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg== +follow-redirects@^1.14.0, follow-redirects@^1.14.4: + version "1.14.9" + resolved "https://r.cnpmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz#dd4ea157de7bfaf9ea9b3fbd85aa16951f78d8d7" + integrity sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w== + for-each@^0.3.3: version "0.3.3" resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" @@ -8244,6 +8807,13 @@ for-own@^0.1.3: dependencies: for-in "^1.0.1" +for-own@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" + integrity sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg== + dependencies: + for-in "^1.0.1" + foreach@^2.0.5: version "2.0.5" resolved "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" @@ -8396,6 +8966,13 @@ functional-red-black-tree@^1.0.1: resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= +gaze@^0.5.1: + version "0.5.2" + resolved "https://r2.cnpmjs.org/gaze/-/gaze-0.5.2.tgz#40b709537d24d1d45767db5a908689dfe69ac44f" + integrity sha512-3IWbXGkDDHFX8zIlNdfnmhvlSMhpBO6tDr4InB8fGku6dh/gjFPGNqcdsXJajZg05x9jRzXbL6gCnCnuMap4tw== + dependencies: + globule "~0.1.0" + gensync@^1.0.0-beta.1, gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" @@ -8501,11 +9078,47 @@ glob-parent@^5.0.0, glob-parent@~5.1.0: dependencies: is-glob "^4.0.1" +glob-stream@^3.1.5: + version "3.1.18" + resolved "https://r2.cnpmjs.org/glob-stream/-/glob-stream-3.1.18.tgz#9170a5f12b790306fdfe598f313f8f7954fd143b" + integrity sha512-owHtlMMXIAbxLjhUAO0HhW1/TB7kV0AwDduI3BLbYsWCaRzNIcLBu8N0wHZft2Za2SCmUXCEOdpZzC7k/H19eg== + dependencies: + glob "^4.3.1" + glob2base "^0.0.12" + minimatch "^2.0.1" + ordered-read-streams "^0.1.0" + through2 "^0.6.1" + unique-stream "^1.0.0" + glob-to-regexp@^0.3.0: version "0.3.0" resolved "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= +glob-watcher@^0.0.6: + version "0.0.6" + resolved "https://r2.cnpmjs.org/glob-watcher/-/glob-watcher-0.0.6.tgz#b95b4a8df74b39c83298b0c05c978b4d9a3b710b" + integrity sha512-lzYWq1BJLBmtb9rzT6+lgbFlEW6Sc7B+Qs3RmsNA9lbdFSqLHhebfypPR3nbEOMeEQyawVXqSDH0aqjtImldow== + dependencies: + gaze "^0.5.1" + +glob2base@^0.0.12: + version "0.0.12" + resolved "https://r2.cnpmjs.org/glob2base/-/glob2base-0.0.12.tgz#9d419b3e28f12e83a362164a277055922c9c0d56" + integrity sha512-ZyqlgowMbfj2NPjxaZZ/EtsXlOch28FRXgMd64vqZWk1bT9+wvSRLYD1om9M7QfQru51zJPAT17qXm4/zd+9QA== + dependencies: + find-index "^0.1.1" + +glob@^4.3.1: + version "4.5.3" + resolved "https://r2.cnpmjs.org/glob/-/glob-4.5.3.tgz#c6cb73d3226c1efef04de3c56d012f03377ee15f" + integrity sha512-I0rTWUKSZKxPSIAIaqhSXTM/DiII6wame+rEC3cFA5Lqmr9YmdL7z6Hj9+bdWtTvoY1Su4/OiMLmb37Y7JzvJQ== + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "^2.0.1" + once "^1.3.0" + glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.1.7" resolved "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" @@ -8518,6 +9131,15 @@ glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" +glob@~3.1.21: + version "3.1.21" + resolved "https://r2.cnpmjs.org/glob/-/glob-3.1.21.tgz#d29e0a055dea5138f4d07ed40e8982e83c2066cd" + integrity sha512-ANhy2V2+tFpRajE3wN4DhkNQ08KDr0Ir1qL12/cUe5+a7STEK8jkW4onUYuY8/06qAFuT5je7mjAqzx0eKI2tQ== + dependencies: + graceful-fs "~1.2.0" + inherits "1" + minimatch "~0.2.11" + global-dirs@^2.0.1: version "2.1.0" resolved "https://registry.npmjs.org/global-dirs/-/global-dirs-2.1.0.tgz#e9046a49c806ff04d6c1825e196c8f0091e8df4d" @@ -8539,6 +9161,26 @@ global-modules@2.0.0: dependencies: global-prefix "^3.0.0" +global-modules@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" + integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== + dependencies: + global-prefix "^1.0.1" + is-windows "^1.0.1" + resolve-dir "^1.0.0" + +global-prefix@^1.0.1: + version "1.0.2" + resolved "https://r2.cnpmjs.org/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" + integrity sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg== + dependencies: + expand-tilde "^2.0.2" + homedir-polyfill "^1.0.1" + ini "^1.3.4" + is-windows "^1.0.1" + which "^1.2.14" + global-prefix@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97" @@ -8581,6 +9223,18 @@ globby@8.0.2: pify "^3.0.0" slash "^1.0.0" +globby@^5.0.0: + version "5.0.0" + resolved "https://r2.cnpmjs.org/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" + integrity sha512-HJRTIH2EeH44ka+LWig+EqT2ONSYpVlNfx6pyd592/VF1TbfljJ7elwie7oSwcViLGqOdWocSdu2txwBF9bjmQ== + dependencies: + array-union "^1.0.1" + arrify "^1.0.0" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + globby@^6.1.0: version "6.1.0" resolved "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" @@ -8592,6 +9246,27 @@ globby@^6.1.0: pify "^2.0.0" pinkie-promise "^2.0.0" +globule@~0.1.0: + version "0.1.0" + resolved "https://r2.cnpmjs.org/globule/-/globule-0.1.0.tgz#d9c8edde1da79d125a151b79533b978676346ae5" + integrity sha512-3eIcA2OjPCm4VvwIwZPzIxCVssA8HSpM2C6c6kK5ufJH4FGwWoyqL3In19uuX4oe+TwH3w2P1nQDmW56iehO4A== + dependencies: + glob "~3.1.21" + lodash "~1.0.1" + minimatch "~0.2.11" + +glogg@^1.0.0: + version "1.0.2" + resolved "https://r2.cnpmjs.org/glogg/-/glogg-1.0.2.tgz#2d7dd702beda22eb3bffadf880696da6d846313f" + integrity sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA== + dependencies: + sparkles "^1.0.0" + +google-protobuf@^3.17.3: + version "3.19.4" + resolved "https://r.cnpmjs.org/google-protobuf/-/google-protobuf-3.19.4.tgz#8d32c3e34be9250956f28c0fb90955d13f311888" + integrity sha512-OIPNCxsG2lkIvf+P5FNfJ/Km95CsXOBecS9ZcAU6m2Rq3svc0Apl9nB3GMDNKfQ9asNv4KjyAqGwPQFrVle3Yg== + got@9.6.0: version "9.6.0" resolved "https://registry.nlark.com/got/download/got-9.6.0.tgz?cache=0&sync_timestamp=1628752491100&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fgot%2Fdownload%2Fgot-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" @@ -8629,16 +9304,78 @@ got@^7.1.0: url-parse-lax "^1.0.0" url-to-options "^1.0.1" +graceful-fs@^3.0.0: + version "3.0.12" + resolved "https://r2.cnpmjs.org/graceful-fs/-/graceful-fs-3.0.12.tgz#0034947ce9ed695ec8ab0b854bc919e82b1ffaef" + integrity sha512-J55gaCS4iTTJfTXIxSVw3EMQckcqkpdRv3IR7gu6sq0+tbC363Zx6KH/SEwXASK9JRbhyZmVjJEVJIOxYsB3Qg== + dependencies: + natives "^1.1.3" + graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2: version "4.2.6" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz#ff040b2b0853b23c3d31027523706f1885d76bee" integrity sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ== +graceful-fs@~1.2.0: + version "1.2.3" + resolved "https://r2.cnpmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz#15a4806a57547cb2d2dbf27f42e89a8c3451b364" + integrity sha512-iiTUZ5vZ+2ZV+h71XAgwCSu6+NAizhFU3Yw8aC/hH5SQ3SnISqEqAek40imAFGtDcwJKNhXvSY+hzIolnLwcdQ== + growly@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= +gulp-util@^3.0.0: + version "3.0.8" + resolved "https://r2.cnpmjs.org/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f" + integrity sha512-q5oWPc12lwSFS9h/4VIjG+1NuNDlJ48ywV2JKItY4Ycc/n1fXJeYPVQsfu5ZrhQi7FGSDBalwUCLar/GyHXKGw== + dependencies: + array-differ "^1.0.0" + array-uniq "^1.0.2" + beeper "^1.0.0" + chalk "^1.0.0" + dateformat "^2.0.0" + fancy-log "^1.1.0" + gulplog "^1.0.0" + has-gulplog "^0.1.0" + lodash._reescape "^3.0.0" + lodash._reevaluate "^3.0.0" + lodash._reinterpolate "^3.0.0" + lodash.template "^3.0.0" + minimist "^1.1.0" + multipipe "^0.1.2" + object-assign "^3.0.0" + replace-ext "0.0.1" + through2 "^2.0.0" + vinyl "^0.5.0" + +gulp@3.9.1: + version "3.9.1" + resolved "https://r2.cnpmjs.org/gulp/-/gulp-3.9.1.tgz#571ce45928dd40af6514fc4011866016c13845b4" + integrity sha512-6FHNdR+VG1LcPz6gZGGqgvimWWGtl4x3FvshAdK/UnAjU7aFOyzft3Fjp35r0Y3ZF4u8vND0S4nGsIB/sxTqzQ== + dependencies: + archy "^1.0.0" + chalk "^1.0.0" + deprecated "^0.0.1" + gulp-util "^3.0.0" + interpret "^1.0.0" + liftoff "^2.1.0" + minimist "^1.1.0" + orchestrator "^0.3.0" + pretty-hrtime "^1.0.0" + semver "^4.1.0" + tildify "^1.0.0" + v8flags "^2.0.2" + vinyl-fs "^0.3.0" + +gulplog@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" + integrity sha512-hm6N8nrm3Y08jXie48jsC55eCZz9mnb4OirAStEk2deqeyhXU3C1otDVh+ccttMuc1sBi6RX6ZJ720hs9RCvgw== + dependencies: + glogg "^1.0.0" + gzip-size@5.1.1: version "5.1.1" resolved "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz#cb9bee692f87c0612b232840a873904e4c135274" @@ -8692,6 +9429,13 @@ has-flag@^4.0.0: resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== +has-gulplog@^0.1.0: + version "0.1.0" + resolved "https://r2.cnpmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce" + integrity sha512-+F4GzLjwHNNDEAJW2DC1xXfEoPkRDmUdJ7CBYw4MpqtDwOnqdImJl7GWlpqx+Wko6//J8uKTnIe4wZSv7yCqmw== + dependencies: + sparkles "^1.0.0" + has-symbol-support-x@^1.4.1: version "1.4.2" resolved "https://registry.npm.taobao.org/has-symbol-support-x/download/has-symbol-support-x-1.4.2.tgz#1409f98bc00247da45da67cee0a36f282ff26455" @@ -8810,6 +9554,13 @@ hoist-non-react-statics@^3.0.0, hoist-non-react-statics@^3.1.0, hoist-non-react- dependencies: react-is "^16.7.0" +homedir-polyfill@^1.0.1: + version "1.0.3" + resolved "https://r2.cnpmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" + integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA== + dependencies: + parse-passwd "^1.0.0" + hosted-git-info@^2.1.4: version "2.8.9" resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" @@ -8894,6 +9645,11 @@ html-webpack-plugin@4.0.0-beta.11: tapable "^1.1.3" util.promisify "1.0.0" +htmlescape@^1.1.1: + version "1.1.1" + resolved "https://r2.cnpmjs.org/htmlescape/-/htmlescape-1.1.1.tgz#3a03edc2214bca3b66424a3e7959349509cb0351" + integrity sha512-eVcrzgbR4tim7c7soKQKtxa/kQM4TzjnlU83rcZ9bHU6t31ehfV7SktN6McWgwPWg+JYMA/O3qpGxBvFq1z2Jg== + htmlparser2@^5.0: version "5.0.1" resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-5.0.1.tgz#7daa6fc3e35d6107ac95a4fc08781f091664f6e7" @@ -9172,7 +9928,12 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: +inherits@1: + version "1.0.2" + resolved "https://r2.cnpmjs.org/inherits/-/inherits-1.0.2.tgz#ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b" + integrity sha512-Al67oatbRSo3RV5hRqIoln6Y5yMVbJSIn4jEJNL7VCImzq/kLr7vvb6sFRJXqr8rpHc/2kJOM+y0sPKN47VdzA== + +inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3, inherits@~2.0.4: version "2.0.4" resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -9197,7 +9958,7 @@ ini@2.0.0: resolved "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5" integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA== -ini@^1.3.5, ini@~1.3.0: +ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: version "1.3.8" resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== @@ -9262,6 +10023,11 @@ internal-slot@^1.0.3: has "^1.0.3" side-channel "^1.0.4" +interpret@^1.0.0: + version "1.4.0" + resolved "https://r2.cnpmjs.org/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" + integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== + invariant@^2.2.2, invariant@^2.2.4: version "2.2.4" resolved "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" @@ -9299,6 +10065,14 @@ is-absolute-url@^3.0.3: resolved "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== +is-absolute@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" + integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA== + dependencies: + is-relative "^1.0.0" + is-windows "^1.0.1" + is-accessor-descriptor@^0.1.6: version "0.1.6" resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" @@ -9374,6 +10148,11 @@ is-buffer@^1.0.2, is-buffer@^1.1.4, is-buffer@^1.1.5: resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== +is-buffer@^2.0.2: + version "2.0.5" + resolved "https://r2.cnpmjs.org/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== + is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.3: version "1.2.3" resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz#8b1e0500b73a1d76c70487636f368e519de8db8e" @@ -9412,6 +10191,13 @@ is-core-module@^2.2.0: dependencies: has "^1.0.3" +is-core-module@^2.8.1: + version "2.8.1" + resolved "https://r.cnpmjs.org/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" + integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== + dependencies: + has "^1.0.3" + is-data-descriptor@^0.1.4: version "0.1.4" resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" @@ -9602,11 +10388,23 @@ is-observable@^1.1.0: dependencies: symbol-observable "^1.1.0" +is-path-cwd@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" + integrity sha512-cnS56eR9SPAscL77ik76ATVqoPARTqPIVkMDVxRaWH06zT+6+CzIroYRJ0VVvm0Z1zfAvxvz9i/D3Ppjaqt5Nw== + is-path-cwd@^2.0.0: version "2.2.0" resolved "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== +is-path-in-cwd@^1.0.0: + version "1.0.1" + resolved "https://r2.cnpmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz#5ac48b345ef675339bd6c7a48a912110b241cf52" + integrity sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ== + dependencies: + is-path-inside "^1.0.0" + is-path-in-cwd@^2.0.0: version "2.1.0" resolved "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz#bfe2dca26c69f397265a4009963602935a053acb" @@ -9614,6 +10412,13 @@ is-path-in-cwd@^2.0.0: dependencies: is-path-inside "^2.1.0" +is-path-inside@^1.0.0: + version "1.0.1" + resolved "https://r2.cnpmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" + integrity sha512-qhsCR/Esx4U4hg/9I19OVUAJkGWtjRYHMRgUMZE2TDdj+Ag+kttZanLupfddNyglzz50cUlmWzUaI37GDfNx/g== + dependencies: + path-is-inside "^1.0.1" + is-path-inside@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2" @@ -9656,6 +10461,13 @@ is-regexp@^1.0.0: resolved "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= +is-relative@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" + integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA== + dependencies: + is-unc-path "^1.0.0" + is-resolvable@^1.0.0: version "1.1.0" resolved "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" @@ -9709,11 +10521,23 @@ is-typedarray@1.0.0, is-typedarray@^1.0.0, is-typedarray@~1.0.0: resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= +is-unc-path@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d" + integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ== + dependencies: + unc-path-regex "^0.1.2" + is-unicode-supported@^0.1.0: version "0.1.0" resolved "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== +is-utf8@^0.2.0: + version "0.2.1" + resolved "https://r2.cnpmjs.org/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== + is-what@^3.3.1: version "3.14.1" resolved "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz#e1222f46ddda85dead0fd1c9df131760e77755c1" @@ -9724,7 +10548,7 @@ is-whitespace-character@^1.0.0: resolved "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz#0858edd94a95594c7c9dd0b5c174ec6e45ee4aa7" integrity sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w== -is-windows@^1.0.2: +is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== @@ -10268,6 +11092,11 @@ jpeg-js@0.4.2: resolved "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.2.tgz#8b345b1ae4abde64c2da2fe67ea216a114ac279d" integrity sha512-+az2gi/hvex7eLTMTlbRLOhH6P6WFdk2ITI8HJsaH2VqYO0I594zXSYEP+tf4FW+8Cy68ScDXoAsQdyQanv3sw== +js-sha256@0.9.0: + version "0.9.0" + resolved "https://r2.cnpmjs.org/js-sha256/-/js-sha256-0.9.0.tgz#0b89ac166583e91ef9123644bd3c5334ce9d0966" + integrity sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA== + js-sha3@0.5.7, js-sha3@^0.5.7: version "0.5.7" resolved "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7" @@ -10400,6 +11229,14 @@ json-parse-even-better-errors@^2.3.0: resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== +json-rpc-engine@6.1.0, json-rpc-engine@^6.1.0: + version "6.1.0" + resolved "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-6.1.0.tgz#bf5ff7d029e1c1bf20cb6c0e9f348dcd8be5a393" + integrity sha512-NEdLrtrq1jUZyfjkr9OCz9EzCNhnRyWtt1PAnvnhwy6e8XETS0Dtc+ZNCO2gvuAoKsIn2+vCSowXTYE4CkgnAQ== + dependencies: + "@metamask/safe-event-emitter" "^2.0.0" + eth-rpc-errors "^4.0.2" + json-rpc-engine@^5.1.3, json-rpc-engine@^5.3.0: version "5.4.0" resolved "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-5.4.0.tgz#75758609d849e1dba1e09021ae473f3ab63161e5" @@ -10408,14 +11245,6 @@ json-rpc-engine@^5.1.3, json-rpc-engine@^5.3.0: eth-rpc-errors "^3.0.0" safe-event-emitter "^1.0.1" -json-rpc-engine@^6.1.0: - version "6.1.0" - resolved "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-6.1.0.tgz#bf5ff7d029e1c1bf20cb6c0e9f348dcd8be5a393" - integrity sha512-NEdLrtrq1jUZyfjkr9OCz9EzCNhnRyWtt1PAnvnhwy6e8XETS0Dtc+ZNCO2gvuAoKsIn2+vCSowXTYE4CkgnAQ== - dependencies: - "@metamask/safe-event-emitter" "^2.0.0" - eth-rpc-errors "^4.0.2" - json-rpc-random-id@^1.0.0, json-rpc-random-id@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/json-rpc-random-id/-/json-rpc-random-id-1.0.1.tgz#ba49d96aded1444dbb8da3d203748acbbcdec8c8" @@ -10498,6 +11327,11 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.10.0" +jssha@^2.3.1: + version "2.4.2" + resolved "https://r2.cnpmjs.org/jssha/-/jssha-2.4.2.tgz#d950b095634928bd6b2bda1d42da9a3a762d65e9" + integrity sha512-/jsi/9C0S70zfkT/4UlKQa5E1xKurDnXcQizcww9JSR/Fv+uIbWM2btG+bFcL3iNoK9jIGS0ls9HWLr1iw0kFg== + jsx-ast-utils@^2.2.1: version "2.4.1" resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.4.1.tgz#1114a4c1209481db06c690c2b4f488cc665f657e" @@ -10514,6 +11348,16 @@ jsx-ast-utils@^2.2.1: array-includes "^3.1.2" object.assign "^4.1.2" +keccak@^1.0.2: + version "1.4.0" + resolved "https://r2.cnpmjs.org/keccak/-/keccak-1.4.0.tgz#572f8a6dbee8e7b3aa421550f9e6408ca2186f80" + integrity sha512-eZVaCpblK5formjPjeTBik7TAg+pqnDrMHIffSvi9Lh7PQgM1+hSzakUeZFCk9DVVG0dacZJuaz2ntwlzZUIBw== + dependencies: + bindings "^1.2.1" + inherits "^2.0.3" + nan "^2.2.1" + safe-buffer "^5.1.0" + keccak@^3.0.0: version "3.0.1" resolved "https://registry.npmjs.org/keccak/-/keccak-3.0.1.tgz#ae30a0e94dbe43414f741375cff6d64c8bea0bff" @@ -10522,6 +11366,15 @@ keccak@^3.0.0: node-addon-api "^2.0.0" node-gyp-build "^4.2.0" +keccak@^3.0.1: + version "3.0.2" + resolved "https://r2.cnpmjs.org/keccak/-/keccak-3.0.2.tgz#4c2c6e8c54e04f2670ee49fa734eb9da152206e0" + integrity sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ== + dependencies: + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + readable-stream "^3.6.0" + keyv@^3.0.0: version "3.1.0" resolved "https://registry.npm.taobao.org/keyv/download/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" @@ -10680,6 +11533,20 @@ levn@^0.3.0, levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" +liftoff@^2.1.0: + version "2.5.0" + resolved "https://r2.cnpmjs.org/liftoff/-/liftoff-2.5.0.tgz#2009291bb31cea861bbf10a7c15a28caf75c31ec" + integrity sha512-01zfGFqfORP1CGmZZP2Zn51zsqz4RltDi0RDOhbGoLYdUT5Lw+I2gX6QdwXhPITF6hPOHEOp+At6/L24hIg9WQ== + dependencies: + extend "^3.0.0" + findup-sync "^2.0.0" + fined "^1.0.1" + flagged-respawn "^1.0.0" + is-plain-object "^2.0.4" + object.map "^1.0.0" + rechoir "^0.6.2" + resolve "^1.1.7" + lines-and-columns@^1.1.6: version "1.1.6" resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" @@ -10830,11 +11697,51 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" +lodash._basecopy@^3.0.0: + version "3.0.1" + resolved "https://r2.cnpmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" + integrity sha512-rFR6Vpm4HeCK1WPGvjZSJ+7yik8d8PVUdCJx5rT2pogG4Ve/2ZS7kfmO5l5T2o5V2mqlNIfSF5MZlr1+xOoYQQ== + +lodash._basetostring@^3.0.0: + version "3.0.1" + resolved "https://r2.cnpmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5" + integrity sha512-mTzAr1aNAv/i7W43vOR/uD/aJ4ngbtsRaCubp2BfZhlGU/eORUjg/7F6X0orNMdv33JOrdgGybtvMN/po3EWrA== + +lodash._basevalues@^3.0.0: + version "3.0.0" + resolved "https://r2.cnpmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7" + integrity sha512-H94wl5P13uEqlCg7OcNNhMQ8KvWSIyqXzOPusRgHC9DK3o54P6P3xtbXlVbRABG4q5gSmp7EDdJ0MSuW9HX6Mg== + +lodash._getnative@^3.0.0: + version "3.9.1" + resolved "https://r2.cnpmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" + integrity sha512-RrL9VxMEPyDMHOd9uFbvMe8X55X16/cGM5IgOKgRElQZutpX89iS6vwl64duTV1/16w5JY7tuFNXqoekmh1EmA== + +lodash._isiterateecall@^3.0.0: + version "3.0.9" + resolved "https://r2.cnpmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" + integrity sha512-De+ZbrMu6eThFti/CSzhRvTKMgQToLxbij58LMfM8JnYDNSOjkjTCIaa8ixglOeGh2nyPlakbt5bJWJ7gvpYlQ== + +lodash._reescape@^3.0.0: + version "3.0.0" + resolved "https://r2.cnpmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a" + integrity sha512-Sjlavm5y+FUVIF3vF3B75GyXrzsfYV8Dlv3L4mEpuB9leg8N6yf/7rU06iLPx9fY0Mv3khVp9p7Dx0mGV6V5OQ== + +lodash._reevaluate@^3.0.0: + version "3.0.0" + resolved "https://r2.cnpmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed" + integrity sha512-OrPwdDc65iJiBeUe5n/LIjd7Viy99bKwDdk7Z5ljfZg0uFRFlfQaCy9tZ4YMAag9WAZmlVpe1iZrkIMMSMHD3w== + lodash._reinterpolate@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= +lodash._root@^3.0.0: + version "3.0.1" + resolved "https://r2.cnpmjs.org/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692" + integrity sha512-O0pWuFSK6x4EXhM1dhZ8gchNtG7JMqBtrHdoUFUWXD7dJnNSUze1GuyQr5sOs0aCvgGeI3o/OJW8f4ca7FDxmQ== + lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" @@ -10845,11 +11752,37 @@ lodash.debounce@^4.0.8: resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= +lodash.escape@^3.0.0: + version "3.2.0" + resolved "https://r2.cnpmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698" + integrity sha512-n1PZMXgaaDWZDSvuNZ/8XOcYO2hOKDqZel5adtR30VKQAtoWs/5AOeFA0vPV8moiPzlqe7F4cP2tzpFewQyelQ== + dependencies: + lodash._root "^3.0.0" + lodash.flatmap@^4.5.0: version "4.5.0" resolved "https://registry.npmjs.org/lodash.flatmap/-/lodash.flatmap-4.5.0.tgz#ef8cbf408f6e48268663345305c6acc0b778702e" integrity sha1-74y/QI9uSCaGYzRTBcaswLd4cC4= +lodash.isarguments@^3.0.0: + version "3.1.0" + resolved "https://r2.cnpmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" + integrity sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg== + +lodash.isarray@^3.0.0: + version "3.0.4" + resolved "https://r2.cnpmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" + integrity sha512-JwObCrNJuT0Nnbuecmqr5DgtuBppuCvGD9lxjFpAzwnVtdGoDQ1zig+5W8k5/6Gcn0gZ3936HDAlGd28i7sOGQ== + +lodash.keys@^3.0.0: + version "3.1.2" + resolved "https://r2.cnpmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" + integrity sha512-CuBsapFjcubOGMn3VD+24HOAPxM79tH+V6ivJL3CHYjtrawauDJHUk//Yew9Hvc6e9rbCrURGk8z6PC+8WJBfQ== + dependencies: + lodash._getnative "^3.0.0" + lodash.isarguments "^3.0.0" + lodash.isarray "^3.0.0" + lodash.memoize@^4.1.2: version "4.1.2" resolved "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" @@ -10860,11 +11793,31 @@ lodash.once@^4.1.1: resolved "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= +lodash.restparam@^3.0.0: + version "3.6.1" + resolved "https://r2.cnpmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" + integrity sha512-L4/arjjuq4noiUJpt3yS6KIKDtJwNe2fIYgMqyYYKoeIfV1iEqvPwhCx23o+R9dzouGihDAPN1dTIRWa7zk8tw== + lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= +lodash.template@^3.0.0: + version "3.6.2" + resolved "https://r2.cnpmjs.org/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f" + integrity sha512-0B4Y53I0OgHUJkt+7RmlDFWKjVAI/YUpWNiL9GQz5ORDr4ttgfQGo+phBWKFLJbBdtOwgMuUkdOHOnPg45jKmQ== + dependencies: + lodash._basecopy "^3.0.0" + lodash._basetostring "^3.0.0" + lodash._basevalues "^3.0.0" + lodash._isiterateecall "^3.0.0" + lodash._reinterpolate "^3.0.0" + lodash.escape "^3.0.0" + lodash.keys "^3.0.0" + lodash.restparam "^3.0.0" + lodash.templatesettings "^3.0.0" + lodash.template@^4.4.0: version "4.5.0" resolved "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" @@ -10873,6 +11826,14 @@ lodash.template@^4.4.0: lodash._reinterpolate "^3.0.0" lodash.templatesettings "^4.0.0" +lodash.templatesettings@^3.0.0: + version "3.1.1" + resolved "https://r2.cnpmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5" + integrity sha512-TcrlEr31tDYnWkHFWDCV3dHYroKEXpJZ2YJYvJdhN+y4AkWMDZ5I4I8XDtUKqSAyG81N7w+I1mFEJtcED+tGqQ== + dependencies: + lodash._reinterpolate "^3.0.0" + lodash.escape "^3.0.0" + lodash.templatesettings@^4.0.0: version "4.2.0" resolved "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" @@ -10890,6 +11851,11 @@ lodash.uniq@^4.5.0: resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== +lodash@~1.0.1: + version "1.0.2" + resolved "https://r2.cnpmjs.org/lodash/-/lodash-1.0.2.tgz#8f57560c83b59fc270bd3d561b690043430e2551" + integrity sha512-0VSEDVec/Me2eATuoiQd8IjyBMMX0fahob8YJ96V1go2RjvCk1m1GxmtfXn8RNSaLaTtop7fsuhhu9oLk3hUgA== + log-symbols@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" @@ -10936,6 +11902,11 @@ loglevel@^1.6.6: resolved "https://registry.npmjs.org/loglevel/-/loglevel-1.7.1.tgz#005fde2f5e6e47068f935ff28573e125ef72f197" integrity sha512-Hesni4s5UkWkwCGJMQGAh71PaLUmKFM60dHvq0zi/vDhhrzuk+4GgNbTXJ12YYQJn6ZKBDNIjYcuQGKudvqrIw== +long@^4.0.0: + version "4.0.0" + resolved "https://r2.cnpmjs.org/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" + integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== + loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" @@ -10960,6 +11931,11 @@ lowercase-keys@^2.0.0: resolved "https://registry.npm.taobao.org/lowercase-keys/download/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" integrity sha1-JgPni3tLAAbLyi+8yKMgJVislHk= +lru-cache@2: + version "2.7.3" + resolved "https://r2.cnpmjs.org/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952" + integrity sha512-WpibWJ60c3AgAz8a2iYErDrcT2C7OmKnsWhIcHOjkUHFjkXncJhtLxNSqUmxRxRunpb5I8Vprd7aNSd2NtksJQ== + lru-cache@^4.0.1: version "4.1.5" resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" @@ -11012,6 +11988,13 @@ make-dir@^3.0.2: dependencies: semver "^6.0.0" +make-iterator@^1.0.0: + version "1.0.1" + resolved "https://r2.cnpmjs.org/make-iterator/-/make-iterator-1.0.1.tgz#29b33f312aa8f547c4a5e490f56afcec99133ad6" + integrity sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw== + dependencies: + kind-of "^6.0.2" + makeerror@1.0.x: version "1.0.11" resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" @@ -11031,7 +12014,7 @@ map-age-cleaner@^0.1.1: dependencies: p-defer "^1.0.0" -map-cache@^0.2.2: +map-cache@^0.2.0, map-cache@^0.2.2: version "0.2.2" resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= @@ -11196,7 +12179,7 @@ microevent.ts@~0.1.1: resolved "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.1.tgz#70b09b83f43df5172d0205a63025bce0f7357fa0" integrity sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g== -micromatch@^3.1.10, micromatch@^3.1.4: +micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: version "3.1.10" resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== @@ -11326,7 +12309,22 @@ minimatch@3.0.4, minimatch@^3.0.4: dependencies: brace-expansion "^1.1.7" -minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.5: +minimatch@^2.0.1: + version "2.0.10" + resolved "https://r2.cnpmjs.org/minimatch/-/minimatch-2.0.10.tgz#8d087c39c6b38c001b97fca7ce6d0e1e80afbac7" + integrity sha512-jQo6o1qSVLEWaw3l+bwYA2X0uLuK2KjNh2wjgO7Q/9UJnXr1Q3yQKR8BI0/Bt/rPg75e6SMW4hW/6cBHVTZUjA== + dependencies: + brace-expansion "^1.0.0" + +minimatch@~0.2.11: + version "0.2.14" + resolved "https://r2.cnpmjs.org/minimatch/-/minimatch-0.2.14.tgz#c74e780574f63c6f9a090e90efbe6ef53a6a756a" + integrity sha512-zZ+Jy8lVWlvqqeM8iZB7w7KmQkoJn8djM585z88rywrEbzoqawVa9FR5p2hwD+y74nfuKOjmNvi9gtWJNLqHvA== + dependencies: + lru-cache "2" + sigmund "~1.0.0" + +minimist@^1.1.0, minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.5: version "1.2.5" resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== @@ -11426,7 +12424,7 @@ mkdirp@*, mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.4, mkdirp@^0.5.5, mkdirp@~0.5.1: +mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.4, mkdirp@^0.5.5, mkdirp@~0.5.1: version "0.5.5" resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== @@ -11524,11 +12522,12 @@ multicast-dns@^6.0.1: dns-packet "^1.3.1" thunky "^1.0.2" -multichain-bridge@^1.1.8: - version "1.1.9" - resolved "https://registry.nlark.com/multichain-bridge/download/multichain-bridge-1.1.9.tgz#d0501c237bdd24e0f8c95a9392455c8c8e112859" - integrity sha1-0FAcI3vdJOD4yVqTkkVcjI4RKFk= +multichain-bridge@^1.1.21: + version "1.1.21" + resolved "https://r2.cnpmjs.org/multichain-bridge/-/multichain-bridge-1.1.21.tgz#d1fe257c9c788304b61107c297715b607bfdf4ca" + integrity sha512-HBv+bxROtRmNbOHD/lWRpu/vKwQxkpD8H/i6CnbcwdDt78ZFRkIxOzY3UsdJnkUA/lKjWZPZQJW9F2X42jEaNw== dependencies: + "@terra-money/terra.js" "^3.0.1" "@types/qs" "^6.9.2" axios "^0.21.1" bitcoin-ops "^1.4.1" @@ -11594,6 +12593,13 @@ multihashes@^4.0.1: uint8arrays "^2.1.3" varint "^5.0.2" +multipipe@^0.1.2: + version "0.1.2" + resolved "https://r2.cnpmjs.org/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b" + integrity sha512-7ZxrUybYv9NonoXgwoOqtStIu18D1c3eFZj27hqgf5kBrBF8Q+tE8V0MW8dKM5QLkQPh1JhhbKgHLY9kifov4Q== + dependencies: + duplexer2 "0.0.2" + mute-stream@0.0.8: version "0.0.8" resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" @@ -11604,7 +12610,7 @@ nan@^2.12.1: resolved "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19" integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ== -nan@^2.13.2: +nan@^2.13.2, nan@^2.14.0, nan@^2.2.1: version "2.15.0" resolved "https://registry.nlark.com/nan/download/nan-2.15.0.tgz?cache=0&sync_timestamp=1628093656744&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fnan%2Fdownload%2Fnan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee" integrity sha1-PzSkc/8Y4VwbVia2KQO1rW5mX+4= @@ -11631,11 +12637,48 @@ nanomatch@^1.2.9: snapdragon "^0.8.1" to-regex "^3.0.1" +natives@^1.1.3: + version "1.1.6" + resolved "https://r2.cnpmjs.org/natives/-/natives-1.1.6.tgz#a603b4a498ab77173612b9ea1acdec4d980f00bb" + integrity sha512-6+TDFewD4yxY14ptjKaS63GVdtKiES1pTPyxn9Jb0rBqPMZ7VcCiooEhPNsr+mqHtMGxa/5c/HhcC4uPEUw/nA== + natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= +nebpay.js@^0.2.2: + version "0.2.2" + resolved "https://r2.cnpmjs.org/nebpay.js/-/nebpay.js-0.2.2.tgz#c43cb09ccb0bde5b49ad16e680ba136498e4569f" + integrity sha512-bYjpb8oxfuHrWeFqKeXtr2HBIVt5oKGQqGheugZwCYpdePI7BtQEmw8EiMnDrO6YghlBO2PRlAvN78/D4WWsmg== + dependencies: + bignumber.js "^5.0.0" + extend ">=3.0.1" + qrcode "^1.2.0" + +nebulas@^0.5.6: + version "0.5.7" + resolved "https://r2.cnpmjs.org/nebulas/-/nebulas-0.5.7.tgz#0ba951c5ab02a48968cdd24751b6d2b2083924a5" + integrity sha512-T/17ajtBGJiGGzfZvAHQVqn5GlX5UymIxnAqkj9XpZGjF0w9z2PhTZDlUXzTAAtoPJq6/5SzjqrZOQfMbLNcxQ== + dependencies: + axios "^0.18.0" + bignumber.js "^5.0.0" + bs58 "^4.0.1" + extend "^3.0.1" + gulp "3.9.1" + htmlescape "^1.1.1" + jssha "^2.3.1" + keccak "^1.0.2" + node-localstorage "^1.3.1" + promise "^8.0.1" + protobufjs "^6.8.6" + remove-node-modules "^1.7.2" + ripemd160 "^2.0.1" + safe-buffer "^5.1.1" + scryptsy "^2.0.0" + secp256k1 "^3.5.0" + uuid "^3.0.1" + negotiator@0.6.2: version "0.6.2" resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" @@ -11679,6 +12722,13 @@ node-fetch@2.6.1, node-fetch@^2.6.0, node-fetch@^2.6.1: resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== +node-fetch@2.6.7: + version "2.6.7" + resolved "https://r.cnpmjs.org/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" + integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== + dependencies: + whatwg-url "^5.0.0" + node-fetch@~1.7.1: version "1.7.3" resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" @@ -11731,6 +12781,13 @@ node-libs-browser@^2.2.1: util "^0.11.0" vm-browserify "^1.0.1" +node-localstorage@^1.3.1: + version "1.3.1" + resolved "https://r2.cnpmjs.org/node-localstorage/-/node-localstorage-1.3.1.tgz#3177ef42837f398aee5dd75e319b281e40704243" + integrity sha512-NMWCSWWc6JbHT5PyWlNT2i8r7PgGYXVntmKawY83k/M0UJScZ5jirb61TLnqKwd815DfBQu+lR3sRw08SPzIaQ== + dependencies: + write-file-atomic "^1.1.4" + node-modules-regexp@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" @@ -11868,6 +12925,11 @@ oauth-sign@~0.9.0: resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== +object-assign@^3.0.0: + version "3.0.0" + resolved "https://r2.cnpmjs.org/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" + integrity sha512-jHP15vXVGeVh1HuaA2wY6lxk+whK/x4KBG88VXeRma7CCun7iGD5qPc4eYykQ9sdQvg8jkwFKsSxHln2ybW3xQ== + object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" @@ -11932,6 +12994,16 @@ object.assign@^4.1.0, object.assign@^4.1.2: has-symbols "^1.0.1" object-keys "^1.1.1" +object.defaults@^1.1.0: + version "1.1.0" + resolved "https://r2.cnpmjs.org/object.defaults/-/object.defaults-1.1.0.tgz#3a7f868334b407dea06da16d88d5cd29e435fecf" + integrity sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA== + dependencies: + array-each "^1.0.1" + array-slice "^1.0.0" + for-own "^1.0.0" + isobject "^3.0.0" + object.entries@^1.1.0, object.entries@^1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz#43ccf9a50bc5fd5b649d45ab1a579f24e088cafd" @@ -11960,7 +13032,15 @@ object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.0 define-properties "^1.1.3" es-abstract "^1.18.0-next.2" -object.pick@^1.3.0: +object.map@^1.0.0: + version "1.0.1" + resolved "https://r2.cnpmjs.org/object.map/-/object.map-1.0.1.tgz#cf83e59dc8fcc0ad5f4250e1f78b3b81bd801d37" + integrity sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w== + dependencies: + for-own "^1.0.0" + make-iterator "^1.0.0" + +object.pick@^1.2.0, object.pick@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= @@ -12012,6 +13092,13 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: dependencies: wrappy "1" +once@~1.3.0: + version "1.3.3" + resolved "https://r2.cnpmjs.org/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20" + integrity sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w== + dependencies: + wrappy "1" + onetime@^1.0.0: version "1.1.0" resolved "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" @@ -12071,6 +13158,20 @@ optionator@^0.8.1, optionator@^0.8.3: type-check "~0.3.2" word-wrap "~1.2.3" +orchestrator@^0.3.0: + version "0.3.8" + resolved "https://r2.cnpmjs.org/orchestrator/-/orchestrator-0.3.8.tgz#14e7e9e2764f7315fbac184e506c7aa6df94ad7e" + integrity sha512-DrQ43ngaJ0e36j2CHyoDoIg1K4zbc78GnTQESebK9vu6hj4W5/pvfSFO/kgM620Yd0YnhseSNYsLK3/SszZ5NQ== + dependencies: + end-of-stream "~0.1.5" + sequencify "~0.0.7" + stream-consume "~0.1.0" + +ordered-read-streams@^0.1.0: + version "0.1.0" + resolved "https://r2.cnpmjs.org/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz#fd565a9af8eb4473ba69b6ed8a34352cb552f126" + integrity sha512-PMX5ehiNri4+lgk9fl09xuPeciGmyPyVUSBwwPT4C/3EHGxoVf7UdgKDE3SLBD4pUDmlzrg1L1cK5igrp+Tyuw== + original@^1.0.0: version "1.0.2" resolved "https://registry.npmjs.org/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" @@ -12083,6 +13184,11 @@ os-browserify@^0.3.0: resolved "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= +os-homedir@^1.0.0: + version "1.0.2" + resolved "https://r2.cnpmjs.org/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ== + os-locale@^3.0.0: version "3.1.0" resolved "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" @@ -12287,6 +13393,15 @@ parse-entities@^1.1.0: is-decimal "^1.0.0" is-hexadecimal "^1.0.0" +parse-filepath@^1.0.1: + version "1.0.2" + resolved "https://r2.cnpmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" + integrity sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q== + dependencies: + is-absolute "^1.0.0" + map-cache "^0.2.0" + path-root "^0.1.1" + parse-headers@^2.0.0: version "2.0.3" resolved "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.3.tgz#5e8e7512383d140ba02f0c7aa9f49b4399c92515" @@ -12317,6 +13432,16 @@ parse-json@^5.0.0: json-parse-even-better-errors "^2.3.0" lines-and-columns "^1.1.6" +parse-node-version@^1.0.0: + version "1.0.1" + resolved "https://r2.cnpmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz#e2b5dbede00e7fa9bc363607f53327e8b073189b" + integrity sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA== + +parse-passwd@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" + integrity sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q== + parse5@4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" @@ -12377,7 +13502,7 @@ path-is-absolute@^1.0.0: resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-is-inside@1.0.2, path-is-inside@^1.0.2: +path-is-inside@1.0.2, path-is-inside@^1.0.1, path-is-inside@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= @@ -12392,11 +13517,23 @@ path-key@^3.0.0, path-key@^3.1.0: resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== -path-parse@^1.0.6: +path-parse@^1.0.6, path-parse@^1.0.7: version "1.0.7" resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-root-regex@^0.1.0: + version "0.1.2" + resolved "https://r2.cnpmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" + integrity sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ== + +path-root@^0.1.1: + version "0.1.1" + resolved "https://r2.cnpmjs.org/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7" + integrity sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg== + dependencies: + path-root-regex "^0.1.0" + path-to-regexp@0.1.7: version "0.1.7" resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" @@ -12562,6 +13699,11 @@ pngjs@^3.0.0, pngjs@^3.3.0, pngjs@^3.3.3: resolved "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz#99ca7d725965fb655814eaf65f38f12bbdbf555f" integrity sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w== +pngjs@^5.0.0: + version "5.0.0" + resolved "https://r2.cnpmjs.org/pngjs/-/pngjs-5.0.0.tgz#e79dd2b215767fd9c04561c01236df960bce7fbb" + integrity sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw== + pnp-webpack-plugin@1.6.4: version "1.6.4" resolved "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz#c9711ac4dc48a685dabafc86f8b6dd9f8df84149" @@ -13260,6 +14402,11 @@ preact@10.4.1: resolved "https://registry.npmjs.org/preact/-/preact-10.4.1.tgz#9b3ba020547673a231c6cf16f0fbaef0e8863431" integrity sha512-WKrRpCSwL2t3tpOOGhf2WfTpcmbpxaWtDbdJdKdjd0aEiTkvOmS4NBkG6kzlaAHI9AkQ3iVqbFWM3Ei7mZ4o1Q== +preact@^10.5.9: + version "10.6.6" + resolved "https://r.cnpmjs.org/preact/-/preact-10.6.6.tgz#f1899bc8dab7c0788b858481532cb3b5d764a520" + integrity sha512-dgxpTFV2vs4vizwKohYKkk7g7rmp1wOOcfd4Tz3IB3Wi+ivZzsn/SpeKJhRENSE+n8sUfsAl4S3HiCVT923ABw== + precond@0.2: version "0.2.3" resolved "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz#aa9591bcaa24923f1e0f4849d240f47efc1075ac" @@ -13335,6 +14482,11 @@ pretty-format@^26.6.2: ansi-styles "^4.0.0" react-is "^17.0.1" +pretty-hrtime@^1.0.0: + version "1.0.3" + resolved "https://r2.cnpmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" + integrity sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A== + printj@~1.1.0: version "1.1.2" resolved "https://registry.nlark.com/printj/download/printj-1.1.2.tgz#d90deb2975a8b9f600fb3a1c94e3f4c53c78a222" @@ -13368,7 +14520,7 @@ promise-to-callback@^1.0.0: is-fn "^1.0.0" set-immediate-shim "^1.0.1" -promise@^8.0.3: +promise@^8.0.1, promise@^8.0.3: version "8.1.0" resolved "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz#697c25c3dfe7435dd79fcd58c38a135888eaf05e" integrity sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q== @@ -13392,6 +14544,25 @@ prop-types@^15.5.4, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.2, object-assign "^4.1.1" react-is "^16.8.1" +protobufjs@^6.8.6, protobufjs@~6.11.2: + version "6.11.2" + resolved "https://r2.cnpmjs.org/protobufjs/-/protobufjs-6.11.2.tgz#de39fabd4ed32beaa08e9bb1e30d08544c1edf8b" + integrity sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw== + dependencies: + "@protobufjs/aspromise" "^1.1.2" + "@protobufjs/base64" "^1.1.2" + "@protobufjs/codegen" "^2.0.4" + "@protobufjs/eventemitter" "^1.1.0" + "@protobufjs/fetch" "^1.1.0" + "@protobufjs/float" "^1.0.2" + "@protobufjs/inquire" "^1.1.0" + "@protobufjs/path" "^1.1.2" + "@protobufjs/pool" "^1.1.0" + "@protobufjs/utf8" "^1.1.0" + "@types/long" "^4.0.1" + "@types/node" ">=13.7.0" + long "^4.0.0" + proxy-addr@~2.0.5: version "2.0.7" resolved "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" @@ -13518,6 +14689,16 @@ qrcode@1.4.4: pngjs "^3.3.0" yargs "^13.2.4" +qrcode@^1.2.0: + version "1.5.0" + resolved "https://r2.cnpmjs.org/qrcode/-/qrcode-1.5.0.tgz#95abb8a91fdafd86f8190f2836abbfc500c72d1b" + integrity sha512-9MgRpgVc+/+47dFvQeD6U2s0Z92EsKzcHogtum4QB+UNd025WOJSHvn/hjk9xmzj7Stj95CyUAs31mrjxliEsQ== + dependencies: + dijkstrajs "^1.0.1" + encode-utf8 "^1.0.3" + pngjs "^5.0.0" + yargs "^15.3.1" + qs@6.7.0: version "6.7.0" resolved "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" @@ -13946,7 +15127,17 @@ read-pkg@^3.0.0: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^1.0.33: +"readable-stream@>=1.0.33-1 <1.1.0-0", readable-stream@~1.0.15: + version "1.0.34" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@^1.0.33, readable-stream@~1.1.9: version "1.1.14" resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= @@ -13956,7 +15147,7 @@ readable-stream@^1.0.33: isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@^3.0.6, readable-stream@^3.6.0: +readable-stream@^3.0.6, readable-stream@^3.5.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -13965,16 +15156,6 @@ readable-stream@^3.0.6, readable-stream@^3.6.0: string_decoder "^1.1.1" util-deprecate "^1.0.1" -readable-stream@~1.0.15: - version "1.0.34" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - readdirp@^2.2.1: version "2.2.1" resolved "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" @@ -14005,6 +15186,13 @@ rebass@^4.0.7: dependencies: reflexbox "^4.0.6" +rechoir@^0.6.2: + version "0.6.2" + resolved "https://r2.cnpmjs.org/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" + integrity sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw== + dependencies: + resolve "^1.1.6" + recursive-readdir@2.2.2: version "2.2.2" resolved "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz#9946fb3274e1628de6e36b2f6714953b4845094f" @@ -14174,6 +15362,14 @@ remark-parse@^5.0.0: vfile-location "^2.0.0" xtend "^4.0.1" +remove-node-modules@^1.7.2: + version "1.7.6" + resolved "https://r2.cnpmjs.org/remove-node-modules/-/remove-node-modules-1.7.6.tgz#9d5725a668578ac761f1f6cfd8e617ce65b77d77" + integrity sha512-aXdOwG7oh7JTOKMO3QmudQhoRZvYUh5O43QKdlgGVRbLFasavQpr5mTpXoy05LEiZ0wtuWl3g5wvSLqEFx5QlQ== + dependencies: + colors "^1.1.2" + del "^2.2.2" + remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" @@ -14200,6 +15396,11 @@ repeat-string@^1.5.4, repeat-string@^1.6.1: resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= +replace-ext@0.0.1: + version "0.0.1" + resolved "https://r2.cnpmjs.org/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" + integrity sha512-AFBWBy9EVRTa/LhEcG8QDP3FvpwZqmvN2QFDuJswFeaVhWnZMp8q3E6Zd90SR04PlIwfGdyVjNyLPyen/ek5CQ== + replace-ext@1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" @@ -14286,6 +15487,14 @@ resolve-cwd@^2.0.0: dependencies: resolve-from "^3.0.0" +resolve-dir@^1.0.0, resolve-dir@^1.0.1: + version "1.0.1" + resolved "https://r2.cnpmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" + integrity sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg== + dependencies: + expand-tilde "^2.0.0" + global-modules "^1.0.0" + resolve-from@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" @@ -14334,6 +15543,15 @@ resolve@1.15.0: dependencies: path-parse "^1.0.6" +resolve@^1.1.6, resolve@^1.1.7: + version "1.22.0" + resolved "https://r.cnpmjs.org/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" + integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== + dependencies: + is-core-module "^2.8.1" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.3.2, resolve@^1.8.1: version "1.20.0" resolved "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" @@ -14421,7 +15639,7 @@ rimraf@2.6.3: dependencies: glob "^7.1.3" -rimraf@^2.5.4, rimraf@^2.6.3, rimraf@^2.7.1: +rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.3, rimraf@^2.7.1: version "2.7.1" resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== @@ -14508,6 +15726,11 @@ safe-json-utils@1.0.0: resolved "https://registry.npmjs.org/safe-json-utils/-/safe-json-utils-1.0.0.tgz#8b1d68b13cff2ac6a5b68e6c9651cf7f8bb56d9b" integrity sha512-n0hJm6BgX8wk3G+AS8MOQnfcA8dfE6ZMUfwkHUNx69YxPlU3HDaZTHXWto35Z+C4mOjK1odlT95WutkGC+0Idw== +safe-json-utils@^1.1.1: + version "1.1.1" + resolved "https://r2.cnpmjs.org/safe-json-utils/-/safe-json-utils-1.1.1.tgz#0e883874467d95ab914c3f511096b89bfb3e63b1" + integrity sha512-SAJWGKDs50tAbiDXLf89PDwt9XYkWyANFWVzn4dTXl5QyI8t2o/bW5/OJl3lvc2WVU4MEpTo9Yz5NVFNsp+OJQ== + safe-regex@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" @@ -14599,6 +15822,25 @@ scrypt-js@3.0.1, scrypt-js@^3.0.0, scrypt-js@^3.0.1: resolved "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== +scryptsy@^2.0.0: + version "2.1.0" + resolved "https://r2.cnpmjs.org/scryptsy/-/scryptsy-2.1.0.tgz#8d1e8d0c025b58fdd25b6fa9a0dc905ee8faa790" + integrity sha512-1CdSqHQowJBnMAFyPEBRfqag/YP9OF394FV+4YREIJX4ljD7OxvQRDayyoyyCk+senRjSkP6VnUNQmVQqB6g7w== + +secp256k1@^3.5.0: + version "3.8.0" + resolved "https://r2.cnpmjs.org/secp256k1/-/secp256k1-3.8.0.tgz#28f59f4b01dbee9575f56a47034b7d2e3b3b352d" + integrity sha512-k5ke5avRZbtl9Tqx/SA7CbY3NF6Ro+Sj9cZxezFzuBlLDmyqPiL8hJJ+EmzD8Ig4LUDByHJ3/iPOVoRixs/hmw== + dependencies: + bindings "^1.5.0" + bip66 "^1.1.5" + bn.js "^4.11.8" + create-hash "^1.2.0" + drbg.js "^1.0.1" + elliptic "^6.5.2" + nan "^2.14.0" + safe-buffer "^5.1.2" + secp256k1@^4.0.1, secp256k1@^4.0.2: version "4.0.2" resolved "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.2.tgz#15dd57d0f0b9fdb54ac1fa1694f40e5e9a54f4a1" @@ -14640,6 +15882,11 @@ semver@7.0.0: resolved "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== +semver@^4.1.0: + version "4.3.6" + resolved "https://r2.cnpmjs.org/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" + integrity sha512-IrpJ+yoG4EOH8DFWuVg+8H1kW1Oaof0Wxe7cPcXW3x9BjkN/eVo54F15LyqemnDIUYskQWr9qvl/RihmSy6+xQ== + semver@^7.3.2: version "7.3.5" resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" @@ -14671,6 +15918,11 @@ send@0.17.1: range-parser "~1.2.1" statuses "~1.5.0" +sequencify@~0.0.7: + version "0.0.7" + resolved "https://r2.cnpmjs.org/sequencify/-/sequencify-0.0.7.tgz#90cff19d02e07027fd767f5ead3e7b95d1e7380c" + integrity sha512-YL8BPm0tp6SlXef/VqYpA/ijmTsDP2ZEXzsnqjkaWS7NP7Bfvw18NboL0O8WCIjy67sOCG3MYSK1PB4GC9XdtQ== + serialize-javascript@^1.7.0: version "1.9.1" resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.9.1.tgz#cfc200aef77b600c47da9bb8149c943e798c2fdb" @@ -14864,6 +16116,11 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" +sigmund@~1.0.0: + version "1.0.1" + resolved "https://r2.cnpmjs.org/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" + integrity sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g== + signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: version "3.0.3" resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" @@ -14942,6 +16199,11 @@ slice-ansi@^4.0.0: astral-regex "^2.0.0" is-fullwidth-code-point "^3.0.0" +slide@^1.1.5: + version "1.1.6" + resolved "https://r2.cnpmjs.org/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" + integrity sha512-NwrtjCg+lZoqhFU8fOwl4ay2ei8PaqCBOUV3/ektPY9trO1yQ1oXEfmHAhKArUVUr/hOHvy5f6AdP17dCM0zMw== + snapdragon-node@^2.0.1: version "2.1.1" resolved "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" @@ -15038,6 +16300,11 @@ source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7: resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= +sparkles@^1.0.0: + version "1.0.1" + resolved "https://r2.cnpmjs.org/sparkles/-/sparkles-1.0.1.tgz#008db65edce6c50eec0c5e228e1945061dd0437c" + integrity sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw== + spdx-correct@^3.0.0: version "3.1.1" resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" @@ -15204,6 +16471,14 @@ stream-browserify@^2.0.1: inherits "~2.0.1" readable-stream "^2.0.2" +stream-browserify@^3.0.0: + version "3.0.0" + resolved "https://r2.cnpmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz#22b0a2850cdf6503e73085da1fc7b7d0c2122f2f" + integrity sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA== + dependencies: + inherits "~2.0.4" + readable-stream "^3.5.0" + stream-combiner@~0.0.4: version "0.0.4" resolved "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14" @@ -15211,6 +16486,11 @@ stream-combiner@~0.0.4: dependencies: duplexer "~0.1.1" +stream-consume@~0.1.0: + version "0.1.1" + resolved "https://r2.cnpmjs.org/stream-consume/-/stream-consume-0.1.1.tgz#d3bdb598c2bd0ae82b8cac7ac50b1107a7996c48" + integrity sha512-tNa3hzgkjEP7XbCkbRXe1jpg+ievoa0O4SCFlMOYEscGSS4JJsckGL8swUyAa/ApGU3Ae4t6Honor4HhL+tRyg== + stream-each@^1.1.0: version "1.2.3" resolved "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" @@ -15382,6 +16662,14 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: dependencies: ansi-regex "^4.1.0" +strip-bom@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/strip-bom/-/strip-bom-1.0.0.tgz#85b8862f3844b5a6d5ec8467a93598173a36f794" + integrity sha512-qVAeAIjblKDp/8Cd0tJdxpe3Iq/HooI7En98alEaMbz4Wedlrcj3WI72dDQSrziRW5IQ0zeBo3JXsmS8RcS9jg== + dependencies: + first-chunk-stream "^1.0.0" + is-utf8 "^0.2.0" + strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" @@ -15536,6 +16824,11 @@ supports-color@^8.1.1: dependencies: has-flag "^4.0.0" +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://r.cnpmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + svg-parser@^2.0.0: version "2.0.4" resolved "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5" @@ -15698,6 +16991,14 @@ throttleit@^1.0.0: resolved "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz#9e785836daf46743145a5984b6268d828528ac6c" integrity sha1-nnhYNtr0Z0MUWlmEtiaNgoUorGw= +through2@^0.6.1: + version "0.6.5" + resolved "https://r2.cnpmjs.org/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48" + integrity sha512-RkK/CCESdTKQZHdmKICijdKKsCRVHs5KsLZ6pACAmF/1GPUQhonHSXWNERctxEp7RmvjdNbZTL5z9V7nSCXKcg== + dependencies: + readable-stream ">=1.0.33-1 <1.1.0-0" + xtend ">=4.0.0 <4.1.0-0" + through2@^2.0.0: version "2.0.5" resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" @@ -15716,6 +17017,18 @@ thunky@^1.0.2: resolved "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== +tildify@^1.0.0: + version "1.2.0" + resolved "https://r2.cnpmjs.org/tildify/-/tildify-1.2.0.tgz#dcec03f55dca9b7aa3e5b04f21817eb56e63588a" + integrity sha512-Y9q1GaV/BO65Z9Yf4NOGMuwt3SGdptkZBnaaKfTQakrDyCLiuO1Kc5wxW4xLdsjzunRtqtOdhekiUFmZbklwYQ== + dependencies: + os-homedir "^1.0.0" + +time-stamp@^1.0.0: + version "1.1.0" + resolved "https://r2.cnpmjs.org/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3" + integrity sha512-gLCeArryy2yNTRzTGKbZbloctj64jkZ57hj5zdraXue6aFgd6PmvVtEyiUU+hvU0v7q08oVv8r8ev0tRo6bvgw== + timed-out@^4.0.0, timed-out@^4.0.1: version "4.0.1" resolved "https://registry.nlark.com/timed-out/download/timed-out-4.0.1.tgz?cache=0&sync_timestamp=1619073467606&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftimed-out%2Fdownload%2Ftimed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" @@ -15867,6 +17180,11 @@ tr46@^1.0.1: dependencies: punycode "^2.1.0" +tr46@~0.0.3: + version "0.0.3" + resolved "https://r2.cnpmjs.org/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== + trim-trailing-lines@^1.0.0: version "1.1.4" resolved "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz#bd4abbec7cc880462f10b2c8b5ce1d8d1ec7c2c0" @@ -16048,6 +17366,11 @@ unbox-primitive@^1.0.1: has-symbols "^1.0.2" which-boxed-primitive "^1.0.2" +unc-path-regex@^0.1.2: + version "0.1.2" + resolved "https://r2.cnpmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" + integrity sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg== + unherit@^1.0.4: version "1.1.3" resolved "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz#6c9b503f2b41b262330c80e91c8614abdaa69c22" @@ -16125,6 +17448,11 @@ unique-slug@^2.0.0: dependencies: imurmurhash "^0.1.4" +unique-stream@^1.0.0: + version "1.0.0" + resolved "https://r2.cnpmjs.org/unique-stream/-/unique-stream-1.0.0.tgz#d59a4a75427447d9aa6c91e70263f8d26a4b104b" + integrity sha512-L8KM6TdpsoBk6TJTXevbmpub3bATS06Znu3BcfVPVQkFtnh1MFeCZ3gFKCQcji7f7YYiigsO5OR99vqhoNT8nQ== + unist-util-is@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/unist-util-is/-/unist-util-is-3.0.0.tgz#d9e84381c2468e82629e4a5be9d7d05a2dd324cd" @@ -16298,6 +17626,11 @@ use@^3.1.0: resolved "https://registry.npmjs.org/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== +user-home@^1.1.1: + version "1.1.1" + resolved "https://r2.cnpmjs.org/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" + integrity sha512-aggiKfEEubv3UwRNqTzLInZpAOmKzwdHqEBmW/hBA/mt99eg+b4VrX6i+IRLxU8+WJYfa33rGwRseg4eElUgsQ== + utf-8-validate@^5.0.2, utf-8-validate@^5.0.5: version "5.0.5" resolved "https://registry.nlark.com/utf-8-validate/download/utf-8-validate-5.0.5.tgz?cache=0&sync_timestamp=1620067993025&other_urls=https%3A%2F%2Fregistry.nlark.com%2Futf-8-validate%2Fdownload%2Futf-8-validate-5.0.5.tgz#dd32c2e82c72002dc9f02eb67ba6761f43456ca1" @@ -16407,6 +17740,13 @@ v8-compile-cache@^2.0.3: resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== +v8flags@^2.0.2: + version "2.1.1" + resolved "https://r2.cnpmjs.org/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4" + integrity sha512-SKfhk/LlaXzvtowJabLZwD4K6SGRYeoxA7KJeISlUMAB/NT4CBkZjMq3WceX2Ckm4llwqYVo8TICgsDYCBU2tA== + dependencies: + user-home "^1.1.1" + validate-npm-package-license@^3.0.1: version "3.0.4" resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" @@ -16478,6 +17818,37 @@ vfile@^2.0.0: unist-util-stringify-position "^1.0.0" vfile-message "^1.0.0" +vinyl-fs@^0.3.0: + version "0.3.14" + resolved "https://r2.cnpmjs.org/vinyl-fs/-/vinyl-fs-0.3.14.tgz#9a6851ce1cac1c1cea5fe86c0931d620c2cfa9e6" + integrity sha512-9CTKjt8378nhdydwFDTwywKio0n8aqq6xA70g0uypcnTNSCow/gQOwv0L9E2GaKd7EQ3kZl/diBxPSCgcBXESw== + dependencies: + defaults "^1.0.0" + glob-stream "^3.1.5" + glob-watcher "^0.0.6" + graceful-fs "^3.0.0" + mkdirp "^0.5.0" + strip-bom "^1.0.0" + through2 "^0.6.1" + vinyl "^0.4.0" + +vinyl@^0.4.0: + version "0.4.6" + resolved "https://r2.cnpmjs.org/vinyl/-/vinyl-0.4.6.tgz#2f356c87a550a255461f36bbeb2a5ba8bf784847" + integrity sha512-pmza4M5VA15HOImIQYWhoXGlGNafCm0QK5BpBUXkzzEwrRxKqBsbAhTfkT2zMcJhUX1G1Gkid0xaV8WjOl7DsA== + dependencies: + clone "^0.2.0" + clone-stats "^0.0.1" + +vinyl@^0.5.0: + version "0.5.3" + resolved "https://r2.cnpmjs.org/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde" + integrity sha512-P5zdf3WB9uzr7IFoVQ2wZTmUwHL8cMZWJGzLBNCHNZ3NB6HTMsYABtt7z8tAGIINLXyAob9B9a1yzVGMFOYKEA== + dependencies: + clone "^1.0.0" + clone-stats "^0.0.1" + replace-ext "0.0.1" + vm-browserify@^1.0.1: version "1.1.2" resolved "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" @@ -16522,6 +17893,25 @@ walker@^1.0.7, walker@~1.0.5: dependencies: makeerror "1.0.x" +walletlink@^2.4.7: + version "2.4.7" + resolved "https://r.cnpmjs.org/walletlink/-/walletlink-2.4.7.tgz#3dd034f7cd6e9d9f4cc1d677bb951869dc743e20" + integrity sha512-jhLVOMly9oWiSE8mZ4/+uMyVsAKHw71kGbgC1xYp50SQpuLT2pfa6Hiw2VQ0omP/WHsDAPFuBo8hJGxggr768w== + dependencies: + "@metamask/safe-event-emitter" "2.0.0" + bind-decorator "^1.0.11" + bn.js "^5.1.1" + clsx "^1.1.0" + eth-block-tracker "4.4.3" + eth-json-rpc-filters "4.2.2" + eth-rpc-errors "4.0.2" + js-sha256 "0.9.0" + json-rpc-engine "6.1.0" + keccak "^3.0.1" + preact "^10.5.9" + rxjs "^6.6.3" + stream-browserify "^3.0.0" + warning@^4.0.2, warning@^4.0.3: version "4.0.3" resolved "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3" @@ -16839,6 +18229,11 @@ webextension-polyfill@^0.7.0: resolved "https://registry.nlark.com/webextension-polyfill/download/webextension-polyfill-0.7.0.tgz#0df1120ff0266056319ce1a622b09ad8d4a56505" integrity sha1-DfESD/AmYFYxnOGmIrCa2NSlZQU= +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://r2.cnpmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== + webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" @@ -16997,6 +18392,14 @@ whatwg-mimetype@^2.1.0, whatwg-mimetype@^2.2.0, whatwg-mimetype@^2.3.0: resolved "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://r2.cnpmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + whatwg-url@^6.4.1: version "6.5.0" resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz#f2df02bff176fd65070df74ad5ccbb5a199965a8" @@ -17044,7 +18447,7 @@ which-typed-array@^1.1.2: has-symbols "^1.0.1" is-typed-array "^1.1.3" -which@^1.2.9, which@^1.3.0, which@^1.3.1: +which@^1.2.14, which@^1.2.9, which@^1.3.0, which@^1.3.1: version "1.3.1" resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -17300,6 +18703,15 @@ write-file-atomic@2.4.1: imurmurhash "^0.1.4" signal-exit "^3.0.2" +write-file-atomic@^1.1.4: + version "1.3.4" + resolved "https://r2.cnpmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz#f807a4f0b1d9e913ae7a48112e6cc3af1991b45f" + integrity sha512-SdrHoC/yVBPpV0Xq/mUZQIpW2sWXAShb/V4pomcJXh92RuaO+f3UTWItiR3Px+pLnV2PvC2/bfn5cwr5X6Vfxw== + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + slide "^1.1.5" + write@1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" @@ -17317,6 +18729,11 @@ ws@7.4.6, ws@^7.2.0: resolved "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== +ws@7.5.3: + version "7.5.3" + resolved "https://r2.cnpmjs.org/ws/-/ws-7.5.3.tgz#160835b63c7d97bfab418fc1b8a9fced2ac01a74" + integrity sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg== + ws@^3.0.0: version "3.3.3" resolved "https://registry.nlark.com/ws/download/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" @@ -17340,6 +18757,11 @@ ws@^6.1.2, ws@^6.2.1: dependencies: async-limiter "~1.0.0" +ws@^7.4.0, ws@^7.5.5: + version "7.5.7" + resolved "https://r.cnpmjs.org/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" + integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== + ws@^7.4.2, ws@^7.4.6: version "7.5.5" resolved "https://registry.nlark.com/ws/download/ws-7.5.5.tgz#8b4bc4af518cfabd0473ae4f99144287b33eb881" @@ -17420,7 +18842,7 @@ xmlhttprequest@1.8.0: resolved "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz#67fe075c5c24fef39f9d65f5f7b7fe75171968fc" integrity sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw= -xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: +"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: version "4.0.2" resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== @@ -17478,6 +18900,14 @@ yargs-parser@^13.1.2: camelcase "^5.0.0" decamelize "^1.2.0" +yargs-parser@^18.1.2: + version "18.1.3" + resolved "https://r2.cnpmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + yargs@12.0.5: version "12.0.5" resolved "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" @@ -17512,6 +18942,23 @@ yargs@^13.2.4, yargs@^13.3.0: y18n "^4.0.0" yargs-parser "^13.1.2" +yargs@^15.3.1: + version "15.4.1" + resolved "https://r2.cnpmjs.org/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" + integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== + dependencies: + cliui "^6.0.0" + decamelize "^1.2.0" + find-up "^4.1.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^4.2.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^18.1.2" + yauzl@^2.10.0: version "2.10.0" resolved "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9"