@etherisc/gif-next 0.0.2-adeb008-426 → 0.0.2-ae6744f-037

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 (696) hide show
  1. package/README.md +83 -22
  2. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
  3. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +1293 -0
  4. package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.dbg.json +4 -0
  5. package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.json +24 -0
  6. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +4 -0
  7. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +1206 -0
  8. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +4 -0
  9. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +414 -0
  10. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +4 -0
  11. package/artifacts/contracts/{instance/module/ISetup.sol/ISetup.json → authorization/IAccess.sol/IAccess.json} +2 -2
  12. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
  13. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +1060 -0
  14. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +4 -0
  15. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +295 -0
  16. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
  17. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +167 -0
  18. package/artifacts/contracts/authorization/ReleaseAccessManager.sol/ReleaseAccessManager.dbg.json +4 -0
  19. package/artifacts/contracts/authorization/ReleaseAccessManager.sol/ReleaseAccessManager.json +1196 -0
  20. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
  21. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +253 -0
  22. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +4 -0
  23. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +1292 -0
  24. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +4 -0
  25. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +470 -0
  26. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
  27. package/artifacts/contracts/{components/IDistributionComponent.sol/IDistributionComponent.json → distribution/Distribution.sol/Distribution.json} +333 -316
  28. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
  29. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1494 -0
  30. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  31. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +862 -0
  32. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  33. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +885 -0
  34. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  35. package/artifacts/contracts/{instance/service → distribution}/IDistributionService.sol/IDistributionService.json +221 -327
  36. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +4 -0
  37. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +22 -0
  38. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +4 -0
  39. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +1441 -0
  40. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
  41. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +502 -0
  42. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
  43. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +1991 -0
  44. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
  45. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +470 -0
  46. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +4 -0
  47. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +376 -0
  48. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +4 -0
  49. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +1429 -0
  50. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +4 -0
  51. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +470 -0
  52. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
  53. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1145 -0
  54. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
  55. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1605 -0
  56. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +4 -0
  57. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +502 -0
  58. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
  59. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2293 -0
  60. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +4 -0
  61. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +470 -0
  62. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
  63. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +808 -0
  64. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  65. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +350 -1997
  66. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  67. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +189 -113
  68. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  69. package/artifacts/contracts/instance/Instance.sol/Instance.json +406 -2791
  70. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  71. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1684 -0
  72. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
  73. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +574 -0
  74. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  75. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1328 -331
  76. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  77. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +264 -425
  78. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  79. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +156 -151
  80. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  81. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3668 -0
  82. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +4 -0
  83. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +810 -0
  84. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +4 -0
  85. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +318 -0
  86. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +4 -0
  87. package/artifacts/contracts/instance/{Cloneable.sol → base/Cloneable.sol}/Cloneable.json +1 -54
  88. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +4 -0
  89. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +10 -0
  90. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +4 -0
  91. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +223 -0
  92. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
  93. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +181 -0
  94. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  95. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +8 -116
  96. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  97. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  98. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  99. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  100. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  101. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +4 -0
  102. package/artifacts/contracts/mock/Dip.sol/Dip.json +376 -0
  103. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +4 -0
  104. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +929 -0
  105. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +4 -0
  106. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +478 -0
  107. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
  108. package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +52 -0
  109. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
  110. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +744 -0
  111. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
  112. package/artifacts/contracts/{instance/service/IPolicyService.sol/IPolicyService.json → oracle/IOracleService.sol/IOracleService.json} +282 -179
  113. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
  114. package/artifacts/contracts/{components/Component.sol/Component.json → oracle/Oracle.sol/Oracle.json} +256 -253
  115. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
  116. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +990 -0
  117. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
  118. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +766 -0
  119. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +4 -0
  120. package/artifacts/contracts/{components/Pool.sol/Pool.json → pool/BasicPool.sol/BasicPool.json} +325 -479
  121. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +4 -0
  122. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +502 -0
  123. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +4 -0
  124. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1360 -0
  125. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  126. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +822 -0
  127. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
  128. package/artifacts/contracts/{instance/service → pool}/IBundleService.sol/IBundleService.json +323 -60
  129. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
  130. package/artifacts/contracts/{components/IProductComponent.sol/IProductComponent.json → pool/IPoolComponent.sol/IPoolComponent.json} +333 -286
  131. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
  132. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1285 -0
  133. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
  134. package/artifacts/contracts/{components/IPoolComponent.sol/IPoolComponent.json → pool/Pool.sol/Pool.json} +353 -420
  135. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
  136. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1619 -0
  137. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  138. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +794 -0
  139. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  140. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +806 -0
  141. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  142. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +730 -0
  143. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
  144. package/artifacts/contracts/{components/Product.sol/Product.json → product/BasicProduct.sol/BasicProduct.json} +391 -442
  145. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +4 -0
  146. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +470 -0
  147. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
  148. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1439 -0
  149. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  150. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +858 -0
  151. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  152. package/artifacts/contracts/{instance/service → product}/IApplicationService.sol/IApplicationService.json +117 -166
  153. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
  154. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +942 -0
  155. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  156. package/artifacts/contracts/{instance/service/IPoolService.sol/IPoolService.json → product/IPolicyService.sol/IPolicyService.json} +485 -385
  157. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
  158. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +578 -0
  159. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
  160. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +973 -0
  161. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
  162. package/artifacts/contracts/{instance/service/IProductService.sol/IProductService.json → product/IRiskService.sol/IRiskService.json} +41 -62
  163. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
  164. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1313 -0
  165. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  166. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +810 -0
  167. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
  168. package/artifacts/contracts/product/PricingService.sol/PricingService.json +923 -0
  169. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  170. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +786 -0
  171. package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
  172. package/artifacts/contracts/product/Product.sol/Product.json +1074 -0
  173. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
  174. package/artifacts/contracts/product/RiskService.sol/RiskService.json +638 -0
  175. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
  176. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +718 -0
  177. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  178. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +59 -16
  179. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  180. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +457 -27
  181. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  182. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +263 -110
  183. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  184. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +5 -18
  185. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  186. package/artifacts/contracts/registry/Registry.sol/Registry.json +949 -128
  187. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
  188. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1899 -0
  189. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  190. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +349 -245
  191. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  192. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +161 -94
  193. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +4 -0
  194. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +205 -0
  195. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
  196. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1067 -0
  197. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
  198. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +272 -0
  199. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  200. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +316 -153
  201. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
  202. package/artifacts/contracts/{instance/base/ComponentService.sol/ComponentService.json → shared/Component.sol/Component.json} +274 -204
  203. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
  204. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1908 -0
  205. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
  206. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +850 -0
  207. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
  208. package/artifacts/contracts/{instance/service/IClaimService.sol/IClaimService.json → shared/ComponentVerifyingService.sol/ComponentVerifyingService.json} +124 -125
  209. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
  210. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +488 -0
  211. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +4 -0
  212. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +24 -0
  213. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +4 -0
  214. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.json +30 -0
  215. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
  216. package/artifacts/contracts/{components → shared}/IComponent.sol/IComponent.json +128 -131
  217. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
  218. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +1467 -0
  219. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
  220. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +679 -0
  221. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
  222. package/artifacts/contracts/{instance/base → shared}/IKeyValueStore.sol/IKeyValueStore.json +95 -14
  223. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
  224. package/artifacts/contracts/{instance/base → shared}/ILifecycle.sol/ILifecycle.json +35 -4
  225. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  226. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +19 -10
  227. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  228. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +59 -13
  229. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  230. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +28 -6
  231. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  232. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +0 -13
  233. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  234. package/artifacts/contracts/shared/IService.sol/IService.json +46 -6
  235. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
  236. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +53 -0
  237. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
  238. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +767 -0
  239. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
  240. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +538 -0
  241. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
  242. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +174 -0
  243. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
  244. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
  245. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  246. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +28 -70
  247. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  248. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +35 -85
  249. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  250. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +69 -99
  251. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  252. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -28
  253. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  254. package/artifacts/contracts/shared/Service.sol/Service.json +58 -112
  255. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  256. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +734 -8
  257. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +4 -0
  258. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +395 -0
  259. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
  260. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +172 -0
  261. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
  262. package/artifacts/contracts/{components/Distribution.sol/Distribution.json → staking/IStaking.sol/IStaking.json} +695 -607
  263. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
  264. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +1043 -0
  265. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
  266. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +440 -0
  267. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
  268. package/artifacts/contracts/staking/Staking.sol/Staking.json +1816 -0
  269. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
  270. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +205 -0
  271. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
  272. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +780 -0
  273. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
  274. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +587 -0
  275. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
  276. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1265 -0
  277. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
  278. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +734 -0
  279. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
  280. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2283 -0
  281. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
  282. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +607 -0
  283. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
  284. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +10 -0
  285. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
  286. package/artifacts/contracts/type/Amount.sol/AmountLib.json +398 -0
  287. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
  288. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +225 -0
  289. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  290. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +203 -0
  291. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  292. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +104 -0
  293. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
  294. package/artifacts/contracts/type/Fee.sol/FeeLib.json +317 -0
  295. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
  296. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +125 -0
  297. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +4 -0
  298. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +33 -0
  299. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
  300. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +228 -0
  301. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
  302. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +33 -0
  303. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
  304. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +239 -0
  305. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  306. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
  307. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
  308. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
  309. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
  310. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
  311. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
  312. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +180 -0
  313. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
  314. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +369 -0
  315. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
  316. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +246 -0
  317. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
  318. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +129 -0
  319. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
  320. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
  321. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
  322. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +105 -0
  323. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
  324. package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
  325. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
  326. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +312 -0
  327. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
  328. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +548 -0
  329. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
  330. package/artifacts/contracts/type/Version.sol/VersionLib.json +177 -0
  331. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
  332. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +68 -0
  333. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
  334. package/artifacts/contracts/{shared → upgradeability}/IVersionable.sol/IVersionable.json +1 -1
  335. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  336. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +618 -0
  337. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  338. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
  339. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
  340. package/artifacts/contracts/{shared → upgradeability}/Versionable.sol/Versionable.json +1 -1
  341. package/contracts/authorization/AccessAdmin.sol +615 -0
  342. package/contracts/authorization/AccessManagerCloneable.sol +16 -0
  343. package/contracts/authorization/Authorization.sol +289 -0
  344. package/contracts/authorization/IAccess.sol +49 -0
  345. package/contracts/authorization/IAccessAdmin.sol +137 -0
  346. package/contracts/authorization/IAuthorization.sol +60 -0
  347. package/contracts/authorization/IServiceAuthorization.sol +40 -0
  348. package/contracts/authorization/ReleaseAccessManager.sol +38 -0
  349. package/contracts/authorization/ServiceAuthorization.sol +106 -0
  350. package/contracts/distribution/BasicDistribution.sol +139 -0
  351. package/contracts/distribution/BasicDistributionAuthorization.sol +47 -0
  352. package/contracts/{components → distribution}/Distribution.sol +170 -163
  353. package/contracts/distribution/DistributionService.sol +354 -0
  354. package/contracts/distribution/DistributionServiceManager.sol +39 -0
  355. package/contracts/distribution/IDistributionComponent.sol +52 -0
  356. package/contracts/{instance/service → distribution}/IDistributionService.sol +35 -34
  357. package/contracts/examples/fire/DamageLevel.sol +59 -0
  358. package/contracts/examples/fire/FirePool.sol +90 -0
  359. package/contracts/examples/fire/FirePoolAuthorization.sol +35 -0
  360. package/contracts/examples/fire/FireProduct.sol +436 -0
  361. package/contracts/examples/fire/FireProductAuthorization.sol +45 -0
  362. package/contracts/examples/fire/FireUSD.sol +26 -0
  363. package/contracts/examples/unpermissioned/SimpleDistribution.sol +57 -0
  364. package/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol +28 -0
  365. package/contracts/examples/unpermissioned/SimpleOracle.sol +137 -0
  366. package/contracts/examples/unpermissioned/SimplePool.sol +107 -0
  367. package/contracts/examples/unpermissioned/SimplePoolAuthorization.sol +28 -0
  368. package/contracts/examples/unpermissioned/SimpleProduct.sol +352 -0
  369. package/contracts/examples/unpermissioned/SimpleProductAuthorization.sol +28 -0
  370. package/contracts/instance/BundleSet.sol +130 -0
  371. package/contracts/instance/IInstance.sol +45 -72
  372. package/contracts/instance/IInstanceService.sol +37 -39
  373. package/contracts/instance/Instance.sol +162 -250
  374. package/contracts/instance/InstanceAdmin.sol +288 -0
  375. package/contracts/instance/InstanceAuthorizationV3.sol +218 -0
  376. package/contracts/instance/InstanceReader.sol +351 -61
  377. package/contracts/instance/InstanceService.sol +250 -353
  378. package/contracts/instance/InstanceServiceManager.sol +14 -29
  379. package/contracts/instance/InstanceStore.sol +287 -0
  380. package/contracts/instance/RiskSet.sol +119 -0
  381. package/contracts/instance/base/BalanceStore.sol +123 -0
  382. package/contracts/instance/base/Cloneable.sol +28 -0
  383. package/contracts/instance/base/ObjectCounter.sol +20 -0
  384. package/contracts/instance/base/ObjectLifecycle.sol +111 -0
  385. package/contracts/instance/base/ObjectSet.sol +78 -0
  386. package/contracts/instance/module/IAccess.sol +4 -12
  387. package/contracts/instance/module/IBundle.sol +6 -9
  388. package/contracts/instance/module/IComponents.sol +27 -18
  389. package/contracts/instance/module/IDistribution.sol +6 -6
  390. package/contracts/instance/module/IPolicy.sol +48 -35
  391. package/contracts/instance/module/IRisk.sol +2 -1
  392. package/contracts/{test/Usdc.sol → mock/Dip.sol} +6 -6
  393. package/contracts/oracle/BasicOracle.sol +47 -0
  394. package/contracts/oracle/BasicOracleAuthorization.sol +46 -0
  395. package/contracts/oracle/IOracle.sol +36 -0
  396. package/contracts/oracle/IOracleComponent.sol +33 -0
  397. package/contracts/oracle/IOracleService.sol +66 -0
  398. package/contracts/oracle/Oracle.sol +156 -0
  399. package/contracts/oracle/OracleService.sol +309 -0
  400. package/contracts/oracle/OracleServiceManager.sol +39 -0
  401. package/contracts/pool/BasicPool.sol +175 -0
  402. package/contracts/pool/BasicPoolAuthorization.sol +68 -0
  403. package/contracts/pool/BundleService.sol +423 -0
  404. package/contracts/pool/BundleServiceManager.sol +39 -0
  405. package/contracts/pool/IBundleService.sol +122 -0
  406. package/contracts/pool/IPoolComponent.sol +62 -0
  407. package/contracts/pool/IPoolService.sol +153 -0
  408. package/contracts/pool/Pool.sol +345 -0
  409. package/contracts/pool/PoolService.sol +612 -0
  410. package/contracts/pool/PoolServiceManager.sol +39 -0
  411. package/contracts/product/ApplicationService.sol +259 -0
  412. package/contracts/{instance/service → product}/ApplicationServiceManager.sol +12 -9
  413. package/contracts/product/BasicProduct.sol +49 -0
  414. package/contracts/product/BasicProductAuthorization.sol +41 -0
  415. package/contracts/product/ClaimService.sol +614 -0
  416. package/contracts/{instance/service → product}/ClaimServiceManager.sol +12 -9
  417. package/contracts/{instance/service → product}/IApplicationService.sol +19 -35
  418. package/contracts/product/IClaimService.sol +123 -0
  419. package/contracts/product/IPolicyService.sol +90 -0
  420. package/contracts/product/IPricingService.sol +39 -0
  421. package/contracts/product/IProductComponent.sol +59 -0
  422. package/contracts/product/IRiskService.sol +33 -0
  423. package/contracts/product/PolicyService.sol +733 -0
  424. package/contracts/product/PolicyServiceManager.sol +39 -0
  425. package/contracts/product/PricingService.sol +300 -0
  426. package/contracts/product/PricingServiceManager.sol +39 -0
  427. package/contracts/product/Product.sol +427 -0
  428. package/contracts/product/RiskService.sol +107 -0
  429. package/contracts/product/RiskServiceManager.sol +39 -0
  430. package/contracts/registry/ChainNft.sol +79 -40
  431. package/contracts/registry/IRegistry.sol +98 -26
  432. package/contracts/registry/IRegistryService.sol +34 -40
  433. package/contracts/registry/ITransferInterceptor.sol +1 -2
  434. package/contracts/registry/Registry.sol +453 -195
  435. package/contracts/registry/RegistryAdmin.sol +457 -0
  436. package/contracts/registry/RegistryService.sol +87 -128
  437. package/contracts/registry/RegistryServiceManager.sol +23 -32
  438. package/contracts/registry/ReleaseLifecycle.sol +30 -0
  439. package/contracts/registry/ReleaseRegistry.sol +486 -0
  440. package/contracts/registry/ServiceAuthorizationV3.sol +176 -0
  441. package/contracts/registry/TokenRegistry.sol +261 -62
  442. package/contracts/shared/Component.sol +219 -0
  443. package/contracts/shared/ComponentService.sol +869 -0
  444. package/contracts/shared/ComponentServiceManager.sol +38 -0
  445. package/contracts/shared/ComponentVerifyingService.sol +128 -0
  446. package/contracts/shared/ContractLib.sol +224 -0
  447. package/contracts/shared/IComponent.sol +62 -0
  448. package/contracts/shared/IComponentService.sol +134 -0
  449. package/contracts/shared/IInstanceLinkedComponent.sol +30 -0
  450. package/contracts/{instance/base → shared}/IKeyValueStore.sol +16 -11
  451. package/contracts/{instance/base → shared}/ILifecycle.sol +5 -4
  452. package/contracts/shared/INftOwnable.sol +4 -2
  453. package/contracts/shared/IPolicyHolder.sol +23 -14
  454. package/contracts/shared/IRegisterable.sol +11 -0
  455. package/contracts/shared/IRegistryLinked.sol +0 -1
  456. package/contracts/shared/IService.sol +12 -3
  457. package/contracts/shared/{ERC165.sol → InitializableERC165.sol} +4 -4
  458. package/contracts/shared/InstanceLinkedComponent.sol +197 -0
  459. package/contracts/shared/KeyValueStore.sol +131 -0
  460. package/contracts/shared/Lifecycle.sol +88 -0
  461. package/contracts/shared/NftIdSet.sol +65 -0
  462. package/contracts/shared/NftOwnable.sol +32 -25
  463. package/contracts/shared/PolicyHolder.sol +22 -41
  464. package/contracts/shared/Registerable.sol +32 -23
  465. package/contracts/shared/RegistryLinked.sol +9 -19
  466. package/contracts/shared/Service.sol +48 -36
  467. package/contracts/shared/TokenHandler.sol +368 -12
  468. package/contracts/shared/TokenHandlerDeployerLib.sol +20 -0
  469. package/contracts/staking/IStaking.sol +173 -0
  470. package/contracts/staking/IStakingService.sol +157 -0
  471. package/contracts/staking/StakeManagerLib.sol +224 -0
  472. package/contracts/staking/Staking.sol +515 -0
  473. package/contracts/staking/StakingLifecycle.sol +23 -0
  474. package/contracts/staking/StakingManager.sol +52 -0
  475. package/contracts/staking/StakingReader.sol +190 -0
  476. package/contracts/staking/StakingService.sol +440 -0
  477. package/contracts/staking/StakingServiceManager.sol +44 -0
  478. package/contracts/staking/StakingStore.sol +605 -0
  479. package/contracts/staking/TargetManagerLib.sol +211 -0
  480. package/contracts/{types → type}/AddressSet.sol +1 -1
  481. package/contracts/type/Amount.sol +150 -0
  482. package/contracts/{types → type}/Blocknumber.sol +26 -3
  483. package/contracts/{types → type}/ClaimId.sol +31 -3
  484. package/contracts/{types → type}/Fee.sol +24 -22
  485. package/contracts/{types → type}/Key32.sol +2 -2
  486. package/contracts/type/Key32Set.sol +62 -0
  487. package/contracts/{types → type}/NftId.sol +21 -16
  488. package/contracts/{types → type}/NftIdSet.sol +2 -2
  489. package/contracts/type/ObjectType.sol +278 -0
  490. package/contracts/type/PayoutId.sol +82 -0
  491. package/contracts/{types → type}/Referral.sol +2 -1
  492. package/contracts/type/RequestId.sol +75 -0
  493. package/contracts/{types → type}/RiskId.sol +31 -5
  494. package/contracts/type/RoleId.sol +162 -0
  495. package/contracts/type/Seconds.sol +101 -0
  496. package/contracts/type/Selector.sol +102 -0
  497. package/contracts/{types → type}/StateId.sol +47 -4
  498. package/contracts/type/String.sol +53 -0
  499. package/contracts/{types → type}/Timestamp.sol +21 -2
  500. package/contracts/{types → type}/UFixed.sol +40 -121
  501. package/contracts/{types → type}/Version.sol +4 -2
  502. package/contracts/{shared → upgradeability}/IVersionable.sol +1 -1
  503. package/contracts/{shared → upgradeability}/ProxyManager.sol +93 -30
  504. package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
  505. package/contracts/{shared → upgradeability}/Versionable.sol +3 -3
  506. package/package.json +11 -7
  507. package/artifacts/contracts/components/Component.sol/Component.dbg.json +0 -4
  508. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +0 -4
  509. package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +0 -4
  510. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +0 -4
  511. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +0 -4
  512. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +0 -4
  513. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
  514. package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
  515. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +0 -4
  516. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +0 -1206
  517. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
  518. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -778
  519. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +0 -4
  520. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +0 -4
  521. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +0 -1330
  522. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +0 -4
  523. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +0 -256
  524. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +0 -4
  525. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
  526. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +0 -4
  527. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
  528. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +0 -532
  529. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
  530. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -194
  531. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +0 -4
  532. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +0 -4
  533. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.json +0 -10
  534. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +0 -4
  535. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +0 -1039
  536. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +0 -4
  537. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +0 -673
  538. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +0 -4
  539. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +0 -1231
  540. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +0 -4
  541. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +0 -721
  542. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +0 -4
  543. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +0 -817
  544. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +0 -4
  545. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +0 -641
  546. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +0 -4
  547. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +0 -1798
  548. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +0 -4
  549. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +0 -805
  550. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +0 -4
  551. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +0 -4
  552. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +0 -4
  553. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +0 -4
  554. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +0 -4
  555. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +0 -4
  556. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +0 -4
  557. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +0 -4
  558. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +0 -1092
  559. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +0 -4
  560. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +0 -697
  561. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +0 -4
  562. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +0 -1237
  563. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +0 -4
  564. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +0 -661
  565. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
  566. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -840
  567. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
  568. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +0 -653
  569. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +0 -4
  570. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +0 -285
  571. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
  572. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -559
  573. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +0 -4
  574. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +0 -107
  575. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +0 -4
  576. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +0 -73
  577. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
  578. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
  579. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +0 -582
  580. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
  581. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +0 -129
  582. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
  583. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +0 -4
  584. package/artifacts/contracts/test/TestFee.sol/TestFee.json +0 -119
  585. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +0 -4
  586. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +0 -383
  587. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +0 -4
  588. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +0 -116
  589. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +0 -4
  590. package/artifacts/contracts/test/TestService.sol/TestService.json +0 -596
  591. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +0 -4
  592. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +0 -376
  593. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +0 -4
  594. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +0 -218
  595. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +0 -4
  596. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +0 -104
  597. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +0 -4
  598. package/artifacts/contracts/test/Usdc.sol/USDC.json +0 -376
  599. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +0 -4
  600. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.json +0 -10
  601. package/artifacts/contracts/types/Amount.sol/AmountLib.dbg.json +0 -4
  602. package/artifacts/contracts/types/Amount.sol/AmountLib.json +0 -161
  603. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +0 -4
  604. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +0 -174
  605. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  606. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +0 -10
  607. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.dbg.json +0 -4
  608. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +0 -100
  609. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +0 -4
  610. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +0 -104
  611. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +0 -4
  612. package/artifacts/contracts/types/Fee.sol/FeeLib.json +0 -288
  613. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +0 -4
  614. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +0 -125
  615. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
  616. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -166
  617. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +0 -4
  618. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +0 -33
  619. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +0 -4
  620. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +0 -100
  621. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +0 -4
  622. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +0 -92
  623. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.dbg.json +0 -4
  624. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +0 -100
  625. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +0 -4
  626. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +0 -142
  627. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +0 -4
  628. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +0 -86
  629. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +0 -4
  630. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +0 -156
  631. package/artifacts/contracts/types/Seconds.sol/SecondsLib.dbg.json +0 -4
  632. package/artifacts/contracts/types/Seconds.sol/SecondsLib.json +0 -124
  633. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +0 -4
  634. package/artifacts/contracts/types/StateId.sol/StateIdLib.json +0 -92
  635. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +0 -4
  636. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +0 -267
  637. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +0 -4
  638. package/artifacts/contracts/types/UFixed.sol/MathLib.json +0 -10
  639. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +0 -4
  640. package/artifacts/contracts/types/UFixed.sol/UFixedLib.json +0 -479
  641. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +0 -4
  642. package/artifacts/contracts/types/Version.sol/VersionLib.json +0 -177
  643. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +0 -4
  644. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +0 -49
  645. package/contracts/components/Component.sol +0 -253
  646. package/contracts/components/IComponent.sol +0 -76
  647. package/contracts/components/IDistributionComponent.sol +0 -71
  648. package/contracts/components/IPoolComponent.sol +0 -113
  649. package/contracts/components/IProductComponent.sol +0 -40
  650. package/contracts/components/Pool.sol +0 -303
  651. package/contracts/components/Product.sol +0 -293
  652. package/contracts/instance/AccessManagerUpgradeableInitializeable.sol +0 -13
  653. package/contracts/instance/BundleManager.sol +0 -127
  654. package/contracts/instance/Cloneable.sol +0 -51
  655. package/contracts/instance/InstanceAccessManager.sol +0 -527
  656. package/contracts/instance/ObjectManager.sol +0 -82
  657. package/contracts/instance/base/ComponentService.sol +0 -121
  658. package/contracts/instance/base/KeyValueStore.sol +0 -180
  659. package/contracts/instance/base/Lifecycle.sol +0 -109
  660. package/contracts/instance/module/ISetup.sol +0 -33
  661. package/contracts/instance/module/ITreasury.sol +0 -23
  662. package/contracts/instance/service/ApplicationService.sol +0 -350
  663. package/contracts/instance/service/BundleService.sol +0 -431
  664. package/contracts/instance/service/BundleServiceManager.sol +0 -51
  665. package/contracts/instance/service/ClaimService.sol +0 -151
  666. package/contracts/instance/service/DistributionService.sol +0 -435
  667. package/contracts/instance/service/DistributionServiceManager.sol +0 -51
  668. package/contracts/instance/service/IBundleService.sol +0 -93
  669. package/contracts/instance/service/IClaimService.sol +0 -61
  670. package/contracts/instance/service/IPolicyService.sol +0 -72
  671. package/contracts/instance/service/IPoolService.sol +0 -99
  672. package/contracts/instance/service/IProductService.sol +0 -40
  673. package/contracts/instance/service/PolicyService.sol +0 -362
  674. package/contracts/instance/service/PolicyServiceManager.sol +0 -54
  675. package/contracts/instance/service/PoolService.sol +0 -303
  676. package/contracts/instance/service/PoolServiceManager.sol +0 -51
  677. package/contracts/instance/service/ProductService.sol +0 -210
  678. package/contracts/instance/service/ProductServiceManager.sol +0 -54
  679. package/contracts/registry/RegistryAccessManager.sol +0 -216
  680. package/contracts/registry/ReleaseManager.sol +0 -323
  681. package/contracts/shared/ContractDeployerLib.sol +0 -72
  682. package/contracts/test/TestFee.sol +0 -25
  683. package/contracts/test/TestRegisterable.sol +0 -18
  684. package/contracts/test/TestRoleId.sol +0 -14
  685. package/contracts/test/TestService.sol +0 -25
  686. package/contracts/test/TestToken.sol +0 -26
  687. package/contracts/test/TestVersion.sol +0 -44
  688. package/contracts/test/TestVersionable.sol +0 -17
  689. package/contracts/types/Amount.sol +0 -60
  690. package/contracts/types/ChainId.sol +0 -38
  691. package/contracts/types/NumberId.sol +0 -52
  692. package/contracts/types/ObjectType.sol +0 -157
  693. package/contracts/types/PayoutId.sol +0 -54
  694. package/contracts/types/RoleId.sol +0 -97
  695. package/contracts/types/Seconds.sol +0 -54
  696. /package/contracts/{types → type}/DistributorType.sol +0 -0
