@etherisc/gif-next 0.0.2-eb7c077-523 → 0.0.2-eba4d8b-925
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 +46 -8
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +4 -0
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +1007 -0
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +4 -0
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +744 -0
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +4 -0
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +791 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +203 -77
- package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.json +24 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +233 -5
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +200 -16
- 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 +142 -44
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +107 -15
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +19 -0
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +68 -5
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +194 -377
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +206 -27
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +140 -315
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +404 -289
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +147 -109
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +154 -139
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +255 -90
- 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 +1475 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +589 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +2032 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +589 -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 +1479 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +589 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1195 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1655 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +589 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2432 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +589 -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 +158 -57
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +105 -103
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +194 -154
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +446 -143
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +150 -90
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +997 -303
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +131 -266
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +102 -92
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +623 -496
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +4 -0
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +853 -0
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +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 +139 -335
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +180 -29
- 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 +128 -126
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +69 -11
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +115 -303
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +153 -190
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +122 -88
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +162 -387
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +206 -27
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +330 -203
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +143 -97
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +206 -29
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +143 -195
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +464 -312
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +128 -370
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +4 -0
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +456 -0
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +653 -532
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +163 -97
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +134 -184
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +91 -93
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +258 -396
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +206 -27
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +415 -234
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +140 -114
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +94 -9
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +308 -16
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +365 -104
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +136 -83
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +250 -198
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
- package/artifacts/contracts/product/{IProductService.sol/IProductService.json → IRiskService.sol/IRiskService.json} +67 -8
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +459 -309
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +4 -0
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +293 -0
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +141 -99
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +230 -312
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +120 -122
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +256 -394
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +659 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +732 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +22 -3
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +343 -32
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +144 -41
- 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 +447 -117
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +319 -262
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +109 -292
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +94 -80
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +1849 -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 +428 -235
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +66 -8
- 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 +76 -265
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +579 -495
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +143 -107
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +57 -111
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +541 -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 +89 -88
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +547 -224
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +117 -126
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +36 -0
- 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 +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 +148 -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 +55 -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 +104 -303
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +42 -1
- 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 +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 +122 -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 +57 -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 +134 -125
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +77 -16
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +85 -105
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +210 -366
- 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 +122 -95
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +6 -11
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +122 -164
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +99 -85
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +153 -107
- 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/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 +2 -2
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +7 -2
- 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 +2 -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 +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 +79 -15
- 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 +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/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +23 -4
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +52 -2
- 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 +47 -2
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +71 -70
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
- package/contracts/accounting/AccountingService.sol +262 -0
- package/contracts/accounting/AccountingServiceManager.sol +38 -0
- package/contracts/accounting/IAccountingService.sol +45 -0
- package/contracts/authorization/AccessAdmin.sol +232 -133
- package/contracts/authorization/AccessManagerCloneable.sol +136 -3
- package/contracts/authorization/Authorization.sol +321 -202
- package/contracts/authorization/IAccess.sol +1 -0
- package/contracts/authorization/IAccessAdmin.sol +17 -10
- package/contracts/authorization/IAuthorization.sol +27 -7
- package/contracts/authorization/IServiceAuthorization.sol +3 -1
- package/contracts/authorization/ServiceAuthorization.sol +26 -10
- package/contracts/distribution/BasicDistribution.sol +17 -25
- package/contracts/distribution/BasicDistributionAuthorization.sol +26 -9
- package/contracts/distribution/Distribution.sol +46 -40
- package/contracts/distribution/DistributionService.sol +163 -93
- package/contracts/distribution/DistributionServiceManager.sol +6 -6
- package/contracts/distribution/IDistributionComponent.sol +9 -5
- package/contracts/distribution/IDistributionService.sol +37 -21
- package/contracts/examples/fire/DamageLevel.sol +59 -0
- package/contracts/examples/fire/FirePool.sol +90 -0
- package/contracts/examples/fire/FirePoolAuthorization.sol +35 -0
- package/contracts/examples/fire/FireProduct.sol +437 -0
- package/contracts/examples/fire/FireProductAuthorization.sol +45 -0
- package/contracts/examples/fire/FireUSD.sol +26 -0
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +57 -0
- package/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleOracle.sol +137 -0
- package/contracts/examples/unpermissioned/SimplePool.sol +106 -0
- package/contracts/examples/unpermissioned/SimplePoolAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleProduct.sol +377 -0
- package/contracts/examples/unpermissioned/SimpleProductAuthorization.sol +28 -0
- package/contracts/instance/BundleSet.sol +42 -38
- package/contracts/instance/IInstance.sol +21 -37
- package/contracts/instance/IInstanceService.sol +9 -29
- package/contracts/instance/Instance.sol +59 -66
- package/contracts/instance/InstanceAdmin.sol +256 -85
- package/contracts/instance/InstanceAuthorizationV3.sol +56 -45
- package/contracts/instance/InstanceReader.sol +275 -43
- package/contracts/instance/InstanceService.sol +125 -164
- package/contracts/instance/InstanceServiceManager.sol +6 -7
- package/contracts/instance/InstanceStore.sol +24 -2
- package/contracts/instance/RiskSet.sol +118 -0
- package/contracts/instance/base/ObjectCounter.sol +1 -2
- package/contracts/instance/base/ObjectLifecycle.sol +11 -4
- package/contracts/instance/base/ObjectSet.sol +31 -33
- package/contracts/instance/base/ObjectSetHelperLib.sol +30 -0
- package/contracts/instance/module/IBundle.sol +1 -1
- package/contracts/instance/module/IComponents.sol +14 -15
- package/contracts/instance/module/IDistribution.sol +2 -2
- package/contracts/instance/module/IPolicy.sol +26 -25
- package/contracts/instance/module/IRisk.sol +3 -0
- package/contracts/mock/Dip.sol +1 -1
- package/contracts/oracle/BasicOracle.sol +0 -1
- package/contracts/oracle/BasicOracleAuthorization.sol +3 -12
- package/contracts/oracle/IOracleComponent.sol +2 -1
- package/contracts/oracle/IOracleService.sol +2 -1
- package/contracts/oracle/Oracle.sol +21 -22
- package/contracts/oracle/OracleService.sol +113 -81
- package/contracts/oracle/OracleServiceManager.sol +6 -6
- package/contracts/pool/BasicPool.sol +38 -27
- package/contracts/pool/BasicPoolAuthorization.sol +36 -9
- package/contracts/pool/BundleService.sol +194 -83
- package/contracts/pool/BundleServiceManager.sol +6 -6
- package/contracts/pool/IBundleService.sol +31 -22
- package/contracts/pool/IPoolComponent.sol +20 -10
- package/contracts/pool/IPoolService.sol +90 -75
- package/contracts/pool/Pool.sol +145 -111
- package/contracts/pool/PoolLib.sol +216 -0
- package/contracts/pool/PoolService.sol +540 -219
- package/contracts/pool/PoolServiceManager.sol +4 -4
- package/contracts/product/ApplicationService.sol +72 -43
- package/contracts/product/ApplicationServiceManager.sol +4 -4
- package/contracts/product/BasicProduct.sol +13 -44
- package/contracts/product/BasicProductAuthorization.sol +25 -9
- package/contracts/product/ClaimService.sol +367 -151
- package/contracts/product/ClaimServiceManager.sol +4 -4
- package/contracts/product/IApplicationService.sol +6 -2
- package/contracts/product/IClaimService.sol +44 -8
- package/contracts/product/IPolicyService.sol +53 -36
- package/contracts/product/IPricingService.sol +10 -10
- package/contracts/product/IProductComponent.sol +28 -5
- package/contracts/product/{IProductService.sol → IRiskService.sol} +6 -9
- package/contracts/product/PolicyService.sol +476 -269
- package/contracts/product/PolicyServiceLib.sol +65 -0
- package/contracts/product/PolicyServiceManager.sol +4 -4
- package/contracts/product/PricingService.sol +66 -62
- package/contracts/product/PricingServiceManager.sol +4 -4
- package/contracts/product/Product.sol +169 -92
- package/contracts/product/RiskService.sol +144 -0
- package/contracts/product/RiskServiceManager.sol +39 -0
- package/contracts/registry/ChainNft.sol +58 -27
- package/contracts/registry/IRegistry.sol +58 -25
- package/contracts/registry/IRegistryService.sol +5 -12
- package/contracts/registry/IRelease.sol +26 -0
- package/contracts/registry/ITransferInterceptor.sol +1 -2
- package/contracts/registry/Registry.sol +341 -178
- package/contracts/registry/RegistryAdmin.sol +142 -235
- package/contracts/registry/RegistryService.sol +37 -48
- package/contracts/registry/RegistryServiceManager.sol +3 -3
- package/contracts/registry/ReleaseAdmin.sol +245 -0
- package/contracts/registry/ReleaseLifecycle.sol +8 -3
- package/contracts/registry/ReleaseRegistry.sol +244 -266
- package/contracts/registry/ServiceAuthorizationV3.sol +99 -52
- package/contracts/registry/TokenRegistry.sol +6 -8
- package/contracts/shared/Component.sol +74 -128
- package/contracts/shared/ComponentService.sol +453 -342
- package/contracts/shared/ComponentServiceManager.sol +8 -5
- package/contracts/shared/ComponentVerifyingService.sol +28 -17
- package/contracts/shared/ContractLib.sol +253 -0
- package/contracts/shared/IComponent.sol +8 -17
- package/contracts/shared/IComponentService.sol +49 -39
- package/contracts/shared/IInstanceLinkedComponent.sol +7 -27
- package/contracts/shared/ILifecycle.sol +3 -1
- package/contracts/shared/INftOwnable.sol +2 -0
- package/contracts/shared/IPolicyHolder.sol +12 -22
- package/contracts/shared/IRegisterable.sol +23 -1
- package/contracts/shared/IService.sol +3 -5
- package/contracts/shared/{ERC165.sol → InitializableERC165.sol} +3 -3
- package/contracts/shared/InstanceLinkedComponent.sol +81 -35
- package/contracts/shared/KeyValueStore.sol +1 -1
- package/contracts/shared/Lifecycle.sol +15 -4
- package/contracts/shared/NftOwnable.sol +31 -11
- package/contracts/shared/PolicyHolder.sol +17 -57
- package/contracts/shared/Registerable.sol +55 -21
- package/contracts/shared/RegistryLinked.sol +9 -14
- package/contracts/shared/Service.sol +15 -32
- package/contracts/shared/TokenHandler.sol +309 -26
- package/contracts/shared/TokenHandlerDeployerLib.sol +20 -0
- package/contracts/staking/IStaking.sol +7 -9
- package/contracts/staking/IStakingService.sol +8 -3
- package/contracts/staking/StakeManagerLib.sol +19 -26
- package/contracts/staking/Staking.sol +76 -60
- package/contracts/staking/StakingManager.sol +8 -6
- package/contracts/staking/StakingReader.sol +13 -6
- package/contracts/staking/StakingService.sol +54 -35
- package/contracts/staking/StakingServiceManager.sol +6 -5
- 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/Key32.sol +2 -2
- package/contracts/type/Key32Set.sol +62 -0
- package/contracts/type/NftId.sol +7 -0
- package/contracts/type/ObjectType.sol +52 -20
- 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 +23 -15
- package/contracts/type/Seconds.sol +21 -1
- package/contracts/type/Selector.sol +5 -0
- package/contracts/type/StateId.sol +15 -1
- package/contracts/type/Timestamp.sol +10 -5
- package/contracts/type/UFixed.sol +35 -122
- package/contracts/type/Version.sol +15 -5
- package/contracts/upgradeability/ProxyManager.sol +68 -34
- package/contracts/upgradeability/Versionable.sol +2 -2
- package/package.json +4 -3
- 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/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/registry/GlobalRegistry.sol/GlobalRegistry.dbg.json +0 -4
- package/artifacts/contracts/registry/GlobalRegistry.sol/GlobalRegistry.json +0 -1503
- package/artifacts/contracts/registry/GlobalRegistryAdmin.sol/GlobalRegistryAdmin.dbg.json +0 -4
- package/artifacts/contracts/registry/GlobalRegistryAdmin.sol/GlobalRegistryAdmin.json +0 -1881
- package/artifacts/contracts/registry/IGlobalRegistry.sol/IGlobalRegistry.dbg.json +0 -4
- package/artifacts/contracts/registry/IGlobalRegistry.sol/IGlobalRegistry.json +0 -974
- 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/InitializableCustom.sol/InitializableCustom.dbg.json +0 -4
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +0 -39
- package/artifacts/contracts/shared/MainnetId.sol/MainnetContract.dbg.json +0 -4
- package/artifacts/contracts/shared/MainnetId.sol/MainnetContract.json +0 -34
- package/artifacts/contracts/shared/MainnetId.sol/MainnetId.dbg.json +0 -4
- package/artifacts/contracts/shared/MainnetId.sol/MainnetId.json +0 -24
- package/artifacts/contracts/shared/MainnetId.sol/SidenetContract.dbg.json +0 -4
- package/artifacts/contracts/shared/MainnetId.sol/SidenetContract.json +0 -34
- 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/ProductService.sol +0 -99
- package/contracts/product/ProductServiceManager.sol +0 -39
- package/contracts/registry/GlobalRegistry.sol +0 -95
- package/contracts/registry/GlobalRegistryAdmin.sol +0 -38
- package/contracts/registry/IGlobalRegistry.sol +0 -17
- package/contracts/shared/InitializableCustom.sol +0 -177
- package/contracts/shared/MainnetId.sol +0 -29
@@ -11,16 +11,24 @@ interface IAuthorization is
|
|
11
11
|
IAccess
|
12
12
|
{
|
13
13
|
|
14
|
-
|
15
|
-
|
16
|
-
function getRelease() external view returns(VersionPart release);
|
14
|
+
error ErrorAuthorizationMainTargetNameEmpty();
|
15
|
+
error ErrorAuthorizationTargetDomainZero();
|
17
16
|
|
18
|
-
/// @dev Returns the list of
|
19
|
-
function
|
17
|
+
/// @dev Returns the list of service targets.
|
18
|
+
function getServiceDomains() external view returns(ObjectType[] memory serviceDomains);
|
20
19
|
|
21
20
|
/// @dev Returns the service role for the specified service domain.
|
22
21
|
function getServiceRole(ObjectType serviceDomain) external pure returns (RoleId serviceRoleId);
|
23
22
|
|
23
|
+
/// @dev Returns the service target for the specified domain.
|
24
|
+
function getServiceTarget(ObjectType serviceDomain) external view returns(Str serviceTarget);
|
25
|
+
|
26
|
+
/// @dev Returns the component role for the specified domain.
|
27
|
+
function getComponentRole(ObjectType componentDomain) external view returns(RoleId componentRoleId);
|
28
|
+
|
29
|
+
/// @dev Returns the list of involved roles.
|
30
|
+
function getRoles() external view returns(RoleId[] memory roles);
|
31
|
+
|
24
32
|
/// @dev Returns the name for the provided role id.
|
25
33
|
function getRoleInfo(RoleId roleId) external view returns (RoleInfo memory roleInfo);
|
26
34
|
|
@@ -30,10 +38,18 @@ interface IAuthorization is
|
|
30
38
|
/// @dev Returns the main target id name as string.
|
31
39
|
/// This name is used to derive the target id and a corresponding target role name
|
32
40
|
/// Overwrite this function to change the basic pool target name.
|
33
|
-
function
|
41
|
+
function getMainTargetName() external view returns (string memory name);
|
34
42
|
|
35
43
|
/// @dev Returns the main target.
|
36
|
-
function
|
44
|
+
function getMainTarget() external view returns(Str target);
|
45
|
+
|
46
|
+
/// @dev Returns the token hander name.
|
47
|
+
/// Only components have a token handler.
|
48
|
+
function getTokenHandlerName() external view returns(string memory name);
|
49
|
+
|
50
|
+
/// @dev Returns the token hander target.
|
51
|
+
/// Only components have a token handler.
|
52
|
+
function getTokenHandlerTarget() external view returns(Str target);
|
37
53
|
|
38
54
|
/// @dev Returns the complete list of targets.
|
39
55
|
function getTargets() external view returns(Str[] memory targets);
|
@@ -50,5 +66,9 @@ interface IAuthorization is
|
|
50
66
|
|
51
67
|
/// @dev For the given target and role id the list of authorized functions is returned
|
52
68
|
function getAuthorizedFunctions(Str target, RoleId roleId) external view returns(FunctionInfo[] memory authorizatedFunctions);
|
69
|
+
|
70
|
+
/// @dev Returns the release (VersionPart) for which the authorizations are defined by this contract.
|
71
|
+
/// Matches with the release returned by the linked service authorization.
|
72
|
+
function getRelease() external view returns(VersionPart release);
|
53
73
|
}
|
54
74
|
|
@@ -1,11 +1,13 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
+
import {IERC165} from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
|
5
|
+
|
4
6
|
import {IAccess} from "../authorization/IAccess.sol";
|
5
7
|
import {ObjectType} from "../type/ObjectType.sol";
|
6
8
|
import {VersionPart} from "../type/Version.sol";
|
7
9
|
|
8
|
-
interface IServiceAuthorization {
|
10
|
+
interface IServiceAuthorization is IERC165 {
|
9
11
|
|
10
12
|
/// @dev Returns the commit hash representing the deployed release
|
11
13
|
function getCommitHash()
|
@@ -1,6 +1,8 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
+
import {IERC165} from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
|
5
|
+
|
4
6
|
import {IAccess} from "../authorization/IAccess.sol";
|
5
7
|
import {ObjectType} from "../type/ObjectType.sol";
|
6
8
|
import {IServiceAuthorization} from "./IServiceAuthorization.sol";
|
@@ -10,30 +12,36 @@ import {TimestampLib} from "../type/Timestamp.sol";
|
|
10
12
|
import {VersionPart, VersionPartLib} from "../type/Version.sol";
|
11
13
|
|
12
14
|
/// @dev Base contract for release specific service authorization contracts.
|
13
|
-
contract ServiceAuthorization
|
14
|
-
|
15
|
+
contract ServiceAuthorization is
|
16
|
+
IServiceAuthorization
|
15
17
|
{
|
16
|
-
uint256 public constant
|
18
|
+
uint256 public constant COMMIT_HASH_LENGTH = 40;
|
19
|
+
uint256 public constant GIF_INITIAL_VERSION = 3;
|
17
20
|
|
18
|
-
|
21
|
+
uint256 public immutable VERSION;
|
22
|
+
string public COMMIT_HASH;
|
19
23
|
|
20
24
|
ObjectType[] internal _serviceDomains;
|
21
25
|
mapping(ObjectType domain => address service) internal _serviceAddress;
|
22
26
|
mapping(ObjectType domain => ObjectType[] authorizedDomains) internal _authorizedDomains;
|
23
27
|
mapping(ObjectType domain => mapping(ObjectType authorizedDomain => IAccess.FunctionInfo[] functions)) internal _authorizedFunctions;
|
24
28
|
|
25
|
-
constructor(string memory commitHash) {
|
26
|
-
|
29
|
+
constructor(string memory commitHash, uint256 version) {
|
30
|
+
assert(bytes(commitHash).length == COMMIT_HASH_LENGTH);
|
31
|
+
assert(version >= GIF_INITIAL_VERSION);
|
32
|
+
|
33
|
+
COMMIT_HASH = commitHash;
|
34
|
+
VERSION = version;
|
27
35
|
_setupDomains();
|
28
36
|
_setupDomainAuthorizations();
|
29
37
|
}
|
30
38
|
|
31
39
|
function getCommitHash() external view returns(string memory commitHash) {
|
32
|
-
return
|
40
|
+
return COMMIT_HASH;
|
33
41
|
}
|
34
42
|
|
35
43
|
function getRelease() external view returns(VersionPart release) {
|
36
|
-
return VersionPartLib.toVersionPart(
|
44
|
+
return VersionPartLib.toVersionPart(VERSION);
|
37
45
|
}
|
38
46
|
|
39
47
|
function getServiceDomains() external view returns(ObjectType[] memory serviceDomains) {
|
@@ -56,6 +64,15 @@ contract ServiceAuthorization
|
|
56
64
|
return _authorizedFunctions[serviceDomain][authorizedDomain];
|
57
65
|
}
|
58
66
|
|
67
|
+
// ERC165
|
68
|
+
function supportsInterface(bytes4 interfaceId) public pure returns (bool) {
|
69
|
+
return (
|
70
|
+
interfaceId == type(IServiceAuthorization).interfaceId ||
|
71
|
+
interfaceId == type(IERC165).interfaceId
|
72
|
+
);
|
73
|
+
}
|
74
|
+
|
75
|
+
|
59
76
|
/// @dev Overwrite this function for a specific realease.
|
60
77
|
function _setupDomains() internal virtual {}
|
61
78
|
|
@@ -86,5 +103,4 @@ contract ServiceAuthorization
|
|
86
103
|
name: StrLib.toStr(name),
|
87
104
|
createdAt: TimestampLib.blockTimestamp()}));
|
88
105
|
}
|
89
|
-
}
|
90
|
-
|
106
|
+
}
|
@@ -1,25 +1,17 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {COMPONENT, DISTRIBUTION} from "../type/ObjectType.sol";
|
5
|
-
import {Distribution} from "./Distribution.sol";
|
6
4
|
import {IAuthorization} from "../authorization/IAuthorization.sol";
|
7
|
-
|
8
|
-
import {
|
9
|
-
import {NftId, NftIdLib} from "../type/NftId.sol";
|
10
|
-
import {ReferralId, ReferralStatus, ReferralLib} from "../type/Referral.sol";
|
11
|
-
import {Fee, FeeLib} from "../type/Fee.sol";
|
12
|
-
import {InstanceLinkedComponent} from "../shared/InstanceLinkedComponent.sol";
|
13
|
-
import {IComponentService} from "../shared/IComponentService.sol";
|
14
|
-
import {IDistribution} from "../instance/module/IDistribution.sol";
|
15
|
-
import {IDistributionComponent} from "./IDistributionComponent.sol";
|
16
|
-
import {IRegistry} from "../registry/IRegistry.sol";
|
17
|
-
import {TokenHandler} from "../shared/TokenHandler.sol";
|
18
|
-
import {InstanceReader} from "../instance/InstanceReader.sol";
|
19
|
-
import {UFixed} from "../type/UFixed.sol";
|
5
|
+
|
6
|
+
import {Distribution} from "./Distribution.sol";
|
20
7
|
import {DistributorType} from "../type/DistributorType.sol";
|
21
|
-
import {
|
22
|
-
import {
|
8
|
+
import {DISTRIBUTOR} from "../type/ObjectType.sol";
|
9
|
+
import {Fee} from "../type/Fee.sol";
|
10
|
+
import {NftId} from "../type/NftId.sol";
|
11
|
+
import {ReferralId} from "../type/Referral.sol";
|
12
|
+
import {Seconds} from "../type/Seconds.sol";
|
13
|
+
import {Timestamp} from "../type/Timestamp.sol";
|
14
|
+
import {UFixed} from "../type/UFixed.sol";
|
23
15
|
|
24
16
|
|
25
17
|
contract BasicDistribution is
|
@@ -47,15 +39,15 @@ contract BasicDistribution is
|
|
47
39
|
UFixed maxDiscountPercentage,
|
48
40
|
UFixed commissionPercentage,
|
49
41
|
uint32 maxReferralCount,
|
50
|
-
|
42
|
+
Seconds maxReferralLifetime,
|
51
43
|
bool allowSelfReferrals,
|
52
44
|
bool allowRenewals,
|
53
45
|
bytes memory data
|
54
46
|
)
|
55
47
|
external
|
56
48
|
virtual
|
57
|
-
onlyOwner()
|
58
49
|
restricted()
|
50
|
+
onlyOwner()
|
59
51
|
returns (DistributorType distributorType)
|
60
52
|
{
|
61
53
|
return _createDistributorType(
|
@@ -77,24 +69,25 @@ contract BasicDistribution is
|
|
77
69
|
)
|
78
70
|
external
|
79
71
|
virtual
|
80
|
-
onlyOwner()
|
81
72
|
restricted()
|
73
|
+
onlyOwner()
|
82
74
|
returns(NftId distributorNftId)
|
83
75
|
{
|
84
76
|
return _createDistributor(distributor, distributorType, data);
|
85
77
|
}
|
86
78
|
|
87
|
-
function
|
79
|
+
function changeDistributorType(
|
88
80
|
NftId distributorNftId,
|
89
81
|
DistributorType distributorType,
|
90
82
|
bytes memory data
|
91
83
|
)
|
92
84
|
external
|
93
85
|
virtual
|
94
|
-
onlyOwner()
|
95
86
|
restricted()
|
87
|
+
onlyOwner()
|
88
|
+
onlyNftOfType(distributorNftId, DISTRIBUTOR())
|
96
89
|
{
|
97
|
-
|
90
|
+
_changeDistributorType(distributorNftId, distributorType, data);
|
98
91
|
}
|
99
92
|
|
100
93
|
/**
|
@@ -110,8 +103,8 @@ contract BasicDistribution is
|
|
110
103
|
)
|
111
104
|
external
|
112
105
|
virtual
|
113
|
-
onlyDistributor()
|
114
106
|
restricted()
|
107
|
+
onlyDistributor()
|
115
108
|
returns (ReferralId referralId)
|
116
109
|
{
|
117
110
|
NftId distributorNftId = getDistributorNftId(msg.sender);
|
@@ -143,7 +136,6 @@ contract BasicDistribution is
|
|
143
136
|
initialOwner,
|
144
137
|
name,
|
145
138
|
token,
|
146
|
-
"", // registry data
|
147
139
|
""); // component specifc data
|
148
140
|
}
|
149
141
|
}
|
@@ -1,12 +1,15 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
+
import {IAccess} from "../authorization/IAccess.sol";
|
5
|
+
import {IInstanceLinkedComponent} from "../shared/IInstanceLinkedComponent.sol";
|
6
|
+
|
4
7
|
import {Authorization} from "../authorization/Authorization.sol";
|
5
8
|
import {BasicDistribution} from "./BasicDistribution.sol";
|
6
|
-
import {
|
7
|
-
import {
|
8
|
-
import {PUBLIC_ROLE} from "
|
9
|
-
import {
|
9
|
+
import {Distribution} from "./Distribution.sol";
|
10
|
+
import {COMPONENT, DISTRIBUTION} from "../type/ObjectType.sol";
|
11
|
+
import {RoleId, PUBLIC_ROLE} from "../type/RoleId.sol";
|
12
|
+
import {TokenHandler} from "../shared/TokenHandler.sol";
|
10
13
|
|
11
14
|
|
12
15
|
contract BasicDistributionAuthorization
|
@@ -14,16 +17,27 @@ contract BasicDistributionAuthorization
|
|
14
17
|
{
|
15
18
|
|
16
19
|
constructor(string memory distributionlName)
|
17
|
-
Authorization(distributionlName)
|
20
|
+
Authorization(distributionlName, DISTRIBUTION())
|
18
21
|
{}
|
19
22
|
|
20
|
-
function
|
23
|
+
function _setupServiceTargets()
|
21
24
|
internal
|
22
25
|
virtual override
|
23
26
|
{
|
24
|
-
|
27
|
+
_addServiceTargetWithRole(COMPONENT());
|
25
28
|
}
|
26
29
|
|
30
|
+
function _setupTokenHandlerAuthorizations() internal virtual override {
|
31
|
+
IAccess.FunctionInfo[] storage functions;
|
32
|
+
functions = _authorizeForTarget(getTokenHandlerName(), getServiceRole(COMPONENT()));
|
33
|
+
_authorize(functions, TokenHandler.approve.selector, "approve");
|
34
|
+
_authorize(functions, TokenHandler.setWallet.selector, "setWallet");
|
35
|
+
_authorize(functions, TokenHandler.pushFeeToken.selector, "pushFeeToken");
|
36
|
+
|
37
|
+
// authorize token handler functions for pool service role
|
38
|
+
functions = _authorizeForTarget(getTokenHandlerName(), getServiceRole(DISTRIBUTION()));
|
39
|
+
_authorize(functions, TokenHandler.pushToken.selector, "pushToken");
|
40
|
+
}
|
27
41
|
|
28
42
|
function _setupTargetAuthorizations()
|
29
43
|
internal
|
@@ -32,12 +46,15 @@ contract BasicDistributionAuthorization
|
|
32
46
|
IAccess.FunctionInfo[] storage functions;
|
33
47
|
|
34
48
|
// authorize public role (open access to any account, only allows to lock target)
|
35
|
-
functions = _authorizeForTarget(
|
49
|
+
functions = _authorizeForTarget(getMainTargetName(), PUBLIC_ROLE());
|
36
50
|
_authorize(functions, BasicDistribution.setFees.selector, "setFees");
|
37
51
|
_authorize(functions, BasicDistribution.createDistributorType.selector, "createDistributorType");
|
38
52
|
_authorize(functions, BasicDistribution.createDistributor.selector, "createDistributor");
|
39
|
-
_authorize(functions, BasicDistribution.
|
53
|
+
_authorize(functions, BasicDistribution.changeDistributorType.selector, "changeDistributorType");
|
40
54
|
_authorize(functions, BasicDistribution.createReferral.selector, "createReferral");
|
55
|
+
|
56
|
+
_authorize(functions, IInstanceLinkedComponent.withdrawFees.selector, "withdrawFees");
|
57
|
+
_authorize(functions, Distribution.withdrawCommission.selector, "withdrawCommission");
|
41
58
|
}
|
42
59
|
}
|
43
60
|
|
@@ -1,24 +1,21 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {COMPONENT, DISTRIBUTION} from "../type/ObjectType.sol";
|
5
4
|
import {IAuthorization} from "../authorization/IAuthorization.sol";
|
5
|
+
import {IComponentService} from "../shared/IComponentService.sol";
|
6
|
+
import {IDistributionComponent} from "./IDistributionComponent.sol";
|
6
7
|
import {IDistributionService} from "./IDistributionService.sol";
|
7
|
-
|
8
|
+
|
9
|
+
import {Amount} from "../type/Amount.sol";
|
10
|
+
import {COMPONENT, DISTRIBUTION, DISTRIBUTOR} from "../type/ObjectType.sol";
|
11
|
+
import {DistributorType} from "../type/DistributorType.sol";
|
12
|
+
import {Fee} from "../type/Fee.sol";
|
8
13
|
import {NftId, NftIdLib} from "../type/NftId.sol";
|
9
14
|
import {ReferralId, ReferralStatus, ReferralLib} from "../type/Referral.sol";
|
10
|
-
import {Fee, FeeLib} from "../type/Fee.sol";
|
11
15
|
import {InstanceLinkedComponent} from "../shared/InstanceLinkedComponent.sol";
|
12
|
-
import {
|
13
|
-
import {
|
14
|
-
import {IDistributionComponent} from "./IDistributionComponent.sol";
|
15
|
-
import {IRegistry} from "../registry/IRegistry.sol";
|
16
|
-
import {TokenHandler} from "../shared/TokenHandler.sol";
|
17
|
-
import {InstanceReader} from "../instance/InstanceReader.sol";
|
16
|
+
import {Seconds} from "../type/Seconds.sol";
|
17
|
+
import {Timestamp} from "../type/Timestamp.sol";
|
18
18
|
import {UFixed} from "../type/UFixed.sol";
|
19
|
-
import {DistributorType} from "../type/DistributorType.sol";
|
20
|
-
import {Timestamp, TimestampLib} from "../type/Timestamp.sol";
|
21
|
-
import {ITransferInterceptor} from "../registry/ITransferInterceptor.sol";
|
22
19
|
|
23
20
|
|
24
21
|
abstract contract Distribution is
|
@@ -42,12 +39,29 @@ abstract contract Distribution is
|
|
42
39
|
}
|
43
40
|
|
44
41
|
|
45
|
-
function
|
42
|
+
function processRenewal(
|
43
|
+
ReferralId referralId,
|
44
|
+
uint256 feeAmount
|
45
|
+
)
|
46
46
|
external
|
47
47
|
virtual
|
48
|
-
|
48
|
+
restricted()
|
49
|
+
{
|
50
|
+
// default is no action
|
51
|
+
}
|
52
|
+
|
53
|
+
|
54
|
+
/// @inheritdoc IDistributionComponent
|
55
|
+
function withdrawCommission(NftId distributorNftId, Amount amount)
|
56
|
+
external
|
57
|
+
virtual
|
58
|
+
restricted()
|
59
|
+
onlyDistributor()
|
60
|
+
onlyNftOfType(distributorNftId, DISTRIBUTOR())
|
61
|
+
onlyNftOwner(distributorNftId)
|
62
|
+
returns (Amount withdrawnAmount)
|
49
63
|
{
|
50
|
-
|
64
|
+
return _withdrawCommission(distributorNftId, amount);
|
51
65
|
}
|
52
66
|
|
53
67
|
|
@@ -111,17 +125,6 @@ abstract contract Distribution is
|
|
111
125
|
}
|
112
126
|
|
113
127
|
|
114
|
-
function processRenewal(
|
115
|
-
ReferralId referralId,
|
116
|
-
uint256 feeAmount
|
117
|
-
)
|
118
|
-
external
|
119
|
-
virtual
|
120
|
-
restricted()
|
121
|
-
{
|
122
|
-
// default is no action
|
123
|
-
}
|
124
|
-
|
125
128
|
/// @dev Returns true iff the component needs to be called when selling/renewing policis
|
126
129
|
function isVerifying() external pure returns (bool verifying) {
|
127
130
|
return true;
|
@@ -130,12 +133,11 @@ abstract contract Distribution is
|
|
130
133
|
|
131
134
|
function _initializeDistribution(
|
132
135
|
address registry,
|
133
|
-
NftId
|
136
|
+
NftId productNftId,
|
134
137
|
IAuthorization authorization,
|
135
138
|
address initialOwner,
|
136
139
|
string memory name,
|
137
140
|
address token,
|
138
|
-
bytes memory registryData, // writeonly data that will saved in the object info record of the registry
|
139
141
|
bytes memory componentData // component specifidc data
|
140
142
|
)
|
141
143
|
internal
|
@@ -144,21 +146,20 @@ abstract contract Distribution is
|
|
144
146
|
{
|
145
147
|
_initializeInstanceLinkedComponent(
|
146
148
|
registry,
|
147
|
-
|
149
|
+
productNftId,
|
148
150
|
name,
|
149
151
|
token,
|
150
152
|
DISTRIBUTION(),
|
151
153
|
authorization,
|
152
154
|
true,
|
153
155
|
initialOwner,
|
154
|
-
registryData,
|
155
156
|
componentData);
|
156
157
|
|
157
158
|
DistributionStorage storage $ = _getDistributionStorage();
|
158
159
|
$._distributionService = IDistributionService(_getServiceAddress(DISTRIBUTION()));
|
159
160
|
$._componentService = IComponentService(_getServiceAddress(COMPONENT()));
|
160
161
|
|
161
|
-
|
162
|
+
_registerInterface(type(IDistributionComponent).interfaceId);
|
162
163
|
}
|
163
164
|
|
164
165
|
/// @dev Sets the distribution fees to the provided values.
|
@@ -181,7 +182,7 @@ abstract contract Distribution is
|
|
181
182
|
UFixed maxDiscountPercentage,
|
182
183
|
UFixed commissionPercentage,
|
183
184
|
uint32 maxReferralCount,
|
184
|
-
|
185
|
+
Seconds maxReferralLifetime,
|
185
186
|
bool allowSelfReferrals,
|
186
187
|
bool allowRenewals,
|
187
188
|
bytes memory data
|
@@ -227,7 +228,7 @@ abstract contract Distribution is
|
|
227
228
|
}
|
228
229
|
|
229
230
|
/// @dev Uptates the distributor type for the specified distributor.
|
230
|
-
function
|
231
|
+
function _changeDistributorType(
|
231
232
|
NftId distributorNftId,
|
232
233
|
DistributorType distributorType,
|
233
234
|
bytes memory data
|
@@ -236,11 +237,10 @@ abstract contract Distribution is
|
|
236
237
|
virtual
|
237
238
|
{
|
238
239
|
DistributionStorage storage $ = _getDistributionStorage();
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
// data);
|
240
|
+
$._distributionService.changeDistributorType(
|
241
|
+
distributorNftId,
|
242
|
+
distributorType,
|
243
|
+
data);
|
244
244
|
}
|
245
245
|
|
246
246
|
/// @dev Create a new referral code for the provided distributor.
|
@@ -266,10 +266,16 @@ abstract contract Distribution is
|
|
266
266
|
data);
|
267
267
|
}
|
268
268
|
|
269
|
+
function _withdrawCommission(NftId distributorNftId, Amount amount)
|
270
|
+
internal
|
271
|
+
returns (Amount withdrawnAmount)
|
272
|
+
{
|
273
|
+
return _getDistributionStorage()._distributionService.withdrawCommission(distributorNftId, amount);
|
274
|
+
}
|
269
275
|
|
270
|
-
function _nftTransferFrom(address from, address to, uint256 tokenId) internal virtual override {
|
276
|
+
function _nftTransferFrom(address from, address to, uint256 tokenId, address operator) internal virtual override {
|
271
277
|
// keep track of distributor nft owner
|
272
|
-
emit LogDistributorUpdated(to,
|
278
|
+
emit LogDistributorUpdated(to, operator);
|
273
279
|
DistributionStorage storage $ = _getDistributionStorage();
|
274
280
|
$._distributorNftId[from] = NftIdLib.zero();
|
275
281
|
$._distributorNftId[to] = NftIdLib.toNftId(tokenId);
|