@dynamic-labs/ethereum 4.9.1-preview.0 → 4.9.2-preview.0
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 +13 -2
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +10 -9
- package/src/EthereumWalletConnectors.cjs +1 -0
- package/src/EthereumWalletConnectors.js +1 -0
- package/src/injected/InjectedWalletBase.cjs +6 -0
- package/src/injected/InjectedWalletBase.js +6 -0
- package/src/walletConnect/WalletConnectConnector/WalletConnectConnector.cjs +10 -8
- package/src/walletConnect/WalletConnectConnector/WalletConnectConnector.js +11 -9
package/CHANGELOG.md
CHANGED
|
@@ -1,11 +1,22 @@
|
|
|
1
1
|
|
|
2
|
-
### [4.9.
|
|
2
|
+
### [4.9.2-preview.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.9.1...v4.9.2-preview.0) (2025-03-11)
|
|
3
|
+
|
|
4
|
+
### [4.9.1](https://github.com/dynamic-labs/dynamic-auth/compare/v4.9.0...v4.9.1) (2025-03-11)
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* waas svm connector ([#8191](https://github.com/dynamic-labs/dynamic-auth/issues/8191)) ([049a360](https://github.com/dynamic-labs/dynamic-auth/commit/049a360642d6aa2122676c7a29d36a7baef9e49b))
|
|
3
10
|
|
|
4
11
|
|
|
5
12
|
### Bug Fixes
|
|
6
13
|
|
|
7
14
|
* 7702 on sepolia ([#8242](https://github.com/dynamic-labs/dynamic-auth/issues/8242)) ([8e1c63f](https://github.com/dynamic-labs/dynamic-auth/commit/8e1c63f240024f419e12787636dd2ebaacf8da94))
|
|
8
|
-
*
|
|
15
|
+
* close auth flow when promptExport enabled but createWallet is false ([#8239](https://github.com/dynamic-labs/dynamic-auth/issues/8239)) ([f82429f](https://github.com/dynamic-labs/dynamic-auth/commit/f82429f85e729a76c2516f0db112033fdd2a36d5))
|
|
16
|
+
* fix solana genesis hashes bug that was causing a breaking change ([#8250](https://github.com/dynamic-labs/dynamic-auth/issues/8250)) ([731c93b](https://github.com/dynamic-labs/dynamic-auth/commit/731c93bea4b8b95caa8cc665f2ecb53f9948ef8e))
|
|
17
|
+
* move setup-inside-iframe utility method to the utils package ([#8256](https://github.com/dynamic-labs/dynamic-auth/issues/8256)) ([d34eb6d](https://github.com/dynamic-labs/dynamic-auth/commit/d34eb6d211baecb496b84fefaee8179a5fb1b52a))
|
|
18
|
+
* **QNTM-2952:** support headless social sign in ([#8226](https://github.com/dynamic-labs/dynamic-auth/issues/8226)) ([0c3082d](https://github.com/dynamic-labs/dynamic-auth/commit/0c3082d593c633519c9eed20be15186f18f65c09))
|
|
19
|
+
* sign message with trust wallet on solana ([#8249](https://github.com/dynamic-labs/dynamic-auth/issues/8249)) ([99a7917](https://github.com/dynamic-labs/dynamic-auth/commit/99a791796f7d2c83b9f18e45367aa9689c67869d))
|
|
9
20
|
|
|
10
21
|
## [4.9.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.8.6...v4.9.0) (2025-03-07)
|
|
11
22
|
|
package/package.cjs
CHANGED
package/package.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/ethereum",
|
|
3
|
-
"version": "4.9.
|
|
3
|
+
"version": "4.9.2-preview.0",
|
|
4
4
|
"description": "A React SDK for implementing wallet web3 authentication and authorization to your website.",
|
|
5
5
|
"author": "Dynamic Labs, Inc.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -23,14 +23,15 @@
|
|
|
23
23
|
"eventemitter3": "5.0.1",
|
|
24
24
|
"buffer": "6.0.3",
|
|
25
25
|
"@metamask/sdk": "0.32.0",
|
|
26
|
-
"@dynamic-labs/assert-package-version": "4.9.
|
|
27
|
-
"@dynamic-labs/embedded-wallet-evm": "4.9.
|
|
28
|
-
"@dynamic-labs/ethereum-core": "4.9.
|
|
29
|
-
"@dynamic-labs/logger": "4.9.
|
|
30
|
-
"@dynamic-labs/
|
|
31
|
-
"@dynamic-labs/
|
|
32
|
-
"@dynamic-labs/
|
|
33
|
-
"@dynamic-labs/wallet-
|
|
26
|
+
"@dynamic-labs/assert-package-version": "4.9.2-preview.0",
|
|
27
|
+
"@dynamic-labs/embedded-wallet-evm": "4.9.2-preview.0",
|
|
28
|
+
"@dynamic-labs/ethereum-core": "4.9.2-preview.0",
|
|
29
|
+
"@dynamic-labs/logger": "4.9.2-preview.0",
|
|
30
|
+
"@dynamic-labs/rpc-providers": "4.9.2-preview.0",
|
|
31
|
+
"@dynamic-labs/types": "4.9.2-preview.0",
|
|
32
|
+
"@dynamic-labs/utils": "4.9.2-preview.0",
|
|
33
|
+
"@dynamic-labs/wallet-book": "4.9.2-preview.0",
|
|
34
|
+
"@dynamic-labs/wallet-connector-core": "4.9.2-preview.0"
|
|
34
35
|
},
|
|
35
36
|
"peerDependencies": {
|
|
36
37
|
"viem": "^2.21.55"
|
|
@@ -14,6 +14,7 @@ require('viem/accounts');
|
|
|
14
14
|
require('./walletConnect/WalletConnectProvider/WalletConnectProvider.cjs');
|
|
15
15
|
var fetchWalletConnectWallets = require('./walletConnect/utils/fetchWalletConnectWallets.cjs');
|
|
16
16
|
var getWalletConnectConnector = require('./walletConnect/utils/getWalletConnectConnector.cjs');
|
|
17
|
+
require('./utils/logger.cjs');
|
|
17
18
|
var FallbackEvmConnector = require('./injected/FallbackEvmConnector.cjs');
|
|
18
19
|
var fetchInjectedWalletConnectors = require('./injected/fetchInjectedWalletConnectors.cjs');
|
|
19
20
|
var coinbase = require('./coinbase/coinbase.cjs');
|
|
@@ -10,6 +10,7 @@ import 'viem/accounts';
|
|
|
10
10
|
import './walletConnect/WalletConnectProvider/WalletConnectProvider.js';
|
|
11
11
|
import { fetchWalletConnectWallets } from './walletConnect/utils/fetchWalletConnectWallets.js';
|
|
12
12
|
import { getWalletConnectConnector } from './walletConnect/utils/getWalletConnectConnector.js';
|
|
13
|
+
import './utils/logger.js';
|
|
13
14
|
import { FallbackEvmConnector } from './injected/FallbackEvmConnector.js';
|
|
14
15
|
import { injectedWalletOverrides, fetchInjectedWalletConnector } from './injected/fetchInjectedWalletConnectors.js';
|
|
15
16
|
import { Coinbase } from './coinbase/coinbase.js';
|
|
@@ -8,6 +8,7 @@ var utils = require('@dynamic-labs/utils');
|
|
|
8
8
|
var ethereumCore = require('@dynamic-labs/ethereum-core');
|
|
9
9
|
var ethProviderHelper = require('../ethProviderHelper.cjs');
|
|
10
10
|
var WalletConnectConnector = require('../walletConnect/WalletConnectConnector/WalletConnectConnector.cjs');
|
|
11
|
+
var logger = require('../utils/logger.cjs');
|
|
11
12
|
|
|
12
13
|
class InjectedWalletBase extends ethereumCore.EthereumWalletConnector {
|
|
13
14
|
constructor() {
|
|
@@ -39,6 +40,11 @@ class InjectedWalletBase extends ethereumCore.EthereumWalletConnector {
|
|
|
39
40
|
if (!this.walletConnectorFallback) {
|
|
40
41
|
return this;
|
|
41
42
|
}
|
|
43
|
+
// if there is no WC project ID, we should not use WC
|
|
44
|
+
if (!this.constructorProps.projectId) {
|
|
45
|
+
logger.logger.debug('[InjectedWalletBase] getMobileOrInstalledWallet - No WC project ID');
|
|
46
|
+
return this;
|
|
47
|
+
}
|
|
42
48
|
return new WalletConnectConnector.WalletConnectConnector(Object.assign(Object.assign({}, this.constructorProps), { walletName: this.name }));
|
|
43
49
|
}
|
|
44
50
|
findProvider() {
|
|
@@ -4,6 +4,7 @@ import { isMobile } from '@dynamic-labs/utils';
|
|
|
4
4
|
import { EthereumWalletConnector } from '@dynamic-labs/ethereum-core';
|
|
5
5
|
import { EthProviderHelper } from '../ethProviderHelper.js';
|
|
6
6
|
import { WalletConnectConnector } from '../walletConnect/WalletConnectConnector/WalletConnectConnector.js';
|
|
7
|
+
import { logger } from '../utils/logger.js';
|
|
7
8
|
|
|
8
9
|
class InjectedWalletBase extends EthereumWalletConnector {
|
|
9
10
|
constructor() {
|
|
@@ -35,6 +36,11 @@ class InjectedWalletBase extends EthereumWalletConnector {
|
|
|
35
36
|
if (!this.walletConnectorFallback) {
|
|
36
37
|
return this;
|
|
37
38
|
}
|
|
39
|
+
// if there is no WC project ID, we should not use WC
|
|
40
|
+
if (!this.constructorProps.projectId) {
|
|
41
|
+
logger.debug('[InjectedWalletBase] getMobileOrInstalledWallet - No WC project ID');
|
|
42
|
+
return this;
|
|
43
|
+
}
|
|
38
44
|
return new WalletConnectConnector(Object.assign(Object.assign({}, this.constructorProps), { walletName: this.name }));
|
|
39
45
|
}
|
|
40
46
|
findProvider() {
|
|
@@ -20,7 +20,7 @@ class WalletConnectConnector extends ethereumCore.EthereumWalletConnector {
|
|
|
20
20
|
this.isWalletConnect = true;
|
|
21
21
|
this.name = opts.walletName;
|
|
22
22
|
this.deepLinkPreference = opts.deepLinkPreference || 'native';
|
|
23
|
-
const storedChainId =
|
|
23
|
+
const storedChainId = utils.StorageService.getItem(WC_CURRENT_CHAIN_KEY);
|
|
24
24
|
if (storedChainId) {
|
|
25
25
|
this.currentChainId = utils.parseIntSafe(storedChainId);
|
|
26
26
|
}
|
|
@@ -47,10 +47,12 @@ class WalletConnectConnector extends ethereumCore.EthereumWalletConnector {
|
|
|
47
47
|
}
|
|
48
48
|
walletConnectorCore.logger.debug('[WalletConnect] init');
|
|
49
49
|
this.walletConnectorEventsEmitter.emit('connectorInitStarted', 'walletconnect');
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
50
|
+
try {
|
|
51
|
+
yield WalletConnectProvider.WalletConnectProvider.init();
|
|
52
|
+
}
|
|
53
|
+
catch (error) {
|
|
54
|
+
walletConnectorCore.logger.error('[WalletConnect] init - error', error);
|
|
55
|
+
throw new utils.DynamicError('WalletConnectProvider failed to initialize');
|
|
54
56
|
}
|
|
55
57
|
this.setupWCEventListeners();
|
|
56
58
|
this.walletConnectorEventsEmitter.emit('connectorInitCompleted', 'walletconnect');
|
|
@@ -168,7 +170,7 @@ class WalletConnectConnector extends ethereumCore.EthereumWalletConnector {
|
|
|
168
170
|
return accounts.toAccount(connectedAccount);
|
|
169
171
|
}
|
|
170
172
|
get currentChainId() {
|
|
171
|
-
const lsCurrentChain =
|
|
173
|
+
const lsCurrentChain = utils.StorageService.getItem(WC_CURRENT_CHAIN_KEY);
|
|
172
174
|
try {
|
|
173
175
|
return lsCurrentChain ? utils.parseIntSafe(lsCurrentChain) : undefined;
|
|
174
176
|
}
|
|
@@ -179,10 +181,10 @@ class WalletConnectConnector extends ethereumCore.EthereumWalletConnector {
|
|
|
179
181
|
}
|
|
180
182
|
set currentChainId(value) {
|
|
181
183
|
if (value) {
|
|
182
|
-
|
|
184
|
+
utils.StorageService.setItem(WC_CURRENT_CHAIN_KEY, value.toString());
|
|
183
185
|
}
|
|
184
186
|
else {
|
|
185
|
-
|
|
187
|
+
utils.StorageService.removeItem(WC_CURRENT_CHAIN_KEY);
|
|
186
188
|
}
|
|
187
189
|
}
|
|
188
190
|
getActiveChain() {
|
|
@@ -3,7 +3,7 @@ import { __awaiter } from '../../../_virtual/_tslib.js';
|
|
|
3
3
|
import { createWalletClient, custom } from 'viem';
|
|
4
4
|
import { toAccount } from 'viem/accounts';
|
|
5
5
|
import { EthereumWalletConnector, chainsMap } from '@dynamic-labs/ethereum-core';
|
|
6
|
-
import { parseIntSafe, DynamicError, isMobile, PlatformService } from '@dynamic-labs/utils';
|
|
6
|
+
import { StorageService, parseIntSafe, DynamicError, isMobile, PlatformService } from '@dynamic-labs/utils';
|
|
7
7
|
import { logger, getDeepLink } from '@dynamic-labs/wallet-connector-core';
|
|
8
8
|
import { normalizeRpcError } from '../../utils/normalizeRpcError/normalizeRpcError.js';
|
|
9
9
|
import { WalletConnectProvider } from '../WalletConnectProvider/WalletConnectProvider.js';
|
|
@@ -16,7 +16,7 @@ class WalletConnectConnector extends EthereumWalletConnector {
|
|
|
16
16
|
this.isWalletConnect = true;
|
|
17
17
|
this.name = opts.walletName;
|
|
18
18
|
this.deepLinkPreference = opts.deepLinkPreference || 'native';
|
|
19
|
-
const storedChainId =
|
|
19
|
+
const storedChainId = StorageService.getItem(WC_CURRENT_CHAIN_KEY);
|
|
20
20
|
if (storedChainId) {
|
|
21
21
|
this.currentChainId = parseIntSafe(storedChainId);
|
|
22
22
|
}
|
|
@@ -43,10 +43,12 @@ class WalletConnectConnector extends EthereumWalletConnector {
|
|
|
43
43
|
}
|
|
44
44
|
logger.debug('[WalletConnect] init');
|
|
45
45
|
this.walletConnectorEventsEmitter.emit('connectorInitStarted', 'walletconnect');
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
try {
|
|
47
|
+
yield WalletConnectProvider.init();
|
|
48
|
+
}
|
|
49
|
+
catch (error) {
|
|
50
|
+
logger.error('[WalletConnect] init - error', error);
|
|
51
|
+
throw new DynamicError('WalletConnectProvider failed to initialize');
|
|
50
52
|
}
|
|
51
53
|
this.setupWCEventListeners();
|
|
52
54
|
this.walletConnectorEventsEmitter.emit('connectorInitCompleted', 'walletconnect');
|
|
@@ -164,7 +166,7 @@ class WalletConnectConnector extends EthereumWalletConnector {
|
|
|
164
166
|
return toAccount(connectedAccount);
|
|
165
167
|
}
|
|
166
168
|
get currentChainId() {
|
|
167
|
-
const lsCurrentChain =
|
|
169
|
+
const lsCurrentChain = StorageService.getItem(WC_CURRENT_CHAIN_KEY);
|
|
168
170
|
try {
|
|
169
171
|
return lsCurrentChain ? parseIntSafe(lsCurrentChain) : undefined;
|
|
170
172
|
}
|
|
@@ -175,10 +177,10 @@ class WalletConnectConnector extends EthereumWalletConnector {
|
|
|
175
177
|
}
|
|
176
178
|
set currentChainId(value) {
|
|
177
179
|
if (value) {
|
|
178
|
-
|
|
180
|
+
StorageService.setItem(WC_CURRENT_CHAIN_KEY, value.toString());
|
|
179
181
|
}
|
|
180
182
|
else {
|
|
181
|
-
|
|
183
|
+
StorageService.removeItem(WC_CURRENT_CHAIN_KEY);
|
|
182
184
|
}
|
|
183
185
|
}
|
|
184
186
|
getActiveChain() {
|