FRE-600: Fix code review blockers

- Consolidated duplicate UndoManagers to single instance
- Fixed connection promise to only resolve on 'connected' status
- Fixed WebSocketProvider import (WebsocketProvider)
- Added proper doc.destroy() cleanup
- Renamed isPresenceInitialized property to avoid conflict

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
2026-04-25 00:08:01 -04:00
parent 65b552bb08
commit 7c684a42cc
48450 changed files with 5679671 additions and 383 deletions

View File

@@ -0,0 +1,16 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.toMultisigSmartAccount = toMultisigSmartAccount;
const sign_js_1 = require("../../accounts/utils/sign.js");
const index_js_1 = require("../../utils/index.js");
const toSmartAccount_js_1 = require("./toSmartAccount.js");
function toMultisigSmartAccount(parameters) {
const { address, privateKeys } = parameters;
return (0, toSmartAccount_js_1.toSmartAccount)({
address,
async sign({ hash }) {
return (0, index_js_1.concatHex)(await Promise.all(privateKeys.map((privateKey) => (0, sign_js_1.sign)({ hash, privateKey, to: 'hex' }))));
},
});
}
//# sourceMappingURL=toMultisigSmartAccount.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"toMultisigSmartAccount.js","sourceRoot":"","sources":["../../../zksync/accounts/toMultisigSmartAccount.ts"],"names":[],"mappings":";;AAmBA,wDAiBC;AAlCD,0DAAmD;AAEnD,mDAAgD;AAEhD,2DAAoD;AAapD,SAAgB,sBAAsB,CACpC,UAA4C;IAE5C,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,UAAU,CAAA;IAE3C,OAAO,IAAA,kCAAc,EAAC;QACpB,OAAO;QACP,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE;YACjB,OAAO,IAAA,oBAAS,EACd,MAAM,OAAO,CAAC,GAAG,CACf,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAC7B,IAAA,cAAI,EAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CACtC,CACF,CACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}

View File

@@ -0,0 +1,15 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.toSinglesigSmartAccount = toSinglesigSmartAccount;
const sign_js_1 = require("../../accounts/utils/sign.js");
const toSmartAccount_js_1 = require("./toSmartAccount.js");
function toSinglesigSmartAccount(parameters) {
const { address, privateKey } = parameters;
return (0, toSmartAccount_js_1.toSmartAccount)({
address,
async sign({ hash }) {
return (0, sign_js_1.sign)({ hash, privateKey, to: 'hex' });
},
});
}
//# sourceMappingURL=toSinglesigSmartAccount.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"toSinglesigSmartAccount.js","sourceRoot":"","sources":["../../../zksync/accounts/toSinglesigSmartAccount.ts"],"names":[],"mappings":";;AAkBA,0DAWC;AA3BD,0DAAmD;AAGnD,2DAAoD;AAapD,SAAgB,uBAAuB,CACrC,UAA6C;IAE7C,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,UAAU,CAAA;IAE1C,OAAO,IAAA,kCAAc,EAAC;QACpB,OAAO;QACP,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE;YACjB,OAAO,IAAA,cAAI,EAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QAC9C,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}

View File

@@ -0,0 +1,42 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.toSmartAccount = toSmartAccount;
const toAccount_js_1 = require("../../accounts/toAccount.js");
const index_js_1 = require("../../utils/index.js");
const hashMessage_js_1 = require("../../utils/signature/hashMessage.js");
const hashTypedData_js_1 = require("../../utils/signature/hashTypedData.js");
const serializers_js_1 = require("../serializers.js");
function toSmartAccount(parameters) {
const { address, sign } = parameters;
const account = (0, toAccount_js_1.toAccount)({
address,
sign,
async signMessage({ message }) {
return sign({
hash: (0, hashMessage_js_1.hashMessage)(message),
});
},
async signTransaction(transaction) {
const signableTransaction = {
...transaction,
from: this.address,
};
return (0, serializers_js_1.serializeTransaction)({
...signableTransaction,
customSignature: await sign({
hash: (0, index_js_1.keccak256)((0, serializers_js_1.serializeTransaction)(signableTransaction)),
}),
});
},
async signTypedData(typedData) {
return sign({
hash: (0, hashTypedData_js_1.hashTypedData)(typedData),
});
},
});
return {
...account,
source: 'smartAccountZksync',
};
}
//# sourceMappingURL=toSmartAccount.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"toSmartAccount.js","sourceRoot":"","sources":["../../../zksync/accounts/toSmartAccount.ts"],"names":[],"mappings":";;AAyBA,wCAqCC;AA5DD,8DAAuD;AAGvD,mDAAgD;AAChD,yEAAkE;AAClE,6EAAsE;AACtE,sDAAwD;AAiBxD,SAAgB,cAAc,CAC5B,UAAoC;IAEpC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,UAAU,CAAA;IAEpC,MAAM,OAAO,GAAG,IAAA,wBAAS,EAAC;QACxB,OAAO;QACP,IAAI;QACJ,KAAK,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE;YAC3B,OAAO,IAAI,CAAC;gBACV,IAAI,EAAE,IAAA,4BAAW,EAAC,OAAO,CAAC;aAC3B,CAAC,CAAA;QACJ,CAAC;QACD,KAAK,CAAC,eAAe,CAAC,WAAW;YAC/B,MAAM,mBAAmB,GAAG;gBAC1B,GAAG,WAAW;gBACd,IAAI,EAAE,IAAI,CAAC,OAAQ;aACmB,CAAA;YAExC,OAAO,IAAA,qCAAoB,EAAC;gBAC1B,GAAG,mBAAmB;gBACtB,eAAe,EAAE,MAAM,IAAI,CAAC;oBAC1B,IAAI,EAAE,IAAA,oBAAS,EAAC,IAAA,qCAAoB,EAAC,mBAAmB,CAAC,CAAC;iBAC3D,CAAC;aACH,CAAC,CAAA;QACJ,CAAC;QACD,KAAK,CAAC,aAAa,CAAC,SAAS;YAC3B,OAAO,IAAI,CAAC;gBACV,IAAI,EAAE,IAAA,gCAAa,EAAC,SAAS,CAAC;aAC/B,CAAC,CAAA;QACJ,CAAC;KACF,CAAC,CAAA;IAEF,OAAO;QACL,GAAG,OAAO;QACV,MAAM,EAAE,oBAAoB;KACP,CAAA;AACzB,CAAC"}

View File

@@ -0,0 +1,146 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.claimFailedDeposit = claimFailedDeposit;
const abitype_1 = require("abitype");
const getTransaction_js_1 = require("../../actions/public/getTransaction.js");
const getTransactionReceipt_js_1 = require("../../actions/public/getTransactionReceipt.js");
const readContract_js_1 = require("../../actions/public/readContract.js");
const sendTransaction_js_1 = require("../../actions/wallet/sendTransaction.js");
const bytes_js_1 = require("../../constants/bytes.js");
const account_js_1 = require("../../errors/account.js");
const chain_js_1 = require("../../errors/chain.js");
const index_js_1 = require("../../utils/index.js");
const address_js_1 = require("../constants/address.js");
const bridge_js_1 = require("../errors/bridge.js");
const undoL1ToL2Alias_js_1 = require("../utils/bridge/undoL1ToL2Alias.js");
const getDefaultBridgeAddresses_js_1 = require("./getDefaultBridgeAddresses.js");
const getLogProof_js_1 = require("./getLogProof.js");
async function claimFailedDeposit(client, parameters) {
const { account: account_ = client.account, chain: chain_ = client.chain, client: l2Client, depositHash, ...rest } = parameters;
const account = account_ ? (0, index_js_1.parseAccount)(account_) : client.account;
if (!account)
throw new account_js_1.AccountNotFoundError({
docsPath: '/docs/actions/wallet/sendTransaction',
});
if (!l2Client.chain)
throw new chain_js_1.ClientChainNotConfiguredError();
const receipt = (await (0, getTransactionReceipt_js_1.getTransactionReceipt)(l2Client, { hash: depositHash }));
const successL2ToL1LogIndex = receipt.l2ToL1Logs.findIndex((l2ToL1log) => (0, index_js_1.isAddressEqual)(l2ToL1log.sender, address_js_1.bootloaderFormalAddress) &&
l2ToL1log.key === depositHash);
const successL2ToL1Log = receipt.l2ToL1Logs[successL2ToL1LogIndex];
if (successL2ToL1Log?.value !== bytes_js_1.zeroHash)
throw new bridge_js_1.CannotClaimSuccessfulDepositError({ hash: depositHash });
const tx = await (0, getTransaction_js_1.getTransaction)(l2Client, { hash: depositHash });
const l1BridgeAddress = (0, undoL1ToL2Alias_js_1.undoL1ToL2Alias)(receipt.from);
const l2BridgeAddress = receipt.to;
if (!l2BridgeAddress)
throw new bridge_js_1.L2BridgeNotFoundError();
const l1NativeTokenVault = (await getBridgeAddresses(client, l2Client))
.l1NativeTokenVault;
let depositSender;
let assetId;
let assetData;
try {
const { args } = (0, index_js_1.decodeFunctionData)({
abi: (0, abitype_1.parseAbi)([
'function finalizeDeposit(address _l1Sender, address _l2Receiver, address _l1Token, uint256 _amount, bytes _data)',
]),
data: tx.input,
});
assetData = (0, index_js_1.encodeAbiParameters)([{ type: 'uint256' }, { type: 'address' }, { type: 'address' }], [args[3], args[1], args[2]]);
assetId = await (0, readContract_js_1.readContract)(client, {
address: l1NativeTokenVault,
abi: (0, abitype_1.parseAbi)(['function assetId(address token) view returns (bytes32)']),
functionName: 'assetId',
args: [args[2]],
});
depositSender = args[0];
if (assetId === bytes_js_1.zeroHash)
throw new Error(`Token ${args[2]} not registered in NTV`);
}
catch (_e) {
const { args } = (0, index_js_1.decodeFunctionData)({
abi: (0, abitype_1.parseAbi)([
'function finalizeDeposit(uint256 _chainId, bytes32 _assetId, bytes _transferData)',
]),
data: tx.input,
});
assetId = args[1];
const transferData = args[2];
const l1TokenAddress = await (0, readContract_js_1.readContract)(client, {
address: l1NativeTokenVault,
abi: (0, abitype_1.parseAbi)([
'function tokenAddress(bytes32 assetId) view returns (address)',
]),
functionName: 'tokenAddress',
args: [assetId],
});
const transferDataDecoded = (0, index_js_1.decodeAbiParameters)([
{ type: 'address' },
{ type: 'address' },
{ type: 'address' },
{ type: 'uint256' },
{ type: 'bytes' },
], transferData);
assetData = (0, index_js_1.encodeAbiParameters)([{ type: 'uint256' }, { type: 'address' }, { type: 'address' }], [transferDataDecoded[3], transferDataDecoded[1], l1TokenAddress]);
depositSender = transferDataDecoded[0];
}
const proof = await (0, getLogProof_js_1.getLogProof)(l2Client, {
txHash: depositHash,
index: successL2ToL1LogIndex,
});
if (!proof)
throw new bridge_js_1.LogProofNotFoundError({
hash: depositHash,
index: successL2ToL1LogIndex,
});
const data = (0, index_js_1.encodeFunctionData)({
abi: (0, abitype_1.parseAbi)([
'function bridgeRecoverFailedTransfer(uint256 _chainId, address _depositSender, bytes32 _assetId, bytes _assetData, bytes32 _l2TxHash, uint256 _l2BatchNumber, uint256 _l2MessageIndex, uint16 _l2TxNumberInBatch, bytes32[] _merkleProof)',
]),
functionName: 'bridgeRecoverFailedTransfer',
args: [
BigInt(l2Client.chain.id),
depositSender,
assetId,
assetData,
depositHash,
receipt.l1BatchNumber,
BigInt(proof.id),
Number(receipt.l1BatchTxIndex),
proof.proof,
],
});
return await (0, sendTransaction_js_1.sendTransaction)(client, {
chain: chain_,
account,
to: l1BridgeAddress,
data,
...rest,
});
}
async function getBridgeAddresses(client, l2Client) {
const addresses = await (0, getDefaultBridgeAddresses_js_1.getDefaultBridgeAddresses)(l2Client);
let l1Nullifier = addresses.l1Nullifier;
let l1NativeTokenVault = addresses.l1NativeTokenVault;
if (!l1Nullifier)
l1Nullifier = await (0, readContract_js_1.readContract)(client, {
address: addresses.sharedL1,
abi: (0, abitype_1.parseAbi)(['function L1_NULLIFIER() view returns (address)']),
functionName: 'L1_NULLIFIER',
args: [],
});
if (!l1NativeTokenVault)
l1NativeTokenVault = await (0, readContract_js_1.readContract)(client, {
address: addresses.sharedL1,
abi: (0, abitype_1.parseAbi)(['function nativeTokenVault() view returns (address)']),
functionName: 'nativeTokenVault',
args: [],
});
return {
...addresses,
l1Nullifier,
l1NativeTokenVault,
};
}
//# sourceMappingURL=claimFailedDeposit.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"claimFailedDeposit.js","sourceRoot":"","sources":["../../../zksync/actions/claimFailedDeposit.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,27 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.deployContract = deployContract;
const address_js_1 = require("../constants/address.js");
const encodeDeployData_js_1 = require("../utils/abi/encodeDeployData.js");
const sendEip712Transaction_js_1 = require("./sendEip712Transaction.js");
function deployContract(walletClient, parameters) {
const { abi, args, bytecode, deploymentType, salt, ...request } = parameters;
const data = (0, encodeDeployData_js_1.encodeDeployData)({
abi,
args,
bytecode,
deploymentType,
salt,
});
request.factoryDeps = request.factoryDeps || [];
if (!request.factoryDeps.includes(bytecode))
request.factoryDeps.push(bytecode);
return (0, sendEip712Transaction_js_1.sendEip712Transaction)(walletClient, {
...request,
data,
to: deploymentType === 'create2' || deploymentType === 'create2Account'
? address_js_1.contract2FactoryAddress
: address_js_1.contractDeployerAddress,
});
}
//# sourceMappingURL=deployContract.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"deployContract.js","sourceRoot":"","sources":["../../../zksync/actions/deployContract.ts"],"names":[],"mappings":";;AA0EA,wCAqCC;AAtGD,wDAGgC;AAGhC,0EAGyC;AACzC,yEAKmC;AAkDnC,SAAgB,cAAc,CAM5B,YAA+C,EAC/C,UAAwE;IAExE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,GAC7D,UAAsC,CAAA;IAExC,MAAM,IAAI,GAAG,IAAA,sCAAgB,EAAC;QAC5B,GAAG;QACH,IAAI;QACJ,QAAQ;QACR,cAAc;QACd,IAAI;KACL,CAAC,CAAA;IAGF,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAA;IAC/C,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACzC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAEpC,OAAO,IAAA,gDAAqB,EAAC,YAAY,EAAE;QACzC,GAAG,OAAO;QACV,IAAI;QACJ,EAAE,EACA,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,gBAAgB;YACjE,CAAC,CAAC,oCAAuB;YACzB,CAAC,CAAC,oCAAuB;KAK9B,CAAC,CAAA;AACJ,CAAC"}

485
node_modules/viem/_cjs/zksync/actions/deposit.js generated vendored Normal file
View File

