@etherisc/gif-next 3.0.0-cf1abe2-268 → 3.0.0-cf20ffd-765
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 +10 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +83 -164
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +119 -117
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +48 -93
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +145 -168
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +150 -126
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +101 -43
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +55 -31
- 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 +85 -83
- 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 +42 -18
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +77 -222
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +65 -41
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +59 -168
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +252 -238
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +154 -144
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +58 -180
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +145 -111
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +2 -2
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +109 -246
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +65 -41
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +137 -279
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +65 -41
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +2 -2
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +799 -0
- package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.json +229 -0
- package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.json +801 -0
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +1278 -0
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +896 -0
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +1391 -0
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +844 -0
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +2214 -0
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +891 -0
- package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.json +711 -0
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +586 -0
- package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.json +901 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +104 -255
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +65 -41
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +108 -240
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +125 -257
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +65 -41
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +116 -248
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +65 -41
- package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
- package/artifacts/contracts/instance/BaseStore.sol/BaseStore.json +50 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +69 -77
- package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
- package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.json +50 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +47 -99
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +126 -92
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +72 -166
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +225 -247
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +67 -43
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +238 -77
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +175 -149
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +116 -108
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +183 -133
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +153 -103
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +80 -88
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +21 -21
- 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 +9 -4
- 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/mock/Dip.sol/Dip.json +2 -2
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +83 -209
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +65 -41
- 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 +63 -166
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +103 -94
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +69 -159
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +168 -163
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +133 -115
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +78 -168
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +65 -41
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +158 -212
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +143 -133
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +73 -107
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +76 -179
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +142 -138
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +78 -168
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +244 -26
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +221 -277
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +134 -144
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +74 -149
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +116 -114
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +59 -149
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +65 -41
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +142 -203
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +142 -136
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +43 -82
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +59 -92
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +91 -97
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +45 -84
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +58 -161
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +51 -103
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +154 -188
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +20 -12
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +132 -126
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +96 -163
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +126 -120
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +59 -149
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +78 -174
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +111 -113
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +4 -4
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +70 -163
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +218 -204
- package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
- package/artifacts/contracts/registry/IRelease.sol/IRelease.json +15 -1
- 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 +114 -322
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +221 -242
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +77 -82
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +246 -287
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +114 -119
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +236 -245
- 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 +217 -156
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +56 -32
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +39 -23
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +41 -161
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +554 -182
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +145 -119
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +169 -421
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +24 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +40 -0
- package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.json +558 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +40 -173
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +457 -97
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +58 -161
- 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 +30 -3
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +12 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +27 -79
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +12 -1
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.json +34 -73
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +2 -2
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +59 -149
- 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 +36 -17
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +14 -3
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +26 -78
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +37 -3
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +33 -72
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +42 -82
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +30 -70
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +34 -34
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +182 -283
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +55 -300
- 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 +235 -352
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +31 -31
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +128 -116
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +22 -5
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +84 -357
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +115 -109
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +273 -281
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +22 -35
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +16 -21
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +2 -7
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +2 -2
- package/artifacts/contracts/type/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/Fee.sol/FeeLib.json +2 -7
- 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 +22 -25
- 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 +23 -4
- 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 +4 -0
- package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +33 -0
- 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 +21 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorLib.json +2 -2
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.json +2 -2
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.json +21 -2
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +36 -4
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +2 -7
- 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 +6 -19
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/{IUpgradeable.sol/IUpgradeable.json → IVersionable.sol/IVersionable.json} +4 -54
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +90 -67
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +3 -3
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/{Upgradeable.sol/Upgradeable.json → Versionable.sol/Versionable.json} +4 -54
- package/contracts/accounting/AccountingService.sol +22 -33
- package/contracts/accounting/AccountingServiceManager.sol +6 -4
- package/contracts/accounting/IAccountingService.sol +7 -8
- package/contracts/authorization/AccessAdmin.sol +34 -55
- package/contracts/authorization/AccessAdminLib.sol +29 -15
- package/contracts/authorization/AccessManagerCloneable.sol +52 -24
- package/contracts/authorization/Authorization.sol +2 -2
- package/contracts/authorization/IAccessAdmin.sol +11 -10
- package/contracts/authorization/IServiceAuthorization.sol +1 -1
- package/contracts/authorization/ServiceAuthorization.sol +4 -4
- package/contracts/distribution/BasicDistribution.sol +2 -0
- package/contracts/distribution/BasicDistributionAuthorization.sol +4 -5
- package/contracts/distribution/Distribution.sol +2 -0
- package/contracts/distribution/DistributionService.sol +44 -43
- package/contracts/distribution/DistributionServiceManager.sol +6 -4
- package/contracts/distribution/IDistributionComponent.sol +0 -2
- package/contracts/distribution/IDistributionService.sol +8 -7
- package/contracts/examples/fire/FirePool.sol +4 -0
- package/contracts/examples/fire/FireProduct.sol +4 -0
- package/contracts/examples/flight/FlightLib.sol +337 -0
- package/contracts/examples/flight/FlightMessageVerifier.sol +128 -0
- package/contracts/examples/flight/FlightNft.sol +234 -0
- package/contracts/examples/flight/FlightOracle.sol +226 -0
- package/contracts/examples/flight/FlightOracleAuthorization.sol +57 -0
- package/contracts/examples/flight/FlightPool.sol +89 -0
- package/contracts/examples/flight/FlightPoolAuthorization.sol +37 -0
- package/contracts/examples/flight/FlightProduct.sol +687 -0
- package/contracts/examples/flight/FlightProductAuthorization.sol +70 -0
- package/contracts/examples/flight/FlightProductManager.sol +49 -0
- package/contracts/examples/flight/FlightUSD.sol +28 -0
- package/contracts/examples/flight/originalV1.sol +396 -0
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +4 -0
- package/contracts/examples/unpermissioned/SimpleOracle.sol +4 -0
- package/contracts/examples/unpermissioned/SimplePool.sol +4 -0
- package/contracts/examples/unpermissioned/SimpleProduct.sol +4 -0
- package/contracts/instance/BaseStore.sol +4 -0
- package/contracts/instance/BundleSet.sol +7 -8
- package/contracts/instance/IBaseStore.sol +8 -0
- package/contracts/instance/IInstance.sol +8 -8
- package/contracts/instance/IInstanceService.sol +6 -4
- package/contracts/instance/Instance.sol +12 -8
- package/contracts/instance/InstanceAdmin.sol +17 -11
- package/contracts/instance/InstanceAuthorizationV3.sol +2 -4
- package/contracts/instance/InstanceReader.sol +59 -23
- package/contracts/instance/InstanceService.sol +28 -18
- package/contracts/instance/InstanceServiceManager.sol +6 -4
- package/contracts/instance/InstanceStore.sol +14 -14
- package/contracts/instance/ProductStore.sol +14 -14
- package/contracts/instance/RiskSet.sol +6 -7
- package/contracts/instance/base/BalanceStore.sol +7 -7
- package/contracts/instance/base/Cloneable.sol +10 -4
- package/contracts/instance/base/ObjectSet.sol +3 -3
- package/contracts/oracle/BasicOracle.sol +3 -0
- package/contracts/oracle/BasicOracleAuthorization.sol +1 -3
- package/contracts/oracle/IOracleService.sol +21 -17
- package/contracts/oracle/Oracle.sol +6 -5
- package/contracts/oracle/OracleService.sol +68 -38
- package/contracts/oracle/OracleServiceManager.sol +6 -4
- package/contracts/pool/BasicPool.sol +4 -2
- package/contracts/pool/BasicPoolAuthorization.sol +4 -5
- package/contracts/pool/BundleService.sol +22 -28
- package/contracts/pool/BundleServiceManager.sol +7 -5
- package/contracts/pool/IBundleService.sol +9 -10
- package/contracts/pool/IPoolComponent.sol +1 -1
- package/contracts/pool/IPoolService.sol +14 -13
- package/contracts/pool/Pool.sol +3 -1
- package/contracts/pool/PoolLib.sol +102 -5
- package/contracts/pool/PoolService.sol +101 -67
- package/contracts/pool/PoolServiceManager.sol +6 -4
- package/contracts/product/ApplicationService.sol +34 -13
- package/contracts/product/ApplicationServiceManager.sol +6 -4
- package/contracts/product/BasicProduct.sol +2 -0
- package/contracts/product/BasicProductAuthorization.sol +7 -7
- package/contracts/product/ClaimService.sol +35 -11
- package/contracts/product/ClaimServiceManager.sol +7 -5
- package/contracts/product/IApplicationService.sol +8 -8
- package/contracts/product/IClaimService.sol +9 -9
- package/contracts/product/IPolicyService.sol +8 -7
- package/contracts/product/IRiskService.sol +4 -5
- package/contracts/product/PolicyService.sol +58 -45
- package/contracts/product/PolicyServiceLib.sol +5 -3
- package/contracts/product/PolicyServiceManager.sol +6 -4
- package/contracts/product/PricingService.sol +8 -7
- package/contracts/product/PricingServiceManager.sol +6 -4
- package/contracts/product/Product.sol +2 -0
- package/contracts/product/RiskService.sol +42 -10
- package/contracts/product/RiskServiceManager.sol +6 -4
- package/contracts/registry/ChainNft.sol +2 -2
- package/contracts/registry/IRegistry.sol +15 -21
- package/contracts/registry/IRegistryService.sol +14 -10
- package/contracts/registry/IRelease.sol +3 -0
- package/contracts/registry/Registry.sol +82 -126
- package/contracts/registry/RegistryAdmin.sol +29 -12
- package/contracts/registry/RegistryAuthorization.sol +3 -6
- package/contracts/registry/RegistryService.sol +82 -99
- package/contracts/registry/RegistryServiceManager.sol +11 -4
- package/contracts/registry/ReleaseAdmin.sol +27 -13
- package/contracts/registry/ReleaseRegistry.sol +81 -72
- package/contracts/registry/ServiceAuthorizationV3.sol +3 -4
- package/contracts/registry/TokenRegistry.sol +18 -9
- package/contracts/shared/Component.sol +22 -27
- package/contracts/shared/ComponentService.sol +168 -49
- package/contracts/shared/ComponentServiceManager.sol +7 -5
- package/contracts/shared/ContractLib.sol +93 -359
- package/contracts/shared/EcdsaChecker.sol +5 -0
- package/contracts/shared/IAuthorizedComponent.sol +15 -0
- package/contracts/shared/IComponent.sol +3 -9
- package/contracts/shared/IComponentService.sol +46 -10
- package/contracts/shared/IInstanceLinkedComponent.sol +9 -9
- package/contracts/shared/INftOwnable.sol +3 -1
- package/contracts/shared/IRegisterable.sol +3 -14
- package/contracts/shared/IRegistryLinked.sol +3 -1
- package/contracts/shared/IService.sol +2 -2
- package/contracts/shared/InstanceLinkedComponent.sol +130 -39
- package/contracts/shared/NftOwnable.sol +22 -9
- package/contracts/shared/PolicyHolder.sol +4 -2
- package/contracts/shared/Registerable.sol +20 -37
- package/contracts/shared/RegistryLinked.sol +23 -4
- package/contracts/shared/Service.sol +9 -8
- package/contracts/shared/TokenHandler.sol +6 -9
- package/contracts/staking/IStaking.sol +35 -33
- package/contracts/staking/IStakingService.sol +7 -16
- package/contracts/staking/Staking.sol +38 -32
- package/contracts/staking/StakingLib.sol +1 -3
- package/contracts/staking/StakingManager.sol +6 -3
- package/contracts/staking/StakingReader.sol +17 -9
- package/contracts/staking/StakingService.sol +15 -18
- package/contracts/staking/StakingServiceManager.sol +8 -4
- package/contracts/staking/StakingStore.sol +11 -11
- package/contracts/staking/TargetHandler.sol +6 -5
- package/contracts/type/ObjectType.sol +2 -31
- package/contracts/type/Referral.sol +6 -0
- package/contracts/type/RequestIdSet.sol +62 -0
- package/contracts/type/Seconds.sol +4 -0
- package/contracts/type/String.sol +30 -0
- package/contracts/type/Timestamp.sol +10 -1
- package/contracts/type/Version.sol +16 -15
- package/contracts/upgradeability/{IUpgradeable.sol → IVersionable.sol} +19 -13
- package/contracts/upgradeability/ProxyManager.sol +54 -46
- package/contracts/upgradeability/{Upgradeable.sol → Versionable.sol} +14 -25
- package/package.json +4 -3
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +0 -74
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
- package/artifacts/contracts/shared/Versionable.sol/Versionable.json +0 -74
- package/artifacts/contracts/upgradeability/IUpgradeable.sol/IUpgradeable.dbg.json +0 -4
- package/artifacts/contracts/upgradeability/Upgradeable.sol/Upgradeable.dbg.json +0 -4
- package/contracts/shared/IVersionable.sol +0 -19
- package/contracts/shared/Versionable.sol +0 -47
@@ -49,13 +49,14 @@ contract ComponentService is
|
|
49
49
|
)
|
50
50
|
internal
|
51
51
|
virtual override
|
52
|
-
|
52
|
+
initializer()
|
53
53
|
{
|
54
54
|
(
|
55
|
-
address authority
|
56
|
-
|
55
|
+
address authority,
|
56
|
+
address registry
|
57
|
+
) = abi.decode(data, (address, address));
|
57
58
|
|
58
|
-
__Service_init(authority, owner);
|
59
|
+
__Service_init(authority, registry, owner);
|
59
60
|
|
60
61
|
_accountingService = IAccountingService(_getServiceAddress(ACCOUNTING()));
|
61
62
|
_registryService = IRegistryService(_getServiceAddress(REGISTRY()));
|
@@ -73,21 +74,26 @@ contract ComponentService is
|
|
73
74
|
restricted()
|
74
75
|
returns (NftId componentNftId)
|
75
76
|
{
|
77
|
+
// checks
|
76
78
|
// check sender is registered product
|
77
|
-
IRegistry registry =
|
78
|
-
if (!registry.isObjectType(msg.sender, PRODUCT()
|
79
|
+
IRegistry registry = getRegistry();
|
80
|
+
if (!registry.isObjectType(msg.sender, PRODUCT())) {
|
79
81
|
revert ErrorComponentServiceCallerNotProduct(msg.sender);
|
80
82
|
}
|
81
83
|
|
84
|
+
// check provided address is product contract
|
85
|
+
if (!_isInstanceLinkedComponent(componentAddress)) {
|
86
|
+
revert ErrorComponentServiceNotComponent(componentAddress);
|
87
|
+
}
|
88
|
+
|
82
89
|
NftId productNftId = registry.getNftIdForAddress(msg.sender);
|
83
90
|
IInstance instance = IInstance(
|
84
91
|
registry.getObjectAddress(
|
85
92
|
registry.getParentNftId(productNftId)));
|
86
93
|
|
87
|
-
componentNftId =
|
94
|
+
componentNftId = _verifyAndRegister(
|
88
95
|
instance,
|
89
|
-
componentAddress,
|
90
|
-
COMPONENT(),
|
96
|
+
componentAddress,
|
91
97
|
productNftId, // product is parent of component to be registered
|
92
98
|
address(0)); // token will be inhereited from product
|
93
99
|
}
|
@@ -178,13 +184,13 @@ contract ComponentService is
|
|
178
184
|
withdrawnAmount);
|
179
185
|
|
180
186
|
// transfer amount to component owner
|
181
|
-
address componentOwner =
|
187
|
+
address componentOwner = getRegistry().ownerOf(componentNftId);
|
182
188
|
TokenHandler tokenHandler = instanceReader.getTokenHandler(componentNftId);
|
183
189
|
emit LogComponentServiceComponentFeesWithdrawn(
|
184
190
|
componentNftId,
|
185
191
|
componentOwner,
|
186
|
-
|
187
|
-
|
192
|
+
withdrawnAmount,
|
193
|
+
address(tokenHandler.TOKEN()));
|
188
194
|
|
189
195
|
// interactions
|
190
196
|
// transfer amount to component owner
|
@@ -204,18 +210,23 @@ contract ComponentService is
|
|
204
210
|
nonReentrant()
|
205
211
|
returns (NftId productNftId)
|
206
212
|
{
|
213
|
+
// checks
|
207
214
|
// check sender is registered instance
|
208
|
-
IRegistry registry =
|
209
|
-
if (!registry.isObjectType(msg.sender, INSTANCE()
|
215
|
+
IRegistry registry = getRegistry();
|
216
|
+
if (!registry.isObjectType(msg.sender, INSTANCE())) {
|
210
217
|
revert ErrorComponentServiceCallerNotInstance(msg.sender);
|
211
218
|
}
|
212
219
|
|
220
|
+
// check provided address is product contract
|
221
|
+
if (!_isProduct(productAddress)) {
|
222
|
+
revert ErrorComponentServiceNotProduct(productAddress);
|
223
|
+
}
|
224
|
+
|
213
225
|
IInstance instance = IInstance(msg.sender);
|
214
226
|
NftId instanceNftId = registry.getNftIdForAddress(msg.sender);
|
215
|
-
productNftId =
|
227
|
+
productNftId = _verifyAndRegister(
|
216
228
|
instance,
|
217
229
|
productAddress,
|
218
|
-
PRODUCT(),
|
219
230
|
instanceNftId, // instance is parent of product to be registered
|
220
231
|
token);
|
221
232
|
|
@@ -225,6 +236,25 @@ contract ComponentService is
|
|
225
236
|
token);
|
226
237
|
}
|
227
238
|
|
239
|
+
|
240
|
+
function _isProduct(address target) internal view virtual returns (bool) {
|
241
|
+
if (!_isInstanceLinkedComponent(target)) {
|
242
|
+
return false;
|
243
|
+
}
|
244
|
+
|
245
|
+
return IInstanceLinkedComponent(target).getInitialInfo().objectType == PRODUCT();
|
246
|
+
}
|
247
|
+
|
248
|
+
|
249
|
+
function _isInstanceLinkedComponent(address target) internal view virtual returns (bool) {
|
250
|
+
if (!ContractLib.isContract(target)) {
|
251
|
+
return false;
|
252
|
+
}
|
253
|
+
|
254
|
+
return ContractLib.supportsInterface(target, type(IInstanceLinkedComponent).interfaceId);
|
255
|
+
}
|
256
|
+
|
257
|
+
|
228
258
|
/// @inheritdoc IComponentService
|
229
259
|
function setProductFees(
|
230
260
|
Fee memory productFee, // product fee on net premium
|
@@ -282,9 +312,27 @@ contract ComponentService is
|
|
282
312
|
productNftId,
|
283
313
|
initialProductInfo);
|
284
314
|
|
315
|
+
emit LogComponentServiceProductCreated(productNftId, productAddress, initialProductInfo.hasDistribution, initialProductInfo.expectedNumberOfOracles);
|
316
|
+
|
317
|
+
IComponents.FeeInfo memory initialFeeInfo = product.getInitialFeeInfo();
|
318
|
+
|
285
319
|
productStore.createFee(
|
286
320
|
productNftId,
|
287
|
-
|
321
|
+
initialFeeInfo);
|
322
|
+
|
323
|
+
emit LogComponentServiceProductInitialProductFeesSet(
|
324
|
+
productNftId,
|
325
|
+
initialFeeInfo.productFee.fixedFee, initialFeeInfo.productFee.fractionalFee,
|
326
|
+
initialFeeInfo.processingFee.fixedFee, initialFeeInfo.processingFee.fractionalFee);
|
327
|
+
emit LogComponentServiceProductInitialDistributionFeesSet(
|
328
|
+
productNftId,
|
329
|
+
initialFeeInfo.distributionFee.fixedFee, initialFeeInfo.distributionFee.fractionalFee,
|
330
|
+
initialFeeInfo.minDistributionOwnerFee.fixedFee, initialFeeInfo.minDistributionOwnerFee.fractionalFee);
|
331
|
+
emit LogComponentServiceProductInitialPoolFeesSet(
|
332
|
+
productNftId,
|
333
|
+
initialFeeInfo.poolFee.fixedFee, initialFeeInfo.poolFee.fractionalFee,
|
334
|
+
initialFeeInfo.stakingFee.fixedFee, initialFeeInfo.stakingFee.fractionalFee,
|
335
|
+
initialFeeInfo.performanceFee.fixedFee, initialFeeInfo.performanceFee.fractionalFee);
|
288
336
|
}
|
289
337
|
|
290
338
|
//-------- distribution -------------------------------------------------//
|
@@ -311,6 +359,8 @@ contract ComponentService is
|
|
311
359
|
// set distribution in product info
|
312
360
|
productInfo.distributionNftId = distributionNftId;
|
313
361
|
productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
|
362
|
+
|
363
|
+
emit LogComponentServiceDistributionCreated(distributionNftId, productNftId);
|
314
364
|
}
|
315
365
|
|
316
366
|
|
@@ -370,6 +420,8 @@ contract ComponentService is
|
|
370
420
|
productInfo.oracleNftId[productInfo.numberOfOracles] = oracleNftId;
|
371
421
|
productInfo.numberOfOracles++;
|
372
422
|
productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
|
423
|
+
|
424
|
+
emit LogComponentServiceOracleCreated(oracleNftId, productNftId);
|
373
425
|
}
|
374
426
|
|
375
427
|
//-------- pool ---------------------------------------------------------//
|
@@ -393,13 +445,20 @@ contract ComponentService is
|
|
393
445
|
|
394
446
|
// create info
|
395
447
|
IPoolComponent pool = IPoolComponent(componentAddress);
|
448
|
+
IComponents.PoolInfo memory initialPoolInfo = pool.getInitialPoolInfo();
|
396
449
|
instanceStore.createPool(
|
397
450
|
poolNftId,
|
398
|
-
|
451
|
+
initialPoolInfo);
|
399
452
|
|
400
453
|
// update pool in product info
|
401
454
|
productInfo.poolNftId = poolNftId;
|
402
455
|
productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
|
456
|
+
|
457
|
+
emit LogComponentServicePoolCreated(
|
458
|
+
poolNftId, productNftId, componentAddress,
|
459
|
+
initialPoolInfo.maxBalanceAmount, initialPoolInfo.collateralizationLevel,
|
460
|
+
initialPoolInfo.retentionLevel, initialPoolInfo.isExternallyManaged,
|
461
|
+
initialPoolInfo.isVerifyingApplications);
|
403
462
|
}
|
404
463
|
|
405
464
|
|
@@ -448,10 +507,9 @@ contract ComponentService is
|
|
448
507
|
|
449
508
|
/// @dev Registers the component represented by the provided address.
|
450
509
|
/// The caller must ensure componentAddress is IInstanceLinkedComponent.
|
451
|
-
function
|
510
|
+
function _verifyAndRegister(
|
452
511
|
IInstance instance,
|
453
512
|
address componentAddress,
|
454
|
-
ObjectType componentType,
|
455
513
|
NftId parentNftId,
|
456
514
|
address token
|
457
515
|
)
|
@@ -459,29 +517,36 @@ contract ComponentService is
|
|
459
517
|
virtual
|
460
518
|
returns (NftId componentNftId)
|
461
519
|
{
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
parentNftId
|
468
|
-
componentType,
|
469
|
-
address(0)); // component owner have no importance here
|
470
|
-
|
471
|
-
componentType = info.objectType;
|
472
|
-
componentNftId = info.nftId;
|
520
|
+
(
|
521
|
+
IInstanceLinkedComponent component,
|
522
|
+
IRegistry.ObjectInfo memory objectInfo // initial component info
|
523
|
+
) = _getAndVerifyRegisterableComponent(
|
524
|
+
componentAddress,
|
525
|
+
parentNftId);
|
473
526
|
|
474
527
|
InstanceStore instanceStore = instance.getInstanceStore();
|
475
|
-
|
528
|
+
ObjectType componentType = objectInfo.objectType;
|
476
529
|
|
477
530
|
if(componentType == PRODUCT()) {
|
531
|
+
// register product with registry
|
532
|
+
componentNftId = _registryService.registerProduct(
|
533
|
+
component,
|
534
|
+
objectInfo.initialOwner).nftId;
|
535
|
+
|
478
536
|
// create product info in instance store
|
479
537
|
_createProduct(instance.getProductStore(), componentNftId, componentAddress);
|
480
538
|
} else {
|
539
|
+
// register non product component with registry
|
540
|
+
componentNftId = _registryService.registerProductLinkedComponent(
|
541
|
+
component,
|
542
|
+
objectInfo.objectType,
|
543
|
+
objectInfo.initialOwner).nftId;
|
544
|
+
|
545
|
+
InstanceReader instanceReader = instance.getInstanceReader();
|
546
|
+
|
481
547
|
// create non product component info in instance store
|
482
|
-
NftId productNftId =
|
548
|
+
NftId productNftId = parentNftId;
|
483
549
|
IComponents.ProductInfo memory productInfo = instanceReader.getProductInfo(productNftId);
|
484
|
-
|
485
550
|
if(componentType == POOL()) {
|
486
551
|
_createPool(instanceStore, instance.getProductStore(), productNftId, componentNftId, componentAddress, productInfo);
|
487
552
|
} else if(componentType == DISTRIBUTION()) {
|
@@ -493,7 +558,7 @@ contract ComponentService is
|
|
493
558
|
}
|
494
559
|
|
495
560
|
// get product's token
|
496
|
-
token = address(instanceReader.
|
561
|
+
token = address(instanceReader.getTokenHandler(productNftId).TOKEN());
|
497
562
|
}
|
498
563
|
|
499
564
|
_checkToken(instance, token);
|
@@ -501,13 +566,17 @@ contract ComponentService is
|
|
501
566
|
InstanceAdmin instanceAdmin = instance.getInstanceAdmin();
|
502
567
|
|
503
568
|
// deploy and wire token handler
|
504
|
-
IRegistry registry = _getRegistry();
|
505
569
|
IComponents.ComponentInfo memory componentInfo = component.getInitialComponentInfo();
|
506
570
|
componentInfo.tokenHandler = TokenHandlerDeployerLib.deployTokenHandler(
|
507
|
-
address(
|
508
|
-
|
571
|
+
address(getRegistry()),
|
572
|
+
address(component), // initially, component is its own wallet
|
509
573
|
token,
|
510
574
|
instanceAdmin.authority());
|
575
|
+
|
576
|
+
emit LogComponentServiceTokenHandlerDeployed(
|
577
|
+
componentNftId,
|
578
|
+
address(componentInfo.tokenHandler),
|
579
|
+
token);
|
511
580
|
|
512
581
|
// register component with instance
|
513
582
|
instanceStore.createComponent(
|
@@ -518,15 +587,15 @@ contract ComponentService is
|
|
518
587
|
component.linkToRegisteredNftId();
|
519
588
|
|
520
589
|
// authorize
|
521
|
-
instanceAdmin.initializeComponentAuthorization(componentAddress, componentType
|
590
|
+
instanceAdmin.initializeComponentAuthorization(componentAddress, componentType);
|
522
591
|
|
523
592
|
emit LogComponentServiceRegistered(
|
524
593
|
instance.getNftId(),
|
525
594
|
componentNftId,
|
526
595
|
componentType,
|
527
|
-
|
596
|
+
address(component),
|
528
597
|
token,
|
529
|
-
|
598
|
+
objectInfo.initialOwner);
|
530
599
|
}
|
531
600
|
|
532
601
|
|
@@ -535,10 +604,9 @@ contract ComponentService is
|
|
535
604
|
view
|
536
605
|
{
|
537
606
|
if (! instance.isTokenRegistryDisabled()) {
|
538
|
-
// TODO call token registry directlly?
|
539
607
|
// check if provided token is whitelisted and active
|
540
608
|
if (!ContractLib.isActiveToken(
|
541
|
-
|
609
|
+
getRegistry().getTokenRegistryAddress(),
|
542
610
|
ChainIdLib.current(),
|
543
611
|
token,
|
544
612
|
AccessManagerCloneable(authority()).getRelease())
|
@@ -575,10 +643,47 @@ contract ComponentService is
|
|
575
643
|
IComponents.FeeInfo memory info
|
576
644
|
)
|
577
645
|
{
|
578
|
-
productNftId =
|
646
|
+
productNftId = getRegistry().getParentNftId(componentNftId);
|
579
647
|
info = instanceReader.getFeeInfo(productNftId);
|
580
648
|
}
|
581
649
|
|
650
|
+
|
651
|
+
/// @dev Based on the provided component address required type the component
|
652
|
+
/// and related instance contract this function reverts iff:
|
653
|
+
/// - the component parent does not match with the required parent
|
654
|
+
/// - the component release does not match with the service release
|
655
|
+
/// - the component has already been registered
|
656
|
+
function _getAndVerifyRegisterableComponent(
|
657
|
+
address componentAddress,
|
658
|
+
NftId requiredParent
|
659
|
+
)
|
660
|
+
internal
|
661
|
+
view
|
662
|
+
returns (
|
663
|
+
IInstanceLinkedComponent component,
|
664
|
+
IRegistry.ObjectInfo memory info
|
665
|
+
)
|
666
|
+
{
|
667
|
+
component = IInstanceLinkedComponent(componentAddress);
|
668
|
+
info = component.getInitialInfo();
|
669
|
+
|
670
|
+
// check component parent
|
671
|
+
if(info.parentNftId != requiredParent) {
|
672
|
+
revert ErrorComponentServiceComponentParentInvalid(componentAddress, requiredParent, info.parentNftId);
|
673
|
+
}
|
674
|
+
|
675
|
+
// check component release (must match with service release)
|
676
|
+
if(component.getRelease() != getRelease()) {
|
677
|
+
revert ErrorComponentServiceComponentReleaseMismatch(componentAddress, getRelease(), component.getRelease());
|
678
|
+
}
|
679
|
+
|
680
|
+
// check component has not already been registered
|
681
|
+
if (getRegistry().getNftIdForAddress(componentAddress).gtz()) {
|
682
|
+
revert ErrorComponentServiceComponentAlreadyRegistered(componentAddress);
|
683
|
+
}
|
684
|
+
}
|
685
|
+
|
686
|
+
|
582
687
|
function _setLocked(InstanceAdmin instanceAdmin, address componentAddress, bool locked) internal {
|
583
688
|
instanceAdmin.setTargetLocked(componentAddress, locked);
|
584
689
|
}
|
@@ -592,11 +697,25 @@ contract ComponentService is
|
|
592
697
|
IInstance instance
|
593
698
|
)
|
594
699
|
{
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
|
700
|
+
IRegistry.ObjectInfo memory info;
|
701
|
+
address instanceAddress;
|
702
|
+
|
703
|
+
if (expectedType != COMPONENT()) {
|
704
|
+
(info, instanceAddress) = ContractLib.getAndVerifyComponent(
|
705
|
+
getRegistry(),
|
706
|
+
msg.sender, // caller
|
707
|
+
expectedType,
|
708
|
+
isActive);
|
709
|
+
} else {
|
710
|
+
(info, instanceAddress) = ContractLib.getAndVerifyAnyComponent(
|
711
|
+
getRegistry(),
|
712
|
+
msg.sender,
|
713
|
+
isActive);
|
714
|
+
}
|
715
|
+
|
716
|
+
// get component nft id and instance
|
717
|
+
componentNftId = info.nftId;
|
718
|
+
instance = IInstance(instanceAddress);
|
600
719
|
}
|
601
720
|
|
602
721
|
|
@@ -2,7 +2,7 @@
|
|
2
2
|
pragma solidity ^0.8.20;
|
3
3
|
|
4
4
|
import {ComponentService} from "./ComponentService.sol";
|
5
|
-
import {
|
5
|
+
import {IVersionable} from "../upgradeability/IVersionable.sol";
|
6
6
|
import {ProxyManager} from "../upgradeability/ProxyManager.sol";
|
7
7
|
|
8
8
|
contract ComponentServiceManager is ProxyManager {
|
@@ -11,18 +11,20 @@ contract ComponentServiceManager is ProxyManager {
|
|
11
11
|
|
12
12
|
/// @dev initializes proxy manager with service implementation
|
13
13
|
constructor(
|
14
|
-
address authority,
|
14
|
+
address authority,
|
15
|
+
address registry,
|
15
16
|
bytes32 salt
|
16
17
|
)
|
17
18
|
{
|
18
19
|
ComponentService svc = new ComponentService();
|
19
|
-
bytes memory data = abi.encode(authority);
|
20
|
-
|
20
|
+
bytes memory data = abi.encode(authority, registry);
|
21
|
+
IVersionable versionable = initialize(
|
22
|
+
registry,
|
21
23
|
address(svc),
|
22
24
|
data,
|
23
25
|
salt);
|
24
26
|
|
25
|
-
_componentService = ComponentService(address(
|
27
|
+
_componentService = ComponentService(address(versionable));
|
26
28
|
}
|
27
29
|
|
28
30
|
//--- view functions ----------------------------------------------------//
|