@etherisc/gif-next 0.0.2-93de5de-423 → 0.0.2-94b4fbc-830

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 (630) hide show
  1. package/README.md +38 -86
  2. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
  3. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +1253 -0
  4. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +4 -0
  5. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +1206 -0
  6. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +4 -0
  7. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +358 -0
  8. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +4 -0
  9. package/artifacts/contracts/{instance/module/ISetup.sol/ISetup.json → authorization/IAccess.sol/IAccess.json} +2 -2
  10. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
  11. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +1032 -0
  12. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +4 -0
  13. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +258 -0
  14. package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +4 -0
  15. package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.json +290 -0
  16. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
  17. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +148 -0
  18. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +4 -0
  19. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +390 -0
  20. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
  21. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +190 -0
  22. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +4 -0
  23. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +1548 -0
  24. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +4 -0
  25. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +410 -0
  26. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
  27. package/artifacts/contracts/{components → distribution}/Distribution.sol/Distribution.json +274 -429
  28. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
  29. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1557 -0
  30. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  31. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +854 -0
  32. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  33. package/artifacts/contracts/{components → distribution}/IDistributionComponent.sol/IDistributionComponent.json +303 -303
  34. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  35. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +945 -0
  36. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
  37. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +703 -0
  38. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  39. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +292 -2124
  40. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  41. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +328 -69
  42. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  43. package/artifacts/contracts/instance/Instance.sol/Instance.json +399 -2883
  44. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  45. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1626 -0
  46. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
  47. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +601 -0
  48. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  49. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +646 -302
  50. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  51. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +388 -263
  52. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  53. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +115 -74
  54. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  55. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3581 -0
  56. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +4 -0
  57. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +318 -0
  58. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +4 -0
  59. package/artifacts/contracts/instance/{Cloneable.sol → base/Cloneable.sol}/Cloneable.json +1 -49
  60. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +4 -0
  61. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +10 -0
  62. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +4 -0
  63. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +182 -0
  64. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
  65. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +181 -0
  66. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  67. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +25 -150
  68. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  69. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  70. package/artifacts/contracts/instance/module/{ITreasury.sol/ITreasury.json → IComponents.sol/IComponents.json} +2 -2
  71. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  72. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  73. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  74. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +4 -0
  75. package/artifacts/contracts/mock/Dip.sol/Dip.json +376 -0
  76. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +4 -0
  77. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +1185 -0
  78. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +4 -0
  79. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +418 -0
  80. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
  81. package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +52 -0
  82. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
  83. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +802 -0
  84. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
  85. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +675 -0
  86. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
  87. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +1093 -0
  88. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
  89. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +1034 -0
  90. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
  91. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +730 -0
  92. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +4 -0
  93. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +1520 -0
  94. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +4 -0
  95. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +410 -0
  96. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +4 -0
  97. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1378 -0
  98. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  99. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +794 -0
  100. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
  101. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +867 -0
  102. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
  103. package/artifacts/contracts/{components → pool}/IPoolComponent.sol/IPoolComponent.json +448 -333
  104. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
  105. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1179 -0
  106. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
  107. package/artifacts/contracts/{components → pool}/Pool.sol/Pool.json +440 -450
  108. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
  109. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1594 -0
  110. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  111. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +762 -0
  112. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  113. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +863 -0
  114. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  115. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +730 -0
  116. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
  117. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +1318 -0
  118. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +4 -0
  119. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +410 -0
  120. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
  121. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1315 -0
  122. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  123. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +822 -0
  124. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  125. package/artifacts/contracts/{instance/service → product}/IApplicationService.sol/IApplicationService.json +139 -89
  126. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
  127. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +772 -0
  128. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  129. package/artifacts/contracts/{instance/service → product}/IPolicyService.sol/IPolicyService.json +277 -129
  130. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
  131. package/artifacts/contracts/{instance/service/IBundleService.sol/IBundleService.json → product/IPricingService.sol/IPricingService.json} +245 -318
  132. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
  133. package/artifacts/contracts/{components → product}/IProductComponent.sol/IProductComponent.json +420 -241
  134. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +4 -0
  135. package/artifacts/contracts/{instance/service → product}/IProductService.sol/IProductService.json +90 -63
  136. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
  137. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1183 -0
  138. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  139. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +766 -0
  140. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
  141. package/artifacts/contracts/product/PricingService.sol/PricingService.json +1017 -0
  142. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  143. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +786 -0
  144. package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
  145. package/artifacts/contracts/{components → product}/Product.sol/Product.json +397 -367
  146. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +4 -0
  147. package/artifacts/contracts/product/ProductService.sol/ProductService.json +708 -0
  148. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +4 -0
  149. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +702 -0
  150. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  151. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +15 -2
  152. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  153. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +191 -18
  154. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  155. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +199 -138
  156. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  157. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +18 -0
  158. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  159. package/artifacts/contracts/registry/Registry.sol/Registry.json +453 -34
  160. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
  161. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1746 -0
  162. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  163. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +373 -87
  164. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  165. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +105 -54
  166. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +4 -0
  167. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +164 -0
  168. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
  169. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1159 -0
  170. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
  171. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +214 -0
  172. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  173. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +316 -153
  174. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
  175. package/artifacts/contracts/{components → shared}/Component.sol/Component.json +209 -166
  176. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
  177. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1696 -0
  178. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
  179. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +812 -0
  180. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
  181. package/artifacts/contracts/{instance/base/ComponentService.sol/ComponentService.json → shared/ComponentVerifyingService.sol/ComponentVerifyingService.json} +101 -103
  182. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  183. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +2 -2
  184. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
  185. package/artifacts/contracts/{components → shared}/IComponent.sol/IComponent.json +222 -104
  186. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
  187. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +1033 -0
  188. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
  189. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +737 -0
  190. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
  191. package/artifacts/contracts/{instance/base → shared}/IKeyValueStore.sol/IKeyValueStore.json +59 -14
  192. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
  193. package/artifacts/contracts/{instance/base → shared}/ILifecycle.sol/ILifecycle.json +1 -6
  194. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  195. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +3 -10
  196. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  197. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +87 -9
  198. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  199. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +3 -10
  200. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  201. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +0 -13
  202. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  203. package/artifacts/contracts/shared/IService.sol/IService.json +106 -18
  204. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +4 -0
  205. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +39 -0
  206. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
  207. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +1015 -0
  208. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
  209. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +497 -0
  210. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
  211. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +133 -0
  212. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
  213. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
  214. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  215. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +15 -22
  216. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  217. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +98 -26
  218. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  219. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +24 -23
  220. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  221. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -15
  222. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  223. package/artifacts/contracts/shared/Service.sol/Service.json +114 -21
  224. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  225. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +60 -6
  226. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
  227. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1438 -0
  228. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
  229. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +1035 -0
  230. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
  231. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +470 -0
  232. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
  233. package/artifacts/contracts/staking/Staking.sol/Staking.json +2005 -0
  234. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
  235. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +164 -0
  236. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
  237. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +761 -0
  238. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
  239. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +592 -0
  240. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
  241. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1343 -0
  242. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
  243. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +718 -0
  244. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
  245. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2242 -0
  246. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
  247. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +576 -0
  248. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
  249. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +10 -0
  250. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
  251. package/artifacts/contracts/type/Amount.sol/AmountLib.json +374 -0
  252. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
  253. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +225 -0
  254. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  255. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +179 -0
  256. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  257. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +104 -0
  258. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
  259. package/artifacts/contracts/type/Fee.sol/FeeLib.json +317 -0
  260. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
  261. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +125 -0
  262. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
  263. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +209 -0
  264. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
  265. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +33 -0
  266. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
  267. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +239 -0
  268. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  269. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
  270. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
  271. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
  272. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
  273. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
  274. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
  275. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +86 -0
  276. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
  277. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +369 -0
  278. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
  279. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +198 -0
  280. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
  281. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +129 -0
  282. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
  283. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
  284. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
  285. package/artifacts/contracts/{types → type}/StateId.sol/StateIdLib.json +3 -3
  286. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
  287. package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
  288. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
  289. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +293 -0
  290. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +4 -0
  291. package/artifacts/contracts/type/UFixed.sol/MathLib.json +16 -0
  292. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
  293. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +535 -0
  294. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
  295. package/artifacts/contracts/type/Version.sol/VersionLib.json +177 -0
  296. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
  297. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +68 -0
  298. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
  299. package/artifacts/contracts/{shared → upgradeability}/IVersionable.sol/IVersionable.json +1 -1
  300. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  301. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +617 -0
  302. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  303. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
  304. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
  305. package/artifacts/contracts/{shared → upgradeability}/Versionable.sol/Versionable.json +1 -1
  306. package/contracts/authorization/AccessAdmin.sol +591 -0
  307. package/contracts/authorization/AccessManagerCloneable.sol +16 -0
  308. package/contracts/authorization/Authorization.sol +218 -0
  309. package/contracts/authorization/IAccess.sol +48 -0
  310. package/contracts/authorization/IAccessAdmin.sol +136 -0
  311. package/contracts/authorization/IAuthorization.sol +54 -0
  312. package/contracts/authorization/IModuleAuthorization.sol +21 -0
  313. package/contracts/authorization/IServiceAuthorization.sol +38 -0
  314. package/contracts/authorization/ModuleAuthorization.sol +78 -0
  315. package/contracts/authorization/ServiceAuthorization.sol +90 -0
  316. package/contracts/distribution/BasicDistribution.sol +149 -0
  317. package/contracts/distribution/BasicDistributionAuthorization.sol +47 -0
  318. package/contracts/{components → distribution}/Distribution.sol +182 -189
  319. package/contracts/distribution/DistributionService.sol +337 -0
  320. package/contracts/distribution/DistributionServiceManager.sol +39 -0
  321. package/contracts/distribution/IDistributionComponent.sol +52 -0
  322. package/contracts/distribution/IDistributionService.sol +97 -0
  323. package/contracts/instance/{BundleManager.sol → BundleSet.sol} +33 -32
  324. package/contracts/instance/IInstance.sol +60 -66
  325. package/contracts/instance/IInstanceService.sol +57 -24
  326. package/contracts/instance/Instance.sol +176 -213
  327. package/contracts/instance/InstanceAdmin.sol +266 -0
  328. package/contracts/instance/InstanceAuthorizationV3.sol +204 -0
  329. package/contracts/instance/InstanceReader.sol +173 -61
  330. package/contracts/instance/InstanceService.sol +310 -343
  331. package/contracts/instance/InstanceServiceManager.sol +12 -26
  332. package/contracts/instance/InstanceStore.sol +277 -0
  333. package/contracts/instance/base/BalanceStore.sol +123 -0
  334. package/contracts/instance/{Cloneable.sol → base/Cloneable.sol} +4 -22
  335. package/contracts/instance/base/ObjectCounter.sol +21 -0
  336. package/contracts/instance/base/ObjectLifecycle.sol +106 -0
  337. package/contracts/instance/{ObjectManager.sol → base/ObjectSet.sol} +19 -24
  338. package/contracts/instance/module/IAccess.sol +19 -20
  339. package/contracts/instance/module/IBundle.sol +9 -8
  340. package/contracts/instance/module/{ISetup.sol → IComponents.sol} +23 -19
  341. package/contracts/instance/module/IDistribution.sol +6 -4
  342. package/contracts/instance/module/IPolicy.sol +53 -16
  343. package/contracts/instance/module/IRisk.sol +1 -1
  344. package/contracts/{test/TestToken.sol → mock/Dip.sol} +5 -5
  345. package/contracts/oracle/BasicOracle.sol +48 -0
  346. package/contracts/oracle/BasicOracleAuthorization.sol +46 -0
  347. package/contracts/oracle/IOracle.sol +36 -0
  348. package/contracts/oracle/IOracleComponent.sol +33 -0
  349. package/contracts/oracle/IOracleService.sol +65 -0
  350. package/contracts/oracle/Oracle.sol +170 -0
  351. package/contracts/oracle/OracleService.sol +278 -0
  352. package/contracts/oracle/OracleServiceManager.sol +39 -0
  353. package/contracts/pool/BasicPool.sol +164 -0
  354. package/contracts/pool/BasicPoolAuthorization.sol +55 -0
  355. package/contracts/pool/BundleService.sol +394 -0
  356. package/contracts/pool/BundleServiceManager.sol +39 -0
  357. package/contracts/pool/IBundleService.sol +124 -0
  358. package/contracts/pool/IPoolComponent.sol +58 -0
  359. package/contracts/pool/IPoolService.sol +152 -0
  360. package/contracts/pool/Pool.sol +330 -0
  361. package/contracts/pool/PoolService.sol +536 -0
  362. package/contracts/pool/PoolServiceManager.sol +39 -0
  363. package/contracts/product/ApplicationService.sol +230 -0
  364. package/contracts/{instance/service → product}/ApplicationServiceManager.sol +11 -8
  365. package/contracts/product/BasicProduct.sol +82 -0
  366. package/contracts/product/BasicProductAuthorization.sol +43 -0
  367. package/contracts/product/ClaimService.sol +417 -0
  368. package/contracts/{instance/service → product}/ClaimServiceManager.sol +11 -8
  369. package/contracts/{instance/service → product}/IApplicationService.sol +16 -36
  370. package/contracts/product/IClaimService.sol +99 -0
  371. package/contracts/{instance/service → product}/IPolicyService.sol +37 -48
  372. package/contracts/product/IPricingService.sol +39 -0
  373. package/contracts/product/IProductComponent.sol +40 -0
  374. package/contracts/product/IProductService.sol +33 -0
  375. package/contracts/product/PolicyService.sol +476 -0
  376. package/contracts/product/PolicyServiceManager.sol +39 -0
  377. package/contracts/product/PricingService.sol +300 -0
  378. package/contracts/product/PricingServiceManager.sol +39 -0
  379. package/contracts/product/Product.sol +392 -0
  380. package/contracts/product/ProductService.sol +99 -0
  381. package/contracts/product/ProductServiceManager.sol +39 -0
  382. package/contracts/registry/ChainNft.sol +16 -1
  383. package/contracts/registry/IRegistry.sol +61 -26
  384. package/contracts/registry/IRegistryService.sol +44 -42
  385. package/contracts/registry/ITransferInterceptor.sol +1 -0
  386. package/contracts/registry/Registry.sol +251 -139
  387. package/contracts/registry/RegistryAdmin.sol +365 -0
  388. package/contracts/registry/RegistryService.sol +70 -101
  389. package/contracts/registry/RegistryServiceManager.sol +23 -32
  390. package/contracts/registry/ReleaseLifecycle.sol +27 -0
  391. package/contracts/registry/ReleaseRegistry.sol +487 -0
  392. package/contracts/registry/ServiceAuthorizationV3.sol +200 -0
  393. package/contracts/registry/TokenRegistry.sol +261 -62
  394. package/contracts/shared/Component.sol +280 -0
  395. package/contracts/shared/ComponentService.sol +651 -0
  396. package/contracts/shared/ComponentServiceManager.sol +35 -0
  397. package/contracts/shared/ComponentVerifyingService.sol +117 -0
  398. package/contracts/shared/ERC165.sol +1 -1
  399. package/contracts/shared/IComponent.sol +70 -0
  400. package/contracts/shared/IComponentService.sol +108 -0
  401. package/contracts/shared/IInstanceLinkedComponent.sol +56 -0
  402. package/contracts/{instance/base → shared}/IKeyValueStore.sol +16 -11
  403. package/contracts/{instance/base → shared}/ILifecycle.sol +3 -4
  404. package/contracts/shared/INftOwnable.sol +2 -2
  405. package/contracts/shared/IPolicyHolder.sol +29 -10
  406. package/contracts/shared/IRegistryLinked.sol +0 -1
  407. package/contracts/shared/IService.sol +15 -6
  408. package/contracts/shared/InitializableCustom.sol +177 -0
  409. package/contracts/shared/InstanceLinkedComponent.sol +172 -0
  410. package/contracts/shared/KeyValueStore.sol +131 -0
  411. package/contracts/shared/Lifecycle.sol +77 -0
  412. package/contracts/shared/NftIdSet.sol +65 -0
  413. package/contracts/shared/NftOwnable.sol +3 -16
  414. package/contracts/shared/PolicyHolder.sol +40 -19
  415. package/contracts/shared/Registerable.sol +15 -14
  416. package/contracts/shared/RegistryLinked.sol +0 -5
  417. package/contracts/shared/Service.sol +47 -23
  418. package/contracts/shared/TokenHandler.sol +37 -6
  419. package/contracts/staking/IStaking.sol +167 -0
  420. package/contracts/staking/IStakingService.sol +160 -0
  421. package/contracts/staking/StakeManagerLib.sol +231 -0
  422. package/contracts/staking/Staking.sol +516 -0
  423. package/contracts/staking/StakingLifecycle.sol +23 -0
  424. package/contracts/staking/StakingManager.sol +50 -0
  425. package/contracts/staking/StakingReader.sol +183 -0
  426. package/contracts/staking/StakingService.sol +411 -0
  427. package/contracts/staking/StakingServiceManager.sol +44 -0
  428. package/contracts/staking/StakingStore.sol +605 -0
  429. package/contracts/staking/TargetManagerLib.sol +207 -0
  430. package/contracts/{types → type}/AddressSet.sol +1 -1
  431. package/contracts/type/Amount.sol +135 -0
  432. package/contracts/{types → type}/Blocknumber.sol +21 -3
  433. package/contracts/{types → type}/ClaimId.sol +25 -2
  434. package/contracts/{types → type}/Fee.sol +33 -23
  435. package/contracts/{types → type}/NftId.sol +21 -15
  436. package/contracts/{types → type}/NftIdSet.sol +2 -2
  437. package/contracts/type/ObjectType.sol +271 -0
  438. package/contracts/{types → type}/PayoutId.sol +33 -5
  439. package/contracts/{types → type}/Referral.sol +6 -1
  440. package/contracts/type/RequestId.sol +75 -0
  441. package/contracts/{types → type}/RiskId.sol +1 -1
  442. package/contracts/type/RoleId.sol +174 -0
  443. package/contracts/type/Seconds.sol +81 -0
  444. package/contracts/type/Selector.sol +102 -0
  445. package/contracts/{types → type}/StateId.sol +34 -4
  446. package/contracts/type/String.sol +53 -0
  447. package/contracts/{types → type}/Timestamp.sol +23 -14
  448. package/contracts/{types → type}/UFixed.sol +35 -9
  449. package/contracts/{types → type}/Version.sol +5 -2
  450. package/contracts/{shared → upgradeability}/IVersionable.sol +1 -1
  451. package/contracts/{shared → upgradeability}/ProxyManager.sol +36 -7
  452. package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
  453. package/contracts/{shared → upgradeability}/Versionable.sol +1 -1
  454. package/package.json +8 -5
  455. package/artifacts/contracts/components/Component.sol/Component.dbg.json +0 -4
  456. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +0 -4
  457. package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +0 -4
  458. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +0 -4
  459. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +0 -4
  460. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +0 -4
  461. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
  462. package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
  463. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
  464. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -764
  465. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +0 -4
  466. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +0 -4
  467. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +0 -984
  468. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +0 -4
  469. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +0 -261
  470. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +0 -4
  471. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
  472. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +0 -4
  473. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
  474. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +0 -502
  475. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
  476. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -169
  477. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +0 -4
  478. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +0 -4
  479. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +0 -4
  480. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +0 -858
  481. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +0 -4
  482. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +0 -657
  483. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +0 -4
  484. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +0 -1085
  485. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +0 -4
  486. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +0 -661
  487. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +0 -4
  488. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +0 -743
  489. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +0 -4
  490. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +0 -637
  491. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +0 -4
  492. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +0 -935
  493. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +0 -4
  494. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +0 -677
  495. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +0 -4
  496. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +0 -4
  497. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +0 -4
  498. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.json +0 -398
  499. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +0 -4
  500. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.json +0 -480
  501. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +0 -4
  502. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +0 -4
  503. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +0 -336
  504. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +0 -4
  505. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +0 -4
  506. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +0 -1109
  507. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +0 -4
  508. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +0 -717
  509. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +0 -4
  510. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +0 -716
  511. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +0 -4
  512. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +0 -649
  513. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
  514. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -766
  515. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
  516. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +0 -649
  517. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +0 -4
  518. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +0 -285
  519. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
  520. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -547
  521. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +0 -4
  522. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +0 -107
  523. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
  524. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
  525. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +0 -582
  526. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
  527. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +0 -129
  528. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
  529. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +0 -4
  530. package/artifacts/contracts/test/TestFee.sol/TestFee.json +0 -119
  531. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +0 -4
  532. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +0 -383
  533. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +0 -4
  534. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +0 -116
  535. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +0 -4
  536. package/artifacts/contracts/test/TestService.sol/TestService.json +0 -510
  537. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +0 -4
  538. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +0 -376
  539. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +0 -4
  540. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +0 -218
  541. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +0 -4
  542. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +0 -104
  543. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +0 -4
  544. package/artifacts/contracts/test/Usdc.sol/USDC.json +0 -376
  545. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +0 -4
  546. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.json +0 -10
  547. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +0 -4
  548. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +0 -174
  549. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  550. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +0 -10
  551. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.dbg.json +0 -4
  552. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +0 -100
  553. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +0 -4
  554. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +0 -104
  555. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +0 -4
  556. package/artifacts/contracts/types/Fee.sol/FeeLib.json +0 -257
  557. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +0 -4
  558. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +0 -125
  559. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
  560. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -153
  561. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +0 -4
  562. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +0 -33
  563. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +0 -4
  564. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +0 -100
  565. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +0 -4
  566. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +0 -92
  567. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.dbg.json +0 -4
  568. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +0 -100
  569. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +0 -4
  570. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +0 -123
  571. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +0 -4
  572. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +0 -86
  573. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +0 -4
  574. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +0 -156
  575. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +0 -4
  576. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +0 -4
  577. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +0 -249
  578. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +0 -4
  579. package/artifacts/contracts/types/UFixed.sol/MathLib.json +0 -10
  580. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +0 -4
  581. package/artifacts/contracts/types/UFixed.sol/UFixedLib.json +0 -479
  582. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +0 -4
  583. package/artifacts/contracts/types/Version.sol/VersionLib.json +0 -177
  584. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +0 -4
  585. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +0 -49
  586. package/contracts/components/Component.sol +0 -241
  587. package/contracts/components/IComponent.sol +0 -54
  588. package/contracts/components/IDistributionComponent.sol +0 -100
  589. package/contracts/components/IPoolComponent.sol +0 -87
  590. package/contracts/components/IProductComponent.sol +0 -39
  591. package/contracts/components/Pool.sol +0 -254
  592. package/contracts/components/Product.sol +0 -285
  593. package/contracts/instance/InstanceAccessManager.sol +0 -297
  594. package/contracts/instance/base/ComponentService.sol +0 -134
  595. package/contracts/instance/base/KeyValueStore.sol +0 -172
  596. package/contracts/instance/base/Lifecycle.sol +0 -100
  597. package/contracts/instance/module/ITreasury.sol +0 -23
  598. package/contracts/instance/service/ApplicationService.sol +0 -268
  599. package/contracts/instance/service/BundleService.sol +0 -298
  600. package/contracts/instance/service/BundleServiceManager.sol +0 -51
  601. package/contracts/instance/service/ClaimService.sol +0 -151
  602. package/contracts/instance/service/DistributionService.sol +0 -277
  603. package/contracts/instance/service/DistributionServiceManager.sol +0 -51
  604. package/contracts/instance/service/IBundleService.sol +0 -54
  605. package/contracts/instance/service/IClaimService.sol +0 -61
  606. package/contracts/instance/service/IDistributionService.sol +0 -65
  607. package/contracts/instance/service/IPoolService.sol +0 -20
  608. package/contracts/instance/service/IProductService.sol +0 -40
  609. package/contracts/instance/service/PolicyService.sol +0 -474
  610. package/contracts/instance/service/PolicyServiceManager.sol +0 -54
  611. package/contracts/instance/service/PoolService.sol +0 -109
  612. package/contracts/instance/service/PoolServiceManager.sol +0 -51
  613. package/contracts/instance/service/ProductService.sol +0 -233
  614. package/contracts/instance/service/ProductServiceManager.sol +0 -54
  615. package/contracts/registry/RegistryAccessManager.sol +0 -216
  616. package/contracts/registry/ReleaseManager.sol +0 -322
  617. package/contracts/shared/ContractDeployerLib.sol +0 -72
  618. package/contracts/test/TestFee.sol +0 -25
  619. package/contracts/test/TestRegisterable.sol +0 -18
  620. package/contracts/test/TestRoleId.sol +0 -14
  621. package/contracts/test/TestService.sol +0 -25
  622. package/contracts/test/TestVersion.sol +0 -44
  623. package/contracts/test/TestVersionable.sol +0 -17
  624. package/contracts/test/Usdc.sol +0 -26
  625. package/contracts/types/ChainId.sol +0 -38
  626. package/contracts/types/NumberId.sol +0 -52
  627. package/contracts/types/ObjectType.sol +0 -156
  628. package/contracts/types/RoleId.sol +0 -90
  629. /package/contracts/{types → type}/DistributorType.sol +0 -0
  630. /package/contracts/{types → type}/Key32.sol +0 -0
