@etherisc/gif-next 3.0.0-ee35efe-784 → 3.0.0-f060b81-534

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.
Files changed (303) hide show
  1. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +2 -2
  3. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +2 -2
  5. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
  6. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  7. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
  8. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  9. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  10. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  11. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  12. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  13. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  14. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  15. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  16. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +2 -2
  17. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  18. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +2 -2
  19. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  20. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  21. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +2 -2
  22. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  23. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +2 -2
  24. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  25. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  26. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
  27. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
  28. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +2 -2
  29. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
  30. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +2 -2
  31. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
  32. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +2 -2
  33. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
  34. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +2 -2
  35. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
  36. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
  37. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +2 -2
  38. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
  39. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.dbg.json +1 -1
  40. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.json +2 -2
  41. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
  42. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +86 -54
  43. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
  44. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +2 -2
  45. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
  46. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +2 -2
  47. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +1 -1
  48. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +2 -2
  49. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +1 -1
  50. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +2 -2
  51. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
  52. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +2 -2
  53. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.dbg.json +1 -1
  54. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.json +2 -2
  55. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
  56. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +1 -1
  57. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
  58. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +2 -2
  59. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
  60. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +2 -2
  61. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
  62. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +18 -101
  63. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
  64. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +2 -2
  65. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
  66. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +2 -2
  67. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
  68. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2 -2
  69. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
  70. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +2 -2
  71. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
  72. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  73. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +2 -2
  74. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
  75. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  76. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +0 -13
  77. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  78. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +0 -26
  79. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  80. package/artifacts/contracts/instance/Instance.sol/Instance.json +12 -30
  81. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  82. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +76 -76
  83. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  84. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +21 -21
  85. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  86. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +2 -2
  87. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  88. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +20 -46
  89. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  90. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +11 -11
  91. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  92. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2 -2
  93. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
  94. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +2 -2
  95. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
  96. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +2 -2
  97. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  98. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  99. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  100. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  101. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  102. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  103. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +2 -2
  104. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
  105. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +2 -38
  106. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  107. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  108. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  109. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  110. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  111. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  112. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  113. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +14 -97
  114. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  115. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +2 -2
  116. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  117. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  118. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +0 -83
  119. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  120. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +0 -77
  121. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  122. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +0 -83
  123. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  124. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +44 -161
  125. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  126. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +23 -43
  127. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  128. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  129. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +2 -2
  130. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  131. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +2 -2
  132. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  133. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +2 -2
  134. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  135. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  136. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  137. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  138. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
  139. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +2 -2
  140. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  141. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +2 -2
  142. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  143. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +2 -2
  144. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  145. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +2 -2
  146. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  147. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +2 -2
  148. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  149. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  150. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +2 -2
  151. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  152. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +36 -36
  153. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  154. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +19 -19
  155. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  156. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  157. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  158. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  159. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  160. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  161. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  162. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +2 -2
  163. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
  164. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +2 -2
  165. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  166. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +2 -2
  167. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  168. package/artifacts/contracts/product/PricingService.sol/PricingService.json +2 -2
  169. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  170. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +2 -2
  171. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  172. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  173. package/artifacts/contracts/product/RiskService.sol/RiskService.json +2 -2
  174. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  175. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +2 -2
  176. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  177. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  178. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  179. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
  180. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  181. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  182. package/artifacts/contracts/registry/Registry.sol/Registry.json +2 -2
  183. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  184. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +2 -2
  185. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
  186. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +2 -2
  187. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  188. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +2 -2
  189. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  190. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +2 -2
  191. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
  192. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  193. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  194. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +2 -2
  195. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  196. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +19 -19
  197. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  198. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
  199. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  200. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  201. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +2 -2
  202. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  203. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +2 -2
  204. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
  205. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
  206. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
  207. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
  208. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +1 -1
  209. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  210. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  211. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  212. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  213. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  214. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  215. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  216. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  217. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  218. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  219. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  220. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  221. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  222. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  223. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  224. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  225. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  226. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  227. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  228. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
  229. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
  230. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  231. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  232. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +1 -1
  233. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  234. package/artifacts/contracts/staking/Staking.sol/Staking.json +2 -2
  235. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
  236. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +2 -2
  237. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  238. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +2 -2
  239. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  240. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
  241. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  242. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +2 -2
  243. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  244. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +2 -2
  245. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  246. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2 -2
  247. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
  248. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +2 -2
  249. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  250. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -2
  251. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  252. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  253. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  254. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
  255. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  256. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  257. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  258. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  259. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
  260. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  261. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  262. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  263. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  264. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  265. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  266. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +4 -23
  267. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
  268. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +2 -2
  269. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  270. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  271. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  272. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  273. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  274. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  275. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  276. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  277. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  278. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  279. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  280. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
  281. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  282. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  283. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
  284. package/contracts/examples/flight/FlightOracle.sol +85 -0
  285. package/contracts/instance/IInstance.sol +0 -3
  286. package/contracts/instance/IInstanceService.sol +1 -5
  287. package/contracts/instance/Instance.sol +0 -8
  288. package/contracts/instance/InstanceAdmin.sol +1 -2
  289. package/contracts/instance/InstanceAuthorizationV3.sol +1 -15
  290. package/contracts/instance/InstanceService.sol +37 -61
  291. package/contracts/instance/TargetNames.sol +0 -1
  292. package/contracts/instance/base/ObjectSet.sol +0 -8
  293. package/contracts/instance/base/ObjectSetHelperLib.sol +1 -5
  294. package/contracts/oracle/IOracleComponent.sol +0 -10
  295. package/contracts/oracle/IOracleService.sol +0 -15
  296. package/contracts/oracle/Oracle.sol +22 -69
  297. package/contracts/oracle/OracleService.sol +3 -79
  298. package/contracts/registry/ServiceAuthorizationV3.sol +0 -2
  299. package/contracts/type/RequestId.sol +0 -6
  300. package/package.json +1 -1
  301. package/artifacts/contracts/instance/RequestSet.sol/RequestSet.dbg.json +0 -4
  302. package/artifacts/contracts/instance/RequestSet.sol/RequestSet.json +0 -466
  303. package/contracts/instance/RequestSet.sol +0 -63
