@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
package/package.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/global-wallet-client",
|
|
3
|
-
"version": "5.
|
|
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.
|
|
75
|
-
"@dynamic-labs/ethereum-aa-zksync": "5.
|
|
76
|
-
"@dynamic-labs/logger": "5.
|
|
77
|
-
"@dynamic-labs/message-transport": "5.
|
|
78
|
-
"@dynamic-labs/store": "5.
|
|
79
|
-
"@dynamic-labs/types": "5.
|
|
80
|
-
"@dynamic-labs/utils": "5.
|
|
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.
|
|
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 = (
|
|
19
|
-
var
|
|
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 = (
|
|
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 =
|
|
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
|
|
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 {
|
|
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 = (
|
|
15
|
-
var
|
|
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 = (
|
|
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 =
|
|
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
|
|
53
|
+
chainId,
|
|
49
54
|
ecdsaProviderType: ecdsaProviderType !== null && ecdsaProviderType !== void 0 ? ecdsaProviderType : null,
|
|
50
55
|
enableEIP7702,
|
|
51
56
|
entryPoint,
|