@matterlabs/zksync-js 0.0.18 → 0.0.20
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/dist/adapters/ethers/index.cjs +36 -26
- package/dist/adapters/ethers/index.cjs.map +1 -1
- package/dist/adapters/ethers/index.js +1 -1
- package/dist/adapters/ethers/sdk.cjs +34 -26
- package/dist/adapters/ethers/sdk.cjs.map +1 -1
- package/dist/adapters/ethers/sdk.js +1 -1
- package/dist/adapters/viem/index.cjs +34 -23
- package/dist/adapters/viem/index.cjs.map +1 -1
- package/dist/adapters/viem/index.js +1 -1
- package/dist/adapters/viem/sdk.cjs +34 -23
- package/dist/adapters/viem/sdk.cjs.map +1 -1
- package/dist/adapters/viem/sdk.js +1 -1
- package/dist/{chunk-GBS7KQFU.js → chunk-3T5V4HKS.js} +21 -8
- package/dist/{chunk-U72MNQIY.js → chunk-E2XKJCI5.js} +20 -10
- package/package.json +2 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { buildDirectRequestStruct, createContractsResource, createDepositsResource, createFinalizationServices, createInteropFinalizationServices, createInteropResource, createTokensResource, createViemSdk, createWithdrawalsResource, encodeNativeTokenVaultTransferData, encodeSecondBridgeArgs, encodeSecondBridgeDataV1, encodeSecondBridgeErc20Args, encodeSecondBridgeEthArgs, getL2TransactionHashFromLogs } from '../../chunk-
|
|
1
|
+
export { buildDirectRequestStruct, createContractsResource, createDepositsResource, createFinalizationServices, createInteropFinalizationServices, createInteropResource, createTokensResource, createViemSdk, createWithdrawalsResource, encodeNativeTokenVaultTransferData, encodeSecondBridgeArgs, encodeSecondBridgeDataV1, encodeSecondBridgeErc20Args, encodeSecondBridgeEthArgs, getL2TransactionHashFromLogs } from '../../chunk-3T5V4HKS.js';
|
|
2
2
|
import '../../chunk-6LYAENO6.js';
|
|
3
3
|
import '../../chunk-3HHUZXSV.js';
|
|
4
4
|
export { createViemClient as createClient, createViemClient } from '../../chunk-CK5UFAZK.js';
|
|
@@ -6730,6 +6730,20 @@ function routeEthDirect() {
|
|
|
6730
6730
|
};
|
|
6731
6731
|
}
|
|
6732
6732
|
|
|
6733
|
+
// src/core/codec/ntv.ts
|
|
6734
|
+
function createNTVCodec(deps) {
|
|
6735
|
+
function encodeAssetId(originChainId, ntvAddress, tokenAddress) {
|
|
6736
|
+
const encoded = deps.encode(
|
|
6737
|
+
["uint256", "address", "address"],
|
|
6738
|
+
[originChainId, ntvAddress, tokenAddress]
|
|
6739
|
+
);
|
|
6740
|
+
return deps.keccak256(encoded);
|
|
6741
|
+
}
|
|
6742
|
+
return {
|
|
6743
|
+
encodeAssetId
|
|
6744
|
+
};
|
|
6745
|
+
}
|
|
6746
|
+
|
|
6733
6747
|
// src/adapters/viem/resources/deposits/routes/approval.ts
|
|
6734
6748
|
function errorText(error) {
|
|
6735
6749
|
const parts = [];
|
|
@@ -6780,12 +6794,25 @@ async function buildApprovalRequest({
|
|
|
6780
6794
|
// src/adapters/viem/resources/deposits/routes/erc20-nonbase.ts
|
|
6781
6795
|
var { wrapAs: wrapAs3 } = createErrorHandlers("deposits");
|
|
6782
6796
|
var ZERO_ASSET_ID = "0x0000000000000000000000000000000000000000000000000000000000000000";
|
|
6797
|
+
var ntvCodec = createNTVCodec({
|
|
6798
|
+
encode: (types, values) => viem.encodeAbiParameters(
|
|
6799
|
+
types.map((t, i) => ({ type: t, name: `arg${i}` })),
|
|
6800
|
+
values
|
|
6801
|
+
),
|
|
6802
|
+
keccak256: viem.keccak256
|
|
6803
|
+
});
|
|
6783
6804
|
async function encodeSecondBridgeErc20DepositCalldata(input) {
|
|
6784
6805
|
if (!input.ctx.resolvedToken) {
|
|
6785
6806
|
return encodeSecondBridgeErc20Args(input.token, input.amount, input.receiver);
|
|
6786
6807
|
}
|
|
6787
6808
|
const l1ChainId = BigInt(await input.ctx.client.l1.getChainId());
|
|
6788
|
-
const
|
|
6809
|
+
const expectedL1AssetId = ntvCodec.encodeAssetId(
|
|
6810
|
+
l1ChainId,
|
|
6811
|
+
L2_NATIVE_TOKEN_VAULT_ADDRESS,
|
|
6812
|
+
input.token
|
|
6813
|
+
);
|
|
6814
|
+
const assetId = input.ctx.resolvedToken.assetId.toLowerCase();
|
|
6815
|
+
const isL1Origin = assetId === ZERO_ASSET_ID || assetId === expectedL1AssetId.toLowerCase();
|
|
6789
6816
|
if (isL1Origin) {
|
|
6790
6817
|
return encodeSecondBridgeErc20Args(input.token, input.amount, input.receiver);
|
|
6791
6818
|
}
|
|
@@ -6801,8 +6828,8 @@ async function getPriorityGasModel(input) {
|
|
|
6801
6828
|
const l1NativeTokenVault = await input.ctx.contracts.l1NativeTokenVault();
|
|
6802
6829
|
const l1AssetRouter = await input.ctx.contracts.l1AssetRouter();
|
|
6803
6830
|
const l1ChainId = BigInt(await input.ctx.client.l1.getChainId());
|
|
6804
|
-
const isFirstBridge = input.ctx.resolvedToken.assetId.toLowerCase() === ZERO_ASSET_ID
|
|
6805
|
-
const erc20MetadataOriginChainId = isFirstBridge ? l1ChainId : input.ctx.resolvedToken.originChainId;
|
|
6831
|
+
const isFirstBridge = input.ctx.resolvedToken.assetId.toLowerCase() === ZERO_ASSET_ID;
|
|
6832
|
+
const erc20MetadataOriginChainId = isFirstBridge ? l1ChainId : input.ctx.resolvedToken.originChainId !== 0n ? input.ctx.resolvedToken.originChainId : await l1NativeTokenVault.read.originChainId([input.ctx.resolvedToken.assetId]);
|
|
6806
6833
|
const erc20Metadata = await l1NativeTokenVault.read.getERC20Getters([
|
|
6807
6834
|
input.token,
|
|
6808
6835
|
erc20MetadataOriginChainId
|
|
@@ -7089,25 +7116,9 @@ function routeErc20NonBase() {
|
|
|
7089
7116
|
}
|
|
7090
7117
|
};
|
|
7091
7118
|
}
|
|
7092
|
-
|
|
7093
|
-
// src/core/codec/ntv.ts
|
|
7094
|
-
function createNTVCodec(deps) {
|
|
7095
|
-
function encodeAssetId(originChainId, ntvAddress, tokenAddress) {
|
|
7096
|
-
const encoded = deps.encode(
|
|
7097
|
-
["uint256", "address", "address"],
|
|
7098
|
-
[originChainId, ntvAddress, tokenAddress]
|
|
7099
|
-
);
|
|
7100
|
-
return deps.keccak256(encoded);
|
|
7101
|
-
}
|
|
7102
|
-
return {
|
|
7103
|
-
encodeAssetId
|
|
7104
|
-
};
|
|
7105
|
-
}
|
|
7106
|
-
|
|
7107
|
-
// src/adapters/viem/resources/deposits/routes/eth-nonbase.ts
|
|
7108
7119
|
var { wrapAs: wrapAs4 } = createErrorHandlers("deposits");
|
|
7109
7120
|
var ZERO_ASSET_ID2 = "0x0000000000000000000000000000000000000000000000000000000000000000";
|
|
7110
|
-
var
|
|
7121
|
+
var ntvCodec2 = createNTVCodec({
|
|
7111
7122
|
encode: (types, values) => viem.encodeAbiParameters(
|
|
7112
7123
|
types.map((type, index) => ({ type, name: `arg${index}` })),
|
|
7113
7124
|
values
|
|
@@ -7119,7 +7130,7 @@ async function getPriorityGasModel2(input) {
|
|
|
7119
7130
|
const l1AssetRouter = await input.ctx.contracts.l1AssetRouter();
|
|
7120
7131
|
const l1NativeTokenVault = await input.ctx.contracts.l1NativeTokenVault();
|
|
7121
7132
|
const originChainId = input.ctx.resolvedToken.originChainId !== 0n ? input.ctx.resolvedToken.originChainId : BigInt(await input.ctx.client.l1.getChainId());
|
|
7122
|
-
const resolvedAssetId = input.ctx.resolvedToken.assetId.toLowerCase() === ZERO_ASSET_ID2 ?
|
|
7133
|
+
const resolvedAssetId = input.ctx.resolvedToken.assetId.toLowerCase() === ZERO_ASSET_ID2 ? ntvCodec2.encodeAssetId(originChainId, L2_NATIVE_TOKEN_VAULT_ADDRESS, ETH_ADDRESS) : input.ctx.resolvedToken.assetId;
|
|
7123
7134
|
const erc20Metadata = await l1NativeTokenVault.read.getERC20Getters([
|
|
7124
7135
|
ETH_ADDRESS,
|
|
7125
7136
|
originChainId
|
|
@@ -7637,7 +7648,7 @@ async function waitForL2ExecutionFromL1Tx(l1, l2, l1TxHash) {
|
|
|
7637
7648
|
return { l2Receipt, l2TxHash };
|
|
7638
7649
|
}
|
|
7639
7650
|
var { wrapAs: wrapAs6 } = createErrorHandlers("tokens");
|
|
7640
|
-
var
|
|
7651
|
+
var ntvCodec3 = createNTVCodec({
|
|
7641
7652
|
encode: (types, values) => viem.encodeAbiParameters(
|
|
7642
7653
|
types.map((t, i) => ({ type: t, name: `arg${i}` })),
|
|
7643
7654
|
values
|
|
@@ -7751,7 +7762,7 @@ function createTokensResource(client) {
|
|
|
7751
7762
|
return wrapAs6("CONTRACT", "tokens.isChainEthBased", async () => {
|
|
7752
7763
|
const baseAssetId = await getBaseTokenAssetId();
|
|
7753
7764
|
const l1ChainId = await getL1ChainId();
|
|
7754
|
-
const ethAssetId =
|
|
7765
|
+
const ethAssetId = ntvCodec3.encodeAssetId(
|
|
7755
7766
|
l1ChainId,
|
|
7756
7767
|
L2_NATIVE_TOKEN_VAULT_ADDRESS,
|
|
7757
7768
|
ETH_ADDRESS
|