@@ -7,6 +7,7 @@ import {ACTIVE, FULFILLED, FAILED} from "../../type/StateId.sol";
7
7
  import {NftId} from "../../type/NftId.sol";
8
8
  import {BasicOracle} from "../../oracle/BasicOracle.sol";
9
9
  import {RequestId} from "../../type/RequestId.sol";
10
+ import {LibRequestIdSet} from "../../type/RequestIdSet.sol";
10
11
  import {RiskId} from "../../type/RiskId.sol";
11
12
  import {StateId} from "../../type/StateId.sol";
12
13
  import {Str} from "../../type/String.sol";
@@ -32,6 +33,9 @@ contract FlightOracle is
32
33
  event LogFlightOracleResponseSent(RequestId requestId, bytes1 status, int256 delay);
33
34
  event LogFlightOracleRequestCancelled(RequestId requestId);
34
35
 
36
+ // TODO decide if this variable should be moved to instance store
37
+ // if so it need to manage active requests by requestor nft id
38
+ LibRequestIdSet.Set internal _activeRequests;
35
39
 
36
40
 
37
41
  constructor(
@@ -96,6 +100,7 @@ contract FlightOracle is
96
100
  // effects + interaction (via framework to receiving component)
97
101
  _respond(requestId, responseData);
98
102
 
103
+ // TODO decide if the code below should be moved to GIF
99
104
  _updateRequestState(requestId);
100
105
  }
101
106
 
@@ -111,6 +116,35 @@ contract FlightOracle is
111
116
 
112
117
  //--- view functions ----------------------------------------------------//
113
118
 
119
+ // TODO decide if the code below should be moved to GIF
120
+ function activeRequests()
121
+ external
122
+ view
123
+ returns(uint256 numberOfRequests)
124
+ {
125
+ return LibRequestIdSet.size(_activeRequests);
126
+ }
127
+
128
+
129
+ // TODO decide if the code below should be moved to GIF
130
+ function getActiveRequest(uint256 idx)
131
+ external
132
+ view
133
+ returns(RequestId requestId)
134
+ {
135
+ return LibRequestIdSet.getElementAt(_activeRequests, idx);
136
+ }
137
+
138
+
139
+ function isActiveRequest(RequestId requestId)
140
+ external
141
+ view
142
+ returns(bool isActive)
143
+ {
144
+ return LibRequestIdSet.contains(_activeRequests, requestId);
145
+ }
146
+
147
+
114
148
  function getRequestState(RequestId requestId)
115
149
  external
116
150
  view
@@ -138,4 +172,55 @@ contract FlightOracle is
138
172
  return abi.decode(data, (FlightStatusRequest));
139
173
  }
140
174
 
