@etherisc/gif-next 0.0.2-7c8d286-020 → 0.0.2-7d488b3-675
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 +1 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +32 -48
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +26 -34
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +246 -361
- package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +39 -8
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +23 -96
- 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 +184 -278
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +0 -32
- 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 +109 -33
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +41 -96
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +65 -0
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +106 -142
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +53 -61
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +65 -0
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +20 -40
- 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 +17 -33
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +41 -96
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +59 -75
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +41 -96
- 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 +118 -42
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +41 -96
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +23 -23
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +27 -43
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +41 -96
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +29 -45
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +41 -96
- 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 +7 -85
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +11 -54
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +25 -95
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +405 -512
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +41 -96
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +2 -2
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +63 -86
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +36 -26
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2 -2
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +2 -2
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
- 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 +14 -14
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +30 -93
- 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/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +42 -58
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +31 -39
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +41 -96
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +58 -74
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +39 -47
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +22 -38
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +74 -106
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +47 -63
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +26 -71
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +23 -35
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +41 -96
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +80 -96
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +50 -58
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +0 -21
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +0 -21
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +0 -21
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +86 -94
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +18 -452
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +53 -57
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +52 -89
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +36 -44
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +26 -55
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +23 -27
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +2 -2
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +350 -440
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +18 -18
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +19 -19
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +368 -473
- 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 +124 -128
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +6 -6
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +102 -63
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +49 -41
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +4 -60
- 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/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +24 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +2 -2
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- 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 +2 -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/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/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 +9 -74
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +3 -74
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +440 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +57 -141
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +2 -2
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +34 -50
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +57 -30
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +29 -124
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +23 -35
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +128 -142
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +14 -24
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
- package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +31 -33
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +2 -2
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +2 -56
- 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 +4 -4
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
- package/contracts/accounting/AccountingService.sol +3 -2
- package/contracts/authorization/AccessAdmin.sol +186 -201
- package/contracts/authorization/AccessManagerCloneable.sol +31 -40
- package/contracts/authorization/Authorization.sol +33 -61
- package/contracts/authorization/IAccessAdmin.sol +36 -63
- package/contracts/authorization/IAuthorization.sol +0 -6
- package/contracts/distribution/BasicDistribution.sol +3 -5
- package/contracts/distribution/BasicDistributionAuthorization.sol +1 -1
- package/contracts/distribution/Distribution.sol +47 -4
- package/contracts/distribution/DistributionService.sol +6 -10
- package/contracts/distribution/IDistributionComponent.sol +9 -0
- package/contracts/distribution/IDistributionService.sol +5 -3
- package/contracts/instance/IInstance.sol +8 -43
- package/contracts/instance/IInstanceService.sol +2 -14
- package/contracts/instance/Instance.sol +13 -62
- package/contracts/instance/InstanceAdmin.sol +107 -120
- package/contracts/instance/InstanceAuthorizationV3.sol +21 -43
- package/contracts/instance/InstanceReader.sol +1 -1
- package/contracts/instance/InstanceService.sol +60 -118
- package/contracts/oracle/BasicOracleAuthorization.sol +1 -1
- package/contracts/oracle/OracleService.sol +4 -4
- package/contracts/pool/BasicPoolAuthorization.sol +1 -1
- package/contracts/pool/PoolLib.sol +1 -94
- package/contracts/pool/PoolService.sol +89 -91
- package/contracts/product/ApplicationService.sol +1 -10
- package/contracts/product/BasicProductAuthorization.sol +1 -1
- package/contracts/product/ClaimService.sol +0 -8
- package/contracts/product/IApplicationService.sol +0 -2
- package/contracts/product/IPricingService.sol +0 -1
- package/contracts/product/IRiskService.sol +0 -3
- package/contracts/product/PolicyService.sol +53 -35
- package/contracts/product/PolicyServiceLib.sol +1 -55
- package/contracts/product/PricingService.sol +0 -5
- package/contracts/product/RiskService.sol +0 -10
- package/contracts/registry/RegistryAdmin.sol +229 -133
- package/contracts/registry/ReleaseAdmin.sol +22 -30
- package/contracts/registry/ReleaseRegistry.sol +33 -39
- package/contracts/registry/ServiceAuthorizationV3.sol +3 -88
- package/contracts/shared/Component.sol +6 -6
- package/contracts/shared/ComponentService.sol +29 -33
- package/contracts/shared/ContractLib.sol +0 -28
- package/contracts/shared/IComponentService.sol +6 -4
- package/contracts/shared/InitializableERC165.sol +1 -9
- package/contracts/shared/NftOwnable.sol +1 -2
- package/contracts/shared/Registerable.sol +4 -1
- package/contracts/shared/TokenHandler.sol +4 -5
- package/contracts/staking/IStaking.sol +2 -12
- package/contracts/staking/IStakingService.sol +1 -11
- package/contracts/staking/{StakingLib.sol → StakeManagerLib.sol} +22 -79
- package/contracts/staking/Staking.sol +13 -33
- package/contracts/staking/StakingReader.sol +15 -5
- package/contracts/staking/StakingService.sol +2 -39
- package/contracts/staking/StakingStore.sol +1 -2
- package/contracts/type/ObjectType.sol +14 -5
- package/contracts/type/Version.sol +0 -39
- package/package.json +1 -1
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +0 -4
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +0 -673
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +0 -4
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +0 -878
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +0 -4
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +0 -469
- package/contracts/authorization/AccessAdminLib.sol +0 -183
- package/contracts/registry/RegistryAuthorization.sol +0 -267
@@ -4,6 +4,7 @@ pragma solidity ^0.8.20;
|
|
4
4
|
import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
|
5
5
|
|
6
6
|
import {IRegistry} from "../registry/IRegistry.sol";
|
7
|
+
import {IRegistryService} from "../registry/IRegistryService.sol";
|
7
8
|
import {IRelease} from "../registry/IRelease.sol";
|
8
9
|
import {IStaking} from "./IStaking.sol";
|
9
10
|
import {IVersionable} from "../upgradeability/IVersionable.sol";
|
@@ -13,10 +14,10 @@ import {Component} from "../shared/Component.sol";
|
|
13
14
|
import {IComponent} from "../shared/IComponent.sol";
|
14
15
|
import {IComponentService} from "../shared/IComponentService.sol";
|
15
16
|
import {NftId} from "../type/NftId.sol";
|
16
|
-
import {ObjectType,
|
17
|
+
import {ObjectType, COMPONENT, STAKING} from "../type/ObjectType.sol";
|
17
18
|
import {Seconds} from "../type/Seconds.sol";
|
18
19
|
import {Registerable} from "../shared/Registerable.sol";
|
19
|
-
import {
|
20
|
+
import {StakeManagerLib} from "./StakeManagerLib.sol";
|
20
21
|
import {StakingReader} from "./StakingReader.sol";
|
21
22
|
import {StakingStore} from "./StakingStore.sol";
|
22
23
|
import {TargetManagerLib} from "./TargetManagerLib.sol";
|
@@ -146,8 +147,7 @@ contract Staking is
|
|
146
147
|
objectType: expectedObjectType,
|
147
148
|
chainId: chainId,
|
148
149
|
lockingPeriod: initialLockingPeriod,
|
149
|
-
rewardRate: initialRewardRate
|
150
|
-
maxStakedAmount: AmountLib.max()}));
|
150
|
+
rewardRate: initialRewardRate}));
|
151
151
|
}
|
152
152
|
|
153
153
|
|
@@ -195,21 +195,6 @@ contract Staking is
|
|
195
195
|
emit LogStakingRewardRateSet(targetNftId, oldRewardRate, rewardRate);
|
196
196
|
}
|
197
197
|
|
198
|
-
function setMaxStakedAmount(NftId targetNftId, Amount maxStakedAmount)
|
199
|
-
external
|
200
|
-
virtual
|
201
|
-
restricted()
|
202
|
-
onlyTarget(targetNftId)
|
203
|
-
{
|
204
|
-
IStaking.TargetInfo memory targetInfo = getStakingReader().getTargetInfo(targetNftId);
|
205
|
-
|
206
|
-
targetInfo.maxStakedAmount = maxStakedAmount;
|
207
|
-
|
208
|
-
_getStakingStorage()._store.updateTarget(targetNftId, targetInfo);
|
209
|
-
|
210
|
-
emit LogStakingMaxStakedAmountSet(targetNftId, maxStakedAmount);
|
211
|
-
}
|
212
|
-
|
213
198
|
|
214
199
|
function refillRewardReserves(NftId targetNftId, Amount dipAmount)
|
215
200
|
external
|
@@ -291,7 +276,7 @@ contract Staking is
|
|
291
276
|
restricted() // only staking service
|
292
277
|
{
|
293
278
|
StakingStorage storage $ = _getStakingStorage();
|
294
|
-
Timestamp lockedUntil =
|
279
|
+
Timestamp lockedUntil = StakeManagerLib.checkCreateParameters(
|
295
280
|
$._reader,
|
296
281
|
targetNftId,
|
297
282
|
stakeAmount);
|
@@ -321,7 +306,7 @@ contract Staking is
|
|
321
306
|
returns (Amount stakeBalance)
|
322
307
|
{
|
323
308
|
StakingStorage storage $ = _getStakingStorage();
|
324
|
-
stakeBalance =
|
309
|
+
stakeBalance = StakeManagerLib.stake(
|
325
310
|
getRegistry(),
|
326
311
|
$._reader,
|
327
312
|
$._store,
|
@@ -332,26 +317,21 @@ contract Staking is
|
|
332
317
|
|
333
318
|
function restake(
|
334
319
|
NftId stakeNftId,
|
335
|
-
NftId
|
320
|
+
NftId newTargetNftId
|
336
321
|
)
|
337
322
|
external
|
338
323
|
virtual
|
339
324
|
restricted() // only staking service
|
340
325
|
onlyStake(stakeNftId)
|
341
|
-
returns (
|
326
|
+
returns (NftId newStakeNftId)
|
342
327
|
{
|
343
|
-
_checkNftType(stakeNftId, STAKE());
|
344
|
-
_checkNftType(newStakeNftId, STAKE());
|
345
|
-
|
346
328
|
// TODO add check that allows additional staking amount
|
347
329
|
StakingStorage storage $ = _getStakingStorage();
|
348
|
-
|
349
|
-
|
350
|
-
$._store,
|
351
|
-
stakeNftId,
|
352
|
-
newStakeNftId);
|
330
|
+
|
331
|
+
// TODO implement
|
353
332
|
}
|
354
333
|
|
334
|
+
|
355
335
|
function updateRewards(NftId stakeNftId)
|
356
336
|
external
|
357
337
|
virtual
|
@@ -400,7 +380,7 @@ contract Staking is
|
|
400
380
|
{
|
401
381
|
StakingStorage storage $ = _getStakingStorage();
|
402
382
|
|
403
|
-
|
383
|
+
StakeManagerLib.checkUnstakeParameters($._reader, stakeNftId);
|
404
384
|
|
405
385
|
// update rewards since last update
|
406
386
|
NftId targetNftId = _updateRewards($._reader, $._store, stakeNftId);
|
@@ -472,7 +452,7 @@ contract Staking is
|
|
472
452
|
UFixed rewardRate;
|
473
453
|
|
474
454
|
(targetNftId, rewardRate) = reader.getTargetRewardRate(stakeNftId);
|
475
|
-
(Amount rewardIncrement, ) =
|
455
|
+
(Amount rewardIncrement, ) = StakeManagerLib.calculateRewardIncrease(
|
476
456
|
reader,
|
477
457
|
stakeNftId,
|
478
458
|
rewardRate);
|
@@ -77,6 +77,21 @@ contract StakingReader is
|
|
77
77
|
}
|
78
78
|
|
79
79
|
|
80
|
+
function isActive(NftId targetNftId) external view returns (bool) {
|
81
|
+
return _store.getTargetNftIdSet().isActive(targetNftId);
|
82
|
+
}
|
83
|
+
|
84
|
+
|
85
|
+
function activeTargets() external view returns (uint256) {
|
86
|
+
return _store.getTargetNftIdSet().activeNftIds();
|
87
|
+
}
|
88
|
+
|
89
|
+
|
90
|
+
function getActiveTargetNftId(uint256 idx) external view returns (NftId) {
|
91
|
+
return _store.getTargetNftIdSet().getActiveNftId(idx);
|
92
|
+
}
|
93
|
+
|
94
|
+
|
80
95
|
function getTargetNftId(NftId stakeNftId) public view returns (NftId targetNftId) {
|
81
96
|
return _registry.getParentNftId(stakeNftId);
|
82
97
|
}
|
@@ -104,11 +119,6 @@ contract StakingReader is
|
|
104
119
|
rewardRate = getTargetInfo(targetNftId).rewardRate;
|
105
120
|
}
|
106
121
|
|
107
|
-
/// @dev get the max staked amount allowed for the specified target nft id.
|
108
|
-
function getTargetMaxStakedAmount(NftId targetNftId) external view returns (Amount maxStakedAmount) {
|
109
|
-
return getTargetInfo(targetNftId).maxStakedAmount;
|
110
|
-
}
|
111
|
-
|
112
122
|
|
113
123
|
/// @dev get the reward rate for the specified target nft id.
|
114
124
|
function getRewardRate(NftId targetNftId) external view returns (UFixed rewardRate) {
|
@@ -98,17 +98,6 @@ contract StakingService is
|
|
98
98
|
rewardRate);
|
99
99
|
}
|
100
100
|
|
101
|
-
function setInstanceMaxStakedAmount(NftId instanceNftId, Amount maxStakingAmount)
|
102
|
-
external
|
103
|
-
virtual
|
104
|
-
restricted()
|
105
|
-
{
|
106
|
-
_checkNftType(instanceNftId, INSTANCE());
|
107
|
-
_getStakingServiceStorage()._staking.setMaxStakedAmount(
|
108
|
-
instanceNftId,
|
109
|
-
maxStakingAmount);
|
110
|
-
}
|
111
|
-
|
112
101
|
|
113
102
|
function refillInstanceRewardReserves(NftId instanceNftId, address rewardProvider, Amount dipAmount)
|
114
103
|
external
|
@@ -238,36 +227,13 @@ contract StakingService is
|
|
238
227
|
restricted()
|
239
228
|
onlyNftOwner(stakeNftId)
|
240
229
|
returns (
|
241
|
-
NftId newStakeNftId
|
242
|
-
Amount newStakeBalance
|
230
|
+
NftId newStakeNftId
|
243
231
|
)
|
244
232
|
{
|
245
233
|
_checkNftType(stakeNftId, STAKE());
|
246
234
|
|
247
235
|
StakingServiceStorage storage $ = _getStakingServiceStorage();
|
248
|
-
|
249
|
-
|
250
|
-
if (! getRegistry().isRegistered(newTargetNftId)) {
|
251
|
-
revert ErrorStakingServiceTargetUnknown(newTargetNftId);
|
252
|
-
}
|
253
|
-
|
254
|
-
// register new stake object with registry
|
255
|
-
newStakeNftId = $._registryService.registerStake(
|
256
|
-
IRegistry.ObjectInfo({
|
257
|
-
nftId: NftIdLib.zero(),
|
258
|
-
parentNftId: newTargetNftId,
|
259
|
-
objectType: STAKE(),
|
260
|
-
isInterceptor: false,
|
261
|
-
objectAddress: address(0),
|
262
|
-
initialOwner: stakeOwner,
|
263
|
-
data: ""
|
264
|
-
}));
|
265
|
-
|
266
|
-
newStakeBalance = $._staking.restake(
|
267
|
-
stakeNftId,
|
268
|
-
newStakeNftId);
|
269
|
-
|
270
|
-
emit LogStakingServiceStakeRestaked(stakeOwner, stakeNftId, newStakeNftId, newTargetNftId, newStakeBalance);
|
236
|
+
// TODO implement
|
271
237
|
}
|
272
238
|
|
273
239
|
|
@@ -348,7 +314,6 @@ contract StakingService is
|
|
348
314
|
|
349
315
|
function getDipToken()
|
350
316
|
external
|
351
|
-
view
|
352
317
|
virtual
|
353
318
|
returns (IERC20Metadata dip)
|
354
319
|
{
|
@@ -358,7 +323,6 @@ contract StakingService is
|
|
358
323
|
|
359
324
|
function getTokenHandler()
|
360
325
|
external
|
361
|
-
view
|
362
326
|
virtual
|
363
327
|
returns (TokenHandler tokenHandler)
|
364
328
|
{
|
@@ -368,7 +332,6 @@ contract StakingService is
|
|
368
332
|
|
369
333
|
function getStaking()
|
370
334
|
external
|
371
|
-
view
|
372
335
|
virtual
|
373
336
|
returns (IStaking staking)
|
374
337
|
{
|
@@ -91,8 +91,7 @@ contract StakingStore is
|
|
91
91
|
objectType: PROTOCOL(),
|
92
92
|
chainId: 1,
|
93
93
|
lockingPeriod: TargetManagerLib.getDefaultLockingPeriod(),
|
94
|
-
rewardRate: TargetManagerLib.getDefaultRewardRate()
|
95
|
-
maxStakedAmount: AmountLib.max()}));
|
94
|
+
rewardRate: TargetManagerLib.getDefaultRewardRate()}));
|
96
95
|
}
|
97
96
|
|
98
97
|
|
@@ -1,8 +1,6 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {VersionPart} from "./Version.sol";
|
5
|
-
|
6
4
|
type ObjectType is uint8;
|
7
5
|
|
8
6
|
// type bindings
|
@@ -163,6 +161,8 @@ function neObjectType(ObjectType a, ObjectType b) pure returns (bool isSame) {
|
|
163
161
|
// library functions that operate on user defined type
|
164
162
|
library ObjectTypeLib {
|
165
163
|
|
164
|
+
error ErrorVersionTooBig(uint256 version);
|
165
|
+
|
166
166
|
function zero() public pure returns (ObjectType) {
|
167
167
|
return ObjectType.wrap(0);
|
168
168
|
}
|
@@ -242,15 +242,19 @@ library ObjectTypeLib {
|
|
242
242
|
function toVersionedName(
|
243
243
|
string memory name,
|
244
244
|
string memory suffix,
|
245
|
-
|
245
|
+
uint256 version
|
246
246
|
)
|
247
247
|
external
|
248
248
|
pure
|
249
249
|
returns (string memory versionedName)
|
250
250
|
{
|
251
|
+
if (version > maxNumReleases()) {
|
252
|
+
revert ErrorVersionTooBig(version);
|
253
|
+
}
|
254
|
+
|
251
255
|
string memory versionName = "_v0";
|
252
256
|
|
253
|
-
if (
|
257
|
+
if (version >= 10) {
|
254
258
|
versionName = "_v";
|
255
259
|
}
|
256
260
|
|
@@ -259,7 +263,12 @@ library ObjectTypeLib {
|
|
259
263
|
name,
|
260
264
|
suffix,
|
261
265
|
versionName,
|
262
|
-
|
266
|
+
toString(version)));
|
267
|
+
}
|
268
|
+
|
269
|
+
/// @dev returns the max number of releases (major versions) this gif setup can handle.
|
270
|
+
function maxNumReleases() public pure returns (uint8) {
|
271
|
+
return 99;
|
263
272
|
}
|
264
273
|
|
265
274
|
/// @dev returns the provied int as a string
|
@@ -8,9 +8,7 @@ using {
|
|
8
8
|
versionPartEq as ==,
|
9
9
|
versionPartNe as !=,
|
10
10
|
VersionPartLib.eqz,
|
11
|
-
VersionPartLib.gtz,
|
12
11
|
VersionPartLib.toInt,
|
13
|
-
VersionPartLib.toString,
|
14
12
|
VersionPartLib.isValidRelease
|
15
13
|
}
|
16
14
|
for VersionPart global;
|
@@ -20,9 +18,6 @@ function versionPartEq(VersionPart a, VersionPart b) pure returns(bool isSame) {
|
|
20
18
|
function versionPartNe(VersionPart a, VersionPart b) pure returns(bool isSame) { return VersionPart.unwrap(a) != VersionPart.unwrap(b); }
|
21
19
|
|
22
20
|
library VersionPartLib {
|
23
|
-
|
24
|
-
error ErrorReleaseTooBig(VersionPart releaseMax, VersionPart release);
|
25
|
-
|
26
21
|
function releaseMin() public pure returns (VersionPart) { return toVersionPart(3); }
|
27
22
|
function releaseMax() public pure returns (VersionPart) { return toVersionPart(99); }
|
28
23
|
|
@@ -31,41 +26,7 @@ library VersionPartLib {
|
|
31
26
|
return 3 <= releaseInt && releaseInt <= 99;
|
32
27
|
}
|
33
28
|
|
34
|
-
function toString(VersionPart a) external pure returns (string memory) {
|
35
|
-
if (a > releaseMax()) {
|
36
|
-
revert ErrorReleaseTooBig(releaseMax(), a);
|
37
|
-
}
|
38
|
-
|
39
|
-
uint256 value = VersionPart.unwrap(a);
|
40
|
-
if (value == 0) {
|
41
|
-
return "0";
|
42
|
-
}
|
43
|
-
|
44
|
-
uint256 temp = value;
|
45
|
-
uint256 digits = 0;
|
46
|
-
while (temp != 0) {
|
47
|
-
digits++;
|
48
|
-
temp /= 10;
|
49
|
-
}
|
50
|
-
|
51
|
-
bytes memory buffer = new bytes(digits);
|
52
|
-
uint index = digits - 1;
|
53
|
-
|
54
|
-
temp = value;
|
55
|
-
while (temp != 0) {
|
56
|
-
buffer[index] = bytes1(uint8(48 + temp % 10));
|
57
|
-
temp /= 10;
|
58
|
-
|
59
|
-
if (index > 0) {
|
60
|
-
index--;
|
61
|
-
}
|
62
|
-
}
|
63
|
-
|
64
|
-
return string(buffer);
|
65
|
-
}
|
66
|
-
|
67
29
|
function eqz(VersionPart a) external pure returns(bool) { return VersionPart.unwrap(a) == 0; }
|
68
|
-
function gtz(VersionPart a) external pure returns(bool) { return VersionPart.unwrap(a) > 0; }
|
69
30
|
function toInt(VersionPart a) external pure returns(uint256) { return VersionPart.unwrap(a); }
|
70
31
|
function toVersionPart(uint256 a) public pure returns(VersionPart) { return VersionPart.wrap(uint8(a)); }
|
71
32
|
}
|
package/package.json
CHANGED