@@ -1,81 +1,193 @@
1
1
  // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {DISTRIBUTION} from "../types/ObjectType.sol";
5
- import {IDistributionService} from "../instance/service/IDistributionService.sol";
6
- import {IProductService} from "../instance/service/IProductService.sol";
7
- import {NftId, zeroNftId, NftIdLib, toNftId} from "../types/NftId.sol";
8
- import {ReferralId, ReferralStatus, ReferralLib} from "../types/Referral.sol";
9
- import {Fee, FeeLib} from "../types/Fee.sol";
10
- import {Component} from "./Component.sol";
2
+ pragma solidity ^0.8.20;
3
+
4
+ import {Amount, AmountLib} from "../type/Amount.sol";
5
+ import {COMPONENT, DISTRIBUTION} from "../type/ObjectType.sol";
6
+ import {IAuthorization} from "../authorization/IAuthorization.sol";
7
+ import {IDistributionService} from "./IDistributionService.sol";
8
+ import {IProductService} from "../product/IProductService.sol";
9
+ import {NftId, NftIdLib} from "../type/NftId.sol";
10
+ import {ReferralId, ReferralStatus, ReferralLib} from "../type/Referral.sol";
11
+ import {Fee, FeeLib} from "../type/Fee.sol";
12
+ import {InstanceLinkedComponent} from "../shared/InstanceLinkedComponent.sol";
13
+ import {IComponentService} from "../shared/IComponentService.sol";
14
+ import {IDistribution} from "../instance/module/IDistribution.sol";
11
15
  import {IDistributionComponent} from "./IDistributionComponent.sol";
