@etherisc/gif-next 0.0.2-f36fd21-685 → 0.0.2-f3b4c66-505

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 (521) hide show
  1. package/README.md +46 -8
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +4 -0
  3. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +1007 -0
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +4 -0
  5. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +744 -0
  6. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +4 -0
  7. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +791 -0
  8. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  9. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +203 -77
  10. package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.dbg.json +4 -0
  11. package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.json +24 -0
  12. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  13. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +233 -5
  14. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  15. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +200 -16
  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 +142 -44
  19. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  20. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +107 -15
  21. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  22. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +19 -0
  23. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  24. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +68 -5
  25. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  26. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +165 -391
  27. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  28. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +206 -27
  29. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  30. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +103 -321
  31. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  32. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +378 -355
  33. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  34. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +133 -119
  35. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  36. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +115 -143
  37. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  38. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +248 -122
  39. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +4 -0
  40. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +22 -0
  41. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +4 -0
  42. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +1475 -0
  43. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
  44. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +589 -0
  45. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
  46. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +2032 -0
  47. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
  48. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +589 -0
  49. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +4 -0
  50. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +376 -0
  51. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +4 -0
  52. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +1523 -0
  53. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +4 -0
  54. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +589 -0
  55. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
  56. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1195 -0
  57. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
  58. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1655 -0
  59. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +4 -0
  60. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +589 -0
  61. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
  62. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2432 -0
  63. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +4 -0
  64. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +589 -0
  65. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  66. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +193 -45
  67. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  68. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +158 -57
  69. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  70. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +105 -103
  71. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  72. package/artifacts/contracts/instance/Instance.sol/Instance.json +194 -154
  73. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  74. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +446 -143
  75. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  76. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +150 -90
  77. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  78. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1031 -298
  79. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  80. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +131 -266
  81. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  82. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +102 -92
  83. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  84. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +668 -511
  85. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +4 -0
  86. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +853 -0
  87. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  88. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  89. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  90. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  91. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  92. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  93. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +46 -5
  94. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  95. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +16 -5
  96. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +4 -0
  97. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +168 -0
  98. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  99. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  100. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  101. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  102. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  103. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  104. package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
  105. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  106. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +114 -340
  107. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  108. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +180 -29
  109. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  110. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  111. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +102 -130
  112. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  113. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +69 -11
  114. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  115. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +90 -308
  116. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  117. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +153 -190
  118. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  119. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +122 -88
  120. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  121. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +119 -387
  122. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  123. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +206 -27
  124. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  125. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +275 -314
  126. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  127. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +122 -108
  128. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  129. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +172 -97
  130. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  131. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +124 -219
  132. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  133. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +464 -312
  134. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  135. package/artifacts/contracts/pool/Pool.sol/Pool.json +109 -394
  136. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +4 -0
  137. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +456 -0
  138. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  139. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +653 -532
  140. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  141. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +163 -97
  142. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  143. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +194 -178
  144. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  145. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +100 -90
  146. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  147. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +243 -400
  148. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  149. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +206 -27
  150. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  151. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +415 -234
  152. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  153. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +140 -114
  154. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  155. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +136 -9
  156. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  157. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +308 -16
  158. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  159. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +354 -106
  160. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  161. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +157 -83
  162. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  163. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +235 -202
  164. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
  165. package/artifacts/contracts/product/{IProductService.sol/IProductService.json → IRiskService.sol/IRiskService.json} +88 -8
  166. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  167. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +441 -304
  168. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +4 -0
  169. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +293 -0
  170. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  171. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +141 -99
  172. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  173. package/artifacts/contracts/product/PricingService.sol/PricingService.json +247 -313
  174. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  175. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +120 -122
  176. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  177. package/artifacts/contracts/product/Product.sol/Product.json +241 -398
  178. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
  179. package/artifacts/contracts/product/RiskService.sol/RiskService.json +688 -0
  180. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
  181. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +736 -0
  182. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  183. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +59 -16
  184. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  185. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +334 -34
  186. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  187. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +144 -41
  188. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +4 -0
  189. package/artifacts/contracts/registry/IRelease.sol/IRelease.json +24 -0
  190. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  191. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +5 -18
  192. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  193. package/artifacts/contracts/registry/Registry.sol/Registry.json +540 -95
  194. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  195. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +349 -167
  196. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  197. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +109 -292
  198. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  199. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +94 -80
  200. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +4 -0
  201. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +1849 -0
  202. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  203. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +47 -6
  204. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  205. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +420 -246
  206. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  207. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +66 -8
  208. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  209. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +4 -4
  210. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  211. package/artifacts/contracts/shared/Component.sol/Component.json +76 -265
  212. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  213. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +501 -626
  214. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  215. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +136 -128
  216. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
  217. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +57 -111
  218. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
  219. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +541 -0
  220. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +4 -0
  221. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +24 -0
  222. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +4 -0
  223. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.json +30 -0
  224. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +4 -0
  225. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +40 -0
  226. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  227. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +89 -88
  228. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  229. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +446 -276
  230. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  231. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +102 -130
  232. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  233. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +36 -0
  234. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  235. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +36 -0
  236. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  237. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +16 -0
  238. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  239. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +15 -47
  240. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  241. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +148 -0
  242. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  243. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  244. package/artifacts/contracts/shared/IService.sol/IService.json +55 -2
  245. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  246. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +2 -22
  247. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  248. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +89 -307
  249. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  250. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +42 -1
  251. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  252. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +42 -1
  253. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  254. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
  255. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  256. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +22 -57
  257. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  258. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +19 -141
  259. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  260. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +122 -97
  261. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  262. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -15
  263. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  264. package/artifacts/contracts/shared/Service.sol/Service.json +57 -111
  265. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  266. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +585 -12
  267. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +4 -0
  268. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +484 -0
  269. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
  270. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +172 -0
  271. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  272. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +134 -125
  273. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  274. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +77 -16
  275. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
  276. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +76 -106
  277. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  278. package/artifacts/contracts/staking/Staking.sol/Staking.json +210 -366
  279. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
  280. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +46 -5
  281. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  282. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +122 -95
  283. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  284. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +6 -11
  285. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  286. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +122 -164
  287. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  288. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +99 -85
  289. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  290. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +149 -108
  291. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  292. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +55 -24
  293. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  294. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  295. package/artifacts/contracts/type/Amount.sol/AmountLib.json +33 -9
  296. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  297. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +2 -2
  298. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  299. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +28 -4
  300. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  301. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  302. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  303. package/artifacts/contracts/type/Fee.sol/FeeLib.json +3 -3
  304. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  305. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  306. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +4 -0
  307. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +33 -0
  308. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  309. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +23 -4
  310. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  311. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  312. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  313. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +2 -2
  314. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  315. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +19 -19
  316. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  317. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
  318. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  319. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
  320. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  321. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +125 -7
  322. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  323. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +79 -15
  324. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  325. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +50 -2
  326. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  327. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +21 -2
  328. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  329. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
  330. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  331. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +15 -2
  332. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  333. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  334. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +23 -4
  335. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  336. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +16 -3
  337. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  338. package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -21
  339. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  340. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +47 -2
  341. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
  342. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  343. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +71 -70
  344. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  345. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
  346. package/contracts/accounting/AccountingService.sol +262 -0
  347. package/contracts/accounting/AccountingServiceManager.sol +38 -0
  348. package/contracts/accounting/IAccountingService.sol +45 -0
  349. package/contracts/authorization/AccessAdmin.sol +232 -134
  350. package/contracts/authorization/AccessManagerCloneable.sol +136 -3
  351. package/contracts/authorization/Authorization.sol +321 -202
  352. package/contracts/authorization/IAccess.sol +1 -0
  353. package/contracts/authorization/IAccessAdmin.sol +17 -10
  354. package/contracts/authorization/IAuthorization.sol +27 -7
  355. package/contracts/authorization/IServiceAuthorization.sol +3 -1
  356. package/contracts/authorization/ServiceAuthorization.sol +26 -10
  357. package/contracts/distribution/BasicDistribution.sol +15 -12
  358. package/contracts/distribution/BasicDistributionAuthorization.sol +22 -9
  359. package/contracts/distribution/Distribution.sol +42 -48
  360. package/contracts/distribution/DistributionService.sol +152 -104
  361. package/contracts/distribution/DistributionServiceManager.sol +6 -6
  362. package/contracts/distribution/IDistributionComponent.sol +1 -1
  363. package/contracts/distribution/IDistributionService.sol +31 -25
  364. package/contracts/examples/fire/DamageLevel.sol +59 -0
  365. package/contracts/examples/fire/FirePool.sol +90 -0
  366. package/contracts/examples/fire/FirePoolAuthorization.sol +35 -0
  367. package/contracts/examples/fire/FireProduct.sol +437 -0
  368. package/contracts/examples/fire/FireProductAuthorization.sol +45 -0
  369. package/contracts/examples/fire/FireUSD.sol +26 -0
  370. package/contracts/examples/unpermissioned/SimpleDistribution.sol +85 -0
  371. package/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol +28 -0
  372. package/contracts/examples/unpermissioned/SimpleOracle.sol +137 -0
  373. package/contracts/examples/unpermissioned/SimplePool.sol +106 -0
  374. package/contracts/examples/unpermissioned/SimplePoolAuthorization.sol +28 -0
  375. package/contracts/examples/unpermissioned/SimpleProduct.sol +377 -0
  376. package/contracts/examples/unpermissioned/SimpleProductAuthorization.sol +28 -0
  377. package/contracts/instance/BundleSet.sol +42 -38
  378. package/contracts/instance/IInstance.sol +21 -37
  379. package/contracts/instance/IInstanceService.sol +9 -29
  380. package/contracts/instance/Instance.sol +59 -66
  381. package/contracts/instance/InstanceAdmin.sol +256 -85
  382. package/contracts/instance/InstanceAuthorizationV3.sol +56 -47
  383. package/contracts/instance/InstanceReader.sol +288 -43
  384. package/contracts/instance/InstanceService.sol +125 -164
  385. package/contracts/instance/InstanceServiceManager.sol +6 -7
  386. package/contracts/instance/InstanceStore.sol +23 -2
  387. package/contracts/instance/RiskSet.sol +118 -0
  388. package/contracts/instance/base/ObjectCounter.sol +1 -2
  389. package/contracts/instance/base/ObjectLifecycle.sol +11 -4
  390. package/contracts/instance/base/ObjectSet.sol +31 -33
  391. package/contracts/instance/base/ObjectSetHelperLib.sol +30 -0
  392. package/contracts/instance/module/IBundle.sol +1 -1
  393. package/contracts/instance/module/IComponents.sol +14 -14
  394. package/contracts/instance/module/IDistribution.sol +5 -2
  395. package/contracts/instance/module/IPolicy.sol +26 -25
  396. package/contracts/instance/module/IRisk.sol +3 -0
  397. package/contracts/mock/Dip.sol +1 -1
  398. package/contracts/oracle/BasicOracle.sol +0 -1
  399. package/contracts/oracle/BasicOracleAuthorization.sol +3 -12
  400. package/contracts/oracle/IOracleService.sol +2 -1
  401. package/contracts/oracle/Oracle.sol +7 -17
  402. package/contracts/oracle/OracleService.sol +113 -81
  403. package/contracts/oracle/OracleServiceManager.sol +6 -6
  404. package/contracts/pool/BasicPool.sol +38 -27
  405. package/contracts/pool/BasicPoolAuthorization.sol +32 -11
  406. package/contracts/pool/BundleService.sol +179 -125
  407. package/contracts/pool/BundleServiceManager.sol +6 -6
  408. package/contracts/pool/IBundleService.sol +29 -34
  409. package/contracts/pool/IPoolComponent.sol +19 -15
  410. package/contracts/pool/IPoolService.sol +90 -75
  411. package/contracts/pool/Pool.sol +145 -128
  412. package/contracts/pool/PoolLib.sol +216 -0
  413. package/contracts/pool/PoolService.sol +540 -217
  414. package/contracts/pool/PoolServiceManager.sol +4 -4
  415. package/contracts/product/ApplicationService.sol +87 -43
  416. package/contracts/product/ApplicationServiceManager.sol +4 -4
  417. package/contracts/product/BasicProduct.sol +11 -12
  418. package/contracts/product/BasicProductAuthorization.sol +24 -11
  419. package/contracts/product/ClaimService.sol +368 -153
  420. package/contracts/product/ClaimServiceManager.sol +4 -4
  421. package/contracts/product/IApplicationService.sol +9 -2
  422. package/contracts/product/IClaimService.sol +44 -8
  423. package/contracts/product/IPolicyService.sol +53 -38
  424. package/contracts/product/IPricingService.sol +11 -10
  425. package/contracts/product/IProductComponent.sol +27 -5
  426. package/contracts/product/{IProductService.sol → IRiskService.sol} +8 -8
  427. package/contracts/product/PolicyService.sol +464 -281
  428. package/contracts/product/PolicyServiceLib.sol +65 -0
  429. package/contracts/product/PolicyServiceManager.sol +4 -4
  430. package/contracts/product/PricingService.sol +71 -62
  431. package/contracts/product/PricingServiceManager.sol +4 -4
  432. package/contracts/product/Product.sol +162 -94
  433. package/contracts/product/RiskService.sol +154 -0
  434. package/contracts/product/RiskServiceManager.sol +39 -0
  435. package/contracts/registry/ChainNft.sol +72 -40
  436. package/contracts/registry/IRegistry.sol +60 -28
  437. package/contracts/registry/IRegistryService.sol +5 -12
  438. package/contracts/registry/IRelease.sol +26 -0
  439. package/contracts/registry/ITransferInterceptor.sol +1 -2
  440. package/contracts/registry/Registry.sol +357 -203
  441. package/contracts/registry/RegistryAdmin.sol +171 -182
  442. package/contracts/registry/RegistryService.sol +37 -48
  443. package/contracts/registry/RegistryServiceManager.sol +3 -3
  444. package/contracts/registry/ReleaseAdmin.sol +245 -0
  445. package/contracts/registry/ReleaseLifecycle.sol +8 -3
  446. package/contracts/registry/ReleaseRegistry.sol +258 -232
  447. package/contracts/registry/ServiceAuthorizationV3.sol +99 -52
  448. package/contracts/registry/TokenRegistry.sol +6 -8
  449. package/contracts/shared/Component.sol +74 -127
  450. package/contracts/shared/ComponentService.sol +426 -385
  451. package/contracts/shared/ComponentServiceManager.sol +8 -5
  452. package/contracts/shared/ComponentVerifyingService.sol +28 -17
  453. package/contracts/shared/ContractLib.sol +253 -0
  454. package/contracts/shared/IComponent.sol +8 -17
  455. package/contracts/shared/IComponentService.sol +41 -37
  456. package/contracts/shared/IInstanceLinkedComponent.sol +6 -32
  457. package/contracts/shared/ILifecycle.sol +3 -1
  458. package/contracts/shared/INftOwnable.sol +2 -0
  459. package/contracts/shared/IPolicyHolder.sol +12 -22
  460. package/contracts/shared/IRegisterable.sol +23 -1
  461. package/contracts/shared/IService.sol +3 -5
  462. package/contracts/shared/InitializableERC165.sol +2 -2
  463. package/contracts/shared/InstanceLinkedComponent.sol +73 -48
  464. package/contracts/shared/KeyValueStore.sol +1 -1
  465. package/contracts/shared/Lifecycle.sol +15 -4
  466. package/contracts/shared/NftOwnable.sol +29 -9
  467. package/contracts/shared/PolicyHolder.sol +15 -52
  468. package/contracts/shared/Registerable.sol +55 -21
  469. package/contracts/shared/RegistryLinked.sol +9 -14
  470. package/contracts/shared/Service.sol +15 -32
  471. package/contracts/shared/TokenHandler.sol +309 -26
  472. package/contracts/shared/TokenHandlerDeployerLib.sol +20 -0
  473. package/contracts/staking/IStaking.sol +7 -9
  474. package/contracts/staking/IStakingService.sol +8 -3
  475. package/contracts/staking/StakeManagerLib.sol +19 -26
  476. package/contracts/staking/Staking.sol +71 -61
  477. package/contracts/staking/StakingManager.sol +8 -6
  478. package/contracts/staking/StakingReader.sol +13 -6
  479. package/contracts/staking/StakingService.sol +54 -35
  480. package/contracts/staking/StakingServiceManager.sol +6 -5
  481. package/contracts/staking/TargetManagerLib.sol +7 -3
  482. package/contracts/type/Amount.sol +15 -0
  483. package/contracts/type/Blocknumber.sol +7 -1
  484. package/contracts/type/ClaimId.sol +6 -1
  485. package/contracts/type/Key32.sol +2 -2
  486. package/contracts/type/Key32Set.sol +62 -0
  487. package/contracts/type/NftId.sol +7 -0
  488. package/contracts/type/ObjectType.sol +52 -20
  489. package/contracts/type/PayoutId.sol +10 -10
  490. package/contracts/type/RiskId.sol +38 -6
  491. package/contracts/type/RoleId.sol +23 -15
  492. package/contracts/type/Seconds.sol +21 -1
  493. package/contracts/type/Selector.sol +5 -0
  494. package/contracts/type/StateId.sol +15 -1
  495. package/contracts/type/Timestamp.sol +10 -5
  496. package/contracts/type/UFixed.sol +13 -119
  497. package/contracts/type/Version.sol +15 -5
  498. package/contracts/upgradeability/ProxyManager.sol +68 -34
  499. package/contracts/upgradeability/Versionable.sol +2 -2
  500. package/package.json +5 -4
  501. package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +0 -4
  502. package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.json +0 -290
  503. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +0 -4
  504. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +0 -390
  505. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +0 -4
  506. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +0 -129
  507. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +0 -4
  508. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +0 -4
  509. package/artifacts/contracts/product/ProductService.sol/ProductService.json +0 -708
  510. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
  511. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +0 -702
  512. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +0 -4
  513. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +0 -39
  514. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +0 -4
  515. package/artifacts/contracts/type/UFixed.sol/MathLib.json +0 -16
  516. package/contracts/authorization/IModuleAuthorization.sol +0 -21
  517. package/contracts/authorization/ModuleAuthorization.sol +0 -78
  518. package/contracts/instance/module/IAccess.sol +0 -46
  519. package/contracts/product/ProductService.sol +0 -99
  520. package/contracts/product/ProductServiceManager.sol +0 -39
  521. package/contracts/shared/InitializableCustom.sol +0 -177
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/8dd0451613123196cbb8bbbf43a69f7a.json"
4
- }
@@ -1,39 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "InitializableCustom",
4
- "sourceName": "contracts/shared/InitializableCustom.sol",
5
- "abi": [
6
- {
7
- "inputs": [],
8
- "name": "InvalidInitialization",
9
- "type": "error"
10
- },
11
- {
12
- "inputs": [],
13
- "name": "InvalidInitializationCaller",
14
- "type": "error"
15
- },
16
- {
17
- "inputs": [],
18
- "name": "NotInitializing",
19
- "type": "error"
20
- },
21
- {
22
- "anonymous": false,
23
- "inputs": [
24
- {
25
- "indexed": false,
26
- "internalType": "uint64",
27
- "name": "version",
28
- "type": "uint64"
29
- }
30
- ],
31
- "name": "Initialized",
32
- "type": "event"
33
- }
34
- ],
35
- "bytecode": "0x",
36
- "deployedBytecode": "0x",
37
- "linkReferences": {},
38
- "deployedLinkReferences": {}
39
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/8dd0451613123196cbb8bbbf43a69f7a.json"
4
- }
@@ -1,16 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "MathLib",
4
- "sourceName": "contracts/type/UFixed.sol",
5
- "abi": [
6
- {
7
- "inputs": [],
8
- "name": "MathLigMulDivOverflow",
9
- "type": "error"
10
- }
11
- ],
12
- "bytecode": "0x60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f80fdfea2646970667358221220629048970b23464bc18bc1ab0a62b29b959e39ba69dbe3ba01a199f7c6ff738a64736f6c634300081a0033",
13
- "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040525f80fdfea2646970667358221220629048970b23464bc18bc1ab0a62b29b959e39ba69dbe3ba01a199f7c6ff738a64736f6c634300081a0033",
14
- "linkReferences": {},
15
- "deployedLinkReferences": {}
16
- }
@@ -1,21 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.20;
3
-
4
- import {IAccess} from "./IAccess.sol";
5
- import {IAuthorization} from "./IAuthorization.sol";
6
- import {ObjectType} from "../type/ObjectType.sol";
7
- import {RoleId} from "../type/RoleId.sol";
8
- import {Str} from "../type/String.sol";
9
-
10
- interface IModuleAuthorization is
11
- IAccess,
12
- IAuthorization
13
- {
14
-
15
- /// @dev Returns the list of service targets.
16
- function getServiceDomains() external view returns(ObjectType[] memory serviceDomains);
17
-
18
- /// @dev Returns the service target for the specified domain.
19
- function getServiceTarget(ObjectType serviceDomain) external view returns(Str serviceTarget);
20
- }
21
-
@@ -1,78 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.20;
3
-
4
- import {Authorization} from "./Authorization.sol";
5
- import {IAccess} from "./IAccess.sol";
6
- import {IModuleAuthorization} from "./IModuleAuthorization.sol";
7
- import {ObjectType, ObjectTypeLib} from "../type/ObjectType.sol";
8
- import {RoleId, RoleIdLib, ADMIN_ROLE} from "../type/RoleId.sol";
9
- import {SelectorLib} from "../type/Selector.sol";
10
- import {Str, StrLib} from "../type/String.sol";
11
- import {TimestampLib} from "../type/Timestamp.sol";
12
- import {VersionPart} from "../type/Version.sol";
13
-
14
- contract ModuleAuthorization is
15
- Authorization,
16
- IModuleAuthorization
17
- {
18
-
19
- ObjectType[] internal _serviceDomains;
20
- mapping(ObjectType domain => Str target) internal _serviceTarget;
21
-
22
- constructor(string memory moduleName)
23
- Authorization(moduleName)
24
- { }
25
-
26
- function getServiceDomains() external view returns(ObjectType[] memory serviceDomains) {
27
- return _serviceDomains;
28
- }
29
-
30
- function getServiceTarget(ObjectType serviceDomain) external view returns(Str serviceTarget) {
31
- return _serviceTarget[serviceDomain];
32
- }
33
-
34
- /// @dev Add a GIF role for the provided role id and name.
35
- function _addGifRole(RoleId roleId, string memory name) internal returns (RoleInfo memory info) {
36
- _addRole(
37
- roleId,
38
- _toRoleInfo(
39
- ADMIN_ROLE(),
40
- RoleType.Gif,
41
- type(uint32).max,
42
- name));
43
- }
44
-
45
- /// @dev Add the service target role for the specified service domain
46
- function _addServiceTargetWithRole(ObjectType serviceDomain) internal {
47
- // add service domain
48
- _serviceDomains.push(serviceDomain);
49
-
50
- // get versioned target name
51
- string memory serviceTargetName = ObjectTypeLib.toVersionedName(
52
- ObjectTypeLib.toName(serviceDomain),
53
- "Service",
54
- getRelease().toInt());
55
-
56
- _serviceTarget[serviceDomain] = StrLib.toStr(serviceTargetName);
57
-
58
- RoleId serviceRoleId = getServiceRole(serviceDomain);
59
- string memory serviceRoleName = ObjectTypeLib.toVersionedName(
60
- ObjectTypeLib.toName(serviceDomain),
61
- "ServiceRole",
62
- getRelease().toInt());
63
-
64
- _addTargetWithRole(
65
- serviceTargetName,
66
- serviceRoleId,
67
- serviceRoleName);
68
- }
69
-
70
- /// @dev role id for targets registry, staking and instance
71
- function _getTargetRoleId(ObjectType targetDomain)
72
- internal
73
- returns (RoleId targetRoleId)
74
- {
75
- return RoleIdLib.roleForType(targetDomain);
76
- }
77
- }
78
-
@@ -1,46 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.20;
3
-
4
- import {ShortString, ShortStrings} from "@openzeppelin/contracts/utils/ShortStrings.sol";
5
-
6
- import {NftId} from "../../type/NftId.sol";
7
- import {RoleId} from "../../type/RoleId.sol";
8
- import {Timestamp} from "../../type/Timestamp.sol";
9
-
10
- interface IAccess {
11
-
12
- enum Type {
13
- NotInitialized,
14
- Core,
15
- Gif,
16
- Custom
17
- }
18
-
19
- struct RoleInfo {
20
- ShortString name;
21
- Type rtype;
22
- //bool isLocked;
23
- RoleId admin;
24
- Timestamp createdAt;
25
- Timestamp updatedAt;
26
- }
27
-
28
- struct TargetInfo {
29
- ShortString name;
30
- Type ttype;
31
- bool isLocked;
32
- Timestamp createdAt;
33
- Timestamp updatedAt;
34
- }
35
-
36
- error ErrorIAccessRoleIdTooBig(RoleId roleId);
37
- error ErrorIAccessRoleIdTooSmall(RoleId roleId);
38
- error ErrorIAccessRoleTypeInvalid(RoleId roleId, Type rtype);
39
-
40
- error ErrorIAccessTargetAddressZero();
41
- error ErrorIAccessTargetTypeInvalid(address target, Type ttype);
42
- error ErrorIAccessTargetLocked(address target);
43
- error ErrorIAccessTargetNotRegistered(address target);
44
- error ErrorIAccessTargetAuthorityInvalid(address target, address targetAuthority);
45
- error ErrorIAccessTargetInstanceMismatch(address target, NftId targetParentNftId, NftId instanceNftId);
46
- }
@@ -1,99 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.20;
3
-
4
- import {IInstance} from "../instance/IInstance.sol";
5
- import {IInstanceService} from "../instance/IInstanceService.sol";
6
- import {IPoolService} from "../pool/PoolService.sol";
7
- import {IProductService} from "./IProductService.sol";
8
- import {IRegistryService} from "../registry/IRegistryService.sol";
9
- import {IRisk} from "../instance/module/IRisk.sol";
10
-
11
- import {InstanceReader} from "../instance/InstanceReader.sol";
12
- import {ObjectType, INSTANCE, PRODUCT, POOL, POLICY, REGISTRY} from "../type/ObjectType.sol";
13
- import {KEEP_STATE} from "../type/StateId.sol";
14
- import {NftId} from "../type/NftId.sol";
15
- import {RiskId} from "../type/RiskId.sol";
16
- import {StateId} from "../type/StateId.sol";
17
- import {ComponentVerifyingService} from "../shared/ComponentVerifyingService.sol";
18
-
19
- contract ProductService is
20
- ComponentVerifyingService,
21
- IProductService
22
- {
23
- IInstanceService private _instanceService;
24
- IPoolService internal _poolService;
25
- IRegistryService private _registryService;
26
-
27
- event LogProductServiceSender(address sender);
28
-
29
- function _initialize(
30
- address owner,
31
- bytes memory data
32
- )
33
- internal
34
- initializer
35
- virtual override
36
- {
37
- (
38
- address registryAddress,,
39
- //address managerAddress
40
- address authority
41
- ) = abi.decode(data, (address, address, address));
42
-
43
- initializeService(registryAddress, authority, owner);
44
-
45
- _instanceService = IInstanceService(_getServiceAddress(INSTANCE()));
46
- _poolService = IPoolService(getRegistry().getServiceAddress(POOL(), getVersion().toMajorPart()));
47
- _registryService = IRegistryService(_getServiceAddress(REGISTRY()));
48
-
49
- registerInterface(type(IProductService).interfaceId);
50
- }
51
-
52
-
53
- function createRisk(
54
- RiskId riskId,
55
- bytes memory data
56
- )
57
- external
58
- override
59
- {
60
- (NftId productNftId,, IInstance instance) = _getAndVerifyActiveComponent(PRODUCT());
61
- IRisk.RiskInfo memory riskInfo = IRisk.RiskInfo(productNftId, data);
62
-
63
- instance.getInstanceStore().createRisk(
64
- riskId,
65
- riskInfo
66
- );
67
- }
68
-
69
-
70
- function updateRisk(
71
- RiskId riskId,
72
- bytes memory data
73
- )
74
- external
75
- {
76
- (,, IInstance instance) = _getAndVerifyActiveComponent(PRODUCT());
77
- InstanceReader instanceReader = instance.getInstanceReader();
78
-
79
- IRisk.RiskInfo memory riskInfo = instanceReader.getRiskInfo(riskId);
80
- riskInfo.data = data;
81
- instance.getInstanceStore().updateRisk(riskId, riskInfo, KEEP_STATE());
82
- }
83
-
84
-
85
- function updateRiskState(
86
- RiskId riskId,
87
- StateId state
88
- )
89
- external
90
- {
91
- (,, IInstance instance) = _getAndVerifyActiveComponent(PRODUCT());
92
- instance.getInstanceStore().updateRiskState(riskId, state);
93
- }
94
-
95
-
96
- function _getDomain() internal pure override returns(ObjectType) {
97
- return PRODUCT();
98
- }
99
- }
@@ -1,39 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.20;
3
-
4
- import {IVersionable} from "../upgradeability/IVersionable.sol";
5
- import {ProxyManager} from "../upgradeability/ProxyManager.sol";
6
- import {ProductService} from "./ProductService.sol";
7
-
8
- contract ProductServiceManager is ProxyManager {
9
-
10
- ProductService private _productService;
11
-
12
- /// @dev initializes proxy manager with product service implementation
13
- constructor(
14
- address authority,
15
- address registryAddress,
16
- bytes32 salt
17
- )
18
- ProxyManager(registryAddress)
19
- {
20
- ProductService svc = new ProductService{salt: salt}();
21
- bytes memory data = abi.encode(registryAddress, address(this), authority);
22
- IVersionable versionable = deployDetermenistic(
23
- address(svc),
24
- data,
25
- salt);
26
-
27
- _productService = ProductService(address(versionable));
28
- }
29
-
30
- //--- view functions ----------------------------------------------------//
31
- function getProductService()
32
- external
33
- view
34
- returns (ProductService productService)
35
- {
36
- return _productService;
37
- }
38
-
39
- }
@@ -1,177 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
-
3
- pragma solidity ^0.8.20;
4
-
5
- /**
6
- * @dev This is copy of OpenZeppelin's Contracts (last updated v5.0.0) (proxy/utils/Initializable.sol)
7
- * Changes:
8
- * 1. name is InitializableCustom
9
- * 2. no longer abstract
10
- * 3. have $._initializeOwner
11
- * 4. have constructor where sets _initializeOwner
12
- * 5. initializer() in addition checks for _initializeOwner
13
- * 6. reinitializer() is deleted
14
- */
15
- abstract contract InitializableCustom {
16
- /**
17
- * @dev Storage of the initializable contract.
18
- *
19
- * It's implemented on a custom ERC-7201 namespace to reduce the risk of storage collisions
20
- * when using with upgradeable contracts.
21
- *
22
- * @custom:storage-location erc7201:openzeppelin.storage.Initializable
23
- */
24
- struct InitializableCustomStorage {
25
- /**
26
- * @dev Indicates that the contract has been initialized.
27
- */
28
- uint64 _initialized;
29
- /**
30
- * @dev Indicates that the contract is in the process of being initialized.
31
- */
32
- bool _initializing;
33
- /**
34
- * @dev Indicates address that can call function with initializer() modifier.
35
- */
36
- address _initializeOwner;
37
- }
38
-
39
- // keccak256(abi.encode(uint256(keccak256("openzeppelin.storage.InitializableCustom")) - 1)) & ~bytes32(uint256(0xff))
40
- bytes32 private constant INITIALIZABLE_CUSTOM_STORAGE = 0x46cd1d813423aaf613c34c7f348d15b2b5e71215e9145b09467e257ea2805a00;
41
-
42
- /**
43
- * @dev The contract is already initialized.
44
- */
45
- error InvalidInitialization();
46
-
47
- /**
48
- * @dev The contract initialization function caller is not authorized.
49
- */
50
- error InvalidInitializationCaller();
51
-
52
- /**
53
- * @dev The contract is not initializing.
54
- */
55
- error NotInitializing();
56
-
57
- /**
58
- * @dev Triggered when the contract has been initialized or reinitialized.
59
- */
60
- event Initialized(uint64 version);
61
-
62
- /**
63
- * @dev A modifier that defines a protected initializer function that can be invoked at most once. In its scope,
64
- * `onlyInitializing` functions can be used to initialize parent contracts.
65
- *
66
- * Similar to `reinitializer(1)`, except that in the context of a constructor an `initializer` may be invoked any
67
- * number of times. This behavior in the constructor can be useful during testing and is not expected to be used in
68
- * production.
69
- *
70
- * Emits an {Initialized} event.
71
- */
72
- modifier initializer() virtual {
73
- // solhint-disable-next-line var-name-mixedcase
74
- InitializableCustomStorage storage $ = _getInitializableCustomStorage();
75
-
76
- if($._initializeOwner != msg.sender) {
77
- revert InvalidInitializationCaller();
78
- }
79
-
80
- // Cache values to avoid duplicated sloads
81
- bool isTopLevelCall = !$._initializing;
82
- uint64 initialized = $._initialized;
83
-
84
- // Allowed calls:
85
- // - initialSetup: the contract is not in the initializing state and no previous version was
86
- // initialized
87
- // - construction: the contract is initialized at version 1 (no reininitialization) and the
88
- // current contract is just being deployed
89
- bool initialSetup = initialized == 0 && isTopLevelCall;
90
- bool construction = initialized == 1 && address(this).code.length == 0;
91
-
92
- if (!initialSetup && !construction) {
93
- revert InvalidInitialization();
94
- }
95
- $._initialized = 1;
96
- if (isTopLevelCall) {
97
- $._initializing = true;
98
- }
99
- _;
100
- if (isTopLevelCall) {
101
- $._initializing = false;
102
- emit Initialized(1);
103
- }
104
- }
105
-
106
- /**
107
- * @dev Modifier to protect an initialization function so that it can only be invoked by functions with the
108
- * {initializer} and {reinitializer} modifiers, directly or indirectly.
109
- */
110
- modifier onlyInitializing() {
111
- _checkInitializing();
112
- _;
113
- }
114
-
115
- /**
116
- * @dev Constructor sets the caller of protected initializer function.
117
- */
118
- constructor() {
119
- // solhint-disable-previous-line var-name-mixedcase
120
- InitializableCustomStorage storage $ = _getInitializableCustomStorage();
121
- $._initializeOwner = msg.sender;
122
- }
123
-
124
- /**
125
- * @dev Reverts if the contract is not in an initializing state. See {onlyInitializing}.
126
- */
127
- function _checkInitializing() internal view virtual {
128
- if (!_isInitializing()) {
129
- revert NotInitializing();
130
- }
131
- }
132
-
133
- /**
134
- * @dev Locks the contract, preventing any future reinitialization. This cannot be part of an initializer call.
135
- * Calling this in the constructor of a contract will prevent that contract from being initialized or reinitialized
136
- * to any version. It is recommended to use this to lock implementation contracts that are designed to be called
137
- * through proxies.
138
- *
139
- * Emits an {Initialized} event the first time it is successfully executed.
140
- */
141
- function _disableInitializers() internal virtual {
142
- // solhint-disable-next-line var-name-mixedcase
143
- InitializableCustomStorage storage $ = _getInitializableCustomStorage();
144
-
145
- if ($._initializing) {
146
- revert InvalidInitialization();
147
- }
148
- if ($._initialized != type(uint64).max) {
149
- $._initialized = type(uint64).max;
150
- emit Initialized(type(uint64).max);
151
- }
152
- }
153
-
154
- /**
155
- * @dev Returns the highest version that has been initialized. See {reinitializer}.
156
- */
157
- function _getInitializedVersion() internal view returns (uint64) {
158
- return _getInitializableCustomStorage()._initialized;
159
- }
160
-
161
- /**
162
- * @dev Returns `true` if the contract is currently initializing. See {onlyInitializing}.
163
- */
164
- function _isInitializing() internal view returns (bool) {
165
- return _getInitializableCustomStorage()._initializing;
166
- }
167
-
168
- /**
169
- * @dev Returns a pointer to the storage namespace.
170
- */
171
- // solhint-disable-next-line var-name-mixedcase
172
- function _getInitializableCustomStorage() private pure returns (InitializableCustomStorage storage $) {
173
- assembly {
174
- $.slot := INITIALIZABLE_CUSTOM_STORAGE
175
- }
176
- }
177
- }