@etherisc/gif-next 3.0.0-a35a440-562 → 3.0.0-a511887-523
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 +0 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +168 -53
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +154 -63
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +107 -20
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +114 -59
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +96 -96
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +20 -65
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +31 -55
- 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 +45 -3
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +18 -42
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +158 -67
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +41 -65
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +112 -49
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +227 -112
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +184 -93
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +124 -48
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +106 -19
- 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 +187 -76
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +41 -65
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +224 -113
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +41 -65
- 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 +193 -74
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +41 -65
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +192 -73
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +200 -81
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +41 -65
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +200 -81
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +41 -65
- package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +2 -2
- package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +118 -18
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +118 -31
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +181 -34
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +192 -146
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +43 -67
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +75 -177
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +167 -56
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +148 -59
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2 -2
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +2 -2
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +2 -2
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +2 -2
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +2 -2
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +158 -67
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +41 -65
- 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 -52
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +113 -26
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +116 -53
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +184 -69
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +159 -68
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +119 -56
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +41 -65
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +199 -84
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +171 -80
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +106 -19
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +131 -55
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +113 -26
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +119 -56
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +25 -20
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +210 -95
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +172 -81
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +165 -50
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +153 -62
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +112 -49
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +41 -65
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +211 -96
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +176 -85
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +106 -19
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +106 -19
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +113 -26
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +113 -26
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +124 -48
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +106 -19
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +204 -89
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +2 -2
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +169 -78
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +186 -71
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +160 -69
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +112 -49
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +161 -46
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +151 -60
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +155 -56
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +219 -185
- package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
- package/artifacts/contracts/registry/IRelease.sol/IRelease.json +1 -15
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +314 -96
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +192 -142
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +57 -77
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +302 -213
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +162 -55
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +192 -146
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +2 -2
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +173 -144
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +32 -56
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +46 -4
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +124 -31
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +198 -298
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +166 -91
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +24 -44
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +136 -30
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +113 -209
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +124 -48
- 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 +44 -2
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +44 -2
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +117 -17
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +44 -2
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.json +106 -19
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +4 -0
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +74 -0
- 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 +112 -49
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +46 -4
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +46 -4
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +116 -16
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +46 -4
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +105 -18
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +42 -29
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +30 -17
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +34 -34
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +4 -0
- package/artifacts/contracts/shared/Versionable.sol/Versionable.json +74 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +132 -39
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +106 -19
- package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +195 -86
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +2 -2
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +156 -71
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +46 -4
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +157 -42
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +149 -58
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +274 -200
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +2 -2
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +16 -16
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +2 -2
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
- package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +25 -22
- 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 +4 -23
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +4 -4
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +2 -21
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.json +2 -21
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +4 -36
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.json +10 -10
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +19 -6
- package/artifacts/contracts/upgradeability/IUpgradeable.sol/IUpgradeable.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/{IVersionable.sol/IVersionable.json → IUpgradeable.sol/IUpgradeable.json} +54 -4
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +109 -40
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/Upgradeable.sol/Upgradeable.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/{Versionable.sol/Versionable.json → Upgradeable.sol/Upgradeable.json} +54 -4
- package/contracts/accounting/AccountingService.sol +2 -2
- package/contracts/accounting/AccountingServiceManager.sol +3 -3
- package/contracts/accounting/IAccountingService.sol +1 -1
- package/contracts/authorization/AccessAdmin.sol +19 -16
- package/contracts/authorization/AccessManagerCloneable.sol +24 -48
- package/contracts/authorization/Authorization.sol +2 -2
- package/contracts/authorization/IAccessAdmin.sol +2 -3
- package/contracts/authorization/IServiceAuthorization.sol +1 -1
- package/contracts/authorization/ServiceAuthorization.sol +4 -4
- package/contracts/distribution/BasicDistributionAuthorization.sol +5 -4
- package/contracts/distribution/DistributionService.sol +11 -8
- package/contracts/distribution/DistributionServiceManager.sol +3 -3
- package/contracts/instance/IInstance.sol +1 -1
- package/contracts/instance/Instance.sol +3 -6
- package/contracts/instance/InstanceAdmin.sol +9 -14
- package/contracts/instance/InstanceAuthorizationV3.sol +4 -2
- package/contracts/instance/InstanceReader.sol +3 -25
- package/contracts/instance/InstanceService.sol +4 -4
- package/contracts/instance/InstanceServiceManager.sol +3 -3
- package/contracts/oracle/BasicOracleAuthorization.sol +3 -1
- package/contracts/oracle/IOracleService.sol +12 -12
- package/contracts/oracle/Oracle.sol +3 -2
- package/contracts/oracle/OracleService.sol +1 -1
- package/contracts/oracle/OracleServiceManager.sol +3 -3
- package/contracts/pool/BasicPoolAuthorization.sol +5 -4
- package/contracts/pool/BundleService.sol +5 -5
- package/contracts/pool/BundleServiceManager.sol +3 -3
- package/contracts/pool/PoolLib.sol +7 -4
- package/contracts/pool/PoolService.sol +3 -3
- package/contracts/pool/PoolServiceManager.sol +3 -3
- package/contracts/product/ApplicationService.sol +4 -5
- package/contracts/product/ApplicationServiceManager.sol +3 -3
- package/contracts/product/BasicProductAuthorization.sol +7 -7
- package/contracts/product/ClaimService.sol +1 -1
- package/contracts/product/ClaimServiceManager.sol +3 -3
- package/contracts/product/PolicyService.sol +1 -1
- package/contracts/product/PolicyServiceManager.sol +3 -3
- package/contracts/product/PricingService.sol +1 -1
- package/contracts/product/PricingServiceManager.sol +3 -3
- package/contracts/product/RiskService.sol +1 -1
- package/contracts/product/RiskServiceManager.sol +3 -3
- package/contracts/registry/IRegistry.sol +20 -14
- package/contracts/registry/IRegistryService.sol +10 -14
- package/contracts/registry/IRelease.sol +0 -3
- package/contracts/registry/Registry.sol +124 -78
- package/contracts/registry/RegistryAdmin.sol +9 -15
- package/contracts/registry/RegistryAuthorization.sol +2 -1
- package/contracts/registry/RegistryService.sol +96 -78
- package/contracts/registry/RegistryServiceManager.sol +3 -3
- package/contracts/registry/ReleaseAdmin.sol +14 -12
- package/contracts/registry/ReleaseRegistry.sol +52 -50
- package/contracts/registry/ServiceAuthorizationV3.sol +4 -3
- package/contracts/shared/Component.sol +24 -17
- package/contracts/shared/ComponentService.sol +28 -101
- package/contracts/shared/ComponentServiceManager.sol +3 -3
- package/contracts/shared/IComponent.sol +5 -3
- package/contracts/shared/IComponentService.sol +0 -14
- package/contracts/shared/IInstanceLinkedComponent.sol +4 -7
- package/contracts/shared/IRegisterable.sol +8 -3
- package/contracts/shared/IRegistryLinked.sol +3 -1
- package/contracts/shared/IService.sol +2 -2
- package/contracts/shared/IVersionable.sol +19 -0
- package/contracts/shared/InstanceLinkedComponent.sol +39 -124
- package/contracts/shared/NftOwnable.sol +1 -14
- package/contracts/shared/PolicyHolder.sol +2 -2
- package/contracts/shared/Registerable.sol +36 -18
- package/contracts/shared/RegistryLinked.sol +11 -4
- package/contracts/shared/Service.sol +6 -5
- package/contracts/shared/TokenHandler.sol +4 -1
- package/contracts/shared/Versionable.sol +47 -0
- package/contracts/staking/IStaking.sol +2 -2
- package/contracts/staking/Staking.sol +7 -17
- package/contracts/staking/StakingManager.sol +3 -3
- package/contracts/staking/StakingService.sol +10 -7
- package/contracts/staking/StakingServiceManager.sol +3 -4
- package/contracts/staking/StakingStore.sol +10 -8
- package/contracts/type/ObjectType.sol +31 -2
- package/contracts/type/Referral.sol +0 -6
- package/contracts/type/Seconds.sol +0 -4
- package/contracts/type/String.sol +0 -30
- package/contracts/type/Timestamp.sol +1 -10
- package/contracts/type/Version.sol +15 -16
- package/contracts/upgradeability/{IVersionable.sol → IUpgradeable.sol} +13 -19
- package/contracts/upgradeability/ProxyManager.sol +46 -50
- package/contracts/upgradeability/{Versionable.sol → Upgradeable.sol} +25 -14
- package/package.json +1 -2
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +0 -4
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +0 -500
- package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +0 -4
- package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.json +0 -229
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +0 -4
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +0 -1198
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +0 -4
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +0 -849
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +0 -4
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +0 -1466
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +0 -4
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +0 -844
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +0 -4
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +0 -2324
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +0 -4
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +0 -844
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +0 -4
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +0 -586
- package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +0 -4
- package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.json +0 -901
- package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +0 -4
- package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +0 -33
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +0 -4
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +0 -4
- package/contracts/examples/flight/FlightLib.sol +0 -311
- package/contracts/examples/flight/FlightMessageVerifier.sol +0 -128
- package/contracts/examples/flight/FlightOracle.sol +0 -167
- package/contracts/examples/flight/FlightOracleAuthorization.sol +0 -34
- package/contracts/examples/flight/FlightPool.sol +0 -89
- package/contracts/examples/flight/FlightPoolAuthorization.sol +0 -37
- package/contracts/examples/flight/FlightProduct.sol +0 -626
- package/contracts/examples/flight/FlightProductAuthorization.sol +0 -44
- package/contracts/examples/flight/FlightUSD.sol +0 -28
- package/contracts/examples/flight/originalV1.sol +0 -396
- package/contracts/shared/EcdsaChecker.sol +0 -5
- package/contracts/type/RequestIdSet.sol +0 -62
@@ -1,25 +1,18 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {IAuthorization} from "../authorization/IAuthorization.sol";
|
5
|
-
import {IComponents} from "../instance/module/IComponents.sol";
|
6
|
-
import {IComponentService} from "./IComponentService.sol";
|
7
|
-
import {IInstance} from "../instance/IInstance.sol";
|
8
|
-
import {IInstanceLinkedComponent} from "./IInstanceLinkedComponent.sol";
|
9
|
-
import {IInstanceService} from "../instance/IInstanceService.sol";
|
10
|
-
import {IOracleService} from "../oracle/IOracleService.sol";
|
11
4
|
|
12
5
|
import {Amount} from "../type/Amount.sol";
|
13
6
|
import {Component} from "./Component.sol";
|
7
|
+
import {IComponentService} from "./IComponentService.sol";
|
8
|
+
import {IInstanceLinkedComponent} from "./IInstanceLinkedComponent.sol";
|
9
|
+
import {IAuthorization} from "../authorization/IAuthorization.sol";
|
10
|
+
import {IComponents} from "../instance/module/IComponents.sol";
|
11
|
+
import {IInstance} from "../instance/IInstance.sol";
|
14
12
|
import {InstanceReader} from "../instance/InstanceReader.sol";
|
15
13
|
import {IRegistry} from "../registry/IRegistry.sol";
|
16
14
|
import {NftId} from "../type/NftId.sol";
|
17
|
-
import {ObjectType, COMPONENT, INSTANCE,
|
18
|
-
import {RequestId} from "../type/RequestId.sol";
|
19
|
-
import {RoleId, RoleIdLib} from "../type/RoleId.sol";
|
20
|
-
import {TokenHandler} from "../shared/TokenHandler.sol";
|
21
|
-
import {Timestamp} from "../type/Timestamp.sol";
|
22
|
-
import {VersionPart} from "../type/Version.sol";
|
15
|
+
import {ObjectType, COMPONENT, INSTANCE, PRODUCT} from "../type/ObjectType.sol";
|
23
16
|
|
24
17
|
// then add (Distribution|Pool|Product)Upradeable that also intherit from Versionable
|
25
18
|
// same pattern as for Service which is also upgradeable
|
@@ -32,80 +25,19 @@ abstract contract InstanceLinkedComponent is
|
|
32
25
|
|
33
26
|
struct InstanceLinkedComponentStorage {
|
34
27
|
IInstance _instance; // instance for this component
|
35
|
-
InstanceReader _instanceReader; // instance reader for this component
|
36
28
|
IAuthorization _initialAuthorization;
|
37
|
-
IComponentService _componentService;
|
38
|
-
IOracleService _oracleService;
|
39
29
|
}
|
40
30
|
|
41
|
-
//--- view functions ----------------------------------------------------//
|
42
|
-
|
43
31
|
/// @inheritdoc IInstanceLinkedComponent
|
44
|
-
function getInstance() public view virtual
|
32
|
+
function getInstance() public view virtual returns (IInstance instance) {
|
45
33
|
return _getInstanceLinkedComponentStorage()._instance;
|
46
34
|
}
|
47
35
|
|
48
|
-
|
49
36
|
/// @inheritdoc IInstanceLinkedComponent
|
50
37
|
function getAuthorization() external view virtual returns (IAuthorization authorization) {
|
51
38
|
return _getInstanceLinkedComponentStorage()._initialAuthorization;
|
52
39
|
}
|
53
40
|
|
54
|
-
|
55
|
-
/// @inheritdoc IInstanceLinkedComponent
|
56
|
-
function withdrawFees(Amount amount)
|
57
|
-
external
|
58
|
-
virtual
|
59
|
-
restricted()
|
60
|
-
onlyOwner()
|
61
|
-
returns (Amount withdrawnAmount)
|
62
|
-
{
|
63
|
-
return _withdrawFees(amount);
|
64
|
-
}
|
65
|
-
|
66
|
-
//--- internal functions ------------------------------------------------//
|
67
|
-
|
68
|
-
function _sendRequest(
|
69
|
-
NftId oracleNftId,
|
70
|
-
bytes memory requestData,
|
71
|
-
Timestamp expiryAt,
|
72
|
-
string memory callbackMethod
|
73
|
-
)
|
74
|
-
internal
|
75
|
-
virtual
|
76
|
-
returns (RequestId requestId)
|
77
|
-
{
|
78
|
-
return _getInstanceLinkedComponentStorage()._oracleService.request(
|
79
|
-
oracleNftId,
|
80
|
-
requestData,
|
81
|
-
expiryAt,
|
82
|
-
callbackMethod);
|
83
|
-
}
|
84
|
-
|
85
|
-
|
86
|
-
function _cancelRequest(RequestId requestId)
|
87
|
-
internal
|
88
|
-
virtual
|
89
|
-
{
|
90
|
-
_getInstanceLinkedComponentStorage()._oracleService.cancel(requestId);
|
91
|
-
}
|
92
|
-
|
93
|
-
|
94
|
-
function _resendRequest(RequestId requestId)
|
95
|
-
internal
|
96
|
-
virtual
|
97
|
-
{
|
98
|
-
_getInstanceLinkedComponentStorage()._oracleService.resend(requestId);
|
99
|
-
}
|
100
|
-
|
101
|
-
|
102
|
-
function _getInstanceLinkedComponentStorage() private pure returns (InstanceLinkedComponentStorage storage $) {
|
103
|
-
assembly {
|
104
|
-
$.slot := INSTANCE_LINKED_COMPONENT_LOCATION_V1
|
105
|
-
}
|
106
|
-
}
|
107
|
-
|
108
|
-
|
109
41
|
function __InstanceLinkedComponent_init(
|
110
42
|
address registry,
|
111
43
|
NftId parentNftId,
|
@@ -115,80 +47,64 @@ abstract contract InstanceLinkedComponent is
|
|
115
47
|
bool isInterceptor,
|
116
48
|
address initialOwner
|
117
49
|
)
|
118
|
-
internal
|
50
|
+
internal
|
119
51
|
virtual
|
120
52
|
onlyInitializing()
|
121
53
|
{
|
122
|
-
//
|
123
|
-
|
124
|
-
|
125
|
-
parentNftId,
|
126
|
-
componentType);
|
127
|
-
|
128
|
-
// set and check linked instance
|
129
|
-
InstanceLinkedComponentStorage storage $ = _getInstanceLinkedComponentStorage();
|
130
|
-
$._instance = IInstance(
|
131
|
-
IRegistry(registry).getObjectAddress(instanceNftId));
|
54
|
+
// TODO calling registry and checking release before component is initialized
|
55
|
+
// at least breaks order of checks -> e.g. if registry is not contract no meaningfull error will be given
|
56
|
+
IInstance instance = _checkAndGetInstance(registry, parentNftId, componentType);
|
132
57
|
|
133
58
|
// set component specific parameters
|
134
59
|
__Component_init(
|
135
|
-
|
60
|
+
instance.authority(),
|
136
61
|
registry,
|
137
62
|
parentNftId,
|
138
63
|
name,
|
139
|
-
componentType,
|
64
|
+
componentType,
|
140
65
|
isInterceptor,
|
141
66
|
initialOwner,
|
142
67
|
""); // registry data
|
143
68
|
|
144
69
|
// set instance linked specific parameters
|
145
|
-
|
70
|
+
InstanceLinkedComponentStorage storage $ = _getInstanceLinkedComponentStorage();
|
71
|
+
$._instance = instance;
|
146
72
|
$._initialAuthorization = authorization;
|
147
|
-
$._componentService = IComponentService(_getServiceAddress(COMPONENT()));
|
148
|
-
$._oracleService = IOracleService(_getServiceAddress(ORACLE()));
|
149
73
|
|
150
74
|
// register interfaces
|
151
75
|
_registerInterface(type(IInstanceLinkedComponent).interfaceId);
|
152
76
|
}
|
153
77
|
|
154
|
-
|
155
|
-
function _checkAndGetInstanceNftId(
|
78
|
+
function _checkAndGetInstance(
|
156
79
|
address registryAddress,
|
157
80
|
NftId parentNftId,
|
158
81
|
ObjectType componentType
|
159
82
|
)
|
160
|
-
|
83
|
+
private
|
161
84
|
view
|
162
|
-
returns (
|
85
|
+
returns (IInstance instance)
|
163
86
|
{
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
87
|
+
NftId instanceNftId;
|
88
|
+
IRegistry registry = IRegistry(registryAddress);
|
89
|
+
|
90
|
+
if(componentType == PRODUCT()) {
|
91
|
+
instanceNftId = parentNftId;
|
92
|
+
} else {
|
93
|
+
NftId productNftId = parentNftId;
|
94
|
+
instanceNftId = registry.getParentNftId(productNftId);
|
168
95
|
}
|
169
96
|
|
170
|
-
|
171
|
-
IRegistry registry = _checkAndGetRegistry(registryAddress, parentNftId, PRODUCT());
|
172
|
-
return registry.getParentNftId(parentNftId);
|
173
|
-
}
|
97
|
+
IRegistry.ObjectInfo memory info = registry.getObjectInfo(instanceNftId);
|
174
98
|
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
address registryAddress,
|
179
|
-
NftId objectNftId,
|
180
|
-
ObjectType requiredType
|
181
|
-
)
|
182
|
-
internal
|
183
|
-
view
|
184
|
-
returns (IRegistry registry)
|
185
|
-
{
|
186
|
-
registry = IRegistry(registryAddress);
|
187
|
-
IRegistry.ObjectInfo memory info = registry.getObjectInfo(objectNftId);
|
99
|
+
if (info.objectType != INSTANCE()) {
|
100
|
+
revert ErrorInstanceLinkedComponentInstanceInvalid();
|
101
|
+
}
|
188
102
|
|
189
|
-
if
|
190
|
-
revert
|
103
|
+
if(info.release != getRelease()) {
|
104
|
+
revert ErrorInstanceLinkedComponentInstanceMismatch(info.release, getRelease());
|
191
105
|
}
|
106
|
+
|
107
|
+
instance = IInstance(info.objectAddress);
|
192
108
|
}
|
193
109
|
|
194
110
|
|
@@ -220,13 +136,12 @@ abstract contract InstanceLinkedComponent is
|
|
220
136
|
|
221
137
|
/// @dev returns reader for linked instance
|
222
138
|
function _getInstanceReader() internal view returns (InstanceReader reader) {
|
223
|
-
return _getInstanceLinkedComponentStorage().
|
139
|
+
return _getInstanceLinkedComponentStorage()._instance.getInstanceReader();
|
224
140
|
}
|
225
141
|
|
226
|
-
function
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
return _getInstanceLinkedComponentStorage()._componentService.withdrawFees(amount);
|
142
|
+
function _getInstanceLinkedComponentStorage() private pure returns (InstanceLinkedComponentStorage storage $) {
|
143
|
+
assembly {
|
144
|
+
$.slot := INSTANCE_LINKED_COMPONENT_LOCATION_V1
|
145
|
+
}
|
231
146
|
}
|
232
147
|
}
|
@@ -4,7 +4,6 @@ pragma solidity ^0.8.20;
|
|
4
4
|
import {InitializableERC165} from "./InitializableERC165.sol";
|
5
5
|
import {INftOwnable} from "./INftOwnable.sol";
|
6
6
|
import {NftId} from "../type/NftId.sol";
|
7
|
-
import {ObjectType} from "../type/ObjectType.sol";
|
8
7
|
import {RegistryLinked} from "./RegistryLinked.sol";
|
9
8
|
|
10
9
|
contract NftOwnable is
|
@@ -35,20 +34,8 @@ contract NftOwnable is
|
|
35
34
|
_;
|
36
35
|
}
|
37
36
|
|
38
|
-
modifier onlyNftOfType(NftId nftId, ObjectType expectedObjectType) {
|
39
|
-
_checkNftType(nftId, expectedObjectType);
|
40
|
-
_;
|
41
|
-
}
|
42
|
-
|
43
|
-
function _checkNftType(NftId nftId, ObjectType expectedObjectType) internal view {
|
44
|
-
if(expectedObjectType.eqz() || !getRegistry().isObjectType(nftId, expectedObjectType)) {
|
45
|
-
revert ErrorNftOwnableInvalidType(nftId, expectedObjectType);
|
46
|
-
}
|
47
|
-
}
|
48
|
-
|
49
|
-
|
50
37
|
/// @dev Initialization for upgradable contracts.
|
51
|
-
// used in __Registerable_init, ProxyManager.
|
38
|
+
// used in __Registerable_init, ProxyManager.initialize
|
52
39
|
function __NftOwnable_init(
|
53
40
|
address registry,
|
54
41
|
address initialOwner
|
@@ -23,7 +23,7 @@ contract PolicyHolder is
|
|
23
23
|
// callbacks must only be allowed from the policy and claim services
|
24
24
|
// will need a release parameter to fetch the right service addresses for the modifiers
|
25
25
|
|
26
|
-
function
|
26
|
+
function __PolicyHolder_init(
|
27
27
|
address registryAddress
|
28
28
|
)
|
29
29
|
internal
|
@@ -47,7 +47,7 @@ contract PolicyHolder is
|
|
47
47
|
/// @dev empty default implementation
|
48
48
|
function payoutExecuted(NftId policyNftId, PayoutId payoutId, Amount amount, address beneficiary) external virtual {}
|
49
49
|
|
50
|
-
//---
|
50
|
+
//--- IERC721 functions ---------------//
|
51
51
|
function onERC721Received(
|
52
52
|
address, // operator
|
53
53
|
address, // from
|
@@ -9,15 +9,16 @@ import {ContractLib} from "../shared/ContractLib.sol";
|
|
9
9
|
import {NftId, NftIdLib} from "../type/NftId.sol";
|
10
10
|
import {NftOwnable} from "../shared/NftOwnable.sol";
|
11
11
|
import {ObjectType} from "../type/ObjectType.sol";
|
12
|
+
import {Versionable} from "../shared/Versionable.sol";
|
12
13
|
import {VersionPart, VersionPartLib} from "../type/Version.sol";
|
13
14
|
|
14
15
|
import {IRegistry} from "../registry/IRegistry.sol";
|
15
16
|
import {IRegisterable} from "./IRegisterable.sol";
|
16
|
-
import {IRelease} from "../registry/IRelease.sol";
|
17
17
|
|
18
18
|
abstract contract Registerable is
|
19
19
|
AccessManagedUpgradeable,
|
20
20
|
NftOwnable,
|
21
|
+
Versionable,
|
21
22
|
IRegisterable
|
22
23
|
{
|
23
24
|
// keccak256(abi.encode(uint256(keccak256("gif-next.contracts.shared.Registerable.sol")) - 1)) & ~bytes32(uint256(0xff));
|
@@ -37,6 +38,19 @@ abstract contract Registerable is
|
|
37
38
|
_;
|
38
39
|
}
|
39
40
|
|
41
|
+
// TODO move to registerables verification library
|
42
|
+
modifier onlyNftOfType(NftId nftId, ObjectType expectedObjectType) {
|
43
|
+
_checkNftType(nftId, expectedObjectType);
|
44
|
+
_;
|
45
|
+
}
|
46
|
+
|
47
|
+
// TODO move to registerables verification library
|
48
|
+
function _checkNftType(NftId nftId, ObjectType expectedObjectType) internal view {
|
49
|
+
if(expectedObjectType.eqz() || !getRegistry().isObjectType(nftId, expectedObjectType, getRelease())) {
|
50
|
+
revert ErrorNftOwnableInvalidType(nftId, expectedObjectType);
|
51
|
+
}
|
52
|
+
}
|
53
|
+
|
40
54
|
function __Registerable_init(
|
41
55
|
address authority,
|
42
56
|
address registry,
|
@@ -44,7 +58,7 @@ abstract contract Registerable is
|
|
44
58
|
ObjectType objectType,
|
45
59
|
bool isInterceptor,
|
46
60
|
address initialOwner,
|
47
|
-
bytes memory data
|
61
|
+
bytes memory data
|
48
62
|
)
|
49
63
|
internal
|
50
64
|
virtual
|
@@ -54,14 +68,20 @@ abstract contract Registerable is
|
|
54
68
|
revert ErrorAuthorityInvalid(authority);
|
55
69
|
}
|
56
70
|
|
71
|
+
// release must allign with authority -> not a release check of third contract...
|
72
|
+
VersionPart release = AccessManagerCloneable(authority).getRelease();
|
73
|
+
|
57
74
|
__AccessManaged_init(authority);
|
58
75
|
__NftOwnable_init(registry, initialOwner);
|
76
|
+
__Versionable_init(release);
|
59
77
|
|
60
78
|
RegisterableStorage storage $ = _getRegisterableStorage();
|
61
79
|
$._parentNftId = parentNftId;
|
62
80
|
$._objectType = objectType;
|
63
81
|
$._isInterceptor = isInterceptor;
|
64
|
-
|
82
|
+
if(data.length > 0) {
|
83
|
+
$._data = data;
|
84
|
+
}
|
65
85
|
|
66
86
|
_registerInterface(type(IAccessManaged).interfaceId);
|
67
87
|
}
|
@@ -72,13 +92,6 @@ abstract contract Registerable is
|
|
72
92
|
return !AccessManagerCloneable(authority()).isTargetClosed(address(this));
|
73
93
|
}
|
74
94
|
|
75
|
-
|
76
|
-
/// @inheritdoc IRelease
|
77
|
-
function getRelease() public virtual view returns (VersionPart release) {
|
78
|
-
return AccessManagerCloneable(authority()).getRelease();
|
79
|
-
}
|
80
|
-
|
81
|
-
|
82
95
|
/// @inheritdoc IRegisterable
|
83
96
|
function getInitialInfo()
|
84
97
|
public
|
@@ -87,14 +100,19 @@ abstract contract Registerable is
|
|
87
100
|
returns (IRegistry.ObjectInfo memory info)
|
88
101
|
{
|
89
102
|
RegisterableStorage storage $ = _getRegisterableStorage();
|
90
|
-
return
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
103
|
+
return (
|
104
|
+
IRegistry.ObjectInfo(
|
105
|
+
NftIdLib.zero(),
|
106
|
+
$._parentNftId,
|
107
|
+
$._objectType,
|
108
|
+
getRelease(),
|
109
|
+
$._isInterceptor,
|
110
|
+
address(this))
|
111
|
+
);
|
112
|
+
}
|
113
|
+
|
114
|
+
function getInitialData() public view virtual returns (bytes memory data) {
|
115
|
+
return _getRegisterableStorage()._data;
|
98
116
|
}
|
99
117
|
|
100
118
|
|
@@ -12,20 +12,27 @@ contract RegistryLinked is
|
|
12
12
|
IRegistryLinked
|
13
13
|
{
|
14
14
|
|
15
|
-
// priorize simplicity and size over using standard upgradeability structs
|
15
|
+
// priorize simplicity and size over using standard upgradeability structs
|
16
|
+
// registry address MUST NOT be upgraded
|
16
17
|
IRegistry private _registry;
|
17
18
|
|
18
19
|
/// @dev initialization for upgradable contracts
|
19
|
-
// used in
|
20
|
+
// used in RegistryAdmin / InstanceAdmin / ReleaseAdmin.completeSetup()
|
20
21
|
function __RegistryLinked_init(
|
21
22
|
address registry
|
22
23
|
)
|
23
24
|
internal
|
24
25
|
virtual
|
25
|
-
onlyInitializing()
|
26
26
|
{
|
27
|
+
if(address(_registry) != address(0) ) {
|
28
|
+
if(_registry != IRegistry(registry)) {
|
29
|
+
revert ErrorRegistryLinkedRegistryAlreadyInitialized(address(this), address(_registry));
|
30
|
+
}
|
31
|
+
return;
|
32
|
+
}
|
33
|
+
|
27
34
|
if (!ContractLib.isRegistry(registry)) {
|
28
|
-
revert
|
35
|
+
revert ErrorRegistryLinkedNotRegistry(address(this), registry);
|
29
36
|
}
|
30
37
|
|
31
38
|
_registry = IRegistry(registry);
|
@@ -5,18 +5,19 @@ import {ReentrancyGuardUpgradeable} from "@openzeppelin/contracts-upgradeable/ut
|
|
5
5
|
|
6
6
|
import {IRegistry} from "../registry/IRegistry.sol";
|
7
7
|
import {IService} from "./IService.sol";
|
8
|
-
import {IVersionable} from "../
|
8
|
+
import {IVersionable} from "../shared/IVersionable.sol";
|
9
9
|
import {ObjectType, SERVICE} from "../type/ObjectType.sol";
|
10
10
|
import {Registerable} from "./Registerable.sol";
|
11
11
|
import {RoleId, RoleIdLib} from "../type/RoleId.sol";
|
12
|
-
import {Version, VersionLib} from "../type/Version.sol";
|
13
|
-
import {Versionable} from "../
|
12
|
+
import {Version, VersionLib, VersionPartLib} from "../type/Version.sol";
|
13
|
+
import {Versionable} from "../shared/Versionable.sol";
|
14
|
+
import {Upgradeable} from "../upgradeability/Upgradeable.sol";
|
14
15
|
|
15
16
|
|
16
17
|
/// @dev service base contract
|
17
18
|
abstract contract Service is
|
18
|
-
Registerable,
|
19
|
-
|
19
|
+
Registerable,
|
20
|
+
Upgradeable,
|
20
21
|
ReentrancyGuardUpgradeable,
|
21
22
|
IService
|
22
23
|
{
|
@@ -10,6 +10,7 @@ import {ContractLib} from "../shared/ContractLib.sol";
|
|
10
10
|
import {IRegistry} from "../registry/IRegistry.sol";
|
11
11
|
import {NftId} from "../type/NftId.sol";
|
12
12
|
import {SERVICE} from "../type/ObjectType.sol";
|
13
|
+
import {VersionPart} from "../type/Version.sol";
|
13
14
|
|
14
15
|
|
15
16
|
/// @dev Token specific transfer helper base contract.
|
@@ -49,6 +50,7 @@ contract TokenHandlerBase {
|
|
49
50
|
IERC20Metadata public immutable TOKEN;
|
50
51
|
address public immutable COMPONENT;
|
51
52
|
NftId public immutable NFT_ID;
|
53
|
+
VersionPart public immutable RELEASE;
|
52
54
|
|
53
55
|
address internal _wallet;
|
54
56
|
|
@@ -69,6 +71,7 @@ contract TokenHandlerBase {
|
|
69
71
|
REGISTRY = IRegistry(registry);
|
70
72
|
COMPONENT = component;
|
71
73
|
NFT_ID = REGISTRY.getNftIdForAddress(component);
|
74
|
+
RELEASE = REGISTRY.getObjectRelease(NFT_ID);
|
72
75
|
|
73
76
|
if (NFT_ID.eqz()) {
|
74
77
|
revert ErrorTokenHandlerComponentNotRegistered(component);
|
@@ -254,7 +257,7 @@ contract TokenHandler is
|
|
254
257
|
error ErrorTokenHandlerNotService(address service);
|
255
258
|
|
256
259
|
modifier onlyService() {
|
257
|
-
if (!REGISTRY.isObjectType(msg.sender, SERVICE())) {
|
260
|
+
if (!REGISTRY.isObjectType(msg.sender, SERVICE(), RELEASE)) {
|
258
261
|
revert ErrorTokenHandlerNotService(msg.sender);
|
259
262
|
}
|
260
263
|
_;
|
@@ -0,0 +1,47 @@
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
2
|
+
pragma solidity ^0.8.20;
|
3
|
+
|
4
|
+
import {IVersionable} from "./IVersionable.sol";
|
5
|
+
import {GIF_INITIAL_RELEASE} from "../registry/Registry.sol";
|
6
|
+
import {Version, VersionPart, VersionLib, VersionPartLib} from "../type/Version.sol";
|
7
|
+
|
8
|
+
|
9
|
+
abstract contract Versionable is
|
10
|
+
IVersionable
|
11
|
+
{
|
12
|
+
// TODO use arg of type Version
|
13
|
+
function __Versionable_init(
|
14
|
+
VersionPart release // wants to initialize to this release version
|
15
|
+
)
|
16
|
+
internal
|
17
|
+
view
|
18
|
+
virtual
|
19
|
+
{
|
20
|
+
VersionPart currentRelease = getRelease();
|
21
|
+
if (!currentRelease.isValidRelease()) {
|
22
|
+
revert ErrorVersionableReleaseInvalid(address(this), currentRelease);
|
23
|
+
}
|
24
|
+
|
25
|
+
//Version initializedVersion = VersionLib.toVersion(_getInitializedVersion());
|
26
|
+
//if(initializedVersion != getVersion()) {}
|
27
|
+
|
28
|
+
_checkRelease(release);
|
29
|
+
}
|
30
|
+
|
31
|
+
function getVersion() public pure virtual returns(Version)
|
32
|
+
{
|
33
|
+
return VersionLib.toVersion(GIF_INITIAL_RELEASE().toInt(), 0, 0);
|
34
|
+
}
|
35
|
+
|
36
|
+
function getRelease() public pure returns(VersionPart)
|
37
|
+
{
|
38
|
+
return getVersion().toMajorPart();
|
39
|
+
}
|
40
|
+
|
41
|
+
function _checkRelease(VersionPart release) internal view {
|
42
|
+
VersionPart currentRelease = getRelease();
|
43
|
+
if(currentRelease != release) {
|
44
|
+
revert ErrorVersionableReleaseMismatch(address(this), release, currentRelease);
|
45
|
+
}
|
46
|
+
}
|
47
|
+
}
|
@@ -4,7 +4,7 @@ pragma solidity ^0.8.20;
|
|
4
4
|
import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
|
5
5
|
|
6
6
|
import {IComponent} from "../shared/IComponent.sol";
|
7
|
-
import {
|
7
|
+
import {IUpgradeable} from "../upgradeability/IUpgradeable.sol";
|
8
8
|
|
9
9
|
import {Amount} from "../type/Amount.sol";
|
10
10
|
import {Blocknumber} from "../type/Blocknumber.sol";
|
@@ -22,7 +22,7 @@ import {VersionPart} from "../type/Version.sol";
|
|
22
22
|
|
23
23
|
interface IStaking is
|
24
24
|
IComponent,
|
25
|
-
|
25
|
+
IUpgradeable
|
26
26
|
{
|
27
27
|
|
28
28
|
// owner functions
|
@@ -4,11 +4,10 @@ pragma solidity ^0.8.20;
|
|
4
4
|
import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
|
5
5
|
|
6
6
|
import {IRegistry} from "../registry/IRegistry.sol";
|
7
|
-
import {IRelease} from "../registry/IRelease.sol";
|
8
7
|
import {IStaking} from "./IStaking.sol";
|
9
8
|
import {IStakingService} from "./IStakingService.sol";
|
10
9
|
import {ITargetLimitHandler} from "./ITargetLimitHandler.sol";
|
11
|
-
import {IVersionable} from "../
|
10
|
+
import {IVersionable} from "../shared/IVersionable.sol";
|
12
11
|
|
13
12
|
import {Amount, AmountLib} from "../type/Amount.sol";
|
14
13
|
import {Blocknumber} from "../type/Blocknumber.sol";
|
@@ -16,7 +15,7 @@ import {ChainId, ChainIdLib} from "../type/ChainId.sol";
|
|
16
15
|
import {Component} from "../shared/Component.sol";
|
17
16
|
import {IComponent} from "../shared/IComponent.sol";
|
18
17
|
import {NftId} from "../type/NftId.sol";
|
19
|
-
import {ObjectType, PROTOCOL,
|
18
|
+
import {ObjectType, PROTOCOL, STAKE, STAKING, TARGET} from "../type/ObjectType.sol";
|
20
19
|
import {Seconds, SecondsLib} from "../type/Seconds.sol";
|
21
20
|
import {Registerable} from "../shared/Registerable.sol";
|
22
21
|
import {StakingLib} from "./StakingLib.sol";
|
@@ -28,12 +27,13 @@ import {TokenHandlerDeployerLib} from "../shared/TokenHandlerDeployerLib.sol";
|
|
28
27
|
import {TokenRegistry} from "../registry/TokenRegistry.sol";
|
29
28
|
import {UFixed, UFixedLib} from "../type/UFixed.sol";
|
30
29
|
import {Version, VersionLib, VersionPart, VersionPartLib} from "../type/Version.sol";
|
31
|
-
import {Versionable} from "../
|
30
|
+
import {Versionable} from "../shared/Versionable.sol";
|
31
|
+
import {Upgradeable} from "../upgradeability/Upgradeable.sol";
|
32
32
|
|
33
33
|
|
34
34
|
contract Staking is
|
35
35
|
Component,
|
36
|
-
|
36
|
+
Upgradeable,
|
37
37
|
IStaking
|
38
38
|
{
|
39
39
|
string public constant CONTRACT_NAME = "Staking";
|
@@ -649,21 +649,11 @@ contract Staking is
|
|
649
649
|
return _getStakingStorage()._tokenHandler;
|
650
650
|
}
|
651
651
|
|
652
|
-
// from IRegisterable
|
653
|
-
function getRelease()
|
654
|
-
public
|
655
|
-
pure
|
656
|
-
virtual override (IRelease, Registerable)
|
657
|
-
returns(VersionPart)
|
658
|
-
{
|
659
|
-
return VersionPartLib.toVersionPart(3);
|
660
|
-
}
|
661
|
-
|
662
652
|
// from IVersionable
|
663
653
|
function getVersion()
|
664
654
|
public
|
665
655
|
pure
|
666
|
-
virtual override (
|
656
|
+
virtual override (IVersionable, Versionable)
|
667
657
|
returns(Version)
|
668
658
|
{
|
669
659
|
return VersionLib.toVersion(3,0,0);
|
@@ -747,7 +737,7 @@ contract Staking is
|
|
747
737
|
// initialize component
|
748
738
|
__Component_init(
|
749
739
|
registry.getAuthority(),
|
750
|
-
|
740
|
+
registryAddress,
|
751
741
|
registry.getNftId(), // parent nft id
|
752
742
|
CONTRACT_NAME,
|
753
743
|
STAKING(),
|
@@ -1,7 +1,7 @@
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
|
-
import {
|
4
|
+
import {IUpgradeable} from "../upgradeability/IUpgradeable.sol";
|
5
5
|
import {ProxyManager} from "../upgradeability/ProxyManager.sol";
|
6
6
|
import {Staking} from "./Staking.sol";
|
7
7
|
|
@@ -32,13 +32,13 @@ contract StakingManager is
|
|
32
32
|
stakingStore,
|
33
33
|
tokenRegistry);
|
34
34
|
|
35
|
-
|
35
|
+
IUpgradeable upgradeable = initialize(
|
36
36
|
registry,
|
37
37
|
_initialImplementation,
|
38
38
|
_initializationData,
|
39
39
|
salt);
|
40
40
|
|
41
|
-
_staking = Staking(address(
|
41
|
+
_staking = Staking(address(upgradeable));
|
42
42
|
}
|
43
43
|
|
44
44
|
//--- view functions ----------------------------------------------------//
|