175
+ //--- internal functions ------------------------------------------------//
176
+
177
+
178
+ // TODO decide if the code below should be moved to GIF
179
+ // check callback result
180
+ function _updateRequestState(
181
+ RequestId requestId
182
+ )
183
+ internal
184
+ {
185
+ bool requestFulfilled = _getInstanceReader().getRequestState(
186
+ requestId) == FULFILLED();
187
+
188
+ // remove from active requests when successful
189
+ if (requestFulfilled && LibRequestIdSet.contains(_activeRequests, requestId)) {
190
+ LibRequestIdSet.remove(_activeRequests, requestId);
191
+ }
192
+ }
193
+
194
+
195
+ /// @dev use case specific handling of oracle requests
196
+ /// for now only log is emitted to verify that request has been received by oracle component
197
+ function _request(
198
+ RequestId requestId,
199
+ NftId requesterId,
200
+ bytes calldata requestData,
201
+ Timestamp expiryAt
202
+ )
203
+ internal
204
+ virtual override
205
+ {
206
+ FlightStatusRequest memory request = abi.decode(requestData, (FlightStatusRequest));
207
+
208
+ // TODO decide if the line below should be moved to GIF
209
+ LibRequestIdSet.add(_activeRequests, requestId);
210
+ emit LogFlightOracleRequestReceived(requestId, requesterId);
211
+ }
212
+
213
+
214
+ /// @dev use case specific handling of oracle requests
215
+ /// for now only log is emitted to verify that cancelling has been received by oracle component
216
+ function _cancel(
217
+ RequestId requestId
218
+ )
219
+ internal
220
+ virtual override
221
+ {
222
+ // TODO decide if the line below should be moved to GIF
223
+ LibRequestIdSet.remove(_activeRequests, requestId);
224
+ emit LogFlightOracleRequestCancelled(requestId);
225
+ }
141
226
  }
@@ -12,7 +12,6 @@ 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";
16
15
  import {RoleId} from "../type/RoleId.sol";
17
16
  import {Seconds} from "../type/Seconds.sol";
18
17
  import {UFixed} from "../type/UFixed.sol";
@@ -59,7 +58,6 @@ interface IInstance is
59
58
  ProductStore productStore;
60
59
  BundleSet bundleSet;
61
60
  RiskSet riskSet;
62
- RequestSet requestSet;
63
61
  InstanceReader instanceReader;
64
62
  }
65
63
 
@@ -151,7 +149,6 @@ interface IInstance is
151
149
  function getInstanceReader() external view returns (InstanceReader);
152
150
  function getBundleSet() external view returns (BundleSet);
153
151
  function getRiskSet() external view returns (RiskSet);
154
- function getRequestSet() external view returns (RequestSet);
155
152
  function getInstanceAdmin() external view returns (InstanceAdmin);
156
153
  function getInstanceStore() external view returns (InstanceStore);
157
154
  function getProductStore() external view returns (ProductStore);
