@etherisc/gif-next 3.0.0-2f1539b-882 → 3.0.0-303db9f-884

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (407) hide show
  1. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +42 -56
  3. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +32 -36
  5. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
  6. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +14 -20
  7. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  8. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +2 -2
  9. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
  10. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +2 -2
  11. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  12. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +42 -29
  13. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  14. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +2 -2
  15. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  16. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  17. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  18. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  19. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  20. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +2 -2
  21. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  22. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +2 -96
  23. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  24. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +2 -2
  25. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  26. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +0 -94
  27. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  28. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +157 -72
  29. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  30. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +63 -63
  31. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  32. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +0 -94
  33. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  34. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +85 -0
  35. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
  36. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +2 -2
  37. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
  38. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +12 -87
  39. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
  40. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +2 -2
  41. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
  42. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +47 -127
  43. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
  44. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +2 -2
  45. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
  46. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +2 -2
  47. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
  48. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +2 -2
  49. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
  50. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.json +2 -2
  51. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.dbg.json +4 -0
  52. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.json +801 -0
  53. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
  54. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +57 -177
  55. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
  56. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +20 -20
  57. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
  58. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +14 -89
  59. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +1 -1
  60. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +2 -2
  61. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +1 -1
  62. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +51 -126
  63. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
  64. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +20 -20
  65. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.dbg.json +1 -1
  66. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.json +2 -2
  67. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
  68. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +2 -2
  69. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +1 -1
  70. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.json +2 -2
  71. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
  72. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +15 -109
  73. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
  74. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +2 -2
  75. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
  76. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +89 -81
  77. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
  78. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +16 -91
  79. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
  80. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +2 -2
  81. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
  82. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +18 -93
  83. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
  84. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +2 -2
  85. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
  86. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.json +50 -0
  87. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  88. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +2 -2
  89. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
  90. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.json +50 -0
  91. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  92. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +13 -0
  93. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  94. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +87 -0
  95. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  96. package/artifacts/contracts/instance/Instance.sol/Instance.json +30 -12
  97. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  98. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +103 -103
  99. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  100. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +21 -21
  101. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  102. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +103 -36
  103. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  104. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +128 -25
  105. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  106. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +29 -29
  107. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  108. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +82 -32
  109. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
  110. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +68 -18
  111. package/artifacts/contracts/instance/RequestSet.sol/RequestSet.dbg.json +4 -0
  112. package/artifacts/contracts/instance/RequestSet.sol/RequestSet.json +466 -0
  113. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
  114. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +2 -2
  115. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  116. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  117. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  118. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  119. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  120. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  121. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
  122. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  123. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +2 -2
  124. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
  125. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +38 -2
  126. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  127. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  128. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  129. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  130. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  131. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  132. package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
  133. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  134. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +83 -75
  135. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  136. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +2 -2
  137. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  138. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  139. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +65 -57
  140. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  141. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  142. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +69 -61
  143. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  144. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +38 -38
  145. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  146. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +38 -38
  147. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  148. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +0 -75
  149. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  150. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +2 -2
  151. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  152. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +32 -20
  153. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  154. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +50 -50
  155. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  156. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +12 -0
  157. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  158. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +0 -75
  159. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  160. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +12 -0
  161. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  162. package/artifacts/contracts/pool/Pool.sol/Pool.json +0 -75
  163. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
  164. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +4 -9
  165. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  166. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +36 -24
  167. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  168. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +51 -51
  169. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  170. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +2 -2
  171. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  172. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +32 -32
  173. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  174. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +0 -75
  175. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  176. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +2 -2
  177. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  178. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +36 -36
  179. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  180. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +55 -55
  181. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  182. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  183. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  184. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +12 -0
  185. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  186. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  187. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +0 -75
  188. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  189. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  190. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +56 -44
  191. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
  192. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +2 -2
  193. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  194. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +48 -48
  195. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  196. package/artifacts/contracts/product/PricingService.sol/PricingService.json +2 -2
  197. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  198. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +39 -39
  199. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  200. package/artifacts/contracts/product/Product.sol/Product.json +0 -75
  201. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  202. package/artifacts/contracts/product/RiskService.sol/RiskService.json +2 -2
  203. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  204. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +30 -30
  205. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  206. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
  207. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  208. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +6 -0
  209. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  210. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
  211. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  212. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  213. package/artifacts/contracts/registry/Registry.sol/Registry.json +47 -37
  214. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  215. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +69 -69
  216. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
  217. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +2 -27
  218. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  219. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +2 -2
  220. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  221. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +25 -25
  222. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
  223. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +85 -85
  224. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  225. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +2 -2
  226. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  227. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +103 -87
  228. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  229. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +19 -19
  230. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  231. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
  232. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  233. package/artifacts/contracts/shared/Component.sol/Component.json +0 -75
  234. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  235. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +311 -95
  236. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  237. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +49 -49
  238. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
  239. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +2 -2
  240. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
  241. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
  242. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
  243. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +1 -1
  244. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.json +0 -75
  245. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  246. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +0 -75
  247. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  248. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +255 -39
  249. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  250. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +0 -75
  251. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  252. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  253. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  254. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  255. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  256. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  257. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  258. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +2 -2
  259. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  260. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +0 -75
  261. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  262. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  263. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
  264. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  265. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +2 -2
  266. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  267. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
  268. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  269. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  270. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
  271. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  272. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  273. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +23 -50
  274. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
  275. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +9 -36
  276. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
  277. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +28 -28
  278. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  279. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +25 -75
  280. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  281. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +5 -205
  282. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +1 -1
  283. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  284. package/artifacts/contracts/staking/Staking.sol/Staking.json +73 -123
  285. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
  286. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +2 -7
  287. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  288. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +41 -41
  289. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  290. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
  291. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  292. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +19 -219
  293. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  294. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +28 -28
  295. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  296. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2 -2
  297. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
  298. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +2 -7
  299. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  300. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -7
  301. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  302. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
  303. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  304. package/artifacts/contracts/type/Amount.sol/AmountLib.json +2 -7
  305. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  306. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +2 -2
  307. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
  308. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +2 -2
  309. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  310. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
  311. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  312. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  313. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  314. package/artifacts/contracts/type/Fee.sol/FeeLib.json +2 -7
  315. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  316. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  317. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
  318. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
  319. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  320. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
  321. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  322. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  323. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  324. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +2 -2
  325. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  326. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
  327. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  328. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
  329. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  330. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +23 -4
  331. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
  332. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +2 -2
  333. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  334. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
  335. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  336. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +2 -2
  337. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  338. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +2 -2
  339. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  340. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +2 -2
  341. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  342. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
  343. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  344. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +2 -2
  345. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  346. package/artifacts/contracts/type/String.sol/StrLib.json +2 -2
  347. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  348. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +2 -2
  349. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  350. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +2 -7
  351. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  352. package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
  353. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  354. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +2 -2
  355. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
  356. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  357. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +2 -2
  358. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  359. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +3 -3
  360. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
  361. package/contracts/accounting/AccountingService.sol +17 -29
  362. package/contracts/accounting/IAccountingService.sol +7 -8
  363. package/contracts/authorization/AccessManagerCloneable.sol +4 -0
  364. package/contracts/distribution/DistributionService.sol +5 -3
  365. package/contracts/distribution/IDistributionComponent.sol +0 -2
  366. package/contracts/distribution/IDistributionService.sol +4 -3
  367. package/contracts/examples/flight/FlightNft.sol +234 -0
  368. package/contracts/examples/flight/FlightOracle.sol +1 -98
  369. package/contracts/examples/flight/FlightOracleAuthorization.sol +2 -3
  370. package/contracts/examples/flight/FlightProduct.sol +2 -2
  371. package/contracts/examples/flight/FlightProductAuthorization.sol +1 -1
  372. package/contracts/instance/BaseStore.sol +4 -0
  373. package/contracts/instance/IBaseStore.sol +8 -0
  374. package/contracts/instance/IInstance.sol +3 -0
  375. package/contracts/instance/IInstanceService.sol +6 -0
  376. package/contracts/instance/Instance.sol +8 -0
  377. package/contracts/instance/InstanceAdmin.sol +2 -1
  378. package/contracts/instance/InstanceAuthorizationV3.sol +15 -1
  379. package/contracts/instance/InstanceReader.sol +18 -1
  380. package/contracts/instance/InstanceService.sol +64 -36
  381. package/contracts/instance/RequestSet.sol +63 -0
  382. package/contracts/instance/TargetNames.sol +1 -0
  383. package/contracts/instance/base/ObjectSet.sol +8 -0
  384. package/contracts/instance/base/ObjectSetHelperLib.sol +5 -1
  385. package/contracts/oracle/IOracleComponent.sol +10 -0
  386. package/contracts/oracle/Oracle.sol +49 -25
  387. package/contracts/oracle/OracleService.sol +25 -22
  388. package/contracts/pool/BundleService.sol +1 -1
  389. package/contracts/pool/IBundleService.sol +1 -1
  390. package/contracts/pool/IPoolService.sol +1 -1
  391. package/contracts/pool/PoolService.sol +1 -1
  392. package/contracts/product/IPolicyService.sol +1 -1
  393. package/contracts/product/PolicyService.sol +1 -1
  394. package/contracts/registry/ChainNft.sol +1 -1
  395. package/contracts/registry/IRegistry.sol +1 -1
  396. package/contracts/registry/Registry.sol +5 -3
  397. package/contracts/registry/RegistryAuthorization.sol +0 -2
  398. package/contracts/shared/ComponentService.sol +36 -2
  399. package/contracts/shared/IComponent.sol +0 -4
  400. package/contracts/shared/IComponentService.sol +24 -2
  401. package/contracts/shared/InstanceLinkedComponent.sol +1 -1
  402. package/contracts/staking/IStaking.sol +2 -0
  403. package/contracts/staking/IStakingService.sol +1 -10
  404. package/contracts/staking/Staking.sol +1 -0
  405. package/contracts/staking/StakingService.sol +1 -1
  406. package/contracts/type/RequestId.sol +6 -0
  407. package/package.json +3 -3