@@ -0,0 +1,485 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.deposit = deposit;
const abitype_1 = require("abitype");
const estimateGas_js_1 = require("../../actions/public/estimateGas.js");
const readContract_js_1 = require("../../actions/public/readContract.js");
const waitForTransactionReceipt_js_1 = require("../../actions/public/waitForTransactionReceipt.js");
const sendTransaction_js_1 = require("../../actions/wallet/sendTransaction.js");
const writeContract_js_1 = require("../../actions/wallet/writeContract.js");
const public_js_1 = require("../../clients/decorators/public.js");
const abis_js_1 = require("../../constants/abis.js");
const address_js_1 = require("../../constants/address.js");
const bytes_js_1 = require("../../constants/bytes.js");
const account_js_1 = require("../../errors/account.js");
const chain_js_1 = require("../../errors/chain.js");
const index_js_1 = require("../../utils/index.js");
const abis_js_2 = require("../constants/abis.js");
const address_js_2 = require("../constants/address.js");
const number_js_1 = require("../constants/number.js");
const bridge_js_1 = require("../errors/bridge.js");
const applyL1ToL2Alias_js_1 = require("../utils/bridge/applyL1ToL2Alias.js");
const estimateGasL1ToL2_js_1 = require("./estimateGasL1ToL2.js");
const getBridgehubContractAddress_js_1 = require("./getBridgehubContractAddress.js");
const getDefaultBridgeAddresses_js_1 = require("./getDefaultBridgeAddresses.js");
const getL1Allowance_js_1 = require("./getL1Allowance.js");
async function deposit(client, parameters) {
let { account: account_ = client.account, chain: chain_ = client.chain, client: l2Client, token, amount, approveToken, approveBaseToken, gas, } = parameters;
const account = account_ ? (0, index_js_1.parseAccount)(account_) : client.account;
if (!account)
throw new account_js_1.AccountNotFoundError({
docsPath: '/docs/actions/wallet/sendTransaction',
});
if (!l2Client.chain)
throw new chain_js_1.ClientChainNotConfiguredError();
if ((0, index_js_1.isAddressEqual)(token, address_js_2.legacyEthAddress))
token = address_js_2.ethAddressInContracts;
const bridgeAddresses = await getBridgeAddresses(client, l2Client);
const bridgehub = await (0, getBridgehubContractAddress_js_1.getBridgehubContractAddress)(l2Client);
const baseToken = await (0, readContract_js_1.readContract)(client, {
address: bridgehub,
abi: abis_js_2.bridgehubAbi,
functionName: 'baseToken',
args: [BigInt(l2Client.chain.id)],
});
const { mintValue, tx } = await getL1DepositTx(client, account, { ...parameters, token }, bridgeAddresses, bridgehub, baseToken);
await approveTokens(client, chain_, tx.bridgeAddress, baseToken, mintValue, account, token, amount, approveToken, approveBaseToken);
if (!gas) {
const baseGasLimit = await (0, estimateGas_js_1.estimateGas)(client, {
account: account.address,
to: bridgehub,
value: tx.value,
data: tx.data,
});
gas = scaleGasLimit(baseGasLimit);
}
return await (0, sendTransaction_js_1.sendTransaction)(client, {
chain: chain_,
account,
gas,
...tx,
});
}
async function getL1DepositTx(client, account, parameters, bridgeAddresses, bridgehub, baseToken) {
let { account: _account, chain: _chain, client: l2Client, token, amount, to, operatorTip = 0n, l2GasLimit, gasPerPubdataByte = number_js_1.requiredL1ToL2GasPerPubdataLimit, refundRecipient = address_js_1.zeroAddress, bridgeAddress, customBridgeData, value, gasPrice, maxFeePerGas, maxPriorityFeePerGas, approveToken: _approveToken, approveBaseToken: _approveBaseToken, ...rest } = parameters;
if (!l2Client.chain)
throw new chain_js_1.ClientChainNotConfiguredError();
to ??= account.address;
let gasPriceForEstimation = maxFeePerGas || gasPrice;
if (!gasPriceForEstimation) {
const estimatedFee = await getFeePrice(client);
gasPriceForEstimation = estimatedFee.maxFeePerGas;
maxFeePerGas = estimatedFee.maxFeePerGas;
maxPriorityFeePerGas ??= estimatedFee.maxPriorityFeePerGas;
}
const { l2GasLimit_, baseCost } = await getL2BridgeTxFeeParams(client, l2Client, bridgehub, gasPriceForEstimation, account.address, token, amount, to, gasPerPubdataByte, baseToken, l2GasLimit, bridgeAddress, customBridgeData);
l2GasLimit = l2GasLimit_;
let mintValue;
let data;
const isETHBasedChain = (0, index_js_1.isAddressEqual)(baseToken, address_js_2.ethAddressInContracts);
if ((isETHBasedChain && (0, index_js_1.isAddressEqual)(token, address_js_2.ethAddressInContracts)) ||
(0, index_js_1.isAddressEqual)(token, baseToken)) {
mintValue = baseCost + operatorTip + amount;
let providedValue = isETHBasedChain ? value : mintValue;
if (!providedValue || providedValue === 0n)
providedValue = mintValue;
if (baseCost > providedValue)
throw new bridge_js_1.BaseFeeHigherThanValueError(baseCost, providedValue);
value = isETHBasedChain ? providedValue : 0n;
bridgeAddress = bridgeAddresses.sharedL1;
data = (0, index_js_1.encodeFunctionData)({
abi: abis_js_2.bridgehubAbi,
functionName: 'requestL2TransactionDirect',
args: [
{
chainId: BigInt(l2Client.chain.id),
mintValue: providedValue,
l2Contract: to,
l2Value: amount,
l2Calldata: '0x',
l2GasLimit,
l2GasPerPubdataByteLimit: gasPerPubdataByte,
factoryDeps: [],
refundRecipient,
},
],
});
}
else if ((0, index_js_1.isAddressEqual)(baseToken, address_js_2.ethAddressInContracts)) {
mintValue = baseCost + BigInt(operatorTip);
value = mintValue;
if (baseCost > mintValue)
throw new bridge_js_1.BaseFeeHigherThanValueError(baseCost, mintValue);
bridgeAddress ??= bridgeAddresses.sharedL1;
data = (0, index_js_1.encodeFunctionData)({
abi: abis_js_2.bridgehubAbi,
functionName: 'requestL2TransactionTwoBridges',
args: [
{
chainId: BigInt(l2Client.chain.id),
mintValue,
l2Value: 0n,
l2GasLimit,
l2GasPerPubdataByteLimit: gasPerPubdataByte,
refundRecipient,
secondBridgeAddress: bridgeAddress,
secondBridgeValue: 0n,
secondBridgeCalldata: await getSecondBridgeCalldata(client, bridgeAddresses.l1NativeTokenVault, token, amount, to),
},
],
});
}
else if ((0, index_js_1.isAddressEqual)(token, address_js_2.ethAddressInContracts)) {
mintValue = baseCost + operatorTip;
value = amount;
if (baseCost > mintValue)
throw new bridge_js_1.BaseFeeHigherThanValueError(baseCost, mintValue);
bridgeAddress = bridgeAddresses.sharedL1;
data = (0, index_js_1.encodeFunctionData)({
abi: abis_js_2.bridgehubAbi,
functionName: 'requestL2TransactionTwoBridges',
args: [
{
chainId: BigInt(l2Client.chain.id),
mintValue,
l2Value: 0n,
l2GasLimit,
l2GasPerPubdataByteLimit: gasPerPubdataByte,
refundRecipient,
secondBridgeAddress: bridgeAddress,
secondBridgeValue: amount,
secondBridgeCalldata: await getSecondBridgeCalldata(client, bridgeAddresses.l1NativeTokenVault, address_js_2.ethAddressInContracts, amount, to),
},
],
});
}
else {
mintValue = baseCost + operatorTip;
value ??= 0n;
if (baseCost > mintValue)
throw new bridge_js_1.BaseFeeHigherThanValueError(baseCost, mintValue);
bridgeAddress ??= bridgeAddresses.sharedL1;
data = (0, index_js_1.encodeFunctionData)({
abi: abis_js_2.bridgehubAbi,
functionName: 'requestL2TransactionTwoBridges',
args: [
{
chainId: BigInt(l2Client.chain.id),
mintValue,
l2Value: 0n,
l2GasLimit,
l2GasPerPubdataByteLimit: gasPerPubdataByte,
refundRecipient,
secondBridgeAddress: bridgeAddress,
secondBridgeValue: 0n,
secondBridgeCalldata: await getSecondBridgeCalldata(client, bridgeAddresses.l1NativeTokenVault, token, amount, to),
},
],
});
}
return {
mintValue,
tx: {
bridgeAddress,
to: bridgehub,
data,
value,
gasPrice,
maxFeePerGas,
maxPriorityFeePerGas,
...rest,
},
};
}
async function approveTokens(client, chain, bridgeAddress, baseToken, mintValue, account, token, amount, approveToken, approveBaseToken) {
if ((0, index_js_1.isAddressEqual)(baseToken, address_js_2.ethAddressInContracts)) {
if (approveToken) {
const overrides = typeof approveToken === 'boolean' ? {} : approveToken;
const allowance = await (0, getL1Allowance_js_1.getL1Allowance)(client, {
token,
bridgeAddress,
account,
});
if (allowance < amount) {
const hash = await (0, writeContract_js_1.writeContract)(client, {
chain,
account,
address: token,
abi: abis_js_1.erc20Abi,
functionName: 'approve',
args: [bridgeAddress, amount],
...overrides,
});
await (0, waitForTransactionReceipt_js_1.waitForTransactionReceipt)(client, { hash });
}
}
return;
}
if ((0, index_js_1.isAddressEqual)(token, address_js_2.ethAddressInContracts)) {
if (approveBaseToken) {
const overrides = typeof approveToken === 'boolean' ? {} : approveToken;
const allowance = await (0, getL1Allowance_js_1.getL1Allowance)(client, {
token: baseToken,
bridgeAddress,
account,
});
if (allowance < mintValue) {
const hash = await (0, writeContract_js_1.writeContract)(client, {
chain,
account,
address: baseToken,
abi: abis_js_1.erc20Abi,
functionName: 'approve',
args: [bridgeAddress, mintValue],
...overrides,
});
await (0, waitForTransactionReceipt_js_1.waitForTransactionReceipt)(client, { hash });
}
return;
}
}
if ((0, index_js_1.isAddressEqual)(token, baseToken)) {
if (approveToken || approveBaseToken) {
const overrides = typeof approveToken === 'boolean'
? {}
: (approveToken ?? typeof approveBaseToken === 'boolean')
? {}
: approveBaseToken;
const allowance = await (0, getL1Allowance_js_1.getL1Allowance)(client, {
token: baseToken,
bridgeAddress,
account,
});
if (allowance < mintValue) {
const hash = await (0, writeContract_js_1.writeContract)(client, {
chain,
account,
address: baseToken,
abi: abis_js_1.erc20Abi,
functionName: 'approve',
args: [bridgeAddress, mintValue],
...overrides,
});
await (0, waitForTransactionReceipt_js_1.waitForTransactionReceipt)(client, { hash });
}
}
return;
}
if (approveBaseToken) {
const overrides = typeof approveToken === 'boolean' ? {} : approveToken;
const allowance = await (0, getL1Allowance_js_1.getL1Allowance)(client, {
token: baseToken,
bridgeAddress,
account,
});
if (allowance < mintValue) {
const hash = await (0, writeContract_js_1.writeContract)(client, {
chain,
account,
address: baseToken,
abi: abis_js_1.erc20Abi,
functionName: 'approve',
args: [bridgeAddress, mintValue],
...overrides,
});
await (0, waitForTransactionReceipt_js_1.waitForTransactionReceipt)(client, { hash });
}
}
if (approveToken) {
const overrides = typeof approveToken === 'boolean' ? {} : approveToken;
const allowance = await (0, getL1Allowance_js_1.getL1Allowance)(client, {
token,
bridgeAddress,
account,
});
if (allowance < amount) {
const hash = await (0, writeContract_js_1.writeContract)(client, {
chain,
account,
address: token,
abi: abis_js_1.erc20Abi,
functionName: 'approve',
args: [bridgeAddress, amount],
...overrides,
});
await (0, waitForTransactionReceipt_js_1.waitForTransactionReceipt)(client, { hash });
}
}
}
async function getL2BridgeTxFeeParams(client, l2Client, bridgehub, gasPrice, from, token, amount, to, gasPerPubdataByte, baseToken, l2GasLimit, bridgeAddress, customBridgeData) {
if (!l2Client.chain)
throw new chain_js_1.ClientChainNotConfiguredError();
let l2GasLimit_ = l2GasLimit;
if (!l2GasLimit_)
l2GasLimit_ = bridgeAddress
? await getL2GasLimitFromCustomBridge(client, l2Client, from, token, amount, to, gasPerPubdataByte, bridgeAddress, customBridgeData)
: await getL2GasLimitFromDefaultBridge(client, l2Client, from, token, amount, to, gasPerPubdataByte, baseToken);
const baseCost = await (0, readContract_js_1.readContract)(client, {
address: bridgehub,
abi: abis_js_2.bridgehubAbi,
functionName: 'l2TransactionBaseCost',
args: [BigInt(l2Client.chain.id), gasPrice, l2GasLimit_, gasPerPubdataByte],
});
return { l2GasLimit_, baseCost };
}
async function getL2GasLimitFromDefaultBridge(client, l2Client, from, token, amount, to, gasPerPubdataByte, baseToken) {
if ((0, index_js_1.isAddressEqual)(token, baseToken)) {
return await (0, estimateGasL1ToL2_js_1.estimateGasL1ToL2)(l2Client, {
chain: l2Client.chain,
account: from,
from,
to,
value: amount,
data: '0x',
gasPerPubdata: gasPerPubdataByte,
});
}
const value = 0n;
const bridgeAddresses = await (0, getDefaultBridgeAddresses_js_1.getDefaultBridgeAddresses)(l2Client);
const l1BridgeAddress = bridgeAddresses.sharedL1;
const l2BridgeAddress = bridgeAddresses.sharedL2;
const bridgeData = await encodeDefaultBridgeData(client, token);
const calldata = (0, index_js_1.encodeFunctionData)({
abi: (0, abitype_1.parseAbi)([
'function finalizeDeposit(address _l1Sender, address _l2Receiver, address _l1Token, uint256 _amount, bytes _data)',
]),
functionName: 'finalizeDeposit',
args: [
from,
to,
(0, index_js_1.isAddressEqual)(token, address_js_2.legacyEthAddress) ? address_js_2.ethAddressInContracts : token,
amount,
bridgeData,
],
});
return await (0, estimateGasL1ToL2_js_1.estimateGasL1ToL2)(l2Client, {
chain: l2Client.chain,
account: (0, applyL1ToL2Alias_js_1.applyL1ToL2Alias)(l1BridgeAddress),
to: l2BridgeAddress,
data: calldata,
gasPerPubdata: gasPerPubdataByte,
value,
});
}
async function getL2GasLimitFromCustomBridge(client, l2Client, from, token, amount, to, gasPerPubdataByte, bridgeAddress, customBridgeData) {
let customBridgeData_ = customBridgeData;
if (!customBridgeData_ || customBridgeData_ === '0x')
customBridgeData_ = await encodeDefaultBridgeData(client, token);
const l2BridgeAddress = await (0, readContract_js_1.readContract)(client, {
address: token,
abi: (0, abitype_1.parseAbi)([
'function l2BridgeAddress(uint256 _chainId) view returns (address)',
]),
functionName: 'l2BridgeAddress',
args: [BigInt(l2Client.chain.id)],
});
const calldata = (0, index_js_1.encodeFunctionData)({
abi: (0, abitype_1.parseAbi)([
'function finalizeDeposit(address _l1Sender, address _l2Receiver, address _l1Token, uint256 _amount, bytes _data)',
]),
functionName: 'finalizeDeposit',
args: [from, to, token, amount, customBridgeData_],
});
return await (0, estimateGasL1ToL2_js_1.estimateGasL1ToL2)(l2Client, {
chain: l2Client.chain,
account: from,
from: (0, applyL1ToL2Alias_js_1.applyL1ToL2Alias)(bridgeAddress),
to: l2BridgeAddress,
data: calldata,
gasPerPubdata: gasPerPubdataByte,
});
}
async function encodeDefaultBridgeData(client, token) {
let token_ = token;
if ((0, index_js_1.isAddressEqual)(token, address_js_2.legacyEthAddress))
token_ = address_js_2.ethAddressInContracts;
let name = 'Ether';
let symbol = 'ETH';
let decimals = 18n;
if (!(0, index_js_1.isAddressEqual)(token_, address_js_2.ethAddressInContracts)) {
name = await (0, readContract_js_1.readContract)(client, {
address: token_,
abi: abis_js_1.erc20Abi,
functionName: 'name',
args: [],
});
symbol = await (0, readContract_js_1.readContract)(client, {
address: token_,
abi: abis_js_1.erc20Abi,
functionName: 'symbol',
args: [],
});
decimals = BigInt(await (0, readContract_js_1.readContract)(client, {
address: token_,
abi: abis_js_1.erc20Abi,
functionName: 'decimals',
args: [],
}));
}
const nameBytes = (0, index_js_1.encodeAbiParameters)([{ type: 'string' }], [name]);
const symbolBytes = (0, index_js_1.encodeAbiParameters)([{ type: 'string' }], [symbol]);
const decimalsBytes = (0, index_js_1.encodeAbiParameters)([{ type: 'uint256' }], [decimals]);
return (0, index_js_1.encodeAbiParameters)([{ type: 'bytes' }, { type: 'bytes' }, { type: 'bytes' }], [nameBytes, symbolBytes, decimalsBytes]);
}
async function getSecondBridgeCalldata(client, l1NativeTokenVault, token, amount, to) {
let assetId;
let token_ = token;
if ((0, index_js_1.isAddressEqual)(token, address_js_2.legacyEthAddress))
token_ = address_js_2.ethAddressInContracts;
const assetIdFromNTV = await (0, readContract_js_1.readContract)(client, {
address: l1NativeTokenVault,
abi: (0, abitype_1.parseAbi)(['function assetId(address token) view returns (bytes32)']),
functionName: 'assetId',
args: [token_],
});
if (assetIdFromNTV && assetIdFromNTV !== bytes_js_1.zeroHash)
assetId = assetIdFromNTV;
else {
if (!client.chain)
throw new chain_js_1.ClientChainNotConfiguredError();
assetId = (0, index_js_1.keccak256)((0, index_js_1.encodeAbiParameters)([{ type: 'uint256' }, { type: 'address' }, { type: 'address' }], [BigInt(client.chain.id), address_js_2.l2NativeTokenVaultAddress, token_]));
}
const ntvData = (0, index_js_1.encodeAbiParameters)([{ type: 'uint256' }, { type: 'address' }, { type: 'address' }], [BigInt(amount), to, token_]);
const data = (0, index_js_1.encodeAbiParameters)([{ type: 'bytes32' }, { type: 'bytes' }], [assetId, ntvData]);
return (0, index_js_1.concatHex)(['0x01', data]);
}
async function getBridgeAddresses(client, l2Client) {
const addresses = await (0, getDefaultBridgeAddresses_js_1.getDefaultBridgeAddresses)(l2Client);
let l1Nullifier = addresses.l1Nullifier;
let l1NativeTokenVault = addresses.l1NativeTokenVault;
if (!l1Nullifier)
l1Nullifier = await (0, readContract_js_1.readContract)(client, {
address: addresses.sharedL1,
abi: (0, abitype_1.parseAbi)(['function L1_NULLIFIER() view returns (address)']),
functionName: 'L1_NULLIFIER',
args: [],
});
if (!l1NativeTokenVault)
l1NativeTokenVault = await (0, readContract_js_1.readContract)(client, {
address: addresses.sharedL1,
abi: (0, abitype_1.parseAbi)(['function nativeTokenVault() view returns (address)']),
functionName: 'nativeTokenVault',
args: [],
});
return {
...addresses,
l1Nullifier,
l1NativeTokenVault,
};
}
function scaleGasLimit(gasLimit) {
return (gasLimit * BigInt(12)) / BigInt(10);
}
async function getFeePrice(client) {
const client_ = client.extend(public_js_1.publicActions);
const block = await client_.getBlock();
const baseFee = typeof block.baseFeePerGas !== 'bigint'
? await client_.getGasPrice()
: block.baseFeePerGas;
const maxPriorityFeePerGas = await client_.estimateMaxPriorityFeePerGas();
return {
maxFeePerGas: (baseFee * 3n) / 2n + maxPriorityFeePerGas,
maxPriorityFeePerGas: maxPriorityFeePerGas,
};
}
//# sourceMappingURL=deposit.js.map

