@etherisc/gif-next 0.0.2-644310f-416 → 0.0.2-650dbc7-348

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 (573) hide show
  1. package/README.md +26 -86
  2. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
  3. package/artifacts/contracts/{components → distribution}/Distribution.sol/Distribution.json +322 -257
  4. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
  5. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1378 -0
  6. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  7. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +826 -0
  8. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  9. package/artifacts/contracts/{components → distribution}/IDistributionComponent.sol/IDistributionComponent.json +249 -179
  10. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  11. package/artifacts/contracts/{instance/service → distribution}/IDistributionService.sol/IDistributionService.json +240 -89
  12. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +1 -1
  13. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +61 -116
  14. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  15. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +299 -2148
  16. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  17. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +319 -59
  18. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  19. package/artifacts/contracts/instance/Instance.sol/Instance.json +431 -2884
  20. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  21. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +708 -0
  22. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +4 -0
  23. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +228 -0
  24. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  25. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +612 -312
  26. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  27. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +416 -242
  28. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  29. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +132 -67
  30. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  31. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3598 -0
  32. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +4 -0
  33. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +318 -0
  34. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +4 -0
  35. package/artifacts/contracts/instance/{Cloneable.sol → base/Cloneable.sol}/Cloneable.json +1 -49
  36. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +4 -0
  37. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +10 -0
  38. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +4 -0
  39. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +187 -0
  40. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  41. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +25 -150
  42. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  43. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  44. package/artifacts/contracts/instance/module/{ITreasury.sol/ITreasury.json → IComponents.sol/IComponents.json} +2 -2
  45. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  46. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  47. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  48. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +4 -0
  49. package/artifacts/contracts/mock/Dip.sol/Dip.json +376 -0
  50. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
  51. package/artifacts/contracts/{instance/module/ISetup.sol/ISetup.json → oracle/IOracle.sol/IOracle.json} +2 -2
  52. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
  53. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +759 -0
  54. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
  55. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +675 -0
  56. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
  57. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +1146 -0
  58. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
  59. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +1034 -0
  60. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
  61. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +730 -0
  62. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +4 -0
  63. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1134 -0
  64. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  65. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +754 -0
  66. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
  67. package/artifacts/contracts/{instance/service → pool}/IBundleService.sol/IBundleService.json +283 -213
  68. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
  69. package/artifacts/contracts/{components → pool}/IPoolComponent.sol/IPoolComponent.json +480 -213
  70. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
  71. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1078 -0
  72. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
  73. package/artifacts/contracts/{components → pool}/Pool.sol/Pool.json +527 -284
  74. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
  75. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1453 -0
  76. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  77. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +742 -0
  78. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  79. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +863 -0
  80. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  81. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +730 -0
  82. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
  83. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1315 -0
  84. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  85. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +822 -0
  86. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  87. package/artifacts/contracts/{instance/service → product}/IApplicationService.sol/IApplicationService.json +129 -112
  88. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
  89. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +772 -0
  90. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  91. package/artifacts/contracts/{instance/service → product}/IPolicyService.sol/IPolicyService.json +271 -134
  92. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
  93. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +549 -0
  94. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
  95. package/artifacts/contracts/{components → product}/IProductComponent.sol/IProductComponent.json +408 -219
  96. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +4 -0
  97. package/artifacts/contracts/{instance/service → product}/IProductService.sol/IProductService.json +80 -64
  98. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
  99. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1183 -0
  100. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  101. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +766 -0
  102. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
  103. package/artifacts/contracts/product/PricingService.sol/PricingService.json +1012 -0
  104. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  105. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +786 -0
  106. package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
  107. package/artifacts/contracts/{components → product}/Product.sol/Product.json +433 -282
  108. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +4 -0
  109. package/artifacts/contracts/product/ProductService.sol/ProductService.json +708 -0
  110. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +4 -0
  111. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +702 -0
  112. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  113. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +15 -2
  114. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  115. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +188 -19
  116. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  117. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +310 -77
  118. package/artifacts/contracts/registry/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
  119. package/artifacts/contracts/registry/IServiceAuthorization.sol/IServiceAuthorization.json +129 -0
  120. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  121. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +18 -0
  122. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  123. package/artifacts/contracts/registry/Registry.sol/Registry.json +425 -34
  124. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
  125. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1901 -0
  126. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  127. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +373 -98
  128. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  129. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +105 -54
  130. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +1 -1
  131. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +769 -98
  132. package/artifacts/contracts/registry/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
  133. package/artifacts/contracts/registry/ServiceAuthorization.sol/ServiceAuthorization.json +171 -0
  134. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
  135. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +187 -0
  136. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  137. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +316 -153
  138. package/artifacts/contracts/shared/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
  139. package/artifacts/contracts/shared/AccessAdmin.sol/AccessAdmin.json +1559 -0
  140. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +4 -0
  141. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +1193 -0
  142. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +4 -0
  143. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +1747 -0
  144. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +4 -0
  145. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +1760 -0
  146. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +4 -0
  147. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +1838 -0
  148. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +4 -0
  149. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +1856 -0
  150. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
  151. package/artifacts/contracts/{components → shared}/Component.sol/Component.json +209 -166
  152. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
  153. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1511 -0
  154. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
  155. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +796 -0
  156. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
  157. package/artifacts/contracts/{instance/base/ComponentService.sol/ComponentService.json → shared/ComponentVerifyingService.sol/ComponentVerifyingService.json} +101 -114
  158. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  159. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +2 -2
  160. package/artifacts/contracts/shared/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
  161. package/artifacts/contracts/shared/IAccessAdmin.sol/IAccessAdmin.json +1189 -0
  162. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +4 -0
  163. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +1562 -0
  164. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +4 -0
  165. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +1600 -0
  166. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
  167. package/artifacts/contracts/{components → shared}/IComponent.sol/IComponent.json +222 -104
  168. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
  169. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +880 -0
  170. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
  171. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +705 -0
  172. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
  173. package/artifacts/contracts/{instance/base → shared}/IKeyValueStore.sol/IKeyValueStore.json +50 -11
  174. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
  175. package/artifacts/contracts/{instance/base → shared}/ILifecycle.sol/ILifecycle.json +1 -1
  176. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  177. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +3 -10
  178. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  179. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +87 -9
  180. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  181. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +3 -10
  182. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  183. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +0 -13
  184. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  185. package/artifacts/contracts/shared/IService.sol/IService.json +96 -19
  186. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  187. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +4 -0
  188. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +39 -0
  189. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
  190. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +1036 -0
  191. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
  192. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +571 -0
  193. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
  194. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +194 -0
  195. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +4 -0
  196. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.json +306 -0
  197. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  198. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +15 -22
  199. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  200. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +98 -26
  201. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  202. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +70 -35
  203. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  204. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +24 -23
  205. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  206. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -15
  207. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  208. package/artifacts/contracts/shared/Service.sol/Service.json +104 -22
  209. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  210. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +60 -6
  211. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  212. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
  213. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  214. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
  215. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1438 -0
  216. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
  217. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +1035 -0
  218. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
  219. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +460 -0
  220. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
  221. package/artifacts/contracts/staking/Staking.sol/Staking.json +2005 -0
  222. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
  223. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +761 -0
  224. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
  225. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +592 -0
  226. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
  227. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1343 -0
  228. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
  229. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +718 -0
  230. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
  231. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2261 -0
  232. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
  233. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +571 -0
  234. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
  235. package/artifacts/contracts/{types → type}/AddressSet.sol/LibAddressSet.json +3 -3
  236. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
  237. package/artifacts/contracts/type/Amount.sol/AmountLib.json +345 -0
  238. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
  239. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +225 -0
  240. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  241. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +179 -0
  242. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  243. package/artifacts/contracts/{types → type}/DistributorType.sol/DistributorTypeLib.json +5 -5
  244. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
  245. package/artifacts/contracts/type/Fee.sol/FeeLib.json +312 -0
  246. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
  247. package/artifacts/contracts/{types → type}/Key32.sol/Key32Lib.json +3 -3
  248. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
  249. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +209 -0
  250. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
  251. package/artifacts/contracts/{types → type}/NftIdSet.sol/LibNftIdSet.json +3 -3
  252. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
  253. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +186 -0
  254. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  255. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
  256. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
  257. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
  258. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
  259. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
  260. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
  261. package/artifacts/contracts/{types → type}/RiskId.sol/RiskIdLib.json +5 -5
  262. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
  263. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +266 -0
  264. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
  265. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +198 -0
  266. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
  267. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +129 -0
  268. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
  269. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
  270. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
  271. package/artifacts/contracts/{types → type}/StateId.sol/StateIdLib.json +3 -3
  272. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
  273. package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
  274. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
  275. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +293 -0
  276. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +4 -0
  277. package/artifacts/contracts/{types → type}/UFixed.sol/MathLib.json +3 -3
  278. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
  279. package/artifacts/contracts/{types → type}/UFixed.sol/UFixedLib.json +3 -3
  280. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
  281. package/artifacts/contracts/{types → type}/Version.sol/VersionLib.json +3 -3
  282. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
  283. package/artifacts/contracts/{types → type}/Version.sol/VersionPartLib.json +3 -3
  284. package/contracts/{components → distribution}/Distribution.sol +49 -76
  285. package/contracts/distribution/DistributionService.sol +297 -0
  286. package/contracts/distribution/DistributionServiceManager.sol +42 -0
  287. package/contracts/{components → distribution}/IDistributionComponent.sol +11 -37
  288. package/contracts/{instance/service → distribution}/IDistributionService.sol +24 -26
  289. package/contracts/instance/BundleManager.sol +15 -14
  290. package/contracts/instance/IInstance.sol +60 -65
  291. package/contracts/instance/IInstanceService.sol +59 -21
  292. package/contracts/instance/Instance.sol +175 -203
  293. package/contracts/instance/InstanceAdmin.sol +331 -0
  294. package/contracts/instance/InstanceAuthorizationsLib.sol +377 -0
  295. package/contracts/instance/InstanceReader.sol +159 -60
  296. package/contracts/instance/InstanceService.sol +296 -333
  297. package/contracts/instance/InstanceServiceManager.sol +11 -21
  298. package/contracts/instance/InstanceStore.sol +269 -0
  299. package/contracts/instance/base/BalanceStore.sol +123 -0
  300. package/contracts/instance/{Cloneable.sol → base/Cloneable.sol} +4 -22
  301. package/contracts/instance/base/ObjectCounter.sol +21 -0
  302. package/contracts/instance/{ObjectManager.sol → base/ObjectManager.sol} +12 -16
  303. package/contracts/instance/module/IAccess.sol +19 -20
  304. package/contracts/instance/module/IBundle.sol +8 -8
  305. package/contracts/instance/module/{ISetup.sol → IComponents.sol} +24 -20
  306. package/contracts/instance/module/IDistribution.sol +7 -6
  307. package/contracts/instance/module/IPolicy.sol +50 -23
  308. package/contracts/instance/module/IRisk.sol +1 -1
  309. package/contracts/{test/TestToken.sol → mock/Dip.sol} +5 -5
  310. package/contracts/oracle/IOracle.sol +20 -0
  311. package/contracts/oracle/IOracleComponent.sol +32 -0
  312. package/contracts/oracle/IOracleService.sol +65 -0
  313. package/contracts/oracle/Oracle.sol +145 -0
  314. package/contracts/oracle/OracleService.sol +278 -0
  315. package/contracts/oracle/OracleServiceManager.sol +42 -0
  316. package/contracts/pool/BundleService.sol +296 -0
  317. package/contracts/pool/BundleServiceManager.sol +42 -0
  318. package/contracts/pool/IBundleService.sol +106 -0
  319. package/contracts/pool/IPoolComponent.sol +112 -0
  320. package/contracts/pool/IPoolService.sol +150 -0
  321. package/contracts/pool/Pool.sol +299 -0
  322. package/contracts/pool/PoolService.sol +452 -0
  323. package/contracts/pool/PoolServiceManager.sol +42 -0
  324. package/contracts/product/ApplicationService.sol +254 -0
  325. package/contracts/{instance/service → product}/ApplicationServiceManager.sol +11 -8
  326. package/contracts/product/ClaimService.sol +442 -0
  327. package/contracts/{instance/service → product}/ClaimServiceManager.sol +11 -8
  328. package/contracts/{instance/service → product}/IApplicationService.sol +16 -34
  329. package/contracts/product/IClaimService.sol +99 -0
  330. package/contracts/{instance/service → product}/IPolicyService.sol +37 -48
  331. package/contracts/product/IPricingService.sol +39 -0
  332. package/contracts/product/IProductComponent.sol +42 -0
  333. package/contracts/product/IProductService.sol +33 -0
  334. package/contracts/product/PolicyService.sol +475 -0
  335. package/contracts/product/PolicyServiceManager.sol +42 -0
  336. package/contracts/product/PricingService.sol +300 -0
  337. package/contracts/product/PricingServiceManager.sol +42 -0
  338. package/contracts/product/Product.sol +377 -0
  339. package/contracts/product/ProductService.sol +124 -0
  340. package/contracts/product/ProductServiceManager.sol +42 -0
  341. package/contracts/registry/ChainNft.sol +16 -1
  342. package/contracts/registry/IRegistry.sol +46 -21
  343. package/contracts/registry/IRegistryService.sol +39 -37
  344. package/contracts/registry/IServiceAuthorization.sol +35 -0
  345. package/contracts/registry/ITransferInterceptor.sol +1 -0
  346. package/contracts/registry/Registry.sol +215 -97
  347. package/contracts/registry/RegistryAdmin.sol +333 -0
  348. package/contracts/registry/RegistryService.sol +73 -90
  349. package/contracts/registry/RegistryServiceManager.sol +21 -30
  350. package/contracts/registry/ReleaseManager.sol +400 -195
  351. package/contracts/registry/ServiceAuthorization.sol +86 -0
  352. package/contracts/registry/ServiceAuthorizationV3.sol +200 -0
  353. package/contracts/registry/TokenRegistry.sol +261 -62
  354. package/contracts/shared/AccessAdmin.sol +759 -0
  355. package/contracts/shared/AccessManagerCustom.sol +741 -0
  356. package/contracts/shared/AccessManagerExtended.sol +481 -0
  357. package/contracts/shared/AccessManagerExtendedInitializeable.sol +13 -0
  358. package/contracts/shared/AccessManagerExtendedWithDisable.sol +137 -0
  359. package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +14 -0
  360. package/contracts/shared/Component.sol +281 -0
  361. package/contracts/shared/ComponentService.sol +617 -0
  362. package/contracts/shared/ComponentServiceManager.sol +35 -0
  363. package/contracts/shared/ComponentVerifyingService.sol +117 -0
  364. package/contracts/shared/ERC165.sol +1 -1
  365. package/contracts/shared/IAccessAdmin.sol +168 -0
  366. package/contracts/shared/IAccessManagerExtended.sol +74 -0
  367. package/contracts/shared/IAccessManagerExtendedWithDisable.sol +18 -0
  368. package/contracts/shared/IComponent.sol +70 -0
  369. package/contracts/shared/IComponentService.sol +102 -0
  370. package/contracts/shared/IInstanceLinkedComponent.sol +46 -0
  371. package/contracts/{instance/base → shared}/IKeyValueStore.sol +15 -11
  372. package/contracts/{instance/base → shared}/ILifecycle.sol +3 -3
  373. package/contracts/shared/INftOwnable.sol +2 -2
  374. package/contracts/shared/IPolicyHolder.sol +29 -10
  375. package/contracts/shared/IRegistryLinked.sol +0 -1
  376. package/contracts/shared/IService.sol +14 -7
  377. package/contracts/shared/IVersionable.sol +1 -1
  378. package/contracts/shared/InitializableCustom.sol +177 -0
  379. package/contracts/shared/InstanceLinkedComponent.sol +144 -0
  380. package/contracts/shared/KeyValueStore.sol +127 -0
  381. package/contracts/{instance/base → shared}/Lifecycle.sol +37 -7
  382. package/contracts/shared/NftIdSetManager.sol +65 -0
  383. package/contracts/shared/NftOwnable.sol +3 -16
  384. package/contracts/shared/PolicyHolder.sol +40 -19
  385. package/contracts/shared/ProxyManager.sol +34 -4
  386. package/contracts/shared/Registerable.sol +15 -14
  387. package/contracts/shared/RegistryLinked.sol +0 -5
  388. package/contracts/shared/Service.sol +47 -22
  389. package/contracts/shared/TokenHandler.sol +37 -6
  390. package/contracts/shared/Versionable.sol +1 -1
  391. package/contracts/staking/IStaking.sol +168 -0
  392. package/contracts/staking/IStakingService.sol +153 -0
  393. package/contracts/staking/StakeManagerLib.sol +231 -0
  394. package/contracts/staking/Staking.sol +513 -0
  395. package/contracts/staking/StakingManager.sol +54 -0
  396. package/contracts/staking/StakingReader.sol +187 -0
  397. package/contracts/staking/StakingService.sol +411 -0
  398. package/contracts/staking/StakingServiceManager.sol +44 -0
  399. package/contracts/staking/StakingStore.sol +613 -0
  400. package/contracts/staking/TargetManagerLib.sol +207 -0
  401. package/contracts/{types → type}/AddressSet.sol +1 -1
  402. package/contracts/type/Amount.sol +128 -0
  403. package/contracts/{types → type}/Blocknumber.sol +21 -3
  404. package/contracts/{types → type}/ClaimId.sol +25 -2
  405. package/contracts/{types → type}/Fee.sol +33 -23
  406. package/contracts/{types → type}/NftId.sol +21 -15
  407. package/contracts/{types → type}/NftIdSet.sol +2 -2
  408. package/contracts/type/ObjectType.sol +241 -0
  409. package/contracts/{types → type}/PayoutId.sol +33 -5
  410. package/contracts/{types → type}/Referral.sol +5 -1
  411. package/contracts/type/RequestId.sol +75 -0
  412. package/contracts/{types → type}/RiskId.sol +1 -1
  413. package/contracts/type/RoleId.sol +201 -0
  414. package/contracts/type/Seconds.sol +81 -0
  415. package/contracts/type/Selector.sol +102 -0
  416. package/contracts/{types → type}/StateId.sol +34 -4
  417. package/contracts/type/String.sol +53 -0
  418. package/contracts/{types → type}/Timestamp.sol +23 -14
  419. package/contracts/{types → type}/UFixed.sol +1 -0
  420. package/contracts/{types → type}/Version.sol +2 -1
  421. package/package.json +6 -3
  422. package/artifacts/contracts/components/Component.sol/Component.dbg.json +0 -4
  423. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +0 -4
  424. package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +0 -4
  425. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +0 -4
  426. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +0 -4
  427. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +0 -4
  428. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
  429. package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
  430. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +0 -4
  431. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +0 -4
  432. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +0 -984
  433. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +0 -4
  434. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +0 -261
  435. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +0 -4
  436. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
  437. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +0 -4
  438. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
  439. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +0 -502
  440. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
  441. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -169
  442. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +0 -4
  443. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +0 -4
  444. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +0 -4
  445. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +0 -883
  446. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +0 -4
  447. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +0 -653
  448. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +0 -4
  449. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +0 -1096
  450. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +0 -4
  451. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +0 -661
  452. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +0 -4
  453. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +0 -754
  454. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +0 -4
  455. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +0 -637
  456. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +0 -4
  457. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +0 -1323
  458. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +0 -4
  459. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +0 -769
  460. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +0 -4
  461. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +0 -4
  462. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +0 -4
  463. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.json +0 -409
  464. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +0 -4
  465. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +0 -4
  466. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +0 -4
  467. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +0 -347
  468. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +0 -4
  469. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +0 -4
  470. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +0 -1120
  471. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +0 -4
  472. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +0 -717
  473. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +0 -4
  474. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +0 -727
  475. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +0 -4
  476. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +0 -649
  477. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
  478. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -777
  479. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
  480. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +0 -649
  481. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +0 -4
  482. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +0 -285
  483. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +0 -4
  484. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +0 -107
  485. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +0 -4
  486. package/artifacts/contracts/test/TestFee.sol/TestFee.json +0 -119
  487. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +0 -4
  488. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +0 -383
  489. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +0 -4
  490. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +0 -116
  491. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +0 -4
  492. package/artifacts/contracts/test/TestService.sol/TestService.json +0 -521
  493. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +0 -4
  494. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +0 -376
  495. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +0 -4
  496. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +0 -218
  497. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +0 -4
  498. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +0 -104
  499. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +0 -4
  500. package/artifacts/contracts/test/Usdc.sol/USDC.json +0 -376
  501. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +0 -4
  502. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +0 -4
  503. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +0 -174
  504. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  505. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +0 -10
  506. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.dbg.json +0 -4
  507. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +0 -100
  508. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +0 -4
  509. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +0 -4
  510. package/artifacts/contracts/types/Fee.sol/FeeLib.json +0 -257
  511. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +0 -4
  512. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
  513. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -153
  514. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +0 -4
  515. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +0 -4
  516. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +0 -100
  517. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +0 -4
  518. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +0 -92
  519. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.dbg.json +0 -4
  520. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +0 -100
  521. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +0 -4
  522. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +0 -123
  523. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +0 -4
  524. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +0 -4
  525. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +0 -156
  526. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +0 -4
  527. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +0 -4
  528. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +0 -249
  529. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +0 -4
  530. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +0 -4
  531. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +0 -4
  532. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +0 -4
  533. package/contracts/components/Component.sol +0 -241
  534. package/contracts/components/IComponent.sol +0 -54
  535. package/contracts/components/IPoolComponent.sol +0 -87
  536. package/contracts/components/IProductComponent.sol +0 -39
  537. package/contracts/components/Pool.sol +0 -254
  538. package/contracts/components/Product.sol +0 -285
  539. package/contracts/instance/InstanceAccessManager.sol +0 -297
  540. package/contracts/instance/base/ComponentService.sol +0 -134
  541. package/contracts/instance/base/KeyValueStore.sol +0 -172
  542. package/contracts/instance/module/ITreasury.sol +0 -23
  543. package/contracts/instance/service/ApplicationService.sol +0 -286
  544. package/contracts/instance/service/BundleService.sol +0 -298
  545. package/contracts/instance/service/BundleServiceManager.sol +0 -51
  546. package/contracts/instance/service/ClaimService.sol +0 -151
  547. package/contracts/instance/service/DistributionService.sol +0 -375
  548. package/contracts/instance/service/DistributionServiceManager.sol +0 -51
  549. package/contracts/instance/service/IBundleService.sol +0 -54
  550. package/contracts/instance/service/IClaimService.sol +0 -61
  551. package/contracts/instance/service/IPoolService.sol +0 -20
  552. package/contracts/instance/service/IProductService.sol +0 -40
  553. package/contracts/instance/service/PolicyService.sol +0 -480
  554. package/contracts/instance/service/PolicyServiceManager.sol +0 -54
  555. package/contracts/instance/service/PoolService.sol +0 -109
  556. package/contracts/instance/service/PoolServiceManager.sol +0 -51
  557. package/contracts/instance/service/ProductService.sol +0 -233
  558. package/contracts/instance/service/ProductServiceManager.sol +0 -54
  559. package/contracts/registry/RegistryAccessManager.sol +0 -216
  560. package/contracts/shared/ContractDeployerLib.sol +0 -72
  561. package/contracts/test/TestFee.sol +0 -25
  562. package/contracts/test/TestRegisterable.sol +0 -18
  563. package/contracts/test/TestRoleId.sol +0 -14
  564. package/contracts/test/TestService.sol +0 -25
  565. package/contracts/test/TestVersion.sol +0 -44
  566. package/contracts/test/TestVersionable.sol +0 -17
  567. package/contracts/test/Usdc.sol +0 -26
  568. package/contracts/types/ChainId.sol +0 -38
  569. package/contracts/types/NumberId.sol +0 -52
  570. package/contracts/types/ObjectType.sol +0 -156
  571. package/contracts/types/RoleId.sol +0 -90
  572. /package/contracts/{types → type}/DistributorType.sol +0 -0
  573. /package/contracts/{types → type}/Key32.sol +0 -0
