@etherisc/gif-next 3.0.0-52e15cf-819 → 3.0.0-5438ecb-315

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 (472) 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 +119 -119
  10. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
  11. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +145 -100
  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 +2433 -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 +79 -159
  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 +221 -86
  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 +167 -132
  69. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
  70. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +82 -35
  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 +453 -745
  77. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
  78. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +83 -36
  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 +42 -122
  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 +197 -197
  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 +184 -42
  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 +166 -107
  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 +92 -105
  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 +40 -4
  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 +56 -44
  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 +124 -112
  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 +44 -44
  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 +4 -79
  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 +18 -18
  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 +4 -4
  204. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  205. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +4 -79
  206. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  207. package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +27 -45
  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 +25 -17
  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 +42 -42
  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 +4 -79
  220. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  221. package/artifacts/contracts/product/RiskService.sol/RiskService.json +53 -87
  222. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  223. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +41 -49
  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 +188 -188
  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 +205 -205
  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 +122 -119
  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 +17 -22
  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 +16 -33
  389. package/contracts/authorization/AccessAdminLib.sol +18 -1
  390. package/contracts/authorization/AccessManagerCloneable.sol +4 -0
  391. package/contracts/authorization/IAccessAdmin.sol +9 -8
  392. package/contracts/distribution/DistributionService.sol +24 -19
  393. package/contracts/distribution/IDistributionComponent.sol +0 -2
  394. package/contracts/distribution/IDistributionService.sol +8 -7
  395. package/contracts/examples/crop/AccountingToken.sol +26 -0
  396. package/contracts/examples/crop/CropPool.sol +89 -0
  397. package/contracts/examples/crop/CropPoolAuthorization.sol +37 -0
  398. package/contracts/examples/crop/CropProduct.sol +512 -0
  399. package/contracts/examples/crop/CropProductAuthorization.sol +69 -0
  400. package/contracts/examples/crop/Location.sol +50 -0
  401. package/contracts/examples/fire/FireProduct.sol +1 -1
  402. package/contracts/examples/flight/FlightLib.sol +95 -108
  403. package/contracts/examples/flight/FlightNft.sol +234 -0
  404. package/contracts/examples/flight/FlightOracle.sol +22 -60
  405. package/contracts/examples/flight/FlightOracleAuthorization.sol +27 -5
  406. package/contracts/examples/flight/FlightPool.sol +1 -1
  407. package/contracts/examples/flight/FlightProduct.sol +288 -249
  408. package/contracts/examples/flight/FlightProductAuthorization.sol +35 -10
  409. package/contracts/examples/flight/FlightProductManager.sol +49 -0
  410. package/contracts/examples/unpermissioned/SimpleProduct.sol +1 -5
  411. package/contracts/instance/BaseStore.sol +4 -0
  412. package/contracts/instance/BundleSet.sol +7 -8
  413. package/contracts/instance/IBaseStore.sol +8 -0
  414. package/contracts/instance/IInstance.sol +10 -7
  415. package/contracts/instance/IInstanceService.sol +11 -4
  416. package/contracts/instance/Instance.sol +8 -0
  417. package/contracts/instance/InstanceAdmin.sol +2 -2
  418. package/contracts/instance/InstanceAuthorizationV3.sol +15 -1
  419. package/contracts/instance/InstanceReader.sol +55 -8
  420. package/contracts/instance/InstanceService.sol +68 -36
  421. package/contracts/instance/InstanceStore.sol +14 -14
  422. package/contracts/instance/ProductStore.sol +16 -15
  423. package/contracts/instance/RequestSet.sol +63 -0
  424. package/contracts/instance/RiskSet.sol +6 -7
  425. package/contracts/instance/TargetNames.sol +1 -0
  426. package/contracts/instance/base/BalanceStore.sol +7 -7
  427. package/contracts/instance/base/ObjectCounter.sol +7 -5
  428. package/contracts/instance/base/ObjectSet.sol +9 -1
  429. package/contracts/instance/base/ObjectSetHelperLib.sol +5 -1
  430. package/contracts/oracle/BasicOracle.sol +1 -0
  431. package/contracts/oracle/IOracleComponent.sol +10 -0
  432. package/contracts/oracle/IOracleService.sol +5 -5
  433. package/contracts/oracle/Oracle.sol +50 -26
  434. package/contracts/oracle/OracleService.sol +26 -23
  435. package/contracts/pool/BundleService.sol +3 -3
  436. package/contracts/pool/IBundleService.sol +9 -10
  437. package/contracts/pool/IPoolComponent.sol +1 -1
  438. package/contracts/pool/IPoolService.sol +14 -14
  439. package/contracts/pool/PoolService.sol +2 -2
  440. package/contracts/product/ClaimService.sol +1 -1
  441. package/contracts/product/IApplicationService.sol +8 -8
  442. package/contracts/product/IClaimService.sol +9 -9
  443. package/contracts/product/IPolicyService.sol +7 -7
  444. package/contracts/product/IRiskService.sol +4 -6
  445. package/contracts/product/PolicyService.sol +1 -1
  446. package/contracts/product/PolicyServiceLib.sol +5 -3
  447. package/contracts/product/Product.sol +1 -5
  448. package/contracts/product/RiskService.sol +3 -8
  449. package/contracts/registry/ChainNft.sol +10 -9
  450. package/contracts/registry/IRegistry.sol +11 -10
  451. package/contracts/registry/Registry.sol +16 -13
  452. package/contracts/registry/RegistryAdmin.sol +7 -1
  453. package/contracts/registry/RegistryAuthorization.sol +0 -2
  454. package/contracts/registry/ReleaseAdmin.sol +12 -5
  455. package/contracts/registry/ReleaseRegistry.sol +7 -8
  456. package/contracts/registry/TokenRegistry.sol +3 -3
  457. package/contracts/shared/ComponentService.sol +38 -4
  458. package/contracts/shared/IComponent.sol +0 -4
  459. package/contracts/shared/IComponentService.sol +31 -9
  460. package/contracts/shared/INftOwnable.sol +1 -1
  461. package/contracts/shared/InstanceLinkedComponent.sol +1 -1
  462. package/contracts/shared/TokenHandler.sol +5 -5
  463. package/contracts/staking/IStaking.sol +33 -31
  464. package/contracts/staking/IStakingService.sol +7 -16
  465. package/contracts/staking/Staking.sol +5 -4
  466. package/contracts/staking/StakingService.sol +2 -3
  467. package/contracts/staking/StakingStore.sol +3 -3
  468. package/contracts/staking/TargetHandler.sol +2 -2
  469. package/contracts/type/RequestId.sol +6 -0
  470. package/contracts/type/RiskId.sol +8 -8
  471. package/contracts/upgradeability/ProxyManager.sol +2 -2
  472. package/package.json +3 -3
