@etherisc/gif-next 3.0.0-9bc1abd-389 → 3.0.0-9db267a-850
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 +2 -2
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +2 -2
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +2 -2
- 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/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/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 +2 -96
- 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 +0 -94
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +2 -2
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +2 -2
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +0 -94
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- 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 +2 -77
- 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 +2 -77
- 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/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/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 +50 -93
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +2 -2
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +2 -77
- 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 +15 -90
- 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 +2 -2
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
- 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 +2 -96
- 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 +118 -78
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +2 -77
- 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 +2 -77
- 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 +2 -2
- 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 +13 -0
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +16 -0
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +30 -12
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +2 -2
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +2 -2
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +2 -2
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +36 -20
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +11 -11
- 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/RequestSet.sol/RequestSet.dbg.json +4 -0
- package/artifacts/contracts/instance/RequestSet.sol/RequestSet.json +351 -0
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +2 -2
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- 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/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +2 -2
- 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/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +130 -74
- 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 +65 -57
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +68 -60
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +2 -2
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +2 -2
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +0 -75
- 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 +2 -2
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +2 -2
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +0 -75
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +0 -75
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +2 -2
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +2 -2
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +2 -2
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +2 -2
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +2 -2
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +0 -75
- 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 +36 -36
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +19 -19
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +0 -75
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +2 -2
- 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 +2 -2
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +2 -2
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +2 -2
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +0 -75
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +2 -2
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +2 -2
- 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/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- 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 +34 -30
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +2 -2
- 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 +2 -2
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +2 -2
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +2 -2
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +2 -2
- 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 +2 -2
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +0 -75
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +2 -58
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +2 -2
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- 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 +0 -75
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +0 -75
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +0 -56
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +0 -75
- 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/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- 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/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 +0 -75
- 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/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +0 -75
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +0 -212
- 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 +2 -77
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +2 -2
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +2 -2
- 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 +2 -214
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +2 -2
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2 -2
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +2 -2
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -2
- 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/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- 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/Key32Set.sol/LibKey32Set.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- 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/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/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
- package/contracts/distribution/IDistributionComponent.sol +0 -2
- package/contracts/examples/flight/FlightOracle.sol +0 -84
- package/contracts/examples/flight/FlightProduct.sol +2 -2
- package/contracts/examples/flight/FlightProductAuthorization.sol +1 -1
- package/contracts/instance/IInstance.sol +3 -0
- package/contracts/instance/IInstanceService.sol +3 -1
- package/contracts/instance/Instance.sol +7 -0
- package/contracts/instance/InstanceService.sol +59 -37
- package/contracts/instance/RequestSet.sol +47 -0
- package/contracts/instance/base/ObjectSet.sol +8 -0
- package/contracts/instance/base/ObjectSetHelperLib.sol +5 -1
- package/contracts/oracle/IOracleComponent.sol +10 -0
- package/contracts/oracle/Oracle.sol +73 -21
- package/contracts/registry/Registry.sol +4 -2
- package/contracts/registry/RegistryAuthorization.sol +0 -2
- package/contracts/shared/IComponent.sol +0 -4
- package/contracts/shared/IComponentService.sol +0 -2
- package/contracts/shared/InstanceLinkedComponent.sol +1 -1
- package/contracts/staking/IStakingService.sol +0 -9
- package/package.json +1 -1
@@ -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";
|
@@ -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,6 +39,7 @@ 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
|
|
@@ -59,7 +61,7 @@ interface IInstanceService is IService {
|
|
59
61
|
event LogInstanceServiceInstanceLocked(NftId instanceNftId, bool locked);
|
60
62
|
event LogInstanceServiceInstanceCreated(NftId instanceNftId, address instance);
|
61
63
|
event LogInstanceServiceMasterInstanceRegistered(NftId masterInstanceNftId, address masterInstance, address masterInstanceAdmin, address masterAccessManager,
|
62
|
-
address masterInstanceReader, address masterInstanceBundleSet, address masterInstanceRiskSet, address masterInstanceStore, address masterProductStore);
|
64
|
+
address masterInstanceReader, address masterInstanceBundleSet, address masterInstanceRiskSet, address masterInstanceRequestSet, address masterInstanceStore, address masterProductStore);
|
63
65
|
event LogInstanceServiceMasterInstanceReaderUpgraded(NftId instanceNfId, address newInstanceReader);
|
64
66
|
event LogInstanceServiceInstanceReaderUpgraded(NftId instanceNfId, address newInstanceReader);
|
65
67
|
|
@@ -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
|
@@ -333,6 +336,10 @@ contract Instance is
|
|
333
336
|
return _riskSet;
|
334
337
|
}
|
335
338
|
|
339
|
+
function getRequestSet() external view returns (RequestSet) {
|
340
|
+
return _requestSet;
|
341
|
+
}
|
342
|
+
|
336
343
|
function getInstanceAdmin() external view returns (InstanceAdmin) {
|
337
344
|
return _instanceAdmin;
|
338
345
|
}
|
@@ -22,6 +22,7 @@ import {InstanceStore} from "./InstanceStore.sol";
|
|
22
22
|
import {NftId} from "../type/NftId.sol";
|
23
23
|
import {ObjectType, INSTANCE, COMPONENT, INSTANCE, REGISTRY, STAKING} from "../type/ObjectType.sol";
|
24
24
|
import {ProductStore} from "./ProductStore.sol";
|
25
|
+
import {RequestSet} from "./RequestSet.sol";
|
25
26
|
import {RiskSet} from "./RiskSet.sol";
|
26
27
|
import {RoleId} from "../type/RoleId.sol";
|
27
28
|
import {Seconds} from "../type/Seconds.sol";
|
@@ -49,6 +50,7 @@ contract InstanceService is
|
|
49
50
|
address internal _masterInstanceReader;
|
50
51
|
address internal _masterInstanceBundleSet;
|
51
52
|
address internal _masterInstanceRiskSet;
|
53
|
+
address internal _masterInstanceRequestSet;
|
52
54
|
address internal _masterInstanceStore;
|
53
55
|
address internal _masterProductStore;
|
54
56
|
|
@@ -323,49 +325,68 @@ contract InstanceService is
|
|
323
325
|
if(_masterInstanceAdmin != address(0)) { revert ErrorInstanceServiceMasterInstanceAdminAlreadySet(); }
|
324
326
|
if(_masterInstanceBundleSet != address(0)) { revert ErrorInstanceServiceMasterBundleSetAlreadySet(); }
|
325
327
|
if(_masterInstanceRiskSet != address(0)) { revert ErrorInstanceServiceMasterRiskSetAlreadySet(); }
|
328
|
+
if(_masterInstanceRequestSet != address(0)) { revert ErrorInstanceServiceMasterRequestSetAlreadySet(); }
|
326
329
|
if(instanceAddress == address(0)) { revert ErrorInstanceServiceInstanceAddressZero(); }
|
327
330
|
|
328
331
|
{
|
329
332
|
IInstance instance = IInstance(instanceAddress);
|
330
333
|
address accessManagerAddress = instance.authority();
|
331
334
|
InstanceAdmin instanceAdmin = instance.getInstanceAdmin();
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
335
|
+
|
336
|
+
{
|
337
|
+
address instanceAdminAddress = address(instanceAdmin);
|
338
|
+
InstanceReader instanceReader = instance.getInstanceReader();
|
339
|
+
address instanceReaderAddress = address(instanceReader);
|
340
|
+
|
341
|
+
if(accessManagerAddress == address(0)) { revert ErrorInstanceServiceAccessManagerZero(); }
|
342
|
+
if(instanceAdminAddress == address(0)) { revert ErrorInstanceServiceInstanceAdminZero(); }
|
343
|
+
if(instanceReaderAddress == address(0)) { revert ErrorInstanceServiceInstanceReaderZero(); }
|
344
|
+
|
345
|
+
if(instance.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceInstanceAuthorityMismatch(); }
|
346
|
+
if(instanceReader.getInstance() != instance) { revert ErrorInstanceServiceInstanceReaderInstanceMismatch2(); }
|
347
|
+
|
348
|
+
_masterAccessManager = accessManagerAddress;
|
349
|
+
_masterInstanceAdmin = instanceAdminAddress;
|
350
|
+
_masterInstance = instanceAddress;
|
351
|
+
_masterInstanceReader = instanceReaderAddress;
|
352
|
+
}
|
353
|
+
|
354
|
+
{
|
355
|
+
BundleSet bundleSet = instance.getBundleSet();
|
356
|
+
address bundleSetAddress = address(bundleSet);
|
357
|
+
RiskSet riskSet = instance.getRiskSet();
|
358
|
+
address riskSetAddress = address(riskSet);
|
359
|
+
RequestSet requestSet = instance.getRequestSet();
|
360
|
+
address requestSetAddress = address(requestSet);
|
351
361
|
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
|
366
|
-
|
367
|
-
|
368
|
-
|
362
|
+
if(bundleSetAddress == address(0)) { revert ErrorInstanceServiceBundleSetZero(); }
|
363
|
+
if(riskSetAddress == address(0)) { revert ErrorInstanceServiceRiskSetZero(); }
|
364
|
+
if(requestSetAddress == address(0)) { revert ErrorInstanceServiceRequestSetZero(); }
|
365
|
+
if(bundleSet.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceBundleSetAuthorityMismatch(); }
|
366
|
+
if(riskSet.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceRiskSetAuthorityMismatch(); }
|
367
|
+
if(bundleSet.getInstanceAddress() != address(instance)) { revert ErrorInstanceServiceBundleSetInstanceMismatch(); }
|
368
|
+
if(riskSet.getInstanceAddress() != address(instance)) { revert ErrorInstanceServiceRiskSetInstanceMismatch(); }
|
369
|
+
|
370
|
+
_masterInstanceBundleSet = bundleSetAddress;
|
371
|
+
_masterInstanceRiskSet = riskSetAddress;
|
372
|
+
_masterInstanceRequestSet = requestSetAddress;
|
373
|
+
}
|
374
|
+
|
375
|
+
{
|
376
|
+
InstanceStore instanceStore = instance.getInstanceStore();
|
377
|
+
address instanceStoreAddress = address(instanceStore);
|
378
|
+
ProductStore productStore = instance.getProductStore();
|
379
|
+
address productStoreAddress = address(productStore);
|
380
|
+
|
381
|
+
if(instanceStoreAddress == address(0)) { revert ErrorInstanceServiceInstanceStoreZero(); }
|
382
|
+
if(productStoreAddress == address(0)) { revert ErrorInstanceServiceProductStoreZero(); } // TODO: rename exception
|
383
|
+
|
384
|
+
if(instanceStore.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceInstanceStoreAuthorityMismatch(); }
|
385
|
+
if(productStore.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceProductStoreAuthorityMismatch(); }
|
386
|
+
|
387
|
+
_masterInstanceStore = instanceStoreAddress;
|
388
|
+
_masterProductStore = productStoreAddress;
|
389
|
+
}
|
369
390
|
}
|
370
391
|
|
371
392
|
{
|
@@ -375,7 +396,7 @@ contract InstanceService is
|
|
375
396
|
|
376
397
|
emit LogInstanceServiceMasterInstanceRegistered(
|
377
398
|
masterInstanceNftId, _masterInstance, _masterInstanceAdmin, _masterAccessManager,
|
378
|
-
_masterInstanceReader, _masterInstanceBundleSet, _masterInstanceRiskSet, _masterInstanceStore, _masterProductStore);
|
399
|
+
_masterInstanceReader, _masterInstanceBundleSet, _masterInstanceRiskSet, _masterInstanceRequestSet, _masterInstanceStore, _masterProductStore);
|
379
400
|
}
|
380
401
|
}
|
381
402
|
|
@@ -447,6 +468,7 @@ contract InstanceService is
|
|
447
468
|
productStore: ProductStore(Clones.clone(address(_masterProductStore))),
|
448
469
|
bundleSet: BundleSet(Clones.clone(_masterInstanceBundleSet)),
|
449
470
|
riskSet: RiskSet(Clones.clone(_masterInstanceRiskSet)),
|
471
|
+
requestSet: RequestSet(Clones.clone(address(_masterInstanceRequestSet))),
|
450
472
|
instanceReader: InstanceReader(Clones.clone(address(_masterInstanceReader)))
|
451
473
|
}),
|
452
474
|
getRegistry(),
|
@@ -0,0 +1,47 @@
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
2
|
+
pragma solidity ^0.8.20;
|
3
|
+
|
4
|
+
import {IComponents} from "./module/IComponents.sol";
|
5
|
+
|
6
|
+
import {Key32} from "../type/Key32.sol";
|
7
|
+
import {LibNftIdSet} from "../type/NftIdSet.sol";
|
8
|
+
import {LibRequestIdSet} from "../type/RequestIdSet.sol";
|
9
|
+
import {NftId} from "../type/NftId.sol";
|
10
|
+
import {ObjectSet} from "./base/ObjectSet.sol";
|
11
|
+
import {ObjectSetHelperLib} from "./base/ObjectSetHelperLib.sol";
|
12
|
+
import {RequestId} from "../type/RequestId.sol";
|
13
|
+
|
14
|
+
contract RequestSet is
|
15
|
+
ObjectSet
|
16
|
+
{
|
17
|
+
using LibNftIdSet for LibNftIdSet.Set;
|
18
|
+
using LibRequestIdSet for LibRequestIdSet.Set;
|
19
|
+
|
20
|
+
event LogRequestSetRequestAdded(NftId indexed oracleNftId, RequestId indexed requestId);
|
21
|
+
event LogRequestSetRequestRemoved(NftId indexed oracleNftId, RequestId indexed requestId);
|
22
|
+
|
23
|
+
error ErrorRequestSetOracleNotRegistered(NftId oracleNftId);
|
24
|
+
|
25
|
+
/// @dev add a new request to a oracle registerd with this instance
|
26
|
+
// the corresponding oracles existence is checked via instance reader
|
27
|
+
function add(NftId oracleNftId, RequestId requestId) external restricted() {
|
28
|
+
IComponents.ComponentInfo memory componentInfo = ObjectSetHelperLib.getComponentInfo(_instanceAddress, oracleNftId);
|
29
|
+
|
30
|
+
// ensure pool is registered with instance
|
31
|
+
if (bytes(componentInfo.name).length == 0) {
|
32
|
+
revert ErrorRequestSetOracleNotRegistered(oracleNftId);
|
33
|
+
}
|
34
|
+
|
35
|
+
_add(oracleNftId, _toRequestKey32(requestId));
|
36
|
+
emit LogRequestSetRequestAdded(oracleNftId, requestId);
|
37
|
+
}
|
38
|
+
|
39
|
+
function remove(NftId oracleNftId, RequestId requestId) external restricted() {
|
40
|
+
_remove(oracleNftId, _toRequestKey32(requestId));
|
41
|
+
emit LogRequestSetRequestRemoved(oracleNftId, requestId);
|
42
|
+
}
|
43
|
+
|
44
|
+
function _toRequestKey32(RequestId requestId) private pure returns (Key32) {
|
45
|
+
return requestId.toKey32();
|
46
|
+
}
|
47
|
+
}
|
@@ -43,6 +43,14 @@ contract ObjectSet is
|
|
43
43
|
activeSet.add(key);
|
44
44
|
}
|
45
45
|
|
46
|
+
function _remove(NftId componentNftId, Key32 key) internal {
|
47
|
+
LibKey32Set.Set storage allSet = _allObjects[componentNftId];
|
48
|
+
LibKey32Set.Set storage activeSet = _activeObjects[componentNftId];
|
49
|
+
|
50
|
+
allSet.remove(key);
|
51
|
+
activeSet.remove(key);
|
52
|
+
}
|
53
|
+
|
46
54
|
function _activate(NftId componentNftId, Key32 key) internal {
|
47
55
|
_activeObjects[componentNftId].add(key);
|
48
56
|
}
|
@@ -2,6 +2,7 @@
|
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
4
|
import {IBundle} from "../module/IBundle.sol";
|
5
|
+
import {IComponents} from "../module/IComponents.sol";
|
5
6
|
import {IInstance} from "../IInstance.sol";
|
6
7
|
import {IRisk} from "../module/IRisk.sol";
|
7
8
|
import {NftId} from "../../type/NftId.sol";
|
@@ -11,7 +12,6 @@ import {RiskId} from "../../type/RiskId.sol";
|
|
11
12
|
library ObjectSetHelperLib {
|
12
13
|
|
13
14
|
function getRiskInfo(address instanceAddress, RiskId riskId) public view returns (IRisk.RiskInfo memory) {
|
14
|
-
|
15
15
|
return IInstance(instanceAddress).getInstanceReader().getRiskInfo(riskId);
|
16
16
|
}
|
17
17
|
|
@@ -27,4 +27,8 @@ library ObjectSetHelperLib {
|
|
27
27
|
return getBundleInfo(instanceAddress, bundleNftId).poolNftId;
|
28
28
|
}
|
29
29
|
|
30
|
+
function getComponentInfo(address instanceAddress, NftId componentNftId) public view returns (IComponents.ComponentInfo memory) {
|
31
|
+
return IInstance(instanceAddress).getInstanceReader().getComponentInfo(componentNftId);
|
32
|
+
}
|
33
|
+
|
30
34
|
}
|
@@ -13,6 +13,10 @@ import {Timestamp} from "../type/Timestamp.sol";
|
|
13
13
|
interface IOracleComponent is IInstanceLinkedComponent {
|
14
14
|
error ErrorOracleNotImplemented(string methodName);
|
15
15
|
|
16
|
+
event LogOracleRequestReceived(RequestId indexed requestId, NftId indexed requesterId);
|
17
|
+
event LogOracleRequestCancelled(RequestId indexed requestId);
|
18
|
+
|
19
|
+
|
16
20
|
/// @dev callback method for requesting some data from the oracle
|
17
21
|
function request(
|
18
22
|
RequestId requestId,
|
@@ -30,4 +34,10 @@ interface IOracleComponent is IInstanceLinkedComponent {
|
|
30
34
|
|
31
35
|
/// @dev returns true iff the component needs to be called when selling/renewing policis
|
32
36
|
function isVerifying() external view returns (bool verifying);
|
37
|
+
|
38
|
+
function activeRequests() external view returns(uint256 numberOfRequests);
|
39
|
+
|
40
|
+
function getActiveRequest(uint256 idx) external view returns(RequestId requestId);
|
41
|
+
|
42
|
+
function isActiveRequest(RequestId requestId) external view returns(bool isActive);
|
33
43
|
}
|
@@ -8,9 +8,11 @@ import {IComponentService} from "../shared/IComponentService.sol";
|
|
8
8
|
import {IInstanceLinkedComponent} from "../shared/IInstanceLinkedComponent.sol";
|
9
9
|
import {IOracleComponent} from "./IOracleComponent.sol";
|
10
10
|
import {IOracleService} from "./IOracleService.sol";
|
11
|
+
import {LibRequestIdSet} from "../type/RequestIdSet.sol";
|
11
12
|
import {NftId} from "../type/NftId.sol";
|
12
13
|
import {InstanceLinkedComponent} from "../shared/InstanceLinkedComponent.sol";
|
13
14
|
import {RequestId} from "../type/RequestId.sol";
|
15
|
+
import {FULFILLED} from "../type/StateId.sol";
|
14
16
|
import {Timestamp} from "../type/Timestamp.sol";
|
15
17
|
|
16
18
|
|
@@ -21,6 +23,10 @@ abstract contract Oracle is
|
|
21
23
|
// keccak256(abi.encode(uint256(keccak256("etherisc.storage.Oracle")) - 1)) & ~bytes32(uint256(0xff));
|
22
24
|
bytes32 public constant ORACLE_STORAGE_LOCATION_V1 = 0xaab7c0ea03d290e56d6c060e0733d3ebcbe647f7694616a2ec52738a64b2f900;
|
23
25
|
|
26
|
+
// TODO decide if this variable should be moved to instance store
|
27
|
+
// if so it need to manage active requests by requestor nft id
|
28
|
+
LibRequestIdSet.Set internal _activeRequests;
|
29
|
+
|
24
30
|
struct OracleStorage {
|
25
31
|
IComponentService _componentService;
|
26
32
|
IOracleService _oracleService;
|
@@ -74,6 +80,33 @@ abstract contract Oracle is
|
|
74
80
|
revert ErrorOracleNotImplemented("withdrawFees");
|
75
81
|
}
|
76
82
|
|
83
|
+
// TODO decide if the code below should be moved to GIF
|
84
|
+
function activeRequests()
|
85
|
+
external
|
86
|
+
view
|
87
|
+
returns(uint256 numberOfRequests)
|
88
|
+
{
|
89
|
+
return LibRequestIdSet.size(_activeRequests);
|
90
|
+
}
|
91
|
+
|
92
|
+
|
93
|
+
// TODO decide if the code below should be moved to GIF
|
94
|
+
function getActiveRequest(uint256 idx)
|
95
|
+
external
|
96
|
+
view
|
97
|
+
returns(RequestId requestId)
|
98
|
+
{
|
99
|
+
return LibRequestIdSet.getElementAt(_activeRequests, idx);
|
100
|
+
}
|
101
|
+
|
102
|
+
// TODO decide if the code below should be moved to GIF
|
103
|
+
function isActiveRequest(RequestId requestId)
|
104
|
+
external
|
105
|
+
view
|
106
|
+
returns(bool isActive)
|
107
|
+
{
|
108
|
+
return LibRequestIdSet.contains(_activeRequests, requestId);
|
109
|
+
}
|
77
110
|
|
78
111
|
function __Oracle_init(
|
79
112
|
address registry,
|
@@ -102,45 +135,64 @@ abstract contract Oracle is
|
|
102
135
|
_registerInterface(type(IOracleComponent).interfaceId);
|
103
136
|
}
|
104
137
|
|
105
|
-
|
106
|
-
///
|
107
|
-
///
|
108
|
-
|
109
|
-
function _request(
|
138
|
+
/// @dev Internal function for handling oracle responses.
|
139
|
+
/// Default implementation sends response back to oracle service.
|
140
|
+
/// Use this function in use case specific external/public functions to handle use case specific response handling.
|
141
|
+
function _respond(
|
110
142
|
RequestId requestId,
|
111
|
-
|
112
|
-
bytes calldata requestData,
|
113
|
-
Timestamp expiryAt
|
143
|
+
bytes memory responseData
|
114
144
|
)
|
115
145
|
internal
|
116
146
|
virtual
|
117
147
|
{
|
148
|
+
_getOracleStorage()._oracleService.respond(requestId, responseData);
|
118
149
|
}
|
119
150
|
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
/// Overwrite this function to implement use case specific cancelling.
|
124
|
-
function _cancel(
|
151
|
+
// TODO decide if the code below should be moved to GIF
|
152
|
+
// check callback result
|
153
|
+
function _updateRequestState(
|
125
154
|
RequestId requestId
|
126
155
|
)
|
127
156
|
internal
|
128
|
-
virtual
|
129
157
|
{
|
158
|
+
bool requestFulfilled = _getInstanceReader().getRequestState(
|
159
|
+
requestId) == FULFILLED();
|
160
|
+
|
161
|
+
// remove from active requests when successful
|
162
|
+
if (requestFulfilled && LibRequestIdSet.contains(_activeRequests, requestId)) {
|
163
|
+
LibRequestIdSet.remove(_activeRequests, requestId);
|
164
|
+
}
|
130
165
|
}
|
131
166
|
|
132
167
|
|
133
|
-
/// @dev
|
134
|
-
///
|
135
|
-
|
136
|
-
function _respond(
|
168
|
+
/// @dev use case specific handling of oracle requests
|
169
|
+
/// for now only log is emitted to verify that request has been received by oracle component
|
170
|
+
function _request(
|
137
171
|
RequestId requestId,
|
138
|
-
|
172
|
+
NftId requesterId,
|
173
|
+
bytes calldata requestData,
|
174
|
+
Timestamp expiryAt
|
139
175
|
)
|
140
176
|
internal
|
141
|
-
virtual
|
177
|
+
virtual
|
142
178
|
{
|
143
|
-
|
179
|
+
// TODO decide if the line below should be moved to GIF
|
180
|
+
LibRequestIdSet.add(_activeRequests, requestId);
|
181
|
+
emit LogOracleRequestReceived(requestId, requesterId);
|
182
|
+
}
|
183
|
+
|
184
|
+
|
185
|
+
/// @dev use case specific handling of oracle requests
|
186
|
+
/// for now only log is emitted to verify that cancelling has been received by oracle component
|
187
|
+
function _cancel(
|
188
|
+
RequestId requestId
|
189
|
+
)
|
190
|
+
internal
|
191
|
+
virtual
|
192
|
+
{
|
193
|
+
// TODO decide if the line below should be moved to GIF
|
194
|
+
LibRequestIdSet.remove(_activeRequests, requestId);
|
195
|
+
emit LogOracleRequestCancelled(requestId);
|
144
196
|
}
|
145
197
|
|
146
198
|
|
@@ -2,7 +2,6 @@
|
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
4
|
import {IERC165} from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
|
5
|
-
import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
|
6
5
|
import {AccessManaged} from "@openzeppelin/contracts/access/manager/AccessManaged.sol";
|
7
6
|
import {Initializable} from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
|
8
7
|
|
@@ -16,7 +15,6 @@ import {IRelease} from "./IRelease.sol";
|
|
16
15
|
import {IRegisterable} from "../shared/IRegisterable.sol";
|
17
16
|
import {IStaking} from "../staking/IStaking.sol";
|
18
17
|
import {ReleaseRegistry} from "./ReleaseRegistry.sol";
|
19
|
-
import {TokenRegistry} from "./TokenRegistry.sol";
|
20
18
|
import {RegistryAdmin} from "./RegistryAdmin.sol";
|
21
19
|
|
22
20
|
/// @dev IMPORTANT
|
@@ -566,6 +564,8 @@ contract Registry is
|
|
566
564
|
initialOwner: NFT_LOCK_ADDRESS,
|
567
565
|
data: ""}),
|
568
566
|
true);
|
567
|
+
|
568
|
+
emit LogRegistryObjectRegistered(protocolNftId, NftIdLib.zero(), PROTOCOL(), false, address(0), NFT_LOCK_ADDRESS);
|
569
569
|
}
|
570
570
|
|
571
571
|
/// @dev register this registry
|
@@ -671,6 +671,8 @@ contract Registry is
|
|
671
671
|
|
672
672
|
// calls nft receiver
|
673
673
|
CHAIN_NFT.mint(info.initialOwner, info.nftId.toInt());
|
674
|
+
|
675
|
+
emit LogRegistryObjectRegistered(info.nftId, info.parentNftId, info.objectType, info.isInterceptor, info.objectAddress, info.initialOwner);
|
674
676
|
}
|
675
677
|
|
676
678
|
function _setAddressForNftId(NftId nftId, address objectAddress)
|
@@ -144,8 +144,6 @@ contract RegistryAuthorization
|
|
144
144
|
_setupStakingThAuthorization();
|
145
145
|
}
|
146
146
|
|
147
|
-
event LogAccessAdminDebug(string message, string custom, uint256 value);
|
148
|
-
|
149
147
|
function _setupRegistryAuthorization() internal {
|
150
148
|
IAccess.FunctionInfo[] storage functions;
|
151
149
|
|
@@ -25,10 +25,6 @@ interface IComponent is
|
|
25
25
|
error ErrorComponentWalletAddressIsSameAsCurrent();
|
26
26
|
error ErrorComponentWalletNotComponent();
|
27
27
|
|
28
|
-
event LogComponentWalletAddressChanged(address oldWallet, address newWallet);
|
29
|
-
event LogComponentWalletTokensTransferred(address from, address to, uint256 amount);
|
30
|
-
event LogComponentTokenHandlerApproved(address tokenHandler, address token, Amount limit, bool isMaxAmount);
|
31
|
-
|
32
28
|
/// @dev returns the name of this component
|
33
29
|
/// to successfully register the component with an instance the name MUST be unique in the linked instance
|
34
30
|
function getName() external view returns (string memory name);
|
@@ -48,8 +48,6 @@ interface IComponentService is
|
|
48
48
|
event LogComponentServiceComponentLocked(address component, bool locked);
|
49
49
|
event LogComponentServiceTokenHandlerDeployed(NftId componentNftId, address tokenHandler, address token);
|
50
50
|
event LogComponentServiceRegistered(NftId instanceNftId, NftId componentNftId, ObjectType componentType, address component, address token, address initialOwner);
|
51
|
-
event LogComponentServiceWalletAddressChanged(NftId componentNftId, address currentWallet, address newWallet);
|
52
|
-
event LogComponentServiceWalletTokensTransferred(NftId componentNftId, address currentWallet, address newWallet, uint256 currentBalance);
|
53
51
|
event LogComponentServiceComponentFeesWithdrawn(NftId componentNftId, address recipient, address token, Amount withdrawnAmount);
|
54
52
|
event LogComponentServiceProductFeesUpdated(NftId productNftId);
|
55
53
|
event LogComponentServiceDistributionFeesUpdated(NftId distributionNftId);
|
@@ -18,20 +18,11 @@ interface IStakingService is IService
|
|
18
18
|
|
19
19
|
event LogStakingServiceProtocolTargetRegistered(NftId protocolNftId);
|
20
20
|
event LogStakingServiceInstanceTargetRegistered(NftId instanceNftId, uint256 chainId, Seconds initialLockingPeriod, UFixed initialRewardRate);
|
21
|
-
event LogStakingServiceLockingPeriodSet(NftId targetNftId, Seconds oldLockingDuration, Seconds lockingDuration);
|
22
|
-
event LogStakingServiceRewardRateSet(NftId targetNftId, UFixed oldRewardRate, UFixed rewardRate);
|
23
21
|
|
24
22
|
event LogStakingServiceRewardReservesIncreased(NftId targetNftId, address rewardProvider, Amount dipAmount, Amount newBalance);
|
25
23
|
event LogStakingServiceRewardReservesDecreased(NftId targetNftId, address targetOwner, Amount dipAmount, Amount newBalance);
|
26
24
|
|
27
25
|
event LogStakingServiceStakeObjectCreated(NftId stakeNftId, NftId targetNftId, address stakeOwner);
|
28
|
-
event LogStakingServiceStakeCreated(NftId stakeNftId, NftId targetNftId, address owner, Amount stakedAmount);
|
29
|
-
event LogStakingServiceStakeIncreased(NftId stakeNftId, address owner, Amount stakedAmount, Amount stakeBalance);
|
30
|
-
event LogStakingServiceUnstaked(NftId stakeNftId, address stakeOwner, Amount totalAmount);
|
31
|
-
event LogStakingServiceStakeRestaked(address stakeOwner, NftId indexed stakeNftId, NftId newStakeNftId, NftId indexed newTargetNftId, Amount indexed newStakeBalance);
|
32
|
-
|
33
|
-
event LogStakingServiceRewardsUpdated(NftId stakeNftId);
|
34
|
-
event LogStakingServiceRewardsClaimed(NftId stakeNftId, address stakeOwner, Amount rewardsClaimedAmount);
|
35
26
|
|
36
27
|
// modifiers
|
37
28
|
error ErrorStakingServiceNotStakingOwner(address account);
|
package/package.json
CHANGED