@etherisc/gif-next 0.0.2-f1f3b2c-994 → 0.0.2-f2273b3-211
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 +27 -6
- 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 +163 -55
- 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 +94 -14
- 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 +2 -2
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +8 -8
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +175 -216
- 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 +113 -130
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +275 -171
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +111 -65
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +100 -112
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +148 -72
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +158 -195
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +206 -27
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +336 -295
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +203 -28
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +215 -168
- 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 +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +156 -153
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +282 -193
- 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 +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +717 -292
- 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 +211 -82
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +386 -117
- 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 +590 -204
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +129 -157
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +75 -45
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +445 -375
- 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 +3 -3
- 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/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +132 -173
- 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 +94 -106
- 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 +108 -125
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +151 -81
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +95 -41
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +107 -152
- 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 +156 -326
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +79 -101
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +84 -135
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +94 -145
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +192 -229
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +107 -163
- 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 +330 -368
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +119 -69
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +130 -54
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +71 -41
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +228 -186
- 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 +272 -173
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +100 -78
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +89 -9
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +170 -19
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +139 -54
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +105 -52
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +211 -164
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +55 -2
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +235 -170
- 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 +102 -64
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +181 -116
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +89 -51
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +224 -182
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +112 -63
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +80 -38
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +98 -2
- 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 +142 -38
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +277 -213
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +181 -74
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +67 -33
- 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 +3 -3
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +337 -65
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +12 -12
- 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 +105 -104
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +483 -485
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +99 -73
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +55 -2
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +454 -5
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +24 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.json +30 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +40 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +92 -86
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +446 -276
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +94 -106
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +16 -0
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +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 +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +107 -124
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +1 -1
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +1 -1
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +18 -2
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +152 -38
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +55 -2
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +327 -73
- 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 +1 -1
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +88 -24
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +113 -136
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +130 -16
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +49 -49
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +203 -206
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +3 -3
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +93 -51
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +6 -57
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +181 -55
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +77 -39
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +130 -130
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +23 -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 +3 -3
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +3 -3
- 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 +2 -2
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +62 -5
- 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/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/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 +2 -2
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +3 -3
- 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 +44 -12
- 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 +216 -125
- package/contracts/authorization/AccessManagerCloneable.sol +136 -3
- package/contracts/authorization/Authorization.sol +321 -205
- package/contracts/authorization/IAccess.sol +1 -0
- package/contracts/authorization/IAccessAdmin.sol +14 -8
- package/contracts/authorization/IAuthorization.sol +27 -7
- package/contracts/authorization/IServiceAuthorization.sol +1 -1
- package/contracts/authorization/ServiceAuthorization.sol +4 -4
- package/contracts/distribution/BasicDistribution.sol +15 -12
- package/contracts/distribution/BasicDistributionAuthorization.sol +22 -9
- package/contracts/distribution/Distribution.sol +41 -47
- package/contracts/distribution/DistributionService.sol +100 -78
- package/contracts/distribution/DistributionServiceManager.sol +1 -1
- package/contracts/distribution/IDistributionComponent.sol +1 -1
- package/contracts/distribution/IDistributionService.sol +19 -19
- package/contracts/examples/fire/FirePool.sol +25 -10
- package/contracts/examples/fire/FirePoolAuthorization.sol +2 -1
- package/contracts/examples/fire/FireProduct.sol +40 -13
- package/contracts/examples/fire/FireProductAuthorization.sol +3 -3
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +11 -4
- package/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleOracle.sol +4 -4
- package/contracts/examples/unpermissioned/SimplePool.sol +37 -7
- package/contracts/examples/unpermissioned/SimplePoolAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleProduct.sol +49 -23
- package/contracts/examples/unpermissioned/SimpleProductAuthorization.sol +28 -0
- package/contracts/instance/BundleSet.sol +42 -38
- package/contracts/instance/IInstance.sol +17 -10
- package/contracts/instance/IInstanceService.sol +9 -29
- package/contracts/instance/Instance.sol +52 -34
- package/contracts/instance/InstanceAdmin.sol +249 -100
- package/contracts/instance/InstanceAuthorizationV3.sol +54 -45
- package/contracts/instance/InstanceReader.sol +174 -32
- package/contracts/instance/InstanceService.sol +85 -146
- package/contracts/instance/InstanceServiceManager.sol +1 -1
- package/contracts/instance/InstanceStore.sol +13 -2
- package/contracts/instance/RiskSet.sol +118 -0
- package/contracts/instance/base/ObjectCounter.sol +1 -2
- package/contracts/instance/base/ObjectLifecycle.sol +4 -2
- package/contracts/instance/base/ObjectSet.sol +31 -33
- package/contracts/instance/base/ObjectSetHelperLib.sol +30 -0
- package/contracts/instance/module/IComponents.sol +10 -7
- package/contracts/instance/module/IDistribution.sol +2 -1
- package/contracts/instance/module/IPolicy.sol +2 -1
- package/contracts/instance/module/IRisk.sol +3 -0
- package/contracts/oracle/BasicOracle.sol +0 -1
- package/contracts/oracle/BasicOracleAuthorization.sol +3 -12
- package/contracts/oracle/IOracleService.sol +2 -1
- package/contracts/oracle/Oracle.sol +5 -16
- package/contracts/oracle/OracleService.sol +107 -78
- package/contracts/oracle/OracleServiceManager.sol +1 -1
- package/contracts/pool/BasicPool.sol +33 -24
- package/contracts/pool/BasicPoolAuthorization.sol +27 -9
- package/contracts/pool/BundleService.sol +88 -154
- package/contracts/pool/BundleServiceManager.sol +1 -1
- package/contracts/pool/IBundleService.sol +15 -43
- package/contracts/pool/IPoolComponent.sol +1 -7
- package/contracts/pool/IPoolService.sol +58 -64
- package/contracts/pool/Pool.sol +112 -120
- package/contracts/pool/PoolLib.sol +216 -0
- package/contracts/pool/PoolService.sol +436 -242
- package/contracts/pool/PoolServiceManager.sol +1 -1
- package/contracts/product/ApplicationService.sol +24 -16
- package/contracts/product/ApplicationServiceManager.sol +1 -1
- package/contracts/product/BasicProduct.sol +10 -12
- package/contracts/product/BasicProductAuthorization.sol +24 -11
- package/contracts/product/ClaimService.sol +202 -151
- package/contracts/product/ClaimServiceManager.sol +1 -1
- package/contracts/product/IApplicationService.sol +5 -2
- package/contracts/product/IClaimService.sol +14 -2
- package/contracts/product/IPolicyService.sol +26 -11
- package/contracts/product/IPricingService.sol +9 -9
- package/contracts/product/IProductComponent.sol +10 -1
- package/contracts/product/PolicyService.sol +248 -252
- package/contracts/product/PolicyServiceLib.sol +65 -0
- package/contracts/product/PolicyServiceManager.sol +1 -1
- package/contracts/product/PricingService.sol +30 -26
- package/contracts/product/PricingServiceManager.sol +3 -3
- package/contracts/product/Product.sol +106 -60
- package/contracts/product/RiskService.sol +74 -25
- package/contracts/product/RiskServiceManager.sol +1 -1
- package/contracts/registry/ChainNft.sol +10 -11
- package/contracts/registry/IRegistry.sol +14 -15
- package/contracts/registry/IRegistryService.sol +6 -4
- package/contracts/registry/IRelease.sol +26 -0
- package/contracts/registry/ITransferInterceptor.sol +1 -2
- package/contracts/registry/Registry.sol +29 -6
- package/contracts/registry/RegistryAdmin.sol +132 -226
- package/contracts/registry/RegistryService.sol +40 -58
- package/contracts/registry/RegistryServiceManager.sol +1 -1
- package/contracts/registry/ReleaseAdmin.sol +245 -0
- package/contracts/registry/ReleaseLifecycle.sol +2 -0
- package/contracts/registry/ReleaseRegistry.sol +139 -124
- package/contracts/registry/ServiceAuthorizationV3.sol +97 -48
- package/contracts/registry/TokenRegistry.sol +6 -8
- package/contracts/shared/Component.sol +69 -118
- package/contracts/shared/ComponentService.sol +422 -371
- package/contracts/shared/ComponentServiceManager.sol +1 -1
- package/contracts/shared/ComponentVerifyingService.sol +27 -15
- package/contracts/shared/ContractLib.sol +224 -9
- package/contracts/shared/IComponent.sol +8 -20
- package/contracts/shared/IComponentService.sol +41 -37
- package/contracts/shared/IInstanceLinkedComponent.sol +3 -22
- package/contracts/shared/INftOwnable.sol +2 -0
- package/contracts/shared/IRegisterable.sol +23 -1
- package/contracts/shared/IService.sol +3 -5
- package/contracts/shared/InstanceLinkedComponent.sol +68 -42
- package/contracts/shared/Lifecycle.sol +7 -7
- package/contracts/shared/NftOwnable.sol +26 -6
- package/contracts/shared/PolicyHolder.sol +1 -1
- package/contracts/shared/Registerable.sol +53 -19
- package/contracts/shared/RegistryLinked.sol +7 -13
- package/contracts/shared/Service.sol +9 -31
- package/contracts/shared/TokenHandler.sol +274 -72
- package/contracts/shared/TokenHandlerDeployerLib.sol +10 -2
- package/contracts/staking/IStaking.sol +6 -10
- package/contracts/staking/IStakingService.sol +12 -4
- package/contracts/staking/StakeManagerLib.sol +69 -20
- package/contracts/staking/Staking.sol +73 -41
- package/contracts/staking/StakingReader.sol +1 -16
- package/contracts/staking/StakingService.sol +70 -24
- package/contracts/staking/StakingServiceManager.sol +5 -4
- package/contracts/type/Key32.sol +2 -2
- package/contracts/type/Key32Set.sol +62 -0
- package/contracts/type/NftId.sol +6 -0
- package/contracts/type/ObjectType.sol +48 -21
- package/contracts/type/RiskId.sol +23 -6
- package/contracts/type/RoleId.sol +23 -15
- package/contracts/type/Selector.sol +5 -0
- package/contracts/type/Timestamp.sol +0 -5
- package/contracts/type/UFixed.sol +9 -119
- package/contracts/type/Version.sol +15 -5
- package/contracts/upgradeability/ProxyManager.sol +2 -1
- package/package.json +3 -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/type/UFixed.sol/MathLib.dbg.json +0 -4
- package/artifacts/contracts/type/UFixed.sol/MathLib.json +0 -16
- package/contracts/authorization/IModuleAuthorization.sol +0 -21
- package/contracts/authorization/ModuleAuthorization.sol +0 -78
- package/contracts/instance/module/IAccess.sol +0 -46
@@ -2,16 +2,19 @@
|
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
4
|
import {
|
5
|
-
ALL, REGISTRY,
|
5
|
+
ALL, ACCOUNTING, REGISTRY, RISK, ORACLE, POOL, INSTANCE, COMPONENT, DISTRIBUTION, APPLICATION, POLICY, CLAIM, BUNDLE, STAKING, PRICE
|
6
6
|
} from "../../contracts/type/ObjectType.sol";
|
7
7
|
|
8
8
|
import {IAccess} from "../authorization/IAccess.sol";
|
9
|
+
import {IAccountingService} from "../accounting/IAccountingService.sol";
|
9
10
|
import {IBundleService} from "../pool/IBundleService.sol";
|
11
|
+
import {IClaimService} from "../product/IClaimService.sol";
|
10
12
|
import {IDistributionService} from "../distribution/IDistributionService.sol";
|
11
13
|
import {IInstanceService} from "../instance/IInstanceService.sol";
|
12
14
|
import {IPoolService} from "../pool/IPoolService.sol";
|
13
15
|
import {IStakingService} from "../staking/IStakingService.sol";
|
14
16
|
import {IRegistryService} from "./IRegistryService.sol";
|
17
|
+
import {IRiskService} from "../product/IRiskService.sol";
|
15
18
|
import {ServiceAuthorization} from "../authorization/ServiceAuthorization.sol";
|
16
19
|
|
17
20
|
|
@@ -19,7 +22,7 @@ contract ServiceAuthorizationV3
|
|
19
22
|
is ServiceAuthorization
|
20
23
|
{
|
21
24
|
|
22
|
-
constructor(
|
25
|
+
constructor(string memory commitHash)
|
23
26
|
ServiceAuthorization(commitHash, 3)
|
24
27
|
{}
|
25
28
|
|
@@ -30,16 +33,17 @@ contract ServiceAuthorizationV3
|
|
30
33
|
_authorizeDomain(REGISTRY(), address(1));
|
31
34
|
_authorizeDomain(STAKING(), address(2));
|
32
35
|
_authorizeDomain(INSTANCE(), address(3));
|
33
|
-
_authorizeDomain(
|
34
|
-
_authorizeDomain(
|
35
|
-
_authorizeDomain(
|
36
|
-
_authorizeDomain(
|
37
|
-
_authorizeDomain(
|
38
|
-
_authorizeDomain(
|
39
|
-
_authorizeDomain(
|
40
|
-
_authorizeDomain(
|
41
|
-
_authorizeDomain(
|
42
|
-
_authorizeDomain(
|
36
|
+
_authorizeDomain(ACCOUNTING(), address(4));
|
37
|
+
_authorizeDomain(COMPONENT(), address(5));
|
38
|
+
_authorizeDomain(DISTRIBUTION(), address(6));
|
39
|
+
_authorizeDomain(PRICE(), address(7));
|
40
|
+
_authorizeDomain(BUNDLE(), address(8));
|
41
|
+
_authorizeDomain(POOL(), address(9));
|
42
|
+
_authorizeDomain(ORACLE(), address(10));
|
43
|
+
_authorizeDomain(RISK(), address(11));
|
44
|
+
_authorizeDomain(POLICY(), address(12));
|
45
|
+
_authorizeDomain(CLAIM(), address(13));
|
46
|
+
_authorizeDomain(APPLICATION(), address(14));
|
43
47
|
}
|
44
48
|
|
45
49
|
|
@@ -50,7 +54,11 @@ contract ServiceAuthorizationV3
|
|
50
54
|
_setupIRegistryServiceAuthorization();
|
51
55
|
_setupStakingServiceAuthorization();
|
52
56
|
_setupInstanceServiceAuthorization();
|
57
|
+
_setupInstanceServiceAuthorization();
|
58
|
+
_setupAccountingServiceAuthorization();
|
53
59
|
_setupComponentServiceAuthorization();
|
60
|
+
_setupClaimServiceAuthorization();
|
61
|
+
_setupRiskServiceAuthorization();
|
54
62
|
_setupDistributionServiceAuthorization();
|
55
63
|
_setupPoolServiceAuthorization();
|
56
64
|
_setupBundleServiceAuthorization();
|
@@ -67,27 +75,21 @@ contract ServiceAuthorizationV3
|
|
67
75
|
functions = _authorizeForService(REGISTRY(), APPLICATION());
|
68
76
|
_authorize(functions, IRegistryService.registerPolicy.selector, "registerPolicy");
|
69
77
|
|
70
|
-
// functions = _authorizeForService(REGISTRY(), POOL());
|
71
|
-
// _authorize(functions, IRegistryService.registerPool.selector, "registerPool");
|
72
|
-
|
73
78
|
functions = _authorizeForService(REGISTRY(), BUNDLE());
|
74
79
|
_authorize(functions, IRegistryService.registerBundle.selector, "registerBundle");
|
75
80
|
|
81
|
+
functions = _authorizeForService(REGISTRY(), COMPONENT());
|
82
|
+
_authorize(functions, IRegistryService.registerProduct.selector, "registerProduct");
|
83
|
+
_authorize(functions, IRegistryService.registerProductLinkedComponent.selector, "registerProductLinkedComponent");
|
84
|
+
|
76
85
|
functions = _authorizeForService(REGISTRY(), DISTRIBUTION());
|
77
|
-
// _authorize(functions, IRegistryService.registerDistribution.selector, "registerDistribution");
|
78
86
|
_authorize(functions, IRegistryService.registerDistributor.selector, "registerDistributor");
|
79
87
|
|
80
|
-
functions = _authorizeForService(REGISTRY(), COMPONENT());
|
81
|
-
_authorize(functions, IRegistryService.registerComponent.selector, "registerComponent");
|
82
|
-
|
83
88
|
functions = _authorizeForService(REGISTRY(), INSTANCE());
|
84
89
|
_authorize(functions, IRegistryService.registerInstance.selector, "registerInstance");
|
85
90
|
|
86
91
|
functions = _authorizeForService(REGISTRY(), STAKING());
|
87
92
|
_authorize(functions, IRegistryService.registerStake.selector, "registerStake");
|
88
|
-
|
89
|
-
// functions = _authorizeForService(REGISTRY(), PRODUCT());
|
90
|
-
// _authorize(functions, IRegistryService.registerProduct.selector, "registerProduct");
|
91
93
|
}
|
92
94
|
|
93
95
|
|
@@ -120,9 +122,48 @@ contract ServiceAuthorizationV3
|
|
120
122
|
internal
|
121
123
|
{
|
122
124
|
IAccess.FunctionInfo[] storage functions;
|
125
|
+
functions = _authorizeForService(INSTANCE(), ALL());
|
126
|
+
_authorize(functions, IInstanceService.createInstance.selector, "createInstance");
|
127
|
+
_authorize(functions, IInstanceService.upgradeInstanceReader.selector, "upgradeInstanceReader");
|
128
|
+
_authorize(functions, IInstanceService.upgradeMasterInstanceReader.selector, "upgradeMasterInstanceReader");
|
129
|
+
|
130
|
+
_authorize(functions, IInstanceService.setStakingLockingPeriod.selector, "setStakingLockingPeriod");
|
131
|
+
_authorize(functions, IInstanceService.setStakingRewardRate.selector, "setStakingRewardRate");
|
132
|
+
_authorize(functions, IInstanceService.refillStakingRewardReserves.selector, "refillStakingRewardReserves");
|
133
|
+
_authorize(functions, IInstanceService.withdrawStakingRewardReserves.selector, "withdrawStakingRewardReserves");
|
134
|
+
}
|
135
|
+
|
136
|
+
/// @dev Accounting service function authorization.
|
137
|
+
function _setupAccountingServiceAuthorization()
|
138
|
+
internal
|
139
|
+
{
|
140
|
+
IAccess.FunctionInfo[] storage functions;
|
141
|
+
|
142
|
+
functions = _authorizeForService(ACCOUNTING(), BUNDLE());
|
143
|
+
_authorize(functions, IAccountingService.increaseBundleBalance.selector, "increaseBundleBalance");
|
144
|
+
_authorize(functions, IAccountingService.decreaseBundleBalance.selector, "decreaseBundleBalance");
|
145
|
+
|
146
|
+
functions = _authorizeForService(ACCOUNTING(), POOL());
|
147
|
+
_authorize(functions, IAccountingService.decreaseBundleBalanceForPool.selector, "decreaseBundleBalanceForPool");
|
148
|
+
|
149
|
+
functions = _authorizeForService(ACCOUNTING(), COMPONENT());
|
150
|
+
_authorize(functions, IAccountingService.decreaseComponentFees.selector, "decreaseComponentFees");
|
151
|
+
|
152
|
+
functions = _authorizeForService(ACCOUNTING(), DISTRIBUTION());
|
153
|
+
_authorize(functions, IAccountingService.increaseDistributionBalance.selector, "increaseDistributionBalance");
|
154
|
+
_authorize(functions, IAccountingService.decreaseDistributionBalance.selector, "decreaseDistributionBalance");
|
155
|
+
_authorize(functions, IAccountingService.increaseDistributorBalance.selector, "increaseDistributorBalance");
|
156
|
+
_authorize(functions, IAccountingService.decreaseDistributorBalance.selector, "decreaseDistributorBalance");
|
157
|
+
|
158
|
+
functions = _authorizeForService(ACCOUNTING(), POLICY());
|
159
|
+
_authorize(functions, IAccountingService.increaseProductFees.selector, "increaseProductFees");
|
160
|
+
|
161
|
+
functions = _authorizeForService(ACCOUNTING(), POOL());
|
162
|
+
_authorize(functions, IAccountingService.increasePoolBalance.selector, "increasePoolBalance");
|
163
|
+
_authorize(functions, IAccountingService.decreasePoolBalance.selector, "decreasePoolBalance");
|
164
|
+
_authorize(functions, IAccountingService.increaseBundleBalanceForPool.selector, "increaseBundleBalanceForPool");
|
165
|
+
_authorize(functions, IAccountingService.decreaseBundleBalanceForPool.selector, "decreaseBundleBalanceForPool");
|
123
166
|
|
124
|
-
functions = _authorizeForService(INSTANCE(), COMPONENT());
|
125
|
-
_authorize(functions, IInstanceService.initializeAuthorization.selector, "initializeAuthorization");
|
126
167
|
}
|
127
168
|
|
128
169
|
|
@@ -130,35 +171,33 @@ contract ServiceAuthorizationV3
|
|
130
171
|
function _setupComponentServiceAuthorization()
|
131
172
|
internal
|
132
173
|
{
|
133
|
-
// authz.authorizations = new DomainAuthorization[](4);
|
134
|
-
|
135
|
-
// authz.authorizations[0].domain = POLICY();
|
136
|
-
// _functions = new IAccessAdmin.Function[](1);
|
137
|
-
// __authorize(ComponentService.increaseProductFees.selector, "increaseProductFees"));
|
138
|
-
// authz.authorizations[0].functions = _functions;
|
139
|
-
|
140
|
-
// authz.authorizations[1].domain = DISTRIBUTION();
|
141
|
-
// _functions = new IAccessAdmin.Function[](1);
|
142
|
-
// __authorize(ComponentService.increaseDistributionBalance.selector, "increaseDistributionBalance"));
|
143
|
-
// authz.authorizations[1].functions = _functions;
|
144
|
-
|
145
|
-
// authz.authorizations[2].domain = POOL();
|
146
|
-
// _functions = new IAccessAdmin.Function[](1);
|
147
|
-
// __authorize(ComponentService.increasePoolBalance.selector, "increasePoolBalance"));
|
148
|
-
// authz.authorizations[2].functions = _functions;
|
149
|
-
|
150
|
-
// authz.authorizations[3].domain = BUNDLE();
|
151
|
-
// _functions = new IAccessAdmin.Function[](1);
|
152
|
-
// __authorize(ComponentService.increaseBundleBalance.selector, "increaseBundleBalance"));
|
153
|
-
// authz.authorizations[3].functions = _functions;
|
154
174
|
}
|
155
175
|
|
156
176
|
/// @dev Distribution service function authorization.
|
157
|
-
function
|
177
|
+
function _setupRiskServiceAuthorization()
|
158
178
|
internal
|
159
179
|
{
|
160
180
|
IAccess.FunctionInfo[] storage functions;
|
181
|
+
functions = _authorizeForService(RISK(), ALL());
|
182
|
+
_authorize(functions, IRiskService.createRisk.selector, "createRisk");
|
183
|
+
_authorize(functions, IRiskService.updateRisk.selector, "updateRisk");
|
184
|
+
_authorize(functions, IRiskService.updateRiskState.selector, "updateRiskState");
|
185
|
+
}
|
161
186
|
|
187
|
+
/// @dev Distribution service function authorization.
|
188
|
+
function _setupClaimServiceAuthorization()
|
189
|
+
internal
|
190
|
+
{
|
191
|
+
IAccess.FunctionInfo[] storage functions;
|
192
|
+
functions = _authorizeForService(CLAIM(), ALL());
|
193
|
+
_authorize(functions, IClaimService.submit.selector, "submit");
|
194
|
+
}
|
195
|
+
|
196
|
+
/// @dev Distribution service function authorization.
|
197
|
+
function _setupDistributionServiceAuthorization()
|
198
|
+
internal
|
199
|
+
{
|
200
|
+
IAccess.FunctionInfo[] storage functions;
|
162
201
|
functions = _authorizeForService(DISTRIBUTION(), POLICY());
|
163
202
|
_authorize(functions, IDistributionService.processSale.selector, "processSale");
|
164
203
|
_authorize(functions, IDistributionService.processReferral.selector, "processReferral");
|
@@ -178,6 +217,9 @@ contract ServiceAuthorizationV3
|
|
178
217
|
|
179
218
|
functions = _authorizeForService(POOL(), CLAIM());
|
180
219
|
_authorize(functions, IPoolService.processPayout.selector, "processPayout");
|
220
|
+
|
221
|
+
functions = _authorizeForService(POOL(), ALL());
|
222
|
+
_authorize(functions, IPoolService.withdrawBundleFees.selector, "withdrawBundleFees");
|
181
223
|
}
|
182
224
|
|
183
225
|
|
@@ -188,11 +230,18 @@ contract ServiceAuthorizationV3
|
|
188
230
|
IAccess.FunctionInfo[] storage functions;
|
189
231
|
|
190
232
|
functions = _authorizeForService(BUNDLE(), POOL());
|
191
|
-
_authorize(functions, IBundleService.
|
233
|
+
_authorize(functions, IBundleService.stake.selector, "stake");
|
234
|
+
_authorize(functions, IBundleService.unstake.selector, "unstake");
|
192
235
|
_authorize(functions, IBundleService.close.selector, "close");
|
193
236
|
_authorize(functions, IBundleService.lockCollateral.selector, "lockCollateral");
|
194
237
|
_authorize(functions, IBundleService.releaseCollateral.selector, "releaseCollateral");
|
195
|
-
|
238
|
+
|
239
|
+
functions = _authorizeForService(BUNDLE(), ALL());
|
240
|
+
_authorize(functions, IBundleService.create.selector, "create");
|
241
|
+
_authorize(functions, IBundleService.extend.selector, "extend");
|
242
|
+
_authorize(functions, IBundleService.lock.selector, "lock");
|
243
|
+
_authorize(functions, IBundleService.unlock.selector, "unlock");
|
244
|
+
_authorize(functions, IBundleService.setFee.selector, "setFee");
|
196
245
|
}
|
197
246
|
}
|
198
247
|
|
@@ -8,15 +8,13 @@ import {ERC165Checker} from "@openzeppelin/contracts/utils/introspection/ERC165C
|
|
8
8
|
import {REGISTRY} from "../type/ObjectType.sol";
|
9
9
|
import {VersionPart} from "../type/Version.sol";
|
10
10
|
|
11
|
-
import {IRegisterable} from "../shared/IRegisterable.sol";
|
12
|
-
|
13
11
|
import {IRegistry} from "./IRegistry.sol";
|
14
12
|
import {IRegistryLinked} from "../shared/IRegistryLinked.sol";
|
15
13
|
import {ReleaseRegistry} from "./ReleaseRegistry.sol";
|
16
14
|
import {RegistryAdmin} from "./RegistryAdmin.sol";
|
17
15
|
|
18
|
-
|
19
|
-
///
|
16
|
+
/// @dev The TokenRegistry contract is used to whitelist/manage ERC-20 of tokens per major release.
|
17
|
+
/// Only whitelisted tokens can be used as default tokens for products, distribution and pools components.
|
20
18
|
contract TokenRegistry is
|
21
19
|
AccessManaged,
|
22
20
|
IRegistryLinked
|
@@ -68,7 +66,7 @@ contract TokenRegistry is
|
|
68
66
|
setAuthority(authority);
|
69
67
|
|
70
68
|
_registry = registry;
|
71
|
-
_dipToken = dipToken;
|
69
|
+
_dipToken = _verifyOnchainToken(address(dipToken));
|
72
70
|
|
73
71
|
// register dip token
|
74
72
|
uint256 chainId = block.chainid;
|
@@ -212,13 +210,13 @@ contract TokenRegistry is
|
|
212
210
|
return _tokenInfo[chainId][token].chainId > 0;
|
213
211
|
}
|
214
212
|
|
215
|
-
/// @dev returns true iff both the token is active for the specfied
|
216
|
-
function isActive(uint256 chainId, address token, VersionPart
|
213
|
+
/// @dev returns true iff both the token is active for the specfied release and the global token state is active
|
214
|
+
function isActive(uint256 chainId, address token, VersionPart release) external view returns (bool) {
|
217
215
|
if(!_tokenInfo[chainId][token].active) {
|
218
216
|
return false;
|
219
217
|
}
|
220
218
|
|
221
|
-
return _active[chainId][token][
|
219
|
+
return _active[chainId][token][release];
|
222
220
|
}
|
223
221
|
|
224
222
|
function getDipTokenAddress() external view returns (address) {
|
@@ -1,22 +1,25 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {AccessManagedUpgradeable} from "@openzeppelin/contracts-upgradeable/access/manager/AccessManagedUpgradeable.sol";
|
5
4
|
import {IAccessManaged} from "@openzeppelin/contracts/access/manager/IAccessManaged.sol";
|
6
5
|
import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
|
7
|
-
import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
|
8
6
|
|
9
|
-
import {Amount, AmountLib} from "../type/Amount.sol";
|
10
7
|
import {IComponent} from "./IComponent.sol";
|
11
8
|
import {IComponents} from "../instance/module/IComponents.sol";
|
12
|
-
import {
|
13
|
-
import {
|
9
|
+
import {IComponentService} from "./IComponentService.sol";
|
10
|
+
import {IRegistry} from "../registry/IRegistry.sol";
|
11
|
+
import {IRelease} from "../registry/IRelease.sol";
|
12
|
+
|
13
|
+
import {Amount, AmountLib} from "../type/Amount.sol";
|
14
|
+
import {ContractLib} from "./ContractLib.sol";
|
15
|
+
import {NftId} from "../type/NftId.sol";
|
16
|
+
import {ObjectType, COMPONENT, STAKING} from "../type/ObjectType.sol";
|
14
17
|
import {Registerable} from "../shared/Registerable.sol";
|
15
18
|
import {TokenHandler} from "../shared/TokenHandler.sol";
|
16
|
-
import {
|
19
|
+
import {Version, VersionLib, VersionPart} from "../type/Version.sol";
|
20
|
+
|
17
21
|
|
18
22
|
abstract contract Component is
|
19
|
-
AccessManagedUpgradeable,
|
20
23
|
Registerable,
|
21
24
|
IComponent
|
22
25
|
{
|
@@ -26,9 +29,9 @@ abstract contract Component is
|
|
26
29
|
struct ComponentStorage {
|
27
30
|
string _name; // unique (per instance) component name
|
28
31
|
IERC20Metadata _token; // token for this component
|
29
|
-
address _wallet;
|
30
32
|
bool _isInterceptor;
|
31
33
|
bytes _data;
|
34
|
+
IComponentService _componentService;
|
32
35
|
}
|
33
36
|
|
34
37
|
|
@@ -39,20 +42,6 @@ abstract contract Component is
|
|
39
42
|
_;
|
40
43
|
}
|
41
44
|
|
42
|
-
modifier onlyNftOwner(NftId nftId) {
|
43
|
-
if(msg.sender != getRegistry().ownerOf(nftId)) {
|
44
|
-
revert ErrorNftOwnableNotOwner(msg.sender);
|
45
|
-
}
|
46
|
-
_;
|
47
|
-
}
|
48
|
-
|
49
|
-
modifier onlyNftObjectType(NftId nftId, ObjectType expectedObjectType) {
|
50
|
-
ObjectType objectType = getRegistry().getObjectInfo(nftId).objectType;
|
51
|
-
if(!objectType.eq(expectedObjectType)) {
|
52
|
-
revert ErrorNftNotObjectType(nftId, objectType, expectedObjectType);
|
53
|
-
}
|
54
|
-
_;
|
55
|
-
}
|
56
45
|
|
57
46
|
function _getComponentStorage() private pure returns (ComponentStorage storage $) {
|
58
47
|
assembly {
|
@@ -60,6 +49,7 @@ abstract contract Component is
|
|
60
49
|
}
|
61
50
|
}
|
62
51
|
|
52
|
+
|
63
53
|
function _initializeComponent(
|
64
54
|
address authority,
|
65
55
|
address registry,
|
@@ -76,105 +66,59 @@ abstract contract Component is
|
|
76
66
|
virtual
|
77
67
|
onlyInitializing()
|
78
68
|
{
|
79
|
-
|
80
|
-
|
69
|
+
address tokenRegistry = IRegistry(registry).getTokenRegistryAddress();
|
70
|
+
VersionPart release = IRelease(authority).getRelease();
|
81
71
|
|
82
|
-
|
83
|
-
|
72
|
+
// special case for staking: component intitialization happens before
|
73
|
+
// GIF core contract setup is complete. at that time token registry
|
74
|
+
// is not yet available. therefore we skip the check for staking.
|
75
|
+
if (componentType != STAKING()) {
|
76
|
+
|
77
|
+
// check if provided token is whitelisted and active
|
78
|
+
if (!ContractLib.isActiveToken(tokenRegistry, token, block.chainid, release)) {
|
79
|
+
revert ErrorComponentTokenInvalid(token);
|
80
|
+
}
|
84
81
|
}
|
85
82
|
|
86
83
|
if (bytes(name).length == 0) {
|
87
84
|
revert ErrorComponentNameLengthZero();
|
88
85
|
}
|
89
86
|
|
87
|
+
__Registerable_init(
|
88
|
+
authority,
|
89
|
+
registry,
|
90
|
+
parentNftId,
|
91
|
+
componentType,
|
92
|
+
isInterceptor,
|
93
|
+
initialOwner,
|
94
|
+
registryData);
|
95
|
+
|
90
96
|
// set component state
|
91
97
|
ComponentStorage storage $ = _getComponentStorage();
|
92
98
|
$._name = name;
|
93
99
|
$._token = IERC20Metadata(token);
|
94
|
-
$._wallet = address(this);
|
95
100
|
$._isInterceptor = isInterceptor;
|
96
101
|
$._data = componentData;
|
102
|
+
$._componentService = IComponentService(_getServiceAddress(COMPONENT()));
|
97
103
|
|
98
104
|
_registerInterface(type(IAccessManaged).interfaceId);
|
99
105
|
_registerInterface(type(IComponent).interfaceId);
|
100
106
|
}
|
101
107
|
|
102
108
|
|
103
|
-
function approveTokenHandler(Amount spendingLimitAmount)
|
104
|
-
external
|
105
|
-
virtual
|
106
|
-
onlyOwner
|
107
|
-
{
|
108
|
-
approveTokenHandler(address(getToken()), spendingLimitAmount);
|
109
|
-
}
|
110
|
-
|
111
|
-
function approveTokenHandler(address token, Amount spendingLimitAmount)
|
112
|
-
public
|
113
|
-
virtual
|
114
|
-
onlyOwner
|
115
|
-
{
|
116
|
-
if(getWallet() != address(this)) {
|
117
|
-
revert ErrorComponentWalletNotComponent();
|
118
|
-
}
|
119
|
-
|
120
|
-
emit LogComponentTokenHandlerApproved(address(getTokenHandler()), spendingLimitAmount);
|
121
|
-
|
122
|
-
IERC20Metadata(token).approve(
|
123
|
-
address(getTokenHandler()),
|
124
|
-
spendingLimitAmount.toInt());
|
125
|
-
}
|
126
|
-
|
127
|
-
function setWallet(address newWallet)
|
128
|
-
external
|
129
|
-
virtual
|
130
|
-
override
|
131
|
-
onlyOwner
|
132
|
-
{
|
133
|
-
// checks
|
134
|
-
address currentWallet = getWallet();
|
135
|
-
uint256 currentBalance = getToken().balanceOf(currentWallet);
|
136
|
-
|
137
|
-
// effects
|
138
|
-
_setWallet(newWallet);
|
139
|
-
|
140
|
-
// interactions
|
141
|
-
if (currentBalance > 0) {
|
142
|
-
// move tokens from old to new wallet
|
143
|
-
emit LogComponentWalletTokensTransferred(currentWallet, newWallet, currentBalance);
|
144
|
-
|
145
|
-
if (currentWallet == address(this)) {
|
146
|
-
// transfer from the component requires an allowance
|
147
|
-
getTokenHandler().distributeTokens(currentWallet, newWallet, AmountLib.toAmount(currentBalance));
|
148
|
-
} else {
|
149
|
-
getTokenHandler().collectTokens(currentWallet, newWallet, AmountLib.toAmount(currentBalance));
|
150
|
-
}
|
151
|
-
}
|
152
|
-
}
|
153
|
-
|
154
|
-
|
155
|
-
/// @dev callback function for nft mints
|
156
|
-
/// may only be called by chain nft contract.
|
157
|
-
/// override internal function _nftMint to implement custom behaviour
|
158
|
-
function nftMint(address to, uint256 tokenId)
|
159
|
-
external
|
160
|
-
onlyChainNft
|
161
|
-
{
|
162
|
-
_nftMint(to, tokenId);
|
163
|
-
}
|
164
|
-
|
165
109
|
/// @dev callback function for nft transfers
|
166
110
|
/// may only be called by chain nft contract.
|
167
111
|
/// override internal function _nftTransferFrom to implement custom behaviour
|
168
|
-
function nftTransferFrom(address from, address to, uint256 tokenId)
|
112
|
+
function nftTransferFrom(address from, address to, uint256 tokenId, address operator)
|
169
113
|
external
|
170
|
-
onlyChainNft
|
114
|
+
onlyChainNft()
|
171
115
|
{
|
172
|
-
_nftTransferFrom(from, to, tokenId);
|
116
|
+
_nftTransferFrom(from, to, tokenId, operator);
|
173
117
|
}
|
174
118
|
|
175
119
|
|
176
120
|
function getWallet() public view virtual returns (address walletAddress) {
|
177
|
-
return
|
121
|
+
return getTokenHandler().getWallet();
|
178
122
|
}
|
179
123
|
|
180
124
|
function getTokenHandler() public virtual view returns (TokenHandler tokenHandler) {
|
@@ -189,6 +133,10 @@ abstract contract Component is
|
|
189
133
|
return getComponentInfo().name;
|
190
134
|
}
|
191
135
|
|
136
|
+
function getVersion() public view virtual returns (Version version) {
|
137
|
+
return VersionLib.toVersion(1, 0, 0);
|
138
|
+
}
|
139
|
+
|
192
140
|
function getComponentInfo() public virtual view returns (IComponents.ComponentInfo memory info) {
|
193
141
|
if (isRegistered()) {
|
194
142
|
return _getComponentInfo();
|
@@ -218,16 +166,22 @@ abstract contract Component is
|
|
218
166
|
}
|
219
167
|
|
220
168
|
|
221
|
-
/// @dev
|
222
|
-
///
|
223
|
-
|
169
|
+
/// @dev Approves token hanlder to spend up to the specified amount of tokens.
|
170
|
+
/// Reverts if component wallet is not token handler itself.
|
171
|
+
/// Only component owner (nft holder) is authorizes to call this function.
|
172
|
+
function _approveTokenHandler(IERC20Metadata token, Amount amount)
|
224
173
|
internal
|
225
174
|
virtual
|
226
|
-
{
|
175
|
+
{
|
176
|
+
_getComponentStorage()._componentService.approveTokenHandler(
|
177
|
+
token,
|
178
|
+
amount);
|
179
|
+
}
|
180
|
+
|
227
181
|
|
228
182
|
/// @dev internal function for nft transfers.
|
229
183
|
/// handling logic that deals with nft transfers need to overwrite this function
|
230
|
-
function _nftTransferFrom(address from, address to, uint256 tokenId)
|
184
|
+
function _nftTransferFrom(address from, address to, uint256 tokenId, address operator)
|
231
185
|
internal
|
232
186
|
virtual
|
233
187
|
{ }
|
@@ -235,21 +189,20 @@ abstract contract Component is
|
|
235
189
|
|
236
190
|
/// @dev depending on the source of the component information this function needs to be overwritten.
|
237
191
|
/// eg for instance linked components that externally store this information with the instance store contract
|
238
|
-
function _setWallet(
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
if (newWallet == currentWallet) {
|
247
|
-
revert ErrorComponentWalletAddressIsSameAsCurrent();
|
248
|
-
}
|
249
|
-
|
250
|
-
$._wallet = newWallet;
|
251
|
-
emit LogComponentWalletAddressChanged(currentWallet, newWallet);
|
192
|
+
function _setWallet(
|
193
|
+
address newWallet
|
194
|
+
)
|
195
|
+
internal
|
196
|
+
virtual
|
197
|
+
{
|
198
|
+
_getComponentStorage()._componentService.setWallet(newWallet);
|
199
|
+
}
|
252
200
|
|
201
|
+
function _setLocked(bool locked)
|
202
|
+
internal
|
203
|
+
virtual
|
204
|
+
{
|
205
|
+
_getComponentStorage()._componentService.setLockedFromComponent(address(this), locked);
|
253
206
|
}
|
254
207
|
|
255
208
|
|
@@ -260,17 +213,15 @@ abstract contract Component is
|
|
260
213
|
|
261
214
|
return IComponents.ComponentInfo({
|
262
215
|
name: $._name,
|
263
|
-
productNftId: NftIdLib.zero(),
|
264
216
|
token: $._token,
|
265
217
|
tokenHandler: TokenHandler(address(0)),
|
266
|
-
wallet: $._wallet, // initial wallet address
|
267
218
|
data: $._data // user specific component data
|
268
219
|
});
|
269
220
|
}
|
270
221
|
|
271
|
-
|
272
|
-
|
273
|
-
|
222
|
+
/// @dev returns the service address for the specified domain
|
223
|
+
/// gets address via lookup from registry using the major version form the linked instance
|
224
|
+
function _getServiceAddress(ObjectType domain) internal view returns (address) {
|
225
|
+
return getRegistry().getServiceAddress(domain, getRelease());
|
274
226
|
}
|
275
|
-
|
276
227
|
}
|