chore(react-wallet-v2): removes legacy v1 client support 🎉 (#212)
This commit is contained in:
parent
d7c56a3bea
commit
e0059fa65c
@ -12,9 +12,9 @@
|
|||||||
"@cosmjs/amino": "0.28.4",
|
"@cosmjs/amino": "0.28.4",
|
||||||
"@cosmjs/encoding": "0.28.4",
|
"@cosmjs/encoding": "0.28.4",
|
||||||
"@cosmjs/proto-signing": "0.28.4",
|
"@cosmjs/proto-signing": "0.28.4",
|
||||||
|
"@json-rpc-tools/utils": "1.7.6",
|
||||||
"@multiversx/sdk-core": "11.5.0",
|
"@multiversx/sdk-core": "11.5.0",
|
||||||
"@multiversx/sdk-wallet": "4.0.0",
|
"@multiversx/sdk-wallet": "4.0.0",
|
||||||
"@json-rpc-tools/utils": "1.7.6",
|
|
||||||
"@near-wallet-selector/wallet-utils": "^7.0.2",
|
"@near-wallet-selector/wallet-utils": "^7.0.2",
|
||||||
"@nextui-org/react": "1.0.8-beta.5",
|
"@nextui-org/react": "1.0.8-beta.5",
|
||||||
"@polkadot/keyring": "^10.1.2",
|
"@polkadot/keyring": "^10.1.2",
|
||||||
@ -22,8 +22,6 @@
|
|||||||
"@solana/web3.js": "1.43.0",
|
"@solana/web3.js": "1.43.0",
|
||||||
"@taquito/signer": "^15.1.0",
|
"@taquito/signer": "^15.1.0",
|
||||||
"@taquito/taquito": "^15.1.0",
|
"@taquito/taquito": "^15.1.0",
|
||||||
"@walletconnect/client": "1.8.0",
|
|
||||||
"@walletconnect/legacy-types": "^2.0.0-rc.0",
|
|
||||||
"@walletconnect/sign-client": "2.8.6",
|
"@walletconnect/sign-client": "2.8.6",
|
||||||
"@walletconnect/utils": "2.8.6",
|
"@walletconnect/utils": "2.8.6",
|
||||||
"bs58": "5.0.0",
|
"bs58": "5.0.0",
|
||||||
|
@ -11,10 +11,6 @@ import SessionSignTronModal from '@/views/SessionSignTronModal'
|
|||||||
import SessionSignTezosModal from '@/views/SessionSignTezosModal'
|
import SessionSignTezosModal from '@/views/SessionSignTezosModal'
|
||||||
import SessionSignTypedDataModal from '@/views/SessionSignTypedDataModal'
|
import SessionSignTypedDataModal from '@/views/SessionSignTypedDataModal'
|
||||||
import SessionUnsuportedMethodModal from '@/views/SessionUnsuportedMethodModal'
|
import SessionUnsuportedMethodModal from '@/views/SessionUnsuportedMethodModal'
|
||||||
import LegacySessionProposalModal from '@/views/LegacySessionProposalModal'
|
|
||||||
import LegacySessionSignModal from '@/views/LegacySessionSignModal'
|
|
||||||
import LegacySessionSignTypedDataModal from '@/views/LegacySessionSignTypedDataModal'
|
|
||||||
import LegacySessionSendTransactionModal from '@/views/LegacySessionSendTransactionModal'
|
|
||||||
import { Modal as NextModal } from '@nextui-org/react'
|
import { Modal as NextModal } from '@nextui-org/react'
|
||||||
import { useSnapshot } from 'valtio'
|
import { useSnapshot } from 'valtio'
|
||||||
|
|
||||||
@ -35,10 +31,6 @@ export default function Modal() {
|
|||||||
{view === 'SessionSignMultiversxModal' && <SessionSignMultiversxModal />}
|
{view === 'SessionSignMultiversxModal' && <SessionSignMultiversxModal />}
|
||||||
{view === 'SessionSignTronModal' && <SessionSignTronModal />}
|
{view === 'SessionSignTronModal' && <SessionSignTronModal />}
|
||||||
{view === 'SessionSignTezosModal' && <SessionSignTezosModal />}
|
{view === 'SessionSignTezosModal' && <SessionSignTezosModal />}
|
||||||
{view === 'LegacySessionProposalModal' && <LegacySessionProposalModal />}
|
|
||||||
{view === 'LegacySessionSignModal' && <LegacySessionSignModal />}
|
|
||||||
{view === 'LegacySessionSignTypedDataModal' && <LegacySessionSignTypedDataModal />}
|
|
||||||
{view === 'LegacySessionSendTransactionModal' && <LegacySessionSendTransactionModal />}
|
|
||||||
</NextModal>
|
</NextModal>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,6 @@ import Layout from '@/components/Layout'
|
|||||||
import Modal from '@/components/Modal'
|
import Modal from '@/components/Modal'
|
||||||
import useInitialization from '@/hooks/useInitialization'
|
import useInitialization from '@/hooks/useInitialization'
|
||||||
import useWalletConnectEventsManager from '@/hooks/useWalletConnectEventsManager'
|
import useWalletConnectEventsManager from '@/hooks/useWalletConnectEventsManager'
|
||||||
import { createLegacySignClient } from '@/utils/LegacyWalletConnectUtil'
|
|
||||||
import { createTheme, NextUIProvider } from '@nextui-org/react'
|
import { createTheme, NextUIProvider } from '@nextui-org/react'
|
||||||
import { AppProps } from 'next/app'
|
import { AppProps } from 'next/app'
|
||||||
import '../../public/main.css'
|
import '../../public/main.css'
|
||||||
@ -14,9 +13,6 @@ export default function App({ Component, pageProps }: AppProps) {
|
|||||||
// Step 2 - Once initialized, set up wallet connect event manager
|
// Step 2 - Once initialized, set up wallet connect event manager
|
||||||
useWalletConnectEventsManager(initialized)
|
useWalletConnectEventsManager(initialized)
|
||||||
|
|
||||||
// Backwards compatibility only - create a legacy v1 SignClient instance.
|
|
||||||
createLegacySignClient()
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<NextUIProvider theme={createTheme({ type: 'dark' })}>
|
<NextUIProvider theme={createTheme({ type: 'dark' })}>
|
||||||
<Layout initialized={initialized}>
|
<Layout initialized={initialized}>
|
||||||
|
@ -1,15 +1,13 @@
|
|||||||
import PageHeader from '@/components/PageHeader'
|
import PageHeader from '@/components/PageHeader'
|
||||||
import SessionCard from '@/components/SessionCard'
|
import SessionCard from '@/components/SessionCard'
|
||||||
import { legacySignClient } from '@/utils/LegacyWalletConnectUtil'
|
|
||||||
import { signClient } from '@/utils/WalletConnectUtil'
|
import { signClient } from '@/utils/WalletConnectUtil'
|
||||||
import { Text } from '@nextui-org/react'
|
import { Text } from '@nextui-org/react'
|
||||||
import { Fragment, useState } from 'react'
|
import { Fragment, useState } from 'react'
|
||||||
|
|
||||||
export default function SessionsPage() {
|
export default function SessionsPage() {
|
||||||
const [sessions, setSessions] = useState(signClient.session.values)
|
const [sessions] = useState(signClient.session.values)
|
||||||
const [legacySession, setLegacySession] = useState(legacySignClient?.session)
|
|
||||||
|
|
||||||
if (!legacySession && !sessions.length) {
|
if (!sessions.length) {
|
||||||
return (
|
return (
|
||||||
<Fragment>
|
<Fragment>
|
||||||
<PageHeader title="Sessions" />
|
<PageHeader title="Sessions" />
|
||||||
@ -21,13 +19,6 @@ export default function SessionsPage() {
|
|||||||
return (
|
return (
|
||||||
<Fragment>
|
<Fragment>
|
||||||
<PageHeader title="Sessions" />
|
<PageHeader title="Sessions" />
|
||||||
{legacySession ? (
|
|
||||||
<SessionCard
|
|
||||||
name={legacySession.peerMeta?.name + ' (v1/legacy)'}
|
|
||||||
url={legacySession.peerMeta?.url}
|
|
||||||
logo={legacySession.peerMeta?.icons[0]}
|
|
||||||
/>
|
|
||||||
) : null}
|
|
||||||
{sessions.length
|
{sessions.length
|
||||||
? sessions.map(session => {
|
? sessions.map(session => {
|
||||||
const { name, icons, url } = session.peer.metadata
|
const { name, icons, url } = session.peer.metadata
|
||||||
|
@ -2,7 +2,6 @@ import { parseUri } from '@walletconnect/utils'
|
|||||||
import PageHeader from '@/components/PageHeader'
|
import PageHeader from '@/components/PageHeader'
|
||||||
import QrReader from '@/components/QrReader'
|
import QrReader from '@/components/QrReader'
|
||||||
import { signClient } from '@/utils/WalletConnectUtil'
|
import { signClient } from '@/utils/WalletConnectUtil'
|
||||||
import { createLegacySignClient } from '@/utils/LegacyWalletConnectUtil'
|
|
||||||
import { Button, Input, Loading, Text } from '@nextui-org/react'
|
import { Button, Input, Loading, Text } from '@nextui-org/react'
|
||||||
import { Fragment, useState } from 'react'
|
import { Fragment, useState } from 'react'
|
||||||
|
|
||||||
@ -13,14 +12,7 @@ export default function WalletConnectPage() {
|
|||||||
async function onConnect(uri: string) {
|
async function onConnect(uri: string) {
|
||||||
try {
|
try {
|
||||||
setLoading(true)
|
setLoading(true)
|
||||||
const { version } = parseUri(uri)
|
await signClient.pair({ uri })
|
||||||
|
|
||||||
// Route the provided URI to the v1 SignClient if URI version indicates it, else use v2.
|
|
||||||
if (version === 1) {
|
|
||||||
createLegacySignClient({ uri })
|
|
||||||
} else {
|
|
||||||
await signClient.pair({ uri })
|
|
||||||
}
|
|
||||||
} catch (err: unknown) {
|
} catch (err: unknown) {
|
||||||
alert(err)
|
alert(err)
|
||||||
} finally {
|
} finally {
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
import { SessionTypes, SignClientTypes } from '@walletconnect/types'
|
import { SessionTypes, SignClientTypes } from '@walletconnect/types'
|
||||||
import { IClientMeta, IWalletConnectSession } from '@walletconnect/legacy-types'
|
|
||||||
import { proxy } from 'valtio'
|
import { proxy } from 'valtio'
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -9,12 +8,6 @@ interface ModalData {
|
|||||||
proposal?: SignClientTypes.EventArguments['session_proposal']
|
proposal?: SignClientTypes.EventArguments['session_proposal']
|
||||||
requestEvent?: SignClientTypes.EventArguments['session_request']
|
requestEvent?: SignClientTypes.EventArguments['session_request']
|
||||||
requestSession?: SessionTypes.Struct
|
requestSession?: SessionTypes.Struct
|
||||||
legacyProposal?: {
|
|
||||||
id: number
|
|
||||||
params: [{ chainId: number; peerId: string; peerMeta: IClientMeta }]
|
|
||||||
}
|
|
||||||
legacyCallRequestEvent?: { id: number; method: string; params: any[] }
|
|
||||||
legacyRequestSession?: IWalletConnectSession
|
|
||||||
}
|
}
|
||||||
|
|
||||||
interface State {
|
interface State {
|
||||||
@ -32,10 +25,6 @@ interface State {
|
|||||||
| 'SessionSignMultiversxModal'
|
| 'SessionSignMultiversxModal'
|
||||||
| 'SessionSignTronModal'
|
| 'SessionSignTronModal'
|
||||||
| 'SessionSignTezosModal'
|
| 'SessionSignTezosModal'
|
||||||
| 'LegacySessionProposalModal'
|
|
||||||
| 'LegacySessionSignModal'
|
|
||||||
| 'LegacySessionSignTypedDataModal'
|
|
||||||
| 'LegacySessionSendTransactionModal'
|
|
||||||
data?: ModalData
|
data?: ModalData
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,96 +0,0 @@
|
|||||||
import { IWalletConnectSession } from '@walletconnect/legacy-types'
|
|
||||||
import LegacySignClient from '@walletconnect/client'
|
|
||||||
import ModalStore from '@/store/ModalStore'
|
|
||||||
import { EIP155_SIGNING_METHODS } from '@/data/EIP155Data'
|
|
||||||
|
|
||||||
export let legacySignClient: LegacySignClient
|
|
||||||
|
|
||||||
export function createLegacySignClient({ uri }: { uri?: string } = {}) {
|
|
||||||
// If URI is passed always create a new session,
|
|
||||||
// otherwise fall back to cached session if client isn't already instantiated.
|
|
||||||
if (uri) {
|
|
||||||
deleteCachedLegacySession()
|
|
||||||
legacySignClient = new LegacySignClient({ uri })
|
|
||||||
} else if (!legacySignClient && getCachedLegacySession()) {
|
|
||||||
const session = getCachedLegacySession()
|
|
||||||
legacySignClient = new LegacySignClient({ session })
|
|
||||||
} else {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
legacySignClient.on('session_request', (error, payload) => {
|
|
||||||
if (error) {
|
|
||||||
throw new Error(`legacySignClient > session_request failed: ${error}`)
|
|
||||||
}
|
|
||||||
ModalStore.open('LegacySessionProposalModal', { legacyProposal: payload })
|
|
||||||
})
|
|
||||||
|
|
||||||
legacySignClient.on('connect', () => {
|
|
||||||
console.log('legacySignClient > connect')
|
|
||||||
})
|
|
||||||
|
|
||||||
legacySignClient.on('error', error => {
|
|
||||||
throw new Error(`legacySignClient > on error: ${error}`)
|
|
||||||
})
|
|
||||||
|
|
||||||
legacySignClient.on('call_request', (error, payload) => {
|
|
||||||
if (error) {
|
|
||||||
throw new Error(`legacySignClient > call_request failed: ${error}`)
|
|
||||||
}
|
|
||||||
onCallRequest(payload)
|
|
||||||
})
|
|
||||||
|
|
||||||
legacySignClient.on('disconnect', async () => {
|
|
||||||
deleteCachedLegacySession()
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
const onCallRequest = async (payload: { id: number; method: string; params: any[] }) => {
|
|
||||||
switch (payload.method) {
|
|
||||||
case EIP155_SIGNING_METHODS.ETH_SIGN:
|
|
||||||
case EIP155_SIGNING_METHODS.PERSONAL_SIGN:
|
|
||||||
return ModalStore.open('LegacySessionSignModal', {
|
|
||||||
legacyCallRequestEvent: payload,
|
|
||||||
legacyRequestSession: legacySignClient.session
|
|
||||||
})
|
|
||||||
|
|
||||||
case EIP155_SIGNING_METHODS.ETH_SIGN_TYPED_DATA:
|
|
||||||
case EIP155_SIGNING_METHODS.ETH_SIGN_TYPED_DATA_V3:
|
|
||||||
case EIP155_SIGNING_METHODS.ETH_SIGN_TYPED_DATA_V4:
|
|
||||||
return ModalStore.open('LegacySessionSignTypedDataModal', {
|
|
||||||
legacyCallRequestEvent: payload,
|
|
||||||
legacyRequestSession: legacySignClient.session
|
|
||||||
})
|
|
||||||
|
|
||||||
case EIP155_SIGNING_METHODS.ETH_SEND_TRANSACTION:
|
|
||||||
case EIP155_SIGNING_METHODS.ETH_SIGN_TRANSACTION:
|
|
||||||
return ModalStore.open('LegacySessionSendTransactionModal', {
|
|
||||||
legacyCallRequestEvent: payload,
|
|
||||||
legacyRequestSession: legacySignClient.session
|
|
||||||
})
|
|
||||||
|
|
||||||
default:
|
|
||||||
alert(`${payload.method} is not supported for WalletConnect v1`)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function getCachedLegacySession(): IWalletConnectSession | undefined {
|
|
||||||
if (typeof window === 'undefined') return
|
|
||||||
|
|
||||||
const local = window.localStorage ? window.localStorage.getItem('walletconnect') : null
|
|
||||||
|
|
||||||
let session = null
|
|
||||||
if (local) {
|
|
||||||
try {
|
|
||||||
session = JSON.parse(local)
|
|
||||||
} catch (error) {
|
|
||||||
throw error
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return session
|
|
||||||
}
|
|
||||||
|
|
||||||
function deleteCachedLegacySession(): void {
|
|
||||||
if (typeof window === 'undefined') return
|
|
||||||
window.localStorage.removeItem('walletconnect')
|
|
||||||
}
|
|
@ -1,105 +0,0 @@
|
|||||||
import ProjectInfoCard from '@/components/ProjectInfoCard'
|
|
||||||
import ProposalSelectSection from '@/components/ProposalSelectSection'
|
|
||||||
import RequestModalContainer from '@/components/RequestModalContainer'
|
|
||||||
import ModalStore from '@/store/ModalStore'
|
|
||||||
import { eip155Addresses } from '@/utils/EIP155WalletUtil'
|
|
||||||
import { isEIP155Chain } from '@/utils/HelperUtil'
|
|
||||||
import { legacySignClient } from '@/utils/LegacyWalletConnectUtil'
|
|
||||||
import { Button, Divider, Modal, Text } from '@nextui-org/react'
|
|
||||||
import { getSdkError } from '@walletconnect/utils'
|
|
||||||
import { Fragment, useState } from 'react'
|
|
||||||
|
|
||||||
export default function LegacySessionProposalModal() {
|
|
||||||
const [selectedAccounts, setSelectedAccounts] = useState<Record<string, string[]>>({})
|
|
||||||
const hasSelected = Object.keys(selectedAccounts).length
|
|
||||||
|
|
||||||
// Get proposal data and wallet address from store
|
|
||||||
const proposal = ModalStore.state.data?.legacyProposal
|
|
||||||
|
|
||||||
// Ensure proposal is defined
|
|
||||||
if (!proposal) {
|
|
||||||
return <Text>Missing proposal data</Text>
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get required proposal data
|
|
||||||
const { id, params } = proposal
|
|
||||||
const [{ chainId, peerMeta }] = params
|
|
||||||
|
|
||||||
// Add / remove address from EIP155 selection
|
|
||||||
function onSelectAccount(chain: string, account: string) {
|
|
||||||
if (selectedAccounts[chain]?.includes(account)) {
|
|
||||||
const newSelectedAccounts = selectedAccounts[chain]?.filter(a => a !== account)
|
|
||||||
setSelectedAccounts(prev => ({
|
|
||||||
...prev,
|
|
||||||
[chain]: newSelectedAccounts
|
|
||||||
}))
|
|
||||||
} else {
|
|
||||||
const prevChainAddresses = selectedAccounts[chain] ?? []
|
|
||||||
setSelectedAccounts(prev => ({
|
|
||||||
...prev,
|
|
||||||
[chain]: [...prevChainAddresses, account]
|
|
||||||
}))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Hanlde approve action, construct session namespace
|
|
||||||
async function onApprove() {
|
|
||||||
if (proposal) {
|
|
||||||
legacySignClient.approveSession({
|
|
||||||
accounts: selectedAccounts['eip155'],
|
|
||||||
chainId: chainId ?? 1
|
|
||||||
})
|
|
||||||
}
|
|
||||||
ModalStore.close()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle reject action
|
|
||||||
function onReject() {
|
|
||||||
if (proposal) {
|
|
||||||
legacySignClient.rejectSession(getSdkError('USER_REJECTED_METHODS'))
|
|
||||||
}
|
|
||||||
ModalStore.close()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Render account selection checkboxes based on chain
|
|
||||||
function renderAccountSelection(chain: string) {
|
|
||||||
if (isEIP155Chain(chain)) {
|
|
||||||
return (
|
|
||||||
<ProposalSelectSection
|
|
||||||
addresses={eip155Addresses}
|
|
||||||
selectedAddresses={selectedAccounts[chain]}
|
|
||||||
onSelect={onSelectAccount}
|
|
||||||
chain={chain}
|
|
||||||
/>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
|
||||||
<Fragment>
|
|
||||||
<RequestModalContainer title="Session Proposal">
|
|
||||||
<ProjectInfoCard metadata={peerMeta} />
|
|
||||||
<Divider y={2} />
|
|
||||||
{renderAccountSelection('eip155')}
|
|
||||||
<Divider y={2} />
|
|
||||||
</RequestModalContainer>
|
|
||||||
|
|
||||||
<Modal.Footer>
|
|
||||||
<Button auto flat color="error" onClick={onReject}>
|
|
||||||
Reject
|
|
||||||
</Button>
|
|
||||||
|
|
||||||
<Button
|
|
||||||
auto
|
|
||||||
flat
|
|
||||||
color="success"
|
|
||||||
onClick={onApprove}
|
|
||||||
disabled={!hasSelected}
|
|
||||||
css={{ opacity: hasSelected ? 1 : 0.4 }}
|
|
||||||
>
|
|
||||||
Approve
|
|
||||||
</Button>
|
|
||||||
</Modal.Footer>
|
|
||||||
</Fragment>
|
|
||||||
)
|
|
||||||
}
|
|
@ -1,104 +0,0 @@
|
|||||||
import ProjectInfoCard from '@/components/ProjectInfoCard'
|
|
||||||
import RequestDataCard from '@/components/RequestDataCard'
|
|
||||||
import RequesDetailsCard from '@/components/RequestDetalilsCard'
|
|
||||||
import RequestMethodCard from '@/components/RequestMethodCard'
|
|
||||||
import RequestModalContainer from '@/components/RequestModalContainer'
|
|
||||||
import ModalStore from '@/store/ModalStore'
|
|
||||||
import { approveEIP155Request, rejectEIP155Request } from '@/utils/EIP155RequestHandlerUtil'
|
|
||||||
import { legacySignClient } from '@/utils/LegacyWalletConnectUtil'
|
|
||||||
import { Button, Divider, Loading, Modal, Text } from '@nextui-org/react'
|
|
||||||
import { Fragment, useState } from 'react'
|
|
||||||
|
|
||||||
export default function LegacySessionSendTransactionModal() {
|
|
||||||
const [loading, setLoading] = useState(false)
|
|
||||||
|
|
||||||
// Get request and wallet data from store
|
|
||||||
const requestEvent = ModalStore.state.data?.legacyCallRequestEvent
|
|
||||||
const requestSession = ModalStore.state.data?.legacyRequestSession
|
|
||||||
|
|
||||||
// Ensure request and wallet are defined
|
|
||||||
if (!requestEvent || !requestSession) {
|
|
||||||
return <Text>Missing request data</Text>
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get required proposal data
|
|
||||||
|
|
||||||
const { id, method, params } = requestEvent
|
|
||||||
const transaction = params[0]
|
|
||||||
|
|
||||||
// // Remove unneeded key coming from v1 sample dapp that throws Ethers.
|
|
||||||
if (transaction['gas']) delete transaction['gas']
|
|
||||||
|
|
||||||
// Handle approve action
|
|
||||||
async function onApprove() {
|
|
||||||
if (requestEvent) {
|
|
||||||
const response = await approveEIP155Request({
|
|
||||||
id,
|
|
||||||
topic: '',
|
|
||||||
params: { request: { method, params }, chainId: '1' }
|
|
||||||
})
|
|
||||||
|
|
||||||
if ('error' in response) {
|
|
||||||
legacySignClient.rejectRequest({
|
|
||||||
id,
|
|
||||||
error: response.error
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
legacySignClient.approveRequest({
|
|
||||||
id,
|
|
||||||
result: response.result
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
ModalStore.close()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle reject action
|
|
||||||
async function onReject() {
|
|
||||||
if (requestEvent) {
|
|
||||||
const { error } = rejectEIP155Request({
|
|
||||||
id,
|
|
||||||
topic: '',
|
|
||||||
params: { request: { method, params }, chainId: '1' }
|
|
||||||
})
|
|
||||||
legacySignClient.rejectRequest({
|
|
||||||
id,
|
|
||||||
error
|
|
||||||
})
|
|
||||||
ModalStore.close()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
|
||||||
<Fragment>
|
|
||||||
<RequestModalContainer title="Send / Sign Transaction">
|
|
||||||
<ProjectInfoCard metadata={requestSession.peerMeta!} />
|
|
||||||
|
|
||||||
<Divider y={2} />
|
|
||||||
|
|
||||||
<RequestDataCard data={transaction} />
|
|
||||||
|
|
||||||
<Divider y={2} />
|
|
||||||
|
|
||||||
<RequesDetailsCard
|
|
||||||
chains={['eip155:' + legacySignClient.chainId]}
|
|
||||||
protocol={legacySignClient.protocol}
|
|
||||||
/>
|
|
||||||
|
|
||||||
<Divider y={2} />
|
|
||||||
|
|
||||||
<RequestMethodCard methods={[method]} />
|
|
||||||
</RequestModalContainer>
|
|
||||||
|
|
||||||
<Modal.Footer>
|
|
||||||
<Button auto flat color="error" onClick={onReject} disabled={loading}>
|
|
||||||
Reject
|
|
||||||
</Button>
|
|
||||||
<Button auto flat color="success" onClick={onApprove} disabled={loading}>
|
|
||||||
{loading ? <Loading size="sm" color="success" /> : 'Approve'}
|
|
||||||
</Button>
|
|
||||||
</Modal.Footer>
|
|
||||||
</Fragment>
|
|
||||||
)
|
|
||||||
}
|
|
@ -1,105 +0,0 @@
|
|||||||
import ProjectInfoCard from '@/components/ProjectInfoCard'
|
|
||||||
import RequesDetailsCard from '@/components/RequestDetalilsCard'
|
|
||||||
import RequestMethodCard from '@/components/RequestMethodCard'
|
|
||||||
import RequestModalContainer from '@/components/RequestModalContainer'
|
|
||||||
import ModalStore from '@/store/ModalStore'
|
|
||||||
import { approveEIP155Request, rejectEIP155Request } from '@/utils/EIP155RequestHandlerUtil'
|
|
||||||
import { getSignParamsMessage } from '@/utils/HelperUtil'
|
|
||||||
import { legacySignClient } from '@/utils/LegacyWalletConnectUtil'
|
|
||||||
import { Button, Col, Divider, Modal, Row, Text } from '@nextui-org/react'
|
|
||||||
import { Fragment } from 'react'
|
|
||||||
|
|
||||||
export default function LegacySessionSignModal() {
|
|
||||||
// Get request and wallet data from store
|
|
||||||
const requestEvent = ModalStore.state.data?.legacyCallRequestEvent
|
|
||||||
const requestSession = ModalStore.state.data?.legacyRequestSession
|
|
||||||
|
|
||||||
// Ensure request and wallet are defined
|
|
||||||
if (!requestEvent || !requestSession) {
|
|
||||||
return <Text>Missing request data</Text>
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get required request data
|
|
||||||
const { id, method, params } = requestEvent
|
|
||||||
|
|
||||||
// Get message, convert it to UTF8 string if it is valid hex
|
|
||||||
const message = getSignParamsMessage(params)
|
|
||||||
|
|
||||||
// Handle approve action (logic varies based on request method)
|
|
||||||
async function onApprove() {
|
|
||||||
if (requestEvent) {
|
|
||||||
const response = await approveEIP155Request({
|
|
||||||
id,
|
|
||||||
topic: '',
|
|
||||||
params: { request: { method, params }, chainId: '1' }
|
|
||||||
})
|
|
||||||
|
|
||||||
if ('error' in response) {
|
|
||||||
legacySignClient.rejectRequest({
|
|
||||||
id,
|
|
||||||
error: response.error
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
legacySignClient.approveRequest({
|
|
||||||
id,
|
|
||||||
result: response.result
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
ModalStore.close()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle reject action
|
|
||||||
async function onReject() {
|
|
||||||
if (requestEvent) {
|
|
||||||
const { error } = rejectEIP155Request({
|
|
||||||
id,
|
|
||||||
topic: '',
|
|
||||||
params: { request: { method, params }, chainId: '1' }
|
|
||||||
})
|
|
||||||
legacySignClient.rejectRequest({
|
|
||||||
id,
|
|
||||||
error
|
|
||||||
})
|
|
||||||
ModalStore.close()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
|
||||||
<Fragment>
|
|
||||||
<RequestModalContainer title="Sign Message">
|
|
||||||
<ProjectInfoCard metadata={requestSession.peerMeta!} />
|
|
||||||
|
|
||||||
<Divider y={2} />
|
|
||||||
|
|
||||||
<RequesDetailsCard
|
|
||||||
chains={['eip155:' + legacySignClient.chainId]}
|
|
||||||
protocol={legacySignClient.protocol}
|
|
||||||
/>
|
|
||||||
|
|
||||||
<Divider y={2} />
|
|
||||||
|
|
||||||
<Row>
|
|
||||||
<Col>
|
|
||||||
<Text h5>Message</Text>
|
|
||||||
<Text color="$gray400">{message}</Text>
|
|
||||||
</Col>
|
|
||||||
</Row>
|
|
||||||
|
|
||||||
<Divider y={2} />
|
|
||||||
|
|
||||||
<RequestMethodCard methods={[method]} />
|
|
||||||
</RequestModalContainer>
|
|
||||||
|
|
||||||
<Modal.Footer>
|
|
||||||
<Button auto flat color="error" onClick={onReject}>
|
|
||||||
Reject
|
|
||||||
</Button>
|
|
||||||
<Button auto flat color="success" onClick={onApprove}>
|
|
||||||
Approve
|
|
||||||
</Button>
|
|
||||||
</Modal.Footer>
|
|
||||||
</Fragment>
|
|
||||||
)
|
|
||||||
}
|
|
@ -1,101 +0,0 @@
|
|||||||
import ProjectInfoCard from '@/components/ProjectInfoCard'
|
|
||||||
import RequestDataCard from '@/components/RequestDataCard'
|
|
||||||
import RequesDetailsCard from '@/components/RequestDetalilsCard'
|
|
||||||
import RequestMethodCard from '@/components/RequestMethodCard'
|
|
||||||
import RequestModalContainer from '@/components/RequestModalContainer'
|
|
||||||
import ModalStore from '@/store/ModalStore'
|
|
||||||
import { approveEIP155Request, rejectEIP155Request } from '@/utils/EIP155RequestHandlerUtil'
|
|
||||||
import { getSignTypedDataParamsData } from '@/utils/HelperUtil'
|
|
||||||
import { legacySignClient } from '@/utils/LegacyWalletConnectUtil'
|
|
||||||
import { Button, Divider, Modal, Text } from '@nextui-org/react'
|
|
||||||
import { Fragment } from 'react'
|
|
||||||
|
|
||||||
export default function LegacySessionSignTypedDataModal() {
|
|
||||||
// Get request and wallet data from store
|
|
||||||
const requestEvent = ModalStore.state.data?.legacyCallRequestEvent
|
|
||||||
const requestSession = ModalStore.state.data?.legacyRequestSession
|
|
||||||
|
|
||||||
// Ensure request and wallet are defined
|
|
||||||
if (!requestEvent || !requestSession) {
|
|
||||||
return <Text>Missing request data</Text>
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get required request data
|
|
||||||
const { id, method, params } = requestEvent
|
|
||||||
|
|
||||||
// Get data
|
|
||||||
const data = getSignTypedDataParamsData(params)
|
|
||||||
|
|
||||||
// Handle approve action (logic varies based on request method)
|
|
||||||
async function onApprove() {
|
|
||||||
if (requestEvent) {
|
|
||||||
const response = await approveEIP155Request({
|
|
||||||
id,
|
|
||||||
topic: '',
|
|
||||||
params: { request: { method, params }, chainId: '1' }
|
|
||||||
})
|
|
||||||
|
|
||||||
if ('error' in response) {
|
|
||||||
legacySignClient.rejectRequest({
|
|
||||||
id,
|
|
||||||
error: response.error
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
legacySignClient.approveRequest({
|
|
||||||
id,
|
|
||||||
result: response.result
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
ModalStore.close()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle reject action
|
|
||||||
async function onReject() {
|
|
||||||
if (requestEvent) {
|
|
||||||
const { error } = rejectEIP155Request({
|
|
||||||
id,
|
|
||||||
topic: '',
|
|
||||||
params: { request: { method, params }, chainId: '1' }
|
|
||||||
})
|
|
||||||
legacySignClient.rejectRequest({
|
|
||||||
id,
|
|
||||||
error
|
|
||||||
})
|
|
||||||
ModalStore.close()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
|
||||||
<Fragment>
|
|
||||||
<RequestModalContainer title="Sign Typed Data">
|
|
||||||
<ProjectInfoCard metadata={requestSession.peerMeta!} />
|
|
||||||
|
|
||||||
<Divider y={2} />
|
|
||||||
|
|
||||||
<RequesDetailsCard
|
|
||||||
chains={['eip155:' + legacySignClient.chainId]}
|
|
||||||
protocol={legacySignClient.protocol}
|
|
||||||
/>
|
|
||||||
|
|
||||||
<Divider y={2} />
|
|
||||||
|
|
||||||
<RequestDataCard data={data} />
|
|
||||||
|
|
||||||
<Divider y={2} />
|
|
||||||
|
|
||||||
<RequestMethodCard methods={[method]} />
|
|
||||||
</RequestModalContainer>
|
|
||||||
|
|
||||||
<Modal.Footer>
|
|
||||||
<Button auto flat color="error" onClick={onReject}>
|
|
||||||
Reject
|
|
||||||
</Button>
|
|
||||||
<Button auto flat color="success" onClick={onApprove}>
|
|
||||||
Approve
|
|
||||||
</Button>
|
|
||||||
</Modal.Footer>
|
|
||||||
</Fragment>
|
|
||||||
)
|
|
||||||
}
|
|
@ -2493,27 +2493,6 @@
|
|||||||
version "0.3.1"
|
version "0.3.1"
|
||||||
resolved "https://codeload.github.com/ecadlabs/axios-fetch-adapter/tar.gz/167684f522e90343b9f3439d9a43ac571e2396f6"
|
resolved "https://codeload.github.com/ecadlabs/axios-fetch-adapter/tar.gz/167684f522e90343b9f3439d9a43ac571e2396f6"
|
||||||
|
|
||||||
"@walletconnect/browser-utils@^1.8.0":
|
|
||||||
version "1.8.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/browser-utils/-/browser-utils-1.8.0.tgz#33c10e777aa6be86c713095b5206d63d32df0951"
|
|
||||||
integrity sha512-Wcqqx+wjxIo9fv6eBUFHPsW1y/bGWWRboni5dfD8PtOmrihrEpOCmvRJe4rfl7xgJW8Ea9UqKEaq0bIRLHlK4A==
|
|
||||||
dependencies:
|
|
||||||
"@walletconnect/safe-json" "1.0.0"
|
|
||||||
"@walletconnect/types" "^1.8.0"
|
|
||||||
"@walletconnect/window-getters" "1.0.0"
|
|
||||||
"@walletconnect/window-metadata" "1.0.0"
|
|
||||||
detect-browser "5.2.0"
|
|
||||||
|
|
||||||
"@walletconnect/client@1.8.0":
|
|
||||||
version "1.8.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/client/-/client-1.8.0.tgz#6f46b5499c7c861c651ff1ebe5da5b66225ca696"
|
|
||||||
integrity sha512-svyBQ14NHx6Cs2j4TpkQaBI/2AF4+LXz64FojTjMtV4VMMhl81jSO1vNeg+yYhQzvjcGH/GpSwixjyCW0xFBOQ==
|
|
||||||
dependencies:
|
|
||||||
"@walletconnect/core" "^1.8.0"
|
|
||||||
"@walletconnect/iso-crypto" "^1.8.0"
|
|
||||||
"@walletconnect/types" "^1.8.0"
|
|
||||||
"@walletconnect/utils" "^1.8.0"
|
|
||||||
|
|
||||||
"@walletconnect/core@2.8.6":
|
"@walletconnect/core@2.8.6":
|
||||||
version "2.8.6"
|
version "2.8.6"
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/core/-/core-2.8.6.tgz#1db6acae36437dbe7357be7767f1faeda5d4ca6c"
|
resolved "https://registry.yarnpkg.com/@walletconnect/core/-/core-2.8.6.tgz#1db6acae36437dbe7357be7767f1faeda5d4ca6c"
|
||||||
@ -2536,36 +2515,6 @@
|
|||||||
lodash.isequal "4.5.0"
|
lodash.isequal "4.5.0"
|
||||||
uint8arrays "^3.1.0"
|
uint8arrays "^3.1.0"
|
||||||
|
|
||||||
"@walletconnect/core@^1.8.0":
|
|
||||||
version "1.8.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/core/-/core-1.8.0.tgz#6b2748b90c999d9d6a70e52e26a8d5e8bfeaa81e"
|
|
||||||
integrity sha512-aFTHvEEbXcZ8XdWBw6rpQDte41Rxwnuk3SgTD8/iKGSRTni50gI9S3YEzMj05jozSiOBxQci4pJDMVhIUMtarw==
|
|
||||||
dependencies:
|
|
||||||
"@walletconnect/socket-transport" "^1.8.0"
|
|
||||||
"@walletconnect/types" "^1.8.0"
|
|
||||||
"@walletconnect/utils" "^1.8.0"
|
|
||||||
|
|
||||||
"@walletconnect/crypto@^1.0.2":
|
|
||||||
version "1.0.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/crypto/-/crypto-1.0.3.tgz#7b8dd4d7e2884fe3543c7c07aea425eef5ef9dd4"
|
|
||||||
integrity sha512-+2jdORD7XQs76I2Odgr3wwrtyuLUXD/kprNVsjWRhhhdO9Mt6WqVzOPu0/t7OHSmgal8k7SoBQzUc5hu/8zL/g==
|
|
||||||
dependencies:
|
|
||||||
"@walletconnect/encoding" "^1.0.2"
|
|
||||||
"@walletconnect/environment" "^1.0.1"
|
|
||||||
"@walletconnect/randombytes" "^1.0.3"
|
|
||||||
aes-js "^3.1.2"
|
|
||||||
hash.js "^1.1.7"
|
|
||||||
tslib "1.14.1"
|
|
||||||
|
|
||||||
"@walletconnect/encoding@^1.0.1", "@walletconnect/encoding@^1.0.2":
|
|
||||||
version "1.0.2"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/encoding/-/encoding-1.0.2.tgz#cb3942ad038d6a6bf01158f66773062dd25724da"
|
|
||||||
integrity sha512-CrwSBrjqJ7rpGQcTL3kU+Ief+Bcuu9PH6JLOb+wM6NITX1GTxR/MfNwnQfhLKK6xpRAyj2/nM04OOH6wS8Imag==
|
|
||||||
dependencies:
|
|
||||||
is-typedarray "1.0.0"
|
|
||||||
tslib "1.14.1"
|
|
||||||
typedarray-to-buffer "3.1.5"
|
|
||||||
|
|
||||||
"@walletconnect/environment@^1.0.1":
|
"@walletconnect/environment@^1.0.1":
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/environment/-/environment-1.0.1.tgz#1d7f82f0009ab821a2ba5ad5e5a7b8ae3b214cd7"
|
resolved "https://registry.yarnpkg.com/@walletconnect/environment/-/environment-1.0.1.tgz#1d7f82f0009ab821a2ba5ad5e5a7b8ae3b214cd7"
|
||||||
@ -2590,15 +2539,6 @@
|
|||||||
"@walletconnect/time" "^1.0.2"
|
"@walletconnect/time" "^1.0.2"
|
||||||
tslib "1.14.1"
|
tslib "1.14.1"
|
||||||
|
|
||||||
"@walletconnect/iso-crypto@^1.8.0":
|
|
||||||
version "1.8.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/iso-crypto/-/iso-crypto-1.8.0.tgz#44ddf337c4f02837c062dbe33fa7ab36789df451"
|
|
||||||
integrity sha512-pWy19KCyitpfXb70hA73r9FcvklS+FvO9QUIttp3c2mfW8frxgYeRXfxLRCIQTkaYueRKvdqPjbyhPLam508XQ==
|
|
||||||
dependencies:
|
|
||||||
"@walletconnect/crypto" "^1.0.2"
|
|
||||||
"@walletconnect/types" "^1.8.0"
|
|
||||||
"@walletconnect/utils" "^1.8.0"
|
|
||||||
|
|
||||||
"@walletconnect/jsonrpc-provider@1.0.13":
|
"@walletconnect/jsonrpc-provider@1.0.13":
|
||||||
version "1.0.13"
|
version "1.0.13"
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.13.tgz#9a74da648d015e1fffc745f0c7d629457f53648b"
|
resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.13.tgz#9a74da648d015e1fffc745f0c7d629457f53648b"
|
||||||
@ -2616,7 +2556,7 @@
|
|||||||
keyvaluestorage-interface "^1.0.0"
|
keyvaluestorage-interface "^1.0.0"
|
||||||
tslib "1.14.1"
|
tslib "1.14.1"
|
||||||
|
|
||||||
"@walletconnect/jsonrpc-utils@1.0.8", "@walletconnect/jsonrpc-utils@^1.0.3", "@walletconnect/jsonrpc-utils@^1.0.6", "@walletconnect/jsonrpc-utils@^1.0.8":
|
"@walletconnect/jsonrpc-utils@1.0.8", "@walletconnect/jsonrpc-utils@^1.0.6", "@walletconnect/jsonrpc-utils@^1.0.8":
|
||||||
version "1.0.8"
|
version "1.0.8"
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.8.tgz#82d0cc6a5d6ff0ecc277cb35f71402c91ad48d72"
|
resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.8.tgz#82d0cc6a5d6ff0ecc277cb35f71402c91ad48d72"
|
||||||
integrity sha512-vdeb03bD8VzJUL6ZtzRYsFMq1eZQcM3EAzT0a3st59dyLfJ0wq+tKMpmGH7HlB7waD858UWgfIcudbPFsbzVdw==
|
integrity sha512-vdeb03bD8VzJUL6ZtzRYsFMq1eZQcM3EAzT0a3st59dyLfJ0wq+tKMpmGH7HlB7waD858UWgfIcudbPFsbzVdw==
|
||||||
@ -2644,13 +2584,6 @@
|
|||||||
safe-json-utils "^1.1.1"
|
safe-json-utils "^1.1.1"
|
||||||
tslib "1.14.1"
|
tslib "1.14.1"
|
||||||
|
|
||||||
"@walletconnect/legacy-types@^2.0.0-rc.0":
|
|
||||||
version "2.0.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/legacy-types/-/legacy-types-2.0.0.tgz#224278ae2874c6a2ca805c2d1d062a511dcf7227"
|
|
||||||
integrity sha512-sOVrA7HUdbI1OwKyPOQU0/DdvTSVFlsXWpAk2K2WvP2erTkBWPMTJq6cv2BmKdoJ3p6gLApT7sd+jHi3OF71uw==
|
|
||||||
dependencies:
|
|
||||||
"@walletconnect/jsonrpc-types" "^1.0.2"
|
|
||||||
|
|
||||||
"@walletconnect/logger@^2.0.1":
|
"@walletconnect/logger@^2.0.1":
|
||||||
version "2.0.1"
|
version "2.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/logger/-/logger-2.0.1.tgz#7f489b96e9a1ff6bf3e58f0fbd6d69718bf844a8"
|
resolved "https://registry.yarnpkg.com/@walletconnect/logger/-/logger-2.0.1.tgz#7f489b96e9a1ff6bf3e58f0fbd6d69718bf844a8"
|
||||||
@ -2659,16 +2592,6 @@
|
|||||||
pino "7.11.0"
|
pino "7.11.0"
|
||||||
tslib "1.14.1"
|
tslib "1.14.1"
|
||||||
|
|
||||||
"@walletconnect/randombytes@^1.0.3":
|
|
||||||
version "1.0.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/randombytes/-/randombytes-1.0.3.tgz#e795e4918367fd1e6a2215e075e64ab93e23985b"
|
|
||||||
integrity sha512-35lpzxcHFbTN3ABefC9W+uBpNZl1GC4Wpx0ed30gibfO/y9oLdy1NznbV96HARQKSBV9J9M/rrtIvf6a23jfYw==
|
|
||||||
dependencies:
|
|
||||||
"@walletconnect/encoding" "^1.0.2"
|
|
||||||
"@walletconnect/environment" "^1.0.1"
|
|
||||||
randombytes "^2.1.0"
|
|
||||||
tslib "1.14.1"
|
|
||||||
|
|
||||||
"@walletconnect/relay-api@^1.0.9":
|
"@walletconnect/relay-api@^1.0.9":
|
||||||
version "1.0.9"
|
version "1.0.9"
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/relay-api/-/relay-api-1.0.9.tgz#f8c2c3993dddaa9f33ed42197fc9bfebd790ecaf"
|
resolved "https://registry.yarnpkg.com/@walletconnect/relay-api/-/relay-api-1.0.9.tgz#f8c2c3993dddaa9f33ed42197fc9bfebd790ecaf"
|
||||||
@ -2689,11 +2612,6 @@
|
|||||||
tslib "1.14.1"
|
tslib "1.14.1"
|
||||||
uint8arrays "^3.0.0"
|
uint8arrays "^3.0.0"
|
||||||
|
|
||||||
"@walletconnect/safe-json@1.0.0":
|
|
||||||
version "1.0.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/safe-json/-/safe-json-1.0.0.tgz#12eeb11d43795199c045fafde97e3c91646683b2"
|
|
||||||
integrity sha512-QJzp/S/86sUAgWY6eh5MKYmSfZaRpIlmCJdi5uG4DJlKkZrHEF7ye7gA+VtbVzvTtpM/gRwO2plQuiooIeXjfg==
|
|
||||||
|
|
||||||
"@walletconnect/safe-json@^1.0.1", "@walletconnect/safe-json@^1.0.2":
|
"@walletconnect/safe-json@^1.0.1", "@walletconnect/safe-json@^1.0.2":
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/safe-json/-/safe-json-1.0.2.tgz#7237e5ca48046e4476154e503c6d3c914126fa77"
|
resolved "https://registry.yarnpkg.com/@walletconnect/safe-json/-/safe-json-1.0.2.tgz#7237e5ca48046e4476154e503c6d3c914126fa77"
|
||||||
@ -2716,15 +2634,6 @@
|
|||||||
"@walletconnect/utils" "2.8.6"
|
"@walletconnect/utils" "2.8.6"
|
||||||
events "^3.3.0"
|
events "^3.3.0"
|
||||||
|
|
||||||
"@walletconnect/socket-transport@^1.8.0":
|
|
||||||
version "1.8.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/socket-transport/-/socket-transport-1.8.0.tgz#9a1128a249628a0be11a0979b522fe82b44afa1b"
|
|
||||||
integrity sha512-5DyIyWrzHXTcVp0Vd93zJ5XMW61iDM6bcWT4p8DTRfFsOtW46JquruMhxOLeCOieM4D73kcr3U7WtyR4JUsGuQ==
|
|
||||||
dependencies:
|
|
||||||
"@walletconnect/types" "^1.8.0"
|
|
||||||
"@walletconnect/utils" "^1.8.0"
|
|
||||||
ws "7.5.3"
|
|
||||||
|
|
||||||
"@walletconnect/time@^1.0.2":
|
"@walletconnect/time@^1.0.2":
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/time/-/time-1.0.2.tgz#6c5888b835750ecb4299d28eecc5e72c6d336523"
|
resolved "https://registry.yarnpkg.com/@walletconnect/time/-/time-1.0.2.tgz#6c5888b835750ecb4299d28eecc5e72c6d336523"
|
||||||
@ -2756,11 +2665,6 @@
|
|||||||
"@walletconnect/logger" "^2.0.1"
|
"@walletconnect/logger" "^2.0.1"
|
||||||
events "^3.3.0"
|
events "^3.3.0"
|
||||||
|
|
||||||
"@walletconnect/types@^1.8.0":
|
|
||||||
version "1.8.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/types/-/types-1.8.0.tgz#3f5e85b2d6b149337f727ab8a71b8471d8d9a195"
|
|
||||||
integrity sha512-Cn+3I0V0vT9ghMuzh1KzZvCkiAxTq+1TR2eSqw5E5AVWfmCtECFkVZBP6uUJZ8YjwLqXheI+rnjqPy7sVM4Fyg==
|
|
||||||
|
|
||||||
"@walletconnect/utils@2.8.6":
|
"@walletconnect/utils@2.8.6":
|
||||||
version "2.8.6"
|
version "2.8.6"
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-2.8.6.tgz#8a4f6b19525e33822f8da1aa94c4eef21482eeda"
|
resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-2.8.6.tgz#8a4f6b19525e33822f8da1aa94c4eef21482eeda"
|
||||||
@ -2781,38 +2685,13 @@
|
|||||||
query-string "7.1.3"
|
query-string "7.1.3"
|
||||||
uint8arrays "^3.1.0"
|
uint8arrays "^3.1.0"
|
||||||
|
|
||||||
"@walletconnect/utils@^1.8.0":
|
"@walletconnect/window-getters@^1.0.1":
|
||||||
version "1.8.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-1.8.0.tgz#2591a197c1fa7429941fe428876088fda6632060"
|
|
||||||
integrity sha512-zExzp8Mj1YiAIBfKNm5u622oNw44WOESzo6hj+Q3apSMIb0Jph9X3GDIdbZmvVZsNPxWDL7uodKgZcCInZv2vA==
|
|
||||||
dependencies:
|
|
||||||
"@walletconnect/browser-utils" "^1.8.0"
|
|
||||||
"@walletconnect/encoding" "^1.0.1"
|
|
||||||
"@walletconnect/jsonrpc-utils" "^1.0.3"
|
|
||||||
"@walletconnect/types" "^1.8.0"
|
|
||||||
bn.js "4.11.8"
|
|
||||||
js-sha3 "0.8.0"
|
|
||||||
query-string "6.13.5"
|
|
||||||
|
|
||||||
"@walletconnect/window-getters@1.0.0":
|
|
||||||
version "1.0.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/window-getters/-/window-getters-1.0.0.tgz#1053224f77e725dfd611c83931b5f6c98c32bfc8"
|
|
||||||
integrity sha512-xB0SQsLaleIYIkSsl43vm8EwETpBzJ2gnzk7e0wMF3ktqiTGS6TFHxcprMl5R44KKh4tCcHCJwolMCaDSwtAaA==
|
|
||||||
|
|
||||||
"@walletconnect/window-getters@^1.0.0", "@walletconnect/window-getters@^1.0.1":
|
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/window-getters/-/window-getters-1.0.1.tgz#f36d1c72558a7f6b87ecc4451fc8bd44f63cbbdc"
|
resolved "https://registry.yarnpkg.com/@walletconnect/window-getters/-/window-getters-1.0.1.tgz#f36d1c72558a7f6b87ecc4451fc8bd44f63cbbdc"
|
||||||
integrity sha512-vHp+HqzGxORPAN8gY03qnbTMnhqIwjeRJNOMOAzePRg4xVEEE2WvYsI9G2NMjOknA8hnuYbU3/hwLcKbjhc8+Q==
|
integrity sha512-vHp+HqzGxORPAN8gY03qnbTMnhqIwjeRJNOMOAzePRg4xVEEE2WvYsI9G2NMjOknA8hnuYbU3/hwLcKbjhc8+Q==
|
||||||
dependencies:
|
dependencies:
|
||||||
tslib "1.14.1"
|
tslib "1.14.1"
|
||||||
|
|
||||||
"@walletconnect/window-metadata@1.0.0":
|
|
||||||
version "1.0.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/window-metadata/-/window-metadata-1.0.0.tgz#93b1cc685e6b9b202f29c26be550fde97800c4e5"
|
|
||||||
integrity sha512-9eFvmJxIKCC3YWOL97SgRkKhlyGXkrHwamfechmqszbypFspaSk+t2jQXAEU7YClHF6Qjw5eYOmy1//zFi9/GA==
|
|
||||||
dependencies:
|
|
||||||
"@walletconnect/window-getters" "^1.0.0"
|
|
||||||
|
|
||||||
"@walletconnect/window-metadata@^1.0.1":
|
"@walletconnect/window-metadata@^1.0.1":
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/@walletconnect/window-metadata/-/window-metadata-1.0.1.tgz#2124f75447b7e989e4e4e1581d55d25bc75f7be5"
|
resolved "https://registry.yarnpkg.com/@walletconnect/window-metadata/-/window-metadata-1.0.1.tgz#2124f75447b7e989e4e4e1581d55d25bc75f7be5"
|
||||||
@ -2844,11 +2723,6 @@ aes-js@3.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d"
|
resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d"
|
||||||
integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==
|
integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==
|
||||||
|
|
||||||
aes-js@^3.1.2:
|
|
||||||
version "3.1.2"
|
|
||||||
resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.1.2.tgz#db9aabde85d5caabbfc0d4f2a4446960f627146a"
|
|
||||||
integrity sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ==
|
|
||||||
|
|
||||||
agentkeepalive@^4.2.1:
|
agentkeepalive@^4.2.1:
|
||||||
version "4.3.0"
|
version "4.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.3.0.tgz#bb999ff07412653c1803b3ced35e50729830a255"
|
resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.3.0.tgz#bb999ff07412653c1803b3ced35e50729830a255"
|
||||||
@ -3140,11 +3014,6 @@ blakejs@^1.2.1:
|
|||||||
resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814"
|
resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814"
|
||||||
integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==
|
integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==
|
||||||
|
|
||||||
bn.js@4.11.8:
|
|
||||||
version "4.11.8"
|
|
||||||
resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f"
|
|
||||||
integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==
|
|
||||||
|
|
||||||
bn.js@5.2.0:
|
bn.js@5.2.0:
|
||||||
version "5.2.0"
|
version "5.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002"
|
resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002"
|
||||||
@ -3476,7 +3345,7 @@ debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4:
|
|||||||
dependencies:
|
dependencies:
|
||||||
ms "2.1.2"
|
ms "2.1.2"
|
||||||
|
|
||||||
decode-uri-component@^0.2.0, decode-uri-component@^0.2.2:
|
decode-uri-component@^0.2.2:
|
||||||
version "0.2.2"
|
version "0.2.2"
|
||||||
resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9"
|
resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9"
|
||||||
integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==
|
integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==
|
||||||
@ -3550,11 +3419,6 @@ depd@~1.1.2:
|
|||||||
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"
|
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"
|
||||||
integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==
|
integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==
|
||||||
|
|
||||||
detect-browser@5.2.0:
|
|
||||||
version "5.2.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/detect-browser/-/detect-browser-5.2.0.tgz#c9cd5afa96a6a19fda0bbe9e9be48a6b6e1e9c97"
|
|
||||||
integrity sha512-tr7XntDAu50BVENgQfajMLzacmSe34D+qZc4zjnniz0ZVuw/TZcLcyxHQjYpJTM36sGEkZZlYLnIM1hH7alTMA==
|
|
||||||
|
|
||||||
detect-browser@5.3.0:
|
detect-browser@5.3.0:
|
||||||
version "5.3.0"
|
version "5.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/detect-browser/-/detect-browser-5.3.0.tgz#9705ef2bddf46072d0f7265a1fe300e36fe7ceca"
|
resolved "https://registry.yarnpkg.com/detect-browser/-/detect-browser-5.3.0.tgz#9705ef2bddf46072d0f7265a1fe300e36fe7ceca"
|
||||||
@ -4388,7 +4252,7 @@ hash-base@^3.0.0:
|
|||||||
readable-stream "^3.6.0"
|
readable-stream "^3.6.0"
|
||||||
safe-buffer "^5.2.0"
|
safe-buffer "^5.2.0"
|
||||||
|
|
||||||
hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7:
|
hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3:
|
||||||
version "1.1.7"
|
version "1.1.7"
|
||||||
resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42"
|
resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42"
|
||||||
integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==
|
integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==
|
||||||
@ -5426,15 +5290,6 @@ punycode@^2.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f"
|
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f"
|
||||||
integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==
|
integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==
|
||||||
|
|
||||||
query-string@6.13.5:
|
|
||||||
version "6.13.5"
|
|
||||||
resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.5.tgz#99e95e2fb7021db90a6f373f990c0c814b3812d8"
|
|
||||||
integrity sha512-svk3xg9qHR39P3JlHuD7g3nRnyay5mHbrPctEBDUxUkHRifPHXJDhBUycdCC0NBjXoDf44Gb+IsOZL1Uwn8M/Q==
|
|
||||||
dependencies:
|
|
||||||
decode-uri-component "^0.2.0"
|
|
||||||
split-on-first "^1.0.0"
|
|
||||||
strict-uri-encode "^2.0.0"
|
|
||||||
|
|
||||||
query-string@7.1.3:
|
query-string@7.1.3:
|
||||||
version "7.1.3"
|
version "7.1.3"
|
||||||
resolved "https://registry.yarnpkg.com/query-string/-/query-string-7.1.3.tgz#a1cf90e994abb113a325804a972d98276fe02328"
|
resolved "https://registry.yarnpkg.com/query-string/-/query-string-7.1.3.tgz#a1cf90e994abb113a325804a972d98276fe02328"
|
||||||
@ -6282,11 +6137,6 @@ ws@7.4.6:
|
|||||||
resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c"
|
resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c"
|
||||||
integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==
|
integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==
|
||||||
|
|
||||||
ws@7.5.3:
|
|
||||||
version "7.5.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.3.tgz#160835b63c7d97bfab418fc1b8a9fced2ac01a74"
|
|
||||||
integrity sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==
|
|
||||||
|
|
||||||
ws@^7.4.5, ws@^7.5.1:
|
ws@^7.4.5, ws@^7.5.1:
|
||||||
version "7.5.9"
|
version "7.5.9"
|
||||||
resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591"
|
resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591"
|
||||||
|
Loading…
Reference in New Issue
Block a user