@etherisc/gif-next 0.0.2-9dd41ff-671 → 0.0.2-9ed3c41-176
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 +30 -2
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +1253 -0
- 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 +4 -0
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +358 -0
- package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +4 -0
- package/artifacts/contracts/{instance/module/ISetup.sol/ISetup.json → authorization/IAccess.sol/IAccess.json} +2 -2
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +1032 -0
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +258 -0
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.json +290 -0
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +148 -0
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +390 -0
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +190 -0
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +4 -0
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +1505 -0
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +4 -0
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +410 -0
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +148 -352
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +154 -335
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +72 -97
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +151 -251
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +67 -64
- 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 +71 -72
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +190 -49
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +81 -141
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1158 -278
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +601 -0
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +493 -332
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +271 -109
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +65 -58
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +1103 -359
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +4 -0
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +318 -0
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.json +0 -53
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +10 -0
- 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/IAccess.sol/IAccess.json +21 -0
- 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 +4 -0
- package/artifacts/contracts/mock/Dip.sol/Dip.json +376 -0
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +4 -0
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +1155 -0
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +418 -0
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +52 -0
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +772 -0
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +675 -0
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +1063 -0
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +1034 -0
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +730 -0
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +4 -0
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +1477 -0
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +410 -0
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +95 -268
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +60 -73
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +19 -51
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +149 -285
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +134 -133
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +191 -348
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +180 -368
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +47 -84
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +93 -167
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +61 -50
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +1299 -0
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +410 -0
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +121 -211
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +75 -72
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +20 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +20 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +94 -25
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +40 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +253 -148
- package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +1 -1
- package/artifacts/contracts/product/IProductService.sol/IProductService.json +13 -55
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +180 -297
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +58 -103
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +163 -174
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +86 -59
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +288 -248
- package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +1 -1
- package/artifacts/contracts/product/ProductService.sol/ProductService.json +47 -222
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +39 -48
- 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 +106 -32
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +42 -73
- 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 +359 -47
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1557 -116
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +198 -28
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +45 -42
- 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 +4 -0
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +214 -0
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +314 -136
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +100 -96
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +892 -55
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +784 -0
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +539 -0
- 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/IComponent.sol/IComponent.json +76 -81
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +880 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +718 -0
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
- package/artifacts/contracts/{instance/base → shared}/IKeyValueStore.sol/IKeyValueStore.json +12 -16
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
- package/artifacts/contracts/{instance/base → shared}/ILifecycle.sol/ILifecycle.json +1 -6
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +7 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +21 -3
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +7 -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/IService.sol/IService.json +20 -1
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +4 -0
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +39 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +996 -0
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +497 -0
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +133 -0
- 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 +33 -20
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +31 -13
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +19 -32
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +17 -22
- 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/Service.sol/Service.json +16 -16
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +40 -4
- 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 +4 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1438 -0
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +566 -54
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +460 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.json +2005 -0
- 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 +4 -0
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +761 -0
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +592 -0
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +657 -100
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +65 -46
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2237 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +571 -0
- 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 +68 -4
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +53 -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 +34 -34
- 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 +47 -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 +149 -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 +4 -0
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
- 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 +219 -6
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +76 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
- package/artifacts/contracts/type/Selector.sol/SelectorLib.json +129 -0
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
- 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 +4 -0
- package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +17 -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 +21 -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 +591 -0
- package/contracts/authorization/AccessManagerCloneable.sol +16 -0
- package/contracts/authorization/Authorization.sol +218 -0
- package/contracts/authorization/IAccess.sol +48 -0
- package/contracts/authorization/IAccessAdmin.sol +136 -0
- package/contracts/authorization/IAuthorization.sol +54 -0
- package/contracts/authorization/IModuleAuthorization.sol +21 -0
- package/contracts/authorization/IServiceAuthorization.sol +38 -0
- package/contracts/authorization/ModuleAuthorization.sol +78 -0
- package/contracts/authorization/ServiceAuthorization.sol +90 -0
- package/contracts/distribution/BasicDistribution.sol +149 -0
- package/contracts/distribution/BasicDistributionAuthorization.sol +43 -0
- package/contracts/distribution/Distribution.sol +144 -146
- package/contracts/distribution/DistributionService.sol +69 -118
- package/contracts/distribution/IDistributionComponent.sol +20 -43
- package/contracts/distribution/IDistributionService.sol +7 -9
- package/contracts/instance/{BundleManager.sol → BundleSet.sol} +23 -23
- package/contracts/instance/IInstance.sol +21 -12
- package/contracts/instance/IInstanceService.sol +44 -25
- package/contracts/instance/Instance.sol +110 -86
- package/contracts/instance/InstanceAdmin.sol +194 -282
- package/contracts/instance/InstanceAuthorizationV3.sol +202 -0
- package/contracts/instance/InstanceReader.sol +84 -47
- package/contracts/instance/InstanceService.sol +253 -108
- package/contracts/instance/InstanceStore.sol +131 -66
- package/contracts/instance/base/BalanceStore.sol +123 -0
- package/contracts/instance/base/Cloneable.sol +2 -25
- package/contracts/instance/base/ObjectCounter.sol +21 -0
- package/contracts/instance/base/ObjectLifecycle.sol +106 -0
- package/contracts/instance/base/{ObjectManager.sol → ObjectSet.sol} +11 -14
- package/contracts/instance/module/IAccess.sol +2 -0
- package/contracts/instance/module/IBundle.sol +1 -4
- package/contracts/instance/module/IComponents.sol +15 -4
- package/contracts/instance/module/IPolicy.sol +8 -2
- package/contracts/mock/Dip.sol +26 -0
- package/contracts/oracle/BasicOracle.sol +48 -0
- package/contracts/oracle/BasicOracleAuthorization.sol +46 -0
- package/contracts/oracle/IOracle.sol +36 -0
- package/contracts/oracle/IOracleComponent.sol +32 -0
- package/contracts/oracle/IOracleService.sol +65 -0
- package/contracts/oracle/Oracle.sol +157 -0
- package/contracts/oracle/OracleService.sol +278 -0
- package/contracts/oracle/OracleServiceManager.sol +42 -0
- package/contracts/pool/BasicPool.sol +164 -0
- package/contracts/pool/BasicPoolAuthorization.sol +49 -0
- package/contracts/pool/BundleService.sol +86 -174
- package/contracts/pool/IBundleService.sol +4 -16
- package/contracts/pool/IPoolComponent.sol +4 -66
- package/contracts/pool/IPoolService.sol +45 -9
- package/contracts/pool/Pool.sol +150 -141
- package/contracts/pool/PoolService.sol +191 -144
- package/contracts/product/ApplicationService.sol +109 -42
- package/contracts/product/BasicProduct.sol +82 -0
- package/contracts/product/BasicProductAuthorization.sol +40 -0
- package/contracts/product/ClaimService.sol +18 -19
- package/contracts/product/IApplicationService.sol +1 -1
- package/contracts/product/IClaimService.sol +7 -1
- package/contracts/product/IPolicyService.sol +6 -8
- package/contracts/product/IPricingService.sol +3 -1
- package/contracts/product/IProductComponent.sol +9 -11
- package/contracts/product/IProductService.sol +1 -8
- package/contracts/product/PolicyService.sol +225 -128
- package/contracts/product/PricingService.sol +72 -48
- package/contracts/product/Product.sol +118 -105
- package/contracts/product/ProductService.sol +26 -114
- package/contracts/registry/ChainNft.sol +8 -1
- package/contracts/registry/IRegistry.sol +40 -18
- package/contracts/registry/IRegistryService.sol +15 -5
- package/contracts/registry/Registry.sol +221 -110
- package/contracts/registry/RegistryAdmin.sol +299 -77
- package/contracts/registry/RegistryService.sol +48 -14
- package/contracts/registry/RegistryServiceManager.sol +2 -9
- package/contracts/registry/ReleaseLifecycle.sol +27 -0
- package/contracts/registry/ReleaseRegistry.sol +487 -0
- package/contracts/registry/ServiceAuthorizationV3.sol +200 -0
- package/contracts/registry/TokenRegistry.sol +261 -64
- package/contracts/shared/Component.sol +139 -129
- package/contracts/shared/ComponentService.sol +527 -87
- package/contracts/shared/ComponentServiceManager.sol +35 -0
- package/contracts/shared/ComponentVerifyingService.sol +117 -0
- package/contracts/shared/ERC165.sol +1 -1
- package/contracts/shared/IComponent.sol +17 -37
- package/contracts/shared/IComponentService.sol +102 -0
- package/contracts/shared/IInstanceLinkedComponent.sol +50 -0
- package/contracts/{instance/base → shared}/IKeyValueStore.sol +7 -6
- package/contracts/{instance/base → shared}/ILifecycle.sol +3 -4
- package/contracts/shared/INftOwnable.sol +1 -1
- package/contracts/shared/IPolicyHolder.sol +6 -1
- package/contracts/shared/IService.sol +8 -1
- package/contracts/shared/InitializableCustom.sol +177 -0
- package/contracts/shared/InstanceLinkedComponent.sol +151 -0
- package/contracts/{instance/base → shared}/KeyValueStore.sol +36 -74
- package/contracts/shared/Lifecycle.sol +77 -0
- package/contracts/shared/NftIdSet.sol +65 -0
- package/contracts/shared/NftOwnable.sol +3 -13
- package/contracts/shared/PolicyHolder.sol +21 -13
- package/contracts/shared/ProxyManager.sol +2 -3
- package/contracts/shared/Registerable.sol +2 -2
- package/contracts/shared/Service.sol +32 -21
- package/contracts/shared/TokenHandler.sol +24 -1
- package/contracts/staking/IStaking.sol +167 -0
- package/contracts/staking/IStakingService.sol +105 -47
- package/contracts/staking/StakeManagerLib.sol +231 -0
- package/contracts/staking/Staking.sol +511 -0
- package/contracts/staking/StakingLifecycle.sol +23 -0
- package/contracts/staking/StakingManager.sol +53 -0
- package/contracts/staking/StakingReader.sol +186 -0
- package/contracts/staking/StakingService.sol +286 -44
- package/contracts/staking/StakingServiceManager.sol +7 -3
- package/contracts/staking/StakingStore.sol +615 -0
- package/contracts/staking/TargetManagerLib.sol +207 -0
- package/contracts/type/AddressSet.sol +1 -1
- package/contracts/type/Amount.sol +20 -1
- package/contracts/type/Blocknumber.sol +20 -3
- package/contracts/type/Fee.sol +17 -16
- package/contracts/type/NftId.sol +14 -16
- package/contracts/type/NftIdSet.sol +1 -1
- package/contracts/type/ObjectType.sol +172 -63
- package/contracts/type/Referral.sol +1 -1
- package/contracts/type/RequestId.sol +75 -0
- package/contracts/type/RiskId.sol +1 -1
- package/contracts/type/RoleId.sol +104 -69
- package/contracts/type/Seconds.sol +27 -0
- package/contracts/type/Selector.sol +102 -0
- package/contracts/type/StateId.sol +27 -2
- package/contracts/type/String.sol +53 -0
- package/contracts/type/Timestamp.sol +6 -2
- package/contracts/type/UFixed.sol +6 -0
- package/contracts/type/Version.sol +4 -2
- package/package.json +8 -5
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -778
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +0 -4
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +0 -188
- package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
- package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +0 -4
- package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
- package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +0 -581
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -194
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +0 -4
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +0 -256
- package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +0 -4
- package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +0 -4
- package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.json +0 -10
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -1018
- 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 -1715
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +0 -1728
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +0 -1747
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +0 -1765
- package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +0 -1206
- 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 -1594
- package/contracts/instance/InstanceAuthorizationsLib.sol +0 -320
- package/contracts/instance/base/Lifecycle.sol +0 -121
- package/contracts/instance/module/ISetup.sol +0 -33
- package/contracts/instance/module/ITreasury.sol +0 -23
- package/contracts/registry/ReleaseManager.sol +0 -465
- package/contracts/shared/AccessManagerCustom.sol +0 -736
- package/contracts/shared/AccessManagerExtended.sol +0 -469
- package/contracts/shared/AccessManagerExtendedInitializeable.sol +0 -13
- package/contracts/shared/AccessManagerExtendedWithDisable.sol +0 -125
- package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +0 -14
- package/contracts/shared/AccessManagerUpgradeableInitializeable.sol +0 -13
- package/contracts/shared/IAccessManagerExtended.sol +0 -74
- package/contracts/shared/IAccessManagerExtendedWithDisable.sol +0 -17
@@ -1,320 +0,0 @@
|
|
1
|
-
// SPDX-License-Identifier: Apache-2.0
|
2
|
-
pragma solidity ^0.8.20;
|
3
|
-
|
4
|
-
import {ADMIN_ROLE, INSTANCE_OWNER_ROLE, DISTRIBUTION_OWNER_ROLE, POOL_OWNER_ROLE, PRODUCT_OWNER_ROLE, INSTANCE_SERVICE_ROLE, DISTRIBUTION_SERVICE_ROLE, POOL_SERVICE_ROLE, PRODUCT_SERVICE_ROLE, APPLICATION_SERVICE_ROLE, POLICY_SERVICE_ROLE, CLAIM_SERVICE_ROLE, BUNDLE_SERVICE_ROLE, INSTANCE_ROLE} from "../type/RoleId.sol";
|
5
|
-
import {INSTANCE, BUNDLE, APPLICATION, POLICY, CLAIM, PRODUCT, DISTRIBUTION, REGISTRY, POOL} from "../type/ObjectType.sol";
|
6
|
-
import {VersionPart} from "../type/Version.sol";
|
7
|
-
|
8
|
-
import {IRegistry} from "../registry/IRegistry.sol";
|
9
|
-
|
10
|
-
import {Instance} from "./Instance.sol";
|
11
|
-
import {InstanceAdmin} from "./InstanceAdmin.sol";
|
12
|
-
import {InstanceReader} from "./InstanceReader.sol";
|
13
|
-
import {BundleManager} from "./BundleManager.sol";
|
14
|
-
import {AccessManagerExtendedInitializeable} from "../shared/AccessManagerExtendedInitializeable.sol";
|
15
|
-
import {InstanceStore} from "./InstanceStore.sol";
|
16
|
-
|
17
|
-
|
18
|
-
library InstanceAuthorizationsLib
|
19
|
-
{
|
20
|
-
function grantInitialAuthorizations(
|
21
|
-
AccessManagerExtendedInitializeable accessManager,
|
22
|
-
InstanceAdmin instanceAdmin,
|
23
|
-
Instance instance,
|
24
|
-
BundleManager bundleManager,
|
25
|
-
InstanceStore instanceStore,
|
26
|
-
address instanceOwner,
|
27
|
-
IRegistry registry,
|
28
|
-
VersionPart majorVersion)
|
29
|
-
external
|
30
|
-
{
|
31
|
-
_createRoles(instanceAdmin);
|
32
|
-
_createTargets(instanceAdmin, instance, bundleManager, instanceStore);
|
33
|
-
_grantDistributionServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
|
34
|
-
_grantPoolServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
|
35
|
-
_grantProductServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
|
36
|
-
_grantApplicationServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
|
37
|
-
_grantPolicyServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
|
38
|
-
_grantClaimServiceAuthorizations(accessManager, instanceAdmin, instanceStore, registry, majorVersion);
|
39
|
-
_grantBundleServiceAuthorizations(accessManager, instanceAdmin, instanceStore, bundleManager, registry, majorVersion);
|
40
|
-
_grantInstanceServiceAuthorizations(accessManager, instanceAdmin, instance, registry, majorVersion);
|
41
|
-
_grantInstanceAuthorizations(accessManager, instanceAdmin, instance, registry, majorVersion);
|
42
|
-
_grantInstanceOwnerAuthorizations(instanceAdmin, instance, registry, majorVersion);
|
43
|
-
}
|
44
|
-
|
45
|
-
function _createRoles(InstanceAdmin instanceAdmin) private {
|
46
|
-
// default roles controlled by ADMIN_ROLE -> core roles
|
47
|
-
// all set/granted only once during cloning (the only exception is INSTANCE_OWNER_ROLE, hooked to instance nft)
|
48
|
-
instanceAdmin.createCoreRole(INSTANCE_SERVICE_ROLE(), "InstanceServiceRole");
|
49
|
-
instanceAdmin.createCoreRole(DISTRIBUTION_SERVICE_ROLE(), "DistributionServiceRole");
|
50
|
-
instanceAdmin.createCoreRole(POOL_SERVICE_ROLE(), "PoolServiceRole");
|
51
|
-
instanceAdmin.createCoreRole(APPLICATION_SERVICE_ROLE(), "ApplicationServiceRole");
|
52
|
-
instanceAdmin.createCoreRole(PRODUCT_SERVICE_ROLE(), "ProductServiceRole");
|
53
|
-
instanceAdmin.createCoreRole(CLAIM_SERVICE_ROLE(), "ClaimServiceRole");
|
54
|
-
instanceAdmin.createCoreRole(POLICY_SERVICE_ROLE(), "PolicyServiceRole");
|
55
|
-
instanceAdmin.createCoreRole(BUNDLE_SERVICE_ROLE(), "BundleServiceRole");
|
56
|
-
// default roles controlled by INSTANCE_OWNER_ROLE -> gif roles
|
57
|
-
instanceAdmin.createGifRole(DISTRIBUTION_OWNER_ROLE(), "DistributionOwnerRole", INSTANCE_OWNER_ROLE());
|
58
|
-
instanceAdmin.createGifRole(POOL_OWNER_ROLE(), "PoolOwnerRole", INSTANCE_OWNER_ROLE());
|
59
|
-
instanceAdmin.createGifRole(PRODUCT_OWNER_ROLE(), "ProductOwnerRole", INSTANCE_OWNER_ROLE());
|
60
|
-
}
|
61
|
-
|
62
|
-
function _createTargets(
|
63
|
-
InstanceAdmin instanceAdmin,
|
64
|
-
Instance instance,
|
65
|
-
BundleManager bundleManager,
|
66
|
-
InstanceStore instanceStore)
|
67
|
-
private
|
68
|
-
{
|
69
|
-
instanceAdmin.createCoreTarget(address(instance), "Instance");
|
70
|
-
//instanceAdmin.createCoreTarget(address(instanceAdmin), "InstanceAdmin");
|
71
|
-
instanceAdmin.createCoreTarget(address(bundleManager), "BundleManager");
|
72
|
-
instanceAdmin.createCoreTarget(address(instanceStore), "InstanceStore");
|
73
|
-
}
|
74
|
-
|
75
|
-
function _grantDistributionServiceAuthorizations(
|
76
|
-
AccessManagerExtendedInitializeable accessManager,
|
77
|
-
InstanceAdmin instanceAdmin,
|
78
|
-
InstanceStore instanceStore,
|
79
|
-
IRegistry registry,
|
80
|
-
VersionPart majorVersion)
|
81
|
-
private
|
82
|
-
{
|
83
|
-
// configure authorization for distribution service on instance
|
84
|
-
address distributionServiceAddress = registry.getServiceAddress(DISTRIBUTION(), majorVersion);
|
85
|
-
accessManager.grantRole(DISTRIBUTION_SERVICE_ROLE().toInt(), distributionServiceAddress, 0);
|
86
|
-
bytes4[] memory instanceDistributionServiceSelectors = new bytes4[](11);
|
87
|
-
instanceDistributionServiceSelectors[0] = instanceStore.createDistributionSetup.selector;
|
88
|
-
instanceDistributionServiceSelectors[1] = instanceStore.updateDistributionSetup.selector;
|
89
|
-
instanceDistributionServiceSelectors[2] = instanceStore.createDistributorType.selector;
|
90
|
-
instanceDistributionServiceSelectors[3] = instanceStore.updateDistributorType.selector;
|
91
|
-
instanceDistributionServiceSelectors[4] = instanceStore.updateDistributorTypeState.selector;
|
92
|
-
instanceDistributionServiceSelectors[5] = instanceStore.createDistributor.selector;
|
93
|
-
instanceDistributionServiceSelectors[6] = instanceStore.updateDistributor.selector;
|
94
|
-
instanceDistributionServiceSelectors[7] = instanceStore.updateDistributorState.selector;
|
95
|
-
instanceDistributionServiceSelectors[8] = instanceStore.createReferral.selector;
|
96
|
-
instanceDistributionServiceSelectors[9] = instanceStore.updateReferral.selector;
|
97
|
-
instanceDistributionServiceSelectors[10] = instanceStore.updateReferralState.selector;
|
98
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
99
|
-
"InstanceStore",
|
100
|
-
instanceDistributionServiceSelectors,
|
101
|
-
DISTRIBUTION_SERVICE_ROLE());
|
102
|
-
}
|
103
|
-
|
104
|
-
function _grantPoolServiceAuthorizations(
|
105
|
-
AccessManagerExtendedInitializeable accessManager,
|
106
|
-
InstanceAdmin instanceAdmin,
|
107
|
-
InstanceStore instanceStore,
|
108
|
-
IRegistry registry,
|
109
|
-
VersionPart majorVersion)
|
110
|
-
private
|
111
|
-
{
|
112
|
-
// configure authorization for pool service on instance
|
113
|
-
address poolServiceAddress = registry.getServiceAddress(POOL(), majorVersion);
|
114
|
-
accessManager.grantRole(POOL_SERVICE_ROLE().toInt(), address(poolServiceAddress), 0);
|
115
|
-
bytes4[] memory instancePoolServiceSelectors = new bytes4[](4);
|
116
|
-
instancePoolServiceSelectors[0] = instanceStore.createPoolSetup.selector;
|
117
|
-
instancePoolServiceSelectors[1] = instanceStore.updatePoolSetup.selector;
|
118
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
119
|
-
"InstanceStore",
|
120
|
-
instancePoolServiceSelectors,
|
121
|
-
POOL_SERVICE_ROLE());
|
122
|
-
}
|
123
|
-
|
124
|
-
function _grantProductServiceAuthorizations(
|
125
|
-
AccessManagerExtendedInitializeable accessManager,
|
126
|
-
InstanceAdmin instanceAdmin,
|
127
|
-
InstanceStore instanceStore,
|
128
|
-
IRegistry registry,
|
129
|
-
VersionPart majorVersion)
|
130
|
-
private
|
131
|
-
{
|
132
|
-
// configure authorization for product service on instance
|
133
|
-
address productServiceAddress = registry.getServiceAddress(PRODUCT(), majorVersion);
|
134
|
-
accessManager.grantRole(PRODUCT_SERVICE_ROLE().toInt(), address(productServiceAddress), 0);
|
135
|
-
bytes4[] memory instanceProductServiceSelectors = new bytes4[](5);
|
136
|
-
instanceProductServiceSelectors[0] = instanceStore.createProductSetup.selector;
|
137
|
-
instanceProductServiceSelectors[1] = instanceStore.updateProductSetup.selector;
|
138
|
-
instanceProductServiceSelectors[2] = instanceStore.createRisk.selector;
|
139
|
-
instanceProductServiceSelectors[3] = instanceStore.updateRisk.selector;
|
140
|
-
instanceProductServiceSelectors[4] = instanceStore.updateRiskState.selector;
|
141
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
142
|
-
"InstanceStore",
|
143
|
-
instanceProductServiceSelectors,
|
144
|
-
PRODUCT_SERVICE_ROLE());
|
145
|
-
}
|
146
|
-
|
147
|
-
function _grantApplicationServiceAuthorizations(
|
148
|
-
AccessManagerExtendedInitializeable accessManager,
|
149
|
-
InstanceAdmin instanceAdmin,
|
150
|
-
InstanceStore instanceStore,
|
151
|
-
IRegistry registry,
|
152
|
-
VersionPart majorVersion)
|
153
|
-
private
|
154
|
-
{
|
155
|
-
// configure authorization for application services on instance
|
156
|
-
address applicationServiceAddress = registry.getServiceAddress(APPLICATION(), majorVersion);
|
157
|
-
accessManager.grantRole(APPLICATION_SERVICE_ROLE().toInt(), applicationServiceAddress, 0);
|
158
|
-
bytes4[] memory instanceApplicationServiceSelectors = new bytes4[](3);
|
159
|
-
instanceApplicationServiceSelectors[0] = instanceStore.createApplication.selector;
|
160
|
-
instanceApplicationServiceSelectors[1] = instanceStore.updateApplication.selector;
|
161
|
-
instanceApplicationServiceSelectors[2] = instanceStore.updateApplicationState.selector;
|
162
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
163
|
-
"InstanceStore",
|
164
|
-
instanceApplicationServiceSelectors,
|
165
|
-
APPLICATION_SERVICE_ROLE());
|
166
|
-
}
|
167
|
-
|
168
|
-
function _grantPolicyServiceAuthorizations(
|
169
|
-
AccessManagerExtendedInitializeable accessManager,
|
170
|
-
InstanceAdmin instanceAdmin,
|
171
|
-
InstanceStore instanceStore,
|
172
|
-
IRegistry registry,
|
173
|
-
VersionPart majorVersion)
|
174
|
-
private
|
175
|
-
{
|
176
|
-
// configure authorization for policy services on instance
|
177
|
-
address policyServiceAddress = registry.getServiceAddress(POLICY(), majorVersion);
|
178
|
-
accessManager.grantRole(POLICY_SERVICE_ROLE().toInt(), policyServiceAddress, 0);
|
179
|
-
bytes4[] memory instancePolicyServiceSelectors = new bytes4[](2);
|
180
|
-
instancePolicyServiceSelectors[0] = instanceStore.updatePolicy.selector;
|
181
|
-
instancePolicyServiceSelectors[1] = instanceStore.updatePolicyState.selector;
|
182
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
183
|
-
"InstanceStore",
|
184
|
-
instancePolicyServiceSelectors,
|
185
|
-
POLICY_SERVICE_ROLE());
|
186
|
-
}
|
187
|
-
|
188
|
-
function _grantClaimServiceAuthorizations(
|
189
|
-
AccessManagerExtendedInitializeable accessManager,
|
190
|
-
InstanceAdmin instanceAdmin,
|
191
|
-
InstanceStore instanceStore,
|
192
|
-
IRegistry registry,
|
193
|
-
VersionPart majorVersion)
|
194
|
-
private
|
195
|
-
{
|
196
|
-
// configure authorization for claim/payout services on instance
|
197
|
-
address claimServiceAddress = registry.getServiceAddress(CLAIM(), majorVersion);
|
198
|
-
accessManager.grantRole(CLAIM_SERVICE_ROLE().toInt(), claimServiceAddress, 0);
|
199
|
-
|
200
|
-
bytes4[] memory instancePolicyServiceSelectors = new bytes4[](1);
|
201
|
-
instancePolicyServiceSelectors[0] = instanceStore.updatePolicyClaims.selector;
|
202
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
203
|
-
"InstanceStore",
|
204
|
-
instancePolicyServiceSelectors,
|
205
|
-
CLAIM_SERVICE_ROLE());
|
206
|
-
|
207
|
-
bytes4[] memory instanceClaimServiceSelectors = new bytes4[](4);
|
208
|
-
instanceClaimServiceSelectors[0] = instanceStore.createClaim.selector;
|
209
|
-
instanceClaimServiceSelectors[1] = instanceStore.updateClaim.selector;
|
210
|
-
instanceClaimServiceSelectors[2] = instanceStore.createPayout.selector;
|
211
|
-
instanceClaimServiceSelectors[3] = instanceStore.updatePayout.selector;
|
212
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
213
|
-
"InstanceStore",
|
214
|
-
instanceClaimServiceSelectors,
|
215
|
-
CLAIM_SERVICE_ROLE());
|
216
|
-
}
|
217
|
-
|
218
|
-
function _grantBundleServiceAuthorizations(
|
219
|
-
AccessManagerExtendedInitializeable accessManager,
|
220
|
-
InstanceAdmin instanceAdmin,
|
221
|
-
InstanceStore instanceStore,
|
222
|
-
BundleManager bundleManager,
|
223
|
-
IRegistry registry,
|
224
|
-
VersionPart majorVersion)
|
225
|
-
private
|
226
|
-
{
|
227
|
-
// configure authorization for bundle service on instance
|
228
|
-
address bundleServiceAddress = registry.getServiceAddress(BUNDLE(), majorVersion);
|
229
|
-
accessManager.grantRole(BUNDLE_SERVICE_ROLE().toInt(), address(bundleServiceAddress), 0);
|
230
|
-
bytes4[] memory instanceBundleServiceSelectors = new bytes4[](3);
|
231
|
-
instanceBundleServiceSelectors[0] = instanceStore.createBundle.selector;
|
232
|
-
instanceBundleServiceSelectors[1] = instanceStore.updateBundle.selector;
|
233
|
-
instanceBundleServiceSelectors[2] = instanceStore.updateBundleState.selector;
|
234
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
235
|
-
"InstanceStore",
|
236
|
-
instanceBundleServiceSelectors,
|
237
|
-
BUNDLE_SERVICE_ROLE());
|
238
|
-
|
239
|
-
// configure authorization for bundle service on bundle manager
|
240
|
-
bytes4[] memory bundleManagerBundleServiceSelectors = new bytes4[](5);
|
241
|
-
bundleManagerBundleServiceSelectors[0] = bundleManager.linkPolicy.selector;
|
242
|
-
bundleManagerBundleServiceSelectors[1] = bundleManager.unlinkPolicy.selector;
|
243
|
-
bundleManagerBundleServiceSelectors[2] = bundleManager.add.selector;
|
244
|
-
bundleManagerBundleServiceSelectors[3] = bundleManager.lock.selector;
|
245
|
-
bundleManagerBundleServiceSelectors[4] = bundleManager.unlock.selector;
|
246
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
247
|
-
"BundleManager",
|
248
|
-
bundleManagerBundleServiceSelectors,
|
249
|
-
BUNDLE_SERVICE_ROLE());
|
250
|
-
}
|
251
|
-
|
252
|
-
function _grantInstanceServiceAuthorizations(
|
253
|
-
AccessManagerExtendedInitializeable accessManager,
|
254
|
-
InstanceAdmin instanceAdmin,
|
255
|
-
Instance instance,
|
256
|
-
IRegistry registry,
|
257
|
-
VersionPart majorVersion)
|
258
|
-
private
|
259
|
-
{
|
260
|
-
// configure authorization for instance service on instance
|
261
|
-
address instanceServiceAddress = registry.getServiceAddress(INSTANCE(), majorVersion);
|
262
|
-
accessManager.grantRole(INSTANCE_SERVICE_ROLE().toInt(), instanceServiceAddress, 0);
|
263
|
-
bytes4[] memory instanceInstanceServiceSelectors = new bytes4[](1);
|
264
|
-
instanceInstanceServiceSelectors[0] = instance.setInstanceReader.selector;
|
265
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
266
|
-
"Instance",
|
267
|
-
instanceInstanceServiceSelectors,
|
268
|
-
INSTANCE_SERVICE_ROLE());
|
269
|
-
|
270
|
-
// configure authorizations for instance service on instance access manager
|
271
|
-
bytes4[] memory instanceAdminInstanceServiceSelectors = new bytes4[](3);
|
272
|
-
instanceAdminInstanceServiceSelectors[0] = instanceAdmin.createGifTarget.selector;
|
273
|
-
instanceAdminInstanceServiceSelectors[1] = instanceAdmin.setTargetLockedByService.selector;
|
274
|
-
instanceAdminInstanceServiceSelectors[2] = instanceAdmin.setCoreTargetFunctionRole.selector;
|
275
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
276
|
-
"InstanceAdmin",
|
277
|
-
instanceAdminInstanceServiceSelectors,
|
278
|
-
INSTANCE_SERVICE_ROLE());
|
279
|
-
}
|
280
|
-
|
281
|
-
function _grantInstanceAuthorizations(
|
282
|
-
AccessManagerExtendedInitializeable accessManager,
|
283
|
-
InstanceAdmin instanceAdmin,
|
284
|
-
Instance instance,
|
285
|
-
IRegistry registry,
|
286
|
-
VersionPart majorVersion)
|
287
|
-
private
|
288
|
-
{
|
289
|
-
// configure authorizations for instance on instance admin
|
290
|
-
bytes4[] memory instanceAdminInstanceSelectors = new bytes4[](4);
|
291
|
-
instanceAdminInstanceSelectors[0] = instanceAdmin.createRole.selector;
|
292
|
-
instanceAdminInstanceSelectors[1] = instanceAdmin.createTarget.selector;
|
293
|
-
instanceAdminInstanceSelectors[2] = instanceAdmin.setTargetFunctionRole.selector;
|
294
|
-
instanceAdminInstanceSelectors[3] = instanceAdmin.setTargetLockedByInstance.selector;
|
295
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
296
|
-
"InstanceAdmin",
|
297
|
-
instanceAdminInstanceSelectors,
|
298
|
-
INSTANCE_ROLE());
|
299
|
-
}
|
300
|
-
|
301
|
-
function _grantInstanceOwnerAuthorizations(
|
302
|
-
InstanceAdmin instanceAdmin,
|
303
|
-
Instance instance,
|
304
|
-
IRegistry registry,
|
305
|
-
VersionPart majorVersion)
|
306
|
-
private
|
307
|
-
{
|
308
|
-
// configure authorization for instance owner on instance access manager
|
309
|
-
// instance owner role is granted/revoked ONLY by INSTANCE_ROLE
|
310
|
-
bytes4[] memory instanceInstanceOwnerSelectors = new bytes4[](4);
|
311
|
-
instanceInstanceOwnerSelectors[0] = instance.createRole.selector;
|
312
|
-
instanceInstanceOwnerSelectors[1] = instance.createTarget.selector;
|
313
|
-
instanceInstanceOwnerSelectors[2] = instance.setTargetFunctionRole.selector;
|
314
|
-
instanceInstanceOwnerSelectors[3] = instance.setTargetLocked.selector;
|
315
|
-
instanceAdmin.setCoreTargetFunctionRole(
|
316
|
-
"Instance",
|
317
|
-
instanceInstanceOwnerSelectors,
|
318
|
-
INSTANCE_OWNER_ROLE());
|
319
|
-
}
|
320
|
-
}
|
@@ -1,121 +0,0 @@
|
|
1
|
-
// SPDX-License-Identifier: Apache-2.0
|
2
|
-
pragma solidity ^0.8.20;
|
3
|
-
|
4
|
-
import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
|
5
|
-
|
6
|
-
import {NftId} from "../../type/NftId.sol";
|
7
|
-
import {ObjectType, COMPONENT, BUNDLE, POLICY, RISK, CLAIM, PAYOUT} from "../../type/ObjectType.sol";
|
8
|
-
import {StateId, ACTIVE, PAUSED, ARCHIVED, CLOSED, APPLIED, COLLATERALIZED, REVOKED, SUBMITTED, CONFIRMED, DECLINED, EXPECTED, PAID} from "../../type/StateId.sol";
|
9
|
-
import {ILifecycle} from "./ILifecycle.sol";
|
10
|
-
|
11
|
-
contract Lifecycle is
|
12
|
-
Initializable,
|
13
|
-
ILifecycle
|
14
|
-
{
|
15
|
-
mapping(ObjectType objectType => StateId initialState)
|
16
|
-
private _initialState;
|
17
|
-
|
18
|
-
mapping(ObjectType objectType => mapping(StateId stateFrom => mapping(StateId stateTo => bool isValid)))
|
19
|
-
private _isValidTransition;
|
20
|
-
|
21
|
-
function initializeLifecycle()
|
22
|
-
public
|
23
|
-
onlyInitializing
|
24
|
-
{
|
25
|
-
_setupBundleLifecycle();
|
26
|
-
_setupComponentLifecycle();
|
27
|
-
_setupPolicyLifecycle();
|
28
|
-
_setupClaimAndPayoutLifecycle();
|
29
|
-
_setupRiskLifecycle();
|
30
|
-
}
|
31
|
-
|
32
|
-
function hasLifecycle(
|
33
|
-
ObjectType objectType
|
34
|
-
)
|
35
|
-
public
|
36
|
-
view
|
37
|
-
override
|
38
|
-
returns (bool)
|
39
|
-
{
|
40
|
-
return _initialState[objectType].gtz();
|
41
|
-
}
|
42
|
-
|
43
|
-
function getInitialState(
|
44
|
-
ObjectType objectType
|
45
|
-
)
|
46
|
-
public
|
47
|
-
view
|
48
|
-
returns (StateId)
|
49
|
-
{
|
50
|
-
return _initialState[objectType];
|
51
|
-
}
|
52
|
-
|
53
|
-
function checkTransition(
|
54
|
-
ObjectType objectType,
|
55
|
-
StateId fromId,
|
56
|
-
StateId toId
|
57
|
-
)
|
58
|
-
public
|
59
|
-
view
|
60
|
-
{
|
61
|
-
// return if no life cycle support
|
62
|
-
if (_initialState[objectType].eqz()) {
|
63
|
-
return;
|
64
|
-
}
|
65
|
-
|
66
|
-
// enforce valid state transition
|
67
|
-
if (!_isValidTransition[objectType][fromId][toId]) {
|
68
|
-
revert ErrorInvalidStateTransition(objectType, fromId, toId);
|
69
|
-
}
|
70
|
-
}
|
71
|
-
|
72
|
-
function isValidTransition(
|
73
|
-
ObjectType objectType,
|
74
|
-
StateId fromId,
|
75
|
-
StateId toId
|
76
|
-
) public view returns (bool) {
|
77
|
-
return _isValidTransition[objectType][fromId][toId];
|
78
|
-
}
|
79
|
-
|
80
|
-
function _setupComponentLifecycle() internal {
|
81
|
-
_initialState[COMPONENT()] = ACTIVE();
|
82
|
-
_isValidTransition[COMPONENT()][ACTIVE()][PAUSED()] = true;
|
83
|
-
_isValidTransition[COMPONENT()][PAUSED()][ACTIVE()] = true;
|
84
|
-
_isValidTransition[COMPONENT()][PAUSED()][ARCHIVED()] = true;
|
85
|
-
}
|
86
|
-
|
87
|
-
function _setupBundleLifecycle() internal {
|
88
|
-
_initialState[BUNDLE()] = ACTIVE();
|
89
|
-
_isValidTransition[BUNDLE()][ACTIVE()][PAUSED()] = true;
|
90
|
-
_isValidTransition[BUNDLE()][ACTIVE()][CLOSED()] = true;
|
91
|
-
_isValidTransition[BUNDLE()][PAUSED()][ACTIVE()] = true;
|
92
|
-
_isValidTransition[BUNDLE()][PAUSED()][CLOSED()] = true;
|
93
|
-
}
|
94
|
-
|
95
|
-
function _setupPolicyLifecycle() internal {
|
96
|
-
_initialState[POLICY()] = APPLIED();
|
97
|
-
_isValidTransition[POLICY()][APPLIED()][REVOKED()] = true;
|
98
|
-
_isValidTransition[POLICY()][APPLIED()][DECLINED()] = true;
|
99
|
-
_isValidTransition[POLICY()][APPLIED()][COLLATERALIZED()] = true;
|
100
|
-
_isValidTransition[POLICY()][APPLIED()][ACTIVE()] = true;
|
101
|
-
_isValidTransition[POLICY()][COLLATERALIZED()][ACTIVE()] = true;
|
102
|
-
_isValidTransition[POLICY()][ACTIVE()][CLOSED()] = true;
|
103
|
-
}
|
104
|
-
|
105
|
-
function _setupClaimAndPayoutLifecycle() internal {
|
106
|
-
_initialState[CLAIM()] = SUBMITTED();
|
107
|
-
_isValidTransition[CLAIM()][SUBMITTED()][CONFIRMED()] = true;
|
108
|
-
_isValidTransition[CLAIM()][SUBMITTED()][DECLINED()] = true;
|
109
|
-
_isValidTransition[CLAIM()][CONFIRMED()][CLOSED()] = true;
|
110
|
-
|
111
|
-
_initialState[PAYOUT()] = EXPECTED();
|
112
|
-
_isValidTransition[PAYOUT()][EXPECTED()][PAID()] = true;
|
113
|
-
}
|
114
|
-
|
115
|
-
function _setupRiskLifecycle() internal {
|
116
|
-
_initialState[RISK()] = ACTIVE();
|
117
|
-
_isValidTransition[RISK()][ACTIVE()][PAUSED()] = true;
|
118
|
-
_isValidTransition[RISK()][PAUSED()][ACTIVE()] = true;
|
119
|
-
_isValidTransition[RISK()][PAUSED()][ARCHIVED()] = true;
|
120
|
-
}
|
121
|
-
}
|
@@ -1,33 +0,0 @@
|
|
1
|
-
// SPDX-License-Identifier: Apache-2.0
|
2
|
-
pragma solidity ^0.8.20;
|
3
|
-
|
4
|
-
import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
|
5
|
-
|
6
|
-
import {Fee} from "../../type/Fee.sol";
|
7
|
-
import {NftId} from "../../type/NftId.sol";
|
8
|
-
import {RoleId} from "../../type/RoleId.sol";
|
9
|
-
import {TokenHandler} from "../../shared/TokenHandler.sol";
|
10
|
-
import {UFixed} from "../../type/UFixed.sol";
|
11
|
-
|
12
|
-
interface ISetup {
|
13
|
-
|
14
|
-
struct ProductSetupInfo {
|
15
|
-
IERC20Metadata token;
|
16
|
-
TokenHandler tokenHandler;
|
17
|
-
NftId distributionNftId;
|
18
|
-
NftId poolNftId;
|
19
|
-
Fee productFee; // product fee on net premium
|
20
|
-
Fee processingFee; // product fee on payout amounts
|
21
|
-
bool isIntercepting; // intercepts nft transfers (for products)
|
22
|
-
address wallet;
|
23
|
-
}
|
24
|
-
|
25
|
-
struct DistributionSetupInfo {
|
26
|
-
NftId productNftId;
|
27
|
-
TokenHandler tokenHandler;
|
28
|
-
Fee minDistributionOwnerFee;
|
29
|
-
Fee distributionFee; // recalculated whenever any fee on the product/pool/dist/disttype is changed
|
30
|
-
address wallet;
|
31
|
-
uint256 sumDistributionOwnerFees;
|
32
|
-
}
|
33
|
-
}
|
@@ -1,23 +0,0 @@
|
|
1
|
-
// SPDX-License-Identifier: Apache-2.0
|
2
|
-
pragma solidity ^0.8.20;
|
3
|
-
|
4
|
-
import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
|
5
|
-
|
6
|
-
import {Fee} from "../../type/Fee.sol";
|
7
|
-
import {NftId} from "../../type/NftId.sol";
|
8
|
-
import {TokenHandler} from "../../shared/TokenHandler.sol";
|
9
|
-
|
10
|
-
interface ITreasury {
|
11
|
-
struct TreasuryInfo {
|
12
|
-
IERC20Metadata token;
|
13
|
-
TokenHandler tokenHandler;
|
14
|
-
NftId distributionNftId;
|
15
|
-
NftId poolNftId;
|
16
|
-
Fee distributionFee; // default distribution fee (no referral id)
|
17
|
-
Fee productFee; // product fee on net premium
|
18
|
-
Fee processingFee; // product fee on payout amounts
|
19
|
-
Fee poolFee; // pool fee on net premium
|
20
|
-
Fee stakingFee; // pool fee on staked capital from investor
|
21
|
-
Fee performanceFee; // pool fee on profits from capital investors
|
22
|
-
}
|
23
|
-
}
|