@dynamic-labs/ethereum-aa-zksync 4.19.7 → 4.20.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 +12 -0
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +8 -8
- package/src/connector/ZKsyncConnector.cjs +3 -0
- package/src/connector/ZKsyncConnector.js +3 -0
- package/src/utils/module.cjs +18 -0
- package/src/utils/module.js +18 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,16 @@
|
|
|
1
1
|
|
|
2
|
+
## [4.20.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.19.7...v4.20.0) (2025-06-09)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
* encapsulate waas connectors within main connectors ([#8878](https://github.com/dynamic-labs/dynamic-auth/issues/8878)) ([fd1b6ab](https://github.com/dynamic-labs/dynamic-auth/commit/fd1b6ab037ff7ce5c66b30d9611689e8cc03b97b))
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Bug Fixes
|
|
11
|
+
|
|
12
|
+
* hide duplicate social connection logo on global wallets ([#8903](https://github.com/dynamic-labs/dynamic-auth/issues/8903)) ([c2f86e7](https://github.com/dynamic-labs/dynamic-auth/commit/c2f86e7aae91764b174abaa18439ffbdf7287475))
|
|
13
|
+
|
|
2
14
|
### [4.19.7](https://github.com/dynamic-labs/dynamic-auth/compare/v4.19.6...v4.19.7) (2025-06-06)
|
|
3
15
|
|
|
4
16
|
|
package/package.cjs
CHANGED
package/package.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/ethereum-aa-zksync",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.20.0",
|
|
4
4
|
"description": "Core package for Ethereum Account Abstraction utilities and types",
|
|
5
5
|
"author": "Dynamic Labs, Inc.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -20,13 +20,13 @@
|
|
|
20
20
|
"dependencies": {
|
|
21
21
|
"@dynamic-labs/sdk-api-core": "0.0.681",
|
|
22
22
|
"zksync-sso": "0.2.0",
|
|
23
|
-
"@dynamic-labs/assert-package-version": "4.
|
|
24
|
-
"@dynamic-labs/ethereum-aa-core": "4.
|
|
25
|
-
"@dynamic-labs/ethereum-core": "4.
|
|
26
|
-
"@dynamic-labs/types": "4.
|
|
27
|
-
"@dynamic-labs/utils": "4.
|
|
28
|
-
"@dynamic-labs/wallet-book": "4.
|
|
29
|
-
"@dynamic-labs/wallet-connector-core": "4.
|
|
23
|
+
"@dynamic-labs/assert-package-version": "4.20.0",
|
|
24
|
+
"@dynamic-labs/ethereum-aa-core": "4.20.0",
|
|
25
|
+
"@dynamic-labs/ethereum-core": "4.20.0",
|
|
26
|
+
"@dynamic-labs/types": "4.20.0",
|
|
27
|
+
"@dynamic-labs/utils": "4.20.0",
|
|
28
|
+
"@dynamic-labs/wallet-book": "4.20.0",
|
|
29
|
+
"@dynamic-labs/wallet-connector-core": "4.20.0"
|
|
30
30
|
},
|
|
31
31
|
"peerDependencies": {
|
|
32
32
|
"viem": "^2.28.4"
|
|
@@ -628,6 +628,7 @@ class ZKsyncConnector extends ethereumAaCore.AccountAbstractionBaseConnector {
|
|
|
628
628
|
}),
|
|
629
629
|
};
|
|
630
630
|
}
|
|
631
|
+
this._walletUiUtils.disabledConfirmationOnce();
|
|
631
632
|
yield this.smartAccount.revokeSession(params);
|
|
632
633
|
this.deleteSession(sessionId);
|
|
633
634
|
});
|
|
@@ -674,6 +675,7 @@ class ZKsyncConnector extends ethereumAaCore.AccountAbstractionBaseConnector {
|
|
|
674
675
|
publicClient,
|
|
675
676
|
smartAddress: this.smartAccountAddress,
|
|
676
677
|
}))) {
|
|
678
|
+
this._walletUiUtils.disabledConfirmationOnce();
|
|
677
679
|
yield module$1.installModule({
|
|
678
680
|
ecdsaClient: this.getAccountAbstractionProvider(),
|
|
679
681
|
module: {
|
|
@@ -687,6 +689,7 @@ class ZKsyncConnector extends ethereumAaCore.AccountAbstractionBaseConnector {
|
|
|
687
689
|
smartAddress: this.smartAccountAddress,
|
|
688
690
|
});
|
|
689
691
|
}
|
|
692
|
+
this._walletUiUtils.disabledConfirmationOnce();
|
|
690
693
|
yield this.smartAccount.createSession(params);
|
|
691
694
|
const sessionHash = session.getSessionHash(params.sessionConfig);
|
|
692
695
|
const serializedSessionConfig = session.stringifySessionConfig(params.sessionConfig);
|
|
@@ -624,6 +624,7 @@ class ZKsyncConnector extends AccountAbstractionBaseConnector {
|
|
|
624
624
|
}),
|
|
625
625
|
};
|
|
626
626
|
}
|
|
627
|
+
this._walletUiUtils.disabledConfirmationOnce();
|
|
627
628
|
yield this.smartAccount.revokeSession(params);
|
|
628
629
|
this.deleteSession(sessionId);
|
|
629
630
|
});
|
|
@@ -670,6 +671,7 @@ class ZKsyncConnector extends AccountAbstractionBaseConnector {
|
|
|
670
671
|
publicClient,
|
|
671
672
|
smartAddress: this.smartAccountAddress,
|
|
672
673
|
}))) {
|
|
674
|
+
this._walletUiUtils.disabledConfirmationOnce();
|
|
673
675
|
yield installModule({
|
|
674
676
|
ecdsaClient: this.getAccountAbstractionProvider(),
|
|
675
677
|
module: {
|
|
@@ -683,6 +685,7 @@ class ZKsyncConnector extends AccountAbstractionBaseConnector {
|
|
|
683
685
|
smartAddress: this.smartAccountAddress,
|
|
684
686
|
});
|
|
685
687
|
}
|
|
688
|
+
this._walletUiUtils.disabledConfirmationOnce();
|
|
686
689
|
yield this.smartAccount.createSession(params);
|
|
687
690
|
const sessionHash = getSessionHash(params.sessionConfig);
|
|
688
691
|
const serializedSessionConfig = stringifySessionConfig(params.sessionConfig);
|
package/src/utils/module.cjs
CHANGED
|
@@ -21,7 +21,25 @@ const isModuleInstalled = (_a) => _tslib.__awaiter(void 0, [_a], void 0, functio
|
|
|
21
21
|
return sessionValidatorInstalled;
|
|
22
22
|
});
|
|
23
23
|
const installModule = (_b) => _tslib.__awaiter(void 0, [_b], void 0, function* ({ module, smartAddress, publicClient, ecdsaClient, paymaster, }) {
|
|
24
|
+
var _c;
|
|
24
25
|
const { address: moduleAddress, initData } = module;
|
|
26
|
+
if (!paymaster) {
|
|
27
|
+
const gasEstimate = yield publicClient.estimateContractGas({
|
|
28
|
+
abi: abi.SsoAccountAbi,
|
|
29
|
+
account: ecdsaClient.account,
|
|
30
|
+
address: smartAddress,
|
|
31
|
+
args: [moduleAddress, initData],
|
|
32
|
+
functionName: 'addModuleValidator',
|
|
33
|
+
});
|
|
34
|
+
const balance = yield publicClient.getBalance({
|
|
35
|
+
address: (_c = ecdsaClient.account) === null || _c === void 0 ? void 0 : _c.address,
|
|
36
|
+
});
|
|
37
|
+
const gasPrice = yield publicClient.getGasPrice();
|
|
38
|
+
const requiredBalance = gasEstimate * gasPrice;
|
|
39
|
+
if (balance < requiredBalance) {
|
|
40
|
+
throw new Error(`Insufficient balance to upgrade smart account, balance: ${balance} required: ${requiredBalance}`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
25
43
|
const simulatedSessionModuleAddition = yield publicClient.simulateContract({
|
|
26
44
|
abi: abi.SsoAccountAbi,
|
|
27
45
|
account: ecdsaClient.account,
|
package/src/utils/module.js
CHANGED
|
@@ -17,7 +17,25 @@ const isModuleInstalled = (_a) => __awaiter(void 0, [_a], void 0, function* ({ m
|
|
|
17
17
|
return sessionValidatorInstalled;
|
|
18
18
|
});
|
|
19
19
|
const installModule = (_b) => __awaiter(void 0, [_b], void 0, function* ({ module, smartAddress, publicClient, ecdsaClient, paymaster, }) {
|
|
20
|
+
var _c;
|
|
20
21
|
const { address: moduleAddress, initData } = module;
|
|
22
|
+
if (!paymaster) {
|
|
23
|
+
const gasEstimate = yield publicClient.estimateContractGas({
|
|
24
|
+
abi: SsoAccountAbi,
|
|
25
|
+
account: ecdsaClient.account,
|
|
26
|
+
address: smartAddress,
|
|
27
|
+
args: [moduleAddress, initData],
|
|
28
|
+
functionName: 'addModuleValidator',
|
|
29
|
+
});
|
|
30
|
+
const balance = yield publicClient.getBalance({
|
|
31
|
+
address: (_c = ecdsaClient.account) === null || _c === void 0 ? void 0 : _c.address,
|
|
32
|
+
});
|
|
33
|
+
const gasPrice = yield publicClient.getGasPrice();
|
|
34
|
+
const requiredBalance = gasEstimate * gasPrice;
|
|
35
|
+
if (balance < requiredBalance) {
|
|
36
|
+
throw new Error(`Insufficient balance to upgrade smart account, balance: ${balance} required: ${requiredBalance}`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
21
39
|
const simulatedSessionModuleAddition = yield publicClient.simulateContract({
|
|
22
40
|
abi: SsoAccountAbi,
|
|
23
41
|
account: ecdsaClient.account,
|