@etherisc/gif-next 0.0.2-e8b06c8-540 → 0.0.2-e8ea17d-715
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +13 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +38 -33
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +1206 -0
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +8 -8
- package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +19 -0
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +8 -8
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +23 -4
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +26 -26
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +19 -19
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +74 -74
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +55 -55
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +703 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +7 -7
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +10 -5
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +19 -19
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1208 -290
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +31 -31
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +58 -58
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +44 -39
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +35 -35
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +83 -84
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +182 -0
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +181 -0
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +16 -16
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +21 -21
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +32 -32
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +34 -34
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +19 -19
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +55 -55
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +40 -40
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +36 -36
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +36 -36
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +32 -32
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +34 -34
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +19 -19
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +72 -72
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +54 -54
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +50 -50
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +43 -43
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +58 -58
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +47 -47
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +1 -1
- package/artifacts/contracts/product/ProductService.sol/ProductService.json +20 -20
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +28 -28
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +50 -46
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +0 -183
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +101 -73
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +100 -95
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +18 -18
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +27 -27
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +164 -0
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1159 -0
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +26 -7
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +4 -4
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +62 -62
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +49 -49
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
- package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/ERC165.sol/ERC165.json +2 -2
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +11 -5
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +0 -5
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +15 -89
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +4 -65
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +6 -6
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +6 -6
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +14 -14
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +8 -8
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +6 -6
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +32 -32
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +44 -44
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +164 -0
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +40 -40
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +6 -6
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +26 -26
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +31 -31
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +145 -169
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +22 -22
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +8 -8
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +2 -2
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +4 -4
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +4 -4
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +12 -12
- package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
- package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +4 -4
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +2 -2
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +4 -4
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +4 -4
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +4 -4
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +4 -4
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +14 -14
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +2 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorLib.json +2 -2
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.json +2 -2
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.json +2 -2
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +4 -4
- package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/MathLib.json +2 -2
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +2 -2
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +21 -2
- package/contracts/authorization/AccessAdmin.sol +8 -39
- package/contracts/authorization/AccessManagerCloneable.sol +16 -0
- package/contracts/authorization/IServiceAuthorization.sol +3 -0
- package/contracts/authorization/ModuleAuthorization.sol +0 -125
- package/contracts/authorization/ServiceAuthorization.sol +4 -0
- package/contracts/distribution/DistributionService.sol +0 -1
- package/contracts/distribution/IDistributionComponent.sol +0 -30
- package/contracts/instance/{BundleManager.sol → BundleSet.sol} +23 -23
- package/contracts/instance/IInstance.sol +7 -7
- package/contracts/instance/IInstanceService.sol +6 -5
- package/contracts/instance/Instance.sol +8 -47
- package/contracts/instance/InstanceAdmin.sol +201 -269
- package/contracts/instance/InstanceAuthorizationV3.sol +14 -25
- package/contracts/instance/InstanceReader.sol +0 -5
- package/contracts/instance/InstanceService.sol +30 -103
- package/contracts/instance/InstanceStore.sol +6 -3
- package/contracts/instance/base/ObjectLifecycle.sol +106 -0
- package/contracts/instance/base/{ObjectManager.sol → ObjectSet.sol} +5 -5
- package/contracts/pool/BundleService.sol +8 -8
- package/contracts/pool/PoolService.sol +0 -1
- package/contracts/registry/IRegistry.sol +26 -16
- package/contracts/registry/IRegistryService.sol +6 -6
- package/contracts/registry/Registry.sol +80 -86
- package/contracts/registry/RegistryAdmin.sol +24 -22
- package/contracts/registry/ReleaseLifecycle.sol +27 -0
- package/contracts/registry/{ReleaseManager.sol → ReleaseRegistry.sol} +148 -191
- package/contracts/registry/ServiceAuthorizationV3.sol +5 -7
- package/contracts/registry/TokenRegistry.sol +2 -2
- package/contracts/shared/ComponentService.sol +2 -47
- package/contracts/shared/IKeyValueStore.sol +1 -0
- package/contracts/shared/ILifecycle.sol +1 -2
- package/contracts/shared/InstanceLinkedComponent.sol +0 -1
- package/contracts/shared/KeyValueStore.sol +6 -2
- package/contracts/shared/Lifecycle.sol +16 -69
- package/contracts/shared/{NftIdSetManager.sol → NftIdSet.sol} +1 -1
- package/contracts/staking/IStaking.sol +0 -1
- package/contracts/staking/IStakingService.sol +12 -5
- package/contracts/staking/Staking.sol +1 -3
- package/contracts/staking/StakingLifecycle.sol +23 -0
- package/contracts/staking/StakingManager.sol +0 -1
- package/contracts/staking/StakingReader.sol +6 -7
- package/contracts/staking/StakingStore.sol +10 -8
- package/contracts/type/ObjectType.sol +3 -7
- package/contracts/type/RoleId.sol +10 -38
- package/contracts/type/Version.sol +3 -1
- package/package.json +3 -3
- package/artifacts/contracts/authorization/InstanceAdmin.sol/InstanceAdmin.dbg.json +0 -4
- package/artifacts/contracts/authorization/InstanceAdmin.sol/InstanceAdmin.json +0 -1385
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -703
- package/artifacts/contracts/instance/InstanceAdminNew.sol/InstanceAdminNew.dbg.json +0 -4
- package/artifacts/contracts/instance/InstanceAdminNew.sol/InstanceAdminNew.json +0 -1616
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +0 -4
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +0 -228
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +0 -4
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +0 -181
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -1237
- package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +0 -1193
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +0 -1747
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +0 -1760
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +0 -1838
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +0 -1856
- package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +0 -4
- package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +0 -1562
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +0 -4
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +0 -1600
- package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +0 -4
- package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.json +0 -306
- package/contracts/authorization/InstanceAdmin.sol +0 -108
- package/contracts/instance/InstanceAdminNew.sol +0 -261
- package/contracts/instance/InstanceAuthorizationsLib.sol +0 -422
- package/contracts/shared/AccessManagerCustom.sol +0 -741
- package/contracts/shared/AccessManagerExtended.sol +0 -481
- package/contracts/shared/AccessManagerExtendedInitializeable.sol +0 -13
- package/contracts/shared/AccessManagerExtendedWithDisable.sol +0 -137
- package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +0 -14
- package/contracts/shared/IAccessManagerExtended.sol +0 -74
- package/contracts/shared/IAccessManagerExtendedWithDisable.sol +0 -18
@@ -85,8 +85,8 @@
|
|
85
85
|
"type": "function"
|
86
86
|
}
|
87
87
|
],
|
88
|
-
"bytecode": "
|
89
|
-
"deployedBytecode": "
|
88
|
+
"bytecode": "0x610184610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610055575f3560e01c80632c2f8a67146100595780636f91962014610081578063ac43d83414610096578063b2466acf146100c7575b5f80fd5b61006c610067366004610104565b6100dd565b60405190151581526020015b60405180910390f35b61006c61008f366004610135565b60ff161590565b6100aa6100a4366004610135565b60ff1690565b6040516bffffffffffffffffffffffff9091168152602001610078565b61006c6100d5366004610135565b60ff16151590565b5f60ff808416908316145b9392505050565b803560ff811681146100ff575f80fd5b919050565b5f8060408385031215610115575f80fd5b61011e836100ef565b915061012c602084016100ef565b90509250929050565b5f60208284031215610145575f80fd5b6100e8826100ef56fea264697066735822122006b46b33ddb2f4701fd0151c656584e781bb09d86522fc52637fd83aab71fb0464736f6c634300081a0033",
|
89
|
+
"deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610055575f3560e01c80632c2f8a67146100595780636f91962014610081578063ac43d83414610096578063b2466acf146100c7575b5f80fd5b61006c610067366004610104565b6100dd565b60405190151581526020015b60405180910390f35b61006c61008f366004610135565b60ff161590565b6100aa6100a4366004610135565b60ff1690565b6040516bffffffffffffffffffffffff9091168152602001610078565b61006c6100d5366004610135565b60ff16151590565b5f60ff808416908316145b9392505050565b803560ff811681146100ff575f80fd5b919050565b5f8060408385031215610115575f80fd5b61011e836100ef565b915061012c602084016100ef565b90509250929050565b5f60208284031215610145575f80fd5b6100e8826100ef56fea264697066735822122006b46b33ddb2f4701fd0151c656584e781bb09d86522fc52637fd83aab71fb0464736f6c634300081a0033",
|
90
90
|
"linkReferences": {},
|
91
91
|
"deployedLinkReferences": {}
|
92
92
|
}
|
@@ -125,8 +125,8 @@
|
|
125
125
|
"type": "function"
|
126
126
|
}
|
127
127
|
],
|
128
|
-
"bytecode": "
|
129
|
-
"deployedBytecode": "
|
128
|
+
"bytecode": "0x610362610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610060575f3560e01c80633447c0301461006457806354fe3eb71461008b578063a9dbaf251461009e578063b11a19e8146100bf578063cdc23e69146100df575b5f80fd5b6100766100723660046101c1565b1490565b60405190151581526020015b60405180910390f35b6100766100993660046101c1565b141590565b6100b16100ac3660046101e1565b6100f2565b604051908152602001610082565b6100d26100cd3660046101e1565b610102565b6040516100829190610226565b6100b16100ed366004610253565b61010d565b5f6100fc82610117565b92915050565b60606100fc8261013e565b5f6100fc8261017b565b5f60ff8216601f8111156100fc57604051632cd44ac360e21b815260040160405180910390fd5b60605f61014a83610117565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f80829050601f815111156101ae578260405163305a27a960e01b81526004016101a59190610226565b60405180910390fd5b80516101b982610306565b179392505050565b5f80604083850312156101d2575f80fd5b50508035926020909101359150565b5f602082840312156101f1575f80fd5b5035919050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f61023860208301846101f8565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f60208284031215610263575f80fd5b813567ffffffffffffffff811115610279575f80fd5b8201601f81018413610289575f80fd5b803567ffffffffffffffff8111156102a3576102a361023f565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156102d2576102d261023f565b6040528181528282016020018610156102e9575f80fd5b816020840160208301375f91810160200191909152949350505050565b80516020808301519190811015610326575f198160200360031b1b821691505b5091905056fea264697066735822122045aeab2cdbf10b9735c27f2bbb6569ef5b3a0d949b83b21e258434be954e8b5964736f6c634300081a0033",
|
129
|
+
"deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610060575f3560e01c80633447c0301461006457806354fe3eb71461008b578063a9dbaf251461009e578063b11a19e8146100bf578063cdc23e69146100df575b5f80fd5b6100766100723660046101c1565b1490565b60405190151581526020015b60405180910390f35b6100766100993660046101c1565b141590565b6100b16100ac3660046101e1565b6100f2565b604051908152602001610082565b6100d26100cd3660046101e1565b610102565b6040516100829190610226565b6100b16100ed366004610253565b61010d565b5f6100fc82610117565b92915050565b60606100fc8261013e565b5f6100fc8261017b565b5f60ff8216601f8111156100fc57604051632cd44ac360e21b815260040160405180910390fd5b60605f61014a83610117565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f80829050601f815111156101ae578260405163305a27a960e01b81526004016101a59190610226565b60405180910390fd5b80516101b982610306565b179392505050565b5f80604083850312156101d2575f80fd5b50508035926020909101359150565b5f602082840312156101f1575f80fd5b5035919050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f61023860208301846101f8565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f60208284031215610263575f80fd5b813567ffffffffffffffff811115610279575f80fd5b8201601f81018413610289575f80fd5b803567ffffffffffffffff8111156102a3576102a361023f565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156102d2576102d261023f565b6040528181528282016020018610156102e9575f80fd5b816020840160208301375f91810160200191909152949350505050565b80516020808301519190811015610326575f198160200360031b1b821691505b5091905056fea264697066735822122045aeab2cdbf10b9735c27f2bbb6569ef5b3a0d949b83b21e258434be954e8b5964736f6c634300081a0033",
|
130
130
|
"linkReferences": {},
|
131
131
|
"deployedLinkReferences": {}
|
132
132
|
}
|
@@ -268,14 +268,14 @@
|
|
268
268
|
"type": "function"
|
269
269
|
}
|
270
270
|
],
|
271
|
-
"bytecode": "
|
272
|
-
"deployedBytecode": "
|
271
|
+
"bytecode": "0x6103dc610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100d6575f3560e01c8063a5798b4e11610093578063bc1b392d1161006e578063bc1b392d146101a4578063c24922ce146101aa578063da09d484146101bd578063ddf3d631146101e3575f80fd5b8063a5798b4e14610178578063adb618321461018b578063add9ce9914610191575f80fd5b80636ac5db19146100da578063790a38ad146100fc57806383ffcdef146101255780638d38cd4b1461013857806394335b1a146101525780639df8763914610165575b5f80fd5b64ffffffffff5b60405164ffffffffff90911681526020015b60405180910390f35b61011561010a366004610317565b64ffffffffff161590565b60405190151581526020016100f3565b610115610133366004610339565b6101f6565b610115610146366004610317565b64ffffffffff16151590565b610115610160366004610339565b61020e565b610115610173366004610339565b610222565b6100e1610186366004610339565b610235565b426100e1565b61011561019f366004610339565b6102c7565b5f6100e1565b6101156101b8366004610339565b6102da565b6101d56101cb366004610317565b64ffffffffff1690565b6040519081526020016100f3565b6101156101f1366004610339565b6102ee565b5f64ffffffffff808316908416115b90505b92915050565b5f64ffffffffff8083169084161115610205565b5f64ffffffffff80841690831614610205565b604051633682752160e21b815264ffffffffff821660048201525f906102059073__$71e292c09eace9601b3e21e68a1278917a$__9063da09d48490602401602060405180830381865af415801561028f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b39190610370565b6102c49064ffffffffff8616610387565b90565b5f64ffffffffff80831690841610610205565b5f64ffffffffff8083169084161015610205565b5f64ffffffffff8084169083161415610205565b64ffffffffff81168114610314575f80fd5b50565b5f60208284031215610327575f80fd5b813561033281610302565b9392505050565b5f806040838503121561034a575f80fd5b823561035581610302565b9150602083013561036581610302565b809150509250929050565b5f60208284031215610380575f80fd5b5051919050565b8082018082111561020857634e487b7160e01b5f52601160045260245ffdfea2646970667358221220178c0d987f4f1d3fdb44d3a94a6db5ec1f1270fc65fc8ea13f2e5ad50a0303d164736f6c634300081a0033",
|
272
|
+
"deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100d6575f3560e01c8063a5798b4e11610093578063bc1b392d1161006e578063bc1b392d146101a4578063c24922ce146101aa578063da09d484146101bd578063ddf3d631146101e3575f80fd5b8063a5798b4e14610178578063adb618321461018b578063add9ce9914610191575f80fd5b80636ac5db19146100da578063790a38ad146100fc57806383ffcdef146101255780638d38cd4b1461013857806394335b1a146101525780639df8763914610165575b5f80fd5b64ffffffffff5b60405164ffffffffff90911681526020015b60405180910390f35b61011561010a366004610317565b64ffffffffff161590565b60405190151581526020016100f3565b610115610133366004610339565b6101f6565b610115610146366004610317565b64ffffffffff16151590565b610115610160366004610339565b61020e565b610115610173366004610339565b610222565b6100e1610186366004610339565b610235565b426100e1565b61011561019f366004610339565b6102c7565b5f6100e1565b6101156101b8366004610339565b6102da565b6101d56101cb366004610317565b64ffffffffff1690565b6040519081526020016100f3565b6101156101f1366004610339565b6102ee565b5f64ffffffffff808316908416115b90505b92915050565b5f64ffffffffff8083169084161115610205565b5f64ffffffffff80841690831614610205565b604051633682752160e21b815264ffffffffff821660048201525f906102059073__$71e292c09eace9601b3e21e68a1278917a$__9063da09d48490602401602060405180830381865af415801561028f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b39190610370565b6102c49064ffffffffff8616610387565b90565b5f64ffffffffff80831690841610610205565b5f64ffffffffff8083169084161015610205565b5f64ffffffffff8084169083161415610205565b64ffffffffff81168114610314575f80fd5b50565b5f60208284031215610327575f80fd5b813561033281610302565b9392505050565b5f806040838503121561034a575f80fd5b823561035581610302565b9150602083013561036581610302565b809150509250929050565b5f60208284031215610380575f80fd5b5051919050565b8082018082111561020857634e487b7160e01b5f52601160045260245ffdfea2646970667358221220178c0d987f4f1d3fdb44d3a94a6db5ec1f1270fc65fc8ea13f2e5ad50a0303d164736f6c634300081a0033",
|
273
273
|
"linkReferences": {
|
274
274
|
"contracts/type/Seconds.sol": {
|
275
275
|
"SecondsLib": [
|
276
276
|
{
|
277
277
|
"length": 20,
|
278
|
-
"start":
|
278
|
+
"start": 651
|
279
279
|
}
|
280
280
|
]
|
281
281
|
}
|
@@ -285,7 +285,7 @@
|
|
285
285
|
"SecondsLib": [
|
286
286
|
{
|
287
287
|
"length": 20,
|
288
|
-
"start":
|
288
|
+
"start": 599
|
289
289
|
}
|
290
290
|
]
|
291
291
|
}
|
@@ -3,8 +3,8 @@
|
|
3
3
|
"contractName": "MathLib",
|
4
4
|
"sourceName": "contracts/type/UFixed.sol",
|
5
5
|
"abi": [],
|
6
|
-
"bytecode": "
|
7
|
-
"deployedBytecode": "
|
6
|
+
"bytecode": "0x60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f80fdfea26469706673582212202cc980bf0a430ee2301014388bd392a4e0ea428e49d43fae39937ef0e86afdc464736f6c634300081a0033",
|
7
|
+
"deployedBytecode": "0x730000000000000000000000000000000000000000301460806040525f80fdfea26469706673582212202cc980bf0a430ee2301014388bd392a4e0ea428e49d43fae39937ef0e86afdc464736f6c634300081a0033",
|
8
8
|
"linkReferences": {},
|
9
9
|
"deployedLinkReferences": {}
|
10
10
|
}
|
@@ -491,8 +491,8 @@
|
|
491
491
|
"type": "function"
|
492
492
|
}
|
493
493
|
],
|
494
|
-
"bytecode": "
|
495
|
-
"deployedBytecode": "
|
494
|
+
"bytecode": "0x610a38610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610178575f3560e01c80637a858b97116100e4578063b67d77c51161009e578063c8a4ac9c11610079578063c8a4ac9c146102fa578063cc8b7b731461030d578063ea6515c414610320578063eb646d7114610333575f80fd5b8063b67d77c5146102da578063bc1b392d146102ed578063bdbb4630146102f3575f80fd5b80637a858b971461027357806389fa8ed714610286578063916c5c571461029b57806393aa8725146102ae578063a391c15b146102b4578063b4773329146102c7575f80fd5b8063313ce56711610135578063313ce5671461020d57806332148d731461021457806344aa68361461022757806345ebb61e1461023a578063753b14a51461024d578063771602f714610260575f80fd5b8063059f8b161461017c57806308c76ec414610197578063118fc88c146101aa5780631488c845146101cd5780631a12cd47146101e057806321e5749b146101fa575b5f80fd5b61018461033b565b6040519081526020015b60405180910390f35b6101846101a53660046107bc565b61034a565b6101bd6101b83660046107ef565b6103d0565b604051901515815260200161018e565b6101846101db36600461080f565b6103dc565b6101e8601281565b6040515f9190910b815260200161018e565b6101bd6102083660046107ef565b6104bb565b6012610184565b6101bd6102223660046107ef565b6104c4565b610184610235366004610837565b6104cd565b610184610248366004610837565b6104d9565b6101bd61025b366004610837565b6104f0565b61018461026e3660046107ef565b6104f8565b6101bd610281366004610837565b610503565b60025b60405160ff909116815260200161018e565b6101846102a9366004610837565b61050c565b5f610289565b6101846102c23660046107ef565b61052b565b6101bd6102d53660046107ef565b610536565b6101846102e83660046107ef565b610540565b5f610184565b6001610289565b6101846103083660046107ef565b61054b565b61018461031b3660046107ef565b610556565b6101bd61032e3660046107ef565b610561565b61018461056b565b6103476012600a610945565b81565b5f60011960ff8316016103975761039060026103686012600a610945565b6103729190610964565b61037c9085610983565b600161038a6012600a610945565b5f610583565b90506103ca565b60ff82166103b15761039083600161038a6012600a610945565b6103908360016103c36012600a610945565b6001610583565b92915050565b5f8282115b9392505050565b5f806103e9836012610996565b5f0b121561043e5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031303a4558504f4e454e545f544f4f5f534d414c4c0060448201526064015b60405180910390fd5b604061044b836012610996565b5f0b131561049b5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031313a4558504f4e454e545f544f4f5f4c41524745006044820152606401610435565b6104a6826012610996565b6104b190600a6109b6565b6103d590846109c4565b5f8282106103d5565b5f8183146103d5565b5f6103ca82600261034a565b5f6104e66012600a610945565b6103ca90836109c4565b5f81156103ca565b5f6103d583836105de565b5f8115156103ca565b5f6103ca61052461051e6103e86104d9565b846105e9565b600261034a565b5f6103d583836105fd565b5f828211156103d5565b5f6103d58383610660565b5f6103d583836105e9565b5f6103d583836106bb565b5f828210156103d5565b60026105796012600a610945565b6103479190610964565b5f806105908686866106d8565b905060018360028111156105a6576105a66109db565b1480156105c257505f84806105bd576105bd610950565b868809115b156105d5576105d2600182610983565b90505b95945050505050565b5f6103d58284610983565b5f6103d58383670de0b6b3a76400006106d8565b5f80821161064d5760405162461bcd60e51b815260206004820152601a60248201527f4552524f523a55464d2d3032303a44495649534f525f5a45524f0000000000006044820152606401610435565b6103d583670de0b6b3a7640000846106d8565b5f828211156106b15760405162461bcd60e51b815260206004820152601d60248201527f4552524f523a55464d2d3031303a4e454741544956455f524553554c540000006044820152606401610435565b6103d582846109ef565b5f828210156106ce576103908383610660565b6103d58284610660565b5f80805f19858709858702925082811083820303915050805f0361070f5783828161070557610705610950565b04925050506103d5565b8084116107565760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610435565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f80604083850312156107cd575f80fd5b82359150602083013560ff811681146107e4575f80fd5b809150509250929050565b5f8060408385031215610800575f80fd5b50508035926020909101359150565b5f8060408385031215610820575f80fd5b8235915060208301355f81900b81146107e4575f80fd5b5f60208284031215610847575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b600184111561089d578085048111156108815761088161084e565b600184161561088f57908102905b60019390931c928002610866565b935093915050565b5f826108b3575060016103ca565b816108bf57505f6103ca565b81600181146108d557600281146108df576108fb565b60019150506103ca565b60ff8411156108f0576108f061084e565b50506001821b6103ca565b5060208310610133831016604e8410600b841016171561091e575081810a6103ca565b61092a5f198484610862565b805f190482111561093d5761093d61084e565b029392505050565b5f6103d583836108a5565b634e487b7160e01b5f52601260045260245ffd5b5f8261097e57634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103ca576103ca61084e565b5f81810b9083900b01607f8113607f19821217156103ca576103ca61084e565b5f6103d560ff8416836108a5565b80820281158282048414176103ca576103ca61084e565b634e487b7160e01b5f52602160045260245ffd5b818103818111156103ca576103ca61084e56fea264697066735822122095b47e326ba6c85a518c73b4494484fdcea7709161e78c343656c1cc40ea3cb764736f6c634300081a0033",
|
495
|
+
"deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610178575f3560e01c80637a858b97116100e4578063b67d77c51161009e578063c8a4ac9c11610079578063c8a4ac9c146102fa578063cc8b7b731461030d578063ea6515c414610320578063eb646d7114610333575f80fd5b8063b67d77c5146102da578063bc1b392d146102ed578063bdbb4630146102f3575f80fd5b80637a858b971461027357806389fa8ed714610286578063916c5c571461029b57806393aa8725146102ae578063a391c15b146102b4578063b4773329146102c7575f80fd5b8063313ce56711610135578063313ce5671461020d57806332148d731461021457806344aa68361461022757806345ebb61e1461023a578063753b14a51461024d578063771602f714610260575f80fd5b8063059f8b161461017c57806308c76ec414610197578063118fc88c146101aa5780631488c845146101cd5780631a12cd47146101e057806321e5749b146101fa575b5f80fd5b61018461033b565b6040519081526020015b60405180910390f35b6101846101a53660046107bc565b61034a565b6101bd6101b83660046107ef565b6103d0565b604051901515815260200161018e565b6101846101db36600461080f565b6103dc565b6101e8601281565b6040515f9190910b815260200161018e565b6101bd6102083660046107ef565b6104bb565b6012610184565b6101bd6102223660046107ef565b6104c4565b610184610235366004610837565b6104cd565b610184610248366004610837565b6104d9565b6101bd61025b366004610837565b6104f0565b61018461026e3660046107ef565b6104f8565b6101bd610281366004610837565b610503565b60025b60405160ff909116815260200161018e565b6101846102a9366004610837565b61050c565b5f610289565b6101846102c23660046107ef565b61052b565b6101bd6102d53660046107ef565b610536565b6101846102e83660046107ef565b610540565b5f610184565b6001610289565b6101846103083660046107ef565b61054b565b61018461031b3660046107ef565b610556565b6101bd61032e3660046107ef565b610561565b61018461056b565b6103476012600a610945565b81565b5f60011960ff8316016103975761039060026103686012600a610945565b6103729190610964565b61037c9085610983565b600161038a6012600a610945565b5f610583565b90506103ca565b60ff82166103b15761039083600161038a6012600a610945565b6103908360016103c36012600a610945565b6001610583565b92915050565b5f8282115b9392505050565b5f806103e9836012610996565b5f0b121561043e5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031303a4558504f4e454e545f544f4f5f534d414c4c0060448201526064015b60405180910390fd5b604061044b836012610996565b5f0b131561049b5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031313a4558504f4e454e545f544f4f5f4c41524745006044820152606401610435565b6104a6826012610996565b6104b190600a6109b6565b6103d590846109c4565b5f8282106103d5565b5f8183146103d5565b5f6103ca82600261034a565b5f6104e66012600a610945565b6103ca90836109c4565b5f81156103ca565b5f6103d583836105de565b5f8115156103ca565b5f6103ca61052461051e6103e86104d9565b846105e9565b600261034a565b5f6103d583836105fd565b5f828211156103d5565b5f6103d58383610660565b5f6103d583836105e9565b5f6103d583836106bb565b5f828210156103d5565b60026105796012600a610945565b6103479190610964565b5f806105908686866106d8565b905060018360028111156105a6576105a66109db565b1480156105c257505f84806105bd576105bd610950565b868809115b156105d5576105d2600182610983565b90505b95945050505050565b5f6103d58284610983565b5f6103d58383670de0b6b3a76400006106d8565b5f80821161064d5760405162461bcd60e51b815260206004820152601a60248201527f4552524f523a55464d2d3032303a44495649534f525f5a45524f0000000000006044820152606401610435565b6103d583670de0b6b3a7640000846106d8565b5f828211156106b15760405162461bcd60e51b815260206004820152601d60248201527f4552524f523a55464d2d3031303a4e454741544956455f524553554c540000006044820152606401610435565b6103d582846109ef565b5f828210156106ce576103908383610660565b6103d58284610660565b5f80805f19858709858702925082811083820303915050805f0361070f5783828161070557610705610950565b04925050506103d5565b8084116107565760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610435565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f80604083850312156107cd575f80fd5b82359150602083013560ff811681146107e4575f80fd5b809150509250929050565b5f8060408385031215610800575f80fd5b50508035926020909101359150565b5f8060408385031215610820575f80fd5b8235915060208301355f81900b81146107e4575f80fd5b5f60208284031215610847575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b600184111561089d578085048111156108815761088161084e565b600184161561088f57908102905b60019390931c928002610866565b935093915050565b5f826108b3575060016103ca565b816108bf57505f6103ca565b81600181146108d557600281146108df576108fb565b60019150506103ca565b60ff8411156108f0576108f061084e565b50506001821b6103ca565b5060208310610133831016604e8410600b841016171561091e575081810a6103ca565b61092a5f198484610862565b805f190482111561093d5761093d61084e565b029392505050565b5f6103d583836108a5565b634e487b7160e01b5f52601260045260245ffd5b5f8261097e57634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103ca576103ca61084e565b5f81810b9083900b01607f8113607f19821217156103ca576103ca61084e565b5f6103d560ff8416836108a5565b80820281158282048414176103ca576103ca61084e565b634e487b7160e01b5f52602160045260245ffd5b818103818111156103ca576103ca61084e56fea264697066735822122095b47e326ba6c85a518c73b4494484fdcea7709161e78c343656c1cc40ea3cb764736f6c634300081a0033",
|
496
496
|
"linkReferences": {},
|
497
497
|
"deployedLinkReferences": {}
|
498
498
|
}
|
@@ -170,8 +170,8 @@
|
|
170
170
|
"type": "function"
|
171
171
|
}
|
172
172
|
],
|
173
|
-
"bytecode": "
|
174
|
-
"deployedBytecode": "
|
173
|
+
"bytecode": "0x610375610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610090575f3560e01c80638e4ad86c116100635780638e4ad86c1461011d57806394aa449c14610140578063a123b37c1461014e578063c9e66e2914610175575f80fd5b806304b8f6c5146100945780632efe0113146100af57806349a7111a146100c257806355601007146100f9575b5f80fd5b5f5b60405162ffffff90911681526020015b60405180910390f35b6100966100bd366004610267565b61018c565b6100d56100d0366004610290565b61022c565b6040805160ff948516815292841660208401529216918101919091526060016100a6565b61010f610107366004610290565b62ffffff1690565b6040519081526020016100a6565b61012e61012b3660046102b9565b90565b60405160ff90911681526020016100a6565b61009661012b3660046102d0565b61015c610107366004610290565b60405167ffffffffffffffff90911681526020016100a6565b61012e610183366004610290565b60101c60ff1690565b5f6101008410801561019f575061010083105b80156101ac575061010082105b6102075760405162461bcd60e51b815260206004820152602260248201527f4552524f523a5652532d3031303a56455253494f4e5f504152545f544f4f5f42604482015261494760f01b606482015260840160405180910390fd5b8161021a600885901b601087901b61030b565b610224919061030b565b949350505050565b5f80808360ff601082901c166102428383610324565b915061ffff600883901c165f6102588185610324565b92989197509195509350505050565b5f805f60608486031215610279575f80fd5b505081359360208301359350604090920135919050565b5f602082840312156102a0575f80fd5b813562ffffff811681146102b2575f80fd5b9392505050565b5f602082840312156102c9575f80fd5b5035919050565b5f602082840312156102e0575f80fd5b813567ffffffffffffffff811681146102b2575f80fd5b634e487b7160e01b5f52601160045260245ffd5b8082018082111561031e5761031e6102f7565b92915050565b62ffffff828116828216039081111561031e5761031e6102f756fea2646970667358221220b7b280d4d79eb682a642e02ab59edfb5583f4fd4184dbddb14f1f65201cf09d264736f6c634300081a0033",
|
174
|
+
"deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610090575f3560e01c80638e4ad86c116100635780638e4ad86c1461011d57806394aa449c14610140578063a123b37c1461014e578063c9e66e2914610175575f80fd5b806304b8f6c5146100945780632efe0113146100af57806349a7111a146100c257806355601007146100f9575b5f80fd5b5f5b60405162ffffff90911681526020015b60405180910390f35b6100966100bd366004610267565b61018c565b6100d56100d0366004610290565b61022c565b6040805160ff948516815292841660208401529216918101919091526060016100a6565b61010f610107366004610290565b62ffffff1690565b6040519081526020016100a6565b61012e61012b3660046102b9565b90565b60405160ff90911681526020016100a6565b61009661012b3660046102d0565b61015c610107366004610290565b60405167ffffffffffffffff90911681526020016100a6565b61012e610183366004610290565b60101c60ff1690565b5f6101008410801561019f575061010083105b80156101ac575061010082105b6102075760405162461bcd60e51b815260206004820152602260248201527f4552524f523a5652532d3031303a56455253494f4e5f504152545f544f4f5f42604482015261494760f01b606482015260840160405180910390fd5b8161021a600885901b601087901b61030b565b610224919061030b565b949350505050565b5f80808360ff601082901c166102428383610324565b915061ffff600883901c165f6102588185610324565b92989197509195509350505050565b5f805f60608486031215610279575f80fd5b505081359360208301359350604090920135919050565b5f602082840312156102a0575f80fd5b813562ffffff811681146102b2575f80fd5b9392505050565b5f602082840312156102c9575f80fd5b5035919050565b5f602082840312156102e0575f80fd5b813567ffffffffffffffff811681146102b2575f80fd5b634e487b7160e01b5f52601160045260245ffd5b8082018082111561031e5761031e6102f7565b92915050565b62ffffff828116828216039081111561031e5761031e6102f756fea2646970667358221220b7b280d4d79eb682a642e02ab59edfb5583f4fd4184dbddb14f1f65201cf09d264736f6c634300081a0033",
|
175
175
|
"linkReferences": {},
|
176
176
|
"deployedLinkReferences": {}
|
177
177
|
}
|
@@ -3,6 +3,25 @@
|
|
3
3
|
"contractName": "VersionPartLib",
|
4
4
|
"sourceName": "contracts/type/Version.sol",
|
5
5
|
"abi": [
|
6
|
+
{
|
7
|
+
"inputs": [
|
8
|
+
{
|
9
|
+
"internalType": "VersionPart",
|
10
|
+
"name": "a",
|
11
|
+
"type": "uint8"
|
12
|
+
}
|
13
|
+
],
|
14
|
+
"name": "eqz",
|
15
|
+
"outputs": [
|
16
|
+
{
|
17
|
+
"internalType": "bool",
|
18
|
+
"name": "",
|
19
|
+
"type": "bool"
|
20
|
+
}
|
21
|
+
],
|
22
|
+
"stateMutability": "pure",
|
23
|
+
"type": "function"
|
24
|
+
},
|
6
25
|
{
|
7
26
|
"inputs": [
|
8
27
|
{
|
@@ -42,8 +61,8 @@
|
|
42
61
|
"type": "function"
|
43
62
|
}
|
44
63
|
],
|
45
|
-
"bytecode": "
|
46
|
-
"deployedBytecode": "
|
64
|
+
"bytecode": "0x61011f610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106046575f3560e01c80636f91962014604a5780638e4ad86c146071578063ac43d834146090575b5f80fd5b605c605536600460ae565b60ff161590565b60405190151581526020015b60405180910390f35b607f607c36600460d3565b90565b60405160ff90911681526020016068565b60a1609b36600460ae565b60ff1690565b6040519081526020016068565b5f6020828403121560bd575f80fd5b813560ff8116811460cc575f80fd5b9392505050565b5f6020828403121560e2575f80fd5b503591905056fea2646970667358221220109b2d4519c6e03de0613938014ee99eeb1ac3eda338f45205aa2c8d80684d1464736f6c634300081a0033",
|
65
|
+
"deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106046575f3560e01c80636f91962014604a5780638e4ad86c146071578063ac43d834146090575b5f80fd5b605c605536600460ae565b60ff161590565b60405190151581526020015b60405180910390f35b607f607c36600460d3565b90565b60405160ff90911681526020016068565b60a1609b36600460ae565b60ff1690565b6040519081526020016068565b5f6020828403121560bd575f80fd5b813560ff8116811460cc575f80fd5b9392505050565b5f6020828403121560e2575f80fd5b503591905056fea2646970667358221220109b2d4519c6e03de0613938014ee99eeb1ac3eda338f45205aa2c8d80684d1464736f6c634300081a0033",
|
47
66
|
"linkReferences": {},
|
48
67
|
"deployedLinkReferences": {}
|
49
68
|
}
|
@@ -1,10 +1,11 @@
|
|
1
1
|
// SPDX-License-Identifier: UNLICENSED
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {AccessManager} from "@openzeppelin/contracts/access/manager/AccessManager.sol";
|
5
4
|
import {AccessManagedUpgradeable} from "@openzeppelin/contracts-upgradeable/access/manager/AccessManagedUpgradeable.sol";
|
6
5
|
import {EnumerableSet} from "@openzeppelin/contracts/utils/structs/EnumerableSet.sol";
|
6
|
+
import {ReentrancyGuardUpgradeable} from "@openzeppelin/contracts-upgradeable/utils/ReentrancyGuardUpgradeable.sol";
|
7
7
|
|
8
|
+
import {AccessManagerCloneable} from "./AccessManagerCloneable.sol";
|
8
9
|
import {IAccessAdmin} from "./IAccessAdmin.sol";
|
9
10
|
import {RoleId, RoleIdLib, ADMIN_ROLE, PUBLIC_ROLE} from "../type/RoleId.sol";
|
10
11
|
import {Selector, SelectorLib, SelectorSetLib} from "../type/Selector.sol";
|
@@ -19,6 +20,7 @@ import {Timestamp, TimestampLib} from "../type/Timestamp.sol";
|
|
19
20
|
*/
|
20
21
|
contract AccessAdmin is
|
21
22
|
AccessManagedUpgradeable,
|
23
|
+
ReentrancyGuardUpgradeable,
|
22
24
|
IAccessAdmin
|
23
25
|
{
|
24
26
|
using EnumerableSet for EnumerableSet.AddressSet;
|
@@ -27,7 +29,7 @@ contract AccessAdmin is
|
|
27
29
|
string public constant PUBLIC_ROLE_NAME = "PublicRole";
|
28
30
|
|
29
31
|
/// @dev the OpenZeppelin access manager driving the access admin contract
|
30
|
-
|
32
|
+
AccessManagerCloneable internal _authority;
|
31
33
|
|
32
34
|
/// @dev stores the deployer address and allows to create initializers
|
33
35
|
/// that are restricted to the deployer address.
|
@@ -106,7 +108,8 @@ contract AccessAdmin is
|
|
106
108
|
|
107
109
|
constructor() {
|
108
110
|
_deployer = msg.sender;
|
109
|
-
_authority = new
|
111
|
+
_authority = new AccessManagerCloneable();
|
112
|
+
_authority.initialize(address(this));
|
110
113
|
|
111
114
|
_setAuthority(address(_authority)); // set authority for oz access managed
|
112
115
|
_createAdminAndPublicRoles();
|
@@ -327,13 +330,7 @@ contract AccessAdmin is
|
|
327
330
|
revert ErrorAuthorityAlreadySet();
|
328
331
|
}
|
329
332
|
|
330
|
-
_authority =
|
331
|
-
|
332
|
-
// TODO check if we really need this
|
333
|
-
// if(!hasRole(address(this), RoleId.wrap(_authority.ADMIN_ROLE()))) {
|
334
|
-
// revert ErrorAdminRoleMissing();
|
335
|
-
// }
|
336
|
-
|
333
|
+
_authority = AccessManagerCloneable(authorityAddress);
|
337
334
|
__AccessManaged_init(address(_authority));
|
338
335
|
}
|
339
336
|
|
@@ -374,35 +371,6 @@ contract AccessAdmin is
|
|
374
371
|
roleType: RoleType.Gif,
|
375
372
|
maxMemberCount: type(uint32).max,
|
376
373
|
name: PUBLIC_ROLE_NAME}));
|
377
|
-
|
378
|
-
// TODO cleanup
|
379
|
-
// // setup manager role
|
380
|
-
// _managerRoleId = RoleIdLib.toRoleId(MANAGER_ROLE);
|
381
|
-
// _createRole(
|
382
|
-
// _managerRoleId,
|
383
|
-
// adminRoleId,
|
384
|
-
// MANAGER_ROLE_NAME,
|
385
|
-
// isCustom,
|
386
|
-
// 3, // TODO think about max member count
|
387
|
-
// false);
|
388
|
-
|
389
|
-
// // grant public role access to grant and revoke, renounce
|
390
|
-
// functions = new FunctionInfo[](3);
|
391
|
-
// functions[0] = toFunction(IAccessAdmin.grantRole.selector, "grantRole");
|
392
|
-
// functions[1] = toFunction(IAccessAdmin.revokeRole.selector, "revokeRole");
|
393
|
-
// functions[2] = toFunction(IAccessAdmin.renounceRole.selector, "renounceRole");
|
394
|
-
// _authorizeTargetFunctions(address(this), getPublicRole(), functions);
|
395
|
-
|
396
|
-
// // grant manager role access to the specified functions
|
397
|
-
// functions = new FunctionInfo[](4);
|
398
|
-
// // TODO cleanup
|
399
|
-
// // functions[0] = toFunction(IAccessAdmin.createRole.selector, "createRole");
|
400
|
-
// functions[0] = toFunction(IAccessAdmin.setRoleDisabled.selector, "setRoleDisabled");
|
401
|
-
// // functions[1] = toFunction(IAccessAdmin.createTarget.selector, "createTarget");
|
402
|
-
// functions[1] = toFunction(IAccessAdmin.setTargetLocked.selector, "setTargetLocked");
|
403
|
-
// functions[2] = toFunction(IAccessAdmin.authorizeFunctions.selector, "authorizeFunctions");
|
404
|
-
// functions[3] = toFunction(IAccessAdmin.unauthorizeFunctions.selector, "unauthorizeFunctions");
|
405
|
-
// _authorizeTargetFunctions(address(this), getManagerRole(), functions);
|
406
374
|
}
|
407
375
|
|
408
376
|
/// @dev check if target exists and reverts if it doesn't
|
@@ -556,6 +524,7 @@ contract AccessAdmin is
|
|
556
524
|
bool custom
|
557
525
|
)
|
558
526
|
internal
|
527
|
+
nonReentrant()
|
559
528
|
{
|
560
529
|
// check target does not yet exist
|
561
530
|
if(targetExists(target)) {
|
@@ -0,0 +1,16 @@
|
|
1
|
+
// SPDX-License-Identifier: UNLICENSED
|
2
|
+
pragma solidity ^0.8.20;
|
3
|
+
|
4
|
+
import {AccessManagerUpgradeable} from "@openzeppelin/contracts-upgradeable/access/manager/AccessManagerUpgradeable.sol";
|
5
|
+
|
6
|
+
contract AccessManagerCloneable is
|
7
|
+
AccessManagerUpgradeable
|
8
|
+
{
|
9
|
+
|
10
|
+
function initialize(address initialAdmin)
|
11
|
+
external
|
12
|
+
initializer()
|
13
|
+
{
|
14
|
+
__AccessManager_init(initialAdmin);
|
15
|
+
}
|
16
|
+
}
|
@@ -19,6 +19,9 @@ interface IServiceAuthorization {
|
|
19
19
|
view
|
20
20
|
returns(VersionPart release);
|
21
21
|
|
22
|
+
/// @dev Returns the service domain for the provided index.
|
23
|
+
function getServiceDomain(uint idx) external view returns(ObjectType serviceDomain);
|
24
|
+
|
22
25
|
/// @dev Returns the full list of service domains for this release.
|
23
26
|
/// Services need to be registered for the release in revers order of this list.
|
24
27
|
function getServiceDomains() external view returns(ObjectType[] memory serviceDomains);
|
@@ -16,40 +16,13 @@ contract ModuleAuthorization is
|
|
16
16
|
IModuleAuthorization
|
17
17
|
{
|
18
18
|
|
19
|
-
// TODO cleanup
|
20
|
-
// Str[] internal _targets;
|
21
19
|
ObjectType[] internal _serviceDomains;
|
22
|
-
|
23
20
|
mapping(ObjectType domain => Str target) internal _serviceTarget;
|
24
|
-
// mapping(Str target => RoleId roleid) internal _targetRole;
|
25
|
-
// mapping(Str target => bool exists) internal _targetExists;
|
26
|
-
|
27
|
-
// RoleId[] internal _roles;
|
28
|
-
// mapping(RoleId role => RoleInfo info) internal _roleInfo;
|
29
|
-
|
30
|
-
// mapping(Str target => RoleId[] authorizedRoles) internal _authorizedRoles;
|
31
|
-
// mapping(Str target => mapping(RoleId authorizedRole => IAccess.FunctionInfo[] functions)) internal _authorizedFunctions;
|
32
21
|
|
33
22
|
constructor(string memory moduleName)
|
34
23
|
Authorization(moduleName)
|
35
24
|
{ }
|
36
25
|
|
37
|
-
// function getRoles() external view returns(RoleId[] memory roles) {
|
38
|
-
// return _roles;
|
39
|
-
// }
|
40
|
-
|
41
|
-
// function getRoleInfo(RoleId roleId) external view returns (RoleInfo memory info) {
|
42
|
-
// return _roleInfo[roleId];
|
43
|
-
// }
|
44
|
-
|
45
|
-
// function roleExists(RoleId roleId) public view returns(bool exists) {
|
46
|
-
// return _roleInfo[roleId].roleType != RoleType.Undefined;
|
47
|
-
// }
|
48
|
-
|
49
|
-
// function getTargets() external view returns(Str[] memory targets) {
|
50
|
-
// return _targets;
|
51
|
-
// }
|
52
|
-
|
53
26
|
function getServiceDomains() external view returns(ObjectType[] memory serviceDomains) {
|
54
27
|
return _serviceDomains;
|
55
28
|
}
|
@@ -58,33 +31,6 @@ contract ModuleAuthorization is
|
|
58
31
|
return _serviceTarget[serviceDomain];
|
59
32
|
}
|
60
33
|
|
61
|
-
// function getTargetRole(Str target) external view returns(RoleId roleId) {
|
62
|
-
// return _targetRole[target];
|
63
|
-
// }
|
64
|
-
|
65
|
-
// function getAuthorizedRoles(Str target) external view returns(RoleId[] memory roleIds) {
|
66
|
-
// return _authorizedRoles[target];
|
67
|
-
// }
|
68
|
-
|
69
|
-
// function getAuthorizedFunctions(Str target, RoleId roleId) external view returns(IAccess.FunctionInfo[] memory authorizatedFunctions) {
|
70
|
-
// return _authorizedFunctions[target][roleId];
|
71
|
-
// }
|
72
|
-
|
73
|
-
// /// @dev Overwrite this function for a specific realease.
|
74
|
-
// function _setupTargets() internal virtual {}
|
75
|
-
|
76
|
-
// /// @dev Overwrite this function for a specific realease.
|
77
|
-
// function _setupRoles() internal virtual {}
|
78
|
-
|
79
|
-
// /// @dev Overwrite this function for a specific realease.
|
80
|
-
// function _setupTargetAuthorizations() internal virtual {}
|
81
|
-
|
82
|
-
// /// @dev Use this method to to add an authorized role.
|
83
|
-
// function _addRole(RoleId roleId, RoleInfo memory info) internal {
|
84
|
-
// _roles.push(roleId);
|
85
|
-
// _roleInfo[roleId] = info;
|
86
|
-
// }
|
87
|
-
|
88
34
|
/// @dev Add a GIF role for the provided role id and name.
|
89
35
|
function _addGifRole(RoleId roleId, string memory name) internal returns (RoleInfo memory info) {
|
90
36
|
_addRole(
|
@@ -96,17 +42,6 @@ contract ModuleAuthorization is
|
|
96
42
|
name));
|
97
43
|
}
|
98
44
|
|
99
|
-
// /// @dev Add a contract role for the provided role id and name.
|
100
|
-
// function _addContractRole(RoleId roleId, string memory name) internal {
|
101
|
-
// _addRole(
|
102
|
-
// roleId,
|
103
|
-
// _toRoleInfo(
|
104
|
-
// ADMIN_ROLE(),
|
105
|
-
// RoleType.Contract,
|
106
|
-
// 1,
|
107
|
-
// name));
|
108
|
-
// }
|
109
|
-
|
110
45
|
/// @dev Add the service target role for the specified service domain
|
111
46
|
function _addServiceTargetWithRole(ObjectType serviceDomain) internal {
|
112
47
|
// add service domain
|
@@ -132,66 +67,6 @@ contract ModuleAuthorization is
|
|
132
67
|
serviceRoleName);
|
133
68
|
}
|
134
69
|
|
135
|
-
// /// @dev Use this method to to add an authorized target together with its target role.
|
136
|
-
// function _addTargetWithRole(
|
137
|
-
// string memory targetName,
|
138
|
-
// RoleId roleId,
|
139
|
-
// string memory roleName
|
140
|
-
// )
|
141
|
-
// internal
|
142
|
-
// {
|
143
|
-
// // add target
|
144
|
-
// Str target = StrLib.toStr(targetName);
|
145
|
-
// _targets.push(target);
|
146
|
-
|
147
|
-
// _targetExists[target] = true;
|
148
|
-
|
149
|
-
// // link role to target if defined
|
150
|
-
// if (roleId != RoleIdLib.zero()) {
|
151
|
-
// // add role if new
|
152
|
-
// if (!roleExists(roleId)) {
|
153
|
-
// _addContractRole(roleId, roleName);
|
154
|
-
// }
|
155
|
-
|
156
|
-
// // link target to role
|
157
|
-
// _targetRole[target] = roleId;
|
158
|
-
// }
|
159
|
-
// }
|
160
|
-
|
161
|
-
// /// @dev creates a role info object from the provided parameters
|
162
|
-
// function _toRoleInfo(RoleId adminRoleId, RoleType roleType, uint32 maxMemberCount, string memory name) internal view returns (RoleInfo memory info) {
|
163
|
-
// return RoleInfo({
|
164
|
-
// name: StrLib.toStr(name),
|
165
|
-
// adminRoleId: adminRoleId,
|
166
|
-
// roleType: roleType,
|
167
|
-
// maxMemberCount: maxMemberCount,
|
168
|
-
// createdAt: TimestampLib.blockTimestamp()});
|
169
|
-
// }
|
170
|
-
|
171
|
-
// /// @dev Use this method to to add an authorized target.
|
172
|
-
// function _addTarget(string memory name) internal {
|
173
|
-
// _addTargetWithRole(name, RoleIdLib.zero(), "");
|
174
|
-
// }
|
175
|
-
|
176
|
-
// /// @dev Use this method to authorize the specified role to access the target.
|
177
|
-
// function _authorizeForTarget(string memory target, RoleId authorizedRoleId)
|
178
|
-
// internal
|
179
|
-
// returns (IAccess.FunctionInfo[] storage authorizatedFunctions)
|
180
|
-
// {
|
181
|
-
// Str targetStr = StrLib.toStr(target);
|
182
|
-
// _authorizedRoles[targetStr].push(authorizedRoleId);
|
183
|
-
// return _authorizedFunctions[targetStr][authorizedRoleId];
|
184
|
-
// }
|
185
|
-
|
186
|
-
// /// @dev Use this method to authorize a specific function authorization
|
187
|
-
// function _authorize(IAccess.FunctionInfo[] storage functions, bytes4 selector, string memory name) internal {
|
188
|
-
// functions.push(
|
189
|
-
// IAccess.FunctionInfo({
|
190
|
-
// selector: SelectorLib.toSelector(selector),
|
191
|
-
// name: StrLib.toStr(name),
|
192
|
-
// createdAt: TimestampLib.blockTimestamp()}));
|
193
|
-
// }
|
194
|
-
|
195
70
|
/// @dev role id for targets registry, staking and instance
|
196
71
|
function _getTargetRoleId(ObjectType targetDomain)
|
197
72
|
internal
|
@@ -40,6 +40,10 @@ contract ServiceAuthorization
|
|
40
40
|
return _serviceDomains;
|
41
41
|
}
|
42
42
|
|
43
|
+
function getServiceDomain(uint idx) external view returns(ObjectType serviceDomain) {
|
44
|
+
return _serviceDomains[idx];
|
45
|
+
}
|
46
|
+
|
43
47
|
function getServiceAddress(ObjectType serviceDomain) external view returns(address service) {
|
44
48
|
return _serviceAddress[serviceDomain];
|
45
49
|
}
|
@@ -3,7 +3,6 @@ pragma solidity ^0.8.20;
|
|
3
3
|
|
4
4
|
import {IRegistry} from "../registry/IRegistry.sol";
|
5
5
|
import {IInstance} from "../instance/IInstance.sol";
|
6
|
-
import {InstanceAdmin} from "../instance/InstanceAdmin.sol";
|
7
6
|
import {IComponentService} from "../shared/IComponentService.sol";
|
8
7
|
import {IInstanceService} from "../instance/IInstanceService.sol";
|
9
8
|
import {IRegistryService} from "../registry/IRegistryService.sol";
|
@@ -16,36 +16,6 @@ interface IDistributionComponent is IInstanceLinkedComponent {
|
|
16
16
|
|
17
17
|
event LogDistributorUpdated(address to, address caller);
|
18
18
|
|
19
|
-
// TODO cleanup
|
20
|
-
// function setFees(
|
21
|
-
// Fee memory distributionFee,
|
22
|
-
// Fee memory minDistributionOwnerFee
|
23
|
-
// ) external;
|
24
|
-
|
25
|
-
// function createDistributorType(
|
26
|
-
// string memory name,
|
27
|
-
// UFixed minDiscountPercentage,
|
28
|
-
// UFixed maxDiscountPercentage,
|
29
|
-
// UFixed commissionPercentage,
|
30
|
-
// uint32 maxReferralCount,
|
31
|
-
// uint32 maxReferralLifetime,
|
32
|
-
// bool allowSelfReferrals,
|
33
|
-
// bool allowRenewals,
|
34
|
-
// bytes memory data
|
35
|
-
// ) external returns (DistributorType distributorType);
|
36
|
-
|
37
|
-
// function createDistributor(
|
38
|
-
// address distributor,
|
39
|
-
// DistributorType distributorType,
|
40
|
-
// bytes memory data
|
41
|
-
// ) external returns(NftId distributorNftId);
|
42
|
-
|
43
|
-
// function updateDistributorType(
|
44
|
-
// NftId distributorNftId,
|
45
|
-
// DistributorType distributorType,
|
46
|
-
// bytes memory data
|
47
|
-
// ) external;
|
48
|
-
|
49
19
|
/// @dev Returns true iff the provided address is registered as a distributor with this distribution component.
|
50
20
|
function isDistributor(address candidate) external view returns (bool);
|
51
21
|
|