@etherisc/gif-next 3.0.0-65fa82c-553 → 3.0.0-6788417-745

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 (465) hide show
  1. package/README.md +9 -1
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
  3. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +42 -56
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
  5. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +44 -48
  6. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
  7. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +14 -20
  8. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  9. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +99 -87
  10. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
  11. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +2 -2
  12. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  13. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +42 -29
  14. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  15. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +2 -2
  16. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  17. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  18. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +75 -63
  19. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  20. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  21. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  22. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +2 -2
  23. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  24. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +20 -114
  25. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  26. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +2 -2
  27. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  28. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +2 -96
  29. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  30. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +187 -114
  31. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  32. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +75 -75
  33. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  34. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +2 -96
  35. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  36. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +113 -40
  37. package/artifacts/contracts/examples/crop/AccountingToken.sol/AccountingToken.dbg.json +4 -0
  38. package/artifacts/contracts/examples/crop/AccountingToken.sol/AccountingToken.json +376 -0
  39. package/artifacts/contracts/examples/crop/CropPool.sol/CropPool.dbg.json +4 -0
  40. package/artifacts/contracts/examples/crop/CropPool.sol/CropPool.json +1391 -0
  41. package/artifacts/contracts/examples/crop/CropPoolAuthorization.sol/CropPoolAuthorization.dbg.json +4 -0
  42. package/artifacts/contracts/examples/crop/CropPoolAuthorization.sol/CropPoolAuthorization.json +844 -0
  43. package/artifacts/contracts/examples/crop/CropProduct.sol/CropProduct.dbg.json +4 -0
  44. package/artifacts/contracts/examples/crop/CropProduct.sol/CropProduct.json +2327 -0
  45. package/artifacts/contracts/examples/crop/CropProductAuthorization.sol/CropProductAuthorization.dbg.json +4 -0
  46. package/artifacts/contracts/examples/crop/CropProductAuthorization.sol/CropProductAuthorization.json +891 -0
  47. package/artifacts/contracts/examples/crop/Location.sol/LocationLib.dbg.json +4 -0
  48. package/artifacts/contracts/examples/crop/Location.sol/LocationLib.json +199 -0
  49. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
  50. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +2 -2
  51. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
  52. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +21 -96
  53. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
  54. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +2 -2
  55. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
  56. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +49 -129
  57. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
  58. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +2 -2
  59. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
  60. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +2 -2
  61. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
  62. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +136 -65
  63. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
  64. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.json +2 -2
  65. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.dbg.json +4 -0
  66. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.json +801 -0
  67. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
  68. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +131 -132
  69. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
  70. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +2 -2
  71. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
  72. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +23 -98
  73. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +1 -1
  74. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +2 -2
  75. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +1 -1
  76. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +302 -585
  77. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
  78. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +20 -20
  79. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.dbg.json +4 -0
  80. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.json +711 -0
  81. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
  82. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +2 -2
  83. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +1 -1
  84. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.json +2 -2
  85. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
  86. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +28 -122
  87. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
  88. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +2 -2
  89. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
  90. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +91 -83
  91. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
  92. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +29 -104
  93. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
  94. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +2 -2
  95. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
  96. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +25 -100
  97. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
  98. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +2 -2
  99. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
  100. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.json +50 -0
  101. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  102. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +59 -72
  103. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
  104. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.json +50 -0
  105. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  106. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +34 -21
  107. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  108. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +108 -9
  109. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  110. package/artifacts/contracts/instance/Instance.sol/Instance.json +51 -33
  111. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  112. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +191 -179
  113. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  114. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +21 -21
  115. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  116. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +136 -34
  117. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  118. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +151 -36
  119. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  120. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +41 -41
  121. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  122. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +171 -121
  123. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
  124. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +141 -91
  125. package/artifacts/contracts/instance/RequestSet.sol/RequestSet.dbg.json +4 -0
  126. package/artifacts/contracts/instance/RequestSet.sol/RequestSet.json +466 -0
  127. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
  128. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +66 -79
  129. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  130. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +9 -9
  131. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  132. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  133. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  134. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  135. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
  136. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  137. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +3 -3
  138. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
  139. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +38 -2
  140. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  141. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  142. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  143. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  144. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  145. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  146. package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
  147. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  148. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +85 -77
  149. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  150. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +2 -2
  151. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  152. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  153. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +67 -59
  154. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  155. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +19 -13
  156. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  157. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +71 -63
  158. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  159. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +57 -51
  160. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  161. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +50 -50
  162. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  163. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +4 -79
  164. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  165. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +2 -2
  166. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  167. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +90 -85
  168. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  169. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +62 -62
  170. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  171. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +32 -27
  172. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  173. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +4 -79
  174. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  175. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +55 -43
  176. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  177. package/artifacts/contracts/pool/Pool.sol/Pool.json +4 -79
  178. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
  179. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +4 -9
  180. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  181. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +113 -101
  182. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  183. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +63 -63
  184. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  185. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +37 -37
  186. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  187. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +44 -44
  188. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  189. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +2 -77
  190. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  191. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +2 -2
  192. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  193. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +86 -80
  194. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  195. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +67 -67
  196. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  197. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +11 -11
  198. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  199. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +24 -18
  200. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  201. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +21 -9
  202. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  203. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +2 -2
  204. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  205. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +2 -77
  206. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  207. package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +15 -28
  208. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  209. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +81 -69
  210. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
  211. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +20 -12
  212. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  213. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +60 -60
  214. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  215. package/artifacts/contracts/product/PricingService.sol/PricingService.json +34 -34
  216. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  217. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +51 -51
  218. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  219. package/artifacts/contracts/product/Product.sol/Product.json +2 -77
  220. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  221. package/artifacts/contracts/product/RiskService.sol/RiskService.json +37 -50
  222. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  223. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +42 -42
  224. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  225. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +58 -8
  226. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  227. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +30 -24
  228. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  229. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +2 -2
  230. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
  231. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  232. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  233. package/artifacts/contracts/registry/Registry.sol/Registry.json +132 -66
  234. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  235. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +168 -156
  236. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
  237. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +2 -27
  238. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  239. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +8 -8
  240. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  241. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +37 -37
  242. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
  243. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +198 -186
  244. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  245. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +2 -2
  246. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  247. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +119 -110
  248. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  249. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +19 -19
  250. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  251. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +20 -20
  252. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  253. package/artifacts/contracts/shared/Component.sol/Component.json +2 -77
  254. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  255. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +329 -113
  256. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  257. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +61 -61
  258. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
  259. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +2 -2
  260. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
  261. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
  262. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
  263. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +1 -1
  264. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.json +2 -77
  265. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  266. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +2 -77
  267. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  268. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +271 -55
  269. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  270. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +2 -77
  271. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  272. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  273. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +2 -2
  274. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  275. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  276. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +2 -2
  277. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  278. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  279. package/artifacts/contracts/shared/IService.sol/IService.json +2 -2
  280. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  281. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +2 -2
  282. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  283. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +2 -77
  284. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  285. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  286. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
  287. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  288. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +4 -4
  289. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  290. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
  291. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  292. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +2 -2
  293. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  294. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
  295. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  296. package/artifacts/contracts/shared/Service.sol/Service.json +2 -2
  297. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  298. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +39 -66
  299. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
  300. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +22 -49
  301. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
  302. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +28 -28
  303. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  304. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +91 -147
  305. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  306. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +15 -221
  307. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +1 -1
  308. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  309. package/artifacts/contracts/staking/Staking.sol/Staking.json +139 -195
  310. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
  311. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +2 -7
  312. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  313. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +53 -53
  314. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  315. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
  316. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  317. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +35 -241
  318. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  319. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +40 -40
  320. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  321. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +220 -220
  322. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
  323. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +9 -14
  324. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  325. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -7
  326. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  327. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
  328. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  329. package/artifacts/contracts/type/Amount.sol/AmountLib.json +2 -7
  330. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  331. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +2 -2
  332. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
  333. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +2 -2
  334. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  335. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
  336. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  337. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  338. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  339. package/artifacts/contracts/type/Fee.sol/FeeLib.json +2 -7
  340. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  341. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  342. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
  343. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
  344. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  345. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
  346. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  347. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  348. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  349. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +2 -2
  350. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  351. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
  352. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  353. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
  354. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  355. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +23 -4
  356. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
  357. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +2 -2
  358. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  359. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
  360. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  361. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +2 -2
  362. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  363. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +2 -2
  364. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  365. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +2 -2
  366. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  367. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
  368. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  369. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +2 -2
  370. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  371. package/artifacts/contracts/type/String.sol/StrLib.json +2 -2
  372. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  373. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +2 -2
  374. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  375. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +2 -7
  376. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  377. package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
  378. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  379. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +2 -2
  380. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
  381. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  382. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +22 -22
  383. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  384. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +3 -3
  385. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
  386. package/contracts/accounting/AccountingService.sol +17 -29
  387. package/contracts/accounting/IAccountingService.sol +7 -8
  388. package/contracts/authorization/AccessAdmin.sol +10 -29
  389. package/contracts/authorization/AccessManagerCloneable.sol +4 -0
  390. package/contracts/authorization/IAccessAdmin.sol +9 -8
  391. package/contracts/distribution/DistributionService.sol +24 -19
  392. package/contracts/distribution/IDistributionComponent.sol +0 -2
  393. package/contracts/distribution/IDistributionService.sol +8 -7
  394. package/contracts/examples/crop/AccountingToken.sol +26 -0
  395. package/contracts/examples/crop/CropPool.sol +89 -0
  396. package/contracts/examples/crop/CropPoolAuthorization.sol +37 -0
  397. package/contracts/examples/crop/CropProduct.sol +495 -0
  398. package/contracts/examples/crop/CropProductAuthorization.sol +69 -0
  399. package/contracts/examples/crop/Location.sol +50 -0
  400. package/contracts/examples/flight/FlightLib.sol +55 -18
  401. package/contracts/examples/flight/FlightNft.sol +234 -0
  402. package/contracts/examples/flight/FlightOracle.sol +20 -62
  403. package/contracts/examples/flight/FlightOracleAuthorization.sol +4 -1
  404. package/contracts/examples/flight/FlightPool.sol +1 -1
  405. package/contracts/examples/flight/FlightProduct.sol +182 -180
  406. package/contracts/examples/flight/FlightProductAuthorization.sol +3 -2
  407. package/contracts/examples/flight/FlightProductManager.sol +49 -0
  408. package/contracts/instance/BaseStore.sol +4 -0
  409. package/contracts/instance/BundleSet.sol +7 -8
  410. package/contracts/instance/IBaseStore.sol +8 -0
  411. package/contracts/instance/IInstance.sol +10 -7
  412. package/contracts/instance/IInstanceService.sol +11 -4
  413. package/contracts/instance/Instance.sol +8 -0
  414. package/contracts/instance/InstanceAdmin.sol +2 -1
  415. package/contracts/instance/InstanceAuthorizationV3.sol +15 -1
  416. package/contracts/instance/InstanceReader.sol +28 -5
  417. package/contracts/instance/InstanceService.sol +68 -36
  418. package/contracts/instance/InstanceStore.sol +14 -14
  419. package/contracts/instance/ProductStore.sol +14 -14
  420. package/contracts/instance/RequestSet.sol +63 -0
  421. package/contracts/instance/RiskSet.sol +6 -7
  422. package/contracts/instance/TargetNames.sol +1 -0
  423. package/contracts/instance/base/BalanceStore.sol +7 -7
  424. package/contracts/instance/base/ObjectSet.sol +9 -1
  425. package/contracts/instance/base/ObjectSetHelperLib.sol +5 -1
  426. package/contracts/oracle/BasicOracle.sol +1 -0
  427. package/contracts/oracle/IOracleComponent.sol +10 -0
  428. package/contracts/oracle/IOracleService.sol +5 -5
  429. package/contracts/oracle/Oracle.sol +50 -26
  430. package/contracts/oracle/OracleService.sol +26 -23
  431. package/contracts/pool/BundleService.sol +3 -3
  432. package/contracts/pool/IBundleService.sol +9 -10
  433. package/contracts/pool/IPoolComponent.sol +1 -1
  434. package/contracts/pool/IPoolService.sol +14 -14
  435. package/contracts/pool/PoolService.sol +2 -2
  436. package/contracts/product/ClaimService.sol +1 -1
  437. package/contracts/product/IApplicationService.sol +8 -8
  438. package/contracts/product/IClaimService.sol +9 -9
  439. package/contracts/product/IPolicyService.sol +7 -7
  440. package/contracts/product/IRiskService.sol +4 -5
  441. package/contracts/product/PolicyService.sol +1 -1
  442. package/contracts/product/PolicyServiceLib.sol +5 -3
  443. package/contracts/product/RiskService.sol +2 -2
  444. package/contracts/registry/ChainNft.sol +10 -9
  445. package/contracts/registry/IRegistry.sol +11 -10
  446. package/contracts/registry/Registry.sol +16 -13
  447. package/contracts/registry/RegistryAuthorization.sol +0 -2
  448. package/contracts/registry/ReleaseAdmin.sol +4 -4
  449. package/contracts/registry/ReleaseRegistry.sol +7 -8
  450. package/contracts/registry/TokenRegistry.sol +3 -3
  451. package/contracts/shared/ComponentService.sol +38 -4
  452. package/contracts/shared/IComponent.sol +0 -4
  453. package/contracts/shared/IComponentService.sol +31 -9
  454. package/contracts/shared/INftOwnable.sol +1 -1
  455. package/contracts/shared/InstanceLinkedComponent.sol +1 -1
  456. package/contracts/shared/TokenHandler.sol +5 -5
  457. package/contracts/staking/IStaking.sol +33 -31
  458. package/contracts/staking/IStakingService.sol +7 -16
  459. package/contracts/staking/Staking.sol +5 -4
  460. package/contracts/staking/StakingService.sol +2 -3
  461. package/contracts/staking/StakingStore.sol +3 -3
  462. package/contracts/staking/TargetHandler.sol +2 -2
  463. package/contracts/type/RequestId.sol +6 -0
  464. package/contracts/upgradeability/ProxyManager.sol +2 -2
  465. package/package.json +3 -3
