@artblocks/contracts 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +67 -154
- package/artifacts/contracts/AdminACLV0.sol/AdminACLV0.json +2 -2
- package/artifacts/contracts/AdminACLV1.sol/AdminACLV1.json +2 -2
- package/artifacts/contracts/DependencyRegistryV0.sol/DependencyRegistryV0.json +22 -4
- package/artifacts/contracts/GenArt721CoreV3.sol/GenArt721CoreV3.json +42 -5
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV2.sol/MinterDAExpV2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV3.sol/MinterDAExpV3.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol/MinterDAExpSettlementV0.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV1.sol/MinterDAExpSettlementV1.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV2.sol/MinterDALinV2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV3.sol/MinterDALinV3.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol/MinterHolderV1.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV2.sol/MinterHolderV2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV3.sol/MinterHolderV3.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol/MinterMerkleV1.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol/MinterMerkleV2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV3.sol/MinterMerkleV3.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV4.sol/MinterMerkleV4.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV2.sol/MinterSetPriceV2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV3.sol/MinterSetPriceV3.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol/MinterSetPriceERC20V2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol/MinterSetPriceERC20V3.json +2 -2
- package/artifacts/contracts/engine/{GenArt721CoreV2_ENGINE_FLEX.sol → V2/GenArt721CoreV2_ENGINE_FLEX.sol}/GenArt721CoreV2_ENGINE_FLEX.json +3 -3
- package/artifacts/contracts/engine/{GenArt721CoreV2_PBAB.sol → V2/GenArt721CoreV2_PBAB.sol}/GenArt721CoreV2_PBAB.json +3 -3
- package/artifacts/contracts/engine/{GenArt721CoreV2_PRTNR.sol → V2/GenArt721CoreV2_PRTNR.sol}/GenArt721CoreV2_PRTNR.json +3 -3
- package/artifacts/contracts/engine/{GenArt721MinterBurner_PBAB.sol → V2/GenArt721MinterBurner_PBAB.sol}/GenArt721MinterBurner_PBAB.json +3 -3
- package/artifacts/contracts/engine/{GenArt721MinterDAExp_PBAB.sol → V2/GenArt721MinterDAExp_PBAB.sol}/GenArt721MinterDAExp_PBAB.json +3 -3
- package/artifacts/contracts/engine/{GenArt721Minter_PBAB.sol → V2/GenArt721Minter_PBAB.sol}/GenArt721Minter_PBAB.json +3 -3
- package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine.sol/GenArt721CoreV3_Engine.json +1960 -0
- package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol/GenArt721CoreV3_Engine_Flex.json +2247 -0
- package/artifacts/contracts/engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol/GenArt721CoreV3_Engine_Flex_PROOF.json +2247 -0
- package/artifacts/contracts/engine/V3/forks/PROHIBITION/AdminACLV0_PROHIBITION.sol/AdminACLV0_PROHIBITION.json +401 -0
- package/artifacts/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol/GenArt721CoreV3_Engine_Flex_PROHIBITION.json +2281 -0
- package/artifacts/contracts/engine/V3/forks/PROHIBITION/interfaces/IAdminACLV0_PROHIBITION.sol/IAdminACLV0_PROHIBITION.json +359 -0
- package/artifacts/contracts/engine/V3/forks/PROHIBITION/interfaces/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.sol/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.json +1094 -0
- package/artifacts/contracts/engine-registry/CoreRegistryV1.sol/CoreRegistryV1.json +242 -0
- package/artifacts/contracts/engine-registry/EngineRegistryV0.sol/EngineRegistryV0.json +2 -2
- package/artifacts/contracts/explorations/GenArt721CoreV3_Explorations.sol/GenArt721CoreV3_Explorations.json +41 -4
- package/artifacts/contracts/interfaces/0.8.x/IBytecodeStorageReader.sol/IBytecodeStorageReader.json +111 -0
- package/artifacts/contracts/interfaces/0.8.x/ICoreRegistryV1.sol/ICoreRegistryV1.json +172 -0
- package/artifacts/contracts/interfaces/0.8.x/IFilteredMinterSEAV0.sol/IFilteredMinterSEAV0.json +1034 -0
- package/artifacts/contracts/interfaces/0.8.x/IGenArt721CoreContractExposesHashSeed.sol/IGenArt721CoreContractExposesHashSeed.json +30 -0
- package/artifacts/contracts/interfaces/0.8.x/IGenArt721CoreContractV3.sol/IGenArt721CoreContractV3.json +162 -0
- package/artifacts/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Base.sol/IGenArt721CoreContractV3_Base.json +162 -0
- package/artifacts/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Engine.sol/IGenArt721CoreContractV3_Engine.json +137 -13
- package/artifacts/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Engine_Flex.sol/IGenArt721CoreContractV3_Engine_Flex.json +1060 -0
- package/artifacts/contracts/interfaces/0.8.x/IMinterFilterV1.sol/IMinterFilterV1.json +429 -0
- package/artifacts/contracts/interfaces/0.8.x/IPseudorandomAtomic.sol/IPseudorandomAtomic.json +30 -0
- package/artifacts/contracts/interfaces/0.8.x/IRandomizer_V3CoreBase.sol/IRandomizer_V3CoreBase.json +24 -0
- package/artifacts/contracts/interfaces/0.8.x/ISharedRandomizerV0.sol/ISharedRandomizerV0.json +207 -0
- package/artifacts/contracts/interfaces/0.8.x/IWETH.sol/IWETH.json +55 -0
- package/artifacts/contracts/libs/0.8.x/{BytecodeStorage.sol → BytecodeStorageV0.sol}/BytecodeStorage.json +3 -3
- package/artifacts/contracts/libs/0.8.x/BytecodeStorageV1.sol/BytecodeStorageReader.json +163 -0
- package/artifacts/contracts/libs/0.8.x/BytecodeStorageV1.sol/BytecodeStorageWriter.json +10 -0
- package/artifacts/contracts/libs/0.8.x/Bytes32Strings.sol/Bytes32Strings.json +2 -2
- package/artifacts/contracts/libs/0.8.x/ERC721_PackedHashSeed.sol/ERC721_PackedHashSeed.json +2 -2
- package/artifacts/contracts/libs/0.8.x/SSTORE2.sol/SSTORE2.json +10 -0
- package/artifacts/contracts/libs/integration-refs/delegation-registry/DelegationRegistry.sol/DelegationRegistry.json +2 -2
- package/artifacts/contracts/libs/integration-refs/gnosis-safe/GnosisSafeMock.sol/GnosisSafeMock.json +2 -2
- package/artifacts/contracts/libs/integration-refs/gnosis-safe/GnosisSafeProxyFactoryMock.sol/GnosisSafeProxyFactoryMock.json +2 -2
- package/artifacts/contracts/libs/integration-refs/gnosis-safe/MultiSendMock.sol/MultiSendMock.json +2 -2
- package/artifacts/contracts/libs/integration-refs/weth9/weth9.sol/WETH9_.json +295 -0
- package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV1.sol/MinterFilterV1.json +2 -2
- package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV2.sol/MinterFilterV2.json +692 -0
- package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV2.sol/MinterDAExpSettlementV2.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterDAExpV4.sol/MinterDAExpV4.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterDALinV4.sol/MinterDALinV4.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterHolderV4.sol/MinterHolderV4.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterMerkleV5.sol/MinterMerkleV5.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterPolyptychV0.sol/IGenArt721CoreContractV3WithRandomizer.json +104 -124
- package/artifacts/contracts/minter-suite/Minters/MinterPolyptychV0.sol/MinterPolyptychV0.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterSEAV0.sol/MinterSEAV0.json +1289 -0
- package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V4.sol/MinterSetPriceERC20V4.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV4.sol/MinterSetPriceV4.json +2 -2
- package/artifacts/contracts/mock/{BytecodeTextCR_DMock.sol/BytecodeTextCR_DMock.json → BytecodeV0TextCR_DMock.sol/BytecodeV0TextCR_DMock.json} +4 -4
- package/artifacts/contracts/mock/BytecodeV1LibCallsMock.sol/BytecodeV1LibCallsMock.json +135 -0
- package/artifacts/contracts/mock/BytecodeV1TextCR_DMock.sol/BytecodeV1TextCR_DMock.json +301 -0
- package/artifacts/contracts/mock/DeadReceiverBidderMock.sol/DeadReceiverBidderMock.json +33 -0
- package/artifacts/contracts/mock/DeadReceiverMock.sol/DeadReceiverMock.json +2 -2
- package/artifacts/contracts/mock/DummySharedMinter.sol/DummySharedMinter.json +114 -0
- package/artifacts/contracts/mock/ERC20Mock.sol/ERC20Mock.json +2 -2
- package/artifacts/contracts/mock/GasLimitReceiverBidderMock.sol/GasLimitReceiverBidderMock.json +46 -0
- package/artifacts/contracts/mock/GasLimitReceiverMock.sol/GasLimitReceiverMock.json +28 -0
- package/artifacts/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol/GenArt721CoreV3_Engine_IncorrectCoreType.json +22 -4
- package/artifacts/contracts/mock/MockAdminACLV0.sol/MockAdminACLV0Events.json +2 -2
- package/artifacts/contracts/mock/MockAdminACLV0_PROHIBITION.sol/MockAdminACLV0Events_PROHIBITION.json +440 -0
- package/artifacts/contracts/mock/OriginRegisterMock.sol/OriginRegisterMock.json +39 -0
- package/artifacts/contracts/mock/RandomizerV2_NoAssignMock.sol/RandomizerV2_NoAssignMock.json +2 -2
- package/artifacts/contracts/mock/ReentrancyHolderMock.sol/ReentrancyHolderMock.json +2 -2
- package/artifacts/contracts/mock/ReentrancyMerkleMock.sol/ReentrancyMerkleMock.json +2 -2
- package/artifacts/contracts/mock/ReentrancyMock.sol/ReentrancyMock.json +2 -2
- package/artifacts/contracts/mock/ReentrancySEAMock.sol/ReentrancySEAAutoBidderMock.json +51 -0
- package/artifacts/contracts/mock/SSTORE2Mock.sol/SSTORE2Mock.json +118 -0
- package/artifacts/contracts/{BasicRandomizer.sol → randomizer/deprecated/BasicRandomizer.sol}/BasicRandomizer.json +3 -3
- package/artifacts/contracts/randomizer/deprecated/BasicRandomizerBase_v0_0_0.sol/RandomizerBase.json +10 -0
- package/artifacts/contracts/randomizer/deprecated/PolyptychRandomizerV0.sol/BasicPolyptychRandomizerV0.json +229 -0
- package/artifacts/contracts/randomizer/deprecated/RandomizerV2.sol/BasicRandomizerV2.json +102 -0
- package/artifacts/contracts/randomizer/primitive/PseudorandomAtomicBasic.sol/PseudorandomAtomic.json +30 -0
- package/artifacts/contracts/randomizer/shared/SharedRandomizerV0.sol/SharedRandomizerV0.json +231 -0
- package/artifacts/contracts/royalty-registry/GenArt721RoyaltyOverride.sol/GenArt721RoyaltyOverride.json +2 -2
- package/contracts/AdminACLV0.sol +1 -1
- package/contracts/AdminACLV1.sol +1 -1
- package/contracts/DependencyRegistryV0.sol +89 -141
- package/contracts/GenArt721CoreV3.sol +160 -204
- package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV2.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV3.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV1.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV2.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV3.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV2.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV3.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV3.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV4.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV2.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV3.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol +1 -1
- package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol +1 -1
- package/contracts/engine/{GenArt721CoreV2_ENGINE_FLEX.sol → V2/GenArt721CoreV2_ENGINE_FLEX.sol} +2 -2
- package/contracts/engine/{GenArt721CoreV2_PBAB.sol → V2/GenArt721CoreV2_PBAB.sol} +2 -2
- package/contracts/engine/{GenArt721CoreV2_PRTNR.sol → V2/GenArt721CoreV2_PRTNR.sol} +3 -3
- package/contracts/engine/{GenArt721MinterBurner_PBAB.sol → V2/GenArt721MinterBurner_PBAB.sol} +2 -2
- package/contracts/engine/{GenArt721MinterDAExp_PBAB.sol → V2/GenArt721MinterDAExp_PBAB.sol} +2 -2
- package/contracts/engine/{GenArt721Minter_PBAB.sol → V2/GenArt721Minter_PBAB.sol} +2 -2
- package/contracts/{GenArt721CoreV3_Engine.sol → engine/V3/GenArt721CoreV3_Engine.sol} +163 -216
- package/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol +2283 -0
- package/contracts/engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol +2293 -0
- package/contracts/engine/V3/forks/PROHIBITION/AdminACLV0_PROHIBITION.sol +281 -0
- package/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol +2354 -0
- package/contracts/engine/V3/forks/PROHIBITION/interfaces/IAdminACLV0_PROHIBITION.sol +123 -0
- package/contracts/engine/V3/forks/PROHIBITION/interfaces/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.sol +29 -0
- package/contracts/engine-registry/CoreRegistryV1.sol +254 -0
- package/contracts/engine-registry/EngineRegistryV0.sol +1 -1
- package/contracts/explorations/GenArt721CoreV3_Explorations.sol +164 -190
- package/contracts/interfaces/0.8.x/IBytecodeStorageReader.sol +62 -0
- package/contracts/interfaces/0.8.x/ICoreRegistryV1.sol +27 -0
- package/contracts/interfaces/0.8.x/IDelegationRegistry.sol +1 -1
- package/contracts/interfaces/0.8.x/IDependencyRegistryCompatibleV0.sol +1 -1
- package/contracts/interfaces/0.8.x/IDependencyRegistryV0.sol +1 -1
- package/contracts/interfaces/0.8.x/IEngineRegistryV0.sol +1 -1
- package/contracts/interfaces/0.8.x/IFilteredMinterSEAV0.sol +164 -0
- package/contracts/interfaces/0.8.x/IGenArt721CoreContractExposesHashSeed.sol +11 -0
- package/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Base.sol +42 -0
- package/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Engine.sol +0 -8
- package/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Engine_Flex.sol +132 -0
- package/contracts/interfaces/0.8.x/IMinterFilterV1.sol +158 -0
- package/contracts/interfaces/0.8.x/IPseudorandomAtomic.sol +16 -0
- package/contracts/interfaces/0.8.x/IRandomizerPolyptychV0.sol +1 -1
- package/contracts/interfaces/0.8.x/IRandomizerV2.sol +2 -5
- package/contracts/interfaces/0.8.x/IRandomizer_V3CoreBase.sol +10 -0
- package/contracts/interfaces/0.8.x/ISharedRandomizerV0.sol +105 -0
- package/contracts/interfaces/0.8.x/IWETH.sol +11 -0
- package/contracts/libs/0.8.x/BytecodeStorageV1.sol +399 -0
- package/contracts/libs/0.8.x/SSTORE2.sol +109 -0
- package/contracts/libs/integration-refs/delegation-registry/DelegationRegistry.sol +1 -1
- package/contracts/libs/integration-refs/weth9/weth9.sol +765 -0
- package/contracts/minter-suite/MinterFilter/MinterFilterV1.sol +36 -48
- package/contracts/minter-suite/MinterFilter/MinterFilterV2.sol +756 -0
- package/contracts/minter-suite/Minters/MinterDAExpSettlementV2.sol +27 -35
- package/contracts/minter-suite/Minters/MinterDAExpV4.sol +17 -22
- package/contracts/minter-suite/Minters/MinterDALinV4.sol +16 -18
- package/contracts/minter-suite/Minters/MinterHolderV4.sol +20 -20
- package/contracts/minter-suite/Minters/MinterMerkleV5.sol +14 -16
- package/contracts/minter-suite/Minters/MinterPolyptychV0.sol +37 -36
- package/contracts/minter-suite/Minters/MinterSEAV0.sol +1273 -0
- package/contracts/minter-suite/Minters/MinterSetPriceERC20V4.sol +12 -12
- package/contracts/minter-suite/Minters/MinterSetPriceV4.sol +10 -11
- package/contracts/mock/{BytecodeTextCR_DMock.sol → BytecodeV0TextCR_DMock.sol} +5 -5
- package/contracts/mock/BytecodeV1LibCallsMock.sol +114 -0
- package/contracts/mock/BytecodeV1TextCR_DMock.sol +233 -0
- package/contracts/mock/DeadReceiverBidderMock.sol +23 -0
- package/contracts/mock/DeadReceiverMock.sol +1 -1
- package/contracts/mock/DummySharedMinter.sol +75 -0
- package/contracts/mock/GasLimitReceiverBidderMock.sol +23 -0
- package/contracts/mock/GasLimitReceiverMock.sol +19 -0
- package/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol +14 -27
- package/contracts/mock/MockAdminACLV0.sol +1 -1
- package/contracts/mock/MockAdminACLV0_PROHIBITION.sol +207 -0
- package/contracts/mock/OriginRegisterMock.sol +27 -0
- package/contracts/mock/RandomizerV2_NoAssignMock.sol +3 -12
- package/contracts/mock/ReentrancySEAMock.sol +36 -0
- package/contracts/mock/SSTORE2Mock.sol +93 -0
- package/contracts/{BasicRandomizer.sol → randomizer/deprecated/BasicRandomizer.sol} +1 -1
- package/contracts/randomizer/deprecated/BasicRandomizerBase_v0_0_0.sol +23 -0
- package/contracts/{BasicPolyptychRandomizerV0.sol → randomizer/deprecated/PolyptychRandomizerV0.sol} +20 -29
- package/contracts/{BasicRandomizerV2.sol → randomizer/deprecated/RandomizerV2.sol} +6 -14
- package/contracts/randomizer/primitive/PseudorandomAtomicBasic.sol +30 -0
- package/contracts/randomizer/shared/SharedRandomizerV0.sol +245 -0
- package/package.json +36 -30
- package/.env.example +0 -10
- package/artifacts/contracts/BasicPolyptychRandomizerV0.sol/BasicPolyptychRandomizerV0.json +0 -229
- package/artifacts/contracts/BasicRandomizerV2.sol/BasicRandomizerV2.json +0 -102
- package/artifacts/contracts/GenArt721CoreV3_Engine.sol/GenArt721CoreV3_Engine.json +0 -1942
- package/artifacts/contracts/engine-registry/future/EngineRegistryV1.sol/EngineRegistryV1.json +0 -109
- package/contracts/engine-registry/future/EngineRegistryV1.sol +0 -86
- /package/contracts/libs/0.8.x/{BytecodeStorage.sol → BytecodeStorageV0.sol} +0 -0
package/artifacts/contracts/engine-registry/future/EngineRegistryV1.sol/EngineRegistryV1.json
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"_format": "hh-sol-artifact-1",
|
|
3
|
-
"contractName": "EngineRegistryV1",
|
|
4
|
-
"sourceName": "contracts/engine-registry/future/EngineRegistryV1.sol",
|
|
5
|
-
"abi": [
|
|
6
|
-
{
|
|
7
|
-
"inputs": [],
|
|
8
|
-
"stateMutability": "nonpayable",
|
|
9
|
-
"type": "constructor"
|
|
10
|
-
},
|
|
11
|
-
{
|
|
12
|
-
"anonymous": false,
|
|
13
|
-
"inputs": [
|
|
14
|
-
{
|
|
15
|
-
"indexed": true,
|
|
16
|
-
"internalType": "address",
|
|
17
|
-
"name": "_contractAddress",
|
|
18
|
-
"type": "address"
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"indexed": false,
|
|
22
|
-
"internalType": "bytes32",
|
|
23
|
-
"name": "_coreVersion",
|
|
24
|
-
"type": "bytes32"
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"indexed": false,
|
|
28
|
-
"internalType": "bytes32",
|
|
29
|
-
"name": "_coreType",
|
|
30
|
-
"type": "bytes32"
|
|
31
|
-
}
|
|
32
|
-
],
|
|
33
|
-
"name": "ContractRegistered",
|
|
34
|
-
"type": "event"
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
"anonymous": false,
|
|
38
|
-
"inputs": [
|
|
39
|
-
{
|
|
40
|
-
"indexed": true,
|
|
41
|
-
"internalType": "address",
|
|
42
|
-
"name": "_contractAddress",
|
|
43
|
-
"type": "address"
|
|
44
|
-
}
|
|
45
|
-
],
|
|
46
|
-
"name": "ContractUnregistered",
|
|
47
|
-
"type": "event"
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
"inputs": [
|
|
51
|
-
{
|
|
52
|
-
"internalType": "address",
|
|
53
|
-
"name": "_contractAddress",
|
|
54
|
-
"type": "address"
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
"internalType": "bytes32",
|
|
58
|
-
"name": "_coreVersion",
|
|
59
|
-
"type": "bytes32"
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
"internalType": "bytes32",
|
|
63
|
-
"name": "_coreType",
|
|
64
|
-
"type": "bytes32"
|
|
65
|
-
}
|
|
66
|
-
],
|
|
67
|
-
"name": "registerContract",
|
|
68
|
-
"outputs": [],
|
|
69
|
-
"stateMutability": "nonpayable",
|
|
70
|
-
"type": "function"
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
"inputs": [
|
|
74
|
-
{
|
|
75
|
-
"internalType": "bytes4",
|
|
76
|
-
"name": "interfaceId",
|
|
77
|
-
"type": "bytes4"
|
|
78
|
-
}
|
|
79
|
-
],
|
|
80
|
-
"name": "supportsInterface",
|
|
81
|
-
"outputs": [
|
|
82
|
-
{
|
|
83
|
-
"internalType": "bool",
|
|
84
|
-
"name": "",
|
|
85
|
-
"type": "bool"
|
|
86
|
-
}
|
|
87
|
-
],
|
|
88
|
-
"stateMutability": "view",
|
|
89
|
-
"type": "function"
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
"inputs": [
|
|
93
|
-
{
|
|
94
|
-
"internalType": "address",
|
|
95
|
-
"name": "_contractAddress",
|
|
96
|
-
"type": "address"
|
|
97
|
-
}
|
|
98
|
-
],
|
|
99
|
-
"name": "unregisterContract",
|
|
100
|
-
"outputs": [],
|
|
101
|
-
"stateMutability": "nonpayable",
|
|
102
|
-
"type": "function"
|
|
103
|
-
}
|
|
104
|
-
],
|
|
105
|
-
"bytecode": "0x60a060405234801561001057600080fd5b50326080526080516104836100446000396000818160b101528181610114015281816101bd015261021701526104836000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a714610046578063f889b3ed1461007e578063fac2c62114610093575b600080fd5b61006a61005436600461031b565b6001600160e01b0319166301ffc9a760e01b1490565b604051901515815260200160405180910390f35b61009161008c366004610368565b6100a6565b005b6100916100a136600461039b565b6101b2565b326001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146100f75760405162461bcd60e51b81526004016100ee906103b6565b60405180910390fd5b336001600160a01b03841614806101365750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b6101525760405162461bcd60e51b81526004016100ee906103fd565b6001600160a01b03831660008181526020818152604091829020805460ff1916600117905581518581529081018490527f961dc2d336161fe3b9b4b3966ee713e56cdc9143f77c75a4334e85d6e96bc158910160405180910390a2505050565b326001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146101fa5760405162461bcd60e51b81526004016100ee906103b6565b336001600160a01b03821614806102395750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b6102555760405162461bcd60e51b81526004016100ee906103fd565b6001600160a01b03811660009081526020819052604090205460ff166102d25760405162461bcd60e51b815260206004820152602c60248201527f4f6e6c7920756e726567697374657220616c726561647920726567697374657260448201526b656420636f6e74726163747360a01b60648201526084016100ee565b6001600160a01b038116600081815260208190526040808220805460ff19169055517f3475b9891ecf29e996feed01eeb42a860ec225283a439d214ffaeac5e006be7d9190a250565b60006020828403121561032d57600080fd5b81356001600160e01b03198116811461034557600080fd5b9392505050565b80356001600160a01b038116811461036357600080fd5b919050565b60008060006060848603121561037d57600080fd5b6103868461034c565b95602085013595506040909401359392505050565b6000602082840312156103ad57600080fd5b6103458261034c565b60208082526027908201527f4f6e6c7920616c6c6f776564206465706c6f7965722d616464726573732054586040820152661037b934b3b4b760c91b606082015260800190565b60208082526030908201527f4f6e6c792063616c6c206279206465706c6f79657241646472657373206f722060408201526f5f636f6e74726163744164647265737360801b60608201526080019056fea2646970667358221220277d8bb8961c519b05a9bb9edc43a5e7969a197abf782b76249d0bd0ff2aa25164736f6c63430008110033",
|
|
106
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a714610046578063f889b3ed1461007e578063fac2c62114610093575b600080fd5b61006a61005436600461031b565b6001600160e01b0319166301ffc9a760e01b1490565b604051901515815260200160405180910390f35b61009161008c366004610368565b6100a6565b005b6100916100a136600461039b565b6101b2565b326001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146100f75760405162461bcd60e51b81526004016100ee906103b6565b60405180910390fd5b336001600160a01b03841614806101365750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b6101525760405162461bcd60e51b81526004016100ee906103fd565b6001600160a01b03831660008181526020818152604091829020805460ff1916600117905581518581529081018490527f961dc2d336161fe3b9b4b3966ee713e56cdc9143f77c75a4334e85d6e96bc158910160405180910390a2505050565b326001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146101fa5760405162461bcd60e51b81526004016100ee906103b6565b336001600160a01b03821614806102395750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b6102555760405162461bcd60e51b81526004016100ee906103fd565b6001600160a01b03811660009081526020819052604090205460ff166102d25760405162461bcd60e51b815260206004820152602c60248201527f4f6e6c7920756e726567697374657220616c726561647920726567697374657260448201526b656420636f6e74726163747360a01b60648201526084016100ee565b6001600160a01b038116600081815260208190526040808220805460ff19169055517f3475b9891ecf29e996feed01eeb42a860ec225283a439d214ffaeac5e006be7d9190a250565b60006020828403121561032d57600080fd5b81356001600160e01b03198116811461034557600080fd5b9392505050565b80356001600160a01b038116811461036357600080fd5b919050565b60008060006060848603121561037d57600080fd5b6103868461034c565b95602085013595506040909401359392505050565b6000602082840312156103ad57600080fd5b6103458261034c565b60208082526027908201527f4f6e6c7920616c6c6f776564206465706c6f7965722d616464726573732054586040820152661037b934b3b4b760c91b606082015260800190565b60208082526030908201527f4f6e6c792063616c6c206279206465706c6f79657241646472657373206f722060408201526f5f636f6e74726163744164647265737360801b60608201526080019056fea2646970667358221220277d8bb8961c519b05a9bb9edc43a5e7969a197abf782b76249d0bd0ff2aa25164736f6c63430008110033",
|
|
107
|
-
"linkReferences": {},
|
|
108
|
-
"deployedLinkReferences": {}
|
|
109
|
-
}
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: MIT
|
|
2
|
-
|
|
3
|
-
pragma solidity 0.8.17;
|
|
4
|
-
|
|
5
|
-
import "../../interfaces/0.8.x/IEngineRegistryV0.sol";
|
|
6
|
-
import "@openzeppelin-4.7/contracts/utils/introspection/ERC165.sol";
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* @title Engine Registry contract, V1.
|
|
10
|
-
* @author Art Blocks Inc.
|
|
11
|
-
* @notice Privileged Roles and Ownership:
|
|
12
|
-
* This contract intentionally has no owners or admins, and is intended
|
|
13
|
-
* to be deployed with a permissioned `deployerAddress` that may speak
|
|
14
|
-
* to this registry. If in the future multiple deployer addresses are
|
|
15
|
-
* needed to interact with this registry, a new registry version with
|
|
16
|
-
* more complex logic should be implemented and deployed to replace this.
|
|
17
|
-
* @dev TODO This contract contains only minor security improvements relative
|
|
18
|
-
* to the V0 version, and is intended to only be deployed in the future if an
|
|
19
|
-
* upgrade to the registry is needed. The V0 version should be considered the
|
|
20
|
-
* canonical version of the registry while this future version is not yet
|
|
21
|
-
* deployed.
|
|
22
|
-
*/
|
|
23
|
-
contract EngineRegistryV1 is IEngineRegistryV0, ERC165 {
|
|
24
|
-
/// configuration variable (determined at time of deployment)
|
|
25
|
-
/// that determines what address may perform registration actions.
|
|
26
|
-
address internal immutable deployerAddress;
|
|
27
|
-
|
|
28
|
-
/// internal mapping for managing known list of registered contracts.
|
|
29
|
-
mapping(address => bool) internal registeredContractAddresses;
|
|
30
|
-
|
|
31
|
-
constructor() {
|
|
32
|
-
// The deployer of the registry becomes the permissioned deployer for speaking to the registry.
|
|
33
|
-
deployerAddress = tx.origin;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* @inheritdoc IEngineRegistryV0
|
|
38
|
-
*/
|
|
39
|
-
function registerContract(
|
|
40
|
-
address _contractAddress,
|
|
41
|
-
bytes32 _coreVersion,
|
|
42
|
-
bytes32 _coreType
|
|
43
|
-
) external {
|
|
44
|
-
// CHECKS
|
|
45
|
-
// Validate against `tx.origin` rather than `msg.sender` as it is intended that this registration be
|
|
46
|
-
// performed in an automated fashion *at the time* of contract deployment for the `_contractAddress`.
|
|
47
|
-
require(
|
|
48
|
-
tx.origin == deployerAddress,
|
|
49
|
-
"Only allowed deployer-address TX origin"
|
|
50
|
-
);
|
|
51
|
-
// Prevent registration of a contract by an unrelated contract
|
|
52
|
-
require(
|
|
53
|
-
msg.sender == _contractAddress || msg.sender == deployerAddress,
|
|
54
|
-
"Only call by deployerAddress or _contractAddress"
|
|
55
|
-
);
|
|
56
|
-
// EFFECTS
|
|
57
|
-
registeredContractAddresses[_contractAddress] = true;
|
|
58
|
-
emit ContractRegistered(_contractAddress, _coreVersion, _coreType);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* @inheritdoc IEngineRegistryV0
|
|
63
|
-
*/
|
|
64
|
-
function unregisterContract(address _contractAddress) external {
|
|
65
|
-
// CHECKS
|
|
66
|
-
// Validate against `tx.origin` rather than `msg.sender` for consistency with the above approach,
|
|
67
|
-
// as we expect in usage of this contract `msg.sender == tx.origin` to be a true assessment.
|
|
68
|
-
require(
|
|
69
|
-
tx.origin == deployerAddress,
|
|
70
|
-
"Only allowed deployer-address TX origin"
|
|
71
|
-
);
|
|
72
|
-
// Prevent unregistration of a contract by an unrelated contract
|
|
73
|
-
require(
|
|
74
|
-
msg.sender == _contractAddress || msg.sender == deployerAddress,
|
|
75
|
-
"Only call by deployerAddress or _contractAddress"
|
|
76
|
-
);
|
|
77
|
-
require(
|
|
78
|
-
registeredContractAddresses[_contractAddress],
|
|
79
|
-
"Only unregister already registered contracts"
|
|
80
|
-
);
|
|
81
|
-
|
|
82
|
-
// EFFECTS
|
|
83
|
-
registeredContractAddresses[_contractAddress] = false;
|
|
84
|
-
emit ContractUnregistered(_contractAddress);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
File without changes
|