package/README.md CHANGED
@@ -1,18 +1,6 @@
1
1
  # GIF-Next (Generic Insurance Framework, next version)
2
2
 
3
3
 
4
- ```mermaid
5
- graph TD
6
- IPoolComponent --> IComponent
7
- IComponent --> IRegisterable
8
- IComponent --> ITransferInterceptor
9
- IRegistryService --> IService
10
- IService-->IRegisterable
11
- IService-->IVersionable
12
- IRegisterable-->INftOwnable
13
- INftOwnable-->IERC165
14
- ```
15
-
16
4
  ## Add OpenZeppelin V5 Dependencies
17
5
 
18
6
  ```shell
@@ -40,6 +28,10 @@ This repository uses submodules. To checkout or update to the latest submodules,
40
28
  git submodule update --recursive
41
29
  ```
42
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
+
43
35
  ## Hardhat
44
36
 
45
37
  ### NPM Commands
@@ -76,7 +68,6 @@ The deploy script will deploy all required contracts and create a test instance
76
68
 
77
69
  ```bash
78
70
  # run deployment on a locally created ganache instance
79
- export SKIP_VERIFICATION=true
80
71
  hh run scripts/deploy_all.ts
81
72
  ```
82
73
 
@@ -87,9 +78,17 @@ hh run scripts/deploy_all.ts
87
78
  hh run --network <networkname> scripts/deploy_all.ts
