@dynamic-labs/global-wallet-client 4.95.1 → 4.95.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.
package/CHANGELOG.md CHANGED
@@ -1,4 +1,11 @@
1
1
 
2
+ ### [4.95.2](https://github.com/dynamic-labs/dynamic-auth/compare/v4.95.1...v4.95.2) (2026-07-30)
3
+
4
+
5
+ ### Bug Fixes
6
+
7
+ * **ethereum-aa:** resolve chainId from network for ZeroDev v2 multichain projects ([#12106](https://github.com/dynamic-labs/dynamic-auth/issues/12106)) ([76f18b0](https://github.com/dynamic-labs/dynamic-auth/commit/76f18b0a861aa916f949a919e65a185c6c32673f)), closes [#12105](https://github.com/dynamic-labs/dynamic-auth/issues/12105) [#12105](https://github.com/dynamic-labs/dynamic-auth/issues/12105)
8
+
2
9
  ### [4.95.1](https://github.com/dynamic-labs/dynamic-auth/compare/v4.95.0...v4.95.1) (2026-07-28)
3
10
 
4
11
 
package/package.cjs CHANGED
@@ -3,6 +3,6 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var version = "4.95.1";
6
+ var version = "4.95.2";
7
7
 
8
8
  exports.version = version;
package/package.js CHANGED
@@ -1,4 +1,4 @@
1
1
  'use client'
2
- var version = "4.95.1";
2
+ var version = "4.95.2";
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": "4.95.1",
3
+ "version": "4.95.2",
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": "4.95.1",
75
- "@dynamic-labs/ethereum-aa-zksync": "4.95.1",
76
- "@dynamic-labs/logger": "4.95.1",
77
- "@dynamic-labs/message-transport": "4.95.1",
78
- "@dynamic-labs/store": "4.95.1",
79
- "@dynamic-labs/types": "4.95.1",
80
- "@dynamic-labs/utils": "4.95.1",
74
+ "@dynamic-labs/assert-package-version": "4.95.2",
75
+ "@dynamic-labs/ethereum-aa-zksync": "4.95.2",
76
+ "@dynamic-labs/logger": "4.95.2",
77
+ "@dynamic-labs/message-transport": "4.95.2",
78
+ "@dynamic-labs/store": "4.95.2",
79
+ "@dynamic-labs/types": "4.95.2",
80
+ "@dynamic-labs/utils": "4.95.2",
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": "4.95.1"
92
+ "@dynamic-labs/ethereum-aa": "4.95.2"
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,