12
16
  import {IRegistry} from "../registry/IRegistry.sol";
13
- import {IRegisterable} from "../shared/IRegisterable.sol";
14
- import {ISetup} from "../instance/module/ISetup.sol";
15
- import {Registerable} from "../shared/Registerable.sol";
16
17
  import {TokenHandler} from "../shared/TokenHandler.sol";
17
18
  import {InstanceReader} from "../instance/InstanceReader.sol";
18
- import {UFixed} from "../types/UFixed.sol";
19
- import {DistributorType} from "../types/DistributorType.sol";
20
- import {Timestamp} from "../types/Timestamp.sol";
19
+ import {UFixed} from "../type/UFixed.sol";
20
+ import {DistributorType} from "../type/DistributorType.sol";
21
+ import {Timestamp, TimestampLib} from "../type/Timestamp.sol";
21
22
  import {ITransferInterceptor} from "../registry/ITransferInterceptor.sol";
22
23
 
23
24
 
24
25
  abstract contract Distribution is
25
- Component,
26
+ InstanceLinkedComponent,
26
27
  IDistributionComponent
27
28
  {
28
29
  // keccak256(abi.encode(uint256(keccak256("etherisc.storage.Distribution")) - 1)) & ~bytes32(uint256(0xff));
29
30
  bytes32 public constant DISTRIBUTION_STORAGE_LOCATION_V1 = 0xaab7c5ea03d290056d6c060e0833d3ebcbe647f7694616a2ec52738a64b2f900;
30
31
 
31
32
  struct DistributionStorage {
32
- Fee _distributionFee;
33
- TokenHandler _tokenHandler;
33
+ IComponentService _componentService;
34
34
  IDistributionService _distributionService;
35
35
  mapping(address distributor => NftId distributorNftId) _distributorNftId;
36
36
  }
37
37
 
38
- function initializeDistribution(
38
+ modifier onlyDistributor() {
39
+ if (!isDistributor(msg.sender)) {
40
+ revert ErrorDistributionNotDistributor(msg.sender);
41
+ }
42
+ _;
43
+ }
44
+
45
+ function register()
46
+ external
47
+ virtual
48
+ onlyOwner()
49
+ {
50
+ _getDistributionStorage()._componentService.registerDistribution();
51
+ _approveTokenHandler(type(uint256).max);
52
+ }
53
+
54
+
55
+ function isDistributor(address candidate)
56
+ public
57
+ view
58
+ returns (bool)
59
+ {
60
+ DistributionStorage storage $ = _getDistributionStorage();
61
+ return $._distributorNftId[candidate].gtz();
62
+ }
63
+
64
+
65
+ function getDistributorNftId(address distributor)
66
+ public
67
+ view
68
+ returns (NftId distributorNftId)
69
+ {
70
+ DistributionStorage storage $ = _getDistributionStorage();
71
+ return $._distributorNftId[distributor];
72
+ }
73
+
74
+
75
+ function getDiscountPercentage(string memory referralCode)
76
+ external
77
+ view
78
+ returns (
79
+ UFixed discountPercentage,
80
+ ReferralStatus status
81
+ )
82
+ {
83
+ ReferralId referralId = getReferralId(referralCode);
84
+ return _getInstanceReader().getDiscountPercentage(referralId);
85
+ }
86
+
87
+
88
+ function getReferralId(
89
+ string memory referralCode
90
+ )
91
+ public
92
+ view
93
+ returns (ReferralId referralId)
94
+ {
95
+ return ReferralLib.toReferralId(
96
+ getNftId(),
97
+ referralCode);
98
+ }
99
+
100
+
101
+ function calculateRenewalFeeAmount(
102
+ ReferralId referralId,
103
+ uint256 netPremiumAmount
104
+ )
105
+ external
106
+ view
107
+ virtual override
108
+ returns (uint256 feeAmount)
109
+ {
110
+ // default is no fees
111
+ return 0 * netPremiumAmount;
112
+ }
113
+
114
+
115
+ function processRenewal(
116
+ ReferralId referralId,
117
+ uint256 feeAmount
118
+ )
119
+ external
120
+ virtual
121
+ restricted()
122
+ {
123
+ // default is no action
124
+ }
125
+
126
+ /// @dev Returns true iff the component needs to be called when selling/renewing policis
127
+ function isVerifying() external pure returns (bool verifying) {
128
+ return true;
129
+ }
130
+
131
+ /// @inheritdoc IDistributionComponent
132
+ function withdrawCommission(NftId distributorNftId, Amount amount)
133
+ external
134
+ virtual
135
+ restricted()
136
+ onlyDistributor()
137
+ onlyNftOwner(distributorNftId)
138
+ returns (Amount withdrawnAmount)
139
+ {
140
+ return _withdrawCommission(distributorNftId, amount);
141
+ }
142
+
143
+ function _initializeDistribution(
39
144
  address registry,
40
145
  NftId instanceNftId,
146
+ IAuthorization authorization,
147
+ address initialOwner,
41
148
  string memory name,
42
149
  address token,
43
- Fee memory distributionFee,
44
- address initialOwner,
45
- bytes memory data
150
+ bytes memory registryData, // writeonly data that will saved in the object info record of the registry
151
+ bytes memory componentData // component specifidc data
46
152
  )
47
- public
153
+ internal
48
154
  virtual
49
155
  onlyInitializing()
50
156
  {
51
- initializeComponent(registry, instanceNftId, name, token, DISTRIBUTION(), true, initialOwner, data);
157
+ _initializeInstanceLinkedComponent(
158
+ registry,
159
+ instanceNftId,
160
+ name,
161
+ token,
162
+ DISTRIBUTION(),
163
+ authorization,
164
+ true,
165
+ initialOwner,
166
+ registryData,
167
+ componentData);
52
168
 
53
169
  DistributionStorage storage $ = _getDistributionStorage();
54
- // TODO add validation
55
- $._distributionFee = distributionFee;
56
- $._tokenHandler = new TokenHandler(token);
57
- $._distributionService = getInstance().getDistributionService();
170
+ $._distributionService = IDistributionService(_getServiceAddress(DISTRIBUTION()));
171
+ $._componentService = IComponentService(_getServiceAddress(COMPONENT()));
58
172
 
59
173
  registerInterface(type(IDistributionComponent).interfaceId);
60
174
  }
61
175
 
62
- function setFees(
63
- Fee memory distributionFee
176
+ /// @dev Sets the distribution fees to the provided values.
177
+ function _setFees(
178
+ Fee memory distributionFee,
179
+ Fee memory minDistributionOwnerFee
64
180
  )
65
- external
66
- override
67
- onlyOwner
68
- restricted()
181
+ internal
182
+ virtual
69
183
  {
70
- _getDistributionStorage()._distributionService.setFees(distributionFee);
71
- }
72
-
73
- function getDistributionFee() external view returns (Fee memory distributionFee) {
74
- DistributionStorage storage $ = _getDistributionStorage();
75
- return $._distributionFee;
184
+ _getDistributionStorage()._componentService.setDistributionFees(
185
+ distributionFee,
186
+ minDistributionOwnerFee);
76
187
  }
77
188
 
78
- function createDistributorType(
189
+ /// @dev Creates a new distributor type using the provided parameters.
190
+ function _createDistributorType(
79
191
  string memory name,
80
192
  UFixed minDiscountPercentage,
81
193
  UFixed maxDiscountPercentage,
@@ -86,7 +198,8 @@ abstract contract Distribution is
86
198
  bool allowRenewals,
87
199
  bytes memory data
88
200
  )
89
- public
201
+ internal
202
+ virtual
90
203
  returns (DistributorType distributorType)
91
204
  {
92
205
  DistributionStorage storage $ = _getDistributionStorage();
@@ -102,16 +215,20 @@ abstract contract Distribution is
102
215
  data);
103
216
  }
104
217
 
105
- function createDistributor(
218
+ /// @dev Turns the provided account into a new distributor of the specified type.
219
+ function _createDistributor(
106
220
  address distributor,
107
221
  DistributorType distributorType,
108
222
  bytes memory data
109
223
  )
110
- public
224
+ internal
225
+ virtual
111
226
  returns(NftId distributorNftId)
112
227
  {
113
228
  DistributionStorage storage $ = _getDistributionStorage();
114
- require($._distributorNftId[distributor].eqz(), "ERROR:DST-030:ALREADY_DISTRIBUTOR");
229
+ if($._distributorNftId[distributor].gtz()) {
230
+ revert ErrorDistributionAlreadyDistributor(distributor, $._distributorNftId[distributor]);
231
+ }
115
232
 
116
233
  distributorNftId = $._distributionService.createDistributor(
117
234
  distributor,
@@ -121,27 +238,25 @@ abstract contract Distribution is
121
238
  $._distributorNftId[distributor] = distributorNftId;
122
239
  }
123
240
 
124
- function updateDistributorType(
241
+ /// @dev Uptates the distributor type for the specified distributor.
242
+ function _updateDistributorType(
125
243
  NftId distributorNftId,
126
244
  DistributorType distributorType,
127
245
  bytes memory data
128
246
  )
129
- public
130
- // TODO figure out what we need for authz
131
- // and add it
247
+ internal
248
+ virtual
132
249
  {
133
250
  DistributionStorage storage $ = _getDistributionStorage();
134
- $._distributionService.updateDistributorType(
135
- distributorNftId,
136
- distributorType,
137
- data);
251
+ // TODO re-enable once implemented
252
+ // $._distributionService.updateDistributorType(
253
+ // distributorNftId,
254
+ // distributorType,
255
+ // data);
138
256
  }
139
257
 
140
- /**
141
- * @dev lets distributors create referral codes.
142
- * referral codes need to be unique
143
- */
144
- function createReferral(
258
+ /// @dev Create a new referral code for the provided distributor.
259
+ function _createReferral(
145
260
  NftId distributorNftId,
146
261
  string memory code,
147
262
  UFixed discountPercentage,
@@ -149,8 +264,8 @@ abstract contract Distribution is
149
264
  Timestamp expiryAt,
150
265
  bytes memory data
151
266
  )
152
- public
153
- // TODO add authz (only active distributor)
267
+ internal
268
+ virtual
154
269
  returns (ReferralId referralId)
155
270
  {
156
271
  DistributionStorage storage $ = _getDistributionStorage();
@@ -163,141 +278,19 @@ abstract contract Distribution is
163
278
  data);
164
279
  }
165
280
 
166
- function calculateFeeAmount(
167
- ReferralId referralId,
168
- uint256 netPremiumAmount
169
- )
170
- external
171
- view
172
- virtual override
173
- returns (uint256 feeAmount)
174
- {
175
- ISetup.DistributionSetupInfo memory setupInfo = getSetupInfo();
176
- Fee memory fee = setupInfo.distributionFee;
177
- (feeAmount,) = FeeLib.calculateFee(fee, netPremiumAmount);
178
- // TODO: use this?
179
- // return _distributionService.calculateFeeAmount(referralId, premiumAmount);
180
- }
181
-
182
- function isDistributor(address candidate)
183
- public
184
- view
185
- returns (bool)
186
- {
187
- DistributionStorage storage $ = _getDistributionStorage();
188
- return $._distributorNftId[candidate].gtz();
189
- }
190
-
191
- function getDistributorNftId(address distributor)
192
- public
193
- view
194
- returns (NftId distributorNftId)
195
- {
196
- DistributionStorage storage $ = _getDistributionStorage();
197
- return $._distributorNftId[distributor];
198
- }
199
-
200
- function getDiscountPercentage(string memory referralCode)
201
- external
202
- view
203
- returns (
204
- UFixed discountPercentage,
205
- ReferralStatus status
206
- )
207
- {
208
- ReferralId referralId = getReferralId(referralCode);
209
- return getInstanceReader().getDiscountPercentage(referralId);
210
- }
211
-
212
-
213
- function getReferralId(
214
- string memory referralCode
215
- )
216
- public
217
- view
218
- returns (ReferralId referralId)
219
- {
220
- return ReferralLib.toReferralId(
221
- getNftId(),
222
- referralCode);
223
- }
224
-
225
- function calculateRenewalFeeAmount(
226
- ReferralId referralId,
227
- uint256 netPremiumAmount
228
- )
229
- external
230
- view
231
- virtual override
232
- returns (uint256 feeAmount)
281
+ function _withdrawCommission(NftId distributorNftId, Amount amount)
282
+ internal
283
+ returns (Amount withdrawnAmount)
233
284
  {
234
- // default is no fees
235
- return 0 * netPremiumAmount;
285
+ return _getDistributionStorage()._distributionService.withdrawCommission(distributorNftId, amount);
236
286
  }
237
287
 
238
- function processSale(
239
- ReferralId referralId,
240
- uint256 premiumAmount
241
- )
242
- external
243
- onlyOwner
244
- restricted()
245
- virtual override
246
- {
247
- DistributionStorage storage $ = _getDistributionStorage();
248
- $._distributionService.processSale(referralId, premiumAmount);
249
- }
250
-
251
- function processRenewal(
252
- ReferralId referralId,
253
- uint256 feeAmount
254
- )
255
- external
256
- onlyOwner
257
- restricted()
258
- virtual override
259
- {
260
- // default is no action
261
- }
262
-
263
- function referralIsValid(ReferralId referralId) external view returns (bool isValid) {
264
- // default is invalid
265
- return false;
266
- }
267
-
268
- function getSetupInfo() public view returns (ISetup.DistributionSetupInfo memory setupInfo) {
269
- InstanceReader reader = getInstance().getInstanceReader();
270
- setupInfo = reader.getDistributionSetupInfo(getNftId());
271
-
272
- // fallback to initial setup info (wallet is always != address(0))
273
- if(setupInfo.wallet == address(0)) {
274
- setupInfo = _getInitialSetupInfo();
275
- }
276
- }
277
-
278
- function _getInitialSetupInfo() internal view returns (ISetup.DistributionSetupInfo memory setupInfo) {
279
- DistributionStorage storage $ = _getDistributionStorage();
280
- return ISetup.DistributionSetupInfo(
281
- zeroNftId(),
282
- $._tokenHandler,
283
- $._distributionFee,
284
- address(this)
285
- );
286
- }
287
-
288
-
289
- function nftTransferFrom(address from, address to, uint256 tokenId) external virtual override (Component, ITransferInterceptor) {
288
+ function _nftTransferFrom(address from, address to, uint256 tokenId) internal virtual override {
290
289
  // keep track of distributor nft owner
291
290
  emit LogDistributorUpdated(to, msg.sender);
292
291
  DistributionStorage storage $ = _getDistributionStorage();
293
- $._distributorNftId[from] = zeroNftId();
294
- $._distributorNftId[to] = toNftId(tokenId);
295
- }
296
-
297
-
298
- /// @dev returns true iff the component needs to be called when selling/renewing policis
299
- function isVerifying() external view returns (bool verifying) {
300
- return true;
292
+ $._distributorNftId[from] = NftIdLib.zero();
293
+ $._distributorNftId[to] = NftIdLib.toNftId(tokenId);
301
294
  }
302
295
 
303
296
  function _getDistributionStorage() private pure returns (DistributionStorage storage $) {