@etherisc/gif-next 0.0.2-fe77319 → 0.0.2-fe8cf39-182
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 +427 -9
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +4 -0
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +1007 -0
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +4 -0
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +744 -0
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +4 -0
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +791 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +1379 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.dbg.json +4 -0
- package/artifacts/contracts/{registry/IRegistry.sol/IOwnable.json → authorization/AccessAdmin.sol/IAccessManagedChecker.json} +4 -4
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +1434 -0
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +542 -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 +1130 -0
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +350 -0
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +167 -0
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +253 -0
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +4 -0
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +1322 -0
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +4 -0
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +589 -0
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +1016 -0
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1509 -0
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +864 -0
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +915 -0
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +1008 -0
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +22 -0
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +1475 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +589 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +2040 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +589 -0
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +376 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +1479 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +589 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1195 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1655 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +589 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2426 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +589 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +851 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +359 -498
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +4 -0
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +772 -0
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +522 -574
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1929 -0
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +661 -0
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +2429 -0
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +1046 -0
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +748 -0
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3718 -0
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +4 -0
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +853 -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 +223 -0
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +192 -0
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +168 -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 +959 -0
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +569 -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 +774 -0
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +733 -0
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +875 -0
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +997 -0
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +764 -0
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +4 -0
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +1252 -0
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +589 -0
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +4 -0
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1261 -0
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +800 -0
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +880 -0
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +907 -0
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1230 -0
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
- package/artifacts/contracts/pool/Pool.sol/Pool.json +1027 -0
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +4 -0
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +456 -0
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1574 -0
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +808 -0
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +813 -0
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +728 -0
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +1161 -0
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +589 -0
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1496 -0
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +848 -0
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +597 -0
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +1064 -0
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +981 -0
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +602 -0
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +1018 -0
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +453 -0
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1333 -0
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +4 -0
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +293 -0
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +808 -0
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +930 -0
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +784 -0
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
- package/artifacts/contracts/product/Product.sol/Product.json +1119 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +637 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +724 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +4 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +827 -0
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +1054 -115
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +4 -0
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +1043 -0
- package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +4 -0
- package/artifacts/contracts/registry/IRelease.sol/IRelease.json +24 -0
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +4 -0
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +39 -0
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +1567 -153
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1928 -0
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +1269 -0
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +735 -0
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +1849 -0
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +205 -0
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1333 -0
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +272 -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 +707 -0
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1571 -0
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +820 -0
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +485 -0
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +541 -0
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +4 -0
- package/artifacts/contracts/{instance/component/IComponent.sol/IInstanceLinked.json → shared/ContractLib.sol/IInstanceAdminHelper.json} +5 -5
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +4 -0
- package/artifacts/contracts/{instance/access/IAccess.sol/IAccessCheckRole.json → shared/ContractLib.sol/ITargetHelper.json} +4 -9
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +40 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +632 -0
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +1203 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +709 -0
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +510 -0
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +146 -0
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +4 -0
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +147 -0
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +175 -0
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +4 -0
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +329 -0
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
- package/artifacts/contracts/{registry/IRegistry.sol → shared/IRegistryLinked.sol}/IRegistryLinked.json +5 -19
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +4 -0
- package/artifacts/contracts/shared/IService.sol/IService.json +399 -0
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +53 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +797 -0
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +538 -0
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +174 -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 +209 -0
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +198 -0
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +4 -0
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +378 -0
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +58 -0
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +4 -0
- package/artifacts/contracts/shared/Service.sol/Service.json +453 -0
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +723 -0
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +484 -0
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +172 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1494 -0
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +1167 -0
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +469 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.json +1917 -0
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +205 -0
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +796 -0
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +560 -0
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1380 -0
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +736 -0
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2297 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +617 -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 +398 -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 +203 -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/Key32Set.sol/LibKey32Set.dbg.json +4 -0
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +33 -0
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +228 -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 +199 -0
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +433 -0
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +246 -0
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
- package/artifacts/contracts/type/Selector.sol/SelectorLib.json +148 -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 +105 -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/UFixedLib.dbg.json +4 -0
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +548 -0
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
- package/artifacts/contracts/type/Version.sol/VersionLib.json +158 -0
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +113 -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 +618 -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/accounting/AccountingService.sol +262 -0
- package/contracts/accounting/AccountingServiceManager.sol +38 -0
- package/contracts/accounting/IAccountingService.sol +45 -0
- package/contracts/authorization/AccessAdmin.sol +689 -0
- package/contracts/authorization/AccessManagerCloneable.sol +149 -0
- package/contracts/authorization/Authorization.sol +337 -0
- package/contracts/authorization/IAccess.sol +49 -0
- package/contracts/authorization/IAccessAdmin.sol +143 -0
- package/contracts/authorization/IAuthorization.sol +74 -0
- package/contracts/authorization/IServiceAuthorization.sol +40 -0
- package/contracts/authorization/ServiceAuthorization.sol +106 -0
- package/contracts/distribution/BasicDistribution.sol +141 -0
- package/contracts/distribution/BasicDistributionAuthorization.sol +60 -0
- package/contracts/distribution/Distribution.sol +289 -0
- package/contracts/distribution/DistributionService.sol +358 -0
- package/contracts/distribution/DistributionServiceManager.sol +39 -0
- package/contracts/distribution/IDistributionComponent.sol +52 -0
- package/contracts/distribution/IDistributionService.sol +101 -0
- package/contracts/examples/fire/DamageLevel.sol +59 -0
- package/contracts/examples/fire/FirePool.sol +90 -0
- package/contracts/examples/fire/FirePoolAuthorization.sol +35 -0
- package/contracts/examples/fire/FireProduct.sol +438 -0
- package/contracts/examples/fire/FireProductAuthorization.sol +45 -0
- package/contracts/examples/fire/FireUSD.sol +26 -0
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +57 -0
- package/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleOracle.sol +137 -0
- package/contracts/examples/unpermissioned/SimplePool.sol +106 -0
- package/contracts/examples/unpermissioned/SimplePoolAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleProduct.sol +377 -0
- package/contracts/examples/unpermissioned/SimpleProductAuthorization.sol +28 -0
- package/contracts/instance/BundleSet.sol +130 -0
- package/contracts/instance/IInstance.sol +65 -15
- package/contracts/instance/IInstanceService.sol +73 -0
- package/contracts/instance/Instance.sol +237 -46
- package/contracts/instance/InstanceAdmin.sol +437 -0
- package/contracts/instance/InstanceAuthorizationV3.sol +213 -0
- package/contracts/instance/InstanceReader.sol +637 -0
- package/contracts/instance/InstanceService.sol +416 -0
- package/contracts/instance/InstanceServiceManager.sol +39 -0
- package/contracts/instance/InstanceStore.sol +298 -0
- package/contracts/instance/RiskSet.sol +118 -0
- package/contracts/instance/base/BalanceStore.sol +123 -0
- package/contracts/instance/base/Cloneable.sol +28 -0
- package/contracts/instance/base/ObjectCounter.sol +20 -0
- package/contracts/instance/base/ObjectLifecycle.sol +113 -0
- package/contracts/instance/base/ObjectSet.sol +77 -0
- package/contracts/instance/base/ObjectSetHelperLib.sol +30 -0
- package/contracts/instance/module/IBundle.sol +20 -0
- package/contracts/instance/module/IComponents.sol +51 -0
- package/contracts/instance/module/IDistribution.sol +42 -0
- package/contracts/instance/module/IPolicy.sol +85 -0
- package/contracts/instance/module/IRisk.sol +14 -0
- package/contracts/mock/Dip.sol +26 -0
- package/contracts/oracle/BasicOracle.sol +47 -0
- package/contracts/oracle/BasicOracleAuthorization.sol +37 -0
- package/contracts/oracle/IOracle.sol +36 -0
- package/contracts/oracle/IOracleComponent.sol +33 -0
- package/contracts/oracle/IOracleService.sol +66 -0
- package/contracts/oracle/Oracle.sol +156 -0
- package/contracts/oracle/OracleService.sol +310 -0
- package/contracts/oracle/OracleServiceManager.sol +39 -0
- package/contracts/pool/BasicPool.sol +175 -0
- package/contracts/pool/BasicPoolAuthorization.sol +76 -0
- package/contracts/pool/BundleService.sol +395 -0
- package/contracts/pool/BundleServiceManager.sol +39 -0
- package/contracts/pool/IBundleService.sol +115 -0
- package/contracts/pool/IPoolComponent.sol +62 -0
- package/contracts/pool/IPoolService.sol +165 -0
- package/contracts/pool/Pool.sol +345 -0
- package/contracts/pool/PoolLib.sol +216 -0
- package/contracts/pool/PoolService.sol +757 -0
- package/contracts/pool/PoolServiceManager.sol +39 -0
- package/contracts/product/ApplicationService.sol +259 -0
- package/contracts/product/ApplicationServiceManager.sol +38 -0
- package/contracts/product/BasicProduct.sol +51 -0
- package/contracts/product/BasicProductAuthorization.sol +56 -0
- package/contracts/product/ClaimService.sol +632 -0
- package/contracts/product/ClaimServiceManager.sol +38 -0
- package/contracts/product/IApplicationService.sol +66 -0
- package/contracts/product/IClaimService.sol +135 -0
- package/contracts/product/IPolicyService.sol +95 -0
- package/contracts/product/IPricingService.sol +39 -0
- package/contracts/product/IProductComponent.sol +62 -0
- package/contracts/product/IRiskService.sol +33 -0
- package/contracts/product/PolicyService.sol +682 -0
- package/contracts/product/PolicyServiceLib.sol +65 -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 +478 -0
- package/contracts/product/RiskService.sol +145 -0
- package/contracts/product/RiskServiceManager.sol +39 -0
- package/contracts/registry/ChainNft.sol +249 -0
- package/contracts/registry/IRegistry.sol +151 -51
- package/contracts/registry/IRegistryService.sol +62 -0
- package/contracts/registry/IRelease.sol +26 -0
- package/contracts/registry/ITransferInterceptor.sol +6 -0
- package/contracts/registry/Registry.sol +660 -127
- package/contracts/registry/RegistryAdmin.sol +354 -0
- package/contracts/registry/RegistryService.sol +241 -0
- package/contracts/registry/RegistryServiceManager.sol +53 -0
- package/contracts/registry/ReleaseAdmin.sol +245 -0
- package/contracts/registry/ReleaseLifecycle.sol +32 -0
- package/contracts/registry/ReleaseRegistry.sol +511 -0
- package/contracts/registry/ServiceAuthorizationV3.sol +247 -0
- package/contracts/registry/TokenRegistry.sol +313 -0
- package/contracts/shared/Component.sol +227 -0
- package/contracts/shared/ComponentService.sol +692 -0
- package/contracts/shared/ComponentServiceManager.sol +38 -0
- package/contracts/shared/ComponentVerifyingService.sol +128 -0
- package/contracts/shared/ContractLib.sol +253 -0
- package/contracts/shared/IComponent.sol +61 -0
- package/contracts/shared/IComponentService.sol +112 -0
- package/contracts/shared/IInstanceLinkedComponent.sol +30 -0
- package/contracts/shared/IKeyValueStore.sol +54 -0
- package/contracts/shared/ILifecycle.sol +31 -0
- package/contracts/shared/INftOwnable.sol +25 -0
- package/contracts/shared/IPolicyHolder.sol +35 -0
- package/contracts/shared/IRegisterable.sol +37 -0
- package/contracts/shared/IRegistryLinked.sol +11 -0
- package/contracts/shared/IService.sol +23 -0
- package/contracts/shared/InitializableERC165.sol +27 -0
- package/contracts/shared/InstanceLinkedComponent.sol +197 -0
- package/contracts/shared/KeyValueStore.sol +131 -0
- package/contracts/shared/Lifecycle.sol +88 -0
- package/contracts/shared/NftIdSet.sol +65 -0
- package/contracts/shared/NftOwnable.sol +127 -0
- package/contracts/shared/PolicyHolder.sol +62 -0
- package/contracts/shared/Registerable.sol +109 -0
- package/contracts/shared/RegistryLinked.sol +38 -0
- package/contracts/shared/Service.sol +65 -0
- package/contracts/shared/TokenHandler.sol +341 -0
- package/contracts/shared/TokenHandlerDeployerLib.sol +20 -0
- package/contracts/staking/IStaking.sol +171 -0
- package/contracts/staking/IStakingService.sol +172 -0
- package/contracts/staking/StakeManagerLib.sol +276 -0
- package/contracts/staking/Staking.sol +546 -0
- package/contracts/staking/StakingLifecycle.sol +23 -0
- package/contracts/staking/StakingManager.sol +52 -0
- package/contracts/staking/StakingReader.sol +180 -0
- package/contracts/staking/StakingService.sol +464 -0
- package/contracts/staking/StakingServiceManager.sol +45 -0
- package/contracts/staking/StakingStore.sol +606 -0
- package/contracts/staking/TargetManagerLib.sol +211 -0
- package/contracts/type/AddressSet.sol +58 -0
- package/contracts/type/Amount.sol +150 -0
- package/contracts/type/Blocknumber.sol +142 -0
- package/contracts/type/ClaimId.sol +80 -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/Key32Set.sol +62 -0
- package/contracts/type/NftId.sol +85 -0
- package/contracts/type/NftIdSet.sol +62 -0
- package/contracts/type/ObjectType.sol +303 -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 +74 -0
- package/contracts/type/RoleId.sol +182 -0
- package/contracts/type/Seconds.sol +101 -0
- package/contracts/type/Selector.sol +107 -0
- package/contracts/type/StateId.sol +149 -0
- package/contracts/type/String.sol +53 -0
- package/contracts/type/Timestamp.sol +141 -0
- package/contracts/type/UFixed.sol +245 -0
- package/contracts/type/Version.sol +120 -0
- package/contracts/upgradeability/IVersionable.sol +53 -0
- package/contracts/upgradeability/ProxyManager.sol +232 -0
- package/contracts/upgradeability/UpgradableProxyWithAdmin.sol +14 -0
- package/contracts/upgradeability/Versionable.sol +59 -0
- package/package.json +26 -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/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/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/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
@@ -0,0 +1,637 @@
|
|
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 {IBundle} from "../instance/module/IBundle.sol";
|
7
|
+
import {IComponents} from "../instance/module/IComponents.sol";
|
8
|
+
import {IDistribution} from "../instance/module/IDistribution.sol";
|
9
|
+
import {IInstance} from "./IInstance.sol";
|
10
|
+
import {IKeyValueStore} from "../shared/IKeyValueStore.sol";
|
11
|
+
import {IOracle} from "../oracle/IOracle.sol";
|
12
|
+
import {IPolicy} from "../instance/module/IPolicy.sol";
|
13
|
+
import {IRegistry} from "../registry/IRegistry.sol";
|
14
|
+
import {IRisk} from "../instance/module/IRisk.sol";
|
15
|
+
import {TimestampLib} from "../type/Timestamp.sol";
|
16
|
+
|
17
|
+
import {Amount} from "../type/Amount.sol";
|
18
|
+
import {BundleSet} from "./BundleSet.sol";
|
19
|
+
import {BUNDLE, COMPONENT, DISTRIBUTOR, DISTRIBUTION, FEE, PREMIUM, POLICY, POOL, PRODUCT} from "../type/ObjectType.sol";
|
20
|
+
import {ClaimId, ClaimIdLib} from "../type/ClaimId.sol";
|
21
|
+
import {DistributorType} from "../type/DistributorType.sol";
|
22
|
+
import {InstanceStore} from "./InstanceStore.sol";
|
23
|
+
import {Key32} from "../type/Key32.sol";
|
24
|
+
import {NftId} from "../type/NftId.sol";
|
25
|
+
import {PayoutId, PayoutIdLib} from "../type/PayoutId.sol";
|
26
|
+
import {ReferralId, ReferralStatus, ReferralLib, REFERRAL_OK, REFERRAL_ERROR_UNKNOWN, REFERRAL_ERROR_EXPIRED, REFERRAL_ERROR_EXHAUSTED} from "../type/Referral.sol";
|
27
|
+
import {RequestId} from "../type/RequestId.sol";
|
28
|
+
import {RiskId} from "../type/RiskId.sol";
|
29
|
+
import {RiskSet} from "./RiskSet.sol";
|
30
|
+
import {RoleId} from "../type/RoleId.sol";
|
31
|
+
import {StateId} from "../type/StateId.sol";
|
32
|
+
import {TokenHandler} from "../shared/TokenHandler.sol";
|
33
|
+
import {UFixed, UFixedLib} from "../type/UFixed.sol";
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
contract InstanceReader {
|
38
|
+
|
39
|
+
error ErrorInstanceReaderAlreadyInitialized();
|
40
|
+
error ErrorInstanceReaderInstanceAddressZero();
|
41
|
+
|
42
|
+
bool private _initialized = false;
|
43
|
+
|
44
|
+
IRegistry internal _registry;
|
45
|
+
IInstance internal _instance;
|
46
|
+
|
47
|
+
InstanceStore internal _store;
|
48
|
+
BundleSet internal _bundleSet;
|
49
|
+
RiskSet internal _riskSet;
|
50
|
+
|
51
|
+
/// @dev This initializer needs to be called from the instance itself.
|
52
|
+
function initialize() public {
|
53
|
+
if(_initialized) {
|
54
|
+
revert ErrorInstanceReaderAlreadyInitialized();
|
55
|
+
}
|
56
|
+
|
57
|
+
initializeWithInstance(msg.sender);
|
58
|
+
}
|
59
|
+
|
60
|
+
function initializeWithInstance(address instanceAddress)
|
61
|
+
public
|
62
|
+
{
|
63
|
+
if(_initialized) {
|
64
|
+
revert ErrorInstanceReaderAlreadyInitialized();
|
65
|
+
}
|
66
|
+
|
67
|
+
_initialized = true;
|
68
|
+
_instance = IInstance(instanceAddress);
|
69
|
+
_registry = _instance.getRegistry();
|
70
|
+
|
71
|
+
_store = _instance.getInstanceStore();
|
72
|
+
_bundleSet = _instance.getBundleSet();
|
73
|
+
_riskSet = _instance.getRiskSet();
|
74
|
+
}
|
75
|
+
|
76
|
+
|
77
|
+
// instance level functions
|
78
|
+
|
79
|
+
function getRegistry() public view returns (IRegistry registry) {
|
80
|
+
return _registry;
|
81
|
+
}
|
82
|
+
|
83
|
+
function getInstanceNftId() public view returns (NftId instanceNftid) {
|
84
|
+
return _registry.getNftIdForAddress(address(_instance));
|
85
|
+
}
|
86
|
+
|
87
|
+
function getInstance() public view returns (IInstance instance) {
|
88
|
+
return _instance;
|
89
|
+
}
|
90
|
+
|
91
|
+
function components() public view returns (uint256 componentCount) {
|
92
|
+
return _instance.getInstanceAdmin().components();
|
93
|
+
}
|
94
|
+
|
95
|
+
function products() public view returns (uint256 productCount) {
|
96
|
+
return _instance.products();
|
97
|
+
}
|
98
|
+
|
99
|
+
function getProductNftId(uint256 idx) public view returns (NftId productNftId) {
|
100
|
+
return _instance.getProductNftId(idx);
|
101
|
+
}
|
102
|
+
|
103
|
+
// module specific functions
|
104
|
+
|
105
|
+
function getPolicyInfo(NftId policyNftId)
|
106
|
+
public
|
107
|
+
view
|
108
|
+
returns (IPolicy.PolicyInfo memory info)
|
109
|
+
{
|
110
|
+
bytes memory data = _store.getData(toPolicyKey(policyNftId));
|
111
|
+
if (data.length > 0) {
|
112
|
+
return abi.decode(data, (IPolicy.PolicyInfo));
|
113
|
+
}
|
114
|
+
}
|
115
|
+
|
116
|
+
function getPolicyState(NftId policyNftId)
|
117
|
+
public
|
118
|
+
view
|
119
|
+
returns (StateId state)
|
120
|
+
{
|
121
|
+
return _store.getState(toPolicyKey(policyNftId));
|
122
|
+
}
|
123
|
+
|
124
|
+
function getPremiumInfo(NftId policyNftId)
|
125
|
+
public
|
126
|
+
view
|
127
|
+
returns (IPolicy.PremiumInfo memory info)
|
128
|
+
{
|
129
|
+
bytes memory data = _store.getData(toPremiumKey(policyNftId));
|
130
|
+
if (data.length > 0) {
|
131
|
+
return abi.decode(data, (IPolicy.PremiumInfo));
|
132
|
+
}
|
133
|
+
}
|
134
|
+
|
135
|
+
function getPremiumInfoState(NftId policyNftId)
|
136
|
+
public
|
137
|
+
view
|
138
|
+
returns (StateId state)
|
139
|
+
{
|
140
|
+
return _store.getState(toPremiumKey(policyNftId));
|
141
|
+
}
|
142
|
+
|
143
|
+
function bundles(NftId poolNftId)
|
144
|
+
public
|
145
|
+
view
|
146
|
+
returns (uint256 bundleCount)
|
147
|
+
{
|
148
|
+
return _bundleSet.bundles(poolNftId);
|
149
|
+
}
|
150
|
+
|
151
|
+
function activeBundles(NftId poolNftId)
|
152
|
+
public
|
153
|
+
view
|
154
|
+
returns (uint256 bundleCount)
|
155
|
+
{
|
156
|
+
return _bundleSet.activeBundles(poolNftId);
|
157
|
+
}
|
158
|
+
|
159
|
+
function getActiveBundleNftId(NftId poolNftId, uint256 idx)
|
160
|
+
public
|
161
|
+
view
|
162
|
+
returns (NftId bundleNftId)
|
163
|
+
{
|
164
|
+
return _bundleSet.getActiveBundleNftId(poolNftId, idx);
|
165
|
+
}
|
166
|
+
|
167
|
+
function getBundleNftId(NftId poolNftId, uint256 idx)
|
168
|
+
public
|
169
|
+
view
|
170
|
+
returns (NftId bundleNftId)
|
171
|
+
{
|
172
|
+
return _bundleSet.getBundleNftId(poolNftId, idx);
|
173
|
+
}
|
174
|
+
|
175
|
+
function getBundleState(NftId bundleNftId)
|
176
|
+
public
|
177
|
+
view
|
178
|
+
returns (StateId state)
|
179
|
+
{
|
180
|
+
return _store.getState(toBundleKey(bundleNftId));
|
181
|
+
}
|
182
|
+
|
183
|
+
/// @dev Returns true iff policy is active.
|
184
|
+
function policyIsActive(NftId policyNftId)
|
185
|
+
public
|
186
|
+
view
|
187
|
+
returns (bool isCloseable)
|
188
|
+
{
|
189
|
+
IPolicy.PolicyInfo memory info = getPolicyInfo(policyNftId);
|
190
|
+
|
191
|
+
if (info.productNftId.eqz()) { return false; } // not closeable: policy does not exist (or does not belong to this instance)
|
192
|
+
if (info.activatedAt.eqz()) { return false; } // not closeable: not yet activated
|
193
|
+
if (info.activatedAt > TimestampLib.blockTimestamp()) { return false; } // not yet active
|
194
|
+
if (info.expiredAt <= TimestampLib.blockTimestamp()) { return false; } // already expired
|
195
|
+
|
196
|
+
return true;
|
197
|
+
}
|
198
|
+
|
199
|
+
function claims(NftId policyNftId)
|
200
|
+
public
|
201
|
+
view
|
202
|
+
returns (uint16 claimCount)
|
203
|
+
{
|
204
|
+
return getPolicyInfo(policyNftId).claimsCount;
|
205
|
+
}
|
206
|
+
|
207
|
+
|
208
|
+
function getClaimId(uint idx)
|
209
|
+
public
|
210
|
+
view
|
211
|
+
returns (ClaimId claimId)
|
212
|
+
{
|
213
|
+
return ClaimIdLib.toClaimId(idx + 1);
|
214
|
+
}
|
215
|
+
|
216
|
+
function getClaimInfo(NftId policyNftId, ClaimId claimId)
|
217
|
+
public
|
218
|
+
view
|
219
|
+
returns (IPolicy.ClaimInfo memory info)
|
220
|
+
{
|
221
|
+
bytes memory data = _store.getData(claimId.toKey32(policyNftId));
|
222
|
+
if (data.length > 0) {
|
223
|
+
return abi.decode(data, (IPolicy.ClaimInfo));
|
224
|
+
}
|
225
|
+
}
|
226
|
+
|
227
|
+
|
228
|
+
function getClaimState(NftId policyNftId, ClaimId claimId)
|
229
|
+
public
|
230
|
+
view
|
231
|
+
returns (StateId state)
|
232
|
+
{
|
233
|
+
return _store.getState(claimId.toKey32(policyNftId));
|
234
|
+
}
|
235
|
+
|
236
|
+
|
237
|
+
function payouts(NftId policyNftId, ClaimId claimId)
|
238
|
+
public
|
239
|
+
view
|
240
|
+
returns (uint24 payoutCount)
|
241
|
+
{
|
242
|
+
return getClaimInfo(policyNftId, claimId).payoutsCount;
|
243
|
+
}
|
244
|
+
|
245
|
+
|
246
|
+
function getPayoutId(ClaimId claimId, uint24 idx)
|
247
|
+
public
|
248
|
+
view
|
249
|
+
returns (PayoutId payoutId)
|
250
|
+
{
|
251
|
+
return PayoutIdLib.toPayoutId(claimId, idx + 1);
|
252
|
+
}
|
253
|
+
|
254
|
+
|
255
|
+
function getRemainingClaimableAmount(NftId policyNftId)
|
256
|
+
public
|
257
|
+
view
|
258
|
+
returns (Amount remainingClaimableAmount)
|
259
|
+
{
|
260
|
+
IPolicy.PolicyInfo memory info = getPolicyInfo(policyNftId);
|
261
|
+
return info.sumInsuredAmount - info.claimAmount;
|
262
|
+
}
|
263
|
+
|
264
|
+
function getPayoutInfo(NftId policyNftId, PayoutId payoutId)
|
265
|
+
public
|
266
|
+
view
|
267
|
+
returns (IPolicy.PayoutInfo memory info)
|
268
|
+
{
|
269
|
+
bytes memory data = _store.getData(payoutId.toKey32(policyNftId));
|
270
|
+
if (data.length > 0) {
|
271
|
+
return abi.decode(data, (IPolicy.PayoutInfo));
|
272
|
+
}
|
273
|
+
}
|
274
|
+
|
275
|
+
function getPayoutState(NftId policyNftId, PayoutId payoutId)
|
276
|
+
public
|
277
|
+
view
|
278
|
+
returns (StateId state)
|
279
|
+
{
|
280
|
+
return _store.getState(payoutId.toKey32(policyNftId));
|
281
|
+
}
|
282
|
+
|
283
|
+
function risks(NftId productNftId)
|
284
|
+
public
|
285
|
+
view
|
286
|
+
returns (uint256 riskCount)
|
287
|
+
{
|
288
|
+
return _riskSet.risks(productNftId);
|
289
|
+
}
|
290
|
+
|
291
|
+
function getRiskId(NftId productNftId, uint256 idx)
|
292
|
+
public
|
293
|
+
view
|
294
|
+
returns (RiskId riskId)
|
295
|
+
{
|
296
|
+
return _riskSet.getRiskId(productNftId, idx);
|
297
|
+
}
|
298
|
+
|
299
|
+
function activeRisks(NftId productNftId)
|
300
|
+
public
|
301
|
+
view
|
302
|
+
returns (uint256 activeRiskCount)
|
303
|
+
{
|
304
|
+
return _riskSet.activeRisks(productNftId);
|
305
|
+
}
|
306
|
+
|
307
|
+
function getActiveRiskId(NftId productNftId, uint256 idx)
|
308
|
+
public
|
309
|
+
view
|
310
|
+
returns (RiskId riskId)
|
311
|
+
{
|
312
|
+
return _riskSet.getActiveRiskId(productNftId, idx);
|
313
|
+
}
|
314
|
+
|
315
|
+
function getRiskInfo(RiskId riskId)
|
316
|
+
public
|
317
|
+
view
|
318
|
+
returns (IRisk.RiskInfo memory info)
|
319
|
+
{
|
320
|
+
bytes memory data = _store.getData(riskId.toKey32());
|
321
|
+
if (data.length > 0) {
|
322
|
+
return abi.decode(data, (IRisk.RiskInfo));
|
323
|
+
}
|
324
|
+
}
|
325
|
+
|
326
|
+
function getRiskState(RiskId riskId)
|
327
|
+
public
|
328
|
+
view
|
329
|
+
returns (StateId stateId)
|
330
|
+
{
|
331
|
+
bytes memory data = _store.getData(riskId.toKey32());
|
332
|
+
return _store.getState(riskId.toKey32());
|
333
|
+
}
|
334
|
+
|
335
|
+
function policiesForRisk(RiskId riskId)
|
336
|
+
public
|
337
|
+
view
|
338
|
+
returns (uint256 linkedPolicies)
|
339
|
+
{
|
340
|
+
return _riskSet.linkedPolicies(riskId);
|
341
|
+
}
|
342
|
+
|
343
|
+
function getPolicyNftIdForRisk(RiskId riskId, uint256 idx)
|
344
|
+
public
|
345
|
+
view
|
346
|
+
returns (NftId linkedPolicyNftId)
|
347
|
+
{
|
348
|
+
return _riskSet.getLinkedPolicyNftId(riskId, idx);
|
349
|
+
}
|
350
|
+
|
351
|
+
|
352
|
+
function getToken(NftId componentNftId)
|
353
|
+
public
|
354
|
+
view
|
355
|
+
returns (IERC20Metadata token)
|
356
|
+
{
|
357
|
+
TokenHandler tokenHandler = getTokenHandler(componentNftId);
|
358
|
+
if (address(tokenHandler) != address(0)) {
|
359
|
+
return tokenHandler.TOKEN();
|
360
|
+
}
|
361
|
+
}
|
362
|
+
|
363
|
+
|
364
|
+
function getWallet(NftId componentNftId)
|
365
|
+
public
|
366
|
+
view
|
367
|
+
returns (address wallet)
|
368
|
+
{
|
369
|
+
TokenHandler tokenHandler = getTokenHandler(componentNftId);
|
370
|
+
if (address(tokenHandler) != address(0)) {
|
371
|
+
return tokenHandler.getWallet();
|
372
|
+
}
|
373
|
+
}
|
374
|
+
|
375
|
+
|
376
|
+
function getTokenHandler(NftId componentNftId)
|
377
|
+
public
|
378
|
+
view
|
379
|
+
returns (TokenHandler tokenHandler)
|
380
|
+
{
|
381
|
+
bytes memory data = _store.getData(toComponentKey(componentNftId));
|
382
|
+
if (data.length > 0) {
|
383
|
+
return abi.decode(data, (IComponents.ComponentInfo)).tokenHandler;
|
384
|
+
}
|
385
|
+
}
|
386
|
+
|
387
|
+
|
388
|
+
function getBundleInfo(NftId bundleNftId)
|
389
|
+
public
|
390
|
+
view
|
391
|
+
returns (IBundle.BundleInfo memory info)
|
392
|
+
{
|
393
|
+
bytes memory data = _store.getData(toBundleKey(bundleNftId));
|
394
|
+
if (data.length > 0) {
|
395
|
+
return abi.decode(data, (IBundle.BundleInfo));
|
396
|
+
}
|
397
|
+
}
|
398
|
+
|
399
|
+
function getDistributorTypeInfo(DistributorType distributorType)
|
400
|
+
public
|
401
|
+
view
|
402
|
+
returns (IDistribution.DistributorTypeInfo memory info)
|
403
|
+
{
|
404
|
+
bytes memory data = _store.getData(distributorType.toKey32());
|
405
|
+
if (data.length > 0) {
|
406
|
+
return abi.decode(data, (IDistribution.DistributorTypeInfo));
|
407
|
+
}
|
408
|
+
}
|
409
|
+
|
410
|
+
function getDistributorInfo(NftId distributorNftId)
|
411
|
+
public
|
412
|
+
view
|
413
|
+
returns (IDistribution.DistributorInfo memory info)
|
414
|
+
{
|
415
|
+
bytes memory data = _store.getData(toDistributorKey(distributorNftId));
|
416
|
+
if (data.length > 0) {
|
417
|
+
return abi.decode(data, (IDistribution.DistributorInfo));
|
418
|
+
}
|
419
|
+
}
|
420
|
+
|
421
|
+
function getBalanceAmount(NftId targetNftId) external view returns (Amount) {
|
422
|
+
return _store.getBalanceAmount(targetNftId);
|
423
|
+
}
|
424
|
+
|
425
|
+
function getLockedAmount(NftId targetNftId) external view returns (Amount) {
|
426
|
+
return _store.getLockedAmount(targetNftId);
|
427
|
+
}
|
428
|
+
|
429
|
+
function getFeeAmount(NftId targetNftId) external view returns (Amount) {
|
430
|
+
return _store.getFeeAmount(targetNftId);
|
431
|
+
}
|
432
|
+
|
433
|
+
function getComponentInfo(NftId componentNftId)
|
434
|
+
public
|
435
|
+
view
|
436
|
+
returns (IComponents.ComponentInfo memory info)
|
437
|
+
{
|
438
|
+
bytes memory data = _store.getData(toComponentKey(componentNftId));
|
439
|
+
if (data.length > 0) {
|
440
|
+
return abi.decode(data, (IComponents.ComponentInfo));
|
441
|
+
}
|
442
|
+
}
|
443
|
+
|
444
|
+
function getProductInfo(NftId productNftId)
|
445
|
+
public
|
446
|
+
view
|
447
|
+
returns (IComponents.ProductInfo memory info)
|
448
|
+
{
|
449
|
+
bytes memory data = _store.getData(toProductKey(productNftId));
|
450
|
+
if (data.length > 0) {
|
451
|
+
return abi.decode(data, (IComponents.ProductInfo));
|
452
|
+
}
|
453
|
+
}
|
454
|
+
|
455
|
+
function getFeeInfo(NftId productNftId)
|
456
|
+
public
|
457
|
+
view
|
458
|
+
returns (IComponents.FeeInfo memory feeInfo)
|
459
|
+
{
|
460
|
+
bytes memory data = _store.getData(toFeeKey(productNftId));
|
461
|
+
if (data.length > 0) {
|
462
|
+
return abi.decode(data, (IComponents.FeeInfo));
|
463
|
+
}
|
464
|
+
}
|
465
|
+
|
466
|
+
function getPoolInfo(NftId poolNftId)
|
467
|
+
public
|
468
|
+
view
|
469
|
+
returns (IComponents.PoolInfo memory info)
|
470
|
+
{
|
471
|
+
bytes memory data = _store.getData(toPoolKey(poolNftId));
|
472
|
+
if (data.length > 0) {
|
473
|
+
return abi.decode(data, (IComponents.PoolInfo));
|
474
|
+
}
|
475
|
+
}
|
476
|
+
|
477
|
+
function getReferralInfo(ReferralId referralId)
|
478
|
+
public
|
479
|
+
view
|
480
|
+
returns (IDistribution.ReferralInfo memory info)
|
481
|
+
{
|
482
|
+
bytes memory data = _store.getData(referralId.toKey32());
|
483
|
+
if (data.length > 0) {
|
484
|
+
return abi.decode(data, (IDistribution.ReferralInfo));
|
485
|
+
}
|
486
|
+
}
|
487
|
+
|
488
|
+
function getRequestInfo(RequestId requestId)
|
489
|
+
public
|
490
|
+
view
|
491
|
+
returns (IOracle.RequestInfo memory requestInfo)
|
492
|
+
{
|
493
|
+
bytes memory data = _store.getData(requestId.toKey32());
|
494
|
+
if (data.length > 0) {
|
495
|
+
return abi.decode(data, (IOracle.RequestInfo));
|
496
|
+
}
|
497
|
+
}
|
498
|
+
|
499
|
+
function getMetadata(Key32 key)
|
500
|
+
public
|
501
|
+
view
|
502
|
+
returns (IKeyValueStore.Metadata memory metadata)
|
503
|
+
{
|
504
|
+
return _store.getMetadata(key);
|
505
|
+
}
|
506
|
+
|
507
|
+
function getState(Key32 key)
|
508
|
+
public
|
509
|
+
view
|
510
|
+
returns (StateId state)
|
511
|
+
{
|
512
|
+
return _store.getMetadata(key).state;
|
513
|
+
}
|
514
|
+
|
515
|
+
|
516
|
+
function toReferralId(
|
517
|
+
NftId distributionNftId,
|
518
|
+
string memory referralCode
|
519
|
+
)
|
520
|
+
public
|
521
|
+
pure
|
522
|
+
returns (ReferralId referralId)
|
523
|
+
{
|
524
|
+
return ReferralLib.toReferralId(
|
525
|
+
distributionNftId,
|
526
|
+
referralCode);
|
527
|
+
}
|
528
|
+
|
529
|
+
|
530
|
+
function getDiscountPercentage(ReferralId referralId)
|
531
|
+
public
|
532
|
+
view
|
533
|
+
returns (
|
534
|
+
UFixed discountPercentage,
|
535
|
+
ReferralStatus status
|
536
|
+
)
|
537
|
+
{
|
538
|
+
IDistribution.ReferralInfo memory info = getReferralInfo(
|
539
|
+
referralId);
|
540
|
+
|
541
|
+
if (info.expiryAt.eqz()) {
|
542
|
+
return (
|
543
|
+
UFixedLib.zero(),
|
544
|
+
REFERRAL_ERROR_UNKNOWN());
|
545
|
+
}
|
546
|
+
|
547
|
+
if (info.expiryAt < TimestampLib.blockTimestamp()) {
|
548
|
+
return (
|
549
|
+
UFixedLib.zero(),
|
550
|
+
REFERRAL_ERROR_EXPIRED());
|
551
|
+
}
|
552
|
+
|
553
|
+
if (info.usedReferrals >= info.maxReferrals) {
|
554
|
+
return (
|
555
|
+
UFixedLib.zero(),
|
556
|
+
REFERRAL_ERROR_EXHAUSTED());
|
557
|
+
}
|
558
|
+
|
559
|
+
return (
|
560
|
+
info.discountPercentage,
|
561
|
+
REFERRAL_OK()
|
562
|
+
);
|
563
|
+
}
|
564
|
+
|
565
|
+
|
566
|
+
function hasRole(address account, RoleId roleId) public view returns (bool isMember) {
|
567
|
+
return _instance.getInstanceAdmin().hasRole(account, roleId);
|
568
|
+
}
|
569
|
+
|
570
|
+
|
571
|
+
function hasAdminRole(address account, RoleId roleId) public view returns (bool isMember) {
|
572
|
+
return _instance.getInstanceAdmin().hasAdminRole(account, roleId);
|
573
|
+
}
|
574
|
+
|
575
|
+
|
576
|
+
function isLocked(address target) public view returns (bool) {
|
577
|
+
return _instance.getInstanceAdmin().isTargetLocked(target);
|
578
|
+
}
|
579
|
+
|
580
|
+
function toPolicyKey(NftId policyNftId) public pure returns (Key32) {
|
581
|
+
return policyNftId.toKey32(POLICY());
|
582
|
+
}
|
583
|
+
|
584
|
+
function toPremiumKey(NftId policyNftId) public pure returns (Key32) {
|
585
|
+
return policyNftId.toKey32(PREMIUM());
|
586
|
+
}
|
587
|
+
|
588
|
+
function toDistributorKey(NftId distributorNftId) public pure returns (Key32) {
|
589
|
+
return distributorNftId.toKey32(DISTRIBUTOR());
|
590
|
+
}
|
591
|
+
|
592
|
+
function toBundleKey(NftId poolNftId) public pure returns (Key32) {
|
593
|
+
return poolNftId.toKey32(BUNDLE());
|
594
|
+
}
|
595
|
+
|
596
|
+
function toComponentKey(NftId componentNftId) public pure returns (Key32) {
|
597
|
+
return componentNftId.toKey32(COMPONENT());
|
598
|
+
}
|
599
|
+
|
600
|
+
function toDistributionKey(NftId distributionNftId) public pure returns (Key32) {
|
601
|
+
return distributionNftId.toKey32(DISTRIBUTION());
|
602
|
+
}
|
603
|
+
|
604
|
+
function toPoolKey(NftId poolNftId) public pure returns (Key32) {
|
605
|
+
return poolNftId.toKey32(POOL());
|
606
|
+
}
|
607
|
+
|
608
|
+
function toProductKey(NftId productNftId) public pure returns (Key32) {
|
609
|
+
return productNftId.toKey32(PRODUCT());
|
610
|
+
}
|
611
|
+
|
612
|
+
function toFeeKey(NftId productNftId) public pure returns (Key32) {
|
613
|
+
return productNftId.toKey32(FEE());
|
614
|
+
}
|
615
|
+
|
616
|
+
// low level function
|
617
|
+
|
618
|
+
function getInstanceStore() external view returns (IKeyValueStore store) {
|
619
|
+
return _store;
|
620
|
+
}
|
621
|
+
|
622
|
+
function getBundleSet() external view returns (BundleSet bundleSet) {
|
623
|
+
return _bundleSet;
|
624
|
+
}
|
625
|
+
|
626
|
+
function getRiskSet() external view returns (RiskSet riskSet) {
|
627
|
+
return _riskSet;
|
628
|
+
}
|
629
|
+
|
630
|
+
function toUFixed(uint256 value, int8 exp) public pure returns (UFixed) {
|
631
|
+
return UFixedLib.toUFixed(value, exp);
|
632
|
+
}
|
633
|
+
|
634
|
+
function toInt(UFixed value) public pure returns (uint256) {
|
635
|
+
return UFixedLib.toInt(value);
|
636
|
+
}
|
637
|
+
}
|