1
node_modules/viem/_cjs/zksync/actions/deposit.js.map generated vendored Normal file

File diff suppressed because one or more lines are too long

25
node_modules/viem/_cjs/zksync/actions/estimateFee.js generated vendored Normal file
View File

@@ -0,0 +1,25 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.estimateFee = estimateFee;
const parseAccount_js_1 = require("../../accounts/utils/parseAccount.js");
const fromHex_js_1 = require("../../utils/encoding/fromHex.js");
async function estimateFee(client, parameters) {
const { account: account_, ...request } = parameters;
const account = account_ ? (0, parseAccount_js_1.parseAccount)(account_) : client.account;
const formatters = client.chain?.formatters;
const formatted = formatters?.transactionRequest?.format({
...request,
from: account?.address,
}, 'estimateFee');
const result = await client.request({
method: 'zks_estimateFee',
params: [formatted],
});
return {
gasLimit: (0, fromHex_js_1.hexToBigInt)(result.gas_limit),
gasPerPubdataLimit: (0, fromHex_js_1.hexToBigInt)(result.gas_per_pubdata_limit),
maxPriorityFeePerGas: (0, fromHex_js_1.hexToBigInt)(result.max_priority_fee_per_gas),
maxFeePerGas: (0, fromHex_js_1.hexToBigInt)(result.max_fee_per_gas),
};
}
//# sourceMappingURL=estimateFee.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"estimateFee.js","sourceRoot":"","sources":["../../../zksync/actions/estimateFee.ts"],"names":[],"mappings":";;AAkBA,kCA8BC;AAhDD,0EAAmE;AAKnE,gEAA6D;AAatD,KAAK,UAAU,WAAW,CAI/B,MAAgE,EAChE,UAAiD;IAEjD,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,GAAG,UAAU,CAAA;IACpD,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAA;IAElE,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,EAAE,UAAU,CAAA;IAC3C,MAAM,SAAS,GAAG,UAAU,EAAE,kBAAkB,EAAE,MAAM,CACtD;QACE,GAAG,OAAO;QACV,IAAI,EAAE,OAAO,EAAE,OAAO;KACvB,EACD,aAAa,CACd,CAAA;IAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,iBAAiB;QACzB,MAAM,EAAE,CAAC,SAAS,CAAC;KACpB,CAAC,CAAA;IAEF,OAAO;QACL,QAAQ,EAAE,IAAA,wBAAW,EAAC,MAAM,CAAC,SAAS,CAAC;QACvC,kBAAkB,EAAE,IAAA,wBAAW,EAAC,MAAM,CAAC,qBAAqB,CAAC;QAC7D,oBAAoB,EAAE,IAAA,wBAAW,EAAC,MAAM,CAAC,wBAAwB,CAAC;QAClE,YAAY,EAAE,IAAA,wBAAW,EAAC,MAAM,CAAC,eAAe,CAAC;KAClD,CAAA;AACH,CAAC"}

View File

@@ -0,0 +1,19 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.estimateGasL1ToL2 = estimateGasL1ToL2;
const parseAccount_js_1 = require("../../accounts/utils/parseAccount.js");
async function estimateGasL1ToL2(client, parameters) {
const { account: account_, ...request } = parameters;
const account = account_ ? (0, parseAccount_js_1.parseAccount)(account_) : client.account;
const formatters = client.chain?.formatters;
const formatted = formatters?.transactionRequest?.format({
...request,
from: account?.address,
}, 'estimateGasL1ToL2');
const result = await client.request({
method: 'zks_estimateGasL1ToL2',
params: [formatted],
});
return result;
}
//# sourceMappingURL=estimateGasL1ToL2.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"estimateGasL1ToL2.js","sourceRoot":"","sources":["../../../zksync/actions/estimateGasL1ToL2.ts"],"names":[],"mappings":";;AAeA,8CAyBC;AAxCD,0EAAmE;AAe5D,KAAK,UAAU,iBAAiB,CAIrC,MAAgE,EAChE,UAAuD;IAEvD,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,GAAG,UAAU,CAAA;IACpD,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAA;IAElE,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,EAAE,UAAU,CAAA;IAC3C,MAAM,SAAS,GAAG,UAAU,EAAE,kBAAkB,EAAE,MAAM,CACtD;QACE,GAAG,OAAO;QACV,IAAI,EAAE,OAAO,EAAE,OAAO;KACvB,EACD,mBAAmB,CACpB,CAAA;IAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,uBAAuB;QAC/B,MAAM,EAAE,CAAC,SAAS,CAAC;KACpB,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC"}

View File

@@ -0,0 +1,99 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.finalizeWithdrawal = finalizeWithdrawal;
const abitype_1 = require("abitype");
const readContract_js_1 = require("../../actions/public/readContract.js");
const sendTransaction_js_1 = require("../../actions/wallet/sendTransaction.js");
const account_js_1 = require("../../errors/account.js");
const chain_js_1 = require("../../errors/chain.js");
const index_js_1 = require("../../utils/index.js");
const bridge_js_1 = require("../errors/bridge.js");
const getWithdrawalL2ToL1Log_js_1 = require("../utils/bridge/getWithdrawalL2ToL1Log.js");
const getWithdrawalLog_js_1 = require("../utils/bridge/getWithdrawalLog.js");
const getDefaultBridgeAddresses_js_1 = require("./getDefaultBridgeAddresses.js");
const getLogProof_js_1 = require("./getLogProof.js");
async function finalizeWithdrawal(client, parameters) {
const { account: account_ = client.account, client: l2Client, hash, index = 0, ...rest } = parameters;
const account = account_ ? (0, index_js_1.parseAccount)(account_) : client.account;
if (!account)
throw new account_js_1.AccountNotFoundError({
docsPath: '/docs/actions/wallet/sendTransaction',
});
if (!l2Client.chain)
throw new chain_js_1.ChainNotFoundError();
const finalizeWithdrawalParams = await getFinalizeWithdrawalParams(l2Client, {
hash,
index,
});
const l1Nullifier = (await getBridgeAddresses(client, l2Client)).l1Nullifier;
const data = (0, index_js_1.encodeFunctionData)({
abi: (0, abitype_1.parseAbi)([
'function finalizeDeposit((uint256 chainId, uint256 l2BatchNumber, uint256 l2MessageIndex, address l2Sender, uint16 l2TxNumberInBatch, bytes message, bytes32[] merkleProof) _finalizeWithdrawalParams)',
]),
functionName: 'finalizeDeposit',
args: [
{
chainId: BigInt(l2Client.chain.id),
l2BatchNumber: finalizeWithdrawalParams.l1BatchNumber,
l2MessageIndex: BigInt(finalizeWithdrawalParams.l2MessageIndex),
l2Sender: finalizeWithdrawalParams.sender,
l2TxNumberInBatch: Number(finalizeWithdrawalParams.l2TxNumberInBlock),
message: finalizeWithdrawalParams.message,
merkleProof: finalizeWithdrawalParams.proof,
},
],
});
return await (0, sendTransaction_js_1.sendTransaction)(client, {
account,
to: l1Nullifier,
data,
...rest,
});
}
async function getFinalizeWithdrawalParams(client, parameters) {
const { hash } = parameters;
const { log, l1BatchTxId } = await (0, getWithdrawalLog_js_1.getWithdrawalLog)(client, parameters);
const { l2ToL1LogIndex } = await (0, getWithdrawalL2ToL1Log_js_1.getWithdrawalL2ToL1Log)(client, parameters);
const sender = (0, index_js_1.slice)(log.topics[1], 12);
const proof = await (0, getLogProof_js_1.getLogProof)(client, {
txHash: hash,
index: l2ToL1LogIndex,
});
if (!proof) {
throw new bridge_js_1.WithdrawalLogNotFoundError({ hash });
}
const [message] = (0, index_js_1.decodeAbiParameters)([{ type: 'bytes' }], log.data);
return {
l1BatchNumber: log.l1BatchNumber,
l2MessageIndex: proof.id,
l2TxNumberInBlock: l1BatchTxId,
message,
sender,
proof: proof.proof,
};
}
async function getBridgeAddresses(client, l2Client) {
const addresses = await (0, getDefaultBridgeAddresses_js_1.getDefaultBridgeAddresses)(l2Client);
let l1Nullifier = addresses.l1Nullifier;
let l1NativeTokenVault = addresses.l1NativeTokenVault;
if (!l1Nullifier)
l1Nullifier = await (0, readContract_js_1.readContract)(client, {
address: addresses.sharedL1,
abi: (0, abitype_1.parseAbi)(['function L1_NULLIFIER() view returns (address)']),
functionName: 'L1_NULLIFIER',
args: [],
});
if (!l1NativeTokenVault)
l1NativeTokenVault = await (0, readContract_js_1.readContract)(client, {
address: addresses.sharedL1,
abi: (0, abitype_1.parseAbi)(['function nativeTokenVault() view returns (address)']),
functionName: 'nativeTokenVault',
args: [],
});
return {
...addresses,
l1Nullifier,
l1NativeTokenVault,
};
}
//# sourceMappingURL=finalizeWithdrawal.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"finalizeWithdrawal.js","sourceRoot":"","sources":["../../../zksync/actions/finalizeWithdrawal.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,18 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getAllBalances = getAllBalances;
const parseAccount_js_1 = require("../../accounts/utils/parseAccount.js");
const fromHex_js_1 = require("../../utils/encoding/fromHex.js");
async function getAllBalances(client, parameters) {
const { account: account_ } = parameters;
const account = account_ ? (0, parseAccount_js_1.parseAccount)(account_) : client.account;
const balances = await client.request({
method: 'zks_getAllAccountBalances',
params: [account.address],
});
const convertedBalances = {};
for (const token in balances)
convertedBalances[token] = (0, fromHex_js_1.hexToBigInt)(balances[token]);
return convertedBalances;
}
//# sourceMappingURL=getAllBalances.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getAllBalances.js","sourceRoot":"","sources":["../../../zksync/actions/getAllBalances.ts"],"names":[],"mappings":";;AAgBA,wCAiBC;AAhCD,0EAAmE;AAKnE,gEAA6D;AAUtD,KAAK,UAAU,cAAc,CAIlC,MAAgE,EAChE,UAA6C;IAE7C,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAA;IACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAA;IAClE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QACpC,MAAM,EAAE,2BAA2B;QACnC,MAAM,EAAE,CAAC,OAAQ,CAAC,OAAO,CAAC;KAC3B,CAAC,CAAA;IACF,MAAM,iBAAiB,GAA6B,EAAE,CAAA;IACtD,KAAK,MAAM,KAAK,IAAI,QAAQ;QACzB,iBAAyB,CAAC,KAAK,CAAC,GAAG,IAAA,wBAAW,EAAE,QAAgB,CAAC,KAAK,CAAC,CAAC,CAAA;IAC3E,OAAO,iBAAiB,CAAA;AAC1B,CAAC"}

View File

