@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.
Files changed (120) hide show
  1. package/dist/src/bitget/bitgetPage.d.ts +2 -4
  2. package/dist/src/bitget/bitgetPage.d.ts.map +1 -1
  3. package/dist/src/bitget/bitgetPage.js +3 -4
  4. package/dist/src/bitget/bitgetPage.js.map +1 -1
  5. package/dist/src/coin98/coin98.page.d.ts +3 -4
  6. package/dist/src/coin98/coin98.page.d.ts.map +1 -1
  7. package/dist/src/coin98/coin98.page.js +5 -2
  8. package/dist/src/coin98/coin98.page.js.map +1 -1
  9. package/dist/src/coinbase/coinbase.page.d.ts +5 -5
  10. package/dist/src/coinbase/coinbase.page.d.ts.map +1 -1
  11. package/dist/src/coinbase/coinbase.page.js +7 -3
  12. package/dist/src/coinbase/coinbase.page.js.map +1 -1
  13. package/dist/src/ctrl/ctrl.page.d.ts +2 -4
  14. package/dist/src/ctrl/ctrl.page.d.ts.map +1 -1
  15. package/dist/src/ctrl/ctrl.page.js +3 -4
  16. package/dist/src/ctrl/ctrl.page.js.map +1 -1
  17. package/dist/src/exodus/exodus.page.d.ts +3 -4
  18. package/dist/src/exodus/exodus.page.d.ts.map +1 -1
  19. package/dist/src/exodus/exodus.page.js +5 -2
  20. package/dist/src/exodus/exodus.page.js.map +1 -1
  21. package/dist/src/index.d.ts +1 -0
  22. package/dist/src/index.d.ts.map +1 -1
  23. package/dist/src/index.js +1 -0
  24. package/dist/src/index.js.map +1 -1
  25. package/dist/src/metamask/metamask-latest/metamask.page.d.ts +8 -9
  26. package/dist/src/metamask/metamask-latest/metamask.page.d.ts.map +1 -1
  27. package/dist/src/metamask/metamask-latest/metamask.page.js +26 -12
  28. package/dist/src/metamask/metamask-latest/metamask.page.js.map +1 -1
  29. package/dist/src/metamask/metamask-latest/pages/walletOperations.page.d.ts +0 -1
  30. package/dist/src/metamask/metamask-latest/pages/walletOperations.page.d.ts.map +1 -1
  31. package/dist/src/metamask/metamask-latest/pages/walletOperations.page.js +5 -10
  32. package/dist/src/metamask/metamask-latest/pages/walletOperations.page.js.map +1 -1
  33. package/dist/src/metamask/metamask-stable/metamask.page.d.ts +8 -9
  34. package/dist/src/metamask/metamask-stable/metamask.page.d.ts.map +1 -1
  35. package/dist/src/metamask/metamask-stable/metamask.page.js +26 -12
  36. package/dist/src/metamask/metamask-stable/metamask.page.js.map +1 -1
  37. package/dist/src/metamask/metamask-stable/pages/walletOperations.page.d.ts +0 -1
  38. package/dist/src/metamask/metamask-stable/pages/walletOperations.page.d.ts.map +1 -1
  39. package/dist/src/metamask/metamask-stable/pages/walletOperations.page.js +5 -10
  40. package/dist/src/metamask/metamask-stable/pages/walletOperations.page.js.map +1 -1
  41. package/dist/src/okx/okx.page.d.ts +8 -10
  42. package/dist/src/okx/okx.page.d.ts.map +1 -1
  43. package/dist/src/okx/okx.page.js +14 -14
  44. package/dist/src/okx/okx.page.js.map +1 -1
  45. package/dist/src/safe/pages/setup.page.d.ts +4 -3
  46. package/dist/src/safe/pages/setup.page.d.ts.map +1 -1
  47. package/dist/src/safe/pages/setup.page.js +34 -13
  48. package/dist/src/safe/pages/setup.page.js.map +1 -1
  49. package/dist/src/safe/pages/transaction.page.d.ts +3 -4
  50. package/dist/src/safe/pages/transaction.page.d.ts.map +1 -1
  51. package/dist/src/safe/pages/transaction.page.js +5 -11
  52. package/dist/src/safe/pages/transaction.page.js.map +1 -1
  53. package/dist/src/safe/safeIframe.page.d.ts +5 -6
  54. package/dist/src/safe/safeIframe.page.d.ts.map +1 -1
  55. package/dist/src/safe/safeIframe.page.js +17 -6
  56. package/dist/src/safe/safeIframe.page.js.map +1 -1
  57. package/dist/src/safe/safeWc.page.d.ts +2 -3
  58. package/dist/src/safe/safeWc.page.d.ts.map +1 -1
  59. package/dist/src/safe/safeWc.page.js +5 -3
  60. package/dist/src/safe/safeWc.page.js.map +1 -1
  61. package/dist/src/trustwallet/trustWallet.page.d.ts +7 -9
  62. package/dist/src/trustwallet/trustWallet.page.d.ts.map +1 -1
  63. package/dist/src/trustwallet/trustWallet.page.js +11 -13
  64. package/dist/src/trustwallet/trustWallet.page.js.map +1 -1
  65. package/dist/src/wallet.page.d.ts +11 -10
  66. package/dist/src/wallet.page.d.ts.map +1 -1
  67. package/dist/src/walletConnect/components/index.d.ts +3 -0
  68. package/dist/src/walletConnect/components/index.d.ts.map +1 -0
  69. package/dist/src/walletConnect/components/index.js +19 -0
  70. package/dist/src/walletConnect/components/index.js.map +1 -0
  71. package/dist/src/walletConnect/components/network.d.ts +17 -0
  72. package/dist/src/walletConnect/components/network.d.ts.map +1 -0
  73. package/dist/src/walletConnect/components/network.js +74 -0
  74. package/dist/src/walletConnect/components/network.js.map +1 -0
  75. package/dist/src/walletConnect/components/requestManager.d.ts +27 -0
  76. package/dist/src/walletConnect/components/requestManager.d.ts.map +1 -0
  77. package/dist/src/walletConnect/components/requestManager.js +65 -0
  78. package/dist/src/walletConnect/components/requestManager.js.map +1 -0
  79. package/dist/src/walletConnect/constants.d.ts +6 -0
  80. package/dist/src/walletConnect/constants.d.ts.map +1 -0
  81. package/dist/src/walletConnect/constants.js +49 -0
  82. package/dist/src/walletConnect/constants.js.map +1 -0
  83. package/dist/src/walletConnect/index.d.ts +3 -0
  84. package/dist/src/walletConnect/index.d.ts.map +1 -0
  85. package/dist/src/walletConnect/index.js +19 -0
  86. package/dist/src/walletConnect/index.js.map +1 -0
  87. package/dist/src/walletConnect/methods/eth_sendTransaction.d.ts +4 -0
  88. package/dist/src/walletConnect/methods/eth_sendTransaction.d.ts.map +1 -0
  89. package/dist/src/walletConnect/methods/eth_sendTransaction.js +24 -0
  90. package/dist/src/walletConnect/methods/eth_sendTransaction.js.map +1 -0
  91. package/dist/src/walletConnect/methods/eth_signTypedData_v4.d.ts +4 -0
  92. package/dist/src/walletConnect/methods/eth_signTypedData_v4.d.ts.map +1 -0
  93. package/dist/src/walletConnect/methods/eth_signTypedData_v4.js +29 -0
  94. package/dist/src/walletConnect/methods/eth_signTypedData_v4.js.map +1 -0
  95. package/dist/src/walletConnect/methods/index.d.ts +4 -0
  96. package/dist/src/walletConnect/methods/index.d.ts.map +1 -0
  97. package/dist/src/walletConnect/methods/index.js +20 -0
  98. package/dist/src/walletConnect/methods/index.js.map +1 -0
  99. package/dist/src/walletConnect/methods/wallet_getCapabilities.d.ts +4 -0
  100. package/dist/src/walletConnect/methods/wallet_getCapabilities.d.ts.map +1 -0
  101. package/dist/src/walletConnect/methods/wallet_getCapabilities.js +18 -0
  102. package/dist/src/walletConnect/methods/wallet_getCapabilities.js.map +1 -0
  103. package/dist/src/walletConnect/methods/wallet_watchAsset.d.ts +4 -0
  104. package/dist/src/walletConnect/methods/wallet_watchAsset.d.ts.map +1 -0
  105. package/dist/src/walletConnect/methods/wallet_watchAsset.js +27 -0
  106. package/dist/src/walletConnect/methods/wallet_watchAsset.js.map +1 -0
  107. package/dist/src/walletConnect/wc.service.d.ts +41 -0
  108. package/dist/src/walletConnect/wc.service.d.ts.map +1 -0
  109. package/dist/src/walletConnect/wc.service.js +271 -0
  110. package/dist/src/walletConnect/wc.service.js.map +1 -0
  111. package/dist/src/wallets.constants.d.ts +8 -1
  112. package/dist/src/wallets.constants.d.ts.map +1 -1
  113. package/dist/src/wallets.constants.js +2 -1
  114. package/dist/src/wallets.constants.js.map +1 -1
  115. package/dist/tsconfig.tsbuildinfo +1 -1
  116. package/dist/utils/helper.d.ts +8 -0
  117. package/dist/utils/helper.d.ts.map +1 -0
  118. package/dist/utils/helper.js +75 -0
  119. package/dist/utils/helper.js.map +1 -0
  120. 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,3 @@
