Skip to content

Commit

Permalink
Use latest dynamic-contract dependency (#499)
Browse files Browse the repository at this point in the history
* Install latest dynamic-contracts deps

* Update contracts that use BaseRouter
  • Loading branch information
nkrishang authored Sep 12, 2023
1 parent ff3a3e9 commit 261d352
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 14 deletions.
14 changes: 10 additions & 4 deletions contracts/prebuilts/account/dynamic/DynamicAccount.sol
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ pragma solidity ^0.8.11;

import "../utils/AccountCore.sol";

import "@thirdweb-dev/dynamic-contracts/src/presets/BaseRouterWithDefaults.sol";
import "@thirdweb-dev/dynamic-contracts/src/presets/BaseRouter.sol";

// $$\ $$\ $$\ $$\ $$\
// $$ | $$ | \__| $$ | $$ |
Expand All @@ -18,18 +18,24 @@ import "@thirdweb-dev/dynamic-contracts/src/presets/BaseRouterWithDefaults.sol";
// \$$$$ |$$ | $$ |$$ |$$ | \$$$$$$$ |\$$$$$\$$$$ |\$$$$$$$\ $$$$$$$ |
// \____/ \__| \__|\__|\__| \_______| \_____\____/ \_______|\_______/

contract DynamicAccount is AccountCore, BaseRouterWithDefaults {
contract DynamicAccount is AccountCore, BaseRouter {
/*///////////////////////////////////////////////////////////////
Constructor
Constructor and Initializer
//////////////////////////////////////////////////////////////*/

constructor(IEntryPoint _entrypoint, Extension[] memory _defaultExtensions)
AccountCore(_entrypoint, msg.sender)
BaseRouterWithDefaults(_defaultExtensions)
BaseRouter(_defaultExtensions)
{
_disableInitializers();
}

/// @notice Initializes the smart contract wallet.
function initialize(address _defaultAdmin, bytes calldata) public override initializer {
__BaseRouter_init();
_setAdmin(_defaultAdmin, true);
}

/*///////////////////////////////////////////////////////////////
Internal overrides
//////////////////////////////////////////////////////////////*/
Expand Down
7 changes: 4 additions & 3 deletions contracts/prebuilts/account/managed/ManagedAccountFactory.sol
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
pragma solidity ^0.8.12;

// Utils
import "@thirdweb-dev/dynamic-contracts/src/presets/BaseRouterWithDefaults.sol";
import "@thirdweb-dev/dynamic-contracts/src/presets/BaseRouter.sol";
import "../utils/BaseAccountFactory.sol";

// Extensions
Expand All @@ -21,15 +21,16 @@ import { ManagedAccount, IEntryPoint } from "./ManagedAccount.sol";
// \$$$$ |$$ | $$ |$$ |$$ | \$$$$$$$ |\$$$$$\$$$$ |\$$$$$$$\ $$$$$$$ |
// \____/ \__| \__|\__|\__| \_______| \_____\____/ \_______|\_______/

contract ManagedAccountFactory is BaseAccountFactory, ContractMetadata, PermissionsEnumerable, BaseRouterWithDefaults {
contract ManagedAccountFactory is BaseAccountFactory, ContractMetadata, PermissionsEnumerable, BaseRouter {
/*///////////////////////////////////////////////////////////////
Constructor
//////////////////////////////////////////////////////////////*/

constructor(IEntryPoint _entrypoint, Extension[] memory _defaultExtensions)
BaseRouterWithDefaults(_defaultExtensions)
BaseRouter(_defaultExtensions)
BaseAccountFactory(payable(address(new ManagedAccount(_entrypoint, address(this)))), address(_entrypoint))
{
__BaseRouter_init();
_setupRole(DEFAULT_ADMIN_ROLE, msg.sender);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ pragma solidity ^0.8.11;
// \$$$$ |$$ | $$ |$$ |$$ | \$$$$$$$ |\$$$$$\$$$$ |\$$$$$$$\ $$$$$$$ |
// \____/ \__| \__|\__|\__| \_______| \_____\____/ \_______|\_______/

import "@thirdweb-dev/dynamic-contracts/src/presets/BaseRouterWithDefaults.sol";
import "@thirdweb-dev/dynamic-contracts/src/presets/BaseRouter.sol";

import "../../../extension/Multicall.sol";

Expand All @@ -34,7 +34,7 @@ contract BurnToClaimDropERC721 is
Initializable,
Multicall,
ERC2771ContextUpgradeable,
BaseRouterWithDefaults,
BaseRouter,
DefaultOperatorFiltererInit,
ContractMetadataInit,
PlatformFeeInit,
Expand All @@ -48,7 +48,7 @@ contract BurnToClaimDropERC721 is
Constructor + initializer logic
//////////////////////////////////////////////////////////////*/

constructor(Extension[] memory _extensions) BaseRouterWithDefaults(_extensions) {
constructor(Extension[] memory _extensions) BaseRouter(_extensions) {
_disableInitializers();
}

Expand All @@ -65,6 +65,9 @@ contract BurnToClaimDropERC721 is
uint128 _platformFeeBps,
address _platformFeeRecipient
) external initializer {
// Initialize extensions
__BaseRouter_init();

// Initialize inherited contracts, most base-like -> most derived.
__ERC2771Context_init(_trustedForwarders);
__ERC721A_init(_name, _symbol);
Expand Down
9 changes: 6 additions & 3 deletions contracts/prebuilts/unaudited/evolving-nfts/EvolvingNFT.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ pragma solidity ^0.8.11;
// \$$$$ |$$ | $$ |$$ |$$ | \$$$$$$$ |\$$$$$\$$$$ |\$$$$$$$\ $$$$$$$ |
// \____/ \__| \__|\__|\__| \_______| \_____\____/ \_______|\_______/

import "@thirdweb-dev/dynamic-contracts/src/presets/BaseRouterWithDefaults.sol";
import "@thirdweb-dev/dynamic-contracts/src/presets/BaseRouter.sol";

import "../../../extension/Multicall.sol";
import "../../../extension/upgradeable/Initializable.sol";
Expand All @@ -27,7 +27,7 @@ import "../../../extension/upgradeable/init/DefaultOperatorFiltererInit.sol";

contract EvolvingNFT is
Initializable,
BaseRouterWithDefaults,
BaseRouter,
Multicall,
ERC721AQueryableInit,
ERC2771ContextInit,
Expand All @@ -41,7 +41,7 @@ contract EvolvingNFT is
/// @dev Only MINTER_ROLE holders can sign off on `MintRequest`s.
bytes32 private constant EXTENSION_ROLE = keccak256("EXTENSION_ROLE");

constructor(Extension[] memory _extensions) BaseRouterWithDefaults(_extensions) {
constructor(Extension[] memory _extensions) BaseRouter(_extensions) {
_disableInitializers();
}

Expand All @@ -58,6 +58,9 @@ contract EvolvingNFT is
) external initializer initializerERC721A {
bytes32 _transferRole = keccak256("TRANSFER_ROLE");

// Initialize extensions
__BaseRouter_init();

// Initialize inherited contracts, most base-like -> most derived.
__ERC2771Context_init(_trustedForwarders);
__ERC721A_init(_name, _symbol);
Expand Down

0 comments on commit 261d352

Please sign in to comment.