You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The contracts module contains the code of all Solidity smart contracts deployed on Hedera. This package is part of the Asset Tokenization Studio monorepo.
20
21
21
-
The standard used for security tokens is ERC-1400.
22
+
**Standards:**
22
23
23
-
Version 1.15.0 introduces partial compatibility with the ERC-3643 (TREX) standard; full identity and compliance support will be added in future releases.
**Location:**`packages/ats/contracts` within the monorepo
26
28
27
-
This package is located at `packages/ats/contracts` within the monorepo. Other packages (like the SDK) depend on the compiled artifacts from this package.
29
+
# Quick Start
28
30
29
-
# Installation
31
+
##Installation
30
32
31
33
From the monorepo root:
32
34
@@ -43,18 +45,17 @@ npm install
43
45
npm run compile
44
46
```
45
47
46
-
# Build
47
-
48
-
Build contracts using workspace commands from the root:
-`privateKey` (optional): Private key in raw hexadecimal format.
120
-
-`signerAddress` (optional): Signer address from the Hardhat signers array.
121
-
-`signerPosition` (optional): Index of the signer in the Hardhat signers array.
122
-
-`network` (optional): The network to run the command on (e.g., localhost, mainnet, testnet).
107
+
**Quick deployment commands:**
123
108
124
109
```bash
125
-
npx hardhat deployAll --useDeployed false
126
-
```
110
+
# Deploy full system to Hardhat network (in-memory, fast)
111
+
npm run deploy:hardhat -- --network hardhat
127
112
128
-
### deploy
113
+
# Deploy to Hedera Testnet (requires .env configuration)
114
+
npm run deploy:hardhat -- --network hedera-testnet
129
115
130
-
Deploys a specific contract.
131
-
132
-
**Parameters**:
133
-
134
-
-`contractName` (required): Name of the contract to deploy (e.g., ERC20, Bond).
135
-
-`privateKey` (optional): Private key in raw hexadecimal format.
136
-
-`signerAddress` (optional): Signer address from the Hardhat signers array.
137
-
-`signerPosition` (optional): Index of the signer in the Hardhat signers array.
138
-
139
-
```bash
140
-
npx hardhat deploy --contractName ERC20
141
-
```
142
-
143
-
### keccak256
144
-
145
-
Calculates and prints the Keccak-256 hash of a given string.
146
-
147
-
**Parameters:**
148
-
149
-
-`input` (required): The string to be hashed.
150
-
151
-
```bash
152
-
npx hardhat keccak256 "ADMIN_ROLE"
153
-
```
154
-
155
-
### getConfigurationInfo
156
-
157
-
Fetches and displays detailed information about all facets (implementations) associated with a specific configuration ID from the BusinessLogicResolver.
158
-
159
-
**Parameters:**
160
-
161
-
-`resolver` (required): The resolver proxy admin address.
162
-
-`configurationId` (required): The configuration ID.
163
-
-`network` (required): The network to use (e.g., local, previewnet, testnet, mainnet).
Registers or updates the addresses of a list of business logic implementation contracts in a specified `BusinessLogicResolver`.
185
-
186
-
**Parameters:**
187
-
188
-
-`resolverAddress` (required): The address of the `BusinessLogicResolver` contract.
189
-
-`implementationAddressList` (required): A comma-separated list of contract addresses to be registered or updated in the resolver.At least all facets already registered must be included.
190
-
-`privateKey` (optional): The private key in raw hexadecimal format of the account that will sign the transaction.
191
-
-`signerAddress` (optional): The address of the signer to select from the Hardhat signers array.
192
-
-`signerPosition` (optional): The index of the signer to select from the Hardhat signers array.
193
-
-`network` (required): The network to run the command on (e.g., localhost, mainnet, testnet).
Upgrades the implementation address for a given transparent proxy contract. This task executes the upgrade by calling the `upgrade` function on the associated `ProxyAdmin` contract. The signer executing this task must be the owner of the `ProxyAdmin` contract.
202
-
203
-
**Parameters:**
204
-
205
-
-`proxyAdminAddress` (required): The address of the `ProxyAdmin` contract that owns the proxy.
206
-
-`transparentProxyAddress` (required): The address of the transparent proxy contract to be upgraded.
207
-
-`newImplementationAddress` (required): The address of the new implementation contract.
208
-
-`privateKey` (optional): The private key in raw hexadecimal format of the account that will sign the transaction.
209
-
-`signerAddress` (optional): The address of the signer to select from the Hardhat signers array.
210
-
-`signerPosition` (optional): The index of the signer to select from the Hardhat signers array.
211
-
-`network` (required): The network to run the command on (e.g., localhost, mainnet, testnet).
Retrieves key configuration details from a `ProxyAdmin` contract. It fetches the owner of the `ProxyAdmin` contract and the current implementation address for a specific proxy contract that it manages.
220
-
221
-
**Parameters:**
222
-
223
-
-`proxyAdmin` (required): The address of the `ProxyAdmin` contract.
224
-
-`proxy` (required): The address of the proxy contract managed by the `ProxyAdmin`.
225
-
-`network` (required): The network to run the command on (e.g., localhost, mainnet, testnet).
For detailed instructions on adding or removing facets, see the **[Developer Guide](scripts/DEVELOPER_GUIDE.md)** in the Scripts documentation.
237
+
238
+
# Reference Deployment (Hedera Testnet)
239
+
240
+
> **Note**: These contracts were deployed for reference purposes and may not reflect the latest version. For up-to-date deployments, use the deployment scripts with the current codebase version (v1.17.0+). See [Scripts README](scripts/README.md) for deployment instructions.
241
+
242
+
-**Network:** Hedera Testnet
243
+
-**Status:** Reference deployment (may be outdated)
0 commit comments