@etherisc/gif-next 3.0.0-1a7e54a-113 → 3.0.0-1b49bd6-565
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/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +139 -72
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +110 -116
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +72 -33
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +89 -66
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +122 -101
- 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 +20 -10
- 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 +126 -75
- 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 +72 -57
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +198 -139
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +140 -150
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +84 -56
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +71 -32
- 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 +166 -104
- 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 +200 -138
- 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/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +160 -56
- package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +173 -116
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +41 -65
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +170 -108
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +41 -65
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +580 -134
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +41 -65
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +212 -2
- package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.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 +159 -102
- 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 +163 -106
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +177 -120
- 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 +171 -114
- 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 +49 -54
- 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 +77 -25
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +83 -44
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +144 -50
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +169 -147
- 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 +36 -36
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +138 -75
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +104 -112
- 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 +53 -58
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.json +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 +3 -8
- 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 +132 -81
- 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 +94 -66
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +80 -83
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +82 -67
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +149 -148
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +111 -129
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +88 -73
- 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 +176 -117
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +129 -139
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +71 -32
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +100 -72
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +94 -86
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +88 -73
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +24 -247
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +233 -165
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +140 -130
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +138 -63
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +110 -112
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +72 -57
- 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 +182 -115
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +132 -138
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +71 -32
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +71 -32
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +82 -64
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +82 -43
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +84 -56
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +75 -36
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +173 -127
- 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 +122 -128
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +161 -94
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +116 -122
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +72 -57
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +146 -63
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +109 -107
- 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 +202 -216
- 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 +163 -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 +285 -244
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +115 -110
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +159 -150
- 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 +127 -185
- 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 +13 -29
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +84 -39
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +164 -320
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +115 -141
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +421 -169
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.json +691 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +96 -38
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +82 -226
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +84 -56
- 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 +1 -28
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +1 -12
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +77 -25
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +1 -12
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.json +71 -32
- 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 +72 -57
- 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 +15 -34
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +3 -14
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +76 -24
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +3 -37
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +70 -31
- 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 +101 -56
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +75 -36
- 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 +170 -109
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +26 -31
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +112 -124
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +5 -22
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +132 -65
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +105 -111
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +212 -204
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +27 -19
- 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 +6 -6
- 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/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.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/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/Timestamp.sol/TimestampLib.dbg.json +1 -1
- 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 +63 -86
- 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 +5 -6
- package/contracts/accounting/AccountingServiceManager.sol +4 -6
- package/contracts/accounting/IAccountingService.sol +1 -1
- package/contracts/authorization/AccessAdmin.sol +22 -19
- package/contracts/authorization/AccessAdminLib.sol +14 -11
- package/contracts/authorization/AccessManagerCloneable.sol +24 -48
- package/contracts/authorization/Authorization.sol +2 -2
- package/contracts/authorization/IAccessAdmin.sol +3 -3
- package/contracts/authorization/IServiceAuthorization.sol +1 -1
- package/contracts/authorization/ServiceAuthorization.sol +4 -4
- package/contracts/distribution/BasicDistribution.sol +0 -2
- package/contracts/distribution/BasicDistributionAuthorization.sol +5 -4
- package/contracts/distribution/Distribution.sol +0 -2
- package/contracts/distribution/DistributionService.sol +24 -20
- package/contracts/distribution/DistributionServiceManager.sol +4 -6
- package/contracts/examples/fire/FirePool.sol +0 -4
- package/contracts/examples/fire/FireProduct.sol +0 -4
- package/contracts/examples/flight/FlightLib.sol +48 -37
- package/contracts/examples/flight/FlightOracle.sol +0 -4
- package/contracts/examples/flight/FlightPool.sol +0 -4
- package/contracts/examples/flight/FlightProduct.sol +120 -15
- package/contracts/examples/flight/FlightProductAuthorization.sol +2 -1
- package/contracts/examples/flight/FlightUSD.sol +3 -1
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +0 -4
- package/contracts/examples/unpermissioned/SimpleOracle.sol +0 -4
- package/contracts/examples/unpermissioned/SimplePool.sol +0 -4
- package/contracts/examples/unpermissioned/SimpleProduct.sol +0 -4
- package/contracts/instance/Instance.sol +7 -11
- package/contracts/instance/InstanceAdmin.sol +10 -17
- package/contracts/instance/InstanceAuthorizationV3.sol +4 -2
- package/contracts/instance/InstanceReader.sol +15 -15
- package/contracts/instance/InstanceService.sol +18 -20
- package/contracts/instance/InstanceServiceManager.sol +4 -6
- package/contracts/instance/base/Cloneable.sol +4 -10
- package/contracts/instance/base/ObjectSet.sol +2 -2
- package/contracts/oracle/BasicOracle.sol +0 -2
- package/contracts/oracle/BasicOracleAuthorization.sol +3 -1
- package/contracts/oracle/IOracleService.sol +0 -4
- package/contracts/oracle/Oracle.sol +3 -4
- package/contracts/oracle/OracleService.sol +37 -67
- package/contracts/oracle/OracleServiceManager.sol +4 -6
- package/contracts/pool/BasicPool.sol +2 -4
- package/contracts/pool/BasicPoolAuthorization.sol +5 -4
- package/contracts/pool/BundleService.sol +25 -19
- package/contracts/pool/BundleServiceManager.sol +5 -7
- package/contracts/pool/IPoolService.sol +5 -6
- package/contracts/pool/Pool.sol +1 -3
- package/contracts/pool/PoolLib.sol +5 -102
- package/contracts/pool/PoolService.sol +67 -101
- package/contracts/pool/PoolServiceManager.sol +4 -6
- package/contracts/product/ApplicationService.sol +13 -34
- package/contracts/product/ApplicationServiceManager.sol +4 -6
- package/contracts/product/BasicProduct.sol +0 -2
- package/contracts/product/BasicProductAuthorization.sol +5 -4
- package/contracts/product/ClaimService.sol +10 -34
- package/contracts/product/ClaimServiceManager.sol +5 -7
- package/contracts/product/IPolicyService.sol +0 -1
- package/contracts/product/PolicyService.sol +44 -57
- package/contracts/product/PolicyServiceManager.sol +4 -6
- package/contracts/product/PricingService.sol +7 -8
- package/contracts/product/PricingServiceManager.sol +4 -6
- package/contracts/product/Product.sol +0 -2
- package/contracts/product/RiskService.sol +8 -40
- package/contracts/product/RiskServiceManager.sol +4 -6
- 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 +11 -22
- package/contracts/registry/RegistryAuthorization.sol +4 -3
- package/contracts/registry/RegistryService.sol +99 -82
- package/contracts/registry/RegistryServiceManager.sol +4 -11
- package/contracts/registry/ReleaseAdmin.sol +9 -16
- package/contracts/registry/ReleaseRegistry.sol +64 -74
- package/contracts/registry/ServiceAuthorizationV3.sol +4 -3
- package/contracts/registry/TokenRegistry.sol +6 -15
- package/contracts/shared/Component.sol +27 -22
- package/contracts/shared/ComponentService.sol +45 -130
- package/contracts/shared/ComponentServiceManager.sol +5 -7
- package/contracts/shared/ContractLib.sol +359 -93
- package/contracts/shared/IAuthorizedComponent.sol +15 -0
- package/contracts/shared/IComponent.sol +5 -3
- package/contracts/shared/IComponentService.sol +0 -14
- package/contracts/shared/IInstanceLinkedComponent.sol +5 -12
- package/contracts/shared/INftOwnable.sol +0 -2
- package/contracts/shared/IRegisterable.sol +14 -3
- package/contracts/shared/IRegistryLinked.sol +1 -3
- package/contracts/shared/IService.sol +2 -2
- package/contracts/shared/IVersionable.sol +19 -0
- package/contracts/shared/InstanceLinkedComponent.sol +31 -65
- package/contracts/shared/NftOwnable.sol +9 -22
- package/contracts/shared/PolicyHolder.sol +2 -4
- package/contracts/shared/Registerable.sol +37 -20
- package/contracts/shared/RegistryLinked.sol +4 -23
- package/contracts/shared/Service.sol +8 -9
- 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 +28 -33
- package/contracts/staking/StakingLib.sol +3 -1
- package/contracts/staking/StakingManager.sol +3 -6
- package/contracts/staking/StakingReader.sol +9 -17
- package/contracts/staking/StakingService.sol +16 -13
- package/contracts/staking/StakingServiceManager.sol +4 -8
- package/contracts/staking/StakingStore.sol +8 -8
- package/contracts/staking/TargetHandler.sol +4 -5
- package/contracts/type/Version.sol +15 -16
- package/contracts/upgradeability/{IVersionable.sol → IUpgradeable.sol} +13 -19
- package/contracts/upgradeability/ProxyManager.sol +46 -54
- package/contracts/upgradeability/{Versionable.sol → Upgradeable.sol} +25 -14
- package/package.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +0 -4
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +0 -24
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +0 -4
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +0 -40
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +0 -4
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +0 -4
@@ -11,9 +11,10 @@ import {AccessAdminLib} from "../authorization/AccessAdminLib.sol";
|
|
11
11
|
import {AccessManagerCloneable} from "../authorization/AccessManagerCloneable.sol";
|
12
12
|
import {ObjectType, INSTANCE} from "../type/ObjectType.sol";
|
13
13
|
import {RoleId, ADMIN_ROLE} from "../type/RoleId.sol";
|
14
|
+
import {GIF_INITIAL_RELEASE} from "../registry/Registry.sol";
|
14
15
|
import {Str} from "../type/String.sol";
|
15
|
-
import {VersionPart} from "../type/Version.sol";
|
16
16
|
import {INSTANCE_TARGET_NAME, INSTANCE_ADMIN_TARGET_NAME, INSTANCE_STORE_TARGET_NAME, PRODUCT_STORE_TARGET_NAME, BUNDLE_SET_TARGET_NAME, RISK_SET_TARGET_NAME} from "./TargetNames.sol";
|
17
|
+
import {VersionPart} from "../type/Version.sol";
|
17
18
|
|
18
19
|
|
19
20
|
contract InstanceAdmin is
|
@@ -26,13 +27,12 @@ contract InstanceAdmin is
|
|
26
27
|
error ErrorInstanceAdminNotComponentOrCustomTarget(address target);
|
27
28
|
|
28
29
|
IInstance internal _instance;
|
29
|
-
IRegistry internal _registry;
|
30
30
|
|
31
31
|
uint64 internal _customRoleIdNext;
|
32
32
|
|
33
33
|
|
34
34
|
modifier onlyInstanceService() {
|
35
|
-
if (msg.sender !=
|
35
|
+
if (msg.sender != _getRegistry().getServiceAddress(INSTANCE(), getRelease())) {
|
36
36
|
revert ErrorInstanceAdminNotInstanceService(msg.sender);
|
37
37
|
}
|
38
38
|
_;
|
@@ -43,7 +43,8 @@ contract InstanceAdmin is
|
|
43
43
|
constructor(address accessManager) {
|
44
44
|
initialize(
|
45
45
|
accessManager,
|
46
|
-
"MasterInstanceAdmin"
|
46
|
+
"MasterInstanceAdmin",
|
47
|
+
GIF_INITIAL_RELEASE());
|
47
48
|
}
|
48
49
|
|
49
50
|
|
@@ -51,32 +52,23 @@ contract InstanceAdmin is
|
|
51
52
|
/// Important: Initialization of instance admin is only complete after calling this function.
|
52
53
|
/// Important: The instance MUST be registered and all instance supporting contracts must be wired to this instance.
|
53
54
|
function completeSetup(
|
54
|
-
address registry,
|
55
55
|
address authorization,
|
56
|
-
VersionPart release,
|
57
56
|
address instance
|
58
57
|
)
|
59
58
|
external
|
60
|
-
reinitializer(uint64(release.toInt()))
|
61
59
|
{
|
62
60
|
// checks
|
63
|
-
AccessAdminLib.checkIsRegistered(
|
61
|
+
AccessAdminLib.checkIsRegistered(instance, INSTANCE(), getRelease());
|
64
62
|
|
65
63
|
// effects
|
66
|
-
AccessManagerCloneable(
|
67
|
-
authority()).completeSetup(
|
68
|
-
registry,
|
69
|
-
release);
|
70
|
-
|
71
64
|
AccessAdminLib.checkAuthorization(
|
72
65
|
address(_authorization),
|
73
66
|
authorization,
|
74
67
|
INSTANCE(), // expectedDomain
|
75
|
-
|
68
|
+
getRelease(), // expectedRelease
|
76
69
|
false, // expectServiceAuthorization
|
77
70
|
true); // checkAlreadyInitialized
|
78
71
|
|
79
|
-
_registry = IRegistry(registry);
|
80
72
|
_instance = IInstance(instance);
|
81
73
|
_authorization = IAuthorization(authorization);
|
82
74
|
_customRoleIdNext = 0;
|
@@ -105,7 +97,7 @@ contract InstanceAdmin is
|
|
105
97
|
for(uint256 i = 0; i < serviceDomains.length; i++) {
|
106
98
|
ObjectType serviceDomain = serviceDomains[i];
|
107
99
|
RoleId serviceRoleId = authorization.getServiceRole(serviceDomain);
|
108
|
-
address service =
|
100
|
+
address service = _getRegistry().getServiceAddress(serviceDomain, getRelease());
|
109
101
|
|
110
102
|
_grantRoleToAccount(
|
111
103
|
serviceRoleId,
|
@@ -135,7 +127,8 @@ contract InstanceAdmin is
|
|
135
127
|
/// Important: The component MUST be registered.
|
136
128
|
function initializeComponentAuthorization(
|
137
129
|
address componentAddress,
|
138
|
-
ObjectType expectedType
|
130
|
+
ObjectType expectedType,
|
131
|
+
VersionPart expectedRelease
|
139
132
|
)
|
140
133
|
external
|
141
134
|
restricted()
|
@@ -13,7 +13,9 @@ import {InstanceStore} from "../instance/InstanceStore.sol";
|
|
13
13
|
import {INSTANCE_TARGET_NAME, INSTANCE_ADMIN_TARGET_NAME, INSTANCE_STORE_TARGET_NAME, PRODUCT_STORE_TARGET_NAME, BUNDLE_SET_TARGET_NAME, RISK_SET_TARGET_NAME} from "./TargetNames.sol";
|
14
14
|
import {ProductStore} from "../instance/ProductStore.sol";
|
15
15
|
import {ADMIN_ROLE, INSTANCE_OWNER_ROLE, PUBLIC_ROLE} from "../type/RoleId.sol";
|
16
|
-
import {
|
16
|
+
import {GIF_INITIAL_RELEASE} from "../registry/Registry.sol";
|
17
|
+
import {RiskSet} from "../instance/RiskSet.sol";
|
18
|
+
import {VersionPartLib} from "../type/Version.sol";
|
17
19
|
|
18
20
|
|
19
21
|
contract InstanceAuthorizationV3
|
@@ -27,7 +29,7 @@ contract InstanceAuthorizationV3
|
|
27
29
|
Authorization(
|
28
30
|
INSTANCE_TARGET_NAME,
|
29
31
|
INSTANCE(),
|
30
|
-
|
32
|
+
GIF_INITIAL_RELEASE(),
|
31
33
|
COMMIT_HASH,
|
32
34
|
TargetType.Instance,
|
33
35
|
false)
|
@@ -28,6 +28,7 @@ import {NftId} from "../type/NftId.sol";
|
|
28
28
|
import {PayoutId, PayoutIdLib} from "../type/PayoutId.sol";
|
29
29
|
import {PolicyServiceLib} from "../product/PolicyServiceLib.sol";
|
30
30
|
import {ProductStore} from "./ProductStore.sol";
|
31
|
+
import {RegistryLinked} from "../shared/RegistryLinked.sol";
|
31
32
|
import {ReferralId, ReferralStatus, ReferralLib} from "../type/Referral.sol";
|
32
33
|
import {RequestId} from "../type/RequestId.sol";
|
33
34
|
import {RiskId} from "../type/RiskId.sol";
|
@@ -40,14 +41,19 @@ import {UFixed, UFixedLib} from "../type/UFixed.sol";
|
|
40
41
|
|
41
42
|
/// @dev Central reader contract for a specific instance.
|
42
43
|
/// Provides reading functions for all instance data and related component data.
|
43
|
-
contract InstanceReader
|
44
|
+
contract InstanceReader is
|
45
|
+
RegistryLinked
|
46
|
+
{
|
44
47
|
|
45
48
|
error ErrorInstanceReaderAlreadyInitialized();
|
46
49
|
error ErrorInstanceReaderInstanceAddressZero();
|
47
|
-
|
50
|
+
// TODO make state immutable:
|
51
|
+
// 1. instance receives reader through setInstanceReader()
|
52
|
+
// 2. this way instance initialization is not depends on reader
|
53
|
+
// 3. and reader is simple contract with constructor
|
54
|
+
// 4. no _initialized in storage, the rest is immutable
|
48
55
|
bool private _initialized = false;
|
49
56
|
|
50
|
-
IRegistry internal _registry;
|
51
57
|
IInstance internal _instance;
|
52
58
|
InstanceAdmin internal _instanceAdmin;
|
53
59
|
|
@@ -78,27 +84,24 @@ contract InstanceReader {
|
|
78
84
|
_initialized = true;
|
79
85
|
_instance = IInstance(instanceAddress);
|
80
86
|
_instanceAdmin = _instance.getInstanceAdmin();
|
81
|
-
_registry = _instance.getRegistry();
|
82
87
|
|
83
88
|
_store = _instance.getInstanceStore();
|
84
89
|
_productStore = _instance.getProductStore();
|
85
90
|
_bundleSet = _instance.getBundleSet();
|
86
91
|
_riskSet = _instance.getRiskSet();
|
87
|
-
|
92
|
+
|
93
|
+
_distributionService = IDistributionService(
|
94
|
+
_getRegistry().getServiceAddress(DISTRIBUTION(), _instance.getRelease()));
|
88
95
|
}
|
89
96
|
|
90
97
|
|
91
98
|
//--- instance functions ---------------------------------------------------------//
|
92
99
|
|
93
|
-
/// @dev Returns the registry this instance is registered in.
|
94
|
-
function getRegistry() public view returns (IRegistry registry) {
|
95
|
-
return _registry;
|
96
|
-
}
|
97
100
|
|
98
101
|
|
99
102
|
/// @dev Returns the instance NFT ID.
|
100
103
|
function getInstanceNftId() public view returns (NftId instanceNftid) {
|
101
|
-
return
|
104
|
+
return _getRegistry().getNftIdForAddress(address(_instance));
|
102
105
|
}
|
103
106
|
|
104
107
|
|
@@ -435,7 +438,7 @@ contract InstanceReader {
|
|
435
438
|
return _store.getReferralInfo(referralId);
|
436
439
|
}
|
437
440
|
|
438
|
-
|
441
|
+
// TODO reader dependce on service os wrong?
|
439
442
|
function getDiscountPercentage(ReferralId referralId)
|
440
443
|
public
|
441
444
|
view
|
@@ -444,10 +447,7 @@ contract InstanceReader {
|
|
444
447
|
ReferralStatus status
|
445
448
|
)
|
446
449
|
{
|
447
|
-
return
|
448
|
-
_registry.getServiceAddress(
|
449
|
-
DISTRIBUTION(),
|
450
|
-
_instance.getRelease())).getDiscountPercentage(
|
450
|
+
return _distributionService.getDiscountPercentage(
|
451
451
|
this, // instance reader
|
452
452
|
referralId);
|
453
453
|
}
|
@@ -175,7 +175,7 @@ contract InstanceService is
|
|
175
175
|
IInstance(instanceAddress).getInstanceAdmin().setInstanceLocked(locked);
|
176
176
|
|
177
177
|
emit LogInstanceServiceInstanceLocked(
|
178
|
-
|
178
|
+
_getRegistry().getNftIdForAddress(instanceAddress),
|
179
179
|
locked);
|
180
180
|
}
|
181
181
|
|
@@ -204,13 +204,11 @@ contract InstanceService is
|
|
204
204
|
// MUST be set after instance is set up and registered
|
205
205
|
IAuthorization instanceAuthorization = InstanceAdmin(_masterInstanceAdmin).getInstanceAuthorization();
|
206
206
|
instanceAdmin.completeSetup(
|
207
|
-
address(getRegistry()),
|
208
207
|
address(instanceAuthorization),
|
209
|
-
getRelease(),
|
210
208
|
address(instance));
|
211
209
|
|
212
210
|
// hard checks for newly cloned instance
|
213
|
-
assert(address(instance.
|
211
|
+
//assert(address(instance._getRegistry()) == address(_getRegistry()));// consider deleting this
|
214
212
|
assert(instance.getRelease() == getRelease());
|
215
213
|
|
216
214
|
// register cloned instance as staking target
|
@@ -231,7 +229,7 @@ contract InstanceService is
|
|
231
229
|
restricted()
|
232
230
|
onlyInstance()
|
233
231
|
{
|
234
|
-
NftId instanceNftId =
|
232
|
+
NftId instanceNftId = _getRegistry().getNftIdForAddress(msg.sender);
|
235
233
|
_stakingService.setInstanceLockingPeriod(
|
236
234
|
instanceNftId,
|
237
235
|
stakeLockingPeriod);
|
@@ -244,7 +242,7 @@ contract InstanceService is
|
|
244
242
|
restricted()
|
245
243
|
onlyInstance()
|
246
244
|
{
|
247
|
-
NftId instanceNftId =
|
245
|
+
NftId instanceNftId = _getRegistry().getNftIdForAddress(msg.sender);
|
248
246
|
_stakingService.setInstanceRewardRate(
|
249
247
|
instanceNftId,
|
250
248
|
rewardRate);
|
@@ -256,7 +254,7 @@ contract InstanceService is
|
|
256
254
|
restricted()
|
257
255
|
onlyInstance()
|
258
256
|
{
|
259
|
-
NftId instanceNftId =
|
257
|
+
NftId instanceNftId = _getRegistry().getNftIdForAddress(msg.sender);
|
260
258
|
_stakingService.setInstanceMaxStakedAmount(
|
261
259
|
instanceNftId,
|
262
260
|
maxStakedAmount);
|
@@ -270,7 +268,7 @@ contract InstanceService is
|
|
270
268
|
onlyInstance()
|
271
269
|
returns (Amount newBalance)
|
272
270
|
{
|
273
|
-
NftId instanceNftId =
|
271
|
+
NftId instanceNftId = _getRegistry().getNftIdForAddress(msg.sender);
|
274
272
|
newBalance = _stakingService.refillInstanceRewardReserves(
|
275
273
|
instanceNftId,
|
276
274
|
rewardProvider,
|
@@ -285,7 +283,7 @@ contract InstanceService is
|
|
285
283
|
onlyInstance()
|
286
284
|
returns (Amount newBalance)
|
287
285
|
{
|
288
|
-
NftId instanceNftId =
|
286
|
+
NftId instanceNftId = _getRegistry().getNftIdForAddress(msg.sender);
|
289
287
|
newBalance = _stakingService.withdrawInstanceRewardReserves(
|
290
288
|
instanceNftId,
|
291
289
|
dipAmount);
|
@@ -308,7 +306,7 @@ contract InstanceService is
|
|
308
306
|
instance.setInstanceReader(upgradedInstanceReaderClone);
|
309
307
|
|
310
308
|
emit LogInstanceServiceInstanceReaderUpgraded(
|
311
|
-
|
309
|
+
_getRegistry().getNftIdForAddress(instanceAddress),
|
312
310
|
address(upgradedInstanceReaderClone));
|
313
311
|
}
|
314
312
|
|
@@ -349,6 +347,7 @@ contract InstanceService is
|
|
349
347
|
if(instanceStoreAddress == address(0)) { revert ErrorInstanceServiceInstanceStoreZero(); }
|
350
348
|
if(productStoreAddress == address(0)) { revert ErrorInstanceServiceProductStoreZero(); } // TODO: rename exception
|
351
349
|
|
350
|
+
// TODO check instance cluster release
|
352
351
|
if(instance.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceInstanceAuthorityMismatch(); }
|
353
352
|
if(bundleSet.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceBundleSetAuthorityMismatch(); }
|
354
353
|
if(riskSet.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceRiskSetAuthorityMismatch(); }
|
@@ -391,7 +390,7 @@ contract InstanceService is
|
|
391
390
|
_masterInstanceReader = instanceReaderAddress;
|
392
391
|
|
393
392
|
emit LogInstanceServiceMasterInstanceReaderUpgraded(
|
394
|
-
|
393
|
+
_getRegistry().getNftIdForAddress(_masterInstance),
|
395
394
|
instanceReaderAddress);
|
396
395
|
}
|
397
396
|
|
@@ -419,7 +418,8 @@ contract InstanceService is
|
|
419
418
|
|
420
419
|
clonedAdmin.initialize(
|
421
420
|
address(clonedAccessManager),
|
422
|
-
"InstanceAdmin"
|
421
|
+
"InstanceAdmin",
|
422
|
+
getRelease());
|
423
423
|
}
|
424
424
|
|
425
425
|
|
@@ -445,8 +445,6 @@ contract InstanceService is
|
|
445
445
|
riskSet: RiskSet(Clones.clone(_masterInstanceRiskSet)),
|
446
446
|
instanceReader: InstanceReader(Clones.clone(address(_masterInstanceReader)))
|
447
447
|
}),
|
448
|
-
getRegistry(),
|
449
|
-
getRelease(),
|
450
448
|
instanceOwner,
|
451
449
|
allowAnyToken);
|
452
450
|
|
@@ -461,14 +459,13 @@ contract InstanceService is
|
|
461
459
|
)
|
462
460
|
internal
|
463
461
|
virtual override
|
464
|
-
|
462
|
+
onlyInitializing()
|
465
463
|
{
|
466
464
|
(
|
467
|
-
address authority
|
468
|
-
|
469
|
-
) = abi.decode(data, (address, address));
|
465
|
+
address authority
|
466
|
+
) = abi.decode(data, (address));
|
470
467
|
|
471
|
-
__Service_init(authority,
|
468
|
+
__Service_init(authority, owner);
|
472
469
|
|
473
470
|
_registryService = IRegistryService(_getServiceAddress(REGISTRY()));
|
474
471
|
_stakingService = IStakingService(_getServiceAddress(STAKING()));
|
@@ -486,7 +483,8 @@ contract InstanceService is
|
|
486
483
|
virtual
|
487
484
|
view
|
488
485
|
{
|
489
|
-
|
486
|
+
// TODO use ContractLib to verify registration, type and release
|
487
|
+
IRegistry registry = _getRegistry();
|
490
488
|
|
491
489
|
NftId instanceNftId = registry.getNftIdForAddress(instanceAddress);
|
492
490
|
if (instanceNftId.eqz()) {
|
@@ -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 {InstanceService} from "./InstanceService.sol";
|
7
7
|
|
@@ -12,19 +12,17 @@ contract InstanceServiceManager is ProxyManager {
|
|
12
12
|
/// @dev initializes proxy manager with instance service implementation
|
13
13
|
constructor(
|
14
14
|
address authority,
|
15
|
-
address registry,
|
16
15
|
bytes32 salt
|
17
16
|
)
|
18
17
|
{
|
19
18
|
InstanceService svc = new InstanceService{salt: salt}();
|
20
|
-
bytes memory data = abi.encode(authority
|
21
|
-
|
22
|
-
registry,
|
19
|
+
bytes memory data = abi.encode(authority);
|
20
|
+
IUpgradeable upgradeable = initialize(
|
23
21
|
address(svc),
|
24
22
|
data,
|
25
23
|
salt);
|
26
24
|
|
27
|
-
_instanceService = InstanceService(address(
|
25
|
+
_instanceService = InstanceService(address(upgradeable));
|
28
26
|
}
|
29
27
|
|
30
28
|
//--- view functions ----------------------------------------------------//
|
@@ -4,25 +4,19 @@ pragma solidity ^0.8.20;
|
|
4
4
|
import {AccessManagedUpgradeable} from "@openzeppelin/contracts-upgradeable/access/manager/AccessManagedUpgradeable.sol";
|
5
5
|
|
6
6
|
import {IRegistry} from "../../registry/IRegistry.sol";
|
7
|
+
import {RegistryLinked} from "../../shared/RegistryLinked.sol";
|
7
8
|
|
8
9
|
abstract contract Cloneable is
|
9
|
-
AccessManagedUpgradeable
|
10
|
+
AccessManagedUpgradeable,
|
11
|
+
RegistryLinked
|
10
12
|
{
|
11
|
-
IRegistry internal _registry;
|
12
|
-
|
13
13
|
/// @dev call to initialize MUST be made in the same transaction as cloning of the contract
|
14
14
|
function __Cloneable_init(
|
15
|
-
address authority
|
16
|
-
address registry
|
15
|
+
address authority
|
17
16
|
)
|
18
17
|
internal
|
19
18
|
onlyInitializing
|
20
19
|
{
|
21
20
|
__AccessManaged_init(authority);
|
22
|
-
_registry = IRegistry(registry);
|
23
|
-
}
|
24
|
-
|
25
|
-
function getRegistry() external view returns (IRegistry) {
|
26
|
-
return _registry;
|
27
21
|
}
|
28
22
|
}
|
@@ -21,12 +21,12 @@ contract ObjectSet is
|
|
21
21
|
address internal _instanceAddress;
|
22
22
|
|
23
23
|
/// @dev This initializer needs to be called from the instance itself.
|
24
|
-
function initialize(address authority
|
24
|
+
function initialize(address authority)
|
25
25
|
external
|
26
26
|
initializer()
|
27
27
|
{
|
28
28
|
_instanceAddress = msg.sender;
|
29
|
-
__Cloneable_init(authority
|
29
|
+
__Cloneable_init(authority);
|
30
30
|
|
31
31
|
emit LogObjectSetInitialized(address(_instanceAddress));
|
32
32
|
}
|
@@ -23,7 +23,6 @@ contract BasicOracle is
|
|
23
23
|
}
|
24
24
|
|
25
25
|
function _initializeBasicOracle(
|
26
|
-
address registry,
|
27
26
|
NftId instanceNftId,
|
28
27
|
IAuthorization authorization,
|
29
28
|
address initialOwner,
|
@@ -35,7 +34,6 @@ contract BasicOracle is
|
|
35
34
|
{
|
36
35
|
|
37
36
|
__Oracle_init(
|
38
|
-
registry,
|
39
37
|
instanceNftId,
|
40
38
|
authorization,
|
41
39
|
initialOwner,
|
@@ -8,6 +8,8 @@ import {IAccess} from "../authorization/IAccess.sol";
|
|
8
8
|
import {IOracle} from "./IOracle.sol";
|
9
9
|
import {PUBLIC_ROLE} from "../../contracts/type/RoleId.sol";
|
10
10
|
import {RoleId} from "../type/RoleId.sol";
|
11
|
+
import {GIF_INITIAL_RELEASE} from "../registry/Registry.sol";
|
12
|
+
import {VersionPartLib} from "../type/Version.sol";
|
11
13
|
|
12
14
|
|
13
15
|
contract BasicOracleAuthorization
|
@@ -21,7 +23,7 @@ contract BasicOracleAuthorization
|
|
21
23
|
Authorization(
|
22
24
|
componentName,
|
23
25
|
ORACLE(),
|
24
|
-
|
26
|
+
GIF_INITIAL_RELEASE(),
|
25
27
|
commitHash,
|
26
28
|
TargetType.Component,
|
27
29
|
false)
|
@@ -18,13 +18,9 @@ interface IOracleService is IService {
|
|
18
18
|
event LogOracleServiceRequestCancelled(RequestId requestId, NftId requesterNftId);
|
19
19
|
|
20
20
|
// create request
|
21
|
-
error ErrorOracleServiceProductMismatch(ObjectType callerObjectType, NftId productNft, NftId oracleParentNftId);
|
22
21
|
error ErrorOracleServiceExpiryInThePast(Timestamp blockTimestamp, Timestamp expiryAt);
|
23
22
|
error ErrorOracleServiceCallbackMethodNameEmpty();
|
24
23
|
|
25
|
-
// respond
|
26
|
-
error ErrorOracleServiceNotResponsibleOracle(RequestId requestId, NftId expectedOracleNftId, NftId oracleNftId);
|
27
|
-
|
28
24
|
// get request info
|
29
25
|
error ErrorOracleServiceRequestStateNotActive(RequestId requestId, StateId state);
|
30
26
|
error ErrorOracleServiceCallerNotResponsibleOracle(RequestId requestId, NftId oracleNftId, NftId callerNftId);
|
@@ -5,10 +5,11 @@ import {Amount} from "../type/Amount.sol";
|
|
5
5
|
import {COMPONENT, PRODUCT, ORACLE} from "../type/ObjectType.sol";
|
6
6
|
import {IAuthorization} from "../authorization/IAuthorization.sol";
|
7
7
|
import {IComponentService} from "../shared/IComponentService.sol";
|
8
|
-
import {
|
8
|
+
import {IComponent} from "../shared/IComponent.sol";
|
9
9
|
import {IOracleComponent} from "./IOracleComponent.sol";
|
10
10
|
import {IOracleService} from "./IOracleService.sol";
|
11
11
|
import {NftId} from "../type/NftId.sol";
|
12
|
+
import {Component} from "../shared/Component.sol";
|
12
13
|
import {InstanceLinkedComponent} from "../shared/InstanceLinkedComponent.sol";
|
13
14
|
import {RequestId} from "../type/RequestId.sol";
|
14
15
|
import {Timestamp} from "../type/Timestamp.sol";
|
@@ -66,7 +67,7 @@ abstract contract Oracle is
|
|
66
67
|
function withdrawFees(Amount amount)
|
67
68
|
external
|
68
69
|
virtual
|
69
|
-
override(
|
70
|
+
override(IComponent, Component)
|
70
71
|
onlyOwner()
|
71
72
|
restricted()
|
72
73
|
returns (Amount)
|
@@ -76,7 +77,6 @@ abstract contract Oracle is
|
|
76
77
|
|
77
78
|
|
78
79
|
function __Oracle_init(
|
79
|
-
address registry,
|
80
80
|
NftId productNftId,
|
81
81
|
IAuthorization authorization,
|
82
82
|
address initialOwner,
|
@@ -87,7 +87,6 @@ abstract contract Oracle is
|
|
87
87
|
onlyInitializing()
|
88
88
|
{
|
89
89
|
__InstanceLinkedComponent_init(
|
90
|
-
registry,
|
91
90
|
productNftId,
|
92
91
|
name,
|
93
92
|
ORACLE(),
|