@@ -2,16 +2,14 @@
2
2
  pragma solidity ^0.8.20;
3
3
 
4
4
  import {ContractLib} from "../shared/ContractLib.sol";
5
- import {IComponent} from "../shared/IComponent.sol";
6
5
  import {IInstance} from "../instance/IInstance.sol";
7
- import {IInstanceService} from "../instance/IInstanceService.sol";
8
6
  import {InstanceReader} from "../instance/InstanceReader.sol";
9
7
  import {IOracle} from "./IOracle.sol";
10
8
  import {IOracleComponent} from "./IOracleComponent.sol";
11
9
  import {IOracleService} from "./IOracleService.sol";
12
10
  import {IRegistry} from "../registry/IRegistry.sol";
13
11
  import {NftId} from "../type/NftId.sol";
14
- import {ObjectType, COMPONENT, ORACLE, PRODUCT} from "../type/ObjectType.sol";
12
+ import {ObjectType, ORACLE, PRODUCT} from "../type/ObjectType.sol";
15
13
  import {RequestId} from "../type/RequestId.sol";
16
14
  import {Service} from "../shared/Service.sol";
17
15
  import {StateId, ACTIVE, KEEP_STATE, FULFILLED, FAILED, CANCELLED} from "../type/StateId.sol";
@@ -56,7 +54,7 @@ contract OracleService is
56
54
  // get and check active caller
