@1inch/solidity-utils 4.2.0 → 4.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
|
@@ -19,7 +19,7 @@ This repository is a comprehensive toolkit designed to streamline and optimize t
|
|
|
19
19
|
|
|
20
20
|
- **[Configuration and Management](https://github.com/1inch/solidity-utils/blob/master/docs/js/modules/hardhat_setup.md)**: Tools for setting up Hardhat network configurations and managing project settings efficiently.
|
|
21
21
|
|
|
22
|
-
- **[Solidity Contracts and Libraries](https://github.com/1inch/solidity-utils/blob/master/docs/
|
|
22
|
+
- **[Solidity Contracts and Libraries](https://github.com/1inch/solidity-utils/blob/master/docs/SUMMARY.md)**: Frequently used smart contracts, libraries, and interfaces aimed at providing reusable code for common use cases, alongside optimizations to improve contract efficiency.
|
|
23
23
|
|
|
24
24
|
## Contributing
|
|
25
25
|
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { ChainConfig } from '@nomicfoundation/hardhat-verify/src/types';
|
|
2
2
|
import { Network, NetworksUserConfig } from 'hardhat/types';
|
|
3
|
-
/**
|
|
3
|
+
/**
|
|
4
|
+
* @category Hardhat-Setup
|
|
5
|
+
* @notice Configuration type for managing Etherscan integration in Hardhat setups.
|
|
6
|
+
* @param apiKey Dictionary of API keys for accessing Etherscan, indexed by network name.
|
|
7
|
+
* @param customChains Array of custom blockchain network configurations.
|
|
8
|
+
*/
|
|
4
9
|
export type Etherscan = {
|
|
5
10
|
apiKey: {
|
|
6
11
|
[key: string]: string;
|
|
@@ -140,7 +140,7 @@ class Networks {
|
|
|
140
140
|
// For 'zksyncFork' network you should use zksync fork node: https://github.com/matter-labs/era-test-node
|
|
141
141
|
this.registerZksync('zksyncFork', 260, process.env.ZKSYNC_FORK_RPC_URL, 'mainnet', process.env.ZKSYNC_FORK_PRIVATE_KEY || privateKey);
|
|
142
142
|
this.registerZksync('zksyncLocal', 270, process.env.ZKSYNC_LOCAL_RPC_URL, process.env.ZKSYNC_LOCAL_ETH_NETWORK, process.env.ZKSYNC_PRIVATE_KEY || privateKey);
|
|
143
|
-
this.registerZksync('zksyncTest',
|
|
143
|
+
this.registerZksync('zksyncTest', 300, process.env.ZKSYNC_TEST_RPC_URL, 'sepolia', process.env.ZKSYNC_TEST_PRIVATE_KEY || privateKey, process.env.ZKSYNC_TEST_VERIFY_URL);
|
|
144
144
|
return { networks: this.networks, etherscan: this.etherscan };
|
|
145
145
|
}
|
|
146
146
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"networks.js","sourceRoot":"","sources":["../../hardhat-setup/networks.ts"],"names":[],"mappings":";;;;AAAA,4DAA4B;
|
|
1
|
+
{"version":3,"file":"networks.js","sourceRoot":"","sources":["../../hardhat-setup/networks.ts"],"names":[],"mappings":"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"}
|
package/dist/src/utils.d.ts
CHANGED
|
@@ -2,7 +2,23 @@ import '@nomicfoundation/hardhat-ethers';
|
|
|
2
2
|
import { BaseContract, BigNumberish, BytesLike, Contract, ContractTransactionReceipt, ContractTransactionResponse, JsonRpcProvider, Signer, Wallet } from 'ethers';
|
|
3
3
|
import { DeployOptions, DeployResult } from 'hardhat-deploy/types';
|
|
4
4
|
import { constants } from './prelude';
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* @category utils
|
|
7
|
+
* @notice Options for deployment methods.
|
|
8
|
+
* @param contractName Name of the contract to deploy.
|
|
9
|
+
* @param constructorArgs Arguments for the contract's constructor.
|
|
10
|
+
* @param deployments Deployment facilitator object from Hardhat.
|
|
11
|
+
* @param deployer Wallet deploying the contract.
|
|
12
|
+
* @param deploymentName Optional custom name for deployment.
|
|
13
|
+
* @param skipVerify Skips Etherscan verification if true.
|
|
14
|
+
* @param skipIfAlreadyDeployed Avoids redeployment if contract already deployed.
|
|
15
|
+
* @param gasPrice Gas strategy option.
|
|
16
|
+
* @param maxPriorityFeePerGas Gas strategy option.
|
|
17
|
+
* @param maxFeePerGas Gas strategy option.
|
|
18
|
+
* @param log Toggles deployment logging.
|
|
19
|
+
* @param waitConfirmations Number of confirmations to wait based on network. Ussually it's need for waiting before Etherscan verification.
|
|
20
|
+
*/
|
|
21
|
+
export interface DeployContractOptions {
|
|
6
22
|
contractName: string;
|
|
7
23
|
constructorArgs?: any[];
|
|
8
24
|
deployments: {
|
|
@@ -21,19 +37,15 @@ interface DeployContractOptions {
|
|
|
21
37
|
/**
|
|
22
38
|
* @category utils
|
|
23
39
|
* @notice Deploys a contract with optional Etherscan verification.
|
|
24
|
-
* @param
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
* @param skipIfAlreadyDeployed Avoids redeployment if contract already deployed.
|
|
31
|
-
* @param gasPrice, maxPriorityFeePerGas, maxFeePerGas Gas strategy options.
|
|
32
|
-
* @param log Toggles deployment logging.
|
|
33
|
-
* @param waitConfirmations Number of confirmations to wait based on network. Ussually it's need for waiting before Etherscan verification.
|
|
40
|
+
* @param options Deployment options. Default values:
|
|
41
|
+
* - deploymentName: contractName
|
|
42
|
+
* - skipVerify: false
|
|
43
|
+
* - skipIfAlreadyDeployed: true
|
|
44
|
+
* - log: true
|
|
45
|
+
* - waitConfirmations: 1 on dev chains, 6 on others
|
|
34
46
|
* @returns The deployed contract instance.
|
|
35
47
|
*/
|
|
36
|
-
export declare function deployAndGetContract(
|
|
48
|
+
export declare function deployAndGetContract(options: DeployContractOptions): Promise<Contract>;
|
|
37
49
|
/**
|
|
38
50
|
* @category utils
|
|
39
51
|
* @notice Advances the blockchain time to a specific timestamp for testing purposes.
|
|
@@ -58,11 +70,26 @@ export declare function deployContract(name: string, parameters?: Array<BigNumbe
|
|
|
58
70
|
* @returns The deployed contract instance.
|
|
59
71
|
*/
|
|
60
72
|
export declare function deployContractFromBytecode(abi: any[], bytecode: BytesLike, parameters?: Array<BigNumberish>, signer?: Signer): Promise<BaseContract>;
|
|
61
|
-
|
|
73
|
+
/**
|
|
74
|
+
* @category utils
|
|
75
|
+
* Represents the interface for a token, providing methods to fetch its balance and address.
|
|
76
|
+
* This type is used in `trackReceivedTokenAndTx` method.
|
|
77
|
+
* @param balanceOf Method which retrieves the balance of the specified address.
|
|
78
|
+
* @param getAddress Method which retrieves the token contract's address.
|
|
79
|
+
*/
|
|
80
|
+
export type Token = {
|
|
62
81
|
balanceOf: (address: string) => Promise<bigint>;
|
|
63
82
|
getAddress: () => Promise<string>;
|
|
64
83
|
};
|
|
65
|
-
|
|
84
|
+
/**
|
|
85
|
+
* @category utils
|
|
86
|
+
* @notice Represents a tuple containing a token quantity and either a transaction receipt or a recursive instance of the same tuple type.
|
|
87
|
+
* This type is used in `trackReceivedTokenAndTx` method to track token transfers and their transaction receipts in a nested structure,
|
|
88
|
+
* allowing for handling of complex scenarios like chained or batched transactions and tracking several tokens.
|
|
89
|
+
* - result[0]: The amount of the token received.
|
|
90
|
+
* - result[1]: The transaction receipt or another nested token tracking result.
|
|
91
|
+
*/
|
|
92
|
+
export type TrackReceivedTokenAndTxResult = [bigint, ContractTransactionReceipt | TrackReceivedTokenAndTxResult];
|
|
66
93
|
/**
|
|
67
94
|
* @category utils
|
|
68
95
|
* @notice Tracks token balance changes and transaction receipts for specified wallet addresses during test scenarios.
|
|
@@ -120,4 +147,3 @@ export declare function countInstructions(provider: JsonRpcProvider | {
|
|
|
120
147
|
* @return The price of the specified native token in USD, scaled by 1e18 to preserve precision.
|
|
121
148
|
*/
|
|
122
149
|
export declare function getEthPrice(nativeTokenSymbol?: string): Promise<bigint>;
|
|
123
|
-
export {};
|
package/dist/src/utils.js
CHANGED
|
@@ -10,19 +10,17 @@ const prelude_1 = require("./prelude");
|
|
|
10
10
|
/**
|
|
11
11
|
* @category utils
|
|
12
12
|
* @notice Deploys a contract with optional Etherscan verification.
|
|
13
|
-
* @param
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* @param skipIfAlreadyDeployed Avoids redeployment if contract already deployed.
|
|
20
|
-
* @param gasPrice, maxPriorityFeePerGas, maxFeePerGas Gas strategy options.
|
|
21
|
-
* @param log Toggles deployment logging.
|
|
22
|
-
* @param waitConfirmations Number of confirmations to wait based on network. Ussually it's need for waiting before Etherscan verification.
|
|
13
|
+
* @param options Deployment options. Default values:
|
|
14
|
+
* - deploymentName: contractName
|
|
15
|
+
* - skipVerify: false
|
|
16
|
+
* - skipIfAlreadyDeployed: true
|
|
17
|
+
* - log: true
|
|
18
|
+
* - waitConfirmations: 1 on dev chains, 6 on others
|
|
23
19
|
* @returns The deployed contract instance.
|
|
24
20
|
*/
|
|
25
|
-
async function deployAndGetContract(
|
|
21
|
+
async function deployAndGetContract(options) {
|
|
22
|
+
// Set default values for options
|
|
23
|
+
const { contractName, constructorArgs, deployments, deployer, deploymentName = contractName, skipVerify = false, skipIfAlreadyDeployed = true, gasPrice, maxPriorityFeePerGas, maxFeePerGas, log = true, waitConfirmations = prelude_1.constants.DEV_CHAINS.includes(hardhat_1.default.network.name) ? 1 : 6, } = options;
|
|
26
24
|
/**
|
|
27
25
|
* Deploys contract and tries to verify it on Etherscan if requested.
|
|
28
26
|
* @remarks
|
package/dist/src/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;;;AAAA,2CAAyC,CAAE,iEAAiE;AAC5G,2DAAsC;AACtC,sFAAgE;AAChE,oEAA+B;AAI/B,uCAAsC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@1inch/solidity-utils",
|
|
3
|
-
"version": "4.2.
|
|
3
|
+
"version": "4.2.1",
|
|
4
4
|
"main": "dist/src/index.js",
|
|
5
5
|
"types": "dist/src/index.d.ts",
|
|
6
6
|
"exports": {
|
|
@@ -18,9 +18,9 @@
|
|
|
18
18
|
"build": "yarn typechain && cti src hardhat-setup docgen -b && tsc -p tsconfig.publish.json",
|
|
19
19
|
"prepack": "yarn clean && yarn build",
|
|
20
20
|
"coverage": "hardhat coverage",
|
|
21
|
-
"docgen": "yarn
|
|
22
|
-
"docgen:ts": "npx typedoc --options typedoc.json",
|
|
23
|
-
"docgen:sol": "yarn hardhat docgen",
|
|
21
|
+
"docgen": "yarn docgen:sol && yarn docgen:ts",
|
|
22
|
+
"docgen:ts": "npx typedoc --options typedoc.json 2>&1 | grep -v \"typechain-types\"",
|
|
23
|
+
"docgen:sol": "yarn hardhat docgen; npx solidity-utils-docify",
|
|
24
24
|
"format": "yarn format-ts && yarn format-sol",
|
|
25
25
|
"format-ts": "prettier '**/*.ts' --write",
|
|
26
26
|
"format-sol": "prettier '**/*.sol' --write",
|