@@ -26,7 +26,6 @@ interface IInstanceService is IService {
26
26
  error ErrorInstanceServiceMasterInstanceAdminAlreadySet();
27
27
  error ErrorInstanceServiceMasterBundleSetAlreadySet();
28
28
  error ErrorInstanceServiceMasterRiskSetAlreadySet();
29
- error ErrorInstanceServiceMasterRequestSetAlreadySet();
30
29
  error ErrorInstanceServiceInstanceAddressZero();
31
30
 
32
31
  error ErrorInstanceServiceMasterInstanceReaderNotSet();
@@ -39,18 +38,15 @@ interface IInstanceService is IService {
39
38
  error ErrorInstanceServiceInstanceReaderZero();
40
39
  error ErrorInstanceServiceBundleSetZero();
41
40
  error ErrorInstanceServiceRiskSetZero();
42
- error ErrorInstanceServiceRequestSetZero();
43
41
  error ErrorInstanceServiceInstanceStoreZero();
44
42
  error ErrorInstanceServiceProductStoreZero();
45
43
 
46
44
  error ErrorInstanceServiceInstanceAuthorityMismatch();
47
45
  error ErrorInstanceServiceBundleSetAuthorityMismatch();
48
46
  error ErrorInstanceServiceRiskSetAuthorityMismatch();
49
- error ErrorInstanceServiceRequestSetAuthorityMismatch();
50
47
  error ErrorInstanceServiceInstanceReaderInstanceMismatch2();
51
48
  error ErrorInstanceServiceBundleSetInstanceMismatch();
52
49
  error ErrorInstanceServiceRiskSetInstanceMismatch();
53
- error ErrorInstanceServiceRequestSetInstanceMismatch();
54
50
  error ErrorInstanceServiceInstanceStoreAuthorityMismatch();
55
51
  error ErrorInstanceServiceProductStoreAuthorityMismatch();
56
52
 
@@ -63,7 +59,7 @@ interface IInstanceService is IService {
63
59
  event LogInstanceServiceInstanceLocked(NftId instanceNftId, bool locked);
64
60
  event LogInstanceServiceInstanceCreated(NftId instanceNftId, address instance);
65
61
  event LogInstanceServiceMasterInstanceRegistered(NftId masterInstanceNftId, address masterInstance, address masterInstanceAdmin, address masterAccessManager,
66
- address masterInstanceReader, address masterInstanceBundleSet, address masterInstanceRiskSet, address masterInstanceRequestSet, address masterInstanceStore, address masterProductStore);
62
+ address masterInstanceReader, address masterInstanceBundleSet, address masterInstanceRiskSet, address masterInstanceStore, address masterProductStore);
67
63
  event LogInstanceServiceMasterInstanceReaderUpgraded(NftId instanceNfId, address newInstanceReader);
68
64
  event LogInstanceServiceInstanceReaderUpgraded(NftId instanceNfId, address newInstanceReader);
69
65
 
@@ -17,7 +17,6 @@ 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";
21
20
  import {RoleId} from "../type/RoleId.sol";
22
21
  import {Seconds} from "../type/Seconds.sol";
23
22
  import {UFixed} from "../type/UFixed.sol";
@@ -36,7 +35,6 @@ contract Instance is
36
35
  InstanceReader internal _instanceReader;
37
36
  BundleSet internal _bundleSet;
38
37
  RiskSet internal _riskSet;
39
- RequestSet internal _requestSet;
40
38
  InstanceStore internal _instanceStore;
41
39
  ProductStore internal _productStore;
42
40
  NftId [] internal _products;
@@ -90,7 +88,6 @@ contract Instance is
90
88
  _productStore = instanceContracts.productStore;
91
89
  _bundleSet = instanceContracts.bundleSet;
92
90
  _riskSet = instanceContracts.riskSet;
93
- _requestSet = instanceContracts.requestSet;
94
91
  _instanceReader = instanceContracts.instanceReader;
95
92
 
96
93
  // initialize instance supporting contracts
@@ -98,7 +95,6 @@ contract Instance is
98
95
  _productStore.initialize();
99
96
  _bundleSet.initialize(instanceContracts.instanceAdmin.authority(), address(registry));
100
97
  _riskSet.initialize(instanceContracts.instanceAdmin.authority(), address(registry));
101
- _requestSet.initialize(instanceContracts.instanceAdmin.authority(), address(registry));
102
98
  _instanceReader.initialize();
103
99
 
104
100
  _componentService = IComponentService(
@@ -337,10 +333,6 @@ contract Instance is
337
333
  return _riskSet;
338
334
  }
339
335
 
340
- function getRequestSet() external view returns (RequestSet) {
341
- return _requestSet;
342
- }
343
-
344
336
  function getInstanceAdmin() external view returns (InstanceAdmin) {
345
337
  return _instanceAdmin;
346
338
  }
@@ -13,7 +13,7 @@ import {ObjectType, INSTANCE} from "../type/ObjectType.sol";
13
13
  import {RoleId, ADMIN_ROLE} from "../type/RoleId.sol";
14
14
  import {Str} from "../type/String.sol";
15
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";
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
17
 
18
18
 
19
19
  contract InstanceAdmin is
@@ -123,7 +123,6 @@ contract InstanceAdmin is
123
123
  _createInstanceTarget(address(_instance.getProductStore()), PRODUCT_STORE_TARGET_NAME);
124
124
  _createInstanceTarget(address(_instance.getBundleSet()), BUNDLE_SET_TARGET_NAME);
125
125
  _createInstanceTarget(address(_instance.getRiskSet()), RISK_SET_TARGET_NAME);
126
- _createInstanceTarget(address(_instance.getRequestSet()), REQUEST_SET_TARGET_NAME);
127
126
  }
128
127
 
129
128
 
@@ -10,10 +10,9 @@ 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, REQUEST_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} 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 {RequestSet} from "../instance/RequestSet.sol";
17
16
  import {RiskSet} from "../instance/RiskSet.sol";
18
17
 
19
18
 
@@ -72,7 +71,6 @@ contract InstanceAuthorizationV3
72
71
  _addInstanceTarget(PRODUCT_STORE_TARGET_NAME);
73
72
  _addInstanceTarget(BUNDLE_SET_TARGET_NAME);
74
73
  _addInstanceTarget(RISK_SET_TARGET_NAME);
75
- _addInstanceTarget(REQUEST_SET_TARGET_NAME);
76
74
  }
77
75
 
78
76
 
@@ -86,18 +84,6 @@ contract InstanceAuthorizationV3
86
84
  _setupProductStoreAuthorization();
87
85
  _setupBundleSetAuthorization();
88
86
  _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");
101
87
  }
102
88
 
103
89
 
@@ -22,7 +22,6 @@ import {InstanceStore} from "./InstanceStore.sol";
22
22
  import {NftId} from "../type/NftId.sol";
23
23
  import {ObjectType, INSTANCE, COMPONENT, INSTANCE, REGISTRY, STAKING} from "../type/ObjectType.sol";
