@lidofinance/wallets-testing-wallets 1.45.0 → 1.46.0-alpha-add-wc-wallet-without-wait.2
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/bitget/bitgetPage.d.ts +2 -4
- package/dist/src/bitget/bitgetPage.d.ts.map +1 -1
- package/dist/src/bitget/bitgetPage.js +3 -4
- package/dist/src/bitget/bitgetPage.js.map +1 -1
- package/dist/src/coin98/coin98.page.d.ts +3 -4
- package/dist/src/coin98/coin98.page.d.ts.map +1 -1
- package/dist/src/coin98/coin98.page.js +5 -2
- package/dist/src/coin98/coin98.page.js.map +1 -1
- package/dist/src/coinbase/coinbase.page.d.ts +5 -5
- package/dist/src/coinbase/coinbase.page.d.ts.map +1 -1
- package/dist/src/coinbase/coinbase.page.js +7 -3
- package/dist/src/coinbase/coinbase.page.js.map +1 -1
- package/dist/src/ctrl/ctrl.page.d.ts +2 -4
- package/dist/src/ctrl/ctrl.page.d.ts.map +1 -1
- package/dist/src/ctrl/ctrl.page.js +3 -4
- package/dist/src/ctrl/ctrl.page.js.map +1 -1
- package/dist/src/exodus/exodus.page.d.ts +3 -4
- package/dist/src/exodus/exodus.page.d.ts.map +1 -1
- package/dist/src/exodus/exodus.page.js +5 -2
- 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 +8 -9
- package/dist/src/metamask/metamask-latest/metamask.page.d.ts.map +1 -1
- package/dist/src/metamask/metamask-latest/metamask.page.js +26 -12
- package/dist/src/metamask/metamask-latest/metamask.page.js.map +1 -1
- package/dist/src/metamask/metamask-latest/pages/walletOperations.page.d.ts +0 -1
- package/dist/src/metamask/metamask-latest/pages/walletOperations.page.d.ts.map +1 -1
- package/dist/src/metamask/metamask-latest/pages/walletOperations.page.js +5 -10
- package/dist/src/metamask/metamask-latest/pages/walletOperations.page.js.map +1 -1
- package/dist/src/metamask/metamask-stable/metamask.page.d.ts +8 -9
- package/dist/src/metamask/metamask-stable/metamask.page.d.ts.map +1 -1
- package/dist/src/metamask/metamask-stable/metamask.page.js +26 -12
- package/dist/src/metamask/metamask-stable/metamask.page.js.map +1 -1
- package/dist/src/metamask/metamask-stable/pages/walletOperations.page.d.ts +0 -1
- package/dist/src/metamask/metamask-stable/pages/walletOperations.page.d.ts.map +1 -1
- package/dist/src/metamask/metamask-stable/pages/walletOperations.page.js +5 -10
- package/dist/src/metamask/metamask-stable/pages/walletOperations.page.js.map +1 -1
- package/dist/src/okx/okx.page.d.ts +8 -10
- package/dist/src/okx/okx.page.d.ts.map +1 -1
- package/dist/src/okx/okx.page.js +14 -14
- package/dist/src/okx/okx.page.js.map +1 -1
- package/dist/src/safe/pages/setup.page.d.ts +4 -3
- package/dist/src/safe/pages/setup.page.d.ts.map +1 -1
- package/dist/src/safe/pages/setup.page.js +34 -13
- package/dist/src/safe/pages/setup.page.js.map +1 -1
- package/dist/src/safe/pages/transaction.page.d.ts +3 -4
- package/dist/src/safe/pages/transaction.page.d.ts.map +1 -1
- package/dist/src/safe/pages/transaction.page.js +5 -11
- package/dist/src/safe/pages/transaction.page.js.map +1 -1
- package/dist/src/safe/safeIframe.page.d.ts +5 -6
- package/dist/src/safe/safeIframe.page.d.ts.map +1 -1
- package/dist/src/safe/safeIframe.page.js +17 -6
- package/dist/src/safe/safeIframe.page.js.map +1 -1
- package/dist/src/safe/safeWc.page.d.ts +2 -3
- package/dist/src/safe/safeWc.page.d.ts.map +1 -1
- package/dist/src/safe/safeWc.page.js +5 -3
- package/dist/src/safe/safeWc.page.js.map +1 -1
- package/dist/src/trustwallet/trustWallet.page.d.ts +7 -9
- package/dist/src/trustwallet/trustWallet.page.d.ts.map +1 -1
- package/dist/src/trustwallet/trustWallet.page.js +11 -13
- package/dist/src/trustwallet/trustWallet.page.js.map +1 -1
- package/dist/src/wallet.page.d.ts +11 -10
- package/dist/src/wallet.page.d.ts.map +1 -1
- package/dist/src/walletConnect/components/index.d.ts +3 -0
- package/dist/src/walletConnect/components/index.d.ts.map +1 -0
- package/dist/src/walletConnect/components/index.js +19 -0
- package/dist/src/walletConnect/components/index.js.map +1 -0
- package/dist/src/walletConnect/components/network.d.ts +17 -0
- package/dist/src/walletConnect/components/network.d.ts.map +1 -0
- package/dist/src/walletConnect/components/network.js +74 -0
- package/dist/src/walletConnect/components/network.js.map +1 -0
- package/dist/src/walletConnect/components/requestManager.d.ts +27 -0
- package/dist/src/walletConnect/components/requestManager.d.ts.map +1 -0
- package/dist/src/walletConnect/components/requestManager.js +65 -0
- package/dist/src/walletConnect/components/requestManager.js.map +1 -0
- package/dist/src/walletConnect/constants.d.ts +6 -0
- package/dist/src/walletConnect/constants.d.ts.map +1 -0
- package/dist/src/walletConnect/constants.js +49 -0
- package/dist/src/walletConnect/constants.js.map +1 -0
- package/dist/src/walletConnect/index.d.ts +3 -0
- package/dist/src/walletConnect/index.d.ts.map +1 -0
- package/dist/src/walletConnect/index.js +19 -0
- package/dist/src/walletConnect/index.js.map +1 -0
- package/dist/src/walletConnect/methods/eth_sendTransaction.d.ts +4 -0
- package/dist/src/walletConnect/methods/eth_sendTransaction.d.ts.map +1 -0
- package/dist/src/walletConnect/methods/eth_sendTransaction.js +24 -0
- package/dist/src/walletConnect/methods/eth_sendTransaction.js.map +1 -0
- package/dist/src/walletConnect/methods/eth_signTypedData_v4.d.ts +4 -0
- package/dist/src/walletConnect/methods/eth_signTypedData_v4.d.ts.map +1 -0
- package/dist/src/walletConnect/methods/eth_signTypedData_v4.js +29 -0
- package/dist/src/walletConnect/methods/eth_signTypedData_v4.js.map +1 -0
- package/dist/src/walletConnect/methods/index.d.ts +4 -0
- package/dist/src/walletConnect/methods/index.d.ts.map +1 -0
- package/dist/src/walletConnect/methods/index.js +20 -0
- package/dist/src/walletConnect/methods/index.js.map +1 -0
- package/dist/src/walletConnect/methods/wallet_getCapabilities.d.ts +4 -0
- package/dist/src/walletConnect/methods/wallet_getCapabilities.d.ts.map +1 -0
- package/dist/src/walletConnect/methods/wallet_getCapabilities.js +18 -0
- package/dist/src/walletConnect/methods/wallet_getCapabilities.js.map +1 -0
- package/dist/src/walletConnect/methods/wallet_watchAsset.d.ts +4 -0
- package/dist/src/walletConnect/methods/wallet_watchAsset.d.ts.map +1 -0
- package/dist/src/walletConnect/methods/wallet_watchAsset.js +27 -0
- package/dist/src/walletConnect/methods/wallet_watchAsset.js.map +1 -0
- package/dist/src/walletConnect/wc.service.d.ts +41 -0
- package/dist/src/walletConnect/wc.service.d.ts.map +1 -0
- package/dist/src/walletConnect/wc.service.js +271 -0
- package/dist/src/walletConnect/wc.service.js.map +1 -0
- package/dist/src/wallets.constants.d.ts +8 -1
- package/dist/src/wallets.constants.d.ts.map +1 -1
- package/dist/src/wallets.constants.js +2 -1
- package/dist/src/wallets.constants.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/helper.d.ts +8 -0
- package/dist/utils/helper.d.ts.map +1 -0
- package/dist/utils/helper.js +75 -0
- package/dist/utils/helper.js.map +1 -0
- package/package.json +2 -1
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./network"), exports);
|
|
18
|
+
__exportStar(require("./requestManager"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/walletConnect/components/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,mDAAiC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Chain, HDAccount } from 'viem';
|
|
2
|
+
import { NetworkConfig } from '../../wallets.constants';
|
|
3
|
+
import { SignClient } from '@walletconnect/sign-client/dist/types/client';
|
|
4
|
+
export declare class NetworkSettings {
|
|
5
|
+
private client;
|
|
6
|
+
private hdAccount;
|
|
7
|
+
activeChainId: number;
|
|
8
|
+
networksByChainId: Map<number, NetworkConfig>;
|
|
9
|
+
chainIdByName: Map<string, number>;
|
|
10
|
+
constructor(client: SignClient, hdAccount: HDAccount);
|
|
11
|
+
private normalizeChainName;
|
|
12
|
+
private getActiveSession;
|
|
13
|
+
setupNetwork(networkConfig: NetworkConfig): Promise<void>;
|
|
14
|
+
addNetwork(networkConfig: NetworkConfig): Promise<void>;
|
|
15
|
+
changeNetwork(networkName: string): Promise<Chain>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=network.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../../../src/walletConnect/components/network.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAE1E,qBAAa,eAAe;IAKd,OAAO,CAAC,MAAM;IAAc,OAAO,CAAC,SAAS;IAJlD,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,6BAAoC;IACrD,aAAa,sBAA6B;gBAE7B,MAAM,EAAE,UAAU,EAAU,SAAS,EAAE,SAAS;IAEpE,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,gBAAgB;IAQlB,YAAY,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzD,UAAU,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BvD,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;CA2BzD"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NetworkSettings = void 0;
|
|
4
|
+
const constants_1 = require("../constants");
|
|
5
|
+
class NetworkSettings {
|
|
6
|
+
constructor(client, hdAccount) {
|
|
7
|
+
this.client = client;
|
|
8
|
+
this.hdAccount = hdAccount;
|
|
9
|
+
this.networksByChainId = new Map();
|
|
10
|
+
this.chainIdByName = new Map();
|
|
11
|
+
}
|
|
12
|
+
normalizeChainName(name) {
|
|
13
|
+
return name.trim().toLowerCase();
|
|
14
|
+
}
|
|
15
|
+
getActiveSession() {
|
|
16
|
+
if (!this.client)
|
|
17
|
+
throw new Error('WC client not initialized');
|
|
18
|
+
const sessions = this.client.session.getAll();
|
|
19
|
+
const session = sessions[0];
|
|
20
|
+
if (!session)
|
|
21
|
+
throw new Error('No active WC session');
|
|
22
|
+
return session;
|
|
23
|
+
}
|
|
24
|
+
async setupNetwork(networkConfig) {
|
|
25
|
+
this.networksByChainId.set(networkConfig.chainId, networkConfig);
|
|
26
|
+
this.chainIdByName.set(this.normalizeChainName(networkConfig.chainName), networkConfig.chainId);
|
|
27
|
+
}
|
|
28
|
+
async addNetwork(networkConfig) {
|
|
29
|
+
if (!this.client)
|
|
30
|
+
throw new Error('WC client not initialized');
|
|
31
|
+
const session = this.getActiveSession();
|
|
32
|
+
const ns = session.namespaces?.eip155;
|
|
33
|
+
if (!ns)
|
|
34
|
+
throw new Error('Session has no eip155 namespace');
|
|
35
|
+
const addr = this.hdAccount.address;
|
|
36
|
+
const newAccount = `eip155:${networkConfig.chainId}:${addr}`;
|
|
37
|
+
const newNamespaces = {
|
|
38
|
+
...session.namespaces,
|
|
39
|
+
eip155: {
|
|
40
|
+
accounts: Array.from(new Set([...(ns.accounts ?? []), newAccount])),
|
|
41
|
+
methods: ns.methods ?? [],
|
|
42
|
+
events: ns.events ?? [],
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
await this.client.update({
|
|
46
|
+
topic: session.topic,
|
|
47
|
+
namespaces: newNamespaces,
|
|
48
|
+
});
|
|
49
|
+
this.networksByChainId.set(networkConfig.chainId, networkConfig);
|
|
50
|
+
this.chainIdByName.set(this.normalizeChainName(networkConfig.chainName), networkConfig.chainId);
|
|
51
|
+
}
|
|
52
|
+
async changeNetwork(networkName) {
|
|
53
|
+
if (!this.client)
|
|
54
|
+
throw new Error('WC client not initialized');
|
|
55
|
+
const normalized = this.normalizeChainName(networkName);
|
|
56
|
+
const chainId = this.chainIdByName.get(normalized);
|
|
57
|
+
const networkConfig = this.networksByChainId.get(chainId);
|
|
58
|
+
if (!chainId) {
|
|
59
|
+
const known = Array.from(this.chainIdByName.keys()).sort();
|
|
60
|
+
throw new Error(`Unknown network "${networkName}". Registered networks: ${known.join(', ')}`);
|
|
61
|
+
}
|
|
62
|
+
const session = this.getActiveSession();
|
|
63
|
+
await this.client.emit({
|
|
64
|
+
topic: session.topic,
|
|
65
|
+
chainId: `eip155:${chainId}`,
|
|
66
|
+
event: { name: 'chainChanged', data: `0x${chainId.toString(16)}` },
|
|
67
|
+
});
|
|
68
|
+
const chain = constants_1.SUPPORTED_CHAINS[chainId] ?? (0, constants_1.buildChainFromNetwork)(networkConfig);
|
|
69
|
+
this.activeChainId = chain.id;
|
|
70
|
+
return chain;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
exports.NetworkSettings = NetworkSettings;
|
|
74
|
+
//# sourceMappingURL=network.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../../../src/walletConnect/components/network.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export type WCSessionRequest = {
|
|
2
|
+
topic: string;
|
|
3
|
+
id: number;
|
|
4
|
+
params: {
|
|
5
|
+
chainId: string;
|
|
6
|
+
request: {
|
|
7
|
+
method: string;
|
|
8
|
+
params: any[] | any;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
processed: boolean;
|
|
12
|
+
};
|
|
13
|
+
export declare class RequestManager {
|
|
14
|
+
queue: WCSessionRequest[];
|
|
15
|
+
pendings: WCSessionRequest[];
|
|
16
|
+
waiters: Array<(req: WCSessionRequest) => void>;
|
|
17
|
+
nextRequest(): Promise<WCSessionRequest>;
|
|
18
|
+
getCurrentRequest(): Promise<WCSessionRequest>;
|
|
19
|
+
getTx(req: WCSessionRequest, index?: number): any;
|
|
20
|
+
getRequestInfo(req: any): {
|
|
21
|
+
method: any;
|
|
22
|
+
params: any;
|
|
23
|
+
};
|
|
24
|
+
validateRequest(req: WCSessionRequest): Promise<WCSessionRequest | undefined>;
|
|
25
|
+
resolveRequest(req: WCSessionRequest): void;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=requestManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requestManager.d.ts","sourceRoot":"","sources":["../../../../src/walletConnect/components/requestManager.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC;YACf,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC;SACrB,CAAC;KACH,CAAC;IAEF,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,qBAAa,cAAc;IAClB,KAAK,EAAE,gBAAgB,EAAE,CAAM;IAC/B,QAAQ,EAAE,gBAAgB,EAAE,CAAM;IAClC,OAAO,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,gBAAgB,KAAK,IAAI,CAAC,CAAM;IAEtD,WAAW,IAAI,OAAO,CAAC,gBAAgB,CAAC;IA6BxC,iBAAiB,IAAI,OAAO,CAAC,gBAAgB,CAAC;IASpD,KAAK,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,SAAI,GAAG,GAAG;IAI5C,cAAc,CAAC,GAAG,KAAA;;;;IAQZ,eAAe,CACnB,GAAG,EAAE,gBAAgB,GACpB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IASxC,cAAc,CAAC,GAAG,EAAE,gBAAgB;CAIrC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RequestManager = void 0;
|
|
4
|
+
class RequestManager {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.queue = [];
|
|
7
|
+
this.pendings = [];
|
|
8
|
+
this.waiters = [];
|
|
9
|
+
}
|
|
10
|
+
async nextRequest() {
|
|
11
|
+
const timeoutMs = 30000;
|
|
12
|
+
if (this.pendings.length > 0) {
|
|
13
|
+
console.warn('Some requests are still pending and have not been processed yet');
|
|
14
|
+
}
|
|
15
|
+
const queued = this.queue.shift();
|
|
16
|
+
if (queued) {
|
|
17
|
+
this.pendings.push(queued);
|
|
18
|
+
return queued;
|
|
19
|
+
}
|
|
20
|
+
return new Promise((resolve, reject) => {
|
|
21
|
+
const t = setTimeout(() => {
|
|
22
|
+
const idx = this.waiters.indexOf(resolve);
|
|
23
|
+
if (idx >= 0)
|
|
24
|
+
this.waiters.splice(idx, 1);
|
|
25
|
+
reject(new Error(`WC: session_request timeout after ${timeoutMs}ms`));
|
|
26
|
+
}, timeoutMs);
|
|
27
|
+
this.waiters.push((req) => {
|
|
28
|
+
clearTimeout(t);
|
|
29
|
+
this.pendings.push(req);
|
|
30
|
+
resolve(req);
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
async getCurrentRequest() {
|
|
35
|
+
const currentPendingRequest = this.pendings[0];
|
|
36
|
+
if (currentPendingRequest) {
|
|
37
|
+
return this.validateRequest(currentPendingRequest);
|
|
38
|
+
}
|
|
39
|
+
return this.nextRequest();
|
|
40
|
+
}
|
|
41
|
+
getTx(req, index = 0) {
|
|
42
|
+
return req.params?.request?.params?.[index];
|
|
43
|
+
}
|
|
44
|
+
getRequestInfo(req) {
|
|
45
|
+
const tx = this.getTx(req);
|
|
46
|
+
return {
|
|
47
|
+
method: req.params.request.method,
|
|
48
|
+
params: tx,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
async validateRequest(req) {
|
|
52
|
+
// @todo: think about it, i think its bullshit
|
|
53
|
+
if (req.processed) {
|
|
54
|
+
console.log('Request already processed');
|
|
55
|
+
return undefined;
|
|
56
|
+
}
|
|
57
|
+
return req;
|
|
58
|
+
}
|
|
59
|
+
resolveRequest(req) {
|
|
60
|
+
req.processed = true;
|
|
61
|
+
this.pendings = this.pendings.filter((r) => r.id !== req.id);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
exports.RequestManager = RequestManager;
|
|
65
|
+
//# sourceMappingURL=requestManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requestManager.js","sourceRoot":"","sources":["../../../../src/walletConnect/components/requestManager.ts"],"names":[],"mappings":";;;AAcA,MAAa,cAAc;IAA3B;QACS,UAAK,GAAuB,EAAE,CAAC;QAC/B,aAAQ,GAAuB,EAAE,CAAC;QAClC,YAAO,GAA2C,EAAE,CAAC;IAmE9D,CAAC;IAjEC,KAAK,CAAC,WAAW;QACf,MAAM,SAAS,GAAG,KAAK,CAAC;QACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5B,OAAO,CAAC,IAAI,CACV,iEAAiE,CAClE,CAAC;SACH;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAClC,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC3B,OAAO,MAAM,CAAC;SACf;QAED,OAAO,IAAI,OAAO,CAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACvD,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE;gBACxB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC1C,IAAI,GAAG,IAAI,CAAC;oBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBAC1C,MAAM,CAAC,IAAI,KAAK,CAAC,qCAAqC,SAAS,IAAI,CAAC,CAAC,CAAC;YACxE,CAAC,EAAE,SAAS,CAAC,CAAC;YAEd,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;gBACxB,YAAY,CAAC,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,CAAC;YACf,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC/C,IAAI,qBAAqB,EAAE;YACzB,OAAO,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC;SACpD;QAED,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,GAAqB,EAAE,KAAK,GAAG,CAAC;QACpC,OAAO,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,cAAc,CAAC,GAAG;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,OAAO;YACL,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM;YACjC,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,GAAqB;QAErB,8CAA8C;QAC9C,IAAI,GAAG,CAAC,SAAS,EAAE;YACjB,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;YACzC,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,cAAc,CAAC,GAAqB;QAClC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/D,CAAC;CACF;AAtED,wCAsEC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Chain } from 'viem';
|
|
2
|
+
import { CommonWalletConfig, NetworkConfig } from '../wallets.constants';
|
|
3
|
+
export declare const WC_SDK_COMMON_CONFIG: CommonWalletConfig;
|
|
4
|
+
export declare const SUPPORTED_CHAINS: Record<number, Chain>;
|
|
5
|
+
export declare function buildChainFromNetwork(network: NetworkConfig): Chain;
|
|
6
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/walletConnect/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAalC,OAAO,EACL,kBAAkB,EAClB,aAAa,EAEd,MAAM,sBAAsB,CAAC;AAE9B,eAAO,MAAM,oBAAoB,EAAE,kBAUlC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAWlD,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,GAAG,KAAK,CAkBnE"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildChainFromNetwork = exports.SUPPORTED_CHAINS = exports.WC_SDK_COMMON_CONFIG = void 0;
|
|
4
|
+
const chains_1 = require("viem/chains");
|
|
5
|
+
const wallets_constants_1 = require("../wallets.constants");
|
|
6
|
+
exports.WC_SDK_COMMON_CONFIG = {
|
|
7
|
+
WALLET_NAME: 'wcSDK',
|
|
8
|
+
EXTENSION_WALLET_NAME: null,
|
|
9
|
+
CONNECTED_WALLET_NAME: 'WalletConnect',
|
|
10
|
+
CONNECT_BUTTON_NAME: 'WalletConnect',
|
|
11
|
+
STORE_EXTENSION_ID: null,
|
|
12
|
+
WALLET_TYPE: wallets_constants_1.WalletConnectTypes.WC_SDK,
|
|
13
|
+
LATEST_STABLE_DOWNLOAD_LINK: null,
|
|
14
|
+
EXTENSION_START_PATH: '/home.html',
|
|
15
|
+
WC_PROJECT_ID: process.env.WC_PROJECT_ID,
|
|
16
|
+
};
|
|
17
|
+
exports.SUPPORTED_CHAINS = {
|
|
18
|
+
1: chains_1.mainnet,
|
|
19
|
+
17000: chains_1.holesky,
|
|
20
|
+
560048: chains_1.hoodi,
|
|
21
|
+
11155111: chains_1.sepolia,
|
|
22
|
+
10: chains_1.optimism,
|
|
23
|
+
11155420: chains_1.optimismSepolia,
|
|
24
|
+
1868: chains_1.soneium,
|
|
25
|
+
1946: chains_1.soneiumMinato,
|
|
26
|
+
130: chains_1.unichain,
|
|
27
|
+
1301: chains_1.unichainSepolia,
|
|
28
|
+
};
|
|
29
|
+
function buildChainFromNetwork(network) {
|
|
30
|
+
return {
|
|
31
|
+
id: network.chainId,
|
|
32
|
+
name: network.chainName,
|
|
33
|
+
nativeCurrency: {
|
|
34
|
+
name: network.tokenSymbol,
|
|
35
|
+
symbol: network.tokenSymbol,
|
|
36
|
+
decimals: 18,
|
|
37
|
+
},
|
|
38
|
+
rpcUrls: {
|
|
39
|
+
default: {
|
|
40
|
+
http: [network.rpcUrl],
|
|
41
|
+
},
|
|
42
|
+
public: {
|
|
43
|
+
http: [network.rpcUrl],
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
exports.buildChainFromNetwork = buildChainFromNetwork;
|
|
49
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/walletConnect/constants.ts"],"names":[],"mappings":";;;AACA,wCAWqB;AACrB,4DAI8B;AAEjB,QAAA,oBAAoB,GAAuB;IACtD,WAAW,EAAE,OAAO;IACpB,qBAAqB,EAAE,IAAI;IAC3B,qBAAqB,EAAE,eAAe;IACtC,mBAAmB,EAAE,eAAe;IACpC,kBAAkB,EAAE,IAAI;IACxB,WAAW,EAAE,sCAAkB,CAAC,MAAM;IACtC,2BAA2B,EAAE,IAAI;IACjC,oBAAoB,EAAE,YAAY;IAClC,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;CACzC,CAAC;AAEW,QAAA,gBAAgB,GAA0B;IACrD,CAAC,EAAE,gBAAgB;IACnB,KAAK,EAAE,gBAAgB;IACvB,MAAM,EAAE,cAAc;IACtB,QAAQ,EAAE,gBAAgB;IAC1B,EAAE,EAAE,iBAAiB;IACrB,QAAQ,EAAE,wBAAwB;IAClC,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,sBAAsB;IAC5B,GAAG,EAAE,iBAAiB;IACtB,IAAI,EAAE,wBAAwB;CAC/B,CAAC;AAEF,SAAgB,qBAAqB,CAAC,OAAsB;IAC1D,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,OAAO;QACnB,IAAI,EAAE,OAAO,CAAC,SAAS;QACvB,cAAc,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,WAAW;YACzB,MAAM,EAAE,OAAO,CAAC,WAAW;YAC3B,QAAQ,EAAE,EAAE;SACb;QACD,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;aACvB;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;aACvB;SACF;KACuB,CAAC;AAC7B,CAAC;AAlBD,sDAkBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/walletConnect/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./constants"), exports);
|
|
18
|
+
__exportStar(require("./wc.service"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/walletConnect/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,+CAA6B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eth_sendTransaction.d.ts","sourceRoot":"","sources":["../../../../src/walletConnect/methods/eth_sendTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,gBAAgB,iBAoBtB"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.eth_sendTransaction = void 0;
|
|
4
|
+
async function eth_sendTransaction(req) {
|
|
5
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
6
|
+
// @ts-ignore
|
|
7
|
+
const fees = await this.publicClient.estimateFeesPerGas();
|
|
8
|
+
const value = req.params.request.params[0].value
|
|
9
|
+
? BigInt(req.params.request.params[0].value)
|
|
10
|
+
: undefined;
|
|
11
|
+
const hash = await this.walletClient.sendTransaction({
|
|
12
|
+
...req.params.request.params[0],
|
|
13
|
+
value,
|
|
14
|
+
gas: BigInt(req.params.request.params[0].gas),
|
|
15
|
+
maxFeePerGas: fees.maxFeePerGas,
|
|
16
|
+
maxPriorityFeePerGas: fees.maxPriorityFeePerGas,
|
|
17
|
+
});
|
|
18
|
+
await this.signClient.respond({
|
|
19
|
+
topic: req.topic,
|
|
20
|
+
response: { id: req.id, jsonrpc: '2.0', result: hash },
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
exports.eth_sendTransaction = eth_sendTransaction;
|
|
24
|
+
//# sourceMappingURL=eth_sendTransaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eth_sendTransaction.js","sourceRoot":"","sources":["../../../../src/walletConnect/methods/eth_sendTransaction.ts"],"names":[],"mappings":";;;AAGO,KAAK,UAAU,mBAAmB,CAEvC,GAAqB;IAErB,6DAA6D;IAC7D,aAAa;IACb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,CAAC;IAC1D,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK;QAC9C,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC5C,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC;QACnD,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/B,KAAK;QACL,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC7C,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;KAChD,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAC5B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;KACvD,CAAC,CAAC;AACL,CAAC;AAtBD,kDAsBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eth_signTypedData_v4.d.ts","sourceRoot":"","sources":["../../../../src/walletConnect/methods/eth_signTypedData_v4.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,gBAAgB,iBA0BtB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.eth_signTypedData_v4 = void 0;
|
|
4
|
+
async function eth_signTypedData_v4(req) {
|
|
5
|
+
const typed = req.params.request.params[1];
|
|
6
|
+
const typedData = typeof typed === 'string' ? JSON.parse(typed) : typed;
|
|
7
|
+
const signature = await this.walletClient.signTypedData({
|
|
8
|
+
account: this.hdAccount,
|
|
9
|
+
domain: {
|
|
10
|
+
...typedData.domain,
|
|
11
|
+
chainId: Number(typedData.domain.chainId),
|
|
12
|
+
},
|
|
13
|
+
types: typedData.types,
|
|
14
|
+
primaryType: typedData.primaryType,
|
|
15
|
+
message: {
|
|
16
|
+
...typedData.message,
|
|
17
|
+
value: BigInt(typedData.message.value),
|
|
18
|
+
nonce: BigInt(typedData.message.nonce),
|
|
19
|
+
deadline: BigInt(typedData.message.deadline),
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
console.log('Signature was created.');
|
|
23
|
+
await this.signClient.respond({
|
|
24
|
+
topic: req.topic,
|
|
25
|
+
response: { id: req.id, jsonrpc: '2.0', result: signature },
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
exports.eth_signTypedData_v4 = eth_signTypedData_v4;
|
|
29
|
+
//# sourceMappingURL=eth_signTypedData_v4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eth_signTypedData_v4.js","sourceRoot":"","sources":["../../../../src/walletConnect/methods/eth_signTypedData_v4.ts"],"names":[],"mappings":";;;AAGO,KAAK,UAAU,oBAAoB,CAExC,GAAqB;IAErB,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAExE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC;QACtD,OAAO,EAAE,IAAI,CAAC,SAAS;QACvB,MAAM,EAAE;YACN,GAAG,SAAS,CAAC,MAAM;YACnB,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;SAC1C;QACD,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,OAAO,EAAE;YACP,GAAG,SAAS,CAAC,OAAO;YACpB,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;YACtC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;YACtC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC;SAC7C;KACF,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAEtC,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAC5B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE;KAC5D,CAAC,CAAC;AACL,CAAC;AA5BD,oDA4BC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/walletConnect/methods/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./eth_sendTransaction"), exports);
|
|
18
|
+
__exportStar(require("./wallet_watchAsset"), exports);
|
|
19
|
+
__exportStar(require("./eth_signTypedData_v4"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/walletConnect/methods/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,sDAAoC;AACpC,yDAAuC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet_getCapabilities.d.ts","sourceRoot":"","sources":["../../../../src/walletConnect/methods/wallet_getCapabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,gBAAgB,iBAetB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.wallet_getCapabilities = void 0;
|
|
4
|
+
async function wallet_getCapabilities(req) {
|
|
5
|
+
console.log('Responding to wallet_getCapabilities with wallet_watchAsset support');
|
|
6
|
+
await this.signClient.respond({
|
|
7
|
+
topic: req.topic,
|
|
8
|
+
response: {
|
|
9
|
+
id: req.id,
|
|
10
|
+
jsonrpc: '2.0',
|
|
11
|
+
result: {
|
|
12
|
+
wallet_watchAsset: true,
|
|
13
|
+
},
|
|
14
|
+
},
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
exports.wallet_getCapabilities = wallet_getCapabilities;
|
|
18
|
+
//# sourceMappingURL=wallet_getCapabilities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet_getCapabilities.js","sourceRoot":"","sources":["../../../../src/walletConnect/methods/wallet_getCapabilities.ts"],"names":[],"mappings":";;;AAGO,KAAK,UAAU,sBAAsB,CAE1C,GAAqB;IAErB,OAAO,CAAC,GAAG,CACT,qEAAqE,CACtE,CAAC;IACF,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAC5B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,QAAQ,EAAE;YACR,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,OAAO,EAAE,KAAK;YACd,MAAM,EAAE;gBACN,iBAAiB,EAAE,IAAI;aACxB;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAjBD,wDAiBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet_watchAsset.d.ts","sourceRoot":"","sources":["../../../../src/walletConnect/methods/wallet_watchAsset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,gBAAgB,iBA2BtB"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.wallet_watchAsset = void 0;
|
|
4
|
+
async function wallet_watchAsset(req) {
|
|
5
|
+
console.log('Try to add token to wallet');
|
|
6
|
+
const params = req.params.request.params;
|
|
7
|
+
const account = this.hdAccount.address.toLowerCase();
|
|
8
|
+
if (params?.type === 'ERC20' && params?.options?.address) {
|
|
9
|
+
const list = this.watchedTokensByAccount.get(account) ?? [];
|
|
10
|
+
list.push({
|
|
11
|
+
address: params.options.address.toLowerCase(),
|
|
12
|
+
symbol: params.options.symbol,
|
|
13
|
+
decimals: params.options.decimals,
|
|
14
|
+
});
|
|
15
|
+
this.watchedTokensByAccount.set(account, list);
|
|
16
|
+
}
|
|
17
|
+
await this.signClient.respond({
|
|
18
|
+
topic: req.topic,
|
|
19
|
+
response: {
|
|
20
|
+
id: req.id,
|
|
21
|
+
jsonrpc: '2.0',
|
|
22
|
+
result: true,
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
exports.wallet_watchAsset = wallet_watchAsset;
|
|
27
|
+
//# sourceMappingURL=wallet_watchAsset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet_watchAsset.js","sourceRoot":"","sources":["../../../../src/walletConnect/methods/wallet_watchAsset.ts"],"names":[],"mappings":";;;AAGO,KAAK,UAAU,iBAAiB,CAErC,GAAqB;IAErB,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;IAEzC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAErD,IAAI,MAAM,EAAE,IAAI,KAAK,OAAO,IAAI,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAE5D,IAAI,CAAC,IAAI,CAAC;YACR,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE;YAC7C,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM;YAC7B,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ;SAClC,CAAC,CAAC;QAEH,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;KAChD;IAED,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAC5B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,QAAQ,EAAE;YACR,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,IAAI;SACb;KACF,CAAC,CAAC;AACL,CAAC;AA7BD,8CA6BC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import SignClient from '@walletconnect/sign-client';
|
|
2
|
+
import { createPublicClient, createWalletClient, HDAccount } from 'viem';
|
|
3
|
+
import { WalletPage, WalletPageOptions } from '../wallet.page';
|
|
4
|
+
import { NetworkConfig, WCApproveNamespaces } from '../wallets.constants';
|
|
5
|
+
type WatchedToken = {
|
|
6
|
+
address: `0x${string}`;
|
|
7
|
+
symbol?: string;
|
|
8
|
+
decimals?: number;
|
|
9
|
+
};
|
|
10
|
+
export declare class WCSDKWallet implements WalletPage {
|
|
11
|
+
options: WalletPageOptions;
|
|
12
|
+
protected signClient?: SignClient;
|
|
13
|
+
protected publicClient?: ReturnType<typeof createPublicClient>;
|
|
14
|
+
protected walletClient?: ReturnType<typeof createWalletClient>;
|
|
15
|
+
protected hdAccount: HDAccount;
|
|
16
|
+
protected defaultTimeoutMs: number;
|
|
17
|
+
protected namespaces?: WCApproveNamespaces;
|
|
18
|
+
protected watchedTokensByAccount: Map<string, WatchedToken[]>;
|
|
19
|
+
private networkSettings;
|
|
20
|
+
private requestManager;
|
|
21
|
+
constructor(options: WalletPageOptions);
|
|
22
|
+
setup(): Promise<void>;
|
|
23
|
+
connectWallet(uri: string): Promise<void>;
|
|
24
|
+
disconnect(): Promise<void>;
|
|
25
|
+
confirmTx(): Promise<void>;
|
|
26
|
+
confirmAddTokenToWallet(): Promise<void>;
|
|
27
|
+
cancelTx(): Promise<void>;
|
|
28
|
+
cancelAllTxRequests(): Promise<void>;
|
|
29
|
+
private waitForProposalOnce;
|
|
30
|
+
private buildNamespacesFromProposal;
|
|
31
|
+
getTokenBalance(tokenName: string): Promise<number>;
|
|
32
|
+
importKey(secretKey: string, withChecks?: boolean): Promise<void>;
|
|
33
|
+
assertTxAmount(expectedAmount: string): Promise<void>;
|
|
34
|
+
assertReceiptAddress(expectedAddress: string): Promise<void>;
|
|
35
|
+
setupNetwork(networkConfig: NetworkConfig): Promise<void>;
|
|
36
|
+
addNetwork(networkConfig: NetworkConfig): Promise<void>;
|
|
37
|
+
changeNetwork(networkName: string): Promise<void>;
|
|
38
|
+
private rebuildViemClients;
|
|
39
|
+
}
|
|
40
|
+
export {};
|
|
41
|
+
//# 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":"AAAA,OAAO,UAAU,MAAM,4BAA4B,CAAC;AACpD,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,SAAS,EAKV,MAAM,MAAM,CAAC;AAGd,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAe1E,KAAK,YAAY,GAAG;IAClB,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAQF,qBAAa,WAAY,YAAW,UAAU;IAgBzB,OAAO,EAAE,iBAAiB;IAf7C,SAAS,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IAGlC,SAAS,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;IAC/D,SAAS,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;IAC/D,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC;IAC/B,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;IACnC,SAAS,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IAE3C,SAAS,CAAC,sBAAsB,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAa;IAG1E,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,cAAc,CAAiB;gBAEpB,OAAO,EAAE,iBAAiB;IAsBvC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsCtB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBzC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB3B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB1B,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBxC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBzB,mBAAmB;YAcX,mBAAmB;IAmBjC,OAAO,CAAC,2BAA2B;IAsC7B,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BzD,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3D,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAerD,oBAAoB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAe5D,YAAY,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD,UAAU,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvD,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvD,OAAO,CAAC,kBAAkB;CAkB3B"}
|