@etherisc/gif-next 3.0.0-4bd308f-200 → 3.0.0-4df3876-224

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 (413) hide show
  1. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +14 -14
  3. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +44 -44
  5. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
  6. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +4 -4
  7. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  8. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +99 -87
  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 +2 -2
  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/IAccessAdmin.sol/IAccessAdmin.json +75 -63
  18. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  19. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  20. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  21. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +2 -2
  22. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  23. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +20 -95
  24. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  25. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +2 -2
  26. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  27. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +2 -77
  28. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  29. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +128 -140
  30. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  31. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +75 -75
  32. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  33. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +2 -77
  34. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  35. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +36 -48
  36. package/artifacts/contracts/examples/crop/AccountingToken.sol/AccountingToken.dbg.json +4 -0
  37. package/artifacts/contracts/examples/crop/AccountingToken.sol/AccountingToken.json +376 -0
  38. package/artifacts/contracts/examples/crop/CropPool.sol/CropPool.dbg.json +4 -0
  39. package/artifacts/contracts/examples/crop/CropPool.sol/CropPool.json +1391 -0
  40. package/artifacts/contracts/examples/crop/CropPoolAuthorization.sol/CropPoolAuthorization.dbg.json +4 -0
  41. package/artifacts/contracts/examples/crop/CropPoolAuthorization.sol/CropPoolAuthorization.json +844 -0
  42. package/artifacts/contracts/examples/crop/CropProduct.sol/CropProduct.dbg.json +4 -0
  43. package/artifacts/contracts/examples/crop/CropProduct.sol/CropProduct.json +2366 -0
  44. package/artifacts/contracts/examples/crop/CropProductAuthorization.sol/CropProductAuthorization.dbg.json +4 -0
  45. package/artifacts/contracts/examples/crop/CropProductAuthorization.sol/CropProductAuthorization.json +891 -0
  46. package/artifacts/contracts/examples/crop/Location.sol/LocationLib.dbg.json +4 -0
  47. package/artifacts/contracts/examples/crop/Location.sol/LocationLib.json +199 -0
  48. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
  49. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
  50. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +16 -91
  51. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
  52. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +2 -2
  53. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
  54. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +20 -95
  55. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
  56. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +2 -2
  57. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
  58. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
  59. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +2 -2
  60. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
  61. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.dbg.json +1 -1
  62. package/artifacts/contracts/examples/flight/FlightNft.sol/FlightNft.json +2 -2
  63. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
  64. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +57 -177
  65. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
  66. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +20 -20
  67. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
  68. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +16 -91
  69. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +1 -1
  70. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +2 -2
  71. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +1 -1
  72. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +45 -120
  73. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
  74. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +20 -20
  75. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.dbg.json +1 -1
  76. package/artifacts/contracts/examples/flight/FlightProductManager.sol/FlightProductManager.json +22 -22
  77. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
  78. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +1 -1
  79. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
  80. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +26 -101
  81. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
  82. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +2 -2
  83. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
  84. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +89 -81
  85. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
  86. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +24 -99
  87. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
  88. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +2 -2
  89. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
  90. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +14 -89
  91. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
  92. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +2 -2
  93. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
  94. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  95. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +59 -72
  96. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
  97. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  98. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +34 -21
  99. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  100. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +51 -13
  101. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  102. package/artifacts/contracts/instance/Instance.sol/Instance.json +51 -33
  103. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  104. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +182 -170
  105. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  106. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +21 -21
  107. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  108. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +103 -36
  109. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  110. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +73 -35
  111. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  112. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +41 -41
  113. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  114. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +121 -121
  115. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
  116. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +91 -91
  117. package/artifacts/contracts/instance/RequestSet.sol/RequestSet.dbg.json +4 -0
  118. package/artifacts/contracts/instance/RequestSet.sol/RequestSet.json +466 -0
  119. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
  120. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +66 -79
  121. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  122. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +9 -9
  123. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  124. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  125. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  126. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  127. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  128. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +3 -3
  129. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
  130. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +38 -2
  131. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  132. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  133. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  134. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  135. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  136. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  137. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  138. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +85 -77
  139. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  140. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +2 -2
  141. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  142. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  143. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +67 -59
  144. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  145. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +19 -13
  146. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  147. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +71 -63
  148. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  149. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +57 -51
  150. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  151. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +50 -50
  152. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  153. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +4 -79
  154. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  155. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +2 -2
  156. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  157. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +78 -85
  158. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  159. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +62 -62
  160. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  161. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +20 -27
  162. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  163. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +4 -79
  164. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  165. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +43 -43
  166. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  167. package/artifacts/contracts/pool/Pool.sol/Pool.json +4 -79
  168. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
  169. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +2 -2
  170. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  171. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +101 -101
  172. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  173. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +63 -63
  174. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  175. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +37 -37
  176. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  177. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +44 -44
  178. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  179. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +2 -77
  180. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  181. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +2 -2
  182. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  183. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +86 -80
  184. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  185. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +67 -67
  186. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  187. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +11 -11
  188. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  189. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +24 -18
  190. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  191. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +10 -10
  192. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  193. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +2 -2
  194. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  195. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +2 -77
  196. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  197. package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +15 -28
  198. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  199. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +70 -70
  200. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
  201. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +2 -2
  202. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  203. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +60 -60
  204. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  205. package/artifacts/contracts/product/PricingService.sol/PricingService.json +34 -34
  206. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  207. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +51 -51
  208. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  209. package/artifacts/contracts/product/Product.sol/Product.json +2 -77
  210. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  211. package/artifacts/contracts/product/RiskService.sol/RiskService.json +37 -50
  212. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  213. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +42 -42
  214. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  215. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +58 -8
  216. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  217. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +25 -25
  218. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  219. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +2 -2
  220. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
  221. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  222. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  223. package/artifacts/contracts/registry/Registry.sol/Registry.json +124 -68
  224. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  225. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +159 -147
  226. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
  227. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +2 -2
  228. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  229. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +8 -8
  230. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  231. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +37 -37
  232. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
  233. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +189 -177
  234. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  235. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  236. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +96 -103
  237. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  238. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +2 -2
  239. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  240. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +20 -20
  241. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  242. package/artifacts/contracts/shared/Component.sol/Component.json +2 -77
  243. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  244. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +86 -142
  245. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  246. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +61 -61
  247. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
  248. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +2 -2
  249. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
  250. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
  251. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +1 -1
  252. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +1 -1
  253. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.json +2 -77
  254. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  255. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +2 -77
  256. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  257. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +28 -84
  258. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  259. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +2 -77
  260. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  261. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  262. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +2 -2
  263. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  264. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  265. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +2 -2
  266. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  267. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  268. package/artifacts/contracts/shared/IService.sol/IService.json +2 -2
  269. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  270. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  271. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +2 -77
  272. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  273. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  274. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  275. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +4 -4
  276. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  277. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
  278. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  279. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +2 -2
  280. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  281. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
  282. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  283. package/artifacts/contracts/shared/Service.sol/Service.json +2 -2
  284. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  285. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +38 -38
  286. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
  287. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +21 -21
  288. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
  289. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +26 -26
  290. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  291. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +69 -150
  292. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  293. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +10 -228
  294. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +1 -1
  295. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  296. package/artifacts/contracts/staking/Staking.sol/Staking.json +117 -198
  297. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
  298. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +2 -2
  299. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  300. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +53 -53
  301. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  302. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
  303. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  304. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +30 -248
  305. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  306. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +40 -40
  307. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  308. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +220 -220
  309. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
  310. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +9 -9
  311. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  312. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -2
  313. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  314. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  315. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  316. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
  317. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  318. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  319. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  320. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  321. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
  322. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  323. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  324. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  325. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  326. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  327. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  328. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +23 -4
  329. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
  330. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +2 -2
  331. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  332. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  333. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  334. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  335. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  336. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  337. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  338. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  339. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  340. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  341. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  342. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
  343. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  344. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +22 -22
  345. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  346. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
  347. package/contracts/accounting/IAccountingService.sol +2 -2
  348. package/contracts/authorization/AccessAdmin.sol +10 -8
  349. package/contracts/authorization/IAccessAdmin.sol +9 -8
  350. package/contracts/distribution/DistributionService.sol +22 -19
  351. package/contracts/distribution/IDistributionService.sol +8 -8
  352. package/contracts/examples/crop/AccountingToken.sol +26 -0
  353. package/contracts/examples/crop/CropPool.sol +89 -0
  354. package/contracts/examples/crop/CropPoolAuthorization.sol +37 -0
  355. package/contracts/examples/crop/CropProduct.sol +495 -0
  356. package/contracts/examples/crop/CropProductAuthorization.sol +69 -0
  357. package/contracts/examples/crop/Location.sol +50 -0
  358. package/contracts/examples/flight/FlightOracle.sol +1 -98
  359. package/contracts/examples/flight/FlightOracleAuthorization.sol +2 -3
  360. package/contracts/examples/flight/FlightProduct.sol +2 -2
  361. package/contracts/examples/flight/FlightProductAuthorization.sol +1 -1
  362. package/contracts/instance/BundleSet.sol +7 -8
  363. package/contracts/instance/IInstance.sol +10 -7
  364. package/contracts/instance/IInstanceService.sol +11 -6
  365. package/contracts/instance/Instance.sol +8 -0
  366. package/contracts/instance/InstanceAdmin.sol +2 -1
  367. package/contracts/instance/InstanceAuthorizationV3.sol +15 -1
  368. package/contracts/instance/InstanceReader.sol +15 -0
  369. package/contracts/instance/InstanceService.sol +65 -37
  370. package/contracts/instance/InstanceStore.sol +14 -14
  371. package/contracts/instance/ProductStore.sol +14 -14
  372. package/contracts/instance/RequestSet.sol +63 -0
  373. package/contracts/instance/RiskSet.sol +6 -7
  374. package/contracts/instance/TargetNames.sol +1 -0
  375. package/contracts/instance/base/BalanceStore.sol +7 -7
  376. package/contracts/instance/base/ObjectSet.sol +9 -1
  377. package/contracts/instance/base/ObjectSetHelperLib.sol +5 -1
  378. package/contracts/oracle/IOracleComponent.sol +10 -0
  379. package/contracts/oracle/IOracleService.sol +5 -5
  380. package/contracts/oracle/Oracle.sol +49 -25
  381. package/contracts/oracle/OracleService.sol +26 -23
  382. package/contracts/pool/BundleService.sol +2 -2
  383. package/contracts/pool/IBundleService.sol +9 -10
  384. package/contracts/pool/IPoolComponent.sol +1 -1
  385. package/contracts/pool/IPoolService.sol +14 -14
  386. package/contracts/pool/PoolService.sol +1 -1
  387. package/contracts/product/ClaimService.sol +1 -1
  388. package/contracts/product/IApplicationService.sol +8 -8
  389. package/contracts/product/IClaimService.sol +9 -9
  390. package/contracts/product/IPolicyService.sol +7 -7
  391. package/contracts/product/IRiskService.sol +4 -5
  392. package/contracts/product/RiskService.sol +2 -2
  393. package/contracts/registry/ChainNft.sol +9 -8
  394. package/contracts/registry/IRegistry.sol +11 -10
  395. package/contracts/registry/Registry.sol +11 -10
  396. package/contracts/registry/ReleaseAdmin.sol +4 -4
  397. package/contracts/registry/ReleaseRegistry.sol +7 -8
  398. package/contracts/registry/TokenRegistry.sol +3 -3
  399. package/contracts/shared/ComponentService.sol +2 -2
  400. package/contracts/shared/IComponent.sol +0 -4
  401. package/contracts/shared/IComponentService.sol +11 -13
  402. package/contracts/shared/INftOwnable.sol +1 -1
  403. package/contracts/shared/InstanceLinkedComponent.sol +1 -1
  404. package/contracts/shared/TokenHandler.sol +5 -5
  405. package/contracts/staking/IStaking.sol +32 -32
  406. package/contracts/staking/IStakingService.sol +7 -16
  407. package/contracts/staking/Staking.sol +4 -4
  408. package/contracts/staking/StakingService.sol +2 -3
  409. package/contracts/staking/StakingStore.sol +3 -3
  410. package/contracts/staking/TargetHandler.sol +2 -2
  411. package/contracts/type/RequestId.sol +6 -0
  412. package/contracts/upgradeability/ProxyManager.sol +2 -2
  413. package/package.json +1 -1