@@ -10,16 +10,16 @@ contract BalanceStore {
10
10
  error ErrorBalanceStoreTargetAlreadyRegistered(NftId targetNftId);
11
11
  error ErrorBalanceStoreTargetNotRegistered(NftId targetNftId);
12
12
 
13
- event LogBalanceStoreTargetRegistered(NftId targetNftId);
13
+ event LogBalanceStoreTargetRegistered(NftId indexed targetNftId);
14
14
 
15
- event LogBalanceStoreFeesIncreased(NftId targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
16
- event LogBalanceStoreFeesDecreased(NftId targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
15
+ event LogBalanceStoreFeesIncreased(NftId indexed targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
16
+ event LogBalanceStoreFeesDecreased(NftId indexed targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
17
17
 
18
- event LogBalanceStoreLockedIncreased(NftId targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
19
- event LogBalanceStoreLockedDecreased(NftId targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
18
+ event LogBalanceStoreLockedIncreased(NftId indexed targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
19
+ event LogBalanceStoreLockedDecreased(NftId indexed targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
20
20
 
21
- event LogBalanceStoreBalanceIncreased(NftId targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
22
- event LogBalanceStoreBalanceDecreased(NftId targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
21
+ event LogBalanceStoreBalanceIncreased(NftId indexed targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
22
+ event LogBalanceStoreBalanceDecreased(NftId indexed targetNftId, Amount addedAmount, Amount newBalance, Blocknumber lastUpdatedIn);
23
23
 
24
24
  mapping(NftId nftId => Amount balance) private _balanceAmount;
25
25
  mapping(NftId nftId => Amount locked) private _lockedAmount;
@@ -12,7 +12,7 @@ contract ObjectSet is
12
12
  {
13
13
  using LibKey32Set for LibKey32Set.Set;
14
14
 
15
- event LogObjectSetInitialized(address instance);
15
+ event LogObjectSetInitialized(address indexed instance);
16
16
 
17
17
  error ErrorObjectSetNftIdInvalid(NftId instanceNftId);
18
18
 
@@ -43,6 +43,14 @@ 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
+
46
54
  function _activate(NftId componentNftId, Key32 key) internal {
47
55
  _activeObjects[componentNftId].add(key);
48
56
  }
@@ -2,6 +2,7 @@
2
2
  pragma solidity ^0.8.20;
3
3
 
4
4
  import {IBundle} from "../module/IBundle.sol";
5
+ import {IComponents} from "../module/IComponents.sol";
5
6
  import {IInstance} from "../IInstance.sol";
6
7
  import {IRisk} from "../module/IRisk.sol";
7
8
  import {NftId} from "../../type/NftId.sol";
@@ -11,7 +12,6 @@ import {RiskId} from "../../type/RiskId.sol";
11
12
  library ObjectSetHelperLib {
12
13
 
13
14
  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,4 +27,8 @@ 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
+
30
34
  }
@@ -22,6 +22,7 @@ contract BasicOracle is
22
22
  _respond(requestId, responseData);
23
23
  }
24
24
 
25
+
25
26
  function _initializeBasicOracle(
26
27
  address registry,
27
28
  NftId instanceNftId,
@@ -13,6 +13,10 @@ 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
+
16
20
  /// @dev callback method for requesting some data from the oracle
17
21
  function request(
18
22
  RequestId requestId,
@@ -30,4 +34,10 @@ interface IOracleComponent is IInstanceLinkedComponent {
30
34
 
31
35
  /// @dev returns true iff the component needs to be called when selling/renewing policis
32
36
  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);
33
43
  }
@@ -11,11 +11,11 @@ import {Timestamp} from "../type/Timestamp.sol";
11
11
 
12
12
  interface IOracleService is IService {
13
13
 
14
- event LogOracleServiceRequestCreated(RequestId requestId, NftId requesterNftId, NftId oracleNftId, Timestamp expiryAt);
15
- event LogOracleServiceResponseProcessed(RequestId requestId, NftId oracleNftId);
16
- event LogOracleServiceDeliveryFailed(RequestId requestId, address requesterAddress, string functionSignature);
17
- event LogOracleServiceResponseResent(RequestId requestId, NftId requesterNftId);
18
- event LogOracleServiceRequestCancelled(RequestId requestId, NftId requesterNftId);
14
+ event LogOracleServiceRequestCreated(RequestId indexed requestId, NftId indexed requesterNftId, NftId indexed oracleNftId, Timestamp expiryAt);
15
+ event LogOracleServiceResponseProcessed(RequestId indexed requestId, NftId indexed requesterNftId, NftId indexed oracleNftId);
16
+ event LogOracleServiceDeliveryFailed(RequestId indexed requestId, address indexed requesterAddress, string functionSignature);
17
+ event LogOracleServiceResponseResent(RequestId indexed requestId, NftId indexed requesterNftId);
18
+ event LogOracleServiceRequestCancelled(RequestId indexed requestId, NftId indexed requesterNftId);
19
19
 
20
20
  // create request
21
21
  error ErrorOracleServiceProductMismatch(ObjectType callerObjectType, NftId productNft, NftId oracleParentNftId);
@@ -2,7 +2,7 @@
2
2
  pragma solidity ^0.8.20;
3
3
 
4
4
  import {Amount} from "../type/Amount.sol";
5
- import {COMPONENT, PRODUCT, ORACLE} from "../type/ObjectType.sol";
5
+ import {COMPONENT, 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";
@@ -63,7 +63,7 @@ abstract contract Oracle is
63
63
  }
64
64
 
65
65
  /// @dev Not relevant for oracle components
66
- function withdrawFees(Amount amount)
66
+ function withdrawFees(Amount)
67
67
  external
68
68
  virtual
69
69
  override(IInstanceLinkedComponent, InstanceLinkedComponent)
@@ -74,7 +74,32 @@ abstract contract Oracle is
74
74
  revert ErrorOracleNotImplemented("withdrawFees");
75
75
  }
76
76
 
77
+ function activeRequests()
78
+ external
79
+ view
80
+ returns(uint256 numberOfRequests)
81
+ {
82
+ return _getInstanceReader().getActiveRequests(getNftId());
83
+ }
77
84
 
85
+
86
+ function getActiveRequest(uint256 idx)
87
+ external
88
+ view
89
+ returns(RequestId requestId)
90
+ {
91
+ return _getInstanceReader().getActiveRequestAt(getNftId(), idx);
92
+ }
93
+
94
+ function isActiveRequest(RequestId requestId)
95
+ external
96
+ view
97
+ returns(bool isActive)
98
+ {
99
+ return _getInstanceReader().isRequestActive(getNftId(), requestId);
100
+ }
101
+
102
+ // solhint-disable-next-line func-name-mixedcase
78
103
  function __Oracle_init(
79
104
  address registry,
80
105
  NftId productNftId,
@@ -102,49 +127,48 @@ abstract contract Oracle is
102
127
  _registerInterface(type(IOracleComponent).interfaceId);
103
128
  }
104
129
 
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(
130
+ /// @dev Internal function for handling oracle responses.
131
+ /// Default implementation sends response back to oracle service.
132
+ /// Use this function in use case specific external/public functions to handle use case specific response handling.
133
+ function _respond(
110
134
  RequestId requestId,
111
- NftId requesterId,
112
- bytes calldata requestData,
113
- Timestamp expiryAt
135
+ bytes memory responseData
114
136
  )
115
137
  internal
116
138
  virtual
117
139
  {
140
+ _getOracleStorage()._oracleService.respond(requestId, responseData);
118
141
  }
119
142
 
120
-
121
- /// @dev Internal function for cancelling requests.
122
- /// Empty implementation.
123
- /// Overwrite this function to implement use case specific cancelling.
124
- function _cancel(
125
- RequestId requestId
143
+ /// @dev use case specific handling of oracle requests
144
+ /// for now only log is emitted to verify that request has been received by oracle component
145
+ function _request(
146
+ RequestId requestId,
147
+ NftId requesterId,
148
+ bytes calldata,
149
+ Timestamp
126
150
  )
127
151
  internal
128
- virtual
152
+ virtual
129
153
  {
154
+ emit LogOracleRequestReceived(requestId, requesterId);
130
155
  }
131
156
 
132
157
 
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(
137
- RequestId requestId,
138
- bytes memory responseData
158
+ /// @dev use case specific handling of oracle requests
159
+ /// for now only log is emitted to verify that cancelling has been received by oracle component
160
+ function _cancel(
161
+ RequestId requestId
139
162
  )
140
163
  internal
141
- virtual
164
+ virtual
142
165
  {
143
- _getOracleStorage()._oracleService.respond(
144
- requestId, responseData);
166
+ emit LogOracleRequestCancelled(requestId);
145
167
  }
146
168
 
169
+
147
170
  function _getOracleStorage() private pure returns (OracleStorage storage $) {
171
+ // solhint-disable-next-line no-inline-assembly
148
172
  assembly {
149
173
  $.slot := ORACLE_STORAGE_LOCATION_V1
150
174
  }
@@ -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,12 +141,13 @@ 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);
147
148
  }
148
149
 
149
- emit LogOracleServiceResponseProcessed(requestId, oracleNftId);
150
+ emit LogOracleServiceResponseProcessed(requestId, requesterInfo.nftId, oracleNftId);
150
151
  }
151
152
 
152
153
 
@@ -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
 
@@ -201,10 +201,10 @@ contract BundleService is
201
201
 
202
202
  if (locked) {
203
203
  bundleManager.lock(bundleNftId);
204
- emit LogBundleServiceBundleLocked(bundleNftId);
204
+ emit LogBundleServiceBundleLocked(bundleNftId, true);
205
205
  } else {
206
206
  bundleManager.unlock(bundleNftId);
207
- emit LogBundleServiceBundleUnlocked(bundleNftId);
207
+ emit LogBundleServiceBundleLocked(bundleNftId, false);
208
208
  }
209
209
  }
210
210
 
@@ -30,16 +30,15 @@ interface IBundleService is IService {
30
30
 
31
31
  error ErrorBundleServiceExtensionLifetimeIsZero();
32
32
 
33
- event LogBundleServiceBundleCreated(NftId bundleNftId, NftId poolNftId, Seconds lifetime);
34
- event LogBundleServiceBundleClosed(NftId bundleNftId);
35
- event LogBundleServiceBundleLocked(NftId bundleNftId);
36
- event LogBundleServiceBundleUnlocked(NftId bundleNftId);
37
- event LogBundleServiceBundleExtended(NftId bundleNftId, Seconds lifetimeExtension, Timestamp extendedExpiredAt);
38
- event LogBundleServiceBundleFeeUpdated(NftId bundleNftId, Amount fixedFee, UFixed fractionalFee);
39
- event LogBundleServiceCollateralLocked(NftId bundleNftId, NftId policyNftId, Amount collateralAmount);
40
- event LogBundleServiceCollateralReleased(NftId bundleNftId, NftId policyNftId, Amount collateralAmount);
41
- event LogBundleServiceBundleStaked(NftId bundleNftId, Amount amount);
42
- event LogBundleServiceBundleUnstaked(NftId bundleNftId, Amount amount);
33
+ event LogBundleServiceBundleCreated(NftId indexed bundleNftId, NftId indexed poolNftId, Seconds lifetime, Amount fixedFee, UFixed fractionalFee);
34
+ event LogBundleServiceBundleClosed(NftId indexed bundleNftId);
35
+ event LogBundleServiceBundleLocked(NftId indexed bundleNftId, bool indexed locked);
36
+ event LogBundleServiceBundleExtended(NftId indexed bundleNftId, Seconds lifetimeExtension, Timestamp extendedExpiredAt);
37
+ event LogBundleServiceBundleFeeUpdated(NftId indexed bundleNftId, Amount fixedFee, UFixed fractionalFee);
38
+ event LogBundleServiceCollateralLocked(NftId indexed bundleNftId, NftId indexed policyNftId, Amount collateralAmount);
39
+ event LogBundleServiceCollateralReleased(NftId indexed bundleNftId, NftId indexed policyNftId, Amount collateralAmount);
40
+ event LogBundleServiceBundleStaked(NftId indexed bundleNftId, Amount amount);
41
+ event LogBundleServiceBundleUnstaked(NftId indexed bundleNftId, Amount amount);
43
42
 
44
43
  /// @dev Create a new bundle for the specified attributes.
45
44
  function create(
@@ -19,7 +19,7 @@ interface IPoolComponent is IInstanceLinkedComponent {
19
19
  error ErrorPoolNotPoolService(address caller);
20
20
  error ErrorPoolApplicationBundleMismatch(NftId applicationNftId);
21
21
 
22
- event LogPoolVerifiedByPool(address pool, NftId applicationNftId, Amount collateralizationAmount);
22
+ event LogPoolVerifiedByPool(address indexed pool, NftId indexed applicationNftId, Amount collateralizationAmount);
23
23
 
24
24
  /// @dev This is a callback function that is called by the product service when underwriting a policy.
25
25
  /// The pool has the option to check the details and object to underwriting by reverting.
@@ -14,25 +14,25 @@ import {PayoutId} from "../type/PayoutId.sol";
14
14
 
15
15
  interface IPoolService is IService {
16
16
 
17
- event LogPoolServiceMaxBalanceAmountUpdated(NftId poolNftId, Amount previousMaxCapitalAmount, Amount currentMaxCapitalAmount);
18
- event LogPoolServiceWalletFunded(NftId poolNftId, address poolOwner, Amount amount);
19
- event LogPoolServiceWalletDefunded(NftId poolNftId, address poolOwner, Amount amount);
17
+ event LogPoolServiceMaxBalanceAmountUpdated(NftId indexed poolNftId, Amount previousMaxCapitalAmount, Amount currentMaxCapitalAmount);
18
+ event LogPoolServiceWalletFunded(NftId indexed poolNftId, address indexed poolOwner, Amount amount);
19
+ event LogPoolServiceWalletDefunded(NftId indexed poolNftId, address indexed poolOwner, Amount amount);
20
20
 
21
- event LogPoolServiceBundleCreated(NftId instanceNftId, NftId poolNftId, NftId bundleNftId);
22
- event LogPoolServiceBundleClosed(NftId instanceNftId, NftId poolNftId, NftId bundleNftId);
21
+ event LogPoolServiceBundleCreated(NftId indexed instanceNftId, NftId indexed poolNftId, NftId indexed bundleNftId);
22
+ event LogPoolServiceBundleClosed(NftId indexed instanceNftId, NftId indexed poolNftId, NftId indexed bundleNftId, Amount balanceAmount, Amount feeAmount);
23
23
 
24
- event LogPoolServiceBundleStaked(NftId instanceNftId, NftId poolNftId, NftId bundleNftId, Amount amount, Amount netAmount);
25
- event LogPoolServiceBundleUnstaked(NftId instanceNftId, NftId poolNftId, NftId bundleNftId, Amount amount, Amount netAmount);
24
+ event LogPoolServiceBundleStaked(NftId indexed instanceNftId, NftId indexed poolNftId, NftId indexed bundleNftId, Amount amount, Amount netAmount);
25
+ event LogPoolServiceBundleUnstaked(NftId indexed instanceNftId, NftId indexed poolNftId, NftId indexed bundleNftId, Amount amount, Amount netAmount);
26
26
 
27
- event LogPoolServiceFeesWithdrawn(NftId bundleNftId, address recipient, address tokenAddress, Amount amount);
27
+ event LogPoolServiceFeesWithdrawn(NftId indexed bundleNftId, address indexed recipient, Amount amount, address indexed tokenAddress);
28
28
 
29
- event LogPoolServiceProcessFundedClaim(NftId policyNftId, ClaimId claimId, Amount availableAmount);
29
+ event LogPoolServiceProcessFundedClaim(NftId indexed policyNftId, ClaimId indexed claimId, Amount availableAmount);
30
30
 
31
- event LogPoolServiceApplicationVerified(NftId poolNftId, NftId bundleNftId, NftId applicationNftId, Amount totalCollateralAmount);
32
- event LogPoolServiceCollateralLocked(NftId poolNftId, NftId bundleNftId, NftId applicationNftId, Amount totalCollateralAmount, Amount lockedCollateralAmount);
33
- event LogPoolServiceCollateralReleased(NftId bundleNftId, NftId policyNftId, Amount remainingCollateralAmount);
34
- event LogPoolServiceSaleProcessed(NftId poolNftId, NftId bundleNftId, Amount bundleNetAmount, Amount bundleFeeAmount, Amount poolFeeAmount);
35
- event LogPoolServicePayoutProcessed(NftId poolNftId, NftId bundleNftId, NftId policyNftId, PayoutId payoutId, Amount netPayoutAmount, Amount processingFeeAmount, address payoutBeneficiary);
31
+ event LogPoolServiceApplicationVerified(NftId indexed poolNftId, NftId indexed bundleNftId, NftId indexed applicationNftId, Amount totalCollateralAmount);
32
+ event LogPoolServiceCollateralLocked(NftId indexed poolNftId, NftId indexed bundleNftId, NftId indexed applicationNftId, Amount totalCollateralAmount, Amount lockedCollateralAmount);
33
+ event LogPoolServiceCollateralReleased(NftId indexed bundleNftId, NftId indexed policyNftId, Amount releasedCollateralAmount);
34
+ event LogPoolServiceSaleProcessed(NftId indexed poolNftId, NftId indexed bundleNftId, Amount bundleNetAmount, Amount bundleFeeAmount, Amount poolFeeAmount);
35
+ event LogPoolServicePayoutProcessed(NftId indexed poolNftId, NftId indexed bundleNftId, NftId indexed policyNftId, PayoutId payoutId, Amount netPayoutAmount, Amount processingFeeAmount, address payoutBeneficiary);
36
36
 
37
37
  error ErrorPoolServicePoolNotExternallyManaged(NftId poolNftId);
38
38
  error ErrorPoolServicePolicyPoolMismatch(NftId policyNftId, NftId productNftId, NftId expectedProductNftId);
@@ -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);
@@ -553,7 +553,7 @@ contract PoolService is
553
553
  address bundleOwner = getRegistry().ownerOf(bundleNftId);
554
554
  TokenHandler tokenHandler = reader.getTokenHandler(poolNftId);
555
555
  address token = address(tokenHandler.TOKEN());
556
- emit LogPoolServiceFeesWithdrawn(bundleNftId, bundleOwner, token, withdrawnAmount);
556
+ emit LogPoolServiceFeesWithdrawn(bundleNftId, bundleOwner, withdrawnAmount, token);
557
557
 
558
558
  tokenHandler.pushToken(bundleOwner, withdrawnAmount);
559
559
  }
@@ -496,7 +496,7 @@ contract ClaimService is
496
496
  claimInfo.openPayoutsCount += 1;
497
497
  instanceContracts.productStore.updateClaim(policyNftId, claimId, claimInfo, KEEP_STATE());
498
498
 
499
- emit LogClaimServicePayoutCreated(policyNftId, payoutId, amount, beneficiary);
499
+ emit LogClaimServicePayoutCreated(policyNftId, claimId, payoutId, amount, beneficiary);
500
500
  }
501
501
 
502
502
  /// @dev Verifies the caller is a product and the policy is active.
@@ -15,24 +15,24 @@ import {Seconds} from "../type/Seconds.sol";
15
15
  interface IApplicationService is IService {
16
16
 
17
17
  event LogApplicationServiceApplicationCreated(
18
- NftId applicationNftId,
19
- NftId productNftId,
20
- NftId bundleNftId,
18
+ NftId indexed applicationNftId,
19
+ NftId indexed productNftId,
20
+ NftId indexed bundleNftId,
21
21
  RiskId riskId,
22
22
  ReferralId referralId,
23
23
  address applicationOwner,
24
24
  Amount sumInsuredAmount,
25
25
  Amount premiumAmount,
26
26
  Seconds lifetime);
27
- event LogApplicationServiceApplicationRenewed(NftId policyNftId, NftId bundleNftId);
27
+ event LogApplicationServiceApplicationRenewed(NftId indexed policyNftId, NftId indexed bundleNftId);
28
28
  event LogApplicationServiceApplicationAdjusted(
29
- NftId applicationNftId,
30
- NftId bundleNftId,
31
- RiskId riskId,
29
+ NftId indexed applicationNftId,
30
+ NftId indexed bundleNftId,
31
+ RiskId indexed riskId,
32
32
  ReferralId referralId,
33
33
  Amount sumInsuredAmount,
34
34
  Seconds lifetime);
35
- event LogApplicationServiceApplicationRevoked(NftId applicationNftId);
35
+ event LogApplicationServiceApplicationRevoked(NftId indexed applicationNftId);
36
36
 
37
37
  // _checkLinkedApplicationParameters
38
38
  error ErrorApplicationServiceRiskProductMismatch(RiskId riskId, NftId riskProductNftId, NftId productNftId);
@@ -19,15 +19,15 @@ import {Fee} from "../type/Fee.sol";
19
19
  interface IClaimService is
20
20
  IService
21
21
  {
22
- event LogClaimServiceClaimSubmitted(NftId policyNftId, ClaimId claimId, Amount claimAmount);
23
- event LogClaimServiceClaimConfirmed(NftId policyNftId, ClaimId claimId, Amount confirmedAmount);
24
- event LogClaimServiceClaimDeclined(NftId policyNftId, ClaimId claimId);
25
- event LogClaimServiceClaimRevoked(NftId policyNftId, ClaimId claimId);
26
- event LogClaimServiceClaimCancelled(NftId policyNftId, ClaimId claimId);
27
-
28
- event LogClaimServicePayoutCreated(NftId policyNftId, PayoutId payoutId, Amount amount, address beneficiary);
29
- event LogClaimServicePayoutProcessed(NftId policyNftId, PayoutId payoutId, Amount amount);
30
- event LogClaimServicePayoutCancelled(NftId policyNftId, PayoutId payoutId);
22
+ event LogClaimServiceClaimSubmitted(NftId indexed policyNftId, ClaimId indexed claimId, Amount claimAmount);
23
+ event LogClaimServiceClaimConfirmed(NftId indexed policyNftId, ClaimId indexed claimId, Amount confirmedAmount);
24
+ event LogClaimServiceClaimDeclined(NftId indexed policyNftId, ClaimId indexed claimId);
25
+ event LogClaimServiceClaimRevoked(NftId indexed policyNftId, ClaimId indexed claimId);
26
+ event LogClaimServiceClaimCancelled(NftId indexed policyNftId, ClaimId indexed claimId);
27
+
28
+ event LogClaimServicePayoutCreated(NftId indexed policyNftId, ClaimId indexed claimId, PayoutId indexed payoutId, Amount amount, address beneficiary);
29
+ event LogClaimServicePayoutProcessed(NftId indexed policyNftId, PayoutId indexed payoutId, Amount amount);
30
+ event LogClaimServicePayoutCancelled(NftId indexed policyNftId, PayoutId indexed payoutId);
31
31
 
32
32
  error ErrorClaimServiceBeneficiarySet(NftId policyNftId, PayoutId payoutId, address beneficiary);
33
33
 
@@ -11,13 +11,13 @@ import {Timestamp} from "../type/Timestamp.sol";
11
11
 
12
12
  interface IPolicyService is IService {
13
13
 
14
- event LogPolicyServicePolicyCreated(NftId policyNftId, Amount premiumAmount, Timestamp activatedAt);
15
- event LogPolicyServicePolicyDeclined(NftId policyNftId);
16
- event LogPolicyServicePolicyPremiumCollected(NftId policyNftId, Amount premiumAmount);
17
- event LogPolicyServicePolicyActivated(NftId policyNftId, Timestamp activatedAt);
18
- event LogPolicyServicePolicyActivatedUpdated(NftId policyNftId, Timestamp activatedAt);
19
- event LogPolicyServicePolicyExpirationUpdated(NftId policyNftId, Timestamp expiredAt);
20
- event LogPolicyServicePolicyClosed(NftId policyNftId);
14
+ event LogPolicyServicePolicyCreated(NftId indexed policyNftId, Amount premiumAmount, Timestamp activatedAt);
15
+ event LogPolicyServicePolicyDeclined(NftId indexed policyNftId);
16
+ event LogPolicyServicePolicyPremiumCollected(NftId indexed policyNftId, NftId indexed productNftId, Amount premiumAmount, Timestamp activateAt);
17
+ event LogPolicyServicePolicyActivated(NftId indexed policyNftId, Timestamp activatedAt);
18
+ event LogPolicyServicePolicyActivatedUpdated(NftId indexed policyNftId, Timestamp activatedAt);
19
+ event LogPolicyServicePolicyExpirationUpdated(NftId indexed policyNftId, Timestamp expiredAt);
20
+ event LogPolicyServicePolicyClosed(NftId indexed policyNftId);
21
21
 
22
22
  error LogPolicyServiceMaxPremiumAmountExceeded(NftId policyNftId, Amount maxPremiumAmount, Amount premiumAmount);
23
23
  error ErrorPolicyServicePolicyProductMismatch(NftId applicationNftId, NftId expectedProductNftId, NftId actualProductNftId);
@@ -9,11 +9,10 @@ import {StateId} from "../type/StateId.sol";
9
9
 
10
10
  interface IRiskService is IService {
11
11
 
12
- event LogRiskServiceRiskCreated(NftId productNftId, RiskId riskId);
13
- event LogRiskServiceRiskUpdated(NftId productNftId, RiskId riskId);
14
- event LogRiskServiceRiskLocked(NftId productNftId, RiskId riskId);
15
- event LogRiskServiceRiskUnlocked(NftId productNftId, RiskId riskId);
16
- event LogRiskServiceRiskClosed(NftId productNftId, RiskId riskId);
12
+ event LogRiskServiceRiskCreated(NftId indexed productNftId, RiskId indexed riskId);
13
+ event LogRiskServiceRiskUpdated(NftId indexed productNftId, RiskId indexed riskId);
14
+ event LogRiskServiceRiskLocked(NftId indexed productNftId, RiskId indexed riskId, bool indexed locked);
15
+ event LogRiskServiceRiskClosed(NftId indexed productNftId, RiskId indexed riskId);
17
16
 
18
17
  error ErrorRiskServiceRiskProductMismatch(RiskId riskId, NftId riskProductNftId, NftId productNftId);
19
18
  error ErrorRiskServiceRiskNotActive(NftId productNftId, RiskId riskId);
@@ -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);