1
+ export * from './constants';
2
+ export * from './wc.service';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -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,4 @@
1
+ import { WCSessionRequest } from '../components';
2
+ import { WCSDKWallet } from '../wc.service';
3
+ export declare function eth_sendTransaction(this: WCSDKWallet, req: WCSessionRequest): Promise<void>;
4
+ //# sourceMappingURL=eth_sendTransaction.d.ts.map
@@ -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,4 @@
1
+ import { WCSessionRequest } from '../components';
2
+ import { WCSDKWallet } from '../wc.service';
3
+ export declare function eth_signTypedData_v4(this: WCSDKWallet, req: WCSessionRequest): Promise<void>;
4
+ //# sourceMappingURL=eth_signTypedData_v4.d.ts.map
@@ -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,4 @@
1
+ export * from './eth_sendTransaction';
2
+ export * from './wallet_watchAsset';
3
+ export * from './eth_signTypedData_v4';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -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,4 @@
1
+ import { WCSessionRequest } from '../components';
2
+ import { WCSDKWallet } from '../wc.service';
3
+ export declare function wallet_getCapabilities(this: WCSDKWallet, req: WCSessionRequest): Promise<void>;
4
+ //# sourceMappingURL=wallet_getCapabilities.d.ts.map
@@ -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,4 @@
1
+ import { WCSessionRequest } from '../components';
2
+ import { WCSDKWallet } from '../wc.service';
3
+ export declare function wallet_watchAsset(this: WCSDKWallet, req: WCSessionRequest): Promise<void>;
4
+ //# sourceMappingURL=wallet_watchAsset.d.ts.map
@@ -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"}