24
24
  import {ProductStore} from "./ProductStore.sol";
25
- import {RequestSet} from "./RequestSet.sol";
26
25
  import {RiskSet} from "./RiskSet.sol";
27
26
  import {RoleId} from "../type/RoleId.sol";
28
27
  import {Seconds} from "../type/Seconds.sol";
@@ -50,7 +49,6 @@ contract InstanceService is
50
49
  address internal _masterInstanceReader;
51
50
  address internal _masterInstanceBundleSet;
52
51
  address internal _masterInstanceRiskSet;
53
- address internal _masterInstanceRequestSet;
54
52
  address internal _masterInstanceStore;
55
53
  address internal _masterProductStore;
56
54
 
@@ -325,70 +323,49 @@ contract InstanceService is
325
323
  if(_masterInstanceAdmin != address(0)) { revert ErrorInstanceServiceMasterInstanceAdminAlreadySet(); }
326
324
  if(_masterInstanceBundleSet != address(0)) { revert ErrorInstanceServiceMasterBundleSetAlreadySet(); }
327
325
  if(_masterInstanceRiskSet != address(0)) { revert ErrorInstanceServiceMasterRiskSetAlreadySet(); }
328
- if(_masterInstanceRequestSet != address(0)) { revert ErrorInstanceServiceMasterRequestSetAlreadySet(); }
329
326
  if(instanceAddress == address(0)) { revert ErrorInstanceServiceInstanceAddressZero(); }
330
327
 