@@ -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,
@@ -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, Amount fixedFee, UFixed fractionalFee);
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, Amount balanceAmount, Amount feeAmount);
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);
@@ -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, NftId productNftId, Amount premiumAmount, Timestamp activateAt);
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);
@@ -119,10 +119,10 @@ contract RiskService is
119
119
 
120
120
  if (locked) {
121
121
  instance.getRiskSet().deactivate(riskId);
122
- emit LogRiskServiceRiskLocked(productNftId, riskId);
122
+ emit LogRiskServiceRiskLocked(productNftId, riskId, true);
123
123
  } else {
124
124
  instance.getRiskSet().activate(riskId);
125
- emit LogRiskServiceRiskUnlocked(productNftId, riskId);
125
+ emit LogRiskServiceRiskLocked(productNftId, riskId, false);
126
126
  }
127
127
  }
128
128
 
@@ -4,11 +4,12 @@ pragma solidity ^0.8.20;
4
4
  import {ERC721, ERC721Enumerable} from "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol";
5
5
  import {IERC721} from "@openzeppelin/contracts/token/ERC721/IERC721.sol";
6
6
 
7
+ import {ChainId, ChainIdLib} from "../type/ChainId.sol";
7
8
  import {ITransferInterceptor} from "./ITransferInterceptor.sol";
