@etherisc/gif-next 0.0.2-9e6b423-414 → 0.0.2-9f1b659-471
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 +3 -0
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +86 -34
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +73 -35
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +52 -0
- 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/AccessManagerCloneable.sol/AccessManagerCloneable.json +2 -2
- 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 +37 -18
- 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 +19 -0
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +311 -151
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +112 -86
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +19 -0
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +199 -15
- 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 +65 -42
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +16 -16
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +79 -44
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +16 -16
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.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 +57 -22
- 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 +27 -8
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +69 -50
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +16 -16
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +248 -68
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +16 -16
- 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/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +26 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +96 -4
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +37 -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 +16 -16
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +56 -56
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +118 -26
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +69 -31
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +106 -98
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +101 -88
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +8 -8
- 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 +2 -2
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +2 -2
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +23 -4
- 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 +19 -0
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +29 -0
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +19 -0
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +49 -20
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +78 -40
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +37 -26
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +19 -19
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +280 -119
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +106 -48
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +180 -27
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +19 -0
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +220 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +19 -0
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +36 -52
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +292 -65
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +94 -52
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +202 -61
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +75 -33
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +19 -0
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +19 -19
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +128 -104
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +95 -65
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +166 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +50 -10
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +55 -0
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +29 -0
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +19 -0
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +203 -18
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +109 -46
- 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 +91 -49
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +79 -74
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +82 -40
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +19 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +231 -46
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +70 -32
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +18 -7
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +29 -0
- 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 +56 -45
- 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 +29 -21
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +41 -12
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +65 -27
- 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 +81 -81
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +17 -17
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +119 -59
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +19 -0
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +120 -56
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +96 -50
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +9 -9
- 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/ContractLib.sol/ITokenRegistryHelper.json +2 -2
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +19 -0
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +48 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +19 -0
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +6 -6
- 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 +19 -0
- 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 +19 -0
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.json +29 -0
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +19 -0
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +6 -6
- 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 +21 -2
- 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 +19 -0
- 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 +29 -0
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +2 -2
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +2 -2
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +2 -2
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1146 -53
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +91 -111
- package/artifacts/contracts/staking/ITargetManager.sol/ITargetManager.dbg.json +4 -0
- package/artifacts/contracts/staking/ITargetManager.sol/ITargetManager.json +69 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +1392 -181
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +73 -72
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +138 -56
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +174 -180
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +115 -167
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +68 -46
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +1290 -599
- package/artifacts/contracts/staking/TargetManager.sol/TargetManager.dbg.json +4 -0
- package/artifacts/contracts/staking/TargetManager.sol/TargetManager.json +134 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +72 -32
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +2 -2
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +45 -19
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +193 -0
- 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 -2
- 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/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/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/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/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +45 -2
- 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/Timestamp.sol/TimestampLib.json +3 -3
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +2 -2
- 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/IVersionable.sol/IVersionable.json +10 -0
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +55 -17
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.json +10 -0
- package/contracts/accounting/AccountingService.sol +13 -0
- package/contracts/accounting/IAccountingService.sol +2 -0
- package/contracts/authorization/AccessAdmin.sol +5 -5
- package/contracts/authorization/AccessAdminLib.sol +2 -2
- package/contracts/authorization/Authorization.sol +2 -7
- package/contracts/authorization/IAuthorization.sol +0 -1
- package/contracts/authorization/ServiceAuthorization.sol +2 -2
- package/contracts/distribution/BasicDistribution.sol +2 -2
- package/contracts/distribution/Distribution.sol +5 -3
- package/contracts/distribution/DistributionService.sol +27 -21
- package/contracts/distribution/IDistributionService.sol +10 -4
- package/contracts/examples/fire/FireProduct.sol +6 -6
- package/contracts/examples/unpermissioned/SimpleProduct.sol +83 -19
- package/contracts/instance/IInstance.sol +1 -1
- package/contracts/instance/IInstanceService.sol +7 -3
- package/contracts/instance/Instance.sol +6 -4
- package/contracts/instance/InstanceAuthorizationV3.sol +2 -1
- package/contracts/instance/InstanceService.sol +21 -32
- package/contracts/instance/RiskSet.sol +10 -2
- package/contracts/instance/base/BalanceStore.sol +1 -1
- package/contracts/instance/base/ObjectLifecycle.sol +2 -6
- package/contracts/oracle/BasicOracle.sol +1 -1
- package/contracts/oracle/Oracle.sol +2 -2
- package/contracts/oracle/OracleService.sol +4 -4
- package/contracts/pool/BasicPool.sol +3 -14
- package/contracts/pool/BasicPoolAuthorization.sol +1 -2
- package/contracts/pool/BundleService.sol +34 -43
- package/contracts/pool/IBundleService.sol +14 -13
- package/contracts/pool/IPoolService.sol +7 -2
- package/contracts/pool/Pool.sol +4 -14
- package/contracts/pool/PoolLib.sol +10 -22
- package/contracts/pool/PoolService.sol +35 -8
- package/contracts/product/ApplicationService.sol +58 -9
- package/contracts/product/BasicProduct.sol +1 -1
- package/contracts/product/BasicProductAuthorization.sol +2 -0
- package/contracts/product/ClaimService.sol +39 -40
- package/contracts/product/IApplicationService.sol +21 -2
- package/contracts/product/IClaimService.sol +5 -4
- package/contracts/product/IPolicyService.sol +9 -2
- package/contracts/product/IRiskService.sol +18 -3
- package/contracts/product/PolicyService.sol +13 -8
- package/contracts/product/PolicyServiceLib.sol +7 -7
- package/contracts/product/PricingService.sol +22 -25
- package/contracts/product/Product.sol +38 -12
- package/contracts/product/RiskService.sol +48 -12
- package/contracts/registry/IRegistry.sol +11 -9
- package/contracts/registry/Registry.sol +15 -9
- package/contracts/registry/RegistryAuthorization.sol +55 -20
- package/contracts/registry/RegistryService.sol +1 -1
- package/contracts/registry/ReleaseRegistry.sol +8 -3
- package/contracts/registry/ServiceAuthorizationV3.sol +10 -12
- package/contracts/registry/TokenRegistry.sol +52 -49
- package/contracts/shared/Component.sol +6 -2
- package/contracts/shared/ComponentService.sol +15 -6
- package/contracts/shared/ContractLib.sol +3 -2
- package/contracts/shared/IComponent.sol +1 -1
- package/contracts/shared/IComponentService.sol +1 -0
- package/contracts/shared/IKeyValueStore.sol +1 -1
- package/contracts/shared/INftOwnable.sol +2 -0
- package/contracts/shared/InstanceLinkedComponent.sol +4 -4
- package/contracts/shared/KeyValueStore.sol +3 -3
- package/contracts/shared/NftOwnable.sol +2 -0
- package/contracts/shared/PolicyHolder.sol +3 -2
- package/contracts/staking/IStaking.sol +187 -65
- package/contracts/staking/IStakingService.sol +36 -84
- package/contracts/staking/ITargetManager.sol +28 -0
- package/contracts/staking/Staking.sol +458 -210
- package/contracts/staking/StakingLib.sol +38 -124
- package/contracts/staking/StakingManager.sol +1 -2
- package/contracts/staking/StakingReader.sol +45 -74
- package/contracts/staking/StakingService.sol +39 -185
- package/contracts/staking/StakingServiceManager.sol +1 -0
- package/contracts/staking/StakingStore.sol +866 -327
- package/contracts/staking/TargetManager.sol +103 -0
- package/contracts/type/Amount.sol +4 -0
- package/contracts/type/Blocknumber.sol +15 -15
- package/contracts/type/ChainId.sol +101 -0
- package/contracts/type/NftId.sol +3 -3
- package/contracts/type/Seconds.sol +14 -0
- package/contracts/type/Timestamp.sol +4 -2
- package/contracts/type/UFixed.sol +1 -0
- package/contracts/upgradeability/IVersionable.sol +3 -0
- package/contracts/upgradeability/ProxyManager.sol +13 -1
- package/contracts/upgradeability/UpgradableProxyWithAdmin.sol +6 -2
- package/contracts/upgradeability/Versionable.sol +2 -2
- package/package.json +1 -1
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +0 -4
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +0 -485
- package/contracts/shared/ComponentVerifyingService.sol +0 -128
@@ -18,7 +18,7 @@ import {COMPONENT, PRODUCT, BUNDLE, APPLICATION, POLICY, CLAIM, PRICE } from "..
|
|
18
18
|
import {PayoutId} from "../type/PayoutId.sol";
|
19
19
|
import {COMPONENT, PRODUCT, APPLICATION, POLICY, CLAIM, PRICE, BUNDLE, RISK } from "../type/ObjectType.sol";
|
20
20
|
import {ReferralId} from "../type/Referral.sol";
|
21
|
-
import {RiskId
|
21
|
+
import {RiskId} from "../type/RiskId.sol";
|
22
22
|
import {Seconds} from "../type/Seconds.sol";
|
23
23
|
import {StateId} from "../type/StateId.sol";
|
24
24
|
import {Timestamp} from "../type/Timestamp.sol";
|
@@ -48,6 +48,7 @@ abstract contract Product is
|
|
48
48
|
function registerComponent(address component)
|
49
49
|
external
|
50
50
|
virtual
|
51
|
+
restricted()
|
51
52
|
onlyOwner()
|
52
53
|
returns (NftId componentNftId)
|
53
54
|
{
|
@@ -79,6 +80,7 @@ abstract contract Product is
|
|
79
80
|
)
|
80
81
|
public
|
81
82
|
view
|
83
|
+
virtual
|
82
84
|
override
|
83
85
|
onlyNftOfType(bundleNftId, BUNDLE())
|
84
86
|
returns (Amount premiumAmount)
|
@@ -131,7 +133,7 @@ abstract contract Product is
|
|
131
133
|
}
|
132
134
|
|
133
135
|
|
134
|
-
function
|
136
|
+
function __Product_init(
|
135
137
|
address registry,
|
136
138
|
NftId instanceNftId,
|
137
139
|
string memory name,
|
@@ -145,7 +147,7 @@ abstract contract Product is
|
|
145
147
|
virtual
|
146
148
|
onlyInitializing()
|
147
149
|
{
|
148
|
-
|
150
|
+
__InstanceLinkedComponent_init(
|
149
151
|
registry,
|
150
152
|
instanceNftId,
|
151
153
|
name,
|
@@ -207,16 +209,27 @@ abstract contract Product is
|
|
207
209
|
);
|
208
210
|
}
|
209
211
|
|
210
|
-
function
|
212
|
+
function _setRiskLocked(
|
211
213
|
RiskId id,
|
212
|
-
|
214
|
+
bool locked
|
213
215
|
)
|
214
216
|
internal
|
215
217
|
virtual
|
216
218
|
{
|
217
|
-
_getProductStorage()._riskService.
|
219
|
+
_getProductStorage()._riskService.setRiskLocked(
|
218
220
|
id,
|
219
|
-
|
221
|
+
locked
|
222
|
+
);
|
223
|
+
}
|
224
|
+
|
225
|
+
function _closeRisk(
|
226
|
+
RiskId id
|
227
|
+
)
|
228
|
+
internal
|
229
|
+
virtual
|
230
|
+
{
|
231
|
+
_getProductStorage()._riskService.closeRisk(
|
232
|
+
id
|
220
233
|
);
|
221
234
|
}
|
222
235
|
|
@@ -247,9 +260,20 @@ abstract contract Product is
|
|
247
260
|
);
|
248
261
|
}
|
249
262
|
|
263
|
+
function _revoke(
|
264
|
+
NftId applicationNftId
|
265
|
+
)
|
266
|
+
internal
|
267
|
+
virtual
|
268
|
+
{
|
269
|
+
_getProductStorage()._applicationService.revoke(
|
270
|
+
applicationNftId);
|
271
|
+
}
|
272
|
+
|
250
273
|
function _createPolicy(
|
251
274
|
NftId applicationNftId,
|
252
|
-
Timestamp activateAt
|
275
|
+
Timestamp activateAt,
|
276
|
+
Amount maxPremiumAmount
|
253
277
|
)
|
254
278
|
internal
|
255
279
|
virtual
|
@@ -257,7 +281,8 @@ abstract contract Product is
|
|
257
281
|
{
|
258
282
|
premiumAmount = _getProductStorage()._policyService.createPolicy(
|
259
283
|
applicationNftId,
|
260
|
-
activateAt
|
284
|
+
activateAt,
|
285
|
+
maxPremiumAmount);
|
261
286
|
}
|
262
287
|
|
263
288
|
function _decline(
|
@@ -387,14 +412,14 @@ abstract contract Product is
|
|
387
412
|
data);
|
388
413
|
}
|
389
414
|
|
390
|
-
function
|
415
|
+
function _cancelConfirmedClaim(
|
391
416
|
NftId policyNftId,
|
392
417
|
ClaimId claimId
|
393
418
|
)
|
394
419
|
internal
|
395
420
|
virtual
|
396
421
|
{
|
397
|
-
_getProductStorage()._claimService.
|
422
|
+
_getProductStorage()._claimService.cancelConfirmedClaim(
|
398
423
|
policyNftId,
|
399
424
|
claimId);
|
400
425
|
}
|
@@ -441,8 +466,9 @@ abstract contract Product is
|
|
441
466
|
)
|
442
467
|
internal
|
443
468
|
virtual
|
469
|
+
returns (Amount netPayoutAmount, Amount processingFeeAmount)
|
444
470
|
{
|
445
|
-
_getProductStorage()._claimService.processPayout(
|
471
|
+
(netPayoutAmount, processingFeeAmount) = _getProductStorage()._claimService.processPayout(
|
446
472
|
policyNftId,
|
447
473
|
payoutId);
|
448
474
|
}
|
@@ -9,7 +9,7 @@ import {IRiskService} from "./IRiskService.sol";
|
|
9
9
|
import {ContractLib} from "../shared/ContractLib.sol";
|
10
10
|
import {InstanceReader} from "../instance/InstanceReader.sol";
|
11
11
|
import {ObjectType, COMPONENT, PRODUCT, RISK} from "../type/ObjectType.sol";
|
12
|
-
import {ACTIVE,
|
12
|
+
import {ACTIVE, KEEP_STATE, CLOSED} from "../type/StateId.sol";
|
13
13
|
import {NftId} from "../type/NftId.sol";
|
14
14
|
import {RiskId, RiskIdLib} from "../type/RiskId.sol";
|
15
15
|
import {StateId} from "../type/StateId.sol";
|
@@ -45,6 +45,7 @@ contract RiskService is
|
|
45
45
|
bytes memory data
|
46
46
|
)
|
47
47
|
external
|
48
|
+
virtual
|
48
49
|
restricted()
|
49
50
|
returns (RiskId riskId)
|
50
51
|
{
|
@@ -55,7 +56,7 @@ contract RiskService is
|
|
55
56
|
riskId = RiskIdLib.toRiskId(productNftId, id);
|
56
57
|
IRisk.RiskInfo memory riskInfo = IRisk.RiskInfo({
|
57
58
|
productNftId: productNftId,
|
58
|
-
createdAt: TimestampLib.
|
59
|
+
createdAt: TimestampLib.current(),
|
59
60
|
data: data});
|
60
61
|
|
61
62
|
instance.getInstanceStore().createRisk(
|
@@ -66,6 +67,8 @@ contract RiskService is
|
|
66
67
|
// add risk to RiskSet
|
67
68
|
RiskSet riskSet = instance.getRiskSet();
|
68
69
|
riskSet.add(riskId);
|
70
|
+
|
71
|
+
emit LogRiskServiceRiskCreated(productNftId, riskId);
|
69
72
|
}
|
70
73
|
|
71
74
|
|
@@ -74,6 +77,7 @@ contract RiskService is
|
|
74
77
|
bytes memory data
|
75
78
|
)
|
76
79
|
external
|
80
|
+
virtual
|
77
81
|
restricted()
|
78
82
|
{
|
79
83
|
// checks
|
@@ -89,32 +93,64 @@ contract RiskService is
|
|
89
93
|
|
90
94
|
riskInfo.data = data;
|
91
95
|
instance.getInstanceStore().updateRisk(riskId, riskInfo, KEEP_STATE());
|
96
|
+
|
97
|
+
emit LogRiskServiceRiskUpdated(productNftId, riskId);
|
92
98
|
}
|
93
99
|
|
94
100
|
|
95
|
-
|
101
|
+
/// @inheritdoc IRiskService
|
102
|
+
function setRiskLocked(
|
96
103
|
RiskId riskId,
|
97
|
-
|
104
|
+
bool locked
|
98
105
|
)
|
99
106
|
external
|
107
|
+
virtual
|
100
108
|
restricted()
|
101
109
|
{
|
102
110
|
// checks
|
103
111
|
(NftId productNftId, IInstance instance) = _getAndVerifyActiveComponent(PRODUCT());
|
104
112
|
|
105
|
-
|
106
|
-
|
107
|
-
revert ErrorRiskServiceRiskProductMismatch(riskId, riskProductNftId, productNftId);
|
113
|
+
if (!instance.getRiskSet().hasRisk(productNftId, riskId)) {
|
114
|
+
revert ErrorRiskServiceUnknownRisk(productNftId, riskId);
|
108
115
|
}
|
109
116
|
|
110
|
-
|
111
|
-
|
117
|
+
if (instance.getInstanceReader().getRiskState(riskId) != ACTIVE()) {
|
118
|
+
revert ErrorRiskServiceRiskNotActive(productNftId, riskId);
|
119
|
+
}
|
112
120
|
|
113
|
-
if (
|
121
|
+
if (locked) {
|
122
|
+
instance.getRiskSet().deactivate(riskId);
|
123
|
+
emit LogRiskServiceRiskLocked(productNftId, riskId);
|
124
|
+
} else {
|
114
125
|
instance.getRiskSet().activate(riskId);
|
115
|
-
|
116
|
-
|
126
|
+
emit LogRiskServiceRiskUnlocked(productNftId, riskId);
|
127
|
+
}
|
128
|
+
}
|
129
|
+
|
130
|
+
/// @inheritdoc IRiskService
|
131
|
+
function closeRisk(
|
132
|
+
RiskId riskId
|
133
|
+
)
|
134
|
+
external
|
135
|
+
virtual
|
136
|
+
restricted()
|
137
|
+
{
|
138
|
+
// checks
|
139
|
+
(NftId productNftId, IInstance instance) = _getAndVerifyActiveComponent(PRODUCT());
|
140
|
+
(bool exists, bool active) = instance.getRiskSet().checkRisk(productNftId, riskId);
|
141
|
+
|
142
|
+
if (!exists) {
|
143
|
+
revert ErrorRiskServiceUnknownRisk(productNftId, riskId);
|
117
144
|
}
|
145
|
+
|
146
|
+
if (active) {
|
147
|
+
revert ErrorRiskServiceRiskNotLocked(productNftId, riskId);
|
148
|
+
}
|
149
|
+
|
150
|
+
// effects
|
151
|
+
instance.getInstanceStore().updateRiskState(riskId, CLOSED());
|
152
|
+
|
153
|
+
emit LogRiskServiceRiskClosed(productNftId, riskId);
|
118
154
|
}
|
119
155
|
|
120
156
|
function _getAndVerifyActiveComponent(ObjectType expectedType)
|
@@ -19,13 +19,16 @@ interface IRegistry is
|
|
19
19
|
IERC165
|
20
20
|
{
|
21
21
|
|
22
|
-
event
|
23
|
-
event
|
24
|
-
event
|
22
|
+
event LogRegistryObjectRegistered(NftId nftId, NftId parentNftId, ObjectType objectType, bool isInterceptor, address objectAddress, address initialOwner);
|
23
|
+
event LogRegistryServiceRegistered(VersionPart majorVersion, ObjectType domain);
|
24
|
+
event LogRegistryChainRegistryRegistered(NftId nftId, uint256 chainId, address chainRegistryAddress);
|
25
25
|
|
26
26
|
// initialize
|
27
27
|
error ErrorRegistryCallerNotDeployer();
|
28
28
|
|
29
|
+
// register()
|
30
|
+
error ErrorRegistryObjectTypeNotSupported(ObjectType objectType);
|
31
|
+
|
29
32
|
// registerRegistry()
|
30
33
|
error ErrorRegistryNotOnMainnet(uint256 chainId);
|
31
34
|
error ErrorRegistryChainRegistryChainIdZero(NftId nftId);
|
@@ -36,8 +39,7 @@ interface IRegistry is
|
|
36
39
|
// registerService()
|
37
40
|
error ErrorRegistryServiceAddressZero();
|
38
41
|
error ErrorRegistryServiceVersionZero(address service);
|
39
|
-
|
40
|
-
//error ErrorRegistryServiceVersionNotDeploying(address service, VersionPart version);
|
42
|
+
|
41
43
|
error ErrorRegistryServiceDomainZero(address service, VersionPart version);
|
42
44
|
error ErrorRegistryNotService(address service, ObjectType objectType);
|
43
45
|
error ErrorRegistryServiceParentNotRegistry(address service, VersionPart version, NftId parentNftId);
|
@@ -48,7 +50,7 @@ interface IRegistry is
|
|
48
50
|
|
49
51
|
// _register()
|
50
52
|
error ErrorRegistryGlobalRegistryAsParent(address objectAddress, ObjectType objectType);
|
51
|
-
error
|
53
|
+
error ErrorRegistryTypeCombinationInvalid(address objectAddress, ObjectType objectType, ObjectType parentType);
|
52
54
|
error ErrorRegistryContractAlreadyRegistered(address objectAddress);
|
53
55
|
|
54
56
|
struct ObjectInfo {
|
@@ -93,11 +95,11 @@ interface IRegistry is
|
|
93
95
|
/// May not be used to register known core types.
|
94
96
|
function registerWithCustomType(ObjectInfo memory info) external returns (NftId nftId);
|
95
97
|
|
96
|
-
function
|
98
|
+
function getInitialRelease() external view returns (VersionPart);
|
97
99
|
|
98
|
-
function
|
100
|
+
function getNextRelease() external view returns (VersionPart);
|
99
101
|
|
100
|
-
function
|
102
|
+
function getLatestRelease() external view returns (VersionPart);
|
101
103
|
|
102
104
|
function getReleaseInfo(VersionPart release) external view returns (IRelease.ReleaseInfo memory);
|
103
105
|
|
@@ -172,7 +172,7 @@ contract Registry is
|
|
172
172
|
revert ErrorRegistryChainRegistryNftIdInvalid(nftId, chainId);
|
173
173
|
}
|
174
174
|
|
175
|
-
emit
|
175
|
+
emit LogRegistryChainRegistryRegistered(nftId, chainId, registryAddress);
|
176
176
|
|
177
177
|
_registerRegistryForNft(
|
178
178
|
chainId,
|
@@ -231,7 +231,7 @@ contract Registry is
|
|
231
231
|
|
232
232
|
_service[version][domain] = service;
|
233
233
|
|
234
|
-
emit
|
234
|
+
emit LogRegistryServiceRegistered(version, domain);
|
235
235
|
|
236
236
|
nftId = _register(info);
|
237
237
|
}
|
@@ -246,6 +246,11 @@ contract Registry is
|
|
246
246
|
address objectAddress = info.objectAddress;
|
247
247
|
ObjectType objectType = info.objectType;
|
248
248
|
|
249
|
+
// specialized functions have to be used to register registries and services
|
250
|
+
if(objectType == REGISTRY() || objectType == STAKING() || objectType == SERVICE()) {
|
251
|
+
revert ErrorRegistryObjectTypeNotSupported(objectType);
|
252
|
+
}
|
253
|
+
|
249
254
|
// this indidirectly enforces that the parent is registered
|
250
255
|
// parentType would be zero for a non-registered parent which is never a valid type combination
|
251
256
|
ObjectType parentType = _info[info.parentNftId].objectType;
|
@@ -253,13 +258,13 @@ contract Registry is
|
|
253
258
|
// check type combinations for core objects
|
254
259
|
if(objectAddress == address(0)) {
|
255
260
|
if(_coreObjectCombinations[objectType][parentType] == false) {
|
256
|
-
revert
|
261
|
+
revert ErrorRegistryTypeCombinationInvalid(objectAddress, objectType, parentType);
|
257
262
|
}
|
258
263
|
}
|
259
264
|
// check type combinations for contract objects
|
260
265
|
else {
|
261
266
|
if(_coreContractCombinations[objectType][parentType] == false) {
|
262
|
-
revert
|
267
|
+
revert ErrorRegistryTypeCombinationInvalid(objectAddress, objectType, parentType);
|
263
268
|
}
|
264
269
|
}
|
265
270
|
|
@@ -284,9 +289,10 @@ contract Registry is
|
|
284
289
|
objectType == ObjectTypeLib.zero() ||
|
285
290
|
parentType == ObjectTypeLib.zero() ||
|
286
291
|
parentType == PROTOCOL() ||
|
292
|
+
parentType == STAKING() ||
|
287
293
|
parentType == SERVICE()
|
288
294
|
) {
|
289
|
-
revert
|
295
|
+
revert ErrorRegistryTypeCombinationInvalid(info.objectAddress, objectType, parentType);
|
290
296
|
}
|
291
297
|
|
292
298
|
nftId = _register(info);
|
@@ -294,17 +300,17 @@ contract Registry is
|
|
294
300
|
|
295
301
|
|
296
302
|
/// @dev earliest GIF major version
|
297
|
-
function
|
303
|
+
function getInitialRelease() external view returns (VersionPart) {
|
298
304
|
return VersionPartLib.toVersionPart(_releaseRegistry.INITIAL_GIF_VERSION());
|
299
305
|
}
|
300
306
|
|
301
307
|
/// @dev next GIF release version to be released
|
302
|
-
function
|
308
|
+
function getNextRelease() external view returns (VersionPart) {
|
303
309
|
return _releaseRegistry.getNextVersion();
|
304
310
|
}
|
305
311
|
|
306
312
|
/// @dev latest active GIF release version
|
307
|
-
function
|
313
|
+
function getLatestRelease() external view returns (VersionPart) {
|
308
314
|
return _releaseRegistry.getLatestVersion();
|
309
315
|
}
|
310
316
|
|
@@ -495,7 +501,7 @@ contract Registry is
|
|
495
501
|
_info[nftId] = info;
|
496
502
|
_setAddressForNftId(nftId, objectAddress);
|
497
503
|
|
498
|
-
emit
|
504
|
+
emit LogRegistryObjectRegistered(nftId, parentNftId, objectType, isInterceptor, objectAddress, owner);
|
499
505
|
|
500
506
|
// calls nft receiver(1) and interceptor(2)
|
501
507
|
uint256 mintedTokenId = CHAIN_NFT.mint(
|
@@ -6,11 +6,12 @@ import {IRegistry} from "../registry/IRegistry.sol";
|
|
6
6
|
import {IStaking} from "../staking/IStaking.sol";
|
7
7
|
|
8
8
|
import {Authorization} from "../authorization/Authorization.sol";
|
9
|
-
import {POOL, REGISTRY, STAKING} from "../../contracts/type/ObjectType.sol";
|
9
|
+
import {COMPONENT, POOL, REGISTRY, STAKING} from "../../contracts/type/ObjectType.sol";
|
10
10
|
import {PUBLIC_ROLE} from "../type/RoleId.sol";
|
11
11
|
import {ReleaseRegistry} from "./ReleaseRegistry.sol";
|
12
12
|
import {RegistryAdmin} from "./RegistryAdmin.sol";
|
13
13
|
import {RoleIdLib, ADMIN_ROLE, GIF_ADMIN_ROLE, GIF_MANAGER_ROLE} from "../type/RoleId.sol";
|
14
|
+
import {Staking} from "../staking/Staking.sol";
|
14
15
|
import {StakingStore} from "../staking/StakingStore.sol";
|
15
16
|
import {TokenHandler} from "../shared/TokenHandler.sol";
|
16
17
|
import {TokenRegistry} from "../registry/TokenRegistry.sol";
|
@@ -20,7 +21,6 @@ import {VersionPartLib} from "../type/Version.sol";
|
|
20
21
|
contract RegistryAuthorization
|
21
22
|
is Authorization
|
22
23
|
{
|
23
|
-
|
24
24
|
/// @dev gif core roles
|
25
25
|
string public constant GIF_ADMIN_ROLE_NAME = "GifAdminRole";
|
26
26
|
string public constant GIF_MANAGER_ROLE_NAME = "GifManagerRole";
|
@@ -76,6 +76,14 @@ contract RegistryAuthorization
|
|
76
76
|
maxMemberCount: maxReleases,
|
77
77
|
name: STAKING_SERVICE_ROLE_NAME}));
|
78
78
|
|
79
|
+
_addRole(
|
80
|
+
RoleIdLib.toGenericServiceRoleId(COMPONENT()),
|
81
|
+
_toRoleInfo({
|
82
|
+
adminRoleId: ADMIN_ROLE(),
|
83
|
+
roleType: RoleType.Core,
|
84
|
+
maxMemberCount: maxReleases,
|
85
|
+
name: COMPONENT_SERVICE_ROLE_NAME}));
|
86
|
+
|
79
87
|
_addRole(
|
80
88
|
RoleIdLib.toGenericServiceRoleId(POOL()),
|
81
89
|
_toRoleInfo({
|
@@ -201,12 +209,33 @@ contract RegistryAuthorization
|
|
201
209
|
function _setupStakingAuthorization() internal {
|
202
210
|
IAccess.FunctionInfo[] storage functions;
|
203
211
|
|
204
|
-
// staking public role
|
212
|
+
// staking public role (protected by owner)
|
205
213
|
functions = _authorizeForTarget(
|
206
214
|
STAKING_TARGET_NAME,
|
207
215
|
PUBLIC_ROLE());
|
208
216
|
|
217
|
+
// owner functions (permissioned to staking owner)
|
218
|
+
_authorize(functions, IStaking.setProtocolLockingPeriod.selector, "setProtocolLockingPeriod");
|
219
|
+
_authorize(functions, IStaking.setProtocolRewardRate.selector, "setProtocolRewardRate");
|
220
|
+
_authorize(functions, IStaking.setStakingRate.selector, "setStakingRate");
|
221
|
+
_authorize(functions, IStaking.setStakingService.selector, "setStakingService");
|
222
|
+
_authorize(functions, IStaking.setStakingReader.selector, "setStakingReader");
|
223
|
+
_authorize(functions, IStaking.setTargetManager.selector, "setTargetManager");
|
224
|
+
_authorize(functions, IStaking.addToken.selector, "addToken");
|
209
225
|
_authorize(functions, IStaking.approveTokenHandler.selector, "approveTokenHandler");
|
226
|
+
_authorize(functions, IStaking.withdrawRewardReserves.selector, "withdrawRewardReserves");
|
227
|
+
|
228
|
+
// staker functions (may be permissioned to nft holders)
|
229
|
+
_authorize(functions, IStaking.createStake.selector, "createStake");
|
230
|
+
_authorize(functions, IStaking.stake.selector, "stake");
|
231
|
+
_authorize(functions, IStaking.unstake.selector, "unstake");
|
232
|
+
_authorize(functions, IStaking.restake.selector, "restake");
|
233
|
+
_authorize(functions, IStaking.updateRewards.selector, "updateRewards");
|
234
|
+
_authorize(functions, IStaking.claimRewards.selector, "claimRewards");
|
235
|
+
|
236
|
+
// reward reserve functions
|
237
|
+
_authorize(functions, IStaking.refillRewardReserves.selector, "refillRewardReserves");
|
238
|
+
_authorize(functions, IStaking.withdrawRewardReserves.selector, "withdrawRewardReserves");
|
210
239
|
|
211
240
|
// staking service role
|
212
241
|
functions = _authorizeForTarget(
|
@@ -217,14 +246,15 @@ contract RegistryAuthorization
|
|
217
246
|
_authorize(functions, IStaking.setLockingPeriod.selector, "setLockingPeriod");
|
218
247
|
_authorize(functions, IStaking.setRewardRate.selector, "setRewardRate");
|
219
248
|
_authorize(functions, IStaking.setMaxStakedAmount.selector, "setMaxStakedAmount");
|
220
|
-
_authorize(functions, IStaking.
|
221
|
-
_authorize(functions, IStaking.
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
249
|
+
_authorize(functions, IStaking.refillRewardReservesByService.selector, "refillRewardReservesByService");
|
250
|
+
_authorize(functions, IStaking.withdrawRewardReservesByService.selector, "withdrawRewardReservesByService");
|
251
|
+
|
252
|
+
// pool service role
|
253
|
+
functions = _authorizeForTarget(
|
254
|
+
STAKING_TARGET_NAME,
|
255
|
+
RoleIdLib.toGenericServiceRoleId(COMPONENT()));
|
256
|
+
|
257
|
+
_authorize(functions, IStaking.addTargetToken.selector, "addTargetToken");
|
228
258
|
|
229
259
|
// pool service role
|
230
260
|
functions = _authorizeForTarget(
|
@@ -258,20 +288,25 @@ contract RegistryAuthorization
|
|
258
288
|
STAKING_STORE_TARGET_NAME,
|
259
289
|
getTargetRole(getTarget(STAKING_TARGET_NAME)));
|
260
290
|
|
291
|
+
_authorize(functions, StakingStore.setStakingReader.selector, "setStakingReader");
|
292
|
+
_authorize(functions, StakingStore.setTargetManager.selector, "setTargetManager");
|
293
|
+
_authorize(functions, StakingStore.addTargetToken.selector, "addTargetToken");
|
294
|
+
_authorize(functions, StakingStore.addToken.selector, "addToken");
|
261
295
|
_authorize(functions, StakingStore.setStakingRate.selector, "setStakingRate");
|
262
296
|
_authorize(functions, StakingStore.createTarget.selector, "createTarget");
|
263
|
-
_authorize(functions, StakingStore.
|
264
|
-
_authorize(functions, StakingStore.
|
265
|
-
_authorize(functions, StakingStore.
|
297
|
+
_authorize(functions, StakingStore.setLockingPeriod.selector, "setLockingPeriod");
|
298
|
+
_authorize(functions, StakingStore.setRewardRate.selector, "setRewardRate");
|
299
|
+
_authorize(functions, StakingStore.setMaxStakedAmount.selector, "setMaxStakedAmount");
|
300
|
+
_authorize(functions, StakingStore.refillRewardReserves.selector, "refillRewardReserves");
|
301
|
+
_authorize(functions, StakingStore.withdrawRewardReserves.selector, "withdrawRewardReserves");
|
266
302
|
_authorize(functions, StakingStore.increaseTotalValueLocked.selector, "increaseTotalValueLocked");
|
267
303
|
_authorize(functions, StakingStore.decreaseTotalValueLocked.selector, "decreaseTotalValueLocked");
|
268
|
-
_authorize(functions, StakingStore.
|
269
|
-
_authorize(functions, StakingStore.
|
270
|
-
_authorize(functions, StakingStore.
|
271
|
-
_authorize(functions, StakingStore.restakeRewards.selector, "restakeRewards");
|
304
|
+
_authorize(functions, StakingStore.createStake.selector, "createStake");
|
305
|
+
_authorize(functions, StakingStore.stake.selector, "stake");
|
306
|
+
_authorize(functions, StakingStore.unstake.selector, "unstake");
|
272
307
|
_authorize(functions, StakingStore.updateRewards.selector, "updateRewards");
|
273
|
-
_authorize(functions, StakingStore.
|
274
|
-
_authorize(functions, StakingStore.
|
308
|
+
_authorize(functions, StakingStore.restakeRewards.selector, "restakeRewards");
|
309
|
+
_authorize(functions, StakingStore.claimRewards.selector, "claimRewards");
|
275
310
|
}
|
276
311
|
}
|
277
312
|
|
@@ -14,7 +14,7 @@ import {IServiceAuthorization} from "../authorization/IServiceAuthorization.sol"
|
|
14
14
|
|
15
15
|
import {ContractLib} from "../shared/ContractLib.sol";
|
16
16
|
import {NftId} from "../type/NftId.sol";
|
17
|
-
import {ObjectType, ObjectTypeLib, POOL, RELEASE, REGISTRY, SERVICE, STAKING} from "../type/ObjectType.sol";
|
17
|
+
import {ObjectType, ObjectTypeLib, COMPONENT, POOL, RELEASE, REGISTRY, SERVICE, STAKING} from "../type/ObjectType.sol";
|
18
18
|
import {RegistryAdmin} from "./RegistryAdmin.sol";
|
19
19
|
import {Registry} from "./Registry.sol";
|
20
20
|
import {ReleaseAdmin} from "./ReleaseAdmin.sol";
|
@@ -239,7 +239,7 @@ contract ReleaseRegistry is
|
|
239
239
|
|
240
240
|
_latest = release;
|
241
241
|
_releaseInfo[release].state = ACTIVE();
|
242
|
-
_releaseInfo[release].activatedAt = TimestampLib.
|
242
|
+
_releaseInfo[release].activatedAt = TimestampLib.current();
|
243
243
|
_releaseInfo[release].disabledAt = TimestampLib.max();
|
244
244
|
|
245
245
|
// grant special roles for registry/staking/pool services
|
@@ -258,6 +258,11 @@ contract ReleaseRegistry is
|
|
258
258
|
_registryAdmin.grantServiceRoleForAllVersions(IService(service), STAKING());
|
259
259
|
}
|
260
260
|
|
261
|
+
service = _registry.getServiceAddress(COMPONENT(), release);
|
262
|
+
if(service != address(0)) {
|
263
|
+
_registryAdmin.grantServiceRoleForAllVersions(IService(service), COMPONENT());
|
264
|
+
}
|
265
|
+
|
261
266
|
service = _registry.getServiceAddress(POOL(), release);
|
262
267
|
if(service != address(0)) {
|
263
268
|
_registryAdmin.grantServiceRoleForAllVersions(IService(service), POOL());
|
@@ -283,7 +288,7 @@ contract ReleaseRegistry is
|
|
283
288
|
} else {
|
284
289
|
checkTransition(state, RELEASE(), ACTIVE(), PAUSED());
|
285
290
|
_releaseInfo[release].state = PAUSED();
|
286
|
-
_releaseInfo[release].disabledAt = TimestampLib.
|
291
|
+
_releaseInfo[release].disabledAt = TimestampLib.current();
|
287
292
|
emit LogReleaseDisabled(release);
|
288
293
|
}
|
289
294
|
|
@@ -120,12 +120,9 @@ contract ServiceAuthorizationV3
|
|
120
120
|
_authorize(functions, IStakingService.withdrawInstanceRewardReserves.selector, "withdrawInstanceRewardReserves");
|
121
121
|
|
122
122
|
functions = _authorizeForService(STAKING(), ALL());
|
123
|
-
_authorize(functions, IStakingService.
|
124
|
-
_authorize(functions, IStakingService.
|
125
|
-
_authorize(functions, IStakingService.
|
126
|
-
_authorize(functions, IStakingService.updateRewards.selector, "updateRewards");
|
127
|
-
_authorize(functions, IStakingService.claimRewards.selector, "claimRewards");
|
128
|
-
_authorize(functions, IStakingService.unstake.selector, "unstake");
|
123
|
+
_authorize(functions, IStakingService.createStakeObject.selector, "createStakeObject");
|
124
|
+
_authorize(functions, IStakingService.pullDipToken.selector, "pullDipToken");
|
125
|
+
_authorize(functions, IStakingService.pushDipToken.selector, "pushDipToken");
|
129
126
|
}
|
130
127
|
|
131
128
|
|
@@ -153,8 +150,8 @@ contract ServiceAuthorizationV3
|
|
153
150
|
_authorize(functions, IInstanceService.setStakingLockingPeriod.selector, "setStakingLockingPeriod");
|
154
151
|
_authorize(functions, IInstanceService.setStakingRewardRate.selector, "setStakingRewardRate");
|
155
152
|
_authorize(functions, IInstanceService.setStakingMaxAmount.selector, "setStakingMaxAmount");
|
156
|
-
_authorize(functions, IInstanceService.
|
157
|
-
_authorize(functions, IInstanceService.
|
153
|
+
_authorize(functions, IInstanceService.refillInstanceRewardReserves.selector, "refillInstanceRewardReserves");
|
154
|
+
_authorize(functions, IInstanceService.withdrawInstanceRewardReserves.selector, "withdrawInstanceRewardReserves");
|
158
155
|
}
|
159
156
|
|
160
157
|
/// @dev Accounting service function authorization.
|
@@ -184,6 +181,7 @@ contract ServiceAuthorizationV3
|
|
184
181
|
_authorize(functions, IAccountingService.decreasePoolBalance.selector, "decreasePoolBalance");
|
185
182
|
_authorize(functions, IAccountingService.increaseBundleBalanceForPool.selector, "increaseBundleBalanceForPool");
|
186
183
|
_authorize(functions, IAccountingService.decreaseBundleBalanceForPool.selector, "decreaseBundleBalanceForPool");
|
184
|
+
_authorize(functions, IAccountingService.increaseProductFeesForPool.selector, "increaseProductFeesForPool");
|
187
185
|
|
188
186
|
}
|
189
187
|
|
@@ -215,7 +213,8 @@ contract ServiceAuthorizationV3
|
|
215
213
|
functions = _authorizeForService(RISK(), ALL());
|
216
214
|
_authorize(functions, IRiskService.createRisk.selector, "createRisk");
|
217
215
|
_authorize(functions, IRiskService.updateRisk.selector, "updateRisk");
|
218
|
-
_authorize(functions, IRiskService.
|
216
|
+
_authorize(functions, IRiskService.setRiskLocked.selector, "setRiskLocked");
|
217
|
+
_authorize(functions, IRiskService.closeRisk.selector, "closeRisk");
|
219
218
|
}
|
220
219
|
|
221
220
|
/// @dev Distribution service function authorization.
|
@@ -228,7 +227,7 @@ contract ServiceAuthorizationV3
|
|
228
227
|
_authorize(functions, IClaimService.confirm.selector, "confirm");
|
229
228
|
_authorize(functions, IClaimService.decline.selector, "decline");
|
230
229
|
_authorize(functions, IClaimService.revoke.selector, "revoke");
|
231
|
-
_authorize(functions, IClaimService.
|
230
|
+
_authorize(functions, IClaimService.cancelConfirmedClaim.selector, "cancelConfirmedClaim");
|
232
231
|
_authorize(functions, IClaimService.createPayoutForBeneficiary.selector, "createPayoutForBeneficiary");
|
233
232
|
_authorize(functions, IClaimService.createPayout.selector, "createPayout");
|
234
233
|
_authorize(functions, IClaimService.processPayout.selector, "processPayout");
|
@@ -295,8 +294,7 @@ contract ServiceAuthorizationV3
|
|
295
294
|
functions = _authorizeForService(BUNDLE(), ALL());
|
296
295
|
_authorize(functions, IBundleService.create.selector, "create");
|
297
296
|
_authorize(functions, IBundleService.extend.selector, "extend");
|
298
|
-
_authorize(functions, IBundleService.
|
299
|
-
_authorize(functions, IBundleService.unlock.selector, "unlock");
|
297
|
+
_authorize(functions, IBundleService.setLocked.selector, "setLocked");
|
300
298
|
_authorize(functions, IBundleService.setFee.selector, "setFee");
|
301
299
|
}
|
302
300
|
|