@etherisc/gif-next 3.0.0-28c88f6-508 → 3.0.0-2b364cf-656
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/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +14 -14
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +44 -44
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +4 -4
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +99 -87
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +2 -2
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +23 -29
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +2 -2
- 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 +75 -63
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +2 -2
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +20 -114
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +2 -2
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +2 -96
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +128 -140
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +75 -75
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +2 -96
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +36 -48
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +16 -91
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +2 -2
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +12 -92
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +2 -2
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +2 -2
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +2 -2
- package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.json +2 -2
- package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.json +2 -2
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +57 -177
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +20 -20
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +16 -91
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +2 -2
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +45 -120
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +20 -20
- package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.json +22 -22
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +2 -2
- package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +26 -120
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +2 -2
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +89 -81
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +24 -99
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +2 -2
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +14 -89
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +2 -2
- package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +59 -72
- package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +34 -21
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +51 -13
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +51 -33
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +182 -170
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +21 -21
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +103 -36
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +94 -40
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +41 -41
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +121 -121
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +91 -91
- package/artifacts/contracts/instance/RequestSet.sol/RequestSet.dbg.json +4 -0
- package/artifacts/contracts/instance/RequestSet.sol/RequestSet.json +466 -0
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +66 -79
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +9 -9
- 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 +2 -2
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +3 -3
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +38 -2
- 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 +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +85 -77
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +2 -2
- 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 +67 -59
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +19 -13
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +71 -63
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +57 -51
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +50 -50
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +4 -79
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +2 -2
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +78 -85
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +62 -62
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +20 -27
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +4 -79
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +43 -43
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +4 -79
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +4 -9
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +101 -101
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +63 -63
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +37 -37
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +44 -44
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +2 -77
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +2 -2
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +86 -80
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +67 -67
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +11 -11
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +24 -18
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +10 -10
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +2 -2
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +2 -77
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +15 -28
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +70 -70
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +2 -2
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +60 -60
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +34 -34
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +51 -51
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +2 -77
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +37 -50
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +42 -42
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +4 -4
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +9 -9
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +2 -2
- package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +50 -46
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +159 -147
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +2 -27
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +8 -8
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +37 -37
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +189 -177
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +2 -2
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +119 -110
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +2 -2
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +20 -20
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +2 -77
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +314 -123
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +61 -61
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +2 -2
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.json +2 -77
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +2 -77
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +256 -65
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +2 -77
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +2 -2
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +2 -2
- 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 +2 -2
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +2 -2
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +2 -77
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -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 +4 -4
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +2 -2
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +2 -2
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +38 -65
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +21 -48
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +26 -26
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +69 -150
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +10 -228
- package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +117 -198
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +2 -7
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +53 -53
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +30 -248
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +40 -40
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +220 -220
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +9 -14
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -7
- 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 +2 -7
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +2 -2
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
- 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 +2 -7
- 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 +1 -1
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
- 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 +2 -2
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
- 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 +23 -4
- package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +2 -2
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +2 -2
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.json +2 -2
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +2 -7
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- 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 +22 -22
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +3 -3
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
- package/contracts/accounting/IAccountingService.sol +2 -2
- package/contracts/authorization/AccessAdmin.sol +10 -8
- package/contracts/authorization/AccessManagerCloneable.sol +1 -0
- package/contracts/authorization/IAccessAdmin.sol +9 -8
- package/contracts/distribution/DistributionService.sol +22 -19
- package/contracts/distribution/IDistributionComponent.sol +0 -2
- package/contracts/distribution/IDistributionService.sol +8 -8
- package/contracts/examples/flight/FlightOracle.sol +1 -98
- package/contracts/examples/flight/FlightOracleAuthorization.sol +2 -3
- package/contracts/examples/flight/FlightProduct.sol +2 -2
- package/contracts/examples/flight/FlightProductAuthorization.sol +1 -1
- package/contracts/instance/BundleSet.sol +7 -8
- package/contracts/instance/IInstance.sol +10 -7
- package/contracts/instance/IInstanceService.sol +11 -6
- package/contracts/instance/Instance.sol +8 -0
- package/contracts/instance/InstanceAdmin.sol +2 -1
- package/contracts/instance/InstanceAuthorizationV3.sol +15 -1
- package/contracts/instance/InstanceReader.sol +18 -1
- package/contracts/instance/InstanceService.sol +65 -37
- package/contracts/instance/InstanceStore.sol +14 -14
- package/contracts/instance/ProductStore.sol +14 -14
- package/contracts/instance/RequestSet.sol +63 -0
- package/contracts/instance/RiskSet.sol +6 -7
- package/contracts/instance/TargetNames.sol +1 -0
- package/contracts/instance/base/BalanceStore.sol +7 -7
- package/contracts/instance/base/ObjectSet.sol +9 -1
- package/contracts/instance/base/ObjectSetHelperLib.sol +5 -1
- package/contracts/oracle/IOracleComponent.sol +10 -0
- package/contracts/oracle/IOracleService.sol +5 -5
- package/contracts/oracle/Oracle.sol +49 -25
- package/contracts/oracle/OracleService.sol +26 -23
- package/contracts/pool/BundleService.sol +2 -2
- package/contracts/pool/IBundleService.sol +9 -10
- package/contracts/pool/IPoolComponent.sol +1 -1
- package/contracts/pool/IPoolService.sol +14 -14
- package/contracts/pool/PoolService.sol +1 -1
- package/contracts/product/ClaimService.sol +1 -1
- package/contracts/product/IApplicationService.sol +8 -8
- package/contracts/product/IClaimService.sol +9 -9
- package/contracts/product/IPolicyService.sol +7 -7
- package/contracts/product/IRiskService.sol +4 -5
- package/contracts/product/RiskService.sol +2 -2
- package/contracts/registry/ChainNft.sol +1 -1
- package/contracts/registry/IRegistry.sol +3 -3
- package/contracts/registry/Registry.sol +4 -2
- package/contracts/registry/RegistryAuthorization.sol +0 -2
- package/contracts/registry/ReleaseAdmin.sol +4 -4
- package/contracts/registry/ReleaseRegistry.sol +7 -8
- package/contracts/registry/TokenRegistry.sol +3 -3
- package/contracts/shared/ComponentService.sol +33 -4
- package/contracts/shared/IComponent.sol +0 -4
- package/contracts/shared/IComponentService.sol +31 -10
- package/contracts/shared/INftOwnable.sol +1 -1
- package/contracts/shared/InstanceLinkedComponent.sol +1 -1
- package/contracts/shared/TokenHandler.sol +5 -5
- package/contracts/staking/IStaking.sol +32 -32
- package/contracts/staking/IStakingService.sol +7 -16
- package/contracts/staking/Staking.sol +4 -4
- package/contracts/staking/StakingService.sol +2 -2
- package/contracts/staking/StakingStore.sol +3 -3
- package/contracts/staking/TargetHandler.sol +2 -2
- package/contracts/type/RequestId.sol +6 -0
- package/contracts/upgradeability/ProxyManager.sol +2 -2
- package/package.json +3 -3
@@ -12,6 +12,7 @@ import {Blocknumber} from "../type/Blocknumber.sol";
|
|
12
12
|
import {NftId} from "../type/NftId.sol";
|
13
13
|
import {ObjectType} from "../type/ObjectType.sol";
|
14
14
|
import {RoleId} from "../type/RoleId.sol";
|
15
|
+
import {Selector} from "../type/Selector.sol";
|
15
16
|
import {Str} from "../type/String.sol";
|
16
17
|
import {VersionPart} from "../type/Version.sol";
|
17
18
|
|
@@ -24,14 +25,14 @@ interface IAccessAdmin is
|
|
24
25
|
{
|
25
26
|
|
26
27
|
// roles, targets and functions
|
27
|
-
event LogAccessAdminRoleCreated(
|
28
|
-
event LogAccessAdminTargetCreated(
|
29
|
-
|
30
|
-
event LogAccessAdminRoleActivatedSet(
|
31
|
-
event LogAccessAdminRoleGranted(
|
32
|
-
event LogAccessAdminRoleRevoked(
|
33
|
-
event LogAccessAdminTargetLockedSet(
|
34
|
-
event LogAccessAdminFunctionGranted(
|
28
|
+
event LogAccessAdminRoleCreated(RoleId indexed roleId, RoleId indexed roleAdminId, TargetType indexed targetType, string name, string admin);
|
29
|
+
event LogAccessAdminTargetCreated(address indexed target, RoleId indexed roleId, bool indexed managed, string name, string admin);
|
30
|
+
|
31
|
+
event LogAccessAdminRoleActivatedSet(RoleId indexed roleId, bool indexed active, string admin, Blocknumber indexed lastUpdateIn);
|
32
|
+
event LogAccessAdminRoleGranted(address indexed account, string roleName, string admin);
|
33
|
+
event LogAccessAdminRoleRevoked(address indexed account, string roleName, string admin);
|
34
|
+
event LogAccessAdminTargetLockedSet(address indexed target, bool indexed locked, string admin, Blocknumber indexed lastUpdateIn);
|
35
|
+
event LogAccessAdminFunctionGranted(address indexed target, Selector indexed selector, RoleId indexed roleId, string func, string admin, Blocknumber lastUpdateIn);
|
35
36
|
|
36
37
|
// only deployer modifier
|
37
38
|
error ErrorAccessAdminNotDeployer();
|
@@ -98,21 +98,24 @@ contract DistributionService is
|
|
98
98
|
}
|
99
99
|
|
100
100
|
distributorType = DistributorTypeLib.toDistributorType(distributionNftId, name);
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
101
|
+
|
102
|
+
{
|
103
|
+
IDistribution.DistributorTypeInfo memory info = IDistribution.DistributorTypeInfo({
|
104
|
+
name: name,
|
105
|
+
distributionNftId: distributionNftId,
|
106
|
+
minDiscountPercentage: minDiscountPercentage,
|
107
|
+
maxDiscountPercentage: maxDiscountPercentage,
|
108
|
+
commissionPercentage: commissionPercentage,
|
109
|
+
maxReferralCount: maxReferralCount,
|
110
|
+
maxReferralLifetime: maxReferralLifetime,
|
111
|
+
allowSelfReferrals: allowSelfReferrals,
|
112
|
+
allowRenewals: allowRenewals,
|
113
|
+
data: data});
|
114
|
+
|
115
|
+
instance.getInstanceStore().createDistributorType(distributorType, info);
|
116
|
+
}
|
114
117
|
|
115
|
-
emit LogDistributionServiceDistributorTypeCreated(distributionNftId, name, commissionPercentage);
|
118
|
+
emit LogDistributionServiceDistributorTypeCreated(distributionNftId, distributorType, name, commissionPercentage);
|
116
119
|
}
|
117
120
|
|
118
121
|
|
@@ -148,7 +151,7 @@ contract DistributionService is
|
|
148
151
|
|
149
152
|
instance.getInstanceStore().createDistributor(distributorNftId, info);
|
150
153
|
|
151
|
-
emit LogDistributionServiceDistributorCreated(distributionNftId, distributorNftId,
|
154
|
+
emit LogDistributionServiceDistributorCreated(distributionNftId, distributorNftId, distributor, distributorType);
|
152
155
|
}
|
153
156
|
|
154
157
|
function changeDistributorType(
|
@@ -236,7 +239,7 @@ contract DistributionService is
|
|
236
239
|
|
237
240
|
instance.getInstanceStore().createReferral(referralId, info);
|
238
241
|
|
239
|
-
emit LogDistributionServiceReferralCreated(
|
242
|
+
emit LogDistributionServiceReferralCreated(distributorNftId, referralId, code, discountPercentage, maxReferrals, expiryAt);
|
240
243
|
}
|
241
244
|
}
|
242
245
|
|
@@ -258,7 +261,7 @@ contract DistributionService is
|
|
258
261
|
referralInfo.usedReferrals += 1;
|
259
262
|
instance.getInstanceStore().updateReferral(referralId, referralInfo, KEEP_STATE());
|
260
263
|
|
261
|
-
emit LogDistributionServiceReferralProcessed(
|
264
|
+
emit LogDistributionServiceReferralProcessed(referralInfo.distributorNftId, referralId, referralInfo.usedReferrals);
|
262
265
|
}
|
263
266
|
}
|
264
267
|
|
@@ -299,7 +302,7 @@ contract DistributionService is
|
|
299
302
|
} else {
|
300
303
|
// increase distribution balance by distribution owner fee
|
301
304
|
_accountingService.increaseDistributionBalance(store, distributionNftId, AmountLib.zero(), distributionOwnerFee);
|
302
|
-
emit LogDistributionServiceSaleProcessed(distributionNftId,
|
305
|
+
emit LogDistributionServiceSaleProcessed(distributionNftId, premium.premiumAmount, distributionOwnerFee);
|
303
306
|
}
|
304
307
|
|
305
308
|
|
@@ -343,7 +346,7 @@ contract DistributionService is
|
|
343
346
|
// transfer amount to distributor
|
344
347
|
{
|
345
348
|
address distributor = getRegistry().ownerOf(distributorNftId);
|
346
|
-
emit LogDistributionServiceCommissionWithdrawn(distributorNftId, distributor, address(distributionInfo.tokenHandler.TOKEN())
|
349
|
+
emit LogDistributionServiceCommissionWithdrawn(distributorNftId, distributor, withdrawnAmount, address(distributionInfo.tokenHandler.TOKEN()));
|
347
350
|
distributionInfo.tokenHandler.pushToken(distributor, withdrawnAmount);
|
348
351
|
}
|
349
352
|
}
|
@@ -11,8 +11,6 @@ import {UFixed} from "../type/UFixed.sol";
|
|
11
11
|
|
12
12
|
interface IDistributionComponent is IInstanceLinkedComponent {
|
13
13
|
|
14
|
-
event LogDistributorUpdated(address to, address operator);
|
15
|
-
|
16
14
|
function getDiscountPercentage(
|
17
15
|
string memory referralCode
|
18
16
|
) external view returns (UFixed discountPercentage, ReferralStatus status);
|
@@ -39,14 +39,14 @@ interface IDistributionService is IService {
|
|
39
39
|
error ErrorDistributionServiceInvalidFeeTransferred(Amount transferredDistributionFeeAmount, Amount expectedDistributionFeeAmount);
|
40
40
|
error ErrorDistributionServiceReferralDistributionMismatch(ReferralId referralId, NftId referralDistributionNft, NftId distributionNftId);
|
41
41
|
|
42
|
-
event LogDistributionServiceCommissionWithdrawn(NftId distributorNftId, address recipient,
|
43
|
-
event LogDistributionServiceDistributorTypeCreated(NftId distributionNftId, string name, UFixed commissionPercentage);
|
44
|
-
event LogDistributionServiceDistributorCreated(NftId distributionNftId, NftId distributorNftId,
|
45
|
-
event LogDistributionServiceDistributorTypeChanged(NftId distributorNftId, DistributorType oldDistributorType, DistributorType newDistributorType);
|
46
|
-
event LogDistributionServiceReferralCreated(NftId
|
47
|
-
event LogDistributionServiceReferralProcessed(NftId
|
48
|
-
event LogDistributionServiceSaleProcessed(NftId distributionNftId,
|
49
|
-
event LogDistributionServiceSaleProcessedWithReferral(NftId distributionNftId, NftId distributorNftId, ReferralId referralId, uint32 numPoliciesSold, Amount premium, Amount distributionOwnerFee, Amount commissionAmount);
|
42
|
+
event LogDistributionServiceCommissionWithdrawn(NftId indexed distributorNftId, address indexed recipient, Amount amount, address indexed tokenAddress);
|
43
|
+
event LogDistributionServiceDistributorTypeCreated(NftId indexed distributionNftId, DistributorType indexed distributorType, string name, UFixed commissionPercentage);
|
44
|
+
event LogDistributionServiceDistributorCreated(NftId indexed distributionNftId, NftId indexed distributorNftId, address indexed distributor, DistributorType distributorType);
|
45
|
+
event LogDistributionServiceDistributorTypeChanged(NftId indexed distributorNftId, DistributorType indexed oldDistributorType, DistributorType indexed newDistributorType);
|
46
|
+
event LogDistributionServiceReferralCreated(NftId indexed distributorNftId, ReferralId indexed referralId, string code, UFixed discountPercentage, uint32 maxReferrals, Timestamp expiryAt);
|
47
|
+
event LogDistributionServiceReferralProcessed(NftId indexed distributorNftId, ReferralId indexed referralId, uint32 usedReferrals);
|
48
|
+
event LogDistributionServiceSaleProcessed(NftId indexed distributionNftId, Amount premium, Amount distributionOwnerFee);
|
49
|
+
event LogDistributionServiceSaleProcessedWithReferral(NftId indexed distributionNftId, NftId indexed distributorNftId, ReferralId indexed referralId, uint32 numPoliciesSold, Amount premium, Amount distributionOwnerFee, Amount commissionAmount);
|
50
50
|
|
51
51
|
function createDistributorType(
|
52
52
|
string memory name,
|
@@ -3,11 +3,10 @@ pragma solidity ^0.8.20;
|
|
3
3
|
|
4
4
|
import {IAuthorization} from "../../authorization/IAuthorization.sol";
|
5
5
|
|
6
|
-
import {ACTIVE,
|
6
|
+
import {ACTIVE, FAILED} from "../../type/StateId.sol";
|
7
7
|
import {NftId} from "../../type/NftId.sol";
|
8
8
|
import {BasicOracle} from "../../oracle/BasicOracle.sol";
|
9
9
|
import {RequestId} from "../../type/RequestId.sol";
|
10
|
-
import {LibRequestIdSet} from "../../type/RequestIdSet.sol";
|
11
10
|
import {RiskId} from "../../type/RiskId.sol";
|
12
11
|
import {StateId} from "../../type/StateId.sol";
|
13
12
|
import {Str} from "../../type/String.sol";
|
@@ -33,9 +32,6 @@ contract FlightOracle is
|
|
33
32
|
event LogFlightOracleResponseSent(RequestId requestId, bytes1 status, int256 delay);
|
34
33
|
event LogFlightOracleRequestCancelled(RequestId requestId);
|
35
34
|
|
36
|
-
// TODO decide if this variable should be moved to instance store
|
37
|
-
// if so it need to manage active requests by requestor nft id
|
38
|
-
LibRequestIdSet.Set internal _activeRequests;
|
39
35
|
|
40
36
|
|
41
37
|
constructor(
|
@@ -99,52 +95,10 @@ contract FlightOracle is
|
|
99
95
|
|
100
96
|
// effects + interaction (via framework to receiving component)
|
101
97
|
_respond(requestId, responseData);
|
102
|
-
|
103
|
-
// TODO decide if the code below should be moved to GIF
|
104
|
-
_updateRequestState(requestId);
|
105
|
-
}
|
106
|
-
|
107
|
-
|
108
|
-
function updateRequestState(
|
109
|
-
RequestId requestId
|
110
|
-
)
|
111
|
-
external
|
112
|
-
restricted()
|
113
|
-
{
|
114
|
-
_updateRequestState(requestId);
|
115
98
|
}
|
116
99
|
|
117
100
|
//--- view functions ----------------------------------------------------//
|
118
101
|
|
119
|
-
// TODO decide if the code below should be moved to GIF
|
120
|
-
function activeRequests()
|
121
|
-
external
|
122
|
-
view
|
123
|
-
returns(uint256 numberOfRequests)
|
124
|
-
{
|
125
|
-
return LibRequestIdSet.size(_activeRequests);
|
126
|
-
}
|
127
|
-
|
128
|
-
|
129
|
-
// TODO decide if the code below should be moved to GIF
|
130
|
-
function getActiveRequest(uint256 idx)
|
131
|
-
external
|
132
|
-
view
|
133
|
-
returns(RequestId requestId)
|
134
|
-
{
|
135
|
-
return LibRequestIdSet.getElementAt(_activeRequests, idx);
|
136
|
-
}
|
137
|
-
|
138
|
-
|
139
|
-
function isActiveRequest(RequestId requestId)
|
140
|
-
external
|
141
|
-
view
|
142
|
-
returns(bool isActive)
|
143
|
-
{
|
144
|
-
return LibRequestIdSet.contains(_activeRequests, requestId);
|
145
|
-
}
|
146
|
-
|
147
|
-
|
148
102
|
function getRequestState(RequestId requestId)
|
149
103
|
external
|
150
104
|
view
|
@@ -172,55 +126,4 @@ contract FlightOracle is
|
|
172
126
|
return abi.decode(data, (FlightStatusRequest));
|
173
127
|
}
|
174
128
|
|
175
|
-
//--- internal functions ------------------------------------------------//
|
176
|
-
|
177
|
-
|
178
|
-
// TODO decide if the code below should be moved to GIF
|
179
|
-
// check callback result
|
180
|
-
function _updateRequestState(
|
181
|
-
RequestId requestId
|
182
|
-
)
|
183
|
-
internal
|
184
|
-
{
|
185
|
-
bool requestFulfilled = _getInstanceReader().getRequestState(
|
186
|
-
requestId) == FULFILLED();
|
187
|
-
|
188
|
-
// remove from active requests when successful
|
189
|
-
if (requestFulfilled && LibRequestIdSet.contains(_activeRequests, requestId)) {
|
190
|
-
LibRequestIdSet.remove(_activeRequests, requestId);
|
191
|
-
}
|
192
|
-
}
|
193
|
-
|
194
|
-
|
195
|
-
/// @dev use case specific handling of oracle requests
|
196
|
-
/// for now only log is emitted to verify that request has been received by oracle component
|
197
|
-
function _request(
|
198
|
-
RequestId requestId,
|
199
|
-
NftId requesterId,
|
200
|
-
bytes calldata requestData,
|
201
|
-
Timestamp expiryAt
|
202
|
-
)
|
203
|
-
internal
|
204
|
-
virtual override
|
205
|
-
{
|
206
|
-
FlightStatusRequest memory request = abi.decode(requestData, (FlightStatusRequest));
|
207
|
-
|
208
|
-
// TODO decide if the line below should be moved to GIF
|
209
|
-
LibRequestIdSet.add(_activeRequests, requestId);
|
210
|
-
emit LogFlightOracleRequestReceived(requestId, requesterId);
|
211
|
-
}
|
212
|
-
|
213
|
-
|
214
|
-
/// @dev use case specific handling of oracle requests
|
215
|
-
/// for now only log is emitted to verify that cancelling has been received by oracle component
|
216
|
-
function _cancel(
|
217
|
-
RequestId requestId
|
218
|
-
)
|
219
|
-
internal
|
220
|
-
virtual override
|
221
|
-
{
|
222
|
-
// TODO decide if the line below should be moved to GIF
|
223
|
-
LibRequestIdSet.remove(_activeRequests, requestId);
|
224
|
-
emit LogFlightOracleRequestCancelled(requestId);
|
225
|
-
}
|
226
129
|
}
|
@@ -49,9 +49,8 @@ contract FlightOracleAuthorization
|
|
49
49
|
functions = _authorizeForTarget(getMainTargetName(), STATUS_PROVIDER_ROLE);
|
50
50
|
_authorize(functions, FlightOracle.respondWithFlightStatus.selector, "respondWithFlightStatus");
|
51
51
|
|
52
|
-
// authorize public role (additional authz via onlyOwner)
|
53
|
-
functions = _authorizeForTarget(getMainTargetName(), PUBLIC_ROLE());
|
54
|
-
_authorize(functions, FlightOracle.updateRequestState.selector, "updateRequestState");
|
52
|
+
// // authorize public role (additional authz via onlyOwner)
|
53
|
+
// functions = _authorizeForTarget(getMainTargetName(), PUBLIC_ROLE());
|
55
54
|
}
|
56
55
|
}
|
57
56
|
|
@@ -216,12 +216,12 @@ contract FlightProduct is
|
|
216
216
|
}
|
217
217
|
|
218
218
|
|
219
|
-
function
|
219
|
+
function resendResponse(RequestId requestId)
|
220
220
|
external
|
221
221
|
virtual
|
222
222
|
restricted()
|
223
223
|
{
|
224
|
-
|
224
|
+
_resendResponse(requestId);
|
225
225
|
}
|
226
226
|
|
227
227
|
|
@@ -57,7 +57,7 @@ contract FlightProductAuthorization
|
|
57
57
|
|
58
58
|
// authorize public role (additional authz via onlyOwner)
|
59
59
|
functions = _authorizeForTarget(getMainTargetName(), PUBLIC_ROLE());
|
60
|
-
_authorize(functions, FlightProduct.
|
60
|
+
_authorize(functions, FlightProduct.resendResponse.selector, "resendResponse");
|
61
61
|
_authorize(functions, FlightProduct.processPayoutsAndClosePolicies.selector, "processPayoutsAndClosePolicies");
|
62
62
|
_authorize(functions, FlightProduct.setConstants.selector, "setConstants");
|
63
63
|
_authorize(functions, FlightProduct.setTestMode.selector, "setTestMode");
|
@@ -14,13 +14,12 @@ contract BundleSet is
|
|
14
14
|
{
|
15
15
|
using LibNftIdSet for LibNftIdSet.Set;
|
16
16
|
|
17
|
-
event LogBundleSetPolicyLinked(NftId bundleNftId, NftId policyNftId);
|
18
|
-
event LogBundleSetPolicyUnlinked(NftId bundleNftId, NftId policyNftId);
|
17
|
+
event LogBundleSetPolicyLinked(NftId indexed bundleNftId, NftId indexed policyNftId);
|
18
|
+
event LogBundleSetPolicyUnlinked(NftId indexed bundleNftId, NftId indexed policyNftId);
|
19
19
|
|
20
|
-
event LogBundleSetBundleAdded(NftId poolNftId, NftId bundleNftId);
|
21
|
-
event
|
22
|
-
event
|
23
|
-
event LogBundleSetBundleClosed(NftId poolNftId, NftId bundleNftId);
|
20
|
+
event LogBundleSetBundleAdded(NftId indexed poolNftId, NftId indexed bundleNftId);
|
21
|
+
event LogBundleSetBundleLocked(NftId indexed poolNftId, NftId indexed bundleNftId, bool locked);
|
22
|
+
event LogBundleSetBundleClosed(NftId indexed poolNftId, NftId indexed bundleNftId);
|
24
23
|
|
25
24
|
error ErrorBundleSetPolicyAlreadyActivated(NftId policyNftId);
|
26
25
|
error ErrorBundleSetBundleLocked(NftId bundleNftId, NftId policyNftId);
|
@@ -76,14 +75,14 @@ contract BundleSet is
|
|
76
75
|
function unlock(NftId bundleNftId) external restricted() {
|
77
76
|
NftId poolNftId = ObjectSetHelperLib.getPoolNftId(_instanceAddress, bundleNftId);
|
78
77
|
_activate(poolNftId, _toBundleKey32(bundleNftId));
|
79
|
-
emit
|
78
|
+
emit LogBundleSetBundleLocked(poolNftId, bundleNftId, false);
|
80
79
|
}
|
81
80
|
|
82
81
|
/// @dev locked (deactivated) bundles may not collateralize any new policies
|
83
82
|
function lock(NftId bundleNftId) external restricted() {
|
84
83
|
NftId poolNftId = ObjectSetHelperLib.getPoolNftId(_instanceAddress, bundleNftId);
|
85
84
|
_deactivate(poolNftId, _toBundleKey32(bundleNftId));
|
86
|
-
emit LogBundleSetBundleLocked(poolNftId, bundleNftId);
|
85
|
+
emit LogBundleSetBundleLocked(poolNftId, bundleNftId, true);
|
87
86
|
}
|
88
87
|
|
89
88
|
|
@@ -12,6 +12,7 @@ import {InstanceReader} from "./InstanceReader.sol";
|
|
12
12
|
import {InstanceStore} from "./InstanceStore.sol";
|
13
13
|
import {NftId} from "../type/NftId.sol";
|
14
14
|
import {ProductStore} from "./ProductStore.sol";
|
15
|
+
import {RequestSet} from "./RequestSet.sol";
|
15
16
|
import {RoleId} from "../type/RoleId.sol";
|
16
17
|
import {Seconds} from "../type/Seconds.sol";
|
17
18
|
import {UFixed} from "../type/UFixed.sol";
|
@@ -21,15 +22,15 @@ interface IInstance is
|
|
21
22
|
IRegisterable
|
22
23
|
{
|
23
24
|
// role handling
|
24
|
-
event LogInstanceCustomRoleCreated(RoleId roleId, string roleName, RoleId adminRoleId, uint32 maxMemberCount);
|
25
|
-
event LogInstanceCustomRoleActiveSet(RoleId roleId, bool active, address caller);
|
26
|
-
event LogInstanceCustomRoleGranted(RoleId roleId, address account, address caller);
|
27
|
-
event LogInstanceCustomRoleRevoked(RoleId roleId, address account, address caller);
|
25
|
+
event LogInstanceCustomRoleCreated(RoleId indexed roleId, string indexed roleName, RoleId indexed adminRoleId, uint32 maxMemberCount);
|
26
|
+
event LogInstanceCustomRoleActiveSet(RoleId indexed roleId, bool indexed active, address indexed caller);
|
27
|
+
event LogInstanceCustomRoleGranted(RoleId indexed roleId, address indexed account, address indexed caller);
|
28
|
+
event LogInstanceCustomRoleRevoked(RoleId indexed roleId, address indexed account, address indexed caller);
|
28
29
|
|
29
30
|
// target handling
|
30
|
-
event LogInstanceCustomTargetCreated(address target, RoleId targetRoleId, string name);
|
31
|
-
event LogInstanceTargetLocked(address target, bool locked);
|
32
|
-
event LogInstanceCustomTargetFunctionRoleSet(address target, bytes4[] selectors, RoleId roleId);
|
31
|
+
event LogInstanceCustomTargetCreated(address indexed target, RoleId indexed targetRoleId, string indexed name);
|
32
|
+
event LogInstanceTargetLocked(address indexed target, bool indexed locked);
|
33
|
+
event LogInstanceCustomTargetFunctionRoleSet(address indexed target, bytes4[] selectors, RoleId indexed roleId);
|
33
34
|
|
34
35
|
// modifier is onlyRoleAdmin
|
35
36
|
error ErrorInstanceNotCustomRole(RoleId roleId);
|
@@ -58,6 +59,7 @@ interface IInstance is
|
|
58
59
|
ProductStore productStore;
|
59
60
|
BundleSet bundleSet;
|
60
61
|
RiskSet riskSet;
|
62
|
+
RequestSet requestSet;
|
61
63
|
InstanceReader instanceReader;
|
62
64
|
}
|
63
65
|
|
@@ -149,6 +151,7 @@ interface IInstance is
|
|
149
151
|
function getInstanceReader() external view returns (InstanceReader);
|
150
152
|
function getBundleSet() external view returns (BundleSet);
|
151
153
|
function getRiskSet() external view returns (RiskSet);
|
154
|
+
function getRequestSet() external view returns (RequestSet);
|
152
155
|
function getInstanceAdmin() external view returns (InstanceAdmin);
|
153
156
|
function getInstanceStore() external view returns (InstanceStore);
|
154
157
|
function getProductStore() external view returns (ProductStore);
|
@@ -26,6 +26,7 @@ interface IInstanceService is IService {
|
|
26
26
|
error ErrorInstanceServiceMasterInstanceAdminAlreadySet();
|
27
27
|
error ErrorInstanceServiceMasterBundleSetAlreadySet();
|
28
28
|
error ErrorInstanceServiceMasterRiskSetAlreadySet();
|
29
|
+
error ErrorInstanceServiceMasterRequestSetAlreadySet();
|
29
30
|
error ErrorInstanceServiceInstanceAddressZero();
|
30
31
|
|
31
32
|
error ErrorInstanceServiceMasterInstanceReaderNotSet();
|
@@ -38,15 +39,18 @@ interface IInstanceService is IService {
|
|
38
39
|
error ErrorInstanceServiceInstanceReaderZero();
|
39
40
|
error ErrorInstanceServiceBundleSetZero();
|
40
41
|
error ErrorInstanceServiceRiskSetZero();
|
42
|
+
error ErrorInstanceServiceRequestSetZero();
|
41
43
|
error ErrorInstanceServiceInstanceStoreZero();
|
42
44
|
error ErrorInstanceServiceProductStoreZero();
|
43
45
|
|
44
46
|
error ErrorInstanceServiceInstanceAuthorityMismatch();
|
45
47
|
error ErrorInstanceServiceBundleSetAuthorityMismatch();
|
46
48
|
error ErrorInstanceServiceRiskSetAuthorityMismatch();
|
49
|
+
error ErrorInstanceServiceRequestSetAuthorityMismatch();
|
47
50
|
error ErrorInstanceServiceInstanceReaderInstanceMismatch2();
|
48
51
|
error ErrorInstanceServiceBundleSetInstanceMismatch();
|
49
52
|
error ErrorInstanceServiceRiskSetInstanceMismatch();
|
53
|
+
error ErrorInstanceServiceRequestSetInstanceMismatch();
|
50
54
|
error ErrorInstanceServiceInstanceStoreAuthorityMismatch();
|
51
55
|
error ErrorInstanceServiceProductStoreAuthorityMismatch();
|
52
56
|
|
@@ -56,12 +60,13 @@ interface IInstanceService is IService {
|
|
56
60
|
error ErrorInstanceServiceInstanceComponentMismatch(NftId instanceNftId, NftId componentNftId);
|
57
61
|
error ErrorInstanceServiceInvalidComponentType(address componentAddress, ObjectType expectedType, ObjectType componentType);
|
58
62
|
|
59
|
-
|
60
|
-
event
|
61
|
-
event
|
62
|
-
|
63
|
-
|
64
|
-
event
|
63
|
+
|
64
|
+
event LogInstanceServiceInstanceLocked(NftId indexed instanceNftId, bool indexed locked);
|
65
|
+
event LogInstanceServiceInstanceCreated(NftId indexed instanceNftId, address indexed instance);
|
66
|
+
event LogInstanceServiceMasterInstanceRegistered(NftId indexed masterInstanceNftId, address indexed masterInstance, address indexed masterInstanceAdmin, address masterAccessManager,
|
67
|
+
address masterInstanceReader, address masterInstanceBundleSet, address masterInstanceRiskSet, address masterInstanceRequestSet, address masterInstanceStore, address masterProductStore);
|
68
|
+
event LogInstanceServiceMasterInstanceReaderUpgraded(NftId indexed instanceNfId, address indexed oldInstanceReader, address indexed newInstanceReader);
|
69
|
+
event LogInstanceServiceInstanceReaderUpgraded(NftId indexed instanceNfId, address indexed oldInstanceReader, address indexed newInstanceReader);
|
65
70
|
|
66
71
|
/// @dev Creates a new custom role for the calling instance.
|
67
72
|
function createRole(string memory roleName, RoleId adminRoleId, uint32 maxMemberCount) external returns (RoleId roleId);
|
@@ -17,6 +17,7 @@ import {InstanceStore} from "./InstanceStore.sol";
|
|
17
17
|
import {NftId} from "../type/NftId.sol";
|
18
18
|
import {ProductStore} from "./ProductStore.sol";
|
19
19
|
import {Registerable} from "../shared/Registerable.sol";
|
20
|
+
import {RequestSet} from "./RequestSet.sol";
|
20
21
|
import {RoleId} from "../type/RoleId.sol";
|
21
22
|
import {Seconds} from "../type/Seconds.sol";
|
22
23
|
import {UFixed} from "../type/UFixed.sol";
|
@@ -35,6 +36,7 @@ contract Instance is
|
|
35
36
|
InstanceReader internal _instanceReader;
|
36
37
|
BundleSet internal _bundleSet;
|
37
38
|
RiskSet internal _riskSet;
|
39
|
+
RequestSet internal _requestSet;
|
38
40
|
InstanceStore internal _instanceStore;
|
39
41
|
ProductStore internal _productStore;
|
40
42
|
NftId [] internal _products;
|
@@ -88,6 +90,7 @@ contract Instance is
|
|
88
90
|
_productStore = instanceContracts.productStore;
|
89
91
|
_bundleSet = instanceContracts.bundleSet;
|
90
92
|
_riskSet = instanceContracts.riskSet;
|
93
|
+
_requestSet = instanceContracts.requestSet;
|
91
94
|
_instanceReader = instanceContracts.instanceReader;
|
92
95
|
|
93
96
|
// initialize instance supporting contracts
|
@@ -95,6 +98,7 @@ contract Instance is
|
|
95
98
|
_productStore.initialize();
|
96
99
|
_bundleSet.initialize(instanceContracts.instanceAdmin.authority(), address(registry));
|
97
100
|
_riskSet.initialize(instanceContracts.instanceAdmin.authority(), address(registry));
|
101
|
+
_requestSet.initialize(instanceContracts.instanceAdmin.authority(), address(registry));
|
98
102
|
_instanceReader.initialize();
|
99
103
|
|
100
104
|
_componentService = IComponentService(
|
@@ -333,6 +337,10 @@ contract Instance is
|
|
333
337
|
return _riskSet;
|
334
338
|
}
|
335
339
|
|
340
|
+
function getRequestSet() external view returns (RequestSet) {
|
341
|
+
return _requestSet;
|
342
|
+
}
|
343
|
+
|
336
344
|
function getInstanceAdmin() external view returns (InstanceAdmin) {
|
337
345
|
return _instanceAdmin;
|
338
346
|
}
|
@@ -13,7 +13,7 @@ import {ObjectType, INSTANCE} from "../type/ObjectType.sol";
|
|
13
13
|
import {RoleId, ADMIN_ROLE} from "../type/RoleId.sol";
|
14
14
|
import {Str} from "../type/String.sol";
|
15
15
|
import {VersionPart} from "../type/Version.sol";
|
16
|
-
import {INSTANCE_TARGET_NAME, INSTANCE_ADMIN_TARGET_NAME, INSTANCE_STORE_TARGET_NAME, PRODUCT_STORE_TARGET_NAME, BUNDLE_SET_TARGET_NAME, RISK_SET_TARGET_NAME} from "./TargetNames.sol";
|
16
|
+
import {INSTANCE_TARGET_NAME, INSTANCE_ADMIN_TARGET_NAME, INSTANCE_STORE_TARGET_NAME, PRODUCT_STORE_TARGET_NAME, BUNDLE_SET_TARGET_NAME, RISK_SET_TARGET_NAME, REQUEST_SET_TARGET_NAME} from "./TargetNames.sol";
|
17
17
|
|
18
18
|
|
19
19
|
contract InstanceAdmin is
|
@@ -123,6 +123,7 @@ contract InstanceAdmin is
|
|
123
123
|
_createInstanceTarget(address(_instance.getProductStore()), PRODUCT_STORE_TARGET_NAME);
|
124
124
|
_createInstanceTarget(address(_instance.getBundleSet()), BUNDLE_SET_TARGET_NAME);
|
125
125
|
_createInstanceTarget(address(_instance.getRiskSet()), RISK_SET_TARGET_NAME);
|
126
|
+
_createInstanceTarget(address(_instance.getRequestSet()), REQUEST_SET_TARGET_NAME);
|
126
127
|
}
|
127
128
|
|
128
129
|
|
@@ -10,9 +10,10 @@ import {ACCOUNTING, ORACLE, POOL, INSTANCE, COMPONENT, DISTRIBUTION, APPLICATION
|
|
10
10
|
import {BundleSet} from "../instance/BundleSet.sol";
|
11
11
|
import {InstanceAdmin} from "../instance/InstanceAdmin.sol";
|
12
12
|
import {InstanceStore} from "../instance/InstanceStore.sol";
|
13
|
-
import {INSTANCE_TARGET_NAME, INSTANCE_ADMIN_TARGET_NAME, INSTANCE_STORE_TARGET_NAME, PRODUCT_STORE_TARGET_NAME, BUNDLE_SET_TARGET_NAME, RISK_SET_TARGET_NAME} from "./TargetNames.sol";
|
13
|
+
import {INSTANCE_TARGET_NAME, INSTANCE_ADMIN_TARGET_NAME, INSTANCE_STORE_TARGET_NAME, PRODUCT_STORE_TARGET_NAME, BUNDLE_SET_TARGET_NAME, RISK_SET_TARGET_NAME, REQUEST_SET_TARGET_NAME} from "./TargetNames.sol";
|
14
14
|
import {ProductStore} from "../instance/ProductStore.sol";
|
15
15
|
import {ADMIN_ROLE, INSTANCE_OWNER_ROLE, PUBLIC_ROLE} from "../type/RoleId.sol";
|
16
|
+
import {RequestSet} from "../instance/RequestSet.sol";
|
16
17
|
import {RiskSet} from "../instance/RiskSet.sol";
|
17
18
|
|
18
19
|
|
@@ -71,6 +72,7 @@ contract InstanceAuthorizationV3
|
|
71
72
|
_addInstanceTarget(PRODUCT_STORE_TARGET_NAME);
|
72
73
|
_addInstanceTarget(BUNDLE_SET_TARGET_NAME);
|
73
74
|
_addInstanceTarget(RISK_SET_TARGET_NAME);
|
75
|
+
_addInstanceTarget(REQUEST_SET_TARGET_NAME);
|
74
76
|
}
|
75
77
|
|
76
78
|
|
@@ -84,6 +86,18 @@ contract InstanceAuthorizationV3
|
|
84
86
|
_setupProductStoreAuthorization();
|
85
87
|
_setupBundleSetAuthorization();
|
86
88
|
_setUpRiskSetAuthorization();
|
89
|
+
_setUpRequestIdSetAuthorization();
|
90
|
+
}
|
91
|
+
|
92
|
+
function _setUpRequestIdSetAuthorization()
|
93
|
+
internal
|
94
|
+
{
|
95
|
+
IAccess.FunctionInfo[] storage functions;
|
96
|
+
|
97
|
+
// authorize oracle service role
|
98
|
+
functions = _authorizeForTarget(REQUEST_SET_TARGET_NAME, getServiceRole(ORACLE()));
|
99
|
+
_authorize(functions, RequestSet.add.selector, "add");
|
100
|
+
_authorize(functions, RequestSet.remove.selector, "remove");
|
87
101
|
}
|
88
102
|
|
89
103
|
|
@@ -30,6 +30,7 @@ import {PolicyServiceLib} from "../product/PolicyServiceLib.sol";
|
|
30
30
|
import {ProductStore} from "./ProductStore.sol";
|
31
31
|
import {ReferralId, ReferralStatus, ReferralLib} from "../type/Referral.sol";
|
32
32
|
import {RequestId} from "../type/RequestId.sol";
|
33
|
+
import {RequestSet} from "./RequestSet.sol";
|
33
34
|
import {RiskId} from "../type/RiskId.sol";
|
34
35
|
import {RiskSet} from "./RiskSet.sol";
|
35
36
|
import {RoleId, INSTANCE_OWNER_ROLE} from "../type/RoleId.sol";
|
@@ -56,6 +57,7 @@ contract InstanceReader {
|
|
56
57
|
ProductStore internal _productStore;
|
57
58
|
BundleSet internal _bundleSet;
|
58
59
|
RiskSet internal _riskSet;
|
60
|
+
RequestSet internal _requestSet;
|
59
61
|
IDistributionService internal _distributionService;
|
60
62
|
|
61
63
|
/// @dev This initializer needs to be called from the instance itself.
|
@@ -85,6 +87,7 @@ contract InstanceReader {
|
|
85
87
|
_productStore = _instance.getProductStore();
|
86
88
|
_bundleSet = _instance.getBundleSet();
|
87
89
|
_riskSet = _instance.getRiskSet();
|
90
|
+
_requestSet = _instance.getRequestSet();
|
88
91
|
_distributionService = IDistributionService(_registry.getServiceAddress(DISTRIBUTION(), _instance.getRelease()));
|
89
92
|
}
|
90
93
|
|
@@ -164,7 +167,9 @@ contract InstanceReader {
|
|
164
167
|
|
165
168
|
|
166
169
|
/// @dev Returns the currently locked amount for the given NFT ID.
|
167
|
-
///
|
170
|
+
/// Locked amounts are only tracked for bundles, not for pool. To get the
|
171
|
+
/// pool locked amount, then locked amounts of the bundles contained in the
|
172
|
+
/// pool must be summed up. The target NFT ID may only a bundle.
|
168
173
|
function getLockedAmount(NftId targetNftId) external view returns (Amount) {
|
169
174
|
return _store.getLockedAmount(targetNftId);
|
170
175
|
}
|
@@ -364,6 +369,18 @@ contract InstanceReader {
|
|
364
369
|
return getState(requestId.toKey32());
|
365
370
|
}
|
366
371
|
|
372
|
+
function getActiveRequests(NftId oracleNftId) external view returns(uint256 numberOfRequests) {
|
373
|
+
return _requestSet.activeRequests(oracleNftId);
|
374
|
+
}
|
375
|
+
|
376
|
+
function getActiveRequestAt(NftId oracleNftId, uint256 idx) external view returns(RequestId requestId) {
|
377
|
+
return _requestSet.activeRequestAt(oracleNftId, idx);
|
378
|
+
}
|
379
|
+
|
380
|
+
function isRequestActive(NftId oracleNftId, RequestId requestId) external view returns(bool isActive) {
|
381
|
+
return _requestSet.contains(oracleNftId, requestId);
|
382
|
+
}
|
383
|
+
|
367
384
|
//--- pool functions -----------------------------------------------------------//
|
368
385
|
|
369
386
|
/// @dev Returns the pool info for the given pool NFT ID.
|