57
55
  (
58
56
  IRegistry.ObjectInfo memory requesterInfo,
59
- address instance
57
+ address instanceAddress
60
58
  ) = ContractLib.getAndVerifyAnyComponent(
61
59
  getRegistry(), msg.sender, true);
62
60
 
@@ -69,7 +67,7 @@ contract OracleService is
69
67
  // effects
70
68
  {
71
69
  // create request info
72
- IOracle.RequestInfo memory request = IOracle.RequestInfo({
70
+ IOracle.RequestInfo memory requestInfo = IOracle.RequestInfo({
73
71
  requesterNftId: requesterNftId,
74
72
  callbackMethodName: callbackMethodName,
75
73
  oracleNftId: oracleNftId,
@@ -80,8 +78,9 @@ contract OracleService is
80
78
  isCancelled: false
81
79
  });
82
80
 
83
- // store request with instance
84
- requestId = IInstance(instance).getInstanceStore().createRequest(request);
81
+ // store request with instance
82
+ requestId = IInstance(instanceAddress).getInstanceStore().createRequest(requestInfo);
83
+ IInstance(instanceAddress).getRequestSet().add(oracleNftId, requestId);
85
84
  }
86
85
 
87
86
  emit LogOracleServiceRequestCreated(requestId, requesterNftId, oracleNftId, expiryAt);
@@ -116,22 +115,23 @@ contract OracleService is
116
115
  NftId oracleNftId = info.nftId;
117
116
  IInstance instance = IInstance(instanceAddress);
118
117
  bool callerIsOracle = true;
119
- IOracle.RequestInfo memory request = _checkAndGetRequestInfo(instance, requestId, oracleNftId, callerIsOracle);
120
- request.responseData = responseData;
121
- request.respondedAt = TimestampLib.current();
118
+ IOracle.RequestInfo memory requestInfo = _checkAndGetRequestInfo(instance, requestId, oracleNftId, callerIsOracle);
119
+ requestInfo.responseData = responseData;
120
+ requestInfo.respondedAt = TimestampLib.current();
122
121
 
123
122
  instance.getInstanceStore().updateRequest(
124
- requestId, request, KEEP_STATE());
123
+ requestId, requestInfo, KEEP_STATE());
125
124
 
126
125
  IRegistry.ObjectInfo memory requesterInfo = getRegistry().getObjectInfo(
127
- request.requesterNftId);
126
+ requestInfo.requesterNftId);
128
127
 
129
128
  string memory functionSignature = string(
130
129
  abi.encodePacked(
131
- request.callbackMethodName,
130
+ requestInfo.callbackMethodName,
132
131
  "(uint64,bytes)"
133
132
  ));
134
133
 
