@etherisc/gif-next 0.0.2-fe77319 → 0.0.2-ff1bf36-818
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 +406 -9
- 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/access → authorization}/IAccess.sol/IAccess.json +1 -1
- 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 +1489 -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 +4 -0
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +1159 -0
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1502 -0
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +842 -0
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +906 -0
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +914 -0
- 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 +295 -535
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +4 -0
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +757 -0
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +486 -591
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1626 -0
- 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 +4 -0
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1693 -0
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +1160 -0
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +734 -0
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3469 -0
- 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 +4 -0
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.json +137 -0
- 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 +4 -0
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +129 -0
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +4 -0
- package/artifacts/contracts/instance/{pool/IPoolModule.sol/IPool.json → module/IBundle.sol/IBundle.json} +2 -2
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
- package/artifacts/contracts/instance/{component/IComponent.sol/IComponent.json → module/IComponents.sol/IComponents.json} +2 -2
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +4 -0
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.json +10 -0
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +4 -0
- package/artifacts/contracts/instance/{policy → module}/IPolicy.sol/IPolicy.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +4 -0
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.json +10 -0
- 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 +1126 -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 +765 -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 +1018 -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 +1395 -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 +4 -0
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1466 -0
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +818 -0
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +907 -0
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +909 -0
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1218 -0
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
- package/artifacts/contracts/pool/Pool.sol/Pool.json +1181 -0
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1625 -0
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +758 -0
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +852 -0
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +722 -0
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +1243 -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 +4 -0
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1331 -0
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +822 -0
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +517 -0
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +788 -0
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +800 -0
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +549 -0
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +948 -0
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +400 -0
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1263 -0
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +782 -0
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +1017 -0
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +786 -0
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
- package/artifacts/contracts/product/Product.sol/Product.json +1201 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +695 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +702 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +4 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +784 -0
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +743 -104
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +4 -0
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +940 -0
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +4 -0
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +52 -0
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +1083 -114
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1746 -0
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +1452 -0
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +721 -0
- 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 +4 -0
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +661 -0
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
- package/artifacts/contracts/shared/Component.sol/Component.json +832 -0
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1680 -0
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +804 -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/IComponent.sol/IComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +605 -0
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +1033 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +700 -0
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +474 -0
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +110 -0
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +4 -0
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +131 -0
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +207 -0
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +4 -0
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +181 -0
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
- package/artifacts/contracts/{instance/access/IAccess.sol/IAccessCheckRole.json → shared/IRegistryLinked.sol/IRegistryLinked.json} +11 -11
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +4 -0
- package/artifacts/contracts/shared/IService.sol/IService.json +346 -0
- 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/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +73 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +940 -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 +4 -0
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +244 -0
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +320 -0
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +4 -0
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +353 -0
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +71 -0
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +4 -0
- package/artifacts/contracts/shared/Service.sol/Service.json +507 -0
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +469 -0
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +108 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1412 -0
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +1035 -0
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +387 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.json +1941 -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 +4 -0
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1343 -0
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +718 -0
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2242 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +576 -0
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +10 -0
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +374 -0
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +225 -0
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +179 -0
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +104 -0
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +317 -0
- package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
- package/artifacts/contracts/type/Key32.sol/Key32Lib.json +125 -0
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +209 -0
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +33 -0
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +239 -0
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
- 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 +4 -0
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +86 -0
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +369 -0
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +222 -0
- 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 +4 -0
- package/artifacts/contracts/type/StateId.sol/StateIdLib.json +92 -0
- 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 +4 -0
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +312 -0
- package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +4 -0
- package/artifacts/contracts/type/UFixed.sol/MathLib.json +16 -0
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +535 -0
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
- package/artifacts/contracts/type/Version.sol/VersionLib.json +177 -0
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +68 -0
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.json +55 -0
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +617 -0
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.json +78 -0
- package/contracts/authorization/AccessAdmin.sol +591 -0
- package/contracts/authorization/AccessManagerCloneable.sol +16 -0
- package/contracts/authorization/Authorization.sol +217 -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 +138 -0
- package/contracts/distribution/BasicDistributionAuthorization.sol +47 -0
- package/contracts/distribution/Distribution.sol +295 -0
- package/contracts/distribution/DistributionService.sol +322 -0
- package/contracts/distribution/DistributionServiceManager.sol +39 -0
- package/contracts/distribution/IDistributionComponent.sol +52 -0
- package/contracts/distribution/IDistributionService.sol +95 -0
- package/contracts/instance/BundleSet.sol +126 -0
- package/contracts/instance/IInstance.sol +58 -15
- package/contracts/instance/IInstanceService.sol +92 -0
- package/contracts/instance/Instance.sol +211 -45
- package/contracts/instance/InstanceAdmin.sol +285 -0
- package/contracts/instance/InstanceAuthorizationV3.sol +204 -0
- package/contracts/instance/InstanceReader.sol +408 -0
- package/contracts/instance/InstanceService.sol +467 -0
- package/contracts/instance/InstanceServiceManager.sol +40 -0
- package/contracts/instance/InstanceStore.sol +277 -0
- package/contracts/instance/base/BalanceStore.sol +123 -0
- package/contracts/instance/base/Cloneable.sol +28 -0
- package/contracts/instance/base/ObjectCounter.sol +21 -0
- package/contracts/instance/base/ObjectLifecycle.sol +105 -0
- package/contracts/instance/base/ObjectSet.sol +79 -0
- package/contracts/instance/module/IAccess.sol +46 -0
- package/contracts/instance/module/IBundle.sol +20 -0
- package/contracts/instance/module/IComponents.sol +46 -0
- package/contracts/instance/module/IDistribution.sol +41 -0
- package/contracts/instance/module/IPolicy.sol +84 -0
- package/contracts/instance/module/IRisk.sol +11 -0
- 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 +33 -0
- package/contracts/oracle/IOracleService.sol +65 -0
- package/contracts/oracle/Oracle.sol +166 -0
- package/contracts/oracle/OracleService.sol +278 -0
- package/contracts/oracle/OracleServiceManager.sol +39 -0
- package/contracts/pool/BasicPool.sol +166 -0
- package/contracts/pool/BasicPoolAuthorization.sol +58 -0
- package/contracts/pool/BundleService.sol +436 -0
- package/contracts/pool/BundleServiceManager.sol +39 -0
- package/contracts/pool/IBundleService.sol +134 -0
- package/contracts/pool/IPoolComponent.sol +58 -0
- package/contracts/pool/IPoolService.sol +163 -0
- package/contracts/pool/Pool.sol +328 -0
- package/contracts/pool/PoolService.sol +541 -0
- package/contracts/pool/PoolServiceManager.sol +39 -0
- package/contracts/product/ApplicationService.sol +250 -0
- package/contracts/product/ApplicationServiceManager.sol +38 -0
- package/contracts/product/BasicProduct.sol +52 -0
- package/contracts/product/BasicProductAuthorization.sol +43 -0
- package/contracts/product/ClaimService.sol +416 -0
- package/contracts/product/ClaimServiceManager.sol +38 -0
- package/contracts/product/IApplicationService.sol +63 -0
- package/contracts/product/IClaimService.sol +100 -0
- package/contracts/product/IPolicyService.sol +84 -0
- package/contracts/product/IPricingService.sol +39 -0
- package/contracts/product/IProductComponent.sol +40 -0
- package/contracts/product/IRiskService.sol +33 -0
- package/contracts/product/PolicyService.sol +584 -0
- package/contracts/product/PolicyServiceManager.sol +39 -0
- package/contracts/product/PricingService.sol +304 -0
- package/contracts/product/PricingServiceManager.sol +39 -0
- package/contracts/product/Product.sol +410 -0
- package/contracts/product/RiskService.sol +97 -0
- package/contracts/product/RiskServiceManager.sol +39 -0
- package/contracts/registry/ChainNft.sol +217 -0
- package/contracts/registry/IRegistry.sol +120 -52
- package/contracts/registry/IRegistryService.sol +69 -0
- package/contracts/registry/ITransferInterceptor.sol +7 -0
- package/contracts/registry/Registry.sol +504 -125
- package/contracts/registry/RegistryAdmin.sol +374 -0
- package/contracts/registry/RegistryService.sol +252 -0
- package/contracts/registry/RegistryServiceManager.sol +53 -0
- package/contracts/registry/ReleaseLifecycle.sol +27 -0
- package/contracts/registry/ReleaseRegistry.sol +485 -0
- package/contracts/registry/ServiceAuthorizationV3.sol +200 -0
- package/contracts/registry/TokenRegistry.sol +315 -0
- package/contracts/shared/Component.sol +268 -0
- package/contracts/shared/ComponentService.sol +641 -0
- package/contracts/shared/ComponentServiceManager.sol +35 -0
- package/contracts/shared/ComponentVerifyingService.sol +117 -0
- package/contracts/shared/IComponent.sol +70 -0
- package/contracts/shared/IComponentService.sol +108 -0
- package/contracts/shared/IInstanceLinkedComponent.sol +49 -0
- package/contracts/shared/IKeyValueStore.sol +54 -0
- package/contracts/shared/ILifecycle.sol +29 -0
- package/contracts/shared/INftOwnable.sol +23 -0
- package/contracts/shared/IPolicyHolder.sol +45 -0
- package/contracts/shared/IRegisterable.sol +15 -0
- package/contracts/shared/IRegistryLinked.sol +11 -0
- package/contracts/shared/IService.sol +25 -0
- package/contracts/shared/InitializableCustom.sol +177 -0
- package/contracts/shared/InitializableERC165.sol +27 -0
- package/contracts/shared/InstanceLinkedComponent.sol +172 -0
- package/contracts/shared/KeyValueStore.sol +131 -0
- package/contracts/shared/Lifecycle.sol +77 -0
- package/contracts/shared/NftIdSet.sol +65 -0
- package/contracts/shared/NftOwnable.sol +107 -0
- package/contracts/shared/PolicyHolder.sol +99 -0
- package/contracts/shared/Registerable.sol +75 -0
- package/contracts/shared/RegistryLinked.sol +43 -0
- package/contracts/shared/Service.sol +82 -0
- package/contracts/shared/TokenHandler.sol +139 -0
- package/contracts/shared/TokenHandlerDeployerLib.sol +12 -0
- package/contracts/staking/IStaking.sol +167 -0
- package/contracts/staking/IStakingService.sol +160 -0
- package/contracts/staking/StakeManagerLib.sol +206 -0
- package/contracts/staking/Staking.sol +497 -0
- package/contracts/staking/StakingLifecycle.sol +23 -0
- package/contracts/staking/StakingManager.sol +50 -0
- package/contracts/staking/StakingReader.sol +183 -0
- package/contracts/staking/StakingService.sol +407 -0
- package/contracts/staking/StakingServiceManager.sol +44 -0
- package/contracts/staking/StakingStore.sol +605 -0
- package/contracts/staking/TargetManagerLib.sol +207 -0
- package/contracts/type/AddressSet.sol +58 -0
- package/contracts/type/Amount.sol +135 -0
- package/contracts/type/Blocknumber.sol +142 -0
- package/contracts/type/ClaimId.sol +75 -0
- package/contracts/type/DistributorType.sol +55 -0
- package/contracts/type/Fee.sol +66 -0
- package/contracts/type/Key32.sol +50 -0
- package/contracts/type/NftId.sol +78 -0
- package/contracts/type/NftIdSet.sol +62 -0
- package/contracts/type/ObjectType.sol +271 -0
- package/contracts/type/PayoutId.sol +82 -0
- package/contracts/type/Referral.sol +90 -0
- package/contracts/type/RequestId.sol +75 -0
- package/contracts/type/RiskId.sol +43 -0
- package/contracts/type/RoleId.sol +174 -0
- package/contracts/type/Seconds.sol +93 -0
- package/contracts/type/Selector.sol +102 -0
- package/contracts/type/StateId.sol +135 -0
- package/contracts/type/String.sol +53 -0
- package/contracts/type/Timestamp.sol +146 -0
- package/contracts/type/UFixed.sol +351 -0
- package/contracts/type/Version.sol +110 -0
- package/contracts/upgradeability/IVersionable.sol +53 -0
- package/contracts/upgradeability/ProxyManager.sol +198 -0
- package/contracts/upgradeability/UpgradableProxyWithAdmin.sol +14 -0
- package/contracts/upgradeability/Versionable.sol +59 -0
- package/package.json +25 -7
- package/artifacts/contracts/components/Component.sol/Component.dbg.json +0 -4
- package/artifacts/contracts/components/Component.sol/Component.json +0 -179
- package/artifacts/contracts/components/Component.sol/InstanceLinked.dbg.json +0 -4
- package/artifacts/contracts/components/Component.sol/InstanceLinked.json +0 -35
- package/artifacts/contracts/components/IPool.sol/IPoolComponent.dbg.json +0 -4
- package/artifacts/contracts/components/IPool.sol/IPoolComponent.json +0 -179
- package/artifacts/contracts/components/IProduct.sol/IProductComponent.dbg.json +0 -4
- package/artifacts/contracts/components/IProduct.sol/IProductComponent.json +0 -192
- package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
- package/artifacts/contracts/components/Pool.sol/Pool.json +0 -195
- package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
- package/artifacts/contracts/components/Product.sol/Product.json +0 -213
- package/artifacts/contracts/experiment/A.sol/A.dbg.json +0 -4
- package/artifacts/contracts/experiment/A.sol/A.json +0 -128
- package/artifacts/contracts/experiment/A.sol/AShared.dbg.json +0 -4
- package/artifacts/contracts/experiment/A.sol/AShared.json +0 -42
- package/artifacts/contracts/experiment/B.sol/B.dbg.json +0 -4
- package/artifacts/contracts/experiment/B.sol/B.json +0 -76
- package/artifacts/contracts/experiment/C.sol/C.dbg.json +0 -4
- package/artifacts/contracts/experiment/C.sol/C.json +0 -89
- package/artifacts/contracts/experiment/IA.sol/IA.dbg.json +0 -4
- package/artifacts/contracts/experiment/IA.sol/IA.json +0 -128
- package/artifacts/contracts/experiment/IA.sol/ISharedA.dbg.json +0 -4
- package/artifacts/contracts/experiment/IA.sol/ISharedA.json +0 -37
- package/artifacts/contracts/experiment/IB.sol/IB.dbg.json +0 -4
- package/artifacts/contracts/experiment/IB.sol/IB.json +0 -50
- package/artifacts/contracts/experiment/IC.sol/IC.dbg.json +0 -4
- package/artifacts/contracts/experiment/IC.sol/IC.json +0 -63
- package/artifacts/contracts/instance/access/Access.sol/AccessModule.dbg.json +0 -4
- package/artifacts/contracts/instance/access/Access.sol/AccessModule.json +0 -400
- package/artifacts/contracts/instance/access/IAccess.sol/IAccess.dbg.json +0 -4
- package/artifacts/contracts/instance/access/IAccess.sol/IAccessCheckRole.dbg.json +0 -4
- package/artifacts/contracts/instance/access/IAccess.sol/IAccessComponentTypeRoles.dbg.json +0 -4
- package/artifacts/contracts/instance/access/IAccess.sol/IAccessComponentTypeRoles.json +0 -50
- package/artifacts/contracts/instance/access/IAccess.sol/IAccessModule.dbg.json +0 -4
- package/artifacts/contracts/instance/access/IAccess.sol/IAccessModule.json +0 -336
- package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentModule.dbg.json +0 -4
- package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentModule.json +0 -327
- package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentOwnerService.dbg.json +0 -4
- package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentOwnerService.json +0 -105
- package/artifacts/contracts/instance/component/IComponent.sol/IComponent.dbg.json +0 -4
- package/artifacts/contracts/instance/component/IComponent.sol/IComponentContract.dbg.json +0 -4
- package/artifacts/contracts/instance/component/IComponent.sol/IComponentContract.json +0 -179
- package/artifacts/contracts/instance/component/IComponent.sol/IComponentModule.dbg.json +0 -4
- package/artifacts/contracts/instance/component/IComponent.sol/IComponentModule.json +0 -245
- package/artifacts/contracts/instance/component/IComponent.sol/IComponentOwnerService.dbg.json +0 -4
- package/artifacts/contracts/instance/component/IComponent.sol/IComponentOwnerService.json +0 -94
- package/artifacts/contracts/instance/component/IComponent.sol/IInstanceLinked.dbg.json +0 -4
- package/artifacts/contracts/instance/component/IComponent.sol/IInstanceLinked.json +0 -24
- package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicy.dbg.json +0 -4
- package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicyModule.dbg.json +0 -4
- package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicyModule.json +0 -231
- package/artifacts/contracts/instance/policy/PolicyModule.sol/PolicyModule.dbg.json +0 -4
- package/artifacts/contracts/instance/policy/PolicyModule.sol/PolicyModule.json +0 -231
- package/artifacts/contracts/instance/pool/IPoolModule.sol/IPool.dbg.json +0 -4
- package/artifacts/contracts/instance/pool/IPoolModule.sol/IPoolModule.dbg.json +0 -4
- package/artifacts/contracts/instance/pool/IPoolModule.sol/IPoolModule.json +0 -149
- package/artifacts/contracts/instance/pool/PoolModule.sol/PoolModule.dbg.json +0 -4
- package/artifacts/contracts/instance/pool/PoolModule.sol/PoolModule.json +0 -162
- package/artifacts/contracts/instance/product/IProductService.sol/IProductModule.dbg.json +0 -4
- package/artifacts/contracts/instance/product/IProductService.sol/IProductModule.json +0 -75
- package/artifacts/contracts/instance/product/IProductService.sol/IProductService.dbg.json +0 -4
- package/artifacts/contracts/instance/product/IProductService.sol/IProductService.json +0 -114
- package/artifacts/contracts/instance/product/ProductService.sol/ProductModule.dbg.json +0 -4
- package/artifacts/contracts/instance/product/ProductService.sol/ProductModule.json +0 -75
- package/artifacts/contracts/instance/product/ProductService.sol/ProductService.dbg.json +0 -4
- package/artifacts/contracts/instance/product/ProductService.sol/ProductService.json +0 -125
- package/artifacts/contracts/registry/IRegistry.sol/IOwnable.dbg.json +0 -4
- package/artifacts/contracts/registry/IRegistry.sol/IOwnable.json +0 -24
- package/artifacts/contracts/registry/IRegistry.sol/IRegisterable.dbg.json +0 -4
- package/artifacts/contracts/registry/IRegistry.sol/IRegisterable.json +0 -166
- package/artifacts/contracts/registry/IRegistry.sol/IRegistryLinked.dbg.json +0 -4
- package/artifacts/contracts/registry/IRegistry.sol/IRegistryLinked.json +0 -49
- package/artifacts/contracts/registry/Registry.sol/Registerable.dbg.json +0 -4
- package/artifacts/contracts/registry/Registry.sol/Registerable.json +0 -166
- package/artifacts/contracts/registry/Registry.sol/RegistryLinked.dbg.json +0 -4
- package/artifacts/contracts/registry/Registry.sol/RegistryLinked.json +0 -60
- package/contracts/components/Component.sol +0 -62
- package/contracts/components/IPool.sol +0 -9
- package/contracts/components/IProduct.sol +0 -11
- package/contracts/components/Pool.sol +0 -29
- package/contracts/components/Product.sol +0 -65
- package/contracts/experiment/A.sol +0 -56
- package/contracts/experiment/B.sol +0 -23
- package/contracts/experiment/C.sol +0 -28
- package/contracts/experiment/IA.sol +0 -18
- package/contracts/experiment/IB.sol +0 -9
- package/contracts/experiment/IC.sol +0 -11
- package/contracts/instance/access/Access.sol +0 -218
- package/contracts/instance/access/IAccess.sol +0 -83
- package/contracts/instance/component/ComponentModule.sol +0 -259
- package/contracts/instance/component/IComponent.sol +0 -94
- package/contracts/instance/policy/IPolicy.sol +0 -66
- package/contracts/instance/policy/PolicyModule.sol +0 -106
- package/contracts/instance/pool/IPoolModule.sol +0 -40
- package/contracts/instance/pool/PoolModule.sol +0 -83
- package/contracts/instance/product/IProductService.sol +0 -45
- package/contracts/instance/product/ProductService.sol +0 -105
@@ -1,20 +1,63 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
|
-
pragma solidity ^0.8.
|
2
|
+
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {
|
5
|
-
import {IAccessModule} from "./access/IAccess.sol";
|
6
|
-
import {IComponentModule} from "./component/IComponent.sol";
|
7
|
-
import {IProductModule} from "./product/IProductService.sol";
|
8
|
-
import {IPolicyModule} from "./policy/IPolicy.sol";
|
9
|
-
import {IPoolModule} from "./pool/IPoolModule.sol";
|
4
|
+
import {IAccessManaged} from "@openzeppelin/contracts/access/manager/IAccessManaged.sol";
|
10
5
|
|
6
|
+
import {Amount} from "../type/Amount.sol";
|
7
|
+
import {BundleSet} from "./BundleSet.sol";
|
8
|
+
import {InstanceAdmin} from "./InstanceAdmin.sol";
|
9
|
+
import {InstanceReader} from "./InstanceReader.sol";
|
10
|
+
import {InstanceStore} from "./InstanceStore.sol";
|
11
|
+
import {IRegisterable} from "../shared/IRegisterable.sol";
|
12
|
+
import {ITransferInterceptor} from "../registry/ITransferInterceptor.sol";
|
13
|
+
import {RoleId} from "../type/RoleId.sol";
|
14
|
+
import {Seconds} from "../type/Seconds.sol";
|
15
|
+
import {UFixed} from "../type/UFixed.sol";
|
16
|
+
import {VersionPart} from "../type/Version.sol";
|
11
17
|
|
12
|
-
interface IInstance is
|
13
|
-
IRegisterable,
|
14
|
-
IAccessModule,
|
15
|
-
IComponentModule,
|
16
|
-
IProductModule,
|
17
|
-
IPolicyModule,
|
18
|
-
IPoolModule
|
19
|
-
{ }
|
20
18
|
|
19
|
+
interface IInstance is
|
20
|
+
IRegisterable,
|
21
|
+
ITransferInterceptor,
|
22
|
+
IAccessManaged
|
23
|
+
{
|
24
|
+
error ErrorInstanceInstanceAdminZero();
|
25
|
+
error ErrorInstanceInstanceAdminAlreadySet(address InstanceAdmin);
|
26
|
+
error ErrorInstanceInstanceAdminAuthorityMismatch(address instanceAuthority);
|
27
|
+
|
28
|
+
error ErrorInstanceBundleSetAlreadySet(address instanceBundleSet);
|
29
|
+
error ErrorInstanceBundleSetInstanceMismatch(address instance);
|
30
|
+
error ErrorInstanceBundleSetAuthorityMismatch(address instanceAuthority);
|
31
|
+
|
32
|
+
error ErrorInstanceInstanceReaderInstanceMismatch(address instanceAuthority);
|
33
|
+
|
34
|
+
error ErrorInstanceInstanceStoreAlreadySet(address instanceStore);
|
35
|
+
error ErrorInstanceInstanceStoreAuthorityMismatch(address instanceAuthority);
|
36
|
+
|
37
|
+
struct InstanceInfo {
|
38
|
+
uint64 requestsCount;
|
39
|
+
}
|
40
|
+
|
41
|
+
function createRole(string memory roleName, string memory adminName) external returns (RoleId roleId, RoleId admin);
|
42
|
+
function grantRole(RoleId roleId, address account) external;
|
43
|
+
function revokeRole(RoleId roleId, address account) external;
|
44
|
+
|
45
|
+
function createTarget(address target, string memory name) external;
|
46
|
+
function setTargetFunctionRole(string memory targetName, bytes4[] calldata selectors, RoleId roleId) external;
|
47
|
+
function setTargetLocked(address target, bool locked) external;
|
48
|
+
|
49
|
+
function setStakingLockingPeriod(Seconds stakeLockingPeriod) external;
|
50
|
+
function setStakingRewardRate(UFixed rewardRate) external;
|
51
|
+
function refillStakingRewardReserves(Amount dipAmount) external;
|
52
|
+
|
53
|
+
/// @dev Defunds the staking reward reserves for the specified target.
|
54
|
+
/// Permissioned: only the target owner may call this function.
|
55
|
+
function withdrawStakingRewardReserves(Amount dipAmount) external returns (Amount newBalance);
|
56
|
+
|
57
|
+
// get instance release and supporting contracts
|
58
|
+
function getMajorVersion() external pure returns (VersionPart majorVersion);
|
59
|
+
function getInstanceReader() external view returns (InstanceReader);
|
60
|
+
function getBundleSet() external view returns (BundleSet);
|
61
|
+
function getInstanceAdmin() external view returns (InstanceAdmin);
|
62
|
+
function getInstanceStore() external view returns (InstanceStore);
|
63
|
+
}
|
@@ -0,0 +1,92 @@
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
2
|
+
pragma solidity ^0.8.20;
|
3
|
+
|
4
|
+
import {Amount} from "../type/Amount.sol";
|
5
|
+
import {BundleSet} from "./BundleSet.sol";
|
6
|
+
import {Instance} from "./Instance.sol";
|
7
|
+
import {IInstanceLinkedComponent} from "../shared/IInstanceLinkedComponent.sol";
|
8
|
+
import {IService} from "../shared/IService.sol";
|
9
|
+
import {NftId} from "../type/NftId.sol";
|
10
|
+
import {ObjectType} from "../type/ObjectType.sol";
|
11
|
+
import {RoleId} from "../type/RoleId.sol";
|
12
|
+
import {Seconds} from "../type/Seconds.sol";
|
13
|
+
import {UFixed} from "../type/UFixed.sol";
|
14
|
+
import {VersionPart} from "../type/Version.sol";
|
15
|
+
|
16
|
+
interface IInstanceService is IService {
|
17
|
+
|
18
|
+
// onlyInstance
|
19
|
+
error ErrorInstanceServiceNotRegistered(address instance);
|
20
|
+
error ErrorInstanceServiceNotInstance(address instance, ObjectType objectType);
|
21
|
+
error ErrorInstanceServiceInstanceVersionMismatch(address instance, VersionPart instanceVersion);
|
22
|
+
|
23
|
+
error ErrorInstanceServiceComponentNotInstanceLinked(address component);
|
24
|
+
|
25
|
+
error ErrorInstanceServiceMasterInstanceAlreadySet();
|
26
|
+
error ErrorInstanceServiceMasterInstanceAdminAlreadySet();
|
27
|
+
error ErrorInstanceServiceMasterBundleSetAlreadySet();
|
28
|
+
error ErrorInstanceServiceInstanceAddressZero();
|
29
|
+
|
30
|
+
error ErrorInstanceServiceMasterInstanceReaderNotSet();
|
31
|
+
error ErrorInstanceServiceInstanceReaderAddressZero();
|
32
|
+
error ErrorInstanceServiceInstanceReaderSameAsMasterInstanceReader();
|
33
|
+
error ErrorInstanceServiceInstanceReaderInstanceMismatch();
|
34
|
+
|
35
|
+
error ErrorInstanceServiceAccessManagerZero();
|
36
|
+
error ErrorInstanceServiceInstanceAdminZero();
|
37
|
+
error ErrorInstanceServiceInstanceReaderZero();
|
38
|
+
error ErrorInstanceServiceBundleSetZero();
|
39
|
+
error ErrorInstanceServiceInstanceStoreZero();
|
40
|
+
|
41
|
+
error ErrorInstanceServiceInstanceAuthorityMismatch();
|
42
|
+
error ErrorInstanceServiceBundleSetAuthorityMismatch();
|
43
|
+
error ErrorInstanceServiceInstanceReaderInstanceMismatch2();
|
44
|
+
error ErrorInstanceServiceBundleMangerInstanceMismatch();
|
45
|
+
error ErrorInstanceServiceInstanceStoreAuthorityMismatch();
|
46
|
+
|
47
|
+
error ErrorInstanceServiceRequestUnauhorized(address caller);
|
48
|
+
error ErrorInstanceServiceNotInstanceNftId(NftId nftId);
|
49
|
+
error ErrorInstanceServiceComponentNotRegistered(address componentAddress);
|
50
|
+
error ErrorInstanceServiceInstanceComponentMismatch(NftId instanceNftId, NftId componentNftId);
|
51
|
+
error ErrorInstanceServiceInvalidComponentType(address componentAddress, ObjectType expectedType, ObjectType componentType);
|
52
|
+
|
53
|
+
event LogInstanceCloned(NftId instanceNftId, address instance);
|
54
|
+
|
55
|
+
function createInstance()
|
56
|
+
external
|
57
|
+
returns (
|
58
|
+
// TODO check if Instance can be changed to IInstance
|
59
|
+
Instance clonedInstance,
|
60
|
+
NftId instanceNftId
|
61
|
+
);
|
62
|
+
|
63
|
+
|
64
|
+
function setStakingLockingPeriod(Seconds stakeLockingPeriod) external;
|
65
|
+
function setStakingRewardRate(UFixed rewardRate) external;
|
66
|
+
function refillStakingRewardReserves(address rewardProvider, Amount dipAmount) external;
|
67
|
+
|
68
|
+
/// @dev Defunds the staking reward reserves for the specified target.
|
69
|
+
function withdrawStakingRewardReserves(Amount dipAmount) external returns (Amount newBalance);
|
70
|
+
|
71
|
+
/// @dev Sets up the component authorization for the specified instance.
|
72
|
+
/// The authorization is based on the authz specification provided by the component via getAuthorization.
|
73
|
+
function initializeAuthorization(NftId instanceNftId, IInstanceLinkedComponent component) external;
|
74
|
+
|
75
|
+
function createComponentTarget(
|
76
|
+
NftId instanceNftId,
|
77
|
+
address targetAddress,
|
78
|
+
string memory targetName,
|
79
|
+
bytes4[][] memory selectors,
|
80
|
+
RoleId[] memory roles
|
81
|
+
) external;
|
82
|
+
|
83
|
+
function createGifTarget(
|
84
|
+
NftId instanceNftId,
|
85
|
+
address targetAddress,
|
86
|
+
string memory targetName,
|
87
|
+
bytes4[][] memory selectors,
|
88
|
+
RoleId[] memory roles
|
89
|
+
) external;
|
90
|
+
|
91
|
+
function setComponentLocked(bool locked) external;
|
92
|
+
}
|
@@ -1,63 +1,229 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
|
-
pragma solidity ^0.8.
|
2
|
+
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {
|
5
|
-
import {IRegistry} from "../registry/IRegistry.sol";
|
6
|
-
|
7
|
-
import {IAccessModule, AccessModule} from "./access/Access.sol";
|
8
|
-
import {ComponentModule} from "./component/ComponentModule.sol";
|
9
|
-
import {ProductModule} from "./product/ProductService.sol";
|
10
|
-
import {PolicyModule} from "./policy/PolicyModule.sol";
|
11
|
-
import {PoolModule} from "./pool/PoolModule.sol";
|
4
|
+
import {AccessManagedUpgradeable} from "@openzeppelin/contracts-upgradeable/access/manager/AccessManagedUpgradeable.sol";
|
12
5
|
|
6
|
+
import {Amount} from "../type/Amount.sol";
|
7
|
+
import {BundleSet} from "./BundleSet.sol";
|
13
8
|
import {IInstance} from "./IInstance.sol";
|
9
|
+
import {IInstanceService} from "./IInstanceService.sol";
|
10
|
+
import {InstanceReader} from "./InstanceReader.sol";
|
11
|
+
import {InstanceAdmin} from "./InstanceAdmin.sol";
|
12
|
+
import {InstanceStore} from "./InstanceStore.sol";
|
13
|
+
import {INSTANCE} from "../type/ObjectType.sol";
|
14
|
+
import {IRegistry} from "../registry/IRegistry.sol";
|
15
|
+
import {Registerable} from "../shared/Registerable.sol";
|
16
|
+
import {RoleId} from "../type/RoleId.sol";
|
17
|
+
import {Seconds} from "../type/Seconds.sol";
|
18
|
+
import {UFixed} from "../type/UFixed.sol";
|
19
|
+
import {VersionPart, VersionPartLib} from "../type/Version.sol";
|
14
20
|
|
15
21
|
contract Instance is
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
PolicyModule,
|
20
|
-
PoolModule,
|
21
|
-
ProductModule,
|
22
|
-
IInstance
|
22
|
+
IInstance,
|
23
|
+
AccessManagedUpgradeable,
|
24
|
+
Registerable
|
23
25
|
{
|
26
|
+
uint256 public constant GIF_MAJOR_VERSION = 3;
|
27
|
+
|
28
|
+
bool private _initialized;
|
24
29
|
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
Registerable(registry)
|
31
|
-
AccessModule()
|
32
|
-
ComponentModule(componentOwnerService)
|
33
|
-
PolicyModule(productService)
|
34
|
-
ProductModule(productService)
|
35
|
-
PoolModule(productService)
|
36
|
-
{ }
|
30
|
+
IInstanceService internal _instanceService;
|
31
|
+
InstanceAdmin internal _instanceAdmin;
|
32
|
+
InstanceReader internal _instanceReader;
|
33
|
+
BundleSet internal _bundleManager;
|
34
|
+
InstanceStore internal _instanceStore;
|
37
35
|
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
36
|
+
modifier onlyChainNft() {
|
37
|
+
if(msg.sender != getRegistry().getChainNftAddress()) {
|
38
|
+
revert();
|
39
|
+
}
|
40
|
+
_;
|
42
41
|
}
|
43
42
|
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
43
|
+
function initialize(
|
44
|
+
InstanceAdmin instanceAdmin,
|
45
|
+
InstanceStore instanceStore,
|
46
|
+
BundleSet bundleManager,
|
47
|
+
InstanceReader instanceReader,
|
48
|
+
IRegistry registry,
|
49
|
+
address initialOwner
|
50
|
+
)
|
51
|
+
external
|
52
|
+
initializer()
|
53
|
+
{
|
54
|
+
_instanceAdmin = instanceAdmin;
|
55
|
+
if(_instanceAdmin.authority() == address(0)) {
|
56
|
+
// TODO rename error
|
57
|
+
revert ErrorInstanceInstanceAdminZero();
|
58
|
+
}
|
59
|
+
|
60
|
+
// set authority to instance admin authority
|
61
|
+
__AccessManaged_init(_instanceAdmin.authority());
|
62
|
+
|
63
|
+
// setup instance object info
|
64
|
+
initializeRegisterable(
|
65
|
+
address(registry),
|
66
|
+
registry.getNftId(),
|
67
|
+
INSTANCE(),
|
68
|
+
true,
|
69
|
+
initialOwner,
|
70
|
+
"");
|
71
|
+
|
72
|
+
// store instance supporting contracts
|
73
|
+
_instanceStore = instanceStore;
|
74
|
+
_bundleManager = bundleManager;
|
75
|
+
_instanceReader = instanceReader;
|
76
|
+
|
77
|
+
// initialize instance supporting contracts
|
78
|
+
_instanceStore.initialize();
|
79
|
+
_bundleManager.initialize();
|
80
|
+
_instanceReader.initialize();
|
81
|
+
|
82
|
+
_instanceService = IInstanceService(
|
83
|
+
getRegistry().getServiceAddress(
|
84
|
+
INSTANCE(),
|
85
|
+
getMajorVersion()));
|
86
|
+
|
87
|
+
registerInterface(type(IInstance).interfaceId);
|
88
|
+
}
|
89
|
+
|
90
|
+
//--- Staking ----------------------------------------------------------//
|
91
|
+
|
92
|
+
function setStakingLockingPeriod(Seconds stakeLockingPeriod)
|
93
|
+
external
|
94
|
+
// TODO decide if onlyOwner or restricted to instance owner role is better
|
95
|
+
onlyOwner()
|
96
|
+
{
|
97
|
+
_instanceService.setStakingLockingPeriod(stakeLockingPeriod);
|
50
98
|
}
|
51
99
|
|
52
|
-
|
53
|
-
|
54
|
-
|
100
|
+
function setStakingRewardRate(UFixed rewardRate)
|
101
|
+
external
|
102
|
+
onlyOwner()
|
103
|
+
{
|
104
|
+
_instanceService.setStakingRewardRate(rewardRate);
|
55
105
|
}
|
56
106
|
|
57
|
-
|
58
|
-
|
59
|
-
|
107
|
+
function refillStakingRewardReserves(Amount dipAmount)
|
108
|
+
external
|
109
|
+
onlyOwner()
|
110
|
+
{
|
111
|
+
address instanceOwner = msg.sender;
|
112
|
+
_instanceService.refillStakingRewardReserves(instanceOwner, dipAmount);
|
113
|
+
}
|
114
|
+
|
115
|
+
function withdrawStakingRewardReserves(Amount dipAmount)
|
116
|
+
external
|
117
|
+
onlyOwner()
|
118
|
+
returns (Amount newBalance)
|
119
|
+
{
|
120
|
+
return _instanceService.withdrawStakingRewardReserves(dipAmount);
|
121
|
+
}
|
122
|
+
|
123
|
+
//--- Roles ------------------------------------------------------------//
|
124
|
+
|
125
|
+
function createRole(string memory roleName, string memory adminName)
|
126
|
+
external
|
127
|
+
onlyOwner()
|
128
|
+
returns (RoleId roleId, RoleId admin)
|
129
|
+
{
|
130
|
+
// TODO refactor
|
131
|
+
// (roleId, admin) = _instanceAdmin.createRole(roleName, adminName);
|
132
|
+
}
|
133
|
+
|
134
|
+
function grantRole(RoleId roleId, address account)
|
135
|
+
external
|
136
|
+
onlyOwner()
|
137
|
+
{
|
138
|
+
_instanceAdmin.grantRole(roleId, account);
|
139
|
+
}
|
140
|
+
|
141
|
+
function revokeRole(RoleId roleId, address account)
|
142
|
+
external
|
143
|
+
onlyOwner()
|
144
|
+
{
|
145
|
+
// TODO refactor
|
146
|
+
// AccessManagerExtendedInitializeable(authority()).revokeRole(roleId.toInt(), account);
|
147
|
+
}
|
148
|
+
|
149
|
+
//--- Targets ------------------------------------------------------------//
|
150
|
+
|
151
|
+
function createTarget(address target, string memory name)
|
152
|
+
external
|
153
|
+
onlyOwner()
|
154
|
+
{
|
155
|
+
// TODO refactor
|
156
|
+
// _instanceAdmin.createTarget(target, name);
|
60
157
|
}
|
61
158
|
|
159
|
+
function setTargetFunctionRole(
|
160
|
+
string memory targetName,
|
161
|
+
bytes4[] calldata selectors,
|
162
|
+
RoleId roleId
|
163
|
+
)
|
164
|
+
external
|
165
|
+
onlyOwner()
|
166
|
+
{
|
167
|
+
// TODO refactor
|
168
|
+
// _instanceAdmin.setTargetFunctionRoleByInstance(targetName, selectors, roleId);
|
169
|
+
}
|
170
|
+
|
171
|
+
function setTargetLocked(address target, bool locked)
|
172
|
+
external
|
173
|
+
onlyOwner()
|
174
|
+
{
|
175
|
+
// TODO refactor
|
176
|
+
// _instanceAdmin.setTargetLockedByInstance(target, locked);
|
177
|
+
}
|
178
|
+
|
179
|
+
//--- ITransferInterceptor ----------------------------------------------//
|
180
|
+
|
181
|
+
// TODO interception of child components nfts
|
182
|
+
function nftMint(address to, uint256 tokenId) external onlyChainNft {
|
183
|
+
// TODO refactor
|
184
|
+
// _instanceAdmin.transferInstanceOwnerRole(address(0), to);
|
185
|
+
}
|
186
|
+
|
187
|
+
function nftTransferFrom(address from, address to, uint256 tokenId) external onlyChainNft {
|
188
|
+
// TODO refactor
|
189
|
+
// _instanceAdmin.transferInstanceOwnerRole(from, to);
|
190
|
+
}
|
191
|
+
|
192
|
+
//--- initial setup functions -------------------------------------------//
|
193
|
+
|
194
|
+
|
195
|
+
function setInstanceReader(InstanceReader instanceReader)
|
196
|
+
external
|
197
|
+
restricted()
|
198
|
+
{
|
199
|
+
if(instanceReader.getInstance() != Instance(this)) {
|
200
|
+
revert ErrorInstanceInstanceReaderInstanceMismatch(address(this));
|
201
|
+
}
|
202
|
+
|
203
|
+
_instanceReader = instanceReader;
|
204
|
+
}
|
205
|
+
|
206
|
+
//--- external view functions -------------------------------------------//
|
207
|
+
|
208
|
+
function getInstanceReader() external view returns (InstanceReader) {
|
209
|
+
return _instanceReader;
|
210
|
+
}
|
211
|
+
|
212
|
+
function getBundleSet() external view returns (BundleSet) {
|
213
|
+
return _bundleManager;
|
214
|
+
}
|
215
|
+
|
216
|
+
function getInstanceAdmin() external view returns (InstanceAdmin) {
|
217
|
+
return _instanceAdmin;
|
218
|
+
}
|
219
|
+
|
220
|
+
function getInstanceStore() external view returns (InstanceStore) {
|
221
|
+
return _instanceStore;
|
222
|
+
}
|
223
|
+
|
224
|
+
function getMajorVersion() public pure returns (VersionPart majorVersion) {
|
225
|
+
return VersionPartLib.toVersionPart(GIF_MAJOR_VERSION);
|
226
|
+
}
|
62
227
|
|
63
|
-
|
228
|
+
//--- internal view/pure functions --------------------------------------//
|
229
|
+
}
|