@etherisc/gif-next 0.0.2-b098734-179 → 0.0.2-b09ef6b-888
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 +32 -8
- 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 +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +551 -245
- package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.json +24 -0
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +681 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +202 -5
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +273 -16
- package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +435 -194
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +139 -15
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +19 -0
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +68 -5
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +147 -438
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +261 -27
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +88 -328
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +384 -306
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +141 -115
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +83 -171
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +254 -97
- 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 +1445 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +644 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +2002 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +644 -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 +1388 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +644 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1152 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1612 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +644 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2389 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +644 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +193 -45
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +275 -46
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +199 -71
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +283 -151
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +990 -419
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +218 -78
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1322 -388
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +216 -245
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +96 -96
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +704 -445
- 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 +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +46 -5
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +16 -5
- 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 +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +123 -322
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +243 -29
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +98 -121
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +69 -11
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +99 -274
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +153 -190
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +122 -88
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +117 -292
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +261 -27
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +158 -363
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +106 -124
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +84 -111
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +119 -153
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +317 -269
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +117 -303
- 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 +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +490 -505
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +151 -101
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +191 -164
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +106 -88
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +234 -348
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +261 -27
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +407 -242
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +140 -114
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +131 -9
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +293 -17
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +245 -64
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +157 -83
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +231 -193
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
- package/artifacts/contracts/product/{IProductService.sol/IProductService.json → IRiskService.sol/IRiskService.json} +88 -8
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +335 -278
- 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 +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +129 -103
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +247 -313
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +120 -122
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +232 -346
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +688 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +736 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +59 -16
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +334 -34
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +144 -41
- 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 +1 -1
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +5 -18
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +540 -95
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +680 -339
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +878 -0
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +109 -292
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +94 -80
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +2023 -0
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +47 -6
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +435 -245
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +66 -8
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +4 -4
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +81 -227
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +484 -680
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +131 -155
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +57 -111
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +597 -0
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +24 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.json +30 -0
- 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 +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +81 -75
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +445 -282
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +98 -121
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +36 -0
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +36 -0
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +16 -0
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +15 -47
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +148 -0
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.json +55 -2
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +2 -22
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +98 -273
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +42 -1
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +42 -1
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +22 -57
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +19 -141
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +122 -97
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -15
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +57 -111
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +408 -54
- 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 +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +188 -109
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +148 -16
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +268 -393
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +469 -0
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +46 -5
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +121 -126
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +31 -63
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +201 -164
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +103 -85
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +185 -130
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +65 -24
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +33 -9
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +28 -4
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +3 -3
- package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
- package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
- package/artifacts/contracts/type/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 +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +23 -4
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +33 -31
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +19 -19
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +125 -7
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +79 -15
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +26 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorLib.json +21 -2
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.json +15 -2
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +2 -2
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +16 -3
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -21
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +101 -2
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +71 -70
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
- 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 +382 -250
- package/contracts/authorization/AccessAdminLib.sol +207 -0
- package/contracts/authorization/AccessManagerCloneable.sol +146 -4
- package/contracts/authorization/Authorization.sol +350 -203
- package/contracts/authorization/IAccess.sol +1 -0
- package/contracts/authorization/IAccessAdmin.sol +76 -37
- package/contracts/authorization/IAuthorization.sol +33 -7
- package/contracts/authorization/IServiceAuthorization.sol +3 -1
- package/contracts/authorization/ServiceAuthorization.sol +26 -10
- package/contracts/distribution/BasicDistribution.sol +20 -17
- package/contracts/distribution/BasicDistributionAuthorization.sol +22 -9
- package/contracts/distribution/Distribution.sol +37 -88
- package/contracts/distribution/DistributionService.sol +152 -89
- package/contracts/distribution/DistributionServiceManager.sol +6 -6
- package/contracts/distribution/IDistributionComponent.sol +1 -10
- package/contracts/distribution/IDistributionService.sol +30 -22
- package/contracts/examples/fire/DamageLevel.sol +59 -0
- package/contracts/examples/fire/FirePool.sol +86 -0
- package/contracts/examples/fire/FirePoolAuthorization.sol +35 -0
- package/contracts/examples/fire/FireProduct.sol +433 -0
- package/contracts/examples/fire/FireProductAuthorization.sol +45 -0
- package/contracts/examples/fire/FireUSD.sol +26 -0
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +81 -0
- package/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleOracle.sol +133 -0
- package/contracts/examples/unpermissioned/SimplePool.sol +102 -0
- package/contracts/examples/unpermissioned/SimplePoolAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleProduct.sol +373 -0
- package/contracts/examples/unpermissioned/SimpleProductAuthorization.sol +28 -0
- package/contracts/instance/BundleSet.sol +42 -38
- package/contracts/instance/IInstance.sol +81 -44
- package/contracts/instance/IInstanceService.sol +34 -29
- package/contracts/instance/Instance.sol +164 -94
- package/contracts/instance/InstanceAdmin.sol +325 -109
- package/contracts/instance/InstanceAuthorizationV3.sol +106 -55
- package/contracts/instance/InstanceReader.sol +319 -43
- package/contracts/instance/InstanceService.sol +234 -190
- package/contracts/instance/InstanceServiceManager.sol +6 -7
- package/contracts/instance/InstanceStore.sol +23 -2
- package/contracts/instance/RiskSet.sol +118 -0
- package/contracts/instance/base/ObjectCounter.sol +1 -2
- package/contracts/instance/base/ObjectLifecycle.sol +10 -2
- package/contracts/instance/base/ObjectSet.sol +31 -33
- package/contracts/instance/base/ObjectSetHelperLib.sol +30 -0
- package/contracts/instance/module/IComponents.sol +13 -9
- package/contracts/instance/module/IDistribution.sol +5 -2
- package/contracts/instance/module/IPolicy.sol +25 -24
- package/contracts/instance/module/IRisk.sol +3 -0
- package/contracts/oracle/BasicOracle.sol +1 -4
- package/contracts/oracle/BasicOracleAuthorization.sol +3 -12
- package/contracts/oracle/IOracleService.sol +2 -1
- package/contracts/oracle/Oracle.sol +7 -19
- package/contracts/oracle/OracleService.sol +113 -81
- package/contracts/oracle/OracleServiceManager.sol +6 -6
- package/contracts/pool/BasicPool.sol +32 -25
- package/contracts/pool/BasicPoolAuthorization.sol +27 -9
- package/contracts/pool/BundleService.sol +93 -134
- package/contracts/pool/BundleServiceManager.sol +6 -6
- package/contracts/pool/IBundleService.sol +15 -33
- package/contracts/pool/IPoolComponent.sol +19 -15
- package/contracts/pool/IPoolService.sol +86 -68
- package/contracts/pool/Pool.sol +139 -124
- package/contracts/pool/PoolLib.sol +216 -0
- package/contracts/pool/PoolService.sol +500 -263
- package/contracts/pool/PoolServiceManager.sol +4 -4
- package/contracts/product/ApplicationService.sol +50 -26
- package/contracts/product/ApplicationServiceManager.sol +4 -4
- package/contracts/product/BasicProduct.sol +10 -13
- package/contracts/product/BasicProductAuthorization.sol +24 -11
- package/contracts/product/ClaimService.sol +365 -149
- package/contracts/product/ClaimServiceManager.sol +4 -4
- package/contracts/product/IApplicationService.sol +8 -2
- package/contracts/product/IClaimService.sol +43 -8
- package/contracts/product/IPolicyService.sol +39 -28
- package/contracts/product/IPricingService.sol +11 -10
- package/contracts/product/IProductComponent.sol +27 -5
- package/contracts/product/{IProductService.sol → IRiskService.sol} +8 -9
- package/contracts/product/PolicyService.sol +369 -291
- package/contracts/product/PolicyServiceLib.sol +65 -0
- package/contracts/product/PolicyServiceManager.sol +4 -4
- package/contracts/product/PricingService.sol +66 -61
- package/contracts/product/PricingServiceManager.sol +4 -4
- package/contracts/product/Product.sol +145 -91
- package/contracts/product/RiskService.sol +154 -0
- package/contracts/product/RiskServiceManager.sol +39 -0
- package/contracts/registry/ChainNft.sol +72 -40
- package/contracts/registry/IRegistry.sol +60 -28
- package/contracts/registry/IRegistryService.sol +5 -12
- package/contracts/registry/IRelease.sol +26 -0
- package/contracts/registry/ITransferInterceptor.sol +1 -2
- package/contracts/registry/Registry.sol +357 -203
- package/contracts/registry/RegistryAdmin.sol +163 -269
- package/contracts/registry/RegistryAuthorization.sol +267 -0
- package/contracts/registry/RegistryService.sol +37 -48
- package/contracts/registry/RegistryServiceManager.sol +3 -3
- package/contracts/registry/ReleaseAdmin.sol +254 -0
- package/contracts/registry/ReleaseLifecycle.sol +8 -3
- package/contracts/registry/ReleaseRegistry.sol +272 -240
- package/contracts/registry/ServiceAuthorizationV3.sol +187 -52
- package/contracts/registry/TokenRegistry.sol +6 -8
- package/contracts/shared/Component.sol +66 -124
- package/contracts/shared/ComponentService.sol +439 -370
- package/contracts/shared/ComponentServiceManager.sol +8 -5
- package/contracts/shared/ComponentVerifyingService.sol +28 -17
- package/contracts/shared/ContractLib.sol +281 -0
- package/contracts/shared/IComponent.sol +5 -17
- package/contracts/shared/IComponentService.sol +42 -38
- package/contracts/shared/IInstanceLinkedComponent.sol +2 -28
- package/contracts/shared/ILifecycle.sol +3 -1
- package/contracts/shared/INftOwnable.sol +2 -0
- package/contracts/shared/IPolicyHolder.sol +12 -22
- package/contracts/shared/IRegisterable.sol +23 -1
- package/contracts/shared/IService.sol +3 -5
- package/contracts/shared/InitializableERC165.sol +10 -2
- package/contracts/shared/InstanceLinkedComponent.sol +73 -50
- package/contracts/shared/KeyValueStore.sol +1 -1
- package/contracts/shared/Lifecycle.sol +15 -4
- package/contracts/shared/NftOwnable.sol +29 -9
- package/contracts/shared/PolicyHolder.sol +15 -52
- package/contracts/shared/Registerable.sol +52 -21
- package/contracts/shared/RegistryLinked.sol +9 -14
- package/contracts/shared/Service.sol +15 -32
- package/contracts/shared/TokenHandler.sol +282 -71
- package/contracts/shared/TokenHandlerDeployerLib.sol +20 -0
- package/contracts/staking/IStaking.sol +19 -11
- package/contracts/staking/IStakingService.sol +16 -4
- package/contracts/staking/Staking.sol +103 -53
- package/contracts/staking/{StakeManagerLib.sol → StakingLib.sol} +96 -21
- package/contracts/staking/StakingManager.sol +8 -6
- package/contracts/staking/StakingReader.sol +18 -21
- package/contracts/staking/StakingService.sol +82 -25
- package/contracts/staking/StakingServiceManager.sol +6 -5
- package/contracts/staking/StakingStore.sol +2 -1
- package/contracts/staking/TargetManagerLib.sol +7 -3
- package/contracts/type/Amount.sol +15 -0
- package/contracts/type/ClaimId.sol +6 -1
- package/contracts/type/Key32.sol +2 -2
- package/contracts/type/Key32Set.sol +62 -0
- package/contracts/type/NftId.sol +7 -0
- package/contracts/type/ObjectType.sol +57 -34
- package/contracts/type/PayoutId.sol +10 -10
- package/contracts/type/RiskId.sol +38 -6
- package/contracts/type/RoleId.sol +25 -14
- package/contracts/type/Seconds.sol +8 -0
- package/contracts/type/Selector.sol +5 -0
- package/contracts/type/StateId.sol +15 -1
- package/contracts/type/Timestamp.sol +0 -5
- package/contracts/type/UFixed.sol +13 -119
- package/contracts/type/Version.sol +54 -5
- package/contracts/upgradeability/ProxyManager.sol +68 -34
- package/contracts/upgradeability/Versionable.sol +2 -2
- package/package.json +5 -4
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +0 -4
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.json +0 -290
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +0 -4
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +0 -390
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +0 -4
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +0 -129
- package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +0 -4
- package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +0 -4
- package/artifacts/contracts/product/ProductService.sol/ProductService.json +0 -708
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +0 -702
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +0 -4
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +0 -39
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +0 -4
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +0 -387
- package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +0 -4
- package/artifacts/contracts/type/UFixed.sol/MathLib.json +0 -16
- package/contracts/authorization/IModuleAuthorization.sol +0 -21
- package/contracts/authorization/ModuleAuthorization.sol +0 -78
- package/contracts/instance/module/IAccess.sol +0 -46
- package/contracts/product/ProductService.sol +0 -99
- package/contracts/product/ProductServiceManager.sol +0 -39
- package/contracts/shared/InitializableCustom.sol +0 -177
@@ -1,31 +1,39 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {
|
5
|
-
import {ClaimId} from "../type/ClaimId.sol";
|
6
|
-
import {DistributorType} from "../type/DistributorType.sol";
|
7
|
-
import {Key32} from "../type/Key32.sol";
|
8
|
-
import {NftId} from "../type/NftId.sol";
|
9
|
-
import {COMPONENT, DISTRIBUTOR, DISTRIBUTION, PRODUCT, POLICY, POOL, BUNDLE} from "../type/ObjectType.sol";
|
10
|
-
import {PayoutId} from "../type/PayoutId.sol";
|
11
|
-
import {ReferralId, ReferralStatus, ReferralLib, REFERRAL_OK, REFERRAL_ERROR_UNKNOWN, REFERRAL_ERROR_EXPIRED, REFERRAL_ERROR_EXHAUSTED} from "../type/Referral.sol";
|
12
|
-
import {RequestId} from "../type/RequestId.sol";
|
13
|
-
import {RiskId} from "../type/RiskId.sol";
|
14
|
-
import {RoleId} from "../type/RoleId.sol";
|
15
|
-
import {StateId} from "../type/StateId.sol";
|
16
|
-
import {UFixed, UFixedLib} from "../type/UFixed.sol";
|
4
|
+
import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
|
17
5
|
|
6
|
+
import {IAccess} from "../authorization/IAccess.sol";
|
18
7
|
import {IBundle} from "../instance/module/IBundle.sol";
|
19
8
|
import {IComponents} from "../instance/module/IComponents.sol";
|
20
9
|
import {IDistribution} from "../instance/module/IDistribution.sol";
|
10
|
+
import {IDistributionService} from "../distribution/IDistributionService.sol";
|
21
11
|
import {IInstance} from "./IInstance.sol";
|
22
12
|
import {IKeyValueStore} from "../shared/IKeyValueStore.sol";
|
23
13
|
import {IOracle} from "../oracle/IOracle.sol";
|
24
14
|
import {IPolicy} from "../instance/module/IPolicy.sol";
|
15
|
+
import {IRegistry} from "../registry/IRegistry.sol";
|
25
16
|
import {IRisk} from "../instance/module/IRisk.sol";
|
26
17
|
import {TimestampLib} from "../type/Timestamp.sol";
|
27
18
|
|
19
|
+
import {Amount} from "../type/Amount.sol";
|
20
|
+
import {BundleSet} from "./BundleSet.sol";
|
21
|
+
import {BUNDLE, COMPONENT, DISTRIBUTOR, DISTRIBUTION, FEE, PREMIUM, POLICY, POOL, PRODUCT} from "../type/ObjectType.sol";
|
22
|
+
import {ClaimId, ClaimIdLib} from "../type/ClaimId.sol";
|
23
|
+
import {DistributorType} from "../type/DistributorType.sol";
|
28
24
|
import {InstanceStore} from "./InstanceStore.sol";
|
25
|
+
import {Key32} from "../type/Key32.sol";
|
26
|
+
import {NftId} from "../type/NftId.sol";
|
27
|
+
import {PayoutId, PayoutIdLib} from "../type/PayoutId.sol";
|
28
|
+
import {ReferralId, ReferralStatus, ReferralLib, REFERRAL_OK, REFERRAL_ERROR_UNKNOWN, REFERRAL_ERROR_EXPIRED, REFERRAL_ERROR_EXHAUSTED} from "../type/Referral.sol";
|
29
|
+
import {RequestId} from "../type/RequestId.sol";
|
30
|
+
import {RiskId} from "../type/RiskId.sol";
|
31
|
+
import {RiskSet} from "./RiskSet.sol";
|
32
|
+
import {RoleId, INSTANCE_OWNER_ROLE} from "../type/RoleId.sol";
|
33
|
+
import {StateId} from "../type/StateId.sol";
|
34
|
+
import {TokenHandler} from "../shared/TokenHandler.sol";
|
35
|
+
import {UFixed, UFixedLib} from "../type/UFixed.sol";
|
36
|
+
|
29
37
|
|
30
38
|
|
31
39
|
contract InstanceReader {
|
@@ -35,8 +43,13 @@ contract InstanceReader {
|
|
35
43
|
|
36
44
|
bool private _initialized = false;
|
37
45
|
|
46
|
+
IRegistry internal _registry;
|
38
47
|
IInstance internal _instance;
|
48
|
+
|
39
49
|
InstanceStore internal _store;
|
50
|
+
BundleSet internal _bundleSet;
|
51
|
+
RiskSet internal _riskSet;
|
52
|
+
IDistributionService internal _distributionService;
|
40
53
|
|
41
54
|
/// @dev This initializer needs to be called from the instance itself.
|
42
55
|
function initialize() public {
|
@@ -47,18 +60,50 @@ contract InstanceReader {
|
|
47
60
|
initializeWithInstance(msg.sender);
|
48
61
|
}
|
49
62
|
|
50
|
-
|
51
|
-
|
63
|
+
function initializeWithInstance(address instanceAddress)
|
64
|
+
public
|
65
|
+
{
|
52
66
|
if(_initialized) {
|
53
67
|
revert ErrorInstanceReaderAlreadyInitialized();
|
54
68
|
}
|
55
69
|
|
56
70
|
_initialized = true;
|
57
71
|
_instance = IInstance(instanceAddress);
|
72
|
+
_registry = _instance.getRegistry();
|
73
|
+
|
58
74
|
_store = _instance.getInstanceStore();
|
75
|
+
_bundleSet = _instance.getBundleSet();
|
76
|
+
_riskSet = _instance.getRiskSet();
|
77
|
+
_distributionService = IDistributionService(_registry.getServiceAddress(DISTRIBUTION(), _instance.getRelease()));
|
59
78
|
}
|
60
79
|
|
61
80
|
|
81
|
+
// instance level functions
|
82
|
+
|
83
|
+
function getRegistry() public view returns (IRegistry registry) {
|
84
|
+
return _registry;
|
85
|
+
}
|
86
|
+
|
87
|
+
function getInstanceNftId() public view returns (NftId instanceNftid) {
|
88
|
+
return _registry.getNftIdForAddress(address(_instance));
|
89
|
+
}
|
90
|
+
|
91
|
+
function getInstance() public view returns (IInstance instance) {
|
92
|
+
return _instance;
|
93
|
+
}
|
94
|
+
|
95
|
+
function components() public view returns (uint256 componentCount) {
|
96
|
+
return _instance.getInstanceAdmin().components();
|
97
|
+
}
|
98
|
+
|
99
|
+
function products() public view returns (uint256 productCount) {
|
100
|
+
return _instance.products();
|
101
|
+
}
|
102
|
+
|
103
|
+
function getProductNftId(uint256 idx) public view returns (NftId productNftId) {
|
104
|
+
return _instance.getProductNftId(idx);
|
105
|
+
}
|
106
|
+
|
62
107
|
// module specific functions
|
63
108
|
|
64
109
|
function getPolicyInfo(NftId policyNftId)
|
@@ -80,6 +125,57 @@ contract InstanceReader {
|
|
80
125
|
return _store.getState(toPolicyKey(policyNftId));
|
81
126
|
}
|
82
127
|
|
128
|
+
function getPremiumInfo(NftId policyNftId)
|
129
|
+
public
|
130
|
+
view
|
131
|
+
returns (IPolicy.PremiumInfo memory info)
|
132
|
+
{
|
133
|
+
bytes memory data = _store.getData(toPremiumKey(policyNftId));
|
134
|
+
if (data.length > 0) {
|
135
|
+
return abi.decode(data, (IPolicy.PremiumInfo));
|
136
|
+
}
|
137
|
+
}
|
138
|
+
|
139
|
+
function getPremiumInfoState(NftId policyNftId)
|
140
|
+
public
|
141
|
+
view
|
142
|
+
returns (StateId state)
|
143
|
+
{
|
144
|
+
return _store.getState(toPremiumKey(policyNftId));
|
145
|
+
}
|
146
|
+
|
147
|
+
function bundles(NftId poolNftId)
|
148
|
+
public
|
149
|
+
view
|
150
|
+
returns (uint256 bundleCount)
|
151
|
+
{
|
152
|
+
return _bundleSet.bundles(poolNftId);
|
153
|
+
}
|
154
|
+
|
155
|
+
function activeBundles(NftId poolNftId)
|
156
|
+
public
|
157
|
+
view
|
158
|
+
returns (uint256 bundleCount)
|
159
|
+
{
|
160
|
+
return _bundleSet.activeBundles(poolNftId);
|
161
|
+
}
|
162
|
+
|
163
|
+
function getActiveBundleNftId(NftId poolNftId, uint256 idx)
|
164
|
+
public
|
165
|
+
view
|
166
|
+
returns (NftId bundleNftId)
|
167
|
+
{
|
168
|
+
return _bundleSet.getActiveBundleNftId(poolNftId, idx);
|
169
|
+
}
|
170
|
+
|
171
|
+
function getBundleNftId(NftId poolNftId, uint256 idx)
|
172
|
+
public
|
173
|
+
view
|
174
|
+
returns (NftId bundleNftId)
|
175
|
+
{
|
176
|
+
return _bundleSet.getBundleNftId(poolNftId, idx);
|
177
|
+
}
|
178
|
+
|
83
179
|
function getBundleState(NftId bundleNftId)
|
84
180
|
public
|
85
181
|
view
|
@@ -88,14 +184,8 @@ contract InstanceReader {
|
|
88
184
|
return _store.getState(toBundleKey(bundleNftId));
|
89
185
|
}
|
90
186
|
|
91
|
-
/// @dev
|
92
|
-
|
93
|
-
/// - policy exists
|
94
|
-
/// - has been activated
|
95
|
-
/// - is not yet closed
|
96
|
-
/// - has no open claims
|
97
|
-
/// - claim amount matches sum insured amount or is expired
|
98
|
-
function policyIsCloseable(NftId policyNftId)
|
187
|
+
/// @dev Returns true iff policy is active.
|
188
|
+
function policyIsActive(NftId policyNftId)
|
99
189
|
public
|
100
190
|
view
|
101
191
|
returns (bool isCloseable)
|
@@ -104,17 +194,27 @@ contract InstanceReader {
|
|
104
194
|
|
105
195
|
if (info.productNftId.eqz()) { return false; } // not closeable: policy does not exist (or does not belong to this instance)
|
106
196
|
if (info.activatedAt.eqz()) { return false; } // not closeable: not yet activated
|
107
|
-
if (info.
|
108
|
-
if (info.
|
197
|
+
if (info.activatedAt > TimestampLib.blockTimestamp()) { return false; } // not yet active
|
198
|
+
if (info.expiredAt <= TimestampLib.blockTimestamp()) { return false; } // already expired
|
199
|
+
|
200
|
+
return true;
|
201
|
+
}
|
109
202
|
|
110
|
-
|
111
|
-
|
203
|
+
function claims(NftId policyNftId)
|
204
|
+
public
|
205
|
+
view
|
206
|
+
returns (uint16 claimCount)
|
207
|
+
{
|
208
|
+
return getPolicyInfo(policyNftId).claimsCount;
|
209
|
+
}
|
112
210
|
|
113
|
-
// not closeable: not yet expired
|
114
|
-
if (TimestampLib.blockTimestamp() < info.expiredAt) { return false; }
|
115
211
|
|
116
|
-
|
117
|
-
|
212
|
+
function getClaimId(uint idx)
|
213
|
+
public
|
214
|
+
view
|
215
|
+
returns (ClaimId claimId)
|
216
|
+
{
|
217
|
+
return ClaimIdLib.toClaimId(idx + 1);
|
118
218
|
}
|
119
219
|
|
120
220
|
function getClaimInfo(NftId policyNftId, ClaimId claimId)
|
@@ -128,6 +228,7 @@ contract InstanceReader {
|
|
128
228
|
}
|
129
229
|
}
|
130
230
|
|
231
|
+
|
131
232
|
function getClaimState(NftId policyNftId, ClaimId claimId)
|
132
233
|
public
|
133
234
|
view
|
@@ -136,6 +237,34 @@ contract InstanceReader {
|
|
136
237
|
return _store.getState(claimId.toKey32(policyNftId));
|
137
238
|
}
|
138
239
|
|
240
|
+
|
241
|
+
function payouts(NftId policyNftId, ClaimId claimId)
|
242
|
+
public
|
243
|
+
view
|
244
|
+
returns (uint24 payoutCount)
|
245
|
+
{
|
246
|
+
return getClaimInfo(policyNftId, claimId).payoutsCount;
|
247
|
+
}
|
248
|
+
|
249
|
+
|
250
|
+
function getPayoutId(ClaimId claimId, uint24 idx)
|
251
|
+
public
|
252
|
+
view
|
253
|
+
returns (PayoutId payoutId)
|
254
|
+
{
|
255
|
+
return PayoutIdLib.toPayoutId(claimId, idx + 1);
|
256
|
+
}
|
257
|
+
|
258
|
+
|
259
|
+
function getRemainingClaimableAmount(NftId policyNftId)
|
260
|
+
public
|
261
|
+
view
|
262
|
+
returns (Amount remainingClaimableAmount)
|
263
|
+
{
|
264
|
+
IPolicy.PolicyInfo memory info = getPolicyInfo(policyNftId);
|
265
|
+
return info.sumInsuredAmount - info.claimAmount;
|
266
|
+
}
|
267
|
+
|
139
268
|
function getPayoutInfo(NftId policyNftId, PayoutId payoutId)
|
140
269
|
public
|
141
270
|
view
|
@@ -155,6 +284,38 @@ contract InstanceReader {
|
|
155
284
|
return _store.getState(payoutId.toKey32(policyNftId));
|
156
285
|
}
|
157
286
|
|
287
|
+
function risks(NftId productNftId)
|
288
|
+
public
|
289
|
+
view
|
290
|
+
returns (uint256 riskCount)
|
291
|
+
{
|
292
|
+
return _riskSet.risks(productNftId);
|
293
|
+
}
|
294
|
+
|
295
|
+
function getRiskId(NftId productNftId, uint256 idx)
|
296
|
+
public
|
297
|
+
view
|
298
|
+
returns (RiskId riskId)
|
299
|
+
{
|
300
|
+
return _riskSet.getRiskId(productNftId, idx);
|
301
|
+
}
|
302
|
+
|
303
|
+
function activeRisks(NftId productNftId)
|
304
|
+
public
|
305
|
+
view
|
306
|
+
returns (uint256 activeRiskCount)
|
307
|
+
{
|
308
|
+
return _riskSet.activeRisks(productNftId);
|
309
|
+
}
|
310
|
+
|
311
|
+
function getActiveRiskId(NftId productNftId, uint256 idx)
|
312
|
+
public
|
313
|
+
view
|
314
|
+
returns (RiskId riskId)
|
315
|
+
{
|
316
|
+
return _riskSet.getActiveRiskId(productNftId, idx);
|
317
|
+
}
|
318
|
+
|
158
319
|
function getRiskInfo(RiskId riskId)
|
159
320
|
public
|
160
321
|
view
|
@@ -166,19 +327,68 @@ contract InstanceReader {
|
|
166
327
|
}
|
167
328
|
}
|
168
329
|
|
330
|
+
function getRiskState(RiskId riskId)
|
331
|
+
public
|
332
|
+
view
|
333
|
+
returns (StateId stateId)
|
334
|
+
{
|
335
|
+
bytes memory data = _store.getData(riskId.toKey32());
|
336
|
+
return _store.getState(riskId.toKey32());
|
337
|
+
}
|
338
|
+
|
339
|
+
function policiesForRisk(RiskId riskId)
|
340
|
+
public
|
341
|
+
view
|
342
|
+
returns (uint256 linkedPolicies)
|
343
|
+
{
|
344
|
+
return _riskSet.linkedPolicies(riskId);
|
345
|
+
}
|
346
|
+
|
347
|
+
function getPolicyNftIdForRisk(RiskId riskId, uint256 idx)
|
348
|
+
public
|
349
|
+
view
|
350
|
+
returns (NftId linkedPolicyNftId)
|
351
|
+
{
|
352
|
+
return _riskSet.getLinkedPolicyNftId(riskId, idx);
|
353
|
+
}
|
354
|
+
|
355
|
+
|
356
|
+
function getToken(NftId componentNftId)
|
357
|
+
public
|
358
|
+
view
|
359
|
+
returns (IERC20Metadata token)
|
360
|
+
{
|
361
|
+
TokenHandler tokenHandler = getTokenHandler(componentNftId);
|
362
|
+
if (address(tokenHandler) != address(0)) {
|
363
|
+
return tokenHandler.TOKEN();
|
364
|
+
}
|
365
|
+
}
|
366
|
+
|
367
|
+
|
368
|
+
function getWallet(NftId componentNftId)
|
369
|
+
public
|
370
|
+
view
|
371
|
+
returns (address wallet)
|
372
|
+
{
|
373
|
+
TokenHandler tokenHandler = getTokenHandler(componentNftId);
|
374
|
+
if (address(tokenHandler) != address(0)) {
|
375
|
+
return tokenHandler.getWallet();
|
376
|
+
}
|
377
|
+
}
|
378
|
+
|
379
|
+
|
169
380
|
function getTokenHandler(NftId componentNftId)
|
170
381
|
public
|
171
382
|
view
|
172
|
-
returns (
|
383
|
+
returns (TokenHandler tokenHandler)
|
173
384
|
{
|
174
385
|
bytes memory data = _store.getData(toComponentKey(componentNftId));
|
175
|
-
|
176
386
|
if (data.length > 0) {
|
177
|
-
|
178
|
-
return address(info.tokenHandler);
|
387
|
+
return abi.decode(data, (IComponents.ComponentInfo)).tokenHandler;
|
179
388
|
}
|
180
389
|
}
|
181
390
|
|
391
|
+
|
182
392
|
function getBundleInfo(NftId bundleNftId)
|
183
393
|
public
|
184
394
|
view
|
@@ -246,6 +456,17 @@ contract InstanceReader {
|
|
246
456
|
}
|
247
457
|
}
|
248
458
|
|
459
|
+
function getFeeInfo(NftId productNftId)
|
460
|
+
public
|
461
|
+
view
|
462
|
+
returns (IComponents.FeeInfo memory feeInfo)
|
463
|
+
{
|
464
|
+
bytes memory data = _store.getData(toFeeKey(productNftId));
|
465
|
+
if (data.length > 0) {
|
466
|
+
return abi.decode(data, (IComponents.FeeInfo));
|
467
|
+
}
|
468
|
+
}
|
469
|
+
|
249
470
|
function getPoolInfo(NftId poolNftId)
|
250
471
|
public
|
251
472
|
view
|
@@ -268,6 +489,16 @@ contract InstanceReader {
|
|
268
489
|
}
|
269
490
|
}
|
270
491
|
|
492
|
+
function isReferralValid(NftId distributionNftId, ReferralId referralId)
|
493
|
+
external
|
494
|
+
view
|
495
|
+
returns (bool isValid)
|
496
|
+
{
|
497
|
+
return _distributionService.referralIsValid(
|
498
|
+
distributionNftId,
|
499
|
+
referralId);
|
500
|
+
}
|
501
|
+
|
271
502
|
function getRequestInfo(RequestId requestId)
|
272
503
|
public
|
273
504
|
view
|
@@ -346,17 +577,50 @@ contract InstanceReader {
|
|
346
577
|
}
|
347
578
|
|
348
579
|
|
349
|
-
function
|
350
|
-
return _instance.getInstanceAdmin().
|
580
|
+
function roles() public view returns (uint256) {
|
581
|
+
return _instance.getInstanceAdmin().roles();
|
582
|
+
}
|
583
|
+
|
584
|
+
|
585
|
+
function getInstanceOwnerRole() public view returns (RoleId roleId) {
|
586
|
+
return INSTANCE_OWNER_ROLE();
|
587
|
+
}
|
588
|
+
|
589
|
+
|
590
|
+
function getRoleId(uint256 idx) public view returns (RoleId roleId) {
|
591
|
+
return _instance.getInstanceAdmin().getRoleId(uint64(idx));
|
592
|
+
}
|
593
|
+
|
594
|
+
function roleExists(RoleId roleId) public view returns (bool exists) {
|
595
|
+
return _instance.getInstanceAdmin().roleExists(roleId);
|
596
|
+
}
|
597
|
+
|
598
|
+
function getRoleInfo(RoleId roleId) public view returns (IAccess.RoleInfo memory roleInfo) {
|
599
|
+
return _instance.getInstanceAdmin().getRoleInfo(roleId);
|
600
|
+
}
|
601
|
+
|
602
|
+
|
603
|
+
function isRoleCustom(RoleId roleId) public view returns (bool isCustom) {
|
604
|
+
return _instance.getInstanceAdmin().isRoleCustom(roleId);
|
605
|
+
}
|
606
|
+
|
607
|
+
|
608
|
+
function isRoleActive(RoleId roleId) public view returns (bool isActive) {
|
609
|
+
return _instance.getInstanceAdmin().isRoleActive(roleId);
|
351
610
|
}
|
352
611
|
|
353
612
|
|
354
|
-
function
|
355
|
-
return _instance.getInstanceAdmin().
|
613
|
+
function isRoleMember(address account, RoleId roleId) public view returns (bool isMember) {
|
614
|
+
return _instance.getInstanceAdmin().isRoleMember(account, roleId);
|
356
615
|
}
|
357
616
|
|
358
617
|
|
359
|
-
function
|
618
|
+
function isRoleAdmin(address account, RoleId roleId) public view returns (bool isMember) {
|
619
|
+
return _instance.getInstanceAdmin().isRoleAdmin(account, roleId);
|
620
|
+
}
|
621
|
+
|
622
|
+
|
623
|
+
function isLocked(address target) public view returns (bool) {
|
360
624
|
return _instance.getInstanceAdmin().isTargetLocked(target);
|
361
625
|
}
|
362
626
|
|
@@ -364,6 +628,9 @@ contract InstanceReader {
|
|
364
628
|
return policyNftId.toKey32(POLICY());
|
365
629
|
}
|
366
630
|
|
631
|
+
function toPremiumKey(NftId policyNftId) public pure returns (Key32) {
|
632
|
+
return policyNftId.toKey32(PREMIUM());
|
633
|
+
}
|
367
634
|
|
368
635
|
function toDistributorKey(NftId distributorNftId) public pure returns (Key32) {
|
369
636
|
return distributorNftId.toKey32(DISTRIBUTOR());
|
@@ -389,15 +656,24 @@ contract InstanceReader {
|
|
389
656
|
return productNftId.toKey32(PRODUCT());
|
390
657
|
}
|
391
658
|
|
392
|
-
|
393
|
-
|
394
|
-
return _instance;
|
659
|
+
function toFeeKey(NftId productNftId) public pure returns (Key32) {
|
660
|
+
return productNftId.toKey32(FEE());
|
395
661
|
}
|
396
662
|
|
663
|
+
// low level function
|
664
|
+
|
397
665
|
function getInstanceStore() external view returns (IKeyValueStore store) {
|
398
666
|
return _store;
|
399
667
|
}
|
400
668
|
|
669
|
+
function getBundleSet() external view returns (BundleSet bundleSet) {
|
670
|
+
return _bundleSet;
|
671
|
+
}
|
672
|
+
|
673
|
+
function getRiskSet() external view returns (RiskSet riskSet) {
|
674
|
+
return _riskSet;
|
675
|
+
}
|
676
|
+
|
401
677
|
function toUFixed(uint256 value, int8 exp) public pure returns (UFixed) {
|
402
678
|
return UFixedLib.toUFixed(value, exp);
|
403
679
|
}
|