@@ -0,0 +1,8 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getBaseTokenL1Address = getBaseTokenL1Address;
async function getBaseTokenL1Address(client) {
const result = await client.request({ method: 'zks_getBaseTokenL1Address' });
return result;
}
//# sourceMappingURL=getBaseTokenL1Address.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getBaseTokenL1Address.js","sourceRoot":"","sources":["../../../zksync/actions/getBaseTokenL1Address.ts"],"names":[],"mappings":";;AAUA,sDAQC;AARM,KAAK,UAAU,qBAAqB,CAIzC,MAAgE;IAEhE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,2BAA2B,EAAE,CAAC,CAAA;IAC5E,OAAO,MAAM,CAAA;AACf,CAAC"}

View File

@@ -0,0 +1,11 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getBlockDetails = getBlockDetails;
async function getBlockDetails(client, parameters) {
const result = await client.request({
method: 'zks_getBlockDetails',
params: [parameters.number],
});
return result;
}
//# sourceMappingURL=getBlockDetails.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getBlockDetails.js","sourceRoot":"","sources":["../../../zksync/actions/getBlockDetails.ts"],"names":[],"mappings":";;AAcA,0CAYC;AAZM,KAAK,UAAU,eAAe,CAInC,MAAgE,EAChE,UAAqC;IAErC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;KAC5B,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC"}

View File

@@ -0,0 +1,8 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getBridgehubContractAddress = getBridgehubContractAddress;
async function getBridgehubContractAddress(client) {
const result = await client.request({ method: 'zks_getBridgehubContract' });
return result;
}
//# sourceMappingURL=getBridgehubContractAddress.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getBridgehubContractAddress.js","sourceRoot":"","sources":["../../../zksync/actions/getBridgehubContractAddress.ts"],"names":[],"mappings":";;AASA,kEAQC;AARM,KAAK,UAAU,2BAA2B,CAI/C,MAAgE;IAEhE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAC,CAAA;IAC3E,OAAO,MAAM,CAAA;AACf,CAAC"}

View File

@@ -0,0 +1,14 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getDefaultBridgeAddresses = getDefaultBridgeAddresses;
async function getDefaultBridgeAddresses(client) {
const addresses = await client.request({ method: 'zks_getBridgeContracts' });
return {
erc20L1: addresses.l1Erc20DefaultBridge,
sharedL1: addresses.l1SharedDefaultBridge,
sharedL2: addresses.l2SharedDefaultBridge,
l1Nullifier: addresses.l1Nullifier,
l1NativeTokenVault: addresses.l1NativeTokenVault,
};
}
//# sourceMappingURL=getDefaultBridgeAddresses.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getDefaultBridgeAddresses.js","sourceRoot":"","sources":["../../../zksync/actions/getDefaultBridgeAddresses.ts"],"names":[],"mappings":";;AASA,8DAeC;AAfM,KAAK,UAAU,yBAAyB,CAI7C,MAAgE;IAEhE,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAA;IAE5E,OAAO;QACL,OAAO,EAAE,SAAS,CAAC,oBAAoB;QACvC,QAAQ,EAAE,SAAS,CAAC,qBAAqB;QACzC,QAAQ,EAAE,SAAS,CAAC,qBAAqB;QACzC,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;KACjD,CAAA;AACH,CAAC"}

View File

@@ -0,0 +1,13 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getGasPerPubdata = getGasPerPubdata;
const fromHex_js_1 = require("../../utils/encoding/fromHex.js");
async function getGasPerPubdata(client) {
const result = await client.request({
method: 'zks_gasPerPubdata',
}, {
dedupe: true,
});
return (0, fromHex_js_1.hexToBigInt)(result);
}
//# sourceMappingURL=getGasPerPubdata.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getGasPerPubdata.js","sourceRoot":"","sources":["../../../zksync/actions/getGasPerPubdata.ts"],"names":[],"mappings":";;AASA,4CAgBC;AAtBD,gEAA6D;AAMtD,KAAK,UAAU,gBAAgB,CAIpC,MAAgE;IAEhE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CACjC;QACE,MAAM,EAAE,mBAAmB;KAC5B,EACD;QACE,MAAM,EAAE,IAAI;KACb,CACF,CAAA;IAED,OAAO,IAAA,wBAAW,EAAC,MAAM,CAAC,CAAA;AAC5B,CAAC"}

View File

@@ -0,0 +1,18 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getL1Allowance = getL1Allowance;
const parseAccount_js_1 = require("../../accounts/utils/parseAccount.js");
const readContract_js_1 = require("../../actions/public/readContract.js");
const abis_js_1 = require("../../constants/abis.js");
async function getL1Allowance(client, parameters) {
const { token, bridgeAddress, blockTag, account: account_ } = parameters;
const account = account_ ? (0, parseAccount_js_1.parseAccount)(account_) : client.account;
return await (0, readContract_js_1.readContract)(client, {
abi: abis_js_1.erc20Abi,
address: token,
functionName: 'allowance',
args: [account.address, bridgeAddress],
blockTag: blockTag,
});
}
//# sourceMappingURL=getL1Allowance.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getL1Allowance.js","sourceRoot":"","sources":["../../../zksync/actions/getL1Allowance.ts"],"names":[],"mappings":";;AAwBA,wCAkBC;AAzCD,0EAAmE;AACnE,0EAAmE;AAGnE,qDAAkD;AAmB3C,KAAK,UAAU,cAAc,CAIlC,MAAyC,EACzC,UAA6C;IAE7C,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAA;IAExE,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAA;IAElE,OAAO,MAAM,IAAA,8BAAY,EAAC,MAAM,EAAE;QAChC,GAAG,EAAE,kBAAQ;QACb,OAAO,EAAE,KAAK;QACd,YAAY,EAAE,WAAW;QACzB,IAAI,EAAE,CAAC,OAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;QACvC,QAAQ,EAAE,QAAQ;KACnB,CAAC,CAAA;AACJ,CAAC"}

22
node_modules/viem/_cjs/zksync/actions/getL1Balance.js generated vendored Normal file
View File

@@ -0,0 +1,22 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getL1Balance = getL1Balance;
const parseAccount_js_1 = require("../../accounts/utils/parseAccount.js");
const getBalance_js_1 = require("../../actions/public/getBalance.js");
const address_js_1 = require("../constants/address.js");
const isEth_js_1 = require("../utils/isEth.js");
const getL1TokenBalance_js_1 = require("./getL1TokenBalance.js");
async function getL1Balance(client, ...[parameters = {}]) {
const { account: account_ = client.account, blockNumber, blockTag, token = address_js_1.legacyEthAddress, } = parameters;
const account = account_ ? (0, parseAccount_js_1.parseAccount)(account_) : undefined;
if ((0, isEth_js_1.isEth)(token))
return await (0, getBalance_js_1.getBalance)(client, {
address: account.address,
blockNumber,
blockTag,
});
return await (0, getL1TokenBalance_js_1.getL1TokenBalance)(client, {
...parameters,
});
}
//# sourceMappingURL=getL1Balance.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getL1Balance.js","sourceRoot":"","sources":["../../../zksync/actions/getL1Balance.ts"],"names":[],"mappings":";;AAuCA,oCA4BC;AAlED,0EAAmE;AACnE,sEAG2C;AAQ3C,wDAA0D;AAC1D,gDAAyC;AACzC,iEAG+B;AAqBxB,KAAK,UAAU,YAAY,CAIhC,MAAyC,EACzC,GAAG,CAAC,UAAU,GAAG,EAAE,CAEuB;IAE1C,MAAM,EACJ,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAClC,WAAW,EACX,QAAQ,EACR,KAAK,GAAG,6BAAgB,GACzB,GAAG,UAAU,CAAA;IAEd,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE7D,IAAI,IAAA,gBAAK,EAAC,KAAK,CAAC;QACd,OAAO,MAAM,IAAA,0BAAU,EAAC,MAAM,EAAE;YAC9B,OAAO,EAAE,OAAQ,CAAC,OAAO;YACzB,WAAW;YACX,QAAQ;SACe,CAAC,CAAA;IAE5B,OAAO,MAAM,IAAA,wCAAiB,EAAC,MAAM,EAAE;QACrC,GAAI,UAAmD;KACxD,CAAC,CAAA;AACJ,CAAC"}

View File

@@ -0,0 +1,12 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getL1BatchBlockRange = getL1BatchBlockRange;
const fromHex_js_1 = require("../../utils/encoding/fromHex.js");
async function getL1BatchBlockRange(client, parameters) {
const [number_1, number_2] = await client.request({
method: 'zks_getL1BatchBlockRange',
params: [parameters.l1BatchNumber],
});
return [(0, fromHex_js_1.hexToNumber)(number_1), (0, fromHex_js_1.hexToNumber)(number_2)];
}
//# sourceMappingURL=getL1BatchBlockRange.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getL1BatchBlockRange.js","sourceRoot":"","sources":["../../../zksync/actions/getL1BatchBlockRange.ts"],"names":[],"mappings":";;AAaA,oDAYC;AArBD,gEAA6D;AAStD,KAAK,UAAU,oBAAoB,CAIxC,MAAgE,EAChE,UAA0C;IAE1C,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAChD,MAAM,EAAE,0BAA0B;QAClC,MAAM,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;KACnC,CAAC,CAAA;IACF,OAAO,CAAC,IAAA,wBAAW,EAAC,QAAQ,CAAC,EAAE,IAAA,wBAAW,EAAC,QAAQ,CAAC,CAAC,CAAA;AACvD,CAAC"}

View File

@@ -0,0 +1,11 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getL1BatchDetails = getL1BatchDetails;
async function getL1BatchDetails(client, parameters) {
const result = await client.request({
method: 'zks_getL1BatchDetails',
params: [parameters.number],
});
return result;
}
//# sourceMappingURL=getL1BatchDetails.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getL1BatchDetails.js","sourceRoot":"","sources":["../../../zksync/actions/getL1BatchDetails.ts"],"names":[],"mappings":";;AAcA,8CAYC;AAZM,KAAK,UAAU,iBAAiB,CAIrC,MAAgE,EAChE,UAAuC;IAEvC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,uBAAuB;QAC/B,MAAM,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;KAC5B,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC"}

View File

@@ -0,0 +1,8 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getL1BatchNumber = getL1BatchNumber;
async function getL1BatchNumber(client) {
const result = await client.request({ method: 'zks_L1BatchNumber' });
return result;
}
//# sourceMappingURL=getL1BatchNumber.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getL1BatchNumber.js","sourceRoot":"","sources":["../../../zksync/actions/getL1BatchNumber.ts"],"names":[],"mappings":";;AASA,4CAQC;AARM,KAAK,UAAU,gBAAgB,CAIpC,MAAgE;IAEhE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAAA;IACpE,OAAO,MAAM,CAAA;AACf,CAAC"}

View File

@@ -0,0 +1,8 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getL1ChainId = getL1ChainId;
async function getL1ChainId(client) {
const result = await client.request({ method: 'zks_L1ChainId' });
return result;
}
//# sourceMappingURL=getL1ChainId.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getL1ChainId.js","sourceRoot":"","sources":["../../../zksync/actions/getL1ChainId.ts"],"names":[],"mappings":";;AAUA,oCAQC;AARM,KAAK,UAAU,YAAY,CAIhC,MAAgE;IAEhE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAA;IAChE,OAAO,MAAM,CAAA;AACf,CAAC"}

View File

@@ -0,0 +1,21 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getL1TokenAddress = getL1TokenAddress;
const readContract_js_1 = require("../../actions/public/readContract.js");
const index_js_1 = require("../../utils/index.js");
const abis_js_1 = require("../constants/abis.js");
const address_js_1 = require("../constants/address.js");
const getDefaultBridgeAddresses_js_1 = require("./getDefaultBridgeAddresses.js");
async function getL1TokenAddress(client, parameters) {
const { token } = parameters;
if ((0, index_js_1.isAddressEqual)(token, address_js_1.legacyEthAddress))
return address_js_1.legacyEthAddress;
const bridgeAddress = (await (0, getDefaultBridgeAddresses_js_1.getDefaultBridgeAddresses)(client)).sharedL2;
return await (0, readContract_js_1.readContract)(client, {
address: bridgeAddress,
abi: abis_js_1.l2SharedBridgeAbi,
functionName: 'l1TokenAddress',
args: [token],
});
}
//# sourceMappingURL=getL1TokenAddress.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getL1TokenAddress.js","sourceRoot":"","sources":["../../../zksync/actions/getL1TokenAddress.ts"],"names":[],"mappings":";;AAwCA,8CAkBC;AAzDD,0EAAmE;AAKnE,mDAAqD;AACrD,kDAAwD;AACxD,wDAA0D;AAC1D,iFAA0E;AA+BnE,KAAK,UAAU,iBAAiB,CAIrC,MAAyC,EACzC,UAAuC;IAEvC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,CAAA;IAC5B,IAAI,IAAA,yBAAc,EAAC,KAAK,EAAE,6BAAgB,CAAC;QAAE,OAAO,6BAAgB,CAAA;IAEpE,MAAM,aAAa,GAAG,CAAC,MAAM,IAAA,wDAAyB,EAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;IAExE,OAAO,MAAM,IAAA,8BAAY,EAAC,MAAM,EAAE;QAChC,OAAO,EAAE,aAAa;QACtB,GAAG,EAAE,2BAAiB;QACtB,YAAY,EAAE,gBAAgB;QAC9B,IAAI,EAAE,CAAC,KAAK,CAAC;KACd,CAAC,CAAA;AACJ,CAAC"}

View File

@@ -0,0 +1,23 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getL1TokenBalance = getL1TokenBalance;
const parseAccount_js_1 = require("../../accounts/utils/parseAccount.js");
const index_js_1 = require("../../actions/index.js");
const abis_js_1 = require("../../constants/abis.js");
const token_is_eth_js_1 = require("../errors/token-is-eth.js");
const isEth_js_1 = require("../utils/isEth.js");
async function getL1TokenBalance(client, parameters) {
const { account: account_ = client.account, blockTag, blockNumber, token, } = parameters;
if ((0, isEth_js_1.isEth)(token))
throw new token_is_eth_js_1.TokenIsEthError();
const account = account_ ? (0, parseAccount_js_1.parseAccount)(account_) : client.account;
return await (0, index_js_1.readContract)(client, {
abi: abis_js_1.erc20Abi,
address: token,
functionName: 'balanceOf',
args: [account.address],
blockNumber: blockNumber,
blockTag: blockTag,
});
}
//# sourceMappingURL=getL1TokenBalance.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getL1TokenBalance.js","sourceRoot":"","sources":["../../../zksync/actions/getL1TokenBalance.ts"],"names":[],"mappings":";;AAuCA,8CA0BC;AAhED,0EAAmE;AACnE,qDAAqD;AAGrD,qDAAkD;AAMlD,+DAGkC;AAClC,gDAAyC;AAwBlC,KAAK,UAAU,iBAAiB,CAIrC,MAAyC,EACzC,UAAgD;IAEhD,MAAM,EACJ,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAClC,QAAQ,EACR,WAAW,EACX,KAAK,GACN,GAAG,UAAU,CAAA;IAEd,IAAI,IAAA,gBAAK,EAAC,KAAM,CAAC;QAAE,MAAM,IAAI,iCAAe,EAAE,CAAA;IAE9C,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAA;IAElE,OAAO,MAAM,IAAA,uBAAY,EAAC,MAAM,EAAE;QAChC,GAAG,EAAE,kBAAQ;QACb,OAAO,EAAE,KAAM;QACf,YAAY,EAAE,WAAW;QACzB,IAAI,EAAE,CAAC,OAAQ,CAAC,OAAO,CAAC;QACxB,WAAW,EAAE,WAAW;QACxB,QAAQ,EAAE,QAAQ;KACnB,CAAC,CAAA;AACJ,CAAC"}

View File

