更新合约文档,翻译为中文以增强可读性,包括 AccessControl、Ownable、ERC20 和 IERC20 的相关说明。修正了一些注释以确保准确性和一致性。
Some checks failed
transpile upgradeable / transpile (push) Has been cancelled

This commit is contained in:
2025-07-12 23:27:57 +08:00
parent bc8f775df2
commit 264f00fe39
8 changed files with 149 additions and 197 deletions

View File

@ -1,15 +1,12 @@
#!/usr/bin/env node
// This script snapshots the bytecode and ABI for the `hardhat/common-contracts.js` script.
// - Bytecode is fetched directly from the blockchain by querying the provided client endpoint. If no endpoint is
// provided, ethers default provider is used instead.
// - ABI is fetched from etherscan's API using the provided etherscan API key. If no API key is provided, ABI will not
// be fetched and saved.
// 此脚本为 `hardhat/common-contracts.js` 脚本快照字节码和 ABI。
// - 字节码通过查询提供的客户端端点直接从区块链获取。如果没有提供端点,则使用 ethers 默认提供者。
// - ABI 使用提供的 etherscan API 密钥从 etherscan 的 API 获取。如果没有提供 API 密钥,则不会获取和保存 ABI。
//
// The produced artifacts are stored in the `output` folder ('test/bin' by default). For each contract, two files are
// produced:
// - `<name>.bytecode` containing the contract bytecode (in binary encoding)
// - `<name>.abi` containing the ABI (in utf-8 encoding)
// 生成的工件存储在 `output` 文件夹中(默认为 'test/bin')。对于每个合约,生成两个文件:
// - `<name>.bytecode` 包含合约字节码(二进制编码)
// - `<name>.abi` 包含 ABIutf-8 编码)
const fs = require('fs');
const path = require('path');
@ -24,7 +21,7 @@ const { argv } = require('yargs/yargs')(hideBin(process.argv))
etherscan: { type: 'string' },
});
// List of contract names and addresses to fetch
// 要获取的合约名称和地址列表
const config = {
EntryPoint070: '0x0000000071727De22E5E9d8BAf0edAc6f37da032',
SenderCreator070: '0xEFC2c1444eBCC4Db75e7613d20C6a62fF67A167C',