@lidofinance/wallets-testing-wallets 1.44.0 → 1.45.0-alpha-add-wc-wallet.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/coin98/coin98.page.d.ts +2 -1
- package/dist/src/coin98/coin98.page.d.ts.map +1 -1
- package/dist/src/coin98/coin98.page.js.map +1 -1
- package/dist/src/coinbase/coinbase.page.d.ts +2 -1
- package/dist/src/coinbase/coinbase.page.d.ts.map +1 -1
- package/dist/src/coinbase/coinbase.page.js.map +1 -1
- package/dist/src/exodus/exodus.page.d.ts +2 -1
- package/dist/src/exodus/exodus.page.d.ts.map +1 -1
- package/dist/src/exodus/exodus.page.js.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/metamask/metamask-latest/metamask.page.d.ts +3 -2
- package/dist/src/metamask/metamask-latest/metamask.page.d.ts.map +1 -1
- package/dist/src/metamask/metamask-latest/metamask.page.js.map +1 -1
- package/dist/src/metamask/metamask-stable/metamask.constants.d.ts +1 -0
- package/dist/src/metamask/metamask-stable/metamask.constants.d.ts.map +1 -1
- package/dist/src/metamask/metamask-stable/metamask.constants.js +17 -1
- package/dist/src/metamask/metamask-stable/metamask.constants.js.map +1 -1
- package/dist/src/metamask/metamask-stable/metamask.page.d.ts +3 -2
- package/dist/src/metamask/metamask-stable/metamask.page.d.ts.map +1 -1
- package/dist/src/metamask/metamask-stable/metamask.page.js.map +1 -1
- package/dist/src/okx/okx.page.d.ts +3 -2
- package/dist/src/okx/okx.page.d.ts.map +1 -1
- package/dist/src/okx/okx.page.js.map +1 -1
- package/dist/src/safe/safeIframe.page.d.ts +2 -1
- package/dist/src/safe/safeIframe.page.d.ts.map +1 -1
- package/dist/src/safe/safeIframe.page.js.map +1 -1
- package/dist/src/trustwallet/trustWallet.page.d.ts +3 -2
- package/dist/src/trustwallet/trustWallet.page.d.ts.map +1 -1
- package/dist/src/trustwallet/trustWallet.page.js.map +1 -1
- package/dist/src/wallet.page.d.ts +3 -0
- package/dist/src/wallet.page.d.ts.map +1 -1
- package/dist/src/walletConnect/index.d.ts +1 -0
- package/dist/src/walletConnect/index.d.ts.map +1 -0
- package/dist/src/walletConnect/index.js +2 -0
- package/dist/src/walletConnect/index.js.map +1 -0
- package/dist/src/walletConnect/wc.service.d.ts +50 -0
- package/dist/src/walletConnect/wc.service.d.ts.map +1 -0
- package/dist/src/walletConnect/wc.service.js +279 -0
- package/dist/src/walletConnect/wc.service.js.map +1 -0
- package/dist/src/wallets.constants.d.ts +18 -1
- package/dist/src/wallets.constants.d.ts.map +1 -1
- package/dist/src/wallets.constants.js +1 -0
- package/dist/src/wallets.constants.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.page.d.ts","sourceRoot":"","sources":["../../src/wallet.page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"wallet.page.d.ts","sourceRoot":"","sources":["../../src/wallet.page.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/walletConnect/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/walletConnect/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { WalletPage, WalletPageOptions } from '../wallet.page';
|
|
2
|
+
import { NetworkConfig, WalletConnectTypes } from '../wallets.constants';
|
|
3
|
+
import { Page } from '@playwright/test';
|
|
4
|
+
export type WCSessionRequest = {
|
|
5
|
+
topic: string;
|
|
6
|
+
id: number;
|
|
7
|
+
params: {
|
|
8
|
+
chainId: string;
|
|
9
|
+
request: {
|
|
10
|
+
method: string;
|
|
11
|
+
params: any[];
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export declare class WCSDKWallet implements WalletPage<WalletConnectTypes.WC_SDK> {
|
|
16
|
+
options: WalletPageOptions;
|
|
17
|
+
private client?;
|
|
18
|
+
private walletClient?;
|
|
19
|
+
private publicClient?;
|
|
20
|
+
private hdAccount;
|
|
21
|
+
private requestQueue;
|
|
22
|
+
private waiters;
|
|
23
|
+
page?: Page;
|
|
24
|
+
constructor(options: WalletPageOptions);
|
|
25
|
+
setup(): Promise<void>;
|
|
26
|
+
connectWallet(uri: string): Promise<void>;
|
|
27
|
+
disconnect(): Promise<void>;
|
|
28
|
+
nextRequest(timeoutMs?: number): Promise<WCSessionRequest>;
|
|
29
|
+
isWCSessionRequest(x: any): x is WCSessionRequest;
|
|
30
|
+
confirmTx(req: WCSessionRequest | Page): Promise<void>;
|
|
31
|
+
cancelTx(req: WCSessionRequest | Page, message?: string, code?: number): Promise<void>;
|
|
32
|
+
getTx(req: WCSessionRequest, index?: number): any;
|
|
33
|
+
private waitForProposalOnce;
|
|
34
|
+
private buildNamespacesFromProposal;
|
|
35
|
+
importKey(secretKey: string, withChecks?: boolean): Promise<void>;
|
|
36
|
+
assertTxAmount(page: Page, expectedAmount: string): Promise<void>;
|
|
37
|
+
approveTokenTx?(page: Page): Promise<void>;
|
|
38
|
+
openLastTxInEthplorer?(txIndex?: number): Promise<Page>;
|
|
39
|
+
getTokenBalance?(tokenName: string): Promise<number>;
|
|
40
|
+
confirmAddTokenToWallet?(page: Page): Promise<void>;
|
|
41
|
+
assertReceiptAddress(page: Page, expectedAddress: string): Promise<void>;
|
|
42
|
+
getWalletAddress?(): Promise<string>;
|
|
43
|
+
setupNetwork?(networkConfig: NetworkConfig): Promise<void>;
|
|
44
|
+
addNetwork(networkConfig: NetworkConfig, isClosePage?: boolean): Promise<void>;
|
|
45
|
+
changeNetwork?(networkName: string): Promise<void>;
|
|
46
|
+
changeWalletAccountByName?(accountName: string, isClosePage?: boolean): Promise<void>;
|
|
47
|
+
changeWalletAccountByAddress?(address: string, isClosePage?: boolean): Promise<void>;
|
|
48
|
+
isWalletAddressExist?(address: string): Promise<boolean>;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=wc.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wc.service.d.ts","sourceRoot":"","sources":["../../../src/walletConnect/wc.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.WCSDKWallet = void 0;
|
|
7
|
+
/* eslint-disable @typescript-eslint/ban-ts-comment */
|
|
8
|
+
const sign_client_1 = __importDefault(require("@walletconnect/sign-client"));
|
|
9
|
+
const viem_1 = require("viem");
|
|
10
|
+
const chains_1 = require("viem/chains");
|
|
11
|
+
const accounts_1 = require("viem/accounts");
|
|
12
|
+
class WCSDKWallet {
|
|
13
|
+
constructor(options) {
|
|
14
|
+
this.options = options;
|
|
15
|
+
this.requestQueue = [];
|
|
16
|
+
this.waiters = [];
|
|
17
|
+
this.hdAccount = (0, accounts_1.mnemonicToAccount)(this.options.accountConfig.SECRET_PHRASE);
|
|
18
|
+
this.options.walletConfig.walletConnectConfig = {
|
|
19
|
+
requestHandleTimeoutMs: 30000,
|
|
20
|
+
metadata: {
|
|
21
|
+
name: 'E2E Test Wallet',
|
|
22
|
+
description: 'WalletConnect test wallet for e2e',
|
|
23
|
+
url: 'https://example.wallet',
|
|
24
|
+
icons: ['https://example.wallet/icon.png'],
|
|
25
|
+
},
|
|
26
|
+
namespaces: {
|
|
27
|
+
eip155: {
|
|
28
|
+
accounts: [
|
|
29
|
+
`eip155:${this.options.standConfig.chainId}:${this.hdAccount.address}`,
|
|
30
|
+
],
|
|
31
|
+
methods: [
|
|
32
|
+
'eth_sendTransaction',
|
|
33
|
+
'personal_sign',
|
|
34
|
+
'eth_signTypedData_v4',
|
|
35
|
+
'wallet_switchEthereumChain',
|
|
36
|
+
'wallet_addEthereumChain',
|
|
37
|
+
],
|
|
38
|
+
events: ['accountsChanged', 'chainChanged'],
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
...options.walletConfig?.walletConnectConfig,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
async setup() {
|
|
45
|
+
if (this.client)
|
|
46
|
+
return;
|
|
47
|
+
this.client = await sign_client_1.default.init({
|
|
48
|
+
projectId: this.options.walletConfig.walletConnectConfig.projectId,
|
|
49
|
+
metadata: this.options.walletConfig.walletConnectConfig.metadata,
|
|
50
|
+
});
|
|
51
|
+
this.walletClient = (0, viem_1.createWalletClient)({
|
|
52
|
+
account: this.hdAccount,
|
|
53
|
+
chain: chains_1.mainnet,
|
|
54
|
+
transport: (0, viem_1.http)(this.options.standConfig.rpcUrl),
|
|
55
|
+
});
|
|
56
|
+
this.publicClient = (0, viem_1.createPublicClient)({
|
|
57
|
+
chain: chains_1.mainnet,
|
|
58
|
+
transport: (0, viem_1.http)(this.options.standConfig.rpcUrl),
|
|
59
|
+
});
|
|
60
|
+
// Collect incoming requests into an async queue
|
|
61
|
+
this.client.on('session_request', (event) => {
|
|
62
|
+
const req = event;
|
|
63
|
+
console.log(`WC: session_request received: ${req.params.request.method}`);
|
|
64
|
+
const waiter = this.waiters.shift();
|
|
65
|
+
if (waiter)
|
|
66
|
+
waiter(req);
|
|
67
|
+
else
|
|
68
|
+
this.requestQueue.push(req);
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
async connectWallet(uri) {
|
|
72
|
+
await this.setup();
|
|
73
|
+
if (!this.client)
|
|
74
|
+
throw new Error('WC client not initialized');
|
|
75
|
+
const [proposal] = await Promise.all([
|
|
76
|
+
this.waitForProposalOnce(this.options.walletConfig.walletConnectConfig.requestHandleTimeoutMs ||
|
|
77
|
+
30000),
|
|
78
|
+
this.client.core.pairing.pair({ uri }),
|
|
79
|
+
]);
|
|
80
|
+
const { id, params } = proposal;
|
|
81
|
+
const namespaces = this.options.walletConfig.walletConnectConfig.namespaces ??
|
|
82
|
+
this.buildNamespacesFromProposal(params);
|
|
83
|
+
const { acknowledged } = await this.client.approve({ id, namespaces });
|
|
84
|
+
await acknowledged();
|
|
85
|
+
}
|
|
86
|
+
async disconnect() {
|
|
87
|
+
if (!this.client)
|
|
88
|
+
throw new Error('WC client not initialized');
|
|
89
|
+
const sessions = this.client.session.getAll();
|
|
90
|
+
for (const sess of sessions) {
|
|
91
|
+
console.log('WC: disconnecting session', sess.topic);
|
|
92
|
+
await this.client.disconnect({
|
|
93
|
+
topic: sess.topic,
|
|
94
|
+
reason: {
|
|
95
|
+
code: 6000,
|
|
96
|
+
message: 'Session disconnected by test wallet',
|
|
97
|
+
},
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
await this.client.core.relayer.transportClose();
|
|
101
|
+
this.client = undefined;
|
|
102
|
+
this.requestQueue = [];
|
|
103
|
+
this.waiters = [];
|
|
104
|
+
}
|
|
105
|
+
async nextRequest(timeoutMs = this.options.walletConfig.walletConnectConfig
|
|
106
|
+
.requestHandleTimeoutMs) {
|
|
107
|
+
const queued = this.requestQueue.shift();
|
|
108
|
+
if (queued)
|
|
109
|
+
return queued;
|
|
110
|
+
return await new Promise((resolve, reject) => {
|
|
111
|
+
const t = setTimeout(() => {
|
|
112
|
+
const idx = this.waiters.indexOf(resolve);
|
|
113
|
+
if (idx >= 0)
|
|
114
|
+
this.waiters.splice(idx, 1);
|
|
115
|
+
reject(new Error(`WC: session_request timeout after ${timeoutMs}ms`));
|
|
116
|
+
}, timeoutMs);
|
|
117
|
+
this.waiters.push((req) => {
|
|
118
|
+
clearTimeout(t);
|
|
119
|
+
resolve(req);
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
isWCSessionRequest(x) {
|
|
124
|
+
return (x && typeof x === 'object' && 'topic' in x && 'id' in x && 'params' in x);
|
|
125
|
+
}
|
|
126
|
+
async confirmTx(req) {
|
|
127
|
+
if (!this.isWCSessionRequest(req)) {
|
|
128
|
+
throw new Error('WC: confirmTx with Page parameter is not supported in WC wallet');
|
|
129
|
+
}
|
|
130
|
+
if (!this.client)
|
|
131
|
+
throw new Error('WC client not initialized');
|
|
132
|
+
const method = req.params.request.method;
|
|
133
|
+
if (method === 'eth_sendTransaction') {
|
|
134
|
+
const fees = await this.publicClient.estimateFeesPerGas();
|
|
135
|
+
const value = req.params.request.params[0].value
|
|
136
|
+
? BigInt(req.params.request.params[0].value)
|
|
137
|
+
: undefined;
|
|
138
|
+
const hash = await this.walletClient.sendTransaction({
|
|
139
|
+
...req.params.request.params[0],
|
|
140
|
+
value,
|
|
141
|
+
gas: BigInt(req.params.request.params[0].gas),
|
|
142
|
+
maxFeePerGas: fees.maxFeePerGas,
|
|
143
|
+
maxPriorityFeePerGas: fees.maxPriorityFeePerGas,
|
|
144
|
+
});
|
|
145
|
+
await this.client.respond({
|
|
146
|
+
topic: req.topic,
|
|
147
|
+
response: { id: req.id, jsonrpc: '2.0', result: hash },
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
else if (method === 'eth_signTypedData_v4') {
|
|
151
|
+
const typed = req.params.request.params[1];
|
|
152
|
+
const typedData = typeof typed === 'string' ? JSON.parse(typed) : typed;
|
|
153
|
+
const signature = await this.walletClient.signTypedData({
|
|
154
|
+
account: this.hdAccount,
|
|
155
|
+
domain: {
|
|
156
|
+
...typedData.domain,
|
|
157
|
+
chainId: Number(typedData.domain.chainId),
|
|
158
|
+
},
|
|
159
|
+
types: typedData.types,
|
|
160
|
+
primaryType: typedData.primaryType,
|
|
161
|
+
message: {
|
|
162
|
+
...typedData.message,
|
|
163
|
+
value: BigInt(typedData.message.value),
|
|
164
|
+
nonce: BigInt(typedData.message.nonce),
|
|
165
|
+
deadline: BigInt(typedData.message.deadline),
|
|
166
|
+
},
|
|
167
|
+
});
|
|
168
|
+
console.log('Signature was created.');
|
|
169
|
+
await this.client.respond({
|
|
170
|
+
topic: req.topic,
|
|
171
|
+
response: { id: req.id, jsonrpc: '2.0', result: signature },
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
else {
|
|
175
|
+
throw new Error(`WC: approveRequest unsupported method: ${method}`);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
async cancelTx(req, message = 'User rejected the request', code = 4001) {
|
|
179
|
+
if (!this.isWCSessionRequest(req)) {
|
|
180
|
+
throw new Error('WC: confirmTx with Page parameter is not supported in WC wallet');
|
|
181
|
+
}
|
|
182
|
+
if (!this.client)
|
|
183
|
+
throw new Error('WC client not initialized');
|
|
184
|
+
await this.client.respond({
|
|
185
|
+
topic: req.topic,
|
|
186
|
+
response: {
|
|
187
|
+
id: req.id,
|
|
188
|
+
jsonrpc: '2.0',
|
|
189
|
+
error: { code, message },
|
|
190
|
+
},
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
getTx(req, index = 0) {
|
|
194
|
+
return req.params?.request?.params?.[index];
|
|
195
|
+
}
|
|
196
|
+
async waitForProposalOnce(timeoutMs) {
|
|
197
|
+
if (!this.client)
|
|
198
|
+
throw new Error('WC client not initialized');
|
|
199
|
+
return await new Promise((resolve, reject) => {
|
|
200
|
+
const t = setTimeout(() => reject(new Error(`WC: session_proposal timeout after ${timeoutMs}ms`)), timeoutMs);
|
|
201
|
+
this.client.once('session_proposal', (proposal) => {
|
|
202
|
+
clearTimeout(t);
|
|
203
|
+
resolve(proposal);
|
|
204
|
+
});
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
buildNamespacesFromProposal(params) {
|
|
208
|
+
const required = params?.requiredNamespaces ?? {};
|
|
209
|
+
const eip155 = required?.eip155;
|
|
210
|
+
if (!eip155) {
|
|
211
|
+
throw new Error(`WC: requiredNamespaces.eip155 missing in proposal`);
|
|
212
|
+
}
|
|
213
|
+
const chains = eip155.chains ?? [];
|
|
214
|
+
const methods = eip155.methods ?? [];
|
|
215
|
+
const events = eip155.events ?? [];
|
|
216
|
+
// If dApp didn't specify chains (rare), you must provide at least one.
|
|
217
|
+
if (!chains.length) {
|
|
218
|
+
throw new Error(`WC: proposal has no chains in requiredNamespaces.eip155`);
|
|
219
|
+
}
|
|
220
|
+
const accounts = (this.options.walletConfig.walletConnectConfig.namespaces?.eip155
|
|
221
|
+
?.accounts ?? []).length
|
|
222
|
+
? this.options.walletConfig.walletConnectConfig.namespaces.eip155.accounts
|
|
223
|
+
: [];
|
|
224
|
+
if (!accounts.length) {
|
|
225
|
+
throw new Error(`WC: cannot auto-build accounts. Pass namespaces with accounts (e.g. eip155:1:0x...).`);
|
|
226
|
+
}
|
|
227
|
+
return {
|
|
228
|
+
eip155: {
|
|
229
|
+
accounts,
|
|
230
|
+
methods,
|
|
231
|
+
events,
|
|
232
|
+
},
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
importKey(secretKey, withChecks) {
|
|
236
|
+
throw new Error('Method not implemented.');
|
|
237
|
+
}
|
|
238
|
+
assertTxAmount(page, expectedAmount) {
|
|
239
|
+
throw new Error('Method not implemented.');
|
|
240
|
+
}
|
|
241
|
+
approveTokenTx(page) {
|
|
242
|
+
throw new Error('Method not implemented.');
|
|
243
|
+
}
|
|
244
|
+
openLastTxInEthplorer(txIndex) {
|
|
245
|
+
throw new Error('Method not implemented.');
|
|
246
|
+
}
|
|
247
|
+
getTokenBalance(tokenName) {
|
|
248
|
+
throw new Error('Method not implemented.');
|
|
249
|
+
}
|
|
250
|
+
confirmAddTokenToWallet(page) {
|
|
251
|
+
throw new Error('Method not implemented.');
|
|
252
|
+
}
|
|
253
|
+
assertReceiptAddress(page, expectedAddress) {
|
|
254
|
+
throw new Error('Method not implemented.');
|
|
255
|
+
}
|
|
256
|
+
getWalletAddress() {
|
|
257
|
+
throw new Error('Method not implemented.');
|
|
258
|
+
}
|
|
259
|
+
setupNetwork(networkConfig) {
|
|
260
|
+
throw new Error('Method not implemented.');
|
|
261
|
+
}
|
|
262
|
+
addNetwork(networkConfig, isClosePage) {
|
|
263
|
+
throw new Error('Method not implemented.');
|
|
264
|
+
}
|
|
265
|
+
changeNetwork(networkName) {
|
|
266
|
+
throw new Error('Method not implemented.');
|
|
267
|
+
}
|
|
268
|
+
changeWalletAccountByName(accountName, isClosePage) {
|
|
269
|
+
throw new Error('Method not implemented.');
|
|
270
|
+
}
|
|
271
|
+
changeWalletAccountByAddress(address, isClosePage) {
|
|
272
|
+
throw new Error('Method not implemented.');
|
|
273
|
+
}
|
|
274
|
+
isWalletAddressExist(address) {
|
|
275
|
+
throw new Error('Method not implemented.');
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
exports.WCSDKWallet = WCSDKWallet;
|
|
279
|
+
//# sourceMappingURL=wc.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wc.service.js","sourceRoot":"","sources":["../../../src/walletConnect/wc.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
export type WCApproveNamespaces = Record<string, {
|
|
2
|
+
accounts: string[];
|
|
3
|
+
methods: string[];
|
|
4
|
+
events: string[];
|
|
5
|
+
}>;
|
|
1
6
|
export interface CommonWalletConfig {
|
|
2
7
|
WALLET_NAME: string;
|
|
3
8
|
EXTENSION_WALLET_NAME: string;
|
|
@@ -7,13 +12,25 @@ export interface CommonWalletConfig {
|
|
|
7
12
|
WALLET_TYPE: WalletConnectType;
|
|
8
13
|
LATEST_STABLE_DOWNLOAD_LINK?: string;
|
|
9
14
|
EXTENSION_START_PATH: string;
|
|
15
|
+
walletConnectConfig?: {
|
|
16
|
+
projectId: string;
|
|
17
|
+
metadata?: {
|
|
18
|
+
name: string;
|
|
19
|
+
description: string;
|
|
20
|
+
url: string;
|
|
21
|
+
icons: string[];
|
|
22
|
+
};
|
|
23
|
+
namespaces?: WCApproveNamespaces;
|
|
24
|
+
requestHandleTimeoutMs?: number;
|
|
25
|
+
};
|
|
10
26
|
}
|
|
11
27
|
export declare enum WalletConnectTypes {
|
|
12
28
|
EOA = "EOA",
|
|
13
29
|
WC = "WC",
|
|
30
|
+
WC_SDK = "WC_SDK",
|
|
14
31
|
IFRAME = "IFRAME"
|
|
15
32
|
}
|
|
16
|
-
export type WalletConnectType = WalletConnectTypes.WC | WalletConnectTypes.EOA | WalletConnectTypes.IFRAME;
|
|
33
|
+
export type WalletConnectType = WalletConnectTypes.WC | WalletConnectTypes.WC_SDK | WalletConnectTypes.EOA | WalletConnectTypes.IFRAME;
|
|
17
34
|
export interface StandConfig {
|
|
18
35
|
chainId: number;
|
|
19
36
|
standUrl: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallets.constants.d.ts","sourceRoot":"","sources":["../../src/wallets.constants.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,iBAAiB,CAAC;IAC/B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,oBAAoB,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"wallets.constants.d.ts","sourceRoot":"","sources":["../../src/wallets.constants.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAAG,MAAM,CACtC,MAAM,EACN;IACE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CACF,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,iBAAiB,CAAC;IAC/B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,oBAAoB,EAAE,MAAM,CAAC;IAE7B,mBAAmB,CAAC,EAAE;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE;YACT,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,EAAE,MAAM,CAAC;YACpB,GAAG,EAAE,MAAM,CAAC;YACZ,KAAK,EAAE,MAAM,EAAE,CAAC;SACjB,CAAC;QACF,UAAU,CAAC,EAAE,mBAAmB,CAAC;QACjC,sBAAsB,CAAC,EAAE,MAAM,CAAC;KACjC,CAAC;CACH;AAED,oBAAY,kBAAkB;IAC5B,GAAG,QAAQ;IACX,EAAE,OAAO;IACT,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,MAAM,MAAM,iBAAiB,GACzB,kBAAkB,CAAC,EAAE,GACrB,kBAAkB,CAAC,MAAM,GACzB,kBAAkB,CAAC,GAAG,GACtB,kBAAkB,CAAC,MAAM,CAAC;AAE9B,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,KAAK,eAAe,GAChB,UAAU,GACV,UAAU,GACV,SAAS,GACT,UAAU,GACV,QAAQ,GACR,UAAU,GACV,SAAS,GACT,MAAM,GACN,KAAK,GACL,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,SAAS,GACT,MAAM,GACN,MAAM,CAAC;AAEX,MAAM,MAAM,eAAe,GACvB,gBAAgB,GAChB,kBAAkB,GAClB,kBAAkB,GAClB,YAAY,GACZ,gBAAgB,GAChB,kBAAkB,CAAC;AAEvB,eAAO,MAAM,eAAe,EAAE;IAC5B,OAAO,EAAE,MAAM,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAChD,OAAO,EAAE,MAAM,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;CAgKjD,CAAC"}
|
|
@@ -5,6 +5,7 @@ var WalletConnectTypes;
|
|
|
5
5
|
(function (WalletConnectTypes) {
|
|
6
6
|
WalletConnectTypes["EOA"] = "EOA";
|
|
7
7
|
WalletConnectTypes["WC"] = "WC";
|
|
8
|
+
WalletConnectTypes["WC_SDK"] = "WC_SDK";
|
|
8
9
|
WalletConnectTypes["IFRAME"] = "IFRAME";
|
|
9
10
|
})(WalletConnectTypes || (exports.WalletConnectTypes = WalletConnectTypes = {}));
|
|
10
11
|
exports.NETWORKS_CONFIG = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallets.constants.js","sourceRoot":"","sources":["../../src/wallets.constants.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"wallets.constants.js","sourceRoot":"","sources":["../../src/wallets.constants.ts"],"names":[],"mappings":"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"}
|