@@ -0,0 +1,25 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getL2TokenAddress = getL2TokenAddress;
const readContract_js_1 = require("../../actions/public/readContract.js");
const index_js_1 = require("../../utils/index.js");
const abis_js_1 = require("../constants/abis.js");
const address_js_1 = require("../constants/address.js");
const getBaseTokenL1Address_js_1 = require("./getBaseTokenL1Address.js");
const getDefaultBridgeAddresses_js_1 = require("./getDefaultBridgeAddresses.js");
async function getL2TokenAddress(client, parameters) {
let { token, bridgeAddress } = parameters;
if ((0, index_js_1.isAddressEqual)(token, address_js_1.legacyEthAddress))
token = address_js_1.ethAddressInContracts;
const baseToken = await (0, getBaseTokenL1Address_js_1.getBaseTokenL1Address)(client);
if ((0, index_js_1.isAddressEqual)(token, baseToken))
return address_js_1.l2BaseTokenAddress;
bridgeAddress ??= (await (0, getDefaultBridgeAddresses_js_1.getDefaultBridgeAddresses)(client)).sharedL2;
return await (0, readContract_js_1.readContract)(client, {
address: bridgeAddress,
abi: abis_js_1.l2SharedBridgeAbi,
functionName: 'l2TokenAddress',
args: [token],
});
}
//# sourceMappingURL=getL2TokenAddress.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getL2TokenAddress.js","sourceRoot":"","sources":["../../../zksync/actions/getL2TokenAddress.ts"],"names":[],"mappings":";;AAgDA,8CAqBC;AApED,0EAAmE;AAKnE,mDAAqD;AACrD,kDAAwD;AACxD,wDAIgC;AAChC,yEAAkE;AAClE,iFAA0E;AAkCnE,KAAK,UAAU,iBAAiB,CAIrC,MAAyC,EACzC,UAAuC;IAEvC,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,UAAU,CAAA;IACzC,IAAI,IAAA,yBAAc,EAAC,KAAK,EAAE,6BAAgB,CAAC;QAAE,KAAK,GAAG,kCAAqB,CAAA;IAE1E,MAAM,SAAS,GAAG,MAAM,IAAA,gDAAqB,EAAC,MAAM,CAAC,CAAA;IACrD,IAAI,IAAA,yBAAc,EAAC,KAAK,EAAE,SAAS,CAAC;QAAE,OAAO,+BAAkB,CAAA;IAE/D,aAAa,KAAK,CAAC,MAAM,IAAA,wDAAyB,EAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;IAEpE,OAAO,MAAM,IAAA,8BAAY,EAAC,MAAM,EAAE;QAChC,OAAO,EAAE,aAAa;QACtB,GAAG,EAAE,2BAAiB;QACtB,YAAY,EAAE,gBAAgB;QAC9B,IAAI,EAAE,CAAC,KAAK,CAAC;KACd,CAAC,CAAA;AACJ,CAAC"}

11
node_modules/viem/_cjs/zksync/actions/getLogProof.js generated vendored Normal file
View File

@@ -0,0 +1,11 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getLogProof = getLogProof;
async function getLogProof(client, parameters) {
const result = await client.request({
method: 'zks_getL2ToL1LogProof',
params: [parameters.txHash, parameters.index],
});
return result;
}
//# sourceMappingURL=getLogProof.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getLogProof.js","sourceRoot":"","sources":["../../../zksync/actions/getLogProof.ts"],"names":[],"mappings":";;AAeA,kCAYC;AAZM,KAAK,UAAU,WAAW,CAI/B,MAAgE,EAChE,UAAiC;IAEjC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,uBAAuB;QAC/B,MAAM,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC;KAC9C,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC"}

View File

@@ -0,0 +1,8 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getMainContractAddress = getMainContractAddress;
async function getMainContractAddress(client) {
const address = await client.request({ method: 'zks_getMainContract' });
return address;
}
//# sourceMappingURL=getMainContractAddress.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getMainContractAddress.js","sourceRoot":"","sources":["../../../zksync/actions/getMainContractAddress.ts"],"names":[],"mappings":";;AAUA,wDAQC;AARM,KAAK,UAAU,sBAAsB,CAI1C,MAAgE;IAEhE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAA;IACvE,OAAO,OAAO,CAAA;AAChB,CAAC"}

View File

@@ -0,0 +1,12 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getRawBlockTransactions = getRawBlockTransactions;
const camelCaseKeys_js_1 = require("../utils/camelCaseKeys.js");
async function getRawBlockTransactions(client, parameters) {
const result = await client.request({
method: 'zks_getRawBlockTransactions',
params: [parameters.number],
});
return (0, camelCaseKeys_js_1.camelCaseKeys)(result);
}
//# sourceMappingURL=getRawBlockTransactions.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getRawBlockTransactions.js","sourceRoot":"","sources":["../../../zksync/actions/getRawBlockTransactions.ts"],"names":[],"mappings":";;AAcA,0DAYC;AAnBD,gEAAyD;AAOlD,KAAK,UAAU,uBAAuB,CAI3C,MAAgE,EAChE,UAA6C;IAE7C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,6BAA6B;QACrC,MAAM,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;KAC5B,CAAC,CAAA;IACF,OAAO,IAAA,gCAAa,EAAC,MAAM,CAAsC,CAAA;AACnE,CAAC"}

View File

@@ -0,0 +1,8 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getTestnetPaymasterAddress = getTestnetPaymasterAddress;
async function getTestnetPaymasterAddress(client) {
const result = await client.request({ method: 'zks_getTestnetPaymaster' });
return result;
}
//# sourceMappingURL=getTestnetPaymasterAddress.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getTestnetPaymasterAddress.js","sourceRoot":"","sources":["../../../zksync/actions/getTestnetPaymasterAddress.ts"],"names":[],"mappings":";;AAUA,gEAQC;AARM,KAAK,UAAU,0BAA0B,CAI9C,MAAgE;IAEhE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC,CAAA;IAC1E,OAAO,MAAM,CAAA;AACf,CAAC"}

View File

@@ -0,0 +1,11 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getTransactionDetails = getTransactionDetails;
async function getTransactionDetails(client, parameters) {
const result = await client.request({
method: 'zks_getTransactionDetails',
params: [parameters.txHash],
});
return result;
}
//# sourceMappingURL=getTransactionDetails.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getTransactionDetails.js","sourceRoot":"","sources":["../../../zksync/actions/getTransactionDetails.ts"],"names":[],"mappings":";;AAcA,sDAYC;AAZM,KAAK,UAAU,qBAAqB,CAIzC,MAAgE,EAChE,UAA2C;IAE3C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,EAAE,2BAA2B;QACnC,MAAM,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;KAC5B,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC"}

View File

@@ -0,0 +1,35 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.isWithdrawalFinalized = isWithdrawalFinalized;
const readContract_js_1 = require("../../actions/public/readContract.js");
const chain_js_1 = require("../../errors/chain.js");
const abis_js_1 = require("../constants/abis.js");
const bridge_js_1 = require("../errors/bridge.js");
const getWithdrawalL2ToL1Log_js_1 = require("../utils/bridge/getWithdrawalL2ToL1Log.js");
const getWithdrawalLog_js_1 = require("../utils/bridge/getWithdrawalLog.js");
const getDefaultBridgeAddresses_js_1 = require("./getDefaultBridgeAddresses.js");
const getLogProof_js_1 = require("./getLogProof.js");
async function isWithdrawalFinalized(client, parameters) {
const { client: l2Client, hash, index = 0 } = parameters;
if (!l2Client.chain)
throw new chain_js_1.ChainNotFoundError();
const { log } = await (0, getWithdrawalLog_js_1.getWithdrawalLog)(l2Client, { hash, index });
const { l2ToL1LogIndex } = await (0, getWithdrawalL2ToL1Log_js_1.getWithdrawalL2ToL1Log)(l2Client, {
hash,
index,
});
const proof = await (0, getLogProof_js_1.getLogProof)(l2Client, {
txHash: hash,
index: l2ToL1LogIndex,
});
if (!proof)
throw new bridge_js_1.WithdrawalLogNotFoundError({ hash });
const l1Bridge = (await (0, getDefaultBridgeAddresses_js_1.getDefaultBridgeAddresses)(l2Client)).sharedL1;
return await (0, readContract_js_1.readContract)(client, {
address: l1Bridge,
abi: abis_js_1.l1SharedBridgeAbi,
functionName: 'isWithdrawalFinalized',
args: [BigInt(l2Client.chain.id), log.l1BatchNumber, BigInt(proof.id)],
});
}
//# sourceMappingURL=isWithdrawalFinalized.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"isWithdrawalFinalized.js","sourceRoot":"","sources":["../../../zksync/actions/isWithdrawalFinalized.ts"],"names":[],"mappings":";;AAmEA,sDAoCC;AAtGD,0EAAmE;AAGnE,oDAG8B;AAG9B,kDAAwD;AACxD,mDAG4B;AAE5B,yFAAkF;AAClF,6EAAsE;AACtE,iFAA0E;AAC1E,qDAA8C;AAgDvC,KAAK,UAAU,qBAAqB,CAMzC,MAAyC,EACzC,UAA+D;IAE/D,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,UAAU,CAAA;IAExD,IAAI,CAAC,QAAQ,CAAC,KAAK;QAAE,MAAM,IAAI,6BAAkB,EAAE,CAAA;IAEnD,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,IAAA,sCAAgB,EAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IACjE,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,IAAA,kDAAsB,EAAC,QAAQ,EAAE;QAChE,IAAI;QACJ,KAAK;KACN,CAAC,CAAA;IAKF,MAAM,KAAK,GAAG,MAAM,IAAA,4BAAW,EAAC,QAAQ,EAAE;QACxC,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,cAAe;KACvB,CAAC,CAAA;IACF,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,sCAA0B,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;IAE1D,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAA,wDAAyB,EAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;IAErE,OAAO,MAAM,IAAA,8BAAY,EAAC,MAAM,EAAE;QAChC,OAAO,EAAE,QAAQ;QACjB,GAAG,EAAE,2BAAiB;QACtB,YAAY,EAAE,uBAAuB;QACrC,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,aAAc,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;KACxE,CAAC,CAAA;AACJ,CAAC"}

112
node_modules/viem/_cjs/zksync/actions/requestExecute.js generated vendored Normal file
View File

@@ -0,0 +1,112 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.requestExecute = requestExecute;
const generatePrivateKey_js_1 = require("../../accounts/generatePrivateKey.js");
const privateKeyToAddress_js_1 = require("../../accounts/utils/privateKeyToAddress.js");
const readContract_js_1 = require("../../actions/public/readContract.js");
const sendTransaction_js_1 = require("../../actions/wallet/sendTransaction.js");
const public_js_1 = require("../../clients/decorators/public.js");
const account_js_1 = require("../../errors/account.js");
const chain_js_1 = require("../../errors/chain.js");
const index_js_1 = require("../../utils/index.js");
const abis_js_1 = require("../constants/abis.js");
const address_js_1 = require("../constants/address.js");
const number_js_1 = require("../constants/number.js");
const bridge_js_1 = require("../errors/bridge.js");
const estimateGasL1ToL2_js_1 = require("./estimateGasL1ToL2.js");
const getBridgehubContractAddress_js_1 = require("./getBridgehubContractAddress.js");
async function requestExecute(client, parameters) {
let { account: account_ = client.account, chain: chain_ = client.chain, client: l2Client, contractAddress, calldata, l2Value = 0n, mintValue = 0n, operatorTip = 0n, factoryDeps = [], gasPerPubdataByte = number_js_1.requiredL1ToL2GasPerPubdataLimit, refundRecipient, l2GasLimit, value, gasPrice, maxFeePerGas, maxPriorityFeePerGas, ...rest } = parameters;
const account = account_ ? (0, index_js_1.parseAccount)(account_) : client.account;
if (!account)
throw new account_js_1.AccountNotFoundError({
docsPath: '/docs/actions/wallet/sendTransaction',
});
if (!l2Client.chain)
throw new chain_js_1.ClientChainNotConfiguredError();
const bridgehub = await (0, getBridgehubContractAddress_js_1.getBridgehubContractAddress)(l2Client);
const baseToken = await (0, readContract_js_1.readContract)(client, {
address: bridgehub,
abi: abis_js_1.bridgehubAbi,
functionName: 'baseToken',
args: [BigInt(l2Client.chain.id)],
});
const isETHBasedChain = (0, index_js_1.isAddressEqual)(baseToken, address_js_1.ethAddressInContracts);
refundRecipient ??= account.address;
l2GasLimit ??= await (0, estimateGasL1ToL2_js_1.estimateGasL1ToL2)(l2Client, {
chain: l2Client.chain,
account: l2Client.account ??
(0, index_js_1.parseAccount)((0, privateKeyToAddress_js_1.privateKeyToAddress)((0, generatePrivateKey_js_1.generatePrivateKey)())),
data: calldata,
to: contractAddress,
value: l2Value,
gasPerPubdata: gasPerPubdataByte,
factoryDeps,
});
let gasPriceForEstimation = maxFeePerGas || gasPrice;
if (!gasPriceForEstimation) {
const estimatedFee = await getFeePrice(client);
gasPriceForEstimation = estimatedFee.maxFeePerGas;
maxFeePerGas = estimatedFee.maxFeePerGas;
maxPriorityFeePerGas ??= estimatedFee.maxPriorityFeePerGas;
}
const baseCost = await (0, readContract_js_1.readContract)(client, {
address: bridgehub,
abi: abis_js_1.bridgehubAbi,
functionName: 'l2TransactionBaseCost',
args: [
BigInt(l2Client.chain.id),
gasPriceForEstimation,
l2GasLimit,
gasPerPubdataByte,
],
});
const l2Costs = baseCost + operatorTip + l2Value;
let providedValue = isETHBasedChain ? value : mintValue;
if (!providedValue || providedValue === 0n) {
providedValue = l2Costs;
}
if (baseCost > providedValue)
throw new bridge_js_1.BaseFeeHigherThanValueError(baseCost, providedValue);
const data = (0, index_js_1.encodeFunctionData)({
abi: abis_js_1.bridgehubAbi,
functionName: 'requestL2TransactionDirect',
args: [
{
chainId: BigInt(l2Client.chain.id),
mintValue: providedValue,
l2Contract: contractAddress,
l2Value: l2Value,
l2Calldata: calldata,
l2GasLimit: l2GasLimit,
l2GasPerPubdataByteLimit: gasPerPubdataByte,
factoryDeps: factoryDeps,
refundRecipient: refundRecipient,
},
],
});
return await (0, sendTransaction_js_1.sendTransaction)(client, {
chain: chain_,
account: account,
to: bridgehub,
value: isETHBasedChain ? providedValue : value,
data,
gasPrice,
maxFeePerGas,
maxPriorityFeePerGas,
...rest,
});
}
async function getFeePrice(client) {
const client_ = client.extend(public_js_1.publicActions);
const block = await client_.getBlock();
const baseFee = typeof block.baseFeePerGas !== 'bigint'
? await client_.getGasPrice()
: block.baseFeePerGas;
const maxPriorityFeePerGas = await client_.estimateMaxPriorityFeePerGas();
return {
maxFeePerGas: (baseFee * 3n) / 2n + maxPriorityFeePerGas,
maxPriorityFeePerGas: maxPriorityFeePerGas,
};
}
//# sourceMappingURL=requestExecute.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"requestExecute.js","sourceRoot":"","sources":["../../../zksync/actions/requestExecute.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,52 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.sendEip712Transaction = sendEip712Transaction;
const parseAccount_js_1 = require("../../accounts/utils/parseAccount.js");
const getChainId_js_1 = require("../../actions/public/getChainId.js");
const prepareTransactionRequest_js_1 = require("../../actions/wallet/prepareTransactionRequest.js");
const sendRawTransaction_js_1 = require("../../actions/wallet/sendRawTransaction.js");
const account_js_1 = require("../../errors/account.js");
const assertCurrentChain_js_1 = require("../../utils/chain/assertCurrentChain.js");
const getTransactionError_js_1 = require("../../utils/errors/getTransactionError.js");
const getAction_js_1 = require("../../utils/getAction.js");
const assertEip712Request_js_1 = require("../utils/assertEip712Request.js");
const signTransaction_js_1 = require("./signTransaction.js");
async function sendEip712Transaction(client, parameters) {
const { account: account_ = client.account, chain = client.chain } = parameters;
const account = account_ ? (0, parseAccount_js_1.parseAccount)(account_) : client.account;
if (!account)
throw new account_js_1.AccountNotFoundError({
docsPath: '/docs/actions/wallet/sendTransaction',
});
try {
(0, assertEip712Request_js_1.assertEip712Request)(parameters);
const request = await (0, prepareTransactionRequest_js_1.prepareTransactionRequest)(client, {
...parameters,
nonceManager: account.nonceManager,
parameters: ['gas', 'nonce', 'fees'],
});
let chainId;
if (chain !== null) {
chainId = await (0, getAction_js_1.getAction)(client, getChainId_js_1.getChainId, 'getChainId')({});
(0, assertCurrentChain_js_1.assertCurrentChain)({
currentChainId: chainId,
chain,
});
}
const serializedTransaction = await (0, signTransaction_js_1.signTransaction)(client, {
...request,
chainId,
});
return await (0, getAction_js_1.getAction)(client, sendRawTransaction_js_1.sendRawTransaction, 'sendRawTransaction')({
serializedTransaction,
});
}
catch (err) {
throw (0, getTransactionError_js_1.getTransactionError)(err, {
...parameters,
account,
chain: chain,
});
}
}
//# sourceMappingURL=sendEip712Transaction.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"sendEip712Transaction.js","sourceRoot":"","sources":["../../../zksync/actions/sendEip712Transaction.ts"],"names":[],"mappings":";;AAgFA,sDA8DC;AA7ID,0EAAmE;AACnE,sEAA+D;AAC/D,oGAA6F;AAC7F,sFAA+E;AAS/E,wDAA8D;AAG9D,mFAA4E;AAC5E,sFAGkD;AAClD,2DAAoD;AAEpD,4EAAqE;AACrE,6DAAsD;AAwD/C,KAAK,UAAU,qBAAqB,CAMzC,MAAyC,EACzC,UAKC;IAED,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,GAChE,UAAU,CAAA;IAEZ,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAA;IAElE,IAAI,CAAC,OAAO;QACV,MAAM,IAAI,iCAAoB,CAAC;YAC7B,QAAQ,EAAE,sCAAsC;SACjD,CAAC,CAAA;IAEJ,IAAI,CAAC;QACH,IAAA,4CAAmB,EAAC,UAAU,CAAC,CAAA;QAG/B,MAAM,OAAO,GAAG,MAAM,IAAA,wDAAyB,EAAC,MAAM,EAAE;YACtD,GAAG,UAAU;YACb,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;SAC9B,CAAC,CAAA;QAET,IAAI,OAA2B,CAAA;QAC/B,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,GAAG,MAAM,IAAA,wBAAS,EAAC,MAAM,EAAE,0BAAU,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAA;YAC/D,IAAA,0CAAkB,EAAC;gBACjB,cAAc,EAAE,OAAO;gBACvB,KAAK;aACN,CAAC,CAAA;QACJ,CAAC;QAED,MAAM,qBAAqB,GAAG,MAAM,IAAA,oCAAe,EAAC,MAAM,EAAE;YAC1D,GAAG,OAAO;YACV,OAAO;SACD,CAAC,CAAA;QAET,OAAO,MAAM,IAAA,wBAAS,EACpB,MAAM,EACN,0CAAkB,EAClB,oBAAoB,CACrB,CAAC;YACA,qBAAqB;SACtB,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAA,4CAAmB,EAAC,GAAgB,EAAE;YAC1C,GAAI,UAA4C;YAChD,OAAO;YACP,KAAK,EAAE,KAAc;SACtB,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}