331
328
  {
332
329
  IInstance instance = IInstance(instanceAddress);
333
330
  address accessManagerAddress = instance.authority();
334
331
  InstanceAdmin instanceAdmin = instance.getInstanceAdmin();
332
+ address instanceAdminAddress = address(instanceAdmin);
333
+ InstanceReader instanceReader = instance.getInstanceReader();
334
+ address instanceReaderAddress = address(instanceReader);
335
+ BundleSet bundleSet = instance.getBundleSet();
336
+ address bundleSetAddress = address(bundleSet);
337
+ RiskSet riskSet = instance.getRiskSet();
338
+ address riskSetAddress = address(riskSet);
339
+ InstanceStore instanceStore = instance.getInstanceStore();
340
+ address instanceStoreAddress = address(instanceStore);
341
+ ProductStore productStore = instance.getProductStore();
342
+ address productStoreAddress = address(productStore);
343
+
344
+ if(accessManagerAddress == address(0)) { revert ErrorInstanceServiceAccessManagerZero(); }
345
+ if(instanceAdminAddress == address(0)) { revert ErrorInstanceServiceInstanceAdminZero(); }
346
+ if(instanceReaderAddress == address(0)) { revert ErrorInstanceServiceInstanceReaderZero(); }
347
+ if(bundleSetAddress == address(0)) { revert ErrorInstanceServiceBundleSetZero(); }
348
+ if(riskSetAddress == address(0)) { revert ErrorInstanceServiceRiskSetZero(); }
349
+ if(instanceStoreAddress == address(0)) { revert ErrorInstanceServiceInstanceStoreZero(); }
350
+ if(productStoreAddress == address(0)) { revert ErrorInstanceServiceProductStoreZero(); } // TODO: rename exception
335
351
 
336
- {
337
- address instanceAdminAddress = address(instanceAdmin);
338
- InstanceReader instanceReader = instance.getInstanceReader();
339
- address instanceReaderAddress = address(instanceReader);
340
-
341
- if(accessManagerAddress == address(0)) { revert ErrorInstanceServiceAccessManagerZero(); }
342
- if(instanceAdminAddress == address(0)) { revert ErrorInstanceServiceInstanceAdminZero(); }
343
- if(instanceReaderAddress == address(0)) { revert ErrorInstanceServiceInstanceReaderZero(); }
344
-
345
- if(instance.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceInstanceAuthorityMismatch(); }
346
- if(instanceReader.getInstance() != instance) { revert ErrorInstanceServiceInstanceReaderInstanceMismatch2(); }
347
-
348
- _masterAccessManager = accessManagerAddress;
349
- _masterInstanceAdmin = instanceAdminAddress;
350
- _masterInstance = instanceAddress;
351
- _masterInstanceReader = instanceReaderAddress;
352
- }
353
-
354
- {
355
- BundleSet bundleSet = instance.getBundleSet();
356
- address bundleSetAddress = address(bundleSet);
357
- RiskSet riskSet = instance.getRiskSet();
358
- address riskSetAddress = address(riskSet);
359
- RequestSet requestSet = instance.getRequestSet();
360
- address requestSetAddress = address(requestSet);
361
-
362
- if(bundleSetAddress == address(0)) { revert ErrorInstanceServiceBundleSetZero(); }
363
- if(riskSetAddress == address(0)) { revert ErrorInstanceServiceRiskSetZero(); }
364
- if(requestSetAddress == address(0)) { revert ErrorInstanceServiceRequestSetZero(); }
365
- if(bundleSet.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceBundleSetAuthorityMismatch(); }
366
- if(riskSet.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceRiskSetAuthorityMismatch(); }
367
- if(requestSet.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceRequestSetAuthorityMismatch(); }
368
- if(bundleSet.getInstanceAddress() != address(instance)) { revert ErrorInstanceServiceBundleSetInstanceMismatch(); }
369
- if(riskSet.getInstanceAddress() != address(instance)) { revert ErrorInstanceServiceRiskSetInstanceMismatch(); }
370
- if(requestSet.getInstanceAddress() != address(instance)) { revert ErrorInstanceServiceRequestSetInstanceMismatch(); }
371
-
372
- _masterInstanceBundleSet = bundleSetAddress;
373
- _masterInstanceRiskSet = riskSetAddress;
374
- _masterInstanceRequestSet = requestSetAddress;
375
- }
376
-
377
- {
378
- InstanceStore instanceStore = instance.getInstanceStore();
379
- address instanceStoreAddress = address(instanceStore);
380
- ProductStore productStore = instance.getProductStore();
381
- address productStoreAddress = address(productStore);
382
-
383
- if(instanceStoreAddress == address(0)) { revert ErrorInstanceServiceInstanceStoreZero(); }
384
- if(productStoreAddress == address(0)) { revert ErrorInstanceServiceProductStoreZero(); } // TODO: rename exception
385
-
386
- if(instanceStore.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceInstanceStoreAuthorityMismatch(); }
387
- if(productStore.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceProductStoreAuthorityMismatch(); }
388
-
389
- _masterInstanceStore = instanceStoreAddress;
390
- _masterProductStore = productStoreAddress;
391
- }
352
+ if(instance.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceInstanceAuthorityMismatch(); }
353
+ if(bundleSet.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceBundleSetAuthorityMismatch(); }
354
+ if(riskSet.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceRiskSetAuthorityMismatch(); }
355
+ if(instanceStore.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceInstanceStoreAuthorityMismatch(); }
356
+ if(productStore.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceProductStoreAuthorityMismatch(); }
357
+ if(bundleSet.getInstanceAddress() != address(instance)) { revert ErrorInstanceServiceBundleSetInstanceMismatch(); }
358
+ if(riskSet.getInstanceAddress() != address(instance)) { revert ErrorInstanceServiceRiskSetInstanceMismatch(); }
359
+ if(instanceReader.getInstance() != instance) { revert ErrorInstanceServiceInstanceReaderInstanceMismatch2(); }
360
+
361
+ _masterAccessManager = accessManagerAddress;
362
+ _masterInstanceAdmin = instanceAdminAddress;
363
+ _masterInstance = instanceAddress;
364
+ _masterInstanceReader = instanceReaderAddress;
365
+ _masterInstanceBundleSet = bundleSetAddress;
366
+ _masterInstanceRiskSet = riskSetAddress;
367
+ _masterInstanceStore = instanceStoreAddress;
368
+ _masterProductStore = productStoreAddress;
392
369
  }
393
370
 
394
371
  {
@@ -398,7 +375,7 @@ contract InstanceService is
398
375
 
399
376
  emit LogInstanceServiceMasterInstanceRegistered(
400
377
  masterInstanceNftId, _masterInstance, _masterInstanceAdmin, _masterAccessManager,
401
- _masterInstanceReader, _masterInstanceBundleSet, _masterInstanceRiskSet, _masterInstanceRequestSet, _masterInstanceStore, _masterProductStore);
378
+ _masterInstanceReader, _masterInstanceBundleSet, _masterInstanceRiskSet, _masterInstanceStore, _masterProductStore);
402
379
  }
403
380
  }
404
381
 
@@ -470,7 +447,6 @@ contract InstanceService is
470
447
  productStore: ProductStore(Clones.clone(address(_masterProductStore))),
471
448
  bundleSet: BundleSet(Clones.clone(_masterInstanceBundleSet)),
472
449
  riskSet: RiskSet(Clones.clone(_masterInstanceRiskSet)),
473
- requestSet: RequestSet(Clones.clone(address(_masterInstanceRequestSet))),
474
450
  instanceReader: InstanceReader(Clones.clone(address(_masterInstanceReader)))
475
451
  }),
476
452
  getRegistry(),
@@ -7,5 +7,4 @@ string constant INSTANCE_STORE_TARGET_NAME = "InstanceStore";
7
7
  string constant PRODUCT_STORE_TARGET_NAME = "ProductStore";
