@etherisc/gif-next 0.0.2-8d47fa1-080 → 0.0.2-8d9d4d6-542

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 (703) hide show
  1. package/README.md +179 -14
  2. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
  3. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +1502 -0
  4. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +4 -0
  5. package/artifacts/contracts/{instance/module/access → authorization}/IAccess.sol/IAccess.json +1 -1
  6. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
  7. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +1168 -0
  8. package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +4 -0
  9. package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.json +110 -0
  10. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
  11. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +129 -0
  12. package/artifacts/contracts/authorization/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  13. package/artifacts/contracts/authorization/InstanceAdmin.sol/InstanceAdmin.json +1639 -0
  14. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +4 -0
  15. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +134 -0
  16. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
  17. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +171 -0
  18. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
  19. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +1416 -0
  20. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
  21. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1378 -0
  22. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  23. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +826 -0
  24. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  25. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +975 -0
  26. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  27. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +827 -0
  28. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +4 -0
  29. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +709 -0
  30. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  31. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +358 -1865
  32. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +4 -0
  33. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +769 -0
  34. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  35. package/artifacts/contracts/instance/Instance.sol/Instance.json +445 -2059
  36. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  37. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +708 -0
  38. package/artifacts/contracts/instance/InstanceAdminNew.sol/InstanceAdminNew.dbg.json +4 -0
  39. package/artifacts/contracts/instance/InstanceAdminNew.sol/InstanceAdminNew.json +1676 -0
  40. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
  41. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +289 -0
  42. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +4 -0
  43. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +228 -0
  44. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +4 -0
  45. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1701 -0
  46. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +4 -0
  47. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +1220 -0
  48. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +4 -0
  49. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +758 -0
  50. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  51. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3598 -0
  52. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +4 -0
  53. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +318 -0
  54. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +4 -0
  55. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.json +137 -0
  56. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +4 -0
  57. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +10 -0
  58. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +4 -0
  59. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +187 -0
  60. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +4 -0
  61. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +129 -0
  62. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +4 -0
  63. package/artifacts/contracts/instance/module/{bundle/IBundle.sol → IBundle.sol}/IBundle.json +1 -1
  64. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  65. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.json +10 -0
  66. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +4 -0
  67. package/artifacts/contracts/instance/module/{distribution/IDistribution.sol → IDistribution.sol}/IDistribution.json +1 -1
  68. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +4 -0
  69. package/artifacts/contracts/instance/module/{policy/IPolicy.sol → IPolicy.sol}/IPolicy.json +1 -1
  70. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +4 -0
  71. package/artifacts/contracts/instance/module/{risk/IRisk.sol → IRisk.sol}/IRisk.json +1 -1
  72. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +4 -0
  73. package/artifacts/contracts/mock/Dip.sol/Dip.json +376 -0
  74. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
  75. package/artifacts/contracts/{instance/base/ModuleBase.sol/ModuleBase.json → oracle/IOracle.sol/IOracle.json} +2 -2
  76. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
  77. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +759 -0
  78. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
  79. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +675 -0
  80. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
  81. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +1146 -0
  82. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
  83. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +1034 -0
  84. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
  85. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +730 -0
  86. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +4 -0
  87. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1134 -0
  88. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  89. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +754 -0
  90. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
  91. package/artifacts/contracts/{instance/service/IProductService.sol/IProductService.json → pool/IBundleService.sol/IBundleService.json} +342 -313
  92. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
  93. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +1154 -0
  94. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
  95. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1078 -0
  96. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
  97. package/artifacts/contracts/pool/Pool.sol/Pool.json +1565 -0
  98. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
  99. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1453 -0
  100. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  101. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +742 -0
  102. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  103. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +863 -0
  104. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  105. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +730 -0
  106. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
  107. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1315 -0
  108. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  109. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +822 -0
  110. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  111. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +512 -0
  112. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
  113. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +772 -0
  114. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  115. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +720 -0
  116. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
  117. package/artifacts/contracts/{instance/service/IPoolService.sol/IPoolService.json → product/IPricingService.sol/IPricingService.json} +320 -255
  118. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
  119. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +995 -0
  120. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +4 -0
  121. package/artifacts/contracts/{instance/service/IComponentOwnerService.sol/IComponentOwnerService.json → product/IProductService.sol/IProductService.json} +187 -176
  122. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
  123. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1183 -0
  124. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  125. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +766 -0
  126. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
  127. package/artifacts/contracts/product/PricingService.sol/PricingService.json +1012 -0
  128. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  129. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +786 -0
  130. package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
  131. package/artifacts/contracts/product/Product.sol/Product.json +1397 -0
  132. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +4 -0
  133. package/artifacts/contracts/product/ProductService.sol/ProductService.json +708 -0
  134. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +4 -0
  135. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +702 -0
  136. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  137. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +60 -2
  138. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  139. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +396 -61
  140. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  141. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +621 -166
  142. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  143. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +18 -0
  144. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  145. package/artifacts/contracts/registry/Registry.sol/Registry.json +630 -235
  146. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
  147. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1932 -0
  148. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  149. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +863 -272
  150. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +4 -0
  151. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +721 -0
  152. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +4 -0
  153. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +1237 -0
  154. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
  155. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +195 -0
  156. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +4 -0
  157. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +661 -0
  158. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +4 -0
  159. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +1193 -0
  160. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +4 -0
  161. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +1747 -0
  162. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +4 -0
  163. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +1760 -0
  164. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +4 -0
  165. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +1838 -0
  166. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +4 -0
  167. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +1856 -0
  168. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
  169. package/artifacts/contracts/shared/Component.sol/Component.json +896 -0
  170. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
  171. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1511 -0
  172. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
  173. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +796 -0
  174. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
  175. package/artifacts/contracts/{instance/base/ComponentServiceBase.sol/ComponentServiceBase.json → shared/ComponentVerifyingService.sol/ComponentVerifyingService.json} +298 -152
  176. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  177. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +41 -3
  178. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +4 -0
  179. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +1562 -0
  180. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +4 -0
  181. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +1600 -0
  182. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
  183. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +631 -0
  184. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
  185. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +880 -0
  186. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
  187. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +705 -0
  188. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
  189. package/artifacts/contracts/{instance/base → shared}/IKeyValueStore.sol/IKeyValueStore.json +77 -169
  190. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
  191. package/artifacts/contracts/{instance/base → shared}/ILifecycle.sol/ILifecycle.json +1 -1
  192. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +4 -0
  193. package/artifacts/contracts/{instance/module/component/IComponent.sol/IComponentModule.json → shared/INftOwnable.sol/INftOwnable.json} +66 -52
  194. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
  195. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +207 -0
  196. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  197. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +65 -8
  198. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
  199. package/artifacts/contracts/{registry → shared}/IRegistryLinked.sol/IRegistryLinked.json +13 -2
  200. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +4 -0
  201. package/artifacts/contracts/{instance/base → shared}/IService.sol/IService.json +155 -153
  202. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  203. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +2 -152
  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 +1036 -0
  208. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
  209. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +571 -0
  210. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
  211. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +194 -0
  212. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +4 -0
  213. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.json +306 -0
  214. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +4 -0
  215. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +244 -0
  216. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
  217. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +320 -0
  218. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  219. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +369 -62
  220. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  221. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +205 -12
  222. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
  223. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +71 -0
  224. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +4 -0
  225. package/artifacts/contracts/{instance/base/InstanceBase.sol/InstanceBase.json → shared/Service.sol/Service.json} +242 -191
  226. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +4 -0
  227. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +150 -0
  228. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  229. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
  230. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  231. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +2 -152
  232. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
  233. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1438 -0
  234. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
  235. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +1035 -0
  236. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
  237. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +460 -0
  238. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
  239. package/artifacts/contracts/staking/Staking.sol/Staking.json +2005 -0
  240. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
  241. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +761 -0
  242. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
  243. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +592 -0
  244. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
  245. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1343 -0
  246. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
  247. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +718 -0
  248. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
  249. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2261 -0
  250. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
  251. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +571 -0
  252. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
  253. package/artifacts/contracts/{types → type}/AddressSet.sol/LibAddressSet.json +3 -3
  254. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
  255. package/artifacts/contracts/type/Amount.sol/AmountLib.json +345 -0
  256. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
  257. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +225 -0
  258. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  259. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +179 -0
  260. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  261. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +104 -0
  262. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
  263. package/artifacts/contracts/type/Fee.sol/FeeLib.json +312 -0
  264. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
  265. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +125 -0
  266. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
  267. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +209 -0
  268. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
  269. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +33 -0
  270. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
  271. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +215 -0
  272. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  273. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
  274. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
  275. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
  276. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
  277. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
  278. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
  279. package/artifacts/contracts/{types → type}/RiskId.sol/RiskIdLib.json +5 -5
  280. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
  281. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +266 -0
  282. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
  283. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +198 -0
  284. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
  285. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +129 -0
  286. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
  287. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
  288. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
  289. package/artifacts/contracts/{types → type}/StateId.sol/StateIdLib.json +3 -3
  290. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
  291. package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
  292. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
  293. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +293 -0
  294. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +4 -0
  295. package/artifacts/contracts/{types/ChainId.sol/ChainIdLib.json → type/UFixed.sol/MathLib.json} +4 -4
  296. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
  297. package/artifacts/contracts/{types/UFixed.sol/UFixedMathLib.json → type/UFixed.sol/UFixedLib.json} +4 -4
  298. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
  299. package/artifacts/contracts/{types → type}/Version.sol/VersionLib.json +3 -3
  300. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
  301. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +49 -0
  302. package/contracts/authorization/AccessAdmin.sol +749 -0
  303. package/contracts/authorization/IAccess.sol +43 -0
  304. package/contracts/authorization/IAccessAdmin.sol +130 -0
  305. package/contracts/authorization/IModuleAuthorization.sol +27 -0
  306. package/contracts/authorization/IServiceAuthorization.sol +35 -0
  307. package/contracts/authorization/InstanceAdmin.sol +108 -0
  308. package/contracts/authorization/ModuleAuthorization.sol +116 -0
  309. package/contracts/authorization/ServiceAuthorization.sol +86 -0
  310. package/contracts/distribution/Distribution.sol +261 -0
  311. package/contracts/distribution/DistributionService.sol +297 -0
  312. package/contracts/distribution/DistributionServiceManager.sol +42 -0
  313. package/contracts/distribution/IDistributionComponent.sol +66 -0
  314. package/contracts/distribution/IDistributionService.sol +81 -0
  315. package/contracts/instance/BundleManager.sol +126 -0
  316. package/contracts/instance/IInstance.sol +79 -46
  317. package/contracts/instance/IInstanceService.sol +97 -0
  318. package/contracts/instance/Instance.sol +243 -69
  319. package/contracts/instance/InstanceAdmin.sol +331 -0
  320. package/contracts/instance/InstanceAdminNew.sol +74 -0
  321. package/contracts/instance/InstanceAuthorizationV3.sol +176 -0
  322. package/contracts/instance/InstanceAuthorizationsLib.sol +377 -0
  323. package/contracts/instance/InstanceReader.sol +392 -0
  324. package/contracts/instance/InstanceService.sol +439 -0
  325. package/contracts/instance/InstanceServiceManager.sol +44 -0
  326. package/contracts/instance/InstanceStore.sol +269 -0
  327. package/contracts/instance/base/BalanceStore.sol +123 -0
  328. package/contracts/instance/base/Cloneable.sol +28 -0
  329. package/contracts/instance/base/ObjectCounter.sol +21 -0
  330. package/contracts/instance/base/ObjectManager.sol +80 -0
  331. package/contracts/instance/module/IAccess.sol +46 -0
  332. package/contracts/instance/module/IBundle.sol +20 -0
  333. package/contracts/instance/module/IComponents.sol +52 -0
  334. package/contracts/instance/module/IDistribution.sol +42 -0
  335. package/contracts/instance/module/IPolicy.sol +84 -0
  336. package/contracts/instance/module/IRisk.sol +11 -0
  337. package/contracts/{test/Usdc.sol → mock/Dip.sol} +5 -5
  338. package/contracts/oracle/IOracle.sol +20 -0
  339. package/contracts/oracle/IOracleComponent.sol +32 -0
  340. package/contracts/oracle/IOracleService.sol +65 -0
  341. package/contracts/oracle/Oracle.sol +145 -0
  342. package/contracts/oracle/OracleService.sol +278 -0
  343. package/contracts/oracle/OracleServiceManager.sol +42 -0
  344. package/contracts/pool/BundleService.sol +296 -0
  345. package/contracts/pool/BundleServiceManager.sol +42 -0
  346. package/contracts/pool/IBundleService.sol +106 -0
  347. package/contracts/pool/IPoolComponent.sol +112 -0
  348. package/contracts/pool/IPoolService.sol +150 -0
  349. package/contracts/pool/Pool.sol +299 -0
  350. package/contracts/pool/PoolService.sol +452 -0
  351. package/contracts/pool/PoolServiceManager.sol +42 -0
  352. package/contracts/product/ApplicationService.sol +254 -0
  353. package/contracts/product/ApplicationServiceManager.sol +38 -0
  354. package/contracts/product/ClaimService.sol +442 -0
  355. package/contracts/product/ClaimServiceManager.sol +38 -0
  356. package/contracts/product/IApplicationService.sol +62 -0
  357. package/contracts/product/IClaimService.sol +99 -0
  358. package/contracts/product/IPolicyService.sol +78 -0
  359. package/contracts/product/IPricingService.sol +39 -0
  360. package/contracts/product/IProductComponent.sol +42 -0
  361. package/contracts/product/IProductService.sol +33 -0
  362. package/contracts/product/PolicyService.sol +475 -0
  363. package/contracts/product/PolicyServiceManager.sol +42 -0
  364. package/contracts/product/PricingService.sol +300 -0
  365. package/contracts/product/PricingServiceManager.sol +42 -0
  366. package/contracts/product/Product.sol +377 -0
  367. package/contracts/product/ProductService.sol +124 -0
  368. package/contracts/product/ProductServiceManager.sol +42 -0
  369. package/contracts/registry/ChainNft.sol +55 -25
  370. package/contracts/registry/IRegistry.sol +84 -35
  371. package/contracts/registry/IRegistryService.sol +56 -16
  372. package/contracts/registry/ITransferInterceptor.sol +1 -0
  373. package/contracts/registry/Registry.sol +411 -334
  374. package/contracts/registry/RegistryAdmin.sol +325 -0
  375. package/contracts/registry/RegistryService.sol +157 -274
  376. package/contracts/registry/RegistryServiceManager.sol +53 -0
  377. package/contracts/registry/ReleaseManager.sol +529 -0
  378. package/contracts/registry/ServiceAuthorizationV3.sol +200 -0
  379. package/contracts/registry/TokenRegistry.sol +315 -0
  380. package/contracts/shared/AccessManagerCustom.sol +741 -0
  381. package/contracts/shared/AccessManagerExtended.sol +481 -0
  382. package/contracts/shared/AccessManagerExtendedInitializeable.sol +13 -0
  383. package/contracts/shared/AccessManagerExtendedWithDisable.sol +137 -0
  384. package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +14 -0
  385. package/contracts/shared/Component.sol +281 -0
  386. package/contracts/shared/ComponentService.sol +617 -0
  387. package/contracts/shared/ComponentServiceManager.sol +35 -0
  388. package/contracts/shared/ComponentVerifyingService.sol +117 -0
  389. package/contracts/shared/ERC165.sol +16 -10
  390. package/contracts/shared/IAccessManagerExtended.sol +74 -0
  391. package/contracts/shared/IAccessManagerExtendedWithDisable.sol +18 -0
  392. package/contracts/shared/IComponent.sol +70 -0
  393. package/contracts/shared/IComponentService.sol +102 -0
  394. package/contracts/shared/IInstanceLinkedComponent.sol +46 -0
  395. package/contracts/shared/IKeyValueStore.sol +53 -0
  396. package/contracts/{instance/base → shared}/ILifecycle.sol +4 -4
  397. package/contracts/shared/INftOwnable.sol +23 -0
  398. package/contracts/shared/IPolicyHolder.sol +45 -0
  399. package/contracts/shared/IRegisterable.sol +5 -12
  400. package/contracts/shared/IRegistryLinked.sol +11 -0
  401. package/contracts/shared/IService.sol +25 -0
  402. package/contracts/shared/IVersionable.sol +5 -48
  403. package/contracts/shared/InitializableCustom.sol +177 -0
  404. package/contracts/shared/InstanceLinkedComponent.sol +144 -0
  405. package/contracts/shared/KeyValueStore.sol +127 -0
  406. package/contracts/{instance/base → shared}/Lifecycle.sol +38 -8
  407. package/contracts/shared/NftIdSetManager.sol +65 -0
  408. package/contracts/shared/NftOwnable.sol +107 -0
  409. package/contracts/shared/PolicyHolder.sol +102 -0
  410. package/contracts/shared/ProxyManager.sol +127 -43
  411. package/contracts/shared/Registerable.sol +33 -75
  412. package/contracts/shared/RegistryLinked.sol +43 -0
  413. package/contracts/shared/Service.sol +83 -0
  414. package/contracts/shared/TokenHandler.sol +58 -0
  415. package/contracts/shared/UpgradableProxyWithAdmin.sol +2 -2
  416. package/contracts/shared/Versionable.sol +5 -93
  417. package/contracts/staking/IStaking.sol +168 -0
  418. package/contracts/staking/IStakingService.sol +153 -0
  419. package/contracts/staking/StakeManagerLib.sol +231 -0
  420. package/contracts/staking/Staking.sol +513 -0
  421. package/contracts/staking/StakingManager.sol +54 -0
  422. package/contracts/staking/StakingReader.sol +187 -0
  423. package/contracts/staking/StakingService.sol +411 -0
  424. package/contracts/staking/StakingServiceManager.sol +44 -0
  425. package/contracts/staking/StakingStore.sol +613 -0
  426. package/contracts/staking/TargetManagerLib.sol +207 -0
  427. package/contracts/{types → type}/AddressSet.sol +1 -1
  428. package/contracts/type/Amount.sol +128 -0
  429. package/contracts/{types → type}/Blocknumber.sol +21 -3
  430. package/contracts/type/ClaimId.sol +75 -0
  431. package/contracts/type/DistributorType.sol +55 -0
  432. package/contracts/type/Fee.sol +66 -0
  433. package/contracts/{types → type}/Key32.sol +8 -3
  434. package/contracts/{types → type}/NftId.sol +21 -15
  435. package/contracts/type/NftIdSet.sol +62 -0
  436. package/contracts/type/ObjectType.sol +264 -0
  437. package/contracts/type/PayoutId.sol +82 -0
  438. package/contracts/type/Referral.sol +89 -0
  439. package/contracts/type/RequestId.sol +75 -0
  440. package/contracts/{types → type}/RiskId.sol +1 -1
  441. package/contracts/type/RoleId.sol +201 -0
  442. package/contracts/type/Seconds.sol +81 -0
  443. package/contracts/type/Selector.sol +102 -0
  444. package/contracts/{types → type}/StateId.sol +39 -5
  445. package/contracts/type/String.sol +53 -0
  446. package/contracts/{types → type}/Timestamp.sol +27 -14
  447. package/contracts/{types → type}/UFixed.sol +129 -12
  448. package/contracts/{types → type}/Version.sol +6 -2
  449. package/package.json +8 -7
  450. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +0 -4
  451. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.json +0 -213
  452. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +0 -4
  453. package/artifacts/contracts/components/Distribution.sol/Distribution.json +0 -445
  454. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +0 -4
  455. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.json +0 -177
  456. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +0 -4
  457. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +0 -343
  458. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +0 -4
  459. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +0 -474
  460. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +0 -4
  461. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +0 -373
  462. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
  463. package/artifacts/contracts/components/Pool.sol/Pool.json +0 -602
  464. package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
  465. package/artifacts/contracts/components/Product.sol/Product.json +0 -502
  466. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
  467. package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
  468. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
  469. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
  470. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  471. package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
  472. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  473. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
  474. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  475. package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
  476. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  477. package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
  478. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  479. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
  480. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  481. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.json +0 -37
  482. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  483. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.json +0 -50
  484. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  485. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
  486. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
  487. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
  488. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
  489. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.json +0 -124
  490. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
  491. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
  492. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
  493. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
  494. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
  495. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
  496. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  497. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  498. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  499. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
  500. package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.dbg.json +0 -4
  501. package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.json +0 -24
  502. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
  503. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
  504. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.json +0 -113
  505. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
  506. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +0 -4
  507. package/artifacts/contracts/instance/base/IService.sol/IService.dbg.json +0 -4
  508. package/artifacts/contracts/instance/base/InstanceBase.sol/InstanceBase.dbg.json +0 -4
  509. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
  510. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +0 -710
  511. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
  512. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -169
  513. package/artifacts/contracts/instance/base/ModuleBase.sol/ModuleBase.dbg.json +0 -4
  514. package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.dbg.json +0 -4
  515. package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.json +0 -380
  516. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.dbg.json +0 -4
  517. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.json +0 -333
  518. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccess.dbg.json +0 -4
  519. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.dbg.json +0 -4
  520. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.json +0 -333
  521. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.dbg.json +0 -4
  522. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.json +0 -297
  523. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundle.dbg.json +0 -4
  524. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.dbg.json +0 -4
  525. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.json +0 -297
  526. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.dbg.json +0 -4
  527. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.json +0 -117
  528. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.dbg.json +0 -4
  529. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.json +0 -10
  530. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.dbg.json +0 -4
  531. package/artifacts/contracts/instance/module/distribution/DistributionModule.sol/DistributionModule.dbg.json +0 -4
  532. package/artifacts/contracts/instance/module/distribution/DistributionModule.sol/DistributionModule.json +0 -10
  533. package/artifacts/contracts/instance/module/distribution/IDistribution.sol/IDistribution.dbg.json +0 -4
  534. package/artifacts/contracts/instance/module/distribution/IDistribution.sol/IDistributionModule.dbg.json +0 -4
  535. package/artifacts/contracts/instance/module/distribution/IDistribution.sol/IDistributionModule.json +0 -10
  536. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicy.dbg.json +0 -4
  537. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.dbg.json +0 -4
  538. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.json +0 -284
  539. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.dbg.json +0 -4
  540. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.json +0 -284
  541. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.dbg.json +0 -4
  542. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.json +0 -10
  543. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.dbg.json +0 -4
  544. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.json +0 -164
  545. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.dbg.json +0 -4
  546. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.json +0 -164
  547. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRisk.dbg.json +0 -4
  548. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.dbg.json +0 -4
  549. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.json +0 -113
  550. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.dbg.json +0 -4
  551. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.json +0 -131
  552. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasury.dbg.json +0 -4
  553. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasury.json +0 -10
  554. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.dbg.json +0 -4
  555. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.json +0 -638
  556. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.dbg.json +0 -4
  557. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.json +0 -76
  558. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.dbg.json +0 -4
  559. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.json +0 -638
  560. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +0 -4
  561. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +0 -690
  562. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +0 -4
  563. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +0 -526
  564. package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +0 -4
  565. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +0 -4
  566. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.json +0 -369
  567. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +0 -4
  568. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +0 -4
  569. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +0 -4
  570. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +0 -649
  571. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
  572. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -964
  573. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.dbg.json +0 -4
  574. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.json +0 -457
  575. package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.dbg.json +0 -4
  576. package/artifacts/contracts/registry/RegistryInstaller.sol/RegistryInstaller.dbg.json +0 -4
  577. package/artifacts/contracts/registry/RegistryInstaller.sol/RegistryInstaller.json +0 -344
  578. package/artifacts/contracts/shared/IOwnable.sol/IOwnable.dbg.json +0 -4
  579. package/artifacts/contracts/shared/IOwnable.sol/IOwnable.json +0 -24
  580. package/artifacts/contracts/test/TestDistribution.sol/TestDistribution.dbg.json +0 -4
  581. package/artifacts/contracts/test/TestDistribution.sol/TestDistribution.json +0 -445
  582. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +0 -4
  583. package/artifacts/contracts/test/TestFee.sol/TestFee.json +0 -119
  584. package/artifacts/contracts/test/TestPool.sol/TestPool.dbg.json +0 -4
  585. package/artifacts/contracts/test/TestPool.sol/TestPool.json +0 -602
  586. package/artifacts/contracts/test/TestProduct.sol/TestProduct.dbg.json +0 -4
  587. package/artifacts/contracts/test/TestProduct.sol/TestProduct.json +0 -632
  588. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +0 -4
  589. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +0 -191
  590. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +0 -4
  591. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +0 -116
  592. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +0 -4
  593. package/artifacts/contracts/test/TestService.sol/TestService.json +0 -472
  594. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +0 -4
  595. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +0 -338
  596. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +0 -4
  597. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +0 -218
  598. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +0 -4
  599. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +0 -270
  600. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +0 -4
  601. package/artifacts/contracts/test/Usdc.sol/USDC.json +0 -338
  602. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +0 -4
  603. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +0 -4
  604. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +0 -174
  605. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  606. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +0 -4
  607. package/artifacts/contracts/types/Fee.sol/FeeLib.json +0 -257
  608. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +0 -4
  609. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +0 -111
  610. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
  611. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -153
  612. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +0 -4
  613. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +0 -10
  614. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +0 -4
  615. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +0 -92
  616. package/artifacts/contracts/types/ReferralId.sol/ReferralIdLib.dbg.json +0 -4
  617. package/artifacts/contracts/types/ReferralId.sol/ReferralIdLib.json +0 -99
  618. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +0 -4
  619. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +0 -4
  620. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +0 -30
  621. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +0 -4
  622. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +0 -4
  623. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +0 -236
  624. package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.dbg.json +0 -4
  625. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +0 -4
  626. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +0 -4
  627. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +0 -30
  628. package/contracts/components/BaseComponent.sol +0 -79
  629. package/contracts/components/Distribution.sol +0 -155
  630. package/contracts/components/IBaseComponent.sol +0 -19
  631. package/contracts/components/IDistributionComponent.sol +0 -47
  632. package/contracts/components/IPoolComponent.sol +0 -65
  633. package/contracts/components/IProductComponent.sol +0 -39
  634. package/contracts/components/Pool.sol +0 -246
  635. package/contracts/components/Product.sol +0 -299
  636. package/contracts/experiment/errors/Require.sol +0 -38
  637. package/contracts/experiment/errors/Revert.sol +0 -44
  638. package/contracts/experiment/inheritance/A.sol +0 -53
  639. package/contracts/experiment/inheritance/B.sol +0 -28
  640. package/contracts/experiment/inheritance/C.sol +0 -34
  641. package/contracts/experiment/inheritance/IA.sol +0 -13
  642. package/contracts/experiment/inheritance/IB.sol +0 -10
  643. package/contracts/experiment/inheritance/IC.sol +0 -12
  644. package/contracts/experiment/statemachine/Dummy.sol +0 -27
  645. package/contracts/experiment/statemachine/ISM.sol +0 -25
  646. package/contracts/experiment/statemachine/SM.sol +0 -57
  647. package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
  648. package/contracts/experiment/types/TypeA.sol +0 -47
  649. package/contracts/experiment/types/TypeB.sol +0 -29
  650. package/contracts/instance/IInstanceLinked.sol +0 -8
  651. package/contracts/instance/base/ComponentServiceBase.sol +0 -49
  652. package/contracts/instance/base/IInstanceBase.sol +0 -23
  653. package/contracts/instance/base/IKeyValueStore.sol +0 -50
  654. package/contracts/instance/base/IService.sol +0 -15
  655. package/contracts/instance/base/InstanceBase.sol +0 -89
  656. package/contracts/instance/base/KeyValueStore.sol +0 -161
  657. package/contracts/instance/base/ModuleBase.sol +0 -57
  658. package/contracts/instance/base/ServiceBase.sol +0 -43
  659. package/contracts/instance/module/access/Access.sol +0 -149
  660. package/contracts/instance/module/access/IAccess.sol +0 -53
  661. package/contracts/instance/module/bundle/BundleModule.sol +0 -134
  662. package/contracts/instance/module/bundle/IBundle.sol +0 -53
  663. package/contracts/instance/module/component/ComponentModule.sol +0 -71
  664. package/contracts/instance/module/component/IComponent.sol +0 -28
  665. package/contracts/instance/module/distribution/DistributionModule.sol +0 -17
  666. package/contracts/instance/module/distribution/IDistribution.sol +0 -10
  667. package/contracts/instance/module/policy/IPolicy.sol +0 -63
  668. package/contracts/instance/module/policy/PolicyModule.sol +0 -91
  669. package/contracts/instance/module/pool/IPoolModule.sol +0 -41
  670. package/contracts/instance/module/pool/PoolModule.sol +0 -95
  671. package/contracts/instance/module/risk/IRisk.sol +0 -26
  672. package/contracts/instance/module/risk/RiskModule.sol +0 -62
  673. package/contracts/instance/module/treasury/ITreasury.sol +0 -84
  674. package/contracts/instance/module/treasury/TokenHandler.sol +0 -48
  675. package/contracts/instance/module/treasury/TreasuryModule.sol +0 -131
  676. package/contracts/instance/service/ComponentOwnerService.sol +0 -272
  677. package/contracts/instance/service/DistributionService.sol +0 -54
  678. package/contracts/instance/service/IComponentOwnerService.sol +0 -20
  679. package/contracts/instance/service/IDistributionService.sol +0 -12
  680. package/contracts/instance/service/IPoolService.sol +0 -37
  681. package/contracts/instance/service/IProductService.sol +0 -107
  682. package/contracts/instance/service/PoolService.sol +0 -149
  683. package/contracts/instance/service/ProductService.sol +0 -509
  684. package/contracts/registry/IChainNft.sol +0 -22
  685. package/contracts/registry/IRegistryLinked.sol +0 -8
  686. package/contracts/registry/RegistryInstaller.sol +0 -100
  687. package/contracts/shared/IOwnable.sol +0 -6
  688. package/contracts/test/TestDistribution.sol +0 -22
  689. package/contracts/test/TestFee.sol +0 -25
  690. package/contracts/test/TestPool.sol +0 -27
  691. package/contracts/test/TestProduct.sol +0 -74
  692. package/contracts/test/TestRegisterable.sol +0 -18
  693. package/contracts/test/TestRoleId.sol +0 -14
  694. package/contracts/test/TestService.sol +0 -26
  695. package/contracts/test/TestToken.sol +0 -26
  696. package/contracts/test/TestVersion.sol +0 -44
  697. package/contracts/test/TestVersionable.sol +0 -17
  698. package/contracts/types/ChainId.sol +0 -38
  699. package/contracts/types/Fee.sol +0 -56
  700. package/contracts/types/NftIdSet.sol +0 -60
  701. package/contracts/types/ObjectType.sol +0 -131
  702. package/contracts/types/ReferralId.sol +0 -48
  703. package/contracts/types/RoleId.sol +0 -38