View File

@@ -0,0 +1,12 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.sendTransaction = sendTransaction;
const sendTransaction_js_1 = require("../../actions/wallet/sendTransaction.js");
const isEip712Transaction_js_1 = require("../utils/isEip712Transaction.js");
const sendEip712Transaction_js_1 = require("./sendEip712Transaction.js");
async function sendTransaction(client, parameters) {
if ((0, isEip712Transaction_js_1.isEIP712Transaction)(parameters))
return (0, sendEip712Transaction_js_1.sendEip712Transaction)(client, parameters);
return (0, sendTransaction_js_1.sendTransaction)(client, parameters);
}
//# sourceMappingURL=sendTransaction.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"sendTransaction.js","sourceRoot":"","sources":["../../../zksync/actions/sendTransaction.ts"],"names":[],"mappings":";;AA2EA,0CAkBC;AAtFD,gFAAiG;AAIjG,4EAAqE;AACrE,yEAGmC;AA4D5B,KAAK,UAAU,eAAe,CAMnC,MAAyC,EACzC,UAA6E;IAE7E,IAAI,IAAA,4CAAmB,EAAC,UAAU,CAAC;QACjC,OAAO,IAAA,gDAAqB,EAC1B,MAAM,EACN,UAA6C,CAC9C,CAAA;IACH,OAAO,IAAA,oCAAoB,EACzB,MAAM,EACN,UAA4C,CAC7C,CAAA;AACH,CAAC"}

View File

@@ -0,0 +1,51 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.signEip712Transaction = signEip712Transaction;
const parseAccount_js_1 = require("../../accounts/utils/parseAccount.js");
const getChainId_js_1 = require("../../actions/public/getChainId.js");
const signTypedData_js_1 = require("../../actions/wallet/signTypedData.js");
const account_js_1 = require("../../errors/account.js");
const base_js_1 = require("../../errors/base.js");
const assertCurrentChain_js_1 = require("../../utils/chain/assertCurrentChain.js");
const getAction_js_1 = require("../../utils/getAction.js");
const assertEip712Request_js_1 = require("../utils/assertEip712Request.js");
async function signEip712Transaction(client, args) {
const { account: account_ = client.account, chain = client.chain, ...transaction } = args;
const account = account_ ? (0, parseAccount_js_1.parseAccount)(account_) : client.account;
if (!account)
throw new account_js_1.AccountNotFoundError({
docsPath: '/docs/actions/wallet/signTransaction',
});
(0, assertEip712Request_js_1.assertEip712Request)({
account,
chain,
...args,
});
if (!chain?.custom?.getEip712Domain)
throw new base_js_1.BaseError('`getEip712Domain` not found on chain.');
if (!chain?.serializers?.transaction)
throw new base_js_1.BaseError('transaction serializer not found on chain.');
const chainId = await (0, getAction_js_1.getAction)(client, getChainId_js_1.getChainId, 'getChainId')({});
if (chain !== null)
(0, assertCurrentChain_js_1.assertCurrentChain)({
currentChainId: chainId,
chain: chain,
});
const eip712Domain = chain?.custom.getEip712Domain({
...transaction,
chainId,
from: account.address,
type: 'eip712',
});
const customSignature = await (0, signTypedData_js_1.signTypedData)(client, {
...eip712Domain,
account,
});
return chain?.serializers?.transaction({
chainId,
...transaction,
customSignature,
type: 'eip712',
}, { r: '0x0', s: '0x0', v: 0n });
}
//# sourceMappingURL=signEip712Transaction.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"signEip712Transaction.js","sourceRoot":"","sources":["../../../zksync/actions/signEip712Transaction.ts"],"names":[],"mappings":";;AA4FA,sDA4DC;AAvJD,0EAAmE;AACnE,sEAA+D;AAK/D,4EAAqE;AAGrE,wDAA8D;AAC9D,kDAAgD;AAOhD,mFAA4E;AAC5E,2DAAoD;AAGpD,4EAGwC;AAmEjC,KAAK,UAAU,qBAAqB,CAKzC,MAAyC,EACzC,IAAoE;IAEpE,MAAM,EACJ,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAClC,KAAK,GAAG,MAAM,CAAC,KAAK,EACpB,GAAG,WAAW,EACf,GAAG,IAAI,CAAA;IAER,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAA;IAElE,IAAI,CAAC,OAAO;QACV,MAAM,IAAI,iCAAoB,CAAC;YAC7B,QAAQ,EAAE,sCAAsC;SACjD,CAAC,CAAA;IAEJ,IAAA,4CAAmB,EAAC;QAClB,OAAO;QACP,KAAK;QACL,GAAI,IAAsC;KAC3C,CAAC,CAAA;IAEF,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe;QACjC,MAAM,IAAI,mBAAS,CAAC,uCAAuC,CAAC,CAAA;IAC9D,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW;QAClC,MAAM,IAAI,mBAAS,CAAC,4CAA4C,CAAC,CAAA;IAEnE,MAAM,OAAO,GAAG,MAAM,IAAA,wBAAS,EAAC,MAAM,EAAE,0BAAU,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAA;IACrE,IAAI,KAAK,KAAK,IAAI;QAChB,IAAA,0CAAkB,EAAC;YACjB,cAAc,EAAE,OAAO;YACvB,KAAK,EAAE,KAAK;SACb,CAAC,CAAA;IAEJ,MAAM,YAAY,GAAG,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC;QACjD,GAAG,WAAW;QACd,OAAO;QACP,IAAI,EAAE,OAAO,CAAC,OAAO;QACrB,IAAI,EAAE,QAAQ;KACf,CAAC,CAAA;IAEF,MAAM,eAAe,GAAG,MAAM,IAAA,gCAAa,EAAC,MAAM,EAAE;QAClD,GAAG,YAAY;QACf,OAAO;KACR,CAAC,CAAA;IAEF,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,CACpC;QACE,OAAO;QACP,GAAG,WAAW;QACd,eAAe;QACf,IAAI,EAAE,QAAe;KACtB,EACD,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CACK,CAAA;AACtC,CAAC"}

View File

@@ -0,0 +1,12 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.signTransaction = signTransaction;
const signTransaction_js_1 = require("../../actions/wallet/signTransaction.js");
const isEip712Transaction_js_1 = require("../utils/isEip712Transaction.js");
const signEip712Transaction_js_1 = require("./signEip712Transaction.js");
async function signTransaction(client, args) {
if ((0, isEip712Transaction_js_1.isEIP712Transaction)(args))
return (0, signEip712Transaction_js_1.signEip712Transaction)(client, args);
return await (0, signTransaction_js_1.signTransaction)(client, args);
}
//# sourceMappingURL=signTransaction.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"signTransaction.js","sourceRoot":"","sources":["../../../zksync/actions/signTransaction.ts"],"names":[],"mappings":";;AAoFA,0CAUC;AAzFD,gFAA6F;AAW7F,4EAAqE;AACrE,yEAAkE;AAmE3D,KAAK,UAAU,eAAe,CAKnC,MAAyC,EACzC,IAA8D;IAE9D,IAAI,IAAA,4CAAmB,EAAC,IAAI,CAAC;QAAE,OAAO,IAAA,gDAAqB,EAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACzE,OAAO,MAAM,IAAA,oCAAgB,EAAC,MAAM,EAAE,IAAW,CAAC,CAAA;AACpD,CAAC"}

94
node_modules/viem/_cjs/zksync/actions/withdraw.js generated vendored Normal file
View File

@@ -0,0 +1,94 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.withdraw = withdraw;
const abitype_1 = require("abitype");
const readContract_js_1 = require("../../actions/public/readContract.js");
const account_js_1 = require("../../errors/account.js");
const chain_js_1 = require("../../errors/chain.js");
const index_js_1 = require("../../utils/index.js");
const abis_js_1 = require("../constants/abis.js");
const address_js_1 = require("../constants/address.js");
const getDefaultBridgeAddresses_js_1 = require("./getDefaultBridgeAddresses.js");
const getL1ChainId_js_1 = require("./getL1ChainId.js");
const getL2TokenAddress_js_1 = require("./getL2TokenAddress.js");
const sendTransaction_js_1 = require("./sendTransaction.js");
async function withdraw(client, parameters) {
let { account: account_ = client.account, chain: chain_ = client.chain, token = address_js_1.l2BaseTokenAddress, to, amount, bridgeAddress, ...rest } = parameters;
const account = account_ ? (0, index_js_1.parseAccount)(account_) : client.account;
if (!account)
throw new account_js_1.AccountNotFoundError({
docsPath: '/docs/actions/wallet/sendTransaction',
});
if (!to)
to = account.address;
let data;
let contract;
let value = 0n;
if ((0, index_js_1.isAddressEqual)(token, address_js_1.legacyEthAddress) ||
(0, index_js_1.isAddressEqual)(token, address_js_1.ethAddressInContracts))
token = await (0, getL2TokenAddress_js_1.getL2TokenAddress)(client, { token: address_js_1.ethAddressInContracts });
if ((0, index_js_1.isAddressEqual)(token, address_js_1.l2BaseTokenAddress)) {
data = (0, index_js_1.encodeFunctionData)({
abi: abis_js_1.ethTokenAbi,
functionName: 'withdraw',
args: [to],
});
value = amount;
contract = address_js_1.l2BaseTokenAddress;
}
else {
const assetId = await (0, readContract_js_1.readContract)(client, {
address: address_js_1.l2NativeTokenVaultAddress,
abi: (0, abitype_1.parseAbi)(['function assetId(address token) view returns (bytes32)']),
functionName: 'assetId',
args: [token],
});
const originChainId = await (0, readContract_js_1.readContract)(client, {
address: address_js_1.l2NativeTokenVaultAddress,
abi: (0, abitype_1.parseAbi)([
'function originChainId(bytes32 assetId) view returns (uint256)',
]),
functionName: 'originChainId',
args: [assetId],
});
const l1ChainId = await (0, getL1ChainId_js_1.getL1ChainId)(client);
const isTokenL1Native = originChainId === BigInt(l1ChainId) || token === address_js_1.ethAddressInContracts;
if (!bridgeAddress) {
bridgeAddress = isTokenL1Native
? (await (0, getDefaultBridgeAddresses_js_1.getDefaultBridgeAddresses)(client)).sharedL2
: address_js_1.l2AssetRouterAddress;
}
if (!isTokenL1Native) {
contract = address_js_1.l2AssetRouterAddress;
if (!chain_)
throw new chain_js_1.ClientChainNotConfiguredError();
const chainId = chain_.id;
const assetId = (0, index_js_1.keccak256)((0, index_js_1.encodeAbiParameters)([{ type: 'uint256' }, { type: 'address' }, { type: 'address' }], [BigInt(chainId), address_js_1.l2NativeTokenVaultAddress, token]));
const assetData = (0, index_js_1.encodeAbiParameters)([{ type: 'uint256' }, { type: 'address' }, { type: 'address' }], [BigInt(amount), to, token]);
data = (0, index_js_1.encodeFunctionData)({
abi: (0, abitype_1.parseAbi)([
'function withdraw(bytes32 _assetId, bytes _transferData)',
]),
functionName: 'withdraw',
args: [assetId, assetData],
});
}
else {
contract = bridgeAddress;
data = (0, index_js_1.encodeFunctionData)({
abi: abis_js_1.l2SharedBridgeAbi,
functionName: 'withdraw',
args: [to, token, amount],
});
}
}
return await (0, sendTransaction_js_1.sendTransaction)(client, {
chain: chain_,
account,
to: contract,
data,
value,
...rest,
});
}
//# sourceMappingURL=withdraw.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"withdraw.js","sourceRoot":"","sources":["../../../zksync/actions/withdraw.ts"],"names":[],"mappings":"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"}

