@etherisc/gif-next 3.0.0-d6ff88d-936 → 3.0.0-dd00d66-173

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 (467) hide show
  1. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +139 -72
  3. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +110 -116
  5. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
  6. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +72 -33
  7. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  8. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +89 -66
  9. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +1 -1
  10. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +122 -101
  11. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  12. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +20 -65
  13. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  14. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +31 -55
  15. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  16. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  17. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +20 -10
  18. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  19. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +1 -1
  20. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  21. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +1 -1
  22. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  23. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +18 -42
  24. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  25. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +126 -75
  26. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  27. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +41 -65
  28. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  29. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +72 -57
  30. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  31. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +198 -139
  32. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  33. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +140 -150
  34. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  35. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +84 -56
  36. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  37. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +71 -32
  38. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
  39. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
  40. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +166 -104
  41. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
  42. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +41 -65
  43. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
  44. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +200 -138
  45. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
  46. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +41 -65
  47. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
  48. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +1 -1
  49. package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +2 -2
  50. package/artifacts/contracts/examples/flight/FlightMessageVerifier.sol/FlightMessageVerifier.dbg.json +1 -1
  51. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +1 -1
  52. package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +173 -116
  53. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +1 -1
  54. package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +41 -65
  55. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +1 -1
  56. package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +170 -108
  57. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +1 -1
  58. package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +41 -65
  59. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +1 -1
  60. package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +196 -134
  61. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +1 -1
  62. package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +41 -65
  63. package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +1 -1
  64. package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +1 -1
  65. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
  66. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +159 -102
  67. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
  68. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +41 -65
  69. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
  70. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +163 -106
  71. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
  72. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +177 -120
  73. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
  74. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +41 -65
  75. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
  76. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +171 -114
  77. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
  78. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +41 -65
  79. package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +1 -1
  80. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  81. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +49 -54
  82. package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +1 -1
  83. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  84. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +77 -25
  85. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  86. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +83 -44
  87. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  88. package/artifacts/contracts/instance/Instance.sol/Instance.json +144 -50
  89. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  90. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +169 -147
  91. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  92. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +43 -67
  93. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  94. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +36 -36
  95. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  96. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +138 -75
  97. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  98. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +104 -112
  99. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  100. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2 -2
  101. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +1 -1
  102. package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +2 -2
  103. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
  104. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +53 -58
  105. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  106. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  107. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  108. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.json +1 -1
  109. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  110. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  111. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  112. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
  113. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  114. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +3 -8
  115. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +1 -1
  116. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +2 -2
  117. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  118. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  119. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  120. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  121. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  122. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  123. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  124. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +132 -81
  125. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  126. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +41 -65
  127. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  128. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  129. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +94 -66
  130. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  131. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +80 -83
  132. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  133. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +82 -67
  134. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  135. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +149 -148
  136. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  137. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +111 -129
  138. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  139. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +88 -73
  140. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  141. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +41 -65
  142. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  143. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +176 -117
  144. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  145. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +129 -139
  146. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  147. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +71 -32
  148. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  149. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +100 -72
  150. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  151. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +94 -86
  152. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  153. package/artifacts/contracts/pool/Pool.sol/Pool.json +88 -73
  154. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +1 -1
  155. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +24 -247
  156. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  157. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +233 -165
  158. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  159. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +140 -130
  160. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  161. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +138 -63
  162. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  163. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +110 -112
  164. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  165. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +72 -57
  166. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  167. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +41 -65
  168. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  169. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +182 -115
  170. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  171. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +132 -138
  172. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  173. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +71 -32
  174. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  175. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +71 -32
  176. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  177. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +82 -64
  178. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  179. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +82 -43
  180. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  181. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +84 -56
  182. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  183. package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +75 -36
  184. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  185. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +173 -127
  186. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +1 -1
  187. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +2 -2
  188. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  189. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +122 -128
  190. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  191. package/artifacts/contracts/product/PricingService.sol/PricingService.json +161 -94
  192. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  193. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +116 -122
  194. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  195. package/artifacts/contracts/product/Product.sol/Product.json +72 -57
  196. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  197. package/artifacts/contracts/product/RiskService.sol/RiskService.json +146 -63
  198. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  199. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +109 -107
  200. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  201. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  202. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +155 -56
  203. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  204. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +202 -216
  205. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +1 -1
  206. package/artifacts/contracts/registry/IRelease.sol/IRelease.json +1 -15
  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 +314 -96
  210. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  211. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +163 -142
  212. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +1 -1
  213. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +57 -77
  214. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  215. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +285 -244
  216. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  217. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +115 -110
  218. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +1 -1
  219. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +159 -150
  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 +127 -185
  224. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  225. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +32 -56
  226. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  227. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +13 -29
  228. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  229. package/artifacts/contracts/shared/Component.sol/Component.json +84 -39
  230. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  231. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +164 -320
  232. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  233. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +115 -141
  234. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
  235. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +421 -169
  236. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
  237. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.dbg.json +1 -1
  238. package/artifacts/contracts/shared/IAuthorizedComponent.sol/IAuthorizedComponent.json +96 -38
  239. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  240. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +96 -38
  241. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  242. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +82 -226
  243. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  244. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +84 -56
  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 -28
  248. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  249. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +1 -12
  250. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  251. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +77 -25
  252. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  253. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +1 -12
  254. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  255. package/artifacts/contracts/shared/IService.sol/IService.json +71 -32
  256. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +4 -0
  257. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +74 -0
  258. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  259. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  260. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +72 -57
  261. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  262. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  263. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
  264. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  265. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +15 -34
  266. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  267. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +3 -14
  268. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  269. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +76 -24
  270. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  271. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +3 -37
  272. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  273. package/artifacts/contracts/shared/Service.sol/Service.json +70 -31
  274. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  275. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +42 -29
  276. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
  277. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +30 -17
  278. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
  279. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +34 -34
  280. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +4 -0
  281. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +74 -0
  282. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  283. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +101 -56
  284. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  285. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +75 -36
  286. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +1 -1
  287. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  288. package/artifacts/contracts/staking/Staking.sol/Staking.json +170 -109
  289. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +1 -1
  290. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +26 -31
  291. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  292. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +112 -124
  293. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  294. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +5 -22
  295. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  296. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +132 -65
  297. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  298. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +105 -111
  299. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  300. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +212 -204
  301. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +1 -1
  302. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +27 -19
  303. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  304. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +16 -16
  305. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  306. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  307. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  308. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +1 -1
  309. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +2 -2
  310. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  311. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
  312. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  313. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  314. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  315. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  316. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  317. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
  318. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
  319. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  320. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
  321. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  322. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  323. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  324. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +6 -6
  325. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  326. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
  327. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  328. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
  329. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  330. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
  331. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +1 -1
  332. package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +2 -2
  333. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  334. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
  335. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  336. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +4 -4
  337. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  338. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  339. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  340. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  341. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  342. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  343. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  344. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  345. package/artifacts/contracts/type/Version.sol/VersionLib.json +10 -10
  346. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  347. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +19 -6
  348. package/artifacts/contracts/upgradeability/IUpgradeable.sol/IUpgradeable.dbg.json +4 -0
  349. package/artifacts/contracts/upgradeability/{IVersionable.sol/IVersionable.json → IUpgradeable.sol/IUpgradeable.json} +54 -4
  350. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  351. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +63 -86
  352. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  353. package/artifacts/contracts/upgradeability/Upgradeable.sol/Upgradeable.dbg.json +4 -0
  354. package/artifacts/contracts/upgradeability/{Versionable.sol/Versionable.json → Upgradeable.sol/Upgradeable.json} +54 -4
  355. package/contracts/accounting/AccountingService.sol +5 -6
  356. package/contracts/accounting/AccountingServiceManager.sol +4 -6
  357. package/contracts/accounting/IAccountingService.sol +1 -1
  358. package/contracts/authorization/AccessAdmin.sol +22 -19
  359. package/contracts/authorization/AccessAdminLib.sol +12 -9
  360. package/contracts/authorization/AccessManagerCloneable.sol +24 -48
  361. package/contracts/authorization/Authorization.sol +2 -2
  362. package/contracts/authorization/IAccessAdmin.sol +3 -3
  363. package/contracts/authorization/IServiceAuthorization.sol +1 -1
  364. package/contracts/authorization/ServiceAuthorization.sol +4 -4
  365. package/contracts/distribution/BasicDistribution.sol +0 -2
  366. package/contracts/distribution/BasicDistributionAuthorization.sol +5 -4
  367. package/contracts/distribution/Distribution.sol +0 -2
  368. package/contracts/distribution/DistributionService.sol +24 -20
  369. package/contracts/distribution/DistributionServiceManager.sol +4 -6
  370. package/contracts/examples/fire/FirePool.sol +0 -4
  371. package/contracts/examples/fire/FireProduct.sol +0 -4
  372. package/contracts/examples/flight/FlightOracle.sol +0 -4
  373. package/contracts/examples/flight/FlightPool.sol +0 -4
  374. package/contracts/examples/flight/FlightProduct.sol +0 -4
  375. package/contracts/examples/unpermissioned/SimpleDistribution.sol +0 -4
  376. package/contracts/examples/unpermissioned/SimpleOracle.sol +0 -4
  377. package/contracts/examples/unpermissioned/SimplePool.sol +0 -4
  378. package/contracts/examples/unpermissioned/SimpleProduct.sol +0 -4
  379. package/contracts/instance/Instance.sol +7 -11
  380. package/contracts/instance/InstanceAdmin.sol +10 -17
  381. package/contracts/instance/InstanceAuthorizationV3.sol +4 -2
  382. package/contracts/instance/InstanceReader.sol +15 -15
  383. package/contracts/instance/InstanceService.sol +18 -20
  384. package/contracts/instance/InstanceServiceManager.sol +4 -6
  385. package/contracts/instance/base/Cloneable.sol +4 -10
  386. package/contracts/instance/base/ObjectSet.sol +2 -2
  387. package/contracts/oracle/BasicOracle.sol +0 -2
  388. package/contracts/oracle/BasicOracleAuthorization.sol +3 -1
  389. package/contracts/oracle/IOracleService.sol +0 -4
  390. package/contracts/oracle/Oracle.sol +3 -4
  391. package/contracts/oracle/OracleService.sol +37 -67
  392. package/contracts/oracle/OracleServiceManager.sol +4 -6
  393. package/contracts/pool/BasicPool.sol +2 -4
  394. package/contracts/pool/BasicPoolAuthorization.sol +5 -4
  395. package/contracts/pool/BundleService.sol +25 -19
  396. package/contracts/pool/BundleServiceManager.sol +5 -7
  397. package/contracts/pool/IPoolService.sol +5 -6
  398. package/contracts/pool/Pool.sol +1 -3
  399. package/contracts/pool/PoolLib.sol +5 -102
  400. package/contracts/pool/PoolService.sol +67 -101
  401. package/contracts/pool/PoolServiceManager.sol +4 -6
  402. package/contracts/product/ApplicationService.sol +13 -34
  403. package/contracts/product/ApplicationServiceManager.sol +4 -6
  404. package/contracts/product/BasicProduct.sol +0 -2
  405. package/contracts/product/BasicProductAuthorization.sol +5 -4
  406. package/contracts/product/ClaimService.sol +10 -34
  407. package/contracts/product/ClaimServiceManager.sol +5 -7
  408. package/contracts/product/IPolicyService.sol +0 -1
  409. package/contracts/product/PolicyService.sol +44 -57
  410. package/contracts/product/PolicyServiceManager.sol +4 -6
  411. package/contracts/product/PricingService.sol +7 -8
  412. package/contracts/product/PricingServiceManager.sol +4 -6
  413. package/contracts/product/Product.sol +0 -2
  414. package/contracts/product/RiskService.sol +8 -40
  415. package/contracts/product/RiskServiceManager.sol +4 -6
  416. package/contracts/registry/IRegistry.sol +20 -14
  417. package/contracts/registry/IRegistryService.sol +10 -14
  418. package/contracts/registry/IRelease.sol +0 -3
  419. package/contracts/registry/Registry.sol +124 -78
  420. package/contracts/registry/RegistryAdmin.sol +11 -22
  421. package/contracts/registry/RegistryAuthorization.sol +4 -3
  422. package/contracts/registry/RegistryService.sol +99 -82
  423. package/contracts/registry/RegistryServiceManager.sol +4 -11
  424. package/contracts/registry/ReleaseAdmin.sol +9 -16
  425. package/contracts/registry/ReleaseRegistry.sol +64 -74
  426. package/contracts/registry/ServiceAuthorizationV3.sol +4 -3
  427. package/contracts/registry/TokenRegistry.sol +6 -15
  428. package/contracts/shared/Component.sol +27 -22
  429. package/contracts/shared/ComponentService.sol +45 -130
  430. package/contracts/shared/ComponentServiceManager.sol +5 -7
  431. package/contracts/shared/ContractLib.sol +359 -93
  432. package/contracts/shared/IComponent.sol +5 -3
  433. package/contracts/shared/IComponentService.sol +0 -14
  434. package/contracts/shared/IInstanceLinkedComponent.sol +3 -7
  435. package/contracts/shared/INftOwnable.sol +0 -2
  436. package/contracts/shared/IRegisterable.sol +14 -3
  437. package/contracts/shared/IRegistryLinked.sol +1 -3
  438. package/contracts/shared/IService.sol +2 -2
  439. package/contracts/shared/IVersionable.sol +19 -0
  440. package/contracts/shared/InstanceLinkedComponent.sol +29 -64
  441. package/contracts/shared/NftOwnable.sol +9 -22
  442. package/contracts/shared/PolicyHolder.sol +2 -4
  443. package/contracts/shared/Registerable.sol +37 -20
  444. package/contracts/shared/RegistryLinked.sol +4 -23
  445. package/contracts/shared/Service.sol +8 -9
  446. package/contracts/shared/TokenHandler.sol +4 -1
  447. package/contracts/shared/Versionable.sol +47 -0
  448. package/contracts/staking/IStaking.sol +2 -2
  449. package/contracts/staking/Staking.sol +28 -33
  450. package/contracts/staking/StakingLib.sol +3 -1
  451. package/contracts/staking/StakingManager.sol +3 -6
  452. package/contracts/staking/StakingReader.sol +9 -17
  453. package/contracts/staking/StakingService.sol +16 -13
  454. package/contracts/staking/StakingServiceManager.sol +4 -8
  455. package/contracts/staking/StakingStore.sol +8 -8
  456. package/contracts/staking/TargetHandler.sol +4 -5
  457. package/contracts/type/Version.sol +15 -16
  458. package/contracts/upgradeability/{IVersionable.sol → IUpgradeable.sol} +13 -19
  459. package/contracts/upgradeability/ProxyManager.sol +46 -54
  460. package/contracts/upgradeability/{Versionable.sol → Upgradeable.sol} +25 -14
  461. package/package.json +1 -1
  462. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +0 -4
  463. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +0 -24
  464. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +0 -4
  465. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +0 -40
  466. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +0 -4
  467. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +0 -4
