@etherisc/gif-next 0.0.2-f1b01e0-214 → 0.0.2-f1e6957-384
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 +76 -341
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +100 -32
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +111 -45
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +52 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +367 -126
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +1546 -211
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +2 -2
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +261 -59
- 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 +258 -82
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +97 -14
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +256 -16
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +426 -27
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +52 -27
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +264 -64
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +20 -11
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +368 -139
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +160 -78
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +19 -10
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +228 -15
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +81 -52
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +263 -63
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +109 -68
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +263 -63
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +74 -33
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +263 -63
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +35 -26
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +85 -60
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +263 -63
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +264 -78
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +263 -63
- package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +4 -0
- package/artifacts/contracts/{shared/IKeyValueStore.sol/IKeyValueStore.json → instance/BaseStore.sol/BaseStore.json} +51 -229
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +2 -2
- package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +4 -0
- package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.json +304 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +359 -33
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +297 -3
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +407 -97
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +756 -392
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +231 -75
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +492 -424
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +323 -29
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +100 -42
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +1444 -2133
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +4 -0
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +3427 -0
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +101 -88
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +8 -8
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +2 -2
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +2 -2
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +25 -16
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +277 -60
- 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 +19 -10
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +29 -0
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +19 -10
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +83 -38
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +116 -50
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +37 -36
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +263 -63
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +294 -117
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +144 -58
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +180 -27
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +19 -10
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +220 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +19 -10
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +88 -22
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +324 -65
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +141 -63
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +216 -59
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +113 -43
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +19 -10
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +263 -63
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +142 -102
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +128 -70
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +166 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +50 -10
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +55 -0
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +29 -0
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +19 -10
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +203 -18
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +157 -86
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +508 -18
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +138 -72
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +93 -72
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +120 -50
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +19 -10
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +231 -46
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +101 -43
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +33 -22
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +29 -0
- package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -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 +71 -60
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +537 -300
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +330 -71
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +41 -12
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +96 -38
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +543 -226
- 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 +167 -103
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +459 -26
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +119 -59
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +19 -10
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +169 -174
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +130 -64
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +76 -41
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +2 -2
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +19 -10
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +84 -105
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +19 -10
- 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 +19 -0
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +19 -0
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.json +29 -0
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +19 -10
- 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 +21 -2
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +19 -0
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +29 -0
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +2 -2
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +2 -2
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +2 -2
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1384 -128
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +94 -114
- package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +4 -0
- package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.json +50 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +1472 -185
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +73 -72
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +139 -64
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +293 -149
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +128 -164
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +96 -46
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +1617 -817
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +4 -0
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +309 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +140 -78
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +2 -2
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +64 -19
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +193 -0
- 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 -2
- package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
- package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +6 -6
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
- package/artifacts/contracts/type/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 +39 -218
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +45 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.json +50 -2
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +3 -3
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +2 -2
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.json +10 -0
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +81 -27
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +15 -2
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.json +10 -0
- package/contracts/accounting/AccountingService.sol +15 -3
- package/contracts/accounting/IAccountingService.sol +2 -0
- package/contracts/authorization/AccessAdmin.sol +292 -317
- package/contracts/authorization/AccessAdminLib.sol +517 -22
- package/contracts/authorization/AccessManagerCloneable.sol +0 -18
- package/contracts/authorization/Authorization.sol +64 -239
- package/contracts/authorization/IAccess.sol +23 -14
- package/contracts/authorization/IAccessAdmin.sol +25 -53
- package/contracts/authorization/IAuthorization.sol +3 -57
- package/contracts/authorization/IServiceAuthorization.sol +55 -17
- package/contracts/authorization/ServiceAuthorization.sol +228 -34
- package/contracts/distribution/BasicDistribution.sol +3 -4
- package/contracts/distribution/BasicDistributionAuthorization.sol +11 -4
- package/contracts/distribution/Distribution.sol +9 -8
- package/contracts/distribution/DistributionService.sol +98 -35
- package/contracts/distribution/IDistributionComponent.sol +3 -1
- package/contracts/distribution/IDistributionService.sol +20 -8
- package/contracts/examples/fire/FireProduct.sol +6 -6
- package/contracts/examples/unpermissioned/SimpleProduct.sol +83 -19
- package/contracts/instance/BaseStore.sol +93 -0
- package/contracts/instance/IBaseStore.sol +37 -0
- package/contracts/instance/IInstance.sol +55 -5
- package/contracts/instance/IInstanceService.sol +37 -6
- package/contracts/instance/Instance.sol +103 -56
- package/contracts/instance/InstanceAdmin.sol +151 -294
- package/contracts/instance/InstanceAuthorizationV3.sol +106 -66
- package/contracts/instance/InstanceReader.sol +350 -394
- package/contracts/instance/InstanceService.sol +180 -125
- package/contracts/instance/InstanceStore.sol +153 -128
- package/contracts/instance/ProductStore.sol +290 -0
- package/contracts/instance/RiskSet.sol +10 -2
- package/contracts/instance/TargetNames.sol +10 -0
- package/contracts/instance/base/BalanceStore.sol +4 -6
- package/contracts/instance/base/ObjectLifecycle.sol +2 -6
- package/contracts/instance/module/IComponents.sol +0 -2
- package/contracts/oracle/BasicOracle.sol +2 -3
- package/contracts/oracle/BasicOracleAuthorization.sol +18 -2
- package/contracts/oracle/Oracle.sol +4 -6
- package/contracts/oracle/OracleService.sol +8 -8
- package/contracts/pool/BasicPool.sol +4 -16
- package/contracts/pool/BasicPoolAuthorization.sol +10 -5
- package/contracts/pool/BundleService.sol +34 -43
- package/contracts/pool/IBundleService.sol +14 -13
- package/contracts/pool/IPoolService.sol +7 -2
- package/contracts/pool/Pool.sol +6 -18
- package/contracts/pool/PoolLib.sol +127 -2
- package/contracts/pool/PoolService.sol +40 -181
- package/contracts/product/ApplicationService.sol +64 -11
- package/contracts/product/BasicProduct.sol +2 -3
- package/contracts/product/BasicProductAuthorization.sol +11 -4
- package/contracts/product/ClaimService.sol +99 -105
- package/contracts/product/IApplicationService.sol +21 -2
- package/contracts/product/IClaimService.sol +5 -4
- package/contracts/product/IPolicyService.sol +9 -2
- package/contracts/product/IRiskService.sol +18 -3
- package/contracts/product/PolicyService.sol +40 -59
- package/contracts/product/PolicyServiceLib.sol +79 -5
- package/contracts/product/PricingService.sol +22 -25
- package/contracts/product/Product.sol +40 -16
- package/contracts/product/RiskService.sol +50 -15
- package/contracts/registry/IRegistry.sol +11 -9
- package/contracts/registry/IRelease.sol +6 -3
- package/contracts/registry/Registry.sol +15 -9
- package/contracts/registry/RegistryAdmin.sol +33 -118
- package/contracts/registry/RegistryAuthorization.sol +139 -69
- package/contracts/registry/RegistryService.sol +1 -1
- package/contracts/registry/ReleaseAdmin.sol +52 -106
- package/contracts/registry/ReleaseRegistry.sol +20 -12
- package/contracts/registry/ServiceAuthorizationV3.sol +43 -32
- package/contracts/registry/TokenRegistry.sol +56 -52
- package/contracts/shared/Component.sol +8 -8
- package/contracts/shared/ComponentService.sol +245 -262
- package/contracts/shared/ContractLib.sol +106 -75
- package/contracts/shared/IComponent.sol +1 -1
- package/contracts/shared/IComponentService.sol +12 -13
- package/contracts/shared/INftOwnable.sol +2 -0
- package/contracts/shared/IRegisterable.sol +0 -1
- package/contracts/shared/InstanceLinkedComponent.sol +6 -9
- package/contracts/shared/NftOwnable.sol +3 -1
- package/contracts/shared/PolicyHolder.sol +3 -2
- package/contracts/shared/Service.sol +6 -4
- package/contracts/staking/IStaking.sol +261 -70
- package/contracts/staking/IStakingService.sol +39 -84
- package/contracts/staking/ITargetLimitHandler.sol +17 -0
- package/contracts/staking/Staking.sol +468 -217
- package/contracts/staking/StakingLib.sol +38 -124
- package/contracts/staking/StakingManager.sol +4 -3
- package/contracts/staking/StakingReader.sol +62 -71
- package/contracts/staking/StakingService.sol +42 -185
- package/contracts/staking/StakingServiceManager.sol +1 -0
- package/contracts/staking/StakingStore.sol +1093 -331
- package/contracts/staking/TargetHandler.sol +132 -0
- package/contracts/staking/TargetManagerLib.sol +69 -46
- package/contracts/type/Amount.sol +4 -0
- package/contracts/type/Blocknumber.sol +17 -22
- package/contracts/type/ChainId.sol +101 -0
- package/contracts/type/NftId.sol +3 -3
- package/contracts/type/ObjectType.sol +16 -3
- package/contracts/type/RoleId.sol +57 -59
- package/contracts/type/Seconds.sol +19 -0
- package/contracts/type/String.sol +12 -0
- package/contracts/type/Timestamp.sol +4 -2
- package/contracts/type/UFixed.sol +1 -0
- package/contracts/upgradeability/IVersionable.sol +3 -0
- package/contracts/upgradeability/ProxyManager.sol +26 -12
- package/contracts/upgradeability/UpgradableProxyWithAdmin.sol +12 -2
- package/contracts/upgradeability/Versionable.sol +6 -3
- package/package.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.dbg.json +0 -4
- package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.json +0 -24
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +0 -4
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +0 -485
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +0 -538
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +0 -4
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +0 -205
- package/contracts/shared/ComponentVerifyingService.sol +0 -128
- package/contracts/shared/IKeyValueStore.sol +0 -54
- package/contracts/shared/KeyValueStore.sol +0 -131
- package/contracts/staking/StakingLifecycle.sol +0 -23
| @@ -3,41 +3,62 @@ pragma solidity ^0.8.20; | |
| 3 3 |  | 
| 4 4 | 
             
            import {AccessManagedUpgradeable} from "@openzeppelin/contracts-upgradeable/access/manager/AccessManagedUpgradeable.sol";
         | 