15
node_modules/viem/_cjs/zksync/chainConfig.js generated vendored Normal file
View File

@@ -0,0 +1,15 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.chainConfig = void 0;
const formatters_js_1 = require("./formatters.js");
const serializers_js_1 = require("./serializers.js");
const getEip712Domain_js_1 = require("./utils/getEip712Domain.js");
exports.chainConfig = {
blockTime: 1_000,
formatters: formatters_js_1.formatters,
serializers: serializers_js_1.serializers,
custom: {
getEip712Domain: getEip712Domain_js_1.getEip712Domain,
},
};
//# sourceMappingURL=chainConfig.js.map

1
node_modules/viem/_cjs/zksync/chainConfig.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"chainConfig.js","sourceRoot":"","sources":["../../zksync/chainConfig.ts"],"names":[],"mappings":";;;AAAA,mDAA4C;AAC5C,qDAA8C;AAC9C,mEAA4D;AAE/C,QAAA,WAAW,GAAG;IACzB,SAAS,EAAE,KAAK;IAChB,UAAU,EAAV,0BAAU;IACV,WAAW,EAAX,4BAAW;IACX,MAAM,EAAE;QACN,eAAe,EAAf,oCAAe;KAChB;CACO,CAAA"}

18
node_modules/viem/_cjs/zksync/chains.js generated vendored Normal file
View File

@@ -0,0 +1,18 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.zksyncSepoliaTestnet = exports.zksyncLocalNode = exports.zksyncLocalHyperchainL1 = exports.zksyncLocalHyperchain = exports.zksyncLocalCustomHyperchain = exports.zksyncInMemoryNode = exports.zksync = void 0;
var zksync_js_1 = require("../chains/definitions/zksync.js");
Object.defineProperty(exports, "zksync", { enumerable: true, get: function () { return zksync_js_1.zksync; } });
var zksyncInMemoryNode_js_1 = require("../chains/definitions/zksyncInMemoryNode.js");
Object.defineProperty(exports, "zksyncInMemoryNode", { enumerable: true, get: function () { return zksyncInMemoryNode_js_1.zksyncInMemoryNode; } });
var zksyncLocalCustomHyperchain_js_1 = require("../chains/definitions/zksyncLocalCustomHyperchain.js");
Object.defineProperty(exports, "zksyncLocalCustomHyperchain", { enumerable: true, get: function () { return zksyncLocalCustomHyperchain_js_1.zksyncLocalCustomHyperchain; } });
var zksyncLocalHyperchain_js_1 = require("../chains/definitions/zksyncLocalHyperchain.js");
Object.defineProperty(exports, "zksyncLocalHyperchain", { enumerable: true, get: function () { return zksyncLocalHyperchain_js_1.zksyncLocalHyperchain; } });
var zksyncLocalHyperchainL1_js_1 = require("../chains/definitions/zksyncLocalHyperchainL1.js");
Object.defineProperty(exports, "zksyncLocalHyperchainL1", { enumerable: true, get: function () { return zksyncLocalHyperchainL1_js_1.zksyncLocalHyperchainL1; } });
var zksyncLocalNode_js_1 = require("../chains/definitions/zksyncLocalNode.js");
Object.defineProperty(exports, "zksyncLocalNode", { enumerable: true, get: function () { return zksyncLocalNode_js_1.zksyncLocalNode; } });
var zksyncSepoliaTestnet_js_1 = require("../chains/definitions/zksyncSepoliaTestnet.js");
Object.defineProperty(exports, "zksyncSepoliaTestnet", { enumerable: true, get: function () { return zksyncSepoliaTestnet_js_1.zksyncSepoliaTestnet; } });
//# sourceMappingURL=chains.js.map

1
node_modules/viem/_cjs/zksync/chains.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"chains.js","sourceRoot":"","sources":["../../zksync/chains.ts"],"names":[],"mappings":";;;AACA,6DAAwD;AAA/C,mGAAA,MAAM,OAAA;AACf,qFAAgF;AAAvE,2HAAA,kBAAkB,OAAA;AAC3B,uGAAkG;AAAzF,6IAAA,2BAA2B,OAAA;AACpC,2FAAsF;AAA7E,iIAAA,qBAAqB,OAAA;AAC9B,+FAA0F;AAAjF,qIAAA,uBAAuB,OAAA;AAChC,+EAA0E;AAAjE,qHAAA,eAAe,OAAA;AACxB,yFAAoF;AAA3E,+HAAA,oBAAoB,OAAA"}

4655
node_modules/viem/_cjs/zksync/constants/abis.js generated vendored Normal file

File diff suppressed because it is too large Load Diff

1
node_modules/viem/_cjs/zksync/constants/abis.js.map generated vendored Normal file

File diff suppressed because one or more lines are too long

15
node_modules/viem/_cjs/zksync/constants/address.js generated vendored Normal file
View File

@@ -0,0 +1,15 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.addressModulo = exports.bootloaderFormalAddress = exports.l2NativeTokenVaultAddress = exports.l2AssetRouterAddress = exports.l1ToL2AliasOffset = exports.l1MessengerAddress = exports.l2BaseTokenAddress = exports.ethAddressInContracts = exports.legacyEthAddress = exports.contract2FactoryAddress = exports.contractDeployerAddress = void 0;
exports.contractDeployerAddress = '0x0000000000000000000000000000000000008006';
exports.contract2FactoryAddress = '0x0000000000000000000000000000000000010000';
exports.legacyEthAddress = '0x0000000000000000000000000000000000000000';
exports.ethAddressInContracts = '0x0000000000000000000000000000000000000001';
exports.l2BaseTokenAddress = '0x000000000000000000000000000000000000800a';
exports.l1MessengerAddress = '0x0000000000000000000000000000000000008008';
exports.l1ToL2AliasOffset = '0x1111000000000000000000000000000000001111';
exports.l2AssetRouterAddress = '0x0000000000000000000000000000000000010003';
exports.l2NativeTokenVaultAddress = '0x0000000000000000000000000000000000010004';
exports.bootloaderFormalAddress = '0x0000000000000000000000000000000000008001';
exports.addressModulo = 2n ** 160n;
//# sourceMappingURL=address.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"address.js","sourceRoot":"","sources":["../../../zksync/constants/address.ts"],"names":[],"mappings":";;;AAAa,QAAA,uBAAuB,GAClC,4CAAqD,CAAA;AAE1C,QAAA,uBAAuB,GAClC,4CAAqD,CAAA;AAG1C,QAAA,gBAAgB,GAC3B,4CAAqD,CAAA;AAE1C,QAAA,qBAAqB,GAChC,4CAAqD,CAAA;AAG1C,QAAA,kBAAkB,GAC7B,4CAAqD,CAAA;AAE1C,QAAA,kBAAkB,GAC7B,4CAAqD,CAAA;AAE1C,QAAA,iBAAiB,GAC5B,4CAAqD,CAAA;AAE1C,QAAA,oBAAoB,GAC/B,4CAAqD,CAAA;AAE1C,QAAA,yBAAyB,GACpC,4CAAqD,CAAA;AAE1C,QAAA,uBAAuB,GAClC,4CAAqD,CAAA;AAE1C,QAAA,aAAa,GAAG,EAAE,IAAI,IAAI,CAAA"}

5
node_modules/viem/_cjs/zksync/constants/contract.js generated vendored Normal file
View File

@@ -0,0 +1,5 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.accountAbstractionVersion1 = void 0;
exports.accountAbstractionVersion1 = 1;
//# sourceMappingURL=contract.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../zksync/constants/contract.ts"],"names":[],"mappings":";;;AAAa,QAAA,0BAA0B,GAAG,CAAC,CAAA"}

8
node_modules/viem/_cjs/zksync/constants/number.js generated vendored Normal file
View File

@@ -0,0 +1,8 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.requiredL1ToL2GasPerPubdataLimit = exports.maxBytecodeSize = exports.gasPerPubdataDefault = void 0;
const number_js_1 = require("../../constants/number.js");
exports.gasPerPubdataDefault = 50000n;
exports.maxBytecodeSize = number_js_1.maxUint16 * 32n;
exports.requiredL1ToL2GasPerPubdataLimit = 800n;
//# sourceMappingURL=number.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"number.js","sourceRoot":"","sources":["../../../zksync/constants/number.ts"],"names":[],"mappings":";;;AAAA,yDAAqD;AAExC,QAAA,oBAAoB,GAAG,MAAM,CAAA;AAC7B,QAAA,eAAe,GAAG,qBAAS,GAAG,GAAG,CAAA;AACjC,QAAA,gCAAgC,GAAG,IAAI,CAAA"}

18
node_modules/viem/_cjs/zksync/decorators/eip712.js generated vendored Normal file
View File

@@ -0,0 +1,18 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.eip712WalletActions = eip712WalletActions;
const writeContract_js_1 = require("../../actions/wallet/writeContract.js");
const deployContract_js_1 = require("../actions/deployContract.js");
const sendTransaction_js_1 = require("../actions/sendTransaction.js");
const signTransaction_js_1 = require("../actions/signTransaction.js");
function eip712WalletActions() {
return (client) => ({
sendTransaction: (args) => (0, sendTransaction_js_1.sendTransaction)(client, args),
signTransaction: (args) => (0, signTransaction_js_1.signTransaction)(client, args),
deployContract: (args) => (0, deployContract_js_1.deployContract)(client, args),
writeContract: (args) => (0, writeContract_js_1.writeContract)(Object.assign(client, {
sendTransaction: (args) => (0, sendTransaction_js_1.sendTransaction)(client, args),
}), args),
});
}
//# sourceMappingURL=eip712.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"eip712.js","sourceRoot":"","sources":["../../../zksync/decorators/eip712.ts"],"names":[],"mappings":";;AA0NA,kDAmBC;AA1OD,4EAAqE;AAKrE,oEAIqC;AACrC,sEAIsC;AACtC,sEAIsC;AAoMtC,SAAgB,mBAAmB;IACjC,OAAO,CAKL,MAAyC,EACJ,EAAE,CAAC,CAAC;QACzC,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,oCAAe,EAAC,MAAM,EAAE,IAAI,CAAC;QACxD,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,oCAAe,EAAC,MAAM,EAAE,IAAI,CAAC;QACxD,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,kCAAc,EAAC,MAAM,EAAE,IAAI,CAAC;QACtD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CACtB,IAAA,gCAAa,EACX,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;YACpB,eAAe,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,IAAA,oCAAe,EAAC,MAAM,EAAE,IAAI,CAAC;SAC9D,CAAC,EACF,IAAI,CACL;KACJ,CAAC,CAAA;AACJ,CAAC"}

16
node_modules/viem/_cjs/zksync/decorators/publicL1.js generated vendored Normal file
View File

@@ -0,0 +1,16 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.publicActionsL1 = publicActionsL1;
const getL1Allowance_js_1 = require("../actions/getL1Allowance.js");
const getL1Balance_js_1 = require("../actions/getL1Balance.js");
const getL1TokenBalance_js_1 = require("../actions/getL1TokenBalance.js");
const isWithdrawalFinalized_js_1 = require("../actions/isWithdrawalFinalized.js");
function publicActionsL1() {
return (client) => ({
getL1Allowance: (args) => (0, getL1Allowance_js_1.getL1Allowance)(client, args),
getL1TokenBalance: (args) => (0, getL1TokenBalance_js_1.getL1TokenBalance)(client, args),
getL1Balance: (args) => (0, getL1Balance_js_1.getL1Balance)(client, args),
isWithdrawalFinalized: (args) => (0, isWithdrawalFinalized_js_1.isWithdrawalFinalized)(client, args),
});
}
//# sourceMappingURL=publicL1.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"publicL1.js","sourceRoot":"","sources":["../../../zksync/decorators/publicL1.ts"],"names":[],"mappings":";;AA0MA,0CAaC;AAnND,oEAIqC;AACrC,gEAImC;AACnC,0EAIwC;AACxC,kFAI4C;AAmL5C,SAAgB,eAAe;IAC7B,OAAO,CAIL,MAAyC,EACf,EAAE,CAAC,CAAC;QAC9B,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,kCAAc,EAAC,MAAM,EAAE,IAAI,CAAC;QACtD,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,wCAAiB,EAAC,MAAM,EAAE,IAAI,CAAC;QAE5D,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,8BAAY,EAAC,MAAM,EAAE,IAAI,CAAC;QAClD,qBAAqB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,gDAAqB,EAAC,MAAM,EAAE,IAAI,CAAC;KACrE,CAAC,CAAA;AACJ,CAAC"}

48
node_modules/viem/_cjs/zksync/decorators/publicL2.js generated vendored Normal file
View File