package/README.md CHANGED
@@ -28,6 +28,10 @@ This repository uses submodules. To checkout or update to the latest submodules,
28
28
  git submodule update --recursive
29
29
  ```
30
30
 
31
+ ## Example components
32
+
33
+ A (very early) example of a product and a pool can be found in the [gif-next-sandbox repository](https://github.com/etherisc/gif-next-sandbox).
34
+
31
35
  ## Hardhat
32
36
 
33
37
  ### NPM Commands
@@ -60,28 +64,57 @@ Install the dependencies before running the script below for the first time.
60
64
  npm install
61
65
  ```
62
66
 
63
- The deploy script will deploy all required contracts and create a test instance with a test product and a test pool.
67
+ The deploy script will deploy all required contracts for gif and create a test instance.
64
68
 
65
69
  ```bash
66
70
  # run deployment on a locally created ganache instance
67
- export SKIP_VERIFICATION=true
68
- hh run scripts/deploy_all.ts
71
+ hh run scripts/deploy_gif.ts
69
72
  ```
70
73
 
71
74
  ```bash
72
75
  # set appropriate values vor env variables (see below)
73
76
 
74
77
  # run deployment on another network
75
- hh run --network <networkname> scripts/deploy_all.ts
78
+ hh run --network <networkname> scripts/deploy_gif.ts
79
+ ```
80
+
81
+ The deployment will persist deployment information into the files `deployments/<chainid>/deployment_state.json`, `deployments/<chainid>/libraries.json` and `deployments/<chainid>/verification_log.json`.
82
+ This data can then be used for verification of the deployed contracts on etherscan/polygonscan.
83
+
84
+ For the verification of the contracts on etherscan/polygonscan the above files (created by previous deployment) are required and then the following command can be used:
85
+
86
+ ```bash
87
+ hh run --network <networkname> scripts/verify_deployment.ts
76
88
  ```
