Skip to content

Commit 099d26d

Browse files
committed
chore: run linter
1 parent 57130d5 commit 099d26d

File tree

2 files changed

+15
-13
lines changed

2 files changed

+15
-13
lines changed

examples/oft-alt/README.md

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ This example demonstrates the most common scenario for OFTAlt deployments:
5353
```
5454

5555
**This example includes both contracts:**
56+
5657
- **`MyOFT.sol`** - Standard OFT for regular EVM chains with native gas fees (deployed on Arbitrum)
5758
- **`MyOFTAlt.sol`** - OFTAlt for chains with Alt Endpoints using ERC-20 fees (deployed on Tempo)
5859

@@ -63,6 +64,7 @@ The `lz:oft:send` task automatically detects which endpoint type is being used a
6364
The **OFTAlt** (Omnichain Fungible Token Alt) is a variant of the standard OFT designed for blockchains that use [Alt Endpoints](https://docs.layerzero.network/v2/concepts/protocol/layerzero-endpoint-alt). Alt Endpoints are deployed on chains where transaction fees are paid in ERC-20 stablecoins rather than native tokens.
6465

6566
Examples of chains using Alt Endpoints:
67+
6668
- **Tempo**: A payments-focused blockchain where fees are paid in TIP-20 stablecoins
6769

6870
The OFTAlt works identically to standard OFT in terms of token transfer mechanics—burning on the source chain and minting on the destination chain—but handles fee payment differently.
@@ -71,12 +73,12 @@ The OFTAlt works identically to standard OFT in terms of token transfer mechanic
7173

7274
## Key Differences from Standard OFT
7375

74-
| Aspect | Standard OFT | OFTAlt |
75-
|--------|-------------|--------|
76-
| **Fee Payment** | `msg.value` (native ETH/AVAX/etc.) | ERC-20 `transferFrom` |
77-
| **Pre-requisite** | None | Approve Endpoint for fee spending |
78-
| **Cross-chain Logic** | Standard | Standard (no changes) |
79-
| **Endpoint Type** | EndpointV2 | EndpointV2Alt |
76+
| Aspect | Standard OFT | OFTAlt |
77+
| --------------------- | ---------------------------------- | --------------------------------- |
78+
| **Fee Payment** | `msg.value` (native ETH/AVAX/etc.) | ERC-20 `transferFrom` |
79+
| **Pre-requisite** | None | Approve Endpoint for fee spending |
80+
| **Cross-chain Logic** | Standard | Standard (no changes) |
81+
| **Endpoint Type** | EndpointV2 | EndpointV2Alt |
8082

8183
### Fee Payment Flow
8284

@@ -126,6 +128,7 @@ RPC_URL_TEMPO_TESTNET="https://rpc.testnet.tempo.xyz"
126128
```
127129

128130
Fund this deployer address/account with:
131+
129132
- Native tokens for gas on standard EVM chains (e.g., ETH on Arbitrum Sepolia)
130133
- **ERC-20 fee tokens** (stablecoins) on Tempo testnet for LayerZero fees
131134

@@ -263,7 +266,7 @@ pnpm test:hardhat
263266

264267
### Adding other chains
265268

266-
If you're adding another EVM chain, first, add it to the `hardhat.config.ts`.
269+
If you're adding another EVM chain, first, add it to the `hardhat.config.ts`.
267270

268271
Then, modify `layerzero.config.ts` with the following changes:
269272

@@ -341,15 +344,15 @@ Calls the configuration functions between your deployed OApp contracts on every
341344

342345
Running `lz:oapp:wire` will make the following function calls per pathway connection for a fully defined config file using your specified settings and your environment variables (Private Keys and RPCs):
343346

