@etherisc/gif-next 0.0.2-85cbb88-630 → 0.0.2-85e1eb3-876
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 +103 -9
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +4 -0
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +1075 -0
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +4 -0
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +790 -0
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +4 -0
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +843 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +673 -262
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +1289 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +202 -5
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +456 -24
- 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 +549 -209
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +215 -18
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +265 -16
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +473 -17
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +212 -473
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +431 -36
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +139 -381
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +814 -399
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +228 -124
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +135 -187
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +582 -141
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +22 -0
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +1484 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +805 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +2053 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +805 -0
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +376 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +1439 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +805 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1171 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1647 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +805 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2585 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +805 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +193 -45
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +567 -67
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +385 -60
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +573 -165
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1034 -311
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +369 -68
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1685 -774
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +399 -231
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +143 -105
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +983 -782
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +4 -0
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +866 -0
- 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 +46 -5
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +16 -5
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +168 -0
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +152 -350
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +429 -37
- 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 +129 -129
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +98 -11
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +128 -318
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +198 -190
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +177 -97
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +198 -433
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +430 -35
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +574 -270
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +216 -104
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +383 -53
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +158 -212
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +711 -340
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +148 -392
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +4 -0
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +522 -0
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +925 -545
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +230 -106
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +353 -180
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +159 -99
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +287 -427
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +430 -35
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +466 -245
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +187 -123
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +301 -9
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +350 -18
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +417 -101
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +183 -80
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +272 -222
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
- package/artifacts/contracts/{shared/ComponentVerifyingService.sol/ComponentVerifyingService.json → product/IRiskService.sol/IRiskService.json} +283 -157
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +532 -311
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +4 -0
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +783 -0
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +196 -108
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +249 -329
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +165 -137
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +279 -419
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +873 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +774 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +59 -16
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +394 -35
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +97 -148
- package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +4 -0
- package/artifacts/contracts/registry/IRelease.sol/IRelease.json +24 -0
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +5 -18
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +620 -92
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +795 -394
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +1061 -0
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +136 -290
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +141 -89
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +2152 -0
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +47 -6
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +483 -253
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +489 -20
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +120 -60
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +86 -277
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +624 -560
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +198 -120
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +632 -0
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +24 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.json +30 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +40 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +92 -93
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +535 -240
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +118 -129
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +42 -6
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +36 -0
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +35 -0
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +15 -47
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +167 -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 +84 -2
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +53 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +117 -318
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +48 -7
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +42 -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 +41 -57
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +19 -141
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +141 -97
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -15
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +86 -111
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +585 -12
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +484 -0
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +172 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1087 -160
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +235 -123
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +1273 -405
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +424 -0
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +46 -5
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +225 -104
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +175 -223
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +282 -281
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +144 -96
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +962 -729
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +135 -49
- 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 +63 -10
- 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 +174 -0
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +28 -4
- 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 +98 -37
- 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 +4 -0
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +33 -0
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +23 -4
- 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 +33 -31
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +19 -19
- 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 +125 -7
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +42 -157
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +69 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorLib.json +21 -2
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.json +15 -2
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.json +50 -2
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +24 -5
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +109 -35
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -21
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +120 -2
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
- package/artifacts/contracts/{shared → upgradeability}/IVersionable.sol/IVersionable.json +11 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +656 -0
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +142 -0
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
- package/artifacts/contracts/{shared → upgradeability}/Versionable.sol/Versionable.json +11 -1
- package/contracts/accounting/AccountingService.sol +274 -0
- package/contracts/accounting/AccountingServiceManager.sol +38 -0
- package/contracts/accounting/IAccountingService.sol +47 -0
- package/contracts/authorization/AccessAdmin.sol +458 -269
- package/contracts/authorization/AccessAdminLib.sol +396 -0
- package/contracts/authorization/AccessManagerCloneable.sol +146 -4
- package/contracts/authorization/Authorization.sol +159 -208
- package/contracts/authorization/IAccess.sol +25 -6
- package/contracts/authorization/IAccessAdmin.sol +87 -79
- package/contracts/authorization/IAuthorization.sol +9 -36
- package/contracts/authorization/IServiceAuthorization.sol +57 -17
- package/contracts/authorization/ServiceAuthorization.sol +255 -25
- package/contracts/distribution/BasicDistribution.sol +21 -29
- package/contracts/distribution/BasicDistributionAuthorization.sol +34 -10
- package/contracts/distribution/Distribution.sol +48 -84
- package/contracts/distribution/DistributionService.sol +276 -130
- package/contracts/distribution/DistributionServiceManager.sol +8 -11
- package/contracts/distribution/IDistributionComponent.sol +11 -14
- package/contracts/distribution/IDistributionService.sol +56 -26
- package/contracts/examples/fire/DamageLevel.sol +59 -0
- package/contracts/examples/fire/FirePool.sol +86 -0
- package/contracts/examples/fire/FirePoolAuthorization.sol +35 -0
- package/contracts/examples/fire/FireProduct.sol +433 -0
- package/contracts/examples/fire/FireProductAuthorization.sol +45 -0
- package/contracts/examples/fire/FireUSD.sol +26 -0
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +81 -0
- package/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleOracle.sol +133 -0
- package/contracts/examples/unpermissioned/SimplePool.sol +102 -0
- package/contracts/examples/unpermissioned/SimplePoolAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleProduct.sol +437 -0
- package/contracts/examples/unpermissioned/SimpleProductAuthorization.sol +28 -0
- package/contracts/instance/BundleSet.sol +42 -38
- package/contracts/instance/IInstance.sol +102 -43
- package/contracts/instance/IInstanceService.sol +59 -34
- package/contracts/instance/Instance.sol +193 -100
- package/contracts/instance/InstanceAdmin.sol +275 -158
- package/contracts/instance/InstanceAuthorizationV3.sol +120 -56
- package/contracts/instance/InstanceReader.sol +478 -251
- package/contracts/instance/InstanceService.sol +293 -236
- package/contracts/instance/InstanceServiceManager.sol +8 -13
- package/contracts/instance/InstanceStore.sol +24 -2
- package/contracts/instance/RiskSet.sol +126 -0
- package/contracts/instance/base/BalanceStore.sol +4 -6
- package/contracts/instance/base/ObjectCounter.sol +1 -2
- package/contracts/instance/base/ObjectLifecycle.sol +13 -10
- package/contracts/instance/base/ObjectSet.sol +31 -33
- package/contracts/instance/base/ObjectSetHelperLib.sol +30 -0
- package/contracts/instance/module/IBundle.sol +6 -5
- package/contracts/instance/module/IComponents.sol +30 -20
- package/contracts/instance/module/IDistribution.sol +21 -9
- package/contracts/instance/module/IPolicy.sol +50 -29
- package/contracts/instance/module/IRisk.sol +5 -0
- package/contracts/mock/Dip.sol +1 -1
- package/contracts/oracle/BasicOracle.sol +2 -5
- package/contracts/oracle/BasicOracleAuthorization.sol +15 -8
- package/contracts/oracle/IOracle.sol +9 -4
- package/contracts/oracle/IOracleComponent.sol +2 -1
- package/contracts/oracle/IOracleService.sol +2 -1
- package/contracts/oracle/Oracle.sol +23 -26
- package/contracts/oracle/OracleService.sol +119 -87
- package/contracts/oracle/OracleServiceManager.sol +8 -11
- package/contracts/pool/BasicPool.sol +39 -41
- package/contracts/pool/BasicPoolAuthorization.sol +43 -11
- package/contracts/pool/BundleService.sol +218 -128
- package/contracts/pool/BundleServiceManager.sol +8 -11
- package/contracts/pool/IBundleService.sol +43 -33
- package/contracts/pool/IPoolComponent.sol +20 -10
- package/contracts/pool/IPoolService.sol +97 -77
- package/contracts/pool/Pool.sol +146 -124
- package/contracts/pool/PoolLib.sol +341 -0
- package/contracts/pool/PoolService.sol +419 -256
- package/contracts/pool/PoolServiceManager.sol +6 -9
- package/contracts/product/ApplicationService.sol +153 -80
- package/contracts/product/ApplicationServiceManager.sol +6 -6
- package/contracts/product/BasicProduct.sol +13 -46
- package/contracts/product/BasicProductAuthorization.sol +33 -10
- package/contracts/product/ClaimService.sol +382 -194
- package/contracts/product/ClaimServiceManager.sol +6 -6
- package/contracts/product/IApplicationService.sol +29 -3
- package/contracts/product/IClaimService.sol +48 -11
- package/contracts/product/IPolicyService.sol +61 -37
- package/contracts/product/IPricingService.sol +11 -10
- package/contracts/product/IProductComponent.sol +28 -5
- package/contracts/product/IRiskService.sol +48 -0
- package/contracts/product/PolicyService.sol +443 -273
- package/contracts/product/PolicyServiceLib.sol +139 -0
- package/contracts/product/PolicyServiceManager.sol +6 -9
- package/contracts/product/PricingService.sol +90 -84
- package/contracts/product/PricingServiceManager.sol +6 -9
- package/contracts/product/Product.sol +201 -100
- package/contracts/product/RiskService.sol +190 -0
- package/contracts/product/RiskServiceManager.sol +39 -0
- package/contracts/registry/ChainNft.sol +72 -40
- package/contracts/registry/IRegistry.sol +83 -32
- package/contracts/registry/IRegistryService.sol +3 -10
- package/contracts/registry/IRelease.sol +29 -0
- package/contracts/registry/ITransferInterceptor.sol +1 -2
- package/contracts/registry/Registry.sol +370 -212
- package/contracts/registry/RegistryAdmin.sol +110 -287
- package/contracts/registry/RegistryAuthorization.sol +308 -0
- package/contracts/registry/RegistryService.sol +42 -67
- package/contracts/registry/RegistryServiceManager.sol +5 -5
- package/contracts/registry/ReleaseAdmin.sol +195 -0
- package/contracts/registry/ReleaseLifecycle.sol +8 -3
- package/contracts/registry/ReleaseRegistry.sol +279 -241
- package/contracts/registry/ServiceAuthorizationV3.sol +205 -63
- package/contracts/registry/TokenRegistry.sol +61 -59
- package/contracts/shared/Component.sol +70 -137
- package/contracts/shared/ComponentService.sol +452 -346
- package/contracts/shared/ComponentServiceManager.sol +10 -7
- package/contracts/shared/ContractLib.sol +312 -0
- package/contracts/shared/IComponent.sol +6 -18
- package/contracts/shared/IComponentService.sol +50 -41
- package/contracts/shared/IInstanceLinkedComponent.sol +7 -27
- package/contracts/shared/IKeyValueStore.sol +1 -1
- package/contracts/shared/ILifecycle.sol +3 -1
- package/contracts/shared/INftOwnable.sol +4 -0
- package/contracts/shared/IPolicyHolder.sol +12 -22
- package/contracts/shared/IRegisterable.sol +22 -1
- package/contracts/shared/IService.sol +4 -6
- package/contracts/shared/{ERC165.sol → InitializableERC165.sol} +11 -3
- package/contracts/shared/InstanceLinkedComponent.sol +83 -40
- package/contracts/shared/KeyValueStore.sol +4 -4
- package/contracts/shared/Lifecycle.sol +15 -4
- package/contracts/shared/NftOwnable.sol +33 -11
- package/contracts/shared/PolicyHolder.sol +20 -59
- package/contracts/shared/Registerable.sol +52 -21
- package/contracts/shared/RegistryLinked.sol +9 -14
- package/contracts/shared/Service.sol +22 -38
- package/contracts/shared/TokenHandler.sol +310 -26
- package/contracts/shared/TokenHandlerDeployerLib.sol +20 -0
- package/contracts/staking/IStaking.sol +164 -66
- package/contracts/staking/IStakingService.sol +45 -78
- package/contracts/staking/Staking.sol +639 -228
- package/contracts/staking/StakingLib.sol +168 -0
- package/contracts/staking/StakingManager.sol +11 -13
- package/contracts/staking/StakingReader.sol +55 -90
- package/contracts/staking/StakingService.sol +62 -152
- package/contracts/staking/StakingServiceManager.sol +9 -7
- package/contracts/staking/StakingStore.sol +640 -361
- package/contracts/staking/TargetManagerLib.sol +8 -4
- package/contracts/type/Amount.sol +31 -5
- package/contracts/type/Blocknumber.sol +22 -16
- package/contracts/type/ChainId.sol +92 -0
- package/contracts/type/ClaimId.sol +6 -1
- package/contracts/type/Fee.sol +8 -8
- package/contracts/type/Key32.sol +2 -2
- package/contracts/type/Key32Set.sol +62 -0
- package/contracts/type/NftId.sol +7 -0
- package/contracts/type/ObjectType.sol +76 -44
- package/contracts/type/PayoutId.sol +10 -10
- package/contracts/type/Referral.sol +1 -0
- package/contracts/type/RiskId.sol +38 -6
- package/contracts/type/RoleId.sol +61 -55
- package/contracts/type/Seconds.sol +26 -1
- package/contracts/type/Selector.sol +5 -0
- package/contracts/type/StateId.sol +15 -1
- package/contracts/type/String.sol +12 -0
- package/contracts/type/Timestamp.sol +14 -7
- package/contracts/type/UFixed.sol +57 -126
- package/contracts/type/Version.sol +57 -6
- package/contracts/{shared → upgradeability}/IVersionable.sol +3 -0
- package/contracts/{shared → upgradeability}/ProxyManager.sol +96 -49
- package/contracts/upgradeability/UpgradableProxyWithAdmin.sol +24 -0
- package/contracts/{shared → upgradeability}/Versionable.sol +8 -5
- package/package.json +5 -4
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +0 -4
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.json +0 -290
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +0 -4
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +0 -390
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +0 -4
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +0 -129
- package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +0 -4
- package/artifacts/contracts/product/IProductService.sol/IProductService.json +0 -400
- package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +0 -4
- package/artifacts/contracts/product/ProductService.sol/ProductService.json +0 -708
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +0 -702
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +0 -4
- package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +0 -4
- package/artifacts/contracts/shared/ERC165.sol/ERC165.json +0 -73
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +0 -4
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +0 -39
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +0 -617
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +0 -129
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +0 -4
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +0 -460
- package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +0 -4
- package/artifacts/contracts/type/UFixed.sol/MathLib.json +0 -10
- package/contracts/authorization/IModuleAuthorization.sol +0 -21
- package/contracts/authorization/ModuleAuthorization.sol +0 -78
- package/contracts/instance/module/IAccess.sol +0 -46
- package/contracts/product/IProductService.sol +0 -33
- package/contracts/product/ProductService.sol +0 -124
- package/contracts/product/ProductServiceManager.sol +0 -42
- package/contracts/shared/ComponentVerifyingService.sol +0 -117
- package/contracts/shared/InitializableCustom.sol +0 -177
- package/contracts/shared/UpgradableProxyWithAdmin.sol +0 -16
- package/contracts/staking/StakeManagerLib.sol +0 -231
@@ -132,9 +132,9 @@ library TargetManagerLib {
|
|
132
132
|
public
|
133
133
|
pure
|
134
134
|
{
|
135
|
-
// check locking period is
|
136
|
-
if (lockingPeriod.
|
137
|
-
revert IStaking.
|
135
|
+
// check locking period is >= min locking period
|
136
|
+
if (lockingPeriod.lt(getMinimumLockingPeriod())) {
|
137
|
+
revert IStaking.ErrorStakingLockingPeriodTooShort(targetNftId, getMinimumLockingPeriod(), lockingPeriod);
|
138
138
|
}
|
139
139
|
|
140
140
|
// check locking period <= max locking period
|
@@ -160,7 +160,7 @@ library TargetManagerLib {
|
|
160
160
|
UFixed stakingRate
|
161
161
|
)
|
162
162
|
public
|
163
|
-
|
163
|
+
pure
|
164
164
|
returns (Amount dipAmount)
|
165
165
|
{
|
166
166
|
dipAmount = tokenAmount.multiplyWith(stakingRate);
|
@@ -190,6 +190,10 @@ library TargetManagerLib {
|
|
190
190
|
return SecondsLib.toSeconds(365 * 24 * 3600 / 2);
|
191
191
|
}
|
192
192
|
|
193
|
+
/// @dev the minimum locking period is 24 hours
|
194
|
+
function getMinimumLockingPeriod() public pure returns (Seconds minLockingPeriod) {
|
195
|
+
return SecondsLib.toSeconds(24 * 3600);
|
196
|
+
}
|
193
197
|
|
194
198
|
function getMaxRewardRate() public pure returns (UFixed maxRewardRate) {
|
195
199
|
return UFixedLib.toUFixed(33, -2);
|
@@ -3,6 +3,10 @@ pragma solidity ^0.8.20;
|
|
3
3
|
|
4
4
|
import {UFixed, UFixedLib} from "./UFixed.sol";
|
5
5
|
|
6
|
+
/// @dev Targets: 100 trillion (worlds GDP) with 6 decimal places
|
7
|
+
/// 3 trillion USD (total crypto market cap) with 12 decimal places.
|
8
|
+
/// 2023 100 trillion USD => 100e12 * 1e6 = 1e20
|
9
|
+
/// 2024 2 trillion crypto market cap => 2e12 * 1e18 = 2e30
|
6
10
|
type Amount is uint96;
|
7
11
|
|
8
12
|
using {
|
@@ -11,14 +15,18 @@ using {
|
|
11
15
|
eqAmount as ==,
|
12
16
|
nqAmount as !=,
|
13
17
|
ltAmount as <,
|
18
|
+
ltAmount as <=,
|
14
19
|
gtAmount as >,
|
20
|
+
gteAmount as >=,
|
21
|
+
AmountLib.add,
|
15
22
|
AmountLib.eq,
|
16
23
|
AmountLib.eqz,
|
17
24
|
AmountLib.gtz,
|
25
|
+
AmountLib.gt,
|
26
|
+
AmountLib.gte,
|
27
|
+
AmountLib.multiplyWith,
|
18
28
|
AmountLib.toInt,
|
19
|
-
AmountLib.
|
20
|
-
AmountLib.toUFixed,
|
21
|
-
AmountLib.multiplyWith
|
29
|
+
AmountLib.toUFixed
|
22
30
|
} for Amount global;
|
23
31
|
|
24
32
|
function addAmount(Amount a, Amount b) pure returns (Amount) {
|
@@ -41,10 +49,18 @@ function ltAmount(Amount a, Amount b) pure returns (bool) {
|
|
41
49
|
return AmountLib.lt(a, b);
|
42
50
|
}
|
43
51
|
|
52
|
+
function lteAmount(Amount a, Amount b) pure returns (bool) {
|
53
|
+
return AmountLib.lte(a, b);
|
54
|
+
}
|
55
|
+
|
44
56
|
function gtAmount(Amount a, Amount b) pure returns (bool) {
|
45
57
|
return AmountLib.gt(a, b);
|
46
58
|
}
|
47
59
|
|
60
|
+
function gteAmount(Amount a, Amount b) pure returns (bool) {
|
61
|
+
return AmountLib.gte(a, b);
|
62
|
+
}
|
63
|
+
|
48
64
|
library AmountLib {
|
49
65
|
|
50
66
|
error ErrorAmountLibValueTooBig(uint256 amount);
|
@@ -77,16 +93,26 @@ library AmountLib {
|
|
77
93
|
return Amount.unwrap(amount1) == Amount.unwrap(amount2);
|
78
94
|
}
|
79
95
|
|
80
|
-
/// @dev return true if amount a1 is
|
96
|
+
/// @dev return true if amount a1 is less than a2
|
81
97
|
function lt(Amount a1, Amount a2) public pure returns (bool) {
|
82
98
|
return Amount.unwrap(a1) < Amount.unwrap(a2);
|
83
99
|
}
|
84
100
|
|
85
|
-
/// @dev return true if amount a1 is
|
101
|
+
/// @dev return true if amount a1 is less or equal than a2
|
102
|
+
function lte(Amount a1, Amount a2) public pure returns (bool) {
|
103
|
+
return Amount.unwrap(a1) <= Amount.unwrap(a2);
|
104
|
+
}
|
105
|
+
|
106
|
+
/// @dev return true if amount a1 is greater than a2
|
86
107
|
function gt(Amount a1, Amount a2) public pure returns (bool) {
|
87
108
|
return Amount.unwrap(a1) > Amount.unwrap(a2);
|
88
109
|
}
|
89
110
|
|
111
|
+
/// @dev return true if amount a1 is greater or equal than a2
|
112
|
+
function gte(Amount a1, Amount a2) public pure returns (bool) {
|
113
|
+
return Amount.unwrap(a1) >= Amount.unwrap(a2);
|
114
|
+
}
|
115
|
+
|
90
116
|
/// @dev return minimum of a1 and a2.
|
91
117
|
function min(Amount a1, Amount a2) public pure returns (Amount) {
|
92
118
|
if (Amount.unwrap(a1) < Amount.unwrap(a2)) {
|
@@ -1,7 +1,9 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
|
4
|
+
/// @dev Target: Cover 10 years with 1 ms block times.
|
5
|
+
/// Typical block times are a few seconds.
|
6
|
+
type Blocknumber is uint40;
|
5
7
|
|
6
8
|
using {
|
7
9
|
gtBlocknumber as >,
|
@@ -11,8 +13,14 @@ using {
|
|
11
13
|
eqBlocknumber as ==,
|
12
14
|
neBlocknumber as !=,
|
13
15
|
BlocknumberLib.toInt,
|
16
|
+
BlocknumberLib.eq,
|
17
|
+
BlocknumberLib.ne,
|
14
18
|
BlocknumberLib.eqz,
|
15
|
-
BlocknumberLib.gtz
|
19
|
+
BlocknumberLib.gtz,
|
20
|
+
BlocknumberLib.gt,
|
21
|
+
BlocknumberLib.gte,
|
22
|
+
BlocknumberLib.lt,
|
23
|
+
BlocknumberLib.lte
|
16
24
|
} for Blocknumber global;
|
17
25
|
|
18
26
|
/// @dev return true if Blocknumber a is greater than Blocknumber b
|
@@ -50,25 +58,23 @@ function toBlocknumber(uint256 blocknum) pure returns (Blocknumber) {
|
|
50
58
|
return Blocknumber.wrap(uint32(blocknum));
|
51
59
|
}
|
52
60
|
|
53
|
-
function blockBlocknumber() view returns (Blocknumber) {
|
54
|
-
return BlocknumberLib.currentBlocknumber();
|
55
|
-
}
|
56
|
-
|
57
|
-
// TODO move to BlocknumberLib and rename to zero()
|
58
|
-
/// @dev Return the Blocknumber zero (0)
|
59
|
-
function zeroBlocknumber() pure returns (Blocknumber) {
|
60
|
-
return toBlocknumber(0);
|
61
|
-
}
|
62
|
-
|
63
61
|
/// @dev Return the current block number
|
64
62
|
function blockNumber() view returns (Blocknumber) {
|
65
63
|
return toBlocknumber(block.number);
|
66
64
|
}
|
67
65
|
|
68
66
|
library BlocknumberLib {
|
69
|
-
|
70
|
-
function
|
71
|
-
return Blocknumber.wrap(
|
67
|
+
|
68
|
+
function zero() public pure returns (Blocknumber) {
|
69
|
+
return Blocknumber.wrap(0);
|
70
|
+
}
|
71
|
+
|
72
|
+
function max() public pure returns (Blocknumber) {
|
73
|
+
return Blocknumber.wrap(type(uint40).max);
|
74
|
+
}
|
75
|
+
|
76
|
+
function current() public view returns (Blocknumber) {
|
77
|
+
return Blocknumber.wrap(uint40(block.number));
|
72
78
|
}
|
73
79
|
|
74
80
|
/// @dev return true iff blocknumber is 0
|
@@ -76,7 +82,7 @@ library BlocknumberLib {
|
|
76
82
|
return Blocknumber.unwrap(blocknumber) == 0;
|
77
83
|
}
|
78
84
|
|
79
|
-
/// @dev return true iff blocknumber is 0
|
85
|
+
/// @dev return true iff blocknumber is > 0
|
80
86
|
function gtz(Blocknumber blocknumber) public pure returns (bool) {
|
81
87
|
return Blocknumber.unwrap(blocknumber) > 0;
|
82
88
|
}
|
@@ -0,0 +1,92 @@
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
2
|
+
pragma solidity ^0.8.20;
|
3
|
+
|
4
|
+
import {NftId} from "./NftId.sol";
|
5
|
+
|
6
|
+
/// @dev Target: Cover chain IDs up to 26 decimal places.
|
7
|
+
/// Current longest chain ID seems to be DCHAIN Testnet: 2713017997578000 with 16 decimal places
|
8
|
+
type ChainId is uint96;
|
9
|
+
|
10
|
+
using {
|
11
|
+
eqChainId as ==,
|
12
|
+
neChainId as !=,
|
13
|
+
ChainIdLib.toInt,
|
14
|
+
ChainIdLib.eqz,
|
15
|
+
ChainIdLib.gtz
|
16
|
+
} for ChainId global;
|
17
|
+
|
18
|
+
|
19
|
+
/// @dev return true if ChainId a is equal to ChainId b
|
20
|
+
function eqChainId(ChainId a, ChainId b) pure returns (bool) {
|
21
|
+
return ChainId.unwrap(a) == ChainId.unwrap(b);
|
22
|
+
}
|
23
|
+
|
24
|
+
/// @dev return true if ChainId a is not equal to ChainId b
|
25
|
+
function neChainId(ChainId a, ChainId b) pure returns (bool) {
|
26
|
+
return ChainId.unwrap(a) != ChainId.unwrap(b);
|
27
|
+
}
|
28
|
+
|
29
|
+
|
30
|
+
library ChainIdLib {
|
31
|
+
|
32
|
+
error ErrorChainIdLibValueTooBig(uint256 chainId);
|
33
|
+
|
34
|
+
|
35
|
+
function zero() public pure returns (ChainId) {
|
36
|
+
return ChainId.wrap(0);
|
37
|
+
}
|
38
|
+
|
39
|
+
|
40
|
+
function max() public pure returns (ChainId) {
|
41
|
+
return ChainId.wrap(_max());
|
42
|
+
}
|
43
|
+
|
44
|
+
|
45
|
+
function current() public view returns (ChainId) {
|
46
|
+
return toChainId(block.chainid);
|
47
|
+
}
|
48
|
+
|
49
|
+
|
50
|
+
/// @dev return true iff chainId is 0
|
51
|
+
function eqz(ChainId chainId) public pure returns (bool) {
|
52
|
+
return ChainId.unwrap(chainId) == 0;
|
53
|
+
}
|
54
|
+
|
55
|
+
|
56
|
+
/// @dev return true iff chainId is > 0
|
57
|
+
function gtz(ChainId chainId) public pure returns (bool) {
|
58
|
+
return ChainId.unwrap(chainId) > 0;
|
59
|
+
}
|
60
|
+
|
61
|
+
|
62
|
+
/// @dev converts the uint into ChainId
|
63
|
+
/// function reverts if value is exceeding max ChainId value
|
64
|
+
function toChainId(uint256 chainId) public pure returns (ChainId) {
|
65
|
+
if(chainId > _max()) {
|
66
|
+
revert ErrorChainIdLibValueTooBig(chainId);
|
67
|
+
}
|
68
|
+
|
69
|
+
return ChainId.wrap(uint96(chainId));
|
70
|
+
}
|
71
|
+
|
72
|
+
|
73
|
+
function fromNftId(NftId nftId) public pure returns (ChainId) {
|
74
|
+
uint256 nftIdInt = nftId.toInt();
|
75
|
+
uint256 chainIdDigits = nftIdInt % 100; // Extract the last two digits
|
76
|
+
uint256 chainIdInt = nftIdInt % 10**(chainIdDigits + 2) / 100; // Extract the chainId
|
77
|
+
|
78
|
+
return toChainId(chainIdInt);
|
79
|
+
}
|
80
|
+
|
81
|
+
|
82
|
+
/// @dev converts the ChainId to a uint256
|
83
|
+
function toInt(ChainId chainId) public pure returns (uint256) {
|
84
|
+
return uint256(uint96(ChainId.unwrap(chainId)));
|
85
|
+
}
|
86
|
+
|
87
|
+
|
88
|
+
function _max() internal pure returns (uint96) {
|
89
|
+
// IMPORTANT: type nees to match with actual definition for Amount
|
90
|
+
return type(uint96).max;
|
91
|
+
}
|
92
|
+
}
|
@@ -12,6 +12,7 @@ import {NftId} from "./NftId.sol";
|
|
12
12
|
using {
|
13
13
|
eqClaimId as ==,
|
14
14
|
neClaimId as !=,
|
15
|
+
ClaimIdLib.eq,
|
15
16
|
ClaimIdLib.eqz,
|
16
17
|
ClaimIdLib.gtz,
|
17
18
|
ClaimIdLib.toInt,
|
@@ -21,7 +22,7 @@ using {
|
|
21
22
|
|
22
23
|
// pure free functions for operators
|
23
24
|
function eqClaimId(ClaimId a, ClaimId b) pure returns (bool isSame) {
|
24
|
-
return
|
25
|
+
return ClaimIdLib.eq(a, b);
|
25
26
|
}
|
26
27
|
|
27
28
|
function neClaimId(ClaimId a, ClaimId b) pure returns (bool isDifferent) {
|
@@ -68,6 +69,10 @@ library ClaimIdLib {
|
|
68
69
|
return ClaimId.unwrap(a) > 0;
|
69
70
|
}
|
70
71
|
|
72
|
+
function eq(ClaimId a, ClaimId b) public pure returns (bool) {
|
73
|
+
return ClaimId.unwrap(a) == ClaimId.unwrap(b);
|
74
|
+
}
|
75
|
+
|
71
76
|
/// @dev Returns true if the value is zero (== 0).
|
72
77
|
function eqz(ClaimId a) public pure returns (bool) {
|
73
78
|
return ClaimId.unwrap(a) == 0;
|
package/contracts/type/Fee.sol
CHANGED
@@ -5,16 +5,16 @@ import {Amount, AmountLib} from "./Amount.sol";
|
|
5
5
|
import {UFixed, UFixedLib} from "./UFixed.sol";
|
6
6
|
|
7
7
|
struct Fee {
|
8
|
+
// slot 0
|
8
9
|
UFixed fractionalFee;
|
9
|
-
|
10
|
-
uint256 fixedFee;
|
10
|
+
Amount fixedFee;
|
11
11
|
}
|
12
12
|
|
13
13
|
library FeeLib {
|
14
14
|
|
15
15
|
/// @dev Return a zero fee struct (0, 0)
|
16
16
|
function zero() public pure returns (Fee memory fee) {
|
17
|
-
return Fee(UFixed.wrap(0),
|
17
|
+
return Fee(UFixed.wrap(0), AmountLib.zero());
|
18
18
|
}
|
19
19
|
|
20
20
|
/// @dev Converts the uint256 to a fee struct.
|
@@ -22,7 +22,7 @@ library FeeLib {
|
|
22
22
|
UFixed fractionalFee,
|
23
23
|
uint256 fixedFee
|
24
24
|
) public pure returns (Fee memory fee) {
|
25
|
-
return Fee(fractionalFee, fixedFee);
|
25
|
+
return Fee(fractionalFee, AmountLib.toAmount(fixedFee));
|
26
26
|
}
|
27
27
|
|
28
28
|
/// @dev Calculates fee and net amounts for the provided parameters
|
@@ -41,14 +41,14 @@ library FeeLib {
|
|
41
41
|
if(gtz(fee)) {
|
42
42
|
UFixed fractionalAmount =
|
43
43
|
amount.toUFixed() * fee.fractionalFee;
|
44
|
-
feeAmount = AmountLib.toAmount(fractionalAmount.toInt() + fee.fixedFee
|
44
|
+
feeAmount = AmountLib.toAmount(fractionalAmount.toInt()) + fee.fixedFee;
|
45
45
|
netAmount = netAmount - feeAmount;
|
46
46
|
}
|
47
47
|
}
|
48
48
|
|
49
49
|
/// @dev Return the percent fee struct (x%, 0)
|
50
50
|
function percentageFee(uint8 percent) public pure returns (Fee memory fee) {
|
51
|
-
return Fee(UFixedLib.toUFixed(percent, -2),
|
51
|
+
return Fee(UFixedLib.toUFixed(percent, -2), AmountLib.zero());
|
52
52
|
}
|
53
53
|
|
54
54
|
// pure free functions for operators
|
@@ -57,10 +57,10 @@ library FeeLib {
|
|
57
57
|
}
|
58
58
|
|
59
59
|
function gtz(Fee memory fee) public pure returns (bool) {
|
60
|
-
return UFixed.unwrap(fee.fractionalFee) > 0 || fee.fixedFee
|
60
|
+
return UFixed.unwrap(fee.fractionalFee) > 0 || fee.fixedFee.gtz();
|
61
61
|
}
|
62
62
|
|
63
63
|
function eqz(Fee memory fee) public pure returns (bool) {
|
64
|
-
return fee.fixedFee
|
64
|
+
return fee.fixedFee.eqz() && UFixed.unwrap(fee.fractionalFee) == 0;
|
65
65
|
}
|
66
66
|
}
|
package/contracts/type/Key32.sol
CHANGED
@@ -28,8 +28,8 @@ library Key32Lib {
|
|
28
28
|
|
29
29
|
uint8 public constant TYPE_SHIFT = 31 * 8;
|
30
30
|
uint8 public constant ID_SHIFT = uint8(32 * 8 - TYPE_SHIFT);
|
31
|
-
bytes32 public constant TYPE_MASK = bytes32(bytes1(type(uint8).max)); //
|
32
|
-
bytes32 public constant ID_MASK = bytes32(~TYPE_MASK); //
|
31
|
+
bytes32 public constant TYPE_MASK = bytes32(bytes1(type(uint8).max)); // [32] byte in bytes32
|
32
|
+
bytes32 public constant ID_MASK = bytes32(~TYPE_MASK); // [0..31] bytes in bytes32
|
33
33
|
|
34
34
|
function toKey32(ObjectType objectType, KeyId id) public pure returns (Key32) {
|
35
35
|
uint256 uintObjectType = ObjectType.unwrap(objectType);
|
@@ -0,0 +1,62 @@
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
2
|
+
pragma solidity ^0.8.20;
|
3
|
+
|
4
|
+
import {Key32} from "../type/Key32.sol";
|
5
|
+
|
6
|
+
// based on https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/utils/structs/EnumerableSet.sol
|
7
|
+
library LibKey32Set {
|
8
|
+
|
9
|
+
struct Set {
|
10
|
+
Key32[] keys;
|
11
|
+
mapping(Key32 key => uint256 index) at;
|
12
|
+
}
|
13
|
+
|
14
|
+
error ErrorKey32SetAlreadyAdded(Key32 key);
|
15
|
+
error ErrorKey32SetNotInSet(Key32 key);
|
16
|
+
|
17
|
+
|
18
|
+
function add(Set storage set, Key32 key) external {
|
19
|
+
if (set.at[key] > 0) {
|
20
|
+
revert ErrorKey32SetAlreadyAdded(key);
|
21
|
+
}
|
22
|
+
|
23
|
+
set.keys.push(key);
|
24
|
+
set.at[key] = set.keys.length;
|
25
|
+
}
|
26
|
+
|
27
|
+
function remove(Set storage set, Key32 key) external {
|
28
|
+
uint256 nftIdIndex = set.at[key];
|
29
|
+
|
30
|
+
if (nftIdIndex == 0) {
|
31
|
+
revert ErrorKey32SetNotInSet(key);
|
32
|
+
}
|
33
|
+
|
34
|
+
uint256 toDeleteIndex = nftIdIndex - 1;
|
35
|
+
uint256 lastIndex = set.keys.length - 1;
|
36
|
+
|
37
|
+
if (lastIndex != toDeleteIndex) {
|
38
|
+
Key32 lastId = set.keys[lastIndex];
|
39
|
+
set.keys[toDeleteIndex] = lastId;
|
40
|
+
set.at[lastId] = nftIdIndex; // Replace lastValue's index to valueIndex
|
41
|
+
}
|
42
|
+
|
43
|
+
set.keys.pop();
|
44
|
+
delete set.at[key];
|
45
|
+
}
|
46
|
+
|
47
|
+
function isEmpty(Set storage set) external view returns(bool empty) {
|
48
|
+
return set.keys.length == 0;
|
49
|
+
}
|
50
|
+
|
51
|
+
function contains(Set storage set, Key32 key) external view returns(bool inSet) {
|
52
|
+
return set.at[key] > 0;
|
53
|
+
}
|
54
|
+
|
55
|
+
function size(Set storage set) external view returns(uint256 length) {
|
56
|
+
return set.keys.length;
|
57
|
+
}
|
58
|
+
|
59
|
+
function getElementAt(Set storage set, uint256 index) external view returns(Key32 key) {
|
60
|
+
return set.keys[index];
|
61
|
+
}
|
62
|
+
}
|
package/contracts/type/NftId.sol
CHANGED
@@ -14,6 +14,7 @@ using {
|
|
14
14
|
NftIdLib.toInt,
|
15
15
|
NftIdLib.gtz,
|
16
16
|
NftIdLib.eqz,
|
17
|
+
NftIdLib.eq,
|
17
18
|
NftIdLib.toKeyId,
|
18
19
|
NftIdLib.toKey32
|
19
20
|
} for NftId global;
|
@@ -75,4 +76,10 @@ library NftIdLib {
|
|
75
76
|
function toKeyId(NftId id) public pure returns (KeyId keyId) {
|
76
77
|
return KeyId.wrap(bytes31(uint248(NftId.unwrap(id))));
|
77
78
|
}
|
79
|
+
|
80
|
+
function toNftId(KeyId keyId) public pure returns (NftId nftId) {
|
81
|
+
uint248 keyIdInt = uint248(bytes31(KeyId.unwrap(keyId)));
|
82
|
+
assert(keyIdInt < type(uint96).max);
|
83
|
+
return NftId.wrap(uint96(keyIdInt));
|
84
|
+
}
|
78
85
|
}
|