@@ -2,7 +2,6 @@
2
2
  pragma solidity ^0.8.20;
3
3
 
4
4
  import {IERC165} from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
5
- import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
6
5
  import {AccessManaged} from "@openzeppelin/contracts/access/manager/AccessManaged.sol";
7
6
  import {Initializable} from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
8
7
 
@@ -10,13 +9,13 @@ import {NftId, NftIdLib} from "../type/NftId.sol";
10
9
  import {VersionPart, VersionPartLib} from "../type/Version.sol";
11
10
  import {ObjectType, ObjectTypeLib, PROTOCOL, REGISTRY, SERVICE, INSTANCE, STAKE, STAKING, PRODUCT, DISTRIBUTION, DISTRIBUTOR, ORACLE, POOL, POLICY, BUNDLE} from "../type/ObjectType.sol";
12
11
 
12
+ import {ChainId, ChainIdLib} from "../type/ChainId.sol";
13
13
  import {ChainNft} from "./ChainNft.sol";
14
14
  import {IRegistry} from "./IRegistry.sol";
15
15
  import {IRelease} from "./IRelease.sol";
16
16
  import {IRegisterable} from "../shared/IRegisterable.sol";
17
17
  import {IStaking} from "../staking/IStaking.sol";
18
18
  import {ReleaseRegistry} from "./ReleaseRegistry.sol";
19
- import {TokenRegistry} from "./TokenRegistry.sol";
20
19
  import {RegistryAdmin} from "./RegistryAdmin.sol";
21
20
 
22
21
  /// @dev IMPORTANT
@@ -65,8 +64,8 @@ contract Registry is
65
64
  string public constant EMPTY_URI = "";
66
65
 
67
66
  /// @dev keep track of different registries on different chains
68
- mapping(uint256 chainId => NftId registryNftId) private _registryNftIdByChainId;
69
- uint256[] private _chainId;
67
+ mapping(ChainId chainId => NftId registryNftId) private _registryNftIdByChainId;
68
+ ChainId[] private _chainId;
70
69
 
71
70
  /// @dev keep track of object info and address reverse lookup
72
71
  mapping(NftId nftId => ObjectInfo info) private _info;
@@ -145,7 +144,7 @@ contract Registry is
145
144
  /// @inheritdoc IRegistry
146
145
  function registerRegistry(
147
146
  NftId nftId,
148
- uint256 chainId,
147
+ ChainId chainId,
149
148
  address registryAddress
150
149
  )
151
150
  external
@@ -153,11 +152,11 @@ contract Registry is
153
152
  {
154
153
  // registration of chain registries only allowed on mainnet
155
154
  if (block.chainid != 1) {
156
- revert ErrorRegistryNotOnMainnet(block.chainid);
155
+ revert ErrorRegistryNotOnMainnet(ChainIdLib.toChainId(block.chainid));
157
156
  }
158
157
 
159
158
  // registry chain id is not zero
160
- if(chainId == 0) {
159
+ if(chainId.eqz()) {
161
160
  revert ErrorRegistryChainRegistryChainIdZero(nftId);
162
161
  }
163
162
 
@@ -231,7 +230,7 @@ contract Registry is
231
230
 
232
231
  _service[version][domain] = service;
233
232
 
234
- emit LogRegistryServiceRegistered(version, domain);
233
+ emit LogRegistryServiceRegistered(info.nftId,version, domain);
235
234
 
236
235
  nftId = _register(info);
237
236
  }
@@ -322,11 +321,11 @@ contract Registry is
322
321
  return _chainId.length;
323
322
  }
324
323
 
325
- function getChainId(uint256 idx) public view returns (uint256) {
324
+ function getChainId(uint256 idx) public view returns (ChainId) {
326
325
  return _chainId[idx];
327
326
  }
328
327
 
329
- function getRegistryNftId(uint256 chainId) public view returns (NftId nftId) {
328
+ function getRegistryNftId(ChainId chainId) public view returns (NftId nftId) {
330
329
  return _registryNftIdByChainId[chainId];
331
330
  }
332
331
 
@@ -566,6 +565,8 @@ contract Registry is
566
565
  initialOwner: NFT_LOCK_ADDRESS,
567
566
  data: ""}),
