@etherisc/gif-next 3.0.0-4e7f66e-983 → 3.0.0-4f4b737-760
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +42 -56
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +44 -48
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +14 -20
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +119 -119
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +145 -100
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +42 -29
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +2 -2
- package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +75 -63
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +2 -2
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +20 -114
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +2 -2
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +2 -96
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +187 -114
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +75 -75
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +2 -96
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +113 -40
- package/artifacts/contracts/examples/crop/AccountingToken.sol/AccountingToken.dbg.json +4 -0
- package/artifacts/contracts/examples/crop/AccountingToken.sol/AccountingToken.json +376 -0
- package/artifacts/contracts/examples/crop/CropPool.sol/CropPool.dbg.json +4 -0
- package/artifacts/contracts/examples/crop/CropPool.sol/CropPool.json +1391 -0
- package/artifacts/contracts/examples/crop/CropPoolAuthorization.sol/CropPoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/crop/CropPoolAuthorization.sol/CropPoolAuthorization.json +844 -0
- package/artifacts/contracts/examples/crop/CropProduct.sol/CropProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/crop/CropProduct.sol/CropProduct.json +2433 -0
- package/artifacts/contracts/examples/crop/CropProductAuthorization.sol/CropProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/crop/CropProductAuthorization.sol/CropProductAuthorization.json +891 -0
- package/artifacts/contracts/examples/crop/Location.sol/LocationLib.dbg.json +4 -0
- package/artifacts/contracts/examples/crop/Location.sol/LocationLib.json +199 -0
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +2 -2
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +21 -96
- 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 +49 -129
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +2 -2
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +2 -2
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +372 -73
- package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.json +2 -2
- package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.json +801 -0
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +167 -132
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +82 -35
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +23 -98
- 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 +422 -579
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +83 -36
- package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.json +711 -0
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +2 -2
- package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.json +2 -2
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +28 -122
- 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 +91 -83
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +29 -104
- 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 +25 -100
- 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/BaseStore.sol/BaseStore.json +50 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +59 -72
- package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
- package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.json +50 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +34 -21
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +108 -9
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +51 -33
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +197 -197
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +21 -21
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +176 -34
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +151 -36
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +41 -41
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +171 -121
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +141 -91
- package/artifacts/contracts/instance/RequestSet.sol/RequestSet.dbg.json +4 -0
- package/artifacts/contracts/instance/RequestSet.sol/RequestSet.json +466 -0
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +66 -79
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +9 -9
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +3 -3
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +38 -2
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +85 -77
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +2 -2
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +67 -59
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +19 -13
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +71 -63
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +57 -51
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +50 -50
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +4 -79
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +2 -2
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +90 -85
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +62 -62
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +32 -27
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +4 -79
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +55 -43
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +4 -79
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +4 -9
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +113 -101
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +63 -63
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +37 -37
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +44 -44
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +2 -77
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +2 -2
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +86 -80
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +67 -67
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +11 -11
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +24 -18
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +21 -9
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +2 -2
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +2 -77
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +15 -28
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +81 -69
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +20 -12
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +60 -60
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +34 -34
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +51 -51
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +2 -77
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +37 -50
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +42 -42
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +58 -8
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +30 -24
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +2 -2
- package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +132 -66
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +188 -188
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +2 -27
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +8 -8
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +37 -37
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +205 -205
- 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 +122 -119
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +19 -19
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +20 -20
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +2 -77
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +329 -113
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +61 -61
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +2 -2
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.json +558 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +2 -77
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +271 -55
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +2 -77
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +2 -2
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +2 -2
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.json +2 -2
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +2 -2
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +2 -77
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +4 -4
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +2 -2
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +2 -2
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +39 -66
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +22 -49
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +28 -28
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +91 -147
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +15 -221
- 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 +139 -195
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +2 -7
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +53 -53
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +35 -241
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +40 -40
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +220 -220
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +9 -14
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -7
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +2 -7
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +2 -2
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +2 -2
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +2 -7
- package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
- package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +2 -2
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +23 -4
- package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +2 -2
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +2 -2
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +2 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorLib.json +2 -2
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.json +2 -2
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.json +2 -2
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +2 -2
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +2 -7
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +2 -2
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +22 -22
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +3 -3
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
- package/contracts/accounting/AccountingService.sol +17 -29
- package/contracts/accounting/IAccountingService.sol +7 -8
- package/contracts/authorization/AccessAdmin.sol +16 -33
- package/contracts/authorization/AccessAdminLib.sol +20 -3
- package/contracts/authorization/AccessManagerCloneable.sol +4 -0
- package/contracts/authorization/IAccessAdmin.sol +9 -8
- package/contracts/distribution/DistributionService.sol +24 -19
- package/contracts/distribution/IDistributionComponent.sol +0 -2
- package/contracts/distribution/IDistributionService.sol +8 -7
- package/contracts/examples/crop/AccountingToken.sol +26 -0
- package/contracts/examples/crop/CropPool.sol +89 -0
- package/contracts/examples/crop/CropPoolAuthorization.sol +37 -0
- package/contracts/examples/crop/CropProduct.sol +513 -0
- package/contracts/examples/crop/CropProductAuthorization.sol +69 -0
- package/contracts/examples/crop/Location.sol +50 -0
- package/contracts/examples/flight/FlightLib.sol +106 -80
- package/contracts/examples/flight/FlightNft.sol +234 -0
- package/contracts/examples/flight/FlightOracle.sol +22 -60
- package/contracts/examples/flight/FlightOracleAuthorization.sol +27 -5
- package/contracts/examples/flight/FlightPool.sol +1 -1
- package/contracts/examples/flight/FlightProduct.sol +283 -240
- package/contracts/examples/flight/FlightProductAuthorization.sol +35 -10
- package/contracts/examples/flight/FlightProductManager.sol +49 -0
- package/contracts/instance/BaseStore.sol +4 -0
- package/contracts/instance/BundleSet.sol +7 -8
- package/contracts/instance/IBaseStore.sol +8 -0
- package/contracts/instance/IInstance.sol +10 -7
- package/contracts/instance/IInstanceService.sol +11 -4
- package/contracts/instance/Instance.sol +8 -0
- package/contracts/instance/InstanceAdmin.sol +2 -2
- package/contracts/instance/InstanceAuthorizationV3.sol +15 -1
- package/contracts/instance/InstanceReader.sol +55 -8
- package/contracts/instance/InstanceService.sol +68 -36
- package/contracts/instance/InstanceStore.sol +14 -14
- package/contracts/instance/ProductStore.sol +14 -14
- package/contracts/instance/RequestSet.sol +63 -0
- package/contracts/instance/RiskSet.sol +6 -7
- package/contracts/instance/TargetNames.sol +1 -0
- package/contracts/instance/base/BalanceStore.sol +7 -7
- package/contracts/instance/base/ObjectSet.sol +9 -1
- package/contracts/instance/base/ObjectSetHelperLib.sol +5 -1
- package/contracts/oracle/BasicOracle.sol +1 -0
- package/contracts/oracle/IOracleComponent.sol +10 -0
- package/contracts/oracle/IOracleService.sol +5 -5
- package/contracts/oracle/Oracle.sol +50 -26
- package/contracts/oracle/OracleService.sol +26 -23
- package/contracts/pool/BundleService.sol +3 -3
- package/contracts/pool/IBundleService.sol +9 -10
- package/contracts/pool/IPoolComponent.sol +1 -1
- package/contracts/pool/IPoolService.sol +14 -14
- package/contracts/pool/PoolService.sol +2 -2
- package/contracts/product/ClaimService.sol +1 -1
- package/contracts/product/IApplicationService.sol +8 -8
- package/contracts/product/IClaimService.sol +9 -9
- package/contracts/product/IPolicyService.sol +7 -7
- package/contracts/product/IRiskService.sol +4 -5
- package/contracts/product/PolicyService.sol +1 -1
- package/contracts/product/PolicyServiceLib.sol +5 -3
- package/contracts/product/RiskService.sol +2 -2
- package/contracts/registry/ChainNft.sol +10 -9
- package/contracts/registry/IRegistry.sol +11 -10
- package/contracts/registry/Registry.sol +16 -13
- package/contracts/registry/RegistryAdmin.sol +7 -1
- package/contracts/registry/RegistryAuthorization.sol +0 -2
- package/contracts/registry/ReleaseAdmin.sol +12 -5
- package/contracts/registry/ReleaseRegistry.sol +7 -8
- package/contracts/registry/TokenRegistry.sol +3 -3
- package/contracts/shared/ComponentService.sol +38 -4
- package/contracts/shared/IAuthorizedComponent.sol +15 -0
- package/contracts/shared/IComponent.sol +0 -4
- package/contracts/shared/IComponentService.sol +31 -9
- package/contracts/shared/IInstanceLinkedComponent.sol +2 -5
- package/contracts/shared/INftOwnable.sol +1 -1
- package/contracts/shared/InstanceLinkedComponent.sol +3 -2
- package/contracts/shared/TokenHandler.sol +5 -5
- package/contracts/staking/IStaking.sol +33 -31
- package/contracts/staking/IStakingService.sol +7 -16
- package/contracts/staking/Staking.sol +5 -4
- package/contracts/staking/StakingService.sol +2 -3
- package/contracts/staking/StakingStore.sol +3 -3
- package/contracts/staking/TargetHandler.sol +2 -2
- package/contracts/type/RequestId.sol +6 -0
- package/contracts/upgradeability/ProxyManager.sol +2 -2
- package/package.json +3 -3
@@ -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
|
|
@@ -10,13 +9,13 @@ import {NftId, NftIdLib} from "../type/NftId.sol";
|
|
10
9
|
import {VersionPart, VersionPartLib} from "../type/Version.sol";
|
11
10
|
import {ObjectType, ObjectTypeLib, PROTOCOL, REGISTRY, SERVICE, INSTANCE, STAKE, STAKING, PRODUCT, DISTRIBUTION, DISTRIBUTOR, ORACLE, POOL, POLICY, BUNDLE} from "../type/ObjectType.sol";
|
12
11
|
|
12
|
+
import {ChainId, ChainIdLib} from "../type/ChainId.sol";
|
13
13
|
import {ChainNft} from "./ChainNft.sol";
|
14
14
|
import {IRegistry} from "./IRegistry.sol";
|
15
15
|
import {IRelease} from "./IRelease.sol";
|
16
16
|
import {IRegisterable} from "../shared/IRegisterable.sol";
|
17
17
|
import {IStaking} from "../staking/IStaking.sol";
|
18
18
|
import {ReleaseRegistry} from "./ReleaseRegistry.sol";
|
19
|
-
import {TokenRegistry} from "./TokenRegistry.sol";
|
20
19
|
import {RegistryAdmin} from "./RegistryAdmin.sol";
|
21
20
|
|
22
21
|
/// @dev IMPORTANT
|
@@ -65,8 +64,8 @@ contract Registry is
|
|
65
64
|
string public constant EMPTY_URI = "";
|
66
65
|
|
67
66
|
/// @dev keep track of different registries on different chains
|
68
|
-
mapping(
|
69
|
-
|
67
|
+
mapping(ChainId chainId => NftId registryNftId) private _registryNftIdByChainId;
|
68
|
+
ChainId[] private _chainId;
|
70
69
|
|
71
70
|
/// @dev keep track of object info and address reverse lookup
|
72
71
|
mapping(NftId nftId => ObjectInfo info) private _info;
|
@@ -145,7 +144,7 @@ contract Registry is
|
|
145
144
|
/// @inheritdoc IRegistry
|
146
145
|
function registerRegistry(
|
147
146
|
NftId nftId,
|
148
|
-
|
147
|
+
ChainId chainId,
|
149
148
|
address registryAddress
|
150
149
|
)
|
151
150
|
external
|
@@ -153,11 +152,11 @@ contract Registry is
|
|
153
152
|
{
|
154
153
|
// registration of chain registries only allowed on mainnet
|
155
154
|
if (block.chainid != 1) {
|
156
|
-
revert ErrorRegistryNotOnMainnet(block.chainid);
|
155
|
+
revert ErrorRegistryNotOnMainnet(ChainIdLib.toChainId(block.chainid));
|
157
156
|
}
|
158
157
|
|
159
158
|
// registry chain id is not zero
|
160
|
-
if(chainId
|
159
|
+
if(chainId.eqz()) {
|
161
160
|
revert ErrorRegistryChainRegistryChainIdZero(nftId);
|
162
161
|
}
|
163
162
|
|
@@ -231,7 +230,7 @@ contract Registry is
|
|
231
230
|
|
232
231
|
_service[version][domain] = service;
|
233
232
|
|
234
|
-
emit LogRegistryServiceRegistered(version, domain);
|
233
|
+
emit LogRegistryServiceRegistered(info.nftId,version, domain);
|
235
234
|
|
236
235
|
nftId = _register(info);
|
237
236
|
}
|
@@ -322,11 +321,11 @@ contract Registry is
|
|
322
321
|
return _chainId.length;
|
323
322
|
}
|
324
323
|
|
325
|
-
function getChainId(uint256 idx) public view returns (
|
324
|
+
function getChainId(uint256 idx) public view returns (ChainId) {
|
326
325
|
return _chainId[idx];
|
327
326
|
}
|
328
327
|
|
329
|
-
function getRegistryNftId(
|
328
|
+
function getRegistryNftId(ChainId chainId) public view returns (NftId nftId) {
|
330
329
|
return _registryNftIdByChainId[chainId];
|
331
330
|
}
|
332
331
|
|
@@ -566,6 +565,8 @@ contract Registry is
|
|
566
565
|
initialOwner: NFT_LOCK_ADDRESS,
|
567
566
|
data: ""}),
|
568
567
|
true);
|
568
|
+
|
569
|
+
emit LogRegistryObjectRegistered(protocolNftId, NftIdLib.zero(), PROTOCOL(), false, address(0), NFT_LOCK_ADDRESS);
|
569
570
|
}
|
570
571
|
|
571
572
|
/// @dev register this registry
|
@@ -579,7 +580,7 @@ contract Registry is
|
|
579
580
|
|
580
581
|
// register global registry
|
581
582
|
_registerRegistryForNft(
|
582
|
-
1, // mainnet chain id
|
583
|
+
ChainIdLib.toChainId(1), // mainnet chain id
|
583
584
|
ObjectInfo({
|
584
585
|
nftId: GLOBAL_REGISTRY_NFT_ID,
|
585
586
|
parentNftId: PROTOCOL_NFT_ID,
|
@@ -598,7 +599,7 @@ contract Registry is
|
|
598
599
|
CHAIN_NFT.calculateTokenId(REGISTRY_TOKEN_SEQUENCE_ID));
|
599
600
|
|
600
601
|
_registerRegistryForNft(
|
601
|
-
block.chainid,
|
602
|
+
ChainIdLib.toChainId(block.chainid),
|
602
603
|
ObjectInfo({
|
603
604
|
nftId: registryNftId,
|
604
605
|
parentNftId: GLOBAL_REGISTRY_NFT_ID,
|
@@ -613,7 +614,7 @@ contract Registry is
|
|
613
614
|
|
614
615
|
/// @dev staking registration
|
615
616
|
function _registerRegistryForNft(
|
616
|
-
|
617
|
+
ChainId chainId,
|
617
618
|
ObjectInfo memory info,
|
618
619
|
bool updateAddressLookup
|
619
620
|
)
|
@@ -671,6 +672,8 @@ contract Registry is
|
|
671
672
|
|
672
673
|
// calls nft receiver
|
673
674
|
CHAIN_NFT.mint(info.initialOwner, info.nftId.toInt());
|
675
|
+
|
676
|
+
emit LogRegistryObjectRegistered(info.nftId, info.parentNftId, info.objectType, info.isInterceptor, info.objectAddress, info.initialOwner);
|
674
677
|
}
|
675
678
|
|
676
679
|
function _setAddressForNftId(NftId nftId, address objectAddress)
|
@@ -85,7 +85,13 @@ contract RegistryAdmin is
|
|
85
85
|
registry,
|
86
86
|
release);
|
87
87
|
|
88
|
-
|
88
|
+
AccessAdminLib.checkAuthorization(
|
89
|
+
address(_authorization),
|
90
|
+
authorization,
|
91
|
+
REGISTRY(),
|
92
|
+
release,
|
93
|
+
false, // expectServiceAuthorization
|
94
|
+
false); // checkAlreadyInitialized);
|
89
95
|
|
90
96
|
_registry = registry;
|
91
97
|
_authorization = IAuthorization(authorization);
|
@@ -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
|
|
@@ -21,8 +21,8 @@ import {VersionPart} from "../type/Version.sol";
|
|
21
21
|
contract ReleaseAdmin is
|
22
22
|
AccessAdmin
|
23
23
|
{
|
24
|
-
event
|
25
|
-
event
|
24
|
+
event LogReleaseAdminReleaseLocked(VersionPart indexed release, bool indexed locked);
|
25
|
+
event LogReleaseAdminServiceLocked(VersionPart indexed release, address indexed service, bool indexed locked);
|
26
26
|
|
27
27
|
error ErrorReleaseAdminCallerNotReleaseRegistry(address caller);
|
28
28
|
error ErrorReleaseAdminNotService(address notService);
|
@@ -72,7 +72,14 @@ contract ReleaseAdmin is
|
|
72
72
|
release);
|
73
73
|
|
74
74
|
IServiceAuthorization serviceAuthorization = IServiceAuthorization(authorization);
|
75
|
-
|
75
|
+
AccessAdminLib.checkAuthorization(
|
76
|
+
address(_authorization),
|
77
|
+
address(serviceAuthorization),
|
78
|
+
RELEASE(),
|
79
|
+
release,
|
80
|
+
true, // expectServiceAuthorization
|
81
|
+
true); // checkAlreadyInitialized);
|
82
|
+
|
76
83
|
_serviceAuthorization = serviceAuthorization;
|
77
84
|
|
78
85
|
// link nft ownability to registry
|
@@ -130,7 +137,7 @@ contract ReleaseAdmin is
|
|
130
137
|
// effects
|
131
138
|
accessManager.setLocked(locked);
|
132
139
|
|
133
|
-
emit
|
140
|
+
emit LogReleaseAdminReleaseLocked(getRelease(), locked);
|
134
141
|
}
|
135
142
|
|
136
143
|
|
@@ -148,7 +155,7 @@ contract ReleaseAdmin is
|
|
148
155
|
|
149
156
|
_setTargetLocked(address(service), locked);
|
150
157
|
|
151
|
-
emit
|
158
|
+
emit LogReleaseAdminServiceLocked(service.getRelease(), address(service), locked);
|
152
159
|
}
|
153
160
|
|
154
161
|
//--- private functions -------------------------------------------------//
|
@@ -38,10 +38,9 @@ contract ReleaseRegistry is
|
|
38
38
|
{
|
39
39
|
uint256 public constant INITIAL_GIF_VERSION = 3;// first active release version
|
40
40
|
|
41
|
-
event
|
42
|
-
event
|
43
|
-
event
|
44
|
-
event LogReleaseEnabled(VersionPart release);
|
41
|
+
event LogReleaseCreated(address indexed releaseAdmin, VersionPart indexed release, bytes32 indexed salt);
|
42
|
+
event LogReleaseActivated(VersionPart indexed release);
|
43
|
+
event LogReleaseEnabled(VersionPart indexed release, bool indexed active);
|
45
44
|
|
46
45
|
// constructor
|
47
46
|
error ErrorReleaseRegistryNotRegistry(Registry registry);
|
@@ -168,7 +167,7 @@ contract ReleaseRegistry is
|
|
168
167
|
_releaseInfo[releaseVersion].auth = serviceAuthorization;
|
169
168
|
_releaseInfo[releaseVersion].releaseAdmin = address(releaseAdmin);
|
170
169
|
|
171
|
-
emit
|
170
|
+
emit LogReleaseCreated(address(releaseAdmin), releaseVersion, releaseSalt);
|
172
171
|
}
|
173
172
|
|
174
173
|
function registerService(IService service)
|
@@ -270,7 +269,7 @@ contract ReleaseRegistry is
|
|
270
269
|
|
271
270
|
_setReleaseLocked(release, false);
|
272
271
|
|
273
|
-
emit
|
272
|
+
emit LogReleaseActivated(release);
|
274
273
|
}
|
275
274
|
|
276
275
|
/// @dev stop/resume operations with restricted functions
|
@@ -284,12 +283,12 @@ contract ReleaseRegistry is
|
|
284
283
|
checkTransition(state, RELEASE(), PAUSED(), ACTIVE());
|
285
284
|
_releaseInfo[release].state = ACTIVE();
|
286
285
|
_releaseInfo[release].disabledAt = TimestampLib.max();
|
287
|
-
emit LogReleaseEnabled(release);
|
286
|
+
emit LogReleaseEnabled(release, true);
|
288
287
|
} else {
|
289
288
|
checkTransition(state, RELEASE(), ACTIVE(), PAUSED());
|
290
289
|
_releaseInfo[release].state = PAUSED();
|
291
290
|
_releaseInfo[release].disabledAt = TimestampLib.current();
|
292
|
-
emit
|
291
|
+
emit LogReleaseEnabled(release, false);
|
293
292
|
}
|
294
293
|
|
295
294
|
_setReleaseLocked(release, !active);
|
@@ -18,9 +18,9 @@ contract TokenRegistry is
|
|
18
18
|
AccessManaged,
|
19
19
|
IRegistryLinked
|
20
20
|
{
|
21
|
-
event LogTokenRegistryTokenRegistered(ChainId chainId, address token, uint256 decimals, string symbol);
|
22
|
-
event LogTokenRegistryTokenGlobalStateSet(ChainId chainId, address token, bool active);
|
23
|
-
event LogTokenRegistryTokenStateSet(ChainId chainId, address token, VersionPart release, bool active);
|
21
|
+
event LogTokenRegistryTokenRegistered(ChainId indexed chainId, address indexed token, uint256 decimals, string symbol);
|
22
|
+
event LogTokenRegistryTokenGlobalStateSet(ChainId indexed chainId, address indexed token, bool indexed active);
|
23
|
+
event LogTokenRegistryTokenStateSet(ChainId indexed chainId, address indexed token, VersionPart indexed release, bool active);
|
24
24
|
|
25
25
|
error ErrorTokenRegistryChainIdZero();
|
26
26
|
error ErrorTokenRegistryTokenAddressZero();
|
@@ -189,8 +189,8 @@ contract ComponentService is
|
|
189
189
|
emit LogComponentServiceComponentFeesWithdrawn(
|
190
190
|
componentNftId,
|
191
191
|
componentOwner,
|
192
|
-
|
193
|
-
|
192
|
+
withdrawnAmount,
|
193
|
+
address(tokenHandler.TOKEN()));
|
194
194
|
|
195
195
|
// interactions
|
196
196
|
// transfer amount to component owner
|
@@ -312,9 +312,27 @@ contract ComponentService is
|
|
312
312
|
productNftId,
|
313
313
|
initialProductInfo);
|
314
314
|
|
315
|
+
emit LogComponentServiceProductCreated(productNftId, productAddress, initialProductInfo.hasDistribution, initialProductInfo.expectedNumberOfOracles);
|
316
|
+
|
317
|
+
IComponents.FeeInfo memory initialFeeInfo = product.getInitialFeeInfo();
|
318
|
+
|
315
319
|
productStore.createFee(
|
316
320
|
productNftId,
|
317
|
-
|
321
|
+
initialFeeInfo);
|
322
|
+
|
323
|
+
emit LogComponentServiceProductInitialProductFeesSet(
|
324
|
+
productNftId,
|
325
|
+
initialFeeInfo.productFee.fixedFee, initialFeeInfo.productFee.fractionalFee,
|
326
|
+
initialFeeInfo.processingFee.fixedFee, initialFeeInfo.processingFee.fractionalFee);
|
327
|
+
emit LogComponentServiceProductInitialDistributionFeesSet(
|
328
|
+
productNftId,
|
329
|
+
initialFeeInfo.distributionFee.fixedFee, initialFeeInfo.distributionFee.fractionalFee,
|
330
|
+
initialFeeInfo.minDistributionOwnerFee.fixedFee, initialFeeInfo.minDistributionOwnerFee.fractionalFee);
|
331
|
+
emit LogComponentServiceProductInitialPoolFeesSet(
|
332
|
+
productNftId,
|
333
|
+
initialFeeInfo.poolFee.fixedFee, initialFeeInfo.poolFee.fractionalFee,
|
334
|
+
initialFeeInfo.stakingFee.fixedFee, initialFeeInfo.stakingFee.fractionalFee,
|
335
|
+
initialFeeInfo.performanceFee.fixedFee, initialFeeInfo.performanceFee.fractionalFee);
|
318
336
|
}
|
319
337
|
|
320
338
|
//-------- distribution -------------------------------------------------//
|
@@ -341,6 +359,8 @@ contract ComponentService is
|
|
341
359
|
// set distribution in product info
|
342
360
|
productInfo.distributionNftId = distributionNftId;
|
343
361
|
productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
|
362
|
+
|
363
|
+
emit LogComponentServiceDistributionCreated(distributionNftId, productNftId);
|
344
364
|
}
|
345
365
|
|
346
366
|
|
@@ -400,6 +420,8 @@ contract ComponentService is
|
|
400
420
|
productInfo.oracleNftId[productInfo.numberOfOracles] = oracleNftId;
|
401
421
|
productInfo.numberOfOracles++;
|
402
422
|
productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
|
423
|
+
|
424
|
+
emit LogComponentServiceOracleCreated(oracleNftId, productNftId);
|
403
425
|
}
|
404
426
|
|
405
427
|
//-------- pool ---------------------------------------------------------//
|
@@ -423,13 +445,20 @@ contract ComponentService is
|
|
423
445
|
|
424
446
|
// create info
|
425
447
|
IPoolComponent pool = IPoolComponent(componentAddress);
|
448
|
+
IComponents.PoolInfo memory initialPoolInfo = pool.getInitialPoolInfo();
|
426
449
|
instanceStore.createPool(
|
427
450
|
poolNftId,
|
428
|
-
|
451
|
+
initialPoolInfo);
|
429
452
|
|
430
453
|
// update pool in product info
|
431
454
|
productInfo.poolNftId = poolNftId;
|
432
455
|
productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
|
456
|
+
|
457
|
+
emit LogComponentServicePoolCreated(
|
458
|
+
poolNftId, productNftId, componentAddress,
|
459
|
+
initialPoolInfo.maxBalanceAmount, initialPoolInfo.collateralizationLevel,
|
460
|
+
initialPoolInfo.retentionLevel, initialPoolInfo.isExternallyManaged,
|
461
|
+
initialPoolInfo.isVerifyingApplications);
|
433
462
|
}
|
434
463
|
|
435
464
|
|
@@ -543,6 +572,11 @@ contract ComponentService is
|
|
543
572
|
address(component), // initially, component is its own wallet
|
544
573
|
token,
|
545
574
|
instanceAdmin.authority());
|
575
|
+
|
576
|
+
emit LogComponentServiceTokenHandlerDeployed(
|
577
|
+
componentNftId,
|
578
|
+
address(componentInfo.tokenHandler),
|
579
|
+
token);
|
546
580
|
|
547
581
|
// register component with instance
|
548
582
|
instanceStore.createComponent(
|
@@ -0,0 +1,15 @@
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
2
|
+
pragma solidity ^0.8.20;
|
3
|
+
|
4
|
+
import {IComponent} from "../shared/IComponent.sol";
|
5
|
+
import {IAuthorization} from "../authorization/IAuthorization.sol";
|
6
|
+
|
7
|
+
/// @dev component base class
|
8
|
+
/// component examples are product, distribution, pool and oracle
|
9
|
+
interface IAuthorizedComponent is
|
10
|
+
IComponent
|
11
|
+
{
|
12
|
+
/// @dev returns the initial component authorization specification.
|
13
|
+
function getAuthorization() external view returns (IAuthorization authorization);
|
14
|
+
|
15
|
+
}
|
@@ -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);
|
@@ -45,22 +45,44 @@ interface IComponentService is
|
|
45
45
|
error ErrorComponentServiceWithdrawAmountExceedsLimit(Amount withdrawnAmount, Amount withdrawLimit);
|
46
46
|
error ErrorComponentServiceWalletAllowanceTooSmall(address wallet, address spender, uint256 allowance, uint256 amount);
|
47
47
|
|
48
|
-
event LogComponentServiceComponentLocked(address component, bool locked);
|
49
|
-
event
|
50
|
-
event
|
51
|
-
event
|
52
|
-
event
|
53
|
-
event
|
54
|
-
event
|
55
|
-
event LogComponentServicePoolFeesUpdated(NftId poolNftId);
|
48
|
+
event LogComponentServiceComponentLocked(address indexed component, bool indexed locked);
|
49
|
+
event LogComponentServiceTokenHandlerDeployed(NftId indexed componentNftId, address indexed tokenHandler, address indexed token);
|
50
|
+
event LogComponentServiceRegistered(NftId indexed instanceNftId, NftId indexed componentNftId, ObjectType indexed componentType, address component, address token, address initialOwner);
|
51
|
+
event LogComponentServiceComponentFeesWithdrawn(NftId indexed componentNftId, address indexed recipient, Amount withdrawnAmount, address indexed token);
|
52
|
+
event LogComponentServiceProductFeesUpdated(NftId indexed productNftId);
|
53
|
+
event LogComponentServiceDistributionFeesUpdated(NftId indexed distributionNftId);
|
54
|
+
event LogComponentServicePoolFeesUpdated(NftId indexed poolNftId);
|
56
55
|
event LogComponentServiceUpdateFee(
|
57
|
-
NftId nftId,
|
56
|
+
NftId indexed nftId,
|
58
57
|
string feeName,
|
59
58
|
UFixed previousFractionalFee,
|
60
59
|
Amount previousFixedFee,
|
61
60
|
UFixed newFractionalFee,
|
62
61
|
Amount newFixedFee
|
63
62
|
);
|
63
|
+
event LogComponentServiceProductCreated(
|
64
|
+
NftId indexed productNftId, address indexed productAddress, bool indexed hasDistribution, uint8 expectedNumberOfOracles);
|
65
|
+
event LogComponentServiceProductInitialProductFeesSet(
|
66
|
+
NftId indexed productNftId,
|
67
|
+
Amount productFeeFixed, UFixed productFeeFractional,
|
68
|
+
Amount processingFeeFixed, UFixed processingFeeFractional);
|
69
|
+
event LogComponentServiceProductInitialDistributionFeesSet(
|
70
|
+
NftId indexed productNftId,
|
71
|
+
Amount distributionFeeFixed, UFixed distributionFeeFractional,
|
72
|
+
Amount minDistributionOwnerFeeFixed, UFixed minDistributionOwnerFeeFractional);
|
73
|
+
event LogComponentServiceProductInitialPoolFeesSet(
|
74
|
+
NftId indexed productNftId,
|
75
|
+
Amount poolFeeFixed, UFixed poolFeeFractional,
|
76
|
+
Amount stakingFeeFixed, UFixed stakingFeeFractional,
|
77
|
+
Amount performanceFeeFixed, UFixed performanceFeeFractional);
|
78
|
+
event LogComponentServicePoolCreated(
|
79
|
+
NftId indexed poolNftId, NftId indexed productNftId, address indexed componentAddress,
|
80
|
+
Amount maxBalanceAmount, UFixed collateralizationLevel, UFixed retentionLevel,
|
81
|
+
bool isExternallyManaged, bool isVerifyingApplications);
|
82
|
+
event LogComponentServiceDistributionCreated(
|
83
|
+
NftId indexed distributionNftId, NftId indexed productNftId);
|
84
|
+
event LogComponentServiceOracleCreated(
|
85
|
+
NftId indexed oracleNftId, NftId indexed productNftId);
|
64
86
|
|
65
87
|
//-------- component ----------------------------------------------------//
|
66
88
|
|
@@ -2,7 +2,7 @@
|
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
4
|
import {Amount} from "../type/Amount.sol";
|
5
|
-
import {
|
5
|
+
import {IAuthorizedComponent} from "../shared/IAuthorizedComponent.sol";
|
6
6
|
import {IAuthorization} from "../authorization/IAuthorization.sol";
|
7
7
|
import {IInstance} from "../instance/IInstance.sol";
|
8
8
|
import {NftId} from "../type/NftId.sol";
|
@@ -11,7 +11,7 @@ import {ObjectType} from "../type/ObjectType.sol";
|
|
11
11
|
/// @dev component base class
|
12
12
|
/// component examples are product, distribution, pool and oracle
|
13
13
|
interface IInstanceLinkedComponent is
|
14
|
-
|
14
|
+
IAuthorizedComponent
|
15
15
|
{
|
16
16
|
error ErrorInstanceLinkedComponentTypeMismatch(ObjectType requiredType, ObjectType objectType);
|
17
17
|
error ErrorInstanceLinkedComponentNotProduct(NftId nftId, ObjectType objectType);
|
@@ -24,7 +24,4 @@ interface IInstanceLinkedComponent is
|
|
24
24
|
/// @dev defines the instance to which this component is linked to
|
25
25
|
function getInstance() external view returns (IInstance instance);
|
26
26
|
|
27
|
-
/// @dev returns the initial component authorization specification.
|
28
|
-
function getAuthorization() external view returns (IAuthorization authorization);
|
29
|
-
|
30
27
|
}
|
@@ -11,7 +11,7 @@ interface INftOwnable is
|
|
11
11
|
IERC165,
|
12
12
|
IRegistryLinked
|
13
13
|
{
|
14
|
-
event LogNftOwnableNftLinkedToAddress(NftId nftId, address owner);
|
14
|
+
event LogNftOwnableNftLinkedToAddress(NftId indexed nftId, address indexed owner);
|
15
15
|
|
16
16
|
error ErrorNftOwnableInitialOwnerZero();
|
17
17
|
error ErrorNftOwnableNotOwner(address account);
|
@@ -2,6 +2,7 @@
|
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
4
|
import {IAuthorization} from "../authorization/IAuthorization.sol";
|
5
|
+
import {IAuthorizedComponent} from "../shared/IAuthorizedComponent.sol";
|
5
6
|
import {IComponents} from "../instance/module/IComponents.sol";
|
6
7
|
import {IComponentService} from "./IComponentService.sol";
|
7
8
|
import {IInstance} from "../instance/IInstance.sol";
|
@@ -46,7 +47,7 @@ abstract contract InstanceLinkedComponent is
|
|
46
47
|
}
|
47
48
|
|
48
49
|
|
49
|
-
/// @inheritdoc
|
50
|
+
/// @inheritdoc IAuthorizedComponent
|
50
51
|
function getAuthorization() external view virtual returns (IAuthorization authorization) {
|
51
52
|
return _getInstanceLinkedComponentStorage()._initialAuthorization;
|
52
53
|
}
|
@@ -91,7 +92,7 @@ abstract contract InstanceLinkedComponent is
|
|
91
92
|
}
|
92
93
|
|
93
94
|
|
94
|
-
function
|
95
|
+
function _resendResponse(RequestId requestId)
|
95
96
|
internal
|
96
97
|
virtual
|
97
98
|
{
|
@@ -19,14 +19,14 @@ import {SERVICE} from "../type/ObjectType.sol";
|
|
19
19
|
contract TokenHandlerBase {
|
20
20
|
|
21
21
|
// _setWallet
|
22
|
-
event LogTokenHandlerWalletAddressChanged(NftId componentNftId, address oldWallet, address newWallet);
|
23
|
-
event LogTokenHandlerWalletTokensTransferred(NftId componentNftId, address oldWallet, address newWallet, Amount amount);
|
22
|
+
event LogTokenHandlerWalletAddressChanged(NftId indexed componentNftId, address indexed oldWallet, address indexed newWallet);
|
23
|
+
event LogTokenHandlerWalletTokensTransferred(NftId indexed componentNftId, address indexed oldWallet, address indexed newWallet, Amount amount);
|
24
24
|
|
25
25
|
// _approveTokenHandler
|
26
|
-
event LogTokenHandlerTokenApproved(NftId nftId, address tokenHandler, address token, Amount amount, bool isMaxAmount);
|
26
|
+
event LogTokenHandlerTokenApproved(NftId indexed nftId, address indexed tokenHandler, address indexed token, Amount amount, bool isMaxAmount);
|
27
27
|
|
28
28
|
// _transfer
|
29
|
-
event
|
29
|
+
event LogTokenHandlerTokenTransferred(address indexed token, address indexed from, address indexed to, Amount amount);
|
30
30
|
|
31
31
|
// constructor
|
32
32
|
error ErrorTokenHandlerNotRegistry(address registry);
|
@@ -204,7 +204,7 @@ contract TokenHandlerBase {
|
|
204
204
|
}
|
205
205
|
|
206
206
|
// transfer the tokens
|
207
|
-
emit
|
207
|
+
emit LogTokenHandlerTokenTransferred(address(TOKEN), from, to, amount);
|
208
208
|
|
209
209
|
SafeERC20.safeTransferFrom(
|
210
210
|
TOKEN,
|
@@ -25,26 +25,28 @@ interface IStaking is
|
|
25
25
|
IVersionable
|
26
26
|
{
|
27
27
|
|
28
|
+
event LogStakingTokenHandlerDeployed(NftId indexed componentNftId, address indexed tokenHandler, address indexed token);
|
29
|
+
|
28
30
|
// owner functions
|
29
|
-
event LogStakingStakingRateSet(ChainId chainId, address token, UFixed
|
30
|
-
event LogStakingStakingServiceSet(address stakingService, VersionPart release
|
31
|
-
event LogStakingStakingReaderSet(address
|
32
|
-
event LogStakingTargetHandlerSet(address
|
33
|
-
event LogStakingTokenHandlerApproved(
|
31
|
+
event LogStakingStakingRateSet(ChainId indexed chainId, address indexed token, UFixed oldStakingRate, UFixed newStakingRate, Blocknumber lastUpdateIn);
|
32
|
+
event LogStakingStakingServiceSet(address indexed oldStakingService, address indexed stakingService, VersionPart indexed release);
|
33
|
+
event LogStakingStakingReaderSet(address indexed oldStakingReader, address indexed stakingReader);
|
34
|
+
event LogStakingTargetHandlerSet(address indexed oldTargetHandler, address indexed targetManager);
|
35
|
+
event LogStakingTokenHandlerApproved(Amount oldApprovalAmount, Amount approvalAmount, address indexed token);
|
34
36
|
|
35
37
|
// token
|
36
|
-
event LogStakingTokenAdded(ChainId chainId, address token);
|
37
|
-
event LogStakingTargetTokenAdded(NftId targetNftId,
|
38
|
+
event LogStakingTokenAdded(ChainId indexed chainId, address indexed token);
|
39
|
+
event LogStakingTargetTokenAdded(NftId indexed targetNftId, address indexed token);
|
38
40
|
|
39
41
|
// total value locked
|
40
|
-
event LogStakingTvlIncreased(NftId targetNftId, address token, Amount amount, Amount newBalance, Blocknumber lastUpdateIn);
|
41
|
-
event LogStakingTvlDecreased(NftId targetNftId, address token, Amount amount, Amount newBalance, Blocknumber lastUpdateIn);
|
42
|
+
event LogStakingTvlIncreased(NftId indexed targetNftId, address indexed token, Amount amount, Amount newBalance, Blocknumber lastUpdateIn);
|
43
|
+
event LogStakingTvlDecreased(NftId indexed targetNftId, address indexed token, Amount amount, Amount newBalance, Blocknumber lastUpdateIn);
|
42
44
|
|
43
45
|
// targets
|
44
46
|
event LogStakingSupportInfoSet(
|
45
|
-
ObjectType objectType,
|
46
|
-
bool isSupported,
|
47
|
-
bool allowNewTargets,
|
47
|
+
ObjectType indexed objectType,
|
48
|
+
bool indexed isSupported,
|
49
|
+
bool indexed allowNewTargets,
|
48
50
|
bool allowCrossChain,
|
49
51
|
Amount minStakingAmount,
|
50
52
|
Amount maxStakingAmount,
|
@@ -54,31 +56,31 @@ interface IStaking is
|
|
54
56
|
UFixed maxRewardRate,
|
55
57
|
Blocknumber lastUpdateIn);
|
56
58
|
|
57
|
-
event LogStakingTargetCreated(NftId targetNftId, ObjectType objectType, Seconds lockingPeriod, UFixed rewardRate);
|
58
|
-
event LogStakingLimitsSet(NftId targetNftId, Amount marginAmount, Amount hardLimitAmount, Blocknumber lastUpdateIn);
|
59
|
-
event LogStakingTargetLimitsUpdated(NftId targetNftId, Amount marginAmount, Amount hardLimitAmount, Blocknumber lastUpdateIn);
|
60
|
-
event LogStakingTargetLimitUpdated(NftId targetNftId, Amount limitAmount, Amount hardLimitAmount, Amount requiredStakeAmount, Amount actualStakeAmount, Blocknumber lastUpdateIn);
|
59
|
+
event LogStakingTargetCreated(NftId indexed targetNftId, ObjectType indexed objectType, Seconds lockingPeriod, UFixed rewardRate);
|
60
|
+
event LogStakingLimitsSet(NftId indexed targetNftId, Amount marginAmount, Amount hardLimitAmount, Blocknumber lastUpdateIn);
|
61
|
+
event LogStakingTargetLimitsUpdated(NftId indexed targetNftId, Amount marginAmount, Amount hardLimitAmount, Blocknumber lastUpdateIn);
|
62
|
+
event LogStakingTargetLimitUpdated(NftId indexed targetNftId, Amount limitAmount, Amount hardLimitAmount, Amount requiredStakeAmount, Amount actualStakeAmount, Blocknumber lastUpdateIn);
|
61
63
|
|
62
64
|
// target parameters
|
63
|
-
event LogStakingTargetLockingPeriodSet(NftId targetNftId, Seconds oldLockingPeriod, Seconds lockingPeriod, Blocknumber lastUpdateIn);
|
64
|
-
event LogStakingTargetRewardRateSet(NftId targetNftId, UFixed
|
65
|
-
event LogStakingTargetMaxStakedAmountSet(NftId targetNftId, Amount stakeLimitAmount, Blocknumber lastUpdateIn);
|
66
|
-
event LogStakingTargetLimitsSet(NftId targetNftId, Amount stakeLimitAmount, Amount marginAmount, Amount limitAmount);
|
65
|
+
event LogStakingTargetLockingPeriodSet(NftId indexed targetNftId, Seconds oldLockingPeriod, Seconds lockingPeriod, Blocknumber lastUpdateIn);
|
66
|
+
event LogStakingTargetRewardRateSet(NftId indexed targetNftId, UFixed oldRewardRate, UFixed rewardRate, Blocknumber lastUpdateIn);
|
67
|
+
event LogStakingTargetMaxStakedAmountSet(NftId indexed targetNftId, Amount stakeLimitAmount, Blocknumber indexed lastUpdateIn);
|
68
|
+
event LogStakingTargetLimitsSet(NftId indexed targetNftId, Amount stakeLimitAmount, Amount marginAmount, Amount limitAmount);
|
67
69
|
|
68
70
|
// reward reserves
|
69
|
-
event LogStakingRewardReservesRefilled(NftId targetNftId, Amount dipAmount, address targetOwner, Amount reserveBalance, Blocknumber lastUpdateIn);
|
70
|
-
event LogStakingRewardReservesWithdrawn(NftId targetNftId, Amount dipAmount, address targetOwner, Amount reserveBalance, Blocknumber lastUpdateIn);
|
71
|
-
event LogStakingRewardReservesSpent(NftId targetNftId, Amount dipAmount, Amount reserveBalance, Blocknumber lastUpdateIn);
|
71
|
+
event LogStakingRewardReservesRefilled(NftId indexed targetNftId, Amount dipAmount, address indexed targetOwner, Amount reserveBalance, Blocknumber lastUpdateIn);
|
72
|
+
event LogStakingRewardReservesWithdrawn(NftId indexed targetNftId, Amount dipAmount, address indexed targetOwner, Amount reserveBalance, Blocknumber lastUpdateIn);
|
73
|
+
event LogStakingRewardReservesSpent(NftId indexed targetNftId, Amount dipAmount, Amount reserveBalance, Blocknumber lastUpdateIn);
|
72
74
|
|
73
75
|
// stakes
|
74
|
-
event LogStakingStakeCreated(NftId stakeNftId, NftId targetNftId, Amount stakeAmount, Timestamp lockedUntil, address stakeOwner);
|
75
|
-
event LogStakingStakeRewardsUpdated(NftId stakeNftId, Amount rewardIncrementAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
|
76
|
-
event LogStakingRewardsRestaked(NftId stakeNftId, Amount restakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
|
77
|
-
event LogStakingStaked(NftId stakeNftId, Amount stakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
|
78
|
-
event LogStakingUnstaked(NftId stakeNftId, Amount unstakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
|
79
|
-
event LogStakingRewardsClaimed(NftId stakeNftId, Amount claimedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
|
80
|
-
|
81
|
-
event LogStakingStakeRestaked(NftId stakeNftId, NftId targetNftId, Amount stakeAmount, address owner, NftId oldStakeNftId);
|
76
|
+
event LogStakingStakeCreated(NftId indexed stakeNftId, NftId indexed targetNftId, Amount stakeAmount, Timestamp lockedUntil, address stakeOwner);
|
77
|
+
event LogStakingStakeRewardsUpdated(NftId indexed stakeNftId, Amount rewardIncrementAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
|
78
|
+
event LogStakingRewardsRestaked(NftId indexed stakeNftId, Amount restakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
|
79
|
+
event LogStakingStaked(NftId indexed stakeNftId, Amount stakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
|
80
|
+
event LogStakingUnstaked(NftId indexed stakeNftId, Amount unstakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
|
81
|
+
event LogStakingRewardsClaimed(NftId indexed stakeNftId, Amount claimedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
|
82
|
+
|
83
|
+
event LogStakingStakeRestaked(NftId indexed stakeNftId, NftId indexed targetNftId, Amount stakeAmount, address owner, NftId oldStakeNftId);
|
82
84
|
|
83
85
|
// modifiers
|
84
86
|
error ErrorStakingNotStake(NftId stakeNftId);
|
@@ -16,22 +16,13 @@ import {UFixed} from "../type/UFixed.sol";
|
|
16
16
|
interface IStakingService is IService
|
17
17
|
{
|
18
18
|
|
19
|
-
event LogStakingServiceProtocolTargetRegistered(NftId protocolNftId);
|
20
|
-
event LogStakingServiceInstanceTargetRegistered(NftId instanceNftId,
|
21
|
-
|
22
|
-
event
|
23
|
-
|
24
|
-
|
25
|
-
event
|
26
|
-
|
27
|
-
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);
|
19
|
+
event LogStakingServiceProtocolTargetRegistered(NftId indexed protocolNftId);
|
20
|
+
event LogStakingServiceInstanceTargetRegistered(NftId indexed instanceNftId, Seconds initialLockingPeriod, UFixed initialRewardRate);
|
21
|
+
|
22
|
+
event LogStakingServiceRewardReservesIncreased(NftId indexed targetNftId, address indexed rewardProvider, Amount dipAmount, Amount newBalance);
|
23
|
+
event LogStakingServiceRewardReservesDecreased(NftId indexed targetNftId, address indexed targetOwner, Amount dipAmount, Amount newBalance);
|
24
|
+
|
25
|
+
event LogStakingServiceStakeCreated(NftId indexed stakeNftId, NftId indexed targetNftId, address indexed stakeOwner);
|
35
26
|
|
36
27
|
// modifiers
|
37
28
|
error ErrorStakingServiceNotStakingOwner(address account);
|