134
+ // solhint-disable-next-line avoid-low-level-calls
135
135
  (success, ) = requesterInfo.objectAddress.call(
136
136
  abi.encodeWithSignature(
137
137
  functionSignature,
@@ -141,6 +141,7 @@ contract OracleService is
141
141
  // check that calling requestor was successful
142
142
  if (success) {
143
143
  instance.getInstanceStore().updateRequestState(requestId, FULFILLED());
144
+ instance.getRequestSet().remove(oracleNftId, requestId);
144
145
  } else {
145
146
  instance.getInstanceStore().updateRequestState(requestId, FAILED());
146
147
  emit LogOracleServiceDeliveryFailed(requestId, requesterInfo.objectAddress, functionSignature);
@@ -164,24 +165,26 @@ contract OracleService is
164
165
  NftId requesterNftId = info.nftId;
165
166
  IInstance instance = IInstance(instanceAddress);
166
167
  bool callerIsOracle = false;
167
- IOracle.RequestInfo memory request = _checkAndGetRequestInfo(instance, requestId, requesterNftId, callerIsOracle);
168
+ IOracle.RequestInfo memory requestInfo = _checkAndGetRequestInfo(instance, requestId, requesterNftId, callerIsOracle);
168
169
 
169
170
  // attempt to deliver response to requester
170
171
  string memory functionSignature = string(
171
172
  abi.encodePacked(
172
- request.callbackMethodName,
173
+ requestInfo.callbackMethodName,
173
174
  "(uint64,bytes)"
174
175
  ));
175
176
 
176
- (bool success, bytes memory returnData) = info.objectAddress.call(
177
+ // solhint-disable-next-line avoid-low-level-calls
178
+ (bool success, ) = info.objectAddress.call(
177
179
  abi.encodeWithSignature(
178
180
  functionSignature,
179
181
  requestId,
180
- request.responseData));
182
+ requestInfo.responseData));
181
183
 
182
184
  // check that calling requestor was successful
183
185
  if (success) {
184
186
  instance.getInstanceStore().updateRequestState(requestId, FULFILLED());
187
+ instance.getRequestSet().remove(requestInfo.oracleNftId, requestId);
185
188
  emit LogOracleServiceResponseResent(requestId, requesterNftId);
186
189
  } else {
187
190
  emit LogOracleServiceDeliveryFailed(requestId, info.objectAddress, functionSignature);
@@ -204,20 +207,20 @@ contract OracleService is
204
207
  IInstance instance = IInstance(instanceAddress);
205
208
  bool callerIsOracle = false;
206
209
  // TODO property isCancelled and state update to CANCELLED are redundant, get rid of isCancelled
207
- IOracle.RequestInfo memory request = _checkAndGetRequestInfo(instance, requestId, requesterNftId, callerIsOracle);
208
- request.isCancelled = true;
210
+ IOracle.RequestInfo memory requestInfo = _checkAndGetRequestInfo(instance, requestId, requesterNftId, callerIsOracle);
211
+ requestInfo.isCancelled = true;
209
212
 
210
- instance.getInstanceStore().updateRequest(requestId, request, CANCELLED());
213
+ instance.getInstanceStore().updateRequest(requestId, requestInfo, CANCELLED());
214
+ instance.getRequestSet().remove(requestInfo.oracleNftId, requestId);
211
215
 
212
216
  // call oracle component
213
217
  // TODO add check that oracle is active?
214
- address oracleAddress = getRegistry().getObjectAddress(request.oracleNftId);
218
+ address oracleAddress = getRegistry().getObjectAddress(requestInfo.oracleNftId);
215
219
  IOracleComponent(oracleAddress).cancel(requestId);
216
220
 
217
221
  emit LogOracleServiceRequestCancelled(requestId, requesterNftId);
218
222
  }
219
223
 
220
-
221
224
  function _checkRequestParams(
222
225
  IRegistry registry,
223
226
  NftId oracleNftId,
@@ -130,7 +130,7 @@ contract BundleService is
130
130
  BundleSet bundleManager = instance.getBundleSet();
131
131
  bundleManager.add(bundleNftId);
132
132
 
133
- emit LogBundleServiceBundleCreated(bundleNftId, poolNftId, lifetime);
133
+ emit LogBundleServiceBundleCreated(bundleNftId, poolNftId, lifetime, bundleFee.fixedFee, bundleFee.fractionalFee);
134
134
  }
135
135
 
136
136
 
@@ -30,7 +30,7 @@ interface IBundleService is IService {
30
30
 
31
31
  error ErrorBundleServiceExtensionLifetimeIsZero();
32
32
 
33
- event LogBundleServiceBundleCreated(NftId bundleNftId, NftId poolNftId, Seconds lifetime);
33
+ event LogBundleServiceBundleCreated(NftId bundleNftId, NftId poolNftId, Seconds lifetime, Amount fixedFee, UFixed fractionalFee);
34
34
  event LogBundleServiceBundleClosed(NftId bundleNftId);
35
35
  event LogBundleServiceBundleLocked(NftId bundleNftId);
36
36
  event LogBundleServiceBundleUnlocked(NftId bundleNftId);
@@ -19,7 +19,7 @@ interface IPoolService is IService {
19
19
  event LogPoolServiceWalletDefunded(NftId poolNftId, address poolOwner, Amount amount);
20
20
 
21
21
  event LogPoolServiceBundleCreated(NftId instanceNftId, NftId poolNftId, NftId bundleNftId);
22
- event LogPoolServiceBundleClosed(NftId instanceNftId, NftId poolNftId, NftId bundleNftId);
22
+ event LogPoolServiceBundleClosed(NftId instanceNftId, NftId poolNftId, NftId bundleNftId, Amount balanceAmount, Amount feeAmount);
23
23
 
24
24
  event LogPoolServiceBundleStaked(NftId instanceNftId, NftId poolNftId, NftId bundleNftId, Amount amount, Amount netAmount);
25
25
  event LogPoolServiceBundleUnstaked(NftId instanceNftId, NftId poolNftId, NftId bundleNftId, Amount amount, Amount netAmount);
@@ -98,7 +98,7 @@ contract PoolService is
98
98
  unstakedAmount + feeAmount,
99
99
  AmountLib.zero());
100
100
 
101
- emit LogPoolServiceBundleClosed(instance.getNftId(), poolNftId, bundleNftId);
101
+ emit LogPoolServiceBundleClosed(instance.getNftId(), poolNftId, bundleNftId, unstakedAmount, feeAmount);
102
102
 
103
103
  if ((unstakedAmount + feeAmount).gtz()){
104
104
  IComponents.ComponentInfo memory poolComponentInfo = instance.getInstanceReader().getComponentInfo(poolNftId);
@@ -13,7 +13,7 @@ interface IPolicyService is IService {
13
13
 
14
14
  event LogPolicyServicePolicyCreated(NftId policyNftId, Amount premiumAmount, Timestamp activatedAt);
15
15
  event LogPolicyServicePolicyDeclined(NftId policyNftId);
16
- event LogPolicyServicePolicyPremiumCollected(NftId policyNftId, Amount premiumAmount);
16
+ event LogPolicyServicePolicyPremiumCollected(NftId policyNftId, NftId productNftId, Amount premiumAmount, Timestamp activateAt);
17
17
  event LogPolicyServicePolicyActivated(NftId policyNftId, Timestamp activatedAt);
18
18
  event LogPolicyServicePolicyActivatedUpdated(NftId policyNftId, Timestamp activatedAt);
19
19
  event LogPolicyServicePolicyExpirationUpdated(NftId policyNftId, Timestamp expiredAt);
@@ -247,7 +247,7 @@ contract PolicyService is
247
247
  instance.getProductStore().updatePremiumState(policyNftId, PAID());
248
248
 
249
249
  // log premium collection before interactions with token
250
- emit LogPolicyServicePolicyPremiumCollected(policyNftId, premium.premiumAmount);
250
+ emit LogPolicyServicePolicyPremiumCollected(policyNftId, policyInfo.productNftId, premium.premiumAmount, activateAt);
251
251
 
252
252
  // interactions
253
253
  _transferPremiumAmounts(instanceReader, policyNftId, policyInfo.productNftId, premium);
@@ -11,7 +11,7 @@ contract ChainNft is ERC721Enumerable {
11
11
  event LogTokenInterceptorAddress(uint256 tokenId, address interceptor);
12
12
 
13
13
  // constants
14
- string public constant NAME = "Dezentralized Insurance Protocol NFT";
14
+ string public constant NAME = "Decentralized Insurance Protocol NFT";
15
15
  string public constant SYMBOL = "DIPNFT";
16
16
 
17
17
  uint256 public constant PROTOCOL_NFT_ID = 1101;
@@ -20,7 +20,7 @@ interface IRegistry is
20
20
  {
21
21
 
22
22
  event LogRegistryObjectRegistered(NftId nftId, NftId parentNftId, ObjectType objectType, bool isInterceptor, address objectAddress, address initialOwner);
23
- event LogRegistryServiceRegistered(VersionPart majorVersion, ObjectType domain);
23
+ event LogRegistryServiceRegistered(NftId nftId, VersionPart majorVersion, ObjectType domain);
24
24
  event LogRegistryChainRegistryRegistered(NftId nftId, uint256 chainId, address chainRegistryAddress);
25
25
 
26
26
  // initialize
@@ -2,7 +2,6 @@
2
2
  pragma solidity ^0.8.20;
3
3
 
4
4
  import {IERC165} from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
5
- import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
6
5
  import {AccessManaged} from "@openzeppelin/contracts/access/manager/AccessManaged.sol";
7
6
  import {Initializable} from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
8
7
 
@@ -16,7 +15,6 @@ import {IRelease} from "./IRelease.sol";
16
15
  import {IRegisterable} from "../shared/IRegisterable.sol";
17
16
  import {IStaking} from "../staking/IStaking.sol";
18
17
  import {ReleaseRegistry} from "./ReleaseRegistry.sol";
19
- import {TokenRegistry} from "./TokenRegistry.sol";
20
18
  import {RegistryAdmin} from "./RegistryAdmin.sol";
21
19
 
22
20
  /// @dev IMPORTANT
@@ -231,7 +229,7 @@ contract Registry is
231
229
 
232
230
  _service[version][domain] = service;
233
231
 
234
- emit LogRegistryServiceRegistered(version, domain);
232
+ emit LogRegistryServiceRegistered(info.nftId,version, domain);
235
233
 
236
234
  nftId = _register(info);
237
235
  }
@@ -566,6 +564,8 @@ contract Registry is
566
564
  initialOwner: NFT_LOCK_ADDRESS,
567
565
  data: ""}),
568
566
  true);
567
+
568
+ emit LogRegistryObjectRegistered(protocolNftId, NftIdLib.zero(), PROTOCOL(), false, address(0), NFT_LOCK_ADDRESS);
569
569
  }
570
570
 
571
571
  /// @dev register this registry
@@ -671,6 +671,8 @@ contract Registry is
671
671
 
672
672
  // calls nft receiver
673
673
  CHAIN_NFT.mint(info.initialOwner, info.nftId.toInt());
674
+
675
+ emit LogRegistryObjectRegistered(info.nftId, info.parentNftId, info.objectType, info.isInterceptor, info.objectAddress, info.initialOwner);
674
676
  }
675
677
 
676
678
  function _setAddressForNftId(NftId nftId, address objectAddress)
@@ -144,8 +144,6 @@ contract RegistryAuthorization
144
144
  _setupStakingThAuthorization();
145
145
  }
