This is a plugin for the Ethereum application which helps parsing and displaying relevant information when signing a 1inch transaction.
Clone the plugin to a new folder.
git clone https://github.com/blooo-io/app-plugin-1inch.git
Then in the same folder clone two more repositories, which is the plugin-tools and app-ethereum.
git clone https://github.com/LedgerHQ/plugin-tools.git #plugin-tools
git clone --recurse-submodules https://github.com/LedgerHQ/app-ethereum.git #app-ethereum
Need more information about the interface, the architecture, or general stuff about ethereum plugins? You can find more about them in the ethereum-app documentation.
Smart contracts covered by this plugin are:
Network | Version | Smart Contract |
---|---|---|
Ethereum | V3 | 0x11111112542D85B3EF69AE05771c2dCCff4fAa26 |
Ethereum | V4 | 0x1111111254fb6c44bAC0beD2854e76F90643097d |
Ethereum | V5 | 0x1111111254eeb25477b68fb85ed929f73a960582 |
Polygon | V3 | 0x11111112542D85B3EF69AE05771c2dCCff4fAa26 |
Polygon | V4 | 0x1111111254fb6c44bAC0beD2854e76F90643097d |
Polygon | V5 | 0x1111111254eeb25477b68fb85ed929f73a960582 |
Function | Selector | Displayed Parameters | ||||||
---|---|---|---|---|---|---|---|---|
Swap | 0x7c025200 |
|
||||||
Swap (v5) | 0x12aa3caf |
|
||||||
Unoswap | 0x2e95b6c8 |
|
||||||
Unoswap (v5) | 0x0502b1c5 |
|
||||||
unoswapWithPermit | 0xa1251d75 |
|
||||||
unoswapToWithPermit (v5) | 0x3c15fd91 |
|
||||||
uniswapV3Swap | 0xe449022e |
|
||||||
uniswapV3SwapTo | 0xbc80f1a8 |
|
||||||
uniswapV3SwapToWithPermit | 0x2521b930 |
|
||||||
clipperSwap | 0xb0431182 |
|
||||||
clipperSwap (v5) | 0x84bd6d29 |
|
||||||
clipperSwapToWithPermit | 0xd6a92a5d |
|
||||||
clipperSwapToWithPermit (v5) | 0xc805a666 |
|
||||||
fillOrderRFQ | 0xd0a3b665 |
|
||||||
fillOrderRFQ (v5) | 0x3eca9c0a |
|
||||||
fillOrderRFQToWithPermit | 0x4cc4a27b |
|
||||||
fillOrderRFQToWithPermit (v5) | 0x70ccbd31 |
|
Go to the plugin-tools folder and run the "./start" script.
cd plugin-tools # go to plugin folder
./start.sh # run the script start.sh
The script will build a docker image and attach a console. When the docker image is running go to the "app-plugin-1inch" folder and build the ".elf" files.
cd app-plugin-1inch/tests # go to the tests folder in app-plugin-1inch
./build_local_test_elfs.sh # run the script build_local_test_elfs.sh
To test the plugin go to the tests folder from the "app-plugin-1inch" and run the script "test"
cd app-plugin-1inch/tests # go to the tests folder in app-plugin-1inch
yarn test # run the script test
The flow processed in GitHub Actions is the following:
- Code formatting with clang-format
- Compilation of the application for Ledger Nano S in ledger-app-builder