@dynamic-labs/global-wallet-client 5.0.0 → 5.2.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,32 @@
1
1
 
2
+ ## [5.2.0](https://github.com/dynamic-labs/dynamic-auth/compare/v5.1.0...v5.2.0) (2026-08-06)
3
+
4
+
5
+ ### Features
6
+
7
+ * **webview-controller:** validate native SDK locale override before applying ([#12155](https://github.com/dynamic-labs/dynamic-auth/issues/12155)) ([4a9e1da](https://github.com/dynamic-labs/dynamic-auth/commit/4a9e1dafb59099c47d3678cc24f8475164c3db59))
8
+
9
+ ## [5.1.0](https://github.com/dynamic-labs/dynamic-auth/compare/v5.0.0...v5.1.0) (2026-08-04)
10
+
11
+
12
+ ### Features
13
+
14
+ * **midnight:** expose contract wallet provider ([#12120](https://github.com/dynamic-labs/dynamic-auth/issues/12120)) ([2cecf23](https://github.com/dynamic-labs/dynamic-auth/commit/2cecf23f1f51819b99dfde4afd20264ea1abebf8))
15
+ * **webview-messages,webview-controller:** add waas_backupKeySharesToICloud webview message ([#12147](https://github.com/dynamic-labs/dynamic-auth/issues/12147)) ([ca4edda](https://github.com/dynamic-labs/dynamic-auth/commit/ca4edda54adf0673a9fe41c17d861a739f1b8f2e))
16
+ * **webview:** add business accounts message contract and controller ([#12144](https://github.com/dynamic-labs/dynamic-auth/issues/12144)) ([d9f80c1](https://github.com/dynamic-labs/dynamic-auth/commit/d9f80c10bb3c332c2f3e3dc401b95025b930fa4e))
17
+
18
+
19
+ ### Bug Fixes
20
+
21
+ * bump brace-expansion to latest patched maintenance releases ([#12130](https://github.com/dynamic-labs/dynamic-auth/issues/12130)) ([1b26671](https://github.com/dynamic-labs/dynamic-auth/commit/1b26671ad8e62025904e04f9dfed8b3faafb9c19))
22
+ * **ethereum-aa:** resolve chainId from network for ZeroDev v2 multichain projects ([#12105](https://github.com/dynamic-labs/dynamic-auth/issues/12105)) ([fe2c5d2](https://github.com/dynamic-labs/dynamic-auth/commit/fe2c5d239758ea79e8647006d9d77cc27c2ab647))
23
+ * **midnight:** name the missing RPCs when the wallet client is too old ([#12121](https://github.com/dynamic-labs/dynamic-auth/issues/12121)) ([3a8a77f](https://github.com/dynamic-labs/dynamic-auth/commit/3a8a77f89d368d8634497a5b49ff345b004cdffa))
24
+ * **midnight:** return the submission identifier from the contract provider ([#12122](https://github.com/dynamic-labs/dynamic-auth/issues/12122)) ([8aa5289](https://github.com/dynamic-labs/dynamic-auth/commit/8aa52895fbdf09a3cf481049009a95f03cddda54))
25
+ * remediate high-severity dependency vulnerabilities ([#12149](https://github.com/dynamic-labs/dynamic-auth/issues/12149)) ([14058ee](https://github.com/dynamic-labs/dynamic-auth/commit/14058eeed34351791ad7ab7ac1fa720eb2cf9948))
26
+ * **starknet:** restore Braavos L2 session after lock and unlock ([#12124](https://github.com/dynamic-labs/dynamic-auth/issues/12124)) ([ab3b11b](https://github.com/dynamic-labs/dynamic-auth/commit/ab3b11bd71fbca8d32d4f2badfa49e3b9641eecf))
27
+ * **wallet-book:** add App Store id for Robinhood Wallet iOS install link ([#11877](https://github.com/dynamic-labs/dynamic-auth/issues/11877)) ([ef28619](https://github.com/dynamic-labs/dynamic-auth/commit/ef28619ba4396e01046717ea7ad560870a56c78f))
28
+ * **wallet-book:** add universal deep link for Exodus Solana WalletConnect ([#12123](https://github.com/dynamic-labs/dynamic-auth/issues/12123)) ([cd7223e](https://github.com/dynamic-labs/dynamic-auth/commit/cd7223eb2dc21314f351b96d9a06d795d282c35d))
29
+
2
30
  ## [5.0.0](https://github.com/dynamic-labs/dynamic-auth/compare/v5.0.0-rc.4...v5.0.0) (2026-07-29)
3
31
 
4
32
  ## 🚀 Dynamic SDK v5 is live
package/package.cjs CHANGED
@@ -3,6 +3,6 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var version = "5.0.0";
6
+ var version = "5.2.0";
7
7
 
8
8
  exports.version = version;
package/package.js CHANGED
@@ -1,4 +1,4 @@
1
1
  'use client'
2
- var version = "5.0.0";
2
+ var version = "5.2.0";
3
3
 
4
4
  export { version };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/global-wallet-client",
3
- "version": "5.0.0",
3
+ "version": "5.2.0",
4
4
  "description": "Core package for building Dynamic's Global Wallet",
5
5
  "author": "Dynamic Labs, Inc.",
6
6
  "license": "MIT",
@@ -71,13 +71,13 @@
71
71
  },
72
72
  "homepage": "https://www.dynamic.xyz/",
73
73
  "dependencies": {
74
- "@dynamic-labs/assert-package-version": "5.0.0",
75
- "@dynamic-labs/ethereum-aa-zksync": "5.0.0",
76
- "@dynamic-labs/logger": "5.0.0",
77
- "@dynamic-labs/message-transport": "5.0.0",
78
- "@dynamic-labs/store": "5.0.0",
79
- "@dynamic-labs/types": "5.0.0",
80
- "@dynamic-labs/utils": "5.0.0",
74
+ "@dynamic-labs/assert-package-version": "5.2.0",
75
+ "@dynamic-labs/ethereum-aa-zksync": "5.2.0",
76
+ "@dynamic-labs/logger": "5.2.0",
77
+ "@dynamic-labs/message-transport": "5.2.0",
78
+ "@dynamic-labs/store": "5.2.0",
79
+ "@dynamic-labs/types": "5.2.0",
80
+ "@dynamic-labs/utils": "5.2.0",
81
81
  "eventemitter3": "5.0.1"
82
82
  },
83
83
  "peerDependencies": {
@@ -89,7 +89,7 @@
89
89
  "zksync-sso": "0.2.0",
90
90
  "@wallet-standard/wallet": "^1.1.0",
91
91
  "@zerodev/sdk": "5.5.7",
92
- "@dynamic-labs/ethereum-aa": "5.0.0"
92
+ "@dynamic-labs/ethereum-aa": "5.2.0"
93
93
  },
94
94
  "peerDependenciesMeta": {
95
95
  "viem": {
@@ -15,18 +15,18 @@ var getCore = require('../../client/getCore/getCore.cjs');
15
15
  var getClient = require('../../client/getClient/getClient.cjs');
16
16
  var getCurrentEthereumNetworkId = require('../getCurrentEthereumNetworkId/getCurrentEthereumNetworkId.cjs');
17
17
 
18
- const getZeroDevClientId = (_a) => _tslib.__awaiter(void 0, [_a], void 0, function* ({ wallet, zeroDevSettings, chainId, }) {
19
- var _b;
18
+ const getZeroDevClientId = ({ wallet, zeroDevSettings, chainId, }) => {
19
+ var _a;
20
20
  const network = chainId || getCurrentEthereumNetworkId.getCurrentEthereumNetworkId(getClient.getClient(wallet));
21
21
  if (!network) {
22
22
  throw new Error('Network not found');
23
23
  }
24
- const chainConfig = (_b = zeroDevSettings.multichainAccountAbstractionProviders) === null || _b === void 0 ? void 0 : _b.find((chainConfig) => chainConfig.chain === network.toString());
24
+ const chainConfig = (_a = zeroDevSettings.multichainAccountAbstractionProviders) === null || _a === void 0 ? void 0 : _a.find((chainConfig) => chainConfig.chain === network.toString());
25
25
  if (!chainConfig) {
26
26
  throw new Error('Chain config not found');
27
27
  }
28
- return chainConfig.clientId;
29
- });
28
+ return { clientId: chainConfig.clientId, network };
29
+ };
30
30
  const getKernelAccountSettings = (args) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
31
31
  if (!args) {
32
32
  throw new Error('No arguments provided');
@@ -37,7 +37,7 @@ const getKernelAccountSettings = (args) => _tslib.__awaiter(void 0, void 0, void
37
37
  if (!zeroDevSettings) {
38
38
  throw new Error('ZeroDev provider is not enabled');
39
39
  }
40
- const clientId = yield getZeroDevClientId({
40
+ const { clientId, network } = getZeroDevClientId({
41
41
  chainId: args === null || args === void 0 ? void 0 : args.chainId,
42
42
  wallet: args === null || args === void 0 ? void 0 : args.wallet,
43
43
  zeroDevSettings,
@@ -46,10 +46,15 @@ const getKernelAccountSettings = (args) => _tslib.__awaiter(void 0, void 0, void
46
46
  if (!clientId) {
47
47
  throw new Error('ZeroDev clientId is not set');
48
48
  }
49
- const chain = yield ethereumAa.fetchZeroDevChain(clientId);
50
49
  const entryPoint = ethereumAa.getEntryPoint(entryPointVersion);
50
+ // v2 multichain projects resolve straight to a chain-specific clientId above, so the
51
+ // chain id is already known. The legacy v1-only ZeroDev REST lookup below returns no
52
+ // chainId for v2 project ids, crashing on `.id`.
53
+ const chainId = zerodevProjectVersion === 'v2'
54
+ ? network
55
+ : (yield ethereumAa.fetchZeroDevChain(clientId)).id;
51
56
  return {
52
- chainId: chain.id,
57
+ chainId,
53
58
  ecdsaProviderType: ecdsaProviderType !== null && ecdsaProviderType !== void 0 ? ecdsaProviderType : null,
54
59
  enableEIP7702,
55
60
  entryPoint,
@@ -1,6 +1,6 @@
1
1
  'use client'
2
2
  import { __awaiter } from '../../../../_virtual/_tslib.js';
3
- import { fetchZeroDevChain, getEntryPoint, getKernelVersion } from '@dynamic-labs/ethereum-aa';
3
+ import { getEntryPoint, fetchZeroDevChain, getKernelVersion } from '@dynamic-labs/ethereum-aa';
4
4
  import 'eventemitter3';
5
5
  import '@dynamic-labs/logger';
6
6
  import '@dynamic-labs/store';
@@ -11,18 +11,18 @@ import { getCore } from '../../client/getCore/getCore.js';
11
11
  import { getClient } from '../../client/getClient/getClient.js';
12
12
  import { getCurrentEthereumNetworkId } from '../getCurrentEthereumNetworkId/getCurrentEthereumNetworkId.js';
13
13
 
14
- const getZeroDevClientId = (_a) => __awaiter(void 0, [_a], void 0, function* ({ wallet, zeroDevSettings, chainId, }) {
15
- var _b;
14
+ const getZeroDevClientId = ({ wallet, zeroDevSettings, chainId, }) => {
15
+ var _a;
16
16
  const network = chainId || getCurrentEthereumNetworkId(getClient(wallet));
17
17
  if (!network) {
18
18
  throw new Error('Network not found');
19
19
  }
20
- const chainConfig = (_b = zeroDevSettings.multichainAccountAbstractionProviders) === null || _b === void 0 ? void 0 : _b.find((chainConfig) => chainConfig.chain === network.toString());
20
+ const chainConfig = (_a = zeroDevSettings.multichainAccountAbstractionProviders) === null || _a === void 0 ? void 0 : _a.find((chainConfig) => chainConfig.chain === network.toString());
21
21
  if (!chainConfig) {
22
22
  throw new Error('Chain config not found');
23
23
  }
24
- return chainConfig.clientId;
25
- });
24
+ return { clientId: chainConfig.clientId, network };
25
+ };
26
26
  const getKernelAccountSettings = (args) => __awaiter(void 0, void 0, void 0, function* () {
27
27
  if (!args) {
28
28
  throw new Error('No arguments provided');
@@ -33,7 +33,7 @@ const getKernelAccountSettings = (args) => __awaiter(void 0, void 0, void 0, fun
33
33
  if (!zeroDevSettings) {
34
34
  throw new Error('ZeroDev provider is not enabled');
35
35
  }
36
- const clientId = yield getZeroDevClientId({
36
+ const { clientId, network } = getZeroDevClientId({
37
37
  chainId: args === null || args === void 0 ? void 0 : args.chainId,
38
38
  wallet: args === null || args === void 0 ? void 0 : args.wallet,
39
39
  zeroDevSettings,
@@ -42,10 +42,15 @@ const getKernelAccountSettings = (args) => __awaiter(void 0, void 0, void 0, fun
42
42
  if (!clientId) {
43
43
  throw new Error('ZeroDev clientId is not set');
44
44
  }
45
- const chain = yield fetchZeroDevChain(clientId);
46
45
  const entryPoint = getEntryPoint(entryPointVersion);
46
+ // v2 multichain projects resolve straight to a chain-specific clientId above, so the
47
+ // chain id is already known. The legacy v1-only ZeroDev REST lookup below returns no
48
+ // chainId for v2 project ids, crashing on `.id`.
49
+ const chainId = zerodevProjectVersion === 'v2'
50
+ ? network
51
+ : (yield fetchZeroDevChain(clientId)).id;
47
52
  return {
48
- chainId: chain.id,
53
+ chainId,
49
54
  ecdsaProviderType: ecdsaProviderType !== null && ecdsaProviderType !== void 0 ? ecdsaProviderType : null,
50
55
  enableEIP7702,
51
56
  entryPoint,