88
79
  ```
89
80
 
81
+ The deployment will persist deployment information into the files `deployment_state_<chainid>.json`, `libraries_<chainid>.json` and `verification_log_<chainid>.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
88
+ ```
89
+
90
90
  Environment variables:
91
91
 
92
- - `SKIP_VERIFICATION` set to `true` to skip etherscan verification (required for ganacht and anvil)
93
92
  - `WEB3_INFURA_PROJECT_ID` set to infura project id (required for mumbai and mainnet)
94
93
  - `WALLET_MNEMONIC` the mnemonic of the wallet to use for deployment (required for mumbai and mainnet)
95
94
  - `ETHERSCAN_API_KEY` `POLYGONSCAN_API_KEY` the api key for etherscan/polygonscan (required for mumbai and mainnet)
@@ -129,6 +128,15 @@ await provider.getBalance(me)
129
128
 
130
129
  https://hardhat.org/hardhat-runner/docs/guides/compile-contracts
131
130
 
131
+ ### ANTLR based checker to find methods that should be restricted but are not
132
+
133
+ ```bash
134
+ hh run scripts/restriction_checker.ts
135
+ ```
136
+
137
+ The script `restriction_checker.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).
138
+ 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`).
139
+
132
140
  ## Forge
133
141
 
134
142
  ### Commands
@@ -232,17 +240,7 @@ https://book.getfoundry.sh/reference/
232
240
 
233
241
  ## Style Guide
234
242
 
235
- Solidity code is to be written according to the [Solidity Style Guide](https://docs.soliditylang.org/en/latest/style-guide.html).
236
-
237
- Documentation of the code should be written inline using [NatSpec](https://docs.soliditylang.org/en/latest/natspec-format.html).
238
-
239
- ### Naming conventions
240
-
241
- Additionally, we use the following naming conventions:
242
-
243
- - 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.
244
- - 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.
245
- - 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/).
243
+ Please see https://docs.etherisc.com/gif-next/3.x/ for style guide and general coding rules.
246
244
 
247
245
  ### Automatic code formatting
248
246
 
@@ -257,7 +255,7 @@ We use solhint to lint the code.
257
255
  To execute linting run `npm run lint`.
258
256
 
259
257
 
260
- ### Adding Brownie (Legacy)
258
+ ### Adding Brownie (Legacy - don't do that :wink: )
261
259
 
262
260
  python3 is already installed
263
261
 
@@ -405,65 +403,6 @@ Intercepting property
405
403
 
406
404
  ### Product
407
405
 
408
- ### Payout Handling
409
-
410
- Pool specifies **retention level**.
411
- Retention level defines up to which percentage of the sum insured the pool is payout out using its own/current funds.
412
- Depending on the amount of a new payout the poolService decides to either execute the payout directly or to add the payout as a pending payout with a notification of the pool.
413
-
414
- The sequence below sketches the small payout flow (payout < retention amount)
415
- - retention level: 30%
416
- - sum insured: 1000
417
- - payout: 200
418
-
419
- ```mermaid
420
- sequenceDiagram
421
- participant customer
422
- participant product
423
- participant claimService
424
- participant poolService
425
- participant pool
426
- product->>claimService: createPayout()
427
- claimService ->> poolService: requestPayout()
428
- poolService -->> pool: verifyPayout() *
429
- poolService ->> poolService: processPayout()
430
- poolService ->> customer: transfer token for payout
431
- poolService ->> claimService: payoutExecuted()
432
- poolService -->> customer: payoutExecutedCallback() **
433
- ```
434
-
435
- *: if pool is configured to verify payouts before execution
436
-
437
- **: callback only if customer is contract (IPolicyHolder)
438
-
439
- The sequence below sketches the call flow for payouts larger than the retention amount
440
- - retention level: 30%
441
- - sum insured: 1000
442
- - payout: 500
443
- * locally available: 300
444
- * via policy (re-insurance): 200
445
-
446
- ```mermaid
447
- sequenceDiagram
448
- participant customer
449
- participant product
450
- participant claimService
451
- participant poolService
452
- participant pool
453
- pool ->> reinsuranceProduct: applyForPolicy()
454
- product->>claimService: createPayout()
455
- claimService ->> poolService: requestPayout()
456
- poolService ->> pool: pendingPayoutAdded()
457
- pool ->> pool: getReinsurancePolicy()
458
- pool ->> reinsuranceProduct: claim()
459
- reinsuranceProduct -->> reinsurancePool: createPayout
460
- reinsurancePool ->> pool: transfer token for payout
461
- reinsurancePool ->> pool: payoutExecutedCallback()
462
- pool ->> poolService: processPendingPayout()
463
- poolService ->> customer: transfer token for payout
464
- poolService ->> claimService: payoutExecuted()
465
- ```
466
-
467
406
  ### Pool
468
407
 
469
408
  ### Distribution
@@ -537,13 +476,14 @@ contracts
537
476
  ComponentService.sol
538
477
  instance
539
478
  Instance.sol
540
- InstanceAccessManager.sol
479
+ InstanceAdmin.sol
541
480
  InstanceReader.sol
542
481
  InstanceService.sol
543
482
  InstanceServiceManager.sol
544
483
  registry
545
484
  ChainNft.sol
546
485
  Registry.sol
486
+ RegistryAdmin.sol
547
487
  RegistryService.sol
548
488
  RegistryServiceManager.sol
549
489
  shared
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/6efa1c926ce3374a2355eff3df062902.json"
4
+ }