146
146
 
147
- event LogAccessAdminDebug(string message, string custom, uint256 value);
148
-
149
147
  function _setupRegistryAuthorization() internal {
150
148
  IAccess.FunctionInfo[] storage functions;
151
149
 
@@ -312,9 +312,27 @@ contract ComponentService is
312
312
  productNftId,
313
313
  initialProductInfo);
314
314
 
315
+ emit LogComponentServiceProductCreated(productNftId, productAddress, initialProductInfo.hasDistribution, initialProductInfo.expectedNumberOfOracles);
316
+
317
+ IComponents.FeeInfo memory initialFeeInfo = product.getInitialFeeInfo();
318
+
315
319
  productStore.createFee(
316
320
  productNftId,
317
- product.getInitialFeeInfo());
321
+ initialFeeInfo);
322
+
323
+ emit LogComponentServiceProductInitialProductFeesSet(
324
+ productNftId,
325
+ initialFeeInfo.productFee.fixedFee, initialFeeInfo.productFee.fractionalFee,
326
+ initialFeeInfo.processingFee.fixedFee, initialFeeInfo.processingFee.fractionalFee);
327
+ emit LogComponentServiceProductInitialDistributionFeesSet(
328
+ productNftId,
329
+ initialFeeInfo.distributionFee.fixedFee, initialFeeInfo.distributionFee.fractionalFee,
330
+ initialFeeInfo.minDistributionOwnerFee.fixedFee, initialFeeInfo.minDistributionOwnerFee.fractionalFee);
331
+ emit LogComponentServiceProductInitialPoolFeesSet(
332
+ productNftId,
333
+ initialFeeInfo.poolFee.fixedFee, initialFeeInfo.poolFee.fractionalFee,
334
+ initialFeeInfo.stakingFee.fixedFee, initialFeeInfo.stakingFee.fractionalFee,
335
+ initialFeeInfo.performanceFee.fixedFee, initialFeeInfo.performanceFee.fractionalFee);
318
336
  }