568
567
  true);
568
+
569
+ emit LogRegistryObjectRegistered(protocolNftId, NftIdLib.zero(), PROTOCOL(), false, address(0), NFT_LOCK_ADDRESS);
569
570
  }
570
571
 
571
572
  /// @dev register this registry
@@ -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
  )
@@ -671,6 +672,8 @@ contract Registry is
671
672
 
672
673
  // calls nft receiver
673
674
  CHAIN_NFT.mint(info.initialOwner, info.nftId.toInt());
675
+
676
+ emit LogRegistryObjectRegistered(info.nftId, info.parentNftId, info.objectType, info.isInterceptor, info.objectAddress, info.initialOwner);
674
677
  }
675
678
 
676
679
  function _setAddressForNftId(NftId nftId, address objectAddress)
@@ -85,7 +85,13 @@ contract RegistryAdmin is
85
85
  registry,
86
86
  release);
87
87
 
88
- _checkAuthorization(authorization, REGISTRY(), release, false, true);
88
+ AccessAdminLib.checkAuthorization(
89
+ address(_authorization),
90
+ authorization,
91
+ REGISTRY(),
92
+ release,
93
+ false, // expectServiceAuthorization
94
+ false); // checkAlreadyInitialized);
89
95
 
90
96
  _registry = registry;
91
97
  _authorization = IAuthorization(authorization);
@@ -144,8 +144,6 @@ contract RegistryAuthorization
144
144
  _setupStakingThAuthorization();
145
145
  }
146
146
 
147
- event LogAccessAdminDebug(string message, string custom, uint256 value);
148
-
149
147
  function _setupRegistryAuthorization() internal {
150
148
  IAccess.FunctionInfo[] storage functions;
151
149
 
@@ -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);
@@ -72,7 +72,14 @@ contract ReleaseAdmin is
72
72
  release);
73
73
 
74
74
  IServiceAuthorization serviceAuthorization = IServiceAuthorization(authorization);
75
- _checkAuthorization(address(serviceAuthorization), RELEASE(), release, true, true);
75
+ AccessAdminLib.checkAuthorization(
76
+ address(_authorization),
77
+ address(serviceAuthorization),
78
+ RELEASE(),
79
+ release,
80
+ true, // expectServiceAuthorization
81
+ true); // checkAlreadyInitialized);
82
+
76
83
  _serviceAuthorization = serviceAuthorization;
77
84
 
78
85
  // link nft ownability to registry
@@ -130,7 +137,7 @@ contract ReleaseAdmin is
130
137
  // effects
131
138
  accessManager.setLocked(locked);
132
139
 
133
- emit LogReleaseAdminReleaseLockChanged(getRelease(), locked);
140
+ emit LogReleaseAdminReleaseLocked(getRelease(), locked);
134
141
  }
135
142
 
136
143
 
@@ -148,7 +155,7 @@ contract ReleaseAdmin is
148
155
 
149
156
  _setTargetLocked(address(service), locked);
150
157
 
151
- emit LogReleaseAdminServiceLockChanged(service.getRelease(), address(service), locked);
158
+ emit LogReleaseAdminServiceLocked(service.getRelease(), address(service), locked);
152
159
  }
153
160
 
154
161
  //--- private functions -------------------------------------------------//
@@ -38,10 +38,9 @@ contract ReleaseRegistry is
38
38
  {
39
39
  uint256 public constant INITIAL_GIF_VERSION = 3;// first active release version
40
40
 
41
- event LogReleaseCreation(IAccessAdmin admin, VersionPart release, bytes32 salt);
42
- event LogReleaseActivation(VersionPart release);
43
- event LogReleaseDisabled(VersionPart release);
44
- event LogReleaseEnabled(VersionPart release);
41
+ event LogReleaseCreated(address indexed releaseAdmin, VersionPart indexed release, bytes32 indexed salt);
42
+ event LogReleaseActivated(VersionPart indexed release);
43
+ event LogReleaseEnabled(VersionPart indexed release, bool indexed active);
45
44
 
46
45
  // constructor
47
46
  error ErrorReleaseRegistryNotRegistry(Registry registry);
@@ -168,7 +167,7 @@ contract ReleaseRegistry is
168
167
  _releaseInfo[releaseVersion].auth = serviceAuthorization;
169
168
  _releaseInfo[releaseVersion].releaseAdmin = address(releaseAdmin);
170
169
 
171
- emit LogReleaseCreation(releaseAdmin, releaseVersion, releaseSalt);
170
+ emit LogReleaseCreated(address(releaseAdmin), releaseVersion, releaseSalt);
172
171
  }
173
172
 
174
173
  function registerService(IService service)
@@ -270,7 +269,7 @@ contract ReleaseRegistry is
270
269
 
271
270
  _setReleaseLocked(release, false);
272
271
 
273
- emit LogReleaseActivation(release);
272
+ emit LogReleaseActivated(release);
274
273
  }
275
274
 
276
275
  /// @dev stop/resume operations with restricted functions
@@ -284,12 +283,12 @@ contract ReleaseRegistry is
284
283
  checkTransition(state, RELEASE(), PAUSED(), ACTIVE());
285
284
  _releaseInfo[release].state = ACTIVE();
286
285
  _releaseInfo[release].disabledAt = TimestampLib.max();