@@ -16,7 +16,6 @@ contract FirePool is
16
16
  BasicPool
17
17
  {
18
18
  constructor(
19
- address registry,
20
19
  NftId fireProductNftId,
21
20
  string memory componentName,
22
21
  IAuthorization authorization
@@ -24,7 +23,6 @@ contract FirePool is
24
23
  {
25
24
  address initialOwner = msg.sender;
26
25
  _intialize(
27
- registry,
28
26
  fireProductNftId,
29
27
  componentName,
30
28
  IComponents.PoolInfo({
@@ -41,7 +39,6 @@ contract FirePool is
41
39
  }
42
40
 
43
41
  function _intialize(
44
- address registry,
45
42
  NftId fireProductNftId,
46
43
  string memory componentName,
47
44
  IComponents.PoolInfo memory poolInfo,
@@ -52,7 +49,6 @@ contract FirePool is
52
49
  initializer
53
50
  {
54
51
  _initializeBasicPool(
55
- registry,
56
52
  fireProductNftId,
57
53
  componentName,
58
54
  poolInfo,
@@ -65,7 +65,6 @@ contract FireProduct is
65
65
  mapping(uint256 fireId => mapping (NftId policyId => bool claimed)) private _claimed;
66
66
 
67
67
  constructor(
68
- address registry,
69
68
  NftId instanceNftid,
70
69
  string memory componentName,
71
70
  IAuthorization authorization
@@ -74,7 +73,6 @@ contract FireProduct is
74
73
  address initialOwner = msg.sender;
75
74
 
76
75
  _initialize(
77
- registry,
78
76
  instanceNftid,
79
77
  componentName,
80
78
  authorization,
@@ -82,7 +80,6 @@ contract FireProduct is
82
80
  }
83
81
 
84
82
  function _initialize(
85
- address registry,
86
83
  NftId instanceNftId,
87
84
  string memory componentName,
88
85
  IAuthorization authorization,
@@ -92,7 +89,6 @@ contract FireProduct is
92
89
  initializer
93
90
  {
94
91
  _initializeBasicProduct(
95
- registry,
96
92
  instanceNftId,
97
93
  componentName,
98
94
  IComponents.ProductInfo({
@@ -38,7 +38,6 @@ contract FlightOracle is
38
38
 
39
39
 
40
40
  constructor(
41
- address registry,
42
41
  NftId productNftId,
43
42
  string memory componentName,
44
43
  IAuthorization authorization
@@ -46,7 +45,6 @@ contract FlightOracle is
46
45
  {
47
46
  address initialOwner = msg.sender;
48
47
  initialize(
49
- registry,
50
48
  productNftId,
51
49
  authorization,
52
50
  initialOwner,
@@ -56,7 +54,6 @@ contract FlightOracle is
56
54
 
57
55
 
58
56
  function initialize(
59
- address registry,
60
57
  NftId productNftId,
61
58
  IAuthorization authorization,
62
59
  address initialOwner,
@@ -67,7 +64,6 @@ contract FlightOracle is
67
64
  initializer()
68
65
  {
69
66
  _initializeBasicOracle(
70
- registry,
71
67
  productNftId,
72
68
  authorization,
73
69
  initialOwner,
@@ -20,7 +20,6 @@ contract FlightPool is
20
20
  BasicPool
21
21
  {
22
22
  constructor(
23
- address registry,
24
23
  NftId productNftId,
25
24
  string memory componentName,
26
25
  IAuthorization authorization
@@ -28,7 +27,6 @@ contract FlightPool is
28
27
  {
29
28
  address initialOwner = msg.sender;
30
29
  _intialize(
31
- registry,
32
30
  productNftId,
33
31
  componentName,
34
32
  IComponents.PoolInfo({
@@ -45,7 +43,6 @@ contract FlightPool is
45
43
  }
46
44
 
47
45
  function _intialize(
48
- address registry,
49
46
  NftId productNftId,
50
47
  string memory componentName,
51
48
  IComponents.PoolInfo memory poolInfo,
@@ -56,7 +53,6 @@ contract FlightPool is
56
53
  initializer
57
54
  {
58
55
  _initializeBasicPool(
59
- registry,
60
56
  productNftId,
61
57
  componentName,
62
58
  poolInfo,
@@ -132,7 +132,6 @@ contract FlightProduct is
132
132
 
133
133
 
134
134
  constructor(
135
- address registry,
136
135
  NftId instanceNftid,
137
136
  string memory componentName,
138
137
  IAuthorization authorization,
@@ -142,7 +141,6 @@ contract FlightProduct is
142
141
  address initialOwner = msg.sender;
143
142
 
144
143
  _initialize(
145
- registry,
146
144
  instanceNftid,
147
145
  componentName,
148
146
  authorization,
@@ -616,7 +614,6 @@ contract FlightProduct is
616
614
 
617
615
 
618
616
  function _initialize(
619
- address registry,
620
617
  NftId instanceNftId,
621
618
  string memory componentName,
622
619
  IAuthorization authorization,
@@ -626,7 +623,6 @@ contract FlightProduct is
626
623
  initializer
627
624
  {
628
625
  _initializeBasicProduct(
629
- registry,
630
626
  instanceNftId,
631
627
  componentName,
632
628
  IComponents.ProductInfo({
@@ -17,14 +17,12 @@ contract SimpleDistribution is
17
17
  {
18
18
 
19
19
  constructor(
20
- address registry,
21
20
  NftId productNftId,
22
21
  IAuthorization authorization,
23
22
  address initialOwner
24
23
  )
25
24
  {
26
25
  initialize(
27
- registry,
28
26
  productNftId,
29
27
  authorization,
30
28
  initialOwner,
@@ -32,7 +30,6 @@ contract SimpleDistribution is
32
30
  }
33
31
 
34
32
  function initialize(
35
- address registry,
36
33
  NftId productNftId,
37
34
  IAuthorization authorization,
38
35
  address initialOwner,
@@ -43,7 +40,6 @@ contract SimpleDistribution is
43
40
  initializer()
44
41
  {
45
42
  _initializeBasicDistribution(
46
- registry,
47
43
  productNftId,
48
44
  authorization,
49
45
  initialOwner,
@@ -31,14 +31,12 @@ contract SimpleOracle is
31
31
  event LogSimpleOracleSyncResponseSent(RequestId requestId, string responseText);
32
32
 
33
33
  constructor(
34
- address registry,
35
34
  NftId productNftId,
36
35
  IAuthorization authorization,
37
36
  address initialOwner
38
37
  )
39
38
  {
40
39
  initialize(
41
- registry,
42
40
  productNftId,
43
41
  authorization,
44
42
  initialOwner,
@@ -47,7 +45,6 @@ contract SimpleOracle is
47
45
  }
48
46
 
49
47
  function initialize(
50
- address registry,
51
48
  NftId productNftId,
52
49
  IAuthorization authorization,
53
50
  address initialOwner,
@@ -58,7 +55,6 @@ contract SimpleOracle is
58
55
  initializer()
59
56
  {
60
57
  _initializeBasicOracle(
61
- registry,
62
58
  productNftId,
63
59
  authorization,
64
60
  initialOwner,
@@ -17,7 +17,6 @@ contract SimplePool is
17
17
  {
18
18
 
19
19
  constructor(
20
- address registry,
21
20
  NftId productNftId,
22
21
  IComponents.PoolInfo memory poolInfo,
23
22
  IAuthorization authorization,
@@ -25,7 +24,6 @@ contract SimplePool is
25
24
  )
26
25
  {
27
26
  initialize(
28
- registry,
29
27
  productNftId,
30
28
  poolInfo,
31
29
  authorization,
@@ -35,7 +33,6 @@ contract SimplePool is
35
33
 
36
34
 
37
35
  function initialize(
38
- address registry,
39
36
  NftId productNftId,
40
37
  IComponents.PoolInfo memory poolInfo,
41
38
  IAuthorization authorization,
@@ -46,7 +43,6 @@ contract SimplePool is
46
43
  initializer()
47
44
  {
48
45
  _initializeBasicPool(
49
- registry,
50
46
  productNftId,
51
47
  "SimplePool",
52
48
  poolInfo,
@@ -34,7 +34,6 @@ contract SimpleProduct is
34
34
  IOracleService private _oracleService;
35
35
 
36
36
  constructor(
37
- address registry,
38
37
  NftId instanceNftId,
39
38
  string memory name,
40
39
  IComponents.ProductInfo memory productInfo,
@@ -44,7 +43,6 @@ contract SimpleProduct is
44
43
  )
45
44
  {
46
45
  initialize(
47
- registry,
48
46
  instanceNftId,
49
47
  name,
50
48
  productInfo,
@@ -55,7 +53,6 @@ contract SimpleProduct is
55
53
 
56
54
 
57
55
  function initialize(
58
- address registry,
59
56
  NftId instanceNftid,
60
57
  string memory name,
61
58
  IComponents.ProductInfo memory productInfo,
@@ -68,7 +65,6 @@ contract SimpleProduct is
68
65
  initializer()
69
66
  {
70
67
  _initializeBasicProduct(
71
- registry,
72
68
  instanceNftid,
73
69
  name,
74
70
  productInfo,
@@ -26,8 +26,6 @@ contract Instance is
26
26
  IInstance,
27
27
  Registerable
28
28
  {
29
- bool private _initialized;
30
-
31
29
  IComponentService internal _componentService;
32
30
  IInstanceService internal _instanceService;
33
31
 
@@ -59,8 +57,6 @@ contract Instance is
59
57
 
60
58
  function initialize(
61
59
  InstanceContracts memory instanceContracts,
62
- IRegistry registry,
63
- VersionPart release,
64
60
  address initialOwner,
65
61
  bool tokenRegistryDisabled // only disable for testing
66
62
  )
@@ -74,9 +70,9 @@ contract Instance is
74
70
  _instanceAdmin = instanceContracts.instanceAdmin;
75
71
 
76
72
  // setup instance object info
73
+ IRegistry registry = _getRegistry();
77
74
  __Registerable_init({
78
75
  authority: instanceContracts.instanceAdmin.authority(),
79
- registry: address(registry),
80
76
  parentNftId: registry.getNftId(),
81
77
  objectType: INSTANCE(),
82
78
  isInterceptor: false,
@@ -93,19 +89,19 @@ contract Instance is
93
89
  // initialize instance supporting contracts
94
90
  _instanceStore.initialize();
95
91
  _productStore.initialize();
96
- _bundleSet.initialize(instanceContracts.instanceAdmin.authority(), address(registry));
97
- _riskSet.initialize(instanceContracts.instanceAdmin.authority(), address(registry));
92
+ _bundleSet.initialize(instanceContracts.instanceAdmin.authority());
93
+ _riskSet.initialize(instanceContracts.instanceAdmin.authority());
98
94
  _instanceReader.initialize();
99
95
 
100
96
  _componentService = IComponentService(
101
- getRegistry().getServiceAddress(
97
+ registry.getServiceAddress(
102
98
  COMPONENT(),
103
- release));
99
+ getRelease()));
104
100
 
105
101
  _instanceService = IInstanceService(
106
- getRegistry().getServiceAddress(
102
+ registry.getServiceAddress(
107
103
  INSTANCE(),
108
- release));
104
+ getRelease()));
109
105
 
110
106
  _tokenRegistryDisabled = tokenRegistryDisabled;
111
107
 
@@ -11,9 +11,10 @@ import {AccessAdminLib} from "../authorization/AccessAdminLib.sol";
11
11
  import {AccessManagerCloneable} from "../authorization/AccessManagerCloneable.sol";
12
12
  import {ObjectType, INSTANCE} from "../type/ObjectType.sol";
13
13
  import {RoleId, ADMIN_ROLE} from "../type/RoleId.sol";
14
+ import {GIF_INITIAL_RELEASE} from "../registry/Registry.sol";
14
15
  import {Str} from "../type/String.sol";
15
- import {VersionPart} from "../type/Version.sol";
16
16
  import {INSTANCE_TARGET_NAME, INSTANCE_ADMIN_TARGET_NAME, INSTANCE_STORE_TARGET_NAME, PRODUCT_STORE_TARGET_NAME, BUNDLE_SET_TARGET_NAME, RISK_SET_TARGET_NAME} from "./TargetNames.sol";
17
+ import {VersionPart} from "../type/Version.sol";
17
18
 
18
19
 
19
20
  contract InstanceAdmin is
@@ -26,13 +27,12 @@ contract InstanceAdmin is
26
27
  error ErrorInstanceAdminNotComponentOrCustomTarget(address target);
27
28
 
28
29
  IInstance internal _instance;
29
- IRegistry internal _registry;
30
30
 
31
31
  uint64 internal _customRoleIdNext;
32
32
 
33
33
 
34
34
  modifier onlyInstanceService() {
35
- if (msg.sender != _registry.getServiceAddress(INSTANCE(), getRelease())) {
35
+ if (msg.sender != _getRegistry().getServiceAddress(INSTANCE(), getRelease())) {
36
36
  revert ErrorInstanceAdminNotInstanceService(msg.sender);
37
37
  }
38
38
  _;
@@ -43,7 +43,8 @@ contract InstanceAdmin is
43
43
  constructor(address accessManager) {
44
44
  initialize(
45
45
  accessManager,
46
- "MasterInstanceAdmin");
46
+ "MasterInstanceAdmin",
47
+ GIF_INITIAL_RELEASE());
47
48
  }
48
49
 
49
50
 
@@ -51,32 +52,23 @@ contract InstanceAdmin is
51
52
  /// Important: Initialization of instance admin is only complete after calling this function.
52
53
  /// Important: The instance MUST be registered and all instance supporting contracts must be wired to this instance.
53
54
  function completeSetup(
54
- address registry,
55
55
  address authorization,
56
- VersionPart release,
57
56
  address instance
58
57
  )
59
58
  external
60
- reinitializer(uint64(release.toInt()))
61
59
  {
62
60
  // checks
63
- AccessAdminLib.checkIsRegistered(registry, instance, INSTANCE());
61
+ AccessAdminLib.checkIsRegistered(instance, INSTANCE(), getRelease());
64
62
 
65
63
  // effects
66
- AccessManagerCloneable(
67
- authority()).completeSetup(
68
- registry,
69
- release);
70
-
71
64
  AccessAdminLib.checkAuthorization(
72
65
  address(_authorization),
73
66
  authorization,
74
67
  INSTANCE(), // expectedDomain
75
- release, // expectedRelease
68
+ getRelease(), // expectedRelease
76
69
  false, // expectServiceAuthorization
77
70
  true); // checkAlreadyInitialized
78
71
 
79
- _registry = IRegistry(registry);
80
72
  _instance = IInstance(instance);
81
73
  _authorization = IAuthorization(authorization);
82
74
  _customRoleIdNext = 0;
@@ -105,7 +97,7 @@ contract InstanceAdmin is
105
97
  for(uint256 i = 0; i < serviceDomains.length; i++) {
106
98
  ObjectType serviceDomain = serviceDomains[i];
107
99
  RoleId serviceRoleId = authorization.getServiceRole(serviceDomain);
108
- address service = _registry.getServiceAddress(serviceDomain, getRelease());
100
+ address service = _getRegistry().getServiceAddress(serviceDomain, getRelease());
109
101
 
110
102
  _grantRoleToAccount(
111
103
  serviceRoleId,
@@ -135,7 +127,8 @@ contract InstanceAdmin is
135
127
  /// Important: The component MUST be registered.
136
128
  function initializeComponentAuthorization(
137
129
  address componentAddress,
138
- ObjectType expectedType
130
+ ObjectType expectedType,
131
+ VersionPart expectedRelease
139
132
  )
140
133
  external
141
134
  restricted()
@@ -13,7 +13,9 @@ import {InstanceStore} from "../instance/InstanceStore.sol";
13
13
  import {INSTANCE_TARGET_NAME, INSTANCE_ADMIN_TARGET_NAME, INSTANCE_STORE_TARGET_NAME, PRODUCT_STORE_TARGET_NAME, BUNDLE_SET_TARGET_NAME, RISK_SET_TARGET_NAME} from "./TargetNames.sol";
14
14
  import {ProductStore} from "../instance/ProductStore.sol";
15
15
  import {ADMIN_ROLE, INSTANCE_OWNER_ROLE, PUBLIC_ROLE} from "../type/RoleId.sol";
16
- import {RiskSet} from "../instance/RiskSet.sol";
16
+ import {GIF_INITIAL_RELEASE} from "../registry/Registry.sol";
17
+ import {RiskSet} from "../instance/RiskSet.sol";
18
+ import {VersionPartLib} from "../type/Version.sol";
17
19
 
18
20
 
19
21
  contract InstanceAuthorizationV3
@@ -27,7 +29,7 @@ contract InstanceAuthorizationV3
27
29
  Authorization(
28
30
  INSTANCE_TARGET_NAME,
29
31
  INSTANCE(),
30
- 3,
32
+ GIF_INITIAL_RELEASE(),
31
33
  COMMIT_HASH,
32
34
  TargetType.Instance,
33
35
  false)
@@ -28,6 +28,7 @@ import {NftId} from "../type/NftId.sol";
28
28
  import {PayoutId, PayoutIdLib} from "../type/PayoutId.sol";
29
29
  import {PolicyServiceLib} from "../product/PolicyServiceLib.sol";
30
30
  import {ProductStore} from "./ProductStore.sol";
31
+ import {RegistryLinked} from "../shared/RegistryLinked.sol";
31
32
  import {ReferralId, ReferralStatus, ReferralLib} from "../type/Referral.sol";
32
33
  import {RequestId} from "../type/RequestId.sol";
33
34
  import {RiskId} from "../type/RiskId.sol";
@@ -40,14 +41,19 @@ import {UFixed, UFixedLib} from "../type/UFixed.sol";
40
41
 
41
42
  /// @dev Central reader contract for a specific instance.
42
43
  /// Provides reading functions for all instance data and related component data.
43
- contract InstanceReader {
44
+ contract InstanceReader is
45
+ RegistryLinked
46
+ {
44
47
 
45
48
  error ErrorInstanceReaderAlreadyInitialized();
46
49
  error ErrorInstanceReaderInstanceAddressZero();
47
-
50
+ // TODO make state immutable:
51
+ // 1. instance receives reader through setInstanceReader()
52
+ // 2. this way instance initialization is not depends on reader
53
+ // 3. and reader is simple contract with constructor
54
+ // 4. no _initialized in storage, the rest is immutable
48
55
  bool private _initialized = false;
49
56
 
50
- IRegistry internal _registry;
51
57
  IInstance internal _instance;
52
58
  InstanceAdmin internal _instanceAdmin;
53
59
 
@@ -78,27 +84,24 @@ contract InstanceReader {
78
84
  _initialized = true;
79
85
  _instance = IInstance(instanceAddress);
80
86
  _instanceAdmin = _instance.getInstanceAdmin();
81
- _registry = _instance.getRegistry();
82
87
 
83
88
  _store = _instance.getInstanceStore();
84
89
  _productStore = _instance.getProductStore();
85
90
  _bundleSet = _instance.getBundleSet();
86
91
  _riskSet = _instance.getRiskSet();
87
- _distributionService = IDistributionService(_registry.getServiceAddress(DISTRIBUTION(), _instance.getRelease()));
92
+
93
+ _distributionService = IDistributionService(
94
+ _getRegistry().getServiceAddress(DISTRIBUTION(), _instance.getRelease()));
88
95
  }
89
96
 
90
97
 
91
98
  //--- instance functions ---------------------------------------------------------//
92
99
 
93
- /// @dev Returns the registry this instance is registered in.
94
- function getRegistry() public view returns (IRegistry registry) {
95
- return _registry;
96
- }
97
100
 
98
101
 
99
102
  /// @dev Returns the instance NFT ID.
100
103
  function getInstanceNftId() public view returns (NftId instanceNftid) {
101
- return _registry.getNftIdForAddress(address(_instance));
104
+ return _getRegistry().getNftIdForAddress(address(_instance));
102
105
  }
103
106
 
104
107
 
@@ -435,7 +438,7 @@ contract InstanceReader {
435
438
  return _store.getReferralInfo(referralId);
436
439
  }
437
440
 
438
-
441
+ // TODO reader dependce on service os wrong?
439
442
  function getDiscountPercentage(ReferralId referralId)
440
443
  public
441
444
  view
@@ -444,10 +447,7 @@ contract InstanceReader {
444
447
  ReferralStatus status
445
448
  )
446
449
  {
447
- return IDistributionService(
448
- _registry.getServiceAddress(
449
- DISTRIBUTION(),
450
- _instance.getRelease())).getDiscountPercentage(
450
+ return _distributionService.getDiscountPercentage(
451
451
  this, // instance reader
452
452
  referralId);
453
453
  }
@@ -175,7 +175,7 @@ contract InstanceService is
175
175
  IInstance(instanceAddress).getInstanceAdmin().setInstanceLocked(locked);
176
176
 
177
177
  emit LogInstanceServiceInstanceLocked(
178
- getRegistry().getNftIdForAddress(instanceAddress),
178
+ _getRegistry().getNftIdForAddress(instanceAddress),
179
179
  locked);
180
180
  }
181
181
 
@@ -204,13 +204,11 @@ contract InstanceService is
204
204
  // MUST be set after instance is set up and registered
205
205
  IAuthorization instanceAuthorization = InstanceAdmin(_masterInstanceAdmin).getInstanceAuthorization();
206
206
  instanceAdmin.completeSetup(
207
- address(getRegistry()),
208
207
  address(instanceAuthorization),
209
- getRelease(),
210
208
  address(instance));
211
209
 
212
210
  // hard checks for newly cloned instance
213
- assert(address(instance.getRegistry()) == address(getRegistry()));
211
+ //assert(address(instance._getRegistry()) == address(_getRegistry()));// consider deleting this
214
212
  assert(instance.getRelease() == getRelease());
215
213
 
216
214
  // register cloned instance as staking target
@@ -231,7 +229,7 @@ contract InstanceService is
231
229
  restricted()
232
230
  onlyInstance()
233
231
  {
234
- NftId instanceNftId = getRegistry().getNftIdForAddress(msg.sender);
232
+ NftId instanceNftId = _getRegistry().getNftIdForAddress(msg.sender);
235
233
  _stakingService.setInstanceLockingPeriod(
236
234
  instanceNftId,
237
235
  stakeLockingPeriod);
@@ -244,7 +242,7 @@ contract InstanceService is
244
242
  restricted()
245
243
  onlyInstance()
246
244
  {
247
- NftId instanceNftId = getRegistry().getNftIdForAddress(msg.sender);
245
+ NftId instanceNftId = _getRegistry().getNftIdForAddress(msg.sender);
248
246
  _stakingService.setInstanceRewardRate(
249
247
  instanceNftId,
250
248
  rewardRate);
@@ -256,7 +254,7 @@ contract InstanceService is
256
254
  restricted()
257
255
  onlyInstance()
258
256
  {
259
- NftId instanceNftId = getRegistry().getNftIdForAddress(msg.sender);
257
+ NftId instanceNftId = _getRegistry().getNftIdForAddress(msg.sender);
260
258
  _stakingService.setInstanceMaxStakedAmount(
261
259
  instanceNftId,
262
260
  maxStakedAmount);
@@ -270,7 +268,7 @@ contract InstanceService is
270
268
  onlyInstance()
271
269
  returns (Amount newBalance)
272
270
  {
273
- NftId instanceNftId = getRegistry().getNftIdForAddress(msg.sender);
271
+ NftId instanceNftId = _getRegistry().getNftIdForAddress(msg.sender);
274
272
  newBalance = _stakingService.refillInstanceRewardReserves(
275
273
  instanceNftId,
276
274
  rewardProvider,
@@ -285,7 +283,7 @@ contract InstanceService is
285
283
  onlyInstance()
286
284
  returns (Amount newBalance)
287
285
  {
288
- NftId instanceNftId = getRegistry().getNftIdForAddress(msg.sender);
286
+ NftId instanceNftId = _getRegistry().getNftIdForAddress(msg.sender);
289
287
  newBalance = _stakingService.withdrawInstanceRewardReserves(
290
288
  instanceNftId,
291
289
  dipAmount);
@@ -308,7 +306,7 @@ contract InstanceService is
308
306
  instance.setInstanceReader(upgradedInstanceReaderClone);
309
307
 
310
308
  emit LogInstanceServiceInstanceReaderUpgraded(
311
- getRegistry().getNftIdForAddress(instanceAddress),
309
+ _getRegistry().getNftIdForAddress(instanceAddress),
312
310
  address(upgradedInstanceReaderClone));
313
311
  }
314
312
 
@@ -349,6 +347,7 @@ contract InstanceService is
349
347
  if(instanceStoreAddress == address(0)) { revert ErrorInstanceServiceInstanceStoreZero(); }
350
348
  if(productStoreAddress == address(0)) { revert ErrorInstanceServiceProductStoreZero(); } // TODO: rename exception
351
349
 
350
+ // TODO check instance cluster release
352
351
  if(instance.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceInstanceAuthorityMismatch(); }
353
352
  if(bundleSet.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceBundleSetAuthorityMismatch(); }
354
353
  if(riskSet.authority() != instanceAdmin.authority()) { revert ErrorInstanceServiceRiskSetAuthorityMismatch(); }
@@ -391,7 +390,7 @@ contract InstanceService is
391
390
  _masterInstanceReader = instanceReaderAddress;
392
391
 
393
392
  emit LogInstanceServiceMasterInstanceReaderUpgraded(
394
- getRegistry().getNftIdForAddress(_masterInstance),
393
+ _getRegistry().getNftIdForAddress(_masterInstance),
395
394
  instanceReaderAddress);
396
395
  }
397
396
 
@@ -419,7 +418,8 @@ contract InstanceService is
419
418
 
420
419
  clonedAdmin.initialize(
421
420
  address(clonedAccessManager),
422
- "InstanceAdmin");
421
+ "InstanceAdmin",
422
+ getRelease());
423
423
  }
424
424
 
425
425
 
@@ -445,8 +445,6 @@ contract InstanceService is
445
445
  riskSet: RiskSet(Clones.clone(_masterInstanceRiskSet)),
446
446
  instanceReader: InstanceReader(Clones.clone(address(_masterInstanceReader)))
447
447
  }),
448
- getRegistry(),
449
- getRelease(),
450
448
  instanceOwner,
451
449
  allowAnyToken);
452
450
 
@@ -461,14 +459,13 @@ contract InstanceService is
461
459
  )
462
460
  internal
463
461
  virtual override
464
- initializer()
462
+ onlyInitializing()
465
463
  {
466
464
  (
467
- address authority,
468
- address registry
469
- ) = abi.decode(data, (address, address));
465
+ address authority
466
+ ) = abi.decode(data, (address));
470
467
 
471
- __Service_init(authority, registry, owner);
468
+ __Service_init(authority, owner);
472
469
 
473
470
  _registryService = IRegistryService(_getServiceAddress(REGISTRY()));
474
471
  _stakingService = IStakingService(_getServiceAddress(STAKING()));
@@ -486,7 +483,8 @@ contract InstanceService is
486
483
  virtual
487
484
  view
488
485
  {
489
- IRegistry registry = getRegistry();
486
+ // TODO use ContractLib to verify registration, type and release
487
+ IRegistry registry = _getRegistry();
490
488
 
491
489
  NftId instanceNftId = registry.getNftIdForAddress(instanceAddress);
492
490
  if (instanceNftId.eqz()) {