@etherisc/gif-next 3.0.0-1a7e54a-113 → 3.0.0-1b49bd6-565
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 +139 -72
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +110 -116
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +72 -33
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +89 -66
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +122 -101
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +20 -65
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +31 -55
- 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 +20 -10
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +18 -42
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +126 -75
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +41 -65
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +72 -57
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +198 -139
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +140 -150
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +84 -56
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +71 -32
- 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 +166 -104
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +41 -65
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +200 -138
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +41 -65
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +160 -56
- package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +173 -116
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +41 -65
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +170 -108
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +41 -65
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +580 -134
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +41 -65
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +212 -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 +159 -102
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +41 -65
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +163 -106
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +177 -120
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +41 -65
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +171 -114
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +41 -65
- 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 +49 -54
- 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 +77 -25
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +83 -44
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +144 -50
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +169 -147
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +43 -67
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +36 -36
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +138 -75
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +104 -112
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2 -2
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +2 -2
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +53 -58
- 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 +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 -8
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +2 -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/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +132 -81
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +41 -65
- 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 +94 -66
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +80 -83
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +82 -67
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +149 -148
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +111 -129
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +88 -73
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +41 -65
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +176 -117
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +129 -139
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +71 -32
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +100 -72
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +94 -86
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +88 -73
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +24 -247
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +233 -165
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +140 -130
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +138 -63
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +110 -112
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +72 -57
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +41 -65
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +182 -115
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +132 -138
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +71 -32
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +71 -32
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +82 -64
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +82 -43
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +84 -56
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +75 -36
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +173 -127
- 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 +122 -128
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +161 -94
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +116 -122
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +72 -57
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +146 -63
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +109 -107
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +155 -56
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +202 -216
- package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
- package/artifacts/contracts/registry/IRelease.sol/IRelease.json +1 -15
- 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 +314 -96
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +163 -142
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +57 -77
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +285 -244
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +115 -110
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +159 -150
- 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 +127 -185
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +32 -56
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +13 -29
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +84 -39
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +164 -320
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +115 -141
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +421 -169
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.json +691 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +96 -38
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +82 -226
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +84 -56
- 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 +1 -28
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +1 -12
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +77 -25
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +1 -12
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.json +71 -32
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +4 -0
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +74 -0
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +72 -57
- 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 +15 -34
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +3 -14
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +76 -24
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +3 -37
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +70 -31
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +42 -29
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +30 -17
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +34 -34
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +4 -0
- package/artifacts/contracts/shared/Versionable.sol/Versionable.json +74 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +101 -56
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +75 -36
- 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 +170 -109
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +26 -31
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +112 -124
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +5 -22
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +132 -65
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +105 -111
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +212 -204
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +27 -19
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +16 -16
- 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/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/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 +6 -6
- 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 +2 -2
- 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 +4 -4
- 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/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.json +10 -10
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +19 -6
- package/artifacts/contracts/upgradeability/IUpgradeable.sol/IUpgradeable.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/{IVersionable.sol/IVersionable.json → IUpgradeable.sol/IUpgradeable.json} +54 -4
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +63 -86
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/Upgradeable.sol/Upgradeable.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/{Versionable.sol/Versionable.json → Upgradeable.sol/Upgradeable.json} +54 -4
- package/contracts/accounting/AccountingService.sol +5 -6
- package/contracts/accounting/AccountingServiceManager.sol +4 -6
- package/contracts/accounting/IAccountingService.sol +1 -1
- package/contracts/authorization/AccessAdmin.sol +22 -19
- package/contracts/authorization/AccessAdminLib.sol +14 -11
- package/contracts/authorization/AccessManagerCloneable.sol +24 -48
- package/contracts/authorization/Authorization.sol +2 -2
- package/contracts/authorization/IAccessAdmin.sol +3 -3
- package/contracts/authorization/IServiceAuthorization.sol +1 -1
- package/contracts/authorization/ServiceAuthorization.sol +4 -4
- package/contracts/distribution/BasicDistribution.sol +0 -2
- package/contracts/distribution/BasicDistributionAuthorization.sol +5 -4
- package/contracts/distribution/Distribution.sol +0 -2
- package/contracts/distribution/DistributionService.sol +24 -20
- package/contracts/distribution/DistributionServiceManager.sol +4 -6
- package/contracts/examples/fire/FirePool.sol +0 -4
- package/contracts/examples/fire/FireProduct.sol +0 -4
- package/contracts/examples/flight/FlightLib.sol +48 -37
- package/contracts/examples/flight/FlightOracle.sol +0 -4
- package/contracts/examples/flight/FlightPool.sol +0 -4
- package/contracts/examples/flight/FlightProduct.sol +120 -15
- package/contracts/examples/flight/FlightProductAuthorization.sol +2 -1
- package/contracts/examples/flight/FlightUSD.sol +3 -1
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +0 -4
- package/contracts/examples/unpermissioned/SimpleOracle.sol +0 -4
- package/contracts/examples/unpermissioned/SimplePool.sol +0 -4
- package/contracts/examples/unpermissioned/SimpleProduct.sol +0 -4
- package/contracts/instance/Instance.sol +7 -11
- package/contracts/instance/InstanceAdmin.sol +10 -17
- package/contracts/instance/InstanceAuthorizationV3.sol +4 -2
- package/contracts/instance/InstanceReader.sol +15 -15
- package/contracts/instance/InstanceService.sol +18 -20
- package/contracts/instance/InstanceServiceManager.sol +4 -6
- package/contracts/instance/base/Cloneable.sol +4 -10
- package/contracts/instance/base/ObjectSet.sol +2 -2
- package/contracts/oracle/BasicOracle.sol +0 -2
- package/contracts/oracle/BasicOracleAuthorization.sol +3 -1
- package/contracts/oracle/IOracleService.sol +0 -4
- package/contracts/oracle/Oracle.sol +3 -4
- package/contracts/oracle/OracleService.sol +37 -67
- package/contracts/oracle/OracleServiceManager.sol +4 -6
- package/contracts/pool/BasicPool.sol +2 -4
- package/contracts/pool/BasicPoolAuthorization.sol +5 -4
- package/contracts/pool/BundleService.sol +25 -19
- package/contracts/pool/BundleServiceManager.sol +5 -7
- package/contracts/pool/IPoolService.sol +5 -6
- package/contracts/pool/Pool.sol +1 -3
- package/contracts/pool/PoolLib.sol +5 -102
- package/contracts/pool/PoolService.sol +67 -101
- package/contracts/pool/PoolServiceManager.sol +4 -6
- package/contracts/product/ApplicationService.sol +13 -34
- package/contracts/product/ApplicationServiceManager.sol +4 -6
- package/contracts/product/BasicProduct.sol +0 -2
- package/contracts/product/BasicProductAuthorization.sol +5 -4
- package/contracts/product/ClaimService.sol +10 -34
- package/contracts/product/ClaimServiceManager.sol +5 -7
- package/contracts/product/IPolicyService.sol +0 -1
- package/contracts/product/PolicyService.sol +44 -57
- package/contracts/product/PolicyServiceManager.sol +4 -6
- package/contracts/product/PricingService.sol +7 -8
- package/contracts/product/PricingServiceManager.sol +4 -6
- package/contracts/product/Product.sol +0 -2
- package/contracts/product/RiskService.sol +8 -40
- package/contracts/product/RiskServiceManager.sol +4 -6
- package/contracts/registry/IRegistry.sol +20 -14
- package/contracts/registry/IRegistryService.sol +10 -14
- package/contracts/registry/IRelease.sol +0 -3
- package/contracts/registry/Registry.sol +124 -78
- package/contracts/registry/RegistryAdmin.sol +11 -22
- package/contracts/registry/RegistryAuthorization.sol +4 -3
- package/contracts/registry/RegistryService.sol +99 -82
- package/contracts/registry/RegistryServiceManager.sol +4 -11
- package/contracts/registry/ReleaseAdmin.sol +9 -16
- package/contracts/registry/ReleaseRegistry.sol +64 -74
- package/contracts/registry/ServiceAuthorizationV3.sol +4 -3
- package/contracts/registry/TokenRegistry.sol +6 -15
- package/contracts/shared/Component.sol +27 -22
- package/contracts/shared/ComponentService.sol +45 -130
- package/contracts/shared/ComponentServiceManager.sol +5 -7
- package/contracts/shared/ContractLib.sol +359 -93
- package/contracts/shared/IAuthorizedComponent.sol +15 -0
- package/contracts/shared/IComponent.sol +5 -3
- package/contracts/shared/IComponentService.sol +0 -14
- package/contracts/shared/IInstanceLinkedComponent.sol +5 -12
- package/contracts/shared/INftOwnable.sol +0 -2
- package/contracts/shared/IRegisterable.sol +14 -3
- package/contracts/shared/IRegistryLinked.sol +1 -3
- package/contracts/shared/IService.sol +2 -2
- package/contracts/shared/IVersionable.sol +19 -0
- package/contracts/shared/InstanceLinkedComponent.sol +31 -65
- package/contracts/shared/NftOwnable.sol +9 -22
- package/contracts/shared/PolicyHolder.sol +2 -4
- package/contracts/shared/Registerable.sol +37 -20
- package/contracts/shared/RegistryLinked.sol +4 -23
- package/contracts/shared/Service.sol +8 -9
- package/contracts/shared/TokenHandler.sol +4 -1
- package/contracts/shared/Versionable.sol +47 -0
- package/contracts/staking/IStaking.sol +2 -2
- package/contracts/staking/Staking.sol +28 -33
- package/contracts/staking/StakingLib.sol +3 -1
- package/contracts/staking/StakingManager.sol +3 -6
- package/contracts/staking/StakingReader.sol +9 -17
- package/contracts/staking/StakingService.sol +16 -13
- package/contracts/staking/StakingServiceManager.sol +4 -8
- package/contracts/staking/StakingStore.sol +8 -8
- package/contracts/staking/TargetHandler.sol +4 -5
- package/contracts/type/Version.sol +15 -16
- package/contracts/upgradeability/{IVersionable.sol → IUpgradeable.sol} +13 -19
- package/contracts/upgradeability/ProxyManager.sol +46 -54
- package/contracts/upgradeability/{Versionable.sol → Upgradeable.sol} +25 -14
- package/package.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +0 -4
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +0 -24
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +0 -4
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +0 -40
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +0 -4
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +0 -4
@@ -29,14 +29,13 @@ contract OracleService is
|
|
29
29
|
)
|
30
30
|
internal
|
31
31
|
virtual override
|
32
|
-
|
32
|
+
onlyInitializing()
|
33
33
|
{
|
34
34
|
(
|
35
|
-
address authority
|
36
|
-
|
37
|
-
) = abi.decode(data, (address, address));
|
35
|
+
address authority
|
36
|
+
) = abi.decode(data, (address));
|
38
37
|
|
39
|
-
__Service_init(authority,
|
38
|
+
__Service_init(authority, owner);
|
40
39
|
_registerInterface(type(IOracleService).interfaceId);
|
41
40
|
}
|
42
41
|
|
@@ -49,25 +48,24 @@ contract OracleService is
|
|
49
48
|
external
|
50
49
|
virtual
|
51
50
|
restricted()
|
52
|
-
onlyNftOfType(oracleNftId, ORACLE())
|
53
51
|
returns (RequestId requestId)
|
54
52
|
{
|
55
53
|
// checks
|
56
|
-
|
57
|
-
|
58
|
-
IRegistry.ObjectInfo memory requesterInfo,
|
59
|
-
address instance
|
60
|
-
) = ContractLib.getAndVerifyAnyComponent(
|
61
|
-
getRegistry(), msg.sender, true);
|
62
|
-
|
63
|
-
(
|
64
|
-
NftId requesterNftId,
|
65
|
-
IOracleComponent oracle
|
66
|
-
) = _checkRequestParams(
|
67
|
-
getRegistry(), oracleNftId, requesterInfo, expiryAt, callbackMethodName);
|
54
|
+
NftId requesterNftId; // component
|
55
|
+
IOracleComponent oracle;
|
68
56
|
|
69
|
-
// effects
|
70
57
|
{
|
58
|
+
IInstance instance;
|
59
|
+
(
|
60
|
+
requesterNftId,
|
61
|
+
oracle,
|
62
|
+
instance
|
63
|
+
) = ContractLib.getAndVerifyComponentAndOracle(
|
64
|
+
oracleNftId, getRelease());
|
65
|
+
|
66
|
+
_checkRequestParams(expiryAt, callbackMethodName);
|
67
|
+
|
68
|
+
// effects
|
71
69
|
// create request info
|
72
70
|
IOracle.RequestInfo memory request = IOracle.RequestInfo({
|
73
71
|
requesterNftId: requesterNftId,
|
@@ -81,7 +79,7 @@ contract OracleService is
|
|
81
79
|
});
|
82
80
|
|
83
81
|
// store request with instance
|
84
|
-
requestId =
|
82
|
+
requestId = instance.getInstanceStore().createRequest(request);
|
85
83
|
}
|
86
84
|
|
87
85
|
emit LogOracleServiceRequestCreated(requestId, requesterNftId, oracleNftId, expiryAt);
|
@@ -108,13 +106,11 @@ contract OracleService is
|
|
108
106
|
returns (bool success)
|
109
107
|
{
|
110
108
|
(
|
111
|
-
|
112
|
-
|
109
|
+
NftId oracleNftId,
|
110
|
+
IInstance instance
|
113
111
|
) = ContractLib.getAndVerifyComponent(
|
114
|
-
|
112
|
+
msg.sender, ORACLE(), getRelease(), true);
|
115
113
|
|
116
|
-
NftId oracleNftId = info.nftId;
|
117
|
-
IInstance instance = IInstance(instanceAddress);
|
118
114
|
bool callerIsOracle = true;
|
119
115
|
IOracle.RequestInfo memory request = _checkAndGetRequestInfo(instance, requestId, oracleNftId, callerIsOracle);
|
120
116
|
request.responseData = responseData;
|
@@ -123,7 +119,7 @@ contract OracleService is
|
|
123
119
|
instance.getInstanceStore().updateRequest(
|
124
120
|
requestId, request, KEEP_STATE());
|
125
121
|
|
126
|
-
IRegistry.ObjectInfo memory requesterInfo =
|
122
|
+
IRegistry.ObjectInfo memory requesterInfo = _getRegistry().getObjectInfo(
|
127
123
|
request.requesterNftId);
|
128
124
|
|
129
125
|
string memory functionSignature = string(
|
@@ -156,24 +152,25 @@ contract OracleService is
|
|
156
152
|
restricted()
|
157
153
|
{
|
158
154
|
(
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
155
|
+
// !!! TODO requesterNftId is in request.requesterNftId
|
156
|
+
// here is responder nft id?
|
157
|
+
NftId requesterNftId, // component
|
158
|
+
IInstance instance
|
159
|
+
) = ContractLib.getAndVerifyComponent(
|
160
|
+
msg.sender, COMPONENT(), getRelease(), true);
|
163
161
|
|
164
|
-
NftId requesterNftId = info.nftId;
|
165
|
-
IInstance instance = IInstance(instanceAddress);
|
166
162
|
bool callerIsOracle = false;
|
167
163
|
IOracle.RequestInfo memory request = _checkAndGetRequestInfo(instance, requestId, requesterNftId, callerIsOracle);
|
168
164
|
|
169
165
|
// attempt to deliver response to requester
|
166
|
+
address requester = msg.sender;
|
170
167
|
string memory functionSignature = string(
|
171
168
|
abi.encodePacked(
|
172
169
|
request.callbackMethodName,
|
173
170
|
"(uint64,bytes)"
|
174
171
|
));
|
175
172
|
|
176
|
-
(bool success, bytes memory returnData) =
|
173
|
+
(bool success, bytes memory returnData) = requester.call(
|
177
174
|
abi.encodeWithSignature(
|
178
175
|
functionSignature,
|
179
176
|
requestId,
|
@@ -184,7 +181,8 @@ contract OracleService is
|
|
184
181
|
instance.getInstanceStore().updateRequestState(requestId, FULFILLED());
|
185
182
|
emit LogOracleServiceResponseResent(requestId, requesterNftId);
|
186
183
|
} else {
|
187
|
-
|
184
|
+
// TODO why requester address instead of nftId?
|
185
|
+
emit LogOracleServiceDeliveryFailed(requestId, requester, functionSignature);
|
188
186
|
}
|
189
187
|
}
|
190
188
|
|
@@ -195,13 +193,11 @@ contract OracleService is
|
|
195
193
|
restricted()
|
196
194
|
{
|
197
195
|
(
|
198
|
-
|
199
|
-
|
200
|
-
) = ContractLib.
|
201
|
-
|
196
|
+
NftId requesterNftId, // component
|
197
|
+
IInstance instance
|
198
|
+
) = ContractLib.getAndVerifyComponent(
|
199
|
+
msg.sender, COMPONENT(), getRelease(), true);
|
202
200
|
|
203
|
-
NftId requesterNftId = info.nftId;
|
204
|
-
IInstance instance = IInstance(instanceAddress);
|
205
201
|
bool callerIsOracle = false;
|
206
202
|
// TODO property isCancelled and state update to CANCELLED are redundant, get rid of isCancelled
|
207
203
|
IOracle.RequestInfo memory request = _checkAndGetRequestInfo(instance, requestId, requesterNftId, callerIsOracle);
|
@@ -211,7 +207,7 @@ contract OracleService is
|
|
211
207
|
|
212
208
|
// call oracle component
|
213
209
|
// TODO add check that oracle is active?
|
214
|
-
address oracleAddress =
|
210
|
+
address oracleAddress = _getRegistry().getObjectAddress(request.oracleNftId);
|
215
211
|
IOracleComponent(oracleAddress).cancel(requestId);
|
216
212
|
|
217
213
|
emit LogOracleServiceRequestCancelled(requestId, requesterNftId);
|
@@ -219,39 +215,13 @@ contract OracleService is
|
|
219
215
|
|
220
216
|
|
221
217
|
function _checkRequestParams(
|
222
|
-
IRegistry registry,
|
223
|
-
NftId oracleNftId,
|
224
|
-
IRegistry.ObjectInfo memory requesterInfo,
|
225
218
|
Timestamp expiryAt,
|
226
219
|
string memory callbackMethodName
|
227
220
|
)
|
228
221
|
internal
|
229
222
|
virtual
|
230
223
|
view
|
231
|
-
returns (
|
232
|
-
NftId requesterNftId,
|
233
|
-
IOracleComponent oracle
|
234
|
-
)
|
235
224
|
{
|
236
|
-
// get oracle info
|
237
|
-
(IRegistry.ObjectInfo memory oracleInfo,) = ContractLib.getInfoAndInstance(
|
238
|
-
registry, oracleNftId, true);
|
239
|
-
|
240
|
-
// obtain return values
|
241
|
-
requesterNftId = requesterInfo.nftId;
|
242
|
-
oracle = IOracleComponent(oracleInfo.objectAddress);
|
243
|
-
|
244
|
-
// check that requester and oracle share same product cluster
|
245
|
-
if (requesterInfo.objectType == PRODUCT()) {
|
246
|
-
if (oracleInfo.parentNftId != requesterNftId) {
|
247
|
-
revert ErrorOracleServiceProductMismatch(requesterInfo.objectType, requesterNftId, oracleInfo.parentNftId);
|
248
|
-
}
|
249
|
-
} else {
|
250
|
-
if (oracleInfo.parentNftId != requesterInfo.parentNftId) {
|
251
|
-
revert ErrorOracleServiceProductMismatch(requesterInfo.objectType, requesterInfo.parentNftId, oracleInfo.parentNftId);
|
252
|
-
}
|
253
|
-
}
|
254
|
-
|
255
225
|
// check expiriyAt >= now
|
256
226
|
if (expiryAt < TimestampLib.current()) {
|
257
227
|
revert ErrorOracleServiceExpiryInThePast(TimestampLib.current(), expiryAt);
|
@@ -1,7 +1,7 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {
|
4
|
+
import {IUpgradeable} from "../upgradeability/IUpgradeable.sol";
|
5
5
|
import {ProxyManager} from "../upgradeability/ProxyManager.sol";
|
6
6
|
import {OracleService} from "./OracleService.sol";
|
7
7
|
|
@@ -12,19 +12,17 @@ contract OracleServiceManager is ProxyManager {
|
|
12
12
|
/// @dev initializes proxy manager with service implementation and deploys instance
|
13
13
|
constructor(
|
14
14
|
address authority,
|
15
|
-
address registry,
|
16
15
|
bytes32 salt
|
17
16
|
)
|
18
17
|
{
|
19
18
|
OracleService svc = new OracleService{salt: salt}();
|
20
|
-
bytes memory data = abi.encode(authority
|
21
|
-
|
22
|
-
registry,
|
19
|
+
bytes memory data = abi.encode(authority);
|
20
|
+
IUpgradeable upgradeable = initialize(
|
23
21
|
address(svc),
|
24
22
|
data,
|
25
23
|
salt);
|
26
24
|
|
27
|
-
_oracleService = OracleService(address(
|
25
|
+
_oracleService = OracleService(address(upgradeable));
|
28
26
|
}
|
29
27
|
|
30
28
|
//--- view functions ----------------------------------------------------//
|
@@ -18,7 +18,6 @@ abstract contract BasicPool is
|
|
18
18
|
{
|
19
19
|
|
20
20
|
function _initializeBasicPool(
|
21
|
-
address registry,
|
22
21
|
NftId productNftId,
|
23
22
|
string memory name,
|
24
23
|
IComponents.PoolInfo memory poolInfo,
|
@@ -30,7 +29,6 @@ abstract contract BasicPool is
|
|
30
29
|
onlyInitializing()
|
31
30
|
{
|
32
31
|
__Pool_init(
|
33
|
-
registry,
|
34
32
|
productNftId,
|
35
33
|
name,
|
36
34
|
poolInfo,
|
@@ -45,8 +43,8 @@ abstract contract BasicPool is
|
|
45
43
|
public
|
46
44
|
virtual
|
47
45
|
restricted()
|
48
|
-
onlyBundleOwner(bundleNftId)
|
49
|
-
onlyNftOfType(bundleNftId, BUNDLE())
|
46
|
+
onlyBundleOwner(bundleNftId) // TODO single modifier to check everything about given arbitrary nftId
|
47
|
+
onlyNftOfType(bundleNftId, BUNDLE()) // TODO service will check this
|
50
48
|
{
|
51
49
|
_stake(bundleNftId, amount);
|
52
50
|
}
|
@@ -2,7 +2,7 @@
|
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
4
|
import {IAccess} from "../authorization/IAccess.sol";
|
5
|
-
import {
|
5
|
+
import {IComponent} from "../shared/IComponent.sol";
|
6
6
|
import {IPoolComponent} from "./IPoolComponent.sol";
|
7
7
|
|
8
8
|
import {Authorization} from "../authorization/Authorization.sol";
|
@@ -10,8 +10,9 @@ import {BasicPool} from "./BasicPool.sol";
|
|
10
10
|
import {COMPONENT, POOL} from "../type/ObjectType.sol";
|
11
11
|
import {PUBLIC_ROLE} from "../../contracts/type/RoleId.sol";
|
12
12
|
import {RoleId} from "../type/RoleId.sol";
|
13
|
+
import {GIF_INITIAL_RELEASE} from "../registry/Registry.sol";
|
13
14
|
import {TokenHandler} from "../shared/TokenHandler.sol";
|
14
|
-
|
15
|
+
import {VersionPartLib} from "../type/Version.sol";
|
15
16
|
|
16
17
|
contract BasicPoolAuthorization
|
17
18
|
is Authorization
|
@@ -21,7 +22,7 @@ contract BasicPoolAuthorization
|
|
21
22
|
Authorization(
|
22
23
|
poolName,
|
23
24
|
POOL(),
|
24
|
-
|
25
|
+
GIF_INITIAL_RELEASE(),
|
25
26
|
COMMIT_HASH,
|
26
27
|
TargetType.Component,
|
27
28
|
true)
|
@@ -70,7 +71,7 @@ contract BasicPoolAuthorization
|
|
70
71
|
_authorize(functions, BasicPool.unstake.selector, "unstake");
|
71
72
|
_authorize(functions, BasicPool.extend.selector, "extend");
|
72
73
|
|
73
|
-
_authorize(functions,
|
74
|
+
_authorize(functions, IComponent.withdrawFees.selector, "withdrawFees");
|
74
75
|
_authorize(functions, BasicPool.withdrawBundleFees.selector, "withdrawBundleFees");
|
75
76
|
|
76
77
|
// authorize pool service
|
@@ -12,11 +12,11 @@ import {InstanceStore} from "../instance/InstanceStore.sol";
|
|
12
12
|
|
13
13
|
import {Amount, AmountLib} from "../type/Amount.sol";
|
14
14
|
import {BundleSet} from "../instance/BundleSet.sol";
|
15
|
+
import {ContractLib} from "../shared/ContractLib.sol";
|
15
16
|
import {Fee} from "../type/Fee.sol";
|
16
17
|
import {InstanceReader} from "../instance/InstanceReader.sol";
|
17
18
|
import {NftId, NftIdLib} from "../type/NftId.sol";
|
18
19
|
import {ObjectType, ACCOUNTING, COMPONENT, POOL, BUNDLE, POLICY, REGISTRY} from "../type/ObjectType.sol";
|
19
|
-
import {PoolLib} from "./PoolLib.sol";
|
20
20
|
import {Seconds} from "../type/Seconds.sol";
|
21
21
|
import {Service} from "../shared/Service.sol";
|
22
22
|
import {StateId, ACTIVE, PAUSED, CLOSED, KEEP_STATE} from "../type/StateId.sol";
|
@@ -41,14 +41,13 @@ contract BundleService is
|
|
41
41
|
)
|
42
42
|
internal
|
43
43
|
virtual override
|
44
|
-
|
44
|
+
onlyInitializing()
|
45
45
|
{
|
46
46
|
(
|
47
|
-
address authority
|
48
|
-
|
49
|
-
) = abi.decode(data, (address, address));
|
47
|
+
address authority
|
48
|
+
) = abi.decode(data, (address));
|
50
49
|
|
51
|
-
__Service_init(authority,
|
50
|
+
__Service_init(authority, owner);
|
52
51
|
|
53
52
|
_registryService = IRegistryService(_getServiceAddress(REGISTRY()));
|
54
53
|
_accountingService = IAccountingService(_getServiceAddress(ACCOUNTING()));
|
@@ -66,9 +65,12 @@ contract BundleService is
|
|
66
65
|
virtual
|
67
66
|
restricted()
|
68
67
|
{
|
69
|
-
|
68
|
+
(
|
69
|
+
NftId poolNftId,
|
70
|
+
IInstance instance
|
71
|
+
) = ContractLib.getAndVerifyPoolForBundle(
|
72
|
+
bundleNftId, getRelease());
|
70
73
|
|
71
|
-
(NftId poolNftId, IInstance instance) = PoolLib.getAndVerifyActivePool(getRegistry(), msg.sender);
|
72
74
|
InstanceReader instanceReader = instance.getInstanceReader();
|
73
75
|
IBundle.BundleInfo memory bundleInfo = instanceReader.getBundleInfo(bundleNftId);
|
74
76
|
if(bundleInfo.poolNftId.eqz()) {
|
@@ -97,7 +99,10 @@ contract BundleService is
|
|
97
99
|
restricted()
|
98
100
|
returns(NftId bundleNftId)
|
99
101
|
{
|
100
|
-
(
|
102
|
+
(
|
103
|
+
NftId poolNftId,
|
104
|
+
IInstance instance
|
105
|
+
) = ContractLib.getAndVerifyPool(getRelease());
|
101
106
|
|
102
107
|
// register bundle with registry
|
103
108
|
bundleNftId = _registryService.registerBundle(
|
@@ -105,11 +110,11 @@ contract BundleService is
|
|
105
110
|
NftIdLib.zero(),
|
106
111
|
poolNftId,
|
107
112
|
BUNDLE(),
|
113
|
+
getRelease(),
|
108
114
|
false, // intercepting property for bundles is defined on pool
|
109
|
-
address(0),
|
110
|
-
|
111
|
-
|
112
|
-
)
|
115
|
+
address(0)),
|
116
|
+
owner,
|
117
|
+
"" // bundle data to be stored in registry
|
113
118
|
);
|
114
119
|
|
115
120
|
// create bundle info in instance
|
@@ -191,9 +196,8 @@ contract BundleService is
|
|
191
196
|
restricted()
|
192
197
|
{
|
193
198
|
// checks
|
194
|
-
|
195
|
-
|
196
|
-
(, IInstance instance) = PoolLib.getAndVerifyActivePool(getRegistry(), msg.sender);
|
199
|
+
(, IInstance instance) = ContractLib.getAndVerifyPoolForBundle(
|
200
|
+
bundleNftId, getRelease());
|
197
201
|
|
198
202
|
// effects
|
199
203
|
// update set of active bundles
|
@@ -331,9 +335,12 @@ contract BundleService is
|
|
331
335
|
returns (Timestamp extendedExpiredAt)
|
332
336
|
{
|
333
337
|
// checks
|
334
|
-
|
338
|
+
(
|
339
|
+
NftId poolNftId,
|
340
|
+
IInstance instance
|
341
|
+
) = ContractLib.getAndVerifyPoolForBundle(
|
342
|
+
bundleNftId, getRelease());
|
335
343
|
|
336
|
-
(NftId poolNftId, IInstance instance) = PoolLib.getAndVerifyActivePool(getRegistry(), msg.sender);
|
337
344
|
IBundle.BundleInfo memory bundleInfo = instance.getInstanceReader().getBundleInfo(bundleNftId);
|
338
345
|
StateId bundleState = instance.getInstanceReader().getBundleState(bundleNftId);
|
339
346
|
|
@@ -379,7 +386,6 @@ contract BundleService is
|
|
379
386
|
emit LogBundleServiceCollateralReleased(bundleNftId, policyNftId, collateralAmount);
|
380
387
|
}
|
381
388
|
|
382
|
-
|
383
389
|
function _getDomain() internal pure override returns(ObjectType) {
|
384
390
|
return BUNDLE();
|
385
391
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {
|
4
|
+
import {IUpgradeable} from "../upgradeability/IUpgradeable.sol";
|
5
5
|
import {ProxyManager} from "../upgradeability/ProxyManager.sol";
|
6
6
|
import {BundleService} from "./BundleService.sol";
|
7
7
|
|
@@ -11,20 +11,18 @@ contract BundleServiceManager is ProxyManager {
|
|
11
11
|
|
12
12
|
/// @dev initializes proxy manager with pool service implementation
|
13
13
|
constructor(
|
14
|
-
address authority,
|
15
|
-
address registry,
|
14
|
+
address authority,
|
16
15
|
bytes32 salt
|
17
16
|
)
|
18
17
|
{
|
19
18
|
BundleService svc = new BundleService{salt: salt}();
|
20
|
-
bytes memory data = abi.encode(authority
|
21
|
-
|
22
|
-
registry,
|
19
|
+
bytes memory data = abi.encode(authority);
|
20
|
+
IUpgradeable upgradeable = initialize(
|
23
21
|
address(svc),
|
24
22
|
data,
|
25
23
|
salt);
|
26
24
|
|
27
|
-
_bundleService = BundleService(address(
|
25
|
+
_bundleService = BundleService(address(upgradeable));
|
28
26
|
}
|
29
27
|
|
30
28
|
//--- view functions ----------------------------------------------------//
|
@@ -18,15 +18,14 @@ interface IPoolService is IService {
|
|
18
18
|
event LogPoolServiceWalletFunded(NftId poolNftId, address poolOwner, Amount amount);
|
19
19
|
event LogPoolServiceWalletDefunded(NftId poolNftId, address poolOwner, Amount amount);
|
20
20
|
|
21
|
-
event
|
22
|
-
event LogPoolServiceBundleClosed(NftId instanceNftId, NftId poolNftId, NftId bundleNftId);
|
21
|
+
event LogPoolServiceBundleClosed(NftId poolNftId, NftId bundleNftId);
|
23
22
|
|
24
|
-
event LogPoolServiceBundleStaked(NftId
|
25
|
-
event LogPoolServiceBundleUnstaked(NftId
|
23
|
+
event LogPoolServiceBundleStaked(NftId poolNftId, NftId bundleNftId, Amount amount, Amount netAmount);
|
24
|
+
event LogPoolServiceBundleUnstaked(NftId poolNftId, NftId bundleNftId, Amount amount, Amount netAmount);
|
26
25
|
|
27
|
-
event LogPoolServiceFeesWithdrawn(NftId bundleNftId, address recipient, address tokenAddress, Amount amount);
|
26
|
+
event LogPoolServiceFeesWithdrawn(NftId poolNftId, NftId bundleNftId, address recipient, address tokenAddress, Amount amount);
|
28
27
|
|
29
|
-
event LogPoolServiceProcessFundedClaim(NftId policyNftId, ClaimId claimId, Amount availableAmount);
|
28
|
+
event LogPoolServiceProcessFundedClaim(NftId poolNftId, NftId policyNftId, ClaimId claimId, Amount availableAmount);
|
30
29
|
|
31
30
|
event LogPoolServiceApplicationVerified(NftId poolNftId, NftId bundleNftId, NftId applicationNftId, Amount totalCollateralAmount);
|
32
31
|
event LogPoolServiceCollateralLocked(NftId poolNftId, NftId bundleNftId, NftId applicationNftId, Amount totalCollateralAmount, Amount lockedCollateralAmount);
|
package/contracts/pool/Pool.sol
CHANGED
@@ -35,7 +35,7 @@ abstract contract Pool is
|
|
35
35
|
|
36
36
|
|
37
37
|
modifier onlyBundleOwner(NftId bundleNftId) {
|
38
|
-
if(msg.sender !=
|
38
|
+
if(msg.sender != _getRegistry().ownerOf(bundleNftId)) {
|
39
39
|
revert ErrorPoolNotBundleOwner(bundleNftId, msg.sender);
|
40
40
|
}
|
41
41
|
_;
|
@@ -124,7 +124,6 @@ abstract contract Pool is
|
|
124
124
|
// Internals
|
125
125
|
|
126
126
|
function __Pool_init(
|
127
|
-
address registry,
|
128
127
|
NftId productNftId,
|
129
128
|
string memory name,
|
130
129
|
IComponents.PoolInfo memory poolInfo,
|
@@ -136,7 +135,6 @@ abstract contract Pool is
|
|
136
135
|
onlyInitializing()
|
137
136
|
{
|
138
137
|
__InstanceLinkedComponent_init(
|
139
|
-
registry,
|
140
138
|
productNftId,
|
141
139
|
name,
|
142
140
|
POOL(),
|
@@ -18,6 +18,7 @@ import {ObjectType, BUNDLE, POOL} from "../type/ObjectType.sol";
|
|
18
18
|
import {PayoutId} from "../type/PayoutId.sol";
|
19
19
|
import {TokenHandler} from "../shared/TokenHandler.sol";
|
20
20
|
import {UFixed} from "../type/UFixed.sol";
|
21
|
+
import {VersionPart} from "../type/Version.sol";
|
21
22
|
|
22
23
|
library PoolLib {
|
23
24
|
|
@@ -76,7 +77,6 @@ library PoolLib {
|
|
76
77
|
|
77
78
|
|
78
79
|
function calculateStakingAmounts(
|
79
|
-
IRegistry registry,
|
80
80
|
InstanceReader instanceReader,
|
81
81
|
NftId poolNftId,
|
82
82
|
Amount stakingAmount
|
@@ -88,7 +88,7 @@ library PoolLib {
|
|
88
88
|
Amount netStakingAmount
|
89
89
|
)
|
90
90
|
{
|
91
|
-
NftId productNftId =
|
91
|
+
NftId productNftId = ContractLib.getRegistry().getParentNftId(poolNftId);
|
92
92
|
Fee memory stakingFee = instanceReader.getFeeInfo(productNftId).stakingFee;
|
93
93
|
(
|
94
94
|
feeAmount,
|
@@ -100,7 +100,6 @@ library PoolLib {
|
|
100
100
|
|
101
101
|
|
102
102
|
function calculatePayoutAmounts(
|
103
|
-
IRegistry registry,
|
104
103
|
InstanceReader instanceReader,
|
105
104
|
NftId productNftId,
|
106
105
|
NftId policyNftId,
|
@@ -121,7 +120,7 @@ library PoolLib {
|
|
121
120
|
netPayoutAmount = payoutAmount;
|
122
121
|
|
123
122
|
if (payoutBeneficiary == address(0)) {
|
124
|
-
beneficiary =
|
123
|
+
beneficiary = ContractLib.getRegistry().ownerOf(policyNftId);
|
125
124
|
} else {
|
126
125
|
beneficiary = payoutBeneficiary;
|
127
126
|
}
|
@@ -136,14 +135,13 @@ library PoolLib {
|
|
136
135
|
|
137
136
|
|
138
137
|
function getPolicyHolder(
|
139
|
-
IRegistry registry,
|
140
138
|
NftId policyNftId
|
141
139
|
)
|
142
140
|
internal
|
143
141
|
view
|
144
142
|
returns (IPolicyHolder policyHolder)
|
145
143
|
{
|
146
|
-
address policyHolderAddress =
|
144
|
+
address policyHolderAddress = ContractLib.getRegistry().ownerOf(policyNftId);
|
147
145
|
policyHolder = IPolicyHolder(policyHolderAddress);
|
148
146
|
|
149
147
|
if (!ContractLib.isPolicyHolder(policyHolderAddress)) {
|
@@ -151,99 +149,7 @@ library PoolLib {
|
|
151
149
|
}
|
152
150
|
}
|
153
151
|
|
154
|
-
|
155
|
-
function checkAndGetPoolInfo(
|
156
|
-
IRegistry registry,
|
157
|
-
address sender,
|
158
|
-
NftId bundleNftId
|
159
|
-
)
|
160
|
-
public
|
161
|
-
view
|
162
|
-
returns (
|
163
|
-
InstanceReader instanceReader,
|
164
|
-
InstanceStore instanceStore,
|
165
|
-
NftId instanceNftId,
|
166
|
-
NftId poolNftId,
|
167
|
-
IComponents.PoolInfo memory poolInfo
|
168
|
-
)
|
169
|
-
{
|
170
|
-
checkNftType(registry, bundleNftId, BUNDLE());
|
171
|
-
|
172
|
-
IInstance instance;
|
173
|
-
(poolNftId, instance) = getAndVerifyActivePool(registry, sender);
|
174
|
-
instanceReader = instance.getInstanceReader();
|
175
|
-
instanceStore = instance.getInstanceStore();
|
176
|
-
instanceNftId = instance.getNftId();
|
177
|
-
poolInfo = instanceReader.getPoolInfo(poolNftId);
|
178
|
-
|
179
|
-
if (registry.getParentNftId(bundleNftId) != poolNftId) {
|
180
|
-
revert IPoolService.ErrorPoolServiceBundlePoolMismatch(bundleNftId, poolNftId);
|
181
|
-
}
|
182
|
-
}
|
183
|
-
|
184
|
-
|
185
|
-
function getAndVerifyActivePool(
|
186
|
-
IRegistry registry,
|
187
|
-
address sender
|
188
|
-
)
|
189
|
-
public
|
190
|
-
view
|
191
|
-
returns (
|
192
|
-
NftId poolNftId,
|
193
|
-
IInstance instance
|
194
|
-
)
|
195
|
-
{
|
196
|
-
(
|
197
|
-
IRegistry.ObjectInfo memory info,
|
198
|
-
address instanceAddress
|
199
|
-
) = ContractLib.getAndVerifyComponent(
|
200
|
-
registry,
|
201
|
-
sender,
|
202
|
-
POOL(),
|
203
|
-
true); // only active pools
|
204
|
-
|
205
|
-
poolNftId = info.nftId;
|
206
|
-
instance = IInstance(instanceAddress);
|
207
|
-
}
|
208
|
-
|
209
|
-
|
210
|
-
function getAndVerifyActiveComponent(
|
211
|
-
IRegistry registry,
|
212
|
-
address sender,
|
213
|
-
ObjectType expectedComponentType
|
214
|
-
)
|
215
|
-
public
|
216
|
-
view
|
217
|
-
returns (
|
218
|
-
NftId componentNftId,
|
219
|
-
IInstance instance
|
220
|
-
)
|
221
|
-
{
|
222
|
-
(
|
223
|
-
IRegistry.ObjectInfo memory info,
|
224
|
-
address instanceAddress
|
225
|
-
) = ContractLib.getAndVerifyComponent(
|
226
|
-
registry,
|
227
|
-
sender,
|
228
|
-
expectedComponentType,
|
229
|
-
true); // only active components
|
230
|
-
|
231
|
-
componentNftId = info.nftId;
|
232
|
-
instance = IInstance(instanceAddress);
|
233
|
-
}
|
234
|
-
|
235
|
-
function checkNftType(
|
236
|
-
IRegistry registry,
|
237
|
-
NftId nftId,
|
238
|
-
ObjectType expectedObjectType
|
239
|
-
) internal view {
|
240
|
-
if(!registry.isObjectType(nftId, expectedObjectType)) {
|
241
|
-
revert INftOwnable.ErrorNftOwnableInvalidType(nftId, expectedObjectType);
|
242
|
-
}
|
243
|
-
}
|
244
|
-
|
245
152
|
function transferTokenAndNotifyPolicyHolder(
|
246
|
-
IRegistry registry,
|
247
153
|
InstanceReader instanceReader,
|
248
154
|
TokenHandler poolTokenHandler,
|
249
155
|
NftId productNftId,
|
@@ -265,7 +171,6 @@ library PoolLib {
|
|
265
171
|
processingFeeAmount,
|
266
172
|
beneficiary
|
267
173
|
) = calculatePayoutAmounts(
|
268
|
-
registry,
|
269
174
|
instanceReader,
|
270
175
|
productNftId,
|
271
176
|
policyNftId,
|
@@ -287,7 +192,6 @@ library PoolLib {
|
|
287
192
|
|
288
193
|
// callback to policy holder if applicable
|
289
194
|
policyHolderPayoutExecuted(
|
290
|
-
registry,
|
291
195
|
policyNftId,
|
292
196
|
payoutId,
|
293
197
|
beneficiary,
|
@@ -295,7 +199,6 @@ library PoolLib {
|
|
295
199
|
}
|
296
200
|
|
297
201
|
function policyHolderPayoutExecuted(
|
298
|
-
IRegistry registry,
|
299
202
|
NftId policyNftId,
|
300
203
|
PayoutId payoutId,
|
301
204
|
address beneficiary,
|
@@ -303,7 +206,7 @@ library PoolLib {
|
|
303
206
|
)
|
304
207
|
private
|
305
208
|
{
|
306
|
-
IPolicyHolder policyHolder = getPolicyHolder(
|
209
|
+
IPolicyHolder policyHolder = getPolicyHolder(policyNftId);
|
307
210
|
if(address(policyHolder) != address(0)) {
|
308
211
|
policyHolder.payoutExecuted(policyNftId, payoutId, payoutAmount, beneficiary);
|
309
212
|
}
|