77
89
 
78
90
  Environment variables:
79
91
 
80
- - `SKIP_VERIFICATION` set to `true` to skip etherscan verification (required for ganacht and anvil)
81
- - `WEB3_INFURA_PROJECT_ID` set to infura project id (required for mumbai and mainnet)
92
+ - `WRITE_ADDRESSES_TO_FILE` set to `true` to write the addresses of the deployed contracts to a file (default: `false`)
93
+ - `RESUMEABLE_DEPLOYMENT` set to `true` to have all (deployment) transactions written to a state file so the script can be resumed after a failure (or after a manual stop) (default: `false`)
94
+ - `GAS_PRICE` set to the gas price to use for deployment (default: `undefined`)
82
95
  - `WALLET_MNEMONIC` the mnemonic of the wallet to use for deployment (required for mumbai and mainnet)
96
+
97
+ - `WEB3_INFURA_PROJECT_ID` set to infura project id (required for mumbai and mainnet)
83
98
  - `ETHERSCAN_API_KEY` `POLYGONSCAN_API_KEY` the api key for etherscan/polygonscan (required for mumbai and mainnet)
84
99
 
100
+ ### Deploy full protocol with fire example components
101
+
102
+ ```bash
103
+ hh run scripts/deploy_all.ts
104
+ ```
105
+
106
+ Like before, use the `--network` option to deploy on a different network.
107
+
108
+ ### Deploy only the fire example components
109
+
110
+ ```bash
111
+ hh run scripts/deploy_fire_components.ts
112
+ ```
113
+
114
+ Ensure that the deployment runs on a chain where a compatible version of the GIF is already deployed. Then ensure the correct environment variables are set. An up to date list of required environment variables can be found in the `deploy_fire_components.ts` script in the main method (just check the lines that contain a `process.env` statement). To be safe, set the environment variable `WRITE_ADDRESSES_TO_FILE` to `true` when deploying the gif and then copy all values from the generated `deployment.env` file to the `.env` file in the root directory of the repository before running the fire example deployment.
115
+
116
+ Like before, use the `--network` option to deploy on a different network.
117
+
85
118
  ### Create a new instance