8
9
 
9
10
  contract ChainNft is ERC721Enumerable {
10
11
 
11
- event LogTokenInterceptorAddress(uint256 tokenId, address interceptor);
12
+ event LogTokenInterceptorAddress(uint256 indexed tokenId, address indexed interceptor);
12
13
 
13
14
  // constants
14
15
  string public constant NAME = "Decentralized Insurance Protocol NFT";
@@ -53,7 +54,7 @@ contract ChainNft is ERC721Enumerable {
53
54
  // NFT contract is deployed by the registry
54
55
  _registry = registry;
55
56
 
56
- _chainIdDigits = _calculateChainIdDigits(block.chainid);
57
+ _chainIdDigits = _calculateChainIdDigits(ChainIdLib.toChainId(block.chainid));
57
58
  _chainIdMultiplier = 10 ** _chainIdDigits;
58
59
 
59
60
  // the first object registered through normal registration starts with id 4
@@ -200,12 +201,12 @@ contract ChainNft is ERC721Enumerable {
200
201
  * (42 * 10 ** 10 + 9876543210) * 100 + 10
201
202
  * (index * 10 ** digits + chainid) * 100 + digits (1 < digits < 100)
202
203
  */
203
- function calculateTokenId(uint256 idIndex, uint256 chainId) public view returns (uint256 id) {
204
- if(chainId == block.chainid) {
205
- return 100 * (idIndex * _chainIdMultiplier + chainId) + _chainIdDigits;
204
+ function calculateTokenId(uint256 idIndex, ChainId chainId) public view returns (uint256 id) {
205
+ if(chainId.toInt() == block.chainid) {
206
+ return 100 * (idIndex * _chainIdMultiplier + chainId.toInt()) + _chainIdDigits;
206
207
  } else {
207
208
  uint256 chainIdDigits = _calculateChainIdDigits(chainId);
208
- return 100 * (idIndex * (10 ** chainIdDigits) + chainId) + chainIdDigits;
209
+ return 100 * (idIndex * (10 ** chainIdDigits) + chainId.toInt()) + chainIdDigits;
209
210
  }
210
211
  }
211
212
 
@@ -224,8 +225,8 @@ contract ChainNft is ERC721Enumerable {
224
225
  _idNext++;
225
226
  }
226
227
 
227
- function _calculateChainIdDigits(uint256 chainId) private pure returns (uint256) {
228
- uint256 num = chainId;
228
+ function _calculateChainIdDigits(ChainId chainId) private pure returns (uint256) {
229
+ uint256 num = chainId.toInt();
229
230
  uint256 digits = 0;
230
231
  while (num != 0) {
231
232
  digits++;
@@ -5,6 +5,7 @@ import {IERC165} from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
5
5
 
6
6
  import {IRelease} from "./IRelease.sol";
7
7
 
8
+ import {ChainId} from "../type/ChainId.sol";
8
9
  import {NftId} from "../type/NftId.sol";
9
10
  import {ObjectType} from "../type/ObjectType.sol";
10
11
  import {VersionPart} from "../type/Version.sol";
@@ -19,9 +20,9 @@ interface IRegistry is
19
20
  IERC165
20
21
  {
21
22
 
22
- event LogRegistryObjectRegistered(NftId nftId, NftId parentNftId, ObjectType objectType, bool isInterceptor, address objectAddress, address initialOwner);
23
- event LogRegistryServiceRegistered(NftId nftId, VersionPart majorVersion, ObjectType domain);
24
- event LogRegistryChainRegistryRegistered(NftId nftId, uint256 chainId, address chainRegistryAddress);
23
+ event LogRegistryObjectRegistered(NftId indexed nftId, NftId indexed parentNftId, ObjectType indexed objectType, bool isInterceptor, address objectAddress, address initialOwner);
24
+ event LogRegistryServiceRegistered(NftId indexed nftId, VersionPart indexed majorVersion, ObjectType indexed domain);
25
+ event LogRegistryChainRegistryRegistered(NftId indexed nftId, ChainId indexed chainId, address indexed chainRegistryAddress);
25
26
 
26
27
  // initialize
27
28
  error ErrorRegistryCallerNotDeployer();
@@ -30,11 +31,11 @@ interface IRegistry is
30
31
  error ErrorRegistryObjectTypeNotSupported(ObjectType objectType);
31
32
 
32
33
  // registerRegistry()
33
- error ErrorRegistryNotOnMainnet(uint256 chainId);
34
+ error ErrorRegistryNotOnMainnet(ChainId chainId);
34
35
  error ErrorRegistryChainRegistryChainIdZero(NftId nftId);
35
- error ErrorRegistryChainRegistryAddressZero(NftId nftId, uint256 chainId);
36
- error ErrorRegistryChainRegistryNftIdInvalid(NftId nftId, uint256 chainId);
37
- error ErrorRegistryChainRegistryAlreadyRegistered(NftId nftId, uint256 chainId);
36
+ error ErrorRegistryChainRegistryAddressZero(NftId nftId, ChainId chainId);
37
+ error ErrorRegistryChainRegistryNftIdInvalid(NftId nftId, ChainId chainId);
38
+ error ErrorRegistryChainRegistryAlreadyRegistered(NftId nftId, ChainId chainId);
38
39
 
39
40
  // registerService()
40
41
  error ErrorRegistryServiceAddressZero();
@@ -71,7 +72,7 @@ interface IRegistry is
71
72
  /// Only one chain registry may be registered per chain
72
73
  function registerRegistry(
73
74
  NftId nftId,
74
- uint256 chainId,
75
+ ChainId chainId,
75
76
  address chainRegistryAddress
76
77
  ) external;
77
78
 
@@ -107,10 +108,10 @@ interface IRegistry is
107
108
  function chainIds() external view returns (uint256);
108
109
 
109
110
  /// @dev Returns the chain id at the specified index.
110
- function getChainId(uint256 idx) external view returns (uint256);
111
+ function getChainId(uint256 idx) external view returns (ChainId);
111
112
 
112
113
  /// @dev Returns the NFT ID of the registry for the specified chain.
113
- function getRegistryNftId(uint256 chainId) external returns (NftId nftId);
114
+ function getRegistryNftId(ChainId chainId) external returns (NftId nftId);
114
115
 
115
116
  function getObjectCount() external view returns (uint256);
116
117
 
@@ -9,6 +9,7 @@ import {NftId, NftIdLib} from "../type/NftId.sol";
9
9
  import {VersionPart, VersionPartLib} from "../type/Version.sol";
10
10
  import {ObjectType, ObjectTypeLib, PROTOCOL, REGISTRY, SERVICE, INSTANCE, STAKE, STAKING, PRODUCT, DISTRIBUTION, DISTRIBUTOR, ORACLE, POOL, POLICY, BUNDLE} from "../type/ObjectType.sol";
11
11
 
12
+ import {ChainId, ChainIdLib} from "../type/ChainId.sol";
12
13
  import {ChainNft} from "./ChainNft.sol";
13
14
  import {IRegistry} from "./IRegistry.sol";
14
15
  import {IRelease} from "./IRelease.sol";
@@ -63,8 +64,8 @@ contract Registry is
63
64
  string public constant EMPTY_URI = "";
64
65
 
65
66
  /// @dev keep track of different registries on different chains
66
- mapping(uint256 chainId => NftId registryNftId) private _registryNftIdByChainId;
67
- uint256[] private _chainId;
67
+ mapping(ChainId chainId => NftId registryNftId) private _registryNftIdByChainId;
68
+ ChainId[] private _chainId;
68
69
 
69
70
  /// @dev keep track of object info and address reverse lookup
70
71
  mapping(NftId nftId => ObjectInfo info) private _info;
@@ -143,7 +144,7 @@ contract Registry is
143
144
  /// @inheritdoc IRegistry
144
145
  function registerRegistry(
145
146
  NftId nftId,
146
- uint256 chainId,
147
+ ChainId chainId,
147
148
  address registryAddress
148
149
  )
149
150
  external
@@ -151,11 +152,11 @@ contract Registry is
151
152
  {
152
153
  // registration of chain registries only allowed on mainnet
153
154
  if (block.chainid != 1) {
154
- revert ErrorRegistryNotOnMainnet(block.chainid);
155
+ revert ErrorRegistryNotOnMainnet(ChainIdLib.toChainId(block.chainid));
155
156
  }
156
157
 
157
158
  // registry chain id is not zero
158
- if(chainId == 0) {
159
+ if(chainId.eqz()) {
159
160
  revert ErrorRegistryChainRegistryChainIdZero(nftId);
160
161
  }
161
162
 
@@ -320,11 +321,11 @@ contract Registry is
320
321
  return _chainId.length;
321
322
  }
322
323
 
323
- function getChainId(uint256 idx) public view returns (uint256) {
324
+ function getChainId(uint256 idx) public view returns (ChainId) {
324
325
  return _chainId[idx];
325
326
  }
326
327
 
327
- function getRegistryNftId(uint256 chainId) public view returns (NftId nftId) {
328
+ function getRegistryNftId(ChainId chainId) public view returns (NftId nftId) {
328
329
  return _registryNftIdByChainId[chainId];
329
330
  }
330
331
 
@@ -579,7 +580,7 @@ contract Registry is
579
580
 
580
581
  // register global registry
581
582
  _registerRegistryForNft(
582
- 1, // mainnet chain id
583
+ ChainIdLib.toChainId(1), // mainnet chain id
583
584
  ObjectInfo({
584
585
  nftId: GLOBAL_REGISTRY_NFT_ID,
585
586
  parentNftId: PROTOCOL_NFT_ID,
@@ -598,7 +599,7 @@ contract Registry is
598
599
  CHAIN_NFT.calculateTokenId(REGISTRY_TOKEN_SEQUENCE_ID));
599
600
 
600
601
  _registerRegistryForNft(
601
- block.chainid,
602
+ ChainIdLib.toChainId(block.chainid),
602
603
  ObjectInfo({
603
604
  nftId: registryNftId,
604
605
  parentNftId: GLOBAL_REGISTRY_NFT_ID,
@@ -613,7 +614,7 @@ contract Registry is
613
614
 
614
615
  /// @dev staking registration
615
616
  function _registerRegistryForNft(
616
- uint256 chainId,
617
+ ChainId chainId,
617
618
  ObjectInfo memory info,
618
619
  bool updateAddressLookup
619
620
  )
@@ -21,8 +21,8 @@ import {VersionPart} from "../type/Version.sol";
21
21
  contract ReleaseAdmin is
22
22
  AccessAdmin
23
23
  {
24
- event LogReleaseAdminReleaseLockChanged(VersionPart release, bool locked);
25
- event LogReleaseAdminServiceLockChanged(VersionPart release, address service, bool locked);
24
+ event LogReleaseAdminReleaseLocked(VersionPart indexed release, bool indexed locked);
25
+ event LogReleaseAdminServiceLocked(VersionPart indexed release, address indexed service, bool indexed locked);
26
26
 
27
27
  error ErrorReleaseAdminCallerNotReleaseRegistry(address caller);
28
28
  error ErrorReleaseAdminNotService(address notService);
@@ -137,7 +137,7 @@ contract ReleaseAdmin is
137
137
  // effects
138
138
  accessManager.setLocked(locked);
139
139
 
140
- emit LogReleaseAdminReleaseLockChanged(getRelease(), locked);
140
+ emit LogReleaseAdminReleaseLocked(getRelease(), locked);
141
141
  }
142
142
 
143
143
 
@@ -155,7 +155,7 @@ contract ReleaseAdmin is
155
155
 
156
156
  _setTargetLocked(address(service), locked);
157
157
 
158
- emit LogReleaseAdminServiceLockChanged(service.getRelease(), address(service), locked);
158
+ emit LogReleaseAdminServiceLocked(service.getRelease(), address(service), locked);
159
159
  }
160
160
 
161
161
  //--- private functions -------------------------------------------------//