287
- emit LogReleaseEnabled(release);
286
+ emit LogReleaseEnabled(release, true);
288
287
  } else {
289
288
  checkTransition(state, RELEASE(), ACTIVE(), PAUSED());
290
289
  _releaseInfo[release].state = PAUSED();
291
290
  _releaseInfo[release].disabledAt = TimestampLib.current();
292
- emit LogReleaseDisabled(release);
291
+ emit LogReleaseEnabled(release, false);
293
292
  }
294
293
 
295
294
  _setReleaseLocked(release, !active);
@@ -18,9 +18,9 @@ contract TokenRegistry is
18
18
  AccessManaged,
19
19
  IRegistryLinked
20
20
  {
21
- event LogTokenRegistryTokenRegistered(ChainId chainId, address token, uint256 decimals, string symbol);
22
- event LogTokenRegistryTokenGlobalStateSet(ChainId chainId, address token, bool active);
23
- event LogTokenRegistryTokenStateSet(ChainId chainId, address token, VersionPart release, bool active);
21
+ event LogTokenRegistryTokenRegistered(ChainId indexed chainId, address indexed token, uint256 decimals, string symbol);
22
+ event LogTokenRegistryTokenGlobalStateSet(ChainId indexed chainId, address indexed token, bool indexed active);
23
+ event LogTokenRegistryTokenStateSet(ChainId indexed chainId, address indexed token, VersionPart indexed release, bool active);
24
24
 
25
25
  error ErrorTokenRegistryChainIdZero();
26
26
  error ErrorTokenRegistryTokenAddressZero();
@@ -189,8 +189,8 @@ contract ComponentService is
189
189
  emit LogComponentServiceComponentFeesWithdrawn(
190
190
  componentNftId,
191
191
  componentOwner,
192
- address(tokenHandler.TOKEN()),
193
- withdrawnAmount);
192
+ withdrawnAmount,
193
+ address(tokenHandler.TOKEN()));
194
194
 
195
195
  // interactions
196
196
  // transfer amount to component owner
@@ -312,9 +312,27 @@ contract ComponentService is
312
312
  productNftId,
313
313
  initialProductInfo);
314
314
 
315
+ emit LogComponentServiceProductCreated(productNftId, productAddress, initialProductInfo.hasDistribution, initialProductInfo.expectedNumberOfOracles);
316
+
317
+ IComponents.FeeInfo memory initialFeeInfo = product.getInitialFeeInfo();
318
+
315
319
  productStore.createFee(
316
320
  productNftId,
317
- product.getInitialFeeInfo());
321
+ initialFeeInfo);
322
+
323
+ emit LogComponentServiceProductInitialProductFeesSet(
324
+ productNftId,
325
+ initialFeeInfo.productFee.fixedFee, initialFeeInfo.productFee.fractionalFee,
326
+ initialFeeInfo.processingFee.fixedFee, initialFeeInfo.processingFee.fractionalFee);
327
+ emit LogComponentServiceProductInitialDistributionFeesSet(
328
+ productNftId,
329
+ initialFeeInfo.distributionFee.fixedFee, initialFeeInfo.distributionFee.fractionalFee,
330
+ initialFeeInfo.minDistributionOwnerFee.fixedFee, initialFeeInfo.minDistributionOwnerFee.fractionalFee);
331
+ emit LogComponentServiceProductInitialPoolFeesSet(
332
+ productNftId,
333
+ initialFeeInfo.poolFee.fixedFee, initialFeeInfo.poolFee.fractionalFee,
334
+ initialFeeInfo.stakingFee.fixedFee, initialFeeInfo.stakingFee.fractionalFee,
335
+ initialFeeInfo.performanceFee.fixedFee, initialFeeInfo.performanceFee.fractionalFee);
318
336
  }
319
337
 
320
338
  //-------- distribution -------------------------------------------------//
@@ -341,6 +359,8 @@ contract ComponentService is
341
359
  // set distribution in product info
342
360
  productInfo.distributionNftId = distributionNftId;
343
361
  productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
362
+
363
+ emit LogComponentServiceDistributionCreated(distributionNftId, productNftId);
344
364
  }
345
365
 
346
366
 
@@ -400,6 +420,8 @@ contract ComponentService is
400
420
  productInfo.oracleNftId[productInfo.numberOfOracles] = oracleNftId;
401
421
  productInfo.numberOfOracles++;
402
422
  productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
423
+
424
+ emit LogComponentServiceOracleCreated(oracleNftId, productNftId);
403
425
  }
404
426
 
405
427
  //-------- pool ---------------------------------------------------------//
@@ -423,13 +445,20 @@ contract ComponentService is
423
445
 
424
446
  // create info
425
447
  IPoolComponent pool = IPoolComponent(componentAddress);
448
+ IComponents.PoolInfo memory initialPoolInfo = pool.getInitialPoolInfo();
426
449
  instanceStore.createPool(
427
450
  poolNftId,
428
- pool.getInitialPoolInfo());
451
+ initialPoolInfo);
429
452
 
430
453
  // update pool in product info
431
454
  productInfo.poolNftId = poolNftId;
432
455
  productStore.updateProduct(productNftId, productInfo, KEEP_STATE());
456
+
457
+ emit LogComponentServicePoolCreated(
458
+ poolNftId, productNftId, componentAddress,
459
+ initialPoolInfo.maxBalanceAmount, initialPoolInfo.collateralizationLevel,
460
+ initialPoolInfo.retentionLevel, initialPoolInfo.isExternallyManaged,
461
+ initialPoolInfo.isVerifyingApplications);
433
462
  }