319
337
 
320
338
  //-------- distribution -------------------------------------------------//
@@ -341,6 +359,8 @@ contract ComponentService is
341
359
  // set distribution in product info
342
360
  productInfo.distributionNftId = distributionNftId;
343
361
  productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
362
+
363
+ emit LogComponentServiceDistributionCreated(distributionNftId, productNftId);
344
364
  }
345
365
 
346
366
 
@@ -400,6 +420,8 @@ contract ComponentService is
400
420
  productInfo.oracleNftId[productInfo.numberOfOracles] = oracleNftId;
401
421
  productInfo.numberOfOracles++;
402
422
  productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
423
+
424
+ emit LogComponentServiceOracleCreated(oracleNftId, productNftId);
403
425
  }
404
426
 
405
427
  //-------- pool ---------------------------------------------------------//
@@ -423,13 +445,20 @@ contract ComponentService is
423
445
 
424
446
  // create info
425
447
  IPoolComponent pool = IPoolComponent(componentAddress);
448
+ IComponents.PoolInfo memory initialPoolInfo = pool.getInitialPoolInfo();
426
449
  instanceStore.createPool(
427
450
  poolNftId,
428
- pool.getInitialPoolInfo());
451
+ initialPoolInfo);
429
452
 
430
453
  // update pool in product info
431
454
  productInfo.poolNftId = poolNftId;
432
455
  productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