86
119
 
87
120
  Requires previous step to be completed.
@@ -101,7 +134,6 @@ Environment variables:
101
134
  - `WALLET_MNEMONIC` the mnemonic of the wallet to use for deployment (required for mumbai and mainnet)
102
135
  - `REGISTRY_ADDRESS` the address of the registry that is already deployed and configured and has a valid master instance
103
136
 
104
-
105
137
  ### Console
106
138
 
107
139
  ```
@@ -117,6 +149,27 @@ await provider.getBalance(me)
117
149
 
118
150
  https://hardhat.org/hardhat-runner/docs/guides/compile-contracts
119
151
 
152
+ ### Scripts to find syntax bugs in code
153
+
154
+ #### find methods missing the `restricted` modifier
155
+
156
+ ```bash
157
+ hh run scripts/find_unrestricted_methods.ts.ts
158
+ ```
159
+
160
+ Checks all public/external methods in services and components for methods that are missing the `restricted` modifier but should have one.
161
+
162
+ The script `find_unrestricted_methods.ts` is based on the ANTLR grammar `Solidity.g4` (from https://github.com/solidity-parser/antlr) and uses the antlr4ng runtime (https://github.com/mike-lischke/antlr4ng).
163
+ To compile grammar to ts classes run `antlr4ng -Dlanguage=TypeScript -o antlr/generated/ -visitor -listener antlr/Solidity.g4` (requires openjdk to be installed `sudo apt install openjdk-17-jre-headless`).
164
+
165
+ #### find methods missing the `virtual` keyword
166
+
167
+ ```bash
168
+ hh run scripts/find_missing_virtual_methods.ts.ts
169
+ ```
170
+
171
+ Checks all public/external methods in services and components for methods that are not marked as `virtual` but should be.
172
+
120
173
  ## Forge
121
174
 
122
175
  ### Commands
@@ -142,11 +195,28 @@ forge test --mt test_decimals --gas-report
142
195
  # provide code coverage report
143
196
  forge coverage
144
197
  forge coverage --report lcov
198
+ ```
145
199
 