434
463
 
435
464
 
@@ -543,6 +572,11 @@ contract ComponentService is
543
572
  address(component), // initially, component is its own wallet
544
573
  token,
545
574
  instanceAdmin.authority());
575
+
576
+ emit LogComponentServiceTokenHandlerDeployed(
577
+ componentNftId,
578
+ address(componentInfo.tokenHandler),
579
+ token);
546
580
 
547
581
  // register component with instance
548
582
  instanceStore.createComponent(
@@ -25,10 +25,6 @@ interface IComponent is
25
25
  error ErrorComponentWalletAddressIsSameAsCurrent();
26
26
  error ErrorComponentWalletNotComponent();
27
27
 
28
- event LogComponentWalletAddressChanged(address oldWallet, address newWallet);
29
- event LogComponentWalletTokensTransferred(address from, address to, uint256 amount);
30
- event LogComponentTokenHandlerApproved(address tokenHandler, address token, Amount limit, bool isMaxAmount);
31
-
32
28
  /// @dev returns the name of this component
33
29
  /// to successfully register the component with an instance the name MUST be unique in the linked instance
34
30
  function getName() external view returns (string memory name);
@@ -45,22 +45,44 @@ interface IComponentService is
45
45
  error ErrorComponentServiceWithdrawAmountExceedsLimit(Amount withdrawnAmount, Amount withdrawLimit);
46
46
  error ErrorComponentServiceWalletAllowanceTooSmall(address wallet, address spender, uint256 allowance, uint256 amount);
47
47
 
48
- event LogComponentServiceComponentLocked(address component, bool locked);
49
- event LogComponentServiceRegistered(NftId instanceNftId, NftId componentNftId, ObjectType componentType, address component, address token, address initialOwner);
50
- event LogComponentServiceWalletAddressChanged(NftId componentNftId, address currentWallet, address newWallet);
51
- event LogComponentServiceWalletTokensTransferred(NftId componentNftId, address currentWallet, address newWallet, uint256 currentBalance);
52
- event LogComponentServiceComponentFeesWithdrawn(NftId componentNftId, address recipient, address token, Amount withdrawnAmount);
53
- event LogComponentServiceProductFeesUpdated(NftId productNftId);
54
- event LogComponentServiceDistributionFeesUpdated(NftId distributionNftId);
55
- event LogComponentServicePoolFeesUpdated(NftId poolNftId);
48
+ event LogComponentServiceComponentLocked(address indexed component, bool indexed locked);
49
+ event LogComponentServiceTokenHandlerDeployed(NftId indexed componentNftId, address indexed tokenHandler, address indexed token);
50
+ event LogComponentServiceRegistered(NftId indexed instanceNftId, NftId indexed componentNftId, ObjectType indexed componentType, address component, address token, address initialOwner);
51
+ event LogComponentServiceComponentFeesWithdrawn(NftId indexed componentNftId, address indexed recipient, Amount withdrawnAmount, address indexed token);
52
+ event LogComponentServiceProductFeesUpdated(NftId indexed productNftId);
53
+ event LogComponentServiceDistributionFeesUpdated(NftId indexed distributionNftId);
54
+ event LogComponentServicePoolFeesUpdated(NftId indexed poolNftId);
56
55
  event LogComponentServiceUpdateFee(
57
- NftId nftId,
56
+ NftId indexed nftId,
58
57
  string feeName,
59
58
  UFixed previousFractionalFee,
60
59
  Amount previousFixedFee,
61
60
  UFixed newFractionalFee,
62
61
  Amount newFixedFee
63
62
  );
63
+ event LogComponentServiceProductCreated(
64
+ NftId indexed productNftId, address indexed productAddress, bool indexed hasDistribution, uint8 expectedNumberOfOracles);
65
+ event LogComponentServiceProductInitialProductFeesSet(
66
+ NftId indexed productNftId,
67
+ Amount productFeeFixed, UFixed productFeeFractional,
68
+ Amount processingFeeFixed, UFixed processingFeeFractional);
69
+ event LogComponentServiceProductInitialDistributionFeesSet(
70
+ NftId indexed productNftId,
71
+ Amount distributionFeeFixed, UFixed distributionFeeFractional,
72
+ Amount minDistributionOwnerFeeFixed, UFixed minDistributionOwnerFeeFractional);
73
+ event LogComponentServiceProductInitialPoolFeesSet(
74
+ NftId indexed productNftId,
75
+ Amount poolFeeFixed, UFixed poolFeeFractional,
76
+ Amount stakingFeeFixed, UFixed stakingFeeFractional,
77
+ Amount performanceFeeFixed, UFixed performanceFeeFractional);
78
+ event LogComponentServicePoolCreated(
79
+ NftId indexed poolNftId, NftId indexed productNftId, address indexed componentAddress,
80
+ Amount maxBalanceAmount, UFixed collateralizationLevel, UFixed retentionLevel,
81
+ bool isExternallyManaged, bool isVerifyingApplications);
82
+ event LogComponentServiceDistributionCreated(
83
+ NftId indexed distributionNftId, NftId indexed productNftId);
84
+ event LogComponentServiceOracleCreated(
85
+ NftId indexed oracleNftId, NftId indexed productNftId);
64
86
 
65
87
  //-------- component ----------------------------------------------------//
66
88
 
@@ -11,7 +11,7 @@ interface INftOwnable is
11
11
  IERC165,
12
12
  IRegistryLinked
13
13
  {
14
- event LogNftOwnableNftLinkedToAddress(NftId nftId, address owner);
14
+ event LogNftOwnableNftLinkedToAddress(NftId indexed nftId, address indexed owner);
15
15
 
16
16
  error ErrorNftOwnableInitialOwnerZero();
17
17
  error ErrorNftOwnableNotOwner(address account);
@@ -92,7 +92,7 @@ abstract contract InstanceLinkedComponent is
92
92
  }
93
93
 
94
94
 
95
- function _resendRequest(RequestId requestId)
95
+ function _resendResponse(RequestId requestId)
96
96
  internal
97
97
  virtual
98
98
  {
@@ -19,14 +19,14 @@ import {SERVICE} from "../type/ObjectType.sol";
19
19
  contract TokenHandlerBase {
20
20
 
21
21
  // _setWallet
22
- event LogTokenHandlerWalletAddressChanged(NftId componentNftId, address oldWallet, address newWallet);
23
- event LogTokenHandlerWalletTokensTransferred(NftId componentNftId, address oldWallet, address newWallet, Amount amount);
22
+ event LogTokenHandlerWalletAddressChanged(NftId indexed componentNftId, address indexed oldWallet, address indexed newWallet);
23
+ event LogTokenHandlerWalletTokensTransferred(NftId indexed componentNftId, address indexed oldWallet, address indexed newWallet, Amount amount);
24
24
 
25
25
  // _approveTokenHandler
26
- event LogTokenHandlerTokenApproved(NftId nftId, address tokenHandler, address token, Amount amount, bool isMaxAmount);
26
+ event LogTokenHandlerTokenApproved(NftId indexed nftId, address indexed tokenHandler, address indexed token, Amount amount, bool isMaxAmount);
27
27
 
28
28
  // _transfer
29
- event LogTokenHandlerTokenTransfer(address token, address from, address to, Amount amount);
29
+ event LogTokenHandlerTokenTransferred(address indexed token, address indexed from, address indexed to, Amount amount);
30
30
 
31
31
  // constructor
32
32
  error ErrorTokenHandlerNotRegistry(address registry);
@@ -204,7 +204,7 @@ contract TokenHandlerBase {
204
204
  }
205
205
 
206
206
  // transfer the tokens
207
- emit LogTokenHandlerTokenTransfer(address(TOKEN), from, to, amount);
207
+ emit LogTokenHandlerTokenTransferred(address(TOKEN), from, to, amount);
208
208
 
209
209
  SafeERC20.safeTransferFrom(
210
210
  TOKEN,
@@ -25,26 +25,28 @@ interface IStaking is
25
25
  IVersionable
26
26
  {
27
27
 
28
+ event LogStakingTokenHandlerDeployed(NftId indexed componentNftId, address indexed tokenHandler, address indexed token);
29
+
28
30
  // owner functions
29
- event LogStakingStakingRateSet(ChainId chainId, address token, UFixed newStakingRate, UFixed oldStakingRate, Blocknumber lastUpdateIn);
30
- event LogStakingStakingServiceSet(address stakingService, VersionPart release, address oldStakingService);
31
- event LogStakingStakingReaderSet(address stakingReader, address oldStakingReader);
32
- event LogStakingTargetHandlerSet(address targetManager, address oldTargetHandler);
33
- event LogStakingTokenHandlerApproved(address token, Amount approvalAmount, Amount oldApprovalAmount);
31
+ event LogStakingStakingRateSet(ChainId indexed chainId, address indexed token, UFixed oldStakingRate, UFixed newStakingRate, Blocknumber lastUpdateIn);
32
+ event LogStakingStakingServiceSet(address indexed oldStakingService, address indexed stakingService, VersionPart indexed release);
33
+ event LogStakingStakingReaderSet(address indexed oldStakingReader, address indexed stakingReader);
34
+ event LogStakingTargetHandlerSet(address indexed oldTargetHandler, address indexed targetManager);
35
+ event LogStakingTokenHandlerApproved(Amount oldApprovalAmount, Amount approvalAmount, address indexed token);
34
36
 
35
37
  // token
36
- event LogStakingTokenAdded(ChainId chainId, address token);
37
- event LogStakingTargetTokenAdded(NftId targetNftId, ChainId chainId, address token);
38
+ event LogStakingTokenAdded(ChainId indexed chainId, address indexed token);
39
+ event LogStakingTargetTokenAdded(NftId indexed targetNftId, address indexed token);
38
40
 
39
41
  // total value locked
40
- event LogStakingTvlIncreased(NftId targetNftId, address token, Amount amount, Amount newBalance, Blocknumber lastUpdateIn);
41
- event LogStakingTvlDecreased(NftId targetNftId, address token, Amount amount, Amount newBalance, Blocknumber lastUpdateIn);
42
+ event LogStakingTvlIncreased(NftId indexed targetNftId, address indexed token, Amount amount, Amount newBalance, Blocknumber lastUpdateIn);
43
+ event LogStakingTvlDecreased(NftId indexed targetNftId, address indexed token, Amount amount, Amount newBalance, Blocknumber lastUpdateIn);
42
44
 
43
45
  // targets
44
46
  event LogStakingSupportInfoSet(
45
- ObjectType objectType,
46
- bool isSupported,
47
- bool allowNewTargets,
47
+ ObjectType indexed objectType,
48
+ bool indexed isSupported,
49
+ bool indexed allowNewTargets,
48
50
  bool allowCrossChain,
49
51
  Amount minStakingAmount,
50
52
  Amount maxStakingAmount,
@@ -54,31 +56,31 @@ interface IStaking is
54
56
  UFixed maxRewardRate,
55
57
  Blocknumber lastUpdateIn);
56
58
 
57
- event LogStakingTargetCreated(NftId targetNftId, ObjectType objectType, Seconds lockingPeriod, UFixed rewardRate);
58
- event LogStakingLimitsSet(NftId targetNftId, Amount marginAmount, Amount hardLimitAmount, Blocknumber lastUpdateIn);
59
- event LogStakingTargetLimitsUpdated(NftId targetNftId, Amount marginAmount, Amount hardLimitAmount, Blocknumber lastUpdateIn);
60
- event LogStakingTargetLimitUpdated(NftId targetNftId, Amount limitAmount, Amount hardLimitAmount, Amount requiredStakeAmount, Amount actualStakeAmount, Blocknumber lastUpdateIn);
59
+ event LogStakingTargetCreated(NftId indexed targetNftId, ObjectType indexed objectType, Seconds lockingPeriod, UFixed rewardRate);
60
+ event LogStakingLimitsSet(NftId indexed targetNftId, Amount marginAmount, Amount hardLimitAmount, Blocknumber lastUpdateIn);
61
+ event LogStakingTargetLimitsUpdated(NftId indexed targetNftId, Amount marginAmount, Amount hardLimitAmount, Blocknumber lastUpdateIn);
62
+ event LogStakingTargetLimitUpdated(NftId indexed targetNftId, Amount limitAmount, Amount hardLimitAmount, Amount requiredStakeAmount, Amount actualStakeAmount, Blocknumber lastUpdateIn);
61
63
 
62
64
  // target parameters
63
- event LogStakingTargetLockingPeriodSet(NftId targetNftId, Seconds oldLockingPeriod, Seconds lockingPeriod, Blocknumber lastUpdateIn);
64
- event LogStakingTargetRewardRateSet(NftId targetNftId, UFixed rewardRate, UFixed oldRewardRate, Blocknumber lastUpdateIn);
65
- event LogStakingTargetMaxStakedAmountSet(NftId targetNftId, Amount stakeLimitAmount, Blocknumber lastUpdateIn);
66
- event LogStakingTargetLimitsSet(NftId targetNftId, Amount stakeLimitAmount, Amount marginAmount, Amount limitAmount);
65
+ event LogStakingTargetLockingPeriodSet(NftId indexed targetNftId, Seconds oldLockingPeriod, Seconds lockingPeriod, Blocknumber lastUpdateIn);
66
+ event LogStakingTargetRewardRateSet(NftId indexed targetNftId, UFixed oldRewardRate, UFixed rewardRate, Blocknumber lastUpdateIn);
67
+ event LogStakingTargetMaxStakedAmountSet(NftId indexed targetNftId, Amount stakeLimitAmount, Blocknumber indexed lastUpdateIn);
68
+ event LogStakingTargetLimitsSet(NftId indexed targetNftId, Amount stakeLimitAmount, Amount marginAmount, Amount limitAmount);
67
69
 
68
70
  // reward reserves
69
- event LogStakingRewardReservesRefilled(NftId targetNftId, Amount dipAmount, address targetOwner, Amount reserveBalance, Blocknumber lastUpdateIn);
70
- event LogStakingRewardReservesWithdrawn(NftId targetNftId, Amount dipAmount, address targetOwner, Amount reserveBalance, Blocknumber lastUpdateIn);
71
- event LogStakingRewardReservesSpent(NftId targetNftId, Amount dipAmount, Amount reserveBalance, Blocknumber lastUpdateIn);
71
+ event LogStakingRewardReservesRefilled(NftId indexed targetNftId, Amount dipAmount, address indexed targetOwner, Amount reserveBalance, Blocknumber lastUpdateIn);
72
+ event LogStakingRewardReservesWithdrawn(NftId indexed targetNftId, Amount dipAmount, address indexed targetOwner, Amount reserveBalance, Blocknumber lastUpdateIn);
73
+ event LogStakingRewardReservesSpent(NftId indexed targetNftId, Amount dipAmount, Amount reserveBalance, Blocknumber lastUpdateIn);
72
74
 
73
75
  // stakes
74
- event LogStakingStakeCreated(NftId stakeNftId, NftId targetNftId, Amount stakeAmount, Timestamp lockedUntil, address stakeOwner);
75
- event LogStakingStakeRewardsUpdated(NftId stakeNftId, Amount rewardIncrementAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
76
- event LogStakingRewardsRestaked(NftId stakeNftId, Amount restakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
77
- event LogStakingStaked(NftId stakeNftId, Amount stakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
78
- event LogStakingUnstaked(NftId stakeNftId, Amount unstakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
79
- event LogStakingRewardsClaimed(NftId stakeNftId, Amount claimedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
80
-
81
- event LogStakingStakeRestaked(NftId stakeNftId, NftId targetNftId, Amount stakeAmount, address owner, NftId oldStakeNftId);
76
+ event LogStakingStakeCreated(NftId indexed stakeNftId, NftId indexed targetNftId, Amount stakeAmount, Timestamp lockedUntil, address stakeOwner);
77
+ event LogStakingStakeRewardsUpdated(NftId indexed stakeNftId, Amount rewardIncrementAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
78
+ event LogStakingRewardsRestaked(NftId indexed stakeNftId, Amount restakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
79
+ event LogStakingStaked(NftId indexed stakeNftId, Amount stakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
80
+ event LogStakingUnstaked(NftId indexed stakeNftId, Amount unstakedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
81
+ event LogStakingRewardsClaimed(NftId indexed stakeNftId, Amount claimedAmount, Amount stakeBalance, Amount rewardBalance, Timestamp lockedUntil, Blocknumber lastUpdateIn);
82
+
83
+ event LogStakingStakeRestaked(NftId indexed stakeNftId, NftId indexed targetNftId, Amount stakeAmount, address owner, NftId oldStakeNftId);
82
84
 
83
85
  // modifiers
84
86
  error ErrorStakingNotStake(NftId stakeNftId);
@@ -16,22 +16,13 @@ import {UFixed} from "../type/UFixed.sol";
16
16
  interface IStakingService is IService
17
17
  {
18
18
 
19
- event LogStakingServiceProtocolTargetRegistered(NftId protocolNftId);
20
- event LogStakingServiceInstanceTargetRegistered(NftId instanceNftId, uint256 chainId);
21
- event LogStakingServiceLockingPeriodSet(NftId targetNftId, Seconds oldLockingDuration, Seconds lockingDuration);
22
- event LogStakingServiceRewardRateSet(NftId targetNftId, UFixed oldRewardRate, UFixed rewardRate);
23
-
24
- event LogStakingServiceRewardReservesIncreased(NftId targetNftId, address rewardProvider, Amount dipAmount, Amount newBalance);
25
- event LogStakingServiceRewardReservesDecreased(NftId targetNftId, address targetOwner, Amount dipAmount, Amount newBalance);
26
-
27
- event LogStakingServiceStakeObjectCreated(NftId stakeNftId, NftId targetNftId, address stakeOwner);
28
- event LogStakingServiceStakeCreated(NftId stakeNftId, NftId targetNftId, address owner, Amount stakedAmount);
29
- event LogStakingServiceStakeIncreased(NftId stakeNftId, address owner, Amount stakedAmount, Amount stakeBalance);
30
- event LogStakingServiceUnstaked(NftId stakeNftId, address stakeOwner, Amount totalAmount);
31
- event LogStakingServiceStakeRestaked(address stakeOwner, NftId indexed stakeNftId, NftId newStakeNftId, NftId indexed newTargetNftId, Amount indexed newStakeBalance);
32
-
33
- event LogStakingServiceRewardsUpdated(NftId stakeNftId);
34
- event LogStakingServiceRewardsClaimed(NftId stakeNftId, address stakeOwner, Amount rewardsClaimedAmount);
19
+ event LogStakingServiceProtocolTargetRegistered(NftId indexed protocolNftId);
20
+ event LogStakingServiceInstanceTargetRegistered(NftId indexed instanceNftId, Seconds initialLockingPeriod, UFixed initialRewardRate);
21
+
22
+ event LogStakingServiceRewardReservesIncreased(NftId indexed targetNftId, address indexed rewardProvider, Amount dipAmount, Amount newBalance);
23
+ event LogStakingServiceRewardReservesDecreased(NftId indexed targetNftId, address indexed targetOwner, Amount dipAmount, Amount newBalance);
24
+
25
+ event LogStakingServiceStakeCreated(NftId indexed stakeNftId, NftId indexed targetNftId, address indexed stakeOwner);
35
26
 
36
27
  // modifiers
37
28
  error ErrorStakingServiceNotStakingOwner(address account);
@@ -86,6 +86,7 @@ contract Staking is
86
86
  address(this),
87
87
  dipToken,
88
88
  getRegistry().getAuthority());
89
+ emit LogStakingTokenHandlerDeployed(getNftId(), address($._tokenHandler), dipToken);
89
90
  }
90
91
 
91
92
 
@@ -176,7 +177,7 @@ contract Staking is
176
177
  Blocknumber lastUpdateIn
177
178
  ) = _getStakingStorage()._store.setStakingRate(chainId, token, stakingRate);
178
179
 
179
- emit LogStakingStakingRateSet(chainId, token, stakingRate, oldStakingRate, lastUpdateIn);
180
+ emit LogStakingStakingRateSet(chainId, token, oldStakingRate, stakingRate, lastUpdateIn);
180
181
  }
181
182
 
182
183
 
@@ -192,7 +193,7 @@ contract Staking is
192
193
  address oldStakingService = address($._stakingService);
193
194
  $._stakingService = StakingLib.checkAndGetStakingService(getRegistry(), release);
194
195
 
195
- emit LogStakingStakingServiceSet(address($._stakingService), release, oldStakingService);
196
+ emit LogStakingStakingServiceSet(oldStakingService, address($._stakingService), release);
196
197
  }
197
198
 
198
199
 
@@ -249,7 +250,7 @@ contract Staking is
249
250
  token,
250
251
  amount);
251
252
 
252
- emit LogStakingTokenHandlerApproved(address(token), amount, oldAllowanceAmount);
253
+ emit LogStakingTokenHandlerApproved(oldAllowanceAmount, amount, address(token));
253
254
  }
254
255
 
255
256
  //--- target management -------------------------------------------------//
@@ -421,7 +422,7 @@ contract Staking is
421
422
  $._store.addTargetToken(targetNftId, token);
422
423
 
423
424
  // TODO move logging to store
424
- emit LogStakingTargetTokenAdded(targetNftId, chainId, token);
425
+ emit LogStakingTargetTokenAdded(targetNftId, token);
425
426
  }
426
427
 
427
428