456
+
457
+ emit LogComponentServicePoolCreated(
458
+ poolNftId, productNftId, componentAddress,
459
+ initialPoolInfo.maxBalanceAmount, initialPoolInfo.collateralizationLevel,
460
+ initialPoolInfo.retentionLevel, initialPoolInfo.isExternallyManaged,
461
+ initialPoolInfo.isVerifyingApplications);
433
462
  }
434
463
 
435
464
 
@@ -543,6 +572,11 @@ contract ComponentService is
543
572
  address(component), // initially, component is its own wallet
544
573
  token,
545
574
  instanceAdmin.authority());
575
+
576
+ emit LogComponentServiceTokenHandlerDeployed(
577
+ componentNftId,
578
+ address(componentInfo.tokenHandler),
579
+ token);
546
580
 
547
581
  // register component with instance
548
582
  instanceStore.createComponent(
@@ -25,10 +25,6 @@ interface IComponent is
25
25
  error ErrorComponentWalletAddressIsSameAsCurrent();
26
26
  error ErrorComponentWalletNotComponent();
27
27
 
28
- event LogComponentWalletAddressChanged(address oldWallet, address newWallet);
29
- event LogComponentWalletTokensTransferred(address from, address to, uint256 amount);
30
- event LogComponentTokenHandlerApproved(address tokenHandler, address token, Amount limit, bool isMaxAmount);
31
-
32
28
  /// @dev returns the name of this component
33
29
  /// to successfully register the component with an instance the name MUST be unique in the linked instance
34
30
  function getName() external view returns (string memory name);
@@ -46,9 +46,8 @@ interface IComponentService is
46
46
  error ErrorComponentServiceWalletAllowanceTooSmall(address wallet, address spender, uint256 allowance, uint256 amount);
47
47
 
48
48
  event LogComponentServiceComponentLocked(address component, bool locked);
49
+ event LogComponentServiceTokenHandlerDeployed(NftId componentNftId, address tokenHandler, address token);
49
50
  event LogComponentServiceRegistered(NftId instanceNftId, NftId componentNftId, ObjectType componentType, address component, address token, address initialOwner);
50
- event LogComponentServiceWalletAddressChanged(NftId componentNftId, address currentWallet, address newWallet);
51
- event LogComponentServiceWalletTokensTransferred(NftId componentNftId, address currentWallet, address newWallet, uint256 currentBalance);
52
51
  event LogComponentServiceComponentFeesWithdrawn(NftId componentNftId, address recipient, address token, Amount withdrawnAmount);
53
52
  event LogComponentServiceProductFeesUpdated(NftId productNftId);
54
53
  event LogComponentServiceDistributionFeesUpdated(NftId distributionNftId);
@@ -61,6 +60,29 @@ interface IComponentService is
61
60
  UFixed newFractionalFee,
62
61
  Amount newFixedFee
63
62
  );
63
+ event LogComponentServiceProductCreated(
64
+ NftId indexed productNftId, address indexed productAddress, bool indexed hasDistribution, uint8 expectedNumberOfOracles);
65
+ event LogComponentServiceProductInitialProductFeesSet(
66
+ NftId indexed productNftId,
67
+ Amount indexed productFeeFixed, UFixed indexed productFeeFractional,
68
+ Amount processingFeeFixed, UFixed processingFeeFractional);
69
+ event LogComponentServiceProductInitialDistributionFeesSet(
70
+ NftId indexed productNftId,
71
+ Amount indexed distributionFeeFixed, UFixed indexed distributionFeeFractional,
72
+ Amount minDistributionOwnerFeeFixed, UFixed minDistributionOwnerFeeFractional);
73
+ event LogComponentServiceProductInitialPoolFeesSet(
74
+ NftId indexed productNftId,
75
+ Amount indexed poolFeeFixed, UFixed indexed poolFeeFractional,
76
+ Amount stakingFeeFixed, UFixed stakingFeeFractional,
77
+ Amount performanceFeeFixed, UFixed performanceFeeFractional);
78
+ event LogComponentServicePoolCreated(
79
+ NftId indexed poolNftId, NftId indexed productNftId, address indexed componentAddress,
80
+ Amount maxBalanceAmount, UFixed collateralizationLevel, UFixed retentionLevel,
81
+ bool isExternallyManaged, bool isVerifyingApplications);
82
+ event LogComponentServiceDistributionCreated(
83
+ NftId indexed distributionNftId, NftId indexed productNftId);
84
+ event LogComponentServiceOracleCreated(
85
+ NftId indexed oracleNftId, NftId indexed productNftId);
64
86
 
65
87
  //-------- component ----------------------------------------------------//
66
88
 
@@ -92,7 +92,7 @@ abstract contract InstanceLinkedComponent is
92
92
  }
93
93
 
94
94
 
95
- function _resendRequest(RequestId requestId)
95
+ function _resendResponse(RequestId requestId)
96
96
  internal
97
97
  virtual