344-
- <a href="https://github.com/LayerZero-Labs/LayerZero-v2/blob/main/packages/layerzero-v2/evm/oapp/contracts/oapp/OAppCore.sol#L33-L46"><code>function setPeer(uint32 _eid, bytes32 _peer) public virtual onlyOwner {}</code></a>
347+
- <a href="https://github.com/LayerZero-Labs/LayerZero-v2/blob/main/packages/layerzero-v2/evm/oapp/contracts/oapp/OAppCore.sol#L33-L46"><code>function setPeer(uint32 \_eid, bytes32 \_peer) public virtual onlyOwner {}</code></a>
345348

346-
- <a href="https://github.com/LayerZero-Labs/LayerZero-v2/blob/main/packages/layerzero-v2/evm/protocol/contracts/MessageLibManager.sol#L304-L311"><code>function setConfig(address _oapp, address _lib, SetConfigParam[] calldata _params) external onlyRegistered(_lib) {}</code></a>
349+
- <a href="https://github.com/LayerZero-Labs/LayerZero-v2/blob/main/packages/layerzero-v2/evm/protocol/contracts/MessageLibManager.sol#L304-L311"><code>function setConfig(address \_oapp, address \_lib, SetConfigParam[] calldata \_params) external onlyRegistered(\_lib) {}</code></a>
347350

348-
- <a href="https://github.com/LayerZero-Labs/LayerZero-v2/blob/main/packages/layerzero-v2/evm/oapp/contracts/oapp/libs/OAppOptionsType3.sol#L18-L36"><code>function setEnforcedOptions(EnforcedOptionParam[] calldata _enforcedOptions) public virtual onlyOwner {}</code></a>
351+
- <a href="https://github.com/LayerZero-Labs/LayerZero-v2/blob/main/packages/layerzero-v2/evm/oapp/contracts/oapp/libs/OAppOptionsType3.sol#L18-L36"><code>function setEnforcedOptions(EnforcedOptionParam[] calldata \_enforcedOptions) public virtual onlyOwner {}</code></a>
349352

350-
- <a href="https://github.com/LayerZero-Labs/LayerZero-v2/blob/main/packages/layerzero-v2/evm/protocol/contracts/MessageLibManager.sol#L223-L238"><code>function setSendLibrary(address _oapp, uint32 _eid, address _newLib) external onlyRegisteredOrDefault(_newLib) isSendLib(_newLib) onlySupportedEid(_newLib, _eid) {}</code></a>
353+
- <a href="https://github.com/LayerZero-Labs/LayerZero-v2/blob/main/packages/layerzero-v2/evm/protocol/contracts/MessageLibManager.sol#L223-L238"><code>function setSendLibrary(address \_oapp, uint32 \_eid, address \_newLib) external onlyRegisteredOrDefault(\_newLib) isSendLib(\_newLib) onlySupportedEid(\_newLib, \_eid) {}</code></a>
351354

352-
- <a href="https://github.com/LayerZero-Labs/LayerZero-v2/blob/main/packages/layerzero-v2/evm/protocol/contracts/MessageLibManager.sol#L223-L273"><code>function setReceiveLibrary(address _oapp, uint32 _eid, address _newLib, uint256 _gracePeriod) external onlyRegisteredOrDefault(_newLib) isReceiveLib(_newLib) onlySupportedEid(_newLib, _eid) {}</code></a>
355+
- <a href="https://github.com/LayerZero-Labs/LayerZero-v2/blob/main/packages/layerzero-v2/evm/protocol/contracts/MessageLibManager.sol#L223-L273"><code>function setReceiveLibrary(address \_oapp, uint32 \_eid, address \_newLib, uint256 \_gracePeriod) external onlyRegisteredOrDefault(\_newLib) isReceiveLib(\_newLib) onlySupportedEid(\_newLib, \_eid) {}</code></a>
353356

354357
To use this task, run:
355358

examples/oft-alt/contracts/MyOFT.sol

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,3 @@ contract MyOFT is OFT {
1515
address _delegate
1616
) OFT(_name, _symbol, _lzEndpoint, _delegate) Ownable(_delegate) {}
1717
}
18-

0 commit comments

Comments
 (0)