@etherisc/gif-next 3.0.0-a511887-523 → 3.0.0-ab0fcb2-112

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 (456) hide show
  1. package/README.md +1 -0
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
  3. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +59 -107
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
  5. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +59 -156
  6. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
  7. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +13 -61
  8. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  9. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +58 -90
  10. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
  11. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +80 -59
  12. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  13. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +2 -2
  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 +14 -46
  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 +45 -85
  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 +13 -61
  29. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  30. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +119 -175
  31. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  32. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +89 -190
  33. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  34. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +13 -61
  35. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  36. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +13 -61
  37. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
  38. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
  39. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +54 -103
  40. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
  41. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +2 -2
  42. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
  43. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +104 -153
  44. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
  45. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +18 -18
  46. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
  47. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +4 -0
  48. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +604 -0
  49. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +4 -0
  50. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.json +229 -0
  51. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +4 -0
  52. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +1255 -0
  53. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +4 -0
  54. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +825 -0
  55. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +4 -0
  56. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +1528 -0
  57. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +4 -0
  58. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +820 -0
  59. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +4 -0
  60. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +2635 -0
  61. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +4 -0
  62. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +820 -0
  63. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +4 -0
  64. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +586 -0
  65. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +4 -0
  66. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.json +901 -0
  67. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
  68. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +57 -119
  69. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
  70. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +2 -2
  71. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
  72. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +51 -113
  73. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
  74. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +59 -121
  75. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
  76. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +2 -2
  77. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
  78. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +63 -125
  79. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
  80. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +18 -18
  81. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
  82. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  83. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +49 -54
  84. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
  85. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  86. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +14 -62
  87. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  88. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +13 -61
  89. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  90. package/artifacts/contracts/instance/Instance.sol/Instance.json +42 -95
  91. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  92. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +158 -182
  93. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  94. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +2 -2
  95. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  96. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +179 -77
  97. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  98. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +51 -99
  99. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  100. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +55 -152
  101. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  102. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2 -2
  103. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
  104. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +2 -2
  105. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
  106. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +53 -58
  107. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  108. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  109. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  110. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.json +1 -1
  111. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  112. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  113. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  114. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
  115. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  116. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +3 -8
  117. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
  118. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +2 -2
  119. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  120. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  121. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  122. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  123. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  124. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  125. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  126. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +41 -81
  127. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  128. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +2 -2
  129. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  130. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  131. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +13 -61
  132. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  133. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +13 -103
  134. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  135. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +13 -61
  136. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  137. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +61 -175
  138. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  139. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +60 -169
  140. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  141. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +13 -61
  142. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  143. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +2 -2
  144. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  145. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +95 -151
  146. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  147. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +78 -179
  148. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  149. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +13 -61
  150. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  151. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +13 -61
  152. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  153. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +25 -104
  154. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  155. package/artifacts/contracts/pool/Pool.sol/Pool.json +13 -61
  156. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
  157. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +24 -252
  158. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  159. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +143 -190
  160. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  161. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +89 -170
  162. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  163. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +59 -99
  164. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  165. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +59 -152
  166. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  167. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +13 -61
  168. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  169. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +18 -18
  170. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  171. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +103 -151
  172. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  173. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +81 -178
  174. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  175. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +13 -61
  176. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  177. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +13 -61
  178. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  179. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +13 -82
  180. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  181. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +13 -61
  182. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  183. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +13 -61
  184. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  185. package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +13 -61
  186. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  187. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +83 -152
  188. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
  189. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +2 -2
  190. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  191. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +71 -168
  192. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  193. package/artifacts/contracts/product/PricingService.sol/PricingService.json +71 -119
  194. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  195. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +65 -162
  196. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  197. package/artifacts/contracts/product/Product.sol/Product.json +13 -61
  198. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  199. package/artifacts/contracts/product/RiskService.sol/RiskService.json +63 -95
  200. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  201. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +58 -147
  202. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  203. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  204. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  205. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +13 -61
  206. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
  207. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  208. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  209. package/artifacts/contracts/registry/Registry.sol/Registry.json +2 -2
  210. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  211. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +140 -169
  212. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
  213. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +2 -2
  214. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  215. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +51 -99
  216. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  217. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +55 -157
  218. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
  219. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +146 -183
  220. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  221. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +2 -2
  222. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  223. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +98 -185
  224. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  225. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +2 -2
  226. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  227. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +13 -71
  228. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  229. package/artifacts/contracts/shared/Component.sol/Component.json +13 -61
  230. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  231. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +81 -137
  232. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  233. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +70 -171
  234. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
  235. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +411 -139
  236. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
  237. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +4 -0
  238. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.json +691 -0
  239. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  240. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +13 -61
  241. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  242. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +13 -61
  243. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  244. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +13 -61
  245. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  246. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  247. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +1 -70
  248. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  249. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +1 -54
  250. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  251. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +13 -61
  252. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  253. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +1 -54
  254. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  255. package/artifacts/contracts/shared/IService.sol/IService.json +13 -61
  256. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  257. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  258. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  259. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +13 -61
  260. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  261. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  262. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
  263. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  264. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +15 -76
  265. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  266. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +3 -56
  267. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  268. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +13 -61
  269. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  270. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +3 -79
  271. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  272. package/artifacts/contracts/shared/Service.sol/Service.json +13 -61
  273. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  274. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +2 -2
  275. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
  276. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +2 -2
  277. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
  278. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +2 -2
  279. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  280. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  281. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +13 -61
  282. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  283. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +13 -61
  284. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +1 -1
  285. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  286. package/artifacts/contracts/staking/Staking.sol/Staking.json +73 -121
  287. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
  288. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +26 -31
  289. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  290. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +66 -163
  291. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  292. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +5 -64
  293. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  294. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +49 -97
  295. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  296. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +54 -151
  297. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  298. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +200 -266
  299. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
  300. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +27 -19
  301. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  302. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +2 -2
  303. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  304. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  305. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  306. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
  307. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +2 -2
  308. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  309. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
  310. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  311. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  312. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  313. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  314. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  315. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
  316. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
  317. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  318. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
  319. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  320. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  321. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  322. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +22 -25
  323. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  324. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
  325. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  326. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +23 -4
  327. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  328. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
  329. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +4 -0
  330. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +33 -0
  331. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  332. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
  333. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  334. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +2 -2
  335. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  336. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +21 -2
  337. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  338. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  339. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  340. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  341. package/artifacts/contracts/type/String.sol/StrLib.json +21 -2
  342. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  343. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +36 -4
  344. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  345. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  346. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  347. package/artifacts/contracts/upgradeability/IUpgradeable.sol/IUpgradeable.dbg.json +1 -1
  348. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  349. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +29 -121
  350. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  351. package/artifacts/contracts/upgradeability/Upgradeable.sol/Upgradeable.dbg.json +1 -1
  352. package/contracts/accounting/AccountingService.sol +3 -4
  353. package/contracts/accounting/AccountingServiceManager.sol +1 -3
  354. package/contracts/authorization/AccessAdmin.sol +3 -3
  355. package/contracts/authorization/AccessAdminLib.sol +14 -11
  356. package/contracts/authorization/IAccessAdmin.sol +1 -0
  357. package/contracts/distribution/BasicDistribution.sol +0 -2
  358. package/contracts/distribution/BasicDistributionAuthorization.sol +1 -1
  359. package/contracts/distribution/Distribution.sol +0 -2
  360. package/contracts/distribution/DistributionService.sol +14 -13
  361. package/contracts/distribution/DistributionServiceManager.sol +1 -3
  362. package/contracts/examples/fire/FirePool.sol +0 -4
  363. package/contracts/examples/fire/FireProduct.sol +0 -4
  364. package/contracts/examples/flight/FlightLib.sol +322 -0
  365. package/contracts/examples/flight/FlightMessageVerifier.sol +128 -0
  366. package/contracts/examples/flight/FlightOracle.sol +163 -0
  367. package/contracts/examples/flight/FlightOracleAuthorization.sol +34 -0
  368. package/contracts/examples/flight/FlightPool.sol +85 -0
  369. package/contracts/examples/flight/FlightPoolAuthorization.sol +37 -0
  370. package/contracts/examples/flight/FlightProduct.sol +650 -0
  371. package/contracts/examples/flight/FlightProductAuthorization.sol +45 -0
  372. package/contracts/examples/flight/FlightUSD.sol +28 -0
  373. package/contracts/examples/flight/originalV1.sol +396 -0
  374. package/contracts/examples/unpermissioned/SimpleDistribution.sol +0 -4
  375. package/contracts/examples/unpermissioned/SimpleOracle.sol +0 -4
  376. package/contracts/examples/unpermissioned/SimplePool.sol +0 -4
  377. package/contracts/examples/unpermissioned/SimpleProduct.sol +0 -4
  378. package/contracts/instance/IInstance.sol +1 -1
  379. package/contracts/instance/Instance.sol +6 -7
  380. package/contracts/instance/InstanceAdmin.sol +6 -8
  381. package/contracts/instance/InstanceReader.sol +40 -18
  382. package/contracts/instance/InstanceService.sol +14 -16
  383. package/contracts/instance/InstanceServiceManager.sol +1 -3
  384. package/contracts/instance/base/Cloneable.sol +4 -10
  385. package/contracts/instance/base/ObjectSet.sol +2 -2
  386. package/contracts/oracle/BasicOracle.sol +0 -2
  387. package/contracts/oracle/IOracleService.sol +12 -16
  388. package/contracts/oracle/Oracle.sol +0 -2
  389. package/contracts/oracle/OracleService.sol +36 -66
  390. package/contracts/oracle/OracleServiceManager.sol +1 -3
  391. package/contracts/pool/BasicPool.sol +2 -4
  392. package/contracts/pool/BasicPoolAuthorization.sol +1 -1
  393. package/contracts/pool/BundleService.sol +20 -14
  394. package/contracts/pool/BundleServiceManager.sol +2 -4
  395. package/contracts/pool/IPoolService.sol +5 -6
  396. package/contracts/pool/Pool.sol +1 -3
  397. package/contracts/pool/PoolLib.sol +4 -104
  398. package/contracts/pool/PoolService.sol +66 -100
  399. package/contracts/pool/PoolServiceManager.sol +1 -3
  400. package/contracts/product/ApplicationService.sol +9 -29
  401. package/contracts/product/ApplicationServiceManager.sol +1 -3
  402. package/contracts/product/BasicProduct.sol +0 -2
  403. package/contracts/product/BasicProductAuthorization.sol +4 -3
  404. package/contracts/product/ClaimService.sol +9 -33
  405. package/contracts/product/ClaimServiceManager.sol +2 -4
  406. package/contracts/product/IPolicyService.sol +0 -1
  407. package/contracts/product/PolicyService.sol +43 -56
  408. package/contracts/product/PolicyServiceManager.sol +1 -3
  409. package/contracts/product/PricingService.sol +6 -7
  410. package/contracts/product/PricingServiceManager.sol +1 -3
  411. package/contracts/product/Product.sol +0 -2
  412. package/contracts/product/RiskService.sol +7 -39
  413. package/contracts/product/RiskServiceManager.sol +1 -3
  414. package/contracts/registry/RegistryAdmin.sol +6 -11
  415. package/contracts/registry/RegistryAuthorization.sol +2 -2
  416. package/contracts/registry/RegistryService.sol +14 -15
  417. package/contracts/registry/RegistryServiceManager.sol +1 -8
  418. package/contracts/registry/ReleaseAdmin.sol +2 -11
  419. package/contracts/registry/ReleaseRegistry.sol +14 -26
  420. package/contracts/registry/TokenRegistry.sol +6 -15
  421. package/contracts/shared/Component.sol +3 -5
  422. package/contracts/shared/ComponentService.sol +18 -30
  423. package/contracts/shared/ComponentServiceManager.sol +2 -4
  424. package/contracts/shared/ContractLib.sol +359 -93
  425. package/contracts/shared/EcdsaChecker.sol +5 -0
  426. package/contracts/shared/IAuthorizedComponent.sol +15 -0
  427. package/contracts/shared/IInstanceLinkedComponent.sol +2 -6
  428. package/contracts/shared/INftOwnable.sol +0 -2
  429. package/contracts/shared/IRegisterable.sol +6 -0
  430. package/contracts/shared/IRegistryLinked.sol +1 -5
  431. package/contracts/shared/InstanceLinkedComponent.sol +73 -22
  432. package/contracts/shared/NftOwnable.sol +8 -8
  433. package/contracts/shared/PolicyHolder.sol +0 -2
  434. package/contracts/shared/Registerable.sol +5 -6
  435. package/contracts/shared/RegistryLinked.sol +4 -30
  436. package/contracts/shared/Service.sol +2 -4
  437. package/contracts/staking/Staking.sol +22 -17
  438. package/contracts/staking/StakingLib.sol +3 -1
  439. package/contracts/staking/StakingManager.sol +0 -3
  440. package/contracts/staking/StakingReader.sol +9 -17
  441. package/contracts/staking/StakingService.sol +6 -6
  442. package/contracts/staking/StakingServiceManager.sol +1 -4
  443. package/contracts/staking/StakingStore.sol +4 -6
  444. package/contracts/staking/TargetHandler.sol +4 -5
  445. package/contracts/type/ObjectType.sol +2 -31
  446. package/contracts/type/Referral.sol +6 -0
  447. package/contracts/type/RequestIdSet.sol +62 -0
  448. package/contracts/type/Seconds.sol +4 -0
  449. package/contracts/type/String.sol +30 -0
  450. package/contracts/type/Timestamp.sol +10 -1
  451. package/contracts/upgradeability/ProxyManager.sol +1 -5
  452. package/package.json +2 -1
  453. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +0 -4
  454. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +0 -24
  455. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +0 -4
  456. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +0 -40