| 5 5 |  | 
| 6 | 
            +
            import {IBundle} from "./module/IBundle.sol";
         | 
| 7 | 
            +
            import {IComponents} from "./module/IComponents.sol";
         | 
| 8 | 
            +
            import {IDistribution} from "./module/IDistribution.sol";
         | 
| 9 | 
            +
            import {IInstance} from "./IInstance.sol";
         | 
| 10 | 
            +
            import {IOracle} from "../oracle/IOracle.sol";
         | 
| 11 | 
            +
             | 
| 6 12 | 
             
            import {Amount} from "../type/Amount.sol";
         | 
| 13 | 
            +
            import {BaseStore} from "./BaseStore.sol";
         | 
| 14 | 
            +
            import {Blocknumber} from "../type/Blocknumber.sol";
         | 
| 7 15 | 
             
            import {Key32} from "../type/Key32.sol";
         | 
| 8 16 | 
             
            import {NftId} from "../type/NftId.sol";
         | 
| 9 17 | 
             
            import {ClaimId} from "../type/ClaimId.sol";
         | 
| 10 | 
            -
            import {ObjectType, BUNDLE,  | 
| 18 | 
            +
            import {ObjectType, BUNDLE, POOL, COMPONENT, DISTRIBUTOR} from "../type/ObjectType.sol";
         | 
| 11 19 | 
             
            import {RequestId} from "../type/RequestId.sol";
         | 
| 12 | 
            -
            import { | 
| 13 | 
            -
            import {StateId, KEEP_STATE} from "../type/StateId.sol";
         | 
| 20 | 
            +
            import {StateId} from "../type/StateId.sol";
         | 
| 14 21 | 
             
            import {ReferralId} from "../type/Referral.sol";
         | 
| 15 22 | 
             
            import {DistributorType} from "../type/DistributorType.sol";
         | 
| 16 23 | 
             
            import {PayoutId} from "../type/PayoutId.sol";
         | 
| 17 | 
            -
             | 
| 18 24 | 
             
            import {BalanceStore} from "./base/BalanceStore.sol";
         | 
| 19 | 
            -
            import {IInstance} from "./IInstance.sol";
         | 
| 20 | 
            -
            import {KeyValueStore} from "../shared/KeyValueStore.sol";
         | 
| 21 25 | 
             
            import {ObjectCounter} from "./base/ObjectCounter.sol";
         | 
| 22 | 
            -
             | 
| 23 | 
            -
            import {IBundle} from "./module/IBundle.sol";
         | 
| 24 | 
            -
            import {IComponents} from "./module/IComponents.sol";
         | 
| 25 | 
            -
            import {IDistribution} from "./module/IDistribution.sol";
         | 
| 26 | 
            -
            import {IPolicy} from "./module/IPolicy.sol";
         | 
| 27 | 
            -
            import {IOracle} from "../oracle/IOracle.sol";
         | 
| 28 | 
            -
            import {IRisk} from "./module/IRisk.sol";
         | 
| 29 | 
            -
             | 
| 30 26 | 
             
            import {ObjectLifecycle} from "./base/ObjectLifecycle.sol";
         | 
| 31 27 |  | 
| 32 28 |  | 
| 33 29 | 
             
            contract InstanceStore is
         | 
| 34 30 | 
             
                AccessManagedUpgradeable, 
         | 
| 35 31 | 
             
                BalanceStore,
         | 
| 36 | 
            -
                KeyValueStore,
         | 
| 37 32 | 
             
                ObjectCounter,
         | 
| 38 | 
            -
                ObjectLifecycle
         | 
| 33 | 
            +
                ObjectLifecycle,
         | 
| 34 | 
            +
                BaseStore
         | 
| 39 35 | 
             
            {
         | 
| 40 36 |  | 
| 37 | 
            +
                event LogProductStoreComponentInfoCreated(NftId componentNftId, StateId state, address createdby, address txOrigin);
         | 
| 38 | 
            +
                event LogProductStoreComponentInfoUpdated(NftId componentNftId, StateId oldState, StateId newState, address updatedBy, address txOrigin, Blocknumber lastUpdatedIn);
         | 
| 39 | 
            +
                event LogProductStorePoolInfoCreated(NftId poolNftId, StateId state, address createdBy, address txOrigin);
         | 
| 40 | 
            +
                event LogProductStorePoolInfoUpdated(NftId poolNftId, StateId oldState, StateId newState, address updatedBy, address txOrigin, Blocknumber lastUpdatedIn);
         | 
| 41 | 
            +
                event LogProductStoreDistributorTypeInfoCreated(DistributorType distributorType, StateId state, address createdBy, address txOrigin);
         | 
| 42 | 
            +
                event LogProductStoreDistributorTypeInfoUpdated(DistributorType distributorType, StateId oldState, StateId newState, address updatedBy, address txOrigin, Blocknumber lastUpdatedIn);
         | 
| 43 | 
            +
                event LogProductStoreDistributorInfoCreated(NftId distributorNftId, StateId state, address createdBy, address txOrigin);
         | 
| 44 | 
            +
                event LogProductStoreDistributorInfoUpdated(NftId distributorNftId, StateId oldState, StateId newState, address updatedBy, address txOrigin, Blocknumber lastUpdatedIn);
         | 
| 45 | 
            +
                event LogProductStoreReferralInfoCreated(ReferralId referralId, StateId state, address createdBy, address txOrigin);
         | 
| 46 | 
            +
                event LogProductStoreReferralInfoUpdated(ReferralId referralId, StateId oldState, StateId newState, address updatedBy, address txOrigin, Blocknumber lastUpdatedIn);
         | 
| 47 | 
            +
                event LogProductStoreBundleInfoCreated(NftId bundleNftId, StateId state, address createdBy, address txOrigin);
         | 
| 48 | 
            +
                event LogProductStoreBundleInfoUpdated(NftId bundleNftId, StateId oldState, StateId newState, address updatedBy, address txOrigin, Blocknumber lastUpdatedIn);
         | 
| 49 | 
            +
                event LogProductStoreRequestInfoCreated(RequestId requestId, StateId state, address createdBy, address txOrigin);
         | 
| 50 | 
            +
                event LogProductStoreRequestInfoUpdated(RequestId requestId, StateId oldState, StateId newState, address updatedBy, address txOrigin, Blocknumber lastUpdatedIn);
         | 
| 51 | 
            +
             | 
| 52 | 
            +
             | 
| 53 | 
            +
                mapping(Key32 => IComponents.ComponentInfo) private _components;
         | 
| 54 | 
            +
                mapping(Key32 => IComponents.PoolInfo) private _pools;
         | 
| 55 | 
            +
                mapping(Key32 => IDistribution.DistributorTypeInfo) private _distributorTypes;
         | 
| 56 | 
            +
                mapping(Key32 => IDistribution.DistributorInfo) private _distributors;
         | 
| 57 | 
            +
                mapping(Key32 => IDistribution.ReferralInfo) private _referrals;
         | 
| 58 | 
            +
                mapping(Key32 => IBundle.BundleInfo) private _bundles;
         | 
| 59 | 
            +
                mapping(Key32 => IOracle.RequestInfo) private _requests;
         | 
| 60 | 
            +
             | 
| 61 | 
            +
             | 
| 41 62 | 
             
                /// @dev This initializer needs to be called from the instance itself.
         | 
| 42 63 | 
             
                function initialize()
         | 
| 43 64 | 
             
                    public 
         | 
| @@ -61,7 +82,12 @@ contract InstanceStore is | |
| 61 82 | 
             
                    restricted()
         | 
| 62 83 | 
             
                {
         | 
| 63 84 | 
             
                    _registerBalanceTarget(componentNftId);
         | 
| 64 | 
            -
                    _create(_toNftKey32(componentNftId, COMPONENT()), abi.encode(componentInfo));
         | 
| 85 | 
            +
                    // _create(_toNftKey32(componentNftId, COMPONENT()), abi.encode(componentInfo));
         | 
| 86 | 
            +
                    Key32 key = _toNftKey32(componentNftId, COMPONENT());
         | 
| 87 | 
            +
                    _createMetadata(key);
         | 
| 88 | 
            +
                    _components[key] = componentInfo;
         | 
| 89 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 90 | 
            +
                    emit LogProductStoreComponentInfoCreated(componentNftId, getState(key), msg.sender, tx.origin);
         | 
| 65 91 | 
             
                }
         | 
| 66 92 |  | 
| 67 93 | 
             
                function updateComponent(
         | 
| @@ -72,28 +98,16 @@ contract InstanceStore is | |
| 72 98 | 
             
                    external 
         | 
| 73 99 | 
             
                    restricted()
         | 
| 74 100 | 
             
                {
         | 
| 75 | 
            -
                    _update(_toNftKey32(componentNftId, COMPONENT()), abi.encode(componentInfo), newState);
         | 
| 76 | 
            -
             | 
| 77 | 
            -
             | 
| 78 | 
            -
             | 
| 79 | 
            -
             | 
| 80 | 
            -
             | 
| 81 | 
            -
                    _create(_toNftKey32(productNftId, PRODUCT()), abi.encode(info));
         | 
| 101 | 
            +
                    // _update(_toNftKey32(componentNftId, COMPONENT()), abi.encode(componentInfo), newState);
         | 
| 102 | 
            +
                    Key32 key = _toNftKey32(componentNftId, COMPONENT());
         | 
| 103 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 104 | 
            +
                    _components[key] = componentInfo;
         | 
| 105 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 106 | 
            +
                    emit LogProductStoreComponentInfoUpdated(componentNftId, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 82 107 | 
             
                }
         | 
| 83 108 |  | 
| 84 | 
            -
                function  | 
| 85 | 
            -
                     | 
| 86 | 
            -
                }
         | 
| 87 | 
            -
             | 
| 88 | 
            -
             | 
| 89 | 
            -
                //--- Fee -----------------------------------------------------------//
         | 
| 90 | 
            -
                function createFee(NftId productNftId, IComponents.FeeInfo memory info) external restricted() {
         | 
| 91 | 
            -
                    _create(_toNftKey32(productNftId, FEE()), abi.encode(info));
         | 
| 92 | 
            -
                }
         | 
| 93 | 
            -
             | 
| 94 | 
            -
                // Fee only has one state, so no change change possible
         | 
| 95 | 
            -
                function updateFee(NftId productNftId, IComponents.FeeInfo memory info) external restricted() {
         | 
| 96 | 
            -
                    _update(_toNftKey32(productNftId, FEE()), abi.encode(info), KEEP_STATE());
         | 
| 109 | 
            +
                function getComponentInfo(NftId componentNftId) external view returns (IComponents.ComponentInfo memory componentInfo) {
         | 
| 110 | 
            +
                    return _components[_toNftKey32(componentNftId, COMPONENT())];
         | 
| 97 111 | 
             
                }
         | 
| 98 112 |  | 
| 99 113 | 
             
                //--- Pool --------------------------------------------------------------//
         | 
| @@ -105,156 +119,167 @@ contract InstanceStore is | |
| 105 119 | 
             
                    external 
         | 
| 106 120 | 
             
                    restricted()
         | 
| 107 121 | 
             
                {
         | 
| 108 | 
            -
                     | 
| 122 | 
            +
                    Key32 key = _toNftKey32(poolNftId, POOL());
         | 
| 123 | 
            +
                    _createMetadata(key);
         | 
| 124 | 
            +
                    _pools[key] = info;
         | 
| 125 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 126 | 
            +
                    emit LogProductStorePoolInfoCreated(poolNftId, getState(key), msg.sender, tx.origin);
         | 
| 109 127 | 
             
                }
         | 
| 110 128 |  | 
| 111 129 | 
             
                function updatePool(NftId poolNftId, IComponents.PoolInfo memory info, StateId newState) external restricted() {
         | 
| 112 | 
            -
                     | 
| 130 | 
            +
                    Key32 key = _toNftKey32(poolNftId, POOL());
         | 
| 131 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 132 | 
            +
                    _pools[key] = info;
         | 
| 133 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 134 | 
            +
                    emit LogProductStorePoolInfoUpdated(poolNftId, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 135 | 
            +
                }
         | 
| 136 | 
            +
             | 
| 137 | 
            +
                function getPoolInfo(NftId poolNftId) external view returns (IComponents.PoolInfo memory info) {
         | 
| 138 | 
            +
                    return _pools[_toNftKey32(poolNftId, POOL())];
         | 
| 113 139 | 
             
                }
         | 
| 114 140 |  | 
| 115 141 | 
             
                //--- DistributorType ---------------------------------------------------//
         | 
| 116 142 | 
             
                function createDistributorType(DistributorType distributorType, IDistribution.DistributorTypeInfo memory info) external restricted() {
         | 
| 117 | 
            -
                     | 
| 143 | 
            +
                    Key32 key = distributorType.toKey32();
         | 
| 144 | 
            +
                    _createMetadata(key);
         | 
| 145 | 
            +
                    _distributorTypes[key] = info;
         | 
| 146 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 147 | 
            +
                    emit LogProductStoreDistributorTypeInfoCreated(distributorType, getState(key), msg.sender, tx.origin);
         | 
| 118 148 | 
             
                }
         | 
| 119 149 |  | 
| 120 150 | 
             
                function updateDistributorType(DistributorType distributorType, IDistribution.DistributorTypeInfo memory info, StateId newState) external restricted() {
         | 
| 121 | 
            -
                     | 
| 151 | 
            +
                    Key32 key = distributorType.toKey32();
         | 
| 152 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 153 | 
            +
                    _distributorTypes[key] = info;
         | 
| 154 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 155 | 
            +
                    emit LogProductStoreDistributorTypeInfoUpdated(distributorType, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 122 156 | 
             
                }
         | 
| 123 157 |  | 
| 124 158 | 
             
                function updateDistributorTypeState(DistributorType distributorType, StateId newState) external restricted() {
         | 
| 125 | 
            -
                     | 
| 159 | 
            +
                    Key32 key = distributorType.toKey32();
         | 
| 160 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 161 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 162 | 
            +
                    emit LogProductStoreDistributorTypeInfoUpdated(distributorType, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 163 | 
            +
                }
         | 
| 164 | 
            +
             | 
| 165 | 
            +
                function getDistributorTypeInfo(DistributorType distributorType) external view returns (IDistribution.DistributorTypeInfo memory info) {
         | 
| 166 | 
            +
                    return _distributorTypes[distributorType.toKey32()];
         | 
| 126 167 | 
             
                }
         | 
| 127 168 |  | 
| 128 169 | 
             
                //--- Distributor -------------------------------------------------------//
         | 
| 129 170 | 
             
                function createDistributor(NftId distributorNftId, IDistribution.DistributorInfo memory info) external restricted() {
         | 
| 130 171 | 
             
                    _registerBalanceTarget(distributorNftId);
         | 
| 131 | 
            -
                     | 
| 172 | 
            +
                    Key32 key = _toNftKey32(distributorNftId, DISTRIBUTOR());
         | 
| 173 | 
            +
                    _createMetadata(key);
         | 
| 174 | 
            +
                    _distributors[key] = info;
         | 
| 175 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 176 | 
            +
                    emit LogProductStoreDistributorInfoCreated(distributorNftId, getState(key), msg.sender, tx.origin);
         | 
| 132 177 | 
             
                }
         | 
| 133 178 |  | 
| 134 179 | 
             
                function updateDistributor(NftId distributorNftId, IDistribution.DistributorInfo memory info, StateId newState) external restricted() {
         | 
| 135 | 
            -
                     | 
| 180 | 
            +
                    Key32 key = _toNftKey32(distributorNftId, DISTRIBUTOR());
         | 
| 181 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 182 | 
            +
                    _distributors[key] = info;
         | 
| 183 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 184 | 
            +
                    emit LogProductStoreDistributorInfoUpdated(distributorNftId, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 136 185 | 
             
                }
         | 
| 137 186 |  | 
| 138 187 | 
             
                function updateDistributorState(NftId distributorNftId, StateId newState) external restricted() {
         | 
| 139 | 
            -
                     | 
| 188 | 
            +
                    Key32 key = _toNftKey32(distributorNftId, DISTRIBUTOR());
         | 
| 189 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 190 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 191 | 
            +
                    emit LogProductStoreDistributorInfoUpdated(distributorNftId, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 192 | 
            +
                }
         | 
| 193 | 
            +
             | 
| 194 | 
            +
                function getDistributorInfo(NftId distributorNftId) external view returns (IDistribution.DistributorInfo memory info) {
         | 
| 195 | 
            +
                    return _distributors[_toNftKey32(distributorNftId, DISTRIBUTOR())];
         | 
| 140 196 | 
             
                }
         | 
| 141 197 |  | 
| 142 198 | 
             
                //--- Referral ----------------------------------------------------------//
         | 
| 143 199 | 
             
                function createReferral(ReferralId referralId, IDistribution.ReferralInfo memory referralInfo) external restricted() {
         | 
| 144 | 
            -
                     | 
| 200 | 
            +
                    Key32 key = referralId.toKey32();
         | 
| 201 | 
            +
                    _createMetadata(key);
         | 
| 202 | 
            +
                    _referrals[key] = referralInfo;
         | 
| 203 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 204 | 
            +
                    emit LogProductStoreReferralInfoCreated(referralId, getState(key), msg.sender, tx.origin);
         | 
| 145 205 | 
             
                }
         | 
| 146 206 |  | 
| 147 207 | 
             
                function updateReferral(ReferralId referralId, IDistribution.ReferralInfo memory referralInfo, StateId newState) external restricted() {
         | 
| 148 | 
            -
                     | 
| 208 | 
            +
                    Key32 key = referralId.toKey32();
         | 
| 209 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 210 | 
            +
                    _referrals[key] = referralInfo;
         | 
| 211 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 212 | 
            +
                    emit LogProductStoreReferralInfoUpdated(referralId, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 149 213 | 
             
                }
         | 
| 150 214 |  | 
| 151 215 | 
             
                function updateReferralState(ReferralId referralId, StateId newState) external restricted() {
         | 
| 152 | 
            -
                     | 
| 216 | 
            +
                    Key32 key = referralId.toKey32();
         | 
| 217 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 218 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 219 | 
            +
                    emit LogProductStoreReferralInfoUpdated(referralId, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 220 | 
            +
                }
         | 
| 221 | 
            +
             | 
| 222 | 
            +
                function getReferralInfo(ReferralId referralId) external view returns (IDistribution.ReferralInfo memory referralInfo) {
         | 
| 223 | 
            +
                    return _referrals[referralId.toKey32()];
         | 
| 153 224 | 
             
                }
         | 
| 154 225 |  | 
| 155 226 | 
             
                //--- Bundle ------------------------------------------------------------//
         | 
| 156 227 | 
             
                function createBundle(NftId bundleNftId, IBundle.BundleInfo memory bundle) external restricted() {
         | 
| 157 228 | 
             
                    _registerBalanceTarget(bundleNftId);
         | 
| 158 | 
            -
                     | 
| 229 | 
            +
                    Key32 key = _toNftKey32(bundleNftId, BUNDLE());
         | 
| 230 | 
            +
                    _createMetadata(key);
         | 
| 231 | 
            +
                    _bundles[key] = bundle;
         | 
| 232 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 233 | 
            +
                    emit LogProductStoreBundleInfoCreated(bundleNftId, getState(key), msg.sender, tx.origin);
         | 
| 159 234 | 
             
                }
         | 
| 160 235 |  | 
| 161 236 | 
             
                function updateBundle(NftId bundleNftId, IBundle.BundleInfo memory bundle, StateId newState) external restricted() {
         | 
| 162 | 
            -
                     | 
| 237 | 
            +
                    Key32 key = _toNftKey32(bundleNftId, BUNDLE());
         | 
| 238 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 239 | 
            +
                    _bundles[key] = bundle;
         | 
| 240 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 241 | 
            +
                    emit LogProductStoreBundleInfoUpdated(bundleNftId, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 163 242 | 
             
                }
         | 
| 164 243 |  | 
| 165 244 | 
             
                function updateBundleState(NftId bundleNftId, StateId newState) external restricted() {
         | 
| 166 | 
            -
                     | 
| 167 | 
            -
             | 
| 168 | 
            -
             | 
| 169 | 
            -
             | 
| 170 | 
            -
                function createRisk(RiskId riskId, IRisk.RiskInfo memory risk) external restricted() {
         | 
| 171 | 
            -
                    _create(riskId.toKey32(), abi.encode(risk));
         | 
| 245 | 
            +
                    Key32 key = _toNftKey32(bundleNftId, BUNDLE());
         | 
| 246 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 247 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 248 | 
            +
                    emit LogProductStoreBundleInfoUpdated(bundleNftId, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 172 249 | 
             
                }
         | 
| 173 250 |  | 
| 174 | 
            -
                function  | 
| 175 | 
            -
                     | 
| 251 | 
            +
                function getBundleInfo(NftId bundleNftId) external view returns (IBundle.BundleInfo memory bundle) {
         | 
| 252 | 
            +
                    return _bundles[_toNftKey32(bundleNftId, BUNDLE())];
         | 
| 176 253 | 
             
                }
         | 
| 177 | 
            -
             | 
| 178 | 
            -
                function updateRiskState(RiskId riskId, StateId newState) external restricted() {
         | 
| 179 | 
            -
                    _updateState(riskId.toKey32(), newState);
         | 
| 180 | 
            -
                }
         | 
| 181 | 
            -
             | 
| 182 | 
            -
                //--- Application (Policy) ----------------------------------------------//
         | 
| 183 | 
            -
                function createApplication(NftId applicationNftId, IPolicy.PolicyInfo memory policy) external restricted() {
         | 
| 184 | 
            -
                    _registerBalanceTarget(applicationNftId);
         | 
| 185 | 
            -
                    _create(_toNftKey32(applicationNftId, POLICY()), abi.encode(policy));
         | 
| 186 | 
            -
                }
         | 
| 187 | 
            -
             | 
| 188 | 
            -
                function updateApplication(NftId applicationNftId, IPolicy.PolicyInfo memory policy, StateId newState) external restricted() {
         | 
| 189 | 
            -
                    _update(_toNftKey32(applicationNftId, POLICY()), abi.encode(policy), newState);
         | 
| 190 | 
            -
                }
         | 
| 191 | 
            -
             | 
| 192 | 
            -
                function updateApplicationState(NftId applicationNftId, StateId newState) external restricted() {
         | 
| 193 | 
            -
                    _updateState(_toNftKey32(applicationNftId, POLICY()), newState);
         | 
| 194 | 
            -
                }
         | 
| 195 | 
            -
             | 
| 196 | 
            -
                //--- Policy ------------------------------------------------------------//
         | 
| 197 | 
            -
                function updatePolicy(NftId policyNftId, IPolicy.PolicyInfo memory policy, StateId newState) external restricted() {
         | 
| 198 | 
            -
                    _update(_toNftKey32(policyNftId, POLICY()), abi.encode(policy), newState);
         | 
| 199 | 
            -
                }
         | 
| 200 | 
            -
             | 
| 201 | 
            -
                function updatePolicyClaims(NftId policyNftId, IPolicy.PolicyInfo memory policy, StateId newState) external restricted() {
         | 
| 202 | 
            -
                    _update(_toNftKey32(policyNftId, POLICY()), abi.encode(policy), newState);
         | 
| 203 | 
            -
                }
         | 
| 204 | 
            -
             | 
| 205 | 
            -
                function updatePolicyState(NftId policyNftId, StateId newState) external restricted() {
         | 
| 206 | 
            -
                    _updateState(_toNftKey32(policyNftId, POLICY()), newState);
         | 
| 207 | 
            -
                }
         | 
| 208 | 
            -
             | 
| 209 254 |  | 
| 210 | 
            -
                //--- Premium (Policy) ----------------------------------------------//
         | 
| 211 | 
            -
                function createPremium(NftId policyNftId, IPolicy.PremiumInfo memory premium) external restricted() {
         | 
| 212 | 
            -
                    _create(_toNftKey32(policyNftId, PREMIUM()), abi.encode(premium));
         | 
| 213 | 
            -
                }
         | 
| 214 | 
            -
             | 
| 215 | 
            -
                function updatePremiumState(NftId policyNftId, StateId newState) external restricted() {
         | 
| 216 | 
            -
                    _updateState(_toNftKey32(policyNftId, PREMIUM()), newState);
         | 
| 217 | 
            -
                }
         | 
| 218 | 
            -
             | 
| 219 | 
            -
                //--- Claim -------------------------------------------------------------//
         | 
| 220 | 
            -
                function createClaim(NftId policyNftId, ClaimId claimId, IPolicy.ClaimInfo memory claim) external restricted() {
         | 
| 221 | 
            -
                    _create(_toClaimKey32(policyNftId, claimId), abi.encode(claim));
         | 
| 222 | 
            -
                }
         | 
| 223 | 
            -
             | 
| 224 | 
            -
                function updateClaim(NftId policyNftId, ClaimId claimId, IPolicy.ClaimInfo memory claim, StateId newState) external restricted() {
         | 
| 225 | 
            -
                    _update(_toClaimKey32(policyNftId, claimId), abi.encode(claim), newState);
         | 
| 226 | 
            -
                }
         | 
| 227 | 
            -
             | 
| 228 | 
            -
                function updateClaimState(NftId policyNftId, ClaimId claimId, StateId newState) external restricted() {
         | 
| 229 | 
            -
                    _updateState(_toClaimKey32(policyNftId, claimId), newState);
         | 
| 230 | 
            -
                }
         | 
| 231 | 
            -
             | 
| 232 | 
            -
                //--- Payout ------------------------------------------------------------//
         | 
| 233 | 
            -
                function createPayout(NftId policyNftId, PayoutId payoutId, IPolicy.PayoutInfo memory payout) external restricted() {
         | 
| 234 | 
            -
                    _create(_toPayoutKey32(policyNftId, payoutId), abi.encode(payout));
         | 
| 235 | 
            -
                }
         | 
| 236 | 
            -
             | 
| 237 | 
            -
                function updatePayout(NftId policyNftId, PayoutId payoutId, IPolicy.PayoutInfo memory payout, StateId newState) external restricted() {
         | 
| 238 | 
            -
                    _update(_toPayoutKey32(policyNftId, payoutId), abi.encode(payout), newState);
         | 
| 239 | 
            -
                }
         | 
| 240 | 
            -
             | 
| 241 | 
            -
                function updatePayoutState(NftId policyNftId, PayoutId payoutId, StateId newState) external restricted() {
         | 
| 242 | 
            -
                    _updateState(_toPayoutKey32(policyNftId, payoutId), newState);
         | 
| 243 | 
            -
                }
         | 
| 244 | 
            -
             | 
| 245 255 | 
             
                //--- Request -----------------------------------------------------------//
         | 
| 246 256 |  | 
| 247 257 | 
             
                function createRequest(IOracle.RequestInfo memory request) external restricted() returns (RequestId requestId) {
         | 
| 248 258 | 
             
                    requestId = _createNextRequestId();
         | 
| 249 | 
            -
                     | 
| 259 | 
            +
                    Key32 key = requestId.toKey32();
         | 
| 260 | 
            +
                    _createMetadata(key);
         | 
| 261 | 
            +
                    _requests[key] = request;
         | 
| 262 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 263 | 
            +
                    emit LogProductStoreRequestInfoCreated(requestId, getState(key), msg.sender, tx.origin);
         | 
| 250 264 | 
             
                }
         | 
| 251 265 |  | 
| 252 266 | 
             
                function updateRequest(RequestId requestId, IOracle.RequestInfo memory request, StateId newState) external restricted() {
         | 
| 253 | 
            -
                     | 
| 267 | 
            +
                    Key32 key = requestId.toKey32();
         | 
| 268 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 269 | 
            +
                    _requests[key] = request;
         | 
| 270 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 271 | 
            +
                    emit LogProductStoreRequestInfoUpdated(requestId, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 254 272 | 
             
                }
         | 
| 255 273 |  | 
| 256 274 | 
             
                function updateRequestState(RequestId requestId, StateId newState) external restricted() {
         | 
| 257 | 
            -
                     | 
| 275 | 
            +
                    Key32 key = requestId.toKey32();
         | 
| 276 | 
            +
                    (Blocknumber updatedIn, StateId oldState) = _updateState(key, newState);
         | 
| 277 | 
            +
                    // solhint-disable-next-line avoid-tx-origin
         | 
| 278 | 
            +
                    emit LogProductStoreRequestInfoUpdated(requestId, oldState, newState, msg.sender, tx.origin, updatedIn);
         | 
| 279 | 
            +
                }
         | 
| 280 | 
            +
             | 
| 281 | 
            +
                function getRequestInfo(RequestId requestId) external view returns (IOracle.RequestInfo memory request) {
         | 
| 282 | 
            +
                    return _requests[requestId.toKey32()];
         | 
| 258 283 | 
             
                }
         | 
| 259 284 |  | 
| 260 285 | 
             
                //--- balance and fee management functions ------------------------------//
         |