98
98
  {
@@ -25,6 +25,8 @@ interface IStaking is
25
25
  IVersionable
26
26
  {
27
27
 
28
+ event LogStakingTokenHandlerDeployed(NftId componentNftId, address tokenHandler, address token);
29
+
28
30
  // owner functions
29
31
  event LogStakingStakingRateSet(ChainId chainId, address token, UFixed newStakingRate, UFixed oldStakingRate, Blocknumber lastUpdateIn);
30
32
  event LogStakingStakingServiceSet(address stakingService, VersionPart release, address oldStakingService);
@@ -17,21 +17,12 @@ interface IStakingService is IService
17
17
  {
18
18
 
19
19
  event LogStakingServiceProtocolTargetRegistered(NftId protocolNftId);
20
- event LogStakingServiceInstanceTargetRegistered(NftId instanceNftId, uint256 chainId);
21
- event LogStakingServiceLockingPeriodSet(NftId targetNftId, Seconds oldLockingDuration, Seconds lockingDuration);
22
- event LogStakingServiceRewardRateSet(NftId targetNftId, UFixed oldRewardRate, UFixed rewardRate);
20
+ event LogStakingServiceInstanceTargetRegistered(NftId instanceNftId, uint256 chainId, Seconds initialLockingPeriod, UFixed initialRewardRate);
23
21
 
24
22
  event LogStakingServiceRewardReservesIncreased(NftId targetNftId, address rewardProvider, Amount dipAmount, Amount newBalance);
25
23
  event LogStakingServiceRewardReservesDecreased(NftId targetNftId, address targetOwner, Amount dipAmount, Amount newBalance);
26
24
 
27
25
  event LogStakingServiceStakeObjectCreated(NftId stakeNftId, NftId targetNftId, address stakeOwner);
28
- event LogStakingServiceStakeCreated(NftId stakeNftId, NftId targetNftId, address owner, Amount stakedAmount);
29
- event LogStakingServiceStakeIncreased(NftId stakeNftId, address owner, Amount stakedAmount, Amount stakeBalance);
30
- event LogStakingServiceUnstaked(NftId stakeNftId, address stakeOwner, Amount totalAmount);
31
- event LogStakingServiceStakeRestaked(address stakeOwner, NftId indexed stakeNftId, NftId newStakeNftId, NftId indexed newTargetNftId, Amount indexed newStakeBalance);
32
-
33
- event LogStakingServiceRewardsUpdated(NftId stakeNftId);
34
- event LogStakingServiceRewardsClaimed(NftId stakeNftId, address stakeOwner, Amount rewardsClaimedAmount);
35
26
 
36
27
  // modifiers
37
28
  error ErrorStakingServiceNotStakingOwner(address account);
@@ -86,6 +86,7 @@ contract Staking is
86
86
  address(this),
87
87
  dipToken,
88
88
  getRegistry().getAuthority());
89
+ emit LogStakingTokenHandlerDeployed(getNftId(), address($._tokenHandler), dipToken);
89
90
  }
90
91
 
91
92
 
@@ -59,7 +59,7 @@ contract StakingService is
59
59
  initialLockingPeriod,
60
60
  initialRewardRate);
61
61
 
62
- emit LogStakingServiceInstanceTargetRegistered(targetNftId, chainId);
62
+ emit LogStakingServiceInstanceTargetRegistered(targetNftId, chainId, initialLockingPeriod, initialRewardRate);
63
63
  }
64
64
 
65
65
 
@@ -72,4 +72,10 @@ library RequestIdLib {
72
72
  function toKeyId(RequestId id) public pure returns (KeyId keyId) {
73
73
  return KeyId.wrap(bytes31(uint248(RequestId.unwrap(id))));
74
74
  }
75
+
76
+ function toRequestId(KeyId keyId) public pure returns (RequestId requestId) {
77
+ uint248 keyIdInt = uint248(bytes31(KeyId.unwrap(keyId)));
78
+ assert(keyIdInt < type(uint64).max);
79
+ return RequestId.wrap(uint64(keyIdInt));
80
+ }
75
81
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etherisc/gif-next",
3
- "version": "3.0.0-2f1539b-882",
3
+ "version": "3.0.0-303db9f-884",
4
4
  "description": "This is the repository for the next version of the Generic Insurance Framework (GIF) smart contracts. ",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -43,8 +43,8 @@
43
43
  "typescript": "^5"
44
44
  },
45
45
  "dependencies": {
46
- "@openzeppelin/contracts": "5.0.2",
47
- "@openzeppelin/contracts-upgradeable": "5.0.2",
46
+ "@openzeppelin/contracts": "5.1.0",
47
+ "@openzeppelin/contracts-upgradeable": "5.1.0",
48
48
  "@openzeppelin/upgrades-core": "^1.34.1",
49
49
  "abi-coder": "^5.0.0",
50
50
  "antlr4ng": "^3.0.4",