@@ -12,11 +12,11 @@ import {InstanceStore} from "../instance/InstanceStore.sol";
12
12
 
13
13
  import {Amount, AmountLib} from "../type/Amount.sol";
14
14
  import {BundleSet} from "../instance/BundleSet.sol";
15
+ import {ContractLib} from "../shared/ContractLib.sol";
15
16
  import {Fee} from "../type/Fee.sol";
16
17
  import {InstanceReader} from "../instance/InstanceReader.sol";
17
18
  import {NftId, NftIdLib} from "../type/NftId.sol";
18
19
  import {ObjectType, ACCOUNTING, COMPONENT, POOL, BUNDLE, POLICY, REGISTRY} from "../type/ObjectType.sol";
19
- import {PoolLib} from "./PoolLib.sol";
20
20
  import {Seconds} from "../type/Seconds.sol";
21
21
  import {Service} from "../shared/Service.sol";
22
22
  import {StateId, ACTIVE, PAUSED, CLOSED, KEEP_STATE} from "../type/StateId.sol";
@@ -44,11 +44,10 @@ contract BundleService is
44
44
  onlyInitializing()
45
45
  {
46
46
  (
47
- address authority,
48
- address registry
49
- ) = abi.decode(data, (address, address));
47
+ address authority
48
+ ) = abi.decode(data, (address));
50
49
 
