@etherisc/gif-next 0.0.2-8b116c2-371 → 0.0.2-8c1d8cd-727
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 +49 -4
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +1293 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +1206 -0
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +414 -0
- package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +4 -0
- package/artifacts/contracts/authorization/IAccess.sol/IAccess.json +10 -0
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +1060 -0
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +295 -0
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +167 -0
- package/artifacts/contracts/authorization/ReleaseAccessManager.sol/ReleaseAccessManager.dbg.json +4 -0
- package/artifacts/contracts/{shared/AccessManagerCustom.sol/AccessManagerCustom.json → authorization/ReleaseAccessManager.sol/ReleaseAccessManager.json} +28 -25
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +253 -0
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +4 -0
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +1402 -0
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +4 -0
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +470 -0
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +133 -501
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +319 -229
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +115 -103
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +164 -210
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +194 -47
- 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 +1538 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +470 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +2077 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +470 -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 +1471 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1231 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1592 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2095 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +703 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +105 -103
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +163 -111
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +108 -243
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1210 -265
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +561 -0
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +511 -154
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +210 -268
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +83 -95
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +324 -288
- 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/Cloneable.sol/Cloneable.json +0 -53
- 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 +4 -0
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +223 -0
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +181 -0
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
- 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 +4 -0
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +1039 -0
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +478 -0
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +43 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +109 -80
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +56 -9
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +119 -358
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +110 -141
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +82 -78
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +4 -0
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +1299 -0
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +470 -0
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +517 -157
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +176 -88
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +271 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +125 -319
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +410 -192
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +165 -632
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +524 -331
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +111 -83
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +95 -158
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +79 -91
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +1173 -0
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +470 -0
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +322 -169
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +126 -98
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +47 -0
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +189 -6
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +336 -118
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +127 -85
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +154 -137
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
- package/artifacts/contracts/product/{IProductService.sol/IProductService.json → IRiskService.sol/IRiskService.json} +44 -2
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +451 -295
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +123 -95
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +207 -283
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +96 -112
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +168 -434
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +622 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +694 -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 +311 -55
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +55 -146
- 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 +533 -113
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1635 -162
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +96 -265
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +74 -70
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +205 -0
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1067 -0
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +272 -0
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +4 -4
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +65 -236
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +541 -263
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +136 -114
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +51 -103
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +92 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +55 -54
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +487 -19
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +98 -80
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +45 -3
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +34 -3
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +16 -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 +29 -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 +42 -0
- 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 +111 -318
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +55 -88
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +42 -62
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +22 -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 +58 -89
- 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 +51 -103
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +330 -11
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +108 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +82 -55
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +78 -28
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +97 -101
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +168 -325
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +205 -0
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +103 -104
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +7 -17
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +123 -198
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +76 -92
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +241 -147
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +59 -23
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +61 -8
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +2 -2
- package/artifacts/contracts/type/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 +4 -4
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +17 -12
- 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/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +4 -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 +136 -2
- 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 +4 -4
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +4 -4
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +60 -4
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +219 -6
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +50 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
- package/artifacts/contracts/type/Selector.sol/SelectorLib.json +129 -0
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
- 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 +4 -0
- package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +23 -4
- package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/MathLib.json +9 -3
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +71 -2
- 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 +21 -2
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
- package/artifacts/contracts/{shared → upgradeability}/IVersionable.sol/IVersionable.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +602 -0
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
- package/artifacts/contracts/{shared → upgradeability}/Versionable.sol/Versionable.json +1 -1
- package/contracts/authorization/AccessAdmin.sol +596 -0
- package/contracts/authorization/AccessManagerCloneable.sol +16 -0
- package/contracts/authorization/Authorization.sol +289 -0
- package/contracts/authorization/IAccess.sol +49 -0
- package/contracts/authorization/IAccessAdmin.sol +137 -0
- package/contracts/authorization/IAuthorization.sol +60 -0
- package/contracts/authorization/IServiceAuthorization.sol +40 -0
- package/contracts/authorization/ReleaseAccessManager.sol +38 -0
- package/contracts/authorization/ServiceAuthorization.sol +106 -0
- package/contracts/distribution/BasicDistribution.sol +139 -0
- package/contracts/distribution/BasicDistributionAuthorization.sol +47 -0
- package/contracts/distribution/Distribution.sol +140 -116
- package/contracts/distribution/DistributionService.sol +140 -83
- package/contracts/distribution/DistributionServiceManager.sol +8 -11
- package/contracts/distribution/IDistributionComponent.sol +26 -40
- package/contracts/distribution/IDistributionService.sol +23 -3
- package/contracts/examples/fire/DamageLevel.sol +59 -0
- package/contracts/examples/fire/FirePool.sol +75 -0
- package/contracts/examples/fire/FirePoolAuthorization.sol +34 -0
- package/contracts/examples/fire/FireProduct.sol +418 -0
- package/contracts/examples/fire/FireProductAuthorization.sol +44 -0
- package/contracts/examples/fire/FireUSD.sol +26 -0
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +50 -0
- package/contracts/examples/unpermissioned/SimpleOracle.sol +137 -0
- package/contracts/examples/unpermissioned/SimplePool.sol +76 -0
- package/contracts/examples/unpermissioned/SimpleProduct.sol +351 -0
- package/contracts/instance/{BundleManager.sol → BundleSet.sol} +23 -23
- package/contracts/instance/IInstance.sol +24 -40
- package/contracts/instance/IInstanceService.sol +27 -36
- package/contracts/instance/Instance.sol +123 -127
- package/contracts/instance/InstanceAdmin.sol +216 -270
- package/contracts/instance/InstanceAuthorizationV3.sol +194 -0
- package/contracts/instance/InstanceReader.sol +139 -34
- package/contracts/instance/InstanceService.sol +177 -128
- package/contracts/instance/InstanceServiceManager.sol +8 -13
- package/contracts/instance/InstanceStore.sol +26 -20
- package/contracts/instance/base/BalanceStore.sol +11 -6
- package/contracts/instance/base/Cloneable.sol +2 -25
- package/contracts/instance/base/ObjectLifecycle.sol +111 -0
- package/contracts/instance/base/{ObjectManager.sol → ObjectSet.sol} +11 -14
- package/contracts/instance/module/IBundle.sol +1 -1
- package/contracts/instance/module/IComponents.sol +10 -11
- package/contracts/instance/module/IDistribution.sol +0 -1
- package/contracts/instance/module/IPolicy.sol +24 -24
- package/contracts/mock/Dip.sol +1 -1
- package/contracts/oracle/BasicOracle.sol +47 -0
- package/contracts/oracle/BasicOracleAuthorization.sol +46 -0
- package/contracts/oracle/IOracle.sol +16 -0
- package/contracts/oracle/IOracleComponent.sol +2 -1
- package/contracts/oracle/IOracleService.sol +2 -1
- package/contracts/oracle/Oracle.sol +64 -53
- package/contracts/oracle/OracleService.sol +51 -37
- package/contracts/oracle/OracleServiceManager.sol +8 -11
- package/contracts/pool/BasicPool.sol +154 -0
- package/contracts/pool/BasicPoolAuthorization.sol +57 -0
- package/contracts/pool/BundleService.sol +284 -87
- package/contracts/pool/BundleServiceManager.sol +8 -11
- package/contracts/pool/IBundleService.sol +42 -5
- package/contracts/pool/IPoolComponent.sol +24 -68
- package/contracts/pool/IPoolService.sol +56 -39
- package/contracts/pool/Pool.sol +184 -148
- package/contracts/pool/PoolService.sol +262 -171
- package/contracts/pool/PoolServiceManager.sol +6 -9
- package/contracts/product/ApplicationService.sol +75 -70
- package/contracts/product/ApplicationServiceManager.sol +6 -6
- package/contracts/product/BasicProduct.sol +53 -0
- package/contracts/product/BasicProductAuthorization.sol +42 -0
- package/contracts/product/ClaimService.sol +321 -151
- package/contracts/product/ClaimServiceManager.sol +6 -6
- package/contracts/product/IApplicationService.sol +1 -0
- package/contracts/product/IClaimService.sol +31 -7
- package/contracts/product/IPolicyService.sol +34 -32
- package/contracts/product/IPricingService.sol +10 -10
- package/contracts/product/IProductComponent.sol +26 -9
- package/contracts/product/{IProductService.sol → IRiskService.sol} +1 -1
- package/contracts/product/PolicyService.sol +424 -202
- package/contracts/product/PolicyServiceManager.sol +6 -9
- package/contracts/product/PricingService.sol +58 -59
- package/contracts/product/PricingServiceManager.sol +5 -8
- package/contracts/product/Product.sol +211 -133
- package/contracts/product/{ProductService.sol → RiskService.sol} +18 -46
- package/contracts/product/RiskServiceManager.sol +39 -0
- package/contracts/registry/ChainNft.sol +68 -38
- package/contracts/registry/IRegistry.sol +69 -22
- package/contracts/registry/IRegistryService.sol +3 -10
- package/contracts/registry/ITransferInterceptor.sol +1 -2
- package/contracts/registry/Registry.sol +354 -213
- package/contracts/registry/RegistryAdmin.sol +360 -149
- package/contracts/registry/RegistryService.sol +44 -69
- package/contracts/registry/RegistryServiceManager.sol +4 -9
- package/contracts/registry/ReleaseLifecycle.sol +30 -0
- package/contracts/registry/ReleaseRegistry.sol +501 -0
- package/contracts/registry/ServiceAuthorizationV3.sol +194 -0
- package/contracts/registry/TokenRegistry.sol +2 -2
- package/contracts/shared/Component.sol +47 -63
- package/contracts/shared/ComponentService.sol +316 -189
- package/contracts/shared/ComponentServiceManager.sol +10 -7
- package/contracts/shared/ComponentVerifyingService.sol +24 -15
- package/contracts/shared/ContractLib.sol +38 -0
- package/contracts/shared/IComponent.sol +10 -6
- package/contracts/shared/IComponentService.sol +38 -20
- package/contracts/shared/IInstanceLinkedComponent.sol +11 -16
- package/contracts/shared/IKeyValueStore.sol +1 -0
- package/contracts/shared/ILifecycle.sol +3 -2
- package/contracts/shared/INftOwnable.sol +2 -0
- package/contracts/shared/IPolicyHolder.sol +12 -22
- package/contracts/shared/IRegisterable.sol +11 -0
- package/contracts/shared/IService.sol +8 -1
- package/contracts/shared/{ERC165.sol → InitializableERC165.sol} +3 -3
- package/contracts/shared/InstanceLinkedComponent.sol +106 -37
- package/contracts/shared/KeyValueStore.sol +7 -3
- package/contracts/shared/Lifecycle.sol +30 -72
- package/contracts/shared/{NftIdSetManager.sol → NftIdSet.sol} +1 -1
- package/contracts/shared/NftOwnable.sol +29 -9
- package/contracts/shared/PolicyHolder.sol +17 -57
- package/contracts/shared/Registerable.sol +19 -9
- package/contracts/shared/RegistryLinked.sol +3 -2
- package/contracts/shared/Service.sol +43 -36
- package/contracts/shared/TokenHandler.sol +100 -19
- package/contracts/shared/TokenHandlerDeployerLib.sol +12 -0
- package/contracts/staking/IStaking.sol +3 -3
- package/contracts/staking/IStakingService.sol +22 -14
- package/contracts/staking/StakeManagerLib.sol +70 -25
- package/contracts/staking/Staking.sol +86 -140
- package/contracts/staking/StakingLifecycle.sol +23 -0
- package/contracts/staking/StakingManager.sol +10 -12
- package/contracts/staking/StakingReader.sol +23 -20
- package/contracts/staking/StakingService.sol +69 -82
- package/contracts/staking/StakingServiceManager.sol +4 -5
- package/contracts/staking/StakingStore.sol +93 -60
- package/contracts/staking/TargetManagerLib.sol +7 -3
- package/contracts/type/Amount.sol +27 -5
- package/contracts/type/Blocknumber.sol +7 -1
- package/contracts/type/ClaimId.sol +6 -1
- package/contracts/type/NftId.sol +1 -0
- package/contracts/type/ObjectType.sol +172 -64
- package/contracts/type/PayoutId.sol +10 -10
- package/contracts/type/Referral.sol +1 -0
- package/contracts/type/RiskId.sol +15 -1
- package/contracts/type/RoleId.sol +97 -81
- package/contracts/type/Seconds.sol +21 -1
- package/contracts/type/Selector.sol +102 -0
- package/contracts/type/StateId.sol +15 -1
- package/contracts/type/String.sol +53 -0
- package/contracts/type/Timestamp.sol +11 -1
- package/contracts/type/UFixed.sol +38 -9
- package/contracts/type/Version.sol +3 -1
- package/contracts/{shared → upgradeability}/ProxyManager.sol +71 -38
- package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
- package/contracts/{shared → upgradeability}/Versionable.sol +2 -2
- package/package.json +7 -4
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -778
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +0 -4
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +0 -228
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +0 -4
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +0 -256
- package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +0 -4
- package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +0 -4
- package/artifacts/contracts/product/ProductService.sol/ProductService.json +0 -679
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +0 -694
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -1292
- package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.dbg.json +0 -4
- package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.json +0 -137
- package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +0 -1715
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +0 -1728
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +0 -1806
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +0 -1824
- 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/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +0 -4
- package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +0 -1562
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +0 -4
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +0 -1600
- 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/NftIdSetManager.sol/NftIdSetManager.dbg.json +0 -4
- package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.json +0 -306
- 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/contracts/instance/InstanceAuthorizationsLib.sol +0 -377
- package/contracts/product/ProductServiceManager.sol +0 -42
- package/contracts/registry/ReleaseManager.sol +0 -600
- package/contracts/registry/ServiceAuthorizationsLib.sol +0 -173
- package/contracts/shared/AccessManagerCustom.sol +0 -736
- package/contracts/shared/AccessManagerExtended.sol +0 -470
- package/contracts/shared/AccessManagerExtendedInitializeable.sol +0 -13
- package/contracts/shared/AccessManagerExtendedWithDisable.sol +0 -137
- package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +0 -14
- package/contracts/shared/IAccessManagerExtended.sol +0 -74
- package/contracts/shared/IAccessManagerExtendedWithDisable.sol +0 -18
- package/contracts/shared/InitializableCustom.sol +0 -177
- /package/contracts/{shared → upgradeability}/IVersionable.sol +0 -0
@@ -9,143 +9,146 @@ using {
|
|
9
9
|
neObjectType as !=,
|
10
10
|
ObjectTypeLib.toInt,
|
11
11
|
ObjectTypeLib.eqz,
|
12
|
+
ObjectTypeLib.eq,
|
12
13
|
ObjectTypeLib.gtz
|
13
14
|
} for ObjectType global;
|
14
15
|
|
15
|
-
// general pure free functions
|
16
16
|
|
17
|
-
|
18
|
-
return toObjectType(1);
|
19
|
-
}
|
17
|
+
//--- GIF object types/domains (rage: 1 - 99) -------------------------------//
|
20
18
|
|
21
19
|
function PROTOCOL() pure returns (ObjectType) {
|
22
|
-
return
|
23
|
-
}
|
24
|
-
|
25
|
-
function ROLE() pure returns (ObjectType) {
|
26
|
-
return toObjectType(20);
|
27
|
-
}
|
28
|
-
|
29
|
-
function TARGET() pure returns (ObjectType) {
|
30
|
-
return toObjectType(30);
|
20
|
+
return ObjectType.wrap(1);
|
31
21
|
}
|
32
22
|
|
33
23
|
function REGISTRY() pure returns (ObjectType) {
|
34
|
-
return
|
24
|
+
return ObjectType.wrap(2);
|
35
25
|
}
|
36
26
|
|
37
27
|
function STAKING() pure returns (ObjectType) {
|
38
|
-
return
|
28
|
+
return ObjectType.wrap(3);
|
39
29
|
}
|
40
30
|
|
41
|
-
function
|
42
|
-
return
|
31
|
+
function RELEASE() pure returns (ObjectType) {
|
32
|
+
return ObjectType.wrap(6);
|
33
|
+
}
|
34
|
+
|
35
|
+
function ROLE() pure returns (ObjectType) {
|
36
|
+
return ObjectType.wrap(7);
|
43
37
|
}
|
44
38
|
|
45
39
|
function SERVICE() pure returns (ObjectType) {
|
46
|
-
return
|
40
|
+
return ObjectType.wrap(8);
|
47
41
|
}
|
48
42
|
|
49
43
|
function INSTANCE() pure returns (ObjectType) {
|
50
|
-
return
|
44
|
+
return ObjectType.wrap(10);
|
51
45
|
}
|
52
46
|
|
53
|
-
function
|
54
|
-
return
|
47
|
+
function COMPONENT() pure returns (ObjectType) {
|
48
|
+
return ObjectType.wrap(11);
|
55
49
|
}
|
56
50
|
|
57
|
-
function
|
58
|
-
return
|
51
|
+
function PRODUCT() pure returns (ObjectType) {
|
52
|
+
return ObjectType.wrap(12);
|
59
53
|
}
|
60
54
|
|
61
|
-
function
|
62
|
-
return
|
55
|
+
function ORACLE() pure returns (ObjectType) {
|
56
|
+
return ObjectType.wrap(13);
|
63
57
|
}
|
64
58
|
|
65
|
-
function
|
66
|
-
return
|
59
|
+
function DISTRIBUTION() pure returns (ObjectType) {
|
60
|
+
return ObjectType.wrap(14);
|
67
61
|
}
|
68
62
|
|
69
|
-
function
|
70
|
-
return
|
63
|
+
function POOL() pure returns (ObjectType) {
|
64
|
+
return ObjectType.wrap(15);
|
71
65
|
}
|
72
66
|
|
73
|
-
function
|
74
|
-
return
|
67
|
+
function APPLICATION() pure returns (ObjectType) {
|
68
|
+
return ObjectType.wrap(20);
|
75
69
|
}
|
76
70
|
|
77
|
-
function
|
78
|
-
return
|
71
|
+
function POLICY() pure returns (ObjectType) {
|
72
|
+
return ObjectType.wrap(21);
|
79
73
|
}
|
80
74
|
|
81
|
-
function
|
82
|
-
return
|
75
|
+
function PREMIUM() pure returns (ObjectType) {
|
76
|
+
return ObjectType.wrap(22);
|
83
77
|
}
|
84
78
|
|
85
|
-
function
|
86
|
-
return
|
79
|
+
function CLAIM() pure returns (ObjectType) {
|
80
|
+
return ObjectType.wrap(23);
|
87
81
|
}
|
88
82
|
|
89
|
-
function
|
90
|
-
return
|
83
|
+
function PAYOUT() pure returns (ObjectType) {
|
84
|
+
return ObjectType.wrap(24);
|
91
85
|
}
|
92
86
|
|
93
|
-
function
|
94
|
-
return
|
87
|
+
function RISK() pure returns (ObjectType) {
|
88
|
+
return ObjectType.wrap(25);
|
95
89
|
}
|
96
90
|
|
97
|
-
function
|
98
|
-
return
|
91
|
+
function PRICE() pure returns (ObjectType) {
|
92
|
+
return ObjectType.wrap(26);
|
99
93
|
}
|
100
94
|
|
101
|
-
function
|
102
|
-
return
|
95
|
+
function REQUEST() pure returns (ObjectType) {
|
96
|
+
return ObjectType.wrap(27);
|
103
97
|
}
|
104
98
|
|
105
|
-
function
|
106
|
-
return
|
99
|
+
function DISTRIBUTOR_TYPE() pure returns (ObjectType) {
|
100
|
+
return ObjectType.wrap(28);
|
107
101
|
}
|
108
102
|
|
109
|
-
function
|
110
|
-
return
|
103
|
+
function DISTRIBUTOR() pure returns (ObjectType) {
|
104
|
+
return ObjectType.wrap(29);
|
111
105
|
}
|
112
106
|
|
113
|
-
function
|
114
|
-
return
|
107
|
+
function REFERRAL() pure returns (ObjectType) {
|
108
|
+
return ObjectType.wrap(30);
|
115
109
|
}
|
116
110
|
|
117
|
-
function
|
118
|
-
return
|
111
|
+
function BUNDLE() pure returns (ObjectType) {
|
112
|
+
return ObjectType.wrap(31);
|
119
113
|
}
|
120
114
|
|
121
|
-
function
|
122
|
-
return
|
115
|
+
function TARGET() pure returns (ObjectType) {
|
116
|
+
return ObjectType.wrap(32);
|
117
|
+
}
|
118
|
+
|
119
|
+
function STAKE() pure returns (ObjectType) {
|
120
|
+
return ObjectType.wrap(33);
|
123
121
|
}
|
124
122
|
|
125
|
-
/// @dev
|
126
|
-
|
127
|
-
|
123
|
+
/// @dev Object type that includes any other object type.
|
124
|
+
/// Note that eq()/'==' does not take this property into account.
|
125
|
+
function ALL() pure returns (ObjectType) {
|
126
|
+
return ObjectType.wrap(99);
|
128
127
|
}
|
129
128
|
|
130
|
-
// pure free functions for operators
|
129
|
+
// other pure free functions for operators
|
131
130
|
function eqObjectType(ObjectType a, ObjectType b) pure returns (bool isSame) {
|
132
131
|
return ObjectType.unwrap(a) == ObjectType.unwrap(b);
|
133
132
|
}
|
134
133
|
|
135
|
-
function neObjectType(
|
136
|
-
ObjectType a,
|
137
|
-
ObjectType b
|
138
|
-
) pure returns (bool isDifferent) {
|
134
|
+
function neObjectType(ObjectType a, ObjectType b) pure returns (bool isSame) {
|
139
135
|
return ObjectType.unwrap(a) != ObjectType.unwrap(b);
|
140
136
|
}
|
141
137
|
|
142
138
|
// library functions that operate on user defined type
|
143
139
|
library ObjectTypeLib {
|
144
140
|
|
141
|
+
error ErrorVersionTooBig(uint256 version);
|
142
|
+
|
145
143
|
function zero() public pure returns (ObjectType) {
|
146
144
|
return ObjectType.wrap(0);
|
147
145
|
}
|
148
146
|
|
147
|
+
/// @dev Converts the uint256 into ObjectType.
|
148
|
+
function toObjectType(uint256 objectType) public pure returns (ObjectType) {
|
149
|
+
return ObjectType.wrap(uint8(objectType));
|
150
|
+
}
|
151
|
+
|
149
152
|
/// @dev Converts the NftId to a uint256.
|
150
153
|
function toInt(ObjectType objectType) public pure returns (uint96) {
|
151
154
|
return uint96(ObjectType.unwrap(objectType));
|
@@ -163,6 +166,111 @@ library ObjectTypeLib {
|
|
163
166
|
|
164
167
|
/// @dev Returns true if the values are equal (==).
|
165
168
|
function eq(ObjectType a, ObjectType b) public pure returns (bool isSame) {
|
166
|
-
return
|
169
|
+
return ObjectType.unwrap(a) == ObjectType.unwrap(b);
|
170
|
+
}
|
171
|
+
|
172
|
+
/// @dev Returns true if the values are not equal (!=).
|
173
|
+
function ne(ObjectType a, ObjectType b) public pure returns (bool isSame) {
|
174
|
+
return ObjectType.unwrap(a) != ObjectType.unwrap(b);
|
175
|
+
}
|
176
|
+
|
177
|
+
/// @dev Returns the type/domain name for the provided object type
|
178
|
+
function toName(ObjectType objectType) public pure returns (string memory name) {
|
179
|
+
if (objectType == REGISTRY()) {
|
180
|
+
return "Registry";
|
181
|
+
} else if (objectType == STAKING()) {
|
182
|
+
return "Staking";
|
183
|
+
} else if (objectType == INSTANCE()) {
|
184
|
+
return "Instance";
|
185
|
+
} else if (objectType == COMPONENT()) {
|
186
|
+
return "Component";
|
187
|
+
} else if (objectType == PRODUCT()) {
|
188
|
+
return "Product";
|
189
|
+
} else if (objectType == ORACLE()) {
|
190
|
+
return "Oracle";
|
191
|
+
} else if (objectType == DISTRIBUTION()) {
|
192
|
+
return "Distribution";
|
193
|
+
} else if (objectType == POOL()) {
|
194
|
+
return "Pool";
|
195
|
+
} else if (objectType == APPLICATION()) {
|
196
|
+
return "Application";
|
197
|
+
} else if (objectType == POLICY()) {
|
198
|
+
return "Policy";
|
199
|
+
} else if (objectType == CLAIM()) {
|
200
|
+
return "Claim";
|
201
|
+
} else if (objectType == PRICE()) {
|
202
|
+
return "Price";
|
203
|
+
} else if (objectType == BUNDLE()) {
|
204
|
+
return "Bundle";
|
205
|
+
}
|
206
|
+
|
207
|
+
// fallback: ObjectType<obect-type-int>
|
208
|
+
return string(
|
209
|
+
abi.encodePacked(
|
210
|
+
"ObjectType",
|
211
|
+
toString(
|
212
|
+
toInt(objectType))));
|
213
|
+
}
|
214
|
+
|
215
|
+
function toVersionedName(
|
216
|
+
string memory name,
|
217
|
+
string memory suffix,
|
218
|
+
uint256 version
|
219
|
+
)
|
220
|
+
external
|
221
|
+
pure
|
222
|
+
returns (string memory versionedName)
|
223
|
+
{
|
224
|
+
if (version > maxNumReleases()) {
|
225
|
+
revert ErrorVersionTooBig(version);
|
226
|
+
}
|
227
|
+
|
228
|
+
string memory versionName = "_v0";
|
229
|
+
|
230
|
+
if (version >= 10) {
|
231
|
+
versionName = "_v";
|
232
|
+
}
|
233
|
+
|
234
|
+
versionedName = string(
|
235
|
+
abi.encodePacked(
|
236
|
+
name,
|
237
|
+
suffix,
|
238
|
+
versionName,
|
239
|
+
toString(version)));
|
240
|
+
}
|
241
|
+
|
242
|
+
/// @dev returns the max number of releases (major versions) this gif setup can handle.
|
243
|
+
function maxNumReleases() public pure returns (uint8) {
|
244
|
+
return 99;
|
245
|
+
}
|
246
|
+
|
247
|
+
/// @dev returns the provied int as a string
|
248
|
+
function toString(uint256 value) public pure returns (string memory name) {
|
249
|
+
|
250
|
+
if (value == 0) {
|
251
|
+
return "0";
|
252
|
+
}
|
253
|
+
|
254
|
+
uint256 temp = value;
|
255
|
+
uint256 digits = 0;
|
256
|
+
while (temp != 0) {
|
257
|
+
digits++;
|
258
|
+
temp /= 10;
|
259
|
+
}
|
260
|
+
|
261
|
+
bytes memory buffer = new bytes(digits);
|
262
|
+
uint index = digits - 1;
|
263
|
+
|
264
|
+
temp = value;
|
265
|
+
while (temp != 0) {
|
266
|
+
buffer[index] = bytes1(uint8(48 + temp % 10));
|
267
|
+
temp /= 10;
|
268
|
+
|
269
|
+
if (index > 0) {
|
270
|
+
index--;
|
271
|
+
}
|
272
|
+
}
|
273
|
+
|
274
|
+
return string(buffer);
|
167
275
|
}
|
168
276
|
}
|
@@ -1,8 +1,8 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
//
|
5
|
-
type PayoutId is
|
4
|
+
// uint40 allows for 65'535 claims with 16'777'216 payouts each per policy
|
5
|
+
type PayoutId is uint40;
|
6
6
|
|
7
7
|
import {ClaimId} from "./ClaimId.sol";
|
8
8
|
import {PAYOUT} from "./ObjectType.sol";
|
@@ -39,21 +39,21 @@ library PayoutIdLib {
|
|
39
39
|
}
|
40
40
|
|
41
41
|
/// @dev Converts an uint into a PayoutId.
|
42
|
-
function toPayoutId(ClaimId claimId,
|
43
|
-
return PayoutId.wrap((ClaimId.unwrap(claimId) <<
|
42
|
+
function toPayoutId(ClaimId claimId, uint24 payoutNo) public pure returns (PayoutId) {
|
43
|
+
return PayoutId.wrap((uint40(ClaimId.unwrap(claimId)) << 24) + payoutNo);
|
44
44
|
}
|
45
45
|
|
46
46
|
function toClaimId(PayoutId payoutId) public pure returns (ClaimId) {
|
47
|
-
return ClaimId.wrap(uint16(PayoutId.unwrap(payoutId) >>
|
47
|
+
return ClaimId.wrap(uint16(PayoutId.unwrap(payoutId) >> 24));
|
48
48
|
}
|
49
49
|
|
50
|
-
function toPayoutNo(PayoutId payoutId) public pure returns (
|
51
|
-
return
|
50
|
+
function toPayoutNo(PayoutId payoutId) public pure returns (uint24) {
|
51
|
+
return uint24(PayoutId.unwrap(payoutId) & 16777215);
|
52
52
|
}
|
53
53
|
|
54
54
|
/// @dev Converts the PayoutId to a uint.
|
55
|
-
function toInt(PayoutId a) public pure returns (
|
56
|
-
return
|
55
|
+
function toInt(PayoutId a) public pure returns (uint40) {
|
56
|
+
return PayoutId.unwrap(a);
|
57
57
|
}
|
58
58
|
|
59
59
|
/// @dev Returns true if the value is non-zero (> 0).
|
@@ -77,6 +77,6 @@ library PayoutIdLib {
|
|
77
77
|
bytes31(
|
78
78
|
bytes15(
|
79
79
|
uint120(
|
80
|
-
(NftId.unwrap(policyNftId) <<
|
80
|
+
(NftId.unwrap(policyNftId) << 40) + PayoutId.unwrap(payoutId)))));
|
81
81
|
}
|
82
82
|
}
|
@@ -10,7 +10,9 @@ type RiskId is bytes8;
|
|
10
10
|
using {
|
11
11
|
eqRiskId as ==,
|
12
12
|
neRiskId as !=,
|
13
|
-
RiskIdLib.toKey32
|
13
|
+
RiskIdLib.toKey32,
|
14
|
+
RiskIdLib.eq,
|
15
|
+
RiskIdLib.eqz
|
14
16
|
} for RiskId global;
|
15
17
|
|
16
18
|
// general pure free functions
|
@@ -26,6 +28,10 @@ function neRiskId(RiskId a, RiskId b) pure returns (bool isDifferent) {
|
|
26
28
|
}
|
27
29
|
|
28
30
|
library RiskIdLib {
|
31
|
+
function zero() public pure returns (RiskId) {
|
32
|
+
return RiskId.wrap(bytes8(0));
|
33
|
+
}
|
34
|
+
|
29
35
|
// @dev Converts a role string into a role id.
|
30
36
|
function toRiskId(string memory risk) public pure returns (RiskId) {
|
31
37
|
return RiskId.wrap(bytes8(keccak256(abi.encode(risk))));
|
@@ -40,4 +46,12 @@ library RiskIdLib {
|
|
40
46
|
function toKeyId(RiskId id) public pure returns (KeyId keyId) {
|
41
47
|
return KeyId.wrap(bytes31(RiskId.unwrap(id)));
|
42
48
|
}
|
49
|
+
|
50
|
+
function eq(RiskId a, RiskId b) public pure returns (bool isSame) {
|
51
|
+
return eqRiskId(a, b);
|
52
|
+
}
|
53
|
+
|
54
|
+
function eqz(RiskId a) public pure returns (bool isZero) {
|
55
|
+
return eqRiskId(a, zero());
|
56
|
+
}
|
43
57
|
}
|
@@ -2,7 +2,8 @@
|
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
4
|
import {Key32, KeyId, Key32Lib} from "./Key32.sol";
|
5
|
-
import {ROLE} from "./ObjectType.sol";
|
5
|
+
import {ObjectType, ROLE} from "./ObjectType.sol";
|
6
|
+
import {VersionPart} from "./Version.sol";
|
6
7
|
|
7
8
|
type RoleId is uint64;
|
8
9
|
|
@@ -12,116 +13,131 @@ using {
|
|
12
13
|
neRoleId as !=,
|
13
14
|
RoleIdLib.eqz,
|
14
15
|
RoleIdLib.gtz,
|
15
|
-
RoleIdLib.toInt
|
16
|
-
RoleIdLib.toKey32
|
16
|
+
RoleIdLib.toInt
|
17
|
+
// RoleIdLib.toKey32
|
17
18
|
} for RoleId global;
|
18
19
|
|
20
|
+
// general pure free functions
|
21
|
+
|
22
|
+
// @dev Returns true iff role ids a and b are identical
|
23
|
+
function eqRoleId(RoleId a, RoleId b) pure returns (bool isSame) {
|
24
|
+
return RoleId.unwrap(a) == RoleId.unwrap(b);
|
25
|
+
}
|
26
|
+
|
27
|
+
// @dev Returns true iff role ids a and b are different
|
28
|
+
function neRoleId(RoleId a, RoleId b) pure returns (bool isDifferent) {
|
29
|
+
return RoleId.unwrap(a) != RoleId.unwrap(b);
|
30
|
+
}
|
19
31
|
|
20
|
-
|
32
|
+
//--- OpenZeppelin provided roles -------------------------------------------//
|
33
|
+
|
34
|
+
/// @dev Role ID needs to match with oz AccessManager.ADMIN_ROLE
|
21
35
|
function ADMIN_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(type(uint64).min); }
|
22
36
|
|
23
|
-
/// @dev
|
37
|
+
/// @dev Role ID needs to match with oz AccessManager.PUBLIC_ROLE
|
24
38
|
function PUBLIC_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(type(uint64).max); }
|
25
39
|
|
26
|
-
|
40
|
+
//--- GIF roles (range: 1-99) ----------------------------------------------//
|
27
41
|
|
28
42
|
/// @dev cental role for gif release management.
|
29
43
|
/// this role is necessary to call ReleaseManager.createNextRelease/activateNextRelease
|
30
44
|
/// the actual deployment of a release requires the GIF_MANAGER_ROLE.
|
31
45
|
/// GIF_ADMIN_ROLE is the admin of the GIF_MANAGER_ROLE.
|
32
46
|
/// only a single holder may hold this role at any time
|
33
|
-
function GIF_ADMIN_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(
|
47
|
+
function GIF_ADMIN_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(1); }
|
34
48
|
|
35
49
|
/// @dev role for token whith/blacklisting, deploying and registering the services for a new major release
|
36
50
|
/// registering services for a new major release is only possible after a new initial release has been created by the GIF_ADMIN_ROLE
|
37
51
|
/// token white/blacklisting is possible for any active release
|
38
|
-
function GIF_MANAGER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(
|
39
|
-
|
40
|
-
/// @dev
|
41
|
-
function
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
function
|
76
|
-
|
77
|
-
/// @dev instance specific role for pool service
|
78
|
-
function POOL_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2200); }
|
79
|
-
|
80
|
-
/// @dev instance specific role for product service
|
81
|
-
function PRODUCT_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2300); }
|
52
|
+
function GIF_MANAGER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2); }
|
53
|
+
|
54
|
+
/// @dev role for registering remote staking targets and reporting remote total value locked amounts.
|
55
|
+
function GIF_REMOTE_MANAGER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(3); }
|
56
|
+
|
57
|
+
//--- GIF core contract roles (range: 200 - 9'900) --------------------------//
|
58
|
+
// created and assigned during initial deployment for registry and staking
|
59
|
+
// granting for instances and components in instance service
|
60
|
+
// object type * 100 + 0, examples:
|
61
|
+
// - registry contract role: 200
|
62
|
+
// - staking contract role: 300
|
63
|
+
// - instance contract role: 1000
|
64
|
+
|
65
|
+
//--- GIF service roles (range 201 - 9'9xx) ---------------------------------//
|
66
|
+
// created and assigned by release manager contract
|
67
|
+
// object type * 100 + 1/major version, examples:
|
68
|
+
// - registry service role (any version): 299
|
69
|
+
// - registry service role (version 3): 203
|
70
|
+
// - registry service role (any version): 399
|
71
|
+
// - staking service role: (version 3): 303
|
72
|
+
// - application service role (version 3): 2003
|
73
|
+
|
74
|
+
//--- GIF component contract roles (range 12'001 - 19'099) ------------------//
|
75
|
+
// assigned at component registration time
|
76
|
+
// object type * 1000 + instane specific component counter
|
77
|
+
// on any instance a maximum number of 999 components may be deployed
|
78
|
+
// examples:
|
79
|
+
// - 1st pool on instance: 15001
|
80
|
+
// - 1st distribution on instance: 14002
|
81
|
+
// - 1st product on instance: 12003
|
82
|
+
// - 2nd pool on instance: 15004
|
83
|
+
// - 2nd distribution on instance: 14005
|
84
|
+
// - 2nd product on instance: 12006
|
85
|
+
|
86
|
+
|
87
|
+
//--- Custom roles (range >= 1'000'000) -------------------------------------//
|
88
|
+
|
89
|
+
function CUSTOM_ROLE_MIN() pure returns (RoleId) { return RoleIdLib.toRoleId(1000000); }
|
82
90
|
|
83
|
-
|
84
|
-
function APPLICATION_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2400); }
|
85
|
-
|
86
|
-
/// @dev instance specific role for policy service
|
87
|
-
function POLICY_SERVICE_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId(2410); }
|
91
|
+
library RoleIdLib {
|
88
92
|
|
89
|
-
|
90
|
-
|
93
|
+
uint64 public constant ALL_VERSIONS = 99;
|
94
|
+
uint64 public constant SERVICE_DOMAIN_ROLE_FACTOR = 100;
|
95
|
+
uint64 public constant COMPONENT_ROLE_FACTOR = 100;
|
96
|
+
uint64 public constant CUSTOM_ROLE_MIN = 1000000;
|
91
97
|
|
92
|
-
/// @dev
|
93
|
-
function
|
98
|
+
/// @dev Converts the RoleId to a uint.
|
99
|
+
function zero() public pure returns (RoleId) {
|
100
|
+
return RoleId.wrap(0);
|
101
|
+
}
|
94
102
|
|
95
|
-
/// @dev
|
96
|
-
function
|
103
|
+
/// @dev Converts an uint into a role id.
|
104
|
+
function toRoleId(uint64 a) public pure returns (RoleId) {
|
105
|
+
return RoleId.wrap(a);
|
106
|
+
}
|
97
107
|
|
98
|
-
/// @dev
|
99
|
-
function
|
108
|
+
/// @dev Converts an uint into a component role id.
|
109
|
+
function toComponentRoleId(ObjectType objectType, uint64 index) public pure returns (RoleId) {
|
110
|
+
return toRoleId(COMPONENT_ROLE_FACTOR * uint64(objectType.toInt()) + index);
|
111
|
+
}
|
100
112
|
|
101
|
-
|
102
|
-
function
|
103
|
-
|
104
|
-
}
|
113
|
+
/// @dev Converts an uint into a custom role id.
|
114
|
+
function toCustomRoleId(uint64 index) public pure returns (RoleId) {
|
115
|
+
return toRoleId(CUSTOM_ROLE_MIN + index);
|
116
|
+
}
|
105
117
|
|
106
|
-
|
107
|
-
function
|
108
|
-
|
109
|
-
}
|
118
|
+
/// @dev Converts the role id to a uint.
|
119
|
+
function toInt(RoleId a) public pure returns (uint64) {
|
120
|
+
return uint64(RoleId.unwrap(a));
|
121
|
+
}
|
110
122
|
|
111
|
-
|
112
|
-
///
|
113
|
-
function
|
114
|
-
return RoleId.wrap(
|
123
|
+
/// @dev Converts an uint into a role id.
|
124
|
+
/// Used for GIF core contracts.
|
125
|
+
function roleForType(ObjectType objectType) public pure returns (RoleId) {
|
126
|
+
return RoleId.wrap(SERVICE_DOMAIN_ROLE_FACTOR * uint64(objectType.toInt()));
|
115
127
|
}
|
116
128
|
|
117
129
|
/// @dev Converts an uint into a RoleId.
|
118
|
-
|
119
|
-
|
130
|
+
/// Used for GIF core contracts.
|
131
|
+
function roleForTypeAndVersion(ObjectType objectType, VersionPart majorVersion) public pure returns (RoleId) {
|
132
|
+
return RoleId.wrap(
|
133
|
+
uint64(SERVICE_DOMAIN_ROLE_FACTOR * objectType.toInt() + majorVersion.toInt()));
|
120
134
|
}
|
121
135
|
|
122
|
-
/// @dev Converts
|
123
|
-
|
124
|
-
|
136
|
+
/// @dev Converts an uint into a RoleId.
|
137
|
+
/// Used for GIF core contracts.
|
138
|
+
function roleForTypeAndAllVersions(ObjectType objectType) public pure returns (RoleId) {
|
139
|
+
return RoleId.wrap(
|
140
|
+
uint64(SERVICE_DOMAIN_ROLE_FACTOR * objectType.toInt() + ALL_VERSIONS));
|
125
141
|
}
|
126
142
|
|
127
143
|
/// @dev Returns true if the value is non-zero (> 0).
|