@etherisc/gif-next 0.0.2-f9bc4c7-556 → 0.0.2-fa35bce-363

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 (794) hide show
  1. package/README.md +378 -20
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +4 -0
  3. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +1075 -0
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +4 -0
  5. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +790 -0
  6. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +4 -0
  7. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +843 -0
  8. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
  9. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +1664 -0
  10. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +4 -0
  11. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +1289 -0
  12. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +4 -0
  13. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +1403 -0
  14. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +4 -0
  15. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +790 -0
  16. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +4 -0
  17. package/artifacts/contracts/{instance/module/access → authorization}/IAccess.sol/IAccess.json +1 -1
  18. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
  19. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +1372 -0
  20. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +4 -0
  21. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +455 -0
  22. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
  23. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +397 -0
  24. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
  25. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +646 -0
  26. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +4 -0
  27. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +1244 -0
  28. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +4 -0
  29. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +805 -0
  30. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
  31. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +949 -0
  32. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
  33. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1809 -0
  34. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  35. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +930 -0
  36. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  37. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +848 -0
  38. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  39. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +1284 -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 +1484 -0
  44. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
  45. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +805 -0
  46. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
  47. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +2053 -0
  48. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
  49. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +805 -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 +1439 -0
  54. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +4 -0
  55. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +805 -0
  56. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
  57. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1171 -0
  58. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
  59. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1647 -0
  60. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +4 -0
  61. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +805 -0
  62. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
  63. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2585 -0
  64. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +4 -0
  65. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +805 -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 +576 -1290
  70. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +4 -0
  71. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +1082 -0
  72. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  73. package/artifacts/contracts/instance/Instance.sol/Instance.json +653 -1537
  74. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  75. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +2349 -0
  76. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
  77. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +902 -0
  78. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +4 -0
  79. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +2646 -0
  80. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +4 -0
  81. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +1328 -0
  82. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +4 -0
  83. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +772 -0
  84. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  85. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3792 -0
  86. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +4 -0
  87. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +866 -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/base/Cloneable.sol/Cloneable.json +137 -0
  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 +4 -0
  101. package/artifacts/contracts/instance/module/{bundle/IBundle.sol → IBundle.sol}/IBundle.json +1 -1
  102. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  103. package/artifacts/contracts/instance/{base/ModuleBase.sol/ModuleBase.json → module/IComponents.sol/IComponents.json} +2 -2
  104. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +4 -0
  105. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.json +10 -0
  106. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +4 -0
  107. package/artifacts/contracts/instance/module/{policy/IPolicy.sol → IPolicy.sol}/IPolicy.json +1 -1
  108. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +4 -0
  109. package/artifacts/contracts/instance/module/{risk/IRisk.sol → IRisk.sol}/IRisk.json +1 -1
  110. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +4 -0
  111. package/artifacts/contracts/mock/Dip.sol/Dip.json +376 -0
  112. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +4 -0
  113. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +957 -0
  114. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +4 -0
  115. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +810 -0
  116. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
  117. package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +52 -0
  118. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
  119. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +772 -0
  120. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
  121. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +762 -0
  122. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
  123. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +873 -0
  124. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
  125. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +1042 -0
  126. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
  127. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +810 -0
  128. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +4 -0
  129. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +1242 -0
  130. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +4 -0
  131. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +805 -0
  132. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +4 -0
  133. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1438 -0
  134. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  135. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +866 -0
  136. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
  137. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +1033 -0
  138. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
  139. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +905 -0
  140. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
  141. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1449 -0
  142. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
  143. package/artifacts/contracts/pool/Pool.sol/Pool.json +1025 -0
  144. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +4 -0
  145. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +522 -0
  146. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
  147. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1833 -0
  148. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  149. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +866 -0
  150. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  151. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +1036 -0
  152. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  153. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +790 -0
  154. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
  155. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +1159 -0
  156. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +4 -0
  157. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +805 -0
  158. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
  159. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1536 -0
  160. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  161. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +886 -0
  162. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  163. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +804 -0
  164. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
  165. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +1104 -0
  166. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  167. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +1036 -0
  168. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
  169. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +652 -0
  170. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
  171. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +1016 -0
  172. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
  173. package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +665 -0
  174. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
  175. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1404 -0
  176. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +4 -0
  177. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +783 -0
  178. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  179. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +854 -0
  180. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
  181. package/artifacts/contracts/product/PricingService.sol/PricingService.json +932 -0
  182. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  183. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +814 -0
  184. package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
  185. package/artifacts/contracts/product/Product.sol/Product.json +1117 -0
  186. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
  187. package/artifacts/contracts/product/RiskService.sol/RiskService.json +873 -0
  188. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
  189. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +774 -0
  190. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  191. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +242 -12
  192. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  193. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +1035 -119
  194. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +4 -0
  195. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +1072 -0
  196. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +4 -0
  197. package/artifacts/contracts/{instance/IInstanceLinked.sol/IInstanceLinked.json → registry/IRelease.sol/IRelease.json} +6 -6
  198. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +4 -0
  199. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +39 -0
  200. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  201. package/artifacts/contracts/registry/Registry.sol/Registry.json +1473 -231
  202. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
  203. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +2160 -0
  204. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +4 -0
  205. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +1074 -0
  206. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +4 -0
  207. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +1298 -0
  208. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +4 -0
  209. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +773 -0
  210. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +4 -0
  211. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +2152 -0
  212. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +4 -0
  213. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +205 -0
  214. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
  215. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1389 -0
  216. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
  217. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +683 -0
  218. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +4 -0
  219. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +721 -0
  220. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
  221. package/artifacts/contracts/shared/Component.sol/Component.json +705 -0
  222. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
  223. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1551 -0
  224. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
  225. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +862 -0
  226. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
  227. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +632 -0
  228. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +4 -0
  229. package/artifacts/contracts/shared/{IOwnable.sol/IOwnable.json → ContractLib.sol/IInstanceAdminHelper.json} +5 -5
  230. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +4 -0
  231. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.json +30 -0
  232. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +4 -0
  233. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +40 -0
  234. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
  235. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +630 -0
  236. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
  237. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +1175 -0
  238. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
  239. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +707 -0
  240. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
  241. package/artifacts/contracts/{instance/base → shared}/IKeyValueStore.sol/IKeyValueStore.json +146 -147
  242. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
  243. package/artifacts/contracts/{instance/base → shared}/ILifecycle.sol/ILifecycle.json +35 -4
  244. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +4 -0
  245. package/artifacts/contracts/{components/IBaseComponent.sol/IBaseComponent.json → shared/INftOwnable.sol/INftOwnable.json} +62 -70
  246. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
  247. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +175 -0
  248. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  249. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +248 -21
  250. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
  251. package/artifacts/contracts/{registry → shared}/IRegistryLinked.sol/IRegistryLinked.json +13 -2
  252. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +4 -0
  253. package/artifacts/contracts/{instance/service/IComponentOwnerService.sol/IComponentOwnerService.json → shared/IService.sol/IService.json} +224 -160
  254. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
  255. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +53 -0
  256. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
  257. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +795 -0
  258. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
  259. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +538 -0
  260. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
  261. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +174 -0
  262. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
  263. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
  264. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +4 -0
  265. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +228 -0
  266. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
  267. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +198 -0
  268. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  269. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +294 -18
  270. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
  271. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +58 -0
  272. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +4 -0
  273. package/artifacts/contracts/{instance/service/IProductService.sol/IProductService.json → shared/Service.sol/Service.json} +239 -234
  274. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +4 -0
  275. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +723 -0
  276. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +4 -0
  277. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +484 -0
  278. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
  279. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +172 -0
  280. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
  281. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +2568 -0
  282. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
  283. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +1147 -0
  284. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +4 -0
  285. package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.json +69 -0
  286. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
  287. package/artifacts/contracts/staking/Staking.sol/Staking.json +3028 -0
  288. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +4 -0
  289. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +470 -0
  290. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
  291. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +205 -0
  292. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
  293. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +863 -0
  294. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
  295. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +554 -0
  296. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
  297. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1344 -0
  298. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
  299. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +766 -0
  300. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
  301. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +3136 -0
  302. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +4 -0
  303. package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +265 -0
  304. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
  305. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +657 -0
  306. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
  307. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +10 -0
  308. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
  309. package/artifacts/contracts/type/Amount.sol/AmountLib.json +398 -0
  310. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
  311. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +251 -0
  312. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +4 -0
  313. package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +193 -0
  314. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  315. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +203 -0
  316. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  317. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +104 -0
  318. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
  319. package/artifacts/contracts/type/Fee.sol/FeeLib.json +373 -0
  320. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
  321. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +125 -0
  322. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +4 -0
  323. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +33 -0
  324. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
  325. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +228 -0
  326. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
  327. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +33 -0
  328. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
  329. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +241 -0
  330. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  331. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
  332. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
  333. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
  334. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
  335. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
  336. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
  337. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +204 -0
  338. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
  339. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +254 -0
  340. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
  341. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +289 -0
  342. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
  343. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +148 -0
  344. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
  345. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
  346. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
  347. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +105 -0
  348. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
  349. package/artifacts/contracts/type/String.sol/StrLib.json +180 -0
  350. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
  351. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +312 -0
  352. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
  353. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +572 -0
  354. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
  355. package/artifacts/contracts/type/Version.sol/VersionLib.json +158 -0
  356. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
  357. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +167 -0
  358. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
  359. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.json +65 -0
  360. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  361. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +656 -0
  362. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  363. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +142 -0
  364. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
  365. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.json +88 -0
  366. package/contracts/accounting/AccountingService.sol +274 -0
  367. package/contracts/accounting/AccountingServiceManager.sol +38 -0
  368. package/contracts/accounting/IAccountingService.sol +47 -0
  369. package/contracts/authorization/AccessAdmin.sol +780 -0
  370. package/contracts/authorization/AccessAdminLib.sol +396 -0
  371. package/contracts/authorization/AccessManagerCloneable.sol +158 -0
  372. package/contracts/authorization/Authorization.sol +169 -0
  373. package/contracts/authorization/IAccess.sol +67 -0
  374. package/contracts/authorization/IAccessAdmin.sol +144 -0
  375. package/contracts/authorization/IAuthorization.sol +26 -0
  376. package/contracts/authorization/IServiceAuthorization.sol +78 -0
  377. package/contracts/authorization/ServiceAuthorization.sol +320 -0
  378. package/contracts/distribution/BasicDistribution.sol +141 -0
  379. package/contracts/distribution/BasicDistributionAuthorization.sol +67 -0
  380. package/contracts/distribution/Distribution.sol +247 -0
  381. package/contracts/distribution/DistributionService.sol +448 -0
  382. package/contracts/distribution/DistributionServiceManager.sol +39 -0
  383. package/contracts/distribution/IDistributionComponent.sol +45 -0
  384. package/contracts/distribution/IDistributionService.sol +115 -0
  385. package/contracts/examples/fire/DamageLevel.sol +59 -0
  386. package/contracts/examples/fire/FirePool.sol +86 -0
  387. package/contracts/examples/fire/FirePoolAuthorization.sol +35 -0
  388. package/contracts/examples/fire/FireProduct.sol +433 -0
  389. package/contracts/examples/fire/FireProductAuthorization.sol +45 -0
  390. package/contracts/examples/fire/FireUSD.sol +26 -0
  391. package/contracts/examples/unpermissioned/SimpleDistribution.sol +81 -0
  392. package/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol +28 -0
  393. package/contracts/examples/unpermissioned/SimpleOracle.sol +133 -0
  394. package/contracts/examples/unpermissioned/SimplePool.sol +102 -0
  395. package/contracts/examples/unpermissioned/SimplePoolAuthorization.sol +28 -0
  396. package/contracts/examples/unpermissioned/SimpleProduct.sol +437 -0
  397. package/contracts/examples/unpermissioned/SimpleProductAuthorization.sol +28 -0
  398. package/contracts/instance/BundleSet.sol +130 -0
  399. package/contracts/instance/IInstance.sol +138 -45
  400. package/contracts/instance/IInstanceService.sol +117 -0
  401. package/contracts/instance/Instance.sol +333 -54
  402. package/contracts/instance/InstanceAdmin.sol +383 -0
  403. package/contracts/instance/InstanceAuthorizationV3.sol +266 -0
  404. package/contracts/instance/InstanceReader.sol +632 -0
  405. package/contracts/instance/InstanceService.sol +500 -0
  406. package/contracts/instance/InstanceServiceManager.sol +39 -0
  407. package/contracts/instance/InstanceStore.sol +298 -0
  408. package/contracts/instance/RiskSet.sol +126 -0
  409. package/contracts/instance/base/BalanceStore.sol +121 -0
  410. package/contracts/instance/base/Cloneable.sol +28 -0
  411. package/contracts/instance/base/ObjectCounter.sol +20 -0
  412. package/contracts/instance/base/ObjectLifecycle.sol +109 -0
  413. package/contracts/instance/base/ObjectSet.sol +77 -0
  414. package/contracts/instance/base/ObjectSetHelperLib.sol +30 -0
  415. package/contracts/instance/module/IBundle.sol +21 -0
  416. package/contracts/instance/module/IComponents.sol +62 -0
  417. package/contracts/instance/module/IDistribution.sol +54 -0
  418. package/contracts/instance/module/IPolicy.sol +105 -0
  419. package/contracts/instance/module/IRisk.sol +16 -0
  420. package/contracts/{test/Usdc.sol → mock/Dip.sol} +6 -6
  421. package/contracts/oracle/BasicOracle.sol +45 -0
  422. package/contracts/oracle/BasicOracleAuthorization.sol +53 -0
  423. package/contracts/oracle/IOracle.sol +41 -0
  424. package/contracts/oracle/IOracleComponent.sol +33 -0
  425. package/contracts/oracle/IOracleService.sol +66 -0
  426. package/contracts/oracle/Oracle.sol +154 -0
  427. package/contracts/oracle/OracleService.sol +310 -0
  428. package/contracts/oracle/OracleServiceManager.sol +39 -0
  429. package/contracts/pool/BasicPool.sol +162 -0
  430. package/contracts/pool/BasicPoolAuthorization.sol +81 -0
  431. package/contracts/pool/BundleService.sol +386 -0
  432. package/contracts/pool/BundleServiceManager.sol +39 -0
  433. package/contracts/pool/IBundleService.sol +116 -0
  434. package/contracts/pool/IPoolComponent.sol +62 -0
  435. package/contracts/pool/IPoolService.sol +170 -0
  436. package/contracts/pool/Pool.sol +333 -0
  437. package/contracts/pool/PoolLib.sol +341 -0
  438. package/contracts/pool/PoolService.sol +614 -0
  439. package/contracts/pool/PoolServiceManager.sol +39 -0
  440. package/contracts/product/ApplicationService.sol +327 -0
  441. package/contracts/product/ApplicationServiceManager.sol +38 -0
  442. package/contracts/product/BasicProduct.sol +49 -0
  443. package/contracts/product/BasicProductAuthorization.sol +63 -0
  444. package/contracts/product/ClaimService.sol +630 -0
  445. package/contracts/product/ClaimServiceManager.sol +38 -0
  446. package/contracts/product/IApplicationService.sol +88 -0
  447. package/contracts/product/IClaimService.sol +136 -0
  448. package/contracts/product/IPolicyService.sol +102 -0
  449. package/contracts/product/IPricingService.sol +40 -0
  450. package/contracts/product/IProductComponent.sol +62 -0
  451. package/contracts/product/IRiskService.sol +48 -0
  452. package/contracts/product/PolicyService.sol +645 -0
  453. package/contracts/product/PolicyServiceLib.sol +139 -0
  454. package/contracts/product/PolicyServiceManager.sol +39 -0
  455. package/contracts/product/PricingService.sol +306 -0
  456. package/contracts/product/PricingServiceManager.sol +39 -0
  457. package/contracts/product/Product.sol +493 -0
  458. package/contracts/product/RiskService.sol +190 -0
  459. package/contracts/product/RiskServiceManager.sol +39 -0
  460. package/contracts/registry/ChainNft.sol +130 -40
  461. package/contracts/registry/IRegistry.sol +144 -29
  462. package/contracts/registry/IRegistryService.sol +62 -0
  463. package/contracts/registry/IRelease.sol +29 -0
  464. package/contracts/registry/ITransferInterceptor.sol +6 -0
  465. package/contracts/registry/Registry.sol +637 -282
  466. package/contracts/registry/RegistryAdmin.sol +191 -0
  467. package/contracts/registry/RegistryAuthorization.sol +312 -0
  468. package/contracts/registry/RegistryService.sol +241 -0
  469. package/contracts/registry/RegistryServiceManager.sol +53 -0
  470. package/contracts/registry/ReleaseAdmin.sol +195 -0
  471. package/contracts/registry/ReleaseLifecycle.sol +32 -0
  472. package/contracts/registry/ReleaseRegistry.sol +525 -0
  473. package/contracts/registry/ServiceAuthorizationV3.sol +342 -0
  474. package/contracts/registry/TokenRegistry.sol +317 -0
  475. package/contracts/shared/Component.sol +214 -0
  476. package/contracts/shared/ComponentService.sol +687 -0
  477. package/contracts/shared/ComponentServiceManager.sol +38 -0
  478. package/contracts/shared/ContractLib.sol +312 -0
  479. package/contracts/shared/IComponent.sol +58 -0
  480. package/contracts/shared/IComponentService.sol +111 -0
  481. package/contracts/shared/IInstanceLinkedComponent.sol +30 -0
  482. package/contracts/shared/IKeyValueStore.sol +54 -0
  483. package/contracts/{instance/base → shared}/ILifecycle.sol +6 -5
  484. package/contracts/shared/INftOwnable.sol +27 -0
  485. package/contracts/shared/IPolicyHolder.sol +35 -0
  486. package/contracts/shared/IRegisterable.sol +31 -19
  487. package/contracts/shared/IRegistryLinked.sol +11 -0
  488. package/contracts/shared/IService.sol +23 -0
  489. package/contracts/shared/InitializableERC165.sol +35 -0
  490. package/contracts/shared/InstanceLinkedComponent.sol +194 -0
  491. package/contracts/shared/KeyValueStore.sol +131 -0
  492. package/contracts/shared/Lifecycle.sol +88 -0
  493. package/contracts/shared/NftIdSet.sol +65 -0
  494. package/contracts/shared/NftOwnable.sol +129 -0
  495. package/contracts/shared/PolicyHolder.sol +63 -0
  496. package/contracts/shared/Registerable.sol +80 -60
  497. package/contracts/shared/RegistryLinked.sol +38 -0
  498. package/contracts/shared/Service.sol +67 -0
  499. package/contracts/shared/TokenHandler.sol +342 -0
  500. package/contracts/shared/TokenHandlerDeployerLib.sol +20 -0
  501. package/contracts/staking/IStaking.sol +297 -0
  502. package/contracts/staking/IStakingService.sol +127 -0
  503. package/contracts/staking/ITargetLimitHandler.sol +26 -0
  504. package/contracts/staking/Staking.sol +780 -0
  505. package/contracts/staking/StakingLib.sol +195 -0
  506. package/contracts/staking/StakingLifecycle.sol +23 -0
  507. package/contracts/staking/StakingManager.sol +53 -0
  508. package/contracts/staking/StakingReader.sol +151 -0
  509. package/contracts/staking/StakingService.sol +321 -0
  510. package/contracts/staking/StakingServiceManager.sol +46 -0
  511. package/contracts/staking/StakingStore.sol +1174 -0
  512. package/contracts/staking/TargetHandler.sol +102 -0
  513. package/contracts/staking/TargetManagerLib.sol +211 -0
  514. package/contracts/{types → type}/AddressSet.sol +1 -1
  515. package/contracts/type/Amount.sol +154 -0
  516. package/contracts/{types → type}/Blocknumber.sol +36 -12
  517. package/contracts/type/ChainId.sol +101 -0
  518. package/contracts/type/ClaimId.sol +80 -0
  519. package/contracts/type/DistributorType.sol +55 -0
  520. package/contracts/type/Fee.sol +66 -0
  521. package/contracts/{types → type}/Key32.sol +10 -5
  522. package/contracts/type/Key32Set.sol +62 -0
  523. package/contracts/{types → type}/NftId.sol +28 -15
  524. package/contracts/type/NftIdSet.sol +62 -0
  525. package/contracts/type/ObjectType.sol +307 -0
  526. package/contracts/type/PayoutId.sol +82 -0
  527. package/contracts/type/Referral.sol +90 -0
  528. package/contracts/type/RequestId.sol +75 -0
  529. package/contracts/type/RiskId.sol +75 -0
  530. package/contracts/type/RoleId.sol +180 -0
  531. package/contracts/type/Seconds.sol +115 -0
  532. package/contracts/type/Selector.sol +107 -0
  533. package/contracts/{types → type}/StateId.sol +53 -5
  534. package/contracts/type/String.sol +65 -0
  535. package/contracts/{types → type}/Timestamp.sol +39 -19
  536. package/contracts/{types → type}/UFixed.sol +73 -19
  537. package/contracts/type/Version.sol +159 -0
  538. package/contracts/upgradeability/IVersionable.sol +56 -0
  539. package/contracts/upgradeability/ProxyManager.sol +246 -0
  540. package/contracts/upgradeability/UpgradableProxyWithAdmin.sol +24 -0
  541. package/contracts/upgradeability/Versionable.sol +62 -0
  542. package/package.json +13 -8
  543. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +0 -4
  544. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.json +0 -174
  545. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +0 -4
  546. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +0 -4
  547. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +0 -356
  548. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +0 -4
  549. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +0 -279
  550. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
  551. package/artifacts/contracts/components/Pool.sol/Pool.json +0 -387
  552. package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
  553. package/artifacts/contracts/components/Product.sol/Product.json +0 -305
  554. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
  555. package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
  556. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
  557. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
  558. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  559. package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
  560. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  561. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
  562. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  563. package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
  564. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  565. package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
  566. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  567. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
  568. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  569. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.json +0 -37
  570. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  571. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.json +0 -50
  572. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  573. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
  574. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
  575. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
  576. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
  577. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.json +0 -124
  578. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
  579. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
  580. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
  581. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
  582. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
  583. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
  584. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  585. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  586. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  587. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
  588. package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.dbg.json +0 -4
  589. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
  590. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.json +0 -300
  591. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
  592. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.json +0 -63
  593. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
  594. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +0 -4
  595. package/artifacts/contracts/instance/base/IService.sol/IService.dbg.json +0 -4
  596. package/artifacts/contracts/instance/base/IService.sol/IService.json +0 -300
  597. package/artifacts/contracts/instance/base/InstanceBase.sol/InstanceBase.dbg.json +0 -4
  598. package/artifacts/contracts/instance/base/InstanceBase.sol/InstanceBase.json +0 -326
  599. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
  600. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +0 -692
  601. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
  602. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -169
  603. package/artifacts/contracts/instance/base/ModuleBase.sol/ModuleBase.dbg.json +0 -4
  604. package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.dbg.json +0 -4
  605. package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.json +0 -300
  606. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.dbg.json +0 -4
  607. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.json +0 -333
  608. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccess.dbg.json +0 -4
  609. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.dbg.json +0 -4
  610. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.json +0 -333
  611. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.dbg.json +0 -4
  612. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.json +0 -296
  613. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundle.dbg.json +0 -4
  614. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.dbg.json +0 -4
  615. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.json +0 -296
  616. package/artifacts/contracts/instance/module/compensation/CompensationModule.sol/CompensationModule.dbg.json +0 -4
  617. package/artifacts/contracts/instance/module/compensation/CompensationModule.sol/CompensationModule.json +0 -10
  618. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensation.dbg.json +0 -4
  619. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensation.json +0 -10
  620. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensationModule.dbg.json +0 -4
  621. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensationModule.json +0 -10
  622. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.dbg.json +0 -4
  623. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.json +0 -188
  624. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.dbg.json +0 -4
  625. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.json +0 -10
  626. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.dbg.json +0 -4
  627. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.json +0 -188
  628. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicy.dbg.json +0 -4
  629. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.dbg.json +0 -4
  630. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.json +0 -261
  631. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.dbg.json +0 -4
  632. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.json +0 -261
  633. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.dbg.json +0 -4
  634. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.json +0 -10
  635. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.dbg.json +0 -4
  636. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.json +0 -149
  637. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.dbg.json +0 -4
  638. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.json +0 -149
  639. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRisk.dbg.json +0 -4
  640. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.dbg.json +0 -4
  641. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.json +0 -10
  642. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.dbg.json +0 -4
  643. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.json +0 -10
  644. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasury.dbg.json +0 -4
  645. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasury.json +0 -10
  646. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.dbg.json +0 -4
  647. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.json +0 -533
  648. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.dbg.json +0 -4
  649. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.json +0 -76
  650. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.dbg.json +0 -4
  651. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.json +0 -533
  652. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +0 -4
  653. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +0 -523
  654. package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +0 -4
  655. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +0 -4
  656. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +0 -376
  657. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +0 -4
  658. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +0 -4
  659. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +0 -471
  660. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
  661. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -673
  662. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.dbg.json +0 -4
  663. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.json +0 -452
  664. package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.dbg.json +0 -4
  665. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +0 -4
  666. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +0 -35
  667. package/artifacts/contracts/shared/IOwnable.sol/IOwnable.dbg.json +0 -4
  668. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
  669. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +0 -164
  670. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
  671. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +0 -164
  672. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +0 -4
  673. package/artifacts/contracts/test/TestFee.sol/TestFee.json +0 -119
  674. package/artifacts/contracts/test/TestPool.sol/TestPool.dbg.json +0 -4
  675. package/artifacts/contracts/test/TestPool.sol/TestPool.json +0 -387
  676. package/artifacts/contracts/test/TestProduct.sol/TestProduct.dbg.json +0 -4
  677. package/artifacts/contracts/test/TestProduct.sol/TestProduct.json +0 -393
  678. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +0 -4
  679. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +0 -137
  680. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +0 -4
  681. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +0 -116
  682. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +0 -4
  683. package/artifacts/contracts/test/TestService.sol/TestService.json +0 -379
  684. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +0 -4
  685. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +0 -338
  686. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +0 -4
  687. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +0 -218
  688. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +0 -4
  689. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +0 -206
  690. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +0 -4
  691. package/artifacts/contracts/test/Usdc.sol/USDC.json +0 -338
  692. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +0 -4
  693. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.json +0 -10
  694. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +0 -4
  695. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +0 -174
  696. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  697. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +0 -10
  698. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +0 -4
  699. package/artifacts/contracts/types/Fee.sol/FeeLib.json +0 -218
  700. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +0 -4
  701. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +0 -111
  702. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
  703. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -153
  704. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +0 -4
  705. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +0 -10
  706. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +0 -4
  707. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +0 -92
  708. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +0 -4
  709. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +0 -30
  710. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +0 -4
  711. package/artifacts/contracts/types/StateId.sol/StateIdLib.json +0 -92
  712. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +0 -4
  713. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +0 -236
  714. package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.dbg.json +0 -4
  715. package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.json +0 -479
  716. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +0 -4
  717. package/artifacts/contracts/types/Version.sol/VersionLib.json +0 -139
  718. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +0 -4
  719. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +0 -30
  720. package/contracts/components/BaseComponent.sol +0 -88
  721. package/contracts/components/IBaseComponent.sol +0 -19
  722. package/contracts/components/IPoolComponent.sol +0 -57
  723. package/contracts/components/IProductComponent.sol +0 -19
  724. package/contracts/components/Pool.sol +0 -174
  725. package/contracts/components/Product.sol +0 -117
  726. package/contracts/experiment/errors/Require.sol +0 -38
  727. package/contracts/experiment/errors/Revert.sol +0 -44
  728. package/contracts/experiment/inheritance/A.sol +0 -53
  729. package/contracts/experiment/inheritance/B.sol +0 -28
  730. package/contracts/experiment/inheritance/C.sol +0 -34
  731. package/contracts/experiment/inheritance/IA.sol +0 -13
  732. package/contracts/experiment/inheritance/IB.sol +0 -10
  733. package/contracts/experiment/inheritance/IC.sol +0 -12
  734. package/contracts/experiment/statemachine/Dummy.sol +0 -27
  735. package/contracts/experiment/statemachine/ISM.sol +0 -25
  736. package/contracts/experiment/statemachine/README.md +0 -112
  737. package/contracts/experiment/statemachine/SM.sol +0 -57
  738. package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
  739. package/contracts/experiment/types/TypeA.sol +0 -47
  740. package/contracts/experiment/types/TypeB.sol +0 -29
  741. package/contracts/instance/IInstanceLinked.sol +0 -8
  742. package/contracts/instance/base/ComponentServiceBase.sol +0 -42
  743. package/contracts/instance/base/IInstanceBase.sol +0 -14
  744. package/contracts/instance/base/IKeyValueStore.sol +0 -49
  745. package/contracts/instance/base/IService.sol +0 -15
  746. package/contracts/instance/base/InstanceBase.sol +0 -80
  747. package/contracts/instance/base/KeyValueStore.sol +0 -156
  748. package/contracts/instance/base/Lifecycle.sol +0 -95
  749. package/contracts/instance/base/ModuleBase.sol +0 -52
  750. package/contracts/instance/base/ServiceBase.sol +0 -37
  751. package/contracts/instance/module/access/Access.sol +0 -149
  752. package/contracts/instance/module/access/IAccess.sol +0 -53
  753. package/contracts/instance/module/bundle/BundleModule.sol +0 -136
  754. package/contracts/instance/module/bundle/IBundle.sol +0 -58
  755. package/contracts/instance/module/compensation/CompensationModule.sol +0 -8
  756. package/contracts/instance/module/compensation/ICompensation.sol +0 -10
  757. package/contracts/instance/module/component/ComponentModule.sol +0 -95
  758. package/contracts/instance/module/component/IComponent.sol +0 -53
  759. package/contracts/instance/module/policy/IPolicy.sol +0 -60
  760. package/contracts/instance/module/policy/PolicyModule.sol +0 -76
  761. package/contracts/instance/module/pool/IPoolModule.sol +0 -41
  762. package/contracts/instance/module/pool/PoolModule.sol +0 -87
  763. package/contracts/instance/module/risk/IRisk.sol +0 -10
  764. package/contracts/instance/module/risk/RiskModule.sol +0 -8
  765. package/contracts/instance/module/treasury/ITreasury.sol +0 -103
  766. package/contracts/instance/module/treasury/TokenHandler.sol +0 -48
  767. package/contracts/instance/module/treasury/TreasuryModule.sol +0 -152
  768. package/contracts/instance/service/ComponentOwnerService.sol +0 -170
  769. package/contracts/instance/service/IComponentOwnerService.sol +0 -22
  770. package/contracts/instance/service/IPoolService.sol +0 -30
  771. package/contracts/instance/service/IProductService.sol +0 -58
  772. package/contracts/instance/service/PoolService.sol +0 -123
  773. package/contracts/instance/service/ProductService.sol +0 -354
  774. package/contracts/registry/IChainNft.sol +0 -21
  775. package/contracts/registry/IRegistryLinked.sol +0 -8
  776. package/contracts/shared/ERC165.sol +0 -21
  777. package/contracts/shared/IOwnable.sol +0 -6
  778. package/contracts/shared/IVersionable.sol +0 -52
  779. package/contracts/shared/Versionable.sol +0 -89
  780. package/contracts/test/TestFee.sol +0 -25
  781. package/contracts/test/TestPool.sol +0 -22
  782. package/contracts/test/TestProduct.sol +0 -44
  783. package/contracts/test/TestRegisterable.sol +0 -19
  784. package/contracts/test/TestRoleId.sol +0 -14
  785. package/contracts/test/TestService.sol +0 -32
  786. package/contracts/test/TestToken.sol +0 -26
  787. package/contracts/test/TestVersion.sol +0 -44
  788. package/contracts/test/TestVersionable.sol +0 -17
  789. package/contracts/types/ChainId.sol +0 -38
  790. package/contracts/types/Fee.sol +0 -51
  791. package/contracts/types/NftIdSet.sol +0 -60
  792. package/contracts/types/ObjectType.sol +0 -115
  793. package/contracts/types/RoleId.sol +0 -38
  794. package/contracts/types/Version.sol +0 -95
