@etherisc/gif-next 0.0.2-fe88ad7-208 → 0.0.2-fe8cf39-182

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 (778) hide show
  1. package/README.md +85 -23
  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 +4 -0
  9. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +1379 -0
  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 +4 -0
  13. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +1434 -0
  14. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +4 -0
  15. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +542 -0
  16. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +4 -0
  17. package/artifacts/contracts/{instance/module/ISetup.sol/ISetup.json → authorization/IAccess.sol/IAccess.json} +2 -2
  18. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
  19. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +1130 -0
  20. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +4 -0
  21. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +350 -0
  22. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
  23. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +167 -0
  24. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
  25. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +253 -0
  26. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +4 -0
  27. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +1322 -0
  28. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +4 -0
  29. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +589 -0
  30. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
  31. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +1016 -0
  32. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
  33. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1509 -0
  34. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  35. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +864 -0
  36. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  37. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +915 -0
  38. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  39. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +1008 -0
  40. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +4 -0
  41. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +22 -0
  42. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +4 -0
  43. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +1475 -0
  44. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
  45. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +589 -0
  46. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
  47. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +2040 -0
  48. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
  49. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +589 -0
  50. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +4 -0
  51. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +376 -0
  52. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +4 -0
  53. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +1479 -0
  54. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +4 -0
  55. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +589 -0
  56. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
  57. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1195 -0
  58. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
  59. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1655 -0
  60. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +4 -0
  61. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +589 -0
  62. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
  63. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2426 -0
  64. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +4 -0
  65. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +589 -0
  66. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
  67. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +851 -0
  68. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  69. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +357 -1341
  70. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  71. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +397 -195
  72. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  73. package/artifacts/contracts/instance/Instance.sol/Instance.json +465 -2543
  74. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  75. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1929 -0
  76. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
  77. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +661 -0
  78. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  79. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1591 -584
  80. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  81. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +479 -396
  82. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  83. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +380 -92
  84. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  85. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3718 -0
  86. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +4 -0
  87. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +853 -0
  88. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +4 -0
  89. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +318 -0
  90. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +4 -0
  91. package/artifacts/contracts/instance/{Cloneable.sol → base/Cloneable.sol}/Cloneable.json +1 -49
  92. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +4 -0
  93. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +10 -0
  94. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +4 -0
  95. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +223 -0
  96. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
  97. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +192 -0
  98. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +4 -0
  99. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +168 -0
  100. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  101. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  102. package/artifacts/contracts/instance/module/{ITreasury.sol/ITreasury.json → IComponents.sol/IComponents.json} +2 -2
  103. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  104. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  105. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  106. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +4 -0
  107. package/artifacts/contracts/mock/Dip.sol/Dip.json +376 -0
  108. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +4 -0
  109. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +959 -0
  110. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +4 -0
  111. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +569 -0
  112. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
  113. package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +52 -0
  114. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
  115. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +774 -0
  116. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
  117. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +733 -0
  118. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
  119. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +875 -0
  120. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
  121. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +997 -0
  122. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
  123. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +764 -0
  124. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +4 -0
  125. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +1252 -0
  126. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +4 -0
  127. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +589 -0
  128. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +4 -0
  129. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1261 -0
  130. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  131. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +800 -0
  132. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
  133. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +880 -0
  134. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
  135. package/artifacts/contracts/{components/Pool.sol/Pool.json → pool/IPoolComponent.sol/IPoolComponent.json} +410 -345
  136. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
  137. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1230 -0
  138. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
  139. package/artifacts/contracts/pool/Pool.sol/Pool.json +1027 -0
  140. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +4 -0
  141. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +456 -0
  142. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
  143. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1574 -0
  144. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  145. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +808 -0
  146. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  147. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +813 -0
  148. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  149. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +728 -0
  150. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
  151. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +1161 -0
  152. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +4 -0
  153. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +589 -0
  154. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
  155. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1496 -0
  156. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  157. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +848 -0
  158. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  159. package/artifacts/contracts/{instance/service/IPolicyService.sol/IPolicyService.json → product/IApplicationService.sol/IApplicationService.json} +222 -289
  160. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
  161. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +1064 -0
  162. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  163. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +981 -0
  164. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
  165. package/artifacts/contracts/{instance/service/IProductService.sol/IProductService.json → product/IPricingService.sol/IPricingService.json} +297 -231
  166. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
  167. package/artifacts/contracts/{components/Product.sol/Product.json → product/IProductComponent.sol/IProductComponent.json} +524 -281
  168. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
  169. package/artifacts/contracts/{instance/service/IComponentOwnerService.sol/IComponentOwnerService.json → product/IRiskService.sol/IRiskService.json} +160 -173
  170. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
  171. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1333 -0
  172. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +4 -0
  173. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +293 -0
  174. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  175. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +808 -0
  176. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
  177. package/artifacts/contracts/product/PricingService.sol/PricingService.json +930 -0
  178. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  179. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +784 -0
  180. package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
  181. package/artifacts/contracts/product/Product.sol/Product.json +1119 -0
  182. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
  183. package/artifacts/contracts/product/RiskService.sol/RiskService.json +637 -0
  184. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
  185. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +724 -0
  186. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  187. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +72 -16
  188. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  189. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +601 -35
  190. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  191. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +289 -222
  192. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +4 -0
  193. package/artifacts/contracts/registry/IRelease.sol/IRelease.json +24 -0
  194. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  195. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +5 -0
  196. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  197. package/artifacts/contracts/registry/Registry.sol/Registry.json +1020 -71
  198. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
  199. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1928 -0
  200. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  201. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +348 -274
  202. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  203. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +362 -78
  204. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +4 -0
  205. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +1849 -0
  206. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +4 -0
  207. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +205 -0
  208. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
  209. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1333 -0
  210. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
  211. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +272 -0
  212. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  213. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +361 -97
  214. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
  215. package/artifacts/contracts/{components/Distribution.sol/Distribution.json → shared/Component.sol/Component.json} +280 -248
  216. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
  217. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1571 -0
  218. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
  219. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +820 -0
  220. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
  221. package/artifacts/contracts/{components/BaseComponent.sol/BaseComponent.json → shared/ComponentVerifyingService.sol/ComponentVerifyingService.json} +155 -152
  222. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
  223. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +541 -0
  224. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +4 -0
  225. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +24 -0
  226. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +4 -0
  227. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.json +30 -0
  228. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +4 -0
  229. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +40 -0
  230. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
  231. package/artifacts/contracts/{instance/base/ComponentServiceBase.sol/ComponentServiceBase.json → shared/IComponent.sol/IComponent.json} +282 -182
  232. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
  233. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +1203 -0
  234. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
  235. package/artifacts/contracts/{instance/service/IBundleService.sol/IBundleService.json → shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json} +363 -323
  236. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
  237. package/artifacts/contracts/{instance/IInstanceBase.sol/IInstanceBase.json → shared/IKeyValueStore.sol/IKeyValueStore.json} +96 -34
  238. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
  239. package/artifacts/contracts/{instance/base → shared}/ILifecycle.sol/ILifecycle.json +35 -4
  240. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  241. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +46 -26
  242. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
  243. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +175 -0
  244. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  245. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +143 -15
  246. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
  247. package/artifacts/contracts/{experiment/inheritance/IA.sol/ISharedA.json → shared/IRegistryLinked.sol/IRegistryLinked.json} +15 -17
  248. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  249. package/artifacts/contracts/shared/IService.sol/IService.json +124 -146
  250. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
  251. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +53 -0
  252. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
  253. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +797 -0
  254. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
  255. package/artifacts/contracts/{instance/base/IKeyValueStore.sol/IKeyValueStore.json → shared/KeyValueStore.sol/KeyValueStore.json} +129 -20
  256. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
  257. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +174 -0
  258. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
  259. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
  260. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  261. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +81 -30
  262. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
  263. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +198 -0
  264. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  265. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +159 -55
  266. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
  267. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +58 -0
  268. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  269. package/artifacts/contracts/shared/Service.sol/Service.json +144 -159
  270. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  271. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +635 -8
  272. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +4 -0
  273. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +484 -0
  274. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
  275. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +172 -0
  276. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
  277. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1494 -0
  278. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
  279. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +1167 -0
  280. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
  281. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +469 -0
  282. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
  283. package/artifacts/contracts/staking/Staking.sol/Staking.json +1917 -0
  284. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
  285. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +205 -0
  286. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
  287. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +796 -0
  288. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
  289. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +560 -0
  290. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
  291. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1380 -0
  292. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
  293. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +736 -0
  294. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
  295. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2297 -0
  296. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
  297. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +617 -0
  298. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
  299. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +10 -0
  300. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
  301. package/artifacts/contracts/type/Amount.sol/AmountLib.json +398 -0
  302. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
  303. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +225 -0
  304. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  305. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +203 -0
  306. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  307. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +104 -0
  308. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
  309. package/artifacts/contracts/type/Fee.sol/FeeLib.json +317 -0
  310. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
  311. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +125 -0
  312. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +4 -0
  313. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +33 -0
  314. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
  315. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +228 -0
  316. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
  317. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +33 -0
  318. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
  319. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +239 -0
  320. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  321. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
  322. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
  323. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
  324. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
  325. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
  326. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
  327. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +199 -0
  328. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
  329. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +433 -0
  330. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
  331. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +246 -0
  332. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
  333. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +148 -0
  334. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
  335. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
  336. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
  337. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +105 -0
  338. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
  339. package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
  340. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
  341. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +312 -0
  342. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
  343. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +548 -0
  344. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
  345. package/artifacts/contracts/type/Version.sol/VersionLib.json +158 -0
  346. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
  347. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +113 -0
  348. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
  349. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.json +55 -0
  350. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  351. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +618 -0
  352. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  353. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
  354. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
  355. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.json +78 -0
  356. package/contracts/accounting/AccountingService.sol +262 -0
  357. package/contracts/accounting/AccountingServiceManager.sol +38 -0
  358. package/contracts/accounting/IAccountingService.sol +45 -0
  359. package/contracts/authorization/AccessAdmin.sol +689 -0
  360. package/contracts/authorization/AccessManagerCloneable.sol +149 -0
  361. package/contracts/authorization/Authorization.sol +337 -0
  362. package/contracts/authorization/IAccess.sol +49 -0
  363. package/contracts/authorization/IAccessAdmin.sol +143 -0
  364. package/contracts/authorization/IAuthorization.sol +74 -0
  365. package/contracts/authorization/IServiceAuthorization.sol +40 -0
  366. package/contracts/authorization/ServiceAuthorization.sol +106 -0
  367. package/contracts/distribution/BasicDistribution.sol +141 -0
  368. package/contracts/distribution/BasicDistributionAuthorization.sol +60 -0
  369. package/contracts/distribution/Distribution.sol +289 -0
  370. package/contracts/distribution/DistributionService.sol +358 -0
  371. package/contracts/distribution/DistributionServiceManager.sol +39 -0
  372. package/contracts/distribution/IDistributionComponent.sol +52 -0
  373. package/contracts/distribution/IDistributionService.sol +101 -0
  374. package/contracts/examples/fire/DamageLevel.sol +59 -0
  375. package/contracts/examples/fire/FirePool.sol +90 -0
  376. package/contracts/examples/fire/FirePoolAuthorization.sol +35 -0
  377. package/contracts/examples/fire/FireProduct.sol +438 -0
  378. package/contracts/examples/fire/FireProductAuthorization.sol +45 -0
  379. package/contracts/examples/fire/FireUSD.sol +26 -0
  380. package/contracts/examples/unpermissioned/SimpleDistribution.sol +57 -0
  381. package/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol +28 -0
  382. package/contracts/examples/unpermissioned/SimpleOracle.sol +137 -0
  383. package/contracts/examples/unpermissioned/SimplePool.sol +106 -0
  384. package/contracts/examples/unpermissioned/SimplePoolAuthorization.sol +28 -0
  385. package/contracts/examples/unpermissioned/SimpleProduct.sol +377 -0
  386. package/contracts/examples/unpermissioned/SimpleProductAuthorization.sol +28 -0
  387. package/contracts/instance/BundleSet.sol +130 -0
  388. package/contracts/instance/IInstance.sol +63 -55
  389. package/contracts/instance/IInstanceService.sol +55 -22
  390. package/contracts/instance/Instance.sol +182 -204
  391. package/contracts/instance/InstanceAdmin.sol +437 -0
  392. package/contracts/instance/InstanceAuthorizationV3.sol +213 -0
  393. package/contracts/instance/InstanceReader.sol +402 -80
  394. package/contracts/instance/InstanceService.sol +329 -263
  395. package/contracts/instance/InstanceServiceManager.sol +14 -29
  396. package/contracts/instance/InstanceStore.sol +298 -0
  397. package/contracts/instance/RiskSet.sol +118 -0
  398. package/contracts/instance/base/BalanceStore.sol +123 -0
  399. package/contracts/instance/{Cloneable.sol → base/Cloneable.sol} +4 -22
  400. package/contracts/instance/base/ObjectCounter.sol +20 -0
  401. package/contracts/instance/base/ObjectLifecycle.sol +113 -0
  402. package/contracts/instance/base/ObjectSet.sol +77 -0
  403. package/contracts/instance/base/ObjectSetHelperLib.sol +30 -0
  404. package/contracts/instance/module/IBundle.sol +8 -8
  405. package/contracts/instance/module/IComponents.sol +51 -0
  406. package/contracts/instance/module/IDistribution.sol +8 -5
  407. package/contracts/instance/module/IPolicy.sol +59 -19
  408. package/contracts/instance/module/IRisk.sol +4 -1
  409. package/contracts/{test/Usdc.sol → mock/Dip.sol} +6 -6
  410. package/contracts/oracle/BasicOracle.sol +47 -0
  411. package/contracts/oracle/BasicOracleAuthorization.sol +37 -0
  412. package/contracts/oracle/IOracle.sol +36 -0
  413. package/contracts/oracle/IOracleComponent.sol +33 -0
  414. package/contracts/oracle/IOracleService.sol +66 -0
  415. package/contracts/oracle/Oracle.sol +156 -0
  416. package/contracts/oracle/OracleService.sol +310 -0
  417. package/contracts/oracle/OracleServiceManager.sol +39 -0
  418. package/contracts/pool/BasicPool.sol +175 -0
  419. package/contracts/pool/BasicPoolAuthorization.sol +76 -0
  420. package/contracts/pool/BundleService.sol +395 -0
  421. package/contracts/pool/BundleServiceManager.sol +39 -0
  422. package/contracts/pool/IBundleService.sol +115 -0
  423. package/contracts/pool/IPoolComponent.sol +62 -0
  424. package/contracts/pool/IPoolService.sol +165 -0
  425. package/contracts/pool/Pool.sol +345 -0
  426. package/contracts/pool/PoolLib.sol +216 -0
  427. package/contracts/pool/PoolService.sol +757 -0
  428. package/contracts/pool/PoolServiceManager.sol +39 -0
  429. package/contracts/product/ApplicationService.sol +259 -0
  430. package/contracts/product/ApplicationServiceManager.sol +38 -0
  431. package/contracts/product/BasicProduct.sol +51 -0
  432. package/contracts/product/BasicProductAuthorization.sol +56 -0
  433. package/contracts/product/ClaimService.sol +632 -0
  434. package/contracts/product/ClaimServiceManager.sol +38 -0
  435. package/contracts/product/IApplicationService.sol +66 -0
  436. package/contracts/product/IClaimService.sol +135 -0
  437. package/contracts/product/IPolicyService.sol +95 -0
  438. package/contracts/product/IPricingService.sol +39 -0
  439. package/contracts/product/IProductComponent.sol +62 -0
  440. package/contracts/product/IRiskService.sol +33 -0
  441. package/contracts/product/PolicyService.sol +682 -0
  442. package/contracts/product/PolicyServiceLib.sol +65 -0
  443. package/contracts/product/PolicyServiceManager.sol +39 -0
  444. package/contracts/product/PricingService.sol +304 -0
  445. package/contracts/product/PricingServiceManager.sol +39 -0
  446. package/contracts/product/Product.sol +478 -0
  447. package/contracts/product/RiskService.sol +145 -0
  448. package/contracts/product/RiskServiceManager.sol +39 -0
  449. package/contracts/registry/ChainNft.sol +83 -36
  450. package/contracts/registry/IRegistry.sol +105 -30
  451. package/contracts/registry/IRegistryService.sol +38 -34
  452. package/contracts/registry/IRelease.sol +26 -0
  453. package/contracts/registry/ITransferInterceptor.sol +1 -1
  454. package/contracts/registry/Registry.sol +544 -210
  455. package/contracts/registry/RegistryAdmin.sol +354 -0
  456. package/contracts/registry/RegistryService.sol +119 -201
  457. package/contracts/registry/RegistryServiceManager.sol +24 -33
  458. package/contracts/registry/ReleaseAdmin.sol +245 -0
  459. package/contracts/registry/ReleaseLifecycle.sol +32 -0
  460. package/contracts/registry/ReleaseRegistry.sol +511 -0
  461. package/contracts/registry/ServiceAuthorizationV3.sol +247 -0
  462. package/contracts/registry/TokenRegistry.sol +263 -60
  463. package/contracts/shared/Component.sol +227 -0
  464. package/contracts/shared/ComponentService.sol +692 -0
  465. package/contracts/shared/ComponentServiceManager.sol +38 -0
  466. package/contracts/shared/ComponentVerifyingService.sol +128 -0
  467. package/contracts/shared/ContractLib.sol +253 -0
  468. package/contracts/shared/IComponent.sol +61 -0
  469. package/contracts/shared/IComponentService.sol +112 -0
  470. package/contracts/shared/IInstanceLinkedComponent.sol +30 -0
  471. package/contracts/{instance/base → shared}/IKeyValueStore.sol +16 -11
  472. package/contracts/{instance/base → shared}/ILifecycle.sol +5 -4
  473. package/contracts/shared/INftOwnable.sol +15 -12
  474. package/contracts/shared/IPolicyHolder.sol +35 -0
  475. package/contracts/shared/IRegisterable.sol +25 -5
  476. package/contracts/shared/IRegistryLinked.sol +11 -0
  477. package/contracts/shared/IService.sol +12 -5
  478. package/contracts/shared/InitializableERC165.sol +27 -0
  479. package/contracts/shared/InstanceLinkedComponent.sol +197 -0
  480. package/contracts/shared/KeyValueStore.sol +131 -0
  481. package/contracts/shared/Lifecycle.sol +88 -0
  482. package/contracts/shared/NftIdSet.sol +65 -0
  483. package/contracts/shared/NftOwnable.sol +75 -82
  484. package/contracts/shared/PolicyHolder.sol +62 -0
  485. package/contracts/shared/Registerable.sol +57 -38
  486. package/contracts/shared/RegistryLinked.sol +38 -0
  487. package/contracts/shared/Service.sol +42 -35
  488. package/contracts/shared/TokenHandler.sol +326 -12
  489. package/contracts/shared/TokenHandlerDeployerLib.sol +20 -0
  490. package/contracts/staking/IStaking.sol +171 -0
  491. package/contracts/staking/IStakingService.sol +172 -0
  492. package/contracts/staking/StakeManagerLib.sol +276 -0
  493. package/contracts/staking/Staking.sol +546 -0
  494. package/contracts/staking/StakingLifecycle.sol +23 -0
  495. package/contracts/staking/StakingManager.sol +52 -0
  496. package/contracts/staking/StakingReader.sol +180 -0
  497. package/contracts/staking/StakingService.sol +464 -0
  498. package/contracts/staking/StakingServiceManager.sol +45 -0
  499. package/contracts/staking/StakingStore.sol +606 -0
  500. package/contracts/staking/TargetManagerLib.sol +211 -0
  501. package/contracts/{types → type}/AddressSet.sol +1 -1
  502. package/contracts/type/Amount.sol +150 -0
  503. package/contracts/{types → type}/Blocknumber.sol +27 -3
  504. package/contracts/type/ClaimId.sol +80 -0
  505. package/contracts/{types → type}/DistributorType.sol +2 -2
  506. package/contracts/{types → type}/Fee.sol +33 -23
  507. package/contracts/{types → type}/Key32.sol +2 -2
  508. package/contracts/type/Key32Set.sol +62 -0
  509. package/contracts/{types → type}/NftId.sol +28 -15
  510. package/contracts/{types → type}/NftIdSet.sol +2 -2
  511. package/contracts/type/ObjectType.sol +303 -0
  512. package/contracts/type/PayoutId.sol +82 -0
  513. package/contracts/{types → type}/Referral.sol +6 -1
  514. package/contracts/type/RequestId.sol +75 -0
  515. package/contracts/type/RiskId.sol +74 -0
  516. package/contracts/type/RoleId.sol +182 -0
  517. package/contracts/type/Seconds.sol +101 -0
  518. package/contracts/type/Selector.sol +107 -0
  519. package/contracts/{types → type}/StateId.sol +48 -4
  520. package/contracts/type/String.sol +53 -0
  521. package/contracts/{types → type}/Timestamp.sol +33 -19
  522. package/contracts/{types → type}/UFixed.sol +41 -121
  523. package/contracts/{types → type}/Version.sol +20 -7
  524. package/contracts/{shared → upgradeability}/IVersionable.sol +5 -48
  525. package/contracts/upgradeability/ProxyManager.sol +232 -0
  526. package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
  527. package/contracts/upgradeability/Versionable.sol +59 -0
  528. package/package.json +11 -7
  529. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +0 -4
  530. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +0 -4
  531. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +0 -4
  532. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.json +0 -397
  533. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +0 -4
  534. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +0 -152
  535. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +0 -4
  536. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +0 -275
  537. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +0 -4
  538. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +0 -157
  539. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
  540. package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
  541. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.dbg.json +0 -4
  542. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.json +0 -66
  543. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.dbg.json +0 -4
  544. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.json +0 -24
  545. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.dbg.json +0 -4
  546. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.json +0 -42
  547. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
  548. package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
  549. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
  550. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
  551. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  552. package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
  553. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  554. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
  555. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  556. package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
  557. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  558. package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
  559. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  560. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
  561. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  562. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  563. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.json +0 -50
  564. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  565. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
  566. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
  567. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
  568. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
  569. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.json +0 -124
  570. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
  571. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
  572. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
  573. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
  574. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
  575. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
  576. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  577. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  578. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  579. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
  580. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +0 -4
  581. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +0 -1206
  582. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
  583. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -788
  584. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +0 -4
  585. package/artifacts/contracts/instance/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
  586. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +0 -4
  587. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +0 -1047
  588. package/artifacts/contracts/instance/InstanceBase.sol/InstanceBase.dbg.json +0 -4
  589. package/artifacts/contracts/instance/InstanceBase.sol/InstanceBase.json +0 -763
  590. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +0 -4
  591. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +0 -285
  592. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
  593. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
  594. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.json +0 -113
  595. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
  596. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +0 -4
  597. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
  598. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +0 -502
  599. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
  600. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -169
  601. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +0 -4
  602. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +0 -254
  603. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +0 -4
  604. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +0 -4
  605. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +0 -4
  606. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +0 -945
  607. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +0 -4
  608. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +0 -432
  609. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +0 -4
  610. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +0 -814
  611. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +0 -4
  612. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +0 -693
  613. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +0 -4
  614. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +0 -420
  615. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +0 -4
  616. package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +0 -4
  617. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +0 -4
  618. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.json +0 -446
  619. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +0 -4
  620. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +0 -4
  621. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +0 -499
  622. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +0 -4
  623. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +0 -4
  624. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +0 -993
  625. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +0 -4
  626. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +0 -464
  627. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +0 -4
  628. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +0 -727
  629. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +0 -4
  630. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +0 -420
  631. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
  632. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -777
  633. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
  634. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +0 -420
  635. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +0 -4
  636. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +0 -285
  637. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
  638. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -546
  639. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +0 -4
  640. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +0 -107
  641. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +0 -4
  642. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +0 -35
  643. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
  644. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +0 -205
  645. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
  646. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +0 -349
  647. package/artifacts/contracts/shared/RegisterableUpgradable.sol/RegisterableUpgradable.dbg.json +0 -4
  648. package/artifacts/contracts/shared/RegisterableUpgradable.sol/RegisterableUpgradable.json +0 -442
  649. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
  650. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +0 -129
  651. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
  652. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +0 -228
  653. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +0 -4
  654. package/artifacts/contracts/test/TestFee.sol/TestFee.json +0 -119
  655. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +0 -4
  656. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +0 -305
  657. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +0 -4
  658. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +0 -116
  659. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +0 -4
  660. package/artifacts/contracts/test/TestService.sol/TestService.json +0 -600
  661. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +0 -4
  662. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +0 -376
  663. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +0 -4
  664. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +0 -218
  665. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +0 -4
  666. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +0 -286
  667. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +0 -4
  668. package/artifacts/contracts/test/Usdc.sol/USDC.json +0 -376
  669. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +0 -4
  670. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.json +0 -10
  671. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +0 -4
  672. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +0 -174
  673. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  674. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +0 -10
  675. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +0 -4
  676. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +0 -104
  677. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +0 -4
  678. package/artifacts/contracts/types/Fee.sol/FeeLib.json +0 -257
  679. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +0 -4
  680. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +0 -125
  681. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
  682. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -153
  683. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +0 -4
  684. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +0 -33
  685. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +0 -4
  686. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +0 -100
  687. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +0 -4
  688. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +0 -92
  689. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +0 -4
  690. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +0 -123
  691. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +0 -4
  692. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +0 -86
  693. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +0 -4
  694. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +0 -156
  695. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +0 -4
  696. package/artifacts/contracts/types/StateId.sol/StateIdLib.json +0 -92
  697. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +0 -4
  698. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +0 -249
  699. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +0 -4
  700. package/artifacts/contracts/types/UFixed.sol/MathLib.json +0 -10
  701. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +0 -4
  702. package/artifacts/contracts/types/UFixed.sol/UFixedLib.json +0 -479
  703. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +0 -4
  704. package/artifacts/contracts/types/Version.sol/VersionLib.json +0 -177
  705. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +0 -4
  706. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +0 -49
  707. package/contracts/components/BaseComponent.sol +0 -159
  708. package/contracts/components/Distribution.sol +0 -163
  709. package/contracts/components/IBaseComponent.sol +0 -34
  710. package/contracts/components/IDistributionComponent.sol +0 -44
  711. package/contracts/components/IPoolComponent.sol +0 -66
  712. package/contracts/components/IProductComponent.sol +0 -35
  713. package/contracts/components/Pool.sol +0 -271
  714. package/contracts/components/Product.sol +0 -292
  715. package/contracts/experiment/cloning/Cloner.sol +0 -47
  716. package/contracts/experiment/errors/Require.sol +0 -38
  717. package/contracts/experiment/errors/Revert.sol +0 -44
  718. package/contracts/experiment/inheritance/A.sol +0 -53
  719. package/contracts/experiment/inheritance/B.sol +0 -28
  720. package/contracts/experiment/inheritance/C.sol +0 -34
  721. package/contracts/experiment/inheritance/IA.sol +0 -13
  722. package/contracts/experiment/inheritance/IB.sol +0 -10
  723. package/contracts/experiment/inheritance/IC.sol +0 -12
  724. package/contracts/experiment/statemachine/Dummy.sol +0 -27
  725. package/contracts/experiment/statemachine/ISM.sol +0 -25
  726. package/contracts/experiment/statemachine/SM.sol +0 -57
  727. package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
  728. package/contracts/experiment/types/TypeA.sol +0 -47
  729. package/contracts/experiment/types/TypeB.sol +0 -29
  730. package/contracts/instance/AccessManagerUpgradeableInitializeable.sol +0 -23
  731. package/contracts/instance/BundleManager.sol +0 -129
  732. package/contracts/instance/IInstanceBase.sol +0 -26
  733. package/contracts/instance/InstanceAccessManager.sol +0 -303
  734. package/contracts/instance/InstanceBase.sol +0 -41
  735. package/contracts/instance/ObjectManager.sol +0 -101
  736. package/contracts/instance/base/ComponentServiceBase.sol +0 -82
  737. package/contracts/instance/base/IInstanceBase.sol +0 -23
  738. package/contracts/instance/base/KeyValueStore.sol +0 -172
  739. package/contracts/instance/base/Lifecycle.sol +0 -100
  740. package/contracts/instance/module/IAccess.sol +0 -48
  741. package/contracts/instance/module/ISetup.sol +0 -46
  742. package/contracts/instance/module/ITreasury.sol +0 -23
  743. package/contracts/instance/service/BundleService.sol +0 -260
  744. package/contracts/instance/service/BundleServiceManager.sol +0 -51
  745. package/contracts/instance/service/ComponentOwnerService.sol +0 -315
  746. package/contracts/instance/service/DistributionService.sol +0 -113
  747. package/contracts/instance/service/DistributionServiceManager.sol +0 -51
  748. package/contracts/instance/service/IBundleService.sol +0 -45
  749. package/contracts/instance/service/IComponentOwnerService.sol +0 -20
  750. package/contracts/instance/service/IDistributionService.sol +0 -12
  751. package/contracts/instance/service/IPolicyService.sol +0 -87
  752. package/contracts/instance/service/IPoolService.sol +0 -20
  753. package/contracts/instance/service/IProductService.sol +0 -40
  754. package/contracts/instance/service/PolicyService.sol +0 -503
  755. package/contracts/instance/service/PolicyServiceManager.sol +0 -54
  756. package/contracts/instance/service/PoolService.sol +0 -124
  757. package/contracts/instance/service/PoolServiceManager.sol +0 -51
  758. package/contracts/instance/service/ProductService.sol +0 -170
  759. package/contracts/instance/service/ProductServiceManager.sol +0 -54
  760. package/contracts/registry/RegistryAccessManager.sol +0 -210
  761. package/contracts/registry/ReleaseManager.sol +0 -348
  762. package/contracts/shared/ContractDeployerLib.sol +0 -72
  763. package/contracts/shared/ERC165.sol +0 -25
  764. package/contracts/shared/ProxyManager.sol +0 -94
  765. package/contracts/shared/RegisterableUpgradable.sol +0 -16
  766. package/contracts/shared/Versionable.sol +0 -147
  767. package/contracts/test/TestFee.sol +0 -25
  768. package/contracts/test/TestRegisterable.sol +0 -18
  769. package/contracts/test/TestRoleId.sol +0 -14
  770. package/contracts/test/TestService.sol +0 -25
  771. package/contracts/test/TestToken.sol +0 -26
  772. package/contracts/test/TestVersion.sol +0 -44
  773. package/contracts/test/TestVersionable.sol +0 -17
  774. package/contracts/types/ChainId.sol +0 -38
  775. package/contracts/types/NumberId.sol +0 -52
  776. package/contracts/types/ObjectType.sol +0 -152
  777. package/contracts/types/RiskId.sol +0 -43
  778. package/contracts/types/RoleId.sol +0 -90