200
+ ### Aliases
146
201
 
147
- ```
148
202
 
149
- Chisel session
203
+ | Alias | Command |
204
+ | --- | --- |
205
+ | fb | forge build |
206
+ | fbw | forge build --watch |
207
+ | fbc | forge build contracts/ |
208
+ | fbcw | forge build --watch contracts/ |
209
+ | ft | forge test |
210
+ | ftf | forge test --nmt "_longRunning" |
211
+ | ftt | forge test -vvvv --mt |
212
+ | fttw | forge test -vvvv --watch --mt |
213
+ | ftc | forge test -vvvv --mc |
214
+ | ftcw | forge test -vvvv --watch --mc |
215
+
216
+ **Important**: All profiles are run using the foundry `ci` profile which disables the optimizer (for speed).
217
+
218
+ ### Chisel session
219
+
150
220
  ```typescript
151
221
  import "./contracts/components/Component.sol";
152
222
  import "./contracts/components/IPool.sol";
@@ -220,17 +290,7 @@ https://book.getfoundry.sh/reference/
220
290
 
221
291
  ## Style Guide
222
292
 
223
- Solidity code is to be written according to the [Solidity Style Guide](https://docs.soliditylang.org/en/latest/style-guide.html).
224
-
225
- Documentation of the code should be written inline using [NatSpec](https://docs.soliditylang.org/en/latest/natspec-format.html).
226
-
227
- ### Naming conventions
228
-
229
- Additionally, we use the following naming conventions:
230
-
231
- - Function arguments and return types: If using custom data types, make the name include the type by appending the Type to the argument name, e.g. `function getInfo(NftId bundleNftId)` instead of `function getInfo(NftId bundleId)`. Background: Custom data types are lost when using the ABI or Typescript binding classes (e.g. instead of `NftID` a `uint96` is used), so the type needs to be included in the name to make it clear what the argument is without having to look at the documentation or checking the solidity source code.
232
- - When naming a field or an attribute `id` and the context is not clear, call it `nftId` instead so its clear what type if id it is as there will be multiple ids for different kind of objects. Example: if you the function has a bundle nft id and a policy nft id as arguments, call them `bundleNftId` and `policyNftId` instead of `id` and `policyId`. In case of doubt, be a bit more verbose for the sake of clarity.
233
- - When naming things, remember that the code will likely be used in Javascript/Typescript as well, so avoid names that are reserved in Javascript/Typescript. A list of reserved words in Javascript can be found [here](https://www.w3schools.com/js/js_reserved.asp) and a list of reserved words in Typescript can be found [here](https://www.tektutorialshub.com/typescript/identifiers-keywords-in-typescript/).
293
+ Please see https://docs.etherisc.com/gif-next/3.x/ for style guide and general coding rules.
234
294
 
235
295
  ### Automatic code formatting
236
296
 
@@ -245,7 +305,7 @@ We use solhint to lint the code.
245
305
  To execute linting run `npm run lint`.
246
306
 
247
307
 
248
- ### Adding Brownie (Legacy)
308
+ ### Adding Brownie (Legacy - don't do that :wink: )
249
309
 
250
310
  python3 is already installed
251
311
 
@@ -466,13 +526,14 @@ contracts
466
526
  ComponentService.sol
467
527
  instance
468
528
  Instance.sol
469
- InstanceAccessManager.sol
529
+ InstanceAdmin.sol
470
530
  InstanceReader.sol
471
531
  InstanceService.sol
472
532
  InstanceServiceManager.sol
473
533
  registry
474
534
  ChainNft.sol
475
535
  Registry.sol
536
+ RegistryAdmin.sol
476
537
  RegistryService.sol
477
538
  RegistryServiceManager.sol
478
539
  shared
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/9fdb17f2e10b04e4463fdb5cf51372b0.json"
4
+ }