@dynamic-labs/ethereum 0.19.0-alpha.14 → 0.19.0-alpha.16
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/CHANGELOG.md +25 -0
- package/package.json +6 -6
- package/src/EthWalletConnector.cjs +7 -7
- package/src/EthWalletConnector.d.ts +2 -2
- package/src/EthWalletConnector.js +7 -7
- package/src/injected/InjectedWalletBase.cjs +2 -2
- package/src/injected/InjectedWalletBase.d.ts +1 -1
- package/src/injected/InjectedWalletBase.js +2 -2
- package/src/injected/LegacyInjectedWalletBase.cjs +1 -1
- package/src/injected/LegacyInjectedWalletBase.d.ts +1 -1
- package/src/injected/LegacyInjectedWalletBase.js +1 -1
- package/src/walletConnect/walletConnect.cjs +3 -3
- package/src/walletConnect/walletConnect.d.ts +1 -1
- package/src/walletConnect/walletConnect.js +3 -3
- package/src/walletConnect/walletConnectV2.cjs +2 -2
- package/src/walletConnect/walletConnectV2.d.ts +1 -1
- package/src/walletConnect/walletConnectV2.js +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,29 @@
|
|
|
1
1
|
|
|
2
|
+
## [0.19.0-alpha.16](https://github.com/dynamic-labs/DynamicAuth/compare/v0.19.0-alpha.15...v0.19.0-alpha.16) (2023-10-17)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### ⚠ BREAKING CHANGES
|
|
6
|
+
|
|
7
|
+
* ethers extension integration and rename provider methods (#3573)
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* add onDisconnect ([#3572](https://github.com/dynamic-labs/DynamicAuth/issues/3572)) ([3e612f7](https://github.com/dynamic-labs/DynamicAuth/commit/3e612f72540781b9246a47ac12a7c979fb6c0d88))
|
|
12
|
+
* user callback on passkey creation complete ([#3591](https://github.com/dynamic-labs/DynamicAuth/issues/3591)) ([92d5f7d](https://github.com/dynamic-labs/DynamicAuth/commit/92d5f7df2ac1cc06338f7e9e75125f7bb71455ab))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
* argentX in-browser wallet ([#3588](https://github.com/dynamic-labs/DynamicAuth/issues/3588)) ([7f3b22d](https://github.com/dynamic-labs/DynamicAuth/commit/7f3b22d003182aa0d84406086a313fc4de25e4a8))
|
|
18
|
+
* display a better message when transaction amount decimals are invalid ([#3577](https://github.com/dynamic-labs/DynamicAuth/issues/3577)) ([0238d9b](https://github.com/dynamic-labs/DynamicAuth/commit/0238d9b7712d6a52aec89193c751224dd8fd8b17))
|
|
19
|
+
* remove passkey success view ([#3536](https://github.com/dynamic-labs/DynamicAuth/issues/3536)) ([b559de9](https://github.com/dynamic-labs/DynamicAuth/commit/b559de9c83096ed98e9f073b998ac08f876af24e))
|
|
20
|
+
* **wagmi-connector:** use wallets list to sync wagmi client ([#3563](https://github.com/dynamic-labs/DynamicAuth/issues/3563)) ([1d551b9](https://github.com/dynamic-labs/DynamicAuth/commit/1d551b933aefe0c535285d68c2e6f819cd321e62))
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
* ethers extension integration and rename provider methods ([#3573](https://github.com/dynamic-labs/DynamicAuth/issues/3573)) ([efd73c3](https://github.com/dynamic-labs/DynamicAuth/commit/efd73c3b8121df9a7d4ec8c1fb6c4fd76ecce6df))
|
|
24
|
+
|
|
25
|
+
## [0.19.0-alpha.15](https://github.com/dynamic-labs/DynamicAuth/compare/v0.19.0-alpha.14...v0.19.0-alpha.15) (2023-10-11)
|
|
26
|
+
|
|
2
27
|
## [0.19.0-alpha.14](https://github.com/dynamic-labs/DynamicAuth/compare/v0.19.0-alpha.13...v0.19.0-alpha.14) (2023-10-10)
|
|
3
28
|
|
|
4
29
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/ethereum",
|
|
3
|
-
"version": "0.19.0-alpha.
|
|
3
|
+
"version": "0.19.0-alpha.16",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/dynamic-labs/DynamicAuth.git",
|
|
@@ -31,11 +31,11 @@
|
|
|
31
31
|
"@walletconnect/universal-provider": "2.10.1",
|
|
32
32
|
"eventemitter3": "5.0.1",
|
|
33
33
|
"buffer": "6.0.3",
|
|
34
|
-
"@dynamic-labs/rpc-providers": "0.19.0-alpha.
|
|
35
|
-
"@dynamic-labs/types": "0.19.0-alpha.
|
|
36
|
-
"@dynamic-labs/utils": "0.19.0-alpha.
|
|
37
|
-
"@dynamic-labs/wallet-book": "0.19.0-alpha.
|
|
38
|
-
"@dynamic-labs/wallet-connector-core": "0.19.0-alpha.
|
|
34
|
+
"@dynamic-labs/rpc-providers": "0.19.0-alpha.16",
|
|
35
|
+
"@dynamic-labs/types": "0.19.0-alpha.16",
|
|
36
|
+
"@dynamic-labs/utils": "0.19.0-alpha.16",
|
|
37
|
+
"@dynamic-labs/wallet-book": "0.19.0-alpha.16",
|
|
38
|
+
"@dynamic-labs/wallet-connector-core": "0.19.0-alpha.16",
|
|
39
39
|
"stream": "0.0.2"
|
|
40
40
|
},
|
|
41
41
|
"peerDependencies": {
|
|
@@ -10,7 +10,7 @@ var rpcProviders = require('@dynamic-labs/rpc-providers');
|
|
|
10
10
|
var findEvmNetwork = require('./utils/findEvmNetwork.cjs');
|
|
11
11
|
|
|
12
12
|
class EthWalletConnector extends walletConnectorCore.WalletConnectorBase {
|
|
13
|
-
|
|
13
|
+
getPublicClient() {
|
|
14
14
|
var _a, _b, _c;
|
|
15
15
|
return _tslib.__awaiter(this, void 0, void 0, function* () {
|
|
16
16
|
const networkId = (_a = (yield this.getNetwork())) !== null && _a !== void 0 ? _a : 1;
|
|
@@ -60,7 +60,7 @@ class EthWalletConnector extends walletConnectorCore.WalletConnectorBase {
|
|
|
60
60
|
}
|
|
61
61
|
getNetwork() {
|
|
62
62
|
return _tslib.__awaiter(this, void 0, void 0, function* () {
|
|
63
|
-
const provider = this.
|
|
63
|
+
const provider = this.getWalletClient();
|
|
64
64
|
if (!this.supportsNetworkSwitching || !provider) {
|
|
65
65
|
return Promise.resolve(undefined);
|
|
66
66
|
}
|
|
@@ -73,7 +73,7 @@ class EthWalletConnector extends walletConnectorCore.WalletConnectorBase {
|
|
|
73
73
|
return _tslib.__awaiter(this, void 0, void 0, function* () {
|
|
74
74
|
const [[address], rpcProvider] = yield Promise.all([
|
|
75
75
|
this.getConnectedAccounts(),
|
|
76
|
-
this.
|
|
76
|
+
this.getPublicClient(),
|
|
77
77
|
]);
|
|
78
78
|
if (!address || !rpcProvider) {
|
|
79
79
|
return;
|
|
@@ -95,7 +95,7 @@ class EthWalletConnector extends walletConnectorCore.WalletConnectorBase {
|
|
|
95
95
|
}
|
|
96
96
|
getSigner() {
|
|
97
97
|
return _tslib.__awaiter(this, void 0, void 0, function* () {
|
|
98
|
-
return this.
|
|
98
|
+
return this.getWalletClient();
|
|
99
99
|
});
|
|
100
100
|
}
|
|
101
101
|
getBalance() {
|
|
@@ -105,7 +105,7 @@ class EthWalletConnector extends walletConnectorCore.WalletConnectorBase {
|
|
|
105
105
|
const [address] = yield this.getConnectedAccounts();
|
|
106
106
|
if (!address)
|
|
107
107
|
return;
|
|
108
|
-
const client = yield this.
|
|
108
|
+
const client = yield this.getPublicClient();
|
|
109
109
|
const result = yield (client === null || client === void 0 ? void 0 : client.getBalance({
|
|
110
110
|
address: address,
|
|
111
111
|
}));
|
|
@@ -130,7 +130,7 @@ class EthWalletConnector extends walletConnectorCore.WalletConnectorBase {
|
|
|
130
130
|
if (!this.supportsNetworkSwitching()) {
|
|
131
131
|
throw new utils.DynamicError('Network switching is not supported');
|
|
132
132
|
}
|
|
133
|
-
const provider = this.
|
|
133
|
+
const provider = this.getWalletClient();
|
|
134
134
|
if (!provider) {
|
|
135
135
|
throw new utils.DynamicError('Provider not found');
|
|
136
136
|
}
|
|
@@ -139,7 +139,7 @@ class EthWalletConnector extends walletConnectorCore.WalletConnectorBase {
|
|
|
139
139
|
}
|
|
140
140
|
getConnectedAccounts() {
|
|
141
141
|
return _tslib.__awaiter(this, void 0, void 0, function* () {
|
|
142
|
-
const provider = this.
|
|
142
|
+
const provider = this.getWalletClient();
|
|
143
143
|
if (!provider)
|
|
144
144
|
return [];
|
|
145
145
|
return utils.retryableFn(provider.getAddresses, {
|
|
@@ -18,8 +18,8 @@ export type EthWalletConnectorOpts = {
|
|
|
18
18
|
};
|
|
19
19
|
export declare abstract class EthWalletConnector extends WalletConnectorBase {
|
|
20
20
|
evmNetworks: EvmNetwork[];
|
|
21
|
-
abstract
|
|
22
|
-
|
|
21
|
+
abstract getWalletClient(): WalletClient | undefined;
|
|
22
|
+
getPublicClient(): Promise<PublicClient | undefined>;
|
|
23
23
|
constructor(props: EthWalletConnectorOpts);
|
|
24
24
|
getNetwork(): Promise<number | undefined>;
|
|
25
25
|
getNameService(): Promise<NameServiceData | undefined>;
|
|
@@ -6,7 +6,7 @@ import { ProviderChain } from '@dynamic-labs/rpc-providers';
|
|
|
6
6
|
import { findEvmNetwork } from './utils/findEvmNetwork.js';
|
|
7
7
|
|
|
8
8
|
class EthWalletConnector extends WalletConnectorBase {
|
|
9
|
-
|
|
9
|
+
getPublicClient() {
|
|
10
10
|
var _a, _b, _c;
|
|
11
11
|
return __awaiter(this, void 0, void 0, function* () {
|
|
12
12
|
const networkId = (_a = (yield this.getNetwork())) !== null && _a !== void 0 ? _a : 1;
|
|
@@ -56,7 +56,7 @@ class EthWalletConnector extends WalletConnectorBase {
|
|
|
56
56
|
}
|
|
57
57
|
getNetwork() {
|
|
58
58
|
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
-
const provider = this.
|
|
59
|
+
const provider = this.getWalletClient();
|
|
60
60
|
if (!this.supportsNetworkSwitching || !provider) {
|
|
61
61
|
return Promise.resolve(undefined);
|
|
62
62
|
}
|
|
@@ -69,7 +69,7 @@ class EthWalletConnector extends WalletConnectorBase {
|
|
|
69
69
|
return __awaiter(this, void 0, void 0, function* () {
|
|
70
70
|
const [[address], rpcProvider] = yield Promise.all([
|
|
71
71
|
this.getConnectedAccounts(),
|
|
72
|
-
this.
|
|
72
|
+
this.getPublicClient(),
|
|
73
73
|
]);
|
|
74
74
|
if (!address || !rpcProvider) {
|
|
75
75
|
return;
|
|
@@ -91,7 +91,7 @@ class EthWalletConnector extends WalletConnectorBase {
|
|
|
91
91
|
}
|
|
92
92
|
getSigner() {
|
|
93
93
|
return __awaiter(this, void 0, void 0, function* () {
|
|
94
|
-
return this.
|
|
94
|
+
return this.getWalletClient();
|
|
95
95
|
});
|
|
96
96
|
}
|
|
97
97
|
getBalance() {
|
|
@@ -101,7 +101,7 @@ class EthWalletConnector extends WalletConnectorBase {
|
|
|
101
101
|
const [address] = yield this.getConnectedAccounts();
|
|
102
102
|
if (!address)
|
|
103
103
|
return;
|
|
104
|
-
const client = yield this.
|
|
104
|
+
const client = yield this.getPublicClient();
|
|
105
105
|
const result = yield (client === null || client === void 0 ? void 0 : client.getBalance({
|
|
106
106
|
address: address,
|
|
107
107
|
}));
|
|
@@ -126,7 +126,7 @@ class EthWalletConnector extends WalletConnectorBase {
|
|
|
126
126
|
if (!this.supportsNetworkSwitching()) {
|
|
127
127
|
throw new DynamicError('Network switching is not supported');
|
|
128
128
|
}
|
|
129
|
-
const provider = this.
|
|
129
|
+
const provider = this.getWalletClient();
|
|
130
130
|
if (!provider) {
|
|
131
131
|
throw new DynamicError('Provider not found');
|
|
132
132
|
}
|
|
@@ -135,7 +135,7 @@ class EthWalletConnector extends WalletConnectorBase {
|
|
|
135
135
|
}
|
|
136
136
|
getConnectedAccounts() {
|
|
137
137
|
return __awaiter(this, void 0, void 0, function* () {
|
|
138
|
-
const provider = this.
|
|
138
|
+
const provider = this.getWalletClient();
|
|
139
139
|
if (!provider)
|
|
140
140
|
return [];
|
|
141
141
|
return retryableFn(provider.getAddresses, {
|
|
@@ -40,13 +40,13 @@ class InjectedWalletBase extends EthWalletConnector.EthWalletConnector {
|
|
|
40
40
|
return this;
|
|
41
41
|
}
|
|
42
42
|
setupEventListeners() {
|
|
43
|
-
const provider = this.
|
|
43
|
+
const provider = this.getWalletClient();
|
|
44
44
|
if (!provider)
|
|
45
45
|
return;
|
|
46
46
|
const { tearDownEventListeners } = this.getEthProviderHelper()._setupEventListeners(this, viem.createPublicClient({ transport: viem.custom(provider) }));
|
|
47
47
|
this.teardownEventListeners = tearDownEventListeners;
|
|
48
48
|
}
|
|
49
|
-
|
|
49
|
+
getWalletClient() {
|
|
50
50
|
return this.getEthProviderHelper().findWalletClient();
|
|
51
51
|
}
|
|
52
52
|
isInstalledOnBrowser() {
|
|
@@ -14,7 +14,7 @@ declare abstract class InjectedWalletBase extends EthWalletConnector {
|
|
|
14
14
|
getEthProviderHelper(): EthProviderHelper;
|
|
15
15
|
getMobileOrInstalledWallet(): InjectedWalletBase;
|
|
16
16
|
setupEventListeners(): void;
|
|
17
|
-
|
|
17
|
+
getWalletClient(): {
|
|
18
18
|
account: import("viem").Account | undefined;
|
|
19
19
|
batch?: {
|
|
20
20
|
multicall?: boolean | {
|
|
@@ -38,13 +38,13 @@ class InjectedWalletBase extends EthWalletConnector {
|
|
|
38
38
|
return this;
|
|
39
39
|
}
|
|
40
40
|
setupEventListeners() {
|
|
41
|
-
const provider = this.
|
|
41
|
+
const provider = this.getWalletClient();
|
|
42
42
|
if (!provider)
|
|
43
43
|
return;
|
|
44
44
|
const { tearDownEventListeners } = this.getEthProviderHelper()._setupEventListeners(this, createPublicClient({ transport: custom(provider) }));
|
|
45
45
|
this.teardownEventListeners = tearDownEventListeners;
|
|
46
46
|
}
|
|
47
|
-
|
|
47
|
+
getWalletClient() {
|
|
48
48
|
return this.getEthProviderHelper().findWalletClient();
|
|
49
49
|
}
|
|
50
50
|
isInstalledOnBrowser() {
|
|
@@ -38,7 +38,7 @@ class LegacyInjectedWalletBase extends EthWalletConnector.EthWalletConnector {
|
|
|
38
38
|
const { tearDownEventListeners } = legacyEthProviderHelper.LegacyEthProviderHelper._setupEventListeners(this.name, this, publicClient);
|
|
39
39
|
this.teardownEventListeners = tearDownEventListeners;
|
|
40
40
|
}
|
|
41
|
-
|
|
41
|
+
getWalletClient() {
|
|
42
42
|
return legacyEthProviderHelper.LegacyEthProviderHelper.findWalletClient(this.name);
|
|
43
43
|
}
|
|
44
44
|
isInstalledOnBrowser() {
|
|
@@ -9,7 +9,7 @@ declare abstract class LegacyInjectedWalletBase extends EthWalletConnector {
|
|
|
9
9
|
walletConnectorFallback: boolean;
|
|
10
10
|
getMobileOrInstalledWallet(): LegacyInjectedWalletBase;
|
|
11
11
|
setupEventListeners(): void;
|
|
12
|
-
|
|
12
|
+
getWalletClient(): WalletClient | undefined;
|
|
13
13
|
isInstalledOnBrowser(): boolean;
|
|
14
14
|
connect(): Promise<void>;
|
|
15
15
|
fetchPublicAddress(): Promise<string | undefined>;
|
|
@@ -36,7 +36,7 @@ class LegacyInjectedWalletBase extends EthWalletConnector {
|
|
|
36
36
|
const { tearDownEventListeners } = LegacyEthProviderHelper._setupEventListeners(this.name, this, publicClient);
|
|
37
37
|
this.teardownEventListeners = tearDownEventListeners;
|
|
38
38
|
}
|
|
39
|
-
|
|
39
|
+
getWalletClient() {
|
|
40
40
|
return LegacyEthProviderHelper.findWalletClient(this.name);
|
|
41
41
|
}
|
|
42
42
|
isInstalledOnBrowser() {
|
|
@@ -54,7 +54,7 @@ class WalletConnect extends EthWalletConnector.EthWalletConnector {
|
|
|
54
54
|
teardownEventListeners() {
|
|
55
55
|
client.teardownWalletConnectEventListeners(this.getClient());
|
|
56
56
|
}
|
|
57
|
-
|
|
57
|
+
getWalletClient() {
|
|
58
58
|
const client = this.getClient();
|
|
59
59
|
return client
|
|
60
60
|
? viem.createWalletClient({
|
|
@@ -91,8 +91,8 @@ class WalletConnect extends EthWalletConnector.EthWalletConnector {
|
|
|
91
91
|
signMessage(messageToSign) {
|
|
92
92
|
return _tslib.__awaiter(this, void 0, void 0, function* () {
|
|
93
93
|
return client.signWalletConnectPersonalMessage(messageToSign, walletBook.getWalletBookWallet(this.walletBook, this.key), this.getClient(), this.deepLinkPreference,
|
|
94
|
-
// don't call
|
|
95
|
-
() => _tslib.__awaiter(this, void 0, void 0, function* () { return this.
|
|
94
|
+
// don't call getPublicClient until we really need to
|
|
95
|
+
() => _tslib.__awaiter(this, void 0, void 0, function* () { return this.getPublicClient(); }));
|
|
96
96
|
});
|
|
97
97
|
}
|
|
98
98
|
endSession() {
|
|
@@ -37,7 +37,7 @@ export declare class WalletConnect extends EthWalletConnector {
|
|
|
37
37
|
supportsNetworkSwitching(): boolean;
|
|
38
38
|
setupEventListeners(): void;
|
|
39
39
|
teardownEventListeners(): void;
|
|
40
|
-
|
|
40
|
+
getWalletClient(): WalletClient | undefined;
|
|
41
41
|
fetchPublicAddress(opts?: FetchPublicAddressOpts): Promise<string | undefined>;
|
|
42
42
|
getDeepLink(): string | undefined;
|
|
43
43
|
signMessage(messageToSign: string): Promise<string | undefined>;
|
|
@@ -46,7 +46,7 @@ class WalletConnect extends EthWalletConnector {
|
|
|
46
46
|
teardownEventListeners() {
|
|
47
47
|
teardownWalletConnectEventListeners(this.getClient());
|
|
48
48
|
}
|
|
49
|
-
|
|
49
|
+
getWalletClient() {
|
|
50
50
|
const client = this.getClient();
|
|
51
51
|
return client
|
|
52
52
|
? createWalletClient({
|
|
@@ -83,8 +83,8 @@ class WalletConnect extends EthWalletConnector {
|
|
|
83
83
|
signMessage(messageToSign) {
|
|
84
84
|
return __awaiter(this, void 0, void 0, function* () {
|
|
85
85
|
return signWalletConnectPersonalMessage(messageToSign, getWalletBookWallet(this.walletBook, this.key), this.getClient(), this.deepLinkPreference,
|
|
86
|
-
// don't call
|
|
87
|
-
() => __awaiter(this, void 0, void 0, function* () { return this.
|
|
86
|
+
// don't call getPublicClient until we really need to
|
|
87
|
+
() => __awaiter(this, void 0, void 0, function* () { return this.getPublicClient(); }));
|
|
88
88
|
});
|
|
89
89
|
}
|
|
90
90
|
endSession() {
|
|
@@ -208,7 +208,7 @@ class WalletConnectV2 extends EthWalletConnector.EthWalletConnector {
|
|
|
208
208
|
WalletConnectV2.provider.client.removeAllListeners('session_event');
|
|
209
209
|
WalletConnectV2.provider.client.removeAllListeners('session_delete');
|
|
210
210
|
}
|
|
211
|
-
|
|
211
|
+
getWalletClient() {
|
|
212
212
|
if (!WalletConnectV2.provider) {
|
|
213
213
|
return;
|
|
214
214
|
}
|
|
@@ -315,7 +315,7 @@ class WalletConnectV2 extends EthWalletConnector.EthWalletConnector {
|
|
|
315
315
|
if (!this.session) {
|
|
316
316
|
throw new utils.DynamicError('no session');
|
|
317
317
|
}
|
|
318
|
-
const web3Provider = this.
|
|
318
|
+
const web3Provider = this.getWalletClient();
|
|
319
319
|
if (!web3Provider) {
|
|
320
320
|
throw new utils.DynamicError('No WalletConnect provider found to handle signing');
|
|
321
321
|
}
|
|
@@ -38,7 +38,7 @@ export declare class WalletConnectV2 extends EthWalletConnector {
|
|
|
38
38
|
supportsNetworkSwitching(): boolean;
|
|
39
39
|
setupEventListeners(): void;
|
|
40
40
|
teardownEventListeners(): void;
|
|
41
|
-
|
|
41
|
+
getWalletClient(): {
|
|
42
42
|
account: undefined;
|
|
43
43
|
batch?: {
|
|
44
44
|
multicall?: boolean | {
|
|
@@ -199,7 +199,7 @@ class WalletConnectV2 extends EthWalletConnector {
|
|
|
199
199
|
WalletConnectV2.provider.client.removeAllListeners('session_event');
|
|
200
200
|
WalletConnectV2.provider.client.removeAllListeners('session_delete');
|
|
201
201
|
}
|
|
202
|
-
|
|
202
|
+
getWalletClient() {
|
|
203
203
|
if (!WalletConnectV2.provider) {
|
|
204
204
|
return;
|
|
205
205
|
}
|
|
@@ -306,7 +306,7 @@ class WalletConnectV2 extends EthWalletConnector {
|
|
|
306
306
|
if (!this.session) {
|
|
307
307
|
throw new DynamicError('no session');
|
|
308
308
|
}
|
|
309
|
-
const web3Provider = this.
|
|
309
|
+
const web3Provider = this.getWalletClient();
|
|
310
310
|
if (!web3Provider) {
|
|
311
311
|
throw new DynamicError('No WalletConnect provider found to handle signing');
|
|
312
312
|
}
|