diff --git a/abi/Summoner.json b/abi/Summoner.json index 156cd4c..94b1539 100644 --- a/abi/Summoner.json +++ b/abi/Summoner.json @@ -1,70 +1,82 @@ [ - { - "type": "function", - "name": "summon", - "inputs": [ - { - "name": "summoner", - "type": "address", - "internalType": "address" - }, - { - "name": "shares", - "type": "uint88", - "internalType": "uint88" - }, - { - "name": "locked", - "type": "bool", - "internalType": "bool" - }, - { - "name": "salt", - "type": "bytes12", - "internalType": "bytes12" - } - ], - "outputs": [ - { - "name": "account", - "type": "address", - "internalType": "contract IAccounts" - } - ], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "summonForToken", - "inputs": [ - { - "name": "token", - "type": "address", - "internalType": "address" - }, - { - "name": "nft", - "type": "bool", - "internalType": "bool" - }, - { - "name": "threshold", - "type": "uint88", - "internalType": "uint88" - }, - { - "name": "salt", - "type": "bytes12", - "internalType": "bytes12" - } - ], - "outputs": [ - { - "name": "account", - "type": "address", - "internalType": "contract IAccounts" - } - ], - "stateMutability": "payable" - } - ] \ No newline at end of file + { + "type": "function", + "name": "summon", + "inputs": [ + { + "name": "summoners", + "type": "tuple[]", + "internalType": "struct Summoner.Ownership[]", + "components": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "shares", + "type": "uint96", + "internalType": "uint96" + } + ] + }, + { + "name": "threshold", + "type": "uint88", + "internalType": "uint88" + }, + { + "name": "locked", + "type": "bool", + "internalType": "bool" + }, + { + "name": "salt", + "type": "bytes12", + "internalType": "bytes12" + } + ], + "outputs": [ + { + "name": "account", + "type": "address", + "internalType": "contract IAccounts" + } + ], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "summonForToken", + "inputs": [ + { + "name": "token", + "type": "address", + "internalType": "address" + }, + { + "name": "standard", + "type": "uint8", + "internalType": "enum Summoner.Standard" + }, + { + "name": "threshold", + "type": "uint88", + "internalType": "uint88" + }, + { + "name": "salt", + "type": "bytes12", + "internalType": "bytes12" + } + ], + "outputs": [ + { + "name": "account", + "type": "address", + "internalType": "contract IAccounts" + } + ], + "stateMutability": "payable" + } +] \ No newline at end of file diff --git a/docs/src/src/Dagon.sol/contract.Dagon.md b/docs/src/src/Dagon.sol/contract.Dagon.md index e520eb7..38306de 100644 --- a/docs/src/src/Dagon.sol/contract.Dagon.md +++ b/docs/src/src/Dagon.sol/contract.Dagon.md @@ -1,5 +1,5 @@ # Dagon -[Git Source](https://github.com/Moloch-Mystics/dagon/blob/65b43bfbebe7dc8176f84027fc17e3554a0b2583/src/Dagon.sol) +[Git Source](https://github.com/Moloch-Mystics/dagon/blob/61631c322dd3fa7b753c15a6c86011e828ae4ba4/src/Dagon.sol) **Inherits:** ERC6909 diff --git a/docs/src/src/Dagon.sol/interface.IAuth.md b/docs/src/src/Dagon.sol/interface.IAuth.md index 2b57b9b..86809d3 100644 --- a/docs/src/src/Dagon.sol/interface.IAuth.md +++ b/docs/src/src/Dagon.sol/interface.IAuth.md @@ -1,5 +1,5 @@ # IAuth -[Git Source](https://github.com/Moloch-Mystics/dagon/blob/65b43bfbebe7dc8176f84027fc17e3554a0b2583/src/Dagon.sol) +[Git Source](https://github.com/Moloch-Mystics/dagon/blob/61631c322dd3fa7b753c15a6c86011e828ae4ba4/src/Dagon.sol) Simple authority interface for contracts. diff --git a/docs/src/src/Dagon.sol/interface.IOwnable.md b/docs/src/src/Dagon.sol/interface.IOwnable.md index 6e7ee17..8945fd8 100644 --- a/docs/src/src/Dagon.sol/interface.IOwnable.md +++ b/docs/src/src/Dagon.sol/interface.IOwnable.md @@ -1,5 +1,5 @@ # IOwnable -[Git Source](https://github.com/Moloch-Mystics/dagon/blob/65b43bfbebe7dc8176f84027fc17e3554a0b2583/src/Dagon.sol) +[Git Source](https://github.com/Moloch-Mystics/dagon/blob/61631c322dd3fa7b753c15a6c86011e828ae4ba4/src/Dagon.sol) Simple ownership interface for handover requests. diff --git a/docs/src/src/Summoner.sol/contract.Summoner.md b/docs/src/src/Summoner.sol/contract.Summoner.md index cee5798..680da4b 100644 --- a/docs/src/src/Summoner.sol/contract.Summoner.md +++ b/docs/src/src/Summoner.sol/contract.Summoner.md @@ -1,5 +1,5 @@ # Summoner -[Git Source](https://github.com/Moloch-Mystics/dagon/blob/65b43bfbebe7dc8176f84027fc17e3554a0b2583/src/Summoner.sol) +[Git Source](https://github.com/Moloch-Mystics/dagon/blob/61631c322dd3fa7b753c15a6c86011e828ae4ba4/src/Summoner.sol) Simple summoner for Dagon (ð’€­) group accounts. @@ -24,7 +24,7 @@ IAccounts internal constant FACTORY = IAccounts(0x000000000000dD366cc2E4432bB998 ```solidity -function summon(address summoner, uint88 shares, bool locked, bytes12 salt) +function summon(Ownership[] calldata summoners, uint88 threshold, bool locked, bytes12 salt) public payable returns (IAccounts account); @@ -34,12 +34,22 @@ function summon(address summoner, uint88 shares, bool locked, bytes12 salt) ```solidity -function summonForToken(address token, bool nft, uint88 threshold, bytes12 salt) +function summonForToken(address token, Standard standard, uint88 threshold, bytes12 salt) public payable returns (IAccounts account); ``` +## Structs +### Ownership + +```solidity +struct Ownership { + address owner; + uint96 shares; +} +``` + ## Enums ### Standard diff --git a/docs/src/src/Summoner.sol/interface.IAccounts.md b/docs/src/src/Summoner.sol/interface.IAccounts.md index 54d1313..3ef8312 100644 --- a/docs/src/src/Summoner.sol/interface.IAccounts.md +++ b/docs/src/src/Summoner.sol/interface.IAccounts.md @@ -1,7 +1,7 @@ # IAccounts -[Git Source](https://github.com/Moloch-Mystics/dagon/blob/65b43bfbebe7dc8176f84027fc17e3554a0b2583/src/Summoner.sol) +[Git Source](https://github.com/Moloch-Mystics/dagon/blob/61631c322dd3fa7b753c15a6c86011e828ae4ba4/src/Summoner.sol) -*Simple interface for Nani (ð’€­) user account creation.* +*Simple interface for Nani (ð’€­) user account creation and setup.* ## Functions