stevennevins / account-bound-proxies Goto Github PK
View Code? Open in Web Editor NEWextending functionality of EOAs
extending functionality of EOAs
src/Router.sol
- Add a
nonce
variable of typeuint256
• Add asignedMultiSend
function that acceptsbytes calldata transactions
,bytes calldata signature
, anduint256 nonce
• Verify the signature and recover the owner address
• Check if the recovered owner address matches the current owner of the router
• Increment thenonce
value randomly
• Call themultiSend
function with the providedtransactions
parameter
test/Router.t.sol
- Add test cases for the new
signedMultiSend
function
• Test the functionality of verifying the signature, recovering the owner address, and incrementing the nonce
docs/Router.md
• Write an overview of the Router contract, including its purpose and functionalities.
• Document each public and external function in the Router contract, explaining how and when they are used.
• Create a mermaid.js diagram to visually represent how a user interacts with the Router contract. Include this diagram in the markdown file.
docs/RouterRegistry.md
• Write an overview of the RouterRegistry contract, including its purpose and functionalities.
• Document each public and external function in the RouterRegistry contract, explaining how and when they are used.
• Create a mermaid.js diagram to visually represent how a user interacts with the RouterRegistry contract. Include this diagram in the markdown file.
docs/IOwner.md
• Write an overview of the IOwner interface, including its purpose and functionalities.
• Document each public and external function in the IOwner interface, explaining how and when they are used.
• Create a mermaid.js diagram to visually represent how a user interacts with the IOwner interface. Include this diagram in the markdown file.
docs/MultiSendCallOnly.md
• Write an overview of the MultiSendCallOnly library, including its purpose and functionalities.
• Document each public and external function in the MultiSendCallOnly library, explaining how and when they are used.
• Create a mermaid.js diagram to visually represent how a user interacts with the MultiSendCallOnly library. Include this diagram in the markdown file.
README.md
• Add a section that provides an overview of the documentation available for each contract in the
src
directory.
• Include links to the markdown files for each contract in the new section.
test/RouterTest.sol
• Import the Router contract, the MultiSendCallOnly library, and the necessary testing libraries.
• Define the RouterTest contract.
• Write a test function to check if the caller is the owner of the Router. This function should create a Router contract, call a function on the contract with the owner as the caller, and assert that the function call is successful.
• Write a test function to check if the caller is not the owner of the Router. This function should create a Router contract, call a function on the contract with a non-owner as the caller, and assert that the function call reverts.
• Write a test function to check the multiSend function with large transaction bundles. This function should create a Router contract, create a large transaction bundle, call the multiSend function with the transaction bundle, and assert that the function call is successful.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.