8
8
  string constant BUNDLE_SET_TARGET_NAME = "BundleSet";
9
9
  string constant RISK_SET_TARGET_NAME = "RiskSet";
10
- string constant REQUEST_SET_TARGET_NAME = "RequestSet";
11
10
 
@@ -43,14 +43,6 @@ contract ObjectSet is
43
43
  activeSet.add(key);
44
44
  }
45
45
 
46
- function _remove(NftId componentNftId, Key32 key) internal {
47
- LibKey32Set.Set storage allSet = _allObjects[componentNftId];
48
- LibKey32Set.Set storage activeSet = _activeObjects[componentNftId];
49
-
50
- allSet.remove(key);
51
- activeSet.remove(key);
52
- }
53
-
54
46
  function _activate(NftId componentNftId, Key32 key) internal {
55
47
  _activeObjects[componentNftId].add(key);
56
48
  }
@@ -2,7 +2,6 @@
2
2
  pragma solidity ^0.8.20;
3
3
 
4
4
  import {IBundle} from "../module/IBundle.sol";
5
- import {IComponents} from "../module/IComponents.sol";
6
5
  import {IInstance} from "../IInstance.sol";
7
6
  import {IRisk} from "../module/IRisk.sol";
8
7
  import {NftId} from "../../type/NftId.sol";
@@ -12,6 +11,7 @@ import {RiskId} from "../../type/RiskId.sol";
12
11
  library ObjectSetHelperLib {
13
12
 
14
13
  function getRiskInfo(address instanceAddress, RiskId riskId) public view returns (IRisk.RiskInfo memory) {
14
+
15
15
  return IInstance(instanceAddress).getInstanceReader().getRiskInfo(riskId);
16
16
  }
17
17
 
@@ -27,8 +27,4 @@ library ObjectSetHelperLib {
27
27
  return getBundleInfo(instanceAddress, bundleNftId).poolNftId;
28
28
  }
29
29
 
30
- function getComponentInfo(address instanceAddress, NftId componentNftId) public view returns (IComponents.ComponentInfo memory) {
31
- return IInstance(instanceAddress).getInstanceReader().getComponentInfo(componentNftId);
32
- }
33
-
34
30
  }
