@etherisc/gif-next 3.0.0-2e16ebd-614 → 3.0.0-303db9f-884
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 +115 -113
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +46 -91
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +70 -105
- 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 +10 -20
- 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 +75 -220
- 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 +57 -166
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +224 -198
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +150 -140
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +56 -178
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +117 -71
- 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 +104 -241
- 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 +135 -277
- 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 +1233 -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 +102 -253
- 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 +175 -224
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +120 -252
- 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 +114 -246
- 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 +54 -49
- 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 +32 -71
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +131 -83
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +62 -138
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +151 -185
- 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 +305 -77
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +180 -140
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +112 -104
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +82 -32
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +68 -18
- package/artifacts/contracts/instance/RequestSet.sol/RequestSet.dbg.json +4 -0
- package/artifacts/contracts/instance/RequestSet.sol/RequestSet.json +466 -0
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +58 -53
- 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 +8 -3
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +38 -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 +150 -193
- 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 +130 -150
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +83 -80
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +136 -143
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +148 -149
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +129 -111
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +73 -163
- 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 +129 -176
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +139 -129
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +44 -71
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +71 -174
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +98 -94
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +73 -163
- 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 +177 -233
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +130 -140
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +63 -138
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +112 -110
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +57 -147
- 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 +115 -182
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +138 -132
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +32 -71
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +32 -71
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +76 -82
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +43 -82
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +56 -159
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +36 -75
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +139 -173
- 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 +128 -122
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +94 -161
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +122 -116
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +57 -147
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +63 -146
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +107 -109
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +62 -155
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +216 -202
- 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 +106 -314
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +146 -179
- 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 +244 -285
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +110 -115
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +154 -175
- 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 +208 -140
- 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 +29 -13
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +39 -159
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +536 -164
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +141 -115
- 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 +38 -171
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +442 -82
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +56 -159
- 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 +28 -1
- 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 +25 -77
- 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 +32 -71
- 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 +57 -147
- 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 +34 -15
- 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 +24 -76
- 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 +31 -70
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +29 -69
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +17 -57
- 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 +81 -176
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +41 -280
- 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 +134 -245
- 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 +124 -112
- 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 +70 -337
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +111 -105
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +204 -212
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +19 -32
- 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 +23 -4
- 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 +86 -63
- 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 +24 -47
- 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 +3 -3
- 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 +25 -27
- package/contracts/distribution/DistributionServiceManager.sol +6 -4
- package/contracts/distribution/IDistributionComponent.sol +0 -2
- package/contracts/distribution/IDistributionService.sol +4 -3
- 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 +129 -0
- package/contracts/examples/flight/FlightOracleAuthorization.sol +56 -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/IBaseStore.sol +8 -0
- package/contracts/instance/IInstance.sol +4 -1
- package/contracts/instance/IInstanceService.sol +6 -0
- package/contracts/instance/Instance.sol +20 -8
- package/contracts/instance/InstanceAdmin.sol +18 -11
- package/contracts/instance/InstanceAuthorizationV3.sol +17 -5
- package/contracts/instance/InstanceReader.sol +74 -23
- package/contracts/instance/InstanceService.sol +84 -54
- package/contracts/instance/InstanceServiceManager.sol +6 -4
- package/contracts/instance/RequestSet.sol +63 -0
- package/contracts/instance/TargetNames.sol +1 -0
- package/contracts/instance/base/Cloneable.sol +10 -4
- package/contracts/instance/base/ObjectSet.sol +10 -2
- package/contracts/instance/base/ObjectSetHelperLib.sol +5 -1
- package/contracts/oracle/BasicOracle.sol +3 -0
- package/contracts/oracle/BasicOracleAuthorization.sol +1 -3
- package/contracts/oracle/IOracleComponent.sol +10 -0
- package/contracts/oracle/IOracleService.sol +16 -12
- package/contracts/oracle/Oracle.sol +54 -29
- package/contracts/oracle/OracleService.sol +88 -55
- 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 +20 -26
- package/contracts/pool/BundleServiceManager.sol +7 -5
- package/contracts/pool/IBundleService.sol +1 -1
- package/contracts/pool/IPoolService.sol +6 -5
- 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 +34 -10
- package/contracts/product/ClaimServiceManager.sol +7 -5
- package/contracts/product/IPolicyService.sol +2 -1
- 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 +40 -8
- package/contracts/product/RiskServiceManager.sol +6 -4
- package/contracts/registry/ChainNft.sol +1 -1
- package/contracts/registry/IRegistry.sol +14 -20
- 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 +23 -9
- package/contracts/registry/ReleaseRegistry.sol +74 -64
- package/contracts/registry/ServiceAuthorizationV3.sol +3 -4
- package/contracts/registry/TokenRegistry.sol +15 -6
- package/contracts/shared/Component.sol +22 -27
- package/contracts/shared/ComponentService.sol +166 -47
- 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 +36 -0
- package/contracts/shared/IInstanceLinkedComponent.sol +9 -9
- package/contracts/shared/INftOwnable.sol +2 -0
- 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 +1 -4
- package/contracts/staking/IStaking.sol +4 -2
- package/contracts/staking/IStakingService.sol +1 -10
- package/contracts/staking/Staking.sol +34 -28
- 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 +14 -17
- package/contracts/staking/StakingServiceManager.sol +8 -4
- package/contracts/staking/StakingStore.sol +8 -8
- package/contracts/staking/TargetHandler.sol +5 -4
- package/contracts/type/ObjectType.sol +2 -31
- package/contracts/type/Referral.sol +6 -0
- package/contracts/type/RequestId.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
@@ -17,6 +17,14 @@ interface IBaseStore is ILifecycle {
|
|
17
17
|
error ErrorBaseStoreStateZero(Key32 key);
|
18
18
|
error ErrorBaseStoreNotExisting(Key32 key);
|
19
19
|
|
20
|
+
event LogBaseStoreMetadataCreated(
|
21
|
+
Key32 indexed key,
|
22
|
+
ObjectType indexed objectType,
|
23
|
+
StateId indexed state);
|
24
|
+
event LogBaseStoreMetadataUpdated(
|
25
|
+
Key32 indexed key,
|
26
|
+
StateId indexed oldState,
|
27
|
+
StateId indexed newState);
|
20
28
|
|
21
29
|
struct Metadata {
|
22
30
|
// slot 0
|
@@ -12,6 +12,7 @@ import {InstanceReader} from "./InstanceReader.sol";
|
|
12
12
|
import {InstanceStore} from "./InstanceStore.sol";
|
13
13
|
import {NftId} from "../type/NftId.sol";
|
14
14
|
import {ProductStore} from "./ProductStore.sol";
|
15
|
+
import {RequestSet} from "./RequestSet.sol";
|
15
16
|
import {RoleId} from "../type/RoleId.sol";
|
16
17
|
import {Seconds} from "../type/Seconds.sol";
|
17
18
|
import {UFixed} from "../type/UFixed.sol";
|
@@ -58,6 +59,7 @@ interface IInstance is
|
|
58
59
|
ProductStore productStore;
|
59
60
|
BundleSet bundleSet;
|
60
61
|
RiskSet riskSet;
|
62
|
+
RequestSet requestSet;
|
61
63
|
InstanceReader instanceReader;
|
62
64
|
}
|
63
65
|
|
@@ -143,12 +145,13 @@ interface IInstance is
|
|
143
145
|
|
144
146
|
// get products
|
145
147
|
function products() external view returns (uint256 productCount);
|
146
|
-
function
|
148
|
+
function getProduct(uint256 idx) external view returns (NftId productNftId);
|
147
149
|
|
148
150
|
// get supporting contracts
|
149
151
|
function getInstanceReader() external view returns (InstanceReader);
|
150
152
|
function getBundleSet() external view returns (BundleSet);
|
151
153
|
function getRiskSet() external view returns (RiskSet);
|
154
|
+
function getRequestSet() external view returns (RequestSet);
|
152
155
|
function getInstanceAdmin() external view returns (InstanceAdmin);
|
153
156
|
function getInstanceStore() external view returns (InstanceStore);
|
154
157
|
function getProductStore() external view returns (ProductStore);
|
@@ -26,6 +26,7 @@ interface IInstanceService is IService {
|
|
26
26
|
error ErrorInstanceServiceMasterInstanceAdminAlreadySet();
|
27
27
|
error ErrorInstanceServiceMasterBundleSetAlreadySet();
|
28
28
|
error ErrorInstanceServiceMasterRiskSetAlreadySet();
|
29
|
+
error ErrorInstanceServiceMasterRequestSetAlreadySet();
|
29
30
|
error ErrorInstanceServiceInstanceAddressZero();
|
30
31
|
|
31
32
|
error ErrorInstanceServiceMasterInstanceReaderNotSet();
|
@@ -38,15 +39,18 @@ interface IInstanceService is IService {
|
|
38
39
|
error ErrorInstanceServiceInstanceReaderZero();
|
39
40
|
error ErrorInstanceServiceBundleSetZero();
|
40
41
|
error ErrorInstanceServiceRiskSetZero();
|
42
|
+
error ErrorInstanceServiceRequestSetZero();
|
41
43
|
error ErrorInstanceServiceInstanceStoreZero();
|
42
44
|
error ErrorInstanceServiceProductStoreZero();
|
43
45
|
|
44
46
|
error ErrorInstanceServiceInstanceAuthorityMismatch();
|
45
47
|
error ErrorInstanceServiceBundleSetAuthorityMismatch();
|
46
48
|
error ErrorInstanceServiceRiskSetAuthorityMismatch();
|
49
|
+
error ErrorInstanceServiceRequestSetAuthorityMismatch();
|
47
50
|
error ErrorInstanceServiceInstanceReaderInstanceMismatch2();
|
48
51
|
error ErrorInstanceServiceBundleSetInstanceMismatch();
|
49
52
|
error ErrorInstanceServiceRiskSetInstanceMismatch();
|
53
|
+
error ErrorInstanceServiceRequestSetInstanceMismatch();
|
50
54
|
error ErrorInstanceServiceInstanceStoreAuthorityMismatch();
|
51
55
|
error ErrorInstanceServiceProductStoreAuthorityMismatch();
|
52
56
|
|
@@ -58,6 +62,8 @@ interface IInstanceService is IService {
|
|
58
62
|
|
59
63
|
event LogInstanceServiceInstanceLocked(NftId instanceNftId, bool locked);
|
60
64
|
event LogInstanceServiceInstanceCreated(NftId instanceNftId, address instance);
|
65
|
+
event LogInstanceServiceMasterInstanceRegistered(NftId masterInstanceNftId, address masterInstance, address masterInstanceAdmin, address masterAccessManager,
|
66
|
+
address masterInstanceReader, address masterInstanceBundleSet, address masterInstanceRiskSet, address masterInstanceRequestSet, address masterInstanceStore, address masterProductStore);
|
61
67
|
event LogInstanceServiceMasterInstanceReaderUpgraded(NftId instanceNfId, address newInstanceReader);
|
62
68
|
event LogInstanceServiceInstanceReaderUpgraded(NftId instanceNfId, address newInstanceReader);
|
63
69
|
|
@@ -17,6 +17,7 @@ import {InstanceStore} from "./InstanceStore.sol";
|
|
17
17
|
import {NftId} from "../type/NftId.sol";
|
18
18
|
import {ProductStore} from "./ProductStore.sol";
|
19
19
|
import {Registerable} from "../shared/Registerable.sol";
|
20
|
+
import {RequestSet} from "./RequestSet.sol";
|
20
21
|
import {RoleId} from "../type/RoleId.sol";
|
21
22
|
import {Seconds} from "../type/Seconds.sol";
|
22
23
|
import {UFixed} from "../type/UFixed.sol";
|
@@ -26,6 +27,8 @@ contract Instance is
|
|
26
27
|
IInstance,
|
27
28
|
Registerable
|
28
29
|
{
|
30
|
+
bool private _initialized;
|
31
|
+
|
29
32
|
IComponentService internal _componentService;
|
30
33
|
IInstanceService internal _instanceService;
|
31
34
|
|
@@ -33,6 +36,7 @@ contract Instance is
|
|
33
36
|
InstanceReader internal _instanceReader;
|
34
37
|
BundleSet internal _bundleSet;
|
35
38
|
RiskSet internal _riskSet;
|
39
|
+
RequestSet internal _requestSet;
|
36
40
|
InstanceStore internal _instanceStore;
|
37
41
|
ProductStore internal _productStore;
|
38
42
|
NftId [] internal _products;
|
@@ -57,6 +61,8 @@ contract Instance is
|
|
57
61
|
|
58
62
|
function initialize(
|
59
63
|
InstanceContracts memory instanceContracts,
|
64
|
+
IRegistry registry,
|
65
|
+
VersionPart release,
|
60
66
|
address initialOwner,
|
61
67
|
bool tokenRegistryDisabled // only disable for testing
|
62
68
|
)
|
@@ -70,9 +76,9 @@ contract Instance is
|
|
70
76
|
_instanceAdmin = instanceContracts.instanceAdmin;
|
71
77
|
|
72
78
|
// setup instance object info
|
73
|
-
IRegistry registry = _getRegistry();
|
74
79
|
__Registerable_init({
|
75
80
|
authority: instanceContracts.instanceAdmin.authority(),
|
81
|
+
registry: address(registry),
|
76
82
|
parentNftId: registry.getNftId(),
|
77
83
|
objectType: INSTANCE(),
|
78
84
|
isInterceptor: false,
|
@@ -84,24 +90,26 @@ contract Instance is
|
|
84
90
|
_productStore = instanceContracts.productStore;
|
85
91
|
_bundleSet = instanceContracts.bundleSet;
|
86
92
|
_riskSet = instanceContracts.riskSet;
|
93
|
+
_requestSet = instanceContracts.requestSet;
|
87
94
|
_instanceReader = instanceContracts.instanceReader;
|
88
95
|
|
89
96
|
// initialize instance supporting contracts
|
90
97
|
_instanceStore.initialize();
|
91
98
|
_productStore.initialize();
|
92
|
-
_bundleSet.initialize(instanceContracts.instanceAdmin.authority());
|
93
|
-
_riskSet.initialize(instanceContracts.instanceAdmin.authority());
|
99
|
+
_bundleSet.initialize(instanceContracts.instanceAdmin.authority(), address(registry));
|
100
|
+
_riskSet.initialize(instanceContracts.instanceAdmin.authority(), address(registry));
|
101
|
+
_requestSet.initialize(instanceContracts.instanceAdmin.authority(), address(registry));
|
94
102
|
_instanceReader.initialize();
|
95
103
|
|
96
104
|
_componentService = IComponentService(
|
97
|
-
|
105
|
+
getRegistry().getServiceAddress(
|
98
106
|
COMPONENT(),
|
99
|
-
|
107
|
+
release));
|
100
108
|
|
101
109
|
_instanceService = IInstanceService(
|
102
|
-
|
110
|
+
getRegistry().getServiceAddress(
|
103
111
|
INSTANCE(),
|
104
|
-
|
112
|
+
release));
|
105
113
|
|
106
114
|
_tokenRegistryDisabled = tokenRegistryDisabled;
|
107
115
|
|
@@ -313,7 +321,7 @@ contract Instance is
|
|
313
321
|
return _products.length;
|
314
322
|
}
|
315
323
|
|
316
|
-
function
|
324
|
+
function getProduct(uint256 idx) external view returns (NftId productNftId) {
|
317
325
|
return _products[idx];
|
318
326
|
}
|
319
327
|
|
@@ -329,6 +337,10 @@ contract Instance is
|
|
329
337
|
return _riskSet;
|
330
338
|
}
|
331
339
|
|
340
|
+
function getRequestSet() external view returns (RequestSet) {
|
341
|
+
return _requestSet;
|
342
|
+
}
|
343
|
+
|
332
344
|
function getInstanceAdmin() external view returns (InstanceAdmin) {
|
333
345
|
return _instanceAdmin;
|
334
346
|
}
|
@@ -11,10 +11,9 @@ 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";
|
15
14
|
import {Str} from "../type/String.sol";
|
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
15
|
import {VersionPart} from "../type/Version.sol";
|
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, REQUEST_SET_TARGET_NAME} from "./TargetNames.sol";
|
18
17
|
|
19
18
|
|
20
19
|
contract InstanceAdmin is
|
@@ -27,12 +26,13 @@ contract InstanceAdmin is
|
|
27
26
|
error ErrorInstanceAdminNotComponentOrCustomTarget(address target);
|
28
27
|
|
29
28
|
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 != _registry.getServiceAddress(INSTANCE(), getRelease())) {
|
36
36
|
revert ErrorInstanceAdminNotInstanceService(msg.sender);
|
37
37
|
}
|
38
38
|
_;
|
@@ -43,8 +43,7 @@ contract InstanceAdmin is
|
|
43
43
|
constructor(address accessManager) {
|
44
44
|
initialize(
|
45
45
|
accessManager,
|
46
|
-
"MasterInstanceAdmin"
|
47
|
-
GIF_INITIAL_RELEASE());
|
46
|
+
"MasterInstanceAdmin");
|
48
47
|
}
|
49
48
|
|
50
49
|
|
@@ -52,23 +51,32 @@ contract InstanceAdmin is
|
|
52
51
|
/// Important: Initialization of instance admin is only complete after calling this function.
|
53
52
|
/// Important: The instance MUST be registered and all instance supporting contracts must be wired to this instance.
|
54
53
|
function completeSetup(
|
54
|
+
address registry,
|
55
55
|
address authorization,
|
56
|
+
VersionPart release,
|
56
57
|
address instance
|
57
58
|
)
|
58
59
|
external
|
60
|
+
reinitializer(uint64(release.toInt()))
|
59
61
|
{
|
60
62
|
// checks
|
61
|
-
AccessAdminLib.checkIsRegistered(instance, INSTANCE()
|
63
|
+
AccessAdminLib.checkIsRegistered(registry, instance, INSTANCE());
|
62
64
|
|
63
65
|
// effects
|
66
|
+
AccessManagerCloneable(
|
67
|
+
authority()).completeSetup(
|
68
|
+
registry,
|
69
|
+
release);
|
70
|
+
|
64
71
|
AccessAdminLib.checkAuthorization(
|
65
72
|
address(_authorization),
|
66
73
|
authorization,
|
67
74
|
INSTANCE(), // expectedDomain
|
68
|
-
|
75
|
+
release, // expectedRelease
|
69
76
|
false, // expectServiceAuthorization
|
70
77
|
true); // checkAlreadyInitialized
|
71
78
|
|
79
|
+
_registry = IRegistry(registry);
|
72
80
|
_instance = IInstance(instance);
|
73
81
|
_authorization = IAuthorization(authorization);
|
74
82
|
_customRoleIdNext = 0;
|
@@ -97,7 +105,7 @@ contract InstanceAdmin is
|
|
97
105
|
for(uint256 i = 0; i < serviceDomains.length; i++) {
|
98
106
|
ObjectType serviceDomain = serviceDomains[i];
|
99
107
|
RoleId serviceRoleId = authorization.getServiceRole(serviceDomain);
|
100
|
-
address service =
|
108
|
+
address service = _registry.getServiceAddress(serviceDomain, getRelease());
|
101
109
|
|
102
110
|
_grantRoleToAccount(
|
103
111
|
serviceRoleId,
|
@@ -115,6 +123,7 @@ contract InstanceAdmin is
|
|
115
123
|
_createInstanceTarget(address(_instance.getProductStore()), PRODUCT_STORE_TARGET_NAME);
|
116
124
|
_createInstanceTarget(address(_instance.getBundleSet()), BUNDLE_SET_TARGET_NAME);
|
117
125
|
_createInstanceTarget(address(_instance.getRiskSet()), RISK_SET_TARGET_NAME);
|
126
|
+
_createInstanceTarget(address(_instance.getRequestSet()), REQUEST_SET_TARGET_NAME);
|
118
127
|
}
|
119
128
|
|
120
129
|
|
@@ -122,13 +131,11 @@ contract InstanceAdmin is
|
|
122
131
|
_createTarget(target, name, TargetType.Instance, true);
|
123
132
|
}
|
124
133
|
|
125
|
-
|
126
134
|
/// @dev Initializes the authorization for the specified component.
|
127
135
|
/// Important: The component MUST be registered.
|
128
136
|
function initializeComponentAuthorization(
|
129
137
|
address componentAddress,
|
130
|
-
ObjectType expectedType
|
131
|
-
VersionPart expectedRelease
|
138
|
+
ObjectType expectedType
|
132
139
|
)
|
133
140
|
external
|
134
141
|
restricted()
|
@@ -10,12 +10,11 @@ import {ACCOUNTING, ORACLE, POOL, INSTANCE, COMPONENT, DISTRIBUTION, APPLICATION
|
|
10
10
|
import {BundleSet} from "../instance/BundleSet.sol";
|
11
11
|
import {InstanceAdmin} from "../instance/InstanceAdmin.sol";
|
12
12
|
import {InstanceStore} from "../instance/InstanceStore.sol";
|
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";
|
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, REQUEST_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 {
|
17
|
-
import {RiskSet} from "../instance/RiskSet.sol";
|
18
|
-
import {VersionPartLib} from "../type/Version.sol";
|
16
|
+
import {RequestSet} from "../instance/RequestSet.sol";
|
17
|
+
import {RiskSet} from "../instance/RiskSet.sol";
|
19
18
|
|
20
19
|
|
21
20
|
contract InstanceAuthorizationV3
|
@@ -29,7 +28,7 @@ contract InstanceAuthorizationV3
|
|
29
28
|
Authorization(
|
30
29
|
INSTANCE_TARGET_NAME,
|
31
30
|
INSTANCE(),
|
32
|
-
|
31
|
+
3,
|
33
32
|
COMMIT_HASH,
|
34
33
|
TargetType.Instance,
|
35
34
|
false)
|
@@ -73,6 +72,7 @@ contract InstanceAuthorizationV3
|
|
73
72
|
_addInstanceTarget(PRODUCT_STORE_TARGET_NAME);
|
74
73
|
_addInstanceTarget(BUNDLE_SET_TARGET_NAME);
|
75
74
|
_addInstanceTarget(RISK_SET_TARGET_NAME);
|
75
|
+
_addInstanceTarget(REQUEST_SET_TARGET_NAME);
|
76
76
|
}
|
77
77
|
|
78
78
|
|
@@ -86,6 +86,18 @@ contract InstanceAuthorizationV3
|
|
86
86
|
_setupProductStoreAuthorization();
|
87
87
|
_setupBundleSetAuthorization();
|
88
88
|
_setUpRiskSetAuthorization();
|
89
|
+
_setUpRequestIdSetAuthorization();
|
90
|
+
}
|
91
|
+
|
92
|
+
function _setUpRequestIdSetAuthorization()
|
93
|
+
internal
|
94
|
+
{
|
95
|
+
IAccess.FunctionInfo[] storage functions;
|
96
|
+
|
97
|
+
// authorize oracle service role
|
98
|
+
functions = _authorizeForTarget(REQUEST_SET_TARGET_NAME, getServiceRole(ORACLE()));
|
99
|
+
_authorize(functions, RequestSet.add.selector, "add");
|
100
|
+
_authorize(functions, RequestSet.remove.selector, "remove");
|
89
101
|
}
|
90
102
|
|
91
103
|
|
@@ -28,32 +28,28 @@ 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";
|
32
31
|
import {ReferralId, ReferralStatus, ReferralLib} from "../type/Referral.sol";
|
33
32
|
import {RequestId} from "../type/RequestId.sol";
|
33
|
+
import {RequestSet} from "./RequestSet.sol";
|
34
34
|
import {RiskId} from "../type/RiskId.sol";
|
35
35
|
import {RiskSet} from "./RiskSet.sol";
|
36
36
|
import {RoleId, INSTANCE_OWNER_ROLE} from "../type/RoleId.sol";
|
37
37
|
import {StateId} from "../type/StateId.sol";
|
38
|
+
import {Str, StrLib} from "../type/String.sol";
|
38
39
|
import {TokenHandler} from "../shared/TokenHandler.sol";
|
39
40
|
import {UFixed, UFixedLib} from "../type/UFixed.sol";
|
40
41
|
|
41
42
|
|
42
43
|
/// @dev Central reader contract for a specific instance.
|
43
44
|
/// Provides reading functions for all instance data and related component data.
|
44
|
-
contract InstanceReader
|
45
|
-
RegistryLinked
|
46
|
-
{
|
45
|
+
contract InstanceReader {
|
47
46
|
|
48
47
|
error ErrorInstanceReaderAlreadyInitialized();
|
49
48
|
error ErrorInstanceReaderInstanceAddressZero();
|
50
|
-
|
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
|
49
|
+
|
55
50
|
bool private _initialized = false;
|
56
51
|
|
52
|
+
IRegistry internal _registry;
|
57
53
|
IInstance internal _instance;
|
58
54
|
InstanceAdmin internal _instanceAdmin;
|
59
55
|
|
@@ -61,6 +57,7 @@ contract InstanceReader is
|
|
61
57
|
ProductStore internal _productStore;
|
62
58
|
BundleSet internal _bundleSet;
|
63
59
|
RiskSet internal _riskSet;
|
60
|
+
RequestSet internal _requestSet;
|
64
61
|
IDistributionService internal _distributionService;
|
65
62
|
|
66
63
|
/// @dev This initializer needs to be called from the instance itself.
|
@@ -84,24 +81,28 @@ contract InstanceReader is
|
|
84
81
|
_initialized = true;
|
85
82
|
_instance = IInstance(instanceAddress);
|
86
83
|
_instanceAdmin = _instance.getInstanceAdmin();
|
84
|
+
_registry = _instance.getRegistry();
|
87
85
|
|
88
86
|
_store = _instance.getInstanceStore();
|
89
87
|
_productStore = _instance.getProductStore();
|
90
88
|
_bundleSet = _instance.getBundleSet();
|
91
89
|
_riskSet = _instance.getRiskSet();
|
92
|
-
|
93
|
-
_distributionService = IDistributionService(
|
94
|
-
_getRegistry().getServiceAddress(DISTRIBUTION(), _instance.getRelease()));
|
90
|
+
_requestSet = _instance.getRequestSet();
|
91
|
+
_distributionService = IDistributionService(_registry.getServiceAddress(DISTRIBUTION(), _instance.getRelease()));
|
95
92
|
}
|
96
93
|
|
97
94
|
|
98
95
|
//--- instance functions ---------------------------------------------------------//
|
99
96
|
|
97
|
+
/// @dev Returns the registry this instance is registered in.
|
98
|
+
function getRegistry() public view returns (IRegistry registry) {
|
99
|
+
return _registry;
|
100
|
+
}
|
100
101
|
|
101
102
|
|
102
103
|
/// @dev Returns the instance NFT ID.
|
103
104
|
function getInstanceNftId() public view returns (NftId instanceNftid) {
|
104
|
-
return
|
105
|
+
return _registry.getNftIdForAddress(address(_instance));
|
105
106
|
}
|
106
107
|
|
107
108
|
|
@@ -166,7 +167,9 @@ contract InstanceReader is
|
|
166
167
|
|
167
168
|
|
168
169
|
/// @dev Returns the currently locked amount for the given NFT ID.
|
169
|
-
///
|
170
|
+
/// Locked amounts are only tracked for bundles, not for pool. To get the
|
171
|
+
/// pool locked amount, then locked amounts of the bundles contained in the
|
172
|
+
/// pool must be summed up. The target NFT ID may only a bundle.
|
170
173
|
function getLockedAmount(NftId targetNftId) external view returns (Amount) {
|
171
174
|
return _store.getLockedAmount(targetNftId);
|
172
175
|
}
|
@@ -180,8 +183,8 @@ contract InstanceReader is
|
|
180
183
|
|
181
184
|
|
182
185
|
/// @dev Returns th product NFT ID for the given index.
|
183
|
-
function
|
184
|
-
return _instance.
|
186
|
+
function getProduct(uint256 idx) public view returns (NftId productNftId) {
|
187
|
+
return _instance.getProduct(idx);
|
185
188
|
}
|
186
189
|
|
187
190
|
|
@@ -222,6 +225,12 @@ contract InstanceReader is
|
|
222
225
|
}
|
223
226
|
|
224
227
|
|
228
|
+
/// @dev Returns true if the specified risk exists for the given product NFT ID.
|
229
|
+
function isProductRisk(NftId productNftId, RiskId riskId) public view returns (bool exists) {
|
230
|
+
return _riskSet.hasRisk(productNftId, riskId);
|
231
|
+
}
|
232
|
+
|
233
|
+
|
225
234
|
/// @dev Returns the risk info for the given risk ID.
|
226
235
|
function getRiskInfo(RiskId riskId) public view returns (IRisk.RiskInfo memory info) {
|
227
236
|
return _productStore.getRiskInfo(riskId);
|
@@ -243,10 +252,21 @@ contract InstanceReader is
|
|
243
252
|
|
244
253
|
|
245
254
|
/// @dev Returns the linked policy NFT ID for the given risk ID and index.
|
246
|
-
function
|
255
|
+
function getPolicyForRisk(RiskId riskId, uint256 idx) public view returns (NftId linkedPolicyNftId) {
|
247
256
|
return _riskSet.getLinkedPolicyNftId(riskId, idx);
|
248
257
|
}
|
249
258
|
|
259
|
+
/// @dev Returns the number of linked policies for the given bundle NFT ID.
|
260
|
+
function policiesForBundle(NftId bundleNftId) public view returns (uint256 linkedPolicies) {
|
261
|
+
return _bundleSet.activePolicies(bundleNftId);
|
262
|
+
}
|
263
|
+
|
264
|
+
|
265
|
+
/// @dev Returns the linked policy NFT ID for the given risk ID and index.
|
266
|
+
function getPolicyForBundle(NftId bundleNftId, uint256 idx) public view returns (NftId linkedPolicyNftId) {
|
267
|
+
return _bundleSet.getActivePolicy(bundleNftId, idx);
|
268
|
+
}
|
269
|
+
|
250
270
|
|
251
271
|
/// @dev Returns the info for the given policy NFT ID.
|
252
272
|
function getPolicyInfo(NftId policyNftId) public view returns (IPolicy.PolicyInfo memory info) {
|
@@ -344,6 +364,23 @@ contract InstanceReader is
|
|
344
364
|
return _store.getRequestInfo(requestId);
|
345
365
|
}
|
346
366
|
|
367
|
+
/// @dev Returns the request info for the given oracle request ID.
|
368
|
+
function getRequestState(RequestId requestId) public view returns (StateId state) {
|
369
|
+
return getState(requestId.toKey32());
|
370
|
+
}
|
371
|
+
|
372
|
+
function getActiveRequests(NftId oracleNftId) external view returns(uint256 numberOfRequests) {
|
373
|
+
return _requestSet.activeRequests(oracleNftId);
|
374
|
+
}
|
375
|
+
|
376
|
+
function getActiveRequestAt(NftId oracleNftId, uint256 idx) external view returns(RequestId requestId) {
|
377
|
+
return _requestSet.activeRequestAt(oracleNftId, idx);
|
378
|
+
}
|
379
|
+
|
380
|
+
function isRequestActive(NftId oracleNftId, RequestId requestId) external view returns(bool isActive) {
|
381
|
+
return _requestSet.contains(oracleNftId, requestId);
|
382
|
+
}
|
383
|
+
|
347
384
|
//--- pool functions -----------------------------------------------------------//
|
348
385
|
|
349
386
|
/// @dev Returns the pool info for the given pool NFT ID.
|
@@ -416,7 +453,7 @@ contract InstanceReader is
|
|
416
453
|
return _store.getReferralInfo(referralId);
|
417
454
|
}
|
418
455
|
|
419
|
-
|
456
|
+
|
420
457
|
function getDiscountPercentage(ReferralId referralId)
|
421
458
|
public
|
422
459
|
view
|
@@ -425,7 +462,10 @@ contract InstanceReader is
|
|
425
462
|
ReferralStatus status
|
426
463
|
)
|
427
464
|
{
|
428
|
-
return
|
465
|
+
return IDistributionService(
|
466
|
+
_registry.getServiceAddress(
|
467
|
+
DISTRIBUTION(),
|
468
|
+
_instance.getRelease())).getDiscountPercentage(
|
429
469
|
this, // instance reader
|
430
470
|
referralId);
|
431
471
|
}
|
@@ -444,6 +484,12 @@ contract InstanceReader is
|
|
444
484
|
}
|
445
485
|
|
446
486
|
|
487
|
+
/// @dev Returns the role ID for the given index.
|
488
|
+
function getRoleForName(string memory name) public view returns (RoleId roleId, bool exists) {
|
489
|
+
return _instanceAdmin.getRoleForName(name);
|
490
|
+
}
|
491
|
+
|
492
|
+
|
447
493
|
/// @dev Returns the role ID for the instance owner role.
|
448
494
|
/// This role may be used as a "root" admin role for other custom roles defined for this instance.
|
449
495
|
function getInstanceOwnerRole() public pure returns (RoleId roleId) {
|
@@ -573,13 +619,18 @@ contract InstanceReader is
|
|
573
619
|
}
|
574
620
|
|
575
621
|
|
576
|
-
function
|
577
|
-
return UFixedLib.
|
622
|
+
function toInt(UFixed value) public pure returns (uint256) {
|
623
|
+
return UFixedLib.toInt(value);
|
578
624
|
}
|
579
625
|
|
580
626
|
|
581
|
-
function
|
582
|
-
return
|
627
|
+
function toString(Str str) public pure returns (string memory) {
|
628
|
+
return StrLib.toString(str);
|
629
|
+
}
|
630
|
+
|
631
|
+
|
632
|
+
function toUFixed(uint256 value, int8 exp) public pure returns (UFixed) {
|
633
|
+
return UFixedLib.toUFixed(value, exp);
|
583
634
|
}
|
584
635
|
|
585
636
|
//--- internal functions ----------------------------------------------------//
|