Skip to content

Commit 81a0ed5

Browse files
authored
Release 3.10.0 (#500)
* pkg update * Create IAccountFactoryCore * pkg bump * pkg release 3.10.0
1 parent 7cf60b1 commit 81a0ed5

File tree

3 files changed

+44
-34
lines changed

3 files changed

+44
-34
lines changed

contracts/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@thirdweb-dev/contracts",
33
"description": "Collection of smart contracts deployable via the thirdweb SDK, dashboard and CLI",
4-
"version": "3.9.4",
4+
"version": "3.10.0",
55
"license": "Apache-2.0",
66
"repository": {
77
"type": "git",
Lines changed: 3 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,13 @@
11
// SPDX-License-Identifier: GPL-3.0
22
pragma solidity ^0.8.12;
33

4-
interface IAccountFactory {
5-
/*///////////////////////////////////////////////////////////////
6-
Events
7-
//////////////////////////////////////////////////////////////*/
8-
9-
/// @notice Emitted when a new Account is created.
10-
event AccountCreated(address indexed account, address indexed accountAdmin);
11-
12-
/// @notice Emitted when a new signer is added to an Account.
13-
event SignerAdded(address indexed account, address indexed signer);
14-
15-
/// @notice Emitted when a new signer is added to an Account.
16-
event SignerRemoved(address indexed account, address indexed signer);
4+
import "./IAccountFactoryCore.sol";
175

6+
interface IAccountFactory is IAccountFactoryCore {
187
/*///////////////////////////////////////////////////////////////
19-
Extension Functions
8+
Callback Functions
209
//////////////////////////////////////////////////////////////*/
2110

22-
/// @notice Deploys a new Account for admin.
23-
function createAccount(address admin, bytes calldata _data) external returns (address account);
24-
2511
/// @notice Callback function for an Account to register its signers.
2612
function onSignerAdded(
2713
address signer,
@@ -35,20 +21,4 @@ interface IAccountFactory {
3521
address creatorAdmin,
3622
bytes memory data
3723
) external;
38-
39-
/*///////////////////////////////////////////////////////////////
40-
View Functions
41-
//////////////////////////////////////////////////////////////*/
42-
43-
/// @notice Returns the address of the Account implementation.
44-
function accountImplementation() external view returns (address);
45-
46-
/// @notice Returns all accounts created on the factory.
47-
function getAllAccounts() external view returns (address[] memory);
48-
49-
/// @notice Returns the address of an Account that would be deployed with the given admin signer.
50-
function getAddress(address adminSigner, bytes calldata data) external view returns (address);
51-
52-
/// @notice Returns all accounts on which a signer has (active or inactive) permissions.
53-
function getAccountsOfSigner(address signer) external view returns (address[] memory accounts);
5424
}
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
// SPDX-License-Identifier: GPL-3.0
2+
pragma solidity ^0.8.12;
3+
4+
interface IAccountFactoryCore {
5+
/*///////////////////////////////////////////////////////////////
6+
Events
7+
//////////////////////////////////////////////////////////////*/
8+
9+
/// @notice Emitted when a new Account is created.
10+
event AccountCreated(address indexed account, address indexed accountAdmin);
11+
12+
/// @notice Emitted when a new signer is added to an Account.
13+
event SignerAdded(address indexed account, address indexed signer);
14+
15+
/// @notice Emitted when a new signer is added to an Account.
16+
event SignerRemoved(address indexed account, address indexed signer);
17+
18+
/*///////////////////////////////////////////////////////////////
19+
Extension Functions
20+
//////////////////////////////////////////////////////////////*/
21+
22+
/// @notice Deploys a new Account for admin.
23+
function createAccount(address admin, bytes calldata _data) external returns (address account);
24+
25+
/*///////////////////////////////////////////////////////////////
26+
View Functions
27+
//////////////////////////////////////////////////////////////*/
28+
29+
/// @notice Returns the address of the Account implementation.
30+
function accountImplementation() external view returns (address);
31+
32+
/// @notice Returns all accounts created on the factory.
33+
function getAllAccounts() external view returns (address[] memory);
34+
35+
/// @notice Returns the address of an Account that would be deployed with the given admin signer.
36+
function getAddress(address adminSigner, bytes calldata data) external view returns (address);
37+
38+
/// @notice Returns all accounts on which a signer has (active or inactive) permissions.
39+
function getAccountsOfSigner(address signer) external view returns (address[] memory accounts);
40+
}

0 commit comments

Comments
 (0)