@@ -13,10 +13,6 @@ import {Timestamp} from "../type/Timestamp.sol";
13
13
  interface IOracleComponent is IInstanceLinkedComponent {
14
14
  error ErrorOracleNotImplemented(string methodName);
15
15
 
16
- event LogOracleRequestReceived(RequestId indexed requestId, NftId indexed requesterId);
17
- event LogOracleRequestCancelled(RequestId indexed requestId);
18
-
19
-
20
16
  /// @dev callback method for requesting some data from the oracle
21
17
  function request(
22
18
  RequestId requestId,
@@ -34,10 +30,4 @@ interface IOracleComponent is IInstanceLinkedComponent {
34
30
 
35
31
  /// @dev returns true iff the component needs to be called when selling/renewing policis
36
32
  function isVerifying() external view returns (bool verifying);
37
-
38
- function activeRequests() external view returns(uint256 numberOfRequests);
39
-
40
- function getActiveRequest(uint256 idx) external view returns(RequestId requestId);
41
-
42
- function isActiveRequest(RequestId requestId) external view returns(bool isActive);
43
33
  }
@@ -63,19 +63,4 @@ interface IOracleService is IService {
63
63
  /// Permissioned: only the requester may cancel a request
64
64
  function cancel(RequestId requestId) external;
65
65
 
66
- // FIXME: this should be done by request
67
- function addRequest(RequestId requestId) external;
68
-
69
- // FIXME: this could be done by respond, resend, cancel
70
- function removeRequest(RequestId requestId) external;
71
-
72
- // FIXME: move to instance reader
73
- function activeRequests() external view returns(uint256 numberOfRequests);
74
-
75
- // FIXME: move to instance reader
76
- function activeRequestAt(uint256 idx) external view returns(RequestId requestId);
77
-
78
- // FIXME: move to instance reader
79
- function isActiveRequest(RequestId requestId) external view returns(bool isActive);
80
-
81
66
  }
@@ -2,7 +2,7 @@
2
2
  pragma solidity ^0.8.20;
3
3
 
4
4
  import {Amount} from "../type/Amount.sol";
5
- import {COMPONENT, ORACLE} from "../type/ObjectType.sol";
5
+ import {COMPONENT, PRODUCT, ORACLE} from "../type/ObjectType.sol";
6
6
  import {IAuthorization} from "../authorization/IAuthorization.sol";
7
7
  import {IComponentService} from "../shared/IComponentService.sol";
8
8
  import {IInstanceLinkedComponent} from "../shared/IInstanceLinkedComponent.sol";
@@ -11,7 +11,6 @@ import {IOracleService} from "./IOracleService.sol";
11
11
  import {NftId} from "../type/NftId.sol";
12
12
  import {InstanceLinkedComponent} from "../shared/InstanceLinkedComponent.sol";
13
13
  import {RequestId} from "../type/RequestId.sol";
14
- import {FULFILLED} from "../type/StateId.sol";
15
14
  import {Timestamp} from "../type/Timestamp.sol";
16
15
 
17
16
 
@@ -75,33 +74,6 @@ abstract contract Oracle is
75
74
  revert ErrorOracleNotImplemented("withdrawFees");
76
75
  }
77
76
 
78
- function activeRequests()
79
- external
80
- view
81
- returns(uint256 numberOfRequests)
82
- {
83
- OracleStorage storage $ = _getOracleStorage();
84
- return $._oracleService.activeRequests();
85
- }
86
-
87
-
88
- function getActiveRequest(uint256 idx)
89
- external
90
- view
91
- returns(RequestId requestId)
92
- {
93
- OracleStorage storage $ = _getOracleStorage();
94
- return $._oracleService.activeRequestAt(idx);
95
- }
96
-
97
- function isActiveRequest(RequestId requestId)
98
- external
99
- view
100
- returns(bool isActive)
101
- {
102
- OracleStorage storage $ = _getOracleStorage();
103
- return $._oracleService.isActiveRequest(requestId);
104
- }
105
77
 
106
78
  function __Oracle_init(
107
79
  address registry,
@@ -130,64 +102,45 @@ abstract contract Oracle is
130
102
  _registerInterface(type(IOracleComponent).interfaceId);
131
103
  }
132
104
 
133
- /// @dev Internal function for handling oracle responses.
134
- /// Default implementation sends response back to oracle service.
135
- /// Use this function in use case specific external/public functions to handle use case specific response handling.
136
- function _respond(
105
+
106
+ /// @dev Internal function for handling requests.
107
+ /// Empty implementation.
108
+ /// Overwrite this function to implement use case specific handling for oracle calls.
109
+ function _request(
137
110
  RequestId requestId,
138
- bytes memory responseData
111
+ NftId requesterId,
112
+ bytes calldata requestData,
113
+ Timestamp expiryAt
139
114
  )
140
115
  internal
141
116
  virtual
142
117
  {
143
- _getOracleStorage()._oracleService.respond(requestId, responseData);
144
118
  }
145
119
 
146
- // check callback result
147
- function _updateRequestState(
120
+
121
+ /// @dev Internal function for cancelling requests.
122
+ /// Empty implementation.
123
+ /// Overwrite this function to implement use case specific cancelling.
124
+ function _cancel(
148
125
  RequestId requestId
149
126
  )
150
127
  internal
128
+ virtual
151
129
  {
152
- bool requestFulfilled = _getInstanceReader().getRequestState(
153
- requestId) == FULFILLED();
154
- OracleStorage storage $ = _getOracleStorage();
155
-
156
- // remove from active requests when successful
157
- if (requestFulfilled && $._oracleService.isActiveRequest(requestId)) {
158
- $._oracleService.removeRequest(requestId);
159
- }
160
130
  }
161
131
 
162
132
 
163
- /// @dev use case specific handling of oracle requests
164
- /// for now only log is emitted to verify that request has been received by oracle component
165
- function _request(
133
+ /// @dev Internal function for handling oracle responses.
134
+ /// Default implementation sends response back to oracle service.
135
+ /// Use this function in use case specific external/public functions to handle use case specific response handling.
136
+ function _respond(
166
137
  RequestId requestId,
167
- NftId requesterId,
168
- bytes calldata requestData,
169
- Timestamp expiryAt
170
- )
171
- internal
172
- virtual
173
- {
174
- OracleStorage storage $ = _getOracleStorage();
175
- $._oracleService.addRequest(requestId);
176
- emit LogOracleRequestReceived(requestId, requesterId);
177
- }
178
-
179
-
180
- /// @dev use case specific handling of oracle requests
181
- /// for now only log is emitted to verify that cancelling has been received by oracle component
182
- function _cancel(
183
- RequestId requestId
138
+ bytes memory responseData
184
139
  )
185
140
  internal
186
- virtual
141
+ virtual
187
142
  {
188
- OracleStorage storage $ = _getOracleStorage();
189
- $._oracleService.removeRequest(requestId);
190
- emit LogOracleRequestCancelled(requestId);
143
+ _getOracleStorage()._oracleService.respond(requestId, responseData);
191
144
  }
192
145
 
193
146