@@ -1,32 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {NftId} from "../../contracts/types/NftId.sol";
5
- import {Version, VersionLib} from "../../contracts/types/Version.sol";
6
- import {ServiceBase} from "../../contracts/instance/base/ServiceBase.sol";
7
-
8
- import {IVersionable} from "../../contracts/shared/IVersionable.sol";
9
- import {Versionable} from "../../contracts/shared/Versionable.sol";
10
-
11
- contract TestService is ServiceBase {
12
-
13
- string public constant NAME = "TestService";
14
-
15
- constructor(address registry, NftId registryNftId)
16
- ServiceBase(registry, registryNftId)
17
- // solhint-disable-next-line no-empty-blocks
18
- {}
19
-
20
- function getVersion()
21
- public
22
- pure
23
- virtual override (IVersionable, Versionable)
24
- returns(Version)
25
- {
26
- return VersionLib.toVersion(3,0,0);
27
- }
28
-
29
- function getName() external pure override returns(string memory name) {
30
- return NAME;
31
- }
32
- }
@@ -1,26 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
5
-
6
- contract TestUsdc is ERC20 {
7
-
8
- // https://etherscan.io/token/0xc719d010b63e5bbf2c0551872cd5316ed26acd83#readContract
9
- string public constant NAME = "USDC - Test";
10
- string public constant SYMBOL = "USDC";
11
- uint8 public constant DECIMALS = 6;
12
- uint256 public constant INITIAL_SUPPLY = 10**9 * 10**DECIMALS; // 1 Billion 1'000'000'000
13
- // decimals == 18 (openzeppelin erc20 default)
14
- constructor()
15
- ERC20(NAME, SYMBOL)
16
- {
17
- _mint(
18
- _msgSender(),
19
- INITIAL_SUPPLY
20
- );
21
- }
22
-
23
- function decimals() public pure override returns(uint8) {
24
- return DECIMALS;
25
- }
26
- }
@@ -1,44 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {Version, VersionPart, VersionLib} from "../types/Version.sol";
5
-
6
- contract TestVersion {
7
-
8
- function createVersion(uint major, uint minor, uint patch) external pure returns(Version) {
9
- return VersionLib.toVersion(major, minor, patch);
10
- }
11
-
12
- function createVersionPart(uint versionPart) external pure returns(VersionPart) {
13
- return VersionLib.toVersionPart(uint8(versionPart));
14
- }
15
-
16
- function getVersionParts(Version version)
17
- external
18
- pure
19
- returns(
20
- VersionPart major,
21
- VersionPart minor,
22
- VersionPart patch
23
- )
24
- {
25
- return version.toVersionParts();
26
- }
27
-
28
- function getMajorPart(Version version) external pure returns(VersionPart major) {
29
- return version.toMajorPart();
30
- }
31
-
32
- function getZeroVersion() external pure returns(Version) {
33
- return VersionLib.zeroVersion();
34
- }
35
-
36
- function isSameVersion(Version a, Version b) external pure returns(bool) {
37
- return a == b;
38
- }
39
-
40
- function isLargerVersion(Version a, Version b) external pure returns(bool) {
41
- return a > b;
42
- }
43
-
44
- }
@@ -1,17 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {Version, VersionLib} from "../../contracts/types/Version.sol";
5
- import {Versionable} from "../../contracts/shared/Versionable.sol";
6
-
7
- contract TestVersionable is Versionable {
8
-
9
- function getVersion()
10
- public
11
- pure
12
- virtual override
13
- returns(Version)
14
- {
15
- return VersionLib.toVersion(3,0,0);
16
- }
17
- }
@@ -1,38 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- /// @dev bytes5 (uint40) allows for chain ids up to 13 digits
5
- type ChainId is bytes5;
6
-
7
- // type bindings
8
- using {eqChainId as ==, neChainId as !=, ChainIdLib.toInt} for ChainId global;
9
-
10
- // general pure free functions
11
- /// @dev Converts the uint256 to a ChainId.
12
- function toChainId(uint256 chainId) pure returns (ChainId) {
13
- return ChainId.wrap(bytes5(uint40(chainId)));
14
- }
15
-
16
- /// @dev Return the ChainId for the chain the contract is deployed to
17
- function thisChainId() view returns (ChainId) {
18
- return toChainId(block.chainid);
19
- }
20
-
21
- // pure free functions for operators
22
- /// @dev Returns true if the values are equal (==).
23
- function eqChainId(ChainId a, ChainId b) pure returns (bool isSame) {
24
- return ChainId.unwrap(a) == ChainId.unwrap(b);
25
- }
26
-
27
- /// @dev Returns true if the values are not equal (!=).
28
- function neChainId(ChainId a, ChainId b) pure returns (bool isDifferent) {
29
- return ChainId.unwrap(a) != ChainId.unwrap(b);
30
- }
31
-
32
- // library functions that operate on user defined type
33
- library ChainIdLib {
34
- /// @dev Converts the ChainId to a uint256.
35
- function toInt(ChainId chainId) internal pure returns (uint256) {
36
- return uint256(uint40(ChainId.unwrap(chainId)));
37
- }
38
- }
@@ -1,51 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {UFixed, UFixedMathLib} from "./UFixed.sol";
5
-
6
- struct Fee {
7
- UFixed fractionalFee;
8
- uint256 fixedFee;
9
- }
10
-
11
- library FeeLib {
12
-
13
- function calculateFee(
14
- uint256 amount,
15
- Fee memory fee
16
- )
17
- public
18
- pure
19
- returns (
20
- uint256 feeAmount,
21
- uint256 netAmount
22
- )
23
- {
24
- UFixed fractionalAmount = UFixedMathLib.toUFixed(amount) *
25
- fee.fractionalFee;
26
- feeAmount = fractionalAmount.toInt() + fee.fixedFee;
27
- netAmount = amount - feeAmount;
28
- }
29
-
30
- /// @dev Converts the uint256 to a fee struct.
31
- function toFee(
32
- UFixed fractionalFee,
33
- uint256 fixedFee
34
- ) public pure returns (Fee memory fee) {
35
- return Fee(fractionalFee, fixedFee);
36
- }
37
-
38
- /// @dev Return the zero fee struct (0, 0)
39
- function zeroFee() public pure returns (Fee memory fee) {
40
- return Fee(UFixed.wrap(0), 0);
41
- }
42
-
43
- // pure free functions for operators
44
- function feeIsSame(Fee memory a, Fee memory b) public pure returns (bool isSame) {
45
- return a.fixedFee == b.fixedFee && a.fractionalFee == b.fractionalFee;
46
- }
47
-
48
- function feeIsZero(Fee memory fee) public pure returns (bool) {
49
- return fee.fixedFee == 0 && UFixed.unwrap(fee.fractionalFee) == 0;
50
- }
51
- }
@@ -1,60 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {NftId} from "../types/NftId.sol";
5
-
6
- // based on https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/utils/structs/EnumerableSet.sol
7
- library LibNftIdSet {
8
-
9
- struct Set {
10
- NftId[] ids;
11
- mapping(NftId nftid => uint256 index) at;
12
- }
13
-
14
- function add(Set storage set, NftId nftId) external returns(bool added) {
15
- if (set.at[nftId] == 0) {
16
- set.ids.push(nftId);
17
- set.at[nftId] = set.ids.length;
18
- return true;
19
- } else {
20
- return false;
21
- }
22
- }
23
-
24
- function remove(Set storage set, NftId nftId) external returns(bool removed) {
25
- uint256 nftIdIndex = set.at[nftId];
26
-
27
- if (nftIdIndex > 0) {
28
- uint256 toDeleteIndex = nftIdIndex - 1;
29
- uint256 lastIndex = set.ids.length - 1;
30
-
31
- if (lastIndex != toDeleteIndex) {
32
- NftId lastId = set.ids[lastIndex];
33
- set.ids[toDeleteIndex] = lastId;
34
- set.at[lastId] = nftIdIndex; // Replace lastValue's index to valueIndex
35
- }
36
-
37
- set.ids.pop();
38
- delete set.at[nftId];
39
- return true;
40
- } else {
41
- return false;
42
- }
43
- }
44
-
45
- function isEmpty(Set storage set) external view returns(bool empty) {
46
- return set.ids.length == 0;
47
- }
48
-
49
- function contains(Set storage set, NftId nftId) external view returns(bool inSet) {
50
- return set.at[nftId] > 0;
51
- }
52
-
53
- function getLength(Set storage set) external view returns(uint256 length) {
54
- return set.ids.length;
55
- }
56
-
57
- function getElementAt(Set storage set, uint256 index) external view returns(NftId nftId) {
58
- return set.ids[index];
59
- }
60
- }
@@ -1,115 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- type ObjectType is uint8;
5
-
6
- // type bindings
7
- using {
8
- eqObjectType as ==,
9
- neObjectType as !=,
10
- ObjectTypeLib.toInt,
11
- ObjectTypeLib.gtz
12
- } for ObjectType global;
13
-
14
- // general pure free functions
15
-
16
- function PROTOCOL() pure returns (ObjectType) {
17
- return toObjectType(10);
18
- }
19
-
20
- function REGISTRY() pure returns (ObjectType) {
21
- return toObjectType(20);
22
- }
23
-
24
- function TOKEN() pure returns (ObjectType) {
25
- return toObjectType(30);
26
- }
27
-
28
- function SERVICE() pure returns (ObjectType) {
29
- return toObjectType(40);
30
- }
31
-
32
- function INSTANCE() pure returns (ObjectType) {
33
- return toObjectType(50);
34
- }
35
-
36
- function STAKE() pure returns (ObjectType) {
37
- return toObjectType(60);
38
- }
39
-
40
- function PRODUCT() pure returns (ObjectType) {
41
- return toObjectType(100);
42
- }
43
-
44
- function DISTRIBUTOR() pure returns (ObjectType) {
45
- return toObjectType(110);
46
- }
47
-
48
- function ORACLE() pure returns (ObjectType) {
49
- return toObjectType(120);
50
- }
51
-
52
- function POOL() pure returns (ObjectType) {
53
- return toObjectType(130);
54
- }
55
-
56
- function POLICY() pure returns (ObjectType) {
57
- return toObjectType(200);
58
- }
59
-
60
- function BUNDLE() pure returns (ObjectType) {
61
- return toObjectType(210);
62
- }
63
-
64
- function CLAIM() pure returns (ObjectType) {
65
- return toObjectType(201);
66
- }
67
-
68
- function PAYOUT() pure returns (ObjectType) {
69
- return toObjectType(202);
70
- }
71
-
72
- /// @dev Converts the uint8 to a ObjectType.
73
- function toObjectType(uint256 objectType) pure returns (ObjectType) {
74
- return ObjectType.wrap(uint8(objectType));
75
- }
76
-
77
- /// @dev Return the ObjectType zero (0)
78
- function zeroObjectType() pure returns (ObjectType) {
79
- return ObjectType.wrap(0);
80
- }
81
-
82
- // pure free functions for operators
83
- function eqObjectType(ObjectType a, ObjectType b) pure returns (bool isSame) {
84
- return ObjectType.unwrap(a) == ObjectType.unwrap(b);
85
- }
86
-
87
- function neObjectType(
88
- ObjectType a,
89
- ObjectType b
90
- ) pure returns (bool isDifferent) {
91
- return ObjectType.unwrap(a) != ObjectType.unwrap(b);
92
- }
93
-
94
- // library functions that operate on user defined type
95
- library ObjectTypeLib {
96
- /// @dev Converts the NftId to a uint256.
97
- function toInt(ObjectType objectType) public pure returns (uint96) {
98
- return uint96(ObjectType.unwrap(objectType));
99
- }
100
-
101
- /// @dev Returns true if the value is non-zero (> 0).
102
- function gtz(ObjectType a) public pure returns (bool) {
103
- return ObjectType.unwrap(a) > 0;
104
- }
105
-
106
- /// @dev Returns true if the value is zero (== 0).
107
- function eqz(ObjectType a) public pure returns (bool) {
108
- return ObjectType.unwrap(a) == 0;
109
- }
110
-
111
- /// @dev Returns true if the values are equal (==).
112
- function eq(ObjectType a, ObjectType b) public pure returns (bool isSame) {
113
- return eqObjectType(a, b);
114
- }
115
- }
@@ -1,38 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- type RoleId is bytes8;
5
-
6
- // type bindings
7
- using {
8
- eqRoleId as ==,
9
- neRoleId as !=
10
- } for RoleId global;
11
-
12
- // general pure free functions
13
- function DISTRIBUTOR_OWNER_ROLE_NAME() pure returns (string memory) { return "DistributorOwnerRole"; }
14
- function ORACLE_OWNER_ROLE_NAME() pure returns (string memory) { return "OracleOwnerRole"; }
15
- function POOL_OWNER_ROLE_NAME() pure returns (string memory) { return "PoolOwnerRole"; }
16
- function PRODUCT_OWNER_ROLE_NAME() pure returns (string memory) { return "ProductOwnerRole"; }
17
-
18
- function DISTRIBUTOR_OWNER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId("DistributorOwnerRole"); }
19
- function ORACLE_OWNER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId("OracleOwnerRole"); }
20
- function POOL_OWNER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId("PoolOwnerRole"); }
21
- function PRODUCT_OWNER_ROLE() pure returns (RoleId) { return RoleIdLib.toRoleId("ProductOwnerRole"); }
22
-
23
- // @dev Returns true iff role ids a and b are identical
24
- function eqRoleId(RoleId a, RoleId b) pure returns (bool isSame) {
25
- return RoleId.unwrap(a) == RoleId.unwrap(b);
26
- }
27
-
28
- // @dev Returns true iff role ids a and b are different
29
- function neRoleId(RoleId a, RoleId b) pure returns (bool isDifferent) {
30
- return RoleId.unwrap(a) != RoleId.unwrap(b);
31
- }
32
-
33
- library RoleIdLib {
34
- // @dev Converts a role string into a role id.
35
- function toRoleId(string memory role) public pure returns (RoleId) {
36
- return RoleId.wrap(bytes8(keccak256(abi.encode(role))));
37
- }
38
- }
@@ -1,95 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- type VersionPart is uint8;
5
-
6
- using {
7
- versionPartGt as >,
8
- versionPartEq as ==,
9
- VersionPartLib.toInt
10
- }
11
- for VersionPart global;
12
-
13
- function versionPartGt(VersionPart a, VersionPart b) pure returns(bool isGreaterThan) { return VersionPart.unwrap(a) > VersionPart.unwrap(b); }
14
- function versionPartEq(VersionPart a, VersionPart b) pure returns(bool isSame) { return VersionPart.unwrap(a) == VersionPart.unwrap(b); }
15
-
16
- library VersionPartLib {
17
- function toInt(VersionPart x) external pure returns(uint) { return VersionPart.unwrap(x); }
18
- }
19
-
20
- type Version is uint24; // contains major,minor,patch version parts
21
-
22
- using {
23
- versionGt as >,
24
- versionEq as ==,
25
- VersionLib.toInt,
26
- VersionLib.toMajorPart,
27
- VersionLib.toVersionParts
28
- }
29
- for Version global;
30
-
31
- function versionGt(Version a, Version b) pure returns(bool isGreaterThan) { return Version.unwrap(a) > Version.unwrap(b); }
32
- function versionEq(Version a, Version b) pure returns(bool isSame) { return Version.unwrap(a) == Version.unwrap(b); }
33
-
34
- library VersionLib {
35
- function toInt(Version version) external pure returns(uint) { return Version.unwrap(version); }
36
-
37
- function toMajorPart(Version version)
38
- external
39
- pure
40
- returns(VersionPart major)
41
- {
42
- uint24 versionInt = Version.unwrap(version);
43
- uint8 majorInt = uint8(versionInt >> 16);
44
- return VersionPart.wrap(majorInt);
45
- }
46
-
47
- function toVersionParts(Version version)
48
- external
49
- pure
50
- returns(
51
- VersionPart major,
52
- VersionPart minor,
53
- VersionPart patch
54
- )
55
- {
56
- uint24 versionInt = Version.unwrap(version);
57
- uint8 majorInt = uint8(versionInt >> 16);
58
-
59
- versionInt -= majorInt << 16;
60
- uint8 minorInt = uint8(versionInt >> 8);
61
- uint8 patchInt = uint8(versionInt - (minorInt << 8));
62
-
63
- return (
64
- VersionPart.wrap(majorInt),
65
- VersionPart.wrap(minorInt),
66
- VersionPart.wrap(patchInt)
67
- );
68
- }
69
-
70
- function toVersionPart(uint256 versionPart) external pure returns(VersionPart) {
71
- return VersionPart.wrap(uint8(versionPart));
72
- }
73
-
74
- function toVersion(
75
- uint256 major,
76
- uint256 minor,
77
- uint256 patch
78
- )
79
- external
80
- pure
81
- returns(Version)
82
- {
83
- require(
84
- major < 256 && minor < 256 && patch < 256,
85
- "ERROR:VRS-010:VERSION_PART_TOO_BIG");
86
-
87
- return Version.wrap(
88
- uint24(
89
- (major << 16) + (minor << 8) + patch));
90
- }
91
-
92
- function zeroVersion() external pure returns(Version) {
93
- return Version.wrap(0);
94
- }
95
- }