@@ -1,34 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {ISharedA} from "./IA.sol";
5
- import {IB} from "./IB.sol";
6
- import {IC} from "./IC.sol";
7
-
8
- abstract contract C is ISharedA, IC {
9
- uint256 private _x;
10
-
11
- constructor() {
12
- _x = 2;
13
- }
14
-
15
- // access own state
16
- function getC() external view override returns (uint256) {
17
- return _x;
18
- }
19
-
20
- function setC(uint256 newC) external override {
21
- _x = newC;
22
- }
23
-
24
- // access state from parent contract A
25
- function getAfromC() external view override returns (uint256) {
26
- return this.getA();
27
- }
28
-
29
- // access state from other module B
30
- function getBfromC() external view override returns (uint256) {
31
- IB b = IB(address(this));
32
- return b.getB();
33
- }
34
- }
@@ -1,13 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {IB} from "./IB.sol";
5
- import {IC} from "./IC.sol";
6
-
7
- interface ISharedA {
8
- function getA() external view returns (uint256);
9
-
10
- function setA(uint256 newA) external;
11
- }
12
-
13
- interface IA is ISharedA, IB, IC {}
@@ -1,10 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- interface IB {
5
- function getAfromB() external view returns (uint256);
6
-
7
- function getB() external view returns (uint256);
8
-
9
- function setB(uint256 newA) external;
10
- }
@@ -1,12 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- interface IC {
5
- function getAfromC() external view returns (uint256);
6
-
7
- function getBfromC() external view returns (uint256);
8
-
9
- function getC() external view returns (uint256);
10
-
11
- function setC(uint256 newA) external;
12
- }
@@ -1,27 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {ObjectType} from "../../types/ObjectType.sol";
5
- import {StateId, toStateId, zeroStateId} from "../../types/StateId.sol";
6
-
7
- contract LifeCycleModule {
8
- mapping(ObjectType objectType => StateId initialState)
9
- private _initialState;
10
-
11
- mapping(ObjectType objectType => mapping(StateId stateFrom => mapping(StateId stateTo => bool isValid)))
12
- private _isValidTransition;
13
-
14
- function getInitialState(
15
- ObjectType objectType
16
- ) external view returns (StateId) {
17
- return _initialState[objectType];
18
- }
19
-
20
- function isValidTransition(
21
- ObjectType objectType,
22
- StateId fromId,
23
- StateId toId
24
- ) external view returns (bool) {
25
- return _isValidTransition[objectType][fromId][toId];
26
- }
27
- }
@@ -1,25 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {StateId} from "../../types/StateId.sol";
5
-
6
- interface ISMEE {
7
- error ErrorInitialStateUndefined();
8
- error ErrorStartStateUndefined();
9
- error ErrorNextStateUndefined();
10
- error ErrorStateChangeInvalid(StateId currentStateId, StateId newStateId);
11
-
12
- event LogInitialStateSet(StateId initialStateId);
13
- event LogStateChanged(StateId oldStateId, StateId newStateId);
14
- }
15
-
16
- interface ISM is ISMEE {
17
- function changeToState(StateId newStateId) external;
18
-
19
- function isValidTransition(
20
- StateId currentStateId,
21
- StateId newStateId
22
- ) external view returns (bool isValid);
23
-
24
- function getState() external view returns (StateId currentStateId);
25
- }
@@ -1,57 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {StateId, toStateId, zeroStateId} from "../../types/StateId.sol";
5
- import {ISM} from "./ISM.sol";
6
-
7
- contract SM is ISM {
8
- mapping(StateId currentState => mapping(StateId newState => bool isValid))
9
- private _isValidTransition;
10
-
11
- StateId internal _state;
12
-
13
- function setInitialState(StateId initialStateId) internal {
14
- if (initialStateId == zeroStateId()) {
15
- revert ErrorInitialStateUndefined();
16
- }
17
-
18
- _state = initialStateId;
19
- }
20
-
21
- function addTransition(
22
- StateId currentStateId,
23
- StateId nextStateId
24
- ) internal {
25
- if (currentStateId == zeroStateId()) {
26
- revert ErrorStartStateUndefined();
27
- }
28
-
29
- if (nextStateId == zeroStateId()) {
30
- revert ErrorNextStateUndefined();
31
- }
32
-
33
- _isValidTransition[currentStateId][nextStateId] = true;
34
- }
35
-
36
- function changeToState(StateId newStateId) external override {
37
- if (!_isValidTransition[_state][newStateId]) {
38
- revert ErrorStateChangeInvalid(_state, newStateId);
39
- }
40
-
41
- StateId stateOld = _state;
42
- _state = newStateId;
43
-
44
- emit LogStateChanged(stateOld, _state);
45
- }
46
-
47
- function isValidTransition(
48
- StateId currentStateId,
49
- StateId newStateId
50
- ) external view override returns (bool isValid) {
51
- return _isValidTransition[currentStateId][newStateId];
52
- }
53
-
54
- function getState() external view override returns (StateId state) {
55
- return _state;
56
- }
57
- }
@@ -1,31 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {StateId, toStateId} from "../../types/StateId.sol";
5
- import {SM} from "./SM.sol";
6
-
7
- contract SimpleStateMachine is SM {
8
- uint8 public constant STATE_ACTIVE = 10;
9
- uint8 public constant STATE_PAUSED = 20;
10
- uint8 public constant STATE_ARCHIVED = 30;
11
-
12
- constructor() {
13
- addTransition(ACTIVE(), PAUSED());
14
- addTransition(PAUSED(), ACTIVE());
15
- addTransition(PAUSED(), ARCHIVED());
16
-
17
- setInitialState(ACTIVE());
18
- }
19
-
20
- function ACTIVE() public pure returns (StateId stateId) {
21
- return toStateId(STATE_ACTIVE);
22
- }
23
-
24
- function PAUSED() public pure returns (StateId stateId) {
25
- return toStateId(STATE_PAUSED);
26
- }
27
-
28
- function ARCHIVED() public pure returns (StateId stateId) {
29
- return toStateId(STATE_ARCHIVED);
30
- }
31
- }
@@ -1,47 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- /*
5
- # chisel session for user defined types
6
-
7
- import {TypeA, toTypeA} from "./contracts/experiment/types/TypeA.sol";
8
- TypeA a = toTypeA(1);
9
- TypeA b = toTypeA(2);
10
- uint(a.toInt())
11
- uint(b.toInt())
12
- a == b
13
- a != b
14
-
15
- import {TypeB, toTypeB} from "./contracts/experiment/types/TypeB.sol";
16
- TypeB x = toTypeB(33);
17
- uint(x.toInt())
18
- a == x; // -> error
19
- a.toInt() == x.toInt() // -> no error
20
- */
21
-
22
- // bytes5 allows for chain ids up to 13 digits
23
- type TypeA is uint248;
24
-
25
- // type bindings
26
- using {eqTypeA as ==, neTypeA as !=, TypeALib.toInt} for TypeA global;
27
-
28
- // general pure free functions
29
- function toTypeA(uint256 typeA) pure returns (TypeA) {
30
- return TypeA.wrap(uint248(typeA));
31
- }
32
-
33
- // pure free functions for operators
34
- function eqTypeA(TypeA a, TypeA b) pure returns (bool isSame) {
35
- return TypeA.unwrap(a) == TypeA.unwrap(b);
36
- }
37
-
38
- function neTypeA(TypeA a, TypeA b) pure returns (bool isDifferent) {
39
- return TypeA.unwrap(a) != TypeA.unwrap(b);
40
- }
41
-
42
- // library functions that operate on user defined type
43
- library TypeALib {
44
- function toInt(TypeA typeA) internal pure returns (uint256) {
45
- return uint256(TypeA.unwrap(typeA));
46
- }
47
- }
@@ -1,29 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- // bytes5 allows for chain ids up to 13 digits
5
- type TypeB is uint248;
6
-
7
- // type bindings
8
- using {eqTypeB as ==, addTypeB as +, TypeBLib.toInt} for TypeB global;
9
-
10
- // general pure free functions
11
- function toTypeB(uint256 x) pure returns (TypeB) {
12
- return TypeB.wrap(uint248(x));
13
- }
14
-
15
- // pure free functions for operators
16
- function eqTypeB(TypeB a, TypeB b) pure returns (bool isSame) {
17
- return TypeB.unwrap(a) == TypeB.unwrap(b);
18
- }
19
-
20
- function addTypeB(TypeB a, TypeB b) pure returns (TypeB sum) {
21
- return TypeB.wrap(TypeB.unwrap(a) + TypeB.unwrap(b));
22
- }
23
-
24
- // library functions that operate on user defined type
25
- library TypeBLib {
26
- function toInt(TypeB b) internal pure returns (uint256) {
27
- return uint256(TypeB.unwrap(b));
28
- }
29
- }
@@ -1,8 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {IInstance} from "./IInstance.sol";
5
-
6
- interface IInstanceLinked {
7
- function getInstance() external view returns (IInstance instance);
8
- }
@@ -1,49 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {IRegistry} from "../../registry/IRegistry.sol";
5
- import {IRegistryService} from "../../registry/IRegistryService.sol";
6
- import {IInstance} from "../../instance/IInstance.sol";
7
- import {ObjectType, INSTANCE, PRODUCT, POOL} from "../../types/ObjectType.sol";
8
- import {NftId, NftIdLib} from "../../types/NftId.sol";
9
-
10
- import {ServiceBase} from "./ServiceBase.sol";
11
- import {Version, VersionPart, VersionLib} from "../../types/Version.sol";
12
-
13
- abstract contract ComponentServiceBase is ServiceBase {
14
-
15
- constructor(
16
- address registry,
17
- NftId registryNftId,
18
- address initialOwner
19
- )
20
- {
21
- _initializeServiceBase(registry, registryNftId, initialOwner);
22
- }
23
-
24
-
25
- function _getAndVerifyComponentInfoAndInstance(
26
- ObjectType objectType
27
- )
28
- internal
29
- view
30
- returns(
31
- IRegistry.ObjectInfo memory info,
32
- IInstance instance
33
- )
34
- {
35
- NftId componentNftId = getRegistry().getNftId(msg.sender);
36
- require(componentNftId.gtz(), "ERROR_COMPONENT_UNKNOWN");
37
-
38
- info = getRegistry().getObjectInfo(componentNftId);
39
- require(info.objectType == objectType, "OBJECT_TYPE_INVALID");
40
-
41
- address instanceAddress = getRegistry().getObjectInfo(info.parentNftId).objectAddress;
42
- instance = IInstance(instanceAddress);
43
- }
44
-
45
- function getRegistryService() public view virtual returns (IRegistryService) {
46
- address service = getRegistry().getServiceAddress("RegistryService", getMajorVersion());
47
- return IRegistryService(service);
48
- }
49
- }
@@ -1,23 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.20;
3
-
4
- import {Key32} from "../../types/Key32.sol";
5
- import {StateId} from "../../types/StateId.sol";
6
-
7
- import {IKeyValueStore} from "./IKeyValueStore.sol";
8
-
9
- import {IComponentOwnerService} from "../service/IComponentOwnerService.sol";
10
- import {IDistributionService} from "../service/IDistributionService.sol";
11
- import {IProductService} from "../service/IProductService.sol";
12
- import {IPoolService} from "../service/IPoolService.sol";
13
-
14
- interface IInstanceBase {
15
- function getKeyValueStore() external view returns (IKeyValueStore keyValueStore);
16
- function updateState(Key32 key, StateId state) external;
17
- function getState(Key32 key) external view returns (StateId state);
18
-
19
- function getComponentOwnerService() external view returns(IComponentOwnerService);
20
- function getDistributionService() external view returns(IDistributionService);
21
- function getProductService() external view returns(IProductService service);
22
- function getPoolService() external view returns(IPoolService service);
23
- }
@@ -1,50 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {Blocknumber, blockBlocknumber, zeroBlocknumber} from "../../types/Blocknumber.sol";
5
- import {Key32, KeyId} from "../../types/Key32.sol";
6
- import {NftId} from "../../types/NftId.sol";
7
- import {ObjectType} from "../../types/ObjectType.sol";
8
- import {StateId} from "../../types/StateId.sol";
9
-
10
- import {ILifecycle} from "./ILifecycle.sol";
11
-
12
- interface IKeyValueStore is ILifecycle {
13
-
14
- struct Key {
15
- ObjectType objectType;
16
- KeyId id;
17
- }
18
-
19
- struct Value {
20
- Metadata metadata;
21
- bytes data;
22
- }
23
-
24
- struct Metadata {
25
- ObjectType objectType;
26
- StateId state;
27
- address updatedBy;
28
- Blocknumber updatedIn;
29
- Blocknumber createdIn;
30
- }
31
-
32
- event LogInfoCreated(Key key, StateId state, address createdBy, address txOrigin);
33
- event LogInfoUpdated(Key key, StateId state, address updatedBy, address txOrigin, Blocknumber lastUpdatedIn);
34
- event LogStateUpdated(Key key, StateId stateOld, StateId stateNew, address updatedBy, address txOrigin, Blocknumber lastUpdatedIn);
35
-
36
- // generic state changing functions
37
- function create(Key32 key, ObjectType objectType, bytes memory data) external;
38
- function update(Key32 key, StateId state, bytes memory data) external;
39
- function updateData(Key32 key, bytes memory data) external;
40
- function updateState(Key32 key, StateId state) external;
41
-
42
- function exists(Key32 key) external view returns (bool);
43
- function get(Key32 key) external view returns (Value memory value);
44
- function getData(Key32 key) external view returns (bytes memory data);
45
- function getMetadata(Key32 key) external view returns (Metadata memory metadata);
46
- function getState(Key32 key) external view returns (StateId state);
47
-
48
- function toKey32(ObjectType objectType, KeyId id) external pure returns(Key32);
49
- function toKey(Key32 key32) external pure returns(Key memory key);
50
- }
@@ -1,15 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- import {VersionPart} from "../../types/Version.sol";
5
-
6
- import {IRegisterable} from "../../shared/IRegisterable.sol";
7
- import {IVersionable} from "../../shared/IVersionable.sol";
8
-
9
- interface IService is
10
- IRegisterable,
11
- IVersionable
12
- {
13
- function getName() external pure returns(string memory name);
14
- function getMajorVersion() external view returns(VersionPart majorVersion);
15
- }
@@ -1,89 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.20;
3
-
4
- import {Versionable} from "../../shared/Versionable.sol";
5
- import {Registerable} from "../../shared/Registerable.sol";
6
-
7
- import {ObjectType, INSTANCE} from "../../types/ObjectType.sol";
8
- import {Key32} from "../../types/Key32.sol";
9
- import {NftId} from "../../types/NftId.sol";
10
- import {StateId} from "../../types/StateId.sol";
11
- import {Version, VersionPart, VersionLib} from "../../types/Version.sol";
12
-
13
- import {IComponentOwnerService} from "../service/IComponentOwnerService.sol";
14
- import {IDistributionService} from "../service/IDistributionService.sol";
15
- import {IProductService} from "../service/IProductService.sol";
16
- import {IPoolService} from "../service/IPoolService.sol";
17
-
18
- import {IKeyValueStore} from "./IKeyValueStore.sol";
19
- import {IInstance} from "../IInstance.sol";
20
- import {IInstanceBase} from "./IInstanceBase.sol";
21
-
22
- import {KeyValueStore} from "./KeyValueStore.sol";
23
-
24
- abstract contract InstanceBase is
25
- Versionable,
26
- Registerable,
27
- IInstanceBase
28
- {
29
- IKeyValueStore internal _keyValueStore;
30
-
31
- IComponentOwnerService internal _componentOwnerService;
32
- IDistributionService internal _distributionService;
33
- IProductService internal _productService;
34
- IPoolService internal _poolService;
35
-
36
- constructor(
37
- address registry,
38
- NftId registryNftId,
39
- address initialOwner
40
- )
41
- Versionable()
42
- {
43
- bytes memory data = "";
44
- _initializeRegisterable(registry, registryNftId, INSTANCE(), true, initialOwner, data);
45
- _keyValueStore = new KeyValueStore();
46
-
47
- _registerInterface(type(IInstance).interfaceId);
48
- _linkToServicesInRegistry();
49
- }
50
-
51
- function getKeyValueStore() public view virtual override returns (IKeyValueStore keyValueStore) { return _keyValueStore; }
52
-
53
- function updateState(Key32 key, StateId state) external override {
54
- _keyValueStore.updateState(key, state);
55
- }
56
-
57
- function getState(Key32 key) external view override returns (StateId state) {
58
- return _keyValueStore.getState(key);
59
- }
60
-
61
- // from versionable
62
- function getVersion()
63
- public
64
- pure
65
- virtual override
66
- returns(Version)
67
- {
68
- return VersionLib.toVersion(3,0,0);
69
- }
70
-
71
- // from registerable
72
-
73
- // internal / private functions
74
- function _linkToServicesInRegistry() internal {
75
- VersionPart majorVersion = getVersion().toMajorPart();
76
- _componentOwnerService = IComponentOwnerService(_getAndCheck("ComponentOwnerService", majorVersion));
77
- _distributionService = IDistributionService(_getAndCheck("DistributionService", majorVersion));
78
- _productService = IProductService(_getAndCheck("ProductService", majorVersion));
79
- _poolService = IPoolService(_getAndCheck("PoolService", majorVersion));
80
- }
81
-
82
- function _getAndCheck(string memory serviceName, VersionPart majorVersion) internal view returns (address serviceAddress) {
83
- serviceAddress = getRegistry().getServiceAddress(serviceName, majorVersion);
84
- require(
85
- serviceAddress != address(0),
86
- "ERROR:INS-001:NOT_REGISTERED"
87
- );
88
- }
89
- }