@etherisc/gif-next 0.0.2-7ca6cd9-950 → 0.0.2-7d488b3-675
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 +75 -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/authorization/AccessAdmin.sol/IAccessManagedChecker.json +24 -0
- 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/authorization/IAccess.sol/IAccess.json +10 -0
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
- package/artifacts/contracts/{shared/AccessManagerCustom.sol/AccessManagerCustom.json → authorization/IAccessAdmin.sol/IAccessAdmin.json} +533 -596
- 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 +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +144 -544
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +470 -259
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +158 -108
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +201 -261
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +299 -62
- 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 +2032 -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 +1523 -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 +2432 -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 +188 -107
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +226 -117
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +208 -236
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1462 -241
- 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 +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1100 -338
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +247 -275
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +105 -95
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +632 -536
- 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/Cloneable.sol/Cloneable.json +0 -53
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +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 +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +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 +1 -1
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +43 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +141 -126
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +81 -10
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +127 -398
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +177 -177
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +129 -83
- 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 +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +350 -194
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +148 -94
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +218 -28
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +132 -379
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +476 -311
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +124 -662
- 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 +660 -518
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +163 -93
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +188 -172
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +104 -90
- 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 +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +438 -220
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +148 -110
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +127 -8
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +320 -15
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +377 -103
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +148 -82
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +260 -237
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
- package/artifacts/contracts/product/{IProductService.sol/IProductService.json → IRiskService.sol/IRiskService.json} +79 -7
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +480 -293
- 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 +148 -94
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +239 -292
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +122 -116
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +258 -536
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +659 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +732 -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 +359 -55
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +84 -151
- 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 +589 -116
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1677 -156
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +132 -278
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +101 -75
- 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 +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +5 -5
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +76 -265
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +583 -502
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +138 -110
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +63 -104
- 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/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 +89 -88
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +554 -218
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +127 -123
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +45 -3
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +34 -3
- 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 +67 -1
- 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 +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +112 -351
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +55 -88
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +42 -62
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +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 +63 -104
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +585 -12
- 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 +134 -125
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +125 -22
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +97 -101
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +202 -398
- 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 +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +120 -109
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +7 -12
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +161 -184
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +96 -90
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +241 -147
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +59 -23
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +61 -8
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +2 -2
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +28 -4
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +4 -4
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +17 -12
- package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
- package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
- package/artifacts/contracts/type/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 +136 -2
- 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 +4 -4
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +4 -4
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +125 -7
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +283 -6
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +50 -2
- 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 +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.json +15 -2
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
- package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +23 -4
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +71 -2
- 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 +66 -2
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
- package/artifacts/contracts/{shared → upgradeability}/IVersionable.sol/IVersionable.json +1 -1
- 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/{shared → upgradeability}/Versionable.sol/Versionable.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 +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 +153 -125
- package/contracts/distribution/DistributionService.sol +202 -115
- package/contracts/distribution/DistributionServiceManager.sol +8 -11
- package/contracts/distribution/IDistributionComponent.sol +26 -40
- package/contracts/distribution/IDistributionService.sol +46 -22
- 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 +437 -0
- package/contracts/examples/fire/FireProductAuthorization.sol +45 -0
- package/contracts/examples/fire/FireUSD.sol +26 -0
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +85 -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 +34 -46
- package/contracts/instance/IInstanceService.sol +31 -40
- package/contracts/instance/Instance.sol +143 -132
- package/contracts/instance/InstanceAdmin.sol +346 -240
- package/contracts/instance/InstanceAuthorizationV3.sol +213 -0
- package/contracts/instance/InstanceReader.sol +308 -48
- package/contracts/instance/InstanceService.sol +210 -168
- package/contracts/instance/InstanceServiceManager.sol +8 -13
- package/contracts/instance/InstanceStore.sol +35 -18
- package/contracts/instance/RiskSet.sol +118 -0
- package/contracts/instance/base/BalanceStore.sol +11 -6
- package/contracts/instance/base/Cloneable.sol +2 -25
- package/contracts/instance/base/ObjectCounter.sol +1 -2
- 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 +1 -1
- package/contracts/instance/module/IComponents.sol +14 -15
- package/contracts/instance/module/IDistribution.sol +5 -3
- package/contracts/instance/module/IPolicy.sol +26 -25
- package/contracts/instance/module/IRisk.sol +3 -0
- package/contracts/mock/Dip.sol +1 -1
- package/contracts/oracle/BasicOracle.sol +47 -0
- package/contracts/oracle/BasicOracleAuthorization.sol +37 -0
- package/contracts/oracle/IOracle.sol +16 -0
- package/contracts/oracle/IOracleComponent.sol +2 -1
- package/contracts/oracle/IOracleService.sol +2 -1
- package/contracts/oracle/Oracle.sol +64 -53
- package/contracts/oracle/OracleService.sol +114 -81
- package/contracts/oracle/OracleServiceManager.sol +8 -11
- package/contracts/pool/BasicPool.sol +175 -0
- package/contracts/pool/BasicPoolAuthorization.sol +76 -0
- package/contracts/pool/BundleService.sol +207 -108
- package/contracts/pool/BundleServiceManager.sol +8 -11
- package/contracts/pool/IBundleService.sol +31 -22
- package/contracts/pool/IPoolComponent.sol +20 -70
- package/contracts/pool/IPoolService.sol +90 -75
- package/contracts/pool/Pool.sol +209 -163
- package/contracts/pool/PoolLib.sol +216 -0
- package/contracts/pool/PoolService.sol +553 -249
- package/contracts/pool/PoolServiceManager.sol +6 -9
- package/contracts/product/ApplicationService.sol +98 -83
- package/contracts/product/ApplicationServiceManager.sol +6 -6
- package/contracts/product/BasicProduct.sol +51 -0
- package/contracts/product/BasicProductAuthorization.sol +56 -0
- package/contracts/product/ClaimService.sol +370 -180
- package/contracts/product/ClaimServiceManager.sol +6 -6
- package/contracts/product/IApplicationService.sol +7 -2
- package/contracts/product/IClaimService.sol +44 -8
- package/contracts/product/IPolicyService.sol +53 -36
- package/contracts/product/IPricingService.sol +10 -10
- package/contracts/product/IProductComponent.sol +29 -9
- package/contracts/product/{IProductService.sol → IRiskService.sol} +6 -9
- package/contracts/product/PolicyService.sol +481 -274
- package/contracts/product/PolicyServiceLib.sol +65 -0
- package/contracts/product/PolicyServiceManager.sol +6 -9
- package/contracts/product/PricingService.sol +69 -66
- package/contracts/product/PricingServiceManager.sol +6 -9
- package/contracts/product/Product.sol +231 -139
- package/contracts/product/RiskService.sol +144 -0
- package/contracts/product/RiskServiceManager.sol +39 -0
- package/contracts/registry/ChainNft.sol +72 -40
- package/contracts/registry/IRegistry.sol +74 -32
- package/contracts/registry/IRegistryService.sol +3 -10
- package/contracts/registry/IRelease.sol +26 -0
- package/contracts/registry/ITransferInterceptor.sol +1 -2
- package/contracts/registry/Registry.sol +368 -214
- package/contracts/registry/RegistryAdmin.sol +292 -175
- package/contracts/registry/RegistryService.sol +46 -71
- package/contracts/registry/RegistryServiceManager.sol +5 -10
- 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 +8 -10
- package/contracts/shared/Component.sol +74 -128
- package/contracts/shared/ComponentService.sol +458 -384
- package/contracts/shared/ComponentServiceManager.sol +10 -7
- package/contracts/shared/ComponentVerifyingService.sol +29 -18
- package/contracts/shared/ContractLib.sol +253 -0
- package/contracts/shared/IComponent.sol +8 -17
- package/contracts/shared/IComponentService.sol +49 -39
- package/contracts/shared/IInstanceLinkedComponent.sol +10 -26
- package/contracts/shared/IKeyValueStore.sol +1 -0
- package/contracts/shared/ILifecycle.sol +3 -2
- 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 +10 -5
- package/contracts/shared/{ERC165.sol → InitializableERC165.sol} +3 -3
- package/contracts/shared/InstanceLinkedComponent.sol +96 -43
- package/contracts/shared/KeyValueStore.sol +7 -3
- package/contracts/shared/Lifecycle.sol +30 -72
- package/contracts/shared/{NftIdSetManager.sol → NftIdSet.sol} +1 -1
- package/contracts/shared/NftOwnable.sol +31 -11
- package/contracts/shared/PolicyHolder.sol +17 -57
- package/contracts/shared/Registerable.sol +55 -21
- package/contracts/shared/RegistryLinked.sol +9 -14
- package/contracts/shared/Service.sol +28 -40
- package/contracts/shared/TokenHandler.sol +309 -26
- package/contracts/shared/TokenHandlerDeployerLib.sol +20 -0
- package/contracts/staking/IStaking.sol +8 -11
- package/contracts/staking/IStakingService.sol +30 -14
- package/contracts/staking/StakeManagerLib.sol +70 -25
- package/contracts/staking/Staking.sol +122 -147
- package/contracts/staking/StakingLifecycle.sol +23 -0
- package/contracts/staking/StakingManager.sol +10 -12
- package/contracts/staking/StakingReader.sol +24 -21
- package/contracts/staking/StakingService.sol +105 -81
- package/contracts/staking/StakingServiceManager.sol +8 -8
- package/contracts/staking/StakingStore.sol +93 -60
- package/contracts/staking/TargetManagerLib.sol +7 -3
- package/contracts/type/Amount.sol +27 -5
- package/contracts/type/Blocknumber.sol +7 -1
- 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 +196 -61
- package/contracts/type/PayoutId.sol +10 -10
- package/contracts/type/Referral.sol +1 -0
- package/contracts/type/RiskId.sol +38 -6
- package/contracts/type/RoleId.sol +117 -81
- package/contracts/type/Seconds.sol +21 -1
- package/contracts/type/Selector.sol +107 -0
- package/contracts/type/StateId.sol +15 -1
- package/contracts/type/String.sol +53 -0
- package/contracts/type/Timestamp.sol +10 -5
- package/contracts/type/UFixed.sol +40 -121
- package/contracts/type/Version.sol +18 -6
- package/contracts/{shared → upgradeability}/ProxyManager.sol +71 -38
- package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
- package/contracts/{shared → upgradeability}/Versionable.sol +2 -2
- package/package.json +10 -6
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -778
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +0 -4
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +0 -228
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +0 -4
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +0 -256
- package/artifacts/contracts/instance/module/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 -679
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +0 -694
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -1292
- package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.dbg.json +0 -4
- package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.json +0 -137
- package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +0 -1715
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +0 -1728
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +0 -1806
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +0 -1824
- package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +0 -4
- package/artifacts/contracts/shared/ERC165.sol/ERC165.json +0 -73
- package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +0 -4
- package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +0 -1562
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +0 -4
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +0 -1600
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +0 -4
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +0 -39
- package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +0 -4
- package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.json +0 -306
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +0 -617
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +0 -129
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
- package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +0 -4
- package/artifacts/contracts/type/UFixed.sol/MathLib.json +0 -10
- package/contracts/instance/BundleManager.sol +0 -126
- package/contracts/instance/InstanceAuthorizationsLib.sol +0 -377
- package/contracts/instance/base/ObjectManager.sol +0 -82
- package/contracts/instance/module/IAccess.sol +0 -46
- package/contracts/product/ProductService.sol +0 -124
- package/contracts/product/ProductServiceManager.sol +0 -42
- package/contracts/registry/ReleaseManager.sol +0 -600
- package/contracts/registry/ServiceAuthorizationsLib.sol +0 -173
- package/contracts/shared/AccessManagerCustom.sol +0 -736
- package/contracts/shared/AccessManagerExtended.sol +0 -470
- package/contracts/shared/AccessManagerExtendedInitializeable.sol +0 -13
- package/contracts/shared/AccessManagerExtendedWithDisable.sol +0 -137
- package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +0 -14
- package/contracts/shared/IAccessManagerExtended.sol +0 -74
- package/contracts/shared/IAccessManagerExtendedWithDisable.sol +0 -18
- package/contracts/shared/InitializableCustom.sol +0 -177
- /package/contracts/{shared → upgradeability}/IVersionable.sol +0 -0
@@ -0,0 +1,213 @@
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
2
|
+
pragma solidity ^0.8.20;
|
3
|
+
|
4
|
+
import {
|
5
|
+
ACCOUNTING, ORACLE, POOL, INSTANCE, COMPONENT, DISTRIBUTION, APPLICATION, POLICY, CLAIM, BUNDLE, RISK
|
6
|
+
} from "../../contracts/type/ObjectType.sol";
|
7
|
+
|
8
|
+
import {BundleSet} from "../instance/BundleSet.sol";
|
9
|
+
import {RiskSet} from "../instance/RiskSet.sol";
|
10
|
+
import {IAccess} from "../authorization/IAccess.sol";
|
11
|
+
import {Instance} from "../instance/Instance.sol";
|
12
|
+
import {InstanceAdmin} from "../instance/InstanceAdmin.sol";
|
13
|
+
import {InstanceStore} from "../instance/InstanceStore.sol";
|
14
|
+
import {Authorization} from "../authorization/Authorization.sol";
|
15
|
+
|
16
|
+
|
17
|
+
contract InstanceAuthorizationV3
|
18
|
+
is Authorization
|
19
|
+
{
|
20
|
+
|
21
|
+
string public constant INSTANCE_ROLE_NAME = "InstanceRole";
|
22
|
+
|
23
|
+
string public constant INSTANCE_TARGET_NAME = "Instance";
|
24
|
+
string public constant INSTANCE_STORE_TARGET_NAME = "InstanceStore";
|
25
|
+
string public constant INSTANCE_ADMIN_TARGET_NAME = "InstanceAdmin";
|
26
|
+
string public constant BUNDLE_SET_TARGET_NAME = "BundleSet";
|
27
|
+
string public constant RISK_SET_TARGET_NAME = "RiskSet";
|
28
|
+
|
29
|
+
constructor()
|
30
|
+
Authorization(INSTANCE_TARGET_NAME, INSTANCE())
|
31
|
+
{ }
|
32
|
+
|
33
|
+
function _setupTargets()
|
34
|
+
internal
|
35
|
+
override
|
36
|
+
{
|
37
|
+
// instance supporting targets
|
38
|
+
_addTarget(INSTANCE_STORE_TARGET_NAME);
|
39
|
+
_addTarget(INSTANCE_ADMIN_TARGET_NAME);
|
40
|
+
_addTarget(BUNDLE_SET_TARGET_NAME);
|
41
|
+
_addTarget(RISK_SET_TARGET_NAME);
|
42
|
+
|
43
|
+
// service targets relevant to instance
|
44
|
+
_addServiceTargetWithRole(INSTANCE());
|
45
|
+
_addServiceTargetWithRole(ACCOUNTING());
|
46
|
+
_addServiceTargetWithRole(COMPONENT());
|
47
|
+
_addServiceTargetWithRole(DISTRIBUTION());
|
48
|
+
_addServiceTargetWithRole(ORACLE());
|
49
|
+
_addServiceTargetWithRole(POOL());
|
50
|
+
_addServiceTargetWithRole(BUNDLE());
|
51
|
+
_addServiceTargetWithRole(RISK());
|
52
|
+
_addServiceTargetWithRole(APPLICATION());
|
53
|
+
_addServiceTargetWithRole(POLICY());
|
54
|
+
_addServiceTargetWithRole(CLAIM());
|
55
|
+
}
|
56
|
+
|
57
|
+
|
58
|
+
function _setupTargetAuthorizations()
|
59
|
+
internal
|
60
|
+
override
|
61
|
+
{
|
62
|
+
_setupInstanceAuthorization();
|
63
|
+
_setupInstanceAdminAuthorization();
|
64
|
+
_setupInstanceStoreAuthorization();
|
65
|
+
_setupBundleSetAuthorization();
|
66
|
+
_setUpRiskSetAuthorization();
|
67
|
+
}
|
68
|
+
|
69
|
+
|
70
|
+
function _setupBundleSetAuthorization()
|
71
|
+
internal
|
72
|
+
{
|
73
|
+
IAccess.FunctionInfo[] storage functions;
|
74
|
+
|
75
|
+
// authorize bundle service role
|
76
|
+
functions = _authorizeForTarget(BUNDLE_SET_TARGET_NAME, getServiceRole(BUNDLE()));
|
77
|
+
_authorize(functions, BundleSet.add.selector, "add");
|
78
|
+
_authorize(functions, BundleSet.lock.selector, "lock");
|
79
|
+
_authorize(functions, BundleSet.unlock.selector, "unlock");
|
80
|
+
|
81
|
+
// authorize bundle service role
|
82
|
+
functions = _authorizeForTarget(BUNDLE_SET_TARGET_NAME, getServiceRole(POLICY()));
|
83
|
+
_authorize(functions, BundleSet.linkPolicy.selector, "linkPolicy");
|
84
|
+
_authorize(functions, BundleSet.unlinkPolicy.selector, "unlinkPolicy");
|
85
|
+
}
|
86
|
+
|
87
|
+
function _setUpRiskSetAuthorization()
|
88
|
+
internal
|
89
|
+
{
|
90
|
+
IAccess.FunctionInfo[] storage functions;
|
91
|
+
|
92
|
+
// authorize risk service role
|
93
|
+
functions = _authorizeForTarget(RISK_SET_TARGET_NAME, getServiceRole(RISK()));
|
94
|
+
_authorize(functions, RiskSet.add.selector, "add");
|
95
|
+
_authorize(functions, RiskSet.pause.selector, "pause");
|
96
|
+
_authorize(functions, RiskSet.activate.selector, "activate");
|
97
|
+
|
98
|
+
// authorize policy service role
|
99
|
+
functions = _authorizeForTarget(RISK_SET_TARGET_NAME, getServiceRole(POLICY()));
|
100
|
+
_authorize(functions, RiskSet.linkPolicy.selector, "linkPolicy");
|
101
|
+
_authorize(functions, RiskSet.unlinkPolicy.selector, "unlinkPolicy");
|
102
|
+
}
|
103
|
+
|
104
|
+
|
105
|
+
function _setupInstanceAuthorization()
|
106
|
+
internal
|
107
|
+
{
|
108
|
+
IAccess.FunctionInfo[] storage functions;
|
109
|
+
|
110
|
+
// authorize instance service role
|
111
|
+
functions = _authorizeForTarget(INSTANCE_TARGET_NAME, getServiceRole(INSTANCE()));
|
112
|
+
_authorize(functions, Instance.setInstanceReader.selector, "setInstanceReader");
|
113
|
+
}
|
114
|
+
|
115
|
+
|
116
|
+
function _setupInstanceAdminAuthorization()
|
117
|
+
internal
|
118
|
+
{
|
119
|
+
IAccess.FunctionInfo[] storage functions;
|
120
|
+
|
121
|
+
// authorize instance role
|
122
|
+
functions = _authorizeForTarget(INSTANCE_ADMIN_TARGET_NAME, getComponentRole(INSTANCE()));
|
123
|
+
_authorize(functions, InstanceAdmin.grantRole.selector, "grantRole");
|
124
|
+
|
125
|
+
// authorize component service role
|
126
|
+
functions = _authorizeForTarget(INSTANCE_ADMIN_TARGET_NAME, getServiceRole(COMPONENT()));
|
127
|
+
_authorize(functions, InstanceAdmin.initializeComponentAuthorization.selector, "initializeComponentAuthoriz");
|
128
|
+
_authorize(functions, InstanceAdmin.setTargetLocked.selector, "setTargetLocked");
|
129
|
+
}
|
130
|
+
|
131
|
+
|
132
|
+
function _setupInstanceStoreAuthorization()
|
133
|
+
internal
|
134
|
+
{
|
135
|
+
IAccess.FunctionInfo[] storage functions;
|
136
|
+
|
137
|
+
// authorize accounting service role
|
138
|
+
functions = _authorizeForTarget(INSTANCE_STORE_TARGET_NAME, getServiceRole(ACCOUNTING()));
|
139
|
+
_authorize(functions, InstanceStore.increaseBalance.selector, "increaseBalance");
|
140
|
+
_authorize(functions, InstanceStore.decreaseBalance.selector, "decreaseBalance");
|
141
|
+
_authorize(functions, InstanceStore.increaseFees.selector, "increaseFees");
|
142
|
+
_authorize(functions, InstanceStore.decreaseFees.selector, "decreaseFees");
|
143
|
+
|
144
|
+
// authorize component service role
|
145
|
+
functions = _authorizeForTarget(INSTANCE_STORE_TARGET_NAME, getServiceRole(COMPONENT()));
|
146
|
+
_authorize(functions, InstanceStore.createComponent.selector, "createComponent");
|
147
|
+
_authorize(functions, InstanceStore.updateComponent.selector, "updateComponent");
|
148
|
+
_authorize(functions, InstanceStore.createPool.selector, "createPool");
|
149
|
+
_authorize(functions, InstanceStore.createProduct.selector, "createProduct");
|
150
|
+
_authorize(functions, InstanceStore.updateProduct.selector, "updateProduct");
|
151
|
+
_authorize(functions, InstanceStore.createFee.selector, "createFee");
|
152
|
+
_authorize(functions, InstanceStore.updateFee.selector, "updateFee");
|
153
|
+
|
154
|
+
// authorize distribution service role
|
155
|
+
functions = _authorizeForTarget(INSTANCE_STORE_TARGET_NAME, getServiceRole(DISTRIBUTION()));
|
156
|
+
_authorize(functions, InstanceStore.createDistributorType.selector, "createDistributorType");
|
157
|
+
_authorize(functions, InstanceStore.updateDistributorType.selector, "updateDistributorType");
|
158
|
+
_authorize(functions, InstanceStore.updateDistributorTypeState.selector, "updateDistributorTypeState");
|
159
|
+
_authorize(functions, InstanceStore.createDistributor.selector, "createDistributor");
|
160
|
+
_authorize(functions, InstanceStore.updateDistributor.selector, "updateDistributor");
|
161
|
+
_authorize(functions, InstanceStore.updateDistributorState.selector, "updateDistributorState");
|
162
|
+
_authorize(functions, InstanceStore.createReferral.selector, "createReferral");
|
163
|
+
_authorize(functions, InstanceStore.updateReferral.selector, "updateReferral");
|
164
|
+
_authorize(functions, InstanceStore.updateReferralState.selector, "updateReferralState");
|
165
|
+
|
166
|
+
// authorize oracle service role
|
167
|
+
functions = _authorizeForTarget(INSTANCE_STORE_TARGET_NAME, getServiceRole(ORACLE()));
|
168
|
+
_authorize(functions, InstanceStore.createRequest.selector, "createRequest");
|
169
|
+
_authorize(functions, InstanceStore.updateRequest.selector, "updateRequest");
|
170
|
+
_authorize(functions, InstanceStore.updateRequestState.selector, "updateRequestState");
|
171
|
+
|
172
|
+
// authorize pool service role
|
173
|
+
functions = _authorizeForTarget(INSTANCE_STORE_TARGET_NAME, getServiceRole(POOL()));
|
174
|
+
_authorize(functions, InstanceStore.updatePool.selector, "updatePool");
|
175
|
+
|
176
|
+
// authorize bundle service role
|
177
|
+
functions = _authorizeForTarget(INSTANCE_STORE_TARGET_NAME, getServiceRole(BUNDLE()));
|
178
|
+
_authorize(functions, InstanceStore.createBundle.selector, "createBundle");
|
179
|
+
_authorize(functions, InstanceStore.updateBundle.selector, "updateBundle");
|
180
|
+
_authorize(functions, InstanceStore.updateBundleState.selector, "updateBundleState");
|
181
|
+
_authorize(functions, InstanceStore.increaseLocked.selector, "increaseLocked");
|
182
|
+
_authorize(functions, InstanceStore.decreaseLocked.selector, "decreaseLocked");
|
183
|
+
|
184
|
+
// authorize product service role
|
185
|
+
functions = _authorizeForTarget(INSTANCE_STORE_TARGET_NAME, getServiceRole(RISK()));
|
186
|
+
_authorize(functions, InstanceStore.createRisk.selector, "createRisk");
|
187
|
+
_authorize(functions, InstanceStore.updateRisk.selector, "updateRisk");
|
188
|
+
_authorize(functions, InstanceStore.updateRiskState.selector, "updateRiskState");
|
189
|
+
|
190
|
+
// authorize application service role
|
191
|
+
functions = _authorizeForTarget(INSTANCE_STORE_TARGET_NAME, getServiceRole(APPLICATION()));
|
192
|
+
_authorize(functions, InstanceStore.createApplication.selector, "createApplication");
|
193
|
+
_authorize(functions, InstanceStore.updateApplication.selector, "updateApplication");
|
194
|
+
_authorize(functions, InstanceStore.updateApplicationState.selector, "updateApplicationState");
|
195
|
+
|
196
|
+
// authorize policy service role
|
197
|
+
functions = _authorizeForTarget(INSTANCE_STORE_TARGET_NAME, getServiceRole(POLICY()));
|
198
|
+
_authorize(functions, InstanceStore.updatePolicy.selector, "updatePolicy");
|
199
|
+
_authorize(functions, InstanceStore.updatePolicyState.selector, "updatePolicyState");
|
200
|
+
_authorize(functions, InstanceStore.createPremium.selector, "createPremium");
|
201
|
+
_authorize(functions, InstanceStore.updatePremiumState.selector, "updatePremiumState");
|
202
|
+
|
203
|
+
// authorize claim service role
|
204
|
+
functions = _authorizeForTarget(INSTANCE_STORE_TARGET_NAME, getServiceRole(CLAIM()));
|
205
|
+
_authorize(functions, InstanceStore.updatePolicyClaims.selector, "updatePolicyClaims");
|
206
|
+
_authorize(functions, InstanceStore.createClaim.selector, "createClaim");
|
207
|
+
_authorize(functions, InstanceStore.updateClaim.selector, "updateClaim");
|
208
|
+
_authorize(functions, InstanceStore.createPayout.selector, "createPayout");
|
209
|
+
_authorize(functions, InstanceStore.updatePayout.selector, "updatePayout");
|
210
|
+
_authorize(functions, InstanceStore.updatePayoutState.selector, "updatePayoutState");
|
211
|
+
}
|
212
|
+
}
|
213
|
+
|
@@ -3,34 +3,36 @@ pragma solidity ^0.8.20;
|
|
3
3
|
|
4
4
|
import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
|
5
5
|
|
6
|
-
import {Amount} from "../type/Amount.sol";
|
7
|
-
import {ClaimId} from "../type/ClaimId.sol";
|
8
|
-
import {DistributorType} from "../type/DistributorType.sol";
|
9
|
-
import {Fee, FeeLib} from "../type/Fee.sol";
|
10
|
-
import {Key32} from "../type/Key32.sol";
|
11
|
-
import {NftId} from "../type/NftId.sol";
|
12
|
-
import {ObjectType, COMPONENT, DISTRIBUTOR, DISTRIBUTION, INSTANCE, PRODUCT, POLICY, POOL, BUNDLE} from "../type/ObjectType.sol";
|
13
|
-
import {PayoutId} from "../type/PayoutId.sol";
|
14
|
-
import {ReferralId, ReferralStatus, ReferralLib, REFERRAL_OK, REFERRAL_ERROR_UNKNOWN, REFERRAL_ERROR_EXPIRED, REFERRAL_ERROR_EXHAUSTED} from "../type/Referral.sol";
|
15
|
-
import {RequestId} from "../type/RequestId.sol";
|
16
|
-
import {RiskId} from "../type/RiskId.sol";
|
17
|
-
import {RoleId} from "../type/RoleId.sol";
|
18
|
-
import {StateId} from "../type/StateId.sol";
|
19
|
-
import {UFixed, MathLib, UFixedLib} from "../type/UFixed.sol";
|
20
|
-
import {Version} from "../type/Version.sol";
|
21
|
-
|
22
|
-
import {IRegistry} from "../registry/IRegistry.sol";
|
23
6
|
import {IBundle} from "../instance/module/IBundle.sol";
|
24
7
|
import {IComponents} from "../instance/module/IComponents.sol";
|
25
8
|
import {IDistribution} from "../instance/module/IDistribution.sol";
|
9
|
+
import {IDistributionService} from "../distribution/IDistributionService.sol";
|
26
10
|
import {IInstance} from "./IInstance.sol";
|
27
11
|
import {IKeyValueStore} from "../shared/IKeyValueStore.sol";
|
28
12
|
import {IOracle} from "../oracle/IOracle.sol";
|
29
13
|
import {IPolicy} from "../instance/module/IPolicy.sol";
|
14
|
+
import {IRegistry} from "../registry/IRegistry.sol";
|
30
15
|
import {IRisk} from "../instance/module/IRisk.sol";
|
31
16
|
import {TimestampLib} from "../type/Timestamp.sol";
|
32
17
|
|
18
|
+
import {Amount} from "../type/Amount.sol";
|
19
|
+
import {BundleSet} from "./BundleSet.sol";
|
20
|
+
import {BUNDLE, COMPONENT, DISTRIBUTOR, DISTRIBUTION, FEE, PREMIUM, POLICY, POOL, PRODUCT} from "../type/ObjectType.sol";
|
21
|
+
import {ClaimId, ClaimIdLib} from "../type/ClaimId.sol";
|
22
|
+
import {DistributorType} from "../type/DistributorType.sol";
|
33
23
|
import {InstanceStore} from "./InstanceStore.sol";
|
24
|
+
import {Key32} from "../type/Key32.sol";
|
25
|
+
import {NftId} from "../type/NftId.sol";
|
26
|
+
import {PayoutId, PayoutIdLib} from "../type/PayoutId.sol";
|
27
|
+
import {ReferralId, ReferralStatus, ReferralLib, REFERRAL_OK, REFERRAL_ERROR_UNKNOWN, REFERRAL_ERROR_EXPIRED, REFERRAL_ERROR_EXHAUSTED} from "../type/Referral.sol";
|
28
|
+
import {RequestId} from "../type/RequestId.sol";
|
29
|
+
import {RiskId} from "../type/RiskId.sol";
|
30
|
+
import {RiskSet} from "./RiskSet.sol";
|
31
|
+
import {RoleId} from "../type/RoleId.sol";
|
32
|
+
import {StateId} from "../type/StateId.sol";
|
33
|
+
import {TokenHandler} from "../shared/TokenHandler.sol";
|
34
|
+
import {UFixed, UFixedLib} from "../type/UFixed.sol";
|
35
|
+
|
34
36
|
|
35
37
|
|
36
38
|
contract InstanceReader {
|
@@ -38,26 +40,68 @@ contract InstanceReader {
|
|
38
40
|
error ErrorInstanceReaderAlreadyInitialized();
|
39
41
|
error ErrorInstanceReaderInstanceAddressZero();
|
40
42
|
|
41
|
-
bool private _initialized;
|
43
|
+
bool private _initialized = false;
|
42
44
|
|
45
|
+
IRegistry internal _registry;
|
43
46
|
IInstance internal _instance;
|
47
|
+
|
44
48
|
InstanceStore internal _store;
|
49
|
+
BundleSet internal _bundleSet;
|
50
|
+
RiskSet internal _riskSet;
|
51
|
+
IDistributionService internal _distributionService;
|
45
52
|
|
46
|
-
|
53
|
+
/// @dev This initializer needs to be called from the instance itself.
|
54
|
+
function initialize() public {
|
47
55
|
if(_initialized) {
|
48
56
|
revert ErrorInstanceReaderAlreadyInitialized();
|
49
57
|
}
|
50
58
|
|
51
|
-
|
52
|
-
|
59
|
+
initializeWithInstance(msg.sender);
|
60
|
+
}
|
61
|
+
|
62
|
+
function initializeWithInstance(address instanceAddress)
|
63
|
+
public
|
64
|
+
{
|
65
|
+
if(_initialized) {
|
66
|
+
revert ErrorInstanceReaderAlreadyInitialized();
|
53
67
|
}
|
54
68
|
|
55
|
-
|
69
|
+
_initialized = true;
|
70
|
+
_instance = IInstance(instanceAddress);
|
71
|
+
_registry = _instance.getRegistry();
|
72
|
+
|
56
73
|
_store = _instance.getInstanceStore();
|
74
|
+
_bundleSet = _instance.getBundleSet();
|
75
|
+
_riskSet = _instance.getRiskSet();
|
76
|
+
_distributionService = IDistributionService(_registry.getServiceAddress(DISTRIBUTION(), _instance.getRelease()));
|
77
|
+
}
|
57
78
|
|
58
|
-
|
79
|
+
|
80
|
+
// instance level functions
|
81
|
+
|
82
|
+
function getRegistry() public view returns (IRegistry registry) {
|
83
|
+
return _registry;
|
84
|
+
}
|
85
|
+
|
86
|
+
function getInstanceNftId() public view returns (NftId instanceNftid) {
|
87
|
+
return _registry.getNftIdForAddress(address(_instance));
|
59
88
|
}
|
60
89
|
|
90
|
+
function getInstance() public view returns (IInstance instance) {
|
91
|
+
return _instance;
|
92
|
+
}
|
93
|
+
|
94
|
+
function components() public view returns (uint256 componentCount) {
|
95
|
+
return _instance.getInstanceAdmin().components();
|
96
|
+
}
|
97
|
+
|
98
|
+
function products() public view returns (uint256 productCount) {
|
99
|
+
return _instance.products();
|
100
|
+
}
|
101
|
+
|
102
|
+
function getProductNftId(uint256 idx) public view returns (NftId productNftId) {
|
103
|
+
return _instance.getProductNftId(idx);
|
104
|
+
}
|
61
105
|
|
62
106
|
// module specific functions
|
63
107
|
|
@@ -80,14 +124,67 @@ contract InstanceReader {
|
|
80
124
|
return _store.getState(toPolicyKey(policyNftId));
|
81
125
|
}
|
82
126
|
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
127
|
+
function getPremiumInfo(NftId policyNftId)
|
128
|
+
public
|
129
|
+
view
|
130
|
+
returns (IPolicy.PremiumInfo memory info)
|
131
|
+
{
|
132
|
+
bytes memory data = _store.getData(toPremiumKey(policyNftId));
|
133
|
+
if (data.length > 0) {
|
134
|
+
return abi.decode(data, (IPolicy.PremiumInfo));
|
135
|
+
}
|
136
|
+
}
|
137
|
+
|
138
|
+
function getPremiumInfoState(NftId policyNftId)
|
139
|
+
public
|
140
|
+
view
|
141
|
+
returns (StateId state)
|
142
|
+
{
|
143
|
+
return _store.getState(toPremiumKey(policyNftId));
|
144
|
+
}
|
145
|
+
|
146
|
+
function bundles(NftId poolNftId)
|
147
|
+
public
|
148
|
+
view
|
149
|
+
returns (uint256 bundleCount)
|
150
|
+
{
|
151
|
+
return _bundleSet.bundles(poolNftId);
|
152
|
+
}
|
153
|
+
|
154
|
+
function activeBundles(NftId poolNftId)
|
155
|
+
public
|
156
|
+
view
|
157
|
+
returns (uint256 bundleCount)
|
158
|
+
{
|
159
|
+
return _bundleSet.activeBundles(poolNftId);
|
160
|
+
}
|
161
|
+
|
162
|
+
function getActiveBundleNftId(NftId poolNftId, uint256 idx)
|
163
|
+
public
|
164
|
+
view
|
165
|
+
returns (NftId bundleNftId)
|
166
|
+
{
|
167
|
+
return _bundleSet.getActiveBundleNftId(poolNftId, idx);
|
168
|
+
}
|
169
|
+
|
170
|
+
function getBundleNftId(NftId poolNftId, uint256 idx)
|
171
|
+
public
|
172
|
+
view
|
173
|
+
returns (NftId bundleNftId)
|
174
|
+
{
|
175
|
+
return _bundleSet.getBundleNftId(poolNftId, idx);
|
176
|
+
}
|
177
|
+
|
178
|
+
function getBundleState(NftId bundleNftId)
|
179
|
+
public
|
180
|
+
view
|
181
|
+
returns (StateId state)
|
182
|
+
{
|
183
|
+
return _store.getState(toBundleKey(bundleNftId));
|
184
|
+
}
|
185
|
+
|
186
|
+
/// @dev Returns true iff policy is active.
|
187
|
+
function policyIsActive(NftId policyNftId)
|
91
188
|
public
|
92
189
|
view
|
93
190
|
returns (bool isCloseable)
|
@@ -96,17 +193,27 @@ contract InstanceReader {
|
|
96
193
|
|
97
194
|
if (info.productNftId.eqz()) { return false; } // not closeable: policy does not exist (or does not belong to this instance)
|
98
195
|
if (info.activatedAt.eqz()) { return false; } // not closeable: not yet activated
|
99
|
-
if (info.
|
100
|
-
if (info.
|
196
|
+
if (info.activatedAt > TimestampLib.blockTimestamp()) { return false; } // not yet active
|
197
|
+
if (info.expiredAt <= TimestampLib.blockTimestamp()) { return false; } // already expired
|
198
|
+
|
199
|
+
return true;
|
200
|
+
}
|
101
201
|
|
102
|
-
|
103
|
-
|
202
|
+
function claims(NftId policyNftId)
|
203
|
+
public
|
204
|
+
view
|
205
|
+
returns (uint16 claimCount)
|
206
|
+
{
|
207
|
+
return getPolicyInfo(policyNftId).claimsCount;
|
208
|
+
}
|
104
209
|
|
105
|
-
// not closeable: not yet expired
|
106
|
-
if (TimestampLib.blockTimestamp() < info.expiredAt) { return false; }
|
107
210
|
|
108
|
-
|
109
|
-
|
211
|
+
function getClaimId(uint idx)
|
212
|
+
public
|
213
|
+
view
|
214
|
+
returns (ClaimId claimId)
|
215
|
+
{
|
216
|
+
return ClaimIdLib.toClaimId(idx + 1);
|
110
217
|
}
|
111
218
|
|
112
219
|
function getClaimInfo(NftId policyNftId, ClaimId claimId)
|
@@ -120,6 +227,7 @@ contract InstanceReader {
|
|
120
227
|
}
|
121
228
|
}
|
122
229
|
|
230
|
+
|
123
231
|
function getClaimState(NftId policyNftId, ClaimId claimId)
|
124
232
|
public
|
125
233
|
view
|
@@ -128,6 +236,34 @@ contract InstanceReader {
|
|
128
236
|
return _store.getState(claimId.toKey32(policyNftId));
|
129
237
|
}
|
130
238
|
|
239
|
+
|
240
|
+
function payouts(NftId policyNftId, ClaimId claimId)
|
241
|
+
public
|
242
|
+
view
|
243
|
+
returns (uint24 payoutCount)
|
244
|
+
{
|
245
|
+
return getClaimInfo(policyNftId, claimId).payoutsCount;
|
246
|
+
}
|
247
|
+
|
248
|
+
|
249
|
+
function getPayoutId(ClaimId claimId, uint24 idx)
|
250
|
+
public
|
251
|
+
view
|
252
|
+
returns (PayoutId payoutId)
|
253
|
+
{
|
254
|
+
return PayoutIdLib.toPayoutId(claimId, idx + 1);
|
255
|
+
}
|
256
|
+
|
257
|
+
|
258
|
+
function getRemainingClaimableAmount(NftId policyNftId)
|
259
|
+
public
|
260
|
+
view
|
261
|
+
returns (Amount remainingClaimableAmount)
|
262
|
+
{
|
263
|
+
IPolicy.PolicyInfo memory info = getPolicyInfo(policyNftId);
|
264
|
+
return info.sumInsuredAmount - info.claimAmount;
|
265
|
+
}
|
266
|
+
|
131
267
|
function getPayoutInfo(NftId policyNftId, PayoutId payoutId)
|
132
268
|
public
|
133
269
|
view
|
@@ -147,6 +283,38 @@ contract InstanceReader {
|
|
147
283
|
return _store.getState(payoutId.toKey32(policyNftId));
|
148
284
|
}
|
149
285
|
|
286
|
+
function risks(NftId productNftId)
|
287
|
+
public
|
288
|
+
view
|
289
|
+
returns (uint256 riskCount)
|
290
|
+
{
|
291
|
+
return _riskSet.risks(productNftId);
|
292
|
+
}
|
293
|
+
|
294
|
+
function getRiskId(NftId productNftId, uint256 idx)
|
295
|
+
public
|
296
|
+
view
|
297
|
+
returns (RiskId riskId)
|
298
|
+
{
|
299
|
+
return _riskSet.getRiskId(productNftId, idx);
|
300
|
+
}
|
301
|
+
|
302
|
+
function activeRisks(NftId productNftId)
|
303
|
+
public
|
304
|
+
view
|
305
|
+
returns (uint256 activeRiskCount)
|
306
|
+
{
|
307
|
+
return _riskSet.activeRisks(productNftId);
|
308
|
+
}
|
309
|
+
|
310
|
+
function getActiveRiskId(NftId productNftId, uint256 idx)
|
311
|
+
public
|
312
|
+
view
|
313
|
+
returns (RiskId riskId)
|
314
|
+
{
|
315
|
+
return _riskSet.getActiveRiskId(productNftId, idx);
|
316
|
+
}
|
317
|
+
|
150
318
|
function getRiskInfo(RiskId riskId)
|
151
319
|
public
|
152
320
|
view
|
@@ -158,19 +326,68 @@ contract InstanceReader {
|
|
158
326
|
}
|
159
327
|
}
|
160
328
|
|
329
|
+
function getRiskState(RiskId riskId)
|
330
|
+
public
|
331
|
+
view
|
332
|
+
returns (StateId stateId)
|
333
|
+
{
|
334
|
+
bytes memory data = _store.getData(riskId.toKey32());
|
335
|
+
return _store.getState(riskId.toKey32());
|
336
|
+
}
|
337
|
+
|
338
|
+
function policiesForRisk(RiskId riskId)
|
339
|
+
public
|
340
|
+
view
|
341
|
+
returns (uint256 linkedPolicies)
|
342
|
+
{
|
343
|
+
return _riskSet.linkedPolicies(riskId);
|
344
|
+
}
|
345
|
+
|
346
|
+
function getPolicyNftIdForRisk(RiskId riskId, uint256 idx)
|
347
|
+
public
|
348
|
+
view
|
349
|
+
returns (NftId linkedPolicyNftId)
|
350
|
+
{
|
351
|
+
return _riskSet.getLinkedPolicyNftId(riskId, idx);
|
352
|
+
}
|
353
|
+
|
354
|
+
|
355
|
+
function getToken(NftId componentNftId)
|
356
|
+
public
|
357
|
+
view
|
358
|
+
returns (IERC20Metadata token)
|
359
|
+
{
|
360
|
+
TokenHandler tokenHandler = getTokenHandler(componentNftId);
|
361
|
+
if (address(tokenHandler) != address(0)) {
|
362
|
+
return tokenHandler.TOKEN();
|
363
|
+
}
|
364
|
+
}
|
365
|
+
|
366
|
+
|
367
|
+
function getWallet(NftId componentNftId)
|
368
|
+
public
|
369
|
+
view
|
370
|
+
returns (address wallet)
|
371
|
+
{
|
372
|
+
TokenHandler tokenHandler = getTokenHandler(componentNftId);
|
373
|
+
if (address(tokenHandler) != address(0)) {
|
374
|
+
return tokenHandler.getWallet();
|
375
|
+
}
|
376
|
+
}
|
377
|
+
|
378
|
+
|
161
379
|
function getTokenHandler(NftId componentNftId)
|
162
380
|
public
|
163
381
|
view
|
164
|
-
returns (
|
382
|
+
returns (TokenHandler tokenHandler)
|
165
383
|
{
|
166
384
|
bytes memory data = _store.getData(toComponentKey(componentNftId));
|
167
|
-
|
168
385
|
if (data.length > 0) {
|
169
|
-
|
170
|
-
return address(info.tokenHandler);
|
386
|
+
return abi.decode(data, (IComponents.ComponentInfo)).tokenHandler;
|
171
387
|
}
|
172
388
|
}
|
173
389
|
|
390
|
+
|
174
391
|
function getBundleInfo(NftId bundleNftId)
|
175
392
|
public
|
176
393
|
view
|
@@ -238,6 +455,17 @@ contract InstanceReader {
|
|
238
455
|
}
|
239
456
|
}
|
240
457
|
|
458
|
+
function getFeeInfo(NftId productNftId)
|
459
|
+
public
|
460
|
+
view
|
461
|
+
returns (IComponents.FeeInfo memory feeInfo)
|
462
|
+
{
|
463
|
+
bytes memory data = _store.getData(toFeeKey(productNftId));
|
464
|
+
if (data.length > 0) {
|
465
|
+
return abi.decode(data, (IComponents.FeeInfo));
|
466
|
+
}
|
467
|
+
}
|
468
|
+
|
241
469
|
function getPoolInfo(NftId poolNftId)
|
242
470
|
public
|
243
471
|
view
|
@@ -260,6 +488,16 @@ contract InstanceReader {
|
|
260
488
|
}
|
261
489
|
}
|
262
490
|
|
491
|
+
function isReferralValid(NftId distributionNftId, ReferralId referralId)
|
492
|
+
public
|
493
|
+
view
|
494
|
+
returns (bool isValid)
|
495
|
+
{
|
496
|
+
return _distributionService.referralIsValid(
|
497
|
+
distributionNftId,
|
498
|
+
referralId);
|
499
|
+
}
|
500
|
+
|
263
501
|
function getRequestInfo(RequestId requestId)
|
264
502
|
public
|
265
503
|
view
|
@@ -337,15 +575,28 @@ contract InstanceReader {
|
|
337
575
|
);
|
338
576
|
}
|
339
577
|
|
578
|
+
|
340
579
|
function hasRole(address account, RoleId roleId) public view returns (bool isMember) {
|
341
|
-
|
342
|
-
|
580
|
+
return _instance.getInstanceAdmin().hasRole(account, roleId);
|
581
|
+
}
|
582
|
+
|
583
|
+
|
584
|
+
function hasAdminRole(address account, RoleId roleId) public view returns (bool isMember) {
|
585
|
+
return _instance.getInstanceAdmin().hasAdminRole(account, roleId);
|
586
|
+
}
|
587
|
+
|
588
|
+
|
589
|
+
function isLocked(address target) public view returns (bool) {
|
590
|
+
return _instance.getInstanceAdmin().isTargetLocked(target);
|
343
591
|
}
|
344
592
|
|
345
593
|
function toPolicyKey(NftId policyNftId) public pure returns (Key32) {
|
346
594
|
return policyNftId.toKey32(POLICY());
|
347
595
|
}
|
348
596
|
|
597
|
+
function toPremiumKey(NftId policyNftId) public pure returns (Key32) {
|
598
|
+
return policyNftId.toKey32(PREMIUM());
|
599
|
+
}
|
349
600
|
|
350
601
|
function toDistributorKey(NftId distributorNftId) public pure returns (Key32) {
|
351
602
|
return distributorNftId.toKey32(DISTRIBUTOR());
|
@@ -371,15 +622,24 @@ contract InstanceReader {
|
|
371
622
|
return productNftId.toKey32(PRODUCT());
|
372
623
|
}
|
373
624
|
|
374
|
-
|
375
|
-
|
376
|
-
return _instance;
|
625
|
+
function toFeeKey(NftId productNftId) public pure returns (Key32) {
|
626
|
+
return productNftId.toKey32(FEE());
|
377
627
|
}
|
378
628
|
|
629
|
+
// low level function
|
630
|
+
|
379
631
|
function getInstanceStore() external view returns (IKeyValueStore store) {
|
380
632
|
return _store;
|
381
633
|
}
|
382
634
|
|
635
|
+
function getBundleSet() external view returns (BundleSet bundleSet) {
|
636
|
+
return _bundleSet;
|
637
|
+
}
|
638
|
+
|
639
|
+
function getRiskSet() external view returns (RiskSet riskSet) {
|
640
|
+
return _riskSet;
|
641
|
+
}
|
642
|
+
|
383
643
|
function toUFixed(uint256 value, int8 exp) public pure returns (UFixed) {
|
384
644
|
return UFixedLib.toUFixed(value, exp);
|
385
645
|
}
|