@@ -0,0 +1,48 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.publicActionsL2 = publicActionsL2;
const estimateFee_js_1 = require("../actions/estimateFee.js");
const estimateGasL1ToL2_js_1 = require("../actions/estimateGasL1ToL2.js");
const getAllBalances_js_1 = require("../actions/getAllBalances.js");
const getBaseTokenL1Address_js_1 = require("../actions/getBaseTokenL1Address.js");
const getBlockDetails_js_1 = require("../actions/getBlockDetails.js");
const getBridgehubContractAddress_js_1 = require("../actions/getBridgehubContractAddress.js");
const getDefaultBridgeAddresses_js_1 = require("../actions/getDefaultBridgeAddresses.js");
const getGasPerPubdata_js_1 = require("../actions/getGasPerPubdata.js");
const getL1BatchBlockRange_js_1 = require("../actions/getL1BatchBlockRange.js");
const getL1BatchDetails_js_1 = require("../actions/getL1BatchDetails.js");
const getL1BatchNumber_js_1 = require("../actions/getL1BatchNumber.js");
const getL1ChainId_js_1 = require("../actions/getL1ChainId.js");
const getL1TokenAddress_js_1 = require("../actions/getL1TokenAddress.js");
const getL2TokenAddress_js_1 = require("../actions/getL2TokenAddress.js");
const getLogProof_js_1 = require("../actions/getLogProof.js");
const getMainContractAddress_js_1 = require("../actions/getMainContractAddress.js");
const getRawBlockTransactions_js_1 = require("../actions/getRawBlockTransactions.js");
const getTestnetPaymasterAddress_js_1 = require("../actions/getTestnetPaymasterAddress.js");
const getTransactionDetails_js_1 = require("../actions/getTransactionDetails.js");
function publicActionsL2() {
return (client) => {
return {
estimateGasL1ToL2: (args) => (0, estimateGasL1ToL2_js_1.estimateGasL1ToL2)(client, args),
getDefaultBridgeAddresses: () => (0, getDefaultBridgeAddresses_js_1.getDefaultBridgeAddresses)(client),
getTestnetPaymasterAddress: () => (0, getTestnetPaymasterAddress_js_1.getTestnetPaymasterAddress)(client),
getL1ChainId: () => (0, getL1ChainId_js_1.getL1ChainId)(client),
getMainContractAddress: () => (0, getMainContractAddress_js_1.getMainContractAddress)(client),
getAllBalances: (args) => (0, getAllBalances_js_1.getAllBalances)(client, args),
getRawBlockTransaction: (args) => (0, getRawBlockTransactions_js_1.getRawBlockTransactions)(client, args),
getBlockDetails: (args) => (0, getBlockDetails_js_1.getBlockDetails)(client, args),
getL1BatchDetails: (args) => (0, getL1BatchDetails_js_1.getL1BatchDetails)(client, args),
getL1BatchBlockRange: (args) => (0, getL1BatchBlockRange_js_1.getL1BatchBlockRange)(client, args),
getL1BatchNumber: () => (0, getL1BatchNumber_js_1.getL1BatchNumber)(client),
getLogProof: (args) => (0, getLogProof_js_1.getLogProof)(client, args),
getTransactionDetails: (args) => (0, getTransactionDetails_js_1.getTransactionDetails)(client, args),
estimateFee: (args) => (0, estimateFee_js_1.estimateFee)(client, args),
getBridgehubContractAddress: () => (0, getBridgehubContractAddress_js_1.getBridgehubContractAddress)(client),
getBaseTokenL1Address: () => (0, getBaseTokenL1Address_js_1.getBaseTokenL1Address)(client),
getL2TokenAddress: (args) => (0, getL2TokenAddress_js_1.getL2TokenAddress)(client, args),
getL1TokenAddress: (args) => (0, getL1TokenAddress_js_1.getL1TokenAddress)(client, args),
getGasPerPubdata: () => (0, getGasPerPubdata_js_1.getGasPerPubdata)(client),
};
};
}
//# sourceMappingURL=publicL2.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"publicL2.js","sourceRoot":"","sources":["../../../zksync/decorators/publicL2.ts"],"names":[],"mappings":";;AAofA,0CA8BC;AA1gBD,8DAAuD;AACvD,0EAIwC;AACxC,oEAIqC;AACrC,kFAG4C;AAC5C,sEAIsC;AACtC,8FAGkD;AAClD,0FAGgD;AAChD,wEAGuC;AACvC,gFAI2C;AAC3C,0EAIwC;AACxC,wEAGuC;AACvC,gEAGmC;AACnC,0EAIwC;AACxC,0EAIwC;AACxC,8DAIkC;AAClC,oFAG6C;AAC7C,sFAI8C;AAC9C,4FAGiD;AACjD,kFAI4C;AA0Z5C,SAAgB,eAAe;IAC7B,OAAO,CAKL,MAAyC,EACR,EAAE;QACnC,OAAO;YACL,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,wCAAiB,EAAC,MAAM,EAAE,IAAI,CAAC;YAC5D,yBAAyB,EAAE,GAAG,EAAE,CAAC,IAAA,wDAAyB,EAAC,MAAM,CAAC;YAClE,0BAA0B,EAAE,GAAG,EAAE,CAAC,IAAA,0DAA0B,EAAC,MAAM,CAAC;YACpE,YAAY,EAAE,GAAG,EAAE,CAAC,IAAA,8BAAY,EAAC,MAAM,CAAC;YACxC,sBAAsB,EAAE,GAAG,EAAE,CAAC,IAAA,kDAAsB,EAAC,MAAM,CAAC;YAC5D,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,kCAAc,EAAC,MAAM,EAAE,IAAI,CAAC;YACtD,sBAAsB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,oDAAuB,EAAC,MAAM,EAAE,IAAI,CAAC;YACvE,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,oCAAe,EAAC,MAAM,EAAE,IAAI,CAAC;YACxD,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,wCAAiB,EAAC,MAAM,EAAE,IAAI,CAAC;YAC5D,oBAAoB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,8CAAoB,EAAC,MAAM,EAAE,IAAI,CAAC;YAClE,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAA,sCAAgB,EAAC,MAAM,CAAC;YAChD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4BAAW,EAAC,MAAM,EAAE,IAAI,CAAC;YAChD,qBAAqB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,gDAAqB,EAAC,MAAM,EAAE,IAAI,CAAC;YACpE,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4BAAW,EAAC,MAAM,EAAE,IAAI,CAAC;YAChD,2BAA2B,EAAE,GAAG,EAAE,CAAC,IAAA,4DAA2B,EAAC,MAAM,CAAC;YACtE,qBAAqB,EAAE,GAAG,EAAE,CAAC,IAAA,gDAAqB,EAAC,MAAM,CAAC;YAC1D,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,wCAAiB,EAAC,MAAM,EAAE,IAAI,CAAC;YAC5D,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,wCAAiB,EAAC,MAAM,EAAE,IAAI,CAAC;YAC5D,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAA,sCAAgB,EAAC,MAAM,CAAC;SACjD,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}

16
node_modules/viem/_cjs/zksync/decorators/walletL1.js generated vendored Normal file
View File

@@ -0,0 +1,16 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.walletActionsL1 = walletActionsL1;
const claimFailedDeposit_js_1 = require("../actions/claimFailedDeposit.js");
const deposit_js_1 = require("../actions/deposit.js");
const finalizeWithdrawal_js_1 = require("../actions/finalizeWithdrawal.js");
const requestExecute_js_1 = require("../actions/requestExecute.js");
function walletActionsL1() {
return (client) => ({
claimFailedDeposit: (args) => (0, claimFailedDeposit_js_1.claimFailedDeposit)(client, args),
deposit: (args) => (0, deposit_js_1.deposit)(client, args),
finalizeWithdrawal: (args) => (0, finalizeWithdrawal_js_1.finalizeWithdrawal)(client, args),
requestExecute: (args) => (0, requestExecute_js_1.requestExecute)(client, args),
});
}
//# sourceMappingURL=walletL1.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"walletL1.js","sourceRoot":"","sources":["../../../zksync/decorators/walletL1.ts"],"names":[],"mappings":";;AAiNA,0CAaC;AA1ND,4EAIyC;AACzC,sDAI8B;AAC9B,4EAIyC;AACzC,oEAIqC;AA0LrC,SAAgB,eAAe;IAC7B,OAAO,CAKL,MAAyC,EACR,EAAE,CAAC,CAAC;QACrC,kBAAkB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0CAAkB,EAAC,MAAM,EAAE,IAAI,CAAC;QAC9D,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,oBAAO,EAAC,MAAM,EAAE,IAAI,CAAC;QACxC,kBAAkB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0CAAkB,EAAC,MAAM,EAAE,IAAI,CAAC;QAC9D,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,kCAAc,EAAC,MAAM,EAAE,IAAI,CAAC;KACvD,CAAC,CAAA;AACJ,CAAC"}

10
node_modules/viem/_cjs/zksync/decorators/walletL2.js generated vendored Normal file
View File

@@ -0,0 +1,10 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.walletActionsL2 = walletActionsL2;
const withdraw_js_1 = require("../actions/withdraw.js");
function walletActionsL2() {
return (client) => ({
withdraw: (args) => (0, withdraw_js_1.withdraw)(client, args),
});
}
//# sourceMappingURL=walletL2.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"walletL2.js","sourceRoot":"","sources":["../../../zksync/decorators/walletL2.ts"],"names":[],"mappings":";;AAoFA,0CAUC;AA3FD,wDAI+B;AA6E/B,SAAgB,eAAe;IAC7B,OAAO,CAKL,MAAyC,EACR,EAAE,CAAC,CAAC;QACrC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,sBAAQ,EAAC,MAAM,EAAE,IAAI,CAAC;KAC3C,CAAC,CAAA;AACJ,CAAC"}

56
node_modules/viem/_cjs/zksync/errors/bridge.js generated vendored Normal file
View File

@@ -0,0 +1,56 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.L2BridgeNotFoundError = exports.LogProofNotFoundError = exports.CannotClaimSuccessfulDepositError = exports.WithdrawalLogNotFoundError = exports.TxHashNotFoundInLogsError = exports.BaseFeeHigherThanValueError = void 0;
const base_js_1 = require("../../errors/base.js");
class BaseFeeHigherThanValueError extends base_js_1.BaseError {
constructor(baseCost, value) {
super([
'The base cost of performing the priority operation is higher than the provided transaction value parameter.',
'',
`Base cost: ${baseCost}.`,
`Provided value: ${value}.`,
].join('\n'), { name: 'BaseFeeHigherThanValueError' });
}
}
exports.BaseFeeHigherThanValueError = BaseFeeHigherThanValueError;
class TxHashNotFoundInLogsError extends base_js_1.BaseError {
constructor() {
super('The transaction hash not found in event logs.', {
name: 'TxHashNotFoundInLogsError',
});
}
}
exports.TxHashNotFoundInLogsError = TxHashNotFoundInLogsError;
class WithdrawalLogNotFoundError extends base_js_1.BaseError {
constructor({ hash }) {
super([
`Withdrawal log with hash ${hash} not found.`,
'',
'Either the withdrawal transaction is still processing or it did not finish successfully.',
].join('\n'), { name: 'WithdrawalLogNotFoundError' });
}
}
exports.WithdrawalLogNotFoundError = WithdrawalLogNotFoundError;
class CannotClaimSuccessfulDepositError extends base_js_1.BaseError {
constructor({ hash }) {
super([`Cannot claim successful deposit: ${hash}.`].join('\n'), {
name: 'CannotClaimSuccessfulDepositError',
});
}
}
exports.CannotClaimSuccessfulDepositError = CannotClaimSuccessfulDepositError;
class LogProofNotFoundError extends base_js_1.BaseError {
constructor({ hash, index }) {
super([`Log proof not found for hash ${hash} and index ${index}.`].join('\n'), { name: 'LogProofNotFoundError' });
}
}
exports.LogProofNotFoundError = LogProofNotFoundError;
class L2BridgeNotFoundError extends base_js_1.BaseError {
constructor() {
super(['L2 bridge address not found.'].join('\n'), {
name: 'L2BridgeNotFoundError',
});
}
}
exports.L2BridgeNotFoundError = L2BridgeNotFoundError;
//# sourceMappingURL=bridge.js.map

1
node_modules/viem/_cjs/zksync/errors/bridge.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../../zksync/errors/bridge.ts"],"names":[],"mappings":";;;AAAA,kDAAgD;AAMhD,MAAa,2BAA4B,SAAQ,mBAAS;IACxD,YAAY,QAAgB,EAAE,KAAa;QACzC,KAAK,CACH;YACE,6GAA6G;YAC7G,EAAE;YACF,cAAc,QAAQ,GAAG;YACzB,mBAAmB,KAAK,GAAG;SAC5B,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,EAAE,IAAI,EAAE,6BAA6B,EAAE,CACxC,CAAA;IACH,CAAC;CACF;AAZD,kEAYC;AAKD,MAAa,yBAA0B,SAAQ,mBAAS;IACtD;QACE,KAAK,CAAC,+CAA+C,EAAE;YACrD,IAAI,EAAE,2BAA2B;SAClC,CAAC,CAAA;IACJ,CAAC;CACF;AAND,8DAMC;AAKD,MAAa,0BAA2B,SAAQ,mBAAS;IACvD,YAAY,EAAE,IAAI,EAAkB;QAClC,KAAK,CACH;YACE,4BAA4B,IAAI,aAAa;YAC7C,EAAE;YACF,0FAA0F;SAC3F,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,EAAE,IAAI,EAAE,4BAA4B,EAAE,CACvC,CAAA;IACH,CAAC;CACF;AAXD,gEAWC;AAMD,MAAa,iCAAkC,SAAQ,mBAAS;IAC9D,YAAY,EAAE,IAAI,EAAkB;QAClC,KAAK,CAAC,CAAC,oCAAoC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC9D,IAAI,EAAE,mCAAmC;SAC1C,CAAC,CAAA;IACJ,CAAC;CACF;AAND,8EAMC;AAKD,MAAa,qBAAsB,SAAQ,mBAAS;IAClD,YAAY,EAAE,IAAI,EAAE,KAAK,EAAiC;QACxD,KAAK,CACH,CAAC,gCAAgC,IAAI,cAAc,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EACvE,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAClC,CAAA;IACH,CAAC;CACF;AAPD,sDAOC;AAKD,MAAa,qBAAsB,SAAQ,mBAAS;IAClD;QACE,KAAK,CAAC,CAAC,8BAA8B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACjD,IAAI,EAAE,uBAAuB;SAC9B,CAAC,CAAA;IACJ,CAAC;CACF;AAND,sDAMC"}

23
node_modules/viem/_cjs/zksync/errors/bytecode.js generated vendored Normal file
View File

@@ -0,0 +1,23 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.BytecodeLengthMustBeDivisibleBy32Error = exports.BytecodeLengthInWordsMustBeOddError = exports.BytecodeLengthExceedsMaxSizeError = void 0;
const base_js_1 = require("../../errors/base.js");
class BytecodeLengthExceedsMaxSizeError extends base_js_1.BaseError {
constructor({ givenLength, maxBytecodeSize, }) {
super(`Bytecode cannot be longer than ${maxBytecodeSize} bytes. Given length: ${givenLength}`, { name: 'BytecodeLengthExceedsMaxSizeError' });
}
}
exports.BytecodeLengthExceedsMaxSizeError = BytecodeLengthExceedsMaxSizeError;
class BytecodeLengthInWordsMustBeOddError extends base_js_1.BaseError {
constructor({ givenLengthInWords }) {
super(`Bytecode length in 32-byte words must be odd. Given length in words: ${givenLengthInWords}`, { name: 'BytecodeLengthInWordsMustBeOddError' });
}
}
exports.BytecodeLengthInWordsMustBeOddError = BytecodeLengthInWordsMustBeOddError;
class BytecodeLengthMustBeDivisibleBy32Error extends base_js_1.BaseError {
constructor({ givenLength }) {
super(`The bytecode length in bytes must be divisible by 32. Given length: ${givenLength}`, { name: 'BytecodeLengthMustBeDivisibleBy32Error' });
}
}
exports.BytecodeLengthMustBeDivisibleBy32Error = BytecodeLengthMustBeDivisibleBy32Error;
//# sourceMappingURL=bytecode.js.map

1
node_modules/viem/_cjs/zksync/errors/bytecode.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"bytecode.js","sourceRoot":"","sources":["../../../zksync/errors/bytecode.ts"],"names":[],"mappings":";;;AAAA,kDAAgD;AAOhD,MAAa,iCAAkC,SAAQ,mBAAS;IAC9D,YAAY,EACV,WAAW,EACX,eAAe,GACkC;QACjD,KAAK,CACH,kCAAkC,eAAe,yBAAyB,WAAW,EAAE,EACvF,EAAE,IAAI,EAAE,mCAAmC,EAAE,CAC9C,CAAA;IACH,CAAC;CACF;AAVD,8EAUC;AAOD,MAAa,mCAAoC,SAAQ,mBAAS;IAChE,YAAY,EAAE,kBAAkB,EAAkC;QAChE,KAAK,CACH,wEAAwE,kBAAkB,EAAE,EAC5F,EAAE,IAAI,EAAE,qCAAqC,EAAE,CAChD,CAAA;IACH,CAAC;CACF;AAPD,kFAOC;AAOD,MAAa,sCAAuC,SAAQ,mBAAS;IACnE,YAAY,EAAE,WAAW,EAA2B;QAClD,KAAK,CACH,uEAAuE,WAAW,EAAE,EACpF,EAAE,IAAI,EAAE,wCAAwC,EAAE,CACnD,CAAA;IACH,CAAC;CACF;AAPD,wFAOC"}

11
node_modules/viem/_cjs/zksync/errors/token-is-eth.js generated vendored Normal file
View File

@@ -0,0 +1,11 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.TokenIsEthError = void 0;
const base_js_1 = require("../../errors/base.js");
class TokenIsEthError extends base_js_1.BaseError {
constructor() {
super(['Token is an ETH token.', '', 'ETH token cannot be retrieved.'].join('\n'), { name: 'TokenIsEthError' });
}
}
exports.TokenIsEthError = TokenIsEthError;
//# sourceMappingURL=token-is-eth.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"token-is-eth.js","sourceRoot":"","sources":["../../../zksync/errors/token-is-eth.ts"],"names":[],"mappings":";;;AAAA,kDAAgD;AAKhD,MAAa,eAAgB,SAAQ,mBAAS;IAC5C;QACE,KAAK,CACH,CAAC,wBAAwB,EAAE,EAAE,EAAE,gCAAgC,CAAC,CAAC,IAAI,CACnE,IAAI,CACL,EACD,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAC5B,CAAA;IACH,CAAC;CACF;AATD,0CASC"}

Some files were not shown because too many files have changed in this diff Show More