@dynamic-labs/ethereum 5.10.0 → 5.12.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 CHANGED
@@ -1,4 +1,22 @@
1
1
 
2
+ ## [5.12.0](https://github.com/dynamic-labs/dynamic-auth/compare/v5.11.0...v5.12.0) (2026-10-16)
3
+
4
+
5
+ ### Features
6
+
7
+ * **embedded-wallet-solana:** add getSolanaSponsorAddress ([#12517](https://github.com/dynamic-labs/dynamic-auth/issues/12517)) ([b95c550](https://github.com/dynamic-labs/dynamic-auth/commit/b95c550e3dab783b7ff0b019051a17b22ea44f97))
8
+ * **embedded-wallet:** show chain and wallet in private key export modal ([#12507](https://github.com/dynamic-labs/dynamic-auth/issues/12507)) ([4bfb6d6](https://github.com/dynamic-labs/dynamic-auth/commit/4bfb6d6168aac3f800792fde933e0597f288058f))
9
+ * **sdk-react-core:** send OTP purpose from step-up flows ([#12511](https://github.com/dynamic-labs/dynamic-auth/issues/12511)) ([0d2d8a3](https://github.com/dynamic-labs/dynamic-auth/commit/0d2d8a31058b3e75c71af7a34f459e2a3ddf383b)), closes [#12898](https://github.com/dynamic-labs/dynamic-auth/issues/12898) [#816](https://github.com/dynamic-labs/dynamic-auth/issues/816) [#203](https://github.com/dynamic-labs/dynamic-auth/issues/203) [#12512](https://github.com/dynamic-labs/dynamic-auth/issues/12512)
10
+ * **wallet-connect:** back WalletConnect storage with native secure storage on mobile ([#12515](https://github.com/dynamic-labs/dynamic-auth/issues/12515)) ([7b57903](https://github.com/dynamic-labs/dynamic-auth/commit/7b5790325fce707d73d591483a0130b960ed055c))
11
+
12
+ ## [5.11.0](https://github.com/dynamic-labs/dynamic-auth/compare/v5.10.0...v5.11.0) (2026-10-14)
13
+
14
+
15
+ ### Bug Fixes
16
+
17
+ * **react-native:** fall back to a TEE-backed key when StrongBox key generation fails on Android ([#12484](https://github.com/dynamic-labs/dynamic-auth/issues/12484)) ([6884ef1](https://github.com/dynamic-labs/dynamic-auth/commit/6884ef1665e4b18d1b8fdb54ee7cd06861b47fc9))
18
+ * support WaaS password overrides in WebView ([#12509](https://github.com/dynamic-labs/dynamic-auth/issues/12509)) ([fc67fcc](https://github.com/dynamic-labs/dynamic-auth/commit/fc67fccb99be7c0cc8df81a2513ccd3a04db9a61))
19
+
2
20
  ## [5.10.0](https://github.com/dynamic-labs/dynamic-auth/compare/v5.9.6...v5.10.0) (2026-10-09)
3
21
 
4
22
 
package/package.cjs CHANGED
@@ -3,6 +3,6 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var version = "5.10.0";
6
+ var version = "5.12.0";
7
7
 
8
8
  exports.version = version;
package/package.js CHANGED
@@ -1,4 +1,4 @@
1
1
  'use client'
2
- var version = "5.10.0";
2
+ var version = "5.12.0";
3
3
 
4
4
  export { version };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/ethereum",
3
- "version": "5.10.0",
3
+ "version": "5.12.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",
@@ -19,20 +19,21 @@
19
19
  "homepage": "https://www.dynamic.xyz/",
20
20
  "dependencies": {
21
21
  "@coinbase/wallet-sdk": "4.3.7",
22
+ "@dynamic-labs/wallet-connect": "5.12.0",
22
23
  "@dynamic-labs-connectors/base-account-evm": "4.7.1",
23
24
  "@dynamic-labs-connectors/metamask-evm": "4.7.1",
24
25
  "@walletconnect/ethereum-provider": "2.23.2",
25
26
  "eventemitter3": "5.0.1",
26
27
  "buffer": "6.0.3",
27
- "@dynamic-labs/assert-package-version": "5.10.0",
28
- "@dynamic-labs/ethereum-core": "5.10.0",
29
- "@dynamic-labs/logger": "5.10.0",
30
- "@dynamic-labs/rpc-providers": "5.10.0",
31
- "@dynamic-labs/types": "5.10.0",
32
- "@dynamic-labs/utils": "5.10.0",
33
- "@dynamic-labs/waas-evm": "5.10.0",
34
- "@dynamic-labs/wallet-book": "5.10.0",
35
- "@dynamic-labs/wallet-connector-core": "5.10.0"
28
+ "@dynamic-labs/assert-package-version": "5.12.0",
29
+ "@dynamic-labs/ethereum-core": "5.12.0",
30
+ "@dynamic-labs/logger": "5.12.0",
31
+ "@dynamic-labs/rpc-providers": "5.12.0",
32
+ "@dynamic-labs/types": "5.12.0",
33
+ "@dynamic-labs/utils": "5.12.0",
34
+ "@dynamic-labs/waas-evm": "5.12.0",
35
+ "@dynamic-labs/wallet-book": "5.12.0",
36
+ "@dynamic-labs/wallet-connector-core": "5.12.0"
36
37
  },
37
38
  "peerDependencies": {
38
39
  "viem": "^2.45.3"
@@ -7,6 +7,7 @@ var _tslib = require('../../../_virtual/_tslib.cjs');
7
7
  var EthereumProvider = require('@walletconnect/ethereum-provider');
8
8
  var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
9
9
  var utils = require('@dynamic-labs/utils');
10
+ var walletConnect = require('@dynamic-labs/wallet-connect');
10
11
  var logger = require('../../utils/logger.cjs');
11
12
 
12
13
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -78,7 +79,13 @@ WalletConnectProvider.init = (...args_1) => _tslib.__awaiter(void 0, [...args_1]
78
79
  _a.redirectUniversal) {
79
80
  metadata.redirect = redirectMetadata;
80
81
  }
81
- _a.providerInitPromise = EthereumProvider__default["default"].init({
82
+ // Capture mutable statics before the async store repair so a concurrent
83
+ // configuration change can't mix old and new settings into one init.
84
+ const { projectId } = _a;
85
+ const { evmNetworkRpcMap } = _a;
86
+ // Repair WalletConnect's IndexedDB object store before the provider opens
87
+ // it, matching the SignClient singleton path.
88
+ _a.providerInitPromise = walletConnect.ensureWalletConnectStore().then(() => EthereumProvider__default["default"].init({
82
89
  customStoragePrefix: storePrefix,
83
90
  disableProviderPing: true,
84
91
  metadata,
@@ -95,10 +102,14 @@ WalletConnectProvider.init = (...args_1) => _tslib.__awaiter(void 0, [...args_1]
95
102
  'wallet_switchEthereumChain',
96
103
  'wallet_addEthereumChain',
97
104
  ],
98
- projectId: _a.projectId,
99
- rpcMap: _a.evmNetworkRpcMap,
105
+ projectId,
106
+ rpcMap: evmNetworkRpcMap,
100
107
  showQrModal: false,
101
- });
108
+ // WalletConnect storage backed by localStorage, so a closed
109
+ // IndexedDB connection can never break it (falls back to resilient
110
+ // IDB where localStorage is unavailable).
111
+ storage: walletConnect.createWalletConnectStorage(),
112
+ }));
102
113
  _a.provider =
103
114
  yield _a.providerInitPromise;
104
115
  _a.isInitialized = true;
@@ -3,6 +3,7 @@ import { __awaiter } from '../../../_virtual/_tslib.js';
3
3
  import EthereumProvider from '@walletconnect/ethereum-provider';
4
4
  import { performPlatformSpecificConnectionMethod } from '@dynamic-labs/wallet-connector-core';
5
5
  import { parseIntSafe, DynamicError, ErrorCode } from '@dynamic-labs/utils';
6
+ import { ensureWalletConnectStore, createWalletConnectStorage } from '@dynamic-labs/wallet-connect';
6
7
  import { logger } from '../../utils/logger.js';
7
8
 
8
9
  var _a;
@@ -70,7 +71,13 @@ WalletConnectProvider.init = (...args_1) => __awaiter(void 0, [...args_1], void
70
71
  _a.redirectUniversal) {
71
72
  metadata.redirect = redirectMetadata;
72
73
  }
73
- _a.providerInitPromise = EthereumProvider.init({
74
+ // Capture mutable statics before the async store repair so a concurrent
75
+ // configuration change can't mix old and new settings into one init.
76
+ const { projectId } = _a;
77
+ const { evmNetworkRpcMap } = _a;
78
+ // Repair WalletConnect's IndexedDB object store before the provider opens
79
+ // it, matching the SignClient singleton path.
80
+ _a.providerInitPromise = ensureWalletConnectStore().then(() => EthereumProvider.init({
74
81
  customStoragePrefix: storePrefix,
75
82
  disableProviderPing: true,
76
83
  metadata,
@@ -87,10 +94,14 @@ WalletConnectProvider.init = (...args_1) => __awaiter(void 0, [...args_1], void
87
94
  'wallet_switchEthereumChain',
88
95
  'wallet_addEthereumChain',
89
96
  ],
90
- projectId: _a.projectId,
91
- rpcMap: _a.evmNetworkRpcMap,
97
+ projectId,
98
+ rpcMap: evmNetworkRpcMap,
92
99
  showQrModal: false,
93
- });
100
+ // WalletConnect storage backed by localStorage, so a closed
101
+ // IndexedDB connection can never break it (falls back to resilient
102
+ // IDB where localStorage is unavailable).
103
+ storage: createWalletConnectStorage(),
104
+ }));
94
105
  _a.provider =
95
106
  yield _a.providerInitPromise;
96
107
  _a.isInitialized = true;