@@ -1,271 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.20;
3
-
4
- import {ObjectType, POOL} from "../types/ObjectType.sol";
5
- import {IProductService} from "../instance/service/IProductService.sol";
6
- import {IPoolService} from "../instance/service/IPoolService.sol";
7
- import {IBundleService} from "../instance/service/IBundleService.sol";
8
- import {NftId, zeroNftId, NftIdLib} from "../types/NftId.sol";
9
- import {Fee} from "../types/Fee.sol";
10
- import {UFixed} from "../types/UFixed.sol";
11
- import {IPoolComponent} from "./IPoolComponent.sol";
12
- import {BaseComponent} from "./BaseComponent.sol";
13
- import {TokenHandler} from "../shared/TokenHandler.sol";
14
- import {ISetup} from "../instance/module/ISetup.sol";
15
-
16
- import {IRegistry} from "../registry/IRegistry.sol";
17
-
18
- // import {IPool} from "../instance/module/pool/IPoolModule.sol";
19
- import {ITreasury} from "../instance/module/ITreasury.sol";
20
- import {ISetup} from "../instance/module/ISetup.sol";
21
- import {InstanceReader} from "../instance/InstanceReader.sol";
22
-
23
- import {IRegisterable} from "../shared/IRegisterable.sol";
24
- import {Registerable} from "../shared/Registerable.sol";
25
-
26
- abstract contract Pool is BaseComponent, IPoolComponent {
27
- using NftIdLib for NftId;
28
-
29
- bool internal _isConfirmingApplication;
30
- UFixed internal _collateralizationLevel;
31
-
32
- Fee internal _initialPoolFee;
33
- Fee internal _initialStakingFee;
34
- Fee internal _initialPerformanceFee;
35
-
36
- TokenHandler internal _tokenHandler;
37
-
38
- // may be used to interact with instance by derived contracts
39
- IPoolService internal _poolService;
40
-
41
- // only relevant to protect callback functions for "active" pools
42
- IProductService private _productService;
43
-
44
- IBundleService private _bundleService;
45
-
46
- modifier onlyPoolService() {
47
- require(
48
- msg.sender == address(_poolService),
49
- "ERROR:POL-001:NOT_POOL_SERVICE");
50
- _;
51
- }
52
-
53
- modifier onlyProductService() {
54
- require(
55
- msg.sender == address(_productService),
56
- "ERROR:POL-002:NOT_PRODUCT_SERVICE");
57
- _;
58
- }
59
-
60
- constructor(
61
- address registry,
62
- NftId instanceNftId,
63
- // TODO refactor into tokenNftId
64
- address token,
65
- bool isInterceptor,
66
- bool isConfirmingApplication,
67
- UFixed collateralizationLevel,
68
- Fee memory poolFee,
69
- Fee memory stakingFee,
70
- Fee memory performanceFee,
71
- address initialOwner
72
- )
73
- BaseComponent(registry, instanceNftId, token, POOL(), isInterceptor, initialOwner)
74
- {
75
- _isConfirmingApplication = isConfirmingApplication;
76
- // TODO add validation
77
- _collateralizationLevel = collateralizationLevel;
78
- _initialPoolFee = poolFee;
79
- _initialStakingFee = stakingFee;
80
- _initialPerformanceFee = performanceFee;
81
-
82
- _tokenHandler = new TokenHandler(token);
83
-
84
- _poolService = _instance.getPoolService();
85
- _productService = _instance.getProductService();
86
- _bundleService = _instance.getBundleService();
87
-
88
- _registerInterface(type(IPoolComponent).interfaceId);
89
- }
90
-
91
- function createBundle(
92
- Fee memory fee,
93
- uint256 initialAmount,
94
- uint256 lifetime,
95
- bytes memory filter
96
- )
97
- external
98
- virtual override
99
- returns(NftId bundleNftId)
100
- {
101
- address owner = msg.sender;
102
- bundleNftId = _bundleService.createBundle(
103
- owner,
104
- fee,
105
- initialAmount,
106
- lifetime,
107
- filter
108
- );
109
-
110
- // TODO add logging
111
- }
112
-
113
- /**
114
- * @dev see {IPool.underwrite}.
115
- * Default implementation that only writes a {LogUnderwrittenByPool} entry.
116
- */
117
- function underwrite(
118
- NftId policyNftId,
119
- bytes memory policyData,
120
- bytes memory bundleFilter,
121
- uint256 collateralizationAmount
122
- )
123
- external
124
- onlyProductService
125
- virtual override
126
- {
127
- _underwrite(policyNftId, policyData, bundleFilter, collateralizationAmount);
128
- }
129
-
130
- /**
131
- * @dev see {IPoolComponent.policyMatchesBundle}.
132
- * Default implementation always returns true
133
- */
134
- function policyMatchesBundle(
135
- bytes memory, // policyData
136
- bytes memory // bundleFilter
137
- )
138
- public
139
- view
140
- virtual override
141
- returns (bool isMatching)
142
- {
143
- return true;
144
- }
145
-
146
-
147
- function isConfirmingApplication() external view override returns (bool isConfirmingApplication) {
148
- return _isConfirmingApplication;
149
- }
150
-
151
- function getCollateralizationLevel() external view override returns (UFixed collateralizationLevel) {
152
- return _collateralizationLevel;
153
- }
154
-
155
- function setFees(
156
- Fee memory poolFee,
157
- Fee memory stakingFee,
158
- Fee memory performanceFee
159
- )
160
- external
161
- onlyOwner
162
- override
163
- {
164
- _poolService.setFees(poolFee, stakingFee, performanceFee);
165
- }
166
-
167
- function setBundleFee(
168
- NftId bundleNftId,
169
- Fee memory fee
170
- )
171
- external
172
- override
173
- // TODO add onlyBundleOwner
174
- {
175
- _bundleService.setBundleFee(bundleNftId, fee);
176
- }
177
-
178
- function lockBundle(
179
- NftId bundleNftId
180
- )
181
- external
182
- override
183
- // TODO add onlyBundleOwner
184
- {
185
- _bundleService.lockBundle(bundleNftId);
186
- }
187
-
188
- function unlockBundle(
189
- NftId bundleNftId
190
- )
191
- external
192
- override
193
- // TODO add onlyBundleOwner
194
- {
195
- _bundleService.unlockBundle(bundleNftId);
196
- }
197
-
198
- function getSetupInfo() public view returns (ISetup.PoolSetupInfo memory setupInfo) {
199
- InstanceReader reader = _instance.getInstanceReader();
200
- return reader.getPoolSetupInfo(getNftId());
201
- }
202
-
203
- // from IRegisterable
204
-
205
- // TODO used only once, occupies space
206
- // TODO do not use super
207
- function getInitialInfo()
208
- public
209
- view
210
- override (IRegisterable, Registerable)
211
- returns (IRegistry.ObjectInfo memory, bytes memory)
212
- {
213
- (
214
- IRegistry.ObjectInfo memory info,
215
- ) = super.getInitialInfo();
216
-
217
- return (
218
- info,
219
- abi.encode(
220
- ISetup.PoolSetupInfo(
221
- _productNftId,
222
- _tokenHandler,
223
- _collateralizationLevel,
224
- _initialPoolFee,
225
- _initialStakingFee,
226
- _initialPerformanceFee,
227
- false,
228
- _isConfirmingApplication,
229
- _wallet
230
- )
231
- )
232
- );
233
- }
234
-
235
- // Internals
236
-
237
- function _underwrite(
238
- NftId policyNftId,
239
- bytes memory policyData,
240
- bytes memory bundleFilter,
241
- uint256 collateralizationAmount
242
- )
243
- internal
244
- {
245
- require(
246
- policyMatchesBundle(policyData, bundleFilter),
247
- "ERROR:POL-020:POLICY_BUNDLE_MISMATCH"
248
- );
249
-
250
- emit LogUnderwrittenByPool(policyNftId, collateralizationAmount, address(this));
251
- }
252
-
253
- function _createBundle(
254
- address bundleOwner,
255
- Fee memory fee,
256
- uint256 amount,
257
- uint256 lifetime,
258
- bytes calldata filter
259
- )
260
- internal
261
- returns(NftId bundleNftId)
262
- {
263
- bundleNftId = _bundleService.createBundle(
264
- bundleOwner,
265
- fee,
266
- amount,
267
- lifetime,
268
- filter
269
- );
270
- }
271
- }
@@ -1,292 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
5
-
6
- import {IRisk} from "../instance/module/IRisk.sol";
7
- import {ITreasury} from "../instance/module/ITreasury.sol";
8
- import {IProductService} from "../instance/service/IProductService.sol";
9
- import {IPolicyService} from "../instance/service/IPolicyService.sol";
10
- import {IProductComponent} from "./IProductComponent.sol";
11
- import {NftId, zeroNftId, NftIdLib} from "../types/NftId.sol";
12
- import {ObjectType, PRODUCT} from "../types/ObjectType.sol";
13
- import {ReferralId} from "../types/Referral.sol";
14
- import {RiskId, RiskIdLib} from "../types/RiskId.sol";
15
- import {StateId} from "../types/StateId.sol";
16
- import {Timestamp} from "../types/Timestamp.sol";
17
- import {Fee, FeeLib} from "../types/Fee.sol";
18
- import {BaseComponent} from "./BaseComponent.sol";
19
-
20
- import {IRegistry} from "../registry/IRegistry.sol";
21
- import {IRegisterable} from "../shared/IRegisterable.sol";
22
- import {Registerable} from "../shared/Registerable.sol";
23
- import {TokenHandler} from "../shared/TokenHandler.sol";
24
-
25
- import {InstanceReader} from "../instance/InstanceReader.sol";
26
- import {ISetup} from "../instance/module/ISetup.sol";
27
- import {Pool} from "../components/Pool.sol";
28
- import {Distribution} from "../components/Distribution.sol";
29
-
30
- import {zeroNftId} from "../types/NftId.sol";
31
-
32
- abstract contract Product is BaseComponent, IProductComponent {
33
- using NftIdLib for NftId;
34
-
35
- IProductService internal _productService;
36
- IPolicyService internal _policyService;
37
- Pool internal _pool;
38
- Distribution internal _distribution;
39
- Fee internal _initialProductFee;
40
- Fee internal _initialProcessingFee;
41
- TokenHandler internal _tokenHandler;
42
-
43
- NftId internal _poolNftId;
44
- NftId internal _distributionNftId;
45
-
46
- constructor(
47
- address registry,
48
- NftId instanceNftid,
49
- address token,
50
- bool isInterceptor,
51
- address pool,
52
- address distribution,
53
- Fee memory productFee,
54
- Fee memory processingFee,
55
- address initialOwner
56
- ) BaseComponent(registry, instanceNftid, token, PRODUCT(), isInterceptor, initialOwner) {
57
- // TODO add validation
58
- _productService = _instance.getProductService();
59
- _policyService = _instance.getPolicyService();
60
- _pool = Pool(pool);
61
- _distribution = Distribution(distribution);
62
- _initialProductFee = productFee;
63
- _initialProcessingFee = processingFee;
64
-
65
- _tokenHandler = new TokenHandler(token);
66
-
67
- _poolNftId = getRegistry().getNftId(address(_pool));
68
- _distributionNftId = getRegistry().getNftId(address(_distribution));
69
-
70
- _registerInterface(type(IProductComponent).interfaceId);
71
- }
72
-
73
-
74
- function calculatePremium(
75
- uint256 sumInsuredAmount,
76
- RiskId riskId,
77
- uint256 lifetime,
78
- bytes memory applicationData,
79
- ReferralId referralId,
80
- NftId bundleNftId
81
- )
82
- external
83
- view
84
- override
85
- returns (uint256 premiumAmount)
86
- {
87
- (premiumAmount,,,,) = _policyService.calculatePremium(
88
- riskId,
89
- sumInsuredAmount,
90
- lifetime,
91
- applicationData,
92
- bundleNftId,
93
- referralId
94
- );
95
- }
96
-
97
-
98
- function calculateNetPremium(
99
- uint256 sumInsuredAmount,
100
- RiskId riskId,
101
- uint256 lifetime,
102
- bytes memory applicationData
103
- )
104
- external
105
- view
106
- virtual override
107
- returns (uint256 netPremiumAmount)
108
- {
109
- // default 10% of sum insured
110
- return sumInsuredAmount / 10;
111
- }
112
-
113
- function _toRiskId(string memory riskName) internal pure returns (RiskId riskId) {
114
- return RiskIdLib.toRiskId(riskName);
115
- }
116
-
117
- function _createRisk(
118
- RiskId id,
119
- bytes memory data
120
- ) internal {
121
- _productService.createRisk(
122
- id,
123
- data
124
- );
125
- }
126
-
127
- function _updateRisk(
128
- RiskId id,
129
- bytes memory data
130
- ) internal {
131
- _productService.updateRisk(
132
- id,
133
- data
134
- );
135
- }
136
-
137
- function _updateRiskState(
138
- RiskId id,
139
- StateId state
140
- ) internal {
141
- _productService.updateRiskState(
142
- id,
143
- state
144
- );
145
- }
146
-
147
- function _getRiskInfo(RiskId id) internal view returns (IRisk.RiskInfo memory info) {
148
- return _instance.getInstanceReader().getRiskInfo(id);
149
- }
150
-
151
- function _createApplication(
152
- address applicationOwner,
153
- RiskId riskId,
154
- uint256 sumInsuredAmount,
155
- uint256 lifetime,
156
- bytes memory applicationData,
157
- NftId bundleNftId,
158
- ReferralId referralId
159
- ) internal returns (NftId nftId) {
160
- nftId = _policyService.createApplication(
161
- applicationOwner,
162
- riskId,
163
- sumInsuredAmount,
164
- lifetime,
165
- applicationData,
166
- bundleNftId,
167
- referralId
168
- );
169
- }
170
-
171
- function _underwrite(
172
- NftId policyNftId,
173
- bool requirePremiumPayment,
174
- Timestamp activateAt
175
- )
176
- internal
177
- {
178
- _policyService.underwrite(
179
- policyNftId,
180
- requirePremiumPayment,
181
- activateAt);
182
- }
183
-
184
- function _collectPremium(
185
- NftId policyNftId,
186
- Timestamp activateAt
187
- )
188
- internal
189
- {
190
- _policyService.collectPremium(
191
- policyNftId,
192
- activateAt);
193
- }
194
-
195
- function _activate(
196
- NftId policyNftId,
197
- Timestamp activateAt
198
- )
199
- internal
200
- {
201
- _policyService.activate(
202
- policyNftId,
203
- activateAt);
204
- }
205
-
206
- function getPoolNftId() external view override returns (NftId poolNftId) {
207
- return getRegistry().getNftId(address(_pool));
208
- }
209
-
210
- function getDistributionNftId() external view override returns (NftId distributionNftId) {
211
- return getRegistry().getNftId(address(_distribution));
212
- }
213
-
214
- // from product component
215
- function setFees(
216
- Fee memory productFee,
217
- Fee memory processingFee
218
- )
219
- external
220
- onlyOwner
221
- override
222
- {
223
- _productService.setFees(productFee, processingFee);
224
- }
225
-
226
- function getSetupInfo() public view returns (ISetup.ProductSetupInfo memory setupInfo) {
227
- InstanceReader reader = _instance.getInstanceReader();
228
- return reader.getProductSetupInfo(getNftId());
229
- }
230
-
231
- // from IRegisterable
232
-
233
- function getInitialInfo()
234
- public
235
- view
236
- override (IRegisterable, Registerable)
237
- returns (IRegistry.ObjectInfo memory, bytes memory)
238
- {
239
- // from Registerable
240
- (
241
- IRegistry.ObjectInfo memory productInfo,
242
- bytes memory data
243
- ) = super.getInitialInfo();
244
-
245
- // TODO read pool & distribution fees
246
- // 1) from pool -> the only option -> pool must be registered first?
247
- // 2) from instance -> all fees are set into instance at product registration which is ongoing here
248
- // checks are done in registryProduct() where THIS function is called
249
- //require(getRegistry().getObjectInfo(_poolNftId).objectType == POOL(), "POOL_NOT_REGISTERED");
250
- //require(getRegistry().getObjectInfo(_distributionNftId).objectType == DISTRIBUTION(), "DISTRIBUTION_NOT_REGISTERED");
251
-
252
- // from PoolComponent
253
- (
254
- ,
255
- bytes memory poolData
256
- ) = _pool.getInitialInfo();
257
-
258
- (
259
- ISetup.PoolSetupInfo memory poolSetupInfo
260
- ) = abi.decode(poolData, (ISetup.PoolSetupInfo));
261
-
262
- // from DistributionComponent
263
- (
264
- ,
265
- bytes memory distributionData
266
- ) = _distribution.getInitialInfo();
267
-
268
- (
269
- ISetup.DistributionSetupInfo memory distributionSetupInfo
270
- ) = abi.decode(distributionData, (ISetup.DistributionSetupInfo));
271
-
272
- return (
273
- productInfo,
274
- abi.encode(
275
- ISetup.ProductSetupInfo(
276
- _token,
277
- _tokenHandler,
278
- _distributionNftId,
279
- _poolNftId,
280
- distributionSetupInfo.distributionFee,
281
- _initialProductFee,
282
- _initialProcessingFee,
283
- poolSetupInfo.poolFee,
284
- poolSetupInfo.stakingFee,
285
- poolSetupInfo.performanceFee,
286
- false,
287
- _wallet
288
- )
289
- )
290
- );
291
- }
292
- }
@@ -1,47 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.20;
3
-
4
- import {Clones} from "@openzeppelin/contracts/proxy/Clones.sol";
5
-
6
-
7
- contract Cloner {
8
-
9
- Mock1 public mock1;
10
- Mock2 public mock2;
11
-
12
- constructor() {
13
- mock1 = new Mock1();
14
- mock2 = new Mock2();
15
- }
16
-
17
- function createClone(address master)
18
- external
19
- returns (address cloned)
20
- {
21
- cloned = Clones.clone(master);
22
- }
23
- }
24
-
25
-
26
- contract Mock1 {
27
- function getValue() external virtual view returns (uint256) {
28
- return 42;
29
- }
30
- }
31
-
32
- contract Mock2 is Mock1 {
33
- uint256 internal _value;
34
-
35
- constructor() {
36
- _value = 42;
37
- }
38
-
39
- function setValue(uint256 value) external virtual {
40
- _value = value;
41
- }
42
-
43
- function getValue() external virtual override view returns (uint256) {
44
- return _value;
45
- }
46
- }
47
-
@@ -1,38 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- contract Require {
5
- error AsmallerThanB_S();
6
- error AsmallerThanB_M(uint a);
7
- error AsmallerThanB_L(uint a, uint b);
8
-
9
- uint256 private _b;
10
-
11
- constructor() {
12
- _b = 42;
13
- }
14
-
15
- function isAlargerThanBRequire_S(
16
- uint a
17
- ) external view returns (bool isLarger) {
18
- require(a > _b, "ERROR:ABC-001");
19
-
20
- return true;
21
- }
22
-
23
- function isAlargerThanBRequire_M(
24
- uint a
25
- ) external view returns (bool isLarger) {
26
- require(a > _b, "ERROR:ABC-002:A_IS_SMALLER");
27
-
28
- return true;
29
- }
30
-
31
- function isAlargerThanBRequire_L(
32
- uint a
33
- ) external view returns (bool isLarger) {
34
- require(a > _b, "ERROR:ABC-003:A_IS_SMALLER_THAN_B");
35
-
36
- return true;
37
- }
38
- }
@@ -1,44 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- contract Revert {
5
- error AsmallerThanB_S();
6
- error AsmallerThanB_M(uint a);
7
- error AsmallerThanB_L(uint a, uint b);
8
-
9
- uint256 private _b;
10
-
11
- constructor() {
12
- _b = 42;
13
- }
14
-
15
- function isAlargerThanBRevert_S(
16
- uint a
17
- ) external view returns (bool isLarger) {
18
- if (a <= _b) {
19
- revert AsmallerThanB_S();
20
- }
21
-
22
- return true;
23
- }
24
-
25
- function isAlargerThanBRevert_M(
26
- uint a
27
- ) external view returns (bool isLarger) {
28
- if (a <= _b) {
29
- revert AsmallerThanB_M(a);
30
- }
31
-
32
- return true;
33
- }
34
-
35
- function isAlargerThanBRevert_L(
36
- uint a
37
- ) external view returns (bool isLarger) {
38
- if (a <= _b) {
39
- revert AsmallerThanB_L(a, _b);
40
- }
41
-
42
- return true;
43
- }
44
- }