51
- __Service_init(authority, registry, owner);
50
+ __Service_init(authority, owner);
52
51
 
53
52
  _registryService = IRegistryService(_getServiceAddress(REGISTRY()));
54
53
  _accountingService = IAccountingService(_getServiceAddress(ACCOUNTING()));
@@ -66,9 +65,12 @@ contract BundleService is
66
65
  virtual
67
66
  restricted()
68
67
  {
69
- _checkNftType(bundleNftId, BUNDLE());
68
+ (
69
+ NftId poolNftId,
70
+ IInstance instance
71
+ ) = ContractLib.getAndVerifyPoolForBundle(
72
+ bundleNftId, getRelease());
70
73
 
71
- (NftId poolNftId, IInstance instance) = PoolLib.getAndVerifyActivePool(getRegistry(), msg.sender);
72
74
  InstanceReader instanceReader = instance.getInstanceReader();
73
75
  IBundle.BundleInfo memory bundleInfo = instanceReader.getBundleInfo(bundleNftId);
74
76
  if(bundleInfo.poolNftId.eqz()) {
@@ -97,7 +99,10 @@ contract BundleService is
97
99
  restricted()
98
100
  returns(NftId bundleNftId)
99
101
  {
100
- (NftId poolNftId, IInstance instance) = PoolLib.getAndVerifyActivePool(getRegistry(), msg.sender);
102
+ (
103
+ NftId poolNftId,
104
+ IInstance instance
105
+ ) = ContractLib.getAndVerifyPool(getRelease());
101
106
 
102
107
  // register bundle with registry
103
108
  bundleNftId = _registryService.registerBundle(
@@ -191,9 +196,8 @@ contract BundleService is
191
196
  restricted()
192
197
  {
193
198
  // checks
194
- _checkNftType(bundleNftId, BUNDLE());
195
-
196
- (, IInstance instance) = PoolLib.getAndVerifyActivePool(getRegistry(), msg.sender);
199
+ (, IInstance instance) = ContractLib.getAndVerifyPoolForBundle(
200
+ bundleNftId, getRelease());
197
201
 
198
202
  // effects
199
203
  // update set of active bundles
@@ -331,9 +335,12 @@ contract BundleService is
331
335
  returns (Timestamp extendedExpiredAt)
332
336
  {
333
337
  // checks
334
- _checkNftType(bundleNftId, BUNDLE());
338
+ (
339
+ NftId poolNftId,
340
+ IInstance instance
341
+ ) = ContractLib.getAndVerifyPoolForBundle(
342
+ bundleNftId, getRelease());
335
343
 
336
- (NftId poolNftId, IInstance instance) = PoolLib.getAndVerifyActivePool(getRegistry(), msg.sender);
337
344
  IBundle.BundleInfo memory bundleInfo = instance.getInstanceReader().getBundleInfo(bundleNftId);
338
345
  StateId bundleState = instance.getInstanceReader().getBundleState(bundleNftId);
339
346
 
@@ -379,7 +386,6 @@ contract BundleService is
379
386
  emit LogBundleServiceCollateralReleased(bundleNftId, policyNftId, collateralAmount);
380
387
  }
381
388
 
382
-
383
389
  function _getDomain() internal pure override returns(ObjectType) {
384
390
  return BUNDLE();
385
391
  }
@@ -11,15 +11,13 @@ contract BundleServiceManager is ProxyManager {
11
11
 
12
12
  /// @dev initializes proxy manager with pool service implementation
13
13
  constructor(
14
- address authority,
15
- address registry,
14
+ address authority,
16
15
  bytes32 salt
17
16
  )
18
17
  {
19
18
  BundleService svc = new BundleService{salt: salt}();
20
- bytes memory data = abi.encode(authority, registry);
19
+ bytes memory data = abi.encode(authority);
21
20
  IUpgradeable upgradeable = initialize(
22
- registry,
23
21
  address(svc),
24
22
  data,
25
23
  salt);
@@ -18,15 +18,14 @@ interface IPoolService is IService {
18
18
  event LogPoolServiceWalletFunded(NftId poolNftId, address poolOwner, Amount amount);
19
19
  event LogPoolServiceWalletDefunded(NftId poolNftId, address poolOwner, Amount amount);
20
20
 
21
- event LogPoolServiceBundleCreated(NftId instanceNftId, NftId poolNftId, NftId bundleNftId);
22
- event LogPoolServiceBundleClosed(NftId instanceNftId, NftId poolNftId, NftId bundleNftId);
21
+ event LogPoolServiceBundleClosed(NftId poolNftId, NftId bundleNftId);
23
22
 
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);
23
+ event LogPoolServiceBundleStaked(NftId poolNftId, NftId bundleNftId, Amount amount, Amount netAmount);
24
+ event LogPoolServiceBundleUnstaked(NftId poolNftId, NftId bundleNftId, Amount amount, Amount netAmount);
26
25
 
27
- event LogPoolServiceFeesWithdrawn(NftId bundleNftId, address recipient, address tokenAddress, Amount amount);
26
+ event LogPoolServiceFeesWithdrawn(NftId poolNftId, NftId bundleNftId, address recipient, address tokenAddress, Amount amount);
28
27
 
29
- event LogPoolServiceProcessFundedClaim(NftId policyNftId, ClaimId claimId, Amount availableAmount);
28
+ event LogPoolServiceProcessFundedClaim(NftId poolNftId, NftId policyNftId, ClaimId claimId, Amount availableAmount);
30
29
 
31
30
  event LogPoolServiceApplicationVerified(NftId poolNftId, NftId bundleNftId, NftId applicationNftId, Amount totalCollateralAmount);
32
31
  event LogPoolServiceCollateralLocked(NftId poolNftId, NftId bundleNftId, NftId applicationNftId, Amount totalCollateralAmount, Amount lockedCollateralAmount);
@@ -35,7 +35,7 @@ abstract contract Pool is
35
35
 
36
36
 
37
37
  modifier onlyBundleOwner(NftId bundleNftId) {
38
- if(msg.sender != getRegistry().ownerOf(bundleNftId)) {
38
+ if(msg.sender != _getRegistry().ownerOf(bundleNftId)) {
39
39
  revert ErrorPoolNotBundleOwner(bundleNftId, msg.sender);
40
40
  }
41
41
  _;
@@ -124,7 +124,6 @@ abstract contract Pool is
124
124
  // Internals
125
125
 
126
126
  function __Pool_init(
127
- address registry,
128
127
  NftId productNftId,
129
128
  string memory name,
130
129
  IComponents.PoolInfo memory poolInfo,
@@ -136,7 +135,6 @@ abstract contract Pool is
136
135
  onlyInitializing()
137
136
  {
138
137
  __InstanceLinkedComponent_init(
139
- registry,
140
138
  productNftId,
141
139
  name,
142
140
  POOL(),
@@ -77,7 +77,6 @@ library PoolLib {
77
77
 
78
78
 
79
79
  function calculateStakingAmounts(
80
- IRegistry registry,
81
80
  InstanceReader instanceReader,
82
81
  NftId poolNftId,
83
82
  Amount stakingAmount
@@ -89,7 +88,7 @@ library PoolLib {
89
88
  Amount netStakingAmount
90
89
  )
91
90
  {
92
- NftId productNftId = registry.getParentNftId(poolNftId);
91
+ NftId productNftId = ContractLib.getRegistry().getParentNftId(poolNftId);
93
92
  Fee memory stakingFee = instanceReader.getFeeInfo(productNftId).stakingFee;
94
93
  (
95
94
  feeAmount,
@@ -101,7 +100,6 @@ library PoolLib {
101
100
 
102
101
 
103
102
  function calculatePayoutAmounts(
104
- IRegistry registry,
105
103
  InstanceReader instanceReader,
106
104
  NftId productNftId,
107
105
  NftId policyNftId,
@@ -122,7 +120,7 @@ library PoolLib {
122
120
  netPayoutAmount = payoutAmount;
123
121
 
124
122
  if (payoutBeneficiary == address(0)) {
125
- beneficiary = registry.ownerOf(policyNftId);
123
+ beneficiary = ContractLib.getRegistry().ownerOf(policyNftId);
126
124
  } else {
127
125
  beneficiary = payoutBeneficiary;
128
126
  }
@@ -137,14 +135,13 @@ library PoolLib {
137
135
 
138
136
 
139
137
  function getPolicyHolder(
140
- IRegistry registry,
141
138
  NftId policyNftId
142
139
  )
143
140
  internal
144
141
  view
145
142
  returns (IPolicyHolder policyHolder)
146
143
  {
147
- address policyHolderAddress = registry.ownerOf(policyNftId);
144
+ address policyHolderAddress = ContractLib.getRegistry().ownerOf(policyNftId);
148
145
  policyHolder = IPolicyHolder(policyHolderAddress);
149
146
 
150
147
  if (!ContractLib.isPolicyHolder(policyHolderAddress)) {
@@ -152,101 +149,7 @@ library PoolLib {
152
149
  }
153
150
  }
154
151
 
155
-
156
- function checkAndGetPoolInfo(
157
- IRegistry registry,
158
- address sender,
159
- NftId bundleNftId,
160
- VersionPart release
161
- )
162
- public
163
- view
164
- returns (
165
- InstanceReader instanceReader,
166
- InstanceStore instanceStore,
167
- NftId instanceNftId,
168
- NftId poolNftId,
169
- IComponents.PoolInfo memory poolInfo
170
- )
171
- {
172
- checkNftType(registry, bundleNftId, BUNDLE(), release);
173
-
174
- IInstance instance;
175
- (poolNftId, instance) = getAndVerifyActivePool(registry, sender);
176
- instanceReader = instance.getInstanceReader();
177
- instanceStore = instance.getInstanceStore();
178
- instanceNftId = instance.getNftId();
179
- poolInfo = instanceReader.getPoolInfo(poolNftId);
180
-
181
- if (registry.getParentNftId(bundleNftId) != poolNftId) {
182
- revert IPoolService.ErrorPoolServiceBundlePoolMismatch(bundleNftId, poolNftId);
183
- }
184
- }
185
-
186
-
187
- function getAndVerifyActivePool(
188
- IRegistry registry,
189
- address sender
190
- )
191
- public
192
- view
193
- returns (
194
- NftId poolNftId,
195
- IInstance instance
196
- )
197
- {
198
- (
199
- IRegistry.ObjectInfo memory info,
200
- address instanceAddress
201
- ) = ContractLib.getAndVerifyComponent(
202
- registry,
203
- sender,
204
- POOL(),
205
- true); // only active pools
206
-
207
- poolNftId = info.nftId;
208
- instance = IInstance(instanceAddress);
209
- }
210
-
211
-
212
- function getAndVerifyActiveComponent(
213
- IRegistry registry,
214
- address sender,
215
- ObjectType expectedComponentType
216
- )
217
- public
218
- view
219
- returns (
220
- NftId componentNftId,
221
- IInstance instance
222
- )
223
- {
224
- (
225
- IRegistry.ObjectInfo memory info,
226
- address instanceAddress
227
- ) = ContractLib.getAndVerifyComponent(
228
- registry,
229
- sender,
230
- expectedComponentType,
231
- true); // only active components
232
-
233
- componentNftId = info.nftId;
234
- instance = IInstance(instanceAddress);
235
- }
236
-
237
- function checkNftType(
238
- IRegistry registry,
239
- NftId nftId,
240
- ObjectType expectedObjectType,
241
- VersionPart expectedRelease
242
- ) internal view {
243
- if(!registry.isObjectType(nftId, expectedObjectType, expectedRelease)) {
244
- revert INftOwnable.ErrorNftOwnableInvalidType(nftId, expectedObjectType);
245
- }
246
- }
247
-
248
152
  function transferTokenAndNotifyPolicyHolder(
249
- IRegistry registry,
250
153
  InstanceReader instanceReader,
251
154
  TokenHandler poolTokenHandler,
252
155
  NftId productNftId,
@@ -268,7 +171,6 @@ library PoolLib {
268
171
  processingFeeAmount,
269
172
  beneficiary
270
173
  ) = calculatePayoutAmounts(
271
- registry,
272
174
  instanceReader,
273
175
  productNftId,
274
176
  policyNftId,
@@ -290,7 +192,6 @@ library PoolLib {
290
192
 
291
193
  // callback to policy holder if applicable
292
194
  policyHolderPayoutExecuted(
293
- registry,
294
195
  policyNftId,
295
196
  payoutId,
296
197
  beneficiary,
@@ -298,7 +199,6 @@ library PoolLib {
298
199
  }
299
200
 
300
201
  function policyHolderPayoutExecuted(
301
- IRegistry registry,
302
202
  NftId policyNftId,
303
203
  PayoutId payoutId,
304
204
  address beneficiary,
@@ -306,7 +206,7 @@ library PoolLib {
306
206
  )
307
207
  private
308
208
  {
309
- IPolicyHolder policyHolder = getPolicyHolder(registry, policyNftId);
209
+ IPolicyHolder policyHolder = getPolicyHolder(policyNftId);
310
210
  if(address(policyHolder) != address(0)) {
311
211
  policyHolder.payoutExecuted(policyNftId, payoutId, payoutAmount, beneficiary);
312
212
  }
@@ -45,16 +45,15 @@ contract PoolService is
45
45
  onlyInitializing()
46
46
  {
47
47
  (
48
- address authority,
49
- address registry
50
- ) = abi.decode(data, (address, address));
48
+ address authority
49
+ ) = abi.decode(data, (address));
51
50
 
52
- __Service_init(authority, registry, owner);
51
+ __Service_init(authority, owner);
53
52
 
54
53
  _accountingService = IAccountingService(_getServiceAddress(ACCOUNTING()));
55
54
  _bundleService = IBundleService(_getServiceAddress(BUNDLE()));
56
55
  _componentService = IComponentService(_getServiceAddress(COMPONENT()));
57
- _staking = IStaking(getRegistry().getStakingAddress());
56
+ _staking = IStaking(_getRegistry().getStakingAddress());
58
57
 
59
58
  _registerInterface(type(IPoolService).interfaceId);
60
59
  }
@@ -66,7 +65,11 @@ contract PoolService is
66
65
  virtual
67
66
  restricted()
68
67
  {
69
- (NftId poolNftId, IInstance instance) = _getAndVerifyActivePool();
68
+ (
69
+ NftId poolNftId,
70
+ IInstance instance
71
+ ) = ContractLib.getAndVerifyPool(getRelease());
72
+
70
73
  InstanceReader instanceReader = instance.getInstanceReader();
71
74
  IComponents.PoolInfo memory poolInfo = instanceReader.getPoolInfo(poolNftId);
72
75
 
@@ -78,15 +81,20 @@ contract PoolService is
78
81
  }
79
82
 
80
83
 
84
+ // TODO closing bundle here but creating in bundle service
81
85
  function closeBundle(NftId bundleNftId)
82
86
  external
83
87
  restricted()
84
88
  virtual
85
89
  {
86
- _checkNftType(bundleNftId, BUNDLE());
87
-
88
- (NftId poolNftId, IInstance instance) = _getAndVerifyActivePool();
90
+ // checks
91
+ (
92
+ NftId poolNftId,
93
+ IInstance instance
94
+ ) = ContractLib.getAndVerifyPoolForBundle(
95
+ bundleNftId, getRelease());
89
96
 
97
+ // effects
90
98
  // TODO get performance fee for pool (#477)
91
99
 
92
100
  // releasing collateral in bundle
@@ -95,15 +103,15 @@ contract PoolService is
95
103
  _accountingService.decreasePoolBalance(
96
104
  instance.getInstanceStore(),
97
105
  poolNftId,
98
- unstakedAmount + feeAmount,
106
+ unstakedAmount + feeAmount,
99
107
  AmountLib.zero());
100
108
 
101
- emit LogPoolServiceBundleClosed(instance.getNftId(), poolNftId, bundleNftId);
109
+ emit LogPoolServiceBundleClosed(poolNftId, bundleNftId);
102
110
 
103
- if ((unstakedAmount + feeAmount).gtz()){
104
- IComponents.ComponentInfo memory poolComponentInfo = instance.getInstanceReader().getComponentInfo(poolNftId);
105
- poolComponentInfo.tokenHandler.pushToken(
106
- getRegistry().ownerOf(bundleNftId),
111
+ if ((unstakedAmount + feeAmount).gtz()) {
112
+ TokenHandler tokenHandler = instance.getInstanceReader().getTokenHandler(poolNftId);
113
+ tokenHandler.pushToken(
114
+ _getRegistry().ownerOf(bundleNftId),
107
115
  unstakedAmount + feeAmount);
108
116
  }
109
117
  }
@@ -119,56 +127,25 @@ contract PoolService is
119
127
  restricted()
120
128
  virtual
121
129
  {
122
- _checkNftType(policyNftId, POLICY());
130
+ (
131
+ NftId poolNftId,
132
+ IInstance instance
133
+ ) = ContractLib.getAndVerifyPoolForPolicy(
134
+ policyNftId, getRelease());
123
135
 
124
- (NftId poolNftId, IInstance instance) = _getAndVerifyActivePool();
125
136
  InstanceReader instanceReader = instance.getInstanceReader();
126
- NftId productNftId = getRegistry().getParentNftId(poolNftId);
127
-
128
- // check policy matches with calling pool
129
- IPolicy.PolicyInfo memory policyInfo = instanceReader.getPolicyInfo(policyNftId);
130
- if(policyInfo.productNftId != productNftId) {
131
- revert ErrorPoolServicePolicyPoolMismatch(
132
- policyNftId,
133
- policyInfo.productNftId,
134
- productNftId);
135
- }
137
+ NftId productNftId = _getRegistry().getParentNftId(poolNftId);
136
138
 
137
- emit LogPoolServiceProcessFundedClaim(policyNftId, claimId, availableAmount);
139
+ emit LogPoolServiceProcessFundedClaim(poolNftId, policyNftId, claimId, availableAmount);
138
140
 
141
+ // TODO reading the whole struct for just 1 check
139
142
  // callback to product component if applicable
140
143
  if (instanceReader.getProductInfo(productNftId).isProcessingFundedClaims) {
141
- address productAddress = getRegistry().getObjectAddress(productNftId);
144
+ address productAddress = _getRegistry().getObjectAddress(productNftId);
142
145
  IProductComponent(productAddress).processFundedClaim(policyNftId, claimId, availableAmount);
143
146
  }
144
147
  }
145
148
 
146
-
147
- // function _checkAndGetPoolInfo(NftId bundleNftId)
148
- // internal
149
- // view
150
- // returns (
151
- // InstanceReader instanceReader,
152
- // InstanceStore instanceStore,
153
- // NftId instanceNftId,
154
- // NftId poolNftId,
155
- // IComponents.PoolInfo memory poolInfo
156
- // )
157
- // {
158
- // _checkNftType(bundleNftId, BUNDLE());
159
-
160
- // (NftId poolNftId, IInstance instance) = _getAndVerifyActivePool();
161
- // instanceReader = instance.getInstanceReader();
162
- // instanceStore = instance.getInstanceStore();
163
- // instanceNftId = instance.getNftId();
164
- // poolInfo = instanceReader.getPoolInfo(poolNftId);
165
-
166
- // if (getRegistry().getParentNftId(bundleNftId) != poolNftId) {
167
- // revert ErrorPoolServiceBundlePoolMismatch(bundleNftId, poolNftId);
168
- // }
169
- // }
170
-
171
-
172
149
  /// @inheritdoc IPoolService
173
150
  function stake(NftId bundleNftId, Amount amount)
174
151
  external
@@ -179,12 +156,14 @@ contract PoolService is
179
156
  )
180
157
  {
181
158
  (
182
- InstanceReader instanceReader,
183
- InstanceStore instanceStore,
184
- NftId instanceNftId,
185
- NftId poolNftId,
186
- IComponents.PoolInfo memory poolInfo
187
- ) = PoolLib.checkAndGetPoolInfo(getRegistry(), msg.sender, bundleNftId, getRelease());
159
+ NftId poolNftId,
160
+ IInstance instance
161
+ ) = ContractLib.getAndVerifyPoolForBundle(
162
+ bundleNftId, getRelease());
163
+
164
+ InstanceReader instanceReader = instance.getInstanceReader();
165
+ InstanceStore instanceStore = instance.getInstanceStore();
166
+ IComponents.PoolInfo memory poolInfo = instanceReader.getPoolInfo(poolNftId);
188
167
 
189
168
  {
190
169
  Amount currentPoolBalance = instanceReader.getBalanceAmount(poolNftId);
@@ -199,7 +178,6 @@ contract PoolService is
199
178
  feeAmount,
200
179
  netAmount
201
180
  ) = PoolLib.calculateStakingAmounts(
202
- getRegistry(),
203
181
  instanceReader,
204
182
  poolNftId,
205
183
  amount);
@@ -213,13 +191,13 @@ contract PoolService is
213
191
 
214
192
  _bundleService.stake(instanceReader, instanceStore, bundleNftId, netAmount);
215
193
 
216
- emit LogPoolServiceBundleStaked(instanceNftId, poolNftId, bundleNftId, amount, netAmount);
194
+ emit LogPoolServiceBundleStaked(poolNftId, bundleNftId, amount, netAmount);
217
195
 
218
196
  // only collect staking amount when pool is not externally managed
219
197
  if (!poolInfo.isExternallyManaged) {
220
198
 
221
199
  // collect tokens from bundle owner
222
- address bundleOwner = getRegistry().ownerOf(bundleNftId);
200
+ address bundleOwner = _getRegistry().ownerOf(bundleNftId);
223
201
  PoolLib.pullStakingAmount(
224
202
  instanceReader,
225
203
  poolNftId,
@@ -237,11 +215,13 @@ contract PoolService is
237
215
  returns(Amount netAmount)
238
216
  {
239
217
  (
240
- InstanceReader instanceReader,
241
- InstanceStore instanceStore,
242
- NftId instanceNftId,
243
- NftId poolNftId,
244
- ) = PoolLib.checkAndGetPoolInfo(getRegistry(), msg.sender, bundleNftId, getRelease());
218
+ NftId poolNftId,
219
+ IInstance instance
220
+ ) = ContractLib.getAndVerifyPoolForBundle(
221
+ bundleNftId, getRelease());
222
+
223
+ InstanceReader instanceReader = instance.getInstanceReader();
224
+ InstanceStore instanceStore = instance.getInstanceStore();
245
225
 
246
226
  // call bundle service for bookkeeping and additional checks
247
227
  Amount unstakedAmount = _bundleService.unstake(instanceStore, bundleNftId, amount);
@@ -260,13 +240,13 @@ contract PoolService is
260
240
  AmountLib.zero());
261
241
 
262
242
 
263
- emit LogPoolServiceBundleUnstaked(instanceNftId, poolNftId, bundleNftId, unstakedAmount, netAmount);
243
+ emit LogPoolServiceBundleUnstaked(poolNftId, bundleNftId, unstakedAmount, netAmount);
264
244
 
265
245
  // only distribute staking amount when pool is not externally managed
266
246
  if (!instanceReader.getPoolInfo(poolNftId).isExternallyManaged) {
267
247
 
268
248
  // transfer amount to bundle owner
269
- address bundleOwner = getRegistry().ownerOf(bundleNftId);
249
+ address bundleOwner = _getRegistry().ownerOf(bundleNftId);
270
250
  PoolLib.pushUnstakingAmount(
271
251
  instanceReader,
272
252
  poolNftId,
@@ -284,7 +264,7 @@ contract PoolService is
284
264
  (
285
265
  NftId poolNftId,
286
266
  IInstance instance
287
- ) = _getAndVerifyActivePool();
267
+ ) = ContractLib.getAndVerifyPool(getRelease());
288
268
 
289
269
  // check that pool is externally managed
290
270
  InstanceReader reader = instance.getInstanceReader();
@@ -292,7 +272,7 @@ contract PoolService is
292
272
  revert ErrorPoolServicePoolNotExternallyManaged(poolNftId);
293
273
  }
294
274
 
295
- address poolOwner = getRegistry().ownerOf(poolNftId);
275
+ address poolOwner = _getRegistry().ownerOf(poolNftId);
296
276
  emit LogPoolServiceWalletFunded(poolNftId, poolOwner, amount);
297
277
 
298
278
  PoolLib.pullStakingAmount(
@@ -311,7 +291,7 @@ contract PoolService is
311
291
  (
312
292
  NftId poolNftId,
313
293
  IInstance instance
314
- ) = _getAndVerifyActivePool();
294
+ ) = ContractLib.getAndVerifyPool(getRelease());
315
295
 
316
296
  // check that pool is externally managed
317
297
  InstanceReader reader = instance.getInstanceReader();
@@ -319,7 +299,7 @@ contract PoolService is
319
299
  revert ErrorPoolServicePoolNotExternallyManaged(poolNftId);
320
300
  }
321
301
 
322
- address poolOwner = getRegistry().ownerOf(poolNftId);
302
+ address poolOwner = _getRegistry().ownerOf(poolNftId);
323
303
  emit LogPoolServiceWalletDefunded(poolNftId, poolOwner, amount);
324
304
 
325
305
  PoolLib.pushUnstakingAmount(
@@ -340,10 +320,8 @@ contract PoolService is
340
320
  {
341
321
  _checkNftType(bundleNftId, BUNDLE());
342
322
 
343
- IRegistry registry = getRegistry();
344
- NftId poolNftId = registry.getParentNftId(bundleNftId);
345
- (, address instanceAddress) = ContractLib.getInfoAndInstance(registry, poolNftId, true);
346
- IInstance instance = IInstance(instanceAddress);
323
+ NftId poolNftId = _getRegistry().getParentNftId(bundleNftId);
324
+ (, IInstance instance) = ContractLib.getInfoAndInstance(poolNftId, getRelease(), true);
347
325
 
348
326
  Amount poolFeeAmount = premium.poolFeeFixAmount + premium.poolFeeVarAmount;
349
327
  Amount bundleFeeAmount = premium.bundleFeeFixAmount + premium.bundleFeeVarAmount;
@@ -414,7 +392,7 @@ contract PoolService is
414
392
  // pool callback when required
415
393
  if (poolIsVerifyingApplications) {
416
394
  IPoolComponent pool = IPoolComponent(
417
- getRegistry().getObjectAddress(poolNftId));
395
+ _getRegistry().getObjectAddress(poolNftId));
418
396
 
419
397
  pool.verifyApplication(
420
398
  applicationNftId,
@@ -454,7 +432,7 @@ contract PoolService is
454
432
  _checkNftType(policyNftId, POLICY());
455
433
 
456
434
  // effects
457
- NftId poolNftId = getRegistry().getParentNftId(bundleNftId);
435
+ NftId poolNftId = _getRegistry().getParentNftId(bundleNftId);
458
436
 
459
437
  _accountingService.decreasePoolBalance(
460
438
  instanceStore,
@@ -484,7 +462,6 @@ contract PoolService is
484
462
 
485
463
  // interactions
486
464
  (netPayoutAmount, processingFeeAmount) = PoolLib.transferTokenAndNotifyPolicyHolder(
487
- getRegistry(),
488
465
  instanceReader,
489
466
  poolTokenHandler,
490
467
  productNftId,
@@ -522,9 +499,12 @@ contract PoolService is
522
499
  returns (Amount withdrawnAmount)
523
500
  {
524
501
  // checks
525
- _checkNftType(bundleNftId, BUNDLE());
502
+ (
503
+ NftId poolNftId,
504
+ IInstance instance
505
+ ) = ContractLib.getAndVerifyPoolForBundle(
506
+ bundleNftId, getRelease());
526
507
 
527
- (NftId poolNftId, IInstance instance) = _getAndVerifyActivePool();
528
508
  InstanceReader reader = instance.getInstanceReader();
529
509
 
530
510
  // determine withdrawn amount
@@ -550,10 +530,10 @@ contract PoolService is
550
530
  // interactions
551
531
  // transfer amount to bundle owner
552
532
  {
553
- address bundleOwner = getRegistry().ownerOf(bundleNftId);
533
+ address bundleOwner = _getRegistry().ownerOf(bundleNftId);
554
534
  TokenHandler tokenHandler = reader.getTokenHandler(poolNftId);
555
535
  address token = address(tokenHandler.TOKEN());
556
- emit LogPoolServiceFeesWithdrawn(bundleNftId, bundleOwner, token, withdrawnAmount);
536
+ emit LogPoolServiceFeesWithdrawn(poolNftId, bundleNftId, bundleOwner, token, withdrawnAmount);
557
537
 
558
538
  tokenHandler.pushToken(bundleOwner, withdrawnAmount);
559
539
  }
@@ -594,20 +574,6 @@ contract PoolService is
594
574
  remainingCollateralAmount);
595
575
  }
596
576
 
597
-
598
- function _getAndVerifyActivePool()
599
- internal
600
- virtual
601
- view
602
- returns (
603
- NftId poolNftId,
604
- IInstance instance
605
- )
606
- {
607
- return PoolLib.getAndVerifyActivePool(getRegistry(), msg.sender);
608
- }
609
-
610
-
611
577
  function _getDomain() internal pure override returns(ObjectType) {
612
578
  return POOL();
613
579
  }